@egovernments/digit-ui-module-core 1.5.12 → 1.5.14-beta

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../src/components/ErrorComponent.js","../src/components/ErrorBoundaries.js","../src/components/Home.js","../src/components/ChangeCity.js","../src/components/ChangeLanguage.js","../src/components/TopBarSideBar/TopBar.js","../src/config/sidebar-menu.js","../src/components/utils.js","../src/components/Dialog/LogoutDialog.js","../src/components/TopBarSideBar/SideBar/StaticCitizenSideBar.js","../src/components/TopBarSideBar/SideBar/CitizenSideBar.js","../src/components/TopBarSideBar/SideBar/SubMenu.js","../src/components/TopBarSideBar/SideBar/EmployeeSideBar.js","../src/components/TopBarSideBar/SideBar/index.js","../src/components/TopBarSideBar/index.js","../src/pages/citizen/FAQs/FaqComponent.js","../src/pages/citizen/FAQs/FAQs.js","../src/pages/citizen/Home/index.js","../src/pages/citizen/Home/LanguageSelection.js","../src/pages/citizen/Home/LocationSelection.js","../../../../node_modules/babel-plugin-transform-async-to-promises/helpers.mjs","../src/pages/citizen/Home/ImageUpload/UploadDrawer.js","../src/pages/citizen/Home/UserProfile.js","../src/pages/citizen/HowItWorks/howItWorks.js","../src/pages/citizen/Login/config.js","../src/pages/citizen/Login/SelectMobileNumber.js","../src/pages/citizen/Login/SelectName.js","../src/hooks/useInterval.js","../src/pages/citizen/Login/SelectOtp.js","../src/pages/citizen/Login/index.js","../../../../node_modules/react-hook-form/dist/index.esm.js","../src/components/Search/SearchFields.js","../src/components/Search/MobileSearchApplication.js","../src/components/Search/index.js","../src/pages/citizen/SearchApp.js","../src/pages/citizen/StaticDynamicComponent/StaticDynamicCard.js","../src/pages/citizen/index.js","../../../../node_modules/react-is/cjs/react-is.production.min.js","../../../../node_modules/react-is/cjs/react-is.development.js","../../../../node_modules/react-is/index.js","../../../../node_modules/object-assign/index.js","../../../../node_modules/prop-types/lib/ReactPropTypesSecret.js","../../../../node_modules/prop-types/lib/has.js","../../../../node_modules/prop-types/checkPropTypes.js","../../../../node_modules/prop-types/factoryWithTypeCheckers.js","../../../../node_modules/prop-types/factoryWithThrowingShims.js","../../../../node_modules/prop-types/index.js","../src/components/Background.js","../src/components/Header.js","../src/pages/employee/ChangePassword/changePassword.js","../src/pages/employee/ChangePassword/config.js","../src/pages/employee/ChangePassword/index.js","../src/pages/employee/ForgotPassword/config.js","../src/pages/employee/ForgotPassword/forgotPassword.js","../src/pages/employee/ForgotPassword/index.js","../src/components/AppModules.js","../src/pages/employee/LanguageSelection/index.js","../src/pages/employee/Login/config.js","../src/pages/employee/Login/login.js","../src/pages/employee/Login/index.js","../src/pages/employee/index.js","../src/App.js","../src/redux/reducers/index.js","../src/redux/store.js","../src/Module.js"],"sourcesContent":["import React from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ErrorConfig = {\n error: {\n imgUrl: `https://s3.ap-south-1.amazonaws.com/egov-qa-assets/error-image.png`,\n infoMessage: \"CORE_SOMETHING_WENT_WRONG\",\n buttonInfo: \"ACTION_TEST_HOME\",\n },\n maintenance: {\n imgUrl: `https://s3.ap-south-1.amazonaws.com/egov-qa-assets/maintainence-image.png`,\n infoMessage: \"CORE_UNDER_MAINTENANCE\",\n buttonInfo: \"ACTION_TEST_HOME\",\n },\n notfound: {\n imgUrl: `https://s3.ap-south-1.amazonaws.com/egov-qa-assets/PageNotFound.png`,\n infoMessage: \"CORE_NOT_FOUND\",\n buttonInfo: \"ACTION_TEST_HOME\",\n },\n};\n\nconst ErrorComponent = (props) => {\n const { type = \"error\" } = Digit.Hooks.useQueryParams();\n const config = ErrorConfig[type];\n const { t } = useTranslation();\n\n const stateInfo = props.stateInfo;\n\n return (\n <div className=\"error-boundary\">\n <div className=\"error-container\">\n <img src={config.imgUrl} alt=\"error\" />\n <h1>{t(config.infoMessage)}</h1>\n <button\n onClick={() => {\n props.goToHome();\n }}\n >\n {t(config.buttonInfo)}\n </button>\n </div>\n </div>\n );\n};\n\nexport default ErrorComponent;\n","import React from \"react\";\nimport ErrorComponent from \"./ErrorComponent\";\n\nconst Redircter = () => {\n const path = Digit.UserService.getType() === \"employee\" ? `/${window?.contextPath}/employee/user/error` : `/${window?.contextPath}/citizen/error`;\n if (\n window.location.href.includes(\"employee/user/error\") ||\n window.location.href.includes(\"citizen/error\") ||\n process.env.NODE_ENV === \"development\"\n ) {\n //do nothing\n }else{\n window.location.href = path;\n }\n return <span></span>;\n};\n\nclass ErrorBoundary extends React.Component {\n constructor(props) {\n super(props);\n this.state = { error: null, errorStack: null, hasError: false };\n }\n\n static getDerivedStateFromError(error) {\n // Update state so the next render will show the fallback UI.\n return { error: error?.message, hasError: true, errorStack: error?.stack };\n }\n\n componentDidCatch(error, errorInfo) {\n // Catch errors in any components below and re-render with error message\n this.setState({ error: error?.message, hasError: true, errorStack: error?.stack });\n // You can also log error messages to an error reporting service here\n }\n\n render() {\n if (this.state.hasError) {\n // (\"UI-errorInfo\", this.state?.errorStack);\n // (\"UI-component-details\", this.props);\n // You can render any custom fallback UI\n return (\n <div className=\"error-boundary\">\n <Redircter />\n <ErrorComponent initData={this.props.initData} />\n\n {/* <summary>Something went wrong</summary>\n <details style={{ whiteSpace: \"pre-wrap\" }}>\n {this.state?.errorStack && this.state.errorStack.toString().substring(0, 600)}\n {this.state?.error}\n </details> */}\n </div>\n );\n }\n return this.props.children;\n }\n}\n\nexport default ErrorBoundary;\n","import {\n BackButton,\n BillsIcon,\n CitizenHomeCard,\n CitizenInfoLabel,\n FSMIcon,\n Loader,\n MCollectIcon,\n OBPSIcon,\n PGRIcon,\n PTIcon,\n TLIcon,\n WSICon,\n} from \"@egovernments/digit-ui-react-components\";\nimport React from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\n/* \nFeature :: Citizen All service screen cards\n*/\nexport const processLinkData = (newData, code, t) => {\n const obj = newData?.[`${code}`];\n if (obj) {\n obj.map((link) => {\n (link.link = link[\"navigationURL\"]), (link.i18nKey = t(link[\"name\"]));\n });\n }\n const newObj = {\n links: obj?.reverse(),\n header: Digit.Utils.locale.getTransformedLocale(`ACTION_TEST_${code}`),\n iconName: `CITIZEN_${code}_ICON`,\n };\n if (code === \"FSM\") {\n const roleBasedLoginRoutes = [\n {\n role: \"FSM_DSO\",\n from: `/${window?.contextPath}/citizen/fsm/dso-dashboard`,\n dashoardLink: \"CS_LINK_DSO_DASHBOARD\",\n loginLink: \"CS_LINK_LOGIN_DSO\",\n },\n ];\n //RAIN-7297\n roleBasedLoginRoutes.map(({ role, from, loginLink, dashoardLink }) => {\n if (Digit.UserService.hasAccess(role))\n newObj?.links?.push({\n link: from,\n i18nKey: t(dashoardLink),\n });\n else\n newObj?.links?.push({\n link: `/${window?.contextPath}/citizen/login`,\n state: { role: \"FSM_DSO\", from },\n i18nKey: t(loginLink),\n });\n });\n }\n\n return newObj;\n};\nconst iconSelector = (code) => {\n switch (code) {\n case \"PT\":\n return <PTIcon className=\"fill-path-primary-main\" />;\n case \"WS\":\n return <WSICon className=\"fill-path-primary-main\" />;\n case \"FSM\":\n return <FSMIcon className=\"fill-path-primary-main\" />;\n case \"MCollect\":\n return <MCollectIcon className=\"fill-path-primary-main\" />;\n case \"PGR\":\n return <PGRIcon className=\"fill-path-primary-main\" />;\n case \"TL\":\n return <TLIcon className=\"fill-path-primary-main\" />;\n case \"OBPS\":\n return <OBPSIcon className=\"fill-path-primary-main\" />;\n case \"Bills\":\n return <BillsIcon className=\"fill-path-primary-main\" />;\n default:\n return <PTIcon className=\"fill-path-primary-main\" />;\n }\n};\nconst CitizenHome = ({ modules, getCitizenMenu, fetchedCitizen, isLoading }) => {\n const paymentModule = modules.filter(({ code }) => code === \"Payment\")[0];\n const moduleArr = modules.filter(({ code }) => code !== \"Payment\");\n const moduleArray = [paymentModule, ...moduleArr];\n const { t } = useTranslation();\n if (isLoading) {\n return <Loader />;\n }\n\n return (\n <React.Fragment>\n <div className=\"citizen-all-services-wrapper\">\n <BackButton />\n <div className=\"citizenAllServiceGrid\">\n {moduleArray\n .filter((mod) => mod)\n .map(({ code }, index) => {\n let mdmsDataObj;\n if (fetchedCitizen) mdmsDataObj = fetchedCitizen ? processLinkData(getCitizenMenu, code, t) : undefined;\n if (mdmsDataObj?.links?.length > 0) {\n return (\n <CitizenHomeCard\n header={t(mdmsDataObj?.header)}\n links={mdmsDataObj?.links?.filter((ele) => ele?.link)?.sort((x, y) => x?.orderNumber - y?.orderNumber)}\n Icon={() => iconSelector(code)}\n Info={\n code === \"OBPS\"\n ? () => (\n <CitizenInfoLabel\n style={{ margin: \"0px\", padding: \"10px\" }}\n info={t(\"CS_FILE_APPLICATION_INFO_LABEL\")}\n text={t(`BPA_CITIZEN_HOME_STAKEHOLDER_INCLUDES_INFO_LABEL`)}\n />\n )\n : null\n }\n isInfo={code === \"OBPS\" ? true : false}\n />\n );\n } else return <React.Fragment />;\n })}\n </div>\n </div>\n </React.Fragment>\n );\n};\n\nconst EmployeeHome = ({ modules }) => {\n return (\n <div className=\"employee-app-container\">\n <div className=\"ground-container moduleCardWrapper gridModuleWrapper\">\n {modules.map(({ code }, index) => {\n const Card = Digit.ComponentRegistryService.getComponent(`${code}Card`) || (() => <React.Fragment />);\n return <Card key={index} />;\n })}\n </div>\n </div>\n );\n};\n\nexport const AppHome = ({ userType, modules, getCitizenMenu, fetchedCitizen, isLoading }) => {\n if (userType === \"citizen\") {\n return <CitizenHome modules={modules} getCitizenMenu={getCitizenMenu} fetchedCitizen={fetchedCitizen} isLoading={isLoading} />;\n }\n return <EmployeeHome modules={modules} />;\n};\n","import { Dropdown } from \"@egovernments/digit-ui-react-components\";\nimport React, { useEffect, useState } from \"react\";\nimport { useHistory } from \"react-router-dom\";\n\nconst stringReplaceAll = (str = \"\", searcher = \"\", replaceWith = \"\") => {\n if (searcher == \"\") return str;\n while (str?.includes(searcher)) {\n str = str?.replace(searcher, replaceWith);\n }\n return str;\n};\n\nconst ChangeCity = (prop) => {\n const [dropDownData, setDropDownData] = useState(null);\n const [selectCityData, setSelectCityData] = useState([]);\n const [selectedCity, setSelectedCity] = useState([]); //selectedCities?.[0]?.value\n const history = useHistory();\n const isDropdown = prop.dropdown || false;\n let selectedCities = [];\n\n const handleChangeCity = (city) => {\n const loggedInData = Digit.SessionStorage.get(\"citizen.userRequestObject\");\n const filteredRoles = Digit.SessionStorage.get(\"citizen.userRequestObject\")?.info?.roles?.filter((role) => role.tenantId === city.value);\n if (filteredRoles?.length > 0) {\n loggedInData.info.roles = filteredRoles;\n loggedInData.info.tenantId = city?.value;\n }\n Digit.SessionStorage.set(\"Employee.tenantId\", city?.value);\n Digit.UserService.setUser(loggedInData);\n setDropDownData(city);\n if (window.location.href.includes(`/${window?.contextPath}/employee/`)) {\n const redirectPath = location.state?.from || `/${window?.contextPath}/employee`;\n history.replace(redirectPath);\n }\n window.location.reload();\n };\n\n useEffect(() => {\n const userloggedValues = Digit.SessionStorage.get(\"citizen.userRequestObject\");\n let teantsArray = [],\n filteredArray = [];\n userloggedValues?.info?.roles?.forEach((role) => teantsArray.push(role.tenantId));\n let unique = teantsArray.filter((item, i, ar) => ar.indexOf(item) === i);\n unique?.forEach((uniCode) => {\n filteredArray.push({\n label: prop?.t(`TENANT_TENANTS_${stringReplaceAll(uniCode, \".\", \"_\")?.toUpperCase()}`),\n value: uniCode,\n });\n });\n selectedCities = filteredArray?.filter((select) => select.value == Digit.SessionStorage.get(\"Employee.tenantId\"));\n setSelectCityData(filteredArray);\n }, [dropDownData]);\n\n // if (isDropdown) {\n return (\n <div style={prop?.mobileView ? { color: \"#767676\" } : {}}>\n <Dropdown\n option={selectCityData}\n selected={selectCityData.find((cityValue) => cityValue.value === dropDownData?.value)}\n optionKey={\"label\"}\n select={handleChangeCity}\n freeze={true}\n customSelector={\n <label className=\"cp\">\n {prop?.t(`TENANT_TENANTS_${stringReplaceAll(Digit.SessionStorage.get(\"Employee.tenantId\"), \".\", \"_\")?.toUpperCase()}`)}\n </label>\n }\n />\n </div>\n );\n // } else {\n // return (\n // <React.Fragment>\n // <div style={{ marginBottom: \"5px\" }}>City</div>\n // <div className=\"language-selector\" style={{display: \"flex\", flexWrap: \"wrap\"}}>\n // {selectCityData?.map((city, index) => (\n // <div className=\"language-button-container\" key={index}>\n // <CustomButton\n // selected={city.value === Digit.SessionStorage.get(\"Employee.tenantId\")}\n // text={city.label}\n // onClick={() => handleChangeCity(city)}\n // ></CustomButton>\n // </div>\n // ))}\n // </div>\n // </React.Fragment>\n // );\n // }\n};\n\nexport default ChangeCity;\n","import { CustomButton, Dropdown } from \"@egovernments/digit-ui-react-components\";\nimport React, { useState } from \"react\";\n\nconst ChangeLanguage = (prop) => {\n const isDropdown = prop.dropdown || false;\n const { data: storeData, isLoading } = Digit.Hooks.useStore.getInitData();\n const { languages, stateInfo } = storeData || {};\n const selectedLanguage = Digit.StoreData.getCurrentLanguage();\n const [selected, setselected] = useState(selectedLanguage);\n const handleChangeLanguage = (language) => {\n setselected(language.value);\n Digit.LocalizationService.changeLanguage(language.value, stateInfo.code);\n };\n\n if (isLoading) return null;\n\n if (isDropdown) {\n return (\n <div>\n <Dropdown\n option={languages}\n selected={languages.find((language) => language.value === selectedLanguage)}\n optionKey={\"label\"}\n select={handleChangeLanguage}\n freeze={true}\n customSelector={<label className=\"cp\">{languages.find((language) => language.value === selected).label}</label>}\n />\n </div>\n );\n } else {\n return (\n <React.Fragment>\n <div style={{ marginBottom: \"5px\" }}>Language</div>\n <div className=\"language-selector\">\n {languages.map((language, index) => (\n <div className=\"language-button-container\" key={index}>\n <CustomButton\n selected={language.value === selected}\n text={language.label}\n onClick={() => handleChangeLanguage(language)}\n ></CustomButton>\n </div>\n ))}\n </div>\n </React.Fragment>\n );\n }\n};\n\nexport default ChangeLanguage;\n","import { Dropdown, Hamburger, TopBar as TopBarComponent } from \"@egovernments/digit-ui-react-components\";\nimport React from \"react\";\nimport { useHistory, useLocation } from \"react-router-dom\";\nimport ChangeCity from \"../ChangeCity\";\nimport ChangeLanguage from \"../ChangeLanguage\";\n\nconst TextToImg = (props) => (\n <span className=\"user-img-txt\" onClick={props.toggleMenu} title={props.name}>\n {props?.name?.[0]?.toUpperCase()}\n </span>\n);\nconst TopBar = ({\n t,\n stateInfo,\n toggleSidebar,\n isSidebarOpen,\n handleLogout,\n userDetails,\n CITIZEN,\n cityDetails,\n mobileView,\n userOptions,\n handleUserDropdownSelection,\n logoUrl,\n showLanguageChange = true,\n}) => {\n const [profilePic, setProfilePic] = React.useState(null);\n\n React.useEffect(async () => {\n const tenant = Digit.ULBService.getCurrentTenantId();\n const uuid = userDetails?.info?.uuid;\n if (uuid) {\n const usersResponse = await Digit.UserService.userSearch(tenant, { uuid: [uuid] }, {});\n if (usersResponse && usersResponse.user && usersResponse.user.length) {\n const userDetails = usersResponse.user[0];\n const thumbs = userDetails?.photo?.split(\",\");\n setProfilePic(thumbs?.at(0));\n }\n }\n }, [profilePic !== null, userDetails?.info?.uuid]);\n\n const CitizenHomePageTenantId = Digit.ULBService.getCitizenCurrentTenant(true);\n\n let history = useHistory();\n const { pathname } = useLocation();\n\n const conditionsToDisableNotificationCountTrigger = () => {\n if (Digit.UserService?.getUser()?.info?.type === \"EMPLOYEE\") return false;\n if (Digit.UserService?.getUser()?.info?.type === \"CITIZEN\") {\n if (!CitizenHomePageTenantId) return false;\n else return true;\n }\n return false;\n };\n\n const { data: { unreadCount: unreadNotificationCount } = {}, isSuccess: notificationCountLoaded } = Digit.Hooks.useNotificationCount({\n tenantId: CitizenHomePageTenantId,\n config: {\n enabled: conditionsToDisableNotificationCountTrigger(),\n },\n });\n\n const updateSidebar = () => {\n if (!Digit.clikOusideFired) {\n toggleSidebar(true);\n } else {\n Digit.clikOusideFired = false;\n }\n };\n\n function onNotificationIconClick() {\n history.push(`/${window?.contextPath}/citizen/engagement/notifications`);\n }\n\n const urlsToDisableNotificationIcon = (pathname) =>\n !!Digit.UserService?.getUser()?.access_token\n ? false\n : [`/${window?.contextPath}/citizen/select-language`, `/${window?.contextPath}/citizen/select-location`].includes(pathname);\n\n if (CITIZEN) {\n return (\n <div>\n <TopBarComponent\n img={stateInfo?.logoUrlWhite}\n isMobile={true}\n toggleSidebar={updateSidebar}\n logoUrl={stateInfo?.logoUrlWhite}\n onLogout={handleLogout}\n userDetails={userDetails}\n notificationCount={unreadNotificationCount < 99 ? unreadNotificationCount : 99}\n notificationCountLoaded={notificationCountLoaded}\n cityOfCitizenShownBesideLogo={t(CitizenHomePageTenantId)}\n onNotificationIconClick={onNotificationIconClick}\n hideNotificationIconOnSomeUrlsWhenNotLoggedIn={urlsToDisableNotificationIcon(pathname)}\n changeLanguage={!mobileView ? <ChangeLanguage dropdown={true} /> : null}\n />\n </div>\n );\n }\n const loggedin = userDetails?.access_token ? true : false;\n return (\n <div className=\"topbar\">\n {mobileView ? <Hamburger handleClick={toggleSidebar} color=\"#9E9E9E\" /> : null}\n <img className=\"city\" src={loggedin ? cityDetails?.logoId : stateInfo?.statelogo} />\n <span style={{ display: \"flex\", alignItems: \"center\", justifyContent: \"space-between\", width: \"100%\" }}>\n {loggedin &&\n (cityDetails?.city?.ulbGrade ? (\n <p className=\"ulb\" style={mobileView ? { fontSize: \"14px\", display: \"inline-block\" } : {}}>\n {t(cityDetails?.i18nKey).toUpperCase()}{\" \"}\n {t(`ULBGRADE_${cityDetails?.city?.ulbGrade.toUpperCase().replace(\" \", \"_\").replace(\".\", \"_\")}`).toUpperCase()}\n </p>\n ) : (\n <img className=\"state\" src={logoUrl} />\n ))}\n {!loggedin && (\n <p className=\"ulb\" style={mobileView ? { fontSize: \"14px\", display: \"inline-block\" } : {}}>\n {t(`MYCITY_${stateInfo?.code?.toUpperCase()}_LABEL`)} {t(`MYCITY_STATECODE_LABEL`)}\n </p>\n )}\n {!mobileView && (\n <div className={mobileView ? \"right\" : \"flex-right right w-80 column-gap-15\"} style={!loggedin ? { width: \"80%\" } : {}}>\n <div className=\"left\">\n {!window.location.href.includes(\"employee/user/login\") && !window.location.href.includes(\"employee/user/language-selection\") && (\n <ChangeCity dropdown={true} t={t} />\n )}\n </div>\n <div className=\"left\">{showLanguageChange && <ChangeLanguage dropdown={true} />}</div>\n {userDetails?.access_token && (\n <div className=\"left\">\n <Dropdown\n option={userOptions}\n optionKey={\"name\"}\n select={handleUserDropdownSelection}\n showArrow={true}\n freeze={true}\n style={mobileView ? { right: 0 } : {}}\n optionCardStyles={{ overflow: \"revert\" }}\n customSelector={\n profilePic == null ? (\n <TextToImg name={userDetails?.info?.name || userDetails?.info?.userInfo?.name || \"Employee\"} />\n ) : (\n <img src={profilePic} style={{ height: \"48px\", width: \"48px\", borderRadius: \"50%\" }} />\n )\n }\n />\n </div>\n )}\n <img className=\"state\" src={logoUrl} />\n </div>\n )}\n </span>\n </div>\n );\n};\n\nexport default TopBar;\n","import React from \"react\";\nimport { HomeIcon, LanguageIcon, LogoutIcon, AddressBookIcon, LocationIcon } from \"@egovernments/digit-ui-react-components\";\nimport ChangeLanguage from \"../components/ChangeLanguage\";\n\nconst SideBarMenu = (t, closeSidebar, redirectToLoginPage, isEmployee) => [\n {\n type: \"link\",\n element: \"HOME\",\n text: t(\"COMMON_BOTTOM_NAVIGATION_HOME\"),\n link: isEmployee ? `/${window?.contextPath}/employee` : `/${window?.contextPath}/citizen`,\n icon: \"HomeIcon\",\n populators: {\n onClick: closeSidebar,\n },\n },\n {\n type: \"component\",\n element: \"LANGUAGE\",\n action: <ChangeLanguage />,\n icon: \"LanguageIcon\",\n },\n {\n id: \"login-btn\",\n element: \"LOGIN\",\n text: t(\"CORE_COMMON_LOGIN\"),\n icon: <LogoutIcon className=\"icon\" />,\n populators: {\n onClick: redirectToLoginPage,\n },\n },\n];\n\nexport default SideBarMenu;\n","export const defaultImage =\n \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO4AAADUCAMAAACs0e/bAAAAM1BMVEXK0eL\" +\n \"/\" +\n \"/\" +\n \"/\" +\n \"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\";","import { CardText, CloseSvg, Modal } from \"@egovernments/digit-ui-react-components\";\nimport React from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Heading = (props) => {\n return <h1 className=\"heading-m\">{props.label}</h1>;\n};\nconst Close = () => (\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"#FFFFFF\">\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z\" />\n </svg>\n);\nconst CloseBtn = (props) => {\n return (\n <div onClick={props?.onClick} style={props?.isMobileView ? { padding: 5 } : null}>\n {props?.isMobileView ? (\n <CloseSvg />\n ) : (\n <div className={\"icon-bg-secondary\"} style={{ backgroundColor: \"#505A5F\" }}>\n {\" \"}\n <Close />{\" \"}\n </div>\n )}\n </div>\n );\n};\nconst LogoutDialog = ({ onSelect, onCancel, onDismiss }) => {\n const { t } = useTranslation();\n const mobileDeviceWidth = 780;\n const [isMobileView, setIsMobileView] = React.useState(window.innerWidth <= mobileDeviceWidth);\n const onResize = () => {\n if (window.innerWidth <= mobileDeviceWidth) {\n if (!isMobileView) {\n setIsMobileView(true);\n }\n } else {\n if (isMobileView) {\n setIsMobileView(false);\n }\n }\n };\n React.useEffect(() => {\n window.addEventListener(\"resize\", () => {\n onResize();\n });\n return () => {\n window.addEventListener(\"resize\", () => {\n onResize();\n });\n };\n });\n return isMobileView ? (\n <Modal\n popupStyles={{\n height: \"174px\",\n maxHeight: \"174px\",\n width: \"324px\",\n position: \"absolute\",\n top: \"50%\",\n left: \"50%\",\n transform: \"translate(-50%, -50%)\",\n }}\n popupModuleActionBarStyles={{\n display: \"flex\",\n flex: 1,\n justifyContent: \"flex-start\",\n width: \"100%\",\n position: \"absolute\",\n left: 0,\n bottom: 0,\n padding: \"18px\",\n }}\n style={{\n flex: 1,\n }}\n popupModuleMianStyles={{\n padding: \"18px\",\n }}\n headerBarMain={<Heading label={t(\"CORE_LOGOUT_WEB_HEADER\")} />}\n headerBarEnd={<CloseBtn onClick={onDismiss} isMobileView={isMobileView} />}\n actionCancelLabel={t(\"CORE_LOGOUT_CANCEL\")}\n actionCancelOnSubmit={onCancel}\n actionSaveLabel={t(\"CORE_LOGOUT_WEB_YES\")}\n actionSaveOnSubmit={onSelect}\n formId=\"modal-action\"\n >\n <div>\n <CardText style={{ margin: 0 }}>{t(\"CORE_LOGOUT_WEB_CONFIRMATION_MESSAGE\") + \" \"}</CardText>\n </div>\n </Modal>\n ) : (\n <Modal\n popupModuleMianStyles={{\n paddingTop: \"30px\",\n }}\n headerBarMain={<Heading label={t(\"CORE_LOGOUT_WEB_HEADER\")} />}\n headerBarEnd={<CloseBtn onClick={onDismiss} isMobileView={false} />}\n actionCancelLabel={t(\"CORE_LOGOUT_CANCEL\")}\n actionCancelOnSubmit={onCancel}\n actionSaveLabel={t(\"CORE_LOGOUT_WEB_YES\")}\n actionSaveOnSubmit={onSelect}\n formId=\"modal-action\"\n >\n <div>\n <CardText style={{ marginBottom: \"54px\", marginLeft: \"8px\", marginRight: \"8px\" }}>\n {t(\"CORE_LOGOUT_WEB_CONFIRMATION_MESSAGE\") + \" \"}\n <strong>{t(\"CORE_LOGOUT_MESSAGE\")}?</strong>\n </CardText>\n </div>\n </Modal>\n );\n};\nexport default LogoutDialog;\n","import React, { useEffect, useState } from \"react\";\nimport {\n HomeIcon,\n EditPencilIcon,\n LogoutIcon,\n Loader,\n AddressBookIcon,\n PropertyHouse,\n CaseIcon,\n CollectionIcon,\n PTIcon,\n OBPSIcon,\n PGRIcon,\n FSMIcon,\n WSICon,\n MCollectIcon,\n Phone,\n BirthIcon,\n DeathIcon,\n FirenocIcon,\n} from \"@egovernments/digit-ui-react-components\";\nimport { Link, useLocation } from \"react-router-dom\";\nimport SideBarMenu from \"../../../config/sidebar-menu\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\nimport LogoutDialog from \"../../Dialog/LogoutDialog\";\nimport ChangeCity from \"../../ChangeCity\";\nimport { defaultImage } from \"../../utils\";\n\n\n/* \nFeature :: Citizen Webview sidebar\n*/\nconst Profile = ({ info, stateName, t }) => (\n <div className=\"profile-section\">\n <div className=\"imageloader imageloader-loaded\">\n <img className=\"img-responsive img-circle img-Profile\" src={defaultImage} />\n </div>\n <div id=\"profile-name\" className=\"label-container name-Profile\">\n <div className=\"label-text\"> {info?.name} </div>\n </div>\n <div id=\"profile-location\" className=\"label-container loc-Profile\">\n <div className=\"label-text\"> {info?.mobileNumber} </div>\n </div>\n {info?.emailId && (\n <div id=\"profile-emailid\" className=\"label-container loc-Profile\">\n <div className=\"label-text\"> {info.emailId} </div>\n </div>\n )}\n <div className=\"profile-divider\"></div>\n {window.location.href.includes(\"/employee\") &&\n !window.location.href.includes(\"/employee/user/login\") &&\n !window.location.href.includes(\"employee/user/language-selection\") && <ChangeCity t={t} mobileView={true} />}\n </div>\n);\nconst IconsObject = {\n CommonPTIcon: <PTIcon className=\"icon\" />,\n OBPSIcon: <OBPSIcon className=\"icon\" />,\n propertyIcon: <PropertyHouse className=\"icon\" />,\n TLIcon: <CaseIcon className=\"icon\" />,\n PGRIcon: <PGRIcon className=\"icon\" />,\n FSMIcon: <FSMIcon className=\"icon\" />,\n WSIcon: <WSICon className=\"icon\" />,\n MCollectIcon: <MCollectIcon className=\"icon\" />,\n BillsIcon: <CollectionIcon className=\"icon\" />,\n BirthIcon: <BirthIcon className=\"icon\" />,\n DeathIcon: <DeathIcon className=\"icon\" />,\n FirenocIcon: <FirenocIcon className=\"icon\" />,\n HomeIcon: <HomeIcon className=\"icon\" />,\n EditPencilIcon: <EditPencilIcon className=\"icon\" />,\n LogoutIcon: <LogoutIcon className=\"icon\" />,\n Phone: <Phone className=\"icon\" />,\n};\nconst StaticCitizenSideBar = ({ linkData, islinkDataLoading }) => {\n const { t } = useTranslation();\n const history = useHistory();\n const location = useLocation();\n const { pathname } = location;\n const { data: storeData, isFetched } = Digit.Hooks.useStore.getInitData();\n const { stateInfo } = storeData || {};\n const user = Digit.UserService.getUser();\n let isMobile = window.Digit.Utils.browser.isMobile();\n\n const [isEmployee, setisEmployee] = useState(false);\n const [isSidebarOpen, toggleSidebar] = useState(false);\n const [showDialog, setShowDialog] = useState(false);\n\n const handleLogout = () => {\n toggleSidebar(false);\n setShowDialog(true);\n };\n const handleOnSubmit = () => {\n Digit.UserService.logout();\n setShowDialog(false);\n };\n const handleOnCancel = () => {\n setShowDialog(false);\n };\n\n if (islinkDataLoading) {\n return <Loader />;\n }\n\n const redirectToLoginPage = () => {\n // localStorage.clear();\n // sessionStorage.clear();\n history.push(`/${window?.contextPath}/citizen/login`);\n };\n const showProfilePage = () => {\n history.push(`/${window?.contextPath}/citizen/user/profile`);\n };\n\n let menuItems = [...SideBarMenu(t, showProfilePage, redirectToLoginPage, isEmployee)];\n\n menuItems = menuItems.filter((item) => item.element !== \"LANGUAGE\");\n\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const MenuItem = ({ item }) => {\n const leftIconArray = item?.icon || item.icon?.type?.name;\n const leftIcon = leftIconArray ? IconsObject[leftIconArray] : IconsObject.BillsIcon;\n let itemComponent;\n if (item.type === \"component\") {\n itemComponent = item.action;\n } else {\n itemComponent = item.text;\n }\n const Item = () => (\n <span className=\"menu-item\" {...item.populators}>\n {leftIcon}\n <div className=\"menu-label\">{itemComponent}</div>\n </span>\n );\n if (item.type === \"external-link\") {\n return (\n <a href={item.link}>\n <Item />\n </a>\n );\n }\n if (item.type === \"link\") {\n return (\n <Link to={item?.link}>\n <Item />\n </Link>\n );\n }\n\n return <Item />;\n };\n let profileItem;\n\n if (isFetched && user && user.access_token) {\n profileItem = <Profile info={user?.info} stateName={stateInfo?.name} t={t} />;\n menuItems = menuItems.filter((item) => item?.id !== \"login-btn\");\n menuItems = [\n ...menuItems,\n {\n text: t(\"EDIT_PROFILE\"),\n element: \"PROFILE\",\n icon: \"EditPencilIcon\",\n populators: {\n onClick: showProfilePage,\n },\n },\n {\n text: t(\"CORE_COMMON_LOGOUT\"),\n element: \"LOGOUT\",\n icon: \"LogoutIcon\",\n populators: { onClick: handleLogout },\n },\n {\n text: (\n <React.Fragment>\n {t(\"CS_COMMON_HELPLINE\")}\n <div className=\"telephone\" style={{ marginTop: \"-10%\" }}>\n {storeData?.tenants.map((i) => {\n i.code === tenantId ? (\n <div className=\"link\">\n <a href={`tel:${storeData?.tenants[i].contactNumber}`}>{storeData?.tenants[i].contactNumber}</a>\n </div>\n ) : (\n <div className=\"link\">\n <a href={`tel:${storeData?.tenants[0].contactNumber}`}>{storeData?.tenants[0].contactNumber}</a>\n </div>\n );\n })}\n <div className=\"link\">\n <a href={`tel:${storeData?.tenants[0].contactNumber}`}>{storeData?.tenants[0].contactNumber}</a>\n </div>\n </div>\n </React.Fragment>\n ),\n element: \"Helpline\",\n icon: \"Phone\",\n },\n ];\n }\n Object.keys(linkData)\n ?.sort((x, y) => y.localeCompare(x))\n ?.map((key) => {\n if (linkData[key][0]?.sidebar === `${window.contextPath}-links`) {\n menuItems.splice(1, 0, {\n type: linkData[key][0]?.sidebarURL?.includes(window?.contextPath) ? \"link\" : \"external-link\",\n text: t(`ACTION_TEST_${Digit.Utils.locale.getTransformedLocale(key)}`),\n links: linkData[key],\n icon: linkData[key][0]?.leftIcon,\n link: linkData[key][0]?.sidebarURL,\n });\n }\n });\n\n return (\n <React.Fragment>\n <div>\n <div\n style={{\n height: \"100%\",\n width: \"100%\",\n top: \"0px\",\n backgroundColor: \"rgba(0, 0, 0, 0.54)\",\n pointerzevents: \"auto\",\n }}\n ></div>\n <div\n style={{\n display: \"flex\",\n flexDirection: \"column\",\n height: isMobile ? \"calc(100vh - 56px)\" : \"auto\",\n zIndex: \"99\",\n }}\n >\n {profileItem}\n <div className=\"drawer-desktop\">\n {menuItems?.map((item, index) => (\n <div className={`sidebar-list ${pathname === item?.link || pathname === item?.sidebarURL ? \"active\" : \"\"}`} key={index}>\n <MenuItem item={item} />\n </div>\n ))}\n </div>\n </div>\n <div>{showDialog && <LogoutDialog onSelect={handleOnSubmit} onCancel={handleOnCancel} onDismiss={handleOnCancel}></LogoutDialog>}</div>\n </div>\n </React.Fragment>\n );\n};\n\nexport default StaticCitizenSideBar;\n","import {\n Loader, NavBar\n} from \"@egovernments/digit-ui-react-components\";\nimport React, { useState } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\nimport SideBarMenu from \"../../../config/sidebar-menu\";\nimport ChangeCity from \"../../ChangeCity\";\nimport { defaultImage } from \"../../utils\";\nimport StaticCitizenSideBar from \"./StaticCitizenSideBar\";\n\n\nconst Profile = ({ info, stateName, t }) => {\n const [profilePic, setProfilePic] = React.useState(null);\n React.useEffect(async () => {\n const tenant = Digit.ULBService.getCurrentTenantId();\n const uuid = info?.uuid;\n if (uuid) {\n const usersResponse = await Digit.UserService.userSearch(tenant, { uuid: [uuid] }, {});\n\n if (usersResponse && usersResponse.user && usersResponse.user.length) {\n const userDetails = usersResponse.user[0];\n const thumbs = userDetails?.photo?.split(\",\");\n setProfilePic(thumbs?.at(0));\n }\n }\n }, [profilePic !== null]);\n return (\n <div className=\"profile-section\">\n <div className=\"imageloader imageloader-loaded\">\n <img\n className=\"img-responsive img-circle img-Profile\"\n src={profilePic ? profilePic : defaultImage}\n style={{ objectFit: \"cover\", objectPosition: \"center\" }}\n />\n </div>\n <div id=\"profile-name\" className=\"label-container name-Profile\">\n <div className=\"label-text\"> {info?.name} </div>\n </div>\n <div id=\"profile-location\" className=\"label-container loc-Profile\">\n <div className=\"label-text\"> {info?.mobileNumber} </div>\n </div>\n {info?.emailId && (\n <div id=\"profile-emailid\" className=\"label-container loc-Profile\">\n <div className=\"label-text\"> {info.emailId} </div>\n </div>\n )}\n <div className=\"profile-divider\"></div>\n {window.location.href.includes(\"/employee\") &&\n !window.location.href.includes(\"/employee/user/login\") &&\n !window.location.href.includes(\"employee/user/language-selection\") && <ChangeCity t={t} mobileView={true} />}\n </div>\n );\n};\nconst PoweredBy = () => (\n <div className=\"digit-footer\" style={{ marginBottom: 0 }}>\n <img\n alt=\"Powered by DIGIT\"\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER\")}\n style={{ cursor: \"pointer\" }}\n onClick={() => {\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\n }}\n />{\" \"}\n </div>\n);\n\n/* \nFeature :: Citizen Webview sidebar\n*/\nexport const CitizenSideBar = ({ isOpen, isMobile = false, toggleSidebar, onLogout, isEmployee = false, linkData, islinkDataLoading }) => {\n const { data: storeData, isFetched } = Digit.Hooks.useStore.getInitData();\n const { stateInfo } = storeData || {};\n const user = Digit.UserService.getUser();\n const [search, setSearch] = useState(\"\");\n\n const { t } = useTranslation();\n const history = useHistory();\n const closeSidebar = () => {\n Digit.clikOusideFired = true;\n toggleSidebar(false);\n };\n\n const { isLoading, data } = Digit.Hooks.useAccessControl();\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const showProfilePage = () => {\n const redirectUrl = isEmployee ? `/${window?.contextPath}/employee/user/profile` : `/${window?.contextPath}/citizen/user/profile`;\n history.push(redirectUrl);\n closeSidebar();\n };\n const redirectToLoginPage = () => {\n // localStorage.clear();\n // sessionStorage.clear();\n history.push(`/${window?.contextPath}/citizen/login`);\n closeSidebar();\n };\n if (islinkDataLoading || isLoading) {\n return <Loader />;\n }\n\n let menuItems = [...SideBarMenu(t, closeSidebar, redirectToLoginPage, isEmployee)];\n let profileItem;\n if (isFetched && user && user.access_token) {\n profileItem = <Profile info={user?.info} stateName={stateInfo?.name} t={t} />;\n menuItems = menuItems.filter((item) => item?.id !== \"login-btn\");\n menuItems = [\n ...menuItems,\n {\n text: t(\"EDIT_PROFILE\"),\n element: \"PROFILE\",\n icon: \"EditPencilIcon\",\n populators: {\n onClick: showProfilePage,\n },\n },\n {\n text: t(\"CORE_COMMON_LOGOUT\"),\n element: \"LOGOUT\",\n icon: \"LogoutIcon\",\n populators: {\n onClick: onLogout,\n },\n },\n {\n text: (\n <React.Fragment>\n {t(\"CS_COMMON_HELPLINE\")}\n <div className=\"telephone\" style={{ marginTop: \"-10%\" }}>\n {storeData?.tenants.map((i) => {\n i.code === tenantId ? (\n <div className=\"link\">\n <a href={`tel:${storeData?.tenants[i].contactNumber}`}>{storeData?.tenants[i].contactNumber}</a>\n </div>\n ) : (\n <div className=\"link\">\n <a href={`tel:${storeData?.tenants[0].contactNumber}`}>{storeData?.tenants[0].contactNumber}</a>\n </div>\n );\n })}\n <div className=\"link\">\n <a href={`tel:${storeData?.tenants[0].contactNumber}`}>{storeData?.tenants[0].contactNumber}</a>\n </div>\n </div>\n </React.Fragment>\n ),\n element: \"Helpline\",\n icon: \"Phone\",\n },\n ];\n }\n\n let configEmployeeSideBar = {};\n\n if (!isEmployee) {\n Object.keys(linkData)\n ?.sort((x, y) => y.localeCompare(x))\n ?.map((key) => {\n if (linkData[key][0]?.sidebar === \"digit-ui-links\")\n menuItems.splice(1, 0, {\n type: linkData[key][0]?.sidebarURL?.includes(window?.contextPath) ? \"link\" : \"external-link\",\n text: t(`ACTION_TEST_${Digit.Utils.locale.getTransformedLocale(key)}`),\n links: linkData[key],\n icon: linkData[key][0]?.leftIcon,\n link: linkData[key][0]?.sidebarURL,\n });\n });\n } else {\n data?.actions\n .filter((e) => e.url === \"url\" && e.displayName !== \"Home\")\n .forEach((item) => {\n if (search == \"\" && item.path !== \"\") {\n let index = item.path.split(\".\")[0];\n if (index === \"TradeLicense\") index = \"Trade License\";\n if (!configEmployeeSideBar[index]) {\n configEmployeeSideBar[index] = [item];\n } else {\n configEmployeeSideBar[index].push(item);\n }\n } else if (item.path !== \"\" && item?.displayName?.toLowerCase().includes(search.toLowerCase())) {\n let index = item.path.split(\".\")[0];\n if (index === \"TradeLicense\") index = \"Trade License\";\n if (!configEmployeeSideBar[index]) {\n configEmployeeSideBar[index] = [item];\n } else {\n configEmployeeSideBar[index].push(item);\n }\n }\n });\n const keys = Object.keys(configEmployeeSideBar);\n for (let i = 0; i < keys.length; i++) {\n const getSingleDisplayName = configEmployeeSideBar[keys[i]][0]?.displayName?.toUpperCase()?.replace(/[ -]/g, \"_\");\n const getParentDisplayName = keys[i]?.toUpperCase()?.replace(/[ -]/g, \"_\");\n\n if (configEmployeeSideBar[keys[i]][0].path.indexOf(\".\") === -1) {\n menuItems.splice(1, 0, {\n type: \"link\",\n text: t(`ACTION_TEST_${getSingleDisplayName}`),\n link: configEmployeeSideBar[keys[i]][0]?.navigationURL,\n icon: configEmployeeSideBar[keys[i]][0]?.leftIcon?.split?.(\":\")[1],\n populators: {\n onClick: () => {\n history.push(configEmployeeSideBar[keys[i]][0]?.navigationURL);\n closeSidebar();\n },\n },\n });\n } else {\n menuItems.splice(1, 0, {\n type: \"dynamic\",\n moduleName: t(`ACTION_TEST_${getParentDisplayName}`),\n links: configEmployeeSideBar[keys[i]]?.map((ob) => {return {...ob, displayName: t(`ACTION_TEST_${ob?.displayName?.toUpperCase()?.replace(/[ -]/g, \"_\")}`)}}),\n icon: configEmployeeSideBar[keys[i]][1]?.leftIcon,\n });\n }\n }\n const indx = menuItems.findIndex(a => a.element === \"HOME\");\n const home = menuItems.splice(indx,1);\n const comp = menuItems.findIndex(a => a.element === \"LANGUAGE\");\n const part = menuItems.splice(comp,menuItems?.length-comp);\n menuItems.sort((a,b) => {\n let c1 = a?.type === \"dynamic\" ? a?.moduleName : a?.text;\n let c2 = b?.type === \"dynamic\" ? b?.moduleName : b?.text;\n return c1.localeCompare(c2)\n } );\n home?.[0] && menuItems.splice(0,0,home[0]);\n menuItems = part?.length > 0 ? menuItems.concat(part) : menuItems;\n }\n\n /* URL with openlink wont have sidebar and actions */\n if (history.location.pathname.includes(\"/openlink\")) {\n profileItem = <span></span>;\n menuItems = menuItems.filter((ele) => ele.element === \"LANGUAGE\");\n }\n return isMobile ? (\n <NavBar\n open={isOpen}\n toggleSidebar={toggleSidebar}\n profileItem={profileItem}\n onClose={closeSidebar}\n menuItems={menuItems}\n Footer={<PoweredBy />}\n isEmployee={isEmployee}\n search={search}\n setSearch={setSearch}\n />\n ) : (\n <StaticCitizenSideBar logout={onLogout} />\n );\n};\n","import React, { useState, useContext } from \"react\";\nimport { Link, useLocation } from \"react-router-dom\";\nimport {\n ArrowForward,\n ArrowVectorDown,\n ArrowDirection,\n HomeIcon,\n ComplaintIcon,\n BPAHomeIcon,\n PropertyHouse,\n CaseIcon,\n ReceiptIcon,\n PersonIcon,\n DocumentIconSolid,\n DropIcon,\n CollectionsBookmarIcons,\n FinanceChartIcon,\n CollectionIcon,\n} from \"@egovernments/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport ReactTooltip from \"react-tooltip\";\n\nconst SubMenu = ({ item }) => {\n const [subnav, setSubnav] = useState(false);\n const location = useLocation();\n const { pathname } = location;\n const { t } = useTranslation();\n const showSubnav = () => setSubnav(!subnav);\n const IconsObject = {\n home: <HomeIcon />,\n announcement: <ComplaintIcon />,\n business: <BPAHomeIcon />,\n store: <PropertyHouse />,\n assignment: <CaseIcon />,\n receipt: <ReceiptIcon />,\n \"business-center\": <PersonIcon />,\n description: <DocumentIconSolid />,\n \"water-tap\": <DropIcon />,\n \"collections-bookmark\": <CollectionsBookmarIcons />,\n \"insert-chart\": <FinanceChartIcon />,\n edcr: <CollectionIcon />,\n collections: <CollectionIcon />,\n };\n const leftIconArray = item?.icon?.leftIcon?.split?.(\":\")?.[1] || item?.leftIcon?.split?.(\":\")[1];\n let leftIcon = IconsObject[leftIconArray] || IconsObject.collections;\n const iconArr=item?.icon?.leftIcon?.split?.(\":\")|| item?.leftIcon?.split?.(\":\");\n if(iconArr?.[0]=='dynamic'){\n var IconComp = require(\"@egovernments/digit-ui-react-components\")?.[iconArr?.[1]];\n leftIcon=IconComp?<IconComp/>:leftIcon;\n }\n const getModuleName = item?.moduleName?.replace(/[ -]/g, \"_\");\n const appendTranslate = t(`ACTION_TEST_${getModuleName}`);\n const trimModuleName = t(appendTranslate?.length > 20 ? appendTranslate.substring(0, 20) + \"...\" : appendTranslate);\n\n if (item.type === \"single\") {\n const getOrigin = window.location.origin;\n return (\n <div className=\"submenu-container\">\n <div className={`sidebar-link ${pathname === item?.navigationURL ? \"active\" : \"\"}`}>\n <div className=\"actions\">\n {leftIcon}\n {item.navigationURL?.indexOf(`/${window?.contextPath}`) === -1 ? (\n <a\n data-tip=\"React-tooltip\"\n data-for={`jk-side-${getModuleName}`}\n className=\"custom-link\"\n href={getOrigin + \"/employee/\" + item.navigationURL}\n >\n <span> {trimModuleName} </span>\n\n {trimModuleName?.includes(\"...\") &&<ReactTooltip textColor=\"white\" backgroundColor=\"grey\" place=\"right\" type=\"info\" effect=\"solid\" id={`jk-side-${getModuleName}`}>\n {t(`ACTION_TEST_${getModuleName}`)}\n </ReactTooltip>}\n </a>\n ) : (\n // <a className=\"custom-link\" href={getOrigin + \"/employee/\" + item.navigationURL}>\n // <div className=\"tooltip\">\n // <p className=\"p1\">{trimModuleName}</p>\n // <span className=\"tooltiptext\">{t(`ACTION_TEST_${getModuleName}`)}</span>\n // </div>\n // </a>\n <Link className=\"custom-link\" to={item.navigationURL}>\n <div data-tip=\"React-tooltip\" data-for={`jk-side-${getModuleName}`}>\n <span> {trimModuleName} </span>\n\n {trimModuleName?.includes(\"...\") && <ReactTooltip textColor=\"white\" backgroundColor=\"grey\" place=\"right\" type=\"info\" effect=\"solid\" id={`jk-side-${getModuleName}`}>\n {t(`ACTION_TEST_${getModuleName}`)}\n </ReactTooltip>}\n </div>\n {/* <div className=\"tooltip\">\n <p className=\"p1\">{trimModuleName}</p>\n <span className=\"tooltiptext\">{t(`ACTION_TEST_${getModuleName}`)}</span>\n </div>{\" \"} */}\n </Link>\n )}\n </div>\n </div>\n </div>\n );\n } else {\n console.log(\"d\",item);\n return (\n <React.Fragment>\n <div className=\"submenu-container\">\n <div onClick={item.links && showSubnav} className={`sidebar-link ${ item?.links?.some(ele=>ele?.url === \"url\" && ele?.link==pathname) ? \"active\" : \"\"}`}>\n <div className=\"actions\">\n {leftIcon}\n <div data-tip=\"React-tooltip\" data-for={`jk-side-${getModuleName}`}>\n <span> {trimModuleName} </span>\n\n {trimModuleName?.includes(\"...\") && <ReactTooltip textColor=\"white\" backgroundColor=\"grey\" place=\"right\" type=\"info\" effect=\"solid\" id={`jk-side-${getModuleName}`}>\n {t(`ACTION_TEST_${getModuleName}`)}\n </ReactTooltip>}\n </div>\n {/* <div className=\"tooltip\">\n <p className=\"p1\">{trimModuleName}</p>\n <span className=\"tooltiptext\">{t(`ACTION_TEST_${getModuleName}`)}</span>\n </div>{\" \"} */}\n </div>\n <div> {item.links && subnav ? <ArrowVectorDown /> : item.links ? <ArrowForward /> : null} </div>\n </div>\n </div>\n\n {subnav &&\n item.links\n .sort((a, b) => a.orderNumber - b.orderNumber)\n .filter((item) => item.url === \"url\" || item.url !== \"\")\n .map((item, index) => {\n const getChildName = item?.displayName?.toUpperCase()?.replace(/[ -]/g, \"_\");\n const appendTranslate = t(`ACTION_TEST_${getChildName}`);\n const trimModuleName = t(appendTranslate?.length > 20 ? appendTranslate.substring(0, 20) + \"...\" : appendTranslate);\n\n if (item.navigationURL.indexOf(`/${window?.contextPath}`) === -1) {\n const getOrigin = window.location.origin;\n return (\n <a\n key={index}\n className={`dropdown-link ${pathname === item.link ? \"active\" : \"\"}`}\n href={getOrigin + \"/employee/\" + item.navigationURL}\n >\n <div className=\"actions\" data-tip=\"React-tooltip\" data-for={`jk-side-${index}`}>\n <span> {trimModuleName} </span>\n {trimModuleName?.includes(\"...\") && <ReactTooltip textColor=\"white\" backgroundColor=\"grey\" place=\"right\" type=\"info\" effect=\"solid\" id={`jk-side-${index}`}>\n {t(`ACTION_TEST_${getChildName}`)}\n </ReactTooltip>}\n </div>\n {/* <div className=\"actions\">\n <div className=\"tooltip\">\n <p className=\"p1\">{trimModuleName}</p>\n <span className=\"tooltiptext\">{t(`ACTION_TEST_${getChildName}`)}</span>\n </div>{\" \"}\n </div> */}\n </a>\n );\n }\n return (\n <Link\n to={item?.link || item.navigationURL}\n key={index}\n className={`dropdown-link ${pathname === item?.link || pathname === item?.navigationURL ? \"active\" : \"\"}`}\n >\n <div className=\"actions\" data-tip=\"React-tooltip\" data-for={`jk-side-${index}`}>\n <span> {trimModuleName} </span>\n {trimModuleName?.includes(\"...\") &&<ReactTooltip textColor=\"white\" backgroundColor=\"grey\" place=\"right\" type=\"info\" effect=\"solid\" id={`jk-side-${index}`}>\n {t(`ACTION_TEST_${getChildName}`)}\n </ReactTooltip>}\n {/* <div className=\"tooltip\">\n <p className=\"p1\">{trimModuleName}</p>\n <span className=\"tooltiptext\">{t(`ACTION_TEST_${getChildName}`)}</span>\n </div>{\" \"} */}\n </div>\n </Link>\n );\n })}\n </React.Fragment>\n );\n }\n};\n\nexport default SubMenu;\n","import React, { useRef, useEffect, useState } from \"react\";\nimport SubMenu from \"./SubMenu\";\nimport { Loader, SearchIcon } from \"@egovernments/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\n\nconst EmployeeSideBar = () => {\n const sidebarRef = useRef(null);\n const { isLoading, data } = Digit.Hooks.useAccessControl();\n const [search, setSearch] = useState(\"\");\n const { t } = useTranslation();\n useEffect(() => {\n if (isLoading) {\n return <Loader />;\n }\n sidebarRef.current.style.cursor = \"pointer\";\n collapseNav();\n }, [isLoading]);\n\n const expandNav = () => {\n sidebarRef.current.style.width = \"260px\";\n sidebarRef.current.style.overflow = \"auto\";\n\n sidebarRef.current.querySelectorAll(\".dropdown-link\").forEach((element) => {\n element.style.display = \"flex\";\n });\n };\n const collapseNav = () => {\n sidebarRef.current.style.width = \"55px\";\n sidebarRef.current.style.overflow = \"hidden\";\n\n sidebarRef.current.querySelectorAll(\".dropdown-link\").forEach((element) => {\n element.style.display = \"none\";\n });\n sidebarRef.current.querySelectorAll(\".actions\").forEach((element) => {\n element.style.padding = \"0\";\n });\n };\n const configEmployeeSideBar = {};\n data?.actions\n .filter((e) => e.url === \"url\")\n .forEach((item) => {\n let index = item.path.split(\".\")[0];\n if (search == \"\" && item.path !== \"\") {\n index = item.path.split(\".\")[0];\n if (!configEmployeeSideBar[index]) {\n configEmployeeSideBar[index] = [item];\n } else {\n configEmployeeSideBar[index].push(item);\n }\n } else if (\n item.path !== \"\" &&\n t(`ACTION_TEST_${index?.toUpperCase()?.replace(/[ -]/g, \"_\")}`)\n ?.toLowerCase()\n .includes(search.toLowerCase())\n ) {\n index = item.path.split(\".\")[0];\n if (!configEmployeeSideBar[index]) {\n configEmployeeSideBar[index] = [item];\n } else {\n configEmployeeSideBar[index].push(item);\n }\n }\n });\n let res = [];\n const splitKeyValue = () => {\n const keys = Object.keys(configEmployeeSideBar);\n keys.sort((a, b) => a.orderNumber - b.orderNumber);\n for (let i = 0; i < keys.length; i++) {\n if (configEmployeeSideBar[keys[i]][0].path.indexOf(\".\") === -1) {\n if (configEmployeeSideBar[keys[i]][0].displayName === \"Home\") {\n const homeURL = `/${window?.contextPath}/employee`;\n res.unshift({\n moduleName: keys[i].toUpperCase(),\n icon: configEmployeeSideBar[keys[i]][0],\n navigationURL: homeURL,\n type: \"single\",\n });\n } else {\n res.push({\n moduleName: configEmployeeSideBar[keys[i]][0]?.displayName.toUpperCase(),\n type: \"single\",\n icon: configEmployeeSideBar[keys[i]][0],\n navigationURL: configEmployeeSideBar[keys[i]][0].navigationURL,\n });\n }\n } else {\n res.push({\n moduleName: keys[i].toUpperCase(),\n links: configEmployeeSideBar[keys[i]],\n icon: configEmployeeSideBar[keys[i]][0],\n orderNumber: configEmployeeSideBar[keys[i]][0].orderNumber,\n });\n }\n }\n if (res.find((a) => a.moduleName === \"HOME\")) {\n const home = res?.filter((ob) => ob?.moduleName === \"HOME\");\n let res1 = res?.filter((ob) => ob?.moduleName !== \"HOME\");\n res = res1.sort((a, b) => a.moduleName.localeCompare(b.moduleName));\n home?.[0] && res.unshift(home[0]);\n } else {\n res.sort((a, b) => a.moduleName.localeCompare(b.moduleName));\n }\n return res?.map((item, index) => {\n return <SubMenu item={item} key={index + 1} />;\n });\n };\n\n if (isLoading) {\n return <Loader />;\n }\n if (!res) {\n return \"\";\n }\n\n const renderSearch = () => {\n return (\n <div className=\"submenu-container\">\n <div className=\"sidebar-link\">\n <div className=\"actions search-icon-wrapper\">\n <SearchIcon className=\"search-icon\" />\n <input\n className=\"employee-search-input\"\n type=\"text\"\n placeholder={t(`ACTION_TEST_SEARCH`)}\n name=\"search\"\n value={search}\n onChange={(e) => setSearch(e.target.value)}\n />\n </div>\n </div>\n </div>\n );\n };\n\n return (\n <div className=\"sidebar\" ref={sidebarRef} onMouseOver={expandNav} onMouseLeave={collapseNav}>\n {renderSearch()}\n {splitKeyValue()}\n </div>\n );\n};\n\nexport default EmployeeSideBar;\n","import React from \"react\";\nimport { CitizenSideBar } from \"./CitizenSideBar\";\nimport EmployeeSideBar from \"./EmployeeSideBar\";\n\nconst SideBar = ({ t, CITIZEN, isSidebarOpen, toggleSidebar, handleLogout, mobileView, userDetails, modules, linkData, islinkDataLoading }) => {\n if (CITIZEN)\n return (\n <CitizenSideBar\n isOpen={isSidebarOpen}\n isMobile={true}\n toggleSidebar={toggleSidebar}\n onLogout={handleLogout}\n linkData={linkData}\n islinkDataLoading={islinkDataLoading}\n />\n );\n else {\n if (!mobileView && userDetails?.access_token) return <EmployeeSideBar {...{ mobileView, userDetails, modules }} />;\n else return <CitizenSideBar isOpen={isSidebarOpen} isMobile={true} toggleSidebar={toggleSidebar} onLogout={handleLogout} isEmployee={true} />;\n }\n};\n\nexport default SideBar;\n","import React, { useState } from \"react\";\nimport { EditPencilIcon, LogoutIcon } from \"@egovernments/digit-ui-react-components\";\nimport TopBar from \"./TopBar\";\nimport { useHistory } from \"react-router-dom\";\nimport SideBar from \"./SideBar\";\nimport LogoutDialog from \"../Dialog/LogoutDialog\";\nconst TopBarSideBar = ({\n t,\n stateInfo,\n userDetails,\n CITIZEN,\n cityDetails,\n mobileView,\n handleUserDropdownSelection,\n logoUrl,\n showSidebar = true,\n showLanguageChange,\n linkData,\n islinkDataLoading,\n}) => {\n const [isSidebarOpen, toggleSidebar] = useState(false);\n const history = useHistory();\n const [showDialog, setShowDialog] = useState(false);\n const handleLogout = () => {\n toggleSidebar(false);\n setShowDialog(true);\n };\n const handleOnSubmit = () => {\n Digit.UserService.logout();\n setShowDialog(false);\n }\n const handleOnCancel = () => {\n setShowDialog(false);\n }\n const userProfile = () => {\n history.push(`/${window?.contextPath}/employee/user/profile`);\n };\n const userOptions = [\n { name: t(\"EDIT_PROFILE\"), icon: <EditPencilIcon className=\"icon\" />, func: userProfile },\n { name: t(\"CORE_COMMON_LOGOUT\"), icon: <LogoutIcon className=\"icon\" />, func: handleLogout },\n ];\n return (\n <React.Fragment>\n <TopBar\n t={t}\n stateInfo={stateInfo}\n toggleSidebar={toggleSidebar}\n isSidebarOpen={isSidebarOpen}\n handleLogout={handleLogout}\n userDetails={userDetails}\n CITIZEN={CITIZEN}\n cityDetails={cityDetails}\n mobileView={mobileView}\n userOptions={userOptions}\n handleUserDropdownSelection={handleUserDropdownSelection}\n logoUrl={logoUrl}\n showLanguageChange={showLanguageChange}\n />\n {showDialog && (\n <LogoutDialog onSelect={handleOnSubmit} onCancel={handleOnCancel} onDismiss={handleOnCancel}></LogoutDialog>\n )}\n {showSidebar && (\n <SideBar\n t={t}\n CITIZEN={CITIZEN}\n isSidebarOpen={isSidebarOpen}\n toggleSidebar={toggleSidebar}\n handleLogout={handleLogout}\n mobileView={mobileView}\n userDetails={userDetails}\n linkData={linkData}\n islinkDataLoading={islinkDataLoading}\n />\n )}\n </React.Fragment>\n );\n};\nexport default TopBarSideBar;","import { ArrowForward } from \"@egovernments/digit-ui-react-components\";\nimport React, { useState } from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nconst FaqComponent = (props) => {\n const { question, answer, lastIndex } = props;\n const [isOpen, toggleOpen] = useState(false);\n const { t } = useTranslation();\n\n return (\n <div className=\"faqs border-none\" onClick={() => toggleOpen(!isOpen)}>\n <div className=\"faq-question\" style={{ justifyContent: \"space-between\", display: \"flex\" }}>\n <span>{t(question)}</span>\n <span className={isOpen ? \"faqicon rotate\" : \"faqicon\"} style={{ float: \"right\" }}>\n {isOpen ? <ArrowForward /> : <ArrowForward />}\n </span>\n </div>\n\n <div className=\"faq-answer\" style={isOpen ? { display: \"block\" } : { display: \"none\" }}>\n <span>{t(answer)}</span>\n </div>\n {!lastIndex ? <div className=\"cs-box-border\" /> : null}\n </div>\n );\n};\n\nexport default FaqComponent;\n","import { BackButton, Header, Loader, SearchIconSvg } from \"@egovernments/digit-ui-react-components\";\nimport React, { Fragment } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport FaqComponent from \"./FaqComponent\";\n\nconst FAQsSection = ({ module }) => {\n const user = Digit.UserService.getUser();\n const tenantId = user?.info?.tenantId || Digit.ULBService.getCurrentTenantId();\n const { t } = useTranslation();\n\n const SearchImg = () => {\n return <SearchIconSvg className=\"signature-img\" />;\n };\n\n const { isLoading, data } = Digit.Hooks.useGetFAQsJSON(Digit.ULBService.getStateId());\n\n const moduleFaqs = data?.MdmsRes[\"common-masters\"]?.faqs[0]?.[`${module}`].faqs;\n\n if (isLoading) {\n return <Loader />;\n }\n return (\n <Fragment>\n <div className=\"faq-page\">\n <BackButton style={{ marginLeft: \"unset\" }}></BackButton>\n <div style={{ marginBottom: \"15px\" }}>\n <Header styles={{ marginLeft: \"0px\", paddingTop: \"10px\", fontSize: \"32px\" }}>{t(\"FAQ_S\")}</Header>\n </div>\n <div className=\"faq-list\">\n {moduleFaqs.map((faq, i) => (\n <FaqComponent key={\"faq_\" + i} question={faq.question} answer={faq.answer} lastIndex={i === moduleFaqs?.length - 1} />\n ))}\n </div>\n </div>\n </Fragment>\n );\n};\n\nexport default FAQsSection;\n","import {\n Calender, CardBasedOptions, CaseIcon, ComplaintIcon, DocumentIcon, HomeIcon, Loader, OBPSIcon, PTIcon, WhatsNewCard\n} from \"@egovernments/digit-ui-react-components\";\nimport React from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nconst Home = () => {\n const { t } = useTranslation();\n const history = useHistory();\n const tenantId = Digit.ULBService.getCitizenCurrentTenant(true);\n const { data: { stateInfo, uiHomePage } = {}, isLoading } = Digit.Hooks.useStore.getInitData();\n let isMobile = window.Digit.Utils.browser.isMobile();\n\n const conditionsToDisableNotificationCountTrigger = () => {\n if (Digit.UserService?.getUser()?.info?.type === \"EMPLOYEE\") return false;\n if (!Digit.UserService?.getUser()?.access_token) return false;\n return true;\n };\n\n const { data: EventsData, isLoading: EventsDataLoading } = Digit.Hooks.useEvents({\n tenantId,\n variant: \"whats-new\",\n config: {\n enabled: conditionsToDisableNotificationCountTrigger(),\n },\n });\n\n if (!tenantId) {\n history.push(`/${window?.contextPath}/citizen/select-language`);\n }\n\n const appBannerWebObj = uiHomePage?.appBannerDesktop;\n const appBannerMobObj = uiHomePage?.appBannerMobile;\n const citizenServicesObj = uiHomePage?.citizenServicesCard;\n const infoAndUpdatesObj = uiHomePage?.informationAndUpdatesCard;\n const whatsAppBannerWebObj = uiHomePage?.whatsAppBannerDesktop;\n const whatsAppBannerMobObj = uiHomePage?.whatsAppBannerMobile;\n const whatsNewSectionObj = uiHomePage?.whatsNewSection;\n const redirectURL = uiHomePage?.redirectURL;\n /* configure redirect URL only if it is required to overide the default citizen home screen */\n if (redirectURL) {\n history.push(`/${window?.contextPath}/citizen/${redirectURL}`);\n }\n /* fix for sanitation ui */\n if (window?.location?.href?.includes?.(\"sanitation-ui\")) {\n history.push(`/${window?.contextPath}/citizen/all-services`);\n }\n\n const handleClickOnWhatsAppBanner = (obj) => {\n window.open(obj?.navigationUrl);\n };\n\n const allCitizenServicesProps = {\n header: t(citizenServicesObj?.headerLabel),\n sideOption: {\n name: t(citizenServicesObj?.sideOption?.name),\n onClick: () => history.push(citizenServicesObj?.sideOption?.navigationUrl),\n },\n options: [\n {\n name: t(citizenServicesObj?.props?.[0]?.label),\n Icon: <ComplaintIcon />,\n onClick: () => history.push(citizenServicesObj?.props?.[0]?.navigationUrl),\n },\n {\n name: t(citizenServicesObj?.props?.[1]?.label),\n Icon: <PTIcon className=\"fill-path-primary-main\" />,\n onClick: () => history.push(citizenServicesObj?.props?.[1]?.navigationUrl),\n },\n {\n name: t(citizenServicesObj?.props?.[2]?.label),\n Icon: <CaseIcon className=\"fill-path-primary-main\" />,\n onClick: () => history.push(citizenServicesObj?.props?.[2]?.navigationUrl),\n },\n // {\n // name: t(\"ACTION_TEST_WATER_AND_SEWERAGE\"),\n // Icon: <DropIcon/>,\n // onClick: () => history.push(`/${window?.contextPath}/citizen`)\n // },\n {\n name: t(citizenServicesObj?.props?.[3]?.label),\n Icon: <OBPSIcon />,\n onClick: () => history.push(citizenServicesObj?.props?.[3]?.navigationUrl),\n },\n ],\n styles: { display: \"flex\", flexWrap: \"wrap\", justifyContent: \"flex-start\", width: \"100%\" },\n };\n const allInfoAndUpdatesProps = {\n header: t(infoAndUpdatesObj?.headerLabel),\n sideOption: {\n name: t(infoAndUpdatesObj?.sideOption?.name),\n onClick: () => history.push(infoAndUpdatesObj?.sideOption?.navigationUrl),\n },\n options: [\n {\n name: t(infoAndUpdatesObj?.props?.[0]?.label),\n Icon: <HomeIcon />,\n onClick: () => history.push(infoAndUpdatesObj?.props?.[0]?.navigationUrl),\n },\n {\n name: t(infoAndUpdatesObj?.props?.[1]?.label),\n Icon: <Calender />,\n onClick: () => history.push(infoAndUpdatesObj?.props?.[1]?.navigationUrl),\n },\n {\n name: t(infoAndUpdatesObj?.props?.[2]?.label),\n Icon: <DocumentIcon />,\n onClick: () => history.push(infoAndUpdatesObj?.props?.[2]?.navigationUrl),\n },\n {\n name: t(infoAndUpdatesObj?.props?.[3]?.label),\n Icon: <DocumentIcon />,\n onClick: () => history.push(infoAndUpdatesObj?.props?.[3]?.navigationUrl),\n },\n // {\n // name: t(\"CS_COMMON_HELP\"),\n // Icon: <HelpIcon/>\n // }\n ],\n styles: { display: \"flex\", flexWrap: \"wrap\", justifyContent: \"flex-start\", width: \"100%\" },\n };\n\n return isLoading ? (\n <Loader />\n ) : (\n <div className=\"HomePageContainer\">\n {/* <div className=\"SideBarStatic\">\n <StaticCitizenSideBar />\n </div> */}\n <div className=\"HomePageWrapper\">\n {\n <div className=\"BannerWithSearch\">\n {isMobile ? <img src={appBannerMobObj?.bannerUrl} /> : <img src={appBannerWebObj?.bannerUrl} />}\n {/* <div className=\"Search\">\n <StandaloneSearchBar placeholder={t(\"CS_COMMON_SEARCH_PLACEHOLDER\")} />\n </div> */}\n <div className=\"ServicesSection\">\n <CardBasedOptions style={{ marginTop: \"-30px\" }} {...allCitizenServicesProps} />\n <CardBasedOptions style={isMobile ? {} : { marginTop: \"-30px\" }} {...allInfoAndUpdatesProps} />\n </div>\n </div>\n }\n\n {(whatsAppBannerMobObj || whatsAppBannerWebObj) && (\n <div className=\"WhatsAppBanner\">\n {isMobile ? (\n <img src={whatsAppBannerMobObj?.bannerUrl} onClick={() => handleClickOnWhatsAppBanner(whatsAppBannerMobObj)} />\n ) : (\n <img src={whatsAppBannerWebObj?.bannerUrl} onClick={() => handleClickOnWhatsAppBanner(whatsAppBannerWebObj)} />\n )}\n </div>\n )}\n\n {conditionsToDisableNotificationCountTrigger() ? (\n EventsDataLoading ? (\n <Loader />\n ) : (\n <div className=\"WhatsNewSection\">\n <div className=\"headSection\">\n <h2>{t(whatsNewSectionObj?.headerLabel)}</h2>\n <p onClick={() => history.push(whatsNewSectionObj?.sideOption?.navigationUrl)}>{t(whatsNewSectionObj?.sideOption?.name)}</p>\n </div>\n <WhatsNewCard {...EventsData?.[0]} />\n </div>\n )\n ) : null}\n </div>\n </div>\n );\n};\n\nexport default Home;\n","import React, { useMemo } from \"react\";\nimport { PageBasedInput, Loader, RadioButtons, CardHeader } from \"@egovernments/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nconst LanguageSelection = () => {\n const { t } = useTranslation();\n const history = useHistory();\n\n const { data: { languages, stateInfo } = {}, isLoading } = Digit.Hooks.useStore.getInitData();\n const selectedLanguage = Digit.StoreData.getCurrentLanguage();\n\n const texts = useMemo(\n () => ({\n header: t(\"CS_COMMON_CHOOSE_LANGUAGE\"),\n submitBarLabel: t(\"CORE_COMMON_CONTINUE\"),\n }),\n [t]\n );\n\n const RadioButtonProps = useMemo(\n () => ({\n options: languages,\n optionsKey: \"label\",\n additionalWrapperClass: \"reverse-radio-selection-wrapper\",\n onSelect: (language) => Digit.LocalizationService.changeLanguage(language.value, stateInfo.code),\n selectedOption: languages?.filter((i) => i.value === selectedLanguage)[0],\n }),\n [selectedLanguage, languages]\n );\n\n function onSubmit() {\n history.push(`/${window?.contextPath}/citizen/select-location`);\n }\n\n return isLoading ? (\n <Loader />\n ) : (\n <div className=\"selection-card-wrapper\">\n <PageBasedInput texts={texts} onSubmit={onSubmit}>\n <CardHeader>{t(\"CS_COMMON_CHOOSE_LANGUAGE\")}</CardHeader>\n <RadioButtons {...RadioButtonProps} />\n </PageBasedInput>\n </div>\n );\n};\n\nexport default LanguageSelection;\n","import { BackButton, CardHeader, CardLabelError, PageBasedInput, SearchOnRadioButtons } from \"@egovernments/digit-ui-react-components\";\nimport React, { useMemo, useState } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useLocation } from \"react-router-dom\";\n\nconst LocationSelection = () => {\n const { t } = useTranslation();\n const history = useHistory();\n const location = useLocation();\n const { data: cities, isLoading } = Digit.Hooks.useTenants();\n\n const [selectedCity, setSelectedCity] = useState(() => ({ code: Digit.ULBService.getCitizenCurrentTenant(true) }));\n const [showError, setShowError] = useState(false);\n\n const texts = useMemo(\n () => ({\n header: t(\"CS_COMMON_CHOOSE_LOCATION\"),\n submitBarLabel: t(\"CORE_COMMON_CONTINUE\"),\n }),\n [t]\n );\n\n function selectCity(city) {\n setSelectedCity(city);\n setShowError(false);\n }\n\n const RadioButtonProps = useMemo(() => {\n return {\n options: cities,\n optionsKey: \"i18nKey\",\n additionalWrapperClass: \"reverse-radio-selection-wrapper\",\n onSelect: selectCity,\n selectedOption: selectedCity,\n };\n }, [cities, t, selectedCity]);\n\n function onSubmit() {\n if (selectedCity) {\n Digit.SessionStorage.set(\"CITIZEN.COMMON.HOME.CITY\", selectedCity);\n const redirectBackTo = location.state?.redirectBackTo;\n if (redirectBackTo) {\n history.replace(redirectBackTo);\n } else history.push(`/${window?.contextPath}/citizen`);\n } else {\n setShowError(true);\n }\n }\n\n return isLoading ? (\n <loader />\n ) : (\n <div className=\"selection-card-wrapper\">\n <BackButton />\n <PageBasedInput texts={texts} onSubmit={onSubmit} className=\"location-selection-container\">\n <CardHeader>{t(\"CS_COMMON_CHOOSE_LOCATION\")}</CardHeader>\n <SearchOnRadioButtons {...RadioButtonProps} placeholder={t(\"COMMON_TABLE_SEARCH\")} />\n {showError ? <CardLabelError>{t(\"CS_COMMON_LOCATION_SELECTION_ERROR\")}</CardLabelError> : null}\n </PageBasedInput>\n </div>\n );\n};\n\nexport default LocationSelection;\n","// A type of promise-like that resolves synchronously and supports only one observer\nexport const _Pact = /*#__PURE__*/(function() {\n\tfunction _Pact() {}\n\t_Pact.prototype.then = function(onFulfilled, onRejected) {\n\t\tconst result = new _Pact();\n\t\tconst state = this.s;\n\t\tif (state) {\n\t\t\tconst callback = state & 1 ? onFulfilled : onRejected;\n\t\t\tif (callback) {\n\t\t\t\ttry {\n\t\t\t\t\t_settle(result, 1, callback(this.v));\n\t\t\t\t} catch (e) {\n\t\t\t\t\t_settle(result, 2, e);\n\t\t\t\t}\n\t\t\t\treturn result;\n\t\t\t} else {\n\t\t\t\treturn this;\n\t\t\t}\n\t\t}\n\t\tthis.o = function(_this) {\n\t\t\ttry {\n\t\t\t\tconst value = _this.v;\n\t\t\t\tif (_this.s & 1) {\n\t\t\t\t\t_settle(result, 1, onFulfilled ? onFulfilled(value) : value);\n\t\t\t\t} else if (onRejected) {\n\t\t\t\t\t_settle(result, 1, onRejected(value));\n\t\t\t\t} else {\n\t\t\t\t\t_settle(result, 2, value);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t_settle(result, 2, e);\n\t\t\t}\n\t\t};\n\t\treturn result;\n\t}\n\treturn _Pact;\n})();\n\n// Settles a pact synchronously\nexport function _settle(pact, state, value) {\n\tif (!pact.s) {\n\t\tif (value instanceof _Pact) {\n\t\t\tif (value.s) {\n\t\t\t\tif (state & 1) {\n\t\t\t\t\tstate = value.s;\n\t\t\t\t}\n\t\t\t\tvalue = value.v;\n\t\t\t} else {\n\t\t\t\tvalue.o = _settle.bind(null, pact, state);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tif (value && value.then) {\n\t\t\tvalue.then(_settle.bind(null, pact, state), _settle.bind(null, pact, 2));\n\t\t\treturn;\n\t\t}\n\t\tpact.s = state;\n\t\tpact.v = value;\n\t\tconst observer = pact.o;\n\t\tif (observer) {\n\t\t\tobserver(pact);\n\t\t}\n\t}\n}\n\nexport function _isSettledPact(thenable) {\n\treturn thenable instanceof _Pact && thenable.s & 1;\n}\n\n// Converts argument to a function that always returns a Promise\nexport function _async(f) {\n\treturn function() {\n\t\tfor (var args = [], i = 0; i < arguments.length; i++) {\n\t\t\targs[i] = arguments[i];\n\t\t}\n\t\ttry {\n\t\t\treturn Promise.resolve(f.apply(this, args));\n\t\t} catch(e) {\n\t\t\treturn Promise.reject(e);\n\t\t}\n\t}\n}\n\n// Awaits on a value that may or may not be a Promise (equivalent to the await keyword in ES2015, with continuations passed explicitly)\nexport function _await(value, then, direct) {\n\tif (direct) {\n\t\treturn then ? then(value) : value;\n\t}\n\tif (!value || !value.then) {\n\t\tvalue = Promise.resolve(value);\n\t}\n\treturn then ? value.then(then) : value;\n}\n\n// Awaits on a value that may or may not be a Promise, then ignores it\nexport function _awaitIgnored(value, direct) {\n\tif (!direct) {\n\t\treturn value && value.then ? value.then(_empty) : Promise.resolve();\n\t}\n}\n\n// Proceeds after a value has resolved, or proceeds immediately if the value is not thenable\nexport function _continue(value, then) {\n\treturn value && value.then ? value.then(then) : then(value);\n}\n\n// Proceeds after a value has resolved, or proceeds immediately if the value is not thenable\nexport function _continueIgnored(value) {\n\tif (value && value.then) {\n\t\treturn value.then(_empty);\n\t}\n}\n\n// Asynchronously iterate through an object that has a length property, passing the index as the first argument to the callback (even as the length property changes)\nexport function _forTo(array, body, check) {\n\tvar i = -1, pact, reject;\n\tfunction _cycle(result) {\n\t\ttry {\n\t\t\twhile (++i < array.length && (!check || !check())) {\n\t\t\t\tresult = body(i);\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult.then(_cycle, reject || (reject = _settle.bind(null, pact = new _Pact(), 2)));\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (pact) {\n\t\t\t\t_settle(pact, 1, result);\n\t\t\t} else {\n\t\t\t\tpact = result;\n\t\t\t}\n\t\t} catch (e) {\n\t\t\t_settle(pact || (pact = new _Pact()), 2, e);\n\t\t}\n\t}\n\t_cycle();\n\treturn pact;\n}\n\n// Asynchronously iterate through an object's properties (including properties inherited from the prototype)\n// Uses a snapshot of the object's properties\nexport function _forIn(target, body, check) {\n\tvar keys = [];\n\tfor (var key in target) {\n\t\tkeys.push(key);\n\t}\n\treturn _forTo(keys, function(i) { return body(keys[i]); }, check);\n}\n\n// Asynchronously iterate through an object's own properties (excluding properties inherited from the prototype)\n// Uses a snapshot of the object's properties\nexport function _forOwn(target, body, check) {\n\tvar keys = [];\n\tfor (var key in target) {\n\t\tif (Object.prototype.hasOwnProperty.call(target, key)) {\n\t\t\tkeys.push(key);\n\t\t}\n\t}\n\treturn _forTo(keys, function(i) { return body(keys[i]); }, check);\n}\n\nexport const _iteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.iterator || (Symbol.iterator = Symbol(\"Symbol.iterator\"))) : \"@@iterator\";\n\n// Asynchronously iterate through an object's values\n// Uses for...of if the runtime supports it, otherwise iterates until length on a copy\nexport function _forOf(target, body, check) {\n\tif (typeof target[_iteratorSymbol] === \"function\") {\n\t\tvar iterator = target[_iteratorSymbol](), step, pact, reject;\n\t\tfunction _cycle(result) {\n\t\t\ttry {\n\t\t\t\twhile (!(step = iterator.next()).done && (!check || !check())) {\n\t\t\t\t\tresult = body(step.value);\n\t\t\t\t\tif (result && result.then) {\n\t\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tresult.then(_cycle, reject || (reject = _settle.bind(null, pact = new _Pact(), 2)));\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (pact) {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t} else {\n\t\t\t\t\tpact = result;\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t_settle(pact || (pact = new _Pact()), 2, e);\n\t\t\t}\n\t\t}\n\t\t_cycle();\n\t\tif (iterator.return) {\n\t\t\tvar _fixup = function(value) {\n\t\t\t\ttry {\n\t\t\t\t\tif (!step.done) {\n\t\t\t\t\t\titerator.return();\n\t\t\t\t\t}\n\t\t\t\t} catch(e) {\n\t\t\t\t}\n\t\t\t\treturn value;\n\t\t\t}\n\t\t\tif (pact && pact.then) {\n\t\t\t\treturn pact.then(_fixup, function(e) {\n\t\t\t\t\tthrow _fixup(e);\n\t\t\t\t});\n\t\t\t}\n\t\t\t_fixup();\n\t\t}\n\t\treturn pact;\n\t}\n\t// No support for Symbol.iterator\n\tif (!(\"length\" in target)) {\n\t\tthrow new TypeError(\"Object is not iterable\");\n\t}\n\t// Handle live collections properly\n\tvar values = [];\n\tfor (var i = 0; i < target.length; i++) {\n\t\tvalues.push(target[i]);\n\t}\n\treturn _forTo(values, function(i) { return body(values[i]); }, check);\n}\n\nexport const _asyncIteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.asyncIterator || (Symbol.asyncIterator = Symbol(\"Symbol.asyncIterator\"))) : \"@@asyncIterator\";\n\n// Asynchronously iterate on a value using it's async iterator if present, or its synchronous iterator if missing\nexport function _forAwaitOf(target, body, check) {\n\tif (typeof target[_asyncIteratorSymbol] === \"function\") {\n\t\tvar pact = new _Pact();\n\t\tvar iterator = target[_asyncIteratorSymbol]();\n\t\titerator.next().then(_resumeAfterNext).then(void 0, _reject);\n\t\treturn pact;\n\t\tfunction _resumeAfterBody(result) {\n\t\t\tif (check && check()) {\n\t\t\t\treturn _settle(pact, 1, iterator.return ? iterator.return().then(function() { return result; }) : result);\n\t\t\t}\n\t\t\titerator.next().then(_resumeAfterNext).then(void 0, _reject);\n\t\t}\n\t\tfunction _resumeAfterNext(step) {\n\t\t\tif (step.done) {\n\t\t\t\t_settle(pact, 1);\n\t\t\t} else {\n\t\t\t\tPromise.resolve(body(step.value)).then(_resumeAfterBody).then(void 0, _reject);\n\t\t\t}\n\t\t}\n\t\tfunction _reject(error) {\n\t\t\t_settle(pact, 2, iterator.return ? iterator.return().then(function() { return error; }) : error);\n\t\t}\n\t}\n\treturn Promise.resolve(_forOf(target, function(value) { return Promise.resolve(value).then(body); }, check));\n}\n\n// Asynchronously implement a generic for loop\nexport function _for(test, update, body) {\n\tvar stage;\n\tfor (;;) {\n\t\tvar shouldContinue = test();\n\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\tshouldContinue = shouldContinue.v;\n\t\t}\n\t\tif (!shouldContinue) {\n\t\t\treturn result;\n\t\t}\n\t\tif (shouldContinue.then) {\n\t\t\tstage = 0;\n\t\t\tbreak;\n\t\t}\n\t\tvar result = body();\n\t\tif (result && result.then) {\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.s;\n\t\t\t} else {\n\t\t\t\tstage = 1;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif (update) {\n\t\t\tvar updateValue = update();\n\t\t\tif (updateValue && updateValue.then && !_isSettledPact(updateValue)) {\n\t\t\t\tstage = 2;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\tvar pact = new _Pact();\n\tvar reject = _settle.bind(null, pact, 2);\n\t(stage === 0 ? shouldContinue.then(_resumeAfterTest) : stage === 1 ? result.then(_resumeAfterBody) : updateValue.then(_resumeAfterUpdate)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterBody(value) {\n\t\tresult = value;\n\t\tdo {\n\t\t\tif (update) {\n\t\t\t\tupdateValue = update();\n\t\t\t\tif (updateValue && updateValue.then && !_isSettledPact(updateValue)) {\n\t\t\t\t\tupdateValue.then(_resumeAfterUpdate).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\tshouldContinue = test();\n\t\t\tif (!shouldContinue || (_isSettledPact(shouldContinue) && !shouldContinue.v)) {\n\t\t\t\t_settle(pact, 1, result);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.v;\n\t\t\t}\n\t\t} while (!result || !result.then);\n\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t}\n\tfunction _resumeAfterTest(shouldContinue) {\n\t\tif (shouldContinue) {\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t} else {\n\t\t\t\t_resumeAfterBody(result);\n\t\t\t}\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n\tfunction _resumeAfterUpdate() {\n\t\tif (shouldContinue = test()) {\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t} else {\n\t\t\t\t_resumeAfterTest(shouldContinue);\n\t\t\t}\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n}\n\n// Asynchronously implement a do ... while loop\nexport function _do(body, test) {\n\tvar awaitBody;\n\tdo {\n\t\tvar result = body();\n\t\tif (result && result.then) {\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.v;\n\t\t\t} else {\n\t\t\t\tawaitBody = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tvar shouldContinue = test();\n\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\tshouldContinue = shouldContinue.v;\n\t\t}\n\t\tif (!shouldContinue) {\n\t\t\treturn result;\n\t\t}\n\t} while (!shouldContinue.then);\n\tconst pact = new _Pact();\n\tconst reject = _settle.bind(null, pact, 2);\n\t(awaitBody ? result.then(_resumeAfterBody) : shouldContinue.then(_resumeAfterTest)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterBody(value) {\n\t\tresult = value;\n\t\tfor (;;) {\n\t\t\tshouldContinue = test();\n\t\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\t\tshouldContinue = shouldContinue.v;\n\t\t\t}\n\t\t\tif (!shouldContinue) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\tresult = result.v;\n\t\t\t\t} else {\n\t\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t_settle(pact, 1, result);\n\t}\n\tfunction _resumeAfterTest(shouldContinue) {\n\t\tif (shouldContinue) {\n\t\t\tdo {\n\t\t\t\tresult = body();\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tshouldContinue = test();\n\t\t\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\t\t\tshouldContinue = shouldContinue.v;\n\t\t\t\t}\n\t\t\t\tif (!shouldContinue) {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} while (!shouldContinue.then);\n\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n}\n\n// Asynchronously implement a switch statement\nexport function _switch(discriminant, cases) {\n\tvar dispatchIndex = -1;\n\tvar awaitBody;\n\touter: {\n\t\tfor (var i = 0; i < cases.length; i++) {\n\t\t\tvar test = cases[i][0];\n\t\t\tif (test) {\n\t\t\t\tvar testValue = test();\n\t\t\t\tif (testValue && testValue.then) {\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\t\t\t\tif (testValue === discriminant) {\n\t\t\t\t\tdispatchIndex = i;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Found the default case, set it as the pending dispatch case\n\t\t\t\tdispatchIndex = i;\n\t\t\t}\n\t\t}\n\t\tif (dispatchIndex !== -1) {\n\t\t\tdo {\n\t\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\t\twhile (!body) {\n\t\t\t\t\tdispatchIndex++;\n\t\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t\t}\n\t\t\t\tvar result = body();\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tawaitBody = true;\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\t\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\t\tdispatchIndex++;\n\t\t\t} while (fallthroughCheck && !fallthroughCheck());\n\t\t\treturn result;\n\t\t}\n\t}\n\tconst pact = new _Pact();\n\tconst reject = _settle.bind(null, pact, 2);\n\t(awaitBody ? result.then(_resumeAfterBody) : testValue.then(_resumeAfterTest)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterTest(value) {\n\t\tfor (;;) {\n\t\t\tif (value === discriminant) {\n\t\t\t\tdispatchIndex = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (++i === cases.length) {\n\t\t\t\tif (dispatchIndex !== -1) {\n\t\t\t\t\tbreak;\n\t\t\t\t} else {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\ttest = cases[i][0];\n\t\t\tif (test) {\n\t\t\t\tvalue = test();\n\t\t\t\tif (value && value.then) {\n\t\t\t\t\tvalue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tdispatchIndex = i;\n\t\t\t}\n\t\t}\n\t\tdo {\n\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\twhile (!body) {\n\t\t\t\tdispatchIndex++;\n\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t}\n\t\t\tvar result = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\tdispatchIndex++;\n\t\t} while (fallthroughCheck && !fallthroughCheck());\n\t\t_settle(pact, 1, result);\n\t}\n\tfunction _resumeAfterBody(result) {\n\t\tfor (;;) {\n\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\tif (!fallthroughCheck || fallthroughCheck()) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdispatchIndex++;\n\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\twhile (!body) {\n\t\t\t\tdispatchIndex++;\n\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\t_settle(pact, 1, result);\n\t}\n}\n\n// Asynchronously call a function and pass the result to explicitly passed continuations\nexport function _call(body, then, direct) {\n\tif (direct) {\n\t\treturn then ? then(body()) : body();\n\t}\n\ttry {\n\t\tvar result = Promise.resolve(body());\n\t\treturn then ? result.then(then) : result;\n\t} catch (e) {\n\t\treturn Promise.reject(e);\n\t}\n}\n\n// Asynchronously call a function and swallow the result\nexport function _callIgnored(body, direct) {\n\treturn _call(body, _empty, direct);\n}\n\n// Asynchronously call a function and pass the result to explicitly passed continuations\nexport function _invoke(body, then) {\n\tvar result = body();\n\tif (result && result.then) {\n\t\treturn result.then(then);\n\t}\n\treturn then(result);\n}\n\n// Asynchronously call a function and swallow the result\nexport function _invokeIgnored(body) {\n\tvar result = body();\n\tif (result && result.then) {\n\t\treturn result.then(_empty);\n\t}\n}\n\n// Asynchronously call a function and send errors to recovery continuation\nexport function _catch(body, recover) {\n\ttry {\n\t\tvar result = body();\n\t} catch(e) {\n\t\treturn recover(e);\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(void 0, recover);\n\t}\n\treturn result;\n}\n\n// Asynchronously await a promise and pass the result to a finally continuation\nexport function _finallyRethrows(body, finalizer) {\n\ttry {\n\t\tvar result = body();\n\t} catch (e) {\n\t\treturn finalizer(true, e);\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(finalizer.bind(null, false), finalizer.bind(null, true));\n\t}\n\treturn finalizer(false, result);\n}\n\n// Asynchronously await a promise and invoke a finally continuation that always overrides the result\nexport function _finally(body, finalizer) {\n\ttry {\n\t\tvar result = body();\n\t} catch (e) {\n\t\treturn finalizer();\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(finalizer, finalizer);\n\t}\n\treturn finalizer();\n}\n\n// Rethrow or return a value from a finally continuation\nexport function _rethrow(thrown, value) {\n\tif (thrown)\n\t\tthrow value;\n\treturn value;\n}\n\n// Empty function to implement break and other control flow that ignores asynchronous results\nexport function _empty() {\n}\n\n// Sentinel value for early returns in generators \nexport const _earlyReturn = /*#__PURE__*/ {};\n\n// Asynchronously call a function and send errors to recovery continuation, skipping early returns\nexport function _catchInGenerator(body, recover) {\n\treturn _catch(body, function(e) {\n\t\tif (e === _earlyReturn) {\n\t\t\tthrow e;\n\t\t}\n\t\treturn recover(e);\n\t});\n}\n\n// Asynchronous generator class; accepts the entrypoint of the generator, to which it passes itself when the generator should start\nexport const _AsyncGenerator = /*#__PURE__*/(function() {\n\tfunction _AsyncGenerator(entry) {\n\t\tthis._entry = entry;\n\t\tthis._pact = null;\n\t\tthis._resolve = null;\n\t\tthis._return = null;\n\t\tthis._promise = null;\n\t}\n\n\tfunction _wrapReturnedValue(value) {\n\t\treturn { value: value, done: true };\n\t}\n\tfunction _wrapYieldedValue(value) {\n\t\treturn { value: value, done: false };\n\t}\n\n\t_AsyncGenerator.prototype._yield = function(value) {\n\t\t// Yield the value to the pending next call\n\t\tthis._resolve(value && value.then ? value.then(_wrapYieldedValue) : _wrapYieldedValue(value));\n\t\t// Return a pact for an upcoming next/return/throw call\n\t\treturn this._pact = new _Pact();\n\t};\n\t_AsyncGenerator.prototype.next = function(value) {\n\t\t// Advance the generator, starting it if it has yet to be started\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tconst _entry = _this._entry;\n\t\t\t\tif (_entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the next call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Start the generator\n\t\t\t\t_this._entry = null;\n\t\t\t\t_this._resolve = resolve;\n\t\t\t\tfunction returnValue(value) {\n\t\t\t\t\t_this._resolve(value && value.then ? value.then(_wrapReturnedValue) : _wrapReturnedValue(value));\n\t\t\t\t\t_this._pact = null;\n\t\t\t\t\t_this._resolve = null;\n\t\t\t\t}\n\t\t\t\tvar result = _entry(_this);\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tresult.then(returnValue, function(error) {\n\t\t\t\t\t\tif (error === _earlyReturn) {\n\t\t\t\t\t\t\treturnValue(_this._return);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst pact = new _Pact();\n\t\t\t\t\t\t\t_this._resolve(pact);\n\t\t\t\t\t\t\t_this._pact = null;\n\t\t\t\t\t\t\t_this._resolve = null;\n\t\t\t\t\t\t\t_resolve(pact, 2, error);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\treturnValue(result);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Generator is started and a yield expression is pending, settle it\n\t\t\t\t_this._pact = null;\n\t\t\t\t_this._resolve = resolve;\n\t\t\t\t_settle(_pact, 1, value);\n\t\t\t}\n\t\t});\n\t};\n\t_AsyncGenerator.prototype.return = function(value) {\n\t\t// Early return from the generator if started, otherwise abandons the generator\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tif (_this._entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the return call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Generator is not started, abandon it and return the specified value\n\t\t\t\t_this._entry = null;\n\t\t\t\treturn resolve(value && value.then ? value.then(_wrapReturnedValue) : _wrapReturnedValue(value));\n\t\t\t}\n\t\t\t// Settle the yield expression with a rejected \"early return\" value\n\t\t\t_this._return = value;\n\t\t\t_this._resolve = resolve;\n\t\t\t_this._pact = null;\n\t\t\t_settle(_pact, 2, _earlyReturn);\n\t\t});\n\t};\n\t_AsyncGenerator.prototype.throw = function(error) {\n\t\t// Inject an exception into the pending yield expression\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve, reject) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tif (_this._entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the throw call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Generator is not started, abandon it and return a rejected Promise containing the error\n\t\t\t\t_this._entry = null;\n\t\t\t\treturn reject(error);\n\t\t\t}\n\t\t\t// Settle the yield expression with the value as a rejection\n\t\t\t_this._resolve = resolve;\n\t\t\t_this._pact = null;\n\t\t\t_settle(_pact, 2, error);\n\t\t});\n\t};\n\n\t_AsyncGenerator.prototype[_asyncIteratorSymbol] = function() {\n\t\treturn this;\n\t};\n\t\n\treturn _AsyncGenerator;\n})();\n","import React, { useState, useEffect } from \"react\";\nimport { GalleryIcon, RemoveIcon, UploadFile } from \"@egovernments/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\n\nfunction UploadDrawer({ setProfilePic, closeDrawer, userType, removeProfilePic ,showToast}) {\n const [uploadedFile, setUploadedFile] = useState(null);\n const [file, setFile] = useState(\"\");\n const [error, setError] = useState(null);\n const { t } = useTranslation();\n const selectfile = (e) => setFile(e.target.files[0]);\n const removeimg = () => {removeProfilePic(); closeDrawer()};\n const onOverlayBodyClick = () => closeDrawer();\n\n useEffect(() => {\n (async () => {\n setError(null);\n if (file) {\n if (file.size >= 1000000) {\n showToast(\"error\", t(\"CORE_COMMON_PROFILE_MAXIMUM_UPLOAD_SIZE_EXCEEDED\"))\n setError(t(\"CORE_COMMON_PROFILE_MAXIMUM_UPLOAD_SIZE_EXCEEDED\"));\n } else {\n try {\n const response = await Digit.UploadServices.Filestorage(`${userType}-profile`, file, Digit.ULBService.getStateId());\n if (response?.data?.files?.length > 0) {\n const fileStoreId = response?.data?.files[0]?.fileStoreId;\n setUploadedFile(fileStoreId);\n setProfilePic(fileStoreId);\n } else {\n showToast(\"error\", t(\"CORE_COMMON_PROFILE_FILE_UPLOAD_ERROR\"))\n setError(t(\"CORE_COMMON_PROFILE_FILE_UPLOAD_ERROR\"));\n }\n } catch (err) {\n showToast(\"error\",t(\"CORE_COMMON_PROFILE_INVALID_FILE_INPUT\"))\n // setError(t(\"PT_FILE_UPLOAD_ERROR\"));\n }\n }\n }\n })();\n }, [file]);\n\n return (\n <React.Fragment>\n <div\n style={{\n position: \"fixed\",\n top: \"0\",\n left: \"0\",\n right: \"0\",\n bottom: \"0\",\n width: \"100%\",\n height: \"100vh\",\n backgroundColor: \"rgba(0,0,0,.5)\",\n // zIndex: \"9998\",\n }}\n onClick={onOverlayBodyClick}\n ></div>\n <div\n style={{\n width: \"100%\",\n justifyContent: \"space-between\",\n display: \"flex\",\n backgroundColor: \"white\",\n alignItems: \"center\",\n position: \"fixed\",\n left: \"0\",\n right: \"0\",\n height: \"20%\",\n bottom: userType === \"citizen\" ? \"2.5rem\" : \"0\",\n zIndex: \"2\",\n }}\n >\n <div\n style={{ display: \"flex\", flex: \"1\", flexDirection: \"column\", width: \"100%\", justifyContent: \"center\", alignItems: \"center\", gap: \"8px 0\" }}\n >\n <label for=\"file\" style={{ cursor: \"pointer\" }}>\n {\" \"}\n <GalleryIcon />\n </label>\n <label style={{ cursor: \"pointer\" }}> Gallery</label>\n <input type=\"file\" id=\"file\" accept=\"image/*, .png, .jpeg, .jpg\" onChange={selectfile} style={{ display: \"none\" }} />\n </div>\n\n <div\n style={{ display: \"flex\", flex: \"1\", width: \"100%\", justifyContent: \"center\", alignItems: \"center\", flexDirection: \"column\", gap: \"8px 0\" }}\n >\n <button onClick={removeimg}>\n <RemoveIcon />\n </button>\n <label style={{ cursor: \"pointer\" }}>Remove</label>\n </div>\n </div>\n </React.Fragment>\n );\n}\n\nexport default UploadDrawer;\n","import {\n CameraIcon,\n CardLabel,\n Dropdown,\n LabelFieldPair,\n MobileNumber,\n TextInput,\n Toast,\n CardLabelError,\n BreadCrumb,\n BackButton,\n Loader,\n} from \"@egovernments/digit-ui-react-components\";\nimport React, { useEffect, useState } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\nimport UploadDrawer from \"./ImageUpload/UploadDrawer\";\n\nconst defaultImage =\n \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO4AAADUCAMAAACs0e/bAAAAM1BMVEXK0eL\" +\n \"/\" +\n \"/\" +\n \"/\" +\n \"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\";\n\nconst UserProfile = ({ stateCode, userType, cityDetails }) => {\n const history = useHistory();\n const { t } = useTranslation();\n const url = window.location.href;\n const stateId = Digit.ULBService.getStateId();\n const tenant = Digit.ULBService.getCurrentTenantId();\n const userInfo = Digit.UserService.getUser()?.info || {};\n const [userDetails, setUserDetails] = useState(null);\n const [name, setName] = useState(userInfo?.name ? userInfo.name : \"\");\n const [email, setEmail] = useState(userInfo?.emailId ? userInfo.emailId : \"\");\n const [gender, setGender] = useState(userDetails?.gender);\n const [city, setCity] = useState(userInfo?.permanentCity ? userInfo.permanentCity : cityDetails.name);\n const [mobileNumber, setMobileNo] = useState(userInfo?.mobileNumber ? userInfo.mobileNumber : \"\");\n const [profilePic, setProfilePic] = useState(null);\n const [profileImg, setProfileImg] = useState(\"\");\n const [openUploadSlide, setOpenUploadSide] = useState(false);\n const [changepassword, setChangepassword] = useState(false);\n const [currentPassword, setCurrentPassword] = useState(\"\");\n const [newPassword, setNewPassword] = useState(\"\");\n const [confirmPassword, setConfirmPassword] = useState(\"\");\n const [toast, setToast] = useState(null);\n const [loading, setLoading] = useState(false);\n const [windowWidth, setWindowWidth] = React.useState(window.innerWidth);\n const [errors, setErrors] = React.useState({});\n const isMobile = window.Digit.Utils.browser.isMobile();\n\n const getUserInfo = async () => {\n const uuid = userInfo?.uuid;\n if (uuid) {\n const usersResponse = await Digit.UserService.userSearch(tenant, { uuid: [uuid] }, {});\n usersResponse && usersResponse.user && usersResponse.user.length && setUserDetails(usersResponse.user[0]);\n }\n };\n\n React.useEffect(() => {\n window.addEventListener(\"resize\", () => setWindowWidth(window.innerWidth));\n return () => {\n window.removeEventListener(\"resize\", () => setWindowWidth(window.innerWidth));\n };\n });\n\n useEffect(() => {\n setLoading(true);\n\n getUserInfo();\n\n setGender({\n i18nKey: undefined,\n code: userDetails?.gender,\n value: userDetails?.gender,\n });\n\n const thumbs = userDetails?.photo?.split(\",\");\n setProfileImg(thumbs?.at(0));\n\n setLoading(false);\n }, [userDetails !== null]);\n\n let validation = {};\n const editScreen = false; // To-do: Deubug and make me dynamic or remove if not needed\n const onClickAddPic = () => setOpenUploadSide(!openUploadSlide);\n const TogleforPassword = () => setChangepassword(!changepassword);\n const setGenderName = (value) => setGender(value);\n const closeFileUploadDrawer = () => setOpenUploadSide(false);\n\n const setUserName = (value) => {\n setName(value);\n\n if(!new RegExp(/^[a-zA-Z ]+$/i).test(value) || value.length === 0 || value.length > 50){\n setErrors({...errors, userName : {type: \"pattern\", message: \"CORE_COMMON_PROFILE_NAME_INVALID\"}});\n }else{\n setErrors({...errors, userName : null})\n }\n }\n\n const setUserEmailAddress = (value) => {\n setEmail(value);\n\n if(value.length && !(value.includes(\"@\") && value.includes(\".\"))){\n setErrors({...errors, emailAddress: {type: \"pattern\", message: \"CORE_COMMON_PROFILE_EMAIL_INVALID\"}})\n }else{\n setErrors({...errors, emailAddress : null})\n }\n }\n\n const setUserMobileNumber = (value) => {\n setMobileNo(value);\n\n if (userType === \"employee\" && !new RegExp(/^[6-9]{1}[0-9]{9}$/).test(value)) {\n setErrors({...errors, mobileNumber: {type: 'pattern', message: \"CORE_COMMON_PROFILE_MOBILE_NUMBER_INVALID\"}})\n }else{\n setErrors({...errors, mobileNumber: null});\n }\n }\n\n const setUserCurrentPassword = (value) => {\n setCurrentPassword(value);\n\n if (!new RegExp(/^([a-zA-Z0-9@#$%]{8,15})$/i).test(value)) {\n setErrors({...errors, currentPassword: {type: \"pattern\", message: \"CORE_COMMON_PROFILE_PASSWORD_INVALID\"}})\n }else{\n setErrors({...errors, currentPassword: null});\n }\n }\n\n const setUserNewPassword = (value) => {\n setNewPassword(value);\n\n if (!new RegExp(/^([a-zA-Z0-9@#$%]{8,15})$/i).test(value)) {\n setErrors({...errors, newPassword: {type: \"pattern\", message: \"CORE_COMMON_PROFILE_PASSWORD_INVALID\"}})\n }else{\n setErrors({...errors, newPassword: null});\n }\n }\n\n const setUserConfirmPassword = (value) => {\n setConfirmPassword(value);\n\n if (!new RegExp(/^([a-zA-Z0-9@#$%]{8,15})$/i).test(value)) {\n setErrors({...errors, confirmPassword: {type: \"pattern\", message: \"CORE_COMMON_PROFILE_PASSWORD_INVALID\"}})\n }else{\n setErrors({...errors, confirmPassword: null});\n }\n }\n\n const removeProfilePic = () => {\n setProfilePic(null);\n setProfileImg(null);\n };\n\n const showToast = (type, message, duration = 5000) => {\n setToast({ key: type, action: message });\n setTimeout(() => {\n setToast(null);\n }, duration);\n };\n\n const updateProfile = async () => {\n setLoading(true);\n try {\n const requestData = {\n ...userInfo,\n name,\n gender: gender?.value,\n emailId: email,\n photo: profilePic,\n };\n\n if (!new RegExp(/^([a-zA-Z ])*$/).test(name) || name === \"\" || name.length > 50 || name.length < 1) {\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_NAME_INVALID\" });\n }\n\n if (userType === \"employee\" && !new RegExp(/^[6-9]{1}[0-9]{9}$/).test(mobileNumber)) {\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_MOBILE_NUMBER_INVALID\" });\n }\n\n if (email.length && !(email.includes(\"@\") && email.includes(\".\"))) {\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_EMAIL_INVALID\" });\n }\n\n if (currentPassword.length || newPassword.length || confirmPassword.length) {\n if (newPassword !== confirmPassword) {\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_PASSWORD_MISMATCH\" });\n }\n\n if (!(currentPassword.length && newPassword.length && confirmPassword.length)) {\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_PASSWORD_INVALID\" });\n }\n\n if (!new RegExp(/^([a-zA-Z0-9@#$%]{8,15})$/i).test(newPassword) && !new RegExp(/^([a-zA-Z0-9@#$%]{8,15})$/i).test(confirmPassword)) {\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_PASSWORD_INVALID\" });\n }\n }\n\n const { responseInfo, user } = await Digit.UserService.updateUser(requestData, stateCode);\n\n if (responseInfo && responseInfo.status === \"200\") {\n const user = Digit.UserService.getUser();\n\n if (user) {\n Digit.UserService.setUser({\n ...user,\n info: {\n ...user.info,\n name,\n mobileNumber,\n emailId: email,\n permanentCity: city,\n },\n });\n }\n }\n\n if (currentPassword.length && newPassword.length && confirmPassword.length) {\n const requestData = {\n existingPassword: currentPassword,\n newPassword: newPassword,\n tenantId: tenant,\n type: \"EMPLOYEE\",\n username: userInfo?.userName,\n confirmPassword: confirmPassword,\n };\n\n if (newPassword === confirmPassword) {\n try {\n const res = await Digit.UserService.changePassword(requestData, tenant);\n\n const { responseInfo: changePasswordResponseInfo } = res;\n if (changePasswordResponseInfo?.status && changePasswordResponseInfo.status === \"200\") {\n showToast(\"success\", t(\"CORE_COMMON_PROFILE_UPDATE_SUCCESS_WITH_PASSWORD\"), 5000);\n } else {\n throw \"\";\n }\n } catch (error) {\n throw JSON.stringify({\n type: \"error\",\n message: error.Errors?.at(0)?.description ? error.Errors.at(0).description : \"CORE_COMMON_PROFILE_UPDATE_ERROR_WITH_PASSWORD\",\n });\n }\n } else {\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_ERROR_PASSWORD_NOT_MATCH\" });\n }\n } else if (responseInfo?.status && responseInfo.status === \"200\") {\n showToast(\"success\", t(\"CORE_COMMON_PROFILE_UPDATE_SUCCESS\"), 5000);\n }\n } catch (error) {\n const errorObj = JSON.parse(error);\n showToast(errorObj.type, t(errorObj.message), 5000);\n }\n\n setLoading(false);\n };\n\n let menu = [];\n const { data: Menu } = Digit.Hooks.useGenderMDMS(stateId, \"common-masters\", \"GenderType\");\n Menu &&\n Menu.map((genderDetails) => {\n menu.push({ i18nKey: `PT_COMMON_GENDER_${genderDetails.code}`, code: `${genderDetails.code}`, value: `${genderDetails.code}` });\n });\n\n const setFileStoreId = async (fileStoreId) => {\n setProfilePic(fileStoreId);\n\n const thumbnails = fileStoreId ? await getThumbnails([fileStoreId], stateId) : null;\n\n setProfileImg(thumbnails?.thumbs[0]);\n\n closeFileUploadDrawer();\n };\n\n const getThumbnails = async (ids, tenantId) => {\n const res = await Digit.UploadServices.Filefetch(ids, tenantId);\n if (res.data.fileStoreIds && res.data.fileStoreIds.length !== 0) {\n return {\n thumbs: res.data.fileStoreIds.map((o) => o.url.split(\",\")[3]),\n images: res.data.fileStoreIds.map((o) => Digit.Utils.getFileUrl(o.url)),\n };\n } else {\n return null;\n }\n };\n\n if (loading) return <Loader></Loader>;\n\n return (\n <div className=\"user-profile\">\n <section style={{ margin: userType === \"citizen\" ? \"8px\" : \"24px\" }}>\n {userType === \"citizen\" ? (\n <BackButton></BackButton>\n ) : (\n <BreadCrumb\n crumbs={[\n {\n path: `/${window?.contextPath}/employee`,\n content: t(\"ES_COMMON_HOME\"),\n show: true,\n },\n {\n path: `/${window?.contextPath}/employee/user/profile`,\n content: t(\"ES_COMMON_PAGE_1\"),\n show: url.includes(\"/user/profile\"),\n },\n ]}\n ></BreadCrumb>\n )}\n </section>\n <div\n style={{\n display: \"flex\",\n flex: 1,\n flexDirection: windowWidth < 768 || userType === \"citizen\" ? \"column\" : \"row\",\n margin: userType === \"citizen\" ? \"8px\" : \"16px\",\n gap: userType === \"citizen\" ? \"\" : \"0 24px\",\n boxShadow: userType === \"citizen\" ? \"1px 1px 4px 0px rgba(0,0,0,0.2)\" : \"\",\n background: userType === \"citizen\" ? \"white\" : \"\",\n borderRadius: userType === \"citizen\" ? \"4px\" : \"\",\n maxWidth: userType === \"citizen\" ? \"960px\" : \"\",\n }}\n >\n <section\n style={{\n position: \"relative\",\n display: \"flex\",\n flex: userType === \"citizen\" ? 1 : 2.5,\n justifyContent: \"center\",\n alignItems: \"center\",\n maxWidth: \"100%\",\n height: \"376px\",\n borderRadius: \"4px\",\n boxShadow: userType === \"citizen\" ? \"\" : \"1px 1px 4px 0px rgba(0,0,0,0.2)\",\n border: `${userType === \"citizen\" ? \"8px\" : \"24px\"} solid #fff`,\n background: \"#EEEEEE\",\n padding: userType === \"citizen\" ? \"8px\" : \"16px\",\n }}\n >\n <div\n style={{\n position: \"relative\",\n height: userType === \"citizen\" ? \"114px\" : \"150px\",\n width: userType === \"citizen\" ? \"114px\" : \"150px\",\n margin: \"16px\",\n }}\n >\n <img\n style={{\n margin: \"auto\",\n borderRadius: \"300px\",\n justifyContent: \"center\",\n height: \"100%\",\n width: \"100%\",\n }}\n src={!profileImg || profileImg === \"\" ? defaultImage : profileImg}\n />\n <button style={{ position: \"absolute\", left: \"50%\", bottom: \"-24px\", transform: \"translateX(-50%)\" }} onClick={onClickAddPic}>\n <CameraIcon />\n </button>\n </div>\n </section>\n <section\n style={{\n display: \"flex\",\n flexDirection: \"column\",\n flex: userType === \"citizen\" ? 1 : 7.5,\n width: \"100%\",\n borderRadius: \"4px\",\n height: \"fit-content\",\n boxShadow: userType === \"citizen\" ? \"\" : \"1px 1px 4px 0px rgba(0,0,0,0.2)\",\n background: \"white\",\n padding: userType === \"citizen\" ? \"8px\" : \"24px\",\n paddingBottom : \"20px\",\n }}\n >\n {userType === \"citizen\" ? (\n <React.Fragment>\n <LabelFieldPair>\n <CardLabel style={editScreen ? { color: \"#B1B4B6\" } : {}}>{`${t(\"CORE_COMMON_PROFILE_NAME\")}`}*</CardLabel>\n <div style={{ width: \"100%\", maxWidth:\"960px\" }}>\n <TextInput\n t={t}\n style={{ width: \"100%\" }}\n type={\"text\"}\n isMandatory={false}\n name=\"name\"\n value={name}\n onChange={(e)=>setUserName(e.target.value)}\n {...(validation = {\n isRequired: true,\n pattern: \"^[a-zA-Z-.`' ]*$\",\n type: \"tel\",\n title: t(\"CORE_COMMON_PROFILE_NAME_ERROR_MESSAGE\"),\n })}\n disable={editScreen}\n />\n {errors?.userName && <CardLabelError> {errors?.userName?.message} </CardLabelError>}\n </div>\n </LabelFieldPair>\n\n <LabelFieldPair>\n <CardLabel style={editScreen ? { color: \"#B1B4B6\" } : {}}>{`${t(\"CORE_COMMON_PROFILE_GENDER\")}`}</CardLabel>\n <Dropdown\n style={{ width: \"100%\" }}\n className=\"form-field\"\n selected={gender?.length === 1 ? gender[0] : gender}\n disable={gender?.length === 1 || editScreen}\n option={menu}\n select={setGenderName}\n value={gender}\n optionKey=\"code\"\n t={t}\n name=\"gender\"\n />\n </LabelFieldPair>\n\n <LabelFieldPair>\n <CardLabel style={editScreen ? { color: \"#B1B4B6\" } : {}}>{`${t(\"CORE_COMMON_PROFILE_EMAIL\")}`}</CardLabel>\n <div style={{ width: \"100%\" }}>\n <TextInput\n t={t}\n style={{ width: \"100%\" }}\n type={\"email\"}\n isMandatory={false}\n optionKey=\"i18nKey\"\n name=\"email\"\n value={email}\n onChange={(e)=>setUserEmailAddress(e.target.value)}\n disable={editScreen}\n />\n {errors?.emailAddress && <CardLabelError> {errors?.emailAddress?.message} </CardLabelError>}\n </div>\n </LabelFieldPair>\n \n <button\n onClick={updateProfile}\n style={{\n marginTop: \"24px\",\n backgroundColor: \"#F47738\",\n width: \"100%\",\n height: \"40px\",\n color: \"white\",\n \n maxWidth : isMobile? \"100%\":\"240px\",\n borderBottom: \"1px solid black\",\n }}\n >\n {t(\"CORE_COMMON_SAVE\")}\n </button>\n </React.Fragment>\n ) : (\n <React.Fragment>\n <LabelFieldPair style={{ display: \"flex\" }}>\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>\n {`${t(\"CORE_COMMON_PROFILE_NAME\")}`}*\n </CardLabel>\n <div style={{width: \"100%\"}}>\n <TextInput\n t={t}\n type={\"text\"}\n isMandatory={false}\n name=\"name\"\n value={name}\n onChange={(e)=>setUserName(e.target.value)}\n placeholder=\"Enter Your Name\"\n {...(validation = {\n isRequired: true,\n pattern: \"^[a-zA-Z-.`' ]*$\",\n type: \"text\",\n title: t(\"CORE_COMMON_PROFILE_NAME_ERROR_MESSAGE\"),\n })}\n disable={editScreen}\n />\n {errors?.userName && <CardLabelError style={{margin: 0, padding: 0}}> {errors?.userName?.message} </CardLabelError>}\n </div>\n </LabelFieldPair>\n\n <LabelFieldPair style={{ display: \"flex\" }}>\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\n \"CORE_COMMON_PROFILE_GENDER\"\n )}`}</CardLabel>\n <Dropdown\n style={{ width: \"100%\" }}\n selected={gender?.length === 1 ? gender[0] : gender}\n disable={gender?.length === 1 || editScreen}\n option={menu}\n select={setGenderName}\n value={gender}\n optionKey=\"code\"\n t={t}\n name=\"gender\"\n />\n </LabelFieldPair>\n\n <LabelFieldPair style={{ display: \"flex\" }}>\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\n \"CORE_COMMON_PROFILE_CITY\"\n )}`}</CardLabel>\n <div style={{width: \"100%\"}}>\n <TextInput\n t={t}\n type={\"text\"}\n isMandatory={false}\n name=\"city\"\n value={t(`TENANT_TENANTS_${city.toUpperCase()}`)}\n onChange={(e) => setCity(e.target.value)}\n placeholder=\"Enter Your City Name\"\n {...(validation = {\n isRequired: true,\n // pattern: \"^[a-zA-Z-.`' ]*$\",\n type: \"text\",\n title: t(\"CORE_COMMON_PROFILE_CITY_ERROR_MESSAGE\"),\n })}\n disable={true}\n />\n <CardLabelError></CardLabelError>\n </div>\n </LabelFieldPair>\n \n <LabelFieldPair style={{ display: \"flex\" }}>\n <CardLabel className=\"profile-label-margin\" style={{ width: \"300px\" }}>{`${t(\"CORE_COMMON_PROFILE_MOBILE_NUMBER\")}*`}</CardLabel>\n <div style={{ width: \"100%\" }}>\n <MobileNumber\n value={mobileNumber}\n style={{ width: \"100%\" }}\n name=\"mobileNumber\"\n placeholder=\"Enter a valid Mobile No.\"\n onChange={(value) => setUserMobileNumber(value)}\n disable={true}\n {...{ required: true, pattern: \"[6-9]{1}[0-9]{9}\", type: \"tel\", title: t(\"CORE_COMMON_PROFILE_MOBILE_NUMBER_INVALID\") }}\n />\n {errors?.mobileNumber && <CardLabelError style={{margin: 0, padding: 0}}> {errors?.mobileNumber?.message} </CardLabelError>}\n </div>\n </LabelFieldPair>\n \n <LabelFieldPair style={{ display: \"flex\" }}>\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\n \"CORE_COMMON_PROFILE_EMAIL\"\n )}`}</CardLabel>\n <div style={{width: \"100%\"}}>\n <TextInput\n t={t}\n type={\"email\"}\n isMandatory={false}\n placeholder={t(\"EMAIL_VALIDATION\")}\n optionKey=\"i18nKey\"\n name=\"email\"\n value={email}\n onChange={(e)=>setUserEmailAddress(e.target.value)}\n disable={editScreen}\n />\n {errors?.emailAddress && <CardLabelError> {errors?.emailAddress?.message} </CardLabelError>}\n </div>\n </LabelFieldPair>\n\n <LabelFieldPair>\n <div>\n <a style={{ color: \"orange\", cursor: \"default\", marginBottom: \"5\", cursor: \"pointer\" }} onClick={TogleforPassword}>\n {t(\"CORE_COMMON_CHANGE_PASSWORD\")}\n </a>\n {changepassword ? (\n <div style={{ marginTop: \"10px\" }}>\n <LabelFieldPair style={{ display: \"flex\" }}>\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\n \"CORE_COMMON_PROFILE_CURRENT_PASSWORD\"\n )}`}</CardLabel>\n <div style={{width: \"100%\"}}>\n <TextInput\n t={t}\n type={\"password\"}\n isMandatory={false}\n name=\"name\"\n pattern=\"^([a-zA-Z0-9@#$%])+$\"\n onChange={(e) => setUserCurrentPassword(e.target.value)}\n disable={editScreen}\n />\n {errors?.currentPassword && <CardLabelError>{errors?.currentPassword?.message}</CardLabelError>}\n </div>\n </LabelFieldPair>\n\n <LabelFieldPair style={{ display: \"flex\" }}>\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\n \"CORE_COMMON_PROFILE_NEW_PASSWORD\"\n )}`}</CardLabel>\n <div style={{width: \"100%\"}}>\n <TextInput\n t={t}\n type={\"password\"}\n isMandatory={false}\n name=\"name\"\n pattern=\"^([a-zA-Z0-9@#$%])+$\"\n onChange={(e) => setUserNewPassword(e.target.value)}\n disable={editScreen}\n />\n {errors?.newPassword && <CardLabelError>{errors?.newPassword?.message}</CardLabelError>}\n </div>\n </LabelFieldPair>\n\n <LabelFieldPair style={{ display: \"flex\" }}>\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\n \"CORE_COMMON_PROFILE_CONFIRM_PASSWORD\"\n )}`}</CardLabel>\n <div style={{width: \"100%\"}}>\n <TextInput\n t={t}\n type={\"password\"}\n isMandatory={false}\n name=\"name\"\n pattern=\"^([a-zA-Z0-9@#$%])+$\"\n onChange={(e) => setUserConfirmPassword(e.target.value)}\n disable={editScreen}\n />\n {errors?.confirmPassword && <CardLabelError>{errors?.confirmPassword?.message}</CardLabelError>}\n </div>\n </LabelFieldPair>\n </div>\n ) : (\n \"\"\n )}\n </div>\n </LabelFieldPair>\n </React.Fragment>\n )}\n </section>\n </div>\n\n {userType === \"employee\" ? (\n <div\n style={{ height: \"88px\", backgroundColor: \"#FFFFFF\", display: \"flex\", justifyContent: \"flex-end\", marginTop: \"64px\", alignItems: \"center\" }}\n >\n <button\n onClick={updateProfile}\n style={{\n marginTop: \"24px\",\n backgroundColor: \"#F47738\",\n width: windowWidth < 768 ? \"100%\" : \"248px\",\n height: \"40px\",\n float: \"right\",\n margin: windowWidth < 768 ? \"0 16px\" : \"\",\n marginRight: windowWidth < 768 ? \"16px\" : \"31px\",\n color: \"white\",\n borderBottom: \"1px solid black\",\n }}\n >\n {t(\"CORE_COMMON_SAVE\")}\n </button>\n </div>\n ) : (\n \"\"\n )}\n {toast && (\n <Toast\n error={toast.key === \"error\"}\n label={t(toast.key === \"success\" ? `CORE_COMMON_PROFILE_UPDATE_SUCCESS` : toast.action)}\n onClose={() => setToast(null)}\n style={{ maxWidth: \"670px\" }}\n />\n )}\n\n {openUploadSlide == true ? (\n <UploadDrawer\n setProfilePic={setFileStoreId}\n closeDrawer={closeFileUploadDrawer}\n userType={userType}\n removeProfilePic={removeProfilePic}\n showToast={showToast}\n />\n ) : (\n \"\"\n )}\n </div>\n );\n};\n\nexport default UserProfile;\n","import {\n BackButton, CloseSvg, CustomButton, DownloadImgIcon, Header, Loader, PDFSvg\n} from \"@egovernments/digit-ui-react-components\";\nimport React, { Fragment, useState } from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nconst HowItWorks = ({ module }) => {\n const user = Digit.UserService.getUser();\n const tenantId = user?.info?.tenantId || Digit.ULBService.getCurrentTenantId();\n const { t } = useTranslation();\n const storeData = Digit.SessionStorage.get(\"initData\");\n const stateInfo = storeData.stateInfo;\n const selectedLanguage = Digit.StoreData.getCurrentLanguage();\n const [selected, setselected] = useState(selectedLanguage);\n const handleChangeLanguage = (language) => {\n setselected(language.value);\n Digit.LocalizationService.changeLanguage(language.value, stateInfo.code);\n };\n const [videoPlay, setVideoPlay] = useState(false);\n const [vidSrc, setVidSrc] = useState(\"\");\n\n const ViDSvg = () => (\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M12 24C5.38053 24 0 18.6143 0 12C0 5.38054 5.38053 1.90735e-06 12 1.90735e-06C18.6143 1.90735e-06 24 5.38054 24 12C24 18.6143 18.6143 24 12 24ZM16.3488 10.7852L11.3855 7.25251C11.1263 7.0701 10.8238 6.97889 10.5214 6.97889C10.291 6.97889 10.0557 7.03172 9.83976 7.14202C9.34054 7.40118 9.02857 7.91006 9.02857 8.46694L9.02877 15.5323C9.02877 16.0892 9.34076 16.5979 9.83996 16.8572C10.3344 17.1116 10.9296 17.0732 11.3857 16.7467L16.349 13.214C16.7426 12.9356 16.9778 12.4795 16.9778 11.9996C16.9776 11.5197 16.7426 11.0636 16.3489 10.7852L16.3488 10.7852Z\"\n fill=\"white\"\n />\n </svg>\n );\n const onClickVideo = (vidObj) => {\n if (selected === \"hi_IN\") {\n setVidSrc(vidObj[\"hi_IN\"]);\n } else {\n setVidSrc(vidObj[\"en_IN\"]);\n }\n setVideoPlay(true);\n };\n const onClose = () => {\n setVideoPlay(false);\n };\n\n const { isLoading, data } = Digit.Hooks.useGetHowItWorksJSON(Digit.ULBService.getStateId());\n\n const mdmsConfigResult = data?.MdmsRes[\"common-masters\"]?.howItWorks[0]?.[`${module}`];\n const languages = [\n {\n label: \"ENGLISH\",\n value: \"en_IN\",\n },\n {\n label: \"हिंदी\",\n value: \"hi_IN\",\n },\n ];\n\n if (isLoading) {\n return <Loader />;\n }\n return (\n <Fragment>\n <div className=\"how-it-works-page\">\n <BackButton></BackButton>\n <div className=\"how-it-works-page-header\">\n <Header>{t(\"HOW_IT_WORKS\")}</Header>\n </div>\n <div className=\"language-selector\" style={{ margin: \"10px\" }}>\n {languages.map((language, index) => (\n <div className=\"language-button-container\" key={index}>\n <CustomButton\n selected={language.value === selected}\n text={language.label}\n onClick={() => handleChangeLanguage(language)}\n ></CustomButton>\n </div>\n ))}\n </div>\n {mdmsConfigResult.videosJson.map((videos, index) => (\n <div>\n <div className=\"WhatsNewCard\" style={{ float: \"left\", position: \"relative\", width: \"100%\", marginBottom: 10 }}>\n <div className=\"video-icon\" onClick={() => onClickVideo(videos)}>\n <div className=\"vid-svg\">\n <ViDSvg></ViDSvg>\n </div>\n </div>\n <div className=\"how-it-works-header-description\">\n <h2>{t(videos.headerLabel)}</h2>\n <p>{t(videos.description)}</p>\n </div>\n </div>\n </div>\n ))}\n <div className=\"WhatsNewCard\" style={{ position: \"relative\", width: \"100%\", marginBottom: 10, display: \"inline-block\" }}>\n <div className=\"how-it-works-pdf-section\">\n <div className=\"pdf-icon-header-desc\">\n <div className=\"pdf-icon\">\n <PDFSvg></PDFSvg>\n </div>\n <div className=\"pdf-header-desc\">\n <h2>{t(mdmsConfigResult.pdfHeader)}</h2>\n <p>{t(mdmsConfigResult.pdfDesc)}</p>\n </div>\n </div>\n <div className=\"download-icon\">\n <DownloadImgIcon />\n </div>\n </div>\n </div>\n {videoPlay && (\n <div className=\"how-it-works-video-play\">\n <div className=\"close-button\">\n <CloseSvg onClick={onClose}></CloseSvg>\n </div>\n <video width={500} height={500} controls autoPlay>\n <source src={vidSrc} type=\"video/mp4\"></source>\n </video>\n </div>\n )}\n </div>\n </Fragment>\n );\n};\n\nexport default HowItWorks;\n","export const loginSteps = [\n {\n texts: {\n header: \"CS_LOGIN_PROVIDE_MOBILE_NUMBER\",\n cardText: \"CS_LOGIN_TEXT\",\n nextText: \"CS_COMMONS_NEXT\",\n submitBarLabel: \"CS_COMMONS_NEXT\",\n },\n inputs: [\n {\n label: \"CORE_COMMON_MOBILE_NUMBER\",\n type: \"text\",\n name: \"mobileNumber\",\n error: \"ERR_HRMS_INVALID_MOB_NO\",\n validation: {\n required: true,\n minLength: 10,\n maxLength: 10,\n },\n },\n ],\n },\n {\n texts: {\n header: \"CS_LOGIN_OTP\",\n cardText: \"CS_LOGIN_OTP_TEXT\",\n nextText: \"CS_COMMONS_NEXT\",\n submitBarLabel: \"CS_COMMONS_NEXT\",\n },\n },\n {\n texts: {\n header: \"CS_LOGIN_PROVIDE_NAME\",\n cardText: \"CS_LOGIN_NAME_TEXT\",\n nextText: \"CS_COMMONS_NEXT\",\n submitBarLabel: \"CS_COMMONS_NEXT\",\n },\n inputs: [\n {\n label: \"CORE_COMMON_NAME\",\n type: \"text\",\n name: \"name\",\n error: \"CORE_COMMON_NAME_VALIDMSG\",\n validation: {\n required: true,\n minLength: 1,\n pattern: /^[^{0-9}^\\$\\\"<>?\\\\\\\\~!@#$%^()+={}\\[\\]*,/_:;“”‘’]{1,50}$/i,\n },\n },\n ],\n },\n];\n","import { FormStep } from \"@egovernments/digit-ui-react-components\";\nimport React from \"react\";\n\nconst SelectMobileNumber = ({ t, onSelect, showRegisterLink, mobileNumber, onMobileChange, config, canSubmit }) => {\n return (\n <FormStep\n isDisabled={!(mobileNumber.length === 10 && canSubmit)}\n onSelect={onSelect}\n config={config}\n t={t}\n componentInFront=\"+91\"\n onChange={onMobileChange}\n value={mobileNumber}\n ></FormStep>\n );\n};\n\nexport default SelectMobileNumber;\n","import { FormStep } from \"@egovernments/digit-ui-react-components\";\nimport React from \"react\";\n\nconst SelectName = ({ config, onSelect, t, isDisabled }) => {\n return <FormStep config={config} onSelect={onSelect} t={t} isDisabled={isDisabled}></FormStep>;\n};\n\nexport default SelectName;\n","import React, { useEffect, useRef } from \"react\";\n\nfunction useInterval(callback, delay) {\n const savedCallback = useRef();\n useEffect(() => {\n savedCallback.current = callback;\n }, [callback]);\n\n useEffect(() => {\n function tick() {\n savedCallback.current();\n }\n if (delay !== null) {\n const timer = setInterval(tick, delay);\n return () => clearInterval(timer);\n }\n }, [delay]);\n}\n\nexport default useInterval;\n","import { CardLabelError, CardText, FormStep, OTPInput } from \"@egovernments/digit-ui-react-components\";\nimport React, { Fragment, useState } from \"react\";\nimport useInterval from \"../../../hooks/useInterval\";\n\nconst SelectOtp = ({ config, otp, onOtpChange, onResend, onSelect, t, error, userType = \"citizen\", canSubmit }) => {\n const [timeLeft, setTimeLeft] = useState(30);\n\n useInterval(\n () => {\n setTimeLeft(timeLeft - 1);\n },\n timeLeft > 0 ? 1000 : null\n );\n\n const handleResendOtp = () => {\n onResend();\n setTimeLeft(2);\n };\n\n if (userType === \"employee\") {\n return (\n <Fragment>\n <OTPInput length={6} onChange={onOtpChange} value={otp} />\n {timeLeft > 0 ? (\n <CardText>{`${t(\"CS_RESEND_ANOTHER_OTP\")} ${timeLeft} ${t(\"CS_RESEND_SECONDS\")}`}</CardText>\n ) : (\n <p className=\"card-text-button\" onClick={handleResendOtp}>\n {t(\"CS_RESEND_OTP\")}\n </p>\n )}\n {!error && <CardLabelError>{t(\"CS_INVALID_OTP\")}</CardLabelError>}\n </Fragment>\n );\n }\n\n return (\n <FormStep onSelect={onSelect} config={config} t={t} isDisabled={!(otp?.length === 6 && canSubmit)}>\n <OTPInput length={6} onChange={onOtpChange} value={otp} />\n {timeLeft > 0 ? (\n <CardText>{`${t(\"CS_RESEND_ANOTHER_OTP\")} ${timeLeft} ${t(\"CS_RESEND_SECONDS\")}`}</CardText>\n ) : (\n <p className=\"card-text-button\" onClick={handleResendOtp}>\n {t(\"CS_RESEND_OTP\")}\n </p>\n )}\n {!error && <CardLabelError>{t(\"CS_INVALID_OTP\")}</CardLabelError>}\n </FormStep>\n );\n};\n\nexport default SelectOtp;\n","import { AppContainer, BackButton, Toast } from \"@egovernments/digit-ui-react-components\";\nimport React, { useEffect, useMemo, useState } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Route, Switch, useHistory, useLocation, useRouteMatch } from \"react-router-dom\";\nimport { loginSteps } from \"./config\";\nimport SelectMobileNumber from \"./SelectMobileNumber\";\nimport SelectName from \"./SelectName\";\nimport SelectOtp from \"./SelectOtp\";\n\nconst TYPE_REGISTER = { type: \"register\" };\nconst TYPE_LOGIN = { type: \"login\" };\nconst DEFAULT_USER = \"digit-user\";\nconst DEFAULT_REDIRECT_URL = `/${window?.contextPath}/citizen`;\n\n/* set citizen details to enable backward compatiable */\nconst setCitizenDetail = (userObject, token, tenantId) => {\n let locale = JSON.parse(sessionStorage.getItem(\"Digit.initData\"))?.value?.selectedLanguage;\n localStorage.setItem(\"Citizen.tenant-id\", tenantId);\n localStorage.setItem(\"tenant-id\", tenantId);\n localStorage.setItem(\"citizen.userRequestObject\", JSON.stringify(userObject));\n localStorage.setItem(\"locale\", locale);\n localStorage.setItem(\"Citizen.locale\", locale);\n localStorage.setItem(\"token\", token);\n localStorage.setItem(\"Citizen.token\", token);\n localStorage.setItem(\"user-info\", JSON.stringify(userObject));\n localStorage.setItem(\"Citizen.user-info\", JSON.stringify(userObject));\n};\n\nconst getFromLocation = (state, searchParams) => {\n return state?.from || searchParams?.from || DEFAULT_REDIRECT_URL;\n};\n\nconst Login = ({ stateCode, isUserRegistered = true }) => {\n const { t } = useTranslation();\n const location = useLocation();\n const { path, url } = useRouteMatch();\n const history = useHistory();\n const [user, setUser] = useState(null);\n const [error, setError] = useState(null);\n const [isOtpValid, setIsOtpValid] = useState(true);\n const [tokens, setTokens] = useState(null);\n const [params, setParmas] = useState(isUserRegistered ? {} : location?.state?.data);\n const [errorTO, setErrorTO] = useState(null);\n const searchParams = Digit.Hooks.useQueryParams();\n const [canSubmitName, setCanSubmitName] = useState(false);\n const [canSubmitOtp, setCanSubmitOtp] = useState(true);\n const [canSubmitNo, setCanSubmitNo] = useState(true);\n\n useEffect(() => {\n let errorTimeout;\n if (error) {\n if (errorTO) {\n clearTimeout(errorTO);\n setErrorTO(null);\n }\n errorTimeout = setTimeout(() => {\n setError(\"\");\n }, 5000);\n setErrorTO(errorTimeout);\n }\n return () => {\n errorTimeout && clearTimeout(errorTimeout);\n };\n }, [error]);\n\n useEffect(() => {\n if (!user) {\n return;\n }\n Digit.SessionStorage.set(\"citizen.userRequestObject\", user);\n Digit.UserService.setUser(user);\n setCitizenDetail(user?.info, user?.access_token, stateCode);\n const redirectPath = location.state?.from || DEFAULT_REDIRECT_URL;\n if (!Digit.ULBService.getCitizenCurrentTenant(true)) {\n history.replace(`/${window?.contextPath}/citizen/select-location`, {\n redirectBackTo: redirectPath,\n });\n } else {\n history.replace(redirectPath);\n }\n }, [user]);\n\n const stepItems = useMemo(() =>\n loginSteps.map(\n (step) => {\n const texts = {};\n for (const key in step.texts) {\n texts[key] = t(step.texts[key]);\n }\n return { ...step, texts };\n },\n [loginSteps]\n )\n );\n\n const getUserType = () => Digit.UserService.getType();\n\n const handleOtpChange = (otp) => {\n setParmas({ ...params, otp });\n };\n\n const handleMobileChange = (event) => {\n const { value } = event.target;\n setParmas({ ...params, mobileNumber: value });\n };\n\n const selectMobileNumber = async (mobileNumber) => {\n setCanSubmitNo(false);\n setParmas({ ...params, ...mobileNumber });\n const data = {\n ...mobileNumber,\n tenantId: stateCode,\n userType: getUserType(),\n };\n if (isUserRegistered) {\n const [res, err] = await sendOtp({ otp: { ...data, ...TYPE_LOGIN } });\n if (!err) {\n setCanSubmitNo(true);\n history.replace(`${path}/otp`, { from: getFromLocation(location.state, searchParams), role: location.state?.role });\n return;\n } else {\n setCanSubmitNo(true);\n if (!(location.state && location.state.role === \"FSM_DSO\")) {\n history.push(`/${window?.contextPath}/citizen/register/name`, { from: getFromLocation(location.state, searchParams), data: data });\n }\n }\n if (location.state?.role) {\n setCanSubmitNo(true);\n setError(location.state?.role === \"FSM_DSO\" ? t(\"ES_ERROR_DSO_LOGIN\") : \"User not registered.\");\n }\n } else {\n const [res, err] = await sendOtp({ otp: { ...data, ...TYPE_REGISTER } });\n if (!err) {\n setCanSubmitNo(true);\n history.replace(`${path}/otp`, { from: getFromLocation(location.state, searchParams) });\n return;\n }\n setCanSubmitNo(true);\n }\n };\n\n const selectName = async (name) => {\n const data = {\n ...params,\n tenantId: stateCode,\n userType: getUserType(),\n ...name,\n };\n setParmas({ ...params, ...name });\n setCanSubmitName(true);\n const [res, err] = await sendOtp({ otp: { ...data, ...TYPE_REGISTER } });\n if (res) {\n setCanSubmitName(false);\n history.replace(`${path}/otp`, { from: getFromLocation(location.state, searchParams) });\n } else {\n setCanSubmitName(false);\n }\n };\n\n const selectOtp = async () => {\n try {\n setIsOtpValid(true);\n setCanSubmitOtp(false);\n const { mobileNumber, otp, name } = params;\n if (isUserRegistered) {\n const requestData = {\n username: mobileNumber,\n password: otp,\n tenantId: stateCode,\n userType: getUserType(),\n };\n const { ResponseInfo, UserRequest: info, ...tokens } = await Digit.UserService.authenticate(requestData);\n\n if (location.state?.role) {\n const roleInfo = info.roles.find((userRole) => userRole.code === location.state.role);\n if (!roleInfo || !roleInfo.code) {\n setError(t(\"ES_ERROR_USER_NOT_PERMITTED\"));\n setTimeout(() => history.replace(DEFAULT_REDIRECT_URL), 5000);\n return;\n }\n }\n if (window?.globalConfigs?.getConfig(\"ENABLE_SINGLEINSTANCE\")) {\n info.tenantId = Digit.ULBService.getStateId();\n }\n\n setUser({ info, ...tokens });\n } else if (!isUserRegistered) {\n const requestData = {\n name,\n username: mobileNumber,\n otpReference: otp,\n tenantId: stateCode,\n };\n\n const { ResponseInfo, UserRequest: info, ...tokens } = await Digit.UserService.registerUser(requestData, stateCode);\n\n if (window?.globalConfigs?.getConfig(\"ENABLE_SINGLEINSTANCE\")) {\n info.tenantId = Digit.ULBService.getStateId();\n }\n\n setUser({ info, ...tokens });\n }\n } catch (err) {\n setCanSubmitOtp(true);\n setIsOtpValid(false);\n }\n };\n\n const resendOtp = async () => {\n const { mobileNumber } = params;\n const data = {\n mobileNumber,\n tenantId: stateCode,\n userType: getUserType(),\n };\n if (!isUserRegistered) {\n const [res, err] = await sendOtp({ otp: { ...data, ...TYPE_REGISTER } });\n } else if (isUserRegistered) {\n const [res, err] = await sendOtp({ otp: { ...data, ...TYPE_LOGIN } });\n }\n };\n\n const sendOtp = async (data) => {\n try {\n const res = await Digit.UserService.sendOtp(data, stateCode);\n return [res, null];\n } catch (err) {\n return [null, err];\n }\n };\n\n return (\n <div className=\"citizen-form-wrapper\">\n <Switch>\n <AppContainer>\n <BackButton />\n <Route path={`${path}`} exact>\n <SelectMobileNumber\n onSelect={selectMobileNumber}\n config={stepItems[0]}\n mobileNumber={params.mobileNumber || \"\"}\n onMobileChange={handleMobileChange}\n canSubmit={canSubmitNo}\n showRegisterLink={isUserRegistered && !location.state?.role}\n t={t}\n />\n </Route>\n <Route path={`${path}/otp`}>\n <SelectOtp\n config={{ ...stepItems[1], texts: { ...stepItems[1].texts, cardText: `${stepItems[1].texts.cardText} ${params.mobileNumber || \"\"}` } }}\n onOtpChange={handleOtpChange}\n onResend={resendOtp}\n onSelect={selectOtp}\n otp={params.otp}\n error={isOtpValid}\n canSubmit={canSubmitOtp}\n t={t}\n />\n </Route>\n <Route path={`${path}/name`}>\n <SelectName config={stepItems[2]} onSelect={selectName} t={t} isDisabled={canSubmitName} />\n </Route>\n {error && <Toast error={true} label={error} onClose={() => setError(null)} />}\n </AppContainer>\n </Switch>\n </div>\n );\n};\n\nexport default Login;\n","import { isValidElement, useRef, useState, useCallback, useEffect, useMemo, createContext, useContext, createElement, cloneElement } from 'react';\n\nvar isHTMLElement = (value) => value instanceof HTMLElement;\n\nconst EVENTS = {\r\n BLUR: 'blur',\r\n CHANGE: 'change',\r\n INPUT: 'input',\r\n};\r\nconst VALIDATION_MODE = {\r\n onBlur: 'onBlur',\r\n onChange: 'onChange',\r\n onSubmit: 'onSubmit',\r\n onTouched: 'onTouched',\r\n all: 'all',\r\n};\r\nconst SELECT = 'select';\r\nconst UNDEFINED = 'undefined';\r\nconst INPUT_VALIDATION_RULES = {\r\n max: 'max',\r\n min: 'min',\r\n maxLength: 'maxLength',\r\n minLength: 'minLength',\r\n pattern: 'pattern',\r\n required: 'required',\r\n validate: 'validate',\r\n};\n\nfunction attachEventListeners({ ref }, shouldAttachChangeEvent, handleChange) {\r\n if (isHTMLElement(ref) && handleChange) {\r\n ref.addEventListener(shouldAttachChangeEvent ? EVENTS.CHANGE : EVENTS.INPUT, handleChange);\r\n ref.addEventListener(EVENTS.BLUR, handleChange);\r\n }\r\n}\n\nvar isNullOrUndefined = (value) => value == null;\n\nconst isObjectType = (value) => typeof value === 'object';\r\nvar isObject = (value) => !isNullOrUndefined(value) &&\r\n !Array.isArray(value) &&\r\n isObjectType(value) &&\r\n !(value instanceof Date);\n\nvar isKey = (value) => /^\\w*$/.test(value);\n\nvar compact = (value) => value.filter(Boolean);\n\nvar stringToPath = (input) => compact(input\r\n .replace(/[\"|']/g, '')\r\n .replace(/\\[/g, '.')\r\n .replace(/\\]/g, '')\r\n .split('.'));\n\nfunction set(object, path, value) {\r\n let index = -1;\r\n const tempPath = isKey(path) ? [path] : stringToPath(path);\r\n const length = tempPath.length;\r\n const lastIndex = length - 1;\r\n while (++index < length) {\r\n const key = tempPath[index];\r\n let newValue = value;\r\n if (index !== lastIndex) {\r\n const objValue = object[key];\r\n newValue =\r\n isObject(objValue) || Array.isArray(objValue)\r\n ? objValue\r\n : !isNaN(+tempPath[index + 1])\r\n ? []\r\n : {};\r\n }\r\n object[key] = newValue;\r\n object = object[key];\r\n }\r\n return object;\r\n}\n\nvar transformToNestObject = (data, value = {}) => {\r\n for (const key in data) {\r\n !isKey(key) ? set(value, key, data[key]) : (value[key] = data[key]);\r\n }\r\n return value;\r\n};\n\nvar isUndefined = (val) => val === undefined;\n\nvar get = (obj = {}, path, defaultValue) => {\r\n const result = compact(path.split(/[,[\\].]+?/)).reduce((result, key) => (isNullOrUndefined(result) ? result : result[key]), obj);\r\n return isUndefined(result) || result === obj\r\n ? isUndefined(obj[path])\r\n ? defaultValue\r\n : obj[path]\r\n : result;\r\n};\n\nvar focusOnErrorField = (fields, fieldErrors) => {\r\n for (const key in fields) {\r\n if (get(fieldErrors, key)) {\r\n const field = fields[key];\r\n if (field) {\r\n if (field.ref.focus && isUndefined(field.ref.focus())) {\r\n break;\r\n }\r\n else if (field.options) {\r\n field.options[0].ref.focus();\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n};\n\nvar removeAllEventListeners = (ref, validateWithStateUpdate) => {\r\n if (isHTMLElement(ref) && ref.removeEventListener) {\r\n ref.removeEventListener(EVENTS.INPUT, validateWithStateUpdate);\r\n ref.removeEventListener(EVENTS.CHANGE, validateWithStateUpdate);\r\n ref.removeEventListener(EVENTS.BLUR, validateWithStateUpdate);\r\n }\r\n};\n\nconst defaultReturn = {\r\n isValid: false,\r\n value: null,\r\n};\r\nvar getRadioValue = (options) => Array.isArray(options)\r\n ? options.reduce((previous, option) => option && option.ref.checked\r\n ? {\r\n isValid: true,\r\n value: option.ref.value,\r\n }\r\n : previous, defaultReturn)\r\n : defaultReturn;\n\nvar getMultipleSelectValue = (options) => [...options]\r\n .filter(({ selected }) => selected)\r\n .map(({ value }) => value);\n\nvar isRadioInput = (element) => element.type === 'radio';\n\nvar isFileInput = (element) => element.type === 'file';\n\nvar isCheckBoxInput = (element) => element.type === 'checkbox';\n\nvar isMultipleSelect = (element) => element.type === `${SELECT}-multiple`;\n\nconst defaultResult = {\r\n value: false,\r\n isValid: false,\r\n};\r\nconst validResult = { value: true, isValid: true };\r\nvar getCheckboxValue = (options) => {\r\n if (Array.isArray(options)) {\r\n if (options.length > 1) {\r\n const values = options\r\n .filter((option) => option && option.ref.checked)\r\n .map(({ ref: { value } }) => value);\r\n return { value: values, isValid: !!values.length };\r\n }\r\n const { checked, value, attributes } = options[0].ref;\r\n return checked\r\n ? attributes && !isUndefined(attributes.value)\r\n ? isUndefined(value) || value === ''\r\n ? validResult\r\n : { value: value, isValid: true }\r\n : validResult\r\n : defaultResult;\r\n }\r\n return defaultResult;\r\n};\n\nfunction getFieldValue(fieldsRef, name, shallowFieldsStateRef, excludeDisabled, shouldKeepRawValue) {\r\n const field = fieldsRef.current[name];\r\n if (field) {\r\n const { ref: { value, disabled }, ref, valueAsNumber, valueAsDate, setValueAs, } = field;\r\n if (disabled && excludeDisabled) {\r\n return;\r\n }\r\n if (isFileInput(ref)) {\r\n return ref.files;\r\n }\r\n if (isRadioInput(ref)) {\r\n return getRadioValue(field.options).value;\r\n }\r\n if (isMultipleSelect(ref)) {\r\n return getMultipleSelectValue(ref.options);\r\n }\r\n if (isCheckBoxInput(ref)) {\r\n return getCheckboxValue(field.options).value;\r\n }\r\n return shouldKeepRawValue\r\n ? value\r\n : valueAsNumber\r\n ? value === ''\r\n ? NaN\r\n : +value\r\n : valueAsDate\r\n ? ref.valueAsDate\r\n : setValueAs\r\n ? setValueAs(value)\r\n : value;\r\n }\r\n if (shallowFieldsStateRef) {\r\n return get(shallowFieldsStateRef.current, name);\r\n }\r\n}\n\nfunction isDetached(element) {\r\n if (!element) {\r\n return true;\r\n }\r\n if (!(element instanceof HTMLElement) ||\r\n element.nodeType === Node.DOCUMENT_NODE) {\r\n return false;\r\n }\r\n return isDetached(element.parentNode);\r\n}\n\nvar isEmptyObject = (value) => isObject(value) && !Object.keys(value).length;\n\nvar isBoolean = (value) => typeof value === 'boolean';\n\nfunction baseGet(object, updatePath) {\r\n const length = updatePath.slice(0, -1).length;\r\n let index = 0;\r\n while (index < length) {\r\n object = isUndefined(object) ? index++ : object[updatePath[index++]];\r\n }\r\n return object;\r\n}\r\nfunction unset(object, path) {\r\n const updatePath = isKey(path) ? [path] : stringToPath(path);\r\n const childObject = updatePath.length == 1 ? object : baseGet(object, updatePath);\r\n const key = updatePath[updatePath.length - 1];\r\n let previousObjRef;\r\n if (childObject) {\r\n delete childObject[key];\r\n }\r\n for (let k = 0; k < updatePath.slice(0, -1).length; k++) {\r\n let index = -1;\r\n let objectRef;\r\n const currentPaths = updatePath.slice(0, -(k + 1));\r\n const currentPathsLength = currentPaths.length - 1;\r\n if (k > 0) {\r\n previousObjRef = object;\r\n }\r\n while (++index < currentPaths.length) {\r\n const item = currentPaths[index];\r\n objectRef = objectRef ? objectRef[item] : object[item];\r\n if (currentPathsLength === index &&\r\n ((isObject(objectRef) && isEmptyObject(objectRef)) ||\r\n (Array.isArray(objectRef) &&\r\n !objectRef.filter((data) => (isObject(data) && !isEmptyObject(data)) || isBoolean(data)).length))) {\r\n previousObjRef ? delete previousObjRef[item] : delete object[item];\r\n }\r\n previousObjRef = objectRef;\r\n }\r\n }\r\n return object;\r\n}\n\nconst isSameRef = (fieldValue, ref) => fieldValue && fieldValue.ref === ref;\r\nfunction findRemovedFieldAndRemoveListener(fieldsRef, handleChange, field, shallowFieldsStateRef, shouldUnregister, forceDelete) {\r\n const { ref, ref: { name }, } = field;\r\n const fieldRef = fieldsRef.current[name];\r\n if (!shouldUnregister) {\r\n const value = getFieldValue(fieldsRef, name, shallowFieldsStateRef);\r\n !isUndefined(value) && set(shallowFieldsStateRef.current, name, value);\r\n }\r\n if (!ref.type || !fieldRef) {\r\n delete fieldsRef.current[name];\r\n return;\r\n }\r\n if (isRadioInput(ref) || isCheckBoxInput(ref)) {\r\n if (Array.isArray(fieldRef.options) && fieldRef.options.length) {\r\n compact(fieldRef.options).forEach((option = {}, index) => {\r\n if ((isDetached(option.ref) && isSameRef(option, option.ref)) ||\r\n forceDelete) {\r\n removeAllEventListeners(option.ref, handleChange);\r\n unset(fieldRef.options, `[${index}]`);\r\n }\r\n });\r\n if (fieldRef.options && !compact(fieldRef.options).length) {\r\n delete fieldsRef.current[name];\r\n }\r\n }\r\n else {\r\n delete fieldsRef.current[name];\r\n }\r\n }\r\n else if ((isDetached(ref) && isSameRef(fieldRef, ref)) || forceDelete) {\r\n removeAllEventListeners(ref, handleChange);\r\n delete fieldsRef.current[name];\r\n }\r\n}\n\nvar isPrimitive = (value) => isNullOrUndefined(value) || !isObjectType(value);\n\nfunction deepMerge(target, source) {\r\n if (isPrimitive(target) || isPrimitive(source)) {\r\n return source;\r\n }\r\n for (const key in source) {\r\n const targetValue = target[key];\r\n const sourceValue = source[key];\r\n try {\r\n target[key] =\r\n (isObject(targetValue) && isObject(sourceValue)) ||\r\n (Array.isArray(targetValue) && Array.isArray(sourceValue))\r\n ? deepMerge(targetValue, sourceValue)\r\n : sourceValue;\r\n }\r\n catch (_a) { }\r\n }\r\n return target;\r\n}\n\nfunction deepEqual(object1, object2, isErrorObject) {\r\n if (isPrimitive(object1) ||\r\n isPrimitive(object2) ||\r\n object1 instanceof Date ||\r\n object2 instanceof Date) {\r\n return object1 === object2;\r\n }\r\n if (!isValidElement(object1)) {\r\n const keys1 = Object.keys(object1);\r\n const keys2 = Object.keys(object2);\r\n if (keys1.length !== keys2.length) {\r\n return false;\r\n }\r\n for (const key of keys1) {\r\n const val1 = object1[key];\r\n if (!(isErrorObject && key === 'ref')) {\r\n const val2 = object2[key];\r\n if ((isObject(val1) || Array.isArray(val1)) &&\r\n (isObject(val2) || Array.isArray(val2))\r\n ? !deepEqual(val1, val2, isErrorObject)\r\n : val1 !== val2) {\r\n return false;\r\n }\r\n }\r\n }\r\n }\r\n return true;\r\n}\n\nfunction setDirtyFields(values, defaultValues, dirtyFields, parentNode, parentName) {\r\n let index = -1;\r\n while (++index < values.length) {\r\n for (const key in values[index]) {\r\n if (Array.isArray(values[index][key])) {\r\n !dirtyFields[index] && (dirtyFields[index] = {});\r\n dirtyFields[index][key] = [];\r\n setDirtyFields(values[index][key], get(defaultValues[index] || {}, key, []), dirtyFields[index][key], dirtyFields[index], key);\r\n }\r\n else {\r\n deepEqual(get(defaultValues[index] || {}, key), values[index][key])\r\n ? set(dirtyFields[index] || {}, key)\r\n : (dirtyFields[index] = Object.assign(Object.assign({}, dirtyFields[index]), { [key]: true }));\r\n }\r\n }\r\n parentNode &&\r\n !dirtyFields.length &&\r\n delete parentNode[parentName];\r\n }\r\n return dirtyFields;\r\n}\r\nvar setFieldArrayDirtyFields = (values, defaultValues, dirtyFields) => deepMerge(setDirtyFields(values, defaultValues, dirtyFields.slice(0, values.length)), setDirtyFields(defaultValues, values, dirtyFields.slice(0, values.length)));\n\nvar isString = (value) => typeof value === 'string';\n\nvar getFieldsValues = (fieldsRef, shallowFieldsState, shouldUnregister, excludeDisabled, search) => {\r\n const output = {};\r\n for (const name in fieldsRef.current) {\r\n if (isUndefined(search) ||\r\n (isString(search)\r\n ? name.startsWith(search)\r\n : Array.isArray(search) && search.find((data) => name.startsWith(data)))) {\r\n output[name] = getFieldValue(fieldsRef, name, undefined, excludeDisabled);\r\n }\r\n }\r\n return shouldUnregister\r\n ? transformToNestObject(output)\r\n : deepMerge(shallowFieldsState, transformToNestObject(output));\r\n};\n\nvar isErrorStateChanged = ({ errors, name, error, validFields, fieldsWithValidation, }) => {\r\n const isValid = isUndefined(error);\r\n const previousError = get(errors, name);\r\n return ((isValid && !!previousError) ||\r\n (!isValid && !deepEqual(previousError, error, true)) ||\r\n (isValid && get(fieldsWithValidation, name) && !get(validFields, name)));\r\n};\n\nvar isRegex = (value) => value instanceof RegExp;\n\nvar getValueAndMessage = (validationData) => isObject(validationData) && !isRegex(validationData)\r\n ? validationData\r\n : {\r\n value: validationData,\r\n message: '',\r\n };\n\nvar isFunction = (value) => typeof value === 'function';\n\nvar isMessage = (value) => isString(value) || isValidElement(value);\n\nfunction getValidateError(result, ref, type = 'validate') {\r\n if (isMessage(result) || (isBoolean(result) && !result)) {\r\n return {\r\n type,\r\n message: isMessage(result) ? result : '',\r\n ref,\r\n };\r\n }\r\n}\n\nvar appendErrors = (name, validateAllFieldCriteria, errors, type, message) => validateAllFieldCriteria\r\n ? Object.assign(Object.assign({}, errors[name]), { types: Object.assign(Object.assign({}, (errors[name] && errors[name].types ? errors[name].types : {})), { [type]: message || true }) }) : {};\n\nvar validateField = async (fieldsRef, validateAllFieldCriteria, { ref, ref: { value }, options, required, maxLength, minLength, min, max, pattern, validate, }, shallowFieldsStateRef) => {\r\n const name = ref.name;\r\n const error = {};\r\n const isRadio = isRadioInput(ref);\r\n const isCheckBox = isCheckBoxInput(ref);\r\n const isRadioOrCheckbox = isRadio || isCheckBox;\r\n const isEmpty = value === '';\r\n const appendErrorsCurry = appendErrors.bind(null, name, validateAllFieldCriteria, error);\r\n const getMinMaxMessage = (exceedMax, maxLengthMessage, minLengthMessage, maxType = INPUT_VALIDATION_RULES.maxLength, minType = INPUT_VALIDATION_RULES.minLength) => {\r\n const message = exceedMax ? maxLengthMessage : minLengthMessage;\r\n error[name] = Object.assign({ type: exceedMax ? maxType : minType, message,\r\n ref }, (exceedMax\r\n ? appendErrorsCurry(maxType, message)\r\n : appendErrorsCurry(minType, message)));\r\n };\r\n if (required &&\r\n ((!isRadio && !isCheckBox && (isEmpty || isNullOrUndefined(value))) ||\r\n (isBoolean(value) && !value) ||\r\n (isCheckBox && !getCheckboxValue(options).isValid) ||\r\n (isRadio && !getRadioValue(options).isValid))) {\r\n const { value, message } = isMessage(required)\r\n ? { value: !!required, message: required }\r\n : getValueAndMessage(required);\r\n if (value) {\r\n error[name] = Object.assign({ type: INPUT_VALIDATION_RULES.required, message, ref: isRadioOrCheckbox\r\n ? ((fieldsRef.current[name].options || [])[0] || {}).ref\r\n : ref }, appendErrorsCurry(INPUT_VALIDATION_RULES.required, message));\r\n if (!validateAllFieldCriteria) {\r\n return error;\r\n }\r\n }\r\n }\r\n if ((!isNullOrUndefined(min) || !isNullOrUndefined(max)) && value !== '') {\r\n let exceedMax;\r\n let exceedMin;\r\n const maxOutput = getValueAndMessage(max);\r\n const minOutput = getValueAndMessage(min);\r\n if (!isNaN(value)) {\r\n const valueNumber = ref.valueAsNumber || parseFloat(value);\r\n if (!isNullOrUndefined(maxOutput.value)) {\r\n exceedMax = valueNumber > maxOutput.value;\r\n }\r\n if (!isNullOrUndefined(minOutput.value)) {\r\n exceedMin = valueNumber < minOutput.value;\r\n }\r\n }\r\n else {\r\n const valueDate = ref.valueAsDate || new Date(value);\r\n if (isString(maxOutput.value)) {\r\n exceedMax = valueDate > new Date(maxOutput.value);\r\n }\r\n if (isString(minOutput.value)) {\r\n exceedMin = valueDate < new Date(minOutput.value);\r\n }\r\n }\r\n if (exceedMax || exceedMin) {\r\n getMinMaxMessage(!!exceedMax, maxOutput.message, minOutput.message, INPUT_VALIDATION_RULES.max, INPUT_VALIDATION_RULES.min);\r\n if (!validateAllFieldCriteria) {\r\n return error;\r\n }\r\n }\r\n }\r\n if (isString(value) && !isEmpty && (maxLength || minLength)) {\r\n const maxLengthOutput = getValueAndMessage(maxLength);\r\n const minLengthOutput = getValueAndMessage(minLength);\r\n const exceedMax = !isNullOrUndefined(maxLengthOutput.value) &&\r\n value.length > maxLengthOutput.value;\r\n const exceedMin = !isNullOrUndefined(minLengthOutput.value) &&\r\n value.length < minLengthOutput.value;\r\n if (exceedMax || exceedMin) {\r\n getMinMaxMessage(exceedMax, maxLengthOutput.message, minLengthOutput.message);\r\n if (!validateAllFieldCriteria) {\r\n return error;\r\n }\r\n }\r\n }\r\n if (isString(value) && pattern && !isEmpty) {\r\n const { value: patternValue, message } = getValueAndMessage(pattern);\r\n if (isRegex(patternValue) && !patternValue.test(value)) {\r\n error[name] = Object.assign({ type: INPUT_VALIDATION_RULES.pattern, message,\r\n ref }, appendErrorsCurry(INPUT_VALIDATION_RULES.pattern, message));\r\n if (!validateAllFieldCriteria) {\r\n return error;\r\n }\r\n }\r\n }\r\n if (validate) {\r\n const fieldValue = getFieldValue(fieldsRef, name, shallowFieldsStateRef, false, true);\r\n const validateRef = isRadioOrCheckbox && options ? options[0].ref : ref;\r\n if (isFunction(validate)) {\r\n const result = await validate(fieldValue);\r\n const validateError = getValidateError(result, validateRef);\r\n if (validateError) {\r\n error[name] = Object.assign(Object.assign({}, validateError), appendErrorsCurry(INPUT_VALIDATION_RULES.validate, validateError.message));\r\n if (!validateAllFieldCriteria) {\r\n return error;\r\n }\r\n }\r\n }\r\n else if (isObject(validate)) {\r\n let validationResult = {};\r\n for (const [key, validateFunction] of Object.entries(validate)) {\r\n if (!isEmptyObject(validationResult) && !validateAllFieldCriteria) {\r\n break;\r\n }\r\n const validateResult = await validateFunction(fieldValue);\r\n const validateError = getValidateError(validateResult, validateRef, key);\r\n if (validateError) {\r\n validationResult = Object.assign(Object.assign({}, validateError), appendErrorsCurry(key, validateError.message));\r\n if (validateAllFieldCriteria) {\r\n error[name] = validationResult;\r\n }\r\n }\r\n }\r\n if (!isEmptyObject(validationResult)) {\r\n error[name] = Object.assign({ ref: validateRef }, validationResult);\r\n if (!validateAllFieldCriteria) {\r\n return error;\r\n }\r\n }\r\n }\r\n }\r\n return error;\r\n};\n\nconst getPath = (rootPath, values, paths = []) => {\r\n for (const property in values) {\r\n const rootName = (rootPath +\r\n (isObject(values)\r\n ? `.${property}`\r\n : `[${property}]`));\r\n isPrimitive(values[property])\r\n ? paths.push(rootName)\r\n : getPath(rootName, values[property], paths);\r\n }\r\n return paths;\r\n};\n\nvar assignWatchFields = (fieldValues, fieldName, watchFields, inputValue, isSingleField) => {\r\n let value = undefined;\r\n watchFields.add(fieldName);\r\n if (!isEmptyObject(fieldValues)) {\r\n value = get(fieldValues, fieldName);\r\n if (isObject(value) || Array.isArray(value)) {\r\n getPath(fieldName, value).forEach((name) => watchFields.add(name));\r\n }\r\n }\r\n return isUndefined(value)\r\n ? isSingleField\r\n ? inputValue\r\n : get(inputValue, fieldName)\r\n : value;\r\n};\n\nvar skipValidation = ({ isOnBlur, isOnChange, isOnTouch, isTouched, isReValidateOnBlur, isReValidateOnChange, isBlurEvent, isSubmitted, isOnAll, }) => {\r\n if (isOnAll) {\r\n return false;\r\n }\r\n else if (!isSubmitted && isOnTouch) {\r\n return !(isTouched || isBlurEvent);\r\n }\r\n else if (isSubmitted ? isReValidateOnBlur : isOnBlur) {\r\n return !isBlurEvent;\r\n }\r\n else if (isSubmitted ? isReValidateOnChange : isOnChange) {\r\n return isBlurEvent;\r\n }\r\n return true;\r\n};\n\nvar getFieldArrayParentName = (name) => name.substring(0, name.indexOf('['));\n\nconst isMatchFieldArrayName = (name, searchName) => RegExp(`^${searchName}([|.)\\\\d+`.replace(/\\[/g, '\\\\[').replace(/\\]/g, '\\\\]')).test(name);\r\nvar isNameInFieldArray = (names, name) => [...names].some((current) => isMatchFieldArrayName(name, current));\n\nvar isSelectInput = (element) => element.type === `${SELECT}-one`;\n\nfunction onDomRemove(fieldsRef, removeFieldEventListenerAndRef) {\r\n const observer = new MutationObserver(() => {\r\n for (const field of Object.values(fieldsRef.current)) {\r\n if (field && field.options) {\r\n for (const option of field.options) {\r\n if (option && option.ref && isDetached(option.ref)) {\r\n removeFieldEventListenerAndRef(field);\r\n }\r\n }\r\n }\r\n else if (field && isDetached(field.ref)) {\r\n removeFieldEventListenerAndRef(field);\r\n }\r\n }\r\n });\r\n observer.observe(window.document, {\r\n childList: true,\r\n subtree: true,\r\n });\r\n return observer;\r\n}\n\nvar isWeb = typeof window !== UNDEFINED && typeof document !== UNDEFINED;\n\nfunction cloneObject(data) {\r\n var _a;\r\n let copy;\r\n if (isPrimitive(data) ||\r\n (isWeb && (data instanceof File || isHTMLElement(data)))) {\r\n return data;\r\n }\r\n if (!['Set', 'Map', 'Object', 'Date', 'Array'].includes((_a = data.constructor) === null || _a === void 0 ? void 0 : _a.name)) {\r\n return data;\r\n }\r\n if (data instanceof Date) {\r\n copy = new Date(data.getTime());\r\n return copy;\r\n }\r\n if (data instanceof Set) {\r\n copy = new Set();\r\n for (const item of data) {\r\n copy.add(item);\r\n }\r\n return copy;\r\n }\r\n if (data instanceof Map) {\r\n copy = new Map();\r\n for (const key of data.keys()) {\r\n copy.set(key, cloneObject(data.get(key)));\r\n }\r\n return copy;\r\n }\r\n copy = Array.isArray(data) ? [] : {};\r\n for (const key in data) {\r\n copy[key] = cloneObject(data[key]);\r\n }\r\n return copy;\r\n}\n\nvar modeChecker = (mode) => ({\r\n isOnSubmit: !mode || mode === VALIDATION_MODE.onSubmit,\r\n isOnBlur: mode === VALIDATION_MODE.onBlur,\r\n isOnChange: mode === VALIDATION_MODE.onChange,\r\n isOnAll: mode === VALIDATION_MODE.all,\r\n isOnTouch: mode === VALIDATION_MODE.onTouched,\r\n});\n\nvar isRadioOrCheckboxFunction = (ref) => isRadioInput(ref) || isCheckBoxInput(ref);\n\nconst isWindowUndefined = typeof window === UNDEFINED;\r\nconst isProxyEnabled = isWeb ? 'Proxy' in window : typeof Proxy !== UNDEFINED;\r\nfunction useForm({ mode = VALIDATION_MODE.onSubmit, reValidateMode = VALIDATION_MODE.onChange, resolver, context, defaultValues = {}, shouldFocusError = true, shouldUnregister = true, criteriaMode, } = {}) {\r\n const fieldsRef = useRef({});\r\n const fieldArrayDefaultValuesRef = useRef({});\r\n const fieldArrayValuesRef = useRef({});\r\n const watchFieldsRef = useRef(new Set());\r\n const useWatchFieldsRef = useRef({});\r\n const useWatchRenderFunctionsRef = useRef({});\r\n const fieldsWithValidationRef = useRef({});\r\n const validFieldsRef = useRef({});\r\n const defaultValuesRef = useRef(defaultValues);\r\n const isUnMount = useRef(false);\r\n const isWatchAllRef = useRef(false);\r\n const handleChangeRef = useRef();\r\n const shallowFieldsStateRef = useRef({});\r\n const resetFieldArrayFunctionRef = useRef({});\r\n const contextRef = useRef(context);\r\n const resolverRef = useRef(resolver);\r\n const fieldArrayNamesRef = useRef(new Set());\r\n const modeRef = useRef(modeChecker(mode));\r\n const { isOnSubmit, isOnTouch } = modeRef.current;\r\n const isValidateAllFieldCriteria = criteriaMode === VALIDATION_MODE.all;\r\n const [formState, setFormState] = useState({\r\n isDirty: false,\r\n isValidating: false,\r\n dirtyFields: {},\r\n isSubmitted: false,\r\n submitCount: 0,\r\n touched: {},\r\n isSubmitting: false,\r\n isSubmitSuccessful: false,\r\n isValid: !isOnSubmit,\r\n errors: {},\r\n });\r\n const readFormStateRef = useRef({\r\n isDirty: !isProxyEnabled,\r\n dirtyFields: !isProxyEnabled,\r\n touched: !isProxyEnabled || isOnTouch,\r\n isValidating: !isProxyEnabled,\r\n isSubmitting: !isProxyEnabled,\r\n isValid: !isProxyEnabled,\r\n });\r\n const formStateRef = useRef(formState);\r\n const observerRef = useRef();\r\n const { isOnBlur: isReValidateOnBlur, isOnChange: isReValidateOnChange, } = useRef(modeChecker(reValidateMode)).current;\r\n contextRef.current = context;\r\n resolverRef.current = resolver;\r\n formStateRef.current = formState;\r\n shallowFieldsStateRef.current = shouldUnregister\r\n ? {}\r\n : isEmptyObject(shallowFieldsStateRef.current)\r\n ? cloneObject(defaultValues)\r\n : shallowFieldsStateRef.current;\r\n const updateFormState = useCallback((state = {}) => {\r\n if (!isUnMount.current) {\r\n formStateRef.current = Object.assign(Object.assign({}, formStateRef.current), state);\r\n setFormState(formStateRef.current);\r\n }\r\n }, []);\r\n const updateIsValidating = () => readFormStateRef.current.isValidating &&\r\n updateFormState({\r\n isValidating: true,\r\n });\r\n const shouldRenderBaseOnError = useCallback((name, error, shouldRender = false, state = {}, isValid) => {\r\n let shouldReRender = shouldRender ||\r\n isErrorStateChanged({\r\n errors: formStateRef.current.errors,\r\n error,\r\n name,\r\n validFields: validFieldsRef.current,\r\n fieldsWithValidation: fieldsWithValidationRef.current,\r\n });\r\n const previousError = get(formStateRef.current.errors, name);\r\n if (error) {\r\n unset(validFieldsRef.current, name);\r\n shouldReRender =\r\n shouldReRender ||\r\n !previousError ||\r\n !deepEqual(previousError, error, true);\r\n set(formStateRef.current.errors, name, error);\r\n }\r\n else {\r\n if (get(fieldsWithValidationRef.current, name) || resolverRef.current) {\r\n set(validFieldsRef.current, name, true);\r\n shouldReRender = shouldReRender || previousError;\r\n }\r\n unset(formStateRef.current.errors, name);\r\n }\r\n if ((shouldReRender && !isNullOrUndefined(shouldRender)) ||\r\n !isEmptyObject(state) ||\r\n readFormStateRef.current.isValidating) {\r\n updateFormState(Object.assign(Object.assign(Object.assign({}, state), (resolverRef.current ? { isValid: !!isValid } : {})), { isValidating: false }));\r\n }\r\n }, []);\r\n const setFieldValue = useCallback((name, rawValue) => {\r\n const { ref, options } = fieldsRef.current[name];\r\n const value = isWeb && isHTMLElement(ref) && isNullOrUndefined(rawValue)\r\n ? ''\r\n : rawValue;\r\n if (isRadioInput(ref)) {\r\n (options || []).forEach(({ ref: radioRef }) => (radioRef.checked = radioRef.value === value));\r\n }\r\n else if (isFileInput(ref) && !isString(value)) {\r\n ref.files = value;\r\n }\r\n else if (isMultipleSelect(ref)) {\r\n [...ref.options].forEach((selectRef) => (selectRef.selected = value.includes(selectRef.value)));\r\n }\r\n else if (isCheckBoxInput(ref) && options) {\r\n options.length > 1\r\n ? options.forEach(({ ref: checkboxRef }) => (checkboxRef.checked = Array.isArray(value)\r\n ? !!value.find((data) => data === checkboxRef.value)\r\n : value === checkboxRef.value))\r\n : (options[0].ref.checked = !!value);\r\n }\r\n else {\r\n ref.value = value;\r\n }\r\n }, []);\r\n const isFormDirty = useCallback((name, data) => {\r\n if (readFormStateRef.current.isDirty) {\r\n const formValues = getValues();\r\n name && data && set(formValues, name, data);\r\n return !deepEqual(formValues, defaultValuesRef.current);\r\n }\r\n return false;\r\n }, []);\r\n const updateAndGetDirtyState = useCallback((name, shouldRender = true) => {\r\n if (readFormStateRef.current.isDirty ||\r\n readFormStateRef.current.dirtyFields) {\r\n const isFieldDirty = !deepEqual(get(defaultValuesRef.current, name), getFieldValue(fieldsRef, name, shallowFieldsStateRef));\r\n const isDirtyFieldExist = get(formStateRef.current.dirtyFields, name);\r\n const previousIsDirty = formStateRef.current.isDirty;\r\n isFieldDirty\r\n ? set(formStateRef.current.dirtyFields, name, true)\r\n : unset(formStateRef.current.dirtyFields, name);\r\n const state = {\r\n isDirty: isFormDirty(),\r\n dirtyFields: formStateRef.current.dirtyFields,\r\n };\r\n const isChanged = (readFormStateRef.current.isDirty &&\r\n previousIsDirty !== state.isDirty) ||\r\n (readFormStateRef.current.dirtyFields &&\r\n isDirtyFieldExist !== get(formStateRef.current.dirtyFields, name));\r\n isChanged && shouldRender && updateFormState(state);\r\n return isChanged ? state : {};\r\n }\r\n return {};\r\n }, []);\r\n const executeValidation = useCallback(async (name, skipReRender) => {\r\n if (process.env.NODE_ENV !== 'production') {\r\n if (!fieldsRef.current[name]) {\r\n console.warn('📋 Field is missing with `name` attribute: ', name);\r\n return false;\r\n }\r\n }\r\n const error = (await validateField(fieldsRef, isValidateAllFieldCriteria, fieldsRef.current[name], shallowFieldsStateRef))[name];\r\n shouldRenderBaseOnError(name, error, skipReRender);\r\n return isUndefined(error);\r\n }, [shouldRenderBaseOnError, isValidateAllFieldCriteria]);\r\n const executeSchemaOrResolverValidation = useCallback(async (names) => {\r\n const { errors } = await resolverRef.current(getValues(), contextRef.current, isValidateAllFieldCriteria);\r\n const previousFormIsValid = formStateRef.current.isValid;\r\n if (Array.isArray(names)) {\r\n const isInputsValid = names\r\n .map((name) => {\r\n const error = get(errors, name);\r\n error\r\n ? set(formStateRef.current.errors, name, error)\r\n : unset(formStateRef.current.errors, name);\r\n return !error;\r\n })\r\n .every(Boolean);\r\n updateFormState({\r\n isValid: isEmptyObject(errors),\r\n isValidating: false,\r\n });\r\n return isInputsValid;\r\n }\r\n else {\r\n const error = get(errors, names);\r\n shouldRenderBaseOnError(names, error, previousFormIsValid !== isEmptyObject(errors), {}, isEmptyObject(errors));\r\n return !error;\r\n }\r\n }, [shouldRenderBaseOnError, isValidateAllFieldCriteria]);\r\n const trigger = useCallback(async (name) => {\r\n const fields = name || Object.keys(fieldsRef.current);\r\n updateIsValidating();\r\n if (resolverRef.current) {\r\n return executeSchemaOrResolverValidation(fields);\r\n }\r\n if (Array.isArray(fields)) {\r\n !name && (formStateRef.current.errors = {});\r\n const result = await Promise.all(fields.map(async (data) => await executeValidation(data, null)));\r\n updateFormState({\r\n isValidating: false,\r\n });\r\n return result.every(Boolean);\r\n }\r\n return await executeValidation(fields);\r\n }, [executeSchemaOrResolverValidation, executeValidation]);\r\n const setInternalValues = useCallback((name, value, { shouldDirty, shouldValidate }) => {\r\n const data = {};\r\n set(data, name, value);\r\n for (const fieldName of getPath(name, value)) {\r\n if (fieldsRef.current[fieldName]) {\r\n setFieldValue(fieldName, get(data, fieldName));\r\n shouldDirty && updateAndGetDirtyState(fieldName);\r\n shouldValidate && trigger(fieldName);\r\n }\r\n }\r\n }, [trigger, setFieldValue, updateAndGetDirtyState]);\r\n const setInternalValue = useCallback((name, value, config) => {\r\n !shouldUnregister &&\r\n !isPrimitive(value) &&\r\n set(shallowFieldsStateRef.current, name, Array.isArray(value) ? [...value] : Object.assign({}, value));\r\n if (fieldsRef.current[name]) {\r\n setFieldValue(name, value);\r\n config.shouldDirty && updateAndGetDirtyState(name);\r\n config.shouldValidate && trigger(name);\r\n }\r\n else if (!isPrimitive(value)) {\r\n setInternalValues(name, value, config);\r\n if (fieldArrayNamesRef.current.has(name)) {\r\n const parentName = getFieldArrayParentName(name) || name;\r\n set(fieldArrayDefaultValuesRef.current, name, value);\r\n resetFieldArrayFunctionRef.current[parentName]({\r\n [parentName]: get(fieldArrayDefaultValuesRef.current, parentName),\r\n });\r\n if ((readFormStateRef.current.isDirty ||\r\n readFormStateRef.current.dirtyFields) &&\r\n config.shouldDirty) {\r\n set(formStateRef.current.dirtyFields, name, setFieldArrayDirtyFields(value, get(defaultValuesRef.current, name, []), get(formStateRef.current.dirtyFields, name, [])));\r\n updateFormState({\r\n isDirty: !deepEqual(Object.assign(Object.assign({}, getValues()), { [name]: value }), defaultValuesRef.current),\r\n });\r\n }\r\n }\r\n }\r\n !shouldUnregister && set(shallowFieldsStateRef.current, name, value);\r\n }, [updateAndGetDirtyState, setFieldValue, setInternalValues]);\r\n const isFieldWatched = (name) => isWatchAllRef.current ||\r\n watchFieldsRef.current.has(name) ||\r\n watchFieldsRef.current.has((name.match(/\\w+/) || [])[0]);\r\n const renderWatchedInputs = (name) => {\r\n let found = true;\r\n if (!isEmptyObject(useWatchFieldsRef.current)) {\r\n for (const key in useWatchFieldsRef.current) {\r\n if (!name ||\r\n !useWatchFieldsRef.current[key].size ||\r\n useWatchFieldsRef.current[key].has(name) ||\r\n useWatchFieldsRef.current[key].has(getFieldArrayParentName(name))) {\r\n useWatchRenderFunctionsRef.current[key]();\r\n found = false;\r\n }\r\n }\r\n }\r\n return found;\r\n };\r\n function setValue(name, value, config) {\r\n setInternalValue(name, value, config || {});\r\n isFieldWatched(name) && updateFormState();\r\n renderWatchedInputs(name);\r\n }\r\n handleChangeRef.current = handleChangeRef.current\r\n ? handleChangeRef.current\r\n : async ({ type, target }) => {\r\n let name = target.name;\r\n const field = fieldsRef.current[name];\r\n let error;\r\n let isValid;\r\n if (field) {\r\n const isBlurEvent = type === EVENTS.BLUR;\r\n const shouldSkipValidation = skipValidation(Object.assign({ isBlurEvent,\r\n isReValidateOnChange,\r\n isReValidateOnBlur, isTouched: !!get(formStateRef.current.touched, name), isSubmitted: formStateRef.current.isSubmitted }, modeRef.current));\r\n let state = updateAndGetDirtyState(name, false);\r\n let shouldRender = !isEmptyObject(state) ||\r\n (!isBlurEvent && isFieldWatched(name));\r\n if (isBlurEvent &&\r\n !get(formStateRef.current.touched, name) &&\r\n readFormStateRef.current.touched) {\r\n set(formStateRef.current.touched, name, true);\r\n state = Object.assign(Object.assign({}, state), { touched: formStateRef.current.touched });\r\n }\r\n if (!shouldUnregister && isCheckBoxInput(target)) {\r\n set(shallowFieldsStateRef.current, name, getFieldValue(fieldsRef, name));\r\n }\r\n if (shouldSkipValidation) {\r\n !isBlurEvent && renderWatchedInputs(name);\r\n return ((!isEmptyObject(state) ||\r\n (shouldRender && isEmptyObject(state))) &&\r\n updateFormState(state));\r\n }\r\n updateIsValidating();\r\n if (resolverRef.current) {\r\n const { errors } = await resolverRef.current(getValues(), contextRef.current, isValidateAllFieldCriteria);\r\n const previousFormIsValid = formStateRef.current.isValid;\r\n error = get(errors, name);\r\n if (isCheckBoxInput(target) &&\r\n !error &&\r\n resolverRef.current) {\r\n const parentNodeName = getFieldArrayParentName(name);\r\n const currentError = get(errors, parentNodeName, {});\r\n currentError.type &&\r\n currentError.message &&\r\n (error = currentError);\r\n if (parentNodeName &&\r\n (currentError ||\r\n get(formStateRef.current.errors, parentNodeName))) {\r\n name = parentNodeName;\r\n }\r\n }\r\n isValid = isEmptyObject(errors);\r\n previousFormIsValid !== isValid && (shouldRender = true);\r\n }\r\n else {\r\n error = (await validateField(fieldsRef, isValidateAllFieldCriteria, field, shallowFieldsStateRef))[name];\r\n }\r\n !isBlurEvent && renderWatchedInputs(name);\r\n shouldRenderBaseOnError(name, error, shouldRender, state, isValid);\r\n }\r\n };\r\n function setFieldArrayDefaultValues(data) {\r\n if (!shouldUnregister) {\r\n let copy = cloneObject(data);\r\n for (const value of fieldArrayNamesRef.current) {\r\n if (isKey(value) && !copy[value]) {\r\n copy = Object.assign(Object.assign({}, copy), { [value]: [] });\r\n }\r\n }\r\n return copy;\r\n }\r\n return data;\r\n }\r\n function getValues(payload) {\r\n if (isString(payload)) {\r\n return getFieldValue(fieldsRef, payload, shallowFieldsStateRef);\r\n }\r\n if (Array.isArray(payload)) {\r\n const data = {};\r\n for (const name of payload) {\r\n set(data, name, getFieldValue(fieldsRef, name, shallowFieldsStateRef));\r\n }\r\n return data;\r\n }\r\n return setFieldArrayDefaultValues(getFieldsValues(fieldsRef, cloneObject(shallowFieldsStateRef.current), shouldUnregister));\r\n }\r\n const validateResolver = useCallback(async (values = {}) => {\r\n const newDefaultValues = isEmptyObject(fieldsRef.current)\r\n ? defaultValuesRef.current\r\n : {};\r\n const { errors } = (await resolverRef.current(Object.assign(Object.assign(Object.assign({}, newDefaultValues), getValues()), values), contextRef.current, isValidateAllFieldCriteria)) || {};\r\n const isValid = isEmptyObject(errors);\r\n formStateRef.current.isValid !== isValid &&\r\n updateFormState({\r\n isValid,\r\n });\r\n }, [isValidateAllFieldCriteria]);\r\n const removeFieldEventListener = useCallback((field, forceDelete) => {\r\n findRemovedFieldAndRemoveListener(fieldsRef, handleChangeRef.current, field, shallowFieldsStateRef, shouldUnregister, forceDelete);\r\n if (shouldUnregister) {\r\n unset(validFieldsRef.current, field.ref.name);\r\n unset(fieldsWithValidationRef.current, field.ref.name);\r\n }\r\n }, [shouldUnregister]);\r\n const updateWatchedValue = useCallback((name) => {\r\n if (isWatchAllRef.current) {\r\n updateFormState();\r\n }\r\n else {\r\n for (const watchField of watchFieldsRef.current) {\r\n if (watchField.startsWith(name)) {\r\n updateFormState();\r\n break;\r\n }\r\n }\r\n renderWatchedInputs(name);\r\n }\r\n }, []);\r\n const removeFieldEventListenerAndRef = useCallback((field, forceDelete) => {\r\n if (field) {\r\n removeFieldEventListener(field, forceDelete);\r\n if (shouldUnregister && !compact(field.options || []).length) {\r\n unset(formStateRef.current.errors, field.ref.name);\r\n set(formStateRef.current.dirtyFields, field.ref.name, true);\r\n updateFormState({\r\n isDirty: isFormDirty(),\r\n });\r\n readFormStateRef.current.isValid &&\r\n resolverRef.current &&\r\n validateResolver();\r\n updateWatchedValue(field.ref.name);\r\n }\r\n }\r\n }, [validateResolver, removeFieldEventListener]);\r\n function clearErrors(name) {\r\n name &&\r\n (Array.isArray(name) ? name : [name]).forEach((inputName) => fieldsRef.current[inputName] && isKey(inputName)\r\n ? delete formStateRef.current.errors[inputName]\r\n : unset(formStateRef.current.errors, inputName));\r\n updateFormState({\r\n errors: name ? formStateRef.current.errors : {},\r\n });\r\n }\r\n function setError(name, error) {\r\n const ref = (fieldsRef.current[name] || {}).ref;\r\n set(formStateRef.current.errors, name, Object.assign(Object.assign({}, error), { ref }));\r\n updateFormState({\r\n isValid: false,\r\n });\r\n error.shouldFocus && ref && ref.focus && ref.focus();\r\n }\r\n const watchInternal = useCallback((fieldNames, defaultValue, watchId) => {\r\n const watchFields = watchId\r\n ? useWatchFieldsRef.current[watchId]\r\n : watchFieldsRef.current;\r\n let fieldValues = getFieldsValues(fieldsRef, cloneObject(shallowFieldsStateRef.current), shouldUnregister, false, fieldNames);\r\n if (isString(fieldNames)) {\r\n const parentNodeName = getFieldArrayParentName(fieldNames) || fieldNames;\r\n if (fieldArrayNamesRef.current.has(parentNodeName)) {\r\n fieldValues = Object.assign(Object.assign({}, fieldArrayValuesRef.current), fieldValues);\r\n }\r\n return assignWatchFields(fieldValues, fieldNames, watchFields, isUndefined(get(defaultValuesRef.current, fieldNames))\r\n ? defaultValue\r\n : get(defaultValuesRef.current, fieldNames), true);\r\n }\r\n const combinedDefaultValues = isUndefined(defaultValue)\r\n ? defaultValuesRef.current\r\n : defaultValue;\r\n if (Array.isArray(fieldNames)) {\r\n return fieldNames.reduce((previous, name) => (Object.assign(Object.assign({}, previous), { [name]: assignWatchFields(fieldValues, name, watchFields, combinedDefaultValues) })), {});\r\n }\r\n isWatchAllRef.current = isUndefined(watchId);\r\n return transformToNestObject((!isEmptyObject(fieldValues) && fieldValues) ||\r\n combinedDefaultValues);\r\n }, []);\r\n function watch(fieldNames, defaultValue) {\r\n return watchInternal(fieldNames, defaultValue);\r\n }\r\n function unregister(name) {\r\n for (const fieldName of Array.isArray(name) ? name : [name]) {\r\n removeFieldEventListenerAndRef(fieldsRef.current[fieldName], true);\r\n }\r\n }\r\n function registerFieldRef(ref, options = {}) {\r\n if (process.env.NODE_ENV !== 'production') {\r\n if (!ref.name) {\r\n return console.warn('📋 Field is missing `name` attribute', ref, `https://react-hook-form.com/api#useForm`);\r\n }\r\n if (fieldArrayNamesRef.current.has(ref.name.split(/\\[\\d+\\]$/)[0]) &&\r\n !RegExp(`^${ref.name.split(/\\[\\d+\\]$/)[0]}[\\\\d+].\\\\w+`\r\n .replace(/\\[/g, '\\\\[')\r\n .replace(/\\]/g, '\\\\]')).test(ref.name)) {\r\n return console.warn('📋 `name` prop should be in object shape: name=\"test[index].name\"', ref, 'https://react-hook-form.com/api#useFieldArray');\r\n }\r\n }\r\n const { name, type, value } = ref;\r\n const fieldRefAndValidationOptions = Object.assign({ ref }, options);\r\n const fields = fieldsRef.current;\r\n const isRadioOrCheckbox = isRadioOrCheckboxFunction(ref);\r\n const isFieldArray = isNameInFieldArray(fieldArrayNamesRef.current, name);\r\n const compareRef = (currentRef) => isWeb && (!isHTMLElement(ref) || currentRef === ref);\r\n let field = fields[name];\r\n let isEmptyDefaultValue = true;\r\n let defaultValue;\r\n if (field &&\r\n (isRadioOrCheckbox\r\n ? Array.isArray(field.options) &&\r\n compact(field.options).find((option) => {\r\n return value === option.ref.value && compareRef(option.ref);\r\n })\r\n : compareRef(field.ref))) {\r\n fields[name] = Object.assign(Object.assign({}, field), options);\r\n return;\r\n }\r\n if (type) {\r\n field = isRadioOrCheckbox\r\n ? Object.assign({ options: [\r\n ...compact((field && field.options) || []),\r\n {\r\n ref,\r\n },\r\n ], ref: { type, name } }, options) : Object.assign({}, fieldRefAndValidationOptions);\r\n }\r\n else {\r\n field = fieldRefAndValidationOptions;\r\n }\r\n fields[name] = field;\r\n const isEmptyUnmountFields = isUndefined(get(shallowFieldsStateRef.current, name));\r\n if (!isEmptyObject(defaultValuesRef.current) || !isEmptyUnmountFields) {\r\n defaultValue = get(isEmptyUnmountFields\r\n ? defaultValuesRef.current\r\n : shallowFieldsStateRef.current, name);\r\n isEmptyDefaultValue = isUndefined(defaultValue);\r\n if (!isEmptyDefaultValue && !isFieldArray) {\r\n setFieldValue(name, defaultValue);\r\n }\r\n }\r\n if (!isEmptyObject(options)) {\r\n set(fieldsWithValidationRef.current, name, true);\r\n if (!isOnSubmit && readFormStateRef.current.isValid) {\r\n validateField(fieldsRef, isValidateAllFieldCriteria, field, shallowFieldsStateRef).then((error) => {\r\n const previousFormIsValid = formStateRef.current.isValid;\r\n isEmptyObject(error)\r\n ? set(validFieldsRef.current, name, true)\r\n : unset(validFieldsRef.current, name);\r\n previousFormIsValid !== isEmptyObject(error) && updateFormState();\r\n });\r\n }\r\n }\r\n if (shouldUnregister && !(isFieldArray && isEmptyDefaultValue)) {\r\n !isFieldArray && unset(formStateRef.current.dirtyFields, name);\r\n }\r\n if (type) {\r\n attachEventListeners(isRadioOrCheckbox && field.options\r\n ? field.options[field.options.length - 1]\r\n : field, isRadioOrCheckbox || isSelectInput(ref), handleChangeRef.current);\r\n }\r\n }\r\n function register(refOrRegisterOptions, options) {\r\n if (!isWindowUndefined) {\r\n if (isString(refOrRegisterOptions)) {\r\n registerFieldRef({ name: refOrRegisterOptions }, options);\r\n }\r\n else if (isObject(refOrRegisterOptions) &&\r\n 'name' in refOrRegisterOptions) {\r\n registerFieldRef(refOrRegisterOptions, options);\r\n }\r\n else {\r\n return (ref) => ref && registerFieldRef(ref, refOrRegisterOptions);\r\n }\r\n }\r\n }\r\n const handleSubmit = useCallback((onValid, onInvalid) => async (e) => {\r\n if (e && e.preventDefault) {\r\n e.preventDefault();\r\n e.persist();\r\n }\r\n let fieldErrors = {};\r\n let fieldValues = setFieldArrayDefaultValues(getFieldsValues(fieldsRef, cloneObject(shallowFieldsStateRef.current), shouldUnregister, true));\r\n readFormStateRef.current.isSubmitting &&\r\n updateFormState({\r\n isSubmitting: true,\r\n });\r\n try {\r\n if (resolverRef.current) {\r\n const { errors, values } = await resolverRef.current(fieldValues, contextRef.current, isValidateAllFieldCriteria);\r\n formStateRef.current.errors = fieldErrors = errors;\r\n fieldValues = values;\r\n }\r\n else {\r\n for (const field of Object.values(fieldsRef.current)) {\r\n if (field) {\r\n const { name } = field.ref;\r\n const fieldError = await validateField(fieldsRef, isValidateAllFieldCriteria, field, shallowFieldsStateRef);\r\n if (fieldError[name]) {\r\n set(fieldErrors, name, fieldError[name]);\r\n unset(validFieldsRef.current, name);\r\n }\r\n else if (get(fieldsWithValidationRef.current, name)) {\r\n unset(formStateRef.current.errors, name);\r\n set(validFieldsRef.current, name, true);\r\n }\r\n }\r\n }\r\n }\r\n if (isEmptyObject(fieldErrors) &&\r\n Object.keys(formStateRef.current.errors).every((name) => name in fieldsRef.current)) {\r\n updateFormState({\r\n errors: {},\r\n isSubmitting: true,\r\n });\r\n await onValid(fieldValues, e);\r\n }\r\n else {\r\n formStateRef.current.errors = Object.assign(Object.assign({}, formStateRef.current.errors), fieldErrors);\r\n onInvalid && (await onInvalid(formStateRef.current.errors, e));\r\n shouldFocusError &&\r\n focusOnErrorField(fieldsRef.current, formStateRef.current.errors);\r\n }\r\n }\r\n finally {\r\n formStateRef.current.isSubmitting = false;\r\n updateFormState({\r\n isSubmitted: true,\r\n isSubmitting: false,\r\n isSubmitSuccessful: isEmptyObject(formStateRef.current.errors),\r\n submitCount: formStateRef.current.submitCount + 1,\r\n });\r\n }\r\n }, [shouldFocusError, isValidateAllFieldCriteria]);\r\n const resetRefs = ({ errors, isDirty, isSubmitted, touched, isValid, submitCount, dirtyFields, }) => {\r\n if (!isValid) {\r\n validFieldsRef.current = {};\r\n fieldsWithValidationRef.current = {};\r\n }\r\n fieldArrayDefaultValuesRef.current = {};\r\n watchFieldsRef.current = new Set();\r\n isWatchAllRef.current = false;\r\n updateFormState({\r\n submitCount: submitCount ? formStateRef.current.submitCount : 0,\r\n isDirty: isDirty ? formStateRef.current.isDirty : false,\r\n isSubmitted: isSubmitted ? formStateRef.current.isSubmitted : false,\r\n isValid: isValid ? formStateRef.current.isValid : false,\r\n dirtyFields: dirtyFields ? formStateRef.current.dirtyFields : {},\r\n touched: touched ? formStateRef.current.touched : {},\r\n errors: errors ? formStateRef.current.errors : {},\r\n isSubmitting: false,\r\n isSubmitSuccessful: false,\r\n });\r\n };\r\n const reset = (values, omitResetState = {}) => {\r\n if (isWeb) {\r\n for (const field of Object.values(fieldsRef.current)) {\r\n if (field) {\r\n const { ref, options } = field;\r\n const inputRef = isRadioOrCheckboxFunction(ref) && Array.isArray(options)\r\n ? options[0].ref\r\n : ref;\r\n if (isHTMLElement(inputRef)) {\r\n try {\r\n inputRef.closest('form').reset();\r\n break;\r\n }\r\n catch (_a) { }\r\n }\r\n }\r\n }\r\n }\r\n fieldsRef.current = {};\r\n defaultValuesRef.current = Object.assign({}, (values || defaultValuesRef.current));\r\n values && renderWatchedInputs('');\r\n Object.values(resetFieldArrayFunctionRef.current).forEach((resetFieldArray) => isFunction(resetFieldArray) && resetFieldArray());\r\n shallowFieldsStateRef.current = shouldUnregister\r\n ? {}\r\n : cloneObject(values || defaultValuesRef.current);\r\n resetRefs(omitResetState);\r\n };\r\n useEffect(() => {\r\n resolver && readFormStateRef.current.isValid && validateResolver();\r\n observerRef.current =\r\n observerRef.current || !isWeb\r\n ? observerRef.current\r\n : onDomRemove(fieldsRef, removeFieldEventListenerAndRef);\r\n }, [removeFieldEventListenerAndRef, defaultValuesRef.current]);\r\n useEffect(() => () => {\r\n observerRef.current && observerRef.current.disconnect();\r\n isUnMount.current = true;\r\n if (process.env.NODE_ENV !== 'production') {\r\n return;\r\n }\r\n Object.values(fieldsRef.current).forEach((field) => removeFieldEventListenerAndRef(field, true));\r\n }, []);\r\n if (!resolver && readFormStateRef.current.isValid) {\r\n formState.isValid =\r\n deepEqual(validFieldsRef.current, fieldsWithValidationRef.current) &&\r\n isEmptyObject(formStateRef.current.errors);\r\n }\r\n const commonProps = {\r\n trigger,\r\n setValue: useCallback(setValue, [setInternalValue, trigger]),\r\n getValues: useCallback(getValues, []),\r\n register: useCallback(register, [defaultValuesRef.current]),\r\n unregister: useCallback(unregister, []),\r\n formState: isProxyEnabled\r\n ? new Proxy(formState, {\r\n get: (obj, prop) => {\r\n if (process.env.NODE_ENV !== 'production') {\r\n if (prop === 'isValid' && isOnSubmit) {\r\n console.warn('📋 `formState.isValid` is applicable with `onTouched`, `onChange` or `onBlur` mode. https://react-hook-form.com/api#formState');\r\n }\r\n }\r\n if (prop in obj) {\r\n readFormStateRef.current[prop] = true;\r\n return obj[prop];\r\n }\r\n return undefined;\r\n },\r\n })\r\n : formState,\r\n };\r\n const control = useMemo(() => (Object.assign({ isFormDirty,\r\n updateWatchedValue,\r\n shouldUnregister,\r\n updateFormState,\r\n removeFieldEventListener,\r\n watchInternal, mode: modeRef.current, reValidateMode: {\r\n isReValidateOnBlur,\r\n isReValidateOnChange,\r\n }, validateResolver: resolver ? validateResolver : undefined, fieldsRef,\r\n resetFieldArrayFunctionRef,\r\n useWatchFieldsRef,\r\n useWatchRenderFunctionsRef,\r\n fieldArrayDefaultValuesRef,\r\n validFieldsRef,\r\n fieldsWithValidationRef,\r\n fieldArrayNamesRef,\r\n readFormStateRef,\r\n formStateRef,\r\n defaultValuesRef,\r\n shallowFieldsStateRef,\r\n fieldArrayValuesRef }, commonProps)), [\r\n defaultValuesRef.current,\r\n updateWatchedValue,\r\n shouldUnregister,\r\n removeFieldEventListener,\r\n watchInternal,\r\n ]);\r\n return Object.assign({ watch,\r\n control,\r\n handleSubmit, reset: useCallback(reset, []), clearErrors: useCallback(clearErrors, []), setError: useCallback(setError, []), errors: formState.errors }, commonProps);\r\n}\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n\r\nfunction __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\n\nconst FormContext = createContext(null);\r\nFormContext.displayName = 'RHFContext';\r\nconst useFormContext = () => useContext(FormContext);\r\nconst FormProvider = (_a) => {\r\n var { children } = _a, props = __rest(_a, [\"children\"]);\r\n return (createElement(FormContext.Provider, { value: Object.assign({}, props) }, children));\r\n};\n\nvar generateId = () => {\r\n const d = typeof performance === UNDEFINED ? Date.now() : performance.now() * 1000;\r\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {\r\n const r = (Math.random() * 16 + d) % 16 | 0;\r\n return (c == 'x' ? r : (r & 0x3) | 0x8).toString(16);\r\n });\r\n};\n\nfunction removeAtIndexes(data, indexes) {\r\n let i = 0;\r\n const temp = [...data];\r\n for (const index of indexes) {\r\n temp.splice(index - i, 1);\r\n i++;\r\n }\r\n return compact(temp).length ? temp : [];\r\n}\r\nvar removeArrayAt = (data, index) => isUndefined(index)\r\n ? []\r\n : removeAtIndexes(data, (Array.isArray(index) ? index : [index]).sort((a, b) => a - b));\n\nvar moveArrayAt = (data, from, to) => {\r\n if (Array.isArray(data)) {\r\n if (isUndefined(data[to])) {\r\n data[to] = undefined;\r\n }\r\n data.splice(to, 0, data.splice(from, 1)[0]);\r\n return data;\r\n }\r\n return [];\r\n};\n\nvar swapArrayAt = (data, indexA, indexB) => {\r\n const temp = [data[indexB], data[indexA]];\r\n data[indexA] = temp[0];\r\n data[indexB] = temp[1];\r\n};\n\nfunction prepend(data, value) {\r\n return [...(Array.isArray(value) ? value : [value || undefined]), ...data];\r\n}\n\nfunction insert(data, index, value) {\r\n return [\r\n ...data.slice(0, index),\r\n ...(Array.isArray(value) ? value : [value || undefined]),\r\n ...data.slice(index),\r\n ];\r\n}\n\nvar fillEmptyArray = (value) => Array.isArray(value) ? Array(value.length).fill(undefined) : undefined;\n\nvar fillBooleanArray = (value) => (Array.isArray(value) ? value : [value]).map((data) => {\r\n if (isObject(data)) {\r\n const object = {};\r\n for (const key in data) {\r\n object[key] = true;\r\n }\r\n return object;\r\n }\r\n return true;\r\n});\n\nconst mapIds = (values = [], keyName, skipWarn) => {\r\n if (process.env.NODE_ENV !== 'production') {\r\n if (!skipWarn) {\r\n for (const value of values) {\r\n if (typeof value === 'object') {\r\n if (keyName in value) {\r\n console.warn(`📋 useFieldArray fieldValues contain the keyName \\`${keyName}\\` which is reserved for use by useFieldArray. https://react-hook-form.com/api#useFieldArray`);\r\n break;\r\n }\r\n }\r\n else {\r\n console.warn(`📋 useFieldArray input's name should be in object shape instead of flat array. https://react-hook-form.com/api#useFieldArray`);\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n return values.map((value) => (Object.assign({ [keyName]: value[keyName] || generateId() }, value)));\r\n};\r\nconst useFieldArray = ({ control, name, keyName = 'id', }) => {\r\n const methods = useFormContext();\r\n if (process.env.NODE_ENV !== 'production') {\r\n if (!control && !methods) {\r\n throw new Error('📋 useFieldArray is missing `control` prop. https://react-hook-form.com/api#useFieldArray');\r\n }\r\n }\r\n const focusIndexRef = useRef(-1);\r\n const isUnMount = useRef(false);\r\n const { isFormDirty, updateWatchedValue, resetFieldArrayFunctionRef, fieldArrayNamesRef, fieldsRef, defaultValuesRef, removeFieldEventListener, formStateRef, shallowFieldsStateRef, updateFormState, readFormStateRef, validFieldsRef, fieldsWithValidationRef, fieldArrayDefaultValuesRef, validateResolver, getValues, shouldUnregister, fieldArrayValuesRef, } = control || methods.control;\r\n const getDefaultValues = (values) => get(shouldUnregister ? values : shallowFieldsStateRef.current, name, []);\r\n const fieldArrayParentName = getFieldArrayParentName(name);\r\n const memoizedDefaultValues = useRef([\r\n ...(get(fieldArrayDefaultValuesRef.current, fieldArrayParentName)\r\n ? getDefaultValues(fieldArrayDefaultValuesRef.current)\r\n : getDefaultValues(defaultValuesRef.current)),\r\n ]);\r\n const [fields, setFields] = useState(mapIds(memoizedDefaultValues.current, keyName));\r\n set(fieldArrayValuesRef.current, name, compact(fields));\r\n const omitKey = (fields) => fields.map((_a = {}) => {\r\n var _b = keyName, omitted = _a[_b], rest = __rest(_a, [typeof _b === \"symbol\" ? _b : _b + \"\"]);\r\n return rest;\r\n });\r\n fieldArrayNamesRef.current.add(name);\r\n const getFieldArrayValue = useCallback(() => get(fieldArrayValuesRef.current, name, []), [name]);\r\n const getCurrentFieldsValues = () => mapIds(get(getValues(), name, getFieldArrayValue()).map((item, index) => (Object.assign(Object.assign({}, getFieldArrayValue()[index]), item))), keyName, true);\r\n fieldArrayNamesRef.current.add(name);\r\n if (fieldArrayParentName &&\r\n !get(fieldArrayDefaultValuesRef.current, fieldArrayParentName)) {\r\n set(fieldArrayDefaultValuesRef.current, fieldArrayParentName, cloneObject(get(defaultValuesRef.current, fieldArrayParentName)));\r\n }\r\n const setFieldAndValidState = (fieldsValues) => {\r\n setFields(fieldsValues);\r\n set(fieldArrayValuesRef.current, name, fieldsValues);\r\n if (readFormStateRef.current.isValid && validateResolver) {\r\n const values = getValues();\r\n set(values, name, fieldsValues);\r\n validateResolver(values);\r\n }\r\n };\r\n const resetFields = () => {\r\n for (const key in fieldsRef.current) {\r\n if (isMatchFieldArrayName(key, name)) {\r\n removeFieldEventListener(fieldsRef.current[key], true);\r\n delete fieldsRef.current[key];\r\n }\r\n }\r\n };\r\n const cleanup = (ref) => !compact(get(ref, name, [])).length && unset(ref, name);\r\n const updateDirtyFieldsWithDefaultValues = (updatedFieldArrayValues) => {\r\n if (updatedFieldArrayValues) {\r\n set(formStateRef.current.dirtyFields, name, setFieldArrayDirtyFields(omitKey(updatedFieldArrayValues), get(defaultValuesRef.current, name, []), get(formStateRef.current.dirtyFields, name, [])));\r\n }\r\n };\r\n const batchStateUpdate = (method, args, updatedFieldValues, updatedFormValues = [], shouldSet = true, shouldUpdateValid = false) => {\r\n if (get(shallowFieldsStateRef.current, name)) {\r\n const output = method(get(shallowFieldsStateRef.current, name), args.argA, args.argB);\r\n shouldSet && set(shallowFieldsStateRef.current, name, output);\r\n }\r\n if (get(fieldArrayDefaultValuesRef.current, name)) {\r\n const output = method(get(fieldArrayDefaultValuesRef.current, name), args.argA, args.argB);\r\n shouldSet && set(fieldArrayDefaultValuesRef.current, name, output);\r\n }\r\n if (Array.isArray(get(formStateRef.current.errors, name))) {\r\n const output = method(get(formStateRef.current.errors, name), args.argA, args.argB);\r\n shouldSet && set(formStateRef.current.errors, name, output);\r\n cleanup(formStateRef.current.errors);\r\n }\r\n if (readFormStateRef.current.touched &&\r\n get(formStateRef.current.touched, name)) {\r\n const output = method(get(formStateRef.current.touched, name), args.argA, args.argB);\r\n shouldSet && set(formStateRef.current.touched, name, output);\r\n cleanup(formStateRef.current.touched);\r\n }\r\n if (readFormStateRef.current.dirtyFields ||\r\n readFormStateRef.current.isDirty) {\r\n set(formStateRef.current.dirtyFields, name, setFieldArrayDirtyFields(omitKey(updatedFormValues), get(defaultValuesRef.current, name, []), get(formStateRef.current.dirtyFields, name, [])));\r\n updateDirtyFieldsWithDefaultValues(updatedFieldValues);\r\n cleanup(formStateRef.current.dirtyFields);\r\n }\r\n if (shouldUpdateValid &&\r\n readFormStateRef.current.isValid &&\r\n !validateResolver) {\r\n set(validFieldsRef.current, name, method(get(validFieldsRef.current, name, []), args.argA));\r\n cleanup(validFieldsRef.current);\r\n set(fieldsWithValidationRef.current, name, method(get(fieldsWithValidationRef.current, name, []), args.argA));\r\n cleanup(fieldsWithValidationRef.current);\r\n }\r\n if (!isUnMount.current && readFormStateRef.current.isDirty) {\r\n updateFormState({\r\n isDirty: isFormDirty(name, omitKey(updatedFormValues)),\r\n });\r\n }\r\n };\r\n const append = (value, shouldFocus = true) => {\r\n const appendValue = Array.isArray(value) ? value : [value];\r\n const updateFormValues = [\r\n ...getCurrentFieldsValues(),\r\n ...mapIds(appendValue, keyName),\r\n ];\r\n setFieldAndValidState(updateFormValues);\r\n if (readFormStateRef.current.dirtyFields ||\r\n readFormStateRef.current.isDirty) {\r\n updateDirtyFieldsWithDefaultValues(updateFormValues);\r\n updateFormState({\r\n isDirty: true,\r\n dirtyFields: formStateRef.current.dirtyFields,\r\n });\r\n }\r\n !shouldUnregister &&\r\n set(shallowFieldsStateRef.current, name, [\r\n ...(get(shallowFieldsStateRef.current, name) || []),\r\n ...cloneObject(appendValue),\r\n ]);\r\n focusIndexRef.current = shouldFocus\r\n ? get(fieldArrayValuesRef.current, name).length - 1\r\n : -1;\r\n };\r\n const prepend$1 = (value, shouldFocus = true) => {\r\n const emptyArray = fillEmptyArray(value);\r\n const updatedFieldArrayValues = prepend(getCurrentFieldsValues(), mapIds(Array.isArray(value) ? value : [value], keyName));\r\n setFieldAndValidState(updatedFieldArrayValues);\r\n resetFields();\r\n batchStateUpdate(prepend, {\r\n argA: emptyArray,\r\n argC: fillBooleanArray(value),\r\n }, updatedFieldArrayValues);\r\n focusIndexRef.current = shouldFocus ? 0 : -1;\r\n };\r\n const remove = (index) => {\r\n const fieldValues = getCurrentFieldsValues();\r\n const updatedFieldValues = removeArrayAt(fieldValues, index);\r\n setFieldAndValidState(updatedFieldValues);\r\n resetFields();\r\n batchStateUpdate(removeArrayAt, {\r\n argA: index,\r\n argC: index,\r\n }, updatedFieldValues, removeArrayAt(fieldValues, index), true, true);\r\n };\r\n const insert$1 = (index, value, shouldFocus = true) => {\r\n const emptyArray = fillEmptyArray(value);\r\n const fieldValues = getCurrentFieldsValues();\r\n const updatedFieldArrayValues = insert(fieldValues, index, mapIds(Array.isArray(value) ? value : [value], keyName));\r\n setFieldAndValidState(updatedFieldArrayValues);\r\n resetFields();\r\n batchStateUpdate(insert, {\r\n argA: index,\r\n argB: emptyArray,\r\n argC: index,\r\n argD: fillBooleanArray(value),\r\n }, updatedFieldArrayValues, insert(fieldValues, index));\r\n focusIndexRef.current = shouldFocus ? index : -1;\r\n };\r\n const swap = (indexA, indexB) => {\r\n const fieldValues = getCurrentFieldsValues();\r\n swapArrayAt(fieldValues, indexA, indexB);\r\n resetFields();\r\n setFieldAndValidState([...fieldValues]);\r\n batchStateUpdate(swapArrayAt, {\r\n argA: indexA,\r\n argB: indexB,\r\n argC: indexA,\r\n argD: indexB,\r\n }, undefined, fieldValues, false);\r\n };\r\n const move = (from, to) => {\r\n const fieldValues = getCurrentFieldsValues();\r\n moveArrayAt(fieldValues, from, to);\r\n resetFields();\r\n setFieldAndValidState([...fieldValues]);\r\n batchStateUpdate(moveArrayAt, {\r\n argA: from,\r\n argB: to,\r\n argC: from,\r\n argD: to,\r\n }, undefined, fieldValues, false);\r\n };\r\n useEffect(() => {\r\n if (process.env.NODE_ENV !== 'production') {\r\n if (!name) {\r\n console.warn('📋 useFieldArray is missing `name` attribute. https://react-hook-form.com/api#useFieldArray');\r\n }\r\n }\r\n const defaultValues = get(fieldArrayDefaultValuesRef.current, name);\r\n if (defaultValues && fields.length < defaultValues.length) {\r\n set(fieldArrayDefaultValuesRef.current, name, defaultValues.slice(1));\r\n }\r\n updateWatchedValue(name);\r\n if (focusIndexRef.current > -1) {\r\n for (const key in fieldsRef.current) {\r\n const field = fieldsRef.current[key];\r\n if (key.startsWith(`${name}[${focusIndexRef.current}]`) &&\r\n field.ref.focus) {\r\n field.ref.focus();\r\n break;\r\n }\r\n }\r\n }\r\n focusIndexRef.current = -1;\r\n }, [fields, name]);\r\n useEffect(() => {\r\n const resetFunctions = resetFieldArrayFunctionRef.current;\r\n const fieldArrayNames = fieldArrayNamesRef.current;\r\n if (!getFieldArrayParentName(name)) {\r\n resetFunctions[name] = (data) => {\r\n resetFields();\r\n !data && unset(fieldArrayDefaultValuesRef.current, name);\r\n unset(shallowFieldsStateRef.current, name);\r\n memoizedDefaultValues.current = get(data || defaultValuesRef.current, name);\r\n if (!isUnMount.current) {\r\n setFields(mapIds(memoizedDefaultValues.current, keyName));\r\n }\r\n };\r\n }\r\n return () => {\r\n isUnMount.current = true;\r\n shouldUnregister && remove();\r\n resetFields();\r\n delete resetFunctions[name];\r\n unset(fieldArrayValuesRef.current, name);\r\n fieldArrayNames.delete(name);\r\n };\r\n }, []);\r\n return {\r\n swap: useCallback(swap, [name]),\r\n move: useCallback(move, [name]),\r\n prepend: useCallback(prepend$1, [name]),\r\n append: useCallback(append, [name]),\r\n remove: useCallback(remove, [name]),\r\n insert: useCallback(insert$1, [name]),\r\n fields: compact(fields),\r\n };\r\n};\n\nvar getInputValue = (event) => isPrimitive(event) ||\r\n !isObject(event.target) ||\r\n (isObject(event.target) && !event.type)\r\n ? event\r\n : isUndefined(event.target.value)\r\n ? event.target.checked\r\n : event.target.value;\n\nfunction useController({ name, rules, defaultValue, control, onFocus, }) {\r\n const methods = useFormContext();\r\n if (process.env.NODE_ENV !== 'production') {\r\n if (!control && !methods) {\r\n throw new Error('📋 Controller is missing `control` prop. https://react-hook-form.com/api#Controller');\r\n }\r\n }\r\n const { defaultValuesRef, setValue, register, unregister, trigger, mode, reValidateMode: { isReValidateOnBlur, isReValidateOnChange }, formState, formStateRef: { current: { isSubmitted, touched, errors }, }, updateFormState, readFormStateRef, fieldsRef, fieldArrayNamesRef, shallowFieldsStateRef, } = control || methods.control;\r\n const isNotFieldArray = !isNameInFieldArray(fieldArrayNamesRef.current, name);\r\n const getInitialValue = () => !isUndefined(get(shallowFieldsStateRef.current, name)) && isNotFieldArray\r\n ? get(shallowFieldsStateRef.current, name)\r\n : isUndefined(defaultValue)\r\n ? get(defaultValuesRef.current, name)\r\n : defaultValue;\r\n const [value, setInputStateValue] = useState(getInitialValue());\r\n const valueRef = useRef(value);\r\n const ref = useRef({\r\n focus: () => null,\r\n });\r\n const onFocusRef = useRef(onFocus ||\r\n (() => {\r\n if (isFunction(ref.current.focus)) {\r\n ref.current.focus();\r\n }\r\n if (process.env.NODE_ENV !== 'production') {\r\n if (!isFunction(ref.current.focus)) {\r\n console.warn(`📋 'ref' from Controller render prop must be attached to a React component or a DOM Element whose ref provides a 'focus()' method`);\r\n }\r\n }\r\n }));\r\n const shouldValidate = useCallback((isBlurEvent) => !skipValidation(Object.assign({ isBlurEvent,\r\n isReValidateOnBlur,\r\n isReValidateOnChange,\r\n isSubmitted, isTouched: !!get(touched, name) }, mode)), [\r\n isReValidateOnBlur,\r\n isReValidateOnChange,\r\n isSubmitted,\r\n touched,\r\n name,\r\n mode,\r\n ]);\r\n const commonTask = useCallback(([event]) => {\r\n const data = getInputValue(event);\r\n setInputStateValue(data);\r\n valueRef.current = data;\r\n return data;\r\n }, []);\r\n const registerField = useCallback((shouldUpdateValue) => {\r\n if (process.env.NODE_ENV !== 'production') {\r\n if (!name) {\r\n return console.warn('📋 Field is missing `name` prop. https://react-hook-form.com/api#Controller');\r\n }\r\n }\r\n if (fieldsRef.current[name]) {\r\n fieldsRef.current[name] = Object.assign({ ref: fieldsRef.current[name].ref }, rules);\r\n }\r\n else {\r\n register(Object.defineProperties({\r\n name,\r\n focus: onFocusRef.current,\r\n }, {\r\n value: {\r\n set(data) {\r\n setInputStateValue(data);\r\n valueRef.current = data;\r\n },\r\n get() {\r\n return valueRef.current;\r\n },\r\n },\r\n }), rules);\r\n shouldUpdateValue = isUndefined(get(defaultValuesRef.current, name));\r\n }\r\n shouldUpdateValue &&\r\n isNotFieldArray &&\r\n setInputStateValue(getInitialValue());\r\n }, [rules, name, register]);\r\n useEffect(() => () => unregister(name), [name]);\r\n useEffect(() => {\r\n if (process.env.NODE_ENV !== 'production') {\r\n if (isUndefined(value)) {\r\n console.warn(`📋 ${name} is missing in the 'defaultValue' prop of either its Controller (https://react-hook-form.com/api#Controller) or useForm (https://react-hook-form.com/api#useForm)`);\r\n }\r\n if (!isNotFieldArray && isUndefined(defaultValue)) {\r\n console.warn('📋 Controller is missing `defaultValue` prop when using `useFieldArray`. https://react-hook-form.com/api#Controller');\r\n }\r\n }\r\n registerField();\r\n }, [registerField]);\r\n useEffect(() => {\r\n !fieldsRef.current[name] && registerField(true);\r\n });\r\n const onBlur = useCallback(() => {\r\n if (readFormStateRef.current.touched && !get(touched, name)) {\r\n set(touched, name, true);\r\n updateFormState({\r\n touched,\r\n });\r\n }\r\n shouldValidate(true) && trigger(name);\r\n }, [name, updateFormState, shouldValidate, trigger, readFormStateRef]);\r\n const onChange = useCallback((...event) => setValue(name, commonTask(event), {\r\n shouldValidate: shouldValidate(),\r\n shouldDirty: true,\r\n }), [setValue, name, shouldValidate]);\r\n return {\r\n field: {\r\n onChange,\r\n onBlur,\r\n name,\r\n value,\r\n ref,\r\n },\r\n meta: Object.defineProperties({\r\n invalid: !!get(errors, name),\r\n }, {\r\n isDirty: {\r\n get() {\r\n return !!get(formState.dirtyFields, name);\r\n },\r\n },\r\n isTouched: {\r\n get() {\r\n return !!get(formState.touched, name);\r\n },\r\n },\r\n }),\r\n };\r\n}\n\nfunction useWatch({ control, name, defaultValue, }) {\r\n const methods = useFormContext();\r\n if (process.env.NODE_ENV !== 'production') {\r\n if (!control && !methods) {\r\n throw new Error('📋 useWatch is missing `control` prop. https://react-hook-form.com/api#useWatch');\r\n }\r\n }\r\n const { useWatchFieldsRef, useWatchRenderFunctionsRef, watchInternal, defaultValuesRef, } = control || methods.control;\r\n const updateValue = useState()[1];\r\n const idRef = useRef();\r\n const defaultValueRef = useRef(defaultValue);\r\n useEffect(() => {\r\n if (process.env.NODE_ENV !== 'production') {\r\n if (name === '') {\r\n console.warn('📋 useWatch is missing `name` attribute. https://react-hook-form.com/api#useWatch');\r\n }\r\n }\r\n const id = (idRef.current = generateId());\r\n const watchFieldsHookRender = useWatchRenderFunctionsRef.current;\r\n const watchFieldsHook = useWatchFieldsRef.current;\r\n watchFieldsHook[id] = new Set();\r\n watchFieldsHookRender[id] = () => updateValue({});\r\n watchInternal(name, defaultValueRef.current, id);\r\n return () => {\r\n delete watchFieldsHook[id];\r\n delete watchFieldsHookRender[id];\r\n };\r\n }, [\r\n name,\r\n useWatchRenderFunctionsRef,\r\n useWatchFieldsRef,\r\n watchInternal,\r\n defaultValueRef,\r\n ]);\r\n return idRef.current\r\n ? watchInternal(name, defaultValueRef.current, idRef.current)\r\n : isUndefined(defaultValue)\r\n ? isString(name)\r\n ? get(defaultValuesRef.current, name)\r\n : Array.isArray(name)\r\n ? name.reduce((previous, inputName) => (Object.assign(Object.assign({}, previous), { [inputName]: get(defaultValuesRef.current, inputName) })), {})\r\n : defaultValuesRef.current\r\n : defaultValue;\r\n}\n\nconst Controller = (props) => {\r\n const { rules, as, render, defaultValue, control, onFocus } = props, rest = __rest(props, [\"rules\", \"as\", \"render\", \"defaultValue\", \"control\", \"onFocus\"]);\r\n const { field, meta } = useController(props);\r\n const componentProps = Object.assign(Object.assign({}, rest), field);\r\n return as\r\n ? isValidElement(as)\r\n ? cloneElement(as, componentProps)\r\n : createElement(as, componentProps)\r\n : render\r\n ? render(field, meta)\r\n : null;\r\n};\n\nexport { Controller, FormProvider, appendErrors, get, transformToNestObject, useController, useFieldArray, useForm, useFormContext, useWatch };\n//# sourceMappingURL=index.esm.js.map\n","import {\n DatePicker, SearchField, SubmitBar\n} from \"@egovernments/digit-ui-react-components\";\nimport React from \"react\";\nimport { Controller } from \"react-hook-form\";\nconst SearchFields = ({ register, control, reset, tenantId, t, previousPage, formState, isLoading }) => {\n const isMobile = window.Digit.Utils.browser.isMobile();\n\n return (\n <>\n <SearchField className=\"pt-form-field\">\n <label>{t(\"AUDIT_FROM_DATE_LABEL\")}</label>\n <Controller render={(props) => <DatePicker date={props.value} onChange={props.onChange} />} name=\"fromDate\" control={control} />\n </SearchField>\n <SearchField className=\"pt-form-field\">\n <label>{t(\"AUDIT_TO_DATE_LABEL\")}</label>\n <Controller render={(props) => <DatePicker date={props.value} onChange={props.onChange} />} name=\"toDate\" control={control} />\n </SearchField>\n <SearchField className=\"pt-search-action-submit\">\n <SubmitBar\n style={{ marginTop: isMobile ? \"510px\" : \"25px\", marginLeft: isMobile ? \"0\" : \"-30px\", maxWidth: isMobile ? \"100%\" : \"240px\" }}\n label={t(\"ES_COMMON_APPLY\")}\n submit\n />\n </SearchField>\n </>\n );\n};\nexport default SearchFields;\n","import {\n BackButton, CloseSvg, DetailsCard, DownloadBtnCommon, Header, Loader, PopUp, SearchAction, SearchForm\n} from \"@egovernments/digit-ui-react-components\";\nimport React, { useCallback, useEffect, useMemo, useReducer, useState } from \"react\";\nimport SearchFormFields from \"./SearchFields\";\n// import { convertEpochToDateDMY } from \"../../utils\";\n\nconst MobileSearchApplication = ({ Controller, register, control, t, reset, previousPage, handleSubmit, tenantId, data, onSubmit, isLoading }) => {\n function activateModal(state, action) {\n switch (action.type) {\n case \"set\":\n return action.payload;\n case \"remove\":\n return false;\n default:\n break;\n }\n }\n const [tabledata, settabledata] = useState([]);\n const DownloadBtn = (props) => {\n return (\n <div onClick={props.onClick}>\n <DownloadBtnCommon />\n </div>\n );\n };\n const handleExcelDownload = (tabData) => {\n if (tabData?.[0] !== undefined) {\n return Digit.Download.Excel(tabData?.[0], \"AuditReport\");\n }\n };\n useEffect(() => {\n if (data?.length > 0) {\n settabledata([\n data?.map((obj) => {\n let returnObject = {};\n returnObject[t(\"AUDIT_DATE_LABEL\")] = convertEpochToDate(obj?.timestamp);\n returnObject[t(\"AUDIT_TIME_LABEL\")] = convertEpochToTimeInHours(obj?.timestamp);\n returnObject[t(\"AUDIT_DATAVIEWED_LABEL\")] = obj?.dataView[0] + \",\" + obj?.dataView[1];\n returnObject[t(\"AUDIT_DATAVIEWED_BY_LABEL\")] = obj?.dataViewedBy;\n returnObject[t(\"AUDIT_ROLE_LABEL\")] = obj?.roles.map((obj) => obj.name).join(\",\");\n return {\n ...returnObject,\n };\n }),\n ]);\n }\n }, [data]);\n const convertEpochToDate = (dateEpoch) => {\n if (dateEpoch == null || dateEpoch == undefined || dateEpoch == \"\") {\n return \"NA\";\n }\n const dateFromApi = new Date(dateEpoch);\n let month = dateFromApi.getMonth() + 1;\n let day = dateFromApi.getDate();\n let year = dateFromApi.getFullYear();\n month = (month > 9 ? \"\" : \"0\") + month;\n day = (day > 9 ? \"\" : \"0\") + day;\n return `${day}/${month}/${year}`;\n };\n const convertEpochToTimeInHours = (dateEpoch) => {\n if (dateEpoch == null || dateEpoch == undefined || dateEpoch == \"\") {\n return \"NA\";\n }\n const dateFromApi = new Date(dateEpoch);\n let hour = dateFromApi.getHours();\n let min = dateFromApi.getMinutes();\n let period = hour > 12 ? \"PM\" : \"AM\";\n hour = hour > 12 ? hour - 12 : hour;\n hour = (hour > 9 ? \"\" : \"0\") + hour;\n min = (min > 9 ? \"\" : \"0\") + min;\n return `${hour}:${min} ${period}`;\n };\n const [currentlyActiveMobileModal, setActiveMobileModal] = useReducer(activateModal, false);\n\n const closeMobilePopupModal = () => {\n setActiveMobileModal({ type: \"remove\" });\n };\n\n const MobilePopUpCloseButton = () => (\n <div className=\"InboxMobilePopupCloseButtonWrapper\" onClick={closeMobilePopupModal}>\n <CloseSvg />\n </div>\n );\n const searchFormFieldsComponentProps = { Controller, register, control, t, reset, previousPage };\n\n const MobileComponentDirectory = ({ currentlyActiveMobileModal, searchFormFieldsComponentProps, tenantId, ...props }) => {\n const { closeMobilePopupModal } = props;\n switch (currentlyActiveMobileModal) {\n case \"SearchFormComponent\":\n return (\n <SearchForm {...props}>\n <MobilePopUpCloseButton />\n <div className=\"MobilePopupHeadingWrapper\">\n <h2>{t(\"PRIVACY_AUDIT_REPORT\")}:</h2>\n </div>\n <SearchFormFields {...searchFormFieldsComponentProps} {...{ closeMobilePopupModal, tenantId, t }} />\n {/* <SearchField className=\"submit\">\n <SubmitBar label={t(\"ES_COMMON_SEARCH\")} submit form=\"search-form\"/>\n <p onClick={onResetSearchForm}>{t(`ES_COMMON_CLEAR_ALL`)}</p>\n </SearchField> */}\n </SearchForm>\n );\n default:\n return <span></span>;\n }\n };\n const CurrentMobileModalComponent = useCallback(\n ({ currentlyActiveMobileModal, searchFormFieldsComponentProps, tenantId, ...props }) =>\n MobileComponentDirectory({ currentlyActiveMobileModal, searchFormFieldsComponentProps, tenantId, ...props }),\n [currentlyActiveMobileModal]\n );\n let roles = [];\n data?.roles?.forEach((item) => {\n roles.push(item?.name);\n });\n const propsMobileInboxCards = useMemo(() => {\n if (data?.display) {\n return [];\n }\n if (data === \"\") {\n return [];\n }\n return data?.map((data) => ({\n [t(\"AUDIT_DATE_LABEL\")]: convertEpochToDate(data.timestamp),\n [t(\"AUDIT_TIME_LABEL\")]: convertEpochToTimeInHours(data.timestamp),\n [t(\"AUDIT_DATAVIEWED_LABEL\")]: data.dataView[0] + \",\" + data.dataView[1],\n [t(\"AUDIT_DATAVIEWED_BY_LABEL\")]: data.dataViewedBy,\n [t(\"AUDIT_ROLE_LABEL\")]: data.roles\n .slice(0, 3)\n ?.map((e) => e.name)\n .join(\",\"),\n }));\n }, [data]);\n\n return (\n <React.Fragment>\n <BackButton />\n <div className=\"sideContent\" style={{ marginLeft: \"70%\", marginTop: \"-12%\" }}>\n <DownloadBtn className=\"mrlg cursorPointer\" onClick={() => handleExcelDownload(tabledata)} />\n </div>\n <Header>{t(\"PRIVACY_AUDIT_REPORT\")}:</Header>\n <div className=\"searchBox\">\n <SearchAction\n text={t(\"ES_COMMON_SEARCH\")}\n handleActionClick={() => setActiveMobileModal({ type: \"set\", payload: \"SearchFormComponent\" })}\n {...{ tenantId, t }}\n />\n </div>\n {currentlyActiveMobileModal ? (\n <PopUp>\n <CurrentMobileModalComponent\n onSubmit={(data) => {\n setActiveMobileModal({ type: \"remove\" });\n onSubmit(data);\n }}\n handleSubmit={handleSubmit}\n id=\"search-form\"\n className=\"rm-mb form-field-flex-one inboxPopupMobileWrapper\"\n {...{ searchFormFieldsComponentProps, currentlyActiveMobileModal, closeMobilePopupModal, tenantId }}\n />\n </PopUp>\n ) : null}\n {isLoading && <Loader />}\n <DetailsCard\n {...{\n data: propsMobileInboxCards,\n }}\n />\n </React.Fragment>\n );\n};\n\nexport default MobileSearchApplication;\n","import { BackButton, DownloadBtnCommon, Header, Loader, SearchForm, Table } from \"@egovernments/digit-ui-react-components\";\nimport React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { Controller, useForm } from \"react-hook-form\";\nimport MobileSearchApplication from \"./MobileSearchApplication\";\nimport SearchFields from \"./SearchFields\";\n\nconst SearchApplication = ({ tenantId, t, onSubmit, data, count }) => {\n const initialValues = Digit.SessionStorage.get(\"AUDIT_APPLICATION_DETAIL\") || {\n offset: 0,\n limit: 5,\n sortOrder: \"DESC\",\n };\n const { register, control, handleSubmit, setValue, getValues, reset } = useForm({\n defaultValues: initialValues,\n });\n const convertEpochToDate = (dateEpoch) => {\n if (dateEpoch == null || dateEpoch == undefined || dateEpoch == \"\") {\n return \"NA\";\n }\n const dateFromApi = new Date(dateEpoch);\n let month = dateFromApi.getMonth() + 1;\n let day = dateFromApi.getDate();\n let year = dateFromApi.getFullYear();\n month = (month > 9 ? \"\" : \"0\") + month;\n day = (day > 9 ? \"\" : \"0\") + day;\n return `${day}/${month}/${year}`;\n };\n const convertEpochToTimeInHours = (dateEpoch) => {\n if (dateEpoch == null || dateEpoch == undefined || dateEpoch == \"\") {\n return \"NA\";\n }\n const dateFromApi = new Date(dateEpoch);\n let hour = dateFromApi.getHours();\n let min = dateFromApi.getMinutes();\n let period = hour > 12 ? \"PM\" : \"AM\";\n hour = hour > 12 ? hour - 12 : hour;\n hour = (hour > 9 ? \"\" : \"0\") + hour;\n min = (min > 9 ? \"\" : \"0\") + min;\n return `${hour}:${min} ${period}`;\n };\n const [tabledata, settabledata] = useState([]);\n const DownloadBtn = (props) => {\n return (\n <div onClick={props.onClick}>\n <DownloadBtnCommon />\n </div>\n );\n };\n const handleExcelDownload = (tabData) => {\n if (tabData?.[0] !== undefined) {\n return Digit.Download.Excel(tabData?.[0], \"AuditReport\");\n }\n };\n useEffect(() => {\n register(\"offset\", 0);\n register(\"limit\", 5);\n register(\"sortOrder\", \"DESC\");\n }, [register]);\n useEffect(() => {\n if (data?.length > 0) {\n settabledata([\n data?.map((obj) => {\n let returnObject = {};\n returnObject[t(\"AUDIT_DATE_LABEL\")] = convertEpochToDate(obj?.timestamp);\n returnObject[t(\"AUDIT_TIME_LABEL\")] = convertEpochToTimeInHours(obj?.timestamp);\n returnObject[t(\"AUDIT_DATAVIEWED_LABEL\")] = obj?.dataView[0] + \",\" + obj?.dataView[1];\n returnObject[t(\"AUDIT_DATAVIEWED_BY_LABEL\")] = obj?.dataViewedBy;\n returnObject[t(\"AUDIT_ROLE_LABEL\")] = obj?.roles.map((obj) => obj.name).join(\",\");\n return {\n ...returnObject,\n };\n }),\n ]);\n }\n }, [data]);\n const onSort = useCallback((args) => {\n if (args.length === 0) return;\n setValue(\"sortBy\", args.id);\n setValue(\"sortOrder\", args.desc ? \"DESC\" : \"ASC\");\n }, []);\n\n function onPageSizeChange(e) {\n setValue(\"limit\", Number(e.target.value));\n handleSubmit(onSubmit)();\n }\n\n function nextPage() {\n setValue(\"offset\", getValues(\"offset\") + getValues(\"limit\"));\n handleSubmit(onSubmit)();\n }\n function previousPage() {\n setValue(\"offset\", getValues(\"offset\") - getValues(\"limit\"));\n handleSubmit(onSubmit)();\n }\n const isMobile = window.Digit.Utils.browser.isMobile();\n\n if (isMobile) {\n return <MobileSearchApplication {...{ Controller, register, control, t, reset, previousPage, handleSubmit, tenantId, data, onSubmit }} />;\n }\n\n //need to get from workflow\n const GetCell = (value) => <span className=\"cell-text\">{value}</span>;\n const columns = useMemo(\n () => [\n {\n Header: t(\"AUDIT_DATE_LABEL\"),\n disableSortBy: true,\n accessor: (row) => {\n const timestamp = row.timestamp === \"NA\" ? t(\"WS_NA\") : convertEpochToDate(row.timestamp);\n return GetCell(`${timestamp}`);\n },\n },\n {\n Header: t(\"AUDIT_TIME_LABEL\"),\n disableSortBy: true,\n accessor: (row) => {\n const timestamp = row.timestamp === \"NA\" ? t(\"WS_NA\") : convertEpochToTimeInHours(row.timestamp);\n return GetCell(`${timestamp}`);\n },\n },\n {\n Header: isMobile ? t(\"AUDIT_DATAVIEWED_LABEL\") : t(\"AUDIT_DATAVIEWED_PRIVACY\"),\n disableSortBy: true,\n accessor: (row) => {\n return GetCell(`${row?.dataView}`);\n },\n },\n {\n Header: isMobile ? t(\"AUDIT_DATAVIEWED_BY_LABEL\") : t(\"AUDIT_DATAVIEWED_BY_PRIVACY\"),\n disableSortBy: true,\n accessor: (row) => {\n return GetCell(`${row?.dataViewedBy}`);\n },\n },\n {\n Header: t(\"AUDIT_ROLE_LABEL\"),\n disableSortBy: true,\n accessor: (row) => {\n return GetCell(`${row?.roles.slice(0, 3)?.map((e) => e.name)}`);\n },\n },\n ],\n []\n );\n\n return (\n <React.Fragment>\n <div style={{ marginRight: \"-70px\" }}>\n {\" \"}\n <BackButton />{\" \"}\n </div>\n <div style={{ marginTop: \"30px\", marginLeft: \"30px\" }}>\n {\" \"}\n <Header>{t(\"PRIVACY_AUDIT_REPORT\")}</Header>{\" \"}\n </div>\n <SearchForm className=\"audit-card\" onSubmit={onSubmit} handleSubmit={handleSubmit}>\n <SearchFields {...{ register, control, reset, tenantId, t, previousPage }} />\n </SearchForm>\n <div style={{ marginTop: \"240px\", marginLeft: \"-55%\", maxWidth: \"80%\", marginRight: \"52px\" }}>\n {data?.display ? (\n <div style={{ marginTop: \"20x\", width: \"1025px\", marginLeft: \"25px\", backgroundColor: \"white\", height: \"60px\" }}>\n {t(data.display)\n .split(\"\\\\n\")\n .map((text, index) => (\n <p key={index} style={{ textAlign: \"center\" }}>\n {text}\n </p>\n ))}\n </div>\n ) : data !== \"\" ? (\n <div style={{ backgroundColor: \"white\", marginRight: \"-30px\", marginLeft: \"30px\" }}>\n <div className=\"sideContent\" style={{ float: \"right\", padding: \"10px 30px\" }}>\n <DownloadBtn className=\"mrlg cursorPointer\" onClick={() => handleExcelDownload(tabledata)} />\n </div>\n <Table\n t={t}\n data={data}\n totalRecords={count}\n columns={columns}\n getCellProps={(cellInfo) => {\n return {\n style: {\n minWidth: cellInfo.column.Header === t(\"ES_INBOX_APPLICATION_NO\") ? \"240px\" : \"\",\n padding: \"20px 18px\",\n fontSize: \"16px\",\n },\n };\n }}\n onPageSizeChange={onPageSizeChange}\n currentPage={getValues(\"offset\") / getValues(\"limit\")}\n onNextPage={nextPage}\n onPrevPage={previousPage}\n manualPagination={false}\n pageSizeLimit={getValues(\"limit\")}\n onSort={onSort}\n disableSort={false}\n sortParams={[{ id: getValues(\"sortBy\"), desc: getValues(\"sortOrder\") === \"DESC\" ? true : false }]}\n />\n </div>\n ) : (\n <Loader />\n )}\n </div>\n </React.Fragment>\n );\n};\n\nexport default SearchApplication;\n","import React, { useEffect, useState } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport AuditSearchApplication from \"../../components/Search\";\nconst Search = ({ path }) => {\n const { t } = useTranslation();\n const tenantId = Digit.ULBService.getCitizenCurrentTenant()\n const [payload, setPayload] = useState({});\n const convertDateToEpoch = (dateString, dayStartOrEnd = \"dayend\") => {\n //example input format : \"2018-10-02\"\n try {\n const parts = dateString.match(/(\\d{4})-(\\d{1,2})-(\\d{1,2})/);\n const DateObj = new Date(Date.UTC(parts[1], parts[2] - 1, parts[3]));\n DateObj.setMinutes(DateObj.getMinutes() + DateObj.getTimezoneOffset());\n if (dayStartOrEnd === \"dayend\") {\n DateObj.setHours(DateObj.getHours() + 24);\n DateObj.setSeconds(DateObj.getSeconds() - 1);\n }\n return DateObj.getTime();\n } catch (e) {\n return dateString;\n }\n };\n function onSubmit(_data) {\n Digit.SessionStorage.set(\"AUDIT_APPLICATION_DETAIL\", {\n offset: 0,\n limit: 5,\n sortBy: \"commencementDate\",\n sortOrder: \"DESC\",\n });\n const data = {\n ..._data,\n fromDate: convertDateToEpoch(_data?.fromDate),\n toDate: convertDateToEpoch(_data?.toDate),\n };\n \n setPayload(\n Object.keys(data)\n .filter((k) => data[k])\n .reduce((acc, key) => ({ ...acc, [key]: typeof data[key] === \"object\" ? data[key] : data[key] }), {})\n );\n }\n useEffect(() => {\n const storedPayload = Digit.SessionStorage.get(\"AUDIT_APPLICATION_DETAIL\") || {};\n if (storedPayload) {\n const data = {\n ...storedPayload,\n };\n \n setPayload(\n Object.keys(data)\n .filter((k) => data[k])\n .reduce((acc, key) => ({ ...acc, [key]: typeof data[key] === \"object\" ? data[key].code : data[key] }), {})\n );\n }\n }, []);\n const config = {\n enabled: !!(payload && Object.keys(payload).length > 0),\n };\n const newObj = { ...payload };\n \n const {\n isLoading,\n data,\n} = Digit.Hooks.useAudit({\n tenantId,\n filters: {\n ...newObj,\n },\n config,\n });\n\n return (\n <AuditSearchApplication\n t={t}\n tenantId={tenantId}\n onSubmit={onSubmit}\n data={\n !isLoading\n ? data?.ElasticSearchData?.length > 0\n ? data?.ElasticSearchData\n : { display: \"ES_COMMON_NO_DATA\" }\n : \"\"\n }\n count={data?.ElasticSearchData?.length}\n />\n );\n };\n export default Search;","import {\n Card,\n CaseIcon, ComplaintIcon, HelpLineIcon, Loader, MCollectIcon, PTIcon, RupeeSymbol, ServiceCenterIcon, TimerIcon, ValidityTimeIcon,\n WhatsappIconGreen\n} from \"@egovernments/digit-ui-react-components\";\nimport React from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nconst StaticDynamicCard = ({ moduleCode }) => {\n const { t } = useTranslation();\n const tenantId = Digit.ULBService.getCitizenCurrentTenant();\n const { isLoading: isMdmsLoading, data: mdmsData } = Digit.Hooks.useStaticData(Digit.ULBService.getStateId());\n const { isLoading: isSearchLoading, error, data: dynamicData, isSuccess } = Digit.Hooks.useDynamicData({\n moduleCode,\n tenantId: tenantId,\n filters: {},\n t,\n });\n const handleClickOnWhatsApp = (obj) => {\n window.open(obj);\n };\n\n const IconComponent = ({ module, styles }) => {\n switch (module) {\n case \"TL\":\n return <CaseIcon className=\"fill-path-primary-main\" styles={styles} />;\n case \"PT\":\n return <PTIcon className=\"fill-path-primary-main\" styles={styles} />;\n case \"MCOLLECT\":\n return <MCollectIcon className=\"fill-path-primary-main\" styles={styles} />;\n case \"PGR\":\n return <ComplaintIcon className=\"fill-path-primary-main\" styles={styles} />;\n default:\n return <CaseIcon className=\"fill-path-primary-main\" styles={styles} />;\n }\n };\n const mdmsConfigResult = mdmsData?.MdmsRes[\"common-masters\"]?.StaticData[0]?.[`${moduleCode}`];\n\n const StaticDataIconComponentOne = ({ module }) => {\n switch (module) {\n case \"PT\":\n case \"WS\":\n return (\n <span className=\"timerIcon\">\n <TimerIcon />\n </span>\n );\n default:\n return null;\n }\n };\n const StaticDataIconComponentTwo = ({ module }) => {\n switch (module) {\n case \"PT\":\n return (\n <span className=\"rupeeSymbol\">\n <RupeeSymbol />\n </span>\n );\n case \"WS\":\n return (\n <span className=\"timerIcon\">\n <TimerIcon />\n </span>\n );\n default:\n return null;\n }\n };\n const staticContent = (module) => {\n switch (module) {\n case \"TL\":\n case \"PT\":\n case \"MCOLLECT\":\n return {\n staticCommonContent: t(\"COMMON_VALIDITY\"),\n validity: mdmsConfigResult?.validity + (mdmsConfigResult?.validity === \"1\" ? t(\"COMMON_DAY\") : t(\"COMMON_DAYS\")),\n };\n case \"PGR\":\n return {\n staticCommonContent: t(\"ACTION_TEST_COMPLAINT_TYPES\"),\n };\n case \"OBPS\":\n return {\n staticCommonContent: t(\"BUILDING_PLAN_PERMIT_VALIDITY\"),\n validity: mdmsConfigResult?.validity + \" \" + (mdmsConfigResult?.validity === \"1\" ? t(\"COMMON_DAY\") : t(\"COMMON_DAYS\")),\n };\n default:\n return {\n staticCommonContent: \"\",\n };\n }\n };\n\n const staticData = (module) => {\n switch (module) {\n case \"PT\":\n return {\n staticDataOne: mdmsConfigResult?.staticDataOne + \" \" + t(\"COMMON_DAYS\"),\n staticDataOneHeader: t(\"APPLICATION_PROCESSING_TIME\"),\n staticDataTwo: mdmsConfigResult?.staticDataTwo,\n staticDataTwoHeader: t(\"APPLICATION_PROCESSING_FEE\"),\n };\n case \"WS\":\n return {\n staticDataOne: \"\",\n staticDataOneHeader:\n t(\"PAY_WATER_CHARGES_BY\") + \" \" + mdmsConfigResult?.staticDataOne + \" \" + t(\"COMMON_DAYS\") + \" \" + t(\"OF_BILL_GEN_TO_AVOID_LATE_FEE\"),\n staticDataTwo: mdmsConfigResult?.staticDataTwo + \" \" + t(\"COMMON_DAYS\"),\n staticDataTwoHeader: t(\"APPLICATION_PROCESSING_TIME\"),\n };\n default:\n return {};\n }\n };\n\n if (isMdmsLoading || isSearchLoading) {\n return <Loader />;\n }\n return mdmsConfigResult ? (\n <React.Fragment>\n {mdmsConfigResult && mdmsConfigResult?.payViaWhatsApp ? (\n <Card style={{ margin: \"16px\", padding: \"16px\", maxWidth: \"unset\" }}>\n <div className=\"pay-whatsapp-card\" onClick={() => handleClickOnWhatsApp(mdmsConfigResult?.payViaWhatsApp)}>\n <div className=\"pay-whatsapp-text\">{t(\"PAY_VIA_WHATSAPP\")}</div>\n <div className=\"whatsAppIconG\">\n <WhatsappIconGreen />\n </div>\n </div>\n </Card>\n ) : null}\n {mdmsConfigResult && mdmsConfigResult?.helpline ? (\n <Card style={{ margin: \"16px\", padding: \"16px\", maxWidth: \"unset\" }}>\n <div className=\"static-home-Card\">\n <div className=\"static-home-Card-header\">{t(\"CALL_CENTER_HELPLINE\")}</div>\n <div className=\"helplineIcon\">\n <HelpLineIcon />\n </div>\n </div>\n <div className=\"call-center-card-text\">\n {mdmsConfigResult?.helpline?.contactOne ? (\n <div className=\"call-center-card-content\">\n <a href={`tel:${mdmsConfigResult?.helpline?.contactOne}`}>{mdmsConfigResult?.helpline?.contactOne}</a>\n </div>\n ) : null}\n {mdmsConfigResult?.helpline?.contactTwo ? (\n <div className=\"call-center-card-content\">\n <a href={`tel:${mdmsConfigResult?.helpline?.contactTwo}`}>{mdmsConfigResult?.helpline?.contactTwo}</a>\n </div>\n ) : null}\n </div>\n </Card>\n ) : null}\n {mdmsConfigResult && mdmsConfigResult?.serviceCenter ? (\n <Card style={{ margin: \"16px\", padding: \"16px\", maxWidth: \"unset\" }}>\n <div className=\"static-home-Card\">\n <div className=\"static-home-Card-header\">{t(\"CITIZEN_SERVICE_CENTER\")}</div>\n <div className=\"serviceCentrIcon\">\n <ServiceCenterIcon />\n </div>\n </div>\n <div className=\"service-center-details-card\">\n <div className=\"service-center-details-text\">{mdmsConfigResult?.serviceCenter}</div>\n </div>\n {mdmsConfigResult?.viewMapLocation ? (\n <div className=\"link\">\n <a href={mdmsConfigResult?.viewMapLocation}>{t(\"VIEW_ON_MAP\")}</a>\n </div>\n ) : null}\n </Card>\n ) : (\n <div />\n )}\n <Card style={{ margin: \"16px\", padding: \"16px\", maxWidth: \"unset\" }}>\n {error || dynamicData == null || dynamicData?.dynamicDataOne === null ? (\n <div />\n ) : (\n <div className=\"dynamicDataCard\">\n <div className=\"dynamicData\">\n <IconComponent module={moduleCode} styles={{ width: \"24px\", height: \"24px\" }} />\n <span className=\"dynamicData-content\">{dynamicData?.dynamicDataOne}</span>\n </div>\n </div>\n )}\n {error || dynamicData == null || dynamicData?.dynamicDataTwo === null ? (\n <div />\n ) : (\n <div className=\"dynamicDataCard\">\n <div className=\"dynamicData\">\n <IconComponent module={moduleCode} styles={{ width: \"24px\", height: \"24px\" }} />\n <span className=\"dynamicData-content\">{dynamicData?.dynamicDataTwo}</span>\n </div>\n </div>\n )}\n {mdmsConfigResult && mdmsConfigResult?.staticDataOne ? (\n <div className=\"staticDataCard\">\n <div className=\"staticData\">\n <StaticDataIconComponentOne module={moduleCode} />\n <span className=\"static-data-content\">\n <span\n className=\"static-data-content-first\"\n style={{\n marginTop: staticData(moduleCode)?.staticDataOne === \"\" ? \"8px\" : \"unset\",\n }}\n >\n {staticData(moduleCode)?.staticDataOneHeader}\n </span>\n <span className=\"static-data-content-second\">{`${staticData(moduleCode)?.staticDataOne}`}</span>\n </span>\n </div>\n </div>\n ) : (\n <div />\n )}\n {mdmsConfigResult && mdmsConfigResult?.staticDataTwo ? (\n <div className=\"staticDataCard\">\n <div className=\"staticData\">\n <StaticDataIconComponentTwo module={moduleCode} />\n <span className=\"static-data-content\">\n <span className=\"static-data-content-first\">{staticData(moduleCode)?.staticDataTwoHeader}</span>\n <span className=\"static-data-content-second\">{staticData(moduleCode)?.staticDataTwo}</span>\n </span>\n </div>\n </div>\n ) : (\n <div />\n )}\n {mdmsConfigResult && mdmsConfigResult?.validity ? (\n <div className=\"staticDataCard\">\n <div className=\"staticData\">\n <span className=\"validityIcon\">\n <ValidityTimeIcon />\n </span>\n <span className=\"static-data-content\">\n <span className=\"static-data-content-first\">{staticContent(moduleCode)?.staticCommonContent}</span>\n <span className=\"static-data-content-second\">{staticContent(moduleCode)?.validity}</span>\n </span>\n </div>\n </div>\n ) : (\n <div />\n )}\n {error || dynamicData == null || !dynamicData?.staticData || dynamicData?.staticData === null ? (\n <div />\n ) : (\n <div className=\"staticDataCard\">\n <div className=\"staticData\">\n {moduleCode === \"PGR\" ? (\n <IconComponent module={moduleCode} styles={{ width: \"24px\", height: \"24px\", marginLeft: \"13px\", marginTop: \"12px\" }} />\n ) : (\n <span className=\"validityIcon\">\n <ValidityTimeIcon />\n </span>\n )}\n <span className=\"static-data-content\">\n <span className=\"static-data-content-first\">{staticContent(moduleCode)?.staticCommonContent}</span>\n <span className=\"static-data-content-second\">{dynamicData?.staticData}</span>\n </span>\n </div>\n </div>\n )}\n </Card>\n </React.Fragment>\n ) : (\n <React.Fragment />\n );\n};\n\nexport default StaticDynamicCard;\n","import { BackButton, CitizenHomeCard, CitizenInfoLabel } from \"@egovernments/digit-ui-react-components\";\nimport React from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Route, Switch, useHistory, useRouteMatch } from \"react-router-dom\";\nimport ErrorBoundary from \"../../components/ErrorBoundaries\";\nimport ErrorComponent from \"../../components/ErrorComponent\";\nimport { AppHome, processLinkData } from \"../../components/Home\";\nimport TopBarSideBar from \"../../components/TopBarSideBar\";\nimport StaticCitizenSideBar from \"../../components/TopBarSideBar/SideBar/StaticCitizenSideBar\";\nimport FAQsSection from \"./FAQs/FAQs\";\nimport CitizenHome from \"./Home\";\nimport LanguageSelection from \"./Home/LanguageSelection\";\nimport LocationSelection from \"./Home/LocationSelection\";\nimport UserProfile from \"./Home/UserProfile\";\nimport HowItWorks from \"./HowItWorks/howItWorks\";\nimport Login from \"./Login\";\nimport Search from \"./SearchApp\";\nimport StaticDynamicCard from \"./StaticDynamicComponent/StaticDynamicCard\";\n\nconst sidebarHiddenFor = [\n `${window?.contextPath}/citizen/register/name`,\n `/${window?.contextPath}/citizen/select-language`,\n `/${window?.contextPath}/citizen/select-location`,\n `/${window?.contextPath}/citizen/login`,\n `/${window?.contextPath}/citizen/register/otp`,\n];\n\nconst getTenants = (codes, tenants) => {\n return tenants.filter((tenant) => codes.map((item) => item.code).includes(tenant.code));\n};\n\nconst Home = ({\n stateInfo,\n userDetails,\n CITIZEN,\n cityDetails,\n mobileView,\n handleUserDropdownSelection,\n logoUrl,\n DSO,\n stateCode,\n modules,\n appTenants,\n sourceUrl,\n pathname,\n initData,\n}) => {\n const { isLoading: islinkDataLoading, data: linkData, isFetched: isLinkDataFetched } = Digit.Hooks.useCustomMDMS(\n Digit.ULBService.getStateId(),\n \"ACCESSCONTROL-ACTIONS-TEST\",\n [\n {\n name: \"actions-test\",\n filter: `[?(@.url == '${window.contextPath}-card')]`,\n },\n ],\n {\n select: (data) => {\n const formattedData = data?.[\"ACCESSCONTROL-ACTIONS-TEST\"]?.[\"actions-test\"]\n ?.filter((el) => el.enabled === true)\n .reduce((a, b) => {\n a[b.parentModule] = a[b.parentModule]?.length > 0 ? [b, ...a[b.parentModule]] : [b];\n return a;\n }, {});\n return formattedData;\n },\n }\n );\n\n const classname = Digit.Hooks.useRouteSubscription(pathname);\n const { t } = useTranslation();\n const { path } = useRouteMatch();\n const history = useHistory();\n const handleClickOnWhatsApp = (obj) => {\n window.open(obj);\n };\n\n const hideSidebar = sidebarHiddenFor.some((e) => window.location.href.includes(e));\n const appRoutes = modules.map(({ code, tenants }, index) => {\n const Module = Digit.ComponentRegistryService.getComponent(`${code}Module`);\n return Module ? (\n <Route key={index} path={`${path}/${code.toLowerCase()}`}>\n <Module stateCode={stateCode} moduleCode={code} userType=\"citizen\" tenants={getTenants(tenants, appTenants)} />\n </Route>\n ) : null;\n });\n\n const ModuleLevelLinkHomePages = modules.map(({ code, bannerImage }, index) => {\n let Links = Digit.ComponentRegistryService.getComponent(`${code}Links`) || (() => <React.Fragment />);\n let mdmsDataObj = isLinkDataFetched ? processLinkData(linkData, code, t) : undefined;\n\n if (mdmsDataObj?.header === \"ACTION_TEST_WS\") {\n mdmsDataObj?.links.sort((a, b) => {\n return b.orderNumber - a.orderNumber;\n });\n }\n return (\n <React.Fragment>\n <Route key={index} path={`${path}/${code.toLowerCase()}-home`}>\n <div className=\"moduleLinkHomePage\">\n <img src={bannerImage || stateInfo?.bannerUrl} alt=\"noimagefound\" />\n <BackButton className=\"moduleLinkHomePageBackButton\" />\n <h1>{t(\"MODULE_\" + code.toUpperCase())}</h1>\n <div className=\"moduleLinkHomePageModuleLinks\">\n {mdmsDataObj && (\n <CitizenHomeCard\n header={t(mdmsDataObj?.header)}\n links={mdmsDataObj?.links}\n Icon={() => <span />}\n Info={\n code === \"OBPS\"\n ? () => (\n <CitizenInfoLabel\n style={{ margin: \"0px\", padding: \"10px\" }}\n info={t(\"CS_FILE_APPLICATION_INFO_LABEL\")}\n text={t(`BPA_CITIZEN_HOME_STAKEHOLDER_INCLUDES_INFO_LABEL`)}\n />\n )\n : null\n }\n isInfo={code === \"OBPS\" ? true : false}\n />\n )}\n {/* <Links key={index} matchPath={`/digit-ui/citizen/${code.toLowerCase()}`} userType={\"citizen\"} /> */}\n </div>\n <StaticDynamicCard moduleCode={code?.toUpperCase()} />\n </div>\n </Route>\n <Route key={\"faq\" + index} path={`${path}/${code.toLowerCase()}-faq`}>\n <FAQsSection module={code?.toUpperCase()} />\n </Route>\n <Route key={\"hiw\" + index} path={`${path}/${code.toLowerCase()}-how-it-works`}>\n <HowItWorks module={code?.toUpperCase()} />\n </Route>\n </React.Fragment>\n );\n });\n\n return (\n <div className={classname}>\n <TopBarSideBar\n t={t}\n stateInfo={stateInfo}\n userDetails={userDetails}\n CITIZEN={CITIZEN}\n cityDetails={cityDetails}\n mobileView={mobileView}\n handleUserDropdownSelection={handleUserDropdownSelection}\n logoUrl={logoUrl}\n showSidebar={true}\n linkData={linkData}\n islinkDataLoading={islinkDataLoading}\n />\n\n <div className={`main center-container citizen-home-container mb-25`}>\n {hideSidebar ? null : (\n <div className=\"SideBarStatic\">\n <StaticCitizenSideBar linkData={linkData} islinkDataLoading={islinkDataLoading} />\n </div>\n )}\n\n <Switch>\n <Route exact path={path}>\n <CitizenHome />\n </Route>\n\n <Route exact path={`${path}/select-language`}>\n <LanguageSelection />\n </Route>\n\n <Route exact path={`${path}/select-location`}>\n <LocationSelection />\n </Route>\n <Route path={`${path}/error`}>\n <ErrorComponent\n initData={initData}\n goToHome={() => {\n history.push(`/${window?.contextPath}/citizen`);\n }}\n />\n </Route>\n <Route path={`${path}/all-services`}>\n <AppHome\n userType=\"citizen\"\n modules={modules}\n getCitizenMenu={linkData}\n fetchedCitizen={isLinkDataFetched}\n isLoading={islinkDataLoading}\n />\n </Route>\n\n <Route path={`${path}/login`}>\n <Login stateCode={stateCode} />\n </Route>\n\n <Route path={`${path}/register`}>\n <Login stateCode={stateCode} isUserRegistered={false} />\n </Route>\n\n <Route path={`${path}/user/profile`}>\n <UserProfile stateCode={stateCode} userType={\"citizen\"} cityDetails={cityDetails} />\n </Route>\n\n <Route path={`${path}/Audit`}>\n <Search />\n </Route>\n <ErrorBoundary initData={initData}>\n {appRoutes}\n {ModuleLevelLinkHomePages}\n </ErrorBoundary>\n </Switch>\n </div>\n <div className=\"citizen-home-footer\" style={window.location.href.includes(\"citizen/obps\") ? { zIndex: \"-1\" } : {}}>\n <img\n alt=\"Powered by DIGIT\"\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER\")}\n style={{ height: \"1.2em\", cursor: \"pointer\" }}\n onClick={() => {\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\n }}\n />\n </div>\n </div>\n );\n};\n\nexport default Home;\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n })();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","module.exports = Function.call.bind(Object.prototype.hasOwnProperty);\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n var loggedTypeFailures = {};\n var has = require('./lib/has');\n\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) { /**/ }\n };\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (process.env.NODE_ENV !== 'production') {\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n var err = Error(\n (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +\n 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'\n );\n err.name = 'Invariant Violation';\n throw err;\n }\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n if (error && !(error instanceof Error)) {\n printWarning(\n (componentName || 'React class') + ': type specification of ' +\n location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n 'You may have forgotten to pass an argument to the type checker ' +\n 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n 'shape all require an argument).'\n );\n }\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n printWarning(\n 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n );\n }\n }\n }\n }\n}\n\n/**\n * Resets warning cache when testing.\n *\n * @private\n */\ncheckPropTypes.resetWarningCache = function() {\n if (process.env.NODE_ENV !== 'production') {\n loggedTypeFailures = {};\n }\n}\n\nmodule.exports = checkPropTypes;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactIs = require('react-is');\nvar assign = require('object-assign');\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\nvar has = require('./lib/has');\nvar checkPropTypes = require('./checkPropTypes');\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\nfunction emptyFunctionThatReturnsNull() {\n return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<<anonymous>>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bigint: createPrimitiveTypeChecker('bigint'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n elementType: createElementTypeTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message, data) {\n this.message = message;\n this.data = data && typeof data === 'object' ? data: {};\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n printWarning(\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),\n {expectedType: expectedType}\n );\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!ReactIs.isValidElementType(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n if (process.env.NODE_ENV !== 'production') {\n if (arguments.length > 1) {\n printWarning(\n 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n );\n } else {\n printWarning('Invalid argument supplied to oneOf, expected an array.');\n }\n }\n return emptyFunctionThatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n var type = getPreciseType(value);\n if (type === 'symbol') {\n return String(value);\n }\n return value;\n });\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (has(propValue, key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunctionThatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n printWarning(\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n );\n return emptyFunctionThatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var expectedTypes = [];\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);\n if (checkerResult == null) {\n return null;\n }\n if (checkerResult.data && has(checkerResult.data, 'expectedType')) {\n expectedTypes.push(checkerResult.data.expectedType);\n }\n }\n var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function invalidValidatorError(componentName, location, propFullName, key, type) {\n return new PropTypeError(\n (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'\n );\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (typeof checker !== 'function') {\n return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (has(shapeTypes, key) && typeof checker !== 'function') {\n return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n }\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // falsy value can't be a Symbol\n if (!propValue) {\n return false;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","import React from \"react\";\n\nconst Background = ({ children }) => {\n return <div className=\"banner banner-container\">{children}</div>;\n};\n\nexport default Background;\n","import React from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Loader } from \"@egovernments/digit-ui-react-components\"\n\nconst Header = () => {\n const { data: storeData, isLoading } = Digit.Hooks.useStore.getInitData();\n const { stateInfo } = storeData || {};\n const { t } = useTranslation()\n\n if (isLoading) return <Loader/>;\n\n return (\n <div className=\"bannerHeader\">\n <img className=\"bannerLogo\" src={stateInfo?.logoUrl} />\n <p>{t(`TENANT_TENANTS_${stateInfo?.code.toUpperCase()}`)}</p>\n </div>\n );\n}\n\nexport default Header;","import { BackButton, CardSubHeader, CardText, FormComposer, Toast } from \"@egovernments/digit-ui-react-components\";\nimport PropTypes from \"prop-types\";\nimport React, { useEffect, useState } from \"react\";\nimport { useHistory } from \"react-router-dom\";\nimport Background from \"../../../components/Background\";\nimport Header from \"../../../components/Header\";\nimport SelectOtp from \"../../citizen/Login/SelectOtp\";\n\nconst ChangePasswordComponent = ({ config: propsConfig, t }) => {\n const [user, setUser] = useState(null);\n const { mobile_number: mobileNumber, tenantId } = Digit.Hooks.useQueryParams();\n const history = useHistory();\n const [otp, setOtp] = useState(\"\");\n const [isOtpValid, setIsOtpValid] = useState(true);\n const [showToast, setShowToast] = useState(null);\n const getUserType = () => Digit.UserService.getType();\n useEffect(() => {\n if (!user) {\n Digit.UserService.setType(\"employee\");\n return;\n }\n Digit.UserService.setUser(user);\n const redirectPath = location.state?.from || `/${window?.contextPath}/employee`;\n history.replace(redirectPath);\n }, [user]);\n\n const closeToast = () => {\n setShowToast(null);\n };\n\n const onResendOTP = async () => {\n const requestData = {\n otp: {\n mobileNumber,\n userType: getUserType().toUpperCase(),\n type: \"passwordreset\",\n tenantId,\n },\n };\n\n try {\n await Digit.UserService.sendOtp(requestData, tenantId);\n setShowToast(t(\"ES_OTP_RESEND\"));\n } catch (err) {\n setShowToast(err?.response?.data?.error_description || t(\"ES_INVALID_LOGIN_CREDENTIALS\"));\n }\n setTimeout(closeToast, 5000);\n };\n\n const onChangePassword = async (data) => {\n try {\n if (data.newPassword !== data.confirmPassword) {\n return setShowToast(t(\"ERR_PASSWORD_DO_NOT_MATCH\"));\n }\n const requestData = {\n ...data,\n otpReference: otp,\n tenantId,\n type: getUserType().toUpperCase(),\n };\n\n const response = await Digit.UserService.changePassword(requestData, tenantId);\n navigateToLogin();\n } catch (err) {\n setShowToast(err?.response?.data?.error?.fields?.[0]?.message || t(\"ES_SOMETHING_WRONG\"));\n setTimeout(closeToast, 5000);\n }\n };\n\n const navigateToLogin = () => {\n history.replace(`/${window?.contextPath}/employee/user/login`);\n };\n\n const [username, password, confirmPassword] = propsConfig.inputs;\n const config = [\n {\n body: [\n {\n label: t(username.label),\n type: username.type,\n populators: {\n name: username.name,\n },\n isMandatory: true,\n },\n {\n label: t(password.label),\n type: password.type,\n populators: {\n name: password.name,\n },\n isMandatory: true,\n },\n {\n label: t(confirmPassword.label),\n type: confirmPassword.type,\n populators: {\n name: confirmPassword.name,\n },\n isMandatory: true,\n },\n ],\n },\n ];\n\n return (\n <Background>\n <div className=\"employeeBackbuttonAlign\">\n <BackButton variant=\"white\" style={{ borderBottom: \"none\" }} />\n </div>\n <FormComposer\n onSubmit={onChangePassword}\n noBoxShadow\n inline\n submitInForm\n config={config}\n label={propsConfig.texts.submitButtonLabel}\n cardStyle={{ maxWidth: \"408px\", margin: \"auto\" }}\n className=\"employeeChangePassword\"\n >\n <Header />\n <CardSubHeader style={{ textAlign: \"center\" }}> {propsConfig.texts.header} </CardSubHeader>\n <CardText>\n {`${t(`CS_LOGIN_OTP_TEXT`)} `}\n <b>\n {\" \"}\n {`${t(`+ 91 - `)}`} {mobileNumber}\n </b>\n </CardText>\n <SelectOtp t={t} userType=\"employee\" otp={otp} onOtpChange={setOtp} error={isOtpValid} onResend={onResendOTP} />\n {/* <div>\n <CardLabel style={{ marginBottom: \"8px\" }}>{t(\"CORE_OTP_SENT_MESSAGE\")}</CardLabel>\n <CardLabelDesc style={{ marginBottom: \"0px\" }}> {mobileNumber} </CardLabelDesc>\n <CardLabelDesc style={{ marginBottom: \"8px\" }}> {t(\"CORE_EMPLOYEE_OTP_CHECK_MESSAGE\")}</CardLabelDesc>\n </div>\n <CardLabel style={{ marginBottom: \"8px\" }}>{t(\"CORE_OTP_OTP\")} *</CardLabel>\n <TextInput className=\"field\" name={otpReference} isRequired={true} onChange={updateOtp} type={\"text\"} style={{ marginBottom: \"10px\" }} />\n <div className=\"flex-right\">\n <div className=\"primary-label-btn\" onClick={onResendOTP}>\n {t(\"CORE_OTP_RESEND\")}\n </div>\n </div> */}\n </FormComposer>\n {showToast && <Toast error={true} label={t(showToast)} onClose={closeToast} />}\n <div className=\"EmployeeLoginFooter\">\n <img\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 </Background>\n );\n};\n\nChangePasswordComponent.propTypes = {\n loginParams: PropTypes.any,\n};\n\nChangePasswordComponent.defaultProps = {\n loginParams: null,\n};\n\nexport default ChangePasswordComponent;\n","export const config = [\n {\n texts: {\n header: \"CORE_COMMON_RESET_PASSWORD_LABEL\",\n submitButtonLabel: \"CORE_COMMON_CHANGE_PASSWORD\",\n },\n inputs: [\n {\n label: \"CORE_LOGIN_USERNAME\",\n type: \"text\",\n name: \"userName\",\n error: \"ERR_HRMS_INVALID_USERNAME\",\n },\n {\n label: \"CORE_LOGIN_NEW_PASSWORD\",\n type: \"password\",\n name: \"newPassword\",\n error: \"CORE_COMMON_REQUIRED_ERRMSG\",\n },\n {\n label: \"CORE_LOGIN_CONFIRM_NEW_PASSWORD\",\n type: \"password\",\n name: \"confirmPassword\",\n error: \"CORE_COMMON_REQUIRED_ERRMSG\",\n },\n ],\n },\n];\n","import React, { useMemo } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Route, Switch, useRouteMatch } from \"react-router-dom\";\nimport ChangePasswordComponent from \"./changePassword\";\nimport { config } from \"./config\";\n\nconst EmployeeChangePassword = () => {\n const { t } = useTranslation();\n const { path } = useRouteMatch();\n\n const params = useMemo(() =>\n config.map(\n (step) => {\n const texts = {};\n for (const key in step.texts) {\n texts[key] = t(step.texts[key]);\n }\n return { ...step, texts };\n },\n [config]\n )\n );\n\n return (\n <Switch>\n <Route path={`${path}`} exact>\n <ChangePasswordComponent config={params[0]} t={t} />\n </Route>\n </Switch>\n );\n};\n\nexport default EmployeeChangePassword;\n","export const loginConfig = [\n {\n texts: {\n header: \"CORE_COMMON_FORGOT_PASSWORD_LABEL\",\n description: \"ES_FORGOT_PASSWORD_DESC\",\n submitButtonLabel: \"CORE_COMMON_CONTINUE\",\n },\n inputs: [\n {\n label: \"CORE_COMMON_MOBILE_NUMBER\",\n type: \"text\",\n name: \"mobileNumber\",\n error: \"ERR_HRMS_INVALID_MOBILE_NUMBER\",\n },\n {\n label: \"CORE_COMMON_CITY\",\n type: \"custom\",\n name: \"city\",\n error: \"ERR_HRMS_INVALID_CITY\",\n },\n ],\n },\n];\n","import { BackButton, Dropdown, FormComposer, Loader, Toast } from \"@egovernments/digit-ui-react-components\";\nimport PropTypes from \"prop-types\";\nimport React, { useEffect, useState } from \"react\";\nimport { useHistory } from \"react-router-dom\";\nimport Background from \"../../../components/Background\";\nimport Header from \"../../../components/Header\";\n\nconst ForgotPassword = ({ config: propsConfig, t }) => {\n const { data: cities, isLoading } = Digit.Hooks.useTenants();\n const [user, setUser] = useState(null);\n const history = useHistory();\n const [showToast, setShowToast] = useState(null);\n const getUserType = () => Digit.UserService.getType();\n\n useEffect(() => {\n if (!user) {\n Digit.UserService.setType(\"employee\");\n return;\n }\n Digit.UserService.setUser(user);\n const redirectPath = location.state?.from || `/${window?.contextPath}/employee`;\n history.replace(redirectPath);\n }, [user]);\n\n const closeToast = () => {\n setShowToast(null);\n };\n\n const onForgotPassword = async (data) => {\n if (!data.city) {\n alert(\"Please Select City!\");\n return;\n }\n const requestData = {\n otp: {\n mobileNumber: data.mobileNumber,\n userType: getUserType().toUpperCase(),\n type: \"passwordreset\",\n tenantId: data.city.code,\n },\n };\n try {\n await Digit.UserService.sendOtp(requestData, data.city.code);\n history.push(`/${window?.contextPath}/employee/user/change-password?mobile_number=${data.mobileNumber}&tenantId=${data.city.code}`);\n } catch (err) {\n setShowToast(err?.response?.data?.error?.fields?.[0]?.message || \"Invalid login credentials!\");\n setTimeout(closeToast, 5000);\n }\n };\n\n const navigateToLogin = () => {\n history.replace(`/${window?.contextPath}/employee/login`);\n };\n\n const [userId, city] = propsConfig.inputs;\n const config = [\n {\n body: [\n {\n label: t(userId.label),\n type: userId.type,\n populators: {\n name: userId.name,\n componentInFront: \"+91\",\n },\n isMandatory: true,\n },\n {\n label: t(city.label),\n type: city.type,\n populators: {\n name: city.name,\n customProps: {},\n component: (props, customProps) => (\n <Dropdown\n option={cities}\n optionKey=\"name\"\n id={city.name}\n className=\"login-city-dd\"\n select={(d) => {\n props.onChange(d);\n }}\n {...customProps}\n />\n ),\n },\n isMandatory: true,\n },\n ],\n },\n ];\n\n if (isLoading) {\n return <Loader />;\n }\n\n return (\n <Background>\n <div className=\"employeeBackbuttonAlign\">\n <BackButton variant=\"white\" style={{ borderBottom: \"none\" }} />\n </div>\n <FormComposer\n onSubmit={onForgotPassword}\n noBoxShadow\n inline\n submitInForm\n config={config}\n label={propsConfig.texts.submitButtonLabel}\n secondaryActionLabel={propsConfig.texts.secondaryButtonLabel}\n onSecondayActionClick={navigateToLogin}\n heading={propsConfig.texts.header}\n description={propsConfig.texts.description}\n headingStyle={{ textAlign: \"center\" }}\n cardStyle={{ maxWidth: \"408px\", margin: \"auto\" }}\n className=\"employeeForgotPassword\"\n >\n <Header />\n </FormComposer>\n {showToast && <Toast error={true} label={t(showToast)} onClose={closeToast} />}\n <div className=\"EmployeeLoginFooter\">\n <img\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 </Background>\n );\n};\n\nForgotPassword.propTypes = {\n loginParams: PropTypes.any,\n};\n\nForgotPassword.defaultProps = {\n loginParams: null,\n};\n\nexport default ForgotPassword;\n","import React, { useMemo } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Route, Switch, useRouteMatch } from \"react-router-dom\";\nimport { loginConfig } from \"./config\";\nimport ForgotPasswordComponent from \"./forgotPassword\";\n\nconst EmployeeForgotPassword = () => {\n const { t } = useTranslation();\n const { path } = useRouteMatch();\n\n const params = useMemo(() =>\n loginConfig.map(\n (step) => {\n const texts = {};\n for (const key in step.texts) {\n texts[key] = t(step.texts[key]);\n }\n return { ...step, texts };\n },\n [loginConfig]\n )\n );\n\n return (\n <Switch>\n <Route path={`${path}`} exact>\n <ForgotPasswordComponent config={params[0]} t={t} />\n </Route>\n </Switch>\n );\n};\n\nexport default EmployeeForgotPassword;\n","import React from \"react\";\nimport { Redirect, Route, Switch, useLocation, useRouteMatch } from \"react-router-dom\";\n\nimport ChangePassword from \"../pages/employee/ChangePassword/index\";\nimport ForgotPassword from \"../pages/employee/ForgotPassword/index\";\nimport { AppHome } from \"./Home\";\n// import UserProfile from \"./userProfile\";\n\nconst getTenants = (codes, tenants) => {\n return tenants.filter((tenant) => codes?.map?.((item) => item.code).includes(tenant.code));\n};\n\nexport const AppModules = ({ stateCode, userType, modules, appTenants }) => {\n const ComponentProvider = Digit.Contexts.ComponentProvider;\n const { path } = useRouteMatch();\n const location = useLocation();\n\n const user = Digit.UserService.getUser();\n\n if (!user || !user?.access_token || !user?.info) {\n return <Redirect to={{ pathname: `/${window?.contextPath}/employee/user/login`, state: { from: location.pathname + location.search } }} />;\n }\n\n const appRoutes = modules.map(({ code, tenants }, index) => {\n const Module = Digit.ComponentRegistryService.getComponent(`${code}Module`);\n return Module ? (\n <Route key={index} path={`${path}/${code.toLowerCase()}`}>\n <Module stateCode={stateCode} moduleCode={code} userType={userType} tenants={getTenants(tenants, appTenants)} />\n </Route>\n ) : (\n <Route key={index} path={`${path}/${code.toLowerCase()}`}>\n <Redirect\n to={{ pathname: `/${window?.contextPath}/employee/user/error?type=notfound`, state: { from: location.pathname + location.search } }}\n />\n </Route>\n );\n });\n\n return (\n <div className=\"ground-container\">\n <Switch>\n {appRoutes}\n <Route path={`${path}/login`}>\n <Redirect to={{ pathname: `/${window?.contextPath}/employee/user/login`, state: { from: location.pathname + location.search } }} />\n </Route>\n <Route path={`${path}/forgot-password`}>\n <ForgotPassword />\n </Route>\n <Route path={`${path}/change-password`}>\n <ChangePassword />\n </Route>\n <Route>\n <AppHome userType={userType} modules={modules} />\n </Route>\n {/* <Route path={`${path}/user-profile`}> <UserProfile /></Route> */}\n </Switch>\n </div>\n );\n};\n","import { Card, CustomButton, SubmitBar } from \"@egovernments/digit-ui-react-components\";\nimport React, { useState } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\nimport Background from \"../../../components/Background\";\n\nconst LanguageSelection = () => {\n const { data: storeData, isLoading } = Digit.Hooks.useStore.getInitData();\n const { t } = useTranslation();\n const history = useHistory();\n const { languages, stateInfo } = storeData || {};\n const selectedLanguage = Digit.StoreData.getCurrentLanguage();\n const [selected, setselected] = useState(selectedLanguage);\n const handleChangeLanguage = (language) => {\n setselected(language.value);\n Digit.LocalizationService.changeLanguage(language.value, stateInfo.code);\n };\n\n const handleSubmit = (event) => {\n history.push(`/${window?.contextPath}/employee/user/login`);\n };\n\n if (isLoading) return null;\n\n return (\n <Background>\n <Card className=\"bannerCard removeBottomMargin\">\n <div className=\"bannerHeader\">\n <img className=\"bannerLogo\" src={stateInfo?.logoUrl} alt=\"Digit\" />\n\n <p>{t(`TENANT_TENANTS_${stateInfo?.code.toUpperCase()}`)}</p>\n </div>\n <div className=\"language-selector\" style={{ justifyContent: \"space-around\", marginBottom: \"24px\", padding: \"0 5%\" }}>\n {languages.map((language, index) => (\n <div className=\"language-button-container\" key={index}>\n <CustomButton\n selected={language.value === selected}\n text={language.label}\n onClick={() => handleChangeLanguage(language)}\n ></CustomButton>\n </div>\n ))}\n </div>\n <SubmitBar style={{ width: \"100%\" }} label={t(`CORE_COMMON_CONTINUE`)} onSubmit={handleSubmit} />\n </Card>\n <div className=\"EmployeeLoginFooter\">\n <img\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 </Background>\n );\n};\n\nexport default LanguageSelection;\n","export const loginConfig = [\n {\n texts: {\n header: \"CORE_COMMON_LOGIN\",\n submitButtonLabel: \"CORE_COMMON_CONTINUE\",\n secondaryButtonLabel: \"CORE_COMMON_FORGOT_PASSWORD\",\n },\n inputs: [\n {\n label: \"CORE_LOGIN_USERNAME\",\n type: \"text\",\n name: \"username\",\n error: \"ERR_HRMS_INVALID_USER_ID\",\n },\n {\n label: \"CORE_LOGIN_PASSWORD\",\n type: \"password\",\n name: \"password\",\n error: \"ERR_HRMS_WRONG_PASSWORD\",\n },\n {\n label: \"CORE_COMMON_CITY\",\n type: \"custom\",\n name: \"city\",\n error: \"ERR_HRMS_INVALID_CITY\",\n },\n ],\n },\n];\n","import { BackButton, Dropdown, FormComposer, Loader, Toast } from \"@egovernments/digit-ui-react-components\";\nimport PropTypes from \"prop-types\";\nimport React, { useEffect, useState } from \"react\";\nimport { useHistory } from \"react-router-dom\";\nimport Background from \"../../../components/Background\";\nimport Header from \"../../../components/Header\";\n\n/* set employee details to enable backward compatiable */\nconst setEmployeeDetail = (userObject, token) => {\n let locale = JSON.parse(sessionStorage.getItem(\"Digit.locale\"))?.value || \"en_IN\";\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 }) => {\n const { data: cities, isLoading } = Digit.Hooks.useTenants();\n const { data: storeData, isLoading: isStoreLoading } = Digit.Hooks.useStore.getInitData();\n const { stateInfo } = storeData || {};\n const [user, setUser] = useState(null);\n const [showToast, setShowToast] = useState(null);\n const [disable, setDisable] = useState(false);\n\n const history = useHistory();\n // const getUserType = () => \"EMPLOYEE\" || Digit.UserService.getType();\n\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 incase user has only one role [NATADMIN]*/\n if (user?.info?.roles && user?.info?.roles?.every((e) => e.code === \"NATADMIN\")) {\n redirectPath = `/${window?.contextPath}/employee/dss/landing/NURT_DASHBOARD`;\n }\n /* RAIN-6489 Logic to navigate to National DSS home incase user has only one role [NATADMIN]*/\n if (user?.info?.roles && user?.info?.roles?.every((e) => e.code === \"STADMIN\")) {\n redirectPath = `/${window?.contextPath}/employee/dss/landing/home`;\n }\n\n history.replace(redirectPath);\n }, [user]);\n\n const onLogin = async (data) => {\n if (!data.city) {\n alert(\"Please Select City!\");\n return;\n }\n setDisable(true);\n\n const requestData = {\n ...data,\n userType: \"EMPLOYEE\",\n };\n requestData.tenantId = data.city.code;\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(err?.response?.data?.error_description ||( err?.message==\"ES_ERROR_USER_NOT_PERMITTED\" && t(\"ES_ERROR_USER_NOT_PERMITTED\") )|| t(\"INVALID_LOGIN_CREDENTIALS\"));\n setTimeout(closeToast, 5000);\n }\n setDisable(false);\n };\n\n const closeToast = () => {\n setShowToast(null);\n };\n\n const onForgotPassword = () => {\n history.push(`/${window?.contextPath}/employee/user/forgot-password`);\n };\n\n const [userId, password, city] = propsConfig.inputs;\n const config = [\n {\n body: [\n {\n label: t(userId.label),\n type: userId.type,\n populators: {\n name: userId.name,\n },\n isMandatory: true,\n },\n {\n label: t(password.label),\n type: password.type,\n populators: {\n name: password.name,\n },\n isMandatory: true,\n },\n {\n label: t(city.label),\n type: city.type,\n populators: {\n name: city.name,\n customProps: {},\n component: (props, customProps) => (\n <Dropdown\n option={cities}\n className=\"login-city-dd\"\n optionKey=\"i18nKey\"\n select={(d) => {\n props.onChange(d);\n }}\n t={t}\n {...customProps}\n />\n ),\n },\n isMandatory: true,\n },\n ],\n },\n ];\n\n return isLoading || isStoreLoading ? (\n <Loader />\n ) : (\n <Background>\n <div className=\"employeeBackbuttonAlign\">\n <BackButton variant=\"white\" style={{ borderBottom: \"none\" }} />\n </div>\n\n <FormComposer\n onSubmit={onLogin}\n isDisabled={isDisabled || disable}\n noBoxShadow\n inline\n submitInForm\n config={config}\n label={propsConfig.texts.submitButtonLabel}\n secondaryActionLabel={propsConfig.texts.secondaryButtonLabel}\n onSecondayActionClick={onForgotPassword}\n heading={propsConfig.texts.header}\n headingStyle={{ textAlign: \"center\" }}\n cardStyle={{ margin: \"auto\", minWidth: \"408px\" }}\n className=\"loginFormStyleEmployee\"\n buttonStyle={{ maxWidth: \"100%\", width: \"100%\" }}\n >\n <Header />\n </FormComposer>\n {showToast && <Toast error={true} label={t(showToast)} onClose={closeToast} />}\n <div className=\"employee-login-home-footer\" style={{ backgroundColor: \"unset\" }}>\n <img\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 </Background>\n );\n};\n\nLogin.propTypes = {\n loginParams: PropTypes.any,\n};\n\nLogin.defaultProps = {\n loginParams: null,\n};\n\nexport default Login;\n","import React, { useMemo } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Route, Switch, useRouteMatch } from \"react-router-dom\";\nimport { loginConfig } from \"./config\";\nimport LoginComponent from \"./login\";\n\nconst EmployeeLogin = () => {\n const { t } = useTranslation();\n const { path } = useRouteMatch();\n\n const loginParams = useMemo(() =>\n loginConfig.map(\n (step) => {\n const texts = {};\n for (const key in step.texts) {\n texts[key] = t(step.texts[key]);\n }\n return { ...step, texts };\n },\n [loginConfig]\n )\n );\n\n return (\n <Switch>\n <Route path={`${path}`} exact>\n <LoginComponent config={loginParams[0]} t={t} />\n </Route>\n </Switch>\n );\n};\n\nexport default EmployeeLogin;\n","import React, { useEffect } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Redirect, Route, Switch, useLocation, useRouteMatch, useHistory } from \"react-router-dom\";\nimport { AppModules } from \"../../components/AppModules\";\nimport ErrorBoundary from \"../../components/ErrorBoundaries\";\nimport TopBarSideBar from \"../../components/TopBarSideBar\";\nimport ChangePassword from \"./ChangePassword\";\nimport ForgotPassword from \"./ForgotPassword\";\nimport LanguageSelection from \"./LanguageSelection\";\nimport EmployeeLogin from \"./Login\";\nimport UserProfile from \"../citizen/Home/UserProfile\";\nimport ErrorComponent from \"../../components/ErrorComponent\";\n\nconst userScreensExempted = [\"user/profile\", \"user/error\"];\n\nconst EmployeeApp = ({\n stateInfo,\n userDetails,\n CITIZEN,\n cityDetails,\n mobileView,\n handleUserDropdownSelection,\n logoUrl,\n DSO,\n stateCode,\n modules,\n appTenants,\n sourceUrl,\n pathname,\n initData,\n}) => {\n const history = useHistory();\n const { t } = useTranslation();\n const { path } = useRouteMatch();\n const location = useLocation();\n const showLanguageChange = location?.pathname?.includes(\"language-selection\");\n const isUserProfile = userScreensExempted.some((url) => location?.pathname?.includes(url));\n useEffect(() => {\n Digit.UserService.setType(\"employee\");\n }, []);\n\n return (\n <div className=\"employee\">\n <Switch>\n <Route path={`${path}/user`}>\n {isUserProfile && (\n <TopBarSideBar\n t={t}\n stateInfo={stateInfo}\n userDetails={userDetails}\n CITIZEN={CITIZEN}\n cityDetails={cityDetails}\n mobileView={mobileView}\n handleUserDropdownSelection={handleUserDropdownSelection}\n logoUrl={logoUrl}\n showSidebar={isUserProfile ? true : false}\n showLanguageChange={!showLanguageChange}\n />\n )}\n <div\n className={isUserProfile ? \"grounded-container\" : \"loginContainer\"}\n style={\n isUserProfile\n ? { padding: 0, paddingTop: \"80px\", marginLeft: mobileView ? \"\" : \"64px\" }\n : { \"--banner-url\": `url(${stateInfo?.bannerUrl})`, padding: \"0px\" }\n }\n >\n <Switch>\n <Route path={`${path}/user/login`}>\n <EmployeeLogin />\n </Route>\n <Route path={`${path}/user/forgot-password`}>\n <ForgotPassword />\n </Route>\n <Route path={`${path}/user/change-password`}>\n <ChangePassword />\n </Route>\n <Route path={`${path}/user/profile`}>\n <UserProfile stateCode={stateCode} userType={\"employee\"} cityDetails={cityDetails} />\n </Route>\n <Route path={`${path}/user/error`}>\n <ErrorComponent\n initData={initData}\n goToHome={() => {\n history.push(`/${window?.contextPath}/employee`);\n }}\n />\n </Route>\n <Route path={`${path}/user/language-selection`}>\n <LanguageSelection />\n </Route>\n <Route>\n <Redirect to={`${path}/user/language-selection`} />\n </Route>\n </Switch>\n </div>\n </Route>\n <Route>\n <TopBarSideBar\n t={t}\n stateInfo={stateInfo}\n userDetails={userDetails}\n CITIZEN={CITIZEN}\n cityDetails={cityDetails}\n mobileView={mobileView}\n handleUserDropdownSelection={handleUserDropdownSelection}\n logoUrl={logoUrl}\n modules={modules}\n />\n <div className={`main ${DSO ? \"m-auto\" : \"\"}`}>\n <div className=\"employee-app-wrapper\">\n <ErrorBoundary initData={initData}>\n <AppModules stateCode={stateCode} userType=\"employee\" modules={modules} appTenants={appTenants} />\n </ErrorBoundary>\n </div>\n <div className=\"employee-home-footer\">\n <img\n alt=\"Powered by DIGIT\"\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER\")}\n style={{ height: \"1.1em\", cursor: \"pointer\" }}\n onClick={() => {\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\n }}\n />\n </div>\n </div>\n </Route>\n <Route>\n <Redirect to={`${path}/user/language-selection`} />\n </Route>\n </Switch>\n </div>\n );\n};\n\nexport default EmployeeApp;\n","import React, { useEffect } from \"react\";\nimport { Redirect, Route, Switch, useHistory, useLocation } from \"react-router-dom\";\nimport CitizenApp from \"./pages/citizen\";\nimport EmployeeApp from \"./pages/employee\";\n\nexport const DigitApp = ({ stateCode, modules, appTenants, logoUrl, initData ,defaultLanding=\"citizen\"}) => {\n const history = useHistory();\n const { pathname } = useLocation();\n const innerWidth = window.innerWidth;\n const cityDetails = Digit.ULBService.getCurrentUlb();\n const userDetails = Digit.UserService.getUser();\n const { data: storeData } = Digit.Hooks.useStore.getInitData();\n const { stateInfo } = storeData || {};\n const DSO = Digit.UserService.hasAccess([\"FSM_DSO\"]);\n let CITIZEN = userDetails?.info?.type === \"CITIZEN\" || !window.location.pathname.split(\"/\").includes(\"employee\") ? true : false;\n\n if (window.location.pathname.split(\"/\").includes(\"employee\")) CITIZEN = false;\n\n useEffect(() => {\n if (!pathname?.includes(\"application-details\")) {\n if (!pathname?.includes(\"inbox\")) {\n Digit.SessionStorage.del(\"fsm/inbox/searchParams\");\n }\n if (pathname?.includes(\"search\")) {\n Digit.SessionStorage.del(\"fsm/search/searchParams\");\n }\n }\n if (!pathname?.includes(\"dss\")) {\n Digit.SessionStorage.del(\"DSS_FILTERS\");\n }\n if (pathname?.toString() === `/${window?.contextPath}/employee`) {\n Digit.SessionStorage.del(\"SEARCH_APPLICATION_DETAIL\");\n Digit.SessionStorage.del(\"WS_EDIT_APPLICATION_DETAILS\");\n }\n if (pathname?.toString() === `/${window?.contextPath}/citizen` || pathname?.toString() === `/${window?.contextPath}/employee`) {\n Digit.SessionStorage.del(\"WS_DISCONNECTION\");\n }\n }, [pathname]);\n\n history.listen(() => {\n window?.scrollTo({ top: 0, left: 0, behavior: \"smooth\" });\n });\n\n const handleUserDropdownSelection = (option) => {\n option.func();\n };\n\n const mobileView = innerWidth <= 640;\n let sourceUrl = `${window.location.origin}/citizen`;\n const commonProps = {\n stateInfo,\n userDetails,\n CITIZEN,\n cityDetails,\n mobileView,\n handleUserDropdownSelection,\n logoUrl,\n DSO,\n stateCode,\n modules,\n appTenants,\n sourceUrl,\n pathname,\n initData,\n };\n return (\n <Switch>\n <Route path={`/${window?.contextPath}/employee`}>\n <EmployeeApp {...commonProps} />\n </Route>\n <Route path={`/${window?.contextPath}/citizen`}>\n <CitizenApp {...commonProps} />\n </Route>\n <Route>\n <Redirect to={`/${window?.contextPath}/${defaultLanding}`} />\n </Route>\n </Switch>\n );\n};\n","export const commonReducer = (defaultData) => (state = defaultData, action) => {\n switch (action.type) {\n case \"LANGUAGE_SELECT\":\n return { ...state, selectedLanguage: action.payload };\n default:\n return state;\n }\n};\n","import { applyMiddleware, combineReducers, compose, createStore } from \"redux\";\nimport thunk from \"redux-thunk\";\nimport { commonReducer } from \"./reducers\";\n\nconst getRootReducer = (defaultStore, moduleReducers) =>\n combineReducers({\n common: commonReducer(defaultStore),\n ...moduleReducers,\n });\n\nconst middleware = [thunk];\n\nconst composeEnhancers =\n typeof window === \"object\" && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ ? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({}) : compose;\n\nconst enhancer = composeEnhancers(\n applyMiddleware(...middleware)\n // other store enhancers if any\n);\n\nconst getStore = (defaultStore, moduleReducers = {}) => {\n return createStore(getRootReducer(defaultStore, moduleReducers), enhancer);\n};\nexport default getStore;\n","import { Body, Loader } from \"@egovernments/digit-ui-react-components\";\nimport React from \"react\";\nimport { getI18n } from \"react-i18next\";\nimport { QueryClient, QueryClientProvider } from \"react-query\";\nimport { Provider } from \"react-redux\";\nimport { BrowserRouter as Router } from \"react-router-dom\";\nimport { DigitApp } from \"./App\";\nimport SelectOtp from \"./pages/citizen/Login/SelectOtp\";\n\nimport { useState } from \"react\";\nimport ErrorBoundary from \"./components/ErrorBoundaries\";\nimport getStore from \"./redux/store\";\n\nconst DigitUIWrapper = ({ stateCode, enabledModules, moduleReducers,defaultLanding }) => {\n const { isLoading, data: initData } = Digit.Hooks.useInitStore(stateCode, enabledModules);\n if (isLoading) {\n return <Loader page={true} />;\n }\n\n const i18n = getI18n();\n return (\n <Provider store={getStore(initData, moduleReducers(initData))}>\n <Router>\n <Body>\n <DigitApp\n initData={initData}\n stateCode={stateCode}\n modules={initData?.modules}\n appTenants={initData.tenants}\n logoUrl={initData?.stateInfo?.logoUrl}\n defaultLanding={defaultLanding}\n />\n </Body>\n </Router>\n </Provider>\n );\n};\n\nexport const DigitUI = ({ stateCode, registry, enabledModules, moduleReducers ,defaultLanding}) => {\n const [privacy, setPrivacy] = useState(Digit.Utils.getPrivacyObject() || {});\n const userType = Digit.UserService.getType();\n const queryClient = new QueryClient({\n defaultOptions: {\n queries: {\n staleTime: 15 * 60 * 1000,\n cacheTime: 50 * 60 * 1000,\n retry: false,\n retryDelay: (attemptIndex) => Infinity,\n /*\n enable this to have auto retry incase of failure\n retryDelay: attemptIndex => Math.min(1000 * 3 ** attemptIndex, 60000)\n */\n },\n },\n });\n\n const ComponentProvider = Digit.Contexts.ComponentProvider;\n const PrivacyProvider = Digit.Contexts.PrivacyProvider;\n\n const DSO = Digit.UserService.hasAccess([\"FSM_DSO\"]);\n\n return (\n <div>\n <ErrorBoundary>\n <QueryClientProvider client={queryClient}>\n <ComponentProvider.Provider value={registry}>\n <PrivacyProvider.Provider\n value={{\n privacy: privacy?.[window.location.pathname],\n resetPrivacy: (_data) => {\n Digit.Utils.setPrivacyObject({});\n setPrivacy({});\n },\n getPrivacy: () => {\n const privacyObj = Digit.Utils.getPrivacyObject();\n setPrivacy(privacyObj);\n return privacyObj;\n },\n /* Descoped method to update privacy object */\n updatePrivacyDescoped: (_data) => {\n const privacyObj = Digit.Utils.getAllPrivacyObject();\n const newObj = { ...privacyObj, [window.location.pathname]: _data };\n Digit.Utils.setPrivacyObject({ ...newObj });\n setPrivacy(privacyObj?.[window.location.pathname] || {});\n },\n /**\n * Main Method to update the privacy object anywhere in the application\n *\n * @author jagankumar-egov\n *\n * Feature :: Privacy\n *\n * @example\n * const { privacy , updatePrivacy } = Digit.Hooks.usePrivacyContext();\n */\n updatePrivacy: (uuid, fieldName) => {\n setPrivacy(Digit.Utils.updatePrivacy(uuid, fieldName) || {});\n },\n }}\n >\n <DigitUIWrapper stateCode={stateCode} enabledModules={enabledModules} moduleReducers={moduleReducers} defaultLanding={defaultLanding}/>\n </PrivacyProvider.Provider>\n </ComponentProvider.Provider>\n </QueryClientProvider>\n </ErrorBoundary>\n </div>\n );\n};\n\nconst componentsToRegister = {\n SelectOtp,\n};\n\nexport const initCoreComponents = () => {\n Object.entries(componentsToRegister).forEach(([key, value]) => {\n Digit.ComponentRegistryService.setComponent(key, value);\n });\n};\n"],"names":["ErrorConfig","error","imgUrl","infoMessage","buttonInfo","maintenance","notfound","ErrorComponent","props","Digit","Hooks","useQueryParams","type","config","useTranslation","t","React","goToHome","Redircter","path","UserService","getType","window","contextPath","location","href","includes","process","env","NODE_ENV","ErrorBoundary","state","errorStack","hasError","getDerivedStateFromError","message","stack","componentDidCatch","errorInfo","setState","render","initData","children","Component","processLinkData","newData","code","obj","map","link","i18nKey","newObj","links","reverse","header","Utils","locale","getTransformedLocale","iconName","roleBasedLoginRoutes","role","from","dashoardLink","loginLink","hasAccess","push","iconSelector","PTIcon","WSICon","FSMIcon","MCollectIcon","PGRIcon","TLIcon","OBPSIcon","BillsIcon","CitizenHome","modules","getCitizenMenu","fetchedCitizen","isLoading","paymentModule","filter","moduleArr","moduleArray","Loader","BackButton","mod","index","mdmsDataObj","undefined","length","CitizenHomeCard","ele","sort","x","y","orderNumber","CitizenInfoLabel","margin","padding","EmployeeHome","Card","ComponentRegistryService","getComponent","AppHome","userType","stringReplaceAll","str","searcher","replaceWith","replace","ChangeCity","prop","useState","dropDownData","setDropDownData","selectCityData","setSelectCityData","history","useHistory","selectedCities","handleChangeCity","city","loggedInData","SessionStorage","get","filteredRoles","info","roles","tenantId","value","set","setUser","redirectPath","reload","useEffect","userloggedValues","teantsArray","filteredArray","forEach","unique","item","i","ar","indexOf","uniCode","label","toUpperCase","select","mobileView","color","Dropdown","find","cityValue","ChangeLanguage","isDropdown","dropdown","useStore","getInitData","storeData","data","languages","stateInfo","selectedLanguage","StoreData","getCurrentLanguage","selected","setselected","handleChangeLanguage","language","LocalizationService","changeLanguage","marginBottom","CustomButton","TextToImg","toggleMenu","name","TopBar","toggleSidebar","isSidebarOpen","handleLogout","userDetails","CITIZEN","cityDetails","userOptions","handleUserDropdownSelection","logoUrl","showLanguageChange","profilePic","setProfilePic","tenant","ULBService","getCurrentTenantId","uuid","userSearch","usersResponse","user","thumbs","photo","split","at","CitizenHomePageTenantId","getCitizenCurrentTenant","useLocation","pathname","conditionsToDisableNotificationCountTrigger","getUser","useNotificationCount","enabled","unreadNotificationCount","unreadCount","notificationCountLoaded","isSuccess","updateSidebar","clikOusideFired","onNotificationIconClick","urlsToDisableNotificationIcon","access_token","TopBarComponent","logoUrlWhite","loggedin","Hamburger","logoId","statelogo","display","alignItems","justifyContent","width","ulbGrade","fontSize","right","overflow","userInfo","height","borderRadius","SideBarMenu","closeSidebar","redirectToLoginPage","isEmployee","element","text","icon","populators","onClick","action","id","LogoutIcon","defaultImage","Heading","Close","CloseBtn","isMobileView","CloseSvg","backgroundColor","LogoutDialog","onSelect","onCancel","onDismiss","mobileDeviceWidth","innerWidth","setIsMobileView","onResize","addEventListener","Modal","maxHeight","position","top","left","transform","flex","bottom","CardText","paddingTop","marginLeft","marginRight","Profile","stateName","mobileNumber","emailId","IconsObject","CommonPTIcon","propertyIcon","PropertyHouse","CaseIcon","WSIcon","CollectionIcon","BirthIcon","DeathIcon","FirenocIcon","HomeIcon","EditPencilIcon","Phone","StaticCitizenSideBar","linkData","islinkDataLoading","isFetched","isMobile","browser","showDialog","setShowDialog","handleOnSubmit","logout","handleOnCancel","showProfilePage","menuItems","MenuItem","leftIconArray","leftIcon","itemComponent","Item","Link","profileItem","marginTop","tenants","contactNumber","Object","keys","localeCompare","key","sidebar","splice","sidebarURL","pointerzevents","flexDirection","zIndex","objectFit","objectPosition","PoweredBy","globalConfigs","getConfig","cursor","open","focus","CitizenSideBar","isOpen","onLogout","search","setSearch","useAccessControl","redirectUrl","configEmployeeSideBar","actions","e","url","displayName","toLowerCase","getSingleDisplayName","getParentDisplayName","navigationURL","moduleName","ob","indx","findIndex","a","home","comp","part","b","c1","c2","concat","NavBar","SubMenu","subnav","setSubnav","showSubnav","announcement","ComplaintIcon","business","BPAHomeIcon","store","assignment","receipt","ReceiptIcon","PersonIcon","description","DocumentIconSolid","DropIcon","CollectionsBookmarIcons","FinanceChartIcon","edcr","collections","iconArr","IconComp","require","getModuleName","appendTranslate","trimModuleName","substring","getOrigin","origin","console","log","some","ArrowVectorDown","ArrowForward","getChildName","EmployeeSideBar","sidebarRef","useRef","current","style","collapseNav","expandNav","querySelectorAll","res","splitKeyValue","homeURL","unshift","res1","renderSearch","SearchIcon","target","SideBar","TopBarSideBar","showSidebar","userProfile","func","FaqComponent","question","answer","lastIndex","toggleOpen","float","FAQsSection","module","useGetFAQsJSON","getStateId","moduleFaqs","MdmsRes","faqs","Fragment","Header","faq","Home","uiHomePage","useEvents","variant","EventsData","EventsDataLoading","appBannerWebObj","appBannerDesktop","appBannerMobObj","appBannerMobile","citizenServicesObj","citizenServicesCard","infoAndUpdatesObj","informationAndUpdatesCard","whatsAppBannerWebObj","whatsAppBannerDesktop","whatsAppBannerMobObj","whatsAppBannerMobile","whatsNewSectionObj","whatsNewSection","redirectURL","handleClickOnWhatsAppBanner","navigationUrl","allCitizenServicesProps","headerLabel","sideOption","options","Icon","styles","flexWrap","allInfoAndUpdatesProps","Calender","DocumentIcon","bannerUrl","CardBasedOptions","WhatsNewCard","LanguageSelection","texts","useMemo","submitBarLabel","RadioButtonProps","optionsKey","additionalWrapperClass","selectedOption","onSubmit","PageBasedInput","CardHeader","RadioButtons","LocationSelection","useTenants","cities","selectedCity","setSelectedCity","showError","setShowError","selectCity","redirectBackTo","SearchOnRadioButtons","CardLabelError","_Pact","prototype","then","onFulfilled","onRejected","result","s","callback","_settle","v","o","_this","pact","bind","observer","_isSettledPact","thenable","_forTo","array","body","check","reject","_cycle","_iteratorSymbol","Symbol","iterator","_forOf","step","next","done","return","_fixup","TypeError","values","_asyncIteratorSymbol","asyncIterator","_catch","recover","_finallyRethrows","finalizer","UploadDrawer","closeDrawer","removeProfilePic","showToast","uploadedFile","setUploadedFile","file","setFile","setError","selectfile","files","removeimg","onOverlayBodyClick","size","UploadServices","Filestorage","response","fileStoreId","gap","GalleryIcon","RemoveIcon","UserProfile","stateCode","stateId","setUserDetails","setName","email","setEmail","gender","setGender","permanentCity","setCity","setMobileNo","profileImg","setProfileImg","openUploadSlide","setOpenUploadSide","changepassword","setChangepassword","currentPassword","setCurrentPassword","newPassword","setNewPassword","confirmPassword","setConfirmPassword","toast","setToast","loading","setLoading","windowWidth","setWindowWidth","errors","setErrors","getUserInfo","removeEventListener","validation","editScreen","onClickAddPic","TogleforPassword","setGenderName","closeFileUploadDrawer","setUserName","RegExp","test","userName","setUserEmailAddress","emailAddress","setUserMobileNumber","setUserCurrentPassword","setUserNewPassword","setUserConfirmPassword","duration","setTimeout","updateProfile","requestData","JSON","stringify","updateUser","responseInfo","status","existingPassword","username","changePassword","changePasswordResponseInfo","Errors","errorObj","parse","menu","useGenderMDMS","Menu","genderDetails","setFileStoreId","thumbnails","getThumbnails","ids","Filefetch","fileStoreIds","images","getFileUrl","BreadCrumb","content","show","boxShadow","background","maxWidth","border","CameraIcon","paddingBottom","LabelFieldPair","CardLabel","TextInput","isRequired","pattern","title","borderBottom","MobileNumber","required","Toast","HowItWorks","videoPlay","setVideoPlay","vidSrc","setVidSrc","ViDSvg","onClickVideo","vidObj","onClose","useGetHowItWorksJSON","mdmsConfigResult","howItWorks","videosJson","videos","PDFSvg","pdfHeader","pdfDesc","DownloadImgIcon","loginSteps","cardText","nextText","inputs","minLength","maxLength","SelectMobileNumber","showRegisterLink","onMobileChange","canSubmit","FormStep","SelectName","isDisabled","useInterval","delay","savedCallback","tick","timer","setInterval","clearInterval","SelectOtp","otp","onOtpChange","onResend","timeLeft","setTimeLeft","handleResendOtp","OTPInput","TYPE_REGISTER","TYPE_LOGIN","DEFAULT_REDIRECT_URL","setCitizenDetail","userObject","token","sessionStorage","getItem","localStorage","setItem","getFromLocation","searchParams","Login","isUserRegistered","useRouteMatch","isOtpValid","setIsOtpValid","params","setParmas","errorTO","setErrorTO","canSubmitName","setCanSubmitName","canSubmitOtp","setCanSubmitOtp","canSubmitNo","setCanSubmitNo","errorTimeout","clearTimeout","stepItems","getUserType","handleOtpChange","handleMobileChange","event","selectMobileNumber","sendOtp","err","selectName","selectOtp","password","authenticate","ResponseInfo","UserRequest","tokens","roleInfo","userRole","otpReference","registerUser","resendOtp","Switch","AppContainer","Route","SearchFields","control","reset","SearchField","DatePicker","onChange","SubmitBar","MobileSearchApplication","Controller","register","previousPage","handleSubmit","activateModal","payload","tabledata","settabledata","DownloadBtn","DownloadBtnCommon","handleExcelDownload","tabData","Download","Excel","returnObject","convertEpochToDate","timestamp","convertEpochToTimeInHours","dataView","dataViewedBy","join","dateEpoch","dateFromApi","Date","month","getMonth","day","getDate","year","getFullYear","hour","getHours","min","getMinutes","period","useReducer","currentlyActiveMobileModal","setActiveMobileModal","closeMobilePopupModal","MobilePopUpCloseButton","searchFormFieldsComponentProps","MobileComponentDirectory","SearchForm","SearchFormFields","CurrentMobileModalComponent","useCallback","propsMobileInboxCards","slice","SearchAction","PopUp","DetailsCard","SearchApplication","count","initialValues","offset","limit","sortOrder","useForm","defaultValues","setValue","getValues","onSort","args","desc","onPageSizeChange","Number","nextPage","GetCell","columns","disableSortBy","accessor","row","textAlign","Table","cellInfo","minWidth","column","Search","setPayload","convertDateToEpoch","dateString","dayStartOrEnd","parts","match","DateObj","UTC","setMinutes","getTimezoneOffset","setHours","setSeconds","getSeconds","getTime","_data","sortBy","fromDate","toDate","k","reduce","acc","storedPayload","useAudit","filters","AuditSearchApplication","ElasticSearchData","StaticDynamicCard","moduleCode","useStaticData","isMdmsLoading","mdmsData","useDynamicData","isSearchLoading","dynamicData","handleClickOnWhatsApp","IconComponent","StaticData","StaticDataIconComponentOne","TimerIcon","StaticDataIconComponentTwo","RupeeSymbol","staticContent","staticCommonContent","validity","staticData","staticDataOne","staticDataOneHeader","staticDataTwo","staticDataTwoHeader","payViaWhatsApp","WhatsappIconGreen","helpline","HelpLineIcon","contactOne","contactTwo","serviceCenter","ServiceCenterIcon","viewMapLocation","dynamicDataOne","dynamicDataTwo","ValidityTimeIcon","sidebarHiddenFor","_window","getTenants","codes","DSO","appTenants","sourceUrl","useCustomMDMS","formattedData","el","parentModule","isLinkDataFetched","classname","useRouteSubscription","hideSidebar","appRoutes","Module","ModuleLevelLinkHomePages","bannerImage","Links","for","c","d","f","g","h","l","m","n","p","q","r","w","z","u","$$typeof","A","hasSymbol","REACT_ELEMENT_TYPE","REACT_PORTAL_TYPE","REACT_FRAGMENT_TYPE","REACT_STRICT_MODE_TYPE","REACT_PROFILER_TYPE","REACT_PROVIDER_TYPE","REACT_CONTEXT_TYPE","REACT_ASYNC_MODE_TYPE","REACT_CONCURRENT_MODE_TYPE","REACT_FORWARD_REF_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_MEMO_TYPE","REACT_LAZY_TYPE","REACT_BLOCK_TYPE","REACT_FUNDAMENTAL_TYPE","REACT_RESPONDER_TYPE","REACT_SCOPE_TYPE","isValidElementType","typeOf","object","$$typeofType","AsyncMode","ConcurrentMode","ContextConsumer","ContextProvider","Element","ForwardRef","Lazy","Memo","Portal","Profiler","StrictMode","Suspense","hasWarnedAboutDeprecatedIsAsyncMode","isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isMemo","isPortal","isProfiler","isStrictMode","isSuspense","exports","require$$0","require$$1","getOwnPropertySymbols","hasOwnProperty","propIsEnumerable","propertyIsEnumerable","toObject","val","shouldUseNative","assign","test1","String","getOwnPropertyNames","test2","fromCharCode","order2","test3","letter","source","to","symbols","arguments","call","ReactPropTypesSecret","Function","printWarning","loggedTypeFailures","has","Error","checkPropTypes","typeSpecs","componentName","getStack","typeSpecName","ex","resetWarningCache","emptyFunctionThatReturnsNull","isValidElement","throwOnDirectAccess","ITERATOR_SYMBOL","FAUX_ITERATOR_SYMBOL","getIteratorFn","maybeIterable","iteratorFn","ANONYMOUS","ReactPropTypes","createPrimitiveTypeChecker","bigint","bool","number","string","symbol","any","createAnyTypeChecker","arrayOf","createArrayOfTypeChecker","createElementTypeChecker","elementType","createElementTypeTypeChecker","instanceOf","createInstanceTypeChecker","node","createNodeChecker","objectOf","createObjectOfTypeChecker","oneOf","createEnumTypeChecker","oneOfType","createUnionTypeChecker","shape","createShapeTypeChecker","exact","createStrictShapeTypeChecker","is","PropTypeError","createChainableTypeChecker","validate","manualPropTypeCallCache","manualPropTypeWarningCount","checkType","propName","propFullName","secret","cacheKey","chainedCheckType","expectedType","propValue","propType","getPropType","preciseType","getPreciseType","typeChecker","Array","isArray","ReactIs","expectedClass","expectedClassName","actualClassName","getClassName","expectedValues","valuesString","replacer","arrayOfTypeCheckers","checker","getPostfixForTypeWarning","expectedTypes","checkerResult","expectedTypesMessage","isNode","invalidValidatorError","shapeTypes","allKeys","every","entries","entry","isSymbol","constructor","PropTypes","emptyFunction","emptyFunctionWithReset","shim","getShim","require$$2","Background","ChangePasswordComponent","propsConfig","mobile_number","setOtp","setShowToast","setType","closeToast","onResendOTP","error_description","onChangePassword","navigateToLogin","fields","isMandatory","FormComposer","submitButtonLabel","CardSubHeader","propTypes","loginParams","defaultProps","EmployeeChangePassword","loginConfig","ForgotPassword","onForgotPassword","alert","userId","componentInFront","customProps","component","secondaryButtonLabel","EmployeeForgotPassword","ForgotPasswordComponent","AppModules","ComponentProvider","Contexts","Redirect","ChangePassword","setEmployeeDetail","isStoreLoading","disable","setDisable","decodeURIComponent","onLogin","EmployeeLogin","LoginComponent","userScreensExempted","EmployeeApp","isUserProfile","DigitApp","defaultLanding","getCurrentUlb","del","toString","listen","scrollTo","behavior","option","commonProps","CitizenApp","commonReducer","defaultData","getRootReducer","defaultStore","moduleReducers","combineReducers","common","middleware","thunk","composeEnhancers","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","compose","enhancer","applyMiddleware","getStore","createStore","DigitUIWrapper","enabledModules","useInitStore","i18n","getI18n","Provider","Router","Body","DigitUI","registry","getPrivacyObject","privacy","setPrivacy","queryClient","QueryClient","defaultOptions","queries","staleTime","cacheTime","retry","retryDelay","attemptIndex","Infinity","PrivacyProvider","QueryClientProvider","resetPrivacy","setPrivacyObject","getPrivacy","privacyObj","updatePrivacyDescoped","getAllPrivacyObject","updatePrivacy","fieldName","componentsToRegister","initCoreComponents","setComponent"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}