@egovernments/digit-ui-module-core 1.5.4-alpha.3 → 1.5.4-alpha.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +1 -1
- package/dist/index.modern.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/components/Home.js","../../../../node_modules/babel-plugin-transform-async-to-promises/helpers.mjs","../src/pages/citizen/Login/config.js","../src/pages/citizen/Login/SelectMobileNumber.js","../src/hooks/useInterval.js","../src/pages/citizen/Login/SelectOtp.js","../src/pages/citizen/Login/SelectName.js","../src/pages/citizen/Login/index.js","../src/pages/employee/Login/config.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/Login/login.js","../src/pages/employee/Login/index.js","../src/pages/employee/ChangePassword/config.js","../src/pages/employee/ChangePassword/changePassword.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/pages/employee/LanguageSelection/index.js","../src/components/AppModules.js","../src/components/ErrorComponent.js","../src/components/ErrorBoundaries.js","../src/components/ChangeCity.js","../src/components/ChangeLanguage.js","../src/components/TopBarSideBar/TopBar.js","../src/config/sidebar-menu.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/Home/ImageUpload/UploadDrawer.js","../src/pages/citizen/Home/UserProfile.js","../src/pages/employee/index.js","../src/pages/citizen/Home/index.js","../src/pages/citizen/Home/LanguageSelection.js","../src/pages/citizen/Home/LocationSelection.js","../src/pages/citizen/FAQs/FaqComponent.js","../src/pages/citizen/FAQs/FAQs.js","../src/pages/citizen/HowItWorks/howItWorks.js","../src/pages/citizen/StaticDynamicComponent/StaticDynamicCard.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/index.js","../src/App.js","../src/redux/reducers/index.js","../src/redux/store.js","../src/Module.js"],"sourcesContent":["import {\r\n BackButton,\r\n BillsIcon,\r\n CitizenHomeCard,\r\n CitizenInfoLabel,\r\n FSMIcon,\r\n Loader,\r\n MCollectIcon,\r\n OBPSIcon,\r\n PGRIcon,\r\n PTIcon,\r\n TLIcon,\r\n WSICon,\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport React from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\n/* \r\nFeature :: Citizen All service screen cards\r\n*/\r\nexport const processLinkData = (newData, code, t) => {\r\n const obj = newData?.[`${code}`];\r\n if (obj) {\r\n obj.map((link) => {\r\n (link.link = link[\"navigationURL\"]), (link.i18nKey = t(link[\"name\"]));\r\n });\r\n }\r\n const newObj = {\r\n links: obj?.reverse(),\r\n header: Digit.Utils.locale.getTransformedLocale(`ACTION_TEST_${code}`),\r\n iconName: `CITIZEN_${code}_ICON`,\r\n };\r\n if (code === \"FSM\") {\r\n const roleBasedLoginRoutes = [\r\n {\r\n role: \"FSM_DSO\",\r\n from: `/${window?.contextPath}/citizen/fsm/dso-dashboard`,\r\n dashoardLink: \"CS_LINK_DSO_DASHBOARD\",\r\n loginLink: \"CS_LINK_LOGIN_DSO\",\r\n },\r\n ];\r\n //RAIN-7297\r\n roleBasedLoginRoutes.map(({ role, from, loginLink, dashoardLink }) => {\r\n if (Digit.UserService.hasAccess(role))\r\n newObj?.links?.push({\r\n link: from,\r\n i18nKey: t(dashoardLink),\r\n });\r\n else\r\n newObj?.links?.push({\r\n link: `/${window?.contextPath}/citizen/login`,\r\n state: { role: \"FSM_DSO\", from },\r\n i18nKey: t(loginLink),\r\n });\r\n });\r\n }\r\n\r\n return newObj;\r\n};\r\nconst iconSelector = (code) => {\r\n switch (code) {\r\n case \"PT\":\r\n return <PTIcon className=\"fill-path-primary-main\" />;\r\n case \"WS\":\r\n return <WSICon className=\"fill-path-primary-main\" />;\r\n case \"FSM\":\r\n return <FSMIcon className=\"fill-path-primary-main\" />;\r\n case \"MCollect\":\r\n return <MCollectIcon className=\"fill-path-primary-main\" />;\r\n case \"PGR\":\r\n return <PGRIcon className=\"fill-path-primary-main\" />;\r\n case \"TL\":\r\n return <TLIcon className=\"fill-path-primary-main\" />;\r\n case \"OBPS\":\r\n return <OBPSIcon className=\"fill-path-primary-main\" />;\r\n case \"Bills\":\r\n return <BillsIcon className=\"fill-path-primary-main\" />;\r\n default:\r\n return <PTIcon className=\"fill-path-primary-main\" />;\r\n }\r\n};\r\nconst CitizenHome = ({ modules, getCitizenMenu, fetchedCitizen, isLoading }) => {\r\n const paymentModule = modules.filter(({ code }) => code === \"Payment\")[0];\r\n const moduleArr = modules.filter(({ code }) => code !== \"Payment\");\r\n const moduleArray = [paymentModule, ...moduleArr];\r\n const { t } = useTranslation();\r\n if (isLoading) {\r\n return <Loader />;\r\n }\r\n\r\n return (\r\n <React.Fragment>\r\n <div className=\"citizen-all-services-wrapper\">\r\n <BackButton />\r\n <div className=\"citizenAllServiceGrid\">\r\n {moduleArray\r\n .filter((mod) => mod)\r\n .map(({ code }, index) => {\r\n let mdmsDataObj;\r\n if (fetchedCitizen) mdmsDataObj = fetchedCitizen ? processLinkData(getCitizenMenu, code, t) : undefined;\r\n if (mdmsDataObj?.links?.length > 0) {\r\n return (\r\n <CitizenHomeCard\r\n header={t(mdmsDataObj?.header)}\r\n links={mdmsDataObj?.links?.filter((ele) => ele?.link)?.sort((x, y) => x?.orderNumber - y?.orderNumber)}\r\n Icon={() => iconSelector(code)}\r\n Info={\r\n code === \"OBPS\"\r\n ? () => (\r\n <CitizenInfoLabel\r\n style={{ margin: \"0px\", padding: \"10px\" }}\r\n info={t(\"CS_FILE_APPLICATION_INFO_LABEL\")}\r\n text={t(`BPA_CITIZEN_HOME_STAKEHOLDER_INCLUDES_INFO_LABEL`)}\r\n />\r\n )\r\n : null\r\n }\r\n isInfo={code === \"OBPS\" ? true : false}\r\n />\r\n );\r\n } else return <React.Fragment />;\r\n })}\r\n </div>\r\n </div>\r\n </React.Fragment>\r\n );\r\n};\r\n\r\nconst EmployeeHome = ({ modules }) => {\r\n return (\r\n <div className=\"employee-app-container\">\r\n <div className=\"ground-container moduleCardWrapper gridModuleWrapper\">\r\n {modules.map(({ code }, index) => {\r\n const Card = Digit.ComponentRegistryService.getComponent(`${code}Card`) || (() => <React.Fragment />);\r\n return <Card key={index} />;\r\n })}\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport const AppHome = ({ userType, modules, getCitizenMenu, fetchedCitizen, isLoading }) => {\r\n if (userType === \"citizen\") {\r\n return <CitizenHome modules={modules} getCitizenMenu={getCitizenMenu} fetchedCitizen={fetchedCitizen} isLoading={isLoading} />;\r\n }\r\n return <EmployeeHome modules={modules} />;\r\n};\r\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","export const loginSteps = [\r\n {\r\n texts: {\r\n header: \"CS_LOGIN_PROVIDE_MOBILE_NUMBER\",\r\n cardText: \"CS_LOGIN_TEXT\",\r\n nextText: \"CS_COMMONS_NEXT\",\r\n submitBarLabel: \"CS_COMMONS_NEXT\",\r\n },\r\n inputs: [\r\n {\r\n label: \"CORE_COMMON_MOBILE_NUMBER\",\r\n type: \"text\",\r\n name: \"mobileNumber\",\r\n error: \"ERR_HRMS_INVALID_MOB_NO\",\r\n validation: {\r\n required: true,\r\n minLength: 10,\r\n maxLength: 10,\r\n },\r\n },\r\n ],\r\n },\r\n {\r\n texts: {\r\n header: \"CS_LOGIN_OTP\",\r\n cardText: \"CS_LOGIN_OTP_TEXT\",\r\n nextText: \"CS_COMMONS_NEXT\",\r\n submitBarLabel: \"CS_COMMONS_NEXT\",\r\n },\r\n },\r\n {\r\n texts: {\r\n header: \"CS_LOGIN_PROVIDE_NAME\",\r\n cardText: \"CS_LOGIN_NAME_TEXT\",\r\n nextText: \"CS_COMMONS_NEXT\",\r\n submitBarLabel: \"CS_COMMONS_NEXT\",\r\n },\r\n inputs: [\r\n {\r\n label: \"CORE_COMMON_NAME\",\r\n type: \"text\",\r\n name: \"name\",\r\n error: \"CORE_COMMON_NAME_VALIDMSG\",\r\n validation: {\r\n required: true,\r\n minLength: 1,\r\n pattern: /^[^{0-9}^\\$\\\"<>?\\\\\\\\~!@#$%^()+={}\\[\\]*,/_:;“”‘’]{1,50}$/i\r\n },\r\n },\r\n ],\r\n },\r\n];\r\n","import React from \"react\";\r\nimport { CardText, FormStep } from \"@egovernments/digit-ui-react-components\";\r\nimport { Link } from \"react-router-dom\";\r\n\r\nconst SelectMobileNumber = ({ t, onSelect, showRegisterLink, mobileNumber, onMobileChange, config, canSubmit }) => {\r\n return (\r\n <FormStep\r\n isDisabled={!(mobileNumber.length === 10 && canSubmit)}\r\n onSelect={onSelect}\r\n config={config}\r\n t={t}\r\n componentInFront=\"+91\"\r\n onChange={onMobileChange}\r\n value={mobileNumber}\r\n ></FormStep>\r\n );\r\n};\r\n\r\nexport default SelectMobileNumber;\r\n","import React, { useEffect, useRef } from \"react\";\r\n\r\nfunction useInterval(callback, delay) {\r\n const savedCallback = useRef();\r\n useEffect(() => {\r\n savedCallback.current = callback;\r\n }, [callback]);\r\n\r\n useEffect(() => {\r\n function tick() {\r\n savedCallback.current();\r\n }\r\n if (delay !== null) {\r\n const timer = setInterval(tick, delay);\r\n return () => clearInterval(timer);\r\n }\r\n }, [delay]);\r\n}\r\n\r\nexport default useInterval;\r\n","import React, { useState, Fragment } from \"react\";\r\nimport { ButtonSelector, CardText, FormStep, LinkButton, OTPInput, CardLabelError } from \"@egovernments/digit-ui-react-components\";\r\nimport useInterval from \"../../../hooks/useInterval\";\r\n\r\nconst SelectOtp = ({ config, otp, onOtpChange, onResend, onSelect, t, error, userType = \"citizen\", canSubmit }) => {\r\n const [timeLeft, setTimeLeft] = useState(30);\r\n\r\n useInterval(\r\n () => {\r\n setTimeLeft(timeLeft - 1);\r\n },\r\n timeLeft > 0 ? 1000 : null\r\n );\r\n\r\n const handleResendOtp = () => {\r\n onResend();\r\n setTimeLeft(2);\r\n };\r\n\r\n if (userType === \"employee\") {\r\n return (\r\n <Fragment>\r\n <OTPInput length={6} onChange={onOtpChange} value={otp} />\r\n {timeLeft > 0 ? (\r\n <CardText>{`${t(\"CS_RESEND_ANOTHER_OTP\")} ${timeLeft} ${t(\"CS_RESEND_SECONDS\")}`}</CardText>\r\n ) : (\r\n <p className=\"card-text-button\" onClick={handleResendOtp}>\r\n {t(\"CS_RESEND_OTP\")}\r\n </p>\r\n )}\r\n {!error && <CardLabelError>{t(\"CS_INVALID_OTP\")}</CardLabelError>}\r\n </Fragment>\r\n );\r\n }\r\n\r\n return (\r\n <FormStep onSelect={onSelect} config={config} t={t} isDisabled={!(otp?.length === 6 && canSubmit)}>\r\n <OTPInput length={6} onChange={onOtpChange} value={otp} />\r\n {timeLeft > 0 ? (\r\n <CardText>{`${t(\"CS_RESEND_ANOTHER_OTP\")} ${timeLeft} ${t(\"CS_RESEND_SECONDS\")}`}</CardText>\r\n ) : (\r\n <p className=\"card-text-button\" onClick={handleResendOtp}>\r\n {t(\"CS_RESEND_OTP\")}\r\n </p>\r\n )}\r\n {!error && <CardLabelError>{t(\"CS_INVALID_OTP\")}</CardLabelError>}\r\n </FormStep>\r\n );\r\n};\r\n\r\nexport default SelectOtp;\r\n","import React from \"react\";\r\nimport { FormStep } from \"@egovernments/digit-ui-react-components\";\r\n\r\nconst SelectName = ({ config, onSelect, t, isDisabled }) => {\r\n return <FormStep config={config} onSelect={onSelect} t={t} isDisabled={isDisabled}></FormStep>;\r\n};\r\n\r\nexport default SelectName;\r\n","import React, { useEffect, useMemo, useState } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { AppContainer, BackButton, Toast } from \"@egovernments/digit-ui-react-components\";\r\nimport { Route, Switch, useHistory, useRouteMatch, useLocation } from \"react-router-dom\";\r\nimport { loginSteps } from \"./config\";\r\nimport SelectMobileNumber from \"./SelectMobileNumber\";\r\nimport SelectOtp from \"./SelectOtp\";\r\nimport SelectName from \"./SelectName\";\r\n\r\nconst TYPE_REGISTER = { type: \"register\" };\r\nconst TYPE_LOGIN = { type: \"login\" };\r\nconst DEFAULT_USER = \"digit-user\";\r\nconst DEFAULT_REDIRECT_URL = `/${window?.contextPath}/citizen`;\r\n\r\n/* set citizen details to enable backward compatiable */\r\nconst setCitizenDetail = (userObject, token, tenantId) => {\r\n let locale = JSON.parse(sessionStorage.getItem(\"Digit.initData\"))?.value?.selectedLanguage;\r\n localStorage.setItem(\"Citizen.tenant-id\", tenantId);\r\n localStorage.setItem(\"tenant-id\", tenantId);\r\n localStorage.setItem(\"citizen.userRequestObject\", JSON.stringify(userObject));\r\n localStorage.setItem(\"locale\", locale);\r\n localStorage.setItem(\"Citizen.locale\", locale);\r\n localStorage.setItem(\"token\", token);\r\n localStorage.setItem(\"Citizen.token\", token);\r\n localStorage.setItem(\"user-info\", JSON.stringify(userObject));\r\n localStorage.setItem(\"Citizen.user-info\", JSON.stringify(userObject));\r\n};\r\n\r\nconst getFromLocation = (state, searchParams) => {\r\n return state?.from || searchParams?.from || DEFAULT_REDIRECT_URL;\r\n};\r\n\r\nconst Login = ({ stateCode, isUserRegistered = true }) => {\r\n const { t } = useTranslation();\r\n const location = useLocation();\r\n const { path, url } = useRouteMatch();\r\n const history = useHistory();\r\n const [user, setUser] = useState(null);\r\n const [error, setError] = useState(null);\r\n const [isOtpValid, setIsOtpValid] = useState(true);\r\n const [tokens, setTokens] = useState(null);\r\n const [params, setParmas] = useState(isUserRegistered ? {} : location?.state?.data);\r\n const [errorTO, setErrorTO] = useState(null);\r\n const searchParams = Digit.Hooks.useQueryParams();\r\n const [canSubmitName, setCanSubmitName] = useState(false);\r\n const [canSubmitOtp, setCanSubmitOtp] = useState(true);\r\n const [canSubmitNo, setCanSubmitNo] = useState(true);\r\n\r\n useEffect(() => {\r\n let errorTimeout;\r\n if (error) {\r\n if (errorTO) {\r\n clearTimeout(errorTO);\r\n setErrorTO(null);\r\n }\r\n errorTimeout = setTimeout(() => {\r\n setError(\"\");\r\n }, 5000);\r\n setErrorTO(errorTimeout);\r\n }\r\n return () => {\r\n errorTimeout && clearTimeout(errorTimeout);\r\n };\r\n }, [error]);\r\n\r\n useEffect(() => {\r\n if (!user) {\r\n return;\r\n }\r\n Digit.SessionStorage.set(\"citizen.userRequestObject\", user);\r\n Digit.UserService.setUser(user);\r\n setCitizenDetail(user?.info, user?.access_token, stateCode);\r\n const redirectPath = location.state?.from || DEFAULT_REDIRECT_URL;\r\n if (!Digit.ULBService.getCitizenCurrentTenant(true)) {\r\n history.replace(`/${window?.contextPath}/citizen/select-location`, {\r\n redirectBackTo: redirectPath,\r\n });\r\n } else {\r\n history.replace(redirectPath);\r\n }\r\n }, [user]);\r\n\r\n const stepItems = useMemo(() =>\r\n loginSteps.map(\r\n (step) => {\r\n const texts = {};\r\n for (const key in step.texts) {\r\n texts[key] = t(step.texts[key]);\r\n }\r\n return { ...step, texts };\r\n },\r\n [loginSteps]\r\n )\r\n );\r\n\r\n const getUserType = () => Digit.UserService.getType();\r\n\r\n const handleOtpChange = (otp) => {\r\n setParmas({ ...params, otp });\r\n };\r\n\r\n const handleMobileChange = (event) => {\r\n const { value } = event.target;\r\n setParmas({ ...params, mobileNumber: value });\r\n };\r\n\r\n const selectMobileNumber = async (mobileNumber) => {\r\n setCanSubmitNo(false);\r\n setParmas({ ...params, ...mobileNumber });\r\n const data = {\r\n ...mobileNumber,\r\n tenantId: stateCode,\r\n userType: getUserType(),\r\n };\r\n if (isUserRegistered) {\r\n const [res, err] = await sendOtp({ otp: { ...data, ...TYPE_LOGIN } });\r\n if (!err) {\r\n setCanSubmitNo(true);\r\n history.replace(`${path}/otp`, { from: getFromLocation(location.state, searchParams), role: location.state?.role });\r\n return;\r\n } else {\r\n setCanSubmitNo(true);\r\n if (!(location.state && location.state.role === \"FSM_DSO\")) {\r\n history.push(`/${window?.contextPath}/citizen/register/name`, { from: getFromLocation(location.state, searchParams), data: data });\r\n }\r\n }\r\n if (location.state?.role) {\r\n setCanSubmitNo(true);\r\n setError(location.state?.role === \"FSM_DSO\" ? t(\"ES_ERROR_DSO_LOGIN\") : \"User not registered.\");\r\n }\r\n } else {\r\n const [res, err] = await sendOtp({ otp: { ...data, ...TYPE_REGISTER } });\r\n if (!err) {\r\n setCanSubmitNo(true);\r\n history.replace(`${path}/otp`, { from: getFromLocation(location.state, searchParams) });\r\n return;\r\n }\r\n setCanSubmitNo(true);\r\n }\r\n };\r\n\r\n const selectName = async (name) => {\r\n const data = {\r\n ...params,\r\n tenantId: stateCode,\r\n userType: getUserType(),\r\n ...name,\r\n };\r\n setParmas({ ...params, ...name });\r\n setCanSubmitName(true);\r\n const [res, err] = await sendOtp({ otp: { ...data, ...TYPE_REGISTER } });\r\n if (res) {\r\n setCanSubmitName(false);\r\n history.replace(`${path}/otp`, { from: getFromLocation(location.state, searchParams) });\r\n } else {\r\n setCanSubmitName(false);\r\n }\r\n };\r\n\r\n const selectOtp = async () => {\r\n try {\r\n setIsOtpValid(true);\r\n setCanSubmitOtp(false);\r\n const { mobileNumber, otp, name } = params;\r\n if (isUserRegistered) {\r\n const requestData = {\r\n username: mobileNumber,\r\n password: otp,\r\n tenantId: stateCode,\r\n userType: getUserType(),\r\n };\r\n const { ResponseInfo, UserRequest: info, ...tokens } = await Digit.UserService.authenticate(requestData);\r\n\r\n if (location.state?.role) {\r\n const roleInfo = info.roles.find((userRole) => userRole.code === location.state.role);\r\n if (!roleInfo || !roleInfo.code) {\r\n setError(t(\"ES_ERROR_USER_NOT_PERMITTED\"));\r\n setTimeout(() => history.replace(DEFAULT_REDIRECT_URL), 5000);\r\n return;\r\n }\r\n }\r\n if (window?.globalConfigs?.getConfig(\"ENABLE_SINGLEINSTANCE\")) {\r\n info.tenantId = Digit.ULBService.getStateId();\r\n }\r\n\r\n setUser({ info, ...tokens });\r\n } else if (!isUserRegistered) {\r\n const requestData = {\r\n name,\r\n username: mobileNumber,\r\n otpReference: otp,\r\n tenantId: stateCode,\r\n };\r\n\r\n const { ResponseInfo, UserRequest: info, ...tokens } = await Digit.UserService.registerUser(requestData, stateCode);\r\n\r\n if (window?.globalConfigs?.getConfig(\"ENABLE_SINGLEINSTANCE\")) {\r\n info.tenantId = Digit.ULBService.getStateId();\r\n }\r\n\r\n setUser({ info, ...tokens });\r\n }\r\n } catch (err) {\r\n setCanSubmitOtp(true);\r\n setIsOtpValid(false);\r\n }\r\n };\r\n\r\n const resendOtp = async () => {\r\n const { mobileNumber } = params;\r\n const data = {\r\n mobileNumber,\r\n tenantId: stateCode,\r\n userType: getUserType(),\r\n };\r\n if (!isUserRegistered) {\r\n const [res, err] = await sendOtp({ otp: { ...data, ...TYPE_REGISTER } });\r\n } else if (isUserRegistered) {\r\n const [res, err] = await sendOtp({ otp: { ...data, ...TYPE_LOGIN } });\r\n }\r\n };\r\n\r\n const sendOtp = async (data) => {\r\n try {\r\n const res = await Digit.UserService.sendOtp(data, stateCode);\r\n return [res, null];\r\n } catch (err) {\r\n return [null, err];\r\n }\r\n };\r\n\r\n return (\r\n <div className=\"citizen-form-wrapper\">\r\n <Switch>\r\n <AppContainer>\r\n <BackButton />\r\n <Route path={`${path}`} exact>\r\n <SelectMobileNumber\r\n onSelect={selectMobileNumber}\r\n config={stepItems[0]}\r\n mobileNumber={params.mobileNumber || \"\"}\r\n onMobileChange={handleMobileChange}\r\n canSubmit={canSubmitNo}\r\n showRegisterLink={isUserRegistered && !location.state?.role}\r\n t={t}\r\n />\r\n </Route>\r\n <Route path={`${path}/otp`}>\r\n <SelectOtp\r\n config={{ ...stepItems[1], texts: { ...stepItems[1].texts, cardText: `${stepItems[1].texts.cardText} ${params.mobileNumber || \"\"}` } }}\r\n onOtpChange={handleOtpChange}\r\n onResend={resendOtp}\r\n onSelect={selectOtp}\r\n otp={params.otp}\r\n error={isOtpValid}\r\n canSubmit={canSubmitOtp}\r\n t={t}\r\n />\r\n </Route>\r\n <Route path={`${path}/name`}>\r\n <SelectName config={stepItems[2]} onSelect={selectName} t={t} isDisabled={canSubmitName} />\r\n </Route>\r\n {error && <Toast error={true} label={error} onClose={() => setError(null)} />}\r\n </AppContainer>\r\n </Switch>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Login;\r\n","export const loginConfig = [\r\n {\r\n texts: {\r\n header: \"CORE_COMMON_LOGIN\",\r\n submitButtonLabel: \"CORE_COMMON_CONTINUE\",\r\n secondaryButtonLabel: \"CORE_COMMON_FORGOT_PASSWORD\",\r\n },\r\n inputs: [\r\n {\r\n label: \"CORE_LOGIN_USERNAME\",\r\n type: \"text\",\r\n name: \"username\",\r\n error: \"ERR_HRMS_INVALID_USER_ID\",\r\n },\r\n {\r\n label: \"CORE_LOGIN_PASSWORD\",\r\n type: \"password\",\r\n name: \"password\",\r\n error: \"ERR_HRMS_WRONG_PASSWORD\",\r\n },\r\n {\r\n label: \"CORE_COMMON_CITY\",\r\n type: \"custom\",\r\n name: \"city\",\r\n error: \"ERR_HRMS_INVALID_CITY\",\r\n },\r\n ],\r\n },\r\n];\r\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\";\r\n\r\nconst Background = ({ children }) => {\r\n return <div className=\"banner banner-container\">{children}</div>;\r\n};\r\n\r\nexport default Background;\r\n","import React from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { Loader } from \"@egovernments/digit-ui-react-components\"\r\n\r\nconst Header = () => {\r\n const { data: storeData, isLoading } = Digit.Hooks.useStore.getInitData();\r\n const { stateInfo } = storeData || {};\r\n const { t } = useTranslation()\r\n\r\n if (isLoading) return <Loader/>;\r\n\r\n return (\r\n <div className=\"bannerHeader\">\r\n <img className=\"bannerLogo\" src={stateInfo?.logoUrl} />\r\n <p>{t(`TENANT_TENANTS_${stateInfo?.code.toUpperCase()}`)}</p>\r\n </div>\r\n );\r\n}\r\n\r\nexport default Header;","import { BackButton, Dropdown, FormComposer, Loader, Toast } from \"@egovernments/digit-ui-react-components\";\r\nimport PropTypes from \"prop-types\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport Background from \"../../../components/Background\";\r\nimport Header from \"../../../components/Header\";\r\n\r\n/* set employee details to enable backward compatiable */\r\nconst setEmployeeDetail = (userObject, token) => {\r\n let locale = JSON.parse(sessionStorage.getItem(\"Digit.locale\"))?.value || \"en_IN\";\r\n localStorage.setItem(\"Employee.tenant-id\", userObject?.tenantId);\r\n localStorage.setItem(\"tenant-id\", userObject?.tenantId);\r\n localStorage.setItem(\"citizen.userRequestObject\", JSON.stringify(userObject));\r\n localStorage.setItem(\"locale\", locale);\r\n localStorage.setItem(\"Employee.locale\", locale);\r\n localStorage.setItem(\"token\", token);\r\n localStorage.setItem(\"Employee.token\", token);\r\n localStorage.setItem(\"user-info\", JSON.stringify(userObject));\r\n localStorage.setItem(\"Employee.user-info\", JSON.stringify(userObject));\r\n};\r\n\r\nconst Login = ({ config: propsConfig, t, isDisabled }) => {\r\n const { data: cities, isLoading } = Digit.Hooks.useTenants();\r\n const { data: storeData, isLoading: isStoreLoading } = Digit.Hooks.useStore.getInitData();\r\n const { stateInfo } = storeData || {};\r\n const [user, setUser] = useState(null);\r\n const [showToast, setShowToast] = useState(null);\r\n const [disable, setDisable] = useState(false);\r\n\r\n const history = useHistory();\r\n // const getUserType = () => \"EMPLOYEE\" || Digit.UserService.getType();\r\n\r\n useEffect(() => {\r\n if (!user) {\r\n return;\r\n }\r\n Digit.SessionStorage.set(\"citizen.userRequestObject\", user);\r\n const filteredRoles = user?.info?.roles?.filter((role) => role.tenantId === Digit.SessionStorage.get(\"Employee.tenantId\"));\r\n if (user?.info?.roles?.length > 0) user.info.roles = filteredRoles;\r\n Digit.UserService.setUser(user);\r\n setEmployeeDetail(user?.info, user?.access_token);\r\n let redirectPath = `/${window?.contextPath}/employee`;\r\n\r\n /* logic to redirect back to same screen where we left off */\r\n if (window?.location?.href?.includes(\"from=\")) {\r\n redirectPath = decodeURIComponent(window?.location?.href?.split(\"from=\")?.[1]) || `/${window?.contextPath}/employee`;\r\n }\r\n\r\n /* RAIN-6489 Logic to navigate to National DSS home incase user has only one role [NATADMIN]*/\r\n if (user?.info?.roles && user?.info?.roles?.every((e) => e.code === \"NATADMIN\")) {\r\n redirectPath = `/${window?.contextPath}/employee/dss/landing/NURT_DASHBOARD`;\r\n }\r\n /* RAIN-6489 Logic to navigate to National DSS home incase user has only one role [NATADMIN]*/\r\n if (user?.info?.roles && user?.info?.roles?.every((e) => e.code === \"STADMIN\")) {\r\n redirectPath = `/${window?.contextPath}/employee/dss/landing/home`;\r\n }\r\n\r\n history.replace(redirectPath);\r\n }, [user]);\r\n\r\n const onLogin = async (data) => {\r\n if (!data.city) {\r\n alert(\"Please Select City!\");\r\n return;\r\n }\r\n setDisable(true);\r\n\r\n const requestData = {\r\n ...data,\r\n userType: \"EMPLOYEE\",\r\n };\r\n requestData.tenantId = data.city.code;\r\n delete requestData.city;\r\n try {\r\n const { UserRequest: info, ...tokens } = await Digit.UserService.authenticate(requestData);\r\n Digit.SessionStorage.set(\"Employee.tenantId\", info?.tenantId);\r\n setUser({ info, ...tokens });\r\n } catch (err) {\r\n setShowToast(err?.response?.data?.error_description || \"Invalid login credentials!\");\r\n setTimeout(closeToast, 5000);\r\n }\r\n setDisable(false);\r\n };\r\n\r\n const closeToast = () => {\r\n setShowToast(null);\r\n };\r\n\r\n const onForgotPassword = () => {\r\n history.push(`/${window?.contextPath}/employee/user/forgot-password`);\r\n };\r\n\r\n const [userId, password, city] = propsConfig.inputs;\r\n const config = [\r\n {\r\n body: [\r\n {\r\n label: t(userId.label),\r\n type: userId.type,\r\n populators: {\r\n name: userId.name,\r\n },\r\n isMandatory: true,\r\n },\r\n {\r\n label: t(password.label),\r\n type: password.type,\r\n populators: {\r\n name: password.name,\r\n },\r\n isMandatory: true,\r\n },\r\n {\r\n label: t(city.label),\r\n type: city.type,\r\n populators: {\r\n name: city.name,\r\n customProps: {},\r\n component: (props, customProps) => (\r\n <Dropdown\r\n option={cities}\r\n className=\"login-city-dd\"\r\n optionKey=\"i18nKey\"\r\n select={(d) => {\r\n props.onChange(d);\r\n }}\r\n t={t}\r\n {...customProps}\r\n />\r\n ),\r\n },\r\n isMandatory: true,\r\n },\r\n ],\r\n },\r\n ];\r\n\r\n return isLoading || isStoreLoading ? (\r\n <Loader />\r\n ) : (\r\n <Background>\r\n <div className=\"employeeBackbuttonAlign\">\r\n <BackButton variant=\"white\" style={{ borderBottom: \"none\" }} />\r\n </div>\r\n\r\n <FormComposer\r\n onSubmit={onLogin}\r\n isDisabled={isDisabled || disable}\r\n noBoxShadow\r\n inline\r\n submitInForm\r\n config={config}\r\n label={propsConfig.texts.submitButtonLabel}\r\n secondaryActionLabel={propsConfig.texts.secondaryButtonLabel}\r\n onSecondayActionClick={onForgotPassword}\r\n heading={propsConfig.texts.header}\r\n headingStyle={{ textAlign: \"center\" }}\r\n cardStyle={{ margin: \"auto\", minWidth: \"408px\" }}\r\n className=\"loginFormStyleEmployee\"\r\n buttonStyle={{ maxWidth: \"100%\", width: \"100%\" }}\r\n >\r\n <Header />\r\n </FormComposer>\r\n {showToast && <Toast error={true} label={t(showToast)} onClose={closeToast} />}\r\n <div className=\"employee-login-home-footer\" style={{ backgroundColor: \"unset\" }}>\r\n <img\r\n alt=\"Powered by DIGIT\"\r\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER_BW\")}\r\n style={{ cursor: \"pointer\" }}\r\n onClick={() => {\r\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\r\n }}\r\n />{\" \"}\r\n </div>\r\n </Background>\r\n );\r\n};\r\n\r\nLogin.propTypes = {\r\n loginParams: PropTypes.any,\r\n};\r\n\r\nLogin.defaultProps = {\r\n loginParams: null,\r\n};\r\n\r\nexport default Login;\r\n","import React, { useMemo } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { AppContainer } from \"@egovernments/digit-ui-react-components\";\r\nimport { Route, Switch, useRouteMatch } from \"react-router-dom\";\r\nimport { loginConfig } from \"./config\";\r\nimport LoginComponent from \"./login\";\r\n\r\nconst EmployeeLogin = () => {\r\n const { t } = useTranslation();\r\n const { path } = useRouteMatch();\r\n\r\n const loginParams = useMemo(() =>\r\n loginConfig.map(\r\n (step) => {\r\n const texts = {};\r\n for (const key in step.texts) {\r\n texts[key] = t(step.texts[key]);\r\n }\r\n return { ...step, texts };\r\n },\r\n [loginConfig]\r\n )\r\n );\r\n\r\n return (\r\n <Switch>\r\n <Route path={`${path}`} exact>\r\n <LoginComponent config={loginParams[0]} t={t} />\r\n </Route>\r\n </Switch>\r\n );\r\n};\r\n\r\nexport default EmployeeLogin;\r\n","export const config = [\r\n {\r\n texts: {\r\n header: \"CORE_COMMON_RESET_PASSWORD_LABEL\",\r\n submitButtonLabel: \"CORE_COMMON_CHANGE_PASSWORD\",\r\n },\r\n inputs: [\r\n {\r\n label: \"CORE_LOGIN_USERNAME\",\r\n type: \"text\",\r\n name: \"userName\",\r\n error: \"ERR_HRMS_INVALID_USERNAME\",\r\n },\r\n {\r\n label: \"CORE_LOGIN_NEW_PASSWORD\",\r\n type: \"password\",\r\n name: \"newPassword\",\r\n error: \"CORE_COMMON_REQUIRED_ERRMSG\",\r\n },\r\n {\r\n label: \"CORE_LOGIN_CONFIRM_NEW_PASSWORD\",\r\n type: \"password\",\r\n name: \"confirmPassword\",\r\n error: \"CORE_COMMON_REQUIRED_ERRMSG\",\r\n },\r\n ],\r\n },\r\n];\r\n","import {\r\n BackButton, CardSubHeader, CardText, FormComposer, Toast\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport PropTypes from \"prop-types\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport Background from \"../../../components/Background\";\r\nimport Header from \"../../../components/Header\";\r\nimport SelectOtp from \"../../citizen/Login/SelectOtp\";\r\n\r\nconst ChangePasswordComponent = ({ config: propsConfig, t }) => {\r\n const [user, setUser] = useState(null);\r\n const { mobile_number: mobileNumber, tenantId } = Digit.Hooks.useQueryParams();\r\n const history = useHistory();\r\n const [otp, setOtp] = useState(\"\");\r\n const [isOtpValid, setIsOtpValid] = useState(true);\r\n const [showToast, setShowToast] = useState(null);\r\n const getUserType = () => Digit.UserService.getType();\r\n useEffect(() => {\r\n if (!user) {\r\n Digit.UserService.setType(\"employee\");\r\n return;\r\n }\r\n Digit.UserService.setUser(user);\r\n const redirectPath = location.state?.from || `/${window?.contextPath}/employee`;\r\n history.replace(redirectPath);\r\n }, [user]);\r\n\r\n const closeToast = () => {\r\n setShowToast(null);\r\n };\r\n\r\n const onResendOTP = async () => {\r\n const requestData = {\r\n otp: {\r\n mobileNumber,\r\n userType: getUserType().toUpperCase(),\r\n type: \"passwordreset\",\r\n tenantId,\r\n },\r\n };\r\n\r\n try {\r\n await Digit.UserService.sendOtp(requestData, tenantId);\r\n setShowToast(t(\"ES_OTP_RESEND\"));\r\n } catch (err) {\r\n setShowToast(err?.response?.data?.error_description || t(\"ES_INVALID_LOGIN_CREDENTIALS\"));\r\n }\r\n setTimeout(closeToast, 5000);\r\n };\r\n\r\n const onChangePassword = async (data) => {\r\n try {\r\n if (data.newPassword !== data.confirmPassword) {\r\n return setShowToast(t(\"ERR_PASSWORD_DO_NOT_MATCH\"));\r\n }\r\n const requestData = {\r\n ...data,\r\n otpReference: otp,\r\n tenantId,\r\n type: getUserType().toUpperCase(),\r\n };\r\n\r\n const response = await Digit.UserService.changePassword(requestData, tenantId);\r\n navigateToLogin();\r\n } catch (err) {\r\n setShowToast(err?.response?.data?.error?.fields?.[0]?.message || t(\"ES_SOMETHING_WRONG\"));\r\n setTimeout(closeToast, 5000);\r\n }\r\n };\r\n\r\n const navigateToLogin = () => {\r\n history.replace(`/${window?.contextPath}/employee/user/login`);\r\n };\r\n\r\n const [username, password, confirmPassword] = propsConfig.inputs;\r\n const config = [\r\n {\r\n body: [\r\n {\r\n label: t(username.label),\r\n type: username.type,\r\n populators: {\r\n name: username.name,\r\n },\r\n isMandatory: true,\r\n },\r\n {\r\n label: t(password.label),\r\n type: password.type,\r\n populators: {\r\n name: password.name,\r\n },\r\n isMandatory: true,\r\n },\r\n {\r\n label: t(confirmPassword.label),\r\n type: confirmPassword.type,\r\n populators: {\r\n name: confirmPassword.name,\r\n },\r\n isMandatory: true,\r\n },\r\n ],\r\n },\r\n ];\r\n\r\n return (\r\n <Background>\r\n <div className=\"employeeBackbuttonAlign\">\r\n <BackButton variant=\"white\" style={{ borderBottom: \"none\" }} />\r\n </div>\r\n <FormComposer\r\n onSubmit={onChangePassword}\r\n noBoxShadow\r\n inline\r\n submitInForm\r\n config={config}\r\n label={propsConfig.texts.submitButtonLabel}\r\n cardStyle={{ maxWidth: \"408px\", margin: \"auto\" }}\r\n className=\"employeeChangePassword\"\r\n >\r\n <Header />\r\n <CardSubHeader style={{ textAlign: \"center\" }}> {propsConfig.texts.header} </CardSubHeader>\r\n <CardText>\r\n {`${t(`CS_LOGIN_OTP_TEXT`)} `}\r\n <b>\r\n {\" \"}\r\n {`${t(`+ 91 - `)}`} {mobileNumber}\r\n </b>\r\n </CardText>\r\n <SelectOtp t={t} userType=\"employee\" otp={otp} onOtpChange={setOtp} error={isOtpValid} onResend={onResendOTP} />\r\n {/* <div>\r\n <CardLabel style={{ marginBottom: \"8px\" }}>{t(\"CORE_OTP_SENT_MESSAGE\")}</CardLabel>\r\n <CardLabelDesc style={{ marginBottom: \"0px\" }}> {mobileNumber} </CardLabelDesc>\r\n <CardLabelDesc style={{ marginBottom: \"8px\" }}> {t(\"CORE_EMPLOYEE_OTP_CHECK_MESSAGE\")}</CardLabelDesc>\r\n </div>\r\n <CardLabel style={{ marginBottom: \"8px\" }}>{t(\"CORE_OTP_OTP\")} *</CardLabel>\r\n <TextInput className=\"field\" name={otpReference} isRequired={true} onChange={updateOtp} type={\"text\"} style={{ marginBottom: \"10px\" }} />\r\n <div className=\"flex-right\">\r\n <div className=\"primary-label-btn\" onClick={onResendOTP}>\r\n {t(\"CORE_OTP_RESEND\")}\r\n </div>\r\n </div> */}\r\n </FormComposer>\r\n {showToast && <Toast error={true} label={t(showToast)} onClose={closeToast} />}\r\n <div className=\"EmployeeLoginFooter\">\r\n <img\r\n alt=\"Powered by DIGIT\"\r\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER_BW\")}\r\n style={{ cursor: \"pointer\" }}\r\n onClick={() => {\r\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\r\n }}\r\n />{\" \"}\r\n </div>\r\n </Background>\r\n );\r\n};\r\n\r\nChangePasswordComponent.propTypes = {\r\n loginParams: PropTypes.any,\r\n};\r\n\r\nChangePasswordComponent.defaultProps = {\r\n loginParams: null,\r\n};\r\n\r\nexport default ChangePasswordComponent;\r\n","import React, { useMemo } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { AppContainer } from \"@egovernments/digit-ui-react-components\";\r\nimport { Route, Switch, useRouteMatch } from \"react-router-dom\";\r\nimport { config } from \"./config\";\r\nimport ChangePasswordComponent from \"./changePassword\";\r\n\r\nconst EmployeeChangePassword = () => {\r\n const { t } = useTranslation();\r\n const { path } = useRouteMatch();\r\n\r\n const params = useMemo(() =>\r\n config.map(\r\n (step) => {\r\n const texts = {};\r\n for (const key in step.texts) {\r\n texts[key] = t(step.texts[key]);\r\n }\r\n return { ...step, texts };\r\n },\r\n [config]\r\n )\r\n );\r\n\r\n return (\r\n <Switch>\r\n <Route path={`${path}`} exact>\r\n <ChangePasswordComponent config={params[0]} t={t} />\r\n </Route>\r\n </Switch>\r\n );\r\n};\r\n\r\nexport default EmployeeChangePassword;\r\n","export const loginConfig = [\r\n {\r\n texts: {\r\n header: \"CORE_COMMON_FORGOT_PASSWORD_LABEL\",\r\n description: \"ES_FORGOT_PASSWORD_DESC\",\r\n submitButtonLabel: \"CORE_COMMON_CONTINUE\",\r\n },\r\n inputs: [\r\n {\r\n label: \"CORE_COMMON_MOBILE_NUMBER\",\r\n type: \"text\",\r\n name: \"mobileNumber\",\r\n error: \"ERR_HRMS_INVALID_MOBILE_NUMBER\",\r\n },\r\n {\r\n label: \"CORE_COMMON_CITY\",\r\n type: \"custom\",\r\n name: \"city\",\r\n error: \"ERR_HRMS_INVALID_CITY\",\r\n },\r\n ],\r\n },\r\n];\r\n","import { BackButton, Dropdown, FormComposer, Loader, Toast } from \"@egovernments/digit-ui-react-components\";\r\nimport PropTypes from \"prop-types\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport Background from \"../../../components/Background\";\r\nimport Header from \"../../../components/Header\";\r\n\r\nconst ForgotPassword = ({ config: propsConfig, t }) => {\r\n const { data: cities, isLoading } = Digit.Hooks.useTenants();\r\n const [user, setUser] = useState(null);\r\n const history = useHistory();\r\n const [showToast, setShowToast] = useState(null);\r\n const getUserType = () => Digit.UserService.getType();\r\n\r\n useEffect(() => {\r\n if (!user) {\r\n Digit.UserService.setType(\"employee\");\r\n return;\r\n }\r\n Digit.UserService.setUser(user);\r\n const redirectPath = location.state?.from || `/${window?.contextPath}/employee`;\r\n history.replace(redirectPath);\r\n }, [user]);\r\n\r\n const closeToast = () => {\r\n setShowToast(null);\r\n };\r\n\r\n const onForgotPassword = async (data) => {\r\n if (!data.city) {\r\n alert(\"Please Select City!\");\r\n return;\r\n }\r\n const requestData = {\r\n otp: {\r\n mobileNumber: data.mobileNumber,\r\n userType: getUserType().toUpperCase(),\r\n type: \"passwordreset\",\r\n tenantId: data.city.code,\r\n },\r\n };\r\n try {\r\n await Digit.UserService.sendOtp(requestData, data.city.code);\r\n history.push(`/${window?.contextPath}/employee/user/change-password?mobile_number=${data.mobileNumber}&tenantId=${data.city.code}`);\r\n } catch (err) {\r\n setShowToast(err?.response?.data?.error?.fields?.[0]?.message || \"Invalid login credentials!\");\r\n setTimeout(closeToast, 5000);\r\n }\r\n };\r\n\r\n const navigateToLogin = () => {\r\n history.replace(`/${window?.contextPath}/employee/login`);\r\n };\r\n\r\n const [userId, city] = propsConfig.inputs;\r\n const config = [\r\n {\r\n body: [\r\n {\r\n label: t(userId.label),\r\n type: userId.type,\r\n populators: {\r\n name: userId.name,\r\n componentInFront: \"+91\",\r\n },\r\n isMandatory: true,\r\n },\r\n {\r\n label: t(city.label),\r\n type: city.type,\r\n populators: {\r\n name: city.name,\r\n customProps: {},\r\n component: (props, customProps) => (\r\n <Dropdown\r\n option={cities}\r\n optionKey=\"name\"\r\n id={city.name}\r\n className=\"login-city-dd\"\r\n select={(d) => {\r\n props.onChange(d);\r\n }}\r\n {...customProps}\r\n />\r\n ),\r\n },\r\n isMandatory: true,\r\n },\r\n ],\r\n },\r\n ];\r\n\r\n if (isLoading) {\r\n return <Loader />;\r\n }\r\n\r\n return (\r\n <Background>\r\n <div className=\"employeeBackbuttonAlign\">\r\n <BackButton variant=\"white\" style={{ borderBottom: \"none\" }} />\r\n </div>\r\n <FormComposer\r\n onSubmit={onForgotPassword}\r\n noBoxShadow\r\n inline\r\n submitInForm\r\n config={config}\r\n label={propsConfig.texts.submitButtonLabel}\r\n secondaryActionLabel={propsConfig.texts.secondaryButtonLabel}\r\n onSecondayActionClick={navigateToLogin}\r\n heading={propsConfig.texts.header}\r\n description={propsConfig.texts.description}\r\n headingStyle={{ textAlign: \"center\" }}\r\n cardStyle={{ maxWidth: \"408px\", margin: \"auto\" }}\r\n className=\"employeeForgotPassword\"\r\n >\r\n <Header />\r\n </FormComposer>\r\n {showToast && <Toast error={true} label={t(showToast)} onClose={closeToast} />}\r\n <div className=\"EmployeeLoginFooter\">\r\n <img\r\n alt=\"Powered by DIGIT\"\r\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER_BW\")}\r\n style={{ cursor: \"pointer\" }}\r\n onClick={() => {\r\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\r\n }}\r\n />{\" \"}\r\n </div>\r\n </Background>\r\n );\r\n};\r\n\r\nForgotPassword.propTypes = {\r\n loginParams: PropTypes.any,\r\n};\r\n\r\nForgotPassword.defaultProps = {\r\n loginParams: null,\r\n};\r\n\r\nexport default ForgotPassword;\r\n","import React, { useMemo } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { AppContainer } from \"@egovernments/digit-ui-react-components\";\r\nimport { Route, Switch, useRouteMatch } from \"react-router-dom\";\r\nimport { loginConfig } from \"./config\";\r\nimport ForgotPasswordComponent from \"./forgotPassword\";\r\n\r\nconst EmployeeForgotPassword = () => {\r\n const { t } = useTranslation();\r\n const { path } = useRouteMatch();\r\n\r\n const params = useMemo(() =>\r\n loginConfig.map(\r\n (step) => {\r\n const texts = {};\r\n for (const key in step.texts) {\r\n texts[key] = t(step.texts[key]);\r\n }\r\n return { ...step, texts };\r\n },\r\n [loginConfig]\r\n )\r\n );\r\n\r\n return (\r\n <Switch>\r\n <Route path={`${path}`} exact>\r\n <ForgotPasswordComponent config={params[0]} t={t} />\r\n </Route>\r\n </Switch>\r\n );\r\n};\r\n\r\nexport default EmployeeForgotPassword;\r\n","import { Card, CustomButton, SubmitBar } from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useState } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport Background from \"../../../components/Background\";\r\n\r\nconst LanguageSelection = () => {\r\n const { data: storeData, isLoading } = Digit.Hooks.useStore.getInitData();\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const { languages, stateInfo } = storeData || {};\r\n const selectedLanguage = Digit.StoreData.getCurrentLanguage();\r\n const [selected, setselected] = useState(selectedLanguage);\r\n const handleChangeLanguage = (language) => {\r\n setselected(language.value);\r\n Digit.LocalizationService.changeLanguage(language.value, stateInfo.code);\r\n };\r\n\r\n const handleSubmit = (event) => {\r\n history.push(`/${window?.contextPath}/employee/user/login`);\r\n };\r\n\r\n if (isLoading) return null;\r\n\r\n return (\r\n <Background>\r\n <Card className=\"bannerCard removeBottomMargin\">\r\n <div className=\"bannerHeader\">\r\n <img className=\"bannerLogo\" src={stateInfo?.logoUrl} alt=\"Digit\" />\r\n\r\n <p>{t(`TENANT_TENANTS_${stateInfo?.code.toUpperCase()}`)}</p>\r\n </div>\r\n <div className=\"language-selector\" style={{ justifyContent: \"space-around\", marginBottom: \"24px\", padding: \"0 5%\" }}>\r\n {languages.map((language, index) => (\r\n <div className=\"language-button-container\" key={index}>\r\n <CustomButton\r\n selected={language.value === selected}\r\n text={language.label}\r\n onClick={() => handleChangeLanguage(language)}\r\n ></CustomButton>\r\n </div>\r\n ))}\r\n </div>\r\n <SubmitBar style={{ width: \"100%\" }} label={t(`CORE_COMMON_CONTINUE`)} onSubmit={handleSubmit} />\r\n </Card>\r\n <div className=\"EmployeeLoginFooter\">\r\n <img\r\n alt=\"Powered by DIGIT\"\r\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER_BW\")}\r\n style={{ cursor: \"pointer\" }}\r\n onClick={() => {\r\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\r\n }}\r\n />{\" \"}\r\n </div>\r\n </Background>\r\n );\r\n};\r\n\r\nexport default LanguageSelection;\r\n","import React, { useContext, useEffect } from \"react\";\r\nimport { Route, Switch, useRouteMatch, Redirect, useLocation } from \"react-router-dom\";\r\n\r\nimport { AppHome } from \"./Home\";\r\nimport Login from \"../pages/citizen/Login\";\r\nimport EmployeeLogin from \"../pages/employee/Login/index\";\r\nimport ChangePassword from \"../pages/employee/ChangePassword/index\";\r\nimport ForgotPassword from \"../pages/employee/ForgotPassword/index\";\r\nimport LanguageSelection from \"../pages/employee/LanguageSelection\";\r\n// import UserProfile from \"./userProfile\";\r\n\r\nconst getTenants = (codes, tenants) => {\r\n return tenants.filter((tenant) => codes?.map?.((item) => item.code).includes(tenant.code));\r\n};\r\n\r\nexport const AppModules = ({ stateCode, userType, modules, appTenants }) => {\r\n const ComponentProvider = Digit.Contexts.ComponentProvider;\r\n const { path } = useRouteMatch();\r\n const location = useLocation();\r\n\r\n const user = Digit.UserService.getUser();\r\n\r\n if (!user || !user?.access_token || !user?.info) {\r\n return <Redirect to={{ pathname: `/${window?.contextPath}/employee/user/login`, state: { from: location.pathname + location.search } }} />;\r\n }\r\n\r\n const appRoutes = modules.map(({ code, tenants }, index) => {\r\n const Module = Digit.ComponentRegistryService.getComponent(`${code}Module`);\r\n return Module ? (\r\n <Route key={index} path={`${path}/${code.toLowerCase()}`}>\r\n <Module stateCode={stateCode} moduleCode={code} userType={userType} tenants={getTenants(tenants, appTenants)} />\r\n </Route>\r\n ) : <Route key={index} path={`${path}/${code.toLowerCase()}`}>\r\n <Redirect to={{ pathname: `/${window?.contextPath}/employee/user/error?type=notfound`, state: { from: location.pathname + location.search } }} />\r\n </Route>;\r\n });\r\n\r\n return (\r\n <div className=\"ground-container\">\r\n <Switch>\r\n {appRoutes}\r\n <Route path={`${path}/login`}>\r\n <Redirect to={{ pathname: `/${window?.contextPath}/employee/user/login`, state: { from: location.pathname + location.search } }} />\r\n </Route>\r\n <Route path={`${path}/forgot-password`}>\r\n <ForgotPassword />\r\n </Route>\r\n <Route path={`${path}/change-password`}>\r\n <ChangePassword />\r\n </Route>\r\n <Route>\r\n <AppHome userType={userType} modules={modules} />\r\n </Route>\r\n {/* <Route path={`${path}/user-profile`}> <UserProfile /></Route> */}\r\n </Switch>\r\n </div>\r\n );\r\n};\r\n","import React from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nconst ErrorConfig = {\r\n error: {\r\n imgUrl: `https://s3.ap-south-1.amazonaws.com/egov-qa-assets/error-image.png`,\r\n infoMessage: \"CORE_SOMETHING_WENT_WRONG\",\r\n buttonInfo: \"ACTION_TEST_HOME\",\r\n },\r\n maintenance: {\r\n imgUrl: `https://s3.ap-south-1.amazonaws.com/egov-qa-assets/maintainence-image.png`,\r\n infoMessage: \"CORE_UNDER_MAINTENANCE\",\r\n buttonInfo: \"ACTION_TEST_HOME\",\r\n },\r\n notfound: {\r\n imgUrl: `https://s3.ap-south-1.amazonaws.com/egov-qa-assets/PageNotFound.png`,\r\n infoMessage: \"CORE_NOT_FOUND\",\r\n buttonInfo: \"ACTION_TEST_HOME\",\r\n },\r\n};\r\n\r\nconst ErrorComponent = (props) => {\r\n const { type = \"error\" } = Digit.Hooks.useQueryParams();\r\n const config = ErrorConfig[type];\r\n const { t } = useTranslation();\r\n\r\n const stateInfo = props.stateInfo;\r\n\r\n return (\r\n <div className=\"error-boundary\">\r\n <div className=\"error-container\">\r\n <img src={config.imgUrl} alt=\"error\" />\r\n <h1>{t(config.infoMessage)}</h1>\r\n <button\r\n onClick={() => {\r\n props.goToHome();\r\n }}\r\n >\r\n {t(config.buttonInfo)}\r\n </button>\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default ErrorComponent;\r\n","import React from \"react\";\r\nimport ErrorComponent from \"./ErrorComponent\";\r\n\r\nconst Redircter = () => {\r\n const path = Digit.UserService.getType() === \"employee\" ? `/${window?.contextPath}/employee/user/error` : `/${window?.contextPath}/citizen/error`;\r\n if (\r\n window.location.href.includes(\"employee/user/error\") ||\r\n window.location.href.includes(\"citizen/error\") ||\r\n process.env.NODE_ENV === \"development\"\r\n ) {\r\n //do nothing\r\n }else{\r\n window.location.href = path;\r\n }\r\n return <span></span>;\r\n};\r\n\r\nclass ErrorBoundary extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = { error: null, errorStack: null, hasError: false };\r\n }\r\n\r\n static getDerivedStateFromError(error) {\r\n // Update state so the next render will show the fallback UI.\r\n return { error: error?.message, hasError: true, errorStack: error?.stack };\r\n }\r\n\r\n componentDidCatch(error, errorInfo) {\r\n // Catch errors in any components below and re-render with error message\r\n this.setState({ error: error?.message, hasError: true, errorStack: error?.stack });\r\n // You can also log error messages to an error reporting service here\r\n }\r\n\r\n render() {\r\n if (this.state.hasError) {\r\n // (\"UI-errorInfo\", this.state?.errorStack);\r\n // (\"UI-component-details\", this.props);\r\n // You can render any custom fallback UI\r\n return (\r\n <div className=\"error-boundary\">\r\n <Redircter />\r\n <ErrorComponent initData={this.props.initData} />\r\n\r\n {/* <summary>Something went wrong</summary>\r\n <details style={{ whiteSpace: \"pre-wrap\" }}>\r\n {this.state?.errorStack && this.state.errorStack.toString().substring(0, 600)}\r\n {this.state?.error}\r\n </details> */}\r\n </div>\r\n );\r\n }\r\n return this.props.children;\r\n }\r\n}\r\n\r\nexport default ErrorBoundary;\r\n","import { Dropdown } from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useState, useEffect } from \"react\";\r\nimport { CustomButton, Menu } from \"@egovernments/digit-ui-react-components\";\r\nimport { useHistory } from \"react-router-dom\";\r\n\r\nconst stringReplaceAll = (str = \"\", searcher = \"\", replaceWith = \"\") => {\r\n if (searcher == \"\") return str;\r\n while (str?.includes(searcher)) {\r\n str = str?.replace(searcher, replaceWith);\r\n }\r\n return str;\r\n};\r\n\r\nconst ChangeCity = (prop) => {\r\n const [dropDownData, setDropDownData] = useState(null);\r\n const [selectCityData, setSelectCityData] = useState([]);\r\n const [selectedCity, setSelectedCity] = useState([]); //selectedCities?.[0]?.value\r\n const history = useHistory();\r\n const isDropdown = prop.dropdown || false;\r\n let selectedCities = [];\r\n\r\n const handleChangeCity = (city) => {\r\n const loggedInData = Digit.SessionStorage.get(\"citizen.userRequestObject\");\r\n const filteredRoles = Digit.SessionStorage.get(\"citizen.userRequestObject\")?.info?.roles?.filter(role => role.tenantId === city.value);\r\n if (filteredRoles?.length > 0) {\r\n loggedInData.info.roles = filteredRoles;\r\n loggedInData.info.tenantId = city?.value;\r\n }\r\n Digit.SessionStorage.set(\"Employee.tenantId\", city?.value);\r\n Digit.UserService.setUser(loggedInData);\r\n setDropDownData(city);\r\n if (window.location.href.includes(`/${window?.contextPath}/employee/`)) {\r\n const redirectPath = location.state?.from || `/${window?.contextPath}/employee`;\r\n history.replace(redirectPath);\r\n }\r\n window.location.reload();\r\n };\r\n\r\n useEffect(() => {\r\n const userloggedValues = Digit.SessionStorage.get(\"citizen.userRequestObject\");\r\n let teantsArray = [], filteredArray = [];\r\n userloggedValues?.info?.roles?.forEach(role => teantsArray.push(role.tenantId));\r\n let unique = teantsArray.filter((item, i, ar) => ar.indexOf(item) === i);\r\n unique?.forEach(uniCode => {\r\n filteredArray.push({\r\n label: prop?.t(`TENANT_TENANTS_${stringReplaceAll(uniCode, \".\", \"_\")?.toUpperCase()}`),\r\n value: uniCode\r\n })\r\n });\r\n selectedCities = filteredArray?.filter(select => select.value == Digit.SessionStorage.get(\"Employee.tenantId\"));\r\n setSelectCityData(filteredArray);\r\n }, [dropDownData]);\r\n\r\n // if (isDropdown) {\r\n return (\r\n <div style={prop?.mobileView ? {color: \"#767676\"} : {}}>\r\n <Dropdown\r\n option={selectCityData}\r\n selected={selectCityData.find((cityValue) => cityValue.value === dropDownData?.value)}\r\n optionKey={\"label\"}\r\n select={handleChangeCity}\r\n freeze={true}\r\n customSelector={<label className=\"cp\">{prop?.t(`TENANT_TENANTS_${stringReplaceAll(Digit.SessionStorage.get(\"Employee.tenantId\"), \".\", \"_\")?.toUpperCase()}`)}</label>}\r\n />\r\n </div>\r\n );\r\n // } else {\r\n // return (\r\n // <React.Fragment>\r\n // <div style={{ marginBottom: \"5px\" }}>City</div>\r\n // <div className=\"language-selector\" style={{display: \"flex\", flexWrap: \"wrap\"}}>\r\n // {selectCityData?.map((city, index) => (\r\n // <div className=\"language-button-container\" key={index}>\r\n // <CustomButton\r\n // selected={city.value === Digit.SessionStorage.get(\"Employee.tenantId\")}\r\n // text={city.label}\r\n // onClick={() => handleChangeCity(city)}\r\n // ></CustomButton>\r\n // </div>\r\n // ))}\r\n // </div>\r\n // </React.Fragment>\r\n // );\r\n // }\r\n};\r\n\r\nexport default ChangeCity;\r\n","import { ActionBar, Button, Dropdown } from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useState } from \"react\";\r\nimport { CustomButton, Menu } from \"@egovernments/digit-ui-react-components\";\r\n\r\nconst ChangeLanguage = (prop) => {\r\n const isDropdown = prop.dropdown || false;\r\n const { data: storeData, isLoading } = Digit.Hooks.useStore.getInitData();\r\n const { languages, stateInfo } = storeData || {};\r\n const selectedLanguage = Digit.StoreData.getCurrentLanguage();\r\n const [selected, setselected] = useState(selectedLanguage);\r\n const handleChangeLanguage = (language) => {\r\n setselected(language.value);\r\n Digit.LocalizationService.changeLanguage(language.value, stateInfo.code);\r\n };\r\n\r\n if (isLoading) return null;\r\n\r\n if (isDropdown) {\r\n return (\r\n <div>\r\n <Dropdown\r\n option={languages}\r\n selected={languages.find((language) => language.value === selectedLanguage)}\r\n optionKey={\"label\"}\r\n select={handleChangeLanguage}\r\n freeze={true}\r\n customSelector={<label className=\"cp\">{languages.find((language) => language.value === selected).label}</label>}\r\n />\r\n </div>\r\n );\r\n } else {\r\n return (\r\n <React.Fragment>\r\n <div style={{ marginBottom: \"5px\" }}>Language</div>\r\n <div className=\"language-selector\">\r\n {languages.map((language, index) => (\r\n <div className=\"language-button-container\" key={index}>\r\n <CustomButton\r\n selected={language.value === selected}\r\n text={language.label}\r\n onClick={() => handleChangeLanguage(language)}\r\n ></CustomButton>\r\n </div>\r\n ))}\r\n </div>\r\n </React.Fragment>\r\n );\r\n }\r\n};\r\n\r\nexport default ChangeLanguage;\r\n","import { Dropdown, Hamburger, TopBar as TopBarComponent } from \"@egovernments/digit-ui-react-components\";\r\nimport React from \"react\";\r\nimport { useHistory, useLocation } from \"react-router-dom\";\r\nimport ChangeCity from \"../ChangeCity\";\r\nimport ChangeLanguage from \"../ChangeLanguage\";\r\n\r\nconst TextToImg = (props) => (\r\n <span className=\"user-img-txt\" onClick={props.toggleMenu} title={props.name}>\r\n {props?.name?.[0]?.toUpperCase()}\r\n </span>\r\n);\r\nconst TopBar = ({\r\n t,\r\n stateInfo,\r\n toggleSidebar,\r\n isSidebarOpen,\r\n handleLogout,\r\n userDetails,\r\n CITIZEN,\r\n cityDetails,\r\n mobileView,\r\n userOptions,\r\n handleUserDropdownSelection,\r\n logoUrl,\r\n showLanguageChange = true,\r\n}) => {\r\n const [profilePic, setProfilePic] = React.useState(null);\r\n\r\n React.useEffect(async () => {\r\n const tenant = Digit.ULBService.getCurrentTenantId();\r\n const uuid = userDetails?.info?.uuid;\r\n if (uuid) {\r\n const usersResponse = await Digit.UserService.userSearch(tenant, { uuid: [uuid] }, {});\r\n if (usersResponse && usersResponse.user && usersResponse.user.length) {\r\n const userDetails = usersResponse.user[0];\r\n const thumbs = userDetails?.photo?.split(\",\");\r\n setProfilePic(thumbs?.at(0));\r\n }\r\n }\r\n }, [profilePic !== null, userDetails?.info?.uuid]);\r\n\r\n const CitizenHomePageTenantId = Digit.ULBService.getCitizenCurrentTenant(true);\r\n\r\n let history = useHistory();\r\n const { pathname } = useLocation();\r\n\r\n const conditionsToDisableNotificationCountTrigger = () => {\r\n if (Digit.UserService?.getUser()?.info?.type === \"EMPLOYEE\") return false;\r\n if (Digit.UserService?.getUser()?.info?.type === \"CITIZEN\") {\r\n if (!CitizenHomePageTenantId) return false;\r\n else return true;\r\n }\r\n return false;\r\n };\r\n\r\n const { data: { unreadCount: unreadNotificationCount } = {}, isSuccess: notificationCountLoaded } = Digit.Hooks.useNotificationCount({\r\n tenantId: CitizenHomePageTenantId,\r\n config: {\r\n enabled: conditionsToDisableNotificationCountTrigger(),\r\n },\r\n });\r\n\r\n const updateSidebar = () => {\r\n if (!Digit.clikOusideFired) {\r\n toggleSidebar(true);\r\n } else {\r\n Digit.clikOusideFired = false;\r\n }\r\n };\r\n\r\n function onNotificationIconClick() {\r\n history.push(`/${window?.contextPath}/citizen/engagement/notifications`);\r\n }\r\n\r\n const urlsToDisableNotificationIcon = (pathname) =>\r\n !!Digit.UserService?.getUser()?.access_token\r\n ? false\r\n : [`/${window?.contextPath}/citizen/select-language`, `/${window?.contextPath}/citizen/select-location`].includes(pathname);\r\n\r\n if (CITIZEN) {\r\n return (\r\n <div>\r\n <TopBarComponent\r\n img={stateInfo?.logoUrlWhite}\r\n isMobile={true}\r\n toggleSidebar={updateSidebar}\r\n logoUrl={stateInfo?.logoUrlWhite}\r\n onLogout={handleLogout}\r\n userDetails={userDetails}\r\n notificationCount={unreadNotificationCount < 99 ? unreadNotificationCount : 99}\r\n notificationCountLoaded={notificationCountLoaded}\r\n cityOfCitizenShownBesideLogo={t(CitizenHomePageTenantId)}\r\n onNotificationIconClick={onNotificationIconClick}\r\n hideNotificationIconOnSomeUrlsWhenNotLoggedIn={urlsToDisableNotificationIcon(pathname)}\r\n changeLanguage={!mobileView ? <ChangeLanguage dropdown={true} /> : null}\r\n />\r\n </div>\r\n );\r\n }\r\n const loggedin = userDetails?.access_token ? true : false;\r\n return (\r\n <div className=\"topbar\">\r\n {mobileView ? <Hamburger handleClick={toggleSidebar} color=\"#9E9E9E\" /> : null}\r\n <img className=\"city\" src={loggedin ? cityDetails?.logoId : stateInfo?.statelogo} />\r\n <span style={{ display: \"flex\", alignItems: \"center\", justifyContent: \"space-between\", width: \"100%\" }}>\r\n {loggedin &&\r\n (cityDetails?.city?.ulbGrade ? (\r\n <p className=\"ulb\" style={mobileView ? { fontSize: \"14px\", display: \"inline-block\" } : {}}>\r\n {t(cityDetails?.i18nKey).toUpperCase()}{\" \"}\r\n {t(`ULBGRADE_${cityDetails?.city?.ulbGrade.toUpperCase().replace(\" \", \"_\").replace(\".\", \"_\")}`).toUpperCase()}\r\n </p>\r\n ) : (\r\n <img className=\"state\" src={logoUrl} />\r\n ))}\r\n {!loggedin && (\r\n <p className=\"ulb\" style={mobileView ? { fontSize: \"14px\", display: \"inline-block\" } : {}}>\r\n {t(`MYCITY_${stateInfo?.code?.toUpperCase()}_LABEL`)} {t(`MYCITY_STATECODE_LABEL`)}\r\n </p>\r\n )}\r\n {!mobileView && (\r\n <div className={mobileView ? \"right\" : \"flex-right right w-80 column-gap-15\"} style={!loggedin ? { width: \"80%\" } : {}}>\r\n <div className=\"left\">\r\n {!window.location.href.includes(\"employee/user/login\") && !window.location.href.includes(\"employee/user/language-selection\") && (\r\n <ChangeCity dropdown={true} t={t} />\r\n )}\r\n </div>\r\n <div className=\"left\">{showLanguageChange && <ChangeLanguage dropdown={true} />}</div>\r\n {userDetails?.access_token && (\r\n <div className=\"left\">\r\n <Dropdown\r\n option={userOptions}\r\n optionKey={\"name\"}\r\n select={handleUserDropdownSelection}\r\n showArrow={true}\r\n freeze={true}\r\n style={mobileView ? { right: 0 } : {}}\r\n optionCardStyles={{ overflow: \"revert\" }}\r\n customSelector={\r\n profilePic == null ? (\r\n <TextToImg name={userDetails?.info?.name || userDetails?.info?.userInfo?.name || \"Employee\"} />\r\n ) : (\r\n <img src={profilePic} style={{ height: \"48px\", width: \"48px\", borderRadius: \"50%\" }} />\r\n )\r\n }\r\n />\r\n </div>\r\n )}\r\n <img className=\"state\" src={logoUrl} />\r\n </div>\r\n )}\r\n </span>\r\n </div>\r\n );\r\n};\r\n\r\nexport default TopBar;\r\n","import React from \"react\";\r\nimport { HomeIcon, LanguageIcon, LogoutIcon, AddressBookIcon, LocationIcon } from \"@egovernments/digit-ui-react-components\";\r\nimport ChangeLanguage from \"../components/ChangeLanguage\";\r\n\r\nconst SideBarMenu = (t, closeSidebar, redirectToLoginPage, isEmployee) => [\r\n {\r\n type: \"link\",\r\n element: \"HOME\",\r\n text: t(\"COMMON_BOTTOM_NAVIGATION_HOME\"),\r\n link: isEmployee ? `/${window?.contextPath}/employee` : `/${window?.contextPath}/citizen`,\r\n icon: \"HomeIcon\",\r\n populators: {\r\n onClick: closeSidebar,\r\n },\r\n },\r\n {\r\n type: \"component\",\r\n element: \"LANGUAGE\",\r\n action: <ChangeLanguage />,\r\n icon: \"LanguageIcon\",\r\n },\r\n {\r\n id: \"login-btn\",\r\n element: \"LOGIN\",\r\n text: t(\"CORE_COMMON_LOGIN\"),\r\n icon: <LogoutIcon className=\"icon\" />,\r\n populators: {\r\n onClick: redirectToLoginPage,\r\n },\r\n },\r\n];\r\n\r\nexport default SideBarMenu;\r\n","import { CardText, CloseSvg, Modal } from \"@egovernments/digit-ui-react-components\";\r\nimport React from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nconst Heading = (props) => {\r\n return <h1 className=\"heading-m\">{props.label}</h1>;\r\n};\r\nconst Close = () => (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"#FFFFFF\">\r\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\r\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\" />\r\n </svg>\r\n);\r\nconst CloseBtn = (props) => {\r\n return (\r\n <div onClick={props?.onClick} style={ props?.isMobileView ? { padding: 5} : null}>\r\n {\r\n props?.isMobileView\r\n ? (<CloseSvg />)\r\n : (<div className={\"icon-bg-secondary\"} style={{ backgroundColor: '#505A5F'}}> <Close /> </div>)\r\n }\r\n </div>\r\n )\r\n};\r\nconst LogoutDialog = ({ onSelect, onCancel, onDismiss }) => {\r\n const { t } = useTranslation();\r\n const mobileDeviceWidth = 780;\r\n const [isMobileView, setIsMobileView] = React.useState(window.innerWidth <= mobileDeviceWidth);\r\n const onResize = () => {\r\n if (window.innerWidth <= mobileDeviceWidth) {\r\n if (!isMobileView) {\r\n setIsMobileView(true);\r\n }\r\n } else {\r\n if (isMobileView) {\r\n setIsMobileView(false);\r\n }\r\n }\r\n }\r\n React.useEffect(() => {\r\n window.addEventListener(\"resize\", () => {\r\n onResize();\r\n });\r\n return () => {\r\n window.addEventListener(\"resize\", () => {\r\n onResize();\r\n });\r\n };\r\n });\r\n return (\r\n isMobileView\r\n ? <Modal\r\n popupStyles={{\r\n height: \"174px\",\r\n maxHeight: \"174px\",\r\n width: \"324px\",\r\n position: \"absolute\",\r\n top: \"50%\",\r\n left: \"50%\",\r\n transform: 'translate(-50%, -50%)',\r\n }}\r\n popupModuleActionBarStyles={{\r\n display: \"flex\",\r\n flex: 1,\r\n justifyContent: \"flex-start\",\r\n width: \"100%\",\r\n position: \"absolute\",\r\n left: 0,\r\n bottom: 0,\r\n padding: \"18px\",\r\n }}\r\n style={{\r\n flex: 1,\r\n }}\r\n popupModuleMianStyles={{\r\n padding: \"18px\",\r\n }}\r\n headerBarMain={<Heading label={t(\"CORE_LOGOUT_WEB_HEADER\")} />}\r\n headerBarEnd={<CloseBtn onClick={onDismiss} isMobileView={isMobileView} />}\r\n actionCancelLabel={t(\"TL_COMMON_NO\")}\r\n actionCancelOnSubmit={onCancel}\r\n actionSaveLabel={t(\"TL_COMMON_YES\")}\r\n actionSaveOnSubmit={onSelect}\r\n formId=\"modal-action\">\r\n <div>\r\n <CardText style={{ margin: 0 }}>\r\n {t(\"CORE_LOGOUT_MOBILE_CONFIRMATION_MESSAGE\") + \" \"}\r\n </CardText>\r\n </div>\r\n </Modal>\r\n : <Modal\r\n popupModuleMianStyles={{\r\n paddingTop: \"30px\",\r\n }}\r\n headerBarMain={<Heading label={t(\"CORE_LOGOUT_WEB_HEADER\")} />}\r\n headerBarEnd={<CloseBtn onClick={onDismiss} isMobileView={false} />}\r\n actionCancelLabel={t(\"CORE_LOGOUT_CANCEL\")}\r\n actionCancelOnSubmit={onCancel}\r\n actionSaveLabel={t(\"CORE_LOGOUT_WEB_YES\")}\r\n actionSaveOnSubmit={onSelect}\r\n formId=\"modal-action\">\r\n <div>\r\n <CardText style={{ marginBottom: \"54px\", marginLeft: \"8px\", marginRight: \"8px\" }}>\r\n {t(\"CORE_LOGOUT_WEB_CONFIRMATION_MESSAGE\") + \" \"}\r\n <strong>{t(\"CORE_LOGOUT_MESSAGE\")}?</strong>\r\n </CardText>\r\n </div>\r\n </Modal>\r\n )\r\n}\r\nexport default LogoutDialog;","import React, { useEffect, useState } from \"react\";\r\nimport {\r\n HomeIcon,\r\n EditPencilIcon,\r\n LogoutIcon,\r\n Loader,\r\n AddressBookIcon,\r\n PropertyHouse,\r\n CaseIcon,\r\n CollectionIcon,\r\n PTIcon,\r\n OBPSIcon,\r\n PGRIcon,\r\n FSMIcon,\r\n WSICon,\r\n MCollectIcon,\r\n Phone,\r\n BirthIcon,\r\n DeathIcon,\r\n FirenocIcon,\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport { Link, useLocation } from \"react-router-dom\";\r\nimport SideBarMenu from \"../../../config/sidebar-menu\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport LogoutDialog from \"../../Dialog/LogoutDialog\";\r\nimport ChangeCity from \"../../ChangeCity\";\r\n\r\nconst defaultImage =\r\n \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO4AAADUCAMAAACs0e/bAAAAM1BMVEXK0eL\" +\r\n \"/\" +\r\n \"/\" +\r\n \"/\" +\r\n \"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\";\r\n/* \r\nFeature :: Citizen Webview sidebar\r\n*/\r\nconst Profile = ({ info, stateName, t }) => (\r\n <div className=\"profile-section\">\r\n <div className=\"imageloader imageloader-loaded\">\r\n <img className=\"img-responsive img-circle img-Profile\" src={defaultImage} />\r\n </div>\r\n <div id=\"profile-name\" className=\"label-container name-Profile\">\r\n <div className=\"label-text\"> {info?.name} </div>\r\n </div>\r\n <div id=\"profile-location\" className=\"label-container loc-Profile\">\r\n <div className=\"label-text\"> {info?.mobileNumber} </div>\r\n </div>\r\n {info?.emailId && (\r\n <div id=\"profile-emailid\" className=\"label-container loc-Profile\">\r\n <div className=\"label-text\"> {info.emailId} </div>\r\n </div>\r\n )}\r\n <div className=\"profile-divider\"></div>\r\n {window.location.href.includes(\"/employee\") &&\r\n !window.location.href.includes(\"/employee/user/login\") &&\r\n !window.location.href.includes(\"employee/user/language-selection\") && <ChangeCity t={t} mobileView={true} />}\r\n </div>\r\n);\r\nconst IconsObject = {\r\n CommonPTIcon: <PTIcon className=\"icon\" />,\r\n OBPSIcon: <OBPSIcon className=\"icon\" />,\r\n propertyIcon: <PropertyHouse className=\"icon\" />,\r\n TLIcon: <CaseIcon className=\"icon\" />,\r\n PGRIcon: <PGRIcon className=\"icon\" />,\r\n FSMIcon: <FSMIcon className=\"icon\" />,\r\n WSIcon: <WSICon className=\"icon\" />,\r\n MCollectIcon: <MCollectIcon className=\"icon\" />,\r\n BillsIcon: <CollectionIcon className=\"icon\" />,\r\n BirthIcon: <BirthIcon className=\"icon\" />,\r\n DeathIcon: <DeathIcon className=\"icon\" />,\r\n FirenocIcon: <FirenocIcon className=\"icon\" />,\r\n HomeIcon: <HomeIcon className=\"icon\" />,\r\n EditPencilIcon: <EditPencilIcon className=\"icon\" />,\r\n LogoutIcon: <LogoutIcon className=\"icon\" />,\r\n Phone: <Phone className=\"icon\" />,\r\n};\r\nconst StaticCitizenSideBar = ({ linkData, islinkDataLoading }) => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const location = useLocation();\r\n const { pathname } = location;\r\n const { data: storeData, isFetched } = Digit.Hooks.useStore.getInitData();\r\n const { stateInfo } = storeData || {};\r\n const user = Digit.UserService.getUser();\r\n let isMobile = window.Digit.Utils.browser.isMobile();\r\n\r\n const [isEmployee, setisEmployee] = useState(false);\r\n const [isSidebarOpen, toggleSidebar] = useState(false);\r\n const [showDialog, setShowDialog] = useState(false);\r\n\r\n const handleLogout = () => {\r\n toggleSidebar(false);\r\n setShowDialog(true);\r\n };\r\n const handleOnSubmit = () => {\r\n Digit.UserService.logout();\r\n setShowDialog(false);\r\n };\r\n const handleOnCancel = () => {\r\n setShowDialog(false);\r\n };\r\n\r\n if (islinkDataLoading) {\r\n return <Loader />;\r\n }\r\n\r\n const redirectToLoginPage = () => {\r\n // localStorage.clear();\r\n // sessionStorage.clear();\r\n history.push(`/${window?.contextPath}/citizen/login`);\r\n };\r\n const showProfilePage = () => {\r\n history.push(`/${window?.contextPath}/citizen/user/profile`);\r\n };\r\n\r\n let menuItems = [...SideBarMenu(t, showProfilePage, redirectToLoginPage, isEmployee)];\r\n\r\n menuItems = menuItems.filter((item) => item.element !== \"LANGUAGE\");\r\n\r\n const tenantId = Digit.ULBService.getCurrentTenantId();\r\n const MenuItem = ({ item }) => {\r\n const leftIconArray = item?.icon || item.icon?.type?.name;\r\n const leftIcon = leftIconArray ? IconsObject[leftIconArray] : IconsObject.BillsIcon;\r\n let itemComponent;\r\n if (item.type === \"component\") {\r\n itemComponent = item.action;\r\n } else {\r\n itemComponent = item.text;\r\n }\r\n const Item = () => (\r\n <span className=\"menu-item\" {...item.populators}>\r\n {leftIcon}\r\n <div className=\"menu-label\">{itemComponent}</div>\r\n </span>\r\n );\r\n if (item.type === \"external-link\") {\r\n return (\r\n <a href={item.link}>\r\n <Item />\r\n </a>\r\n );\r\n }\r\n if (item.type === \"link\") {\r\n return (\r\n <Link to={item?.link}>\r\n <Item />\r\n </Link>\r\n );\r\n }\r\n\r\n return <Item />;\r\n };\r\n let profileItem;\r\n\r\n if (isFetched && user && user.access_token) {\r\n profileItem = <Profile info={user?.info} stateName={stateInfo?.name} t={t} />;\r\n menuItems = menuItems.filter((item) => item?.id !== \"login-btn\");\r\n menuItems = [\r\n ...menuItems,\r\n {\r\n text: t(\"EDIT_PROFILE\"),\r\n element: \"PROFILE\",\r\n icon: \"EditPencilIcon\",\r\n populators: {\r\n onClick: showProfilePage,\r\n },\r\n },\r\n {\r\n text: t(\"CORE_COMMON_LOGOUT\"),\r\n element: \"LOGOUT\",\r\n icon: \"LogoutIcon\",\r\n populators: { onClick: handleLogout },\r\n },\r\n {\r\n text: (\r\n <React.Fragment>\r\n {t(\"CS_COMMON_HELPLINE\")}\r\n <div className=\"telephone\" style={{ marginTop: \"-10%\" }}>\r\n {storeData?.tenants.map((i) => {\r\n i.code === tenantId ? (\r\n <div className=\"link\">\r\n <a href={`tel:${storeData?.tenants[i].contactNumber}`}>{storeData?.tenants[i].contactNumber}</a>\r\n </div>\r\n ) : (\r\n <div className=\"link\">\r\n <a href={`tel:${storeData?.tenants[0].contactNumber}`}>{storeData?.tenants[0].contactNumber}</a>\r\n </div>\r\n );\r\n })}\r\n <div className=\"link\">\r\n <a href={`tel:${storeData?.tenants[0].contactNumber}`}>{storeData?.tenants[0].contactNumber}</a>\r\n </div>\r\n </div>\r\n </React.Fragment>\r\n ),\r\n element: \"Helpline\",\r\n icon: \"Phone\",\r\n },\r\n ];\r\n }\r\n Object.keys(linkData)\r\n ?.sort((x, y) => y.localeCompare(x))\r\n ?.map((key) => {\r\n if (linkData[key][0]?.sidebar === \"digit-ui-links\") {\r\n menuItems.splice(1, 0, {\r\n type: linkData[key][0]?.sidebarURL?.includes(window?.contextPath) ? \"link\" : \"external-link\",\r\n text: t(`ACTION_TEST_${Digit.Utils.locale.getTransformedLocale(key)}`),\r\n links: linkData[key],\r\n icon: linkData[key][0]?.leftIcon,\r\n link: linkData[key][0]?.sidebarURL,\r\n });\r\n }\r\n });\r\n\r\n return (\r\n <React.Fragment>\r\n <div>\r\n <div\r\n style={{\r\n height: \"100%\",\r\n width: \"100%\",\r\n top: \"0px\",\r\n backgroundColor: \"rgba(0, 0, 0, 0.54)\",\r\n pointerzevents: \"auto\",\r\n }}\r\n ></div>\r\n <div\r\n style={{\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n height: isMobile ? \"calc(100vh - 56px)\" : \"auto\",\r\n zIndex: \"99\",\r\n }}\r\n >\r\n {profileItem}\r\n <div className=\"drawer-desktop\">\r\n {menuItems?.map((item, index) => (\r\n <div className={`sidebar-list ${pathname === item?.link || pathname === item?.sidebarURL ? \"active\" : \"\"}`} key={index}>\r\n <MenuItem item={item} />\r\n </div>\r\n ))}\r\n </div>\r\n </div>\r\n <div>{showDialog && <LogoutDialog onSelect={handleOnSubmit} onCancel={handleOnCancel} onDismiss={handleOnCancel}></LogoutDialog>}</div>\r\n </div>\r\n </React.Fragment>\r\n );\r\n};\r\n\r\nexport default StaticCitizenSideBar;\r\n","import {\r\n Loader, NavBar\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useState } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport SideBarMenu from \"../../../config/sidebar-menu\";\r\nimport ChangeCity from \"../../ChangeCity\";\r\nimport StaticCitizenSideBar from \"./StaticCitizenSideBar\";\r\n\r\nconst defaultImage =\r\n \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO4AAADUCAMAAACs0e/bAAAAM1BMVEXK0eL\" +\r\n \"/\" +\r\n \"/\" +\r\n \"/\" +\r\n \"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\";\r\nconst Profile = ({ info, stateName, t }) => {\r\n const [profilePic, setProfilePic] = React.useState(null);\r\n React.useEffect(async () => {\r\n const tenant = Digit.ULBService.getCurrentTenantId();\r\n const uuid = info?.uuid;\r\n if (uuid) {\r\n const usersResponse = await Digit.UserService.userSearch(tenant, { uuid: [uuid] }, {});\r\n\r\n if (usersResponse && usersResponse.user && usersResponse.user.length) {\r\n const userDetails = usersResponse.user[0];\r\n const thumbs = userDetails?.photo?.split(\",\");\r\n setProfilePic(thumbs?.at(0));\r\n }\r\n }\r\n }, [profilePic !== null]);\r\n return (\r\n <div className=\"profile-section\">\r\n <div className=\"imageloader imageloader-loaded\">\r\n <img\r\n className=\"img-responsive img-circle img-Profile\"\r\n src={profilePic ? profilePic : defaultImage}\r\n style={{ objectFit: \"cover\", objectPosition: \"center\" }}\r\n />\r\n </div>\r\n <div id=\"profile-name\" className=\"label-container name-Profile\">\r\n <div className=\"label-text\"> {info?.name} </div>\r\n </div>\r\n <div id=\"profile-location\" className=\"label-container loc-Profile\">\r\n <div className=\"label-text\"> {info?.mobileNumber} </div>\r\n </div>\r\n {info?.emailId && (\r\n <div id=\"profile-emailid\" className=\"label-container loc-Profile\">\r\n <div className=\"label-text\"> {info.emailId} </div>\r\n </div>\r\n )}\r\n <div className=\"profile-divider\"></div>\r\n {window.location.href.includes(\"/employee\") &&\r\n !window.location.href.includes(\"/employee/user/login\") &&\r\n !window.location.href.includes(\"employee/user/language-selection\") && <ChangeCity t={t} mobileView={true} />}\r\n </div>\r\n );\r\n};\r\nconst PoweredBy = () => (\r\n <div className=\"digit-footer\" style={{ marginBottom: 0 }}>\r\n <img\r\n alt=\"Powered by DIGIT\"\r\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER\")}\r\n style={{ cursor: \"pointer\" }}\r\n onClick={() => {\r\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\r\n }}\r\n />{\" \"}\r\n </div>\r\n);\r\n\r\n/* \r\nFeature :: Citizen Webview sidebar\r\n*/\r\nexport const CitizenSideBar = ({ isOpen, isMobile = false, toggleSidebar, onLogout, isEmployee = false, linkData, islinkDataLoading }) => {\r\n const { data: storeData, isFetched } = Digit.Hooks.useStore.getInitData();\r\n const { stateInfo } = storeData || {};\r\n const user = Digit.UserService.getUser();\r\n const [search, setSearch] = useState(\"\");\r\n\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const closeSidebar = () => {\r\n Digit.clikOusideFired = true;\r\n toggleSidebar(false);\r\n };\r\n\r\n const { isLoading, data } = Digit.Hooks.useAccessControl();\r\n const tenantId = Digit.ULBService.getCurrentTenantId();\r\n const showProfilePage = () => {\r\n const redirectUrl = isEmployee ? `/${window?.contextPath}/employee/user/profile` : `/${window?.contextPath}/citizen/user/profile`;\r\n history.push(redirectUrl);\r\n closeSidebar();\r\n };\r\n const redirectToLoginPage = () => {\r\n // localStorage.clear();\r\n // sessionStorage.clear();\r\n history.push(`/${window?.contextPath}/citizen/login`);\r\n closeSidebar();\r\n };\r\n if (islinkDataLoading || isLoading) {\r\n return <Loader />;\r\n }\r\n\r\n let menuItems = [...SideBarMenu(t, closeSidebar, redirectToLoginPage, isEmployee)];\r\n let profileItem;\r\n if (isFetched && user && user.access_token) {\r\n profileItem = <Profile info={user?.info} stateName={stateInfo?.name} t={t} />;\r\n menuItems = menuItems.filter((item) => item?.id !== \"login-btn\");\r\n menuItems = [\r\n ...menuItems,\r\n {\r\n text: t(\"EDIT_PROFILE\"),\r\n element: \"PROFILE\",\r\n icon: \"EditPencilIcon\",\r\n populators: {\r\n onClick: showProfilePage,\r\n },\r\n },\r\n {\r\n text: t(\"CORE_COMMON_LOGOUT\"),\r\n element: \"LOGOUT\",\r\n icon: \"LogoutIcon\",\r\n populators: {\r\n onClick: onLogout,\r\n },\r\n },\r\n {\r\n text: (\r\n <React.Fragment>\r\n {t(\"CS_COMMON_HELPLINE\")}\r\n <div className=\"telephone\" style={{ marginTop: \"-10%\" }}>\r\n {storeData?.tenants.map((i) => {\r\n i.code === tenantId ? (\r\n <div className=\"link\">\r\n <a href={`tel:${storeData?.tenants[i].contactNumber}`}>{storeData?.tenants[i].contactNumber}</a>\r\n </div>\r\n ) : (\r\n <div className=\"link\">\r\n <a href={`tel:${storeData?.tenants[0].contactNumber}`}>{storeData?.tenants[0].contactNumber}</a>\r\n </div>\r\n );\r\n })}\r\n <div className=\"link\">\r\n <a href={`tel:${storeData?.tenants[0].contactNumber}`}>{storeData?.tenants[0].contactNumber}</a>\r\n </div>\r\n </div>\r\n </React.Fragment>\r\n ),\r\n element: \"Helpline\",\r\n icon: \"Phone\",\r\n },\r\n ];\r\n }\r\n\r\n let configEmployeeSideBar = {};\r\n\r\n if (!isEmployee) {\r\n Object.keys(linkData)\r\n ?.sort((x, y) => y.localeCompare(x))\r\n ?.map((key) => {\r\n if (linkData[key][0]?.sidebar === \"digit-ui-links\")\r\n menuItems.splice(1, 0, {\r\n type: linkData[key][0]?.sidebarURL?.includes(window?.contextPath) ? \"link\" : \"external-link\",\r\n text: t(`ACTION_TEST_${Digit.Utils.locale.getTransformedLocale(key)}`),\r\n links: linkData[key],\r\n icon: linkData[key][0]?.leftIcon,\r\n link: linkData[key][0]?.sidebarURL,\r\n });\r\n });\r\n } else {\r\n data?.actions\r\n .filter((e) => e.url === \"url\" && e.displayName !== \"Home\")\r\n .forEach((item) => {\r\n if (search == \"\" && item.path !== \"\") {\r\n let index = item.path.split(\".\")[0];\r\n if (index === \"TradeLicense\") index = \"Trade License\";\r\n if (!configEmployeeSideBar[index]) {\r\n configEmployeeSideBar[index] = [item];\r\n } else {\r\n configEmployeeSideBar[index].push(item);\r\n }\r\n } else if (item.path !== \"\" && item?.displayName?.toLowerCase().includes(search.toLowerCase())) {\r\n let index = item.path.split(\".\")[0];\r\n if (index === \"TradeLicense\") index = \"Trade License\";\r\n if (!configEmployeeSideBar[index]) {\r\n configEmployeeSideBar[index] = [item];\r\n } else {\r\n configEmployeeSideBar[index].push(item);\r\n }\r\n }\r\n });\r\n const keys = Object.keys(configEmployeeSideBar);\r\n for (let i = 0; i < keys.length; i++) {\r\n const getSingleDisplayName = configEmployeeSideBar[keys[i]][0]?.displayName?.toUpperCase()?.replace(/[ -]/g, \"_\");\r\n const getParentDisplayName = keys[i]?.toUpperCase()?.replace(/[ -]/g, \"_\");\r\n\r\n if (configEmployeeSideBar[keys[i]][0].path.indexOf(\".\") === -1) {\r\n menuItems.splice(1, 0, {\r\n type: \"link\",\r\n text: t(`ACTION_TEST_${getSingleDisplayName}`),\r\n link: configEmployeeSideBar[keys[i]][0]?.navigationURL,\r\n icon: configEmployeeSideBar[keys[i]][0]?.leftIcon?.split?.(\":\")[1],\r\n populators: {\r\n onClick: () => {\r\n history.push(configEmployeeSideBar[keys[i]][0]?.navigationURL);\r\n closeSidebar();\r\n },\r\n },\r\n });\r\n } else {\r\n menuItems.splice(1, 0, {\r\n type: \"dynamic\",\r\n moduleName: t(`ACTION_TEST_${getParentDisplayName}`),\r\n links: configEmployeeSideBar[keys[i]]?.map((ob) => {return {...ob, displayName: t(`ACTION_TEST_${ob?.displayName?.toUpperCase()?.replace(/[ -]/g, \"_\")}`)}}),\r\n icon: configEmployeeSideBar[keys[i]][1]?.leftIcon,\r\n });\r\n }\r\n }\r\n const indx = menuItems.findIndex(a => a.element === \"HOME\");\r\n const home = menuItems.splice(indx,1);\r\n const comp = menuItems.findIndex(a => a.element === \"LANGUAGE\");\r\n const part = menuItems.splice(comp,menuItems?.length-comp);\r\n menuItems.sort((a,b) => {\r\n let c1 = a?.type === \"dynamic\" ? a?.moduleName : a?.text;\r\n let c2 = b?.type === \"dynamic\" ? b?.moduleName : b?.text;\r\n return c1.localeCompare(c2)\r\n } );\r\n home?.[0] && menuItems.splice(0,0,home[0]);\r\n menuItems = part?.length > 0 ? menuItems.concat(part) : menuItems;\r\n }\r\n\r\n /* URL with openlink wont have sidebar and actions */\r\n if (history.location.pathname.includes(\"/openlink\")) {\r\n profileItem = <span></span>;\r\n menuItems = menuItems.filter((ele) => ele.element === \"LANGUAGE\");\r\n }\r\n return isMobile ? (\r\n <NavBar\r\n open={isOpen}\r\n toggleSidebar={toggleSidebar}\r\n profileItem={profileItem}\r\n onClose={closeSidebar}\r\n menuItems={menuItems}\r\n Footer={<PoweredBy />}\r\n isEmployee={isEmployee}\r\n search={search}\r\n setSearch={setSearch}\r\n />\r\n ) : (\r\n <StaticCitizenSideBar logout={onLogout} />\r\n );\r\n};\r\n","import React, { useState, useContext } from \"react\";\r\nimport { Link, useLocation } from \"react-router-dom\";\r\nimport {\r\n ArrowForward,\r\n ArrowVectorDown,\r\n ArrowDirection,\r\n HomeIcon,\r\n ComplaintIcon,\r\n BPAHomeIcon,\r\n PropertyHouse,\r\n CaseIcon,\r\n ReceiptIcon,\r\n PersonIcon,\r\n DocumentIconSolid,\r\n DropIcon,\r\n CollectionsBookmarIcons,\r\n FinanceChartIcon,\r\n CollectionIcon,\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport ReactTooltip from \"react-tooltip\";\r\n\r\nconst SubMenu = ({ item }) => {\r\n const [subnav, setSubnav] = useState(false);\r\n const location = useLocation();\r\n const { pathname } = location;\r\n const { t } = useTranslation();\r\n const showSubnav = () => setSubnav(!subnav);\r\n const IconsObject = {\r\n home: <HomeIcon />,\r\n announcement: <ComplaintIcon />,\r\n business: <BPAHomeIcon />,\r\n store: <PropertyHouse />,\r\n assignment: <CaseIcon />,\r\n receipt: <ReceiptIcon />,\r\n \"business-center\": <PersonIcon />,\r\n description: <DocumentIconSolid />,\r\n \"water-tap\": <DropIcon />,\r\n \"collections-bookmark\": <CollectionsBookmarIcons />,\r\n \"insert-chart\": <FinanceChartIcon />,\r\n edcr: <CollectionIcon />,\r\n collections: <CollectionIcon />,\r\n };\r\n const leftIconArray = item?.icon?.leftIcon?.split?.(\":\")?.[1] || item?.leftIcon?.split?.(\":\")[1];\r\n const leftIcon = IconsObject[leftIconArray] || IconsObject.collections;\r\n const getModuleName = item?.moduleName?.replace(/[ -]/g, \"_\");\r\n const appendTranslate = t(`ACTION_TEST_${getModuleName}`);\r\n const trimModuleName = t(appendTranslate?.length > 20 ? appendTranslate.substring(0, 20) + \"...\" : appendTranslate);\r\n\r\n if (item.type === \"single\") {\r\n const getOrigin = window.location.origin;\r\n return (\r\n <div className=\"submenu-container\">\r\n <div className={`sidebar-link ${pathname === item?.navigationURL ? \"active\" : \"\"}`}>\r\n <div className=\"actions\">\r\n {leftIcon}\r\n {item.navigationURL?.indexOf(`/${window?.contextPath}`) === -1 ? (\r\n <a\r\n data-tip=\"React-tooltip\"\r\n data-for={`jk-side-${getModuleName}`}\r\n className=\"custom-link\"\r\n href={getOrigin + \"/employee/\" + item.navigationURL}\r\n >\r\n <span> {trimModuleName} </span>\r\n\r\n {trimModuleName?.includes(\"...\") &&<ReactTooltip textColor=\"white\" backgroundColor=\"grey\" place=\"right\" type=\"info\" effect=\"solid\" id={`jk-side-${getModuleName}`}>\r\n {t(`ACTION_TEST_${getModuleName}`)}\r\n </ReactTooltip>}\r\n </a>\r\n ) : (\r\n // <a className=\"custom-link\" href={getOrigin + \"/employee/\" + item.navigationURL}>\r\n // <div className=\"tooltip\">\r\n // <p className=\"p1\">{trimModuleName}</p>\r\n // <span className=\"tooltiptext\">{t(`ACTION_TEST_${getModuleName}`)}</span>\r\n // </div>\r\n // </a>\r\n <Link className=\"custom-link\" to={item.navigationURL}>\r\n <div data-tip=\"React-tooltip\" data-for={`jk-side-${getModuleName}`}>\r\n <span> {trimModuleName} </span>\r\n\r\n {trimModuleName?.includes(\"...\") && <ReactTooltip textColor=\"white\" backgroundColor=\"grey\" place=\"right\" type=\"info\" effect=\"solid\" id={`jk-side-${getModuleName}`}>\r\n {t(`ACTION_TEST_${getModuleName}`)}\r\n </ReactTooltip>}\r\n </div>\r\n {/* <div className=\"tooltip\">\r\n <p className=\"p1\">{trimModuleName}</p>\r\n <span className=\"tooltiptext\">{t(`ACTION_TEST_${getModuleName}`)}</span>\r\n </div>{\" \"} */}\r\n </Link>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n } else {\r\n return (\r\n <React.Fragment>\r\n <div className=\"submenu-container\">\r\n <div onClick={item.links && showSubnav} className={`sidebar-link`}>\r\n <div className=\"actions\">\r\n {leftIcon}\r\n <div data-tip=\"React-tooltip\" data-for={`jk-side-${getModuleName}`}>\r\n <span> {trimModuleName} </span>\r\n\r\n {trimModuleName?.includes(\"...\") && <ReactTooltip textColor=\"white\" backgroundColor=\"grey\" place=\"right\" type=\"info\" effect=\"solid\" id={`jk-side-${getModuleName}`}>\r\n {t(`ACTION_TEST_${getModuleName}`)}\r\n </ReactTooltip>}\r\n </div>\r\n {/* <div className=\"tooltip\">\r\n <p className=\"p1\">{trimModuleName}</p>\r\n <span className=\"tooltiptext\">{t(`ACTION_TEST_${getModuleName}`)}</span>\r\n </div>{\" \"} */}\r\n </div>\r\n <div> {item.links && subnav ? <ArrowVectorDown /> : item.links ? <ArrowForward /> : null} </div>\r\n </div>\r\n </div>\r\n\r\n {subnav &&\r\n item.links\r\n .sort((a, b) => a.orderNumber - b.orderNumber)\r\n .filter((item) => item.url === \"url\" || item.url !== \"\")\r\n .map((item, index) => {\r\n const getChildName = item?.displayName?.toUpperCase()?.replace(/[ -]/g, \"_\");\r\n const appendTranslate = t(`ACTION_TEST_${getChildName}`);\r\n const trimModuleName = t(appendTranslate?.length > 20 ? appendTranslate.substring(0, 20) + \"...\" : appendTranslate);\r\n\r\n if (item.navigationURL.indexOf(`/${window?.contextPath}`) === -1) {\r\n const getOrigin = window.location.origin;\r\n return (\r\n <a\r\n key={index}\r\n className={`dropdown-link ${pathname === item.link ? \"active\" : \"\"}`}\r\n href={getOrigin + \"/employee/\" + item.navigationURL}\r\n >\r\n <div className=\"actions\" data-tip=\"React-tooltip\" data-for={`jk-side-${index}`}>\r\n <span> {trimModuleName} </span>\r\n {trimModuleName?.includes(\"...\") && <ReactTooltip textColor=\"white\" backgroundColor=\"grey\" place=\"right\" type=\"info\" effect=\"solid\" id={`jk-side-${index}`}>\r\n {t(`ACTION_TEST_${getChildName}`)}\r\n </ReactTooltip>}\r\n </div>\r\n {/* <div className=\"actions\">\r\n <div className=\"tooltip\">\r\n <p className=\"p1\">{trimModuleName}</p>\r\n <span className=\"tooltiptext\">{t(`ACTION_TEST_${getChildName}`)}</span>\r\n </div>{\" \"}\r\n </div> */}\r\n </a>\r\n );\r\n }\r\n return (\r\n <Link\r\n to={item?.link || item.navigationURL}\r\n key={index}\r\n className={`dropdown-link ${pathname === item?.link || pathname === item?.navigationURL ? \"active\" : \"\"}`}\r\n >\r\n <div className=\"actions\" data-tip=\"React-tooltip\" data-for={`jk-side-${index}`}>\r\n <span> {trimModuleName} </span>\r\n {trimModuleName?.includes(\"...\") &&<ReactTooltip textColor=\"white\" backgroundColor=\"grey\" place=\"right\" type=\"info\" effect=\"solid\" id={`jk-side-${index}`}>\r\n {t(`ACTION_TEST_${getChildName}`)}\r\n </ReactTooltip>}\r\n {/* <div className=\"tooltip\">\r\n <p className=\"p1\">{trimModuleName}</p>\r\n <span className=\"tooltiptext\">{t(`ACTION_TEST_${getChildName}`)}</span>\r\n </div>{\" \"} */}\r\n </div>\r\n </Link>\r\n );\r\n })}\r\n </React.Fragment>\r\n );\r\n }\r\n};\r\n\r\nexport default SubMenu;\r\n","import React, { useRef, useEffect, useState } from \"react\";\r\nimport SubMenu from \"./SubMenu\";\r\nimport { Loader, SearchIcon } from \"@egovernments/digit-ui-react-components\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nconst EmployeeSideBar = () => {\r\n const sidebarRef = useRef(null);\r\n const { isLoading, data } = Digit.Hooks.useAccessControl();\r\n const [search, setSearch] = useState(\"\");\r\n const { t } = useTranslation();\r\n useEffect(() => {\r\n if (isLoading) {\r\n return <Loader />;\r\n }\r\n sidebarRef.current.style.cursor = \"pointer\";\r\n collapseNav();\r\n }, [isLoading]);\r\n\r\n const expandNav = () => {\r\n sidebarRef.current.style.width = \"260px\";\r\n sidebarRef.current.style.overflow = \"auto\";\r\n\r\n sidebarRef.current.querySelectorAll(\".dropdown-link\").forEach((element) => {\r\n element.style.display = \"flex\";\r\n });\r\n };\r\n const collapseNav = () => {\r\n sidebarRef.current.style.width = \"55px\";\r\n sidebarRef.current.style.overflow = \"hidden\";\r\n\r\n sidebarRef.current.querySelectorAll(\".dropdown-link\").forEach((element) => {\r\n element.style.display = \"none\";\r\n });\r\n sidebarRef.current.querySelectorAll(\".actions\").forEach((element) => {\r\n element.style.padding = \"0\";\r\n });\r\n };\r\n\r\n const configEmployeeSideBar = {};\r\n\r\n data?.actions\r\n .filter((e) => e.url === \"url\")\r\n .forEach((item) => {\r\n if (search == \"\" && item.path !== \"\") {\r\n let index = item.path.split(\".\")[0];\r\n if (index === \"TradeLicense\") index = \"Trade License\";\r\n if (!configEmployeeSideBar[index]) {\r\n configEmployeeSideBar[index] = [item];\r\n } else {\r\n configEmployeeSideBar[index].push(item);\r\n }\r\n } else if (item.path !== \"\" && item?.displayName?.toLowerCase().includes(search.toLowerCase())) {\r\n let index = item.path.split(\".\")[0];\r\n if (index === \"TradeLicense\") index = \"Trade License\";\r\n if (!configEmployeeSideBar[index]) {\r\n configEmployeeSideBar[index] = [item];\r\n } else {\r\n configEmployeeSideBar[index].push(item);\r\n }\r\n }\r\n });\r\n let res = [];\r\n const splitKeyValue = () => {\r\n const keys = Object.keys(configEmployeeSideBar);\r\n keys.sort((a, b) => a.orderNumber - b.orderNumber);\r\n for (let i = 0; i < keys.length; i++) {\r\n if (configEmployeeSideBar[keys[i]][0].path.indexOf(\".\") === -1) {\r\n if (configEmployeeSideBar[keys[i]][0].displayName === \"Home\") {\r\n const homeURL = `/${window?.contextPath}/employee`;\r\n res.unshift({\r\n moduleName: keys[i].toUpperCase(),\r\n icon: configEmployeeSideBar[keys[i]][0],\r\n navigationURL: homeURL,\r\n type: \"single\",\r\n });\r\n } else {\r\n res.push({\r\n moduleName: configEmployeeSideBar[keys[i]][0]?.displayName.toUpperCase(),\r\n type: \"single\",\r\n icon: configEmployeeSideBar[keys[i]][0],\r\n navigationURL: configEmployeeSideBar[keys[i]][0].navigationURL,\r\n });\r\n }\r\n } else {\r\n res.push({\r\n moduleName: keys[i].toUpperCase(),\r\n links: configEmployeeSideBar[keys[i]],\r\n icon: configEmployeeSideBar[keys[i]][0],\r\n orderNumber: configEmployeeSideBar[keys[i]][0].orderNumber,\r\n });\r\n }\r\n }\r\n res.splice(0,1);\r\n const indx = res.findIndex(a => a.moduleName === \"HOME\");\r\n const home = res.splice(indx,1);\r\n res.sort((a,b) => a.moduleName.localeCompare(b.moduleName));\r\n home?.[0] && res.splice(0,0,home[0]);\r\n return res.map((item, index) => {\r\n return <SubMenu item={item} key={index + 1} />;\r\n });\r\n };\r\n\r\n if (isLoading) {\r\n return <Loader />;\r\n }\r\n if (!res) {\r\n return \"\";\r\n }\r\n\r\n const renderSearch = () => {\r\n return (\r\n <div className=\"submenu-container\">\r\n <div className=\"sidebar-link\">\r\n <div className=\"actions search-icon-wrapper\">\r\n <SearchIcon className=\"search-icon\" />\r\n <input\r\n className=\"employee-search-input\"\r\n type=\"text\"\r\n placeholder={t(`ACTION_TEST_SEARCH`)}\r\n name=\"search\"\r\n value={search}\r\n onChange={(e) => setSearch(e.target.value)}\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n };\r\n\r\n return (\r\n <div className=\"sidebar\" ref={sidebarRef} onMouseOver={expandNav} onMouseLeave={collapseNav}>\r\n {renderSearch()}\r\n {splitKeyValue()}\r\n </div>\r\n );\r\n};\r\n\r\nexport default EmployeeSideBar;\r\n","import React from \"react\";\r\nimport { CitizenSideBar } from \"./CitizenSideBar\";\r\nimport EmployeeSideBar from \"./EmployeeSideBar\";\r\n\r\nconst SideBar = ({ t, CITIZEN, isSidebarOpen, toggleSidebar, handleLogout, mobileView, userDetails, modules, linkData, islinkDataLoading }) => {\r\n if (CITIZEN)\r\n return (\r\n <CitizenSideBar\r\n isOpen={isSidebarOpen}\r\n isMobile={true}\r\n toggleSidebar={toggleSidebar}\r\n onLogout={handleLogout}\r\n linkData={linkData}\r\n islinkDataLoading={islinkDataLoading}\r\n />\r\n );\r\n else {\r\n if (!mobileView && userDetails?.access_token) return <EmployeeSideBar {...{ mobileView, userDetails, modules }} />;\r\n else return <CitizenSideBar isOpen={isSidebarOpen} isMobile={true} toggleSidebar={toggleSidebar} onLogout={handleLogout} isEmployee={true} />;\r\n }\r\n};\r\n\r\nexport default SideBar;\r\n","import React, { useState } from \"react\";\r\nimport { EditPencilIcon, LogoutIcon } from \"@egovernments/digit-ui-react-components\";\r\nimport TopBar from \"./TopBar\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport SideBar from \"./SideBar\";\r\nimport LogoutDialog from \"../Dialog/LogoutDialog\";\r\nconst TopBarSideBar = ({\r\n t,\r\n stateInfo,\r\n userDetails,\r\n CITIZEN,\r\n cityDetails,\r\n mobileView,\r\n handleUserDropdownSelection,\r\n logoUrl,\r\n showSidebar = true,\r\n showLanguageChange,\r\n linkData,\r\n islinkDataLoading,\r\n}) => {\r\n const [isSidebarOpen, toggleSidebar] = useState(false);\r\n const history = useHistory();\r\n const [showDialog, setShowDialog] = useState(false);\r\n const handleLogout = () => {\r\n toggleSidebar(false);\r\n setShowDialog(true);\r\n };\r\n const handleOnSubmit = () => {\r\n Digit.UserService.logout();\r\n setShowDialog(false);\r\n }\r\n const handleOnCancel = () => {\r\n setShowDialog(false);\r\n }\r\n const userProfile = () => {\r\n history.push(`/${window?.contextPath}/employee/user/profile`);\r\n };\r\n const userOptions = [\r\n { name: t(\"EDIT_PROFILE\"), icon: <EditPencilIcon className=\"icon\" />, func: userProfile },\r\n { name: t(\"CORE_COMMON_LOGOUT\"), icon: <LogoutIcon className=\"icon\" />, func: handleLogout },\r\n ];\r\n return (\r\n <React.Fragment>\r\n <TopBar\r\n t={t}\r\n stateInfo={stateInfo}\r\n toggleSidebar={toggleSidebar}\r\n isSidebarOpen={isSidebarOpen}\r\n handleLogout={handleLogout}\r\n userDetails={userDetails}\r\n CITIZEN={CITIZEN}\r\n cityDetails={cityDetails}\r\n mobileView={mobileView}\r\n userOptions={userOptions}\r\n handleUserDropdownSelection={handleUserDropdownSelection}\r\n logoUrl={logoUrl}\r\n showLanguageChange={showLanguageChange}\r\n />\r\n {showDialog && (\r\n <LogoutDialog onSelect={handleOnSubmit} onCancel={handleOnCancel} onDismiss={handleOnCancel}></LogoutDialog>\r\n )}\r\n {showSidebar && (\r\n <SideBar\r\n t={t}\r\n CITIZEN={CITIZEN}\r\n isSidebarOpen={isSidebarOpen}\r\n toggleSidebar={toggleSidebar}\r\n handleLogout={handleLogout}\r\n mobileView={mobileView}\r\n userDetails={userDetails}\r\n linkData={linkData}\r\n islinkDataLoading={islinkDataLoading}\r\n />\r\n )}\r\n </React.Fragment>\r\n );\r\n};\r\nexport default TopBarSideBar;","import React, { useState, useEffect } from \"react\";\r\nimport { GalleryIcon, RemoveIcon, UploadFile } from \"@egovernments/digit-ui-react-components\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nfunction UploadDrawer({ setProfilePic, closeDrawer, userType, removeProfilePic ,showToast}) {\r\n const [uploadedFile, setUploadedFile] = useState(null);\r\n const [file, setFile] = useState(\"\");\r\n const [error, setError] = useState(null);\r\n const { t } = useTranslation();\r\n const selectfile = (e) => setFile(e.target.files[0]);\r\n const removeimg = () => {removeProfilePic(); closeDrawer()};\r\n const onOverlayBodyClick = () => closeDrawer();\r\n\r\n useEffect(() => {\r\n (async () => {\r\n setError(null);\r\n if (file) {\r\n if (file.size >= 1000000) {\r\n showToast(\"error\", t(\"CORE_COMMON_PROFILE_MAXIMUM_UPLOAD_SIZE_EXCEEDED\"))\r\n setError(t(\"CORE_COMMON_PROFILE_MAXIMUM_UPLOAD_SIZE_EXCEEDED\"));\r\n } else {\r\n try {\r\n const response = await Digit.UploadServices.Filestorage(`${userType}-profile`, file, Digit.ULBService.getStateId());\r\n if (response?.data?.files?.length > 0) {\r\n const fileStoreId = response?.data?.files[0]?.fileStoreId;\r\n setUploadedFile(fileStoreId);\r\n setProfilePic(fileStoreId);\r\n } else {\r\n showToast(\"error\", t(\"CORE_COMMON_PROFILE_FILE_UPLOAD_ERROR\"))\r\n setError(t(\"CORE_COMMON_PROFILE_FILE_UPLOAD_ERROR\"));\r\n }\r\n } catch (err) {\r\n showToast(\"error\",t(\"CORE_COMMON_PROFILE_INVALID_FILE_INPUT\"))\r\n // setError(t(\"PT_FILE_UPLOAD_ERROR\"));\r\n }\r\n }\r\n }\r\n })();\r\n }, [file]);\r\n\r\n return (\r\n <React.Fragment>\r\n <div\r\n style={{\r\n position: \"fixed\",\r\n top: \"0\",\r\n left: \"0\",\r\n right: \"0\",\r\n bottom: \"0\",\r\n width: \"100%\",\r\n height: \"100vh\",\r\n backgroundColor: \"rgba(0,0,0,.5)\",\r\n // zIndex: \"9998\",\r\n }}\r\n onClick={onOverlayBodyClick}\r\n ></div>\r\n <div\r\n style={{\r\n width: \"100%\",\r\n justifyContent: \"space-between\",\r\n display: \"flex\",\r\n backgroundColor: \"white\",\r\n alignItems: \"center\",\r\n position: \"fixed\",\r\n left: \"0\",\r\n right: \"0\",\r\n height: \"20%\",\r\n bottom: userType === \"citizen\" ? \"2.5rem\" : \"0\",\r\n zIndex: \"2\",\r\n }}\r\n >\r\n <div\r\n style={{ display: \"flex\", flex: \"1\", flexDirection: \"column\", width: \"100%\", justifyContent: \"center\", alignItems: \"center\", gap: \"8px 0\" }}\r\n >\r\n <label for=\"file\" style={{ cursor: \"pointer\" }}>\r\n {\" \"}\r\n <GalleryIcon />\r\n </label>\r\n <label style={{ cursor: \"pointer\" }}> Gallery</label>\r\n <input type=\"file\" id=\"file\" accept=\"image/*, .png, .jpeg, .jpg\" onChange={selectfile} style={{ display: \"none\" }} />\r\n </div>\r\n\r\n <div\r\n style={{ display: \"flex\", flex: \"1\", width: \"100%\", justifyContent: \"center\", alignItems: \"center\", flexDirection: \"column\", gap: \"8px 0\" }}\r\n >\r\n <button onClick={removeimg}>\r\n <RemoveIcon />\r\n </button>\r\n <label style={{ cursor: \"pointer\" }}>Remove</label>\r\n </div>\r\n </div>\r\n </React.Fragment>\r\n );\r\n}\r\n\r\nexport default UploadDrawer;\r\n","import {\r\n CameraIcon,\r\n CardLabel,\r\n Dropdown,\r\n LabelFieldPair,\r\n MobileNumber,\r\n TextInput,\r\n Toast,\r\n CardLabelError,\r\n BreadCrumb,\r\n BackButton,\r\n Loader,\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport UploadDrawer from \"./ImageUpload/UploadDrawer\";\r\n\r\nconst defaultImage =\r\n \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO4AAADUCAMAAACs0e/bAAAAM1BMVEXK0eL\" +\r\n \"/\" +\r\n \"/\" +\r\n \"/\" +\r\n \"/Dy97GzuD4+fvL0uPg5O7T2efb4OvR1+Xr7vTk5/Df4+37/P3v8fbO1eTt8PUsnq5FAAAGqElEQVR4nO2d25ajIBBFCajgvf/\" +\r\n \"/a0eMyZgEjcI5xgt7Hmatme507UaxuJXidiDqjmSgeVIMlB1ZR1WZAf2gbdu0QwixSYzjOJPmHurfEGEfY9XzjNGG9whQCeVAuv5xQEySLtR9hPuIcwj0EeroN5m3D1IbsbgHK0esiQ9MKs\" +\r\n \"qXVr8Hm/a/Pulk6wihpCIXBw3dh7bTvRBt9+dC5NfS1VH3xETdM3MxXRN1T0zUPTNR98xcS1dlV9NNfx3DhkTdM6PKqHteVBF1z0vU5f0sKdpc2zWLKutXrjJjdLvpesRmukqYonauPhXpds\" +\r\n \"Lb6CppmpnltsYIuY2yavi6Mi2/rzAWm1zUfF0limVLqkZyA+mDYevKBS37aGC+L1lX5e7uyU1Cv565uiua9k5LFqbqqrnu2I3m+jJ11ZoLeRtfmdB0Uw/ZDsP0VTxdn7a1VERfmq7Xl\" +\r\n \"Xyn5D2QWLoq8bZlPoBJumphJjVBw/Ll6CoTZGsTDs4NrGqKbqBth8ZHJUi6cn168QmleSm6GmB7Kxm+6obXlf7PoDHosCwM3QpiS2legi6ocSl3L0G3BdneDDgwQdENfeY+SfDJBkF37Z\" +\r\n \"B+GvwzA6/rMaafAn8143VhPZWdjMWG1oHXhdnemgPoAvLlB/iZyRTfVeF06wPoQhJmlm4bdcOAZRlRN5gcPc5SoPEQR1fDdbOo6wn+uYvXxY0QCLom6gYROKH+Aj5nvphuFXWDiLpRdxl\" +\r\n \"/19LFT95k6CHCrnW7pCDqBn1i1PUFvii2c11oZOJ6usWeH0RRNzC4Zs+6FTi2nevCVwCjbugnXklX5fkfTldL8PEilUB1kfNyN1u9MME2sATr4lbuB7AjfLAuvsRm1A0g6gYRdcPAjvBlje\" +\r\n \"2Z8brI8OC68AcRdlCkwLohx2mcZMjw9q+LzarQurjtnwPYAydX08WecECO/u6Ad0GBdYG7jO5gB4Ap+PwKcA9ZT43dn4/W9TyiPAn4OAJaF7h3uwe8StSCddFdM3jqFa2LvnnB5zzhuuBBAj\" +\r\n \"Y4gi50cg694gnXhTYvfMdrjtcFZhrwE9r41gUem8IXWMC3LrBzxh+a0gRd1N1LOK7M0IUUGuggvEmHoStA2/MJh7MpupiDU4TzjhxdzLAoO4ouZvqVURbFMHQlZD6SUeWHoguZsSLUGegreh\" +\r\n \"A+FZFowPdUWTi6iMoZlIpGGUUXkDbjj/9ZOLqAQS/+GIKl5BQOCn/ycqpzkXSDm5dU7ZWkG7wUyGlcmm7g5Ux56AqirgoaJ7BeokPTDbp9CbVunjFxPrl7+HqnkrSq1Da7JX20f3dV8yJi6v\" +\r\n \"oO81mX8vV0mx3qUsZCPRfTlVRdz2EvdufYGDvNQvvwqHtmXd+a1ITinwNcXc+lT6JuzdT1XDyBn/x7wtX1HCQQdW9MXc8xArGrirowfLeUEbMqqq6f7TF1lfRdOuGNiGi6SpT+WxY06xUfNN\" +\r\n \"2wBfyE9I4tlm7w5hvOPDNJN3yNiLMipji6gE3chKhouoCtN5x3QlF0EZt8OW/8ougitqJQlk1aii7iFC9l0MvRReyao7xNjKML2Z/PuHlzhi5mFxljiZeiC9rPTEisNEMX9KYAwo5Xhi7qaA\" +\r\n \"3hamboYm7dG+NVrXhdaYDv5zFaQZsYrCtbbAGnjkQDX2+J1FXCwOsqWOpKoIQNTFdqYBWydxqNqUoG0pVpCS+H8kaJaGKErlIaXj7CRRE+gRWuKwW9YZ80oVOUgbpdT0zpnSZJTIiwCtJVelv\" +\r\n \"Xntr4P5j6BWfPb5Wcx84C4cq3hb11lco2u2Mdwp6XdJ/Ne3wb8DWdfiRenZaXrhLwOj4e+GQeHroy3YOspS7TlU28Wle2m2QUS0mqdcbrdNW+ZHsSsyK7tBfm0q/dWcv+Z3mytVx3t7KWulq\" +\r\n \"Ue6ilunu8jF8pFwgv1FXp3mUt35OtRbr7eM4u4Gs6vUBXgeuHc5kfE/cbvWZtkROLm1DMtLCy80tzsu2PRj0hTI8fvrQuvsjlJkyutszq+m423wHaLTyniy/XuiGZ84LuT+m5ZfNfRxyGs7L\" +\r\n \"XZOvia7VujatUwVTrIt+Q/Csc7Tuhe+BOakT10b4TuoiiJjvgU9emTO42PwEfBa+cuodKkuf42DXr1D3JpXz73Hnn0j10evHKe+nufgfUm+7B84sX9FfdEzXux2DBpWuKokkCqN/5pa/8pmvn\" +\r\n \"L+RGKCddCGmatiPyPB/+ekO/M/q/7uvbt22kTt3zEnXPzCV13T3Gel4/6NduDu66xRvlPNkM1RjjxUdv+4WhGx6TftD19Q/dfzpwcHO+rE3fAAAAAElFTkSuQmCC\";\r\n\r\nconst UserProfile = ({ stateCode, userType, cityDetails }) => {\r\n const history = useHistory();\r\n const { t } = useTranslation();\r\n const url = window.location.href;\r\n const stateId = Digit.ULBService.getStateId();\r\n const tenant = Digit.ULBService.getCurrentTenantId();\r\n const userInfo = Digit.UserService.getUser()?.info || {};\r\n const [userDetails, setUserDetails] = useState(null);\r\n const [name, setName] = useState(userInfo?.name ? userInfo.name : \"\");\r\n const [email, setEmail] = useState(userInfo?.emailId ? userInfo.emailId : \"\");\r\n const [gender, setGender] = useState(userDetails?.gender);\r\n const [city, setCity] = useState(userInfo?.permanentCity ? userInfo.permanentCity : cityDetails.name);\r\n const [mobileNumber, setMobileNo] = useState(userInfo?.mobileNumber ? userInfo.mobileNumber : \"\");\r\n const [profilePic, setProfilePic] = useState(null);\r\n const [profileImg, setProfileImg] = useState(\"\");\r\n const [openUploadSlide, setOpenUploadSide] = useState(false);\r\n const [changepassword, setChangepassword] = useState(false);\r\n const [currentPassword, setCurrentPassword] = useState(\"\");\r\n const [newPassword, setNewPassword] = useState(\"\");\r\n const [confirmPassword, setConfirmPassword] = useState(\"\");\r\n const [toast, setToast] = useState(null);\r\n const [loading, setLoading] = useState(false);\r\n const [windowWidth, setWindowWidth] = React.useState(window.innerWidth);\r\n const [errors, setErrors] = React.useState({});\r\n const isMobile = window.Digit.Utils.browser.isMobile();\r\n\r\n const getUserInfo = async () => {\r\n const uuid = userInfo?.uuid;\r\n if (uuid) {\r\n const usersResponse = await Digit.UserService.userSearch(tenant, { uuid: [uuid] }, {});\r\n usersResponse && usersResponse.user && usersResponse.user.length && setUserDetails(usersResponse.user[0]);\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n window.addEventListener(\"resize\", () => setWindowWidth(window.innerWidth));\r\n return () => {\r\n window.removeEventListener(\"resize\", () => setWindowWidth(window.innerWidth));\r\n };\r\n });\r\n\r\n useEffect(() => {\r\n setLoading(true);\r\n\r\n getUserInfo();\r\n\r\n setGender({\r\n i18nKey: undefined,\r\n code: userDetails?.gender,\r\n value: userDetails?.gender,\r\n });\r\n\r\n const thumbs = userDetails?.photo?.split(\",\");\r\n setProfileImg(thumbs?.at(0));\r\n\r\n setLoading(false);\r\n }, [userDetails !== null]);\r\n\r\n let validation = {};\r\n const editScreen = false; // To-do: Deubug and make me dynamic or remove if not needed\r\n const onClickAddPic = () => setOpenUploadSide(!openUploadSlide);\r\n const TogleforPassword = () => setChangepassword(!changepassword);\r\n const setGenderName = (value) => setGender(value);\r\n const closeFileUploadDrawer = () => setOpenUploadSide(false);\r\n\r\n const setUserName = (value) => {\r\n setName(value);\r\n\r\n if(!new RegExp(/^[a-zA-Z ]+$/i).test(value) || value.length === 0 || value.length > 50){\r\n setErrors({...errors, userName : {type: \"pattern\", message: \"CORE_COMMON_PROFILE_NAME_INVALID\"}});\r\n }else{\r\n setErrors({...errors, userName : null})\r\n }\r\n }\r\n\r\n const setUserEmailAddress = (value) => {\r\n setEmail(value);\r\n\r\n if(value.length && !(value.includes(\"@\") && value.includes(\".\"))){\r\n setErrors({...errors, emailAddress: {type: \"pattern\", message: \"CORE_COMMON_PROFILE_EMAIL_INVALID\"}})\r\n }else{\r\n setErrors({...errors, emailAddress : null})\r\n }\r\n }\r\n\r\n const setUserMobileNumber = (value) => {\r\n setMobileNo(value);\r\n\r\n if (userType === \"employee\" && !new RegExp(/^[6-9]{1}[0-9]{9}$/).test(value)) {\r\n setErrors({...errors, mobileNumber: {type: 'pattern', message: \"CORE_COMMON_PROFILE_MOBILE_NUMBER_INVALID\"}})\r\n }else{\r\n setErrors({...errors, mobileNumber: null});\r\n }\r\n }\r\n\r\n const setUserCurrentPassword = (value) => {\r\n setCurrentPassword(value);\r\n\r\n if (!new RegExp(/^([a-zA-Z0-9@#$%]{8,15})$/i).test(value)) {\r\n setErrors({...errors, currentPassword: {type: \"pattern\", message: \"CORE_COMMON_PROFILE_PASSWORD_INVALID\"}})\r\n }else{\r\n setErrors({...errors, currentPassword: null});\r\n }\r\n }\r\n\r\n const setUserNewPassword = (value) => {\r\n setNewPassword(value);\r\n\r\n if (!new RegExp(/^([a-zA-Z0-9@#$%]{8,15})$/i).test(value)) {\r\n setErrors({...errors, newPassword: {type: \"pattern\", message: \"CORE_COMMON_PROFILE_PASSWORD_INVALID\"}})\r\n }else{\r\n setErrors({...errors, newPassword: null});\r\n }\r\n }\r\n\r\n const setUserConfirmPassword = (value) => {\r\n setConfirmPassword(value);\r\n\r\n if (!new RegExp(/^([a-zA-Z0-9@#$%]{8,15})$/i).test(value)) {\r\n setErrors({...errors, confirmPassword: {type: \"pattern\", message: \"CORE_COMMON_PROFILE_PASSWORD_INVALID\"}})\r\n }else{\r\n setErrors({...errors, confirmPassword: null});\r\n }\r\n }\r\n\r\n const removeProfilePic = () => {\r\n setProfilePic(null);\r\n setProfileImg(null);\r\n };\r\n\r\n const showToast = (type, message, duration = 5000) => {\r\n setToast({ key: type, action: message });\r\n setTimeout(() => {\r\n setToast(null);\r\n }, duration);\r\n };\r\n\r\n const updateProfile = async () => {\r\n setLoading(true);\r\n try {\r\n const requestData = {\r\n ...userInfo,\r\n name,\r\n gender: gender?.value,\r\n emailId: email,\r\n photo: profilePic,\r\n };\r\n\r\n if (!new RegExp(/^([a-zA-Z ])*$/).test(name) || name === \"\" || name.length > 50 || name.length < 1) {\r\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_NAME_INVALID\" });\r\n }\r\n\r\n if (userType === \"employee\" && !new RegExp(/^[6-9]{1}[0-9]{9}$/).test(mobileNumber)) {\r\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_MOBILE_NUMBER_INVALID\" });\r\n }\r\n\r\n if (email.length && !(email.includes(\"@\") && email.includes(\".\"))) {\r\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_EMAIL_INVALID\" });\r\n }\r\n\r\n if (currentPassword.length || newPassword.length || confirmPassword.length) {\r\n if (newPassword !== confirmPassword) {\r\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_PASSWORD_MISMATCH\" });\r\n }\r\n\r\n if (!(currentPassword.length && newPassword.length && confirmPassword.length)) {\r\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_PASSWORD_INVALID\" });\r\n }\r\n\r\n if (!new RegExp(/^([a-zA-Z0-9@#$%]{8,15})$/i).test(newPassword) && !new RegExp(/^([a-zA-Z0-9@#$%]{8,15})$/i).test(confirmPassword)) {\r\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_PASSWORD_INVALID\" });\r\n }\r\n }\r\n\r\n const { responseInfo, user } = await Digit.UserService.updateUser(requestData, stateCode);\r\n\r\n if (responseInfo && responseInfo.status === \"200\") {\r\n const user = Digit.UserService.getUser();\r\n\r\n if (user) {\r\n Digit.UserService.setUser({\r\n ...user,\r\n info: {\r\n ...user.info,\r\n name,\r\n mobileNumber,\r\n emailId: email,\r\n permanentCity: city,\r\n },\r\n });\r\n }\r\n }\r\n\r\n if (currentPassword.length && newPassword.length && confirmPassword.length) {\r\n const requestData = {\r\n existingPassword: currentPassword,\r\n newPassword: newPassword,\r\n tenantId: tenant,\r\n type: \"EMPLOYEE\",\r\n username: userInfo?.userName,\r\n confirmPassword: confirmPassword,\r\n };\r\n\r\n if (newPassword === confirmPassword) {\r\n try {\r\n const res = await Digit.UserService.changePassword(requestData, tenant);\r\n\r\n const { responseInfo: changePasswordResponseInfo } = res;\r\n if (changePasswordResponseInfo?.status && changePasswordResponseInfo.status === \"200\") {\r\n showToast(\"success\", t(\"CORE_COMMON_PROFILE_UPDATE_SUCCESS_WITH_PASSWORD\"), 5000);\r\n } else {\r\n throw \"\";\r\n }\r\n } catch (error) {\r\n throw JSON.stringify({\r\n type: \"error\",\r\n message: error.Errors?.at(0)?.description ? error.Errors.at(0).description : \"CORE_COMMON_PROFILE_UPDATE_ERROR_WITH_PASSWORD\",\r\n });\r\n }\r\n } else {\r\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_ERROR_PASSWORD_NOT_MATCH\" });\r\n }\r\n } else if (responseInfo?.status && responseInfo.status === \"200\") {\r\n showToast(\"success\", t(\"CORE_COMMON_PROFILE_UPDATE_SUCCESS\"), 5000);\r\n }\r\n } catch (error) {\r\n const errorObj = JSON.parse(error);\r\n showToast(errorObj.type, t(errorObj.message), 5000);\r\n }\r\n\r\n setLoading(false);\r\n };\r\n\r\n let menu = [];\r\n const { data: Menu } = Digit.Hooks.pt.useGenderMDMS(stateId, \"common-masters\", \"GenderType\");\r\n Menu &&\r\n Menu.map((genderDetails) => {\r\n menu.push({ i18nKey: `PT_COMMON_GENDER_${genderDetails.code}`, code: `${genderDetails.code}`, value: `${genderDetails.code}` });\r\n });\r\n\r\n const setFileStoreId = async (fileStoreId) => {\r\n setProfilePic(fileStoreId);\r\n\r\n const thumbnails = fileStoreId ? await getThumbnails([fileStoreId], stateId) : null;\r\n\r\n setProfileImg(thumbnails?.thumbs[0]);\r\n\r\n closeFileUploadDrawer();\r\n };\r\n\r\n const getThumbnails = async (ids, tenantId) => {\r\n const res = await Digit.UploadServices.Filefetch(ids, tenantId);\r\n if (res.data.fileStoreIds && res.data.fileStoreIds.length !== 0) {\r\n return {\r\n thumbs: res.data.fileStoreIds.map((o) => o.url.split(\",\")[3]),\r\n images: res.data.fileStoreIds.map((o) => Digit.Utils.getFileUrl(o.url)),\r\n };\r\n } else {\r\n return null;\r\n }\r\n };\r\n\r\n if (loading) return <Loader></Loader>;\r\n\r\n return (\r\n <div className=\"user-profile\">\r\n <section style={{ margin: userType === \"citizen\" ? \"8px\" : \"24px\" }}>\r\n {userType === \"citizen\" ? (\r\n <BackButton></BackButton>\r\n ) : (\r\n <BreadCrumb\r\n crumbs={[\r\n {\r\n path: `/${window?.contextPath}/employee`,\r\n content: t(\"ES_COMMON_HOME\"),\r\n show: true,\r\n },\r\n {\r\n path: `/${window?.contextPath}/employee/user/profile`,\r\n content: t(\"ES_COMMON_PAGE_1\"),\r\n show: url.includes(\"/user/profile\"),\r\n },\r\n ]}\r\n ></BreadCrumb>\r\n )}\r\n </section>\r\n <div\r\n style={{\r\n display: \"flex\",\r\n flex: 1,\r\n flexDirection: windowWidth < 768 || userType === \"citizen\" ? \"column\" : \"row\",\r\n margin: userType === \"citizen\" ? \"8px\" : \"16px\",\r\n gap: userType === \"citizen\" ? \"\" : \"0 24px\",\r\n boxShadow: userType === \"citizen\" ? \"1px 1px 4px 0px rgba(0,0,0,0.2)\" : \"\",\r\n background: userType === \"citizen\" ? \"white\" : \"\",\r\n borderRadius: userType === \"citizen\" ? \"4px\" : \"\",\r\n maxWidth: userType === \"citizen\" ? \"960px\" : \"\",\r\n }}\r\n >\r\n <section\r\n style={{\r\n position: \"relative\",\r\n display: \"flex\",\r\n flex: userType === \"citizen\" ? 1 : 2.5,\r\n justifyContent: \"center\",\r\n alignItems: \"center\",\r\n maxWidth: \"100%\",\r\n height: \"376px\",\r\n borderRadius: \"4px\",\r\n boxShadow: userType === \"citizen\" ? \"\" : \"1px 1px 4px 0px rgba(0,0,0,0.2)\",\r\n border: `${userType === \"citizen\" ? \"8px\" : \"24px\"} solid #fff`,\r\n background: \"#EEEEEE\",\r\n padding: userType === \"citizen\" ? \"8px\" : \"16px\",\r\n }}\r\n >\r\n <div\r\n style={{\r\n position: \"relative\",\r\n height: userType === \"citizen\" ? \"114px\" : \"150px\",\r\n width: userType === \"citizen\" ? \"114px\" : \"150px\",\r\n margin: \"16px\",\r\n }}\r\n >\r\n <img\r\n style={{\r\n margin: \"auto\",\r\n borderRadius: \"300px\",\r\n justifyContent: \"center\",\r\n height: \"100%\",\r\n width: \"100%\",\r\n }}\r\n src={!profileImg || profileImg === \"\" ? defaultImage : profileImg}\r\n />\r\n <button style={{ position: \"absolute\", left: \"50%\", bottom: \"-24px\", transform: \"translateX(-50%)\" }} onClick={onClickAddPic}>\r\n <CameraIcon />\r\n </button>\r\n </div>\r\n </section>\r\n <section\r\n style={{\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n flex: userType === \"citizen\" ? 1 : 7.5,\r\n width: \"100%\",\r\n borderRadius: \"4px\",\r\n height: \"fit-content\",\r\n boxShadow: userType === \"citizen\" ? \"\" : \"1px 1px 4px 0px rgba(0,0,0,0.2)\",\r\n background: \"white\",\r\n padding: userType === \"citizen\" ? \"8px\" : \"24px\",\r\n paddingBottom : \"20px\",\r\n }}\r\n >\r\n {userType === \"citizen\" ? (\r\n <React.Fragment>\r\n <LabelFieldPair>\r\n <CardLabel style={editScreen ? { color: \"#B1B4B6\" } : {}}>{`${t(\"CORE_COMMON_PROFILE_NAME\")}`}*</CardLabel>\r\n <div style={{ width: \"100%\", maxWidth:\"960px\" }}>\r\n <TextInput\r\n t={t}\r\n style={{ width: \"100%\" }}\r\n type={\"text\"}\r\n isMandatory={false}\r\n name=\"name\"\r\n value={name}\r\n onChange={(e)=>setUserName(e.target.value)}\r\n {...(validation = {\r\n isRequired: true,\r\n pattern: \"^[a-zA-Z-.`' ]*$\",\r\n type: \"tel\",\r\n title: t(\"CORE_COMMON_PROFILE_NAME_ERROR_MESSAGE\"),\r\n })}\r\n disable={editScreen}\r\n />\r\n {errors?.userName && <CardLabelError> {errors?.userName?.message} </CardLabelError>}\r\n </div>\r\n </LabelFieldPair>\r\n\r\n <LabelFieldPair>\r\n <CardLabel style={editScreen ? { color: \"#B1B4B6\" } : {}}>{`${t(\"CORE_COMMON_PROFILE_GENDER\")}`}</CardLabel>\r\n <Dropdown\r\n style={{ width: \"100%\" }}\r\n className=\"form-field\"\r\n selected={gender?.length === 1 ? gender[0] : gender}\r\n disable={gender?.length === 1 || editScreen}\r\n option={menu}\r\n select={setGenderName}\r\n value={gender}\r\n optionKey=\"code\"\r\n t={t}\r\n name=\"gender\"\r\n />\r\n </LabelFieldPair>\r\n\r\n <LabelFieldPair>\r\n <CardLabel style={editScreen ? { color: \"#B1B4B6\" } : {}}>{`${t(\"CORE_COMMON_PROFILE_EMAIL\")}`}</CardLabel>\r\n <div style={{ width: \"100%\" }}>\r\n <TextInput\r\n t={t}\r\n style={{ width: \"100%\" }}\r\n type={\"email\"}\r\n isMandatory={false}\r\n optionKey=\"i18nKey\"\r\n name=\"email\"\r\n value={email}\r\n onChange={(e)=>setUserEmailAddress(e.target.value)}\r\n disable={editScreen}\r\n />\r\n {errors?.emailAddress && <CardLabelError> {errors?.emailAddress?.message} </CardLabelError>}\r\n </div>\r\n </LabelFieldPair>\r\n \r\n <button\r\n onClick={updateProfile}\r\n style={{\r\n marginTop: \"24px\",\r\n backgroundColor: \"#F47738\",\r\n width: \"100%\",\r\n height: \"40px\",\r\n color: \"white\",\r\n \r\n maxWidth : isMobile? \"100%\":\"240px\",\r\n borderBottom: \"1px solid black\",\r\n }}\r\n >\r\n {t(\"CORE_COMMON_SAVE\")}\r\n </button>\r\n </React.Fragment>\r\n ) : (\r\n <React.Fragment>\r\n <LabelFieldPair style={{ display: \"flex\" }}>\r\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>\r\n {`${t(\"CORE_COMMON_PROFILE_NAME\")}`}*\r\n </CardLabel>\r\n <div style={{width: \"100%\"}}>\r\n <TextInput\r\n t={t}\r\n type={\"text\"}\r\n isMandatory={false}\r\n name=\"name\"\r\n value={name}\r\n onChange={(e)=>setUserName(e.target.value)}\r\n placeholder=\"Enter Your Name\"\r\n {...(validation = {\r\n isRequired: true,\r\n pattern: \"^[a-zA-Z-.`' ]*$\",\r\n type: \"text\",\r\n title: t(\"CORE_COMMON_PROFILE_NAME_ERROR_MESSAGE\"),\r\n })}\r\n disable={editScreen}\r\n />\r\n {errors?.userName && <CardLabelError style={{margin: 0, padding: 0}}> {errors?.userName?.message} </CardLabelError>}\r\n </div>\r\n </LabelFieldPair>\r\n\r\n <LabelFieldPair style={{ display: \"flex\" }}>\r\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\r\n \"CORE_COMMON_PROFILE_GENDER\"\r\n )}`}</CardLabel>\r\n <Dropdown\r\n style={{ width: \"100%\" }}\r\n selected={gender?.length === 1 ? gender[0] : gender}\r\n disable={gender?.length === 1 || editScreen}\r\n option={menu}\r\n select={setGenderName}\r\n value={gender}\r\n optionKey=\"code\"\r\n t={t}\r\n name=\"gender\"\r\n />\r\n </LabelFieldPair>\r\n\r\n <LabelFieldPair style={{ display: \"flex\" }}>\r\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\r\n \"CORE_COMMON_PROFILE_CITY\"\r\n )}`}</CardLabel>\r\n <div style={{width: \"100%\"}}>\r\n <TextInput\r\n t={t}\r\n type={\"text\"}\r\n isMandatory={false}\r\n name=\"city\"\r\n value={t(city)}\r\n onChange={(e) => setCity(e.target.value)}\r\n placeholder=\"Enter Your City Name\"\r\n {...(validation = {\r\n isRequired: true,\r\n // pattern: \"^[a-zA-Z-.`' ]*$\",\r\n type: \"text\",\r\n title: t(\"CORE_COMMON_PROFILE_CITY_ERROR_MESSAGE\"),\r\n })}\r\n disable={true}\r\n />\r\n <CardLabelError></CardLabelError>\r\n </div>\r\n </LabelFieldPair>\r\n \r\n <LabelFieldPair style={{ display: \"flex\" }}>\r\n <CardLabel className=\"profile-label-margin\" style={{ width: \"300px\" }}>{`${t(\"CORE_COMMON_PROFILE_MOBILE_NUMBER\")}*`}</CardLabel>\r\n <div style={{ width: \"100%\" }}>\r\n <MobileNumber\r\n value={mobileNumber}\r\n style={{ width: \"100%\" }}\r\n name=\"mobileNumber\"\r\n placeholder=\"Enter a valid Mobile No.\"\r\n onChange={(value) => setUserMobileNumber(value)}\r\n disable={true}\r\n {...{ required: true, pattern: \"[6-9]{1}[0-9]{9}\", type: \"tel\", title: t(\"CORE_COMMON_PROFILE_MOBILE_NUMBER_INVALID\") }}\r\n />\r\n {errors?.mobileNumber && <CardLabelError style={{margin: 0, padding: 0}}> {errors?.mobileNumber?.message} </CardLabelError>}\r\n </div>\r\n </LabelFieldPair>\r\n \r\n <LabelFieldPair style={{ display: \"flex\" }}>\r\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\r\n \"CORE_COMMON_PROFILE_EMAIL\"\r\n )}`}</CardLabel>\r\n <div style={{width: \"100%\"}}>\r\n <TextInput\r\n t={t}\r\n type={\"email\"}\r\n isMandatory={false}\r\n placeholder=\"Enter a valid Email\"\r\n optionKey=\"i18nKey\"\r\n name=\"email\"\r\n value={email}\r\n onChange={(e)=>setUserEmailAddress(e.target.value)}\r\n disable={editScreen}\r\n />\r\n {errors?.emailAddress && <CardLabelError> {errors?.emailAddress?.message} </CardLabelError>}\r\n </div>\r\n </LabelFieldPair>\r\n\r\n <LabelFieldPair>\r\n <div>\r\n <a style={{ color: \"orange\", cursor: \"default\", marginBottom: \"5\", cursor: \"pointer\" }} onClick={TogleforPassword}>\r\n {t(\"CORE_COMMON_CHANGE_PASSWORD\")}\r\n </a>\r\n {changepassword ? (\r\n <div style={{ marginTop: \"10px\" }}>\r\n <LabelFieldPair style={{ display: \"flex\" }}>\r\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\r\n \"CORE_COMMON_PROFILE_CURRENT_PASSWORD\"\r\n )}`}</CardLabel>\r\n <div style={{width: \"100%\"}}>\r\n <TextInput\r\n t={t}\r\n type={\"password\"}\r\n isMandatory={false}\r\n name=\"name\"\r\n pattern=\"^([a-zA-Z0-9@#$%])+$\"\r\n onChange={(e) => setUserCurrentPassword(e.target.value)}\r\n disable={editScreen}\r\n />\r\n {errors?.currentPassword && <CardLabelError>{errors?.currentPassword?.message}</CardLabelError>}\r\n </div>\r\n </LabelFieldPair>\r\n\r\n <LabelFieldPair style={{ display: \"flex\" }}>\r\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\r\n \"CORE_COMMON_PROFILE_NEW_PASSWORD\"\r\n )}`}</CardLabel>\r\n <div style={{width: \"100%\"}}>\r\n <TextInput\r\n t={t}\r\n type={\"password\"}\r\n isMandatory={false}\r\n name=\"name\"\r\n pattern=\"^([a-zA-Z0-9@#$%])+$\"\r\n onChange={(e) => setUserNewPassword(e.target.value)}\r\n disable={editScreen}\r\n />\r\n {errors?.newPassword && <CardLabelError>{errors?.newPassword?.message}</CardLabelError>}\r\n </div>\r\n </LabelFieldPair>\r\n\r\n <LabelFieldPair style={{ display: \"flex\" }}>\r\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\r\n \"CORE_COMMON_PROFILE_CONFIRM_PASSWORD\"\r\n )}`}</CardLabel>\r\n <div style={{width: \"100%\"}}>\r\n <TextInput\r\n t={t}\r\n type={\"password\"}\r\n isMandatory={false}\r\n name=\"name\"\r\n pattern=\"^([a-zA-Z0-9@#$%])+$\"\r\n onChange={(e) => setUserConfirmPassword(e.target.value)}\r\n disable={editScreen}\r\n />\r\n {errors?.confirmPassword && <CardLabelError>{errors?.confirmPassword?.message}</CardLabelError>}\r\n </div>\r\n </LabelFieldPair>\r\n </div>\r\n ) : (\r\n \"\"\r\n )}\r\n </div>\r\n </LabelFieldPair>\r\n </React.Fragment>\r\n )}\r\n </section>\r\n </div>\r\n\r\n {userType === \"employee\" ? (\r\n <div\r\n style={{ height: \"88px\", backgroundColor: \"#FFFFFF\", display: \"flex\", justifyContent: \"flex-end\", marginTop: \"64px\", alignItems: \"center\" }}\r\n >\r\n <button\r\n onClick={updateProfile}\r\n style={{\r\n marginTop: \"24px\",\r\n backgroundColor: \"#F47738\",\r\n width: windowWidth < 768 ? \"100%\" : \"248px\",\r\n height: \"40px\",\r\n float: \"right\",\r\n margin: windowWidth < 768 ? \"0 16px\" : \"\",\r\n marginRight: windowWidth < 768 ? \"16px\" : \"31px\",\r\n color: \"white\",\r\n borderBottom: \"1px solid black\",\r\n }}\r\n >\r\n {t(\"CORE_COMMON_SAVE\")}\r\n </button>\r\n </div>\r\n ) : (\r\n \"\"\r\n )}\r\n {toast && (\r\n <Toast\r\n error={toast.key === \"error\"}\r\n label={t(toast.key === \"success\" ? `CORE_COMMON_PROFILE_UPDATE_SUCCESS` : toast.action)}\r\n onClose={() => setToast(null)}\r\n style={{ maxWidth: \"670px\" }}\r\n />\r\n )}\r\n\r\n {openUploadSlide == true ? (\r\n <UploadDrawer\r\n setProfilePic={setFileStoreId}\r\n closeDrawer={closeFileUploadDrawer}\r\n userType={userType}\r\n removeProfilePic={removeProfilePic}\r\n showToast={showToast}\r\n />\r\n ) : (\r\n \"\"\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nexport default UserProfile;\r\n","import React, { useEffect } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { Redirect, Route, Switch, useLocation, useRouteMatch, useHistory } from \"react-router-dom\";\r\nimport { AppModules } from \"../../components/AppModules\";\r\nimport ErrorBoundary from \"../../components/ErrorBoundaries\";\r\nimport TopBarSideBar from \"../../components/TopBarSideBar\";\r\nimport ChangePassword from \"./ChangePassword\";\r\nimport ForgotPassword from \"./ForgotPassword\";\r\nimport LanguageSelection from \"./LanguageSelection\";\r\nimport EmployeeLogin from \"./Login\";\r\nimport UserProfile from \"../citizen/Home/UserProfile\";\r\nimport ErrorComponent from \"../../components/ErrorComponent\";\r\n\r\nconst userScreensExempted = [\"user/profile\", \"user/error\"];\r\n\r\nconst EmployeeApp = ({\r\n stateInfo,\r\n userDetails,\r\n CITIZEN,\r\n cityDetails,\r\n mobileView,\r\n handleUserDropdownSelection,\r\n logoUrl,\r\n DSO,\r\n stateCode,\r\n modules,\r\n appTenants,\r\n sourceUrl,\r\n pathname,\r\n initData,\r\n}) => {\r\n const history = useHistory();\r\n const { t } = useTranslation();\r\n const { path } = useRouteMatch();\r\n const location = useLocation();\r\n const showLanguageChange = location?.pathname?.includes(\"language-selection\");\r\n const isUserProfile = userScreensExempted.some((url) => location?.pathname?.includes(url));\r\n useEffect(() => {\r\n Digit.UserService.setType(\"employee\");\r\n }, []);\r\n\r\n return (\r\n <div className=\"employee\">\r\n <Switch>\r\n <Route path={`${path}/user`}>\r\n {isUserProfile && (\r\n <TopBarSideBar\r\n t={t}\r\n stateInfo={stateInfo}\r\n userDetails={userDetails}\r\n CITIZEN={CITIZEN}\r\n cityDetails={cityDetails}\r\n mobileView={mobileView}\r\n handleUserDropdownSelection={handleUserDropdownSelection}\r\n logoUrl={logoUrl}\r\n showSidebar={isUserProfile ? true : false}\r\n showLanguageChange={!showLanguageChange}\r\n />\r\n )}\r\n <div\r\n className={isUserProfile ? \"grounded-container\" : \"loginContainer\"}\r\n style={\r\n isUserProfile\r\n ? { padding: 0, paddingTop: \"80px\", marginLeft: mobileView ? \"\" : \"64px\" }\r\n : { \"--banner-url\": `url(${stateInfo?.bannerUrl})`, padding: \"0px\" }\r\n }\r\n >\r\n <Switch>\r\n <Route path={`${path}/user/login`}>\r\n <EmployeeLogin />\r\n </Route>\r\n <Route path={`${path}/user/forgot-password`}>\r\n <ForgotPassword />\r\n </Route>\r\n <Route path={`${path}/user/change-password`}>\r\n <ChangePassword />\r\n </Route>\r\n <Route path={`${path}/user/profile`}>\r\n <UserProfile stateCode={stateCode} userType={\"employee\"} cityDetails={cityDetails} />\r\n </Route>\r\n <Route path={`${path}/user/error`}>\r\n <ErrorComponent\r\n initData={initData}\r\n goToHome={() => {\r\n history.push(`/${window?.contextPath}/employee`);\r\n }}\r\n />\r\n </Route>\r\n <Route path={`${path}/user/language-selection`}>\r\n <LanguageSelection />\r\n </Route>\r\n <Route>\r\n <Redirect to={`${path}/user/language-selection`} />\r\n </Route>\r\n </Switch>\r\n </div>\r\n </Route>\r\n <Route>\r\n <TopBarSideBar\r\n t={t}\r\n stateInfo={stateInfo}\r\n userDetails={userDetails}\r\n CITIZEN={CITIZEN}\r\n cityDetails={cityDetails}\r\n mobileView={mobileView}\r\n handleUserDropdownSelection={handleUserDropdownSelection}\r\n logoUrl={logoUrl}\r\n modules={modules}\r\n />\r\n <div className={`main ${DSO ? \"m-auto\" : \"\"}`}>\r\n <div className=\"employee-app-wrapper\">\r\n <ErrorBoundary initData={initData}>\r\n <AppModules stateCode={stateCode} userType=\"employee\" modules={modules} appTenants={appTenants} />\r\n </ErrorBoundary>\r\n </div>\r\n <div className=\"employee-home-footer\">\r\n <img\r\n alt=\"Powered by DIGIT\"\r\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER\")}\r\n style={{ height: \"1.1em\", cursor: \"pointer\" }}\r\n onClick={() => {\r\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\r\n }}\r\n />\r\n </div>\r\n </div>\r\n </Route>\r\n <Route>\r\n <Redirect to={`${path}/user/language-selection`} />\r\n </Route>\r\n </Switch>\r\n </div>\r\n );\r\n};\r\n\r\nexport default EmployeeApp;\r\n","import React, { useEffect } from \"react\";\r\nimport {\r\n StandaloneSearchBar,\r\n Loader,\r\n CardBasedOptions,\r\n ComplaintIcon,\r\n PTIcon,\r\n CaseIcon,\r\n DropIcon,\r\n HomeIcon,\r\n Calender,\r\n DocumentIcon,\r\n HelpIcon,\r\n WhatsNewCard,\r\n OBPSIcon,\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { CitizenSideBar } from \"../../../components/TopBarSideBar/SideBar/CitizenSideBar\";\r\nimport StaticCitizenSideBar from \"../../../components/TopBarSideBar/SideBar/StaticCitizenSideBar\";\r\n\r\nconst Home = () => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const tenantId = Digit.ULBService.getCitizenCurrentTenant(true);\r\n const { data: { stateInfo, uiHomePage } = {}, isLoading } = Digit.Hooks.useStore.getInitData();\r\n let isMobile = window.Digit.Utils.browser.isMobile();\r\n\r\n const conditionsToDisableNotificationCountTrigger = () => {\r\n if (Digit.UserService?.getUser()?.info?.type === \"EMPLOYEE\") return false;\r\n if (!Digit.UserService?.getUser()?.access_token) return false;\r\n return true;\r\n };\r\n\r\n const { data: EventsData, isLoading: EventsDataLoading } = Digit.Hooks.useEvents({\r\n tenantId,\r\n variant: \"whats-new\",\r\n config: {\r\n enabled: conditionsToDisableNotificationCountTrigger(),\r\n },\r\n });\r\n\r\n if (!tenantId) {\r\n history.push(`/${window?.contextPath}/citizen/select-language`);\r\n }\r\n\r\n const appBannerWebObj = uiHomePage?.appBannerDesktop;\r\n const appBannerMobObj = uiHomePage?.appBannerMobile;\r\n const citizenServicesObj = uiHomePage?.citizenServicesCard;\r\n const infoAndUpdatesObj = uiHomePage?.informationAndUpdatesCard;\r\n const whatsAppBannerWebObj = uiHomePage?.whatsAppBannerDesktop;\r\n const whatsAppBannerMobObj = uiHomePage?.whatsAppBannerMobile;\r\n const whatsNewSectionObj = uiHomePage?.whatsNewSection;\r\n\r\n const handleClickOnWhatsAppBanner = (obj) => {\r\n window.open(obj?.navigationUrl);\r\n };\r\n\r\n const allCitizenServicesProps = {\r\n header: t(citizenServicesObj?.headerLabel),\r\n sideOption: {\r\n name: t(citizenServicesObj?.sideOption?.name),\r\n onClick: () => history.push(citizenServicesObj?.sideOption?.navigationUrl),\r\n },\r\n options: [\r\n {\r\n name: t(citizenServicesObj?.props?.[0]?.label),\r\n Icon: <ComplaintIcon />,\r\n onClick: () => history.push(citizenServicesObj?.props?.[0]?.navigationUrl),\r\n },\r\n {\r\n name: t(citizenServicesObj?.props?.[1]?.label),\r\n Icon: <PTIcon className=\"fill-path-primary-main\" />,\r\n onClick: () => history.push(citizenServicesObj?.props?.[1]?.navigationUrl),\r\n },\r\n {\r\n name: t(citizenServicesObj?.props?.[2]?.label),\r\n Icon: <CaseIcon className=\"fill-path-primary-main\" />,\r\n onClick: () => history.push(citizenServicesObj?.props?.[2]?.navigationUrl),\r\n },\r\n // {\r\n // name: t(\"ACTION_TEST_WATER_AND_SEWERAGE\"),\r\n // Icon: <DropIcon/>,\r\n // onClick: () => history.push(`/${window?.contextPath}/citizen`)\r\n // },\r\n {\r\n name: t(citizenServicesObj?.props?.[3]?.label),\r\n Icon: <OBPSIcon />,\r\n onClick: () => history.push(citizenServicesObj?.props?.[3]?.navigationUrl),\r\n },\r\n ],\r\n styles: { display: \"flex\", flexWrap: \"wrap\", justifyContent: \"flex-start\", width: \"100%\" },\r\n };\r\n const allInfoAndUpdatesProps = {\r\n header: t(infoAndUpdatesObj?.headerLabel),\r\n sideOption: {\r\n name: t(infoAndUpdatesObj?.sideOption?.name),\r\n onClick: () => history.push(infoAndUpdatesObj?.sideOption?.navigationUrl),\r\n },\r\n options: [\r\n {\r\n name: t(infoAndUpdatesObj?.props?.[0]?.label),\r\n Icon: <HomeIcon />,\r\n onClick: () => history.push(infoAndUpdatesObj?.props?.[0]?.navigationUrl),\r\n },\r\n {\r\n name: t(infoAndUpdatesObj?.props?.[1]?.label),\r\n Icon: <Calender />,\r\n onClick: () => history.push(infoAndUpdatesObj?.props?.[1]?.navigationUrl),\r\n },\r\n {\r\n name: t(infoAndUpdatesObj?.props?.[2]?.label),\r\n Icon: <DocumentIcon />,\r\n onClick: () => history.push(infoAndUpdatesObj?.props?.[2]?.navigationUrl),\r\n },\r\n {\r\n name: t(infoAndUpdatesObj?.props?.[3]?.label),\r\n Icon: <DocumentIcon />,\r\n onClick: () => history.push(infoAndUpdatesObj?.props?.[3]?.navigationUrl),\r\n },\r\n // {\r\n // name: t(\"CS_COMMON_HELP\"),\r\n // Icon: <HelpIcon/>\r\n // }\r\n ],\r\n styles: { display: \"flex\", flexWrap: \"wrap\", justifyContent: \"flex-start\", width: \"100%\" },\r\n };\r\n\r\n return isLoading ? (\r\n <Loader />\r\n ) : (\r\n <div className=\"HomePageContainer\">\r\n {/* <div className=\"SideBarStatic\">\r\n <StaticCitizenSideBar />\r\n </div> */}\r\n <div className=\"HomePageWrapper\">\r\n {<div className=\"BannerWithSearch\">\r\n {isMobile ? <img src={appBannerMobObj?.bannerUrl} /> : <img src={appBannerWebObj?.bannerUrl} />}\r\n {/* <div className=\"Search\">\r\n <StandaloneSearchBar placeholder={t(\"CS_COMMON_SEARCH_PLACEHOLDER\")} />\r\n </div> */}\r\n <div className=\"ServicesSection\">\r\n <CardBasedOptions style={{marginTop:\"-30px\"}} {...allCitizenServicesProps} />\r\n <CardBasedOptions style={isMobile ? {} : {marginTop:\"-30px\"}} {...allInfoAndUpdatesProps} />\r\n </div>\r\n </div>}\r\n\r\n\r\n {(whatsAppBannerMobObj || whatsAppBannerWebObj) && (\r\n <div className=\"WhatsAppBanner\">\r\n {isMobile ? (\r\n <img src={whatsAppBannerMobObj?.bannerUrl} onClick={() => handleClickOnWhatsAppBanner(whatsAppBannerMobObj)} />\r\n ) : (\r\n <img src={whatsAppBannerWebObj?.bannerUrl} onClick={() => handleClickOnWhatsAppBanner(whatsAppBannerWebObj)} />\r\n )}\r\n </div>\r\n )}\r\n\r\n {conditionsToDisableNotificationCountTrigger() ? (\r\n EventsDataLoading ? (\r\n <Loader />\r\n ) : (\r\n <div className=\"WhatsNewSection\">\r\n <div className=\"headSection\">\r\n <h2>{t(whatsNewSectionObj?.headerLabel)}</h2>\r\n <p onClick={() => history.push(whatsNewSectionObj?.sideOption?.navigationUrl)}>{t(whatsNewSectionObj?.sideOption?.name)}</p>\r\n </div>\r\n <WhatsNewCard {...EventsData?.[0]} />\r\n </div>\r\n )\r\n ) : null}\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Home;\r\n","import React, { useMemo } from \"react\";\r\nimport { PageBasedInput, Loader, RadioButtons, CardHeader } from \"@egovernments/digit-ui-react-components\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useHistory } from \"react-router-dom\";\r\n\r\nconst LanguageSelection = () => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n\r\n const { data: { languages, stateInfo } = {}, isLoading } = Digit.Hooks.useStore.getInitData();\r\n const selectedLanguage = Digit.StoreData.getCurrentLanguage();\r\n\r\n const texts = useMemo(\r\n () => ({\r\n header: t(\"CS_COMMON_CHOOSE_LANGUAGE\"),\r\n submitBarLabel: t(\"CORE_COMMON_CONTINUE\"),\r\n }),\r\n [t]\r\n );\r\n\r\n const RadioButtonProps = useMemo(\r\n () => ({\r\n options: languages,\r\n optionsKey: \"label\",\r\n additionalWrapperClass: \"reverse-radio-selection-wrapper\",\r\n onSelect: (language) => Digit.LocalizationService.changeLanguage(language.value, stateInfo.code),\r\n selectedOption: languages?.filter((i) => i.value === selectedLanguage)[0],\r\n }),\r\n [selectedLanguage, languages]\r\n );\r\n\r\n function onSubmit() {\r\n history.push(`/${window?.contextPath}/citizen/select-location`);\r\n }\r\n\r\n return isLoading ? (\r\n <Loader />\r\n ) : (\r\n <div className=\"selection-card-wrapper\">\r\n <PageBasedInput texts={texts} onSubmit={onSubmit}>\r\n <CardHeader>{t(\"CS_COMMON_CHOOSE_LANGUAGE\")}</CardHeader>\r\n <RadioButtons {...RadioButtonProps} />\r\n </PageBasedInput>\r\n </div>\r\n );\r\n};\r\n\r\nexport default LanguageSelection;\r\n","import { BackButton, CardHeader, CardLabelError, PageBasedInput, SearchOnRadioButtons } from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useMemo, useState } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useHistory, useLocation } from \"react-router-dom\";\r\n\r\nconst LocationSelection = () => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const location = useLocation();\r\n const { data: cities, isLoading } = Digit.Hooks.useTenants();\r\n\r\n const [selectedCity, setSelectedCity] = useState(() => ({ code: Digit.ULBService.getCitizenCurrentTenant(true) }));\r\n const [showError, setShowError] = useState(false);\r\n\r\n const texts = useMemo(\r\n () => ({\r\n header: t(\"CS_COMMON_CHOOSE_LOCATION\"),\r\n submitBarLabel: t(\"CORE_COMMON_CONTINUE\"),\r\n }),\r\n [t]\r\n );\r\n\r\n function selectCity(city) {\r\n setSelectedCity(city);\r\n setShowError(false);\r\n }\r\n\r\n const RadioButtonProps = useMemo(() => {\r\n return {\r\n options: cities,\r\n optionsKey: \"i18nKey\",\r\n additionalWrapperClass: \"reverse-radio-selection-wrapper\",\r\n onSelect: selectCity,\r\n selectedOption: selectedCity,\r\n };\r\n }, [cities, t, selectedCity]);\r\n\r\n function onSubmit() {\r\n if (selectedCity) {\r\n Digit.SessionStorage.set(\"CITIZEN.COMMON.HOME.CITY\", selectedCity);\r\n const redirectBackTo = location.state?.redirectBackTo;\r\n if (redirectBackTo) {\r\n history.replace(redirectBackTo);\r\n } else history.push(`/${window?.contextPath}/citizen`);\r\n } else {\r\n setShowError(true);\r\n }\r\n }\r\n\r\n return isLoading ? (\r\n <loader />\r\n ) : (\r\n <div className=\"selection-card-wrapper\">\r\n <BackButton />\r\n <PageBasedInput texts={texts} onSubmit={onSubmit} className=\"location-selection-container\">\r\n <CardHeader>{t(\"CS_COMMON_CHOOSE_LOCATION\")}</CardHeader>\r\n <SearchOnRadioButtons {...RadioButtonProps} placeholder={t(\"COMMON_TABLE_SEARCH\")} />\r\n {showError ? <CardLabelError>{t(\"CS_COMMON_LOCATION_SELECTION_ERROR\")}</CardLabelError> : null}\r\n </PageBasedInput>\r\n </div>\r\n );\r\n};\r\n\r\nexport default LocationSelection;\r\n","import React, { useState } from \"react\";\r\nimport { ArrowForward } from \"@egovernments/digit-ui-react-components\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nconst FaqComponent = props => {\r\n const { question, answer, lastIndex } = props;\r\n const [isOpen, toggleOpen] = useState(false);\r\n const { t } = useTranslation();\r\n\r\n return (\r\n <div className=\"faqs border-none\" onClick={() => toggleOpen(!isOpen)}>\r\n <div className=\"faq-question\" style={{justifyContent: \"space-between\", display: \"flex\"}}>\r\n <span>\r\n {t(question)}\r\n </span>\r\n <span className={isOpen ? \"faqicon rotate\" : \"faqicon\"} style={{float: \"right\"}}>\r\n {isOpen ? <ArrowForward /> : <ArrowForward/>}\r\n </span>\r\n </div>\r\n\r\n <div \r\n className=\"faq-answer\" \r\n style={isOpen ? { display: \"block\"} : { display: \"none\" }}\r\n >\r\n <span>\r\n {t(answer)}\r\n </span>\r\n </div>\r\n {!lastIndex ? <div className=\"cs-box-border\"/> : null}\r\n </div>\r\n );\r\n};\r\n\r\nexport default FaqComponent;","import { Header, TextInput, SearchIconSvg, ArrowForward, Loader, BackButton} from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useState, Fragment, useRef, useEffect}from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport FaqComponent from \"./FaqComponent\";\r\n\r\n\r\nconst FAQsSection = ({module}) => {\r\n const user = Digit.UserService.getUser();\r\n const tenantId = user?.info?.tenantId || Digit.ULBService.getCurrentTenantId();\r\n const { t } = useTranslation();\r\n\r\n const SearchImg = () => {\r\n return <SearchIconSvg className=\"signature-img\" />;\r\n };\r\n\r\n const { isLoading, data } = Digit.Hooks.useGetFAQsJSON(Digit.ULBService.getStateId());\r\n\r\n const moduleFaqs = data?.MdmsRes[\"common-masters\"]?.faqs[0]?.[`${module}`].faqs;\r\n\r\n if(isLoading){\r\n return <Loader/>\r\n }\r\n return (\r\n <Fragment>\r\n <div className=\"faq-page\">\r\n <BackButton style={{marginLeft : \"unset\"}}></BackButton>\r\n <div style={{ marginBottom: \"15px\" }}>\r\n <Header styles={{ marginLeft: \"0px\", paddingTop: \"10px\", fontSize: \"32px\"}}>{t(\"FAQ_S\")}</Header>\r\n </div>\r\n <div className=\"faq-list\">\r\n {moduleFaqs.map((faq, i) => (\r\n <FaqComponent key={\"faq_\" + i} question={faq.question} answer={faq.answer} lastIndex={i === (moduleFaqs?.length - 1)}/>\r\n ))}\r\n </div>\r\n </div>\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default FAQsSection;","import { Header, CloseSvg, DownloadImgIcon, CustomButton, Loader, BackButton, PDFSvg, DownloadBtnCommon} from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useState, Fragment }from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\n\r\nconst HowItWorks = ({module}) => {\r\n const user = Digit.UserService.getUser();\r\n const tenantId = user?.info?.tenantId || Digit.ULBService.getCurrentTenantId();\r\n const { t } = useTranslation();\r\n const storeData = Digit.SessionStorage.get(\"initData\");\r\n const stateInfo = storeData.stateInfo;\r\n const selectedLanguage = Digit.StoreData.getCurrentLanguage();\r\n const [selected, setselected] = useState(selectedLanguage);\r\n const handleChangeLanguage = (language) => {\r\n setselected(language.value);\r\n Digit.LocalizationService.changeLanguage(language.value, stateInfo.code);\r\n };\r\n const [videoPlay, setVideoPlay] = useState(false);\r\n const [vidSrc, setVidSrc] = useState(\"\");\r\n\r\n const ViDSvg = () => (\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path 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\" fill=\"white\"/>\r\n </svg>\r\n );\r\n const onClickVideo = (vidObj) => {\r\n if(selected === \"hi_IN\"){\r\n setVidSrc(vidObj[\"hi_IN\"]);\r\n }\r\n else{\r\n setVidSrc(vidObj[\"en_IN\"]);\r\n }\r\n setVideoPlay(true);\r\n }\r\n const onClose = () => {\r\n setVideoPlay(false);\r\n }\r\n\r\n const { isLoading, data } = Digit.Hooks.useGetHowItWorksJSON(Digit.ULBService.getStateId());\r\n\r\n\r\n const mdmsConfigResult = data?.MdmsRes[\"common-masters\"]?.howItWorks[0]?.[`${module}`];\r\n const languages = \r\n [\r\n {\r\n label: \"ENGLISH\",\r\n value: \"en_IN\"\r\n },\r\n {\r\n label: \"हिंदी\",\r\n value: \"hi_IN\"\r\n }\r\n ];\r\n\r\n if(isLoading){\r\n return <Loader/>\r\n }\r\n return (\r\n <Fragment>\r\n <div className=\"how-it-works-page\">\r\n <BackButton></BackButton>\r\n <div className=\"how-it-works-page-header\">\r\n <Header>{t(\"HOW_IT_WORKS\")}</Header>\r\n </div>\r\n <div className=\"language-selector\" style={{margin: \"10px\"}}>\r\n {languages.map((language, index) => (\r\n <div className=\"language-button-container\" key={index}>\r\n <CustomButton\r\n selected={language.value === selected}\r\n text={language.label}\r\n onClick={() => handleChangeLanguage(language)}\r\n ></CustomButton>\r\n </div>\r\n ))}\r\n </div>\r\n {mdmsConfigResult.videosJson.map((videos, index) => (\r\n <div >\r\n <div className=\"WhatsNewCard\" style={{float: \"left\", position: \"relative\", width: \"100%\", marginBottom: 10}}>\r\n <div className=\"video-icon\" onClick={() => onClickVideo(videos)}>\r\n <div className=\"vid-svg\">\r\n <ViDSvg></ViDSvg>\r\n </div>\r\n </div>\r\n <div className=\"how-it-works-header-description\">\r\n <h2>{t(videos.headerLabel)}</h2>\r\n <p>{t(videos.description)}</p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n ))}\r\n <div className=\"WhatsNewCard\" style={{ position: \"relative\", width: \"100%\", marginBottom: 10, display: \"inline-block\"}}>\r\n <div className=\"how-it-works-pdf-section\">\r\n <div className=\"pdf-icon-header-desc\">\r\n <div className=\"pdf-icon\">\r\n <PDFSvg></PDFSvg>\r\n </div>\r\n <div className=\"pdf-header-desc\">\r\n <h2>{t(mdmsConfigResult.pdfHeader)}</h2>\r\n <p>{t(mdmsConfigResult.pdfDesc)}</p>\r\n </div>\r\n </div>\r\n <div className=\"download-icon\">\r\n <DownloadImgIcon/>\r\n </div>\r\n </div>\r\n </div>\r\n { videoPlay && (\r\n <div className=\"how-it-works-video-play\">\r\n <div className=\"close-button\">\r\n <CloseSvg onClick={onClose}></CloseSvg>\r\n </div>\r\n <video width={500} height={500} controls autoPlay>\r\n <source src={vidSrc} type=\"video/mp4\"></source>\r\n </video>\r\n </div>\r\n )}\r\n </div>\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default HowItWorks;","import { \r\n Card, \r\n CaseIcon,\r\n TimerIcon, \r\n RupeeSymbol, \r\n ValidityTimeIcon, \r\n WhatsappIconGreen, \r\n HelpLineIcon, \r\n ServiceCenterIcon, \r\n Loader, \r\n PTIcon, \r\n MCollectIcon, \r\n ComplaintIcon\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport React from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nconst StaticDynamicCard = ({moduleCode}) => {\r\n const { t } = useTranslation();\r\n const tenantId = Digit.ULBService.getCitizenCurrentTenant();\r\n const { isLoading: isMdmsLoading, data: mdmsData } = Digit.Hooks.useStaticData(Digit.ULBService.getStateId());\r\n const { isLoading: isSearchLoading, error, data: dynamicData, isSuccess } = Digit.Hooks.useDynamicData({ moduleCode, tenantId: tenantId , filters: {} , t});\r\n const handleClickOnWhatsApp = (obj) => {\r\n window.open(obj);\r\n };\r\n\r\n const IconComponent = ({module, styles}) => {\r\n\r\n switch(module){\r\n case 'TL':\r\n return <CaseIcon className=\"fill-path-primary-main\" styles={styles}/>;\r\n case 'PT':\r\n return <PTIcon className=\"fill-path-primary-main\" styles={styles}/>;\r\n case 'MCOLLECT':\r\n return <MCollectIcon className=\"fill-path-primary-main\" styles={styles}/>;\r\n case 'PGR':\r\n return <ComplaintIcon className=\"fill-path-primary-main\" styles={styles}/>\r\n default:\r\n return <CaseIcon className=\"fill-path-primary-main\" styles={styles}/>;\r\n }\r\n }\r\n const mdmsConfigResult = mdmsData?.MdmsRes[\"common-masters\"]?.StaticData[0]?.[`${moduleCode}`];\r\n\r\n const StaticDataIconComponentOne = ({module}) => {\r\n\r\n switch(module){\r\n case 'PT':\r\n case 'WS':\r\n return (<span className=\"timerIcon\">\r\n <TimerIcon/>\r\n </span>)\r\n default:\r\n return null\r\n }\r\n };\r\n const StaticDataIconComponentTwo = ({module}) => {\r\n\r\n switch(module){\r\n case 'PT':\r\n return (<span className=\"rupeeSymbol\">\r\n <RupeeSymbol/>\r\n </span>)\r\n case 'WS':\r\n return (<span className=\"timerIcon\">\r\n <TimerIcon/>\r\n </span>)\r\n default:\r\n return null\r\n }\r\n }\r\n const staticContent = (module) => {\r\n switch(module){\r\n case 'TL':\r\n case 'PT':\r\n case 'MCOLLECT':\r\n return {\r\n staticCommonContent: t(\"COMMON_VALIDITY\"),\r\n validity: mdmsConfigResult?.validity + (mdmsConfigResult?.validity === \"1\" ? t(\"COMMON_DAY\") : t(\"COMMON_DAYS\"))\r\n }\r\n case 'PGR':\r\n return {\r\n staticCommonContent: t(\"ACTION_TEST_COMPLAINT_TYPES\"),\r\n }\r\n case 'OBPS':\r\n return {\r\n staticCommonContent: t(\"BUILDING_PLAN_PERMIT_VALIDITY\"),\r\n validity: mdmsConfigResult?.validity + \" \" + (mdmsConfigResult?.validity === \"1\" ? t(\"COMMON_DAY\") : t(\"COMMON_DAYS\"))\r\n }\r\n default:\r\n return {\r\n staticCommonContent : \"\",\r\n }\r\n }\r\n }\r\n\r\n const staticData = (module) => {\r\n switch(module){\r\n case 'PT':\r\n return {\r\n staticDataOne : mdmsConfigResult?.staticDataOne + \" \" + t(\"COMMON_DAYS\"),\r\n staticDataOneHeader : t(\"APPLICATION_PROCESSING_TIME\"),\r\n staticDataTwo : mdmsConfigResult?.staticDataTwo,\r\n staticDataTwoHeader : t(\"APPLICATION_PROCESSING_FEE\"),\r\n }\r\n case 'WS':\r\n return {\r\n staticDataOne : \"\",\r\n staticDataOneHeader : t(\"PAY_WATER_CHARGES_BY\") + \" \"+ mdmsConfigResult?.staticDataOne + \" \"+ t(\"COMMON_DAYS\") + \" \"+ t(\"OF_BILL_GEN_TO_AVOID_LATE_FEE\"),\r\n staticDataTwo : mdmsConfigResult?.staticDataTwo + \" \" + t(\"COMMON_DAYS\"),\r\n staticDataTwoHeader : t(\"APPLICATION_PROCESSING_TIME\"),\r\n }\r\n default:\r\n return {}\r\n }\r\n }\r\n \r\n if(isMdmsLoading || isSearchLoading){\r\n return <Loader/>\r\n }\r\n return mdmsConfigResult ? (\r\n <React.Fragment>\r\n { mdmsConfigResult && mdmsConfigResult?.payViaWhatsApp ? \r\n <Card style={{margin: \"16px\", padding: \"16px\", maxWidth: \"unset\"}}>\r\n <div className=\"pay-whatsapp-card\" onClick={() => handleClickOnWhatsApp(mdmsConfigResult?.payViaWhatsApp)}>\r\n <div className=\"pay-whatsapp-text\">{t(\"PAY_VIA_WHATSAPP\")}</div>\r\n <div className=\"whatsAppIconG\">\r\n <WhatsappIconGreen />\r\n </div>\r\n </div>\r\n </Card> : null }\r\n { mdmsConfigResult && mdmsConfigResult?.helpline ?\r\n <Card style={{margin: \"16px\", padding: \"16px\", maxWidth: \"unset\"}}>\r\n <div className=\"static-home-Card\">\r\n <div className=\"static-home-Card-header\">{t(\"CALL_CENTER_HELPLINE\")}</div>\r\n <div className=\"helplineIcon\">\r\n <HelpLineIcon />\r\n </div>\r\n </div>\r\n <div className=\"call-center-card-text\">\r\n { mdmsConfigResult?.helpline?.contactOne ? <div className=\"call-center-card-content\">\r\n <a href={`tel:${mdmsConfigResult?.helpline?.contactOne}`}>{mdmsConfigResult?.helpline?.contactOne}</a>\r\n </div> : null}\r\n { mdmsConfigResult?.helpline?.contactTwo ? <div className=\"call-center-card-content\">\r\n <a href={`tel:${mdmsConfigResult?.helpline?.contactTwo}`}>{mdmsConfigResult?.helpline?.contactTwo}</a>\r\n </div> : null}\r\n </div>\r\n </Card> : null\r\n }\r\n { mdmsConfigResult && mdmsConfigResult?.serviceCenter ?\r\n <Card style={{margin: \"16px\", padding: \"16px\", maxWidth: \"unset\"}}>\r\n <div className=\"static-home-Card\">\r\n <div className=\"static-home-Card-header\">{t(\"CITIZEN_SERVICE_CENTER\")}</div>\r\n <div className=\"serviceCentrIcon\">\r\n <ServiceCenterIcon />\r\n </div>\r\n </div>\r\n <div className=\"service-center-details-card\">\r\n <div className=\"service-center-details-text\">\r\n {mdmsConfigResult?.serviceCenter}\r\n </div>\r\n </div>\r\n { mdmsConfigResult?.viewMapLocation ? <div className=\"link\">\r\n <a href={mdmsConfigResult?.viewMapLocation}>{t(\"VIEW_ON_MAP\")}</a>\r\n </div> : null}\r\n </Card> : <div/> }\r\n <Card style={{margin: \"16px\", padding: \"16px\", maxWidth: \"unset\"}}>\r\n { error || dynamicData == null || dynamicData?.dynamicDataOne === null ? (\r\n <div/>\r\n ) : (\r\n <div className=\"dynamicDataCard\">\r\n <div className=\"dynamicData\">\r\n <IconComponent module={moduleCode} styles={{width: \"24px\", height: \"24px\"}}/>\r\n <span className=\"dynamicData-content\">\r\n {dynamicData?.dynamicDataOne}\r\n </span>\r\n </div>\r\n </div> ) }\r\n { error || dynamicData == null || dynamicData?.dynamicDataTwo === null ? (\r\n <div/>\r\n ) : (\r\n <div className=\"dynamicDataCard\">\r\n <div className=\"dynamicData\">\r\n <IconComponent module={moduleCode} styles={{width: \"24px\", height: \"24px\"}}/>\r\n <span className=\"dynamicData-content\">\r\n {dynamicData?.dynamicDataTwo}\r\n </span>\r\n </div>\r\n </div>) }\r\n { mdmsConfigResult && mdmsConfigResult?.staticDataOne \r\n ? <div className=\"staticDataCard\">\r\n <div className=\"staticData\">\r\n <StaticDataIconComponentOne module={moduleCode}/>\r\n <span className=\"static-data-content\">\r\n <span className=\"static-data-content-first\" style={\r\n {\r\n marginTop: staticData(moduleCode)?.staticDataOne === \"\" ? \"8px\" : \"unset\"\r\n }\r\n }>\r\n {staticData(moduleCode)?.staticDataOneHeader}\r\n </span>\r\n <span className=\"static-data-content-second\">\r\n {`${staticData(moduleCode)?.staticDataOne}`}\r\n </span>\r\n </span>\r\n </div>\r\n </div> : <div/>}\r\n { mdmsConfigResult && mdmsConfigResult?.staticDataTwo \r\n ?\r\n <div className=\"staticDataCard\">\r\n <div className=\"staticData\">\r\n <StaticDataIconComponentTwo module={moduleCode}/>\r\n <span className=\"static-data-content\">\r\n <span className=\"static-data-content-first\">\r\n {staticData(moduleCode)?.staticDataTwoHeader}\r\n </span>\r\n <span className=\"static-data-content-second\">\r\n {staticData(moduleCode)?.staticDataTwo}\r\n </span>\r\n </span>\r\n </div>\r\n </div> : <div/> }\r\n { mdmsConfigResult && mdmsConfigResult?.validity \r\n ? <div className=\"staticDataCard\">\r\n <div className=\"staticData\">\r\n <span className=\"validityIcon\">\r\n <ValidityTimeIcon/>\r\n </span>\r\n <span className=\"static-data-content\">\r\n <span className=\"static-data-content-first\">\r\n {staticContent(moduleCode)?.staticCommonContent}\r\n </span>\r\n <span className=\"static-data-content-second\">\r\n {staticContent(moduleCode)?.validity}\r\n </span>\r\n </span>\r\n </div>\r\n </div> : <div/> }\r\n { error || dynamicData == null || !dynamicData?.staticData || dynamicData?.staticData === null ? (\r\n <div/>\r\n ) : (\r\n <div className=\"staticDataCard\">\r\n <div className=\"staticData\">\r\n { moduleCode === \"PGR\" \r\n ? <IconComponent module={moduleCode} styles={{width: \"24px\", height: \"24px\", marginLeft: \"13px\", marginTop: \"12px\"}}/>\r\n : <span className=\"validityIcon\">\r\n <ValidityTimeIcon/>\r\n </span>}\r\n <span className=\"static-data-content\">\r\n <span className=\"static-data-content-first\">\r\n {staticContent(moduleCode)?.staticCommonContent}\r\n </span>\r\n <span className=\"static-data-content-second\">\r\n {dynamicData?.staticData}\r\n </span>\r\n </span>\r\n </div>\r\n </div>)}\r\n </Card>\r\n </React.Fragment>) : <React.Fragment/>\r\n}\r\n\r\nexport default StaticDynamicCard;","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 React, { Fragment } from \"react\";\r\nimport { Controller, useWatch } from \"react-hook-form\";\r\nimport {\r\n TextInput,\r\n SubmitBar,\r\n LinkLabel,\r\n ActionBar,\r\n CloseSvg,\r\n DatePicker,\r\n CardLabelError,\r\n SearchForm,\r\n SearchField,\r\n Dropdown,\r\n Table,\r\n Card,\r\n MobileNumber,\r\n Loader,\r\n CardText,\r\n Header,\r\n} from \"@egovernments/digit-ui-react-components\";\r\nconst SearchFields = ({ register, control, reset, tenantId, t, previousPage, formState, isLoading }) => {\r\nconst isMobile = window.Digit.Utils.browser.isMobile();\r\n\r\n return (\r\n <>\r\n <SearchField className=\"pt-form-field\">\r\n <label>{t(\"AUDIT_FROM_DATE_LABEL\")}</label>\r\n <Controller\r\n render={(props) => <DatePicker date={props.value} onChange={props.onChange} />}\r\n name=\"fromDate\"\r\n control={control}\r\n />\r\n </SearchField>\r\n <SearchField className=\"pt-form-field\">\r\n <label>{t(\"AUDIT_TO_DATE_LABEL\")}</label>\r\n <Controller\r\n render={(props) => <DatePicker date={props.value} onChange={props.onChange} />}\r\n name=\"toDate\"\r\n control={control}\r\n />\r\n </SearchField>\r\n <SearchField className=\"pt-search-action-submit\">\r\n <SubmitBar style={{marginTop: isMobile? \"510px\":\"25px\", marginLeft:isMobile? \"0\":\"-30px\" ,maxWidth : isMobile? \"100%\":\"240px\",\r\n}} label={t(\"ES_COMMON_APPLY\")} submit />\r\n </SearchField>\r\n </>\r\n );\r\n};\r\nexport default SearchFields;\r\n","import React, { Fragment, useCallback, useMemo, useReducer, useState, useEffect } from \"react\";\r\nimport {\r\n CloseSvg,\r\n SearchForm,\r\n Table,\r\n Card,\r\n SearchAction,\r\n FilterAction,\r\n PopUp,\r\n DetailsCard,\r\n Loader,\r\n Toast,\r\n BackButton,\r\n Header,\r\n DownloadBtnCommon\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport SearchFormFields from \"./SearchFields\";\r\n// import { convertEpochToDateDMY } from \"../../utils\";\r\n\r\nconst MobileSearchApplication = ({ Controller, register, control, t, reset, previousPage, handleSubmit, tenantId, data, onSubmit, isLoading}) => {\r\n\r\n function activateModal(state, action) {\r\n switch (action.type) {\r\n case \"set\":\r\n return action.payload;\r\n case \"remove\":\r\n return false;\r\n default:\r\n break; }\r\n }\r\n const [tabledata,settabledata ]=useState([]);\r\n const DownloadBtn = (props) => {\r\n return (\r\n <div onClick={props.onClick}>\r\n <DownloadBtnCommon />\r\n </div>\r\n );\r\n };\r\n const handleExcelDownload = (tabData) => {\r\n if(tabData?.[0] !== undefined){\r\n return Digit.Download.Excel(tabData?.[0] , \"AuditReport\");\r\n }\r\n }; \r\n useEffect(() => {\r\n if ( data?.length >0){\r\n settabledata([\r\n \r\n data?.map((obj)=> {\r\n let returnObject={};\r\n returnObject[ t(\"AUDIT_DATE_LABEL\")]=convertEpochToDate(obj?.timestamp);\r\n returnObject[t(\"AUDIT_TIME_LABEL\")]=convertEpochToTimeInHours(obj?.timestamp);\r\n returnObject[t(\"AUDIT_DATAVIEWED_LABEL\")]=obj?.dataView[0]+','+obj?.dataView[1];\r\n returnObject[t(\"AUDIT_DATAVIEWED_BY_LABEL\")]=obj?.dataViewedBy;\r\n returnObject[t(\"AUDIT_ROLE_LABEL\")]=obj?.roles.map(obj=>obj.name).join(\",\");\r\n return {\r\n ...returnObject,\r\n }\r\n })\r\n ])\r\n }\r\n }, [data]);\r\n const convertEpochToDate = (dateEpoch) => {\r\n if (dateEpoch == null || dateEpoch == undefined || dateEpoch == \"\") {\r\n return \"NA\";\r\n }\r\n const dateFromApi = new Date(dateEpoch);\r\n let month = dateFromApi.getMonth() + 1;\r\n let day = dateFromApi.getDate();\r\n let year = dateFromApi.getFullYear();\r\n month = (month > 9 ? \"\" : \"0\") + month;\r\n day = (day > 9 ? \"\" : \"0\") + day;\r\n return `${day}/${month}/${year}`;\r\n };\r\n const convertEpochToTimeInHours = (dateEpoch) => {\r\n if (dateEpoch == null || dateEpoch == undefined || dateEpoch == \"\") {\r\n return \"NA\";\r\n }\r\n const dateFromApi = new Date(dateEpoch);\r\n let hour = dateFromApi.getHours();\r\n let min = dateFromApi.getMinutes();\r\n let period = hour > 12 ? \"PM\" : \"AM\";\r\n hour = hour > 12 ? hour - 12 : hour;\r\n hour = (hour > 9 ? \"\" : \"0\") + hour;\r\n min = (min > 9 ? \"\" : \"0\") + min;\r\n return `${hour}:${min} ${period}`;\r\n };\r\n const [currentlyActiveMobileModal, setActiveMobileModal] = useReducer(activateModal, false);\r\n \r\n const closeMobilePopupModal = () => {\r\n setActiveMobileModal({ type: \"remove\" });\r\n };\r\n \r\n const MobilePopUpCloseButton = () => (\r\n <div className=\"InboxMobilePopupCloseButtonWrapper\" onClick={closeMobilePopupModal}>\r\n <CloseSvg />\r\n </div>\r\n );\r\n const searchFormFieldsComponentProps = { Controller, register, control, t, reset, previousPage };\r\n\r\n const MobileComponentDirectory = ({ currentlyActiveMobileModal, searchFormFieldsComponentProps, tenantId, ...props }) => {\r\n const { closeMobilePopupModal } = props;\r\n switch (currentlyActiveMobileModal) {\r\n case \"SearchFormComponent\":\r\n return (\r\n <SearchForm {...props}>\r\n <MobilePopUpCloseButton />\r\n <div className=\"MobilePopupHeadingWrapper\">\r\n <h2>{t(\"PRIVACY_AUDIT_REPORT\")}:</h2>\r\n </div>\r\n <SearchFormFields {...searchFormFieldsComponentProps} {...{ closeMobilePopupModal, tenantId, t }} />\r\n {/* <SearchField className=\"submit\">\r\n <SubmitBar label={t(\"ES_COMMON_SEARCH\")} submit form=\"search-form\"/>\r\n <p onClick={onResetSearchForm}>{t(`ES_COMMON_CLEAR_ALL`)}</p>\r\n </SearchField> */}\r\n </SearchForm>\r\n );\r\n default:\r\n return <span></span>;\r\n }\r\n };\r\n const CurrentMobileModalComponent = useCallback(\r\n ({ currentlyActiveMobileModal, searchFormFieldsComponentProps, tenantId, ...props }) =>\r\n MobileComponentDirectory({ currentlyActiveMobileModal, searchFormFieldsComponentProps, tenantId, ...props }),\r\n [currentlyActiveMobileModal]\r\n );\r\n let roles = [];\r\n data?.roles?.forEach((item) => {\r\n roles.push(item?.name);\r\n});\r\n const propsMobileInboxCards = useMemo(\r\n () => {\r\n if (data?.display){\r\n return []\r\n }\r\n if(data === \"\")\r\n {\r\n return [];\r\n }\r\n return data?.map((data) => ({\r\n [t(\"AUDIT_DATE_LABEL\")]: convertEpochToDate(data.timestamp),\r\n [t(\"AUDIT_TIME_LABEL\")]: convertEpochToTimeInHours(data.timestamp),\r\n [t(\"AUDIT_DATAVIEWED_LABEL\")]: data.dataView[0]+','+data.dataView[1],\r\n [t(\"AUDIT_DATAVIEWED_BY_LABEL\")]: data.dataViewedBy,\r\n [t(\"AUDIT_ROLE_LABEL\")]: data.roles.slice(0,3)?.map((e)=>e.name).join(\",\"),\r\n }))\r\n },\r\n [data]\r\n );\r\n\r\n return (\r\n <React.Fragment>\r\n <BackButton />\r\n <div className=\"sideContent\" style={{ marginLeft:\"70%\", marginTop:\"-12%\"}}>\r\n <DownloadBtn className=\"mrlg cursorPointer\" onClick={() => handleExcelDownload(tabledata)}/>\r\n </div>\r\n <Header>{t(\"PRIVACY_AUDIT_REPORT\")}:</Header>\r\n <div className=\"searchBox\">\r\n <SearchAction\r\n text={t(\"ES_COMMON_SEARCH\")}\r\n handleActionClick={() => setActiveMobileModal({ type: \"set\", payload: \"SearchFormComponent\" })}\r\n {...{tenantId, t}} \r\n />\r\n </div>\r\n {currentlyActiveMobileModal ? (\r\n <PopUp>\r\n <CurrentMobileModalComponent\r\n onSubmit={(data) => {\r\n setActiveMobileModal({ type: \"remove\" });\r\n onSubmit(data);\r\n }}\r\n handleSubmit={handleSubmit}\r\n id=\"search-form\"\r\n className=\"rm-mb form-field-flex-one inboxPopupMobileWrapper\"\r\n {...{ searchFormFieldsComponentProps, currentlyActiveMobileModal, closeMobilePopupModal, tenantId }}\r\n />\r\n </PopUp>\r\n ) : null}\r\n {isLoading && <Loader/>}\r\n <DetailsCard\r\n {...{\r\n data: propsMobileInboxCards,\r\n }}\r\n />\r\n </React.Fragment>\r\n )\r\n }\r\n \r\n export default MobileSearchApplication ","import { BackButton, Card, Header, SearchForm, Table, Loader,DownloadBtnCommon } from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useCallback, useEffect, useMemo , useState} from \"react\";\r\nimport { Controller, useForm } from \"react-hook-form\";\r\nimport { Link } from \"react-router-dom\";\r\nimport MobileSearchApplication from \"./MobileSearchApplication\";\r\nimport SearchFields from \"./SearchFields\";\r\n\r\nconst SearchApplication = ({ tenantId, t, onSubmit, data, count }) => {\r\n\r\n const initialValues = Digit.SessionStorage.get(\"AUDIT_APPLICATION_DETAIL\") || {\r\n offset: 0,\r\n limit: 5,\r\n sortOrder: \"DESC\",\r\n };\r\n const { register, control, handleSubmit, setValue, getValues, reset } = useForm({\r\n defaultValues: initialValues,\r\n });\r\n const convertEpochToDate = (dateEpoch) => {\r\n if (dateEpoch == null || dateEpoch == undefined || dateEpoch == \"\") {\r\n return \"NA\";\r\n }\r\n const dateFromApi = new Date(dateEpoch);\r\n let month = dateFromApi.getMonth() + 1;\r\n let day = dateFromApi.getDate();\r\n let year = dateFromApi.getFullYear();\r\n month = (month > 9 ? \"\" : \"0\") + month;\r\n day = (day > 9 ? \"\" : \"0\") + day;\r\n return `${day}/${month}/${year}`;\r\n };\r\n const convertEpochToTimeInHours = (dateEpoch) => {\r\n if (dateEpoch == null || dateEpoch == undefined || dateEpoch == \"\") {\r\n return \"NA\";\r\n }\r\n const dateFromApi = new Date(dateEpoch);\r\n let hour = dateFromApi.getHours();\r\n let min = dateFromApi.getMinutes();\r\n let period = hour > 12 ? \"PM\" : \"AM\";\r\n hour = hour > 12 ? hour - 12 : hour;\r\n hour = (hour > 9 ? \"\" : \"0\") + hour;\r\n min = (min > 9 ? \"\" : \"0\") + min;\r\n return `${hour}:${min} ${period}`;\r\n };\r\n const [tabledata,settabledata ]=useState([]);\r\n const DownloadBtn = (props) => {\r\n return (\r\n <div onClick={props.onClick}>\r\n <DownloadBtnCommon />\r\n </div>\r\n );\r\n };\r\n const handleExcelDownload = (tabData) => {\r\n if(tabData?.[0] !== undefined){\r\n return Digit.Download.Excel(tabData?.[0] , \"AuditReport\");\r\n }\r\n }; \r\n useEffect(() => {\r\n register(\"offset\", 0);\r\n register(\"limit\", 5);\r\n register(\"sortOrder\", \"DESC\");\r\n}, [register]);\r\nuseEffect(() => {\r\n if ( data?.length >0){\r\n settabledata([\r\n\r\n data?.map((obj)=> {\r\n let returnObject={};\r\n returnObject[ t(\"AUDIT_DATE_LABEL\")]=convertEpochToDate(obj?.timestamp);\r\n returnObject[t(\"AUDIT_TIME_LABEL\")]=convertEpochToTimeInHours(obj?.timestamp);\r\n returnObject[t(\"AUDIT_DATAVIEWED_LABEL\")]=obj?.dataView[0]+','+obj?.dataView[1];\r\n returnObject[t(\"AUDIT_DATAVIEWED_BY_LABEL\")]=obj?.dataViewedBy;\r\n returnObject[t(\"AUDIT_ROLE_LABEL\")]=obj?.roles.map(obj=>obj.name).join(\",\");\r\n return {\r\n ...returnObject,\r\n }\r\n })\r\n ])\r\n }\r\n}, [data]);\r\nconst onSort = useCallback((args) => {\r\n if (args.length === 0) return;\r\n setValue(\"sortBy\", args.id);\r\n setValue(\"sortOrder\", args.desc ? \"DESC\" : \"ASC\");\r\n}, []);\r\n\r\nfunction onPageSizeChange(e) {\r\n setValue(\"limit\", Number(e.target.value));\r\n handleSubmit(onSubmit)();\r\n}\r\n\r\nfunction nextPage() {\r\n setValue(\"offset\", getValues(\"offset\") + getValues(\"limit\"));\r\n handleSubmit(onSubmit)();\r\n}\r\nfunction previousPage() {\r\n setValue(\"offset\", getValues(\"offset\") - getValues(\"limit\"));\r\n handleSubmit(onSubmit)();\r\n}\r\nconst isMobile = window.Digit.Utils.browser.isMobile();\r\n\r\nif (isMobile) {\r\n return <MobileSearchApplication {...{ Controller, register, control, t, reset, previousPage, handleSubmit, tenantId, data, onSubmit }} />;\r\n}\r\n\r\n//need to get from workflow\r\nconst GetCell = (value) => <span className=\"cell-text\">{value}</span>;\r\nconst columns = useMemo(\r\n () => [\r\n {\r\n Header:t(\"AUDIT_DATE_LABEL\"),\r\n disableSortBy: true,\r\n accessor:( row ) => {\r\n const timestamp = row.timestamp === \"NA\" ? t(\"WS_NA\") : convertEpochToDate(row.timestamp);\r\n return GetCell(`${timestamp}`);\r\n },\r\n },\r\n {\r\n Header:t(\"AUDIT_TIME_LABEL\"),\r\n disableSortBy: true,\r\n accessor:(row) => {\r\n const timestamp = row.timestamp === \"NA\" ? t(\"WS_NA\") : convertEpochToTimeInHours(row.timestamp);\r\n return GetCell(`${timestamp}`);\r\n }, \r\n },\r\n {\r\n Header:isMobile? t(\"AUDIT_DATAVIEWED_LABEL\"):t(\"AUDIT_DATAVIEWED_PRIVACY\"),\r\n disableSortBy: true,\r\n accessor: (row) => {\r\n return GetCell(`${row?.dataView}`);\r\n }, \r\n },\r\n {\r\n Header:isMobile? t(\"AUDIT_DATAVIEWED_BY_LABEL\"):t(\"AUDIT_DATAVIEWED_BY_PRIVACY\"),\r\n disableSortBy: true,\r\n accessor:(row) => {\r\n return GetCell(`${row?.dataViewedBy}`);\r\n }, \r\n },\r\n {\r\n Header:t(\"AUDIT_ROLE_LABEL\"),\r\n disableSortBy: true,\r\n accessor: ( row ) => {\r\n return GetCell(`${row?.roles.slice(0,3)?.map((e)=>e.name)}`);\r\n }, \r\n }\r\n ],\r\n []\r\n );\r\n\r\n return (\r\n <React.Fragment>\r\n <div style={{marginRight:\"-70px\"}}> <BackButton /> </div> \r\n <div style={{marginTop:\"30px\", marginLeft:\"30px\"}}> <Header>{t(\"PRIVACY_AUDIT_REPORT\")}</Header> </div>\r\n <SearchForm className=\"audit-card\" onSubmit={onSubmit} handleSubmit={handleSubmit}>\r\n <SearchFields {...{ register, control, reset, tenantId, t, previousPage }} />\r\n </SearchForm>\r\n <div style={{marginTop:\"240px\",marginLeft:\"-55%\",maxWidth:\"80%\",marginRight:\"52px\"}} >\r\n {data?.display ? (\r\n <div style={{ marginTop: \"20x\",width:\"1025px\", marginLeft:\"25px\" ,backgroundColor: \"white\",height:\"60px\" }}>\r\n {t(data.display)\r\n .split(\"\\\\n\")\r\n .map((text, index) => (\r\n <p key={index} style={{ textAlign: \"center\" }}>\r\n {text}\r\n </p>\r\n ))}\r\n </div>\r\n ) : (\r\n data !== \"\" ? (\r\n <div style={{ backgroundColor: \"white\", marginRight:\"-30px\", marginLeft:\"30px\" }}> \r\n <div className=\"sideContent\" style={{ float:\"right\", padding:\"10px 30px\"}}>\r\n <DownloadBtn className=\"mrlg cursorPointer\" onClick={() => handleExcelDownload(tabledata)}/>\r\n </div>\r\n <Table\r\n t={t}\r\n data={data}\r\n totalRecords={count}\r\n columns={columns}\r\n getCellProps={(cellInfo) => {\r\n return {\r\n style: {\r\n minWidth: cellInfo.column.Header === t(\"ES_INBOX_APPLICATION_NO\") ? \"240px\" : \"\",\r\n padding: \"20px 18px\",\r\n fontSize: \"16px\",\r\n },\r\n };\r\n }}\r\n onPageSizeChange={onPageSizeChange}\r\n currentPage={getValues(\"offset\") / getValues(\"limit\")}\r\n onNextPage={nextPage}\r\n onPrevPage={previousPage}\r\n manualPagination={false}\r\n pageSizeLimit={getValues(\"limit\")}\r\n onSort={onSort}\r\n disableSort={false}\r\n sortParams={[{ id: getValues(\"sortBy\"), desc: getValues(\"sortOrder\") === \"DESC\" ? true : false }]}\r\n /></div>\r\n ) : (\r\n <Loader />\r\n \r\n ))}\r\n </div>\r\n </React.Fragment> );\r\n };\r\n \r\n export default SearchApplication;","import React, { useEffect, useState } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport AuditSearchApplication from \"../../components/Search\";\r\nconst Search = ({ path }) => {\r\n const { t } = useTranslation();\r\n const tenantId = Digit.ULBService.getCitizenCurrentTenant()\r\n const [payload, setPayload] = useState({});\r\n const convertDateToEpoch = (dateString, dayStartOrEnd = \"dayend\") => {\r\n //example input format : \"2018-10-02\"\r\n try {\r\n const parts = dateString.match(/(\\d{4})-(\\d{1,2})-(\\d{1,2})/);\r\n const DateObj = new Date(Date.UTC(parts[1], parts[2] - 1, parts[3]));\r\n DateObj.setMinutes(DateObj.getMinutes() + DateObj.getTimezoneOffset());\r\n if (dayStartOrEnd === \"dayend\") {\r\n DateObj.setHours(DateObj.getHours() + 24);\r\n DateObj.setSeconds(DateObj.getSeconds() - 1);\r\n }\r\n return DateObj.getTime();\r\n } catch (e) {\r\n return dateString;\r\n }\r\n };\r\n function onSubmit(_data) {\r\n Digit.SessionStorage.set(\"AUDIT_APPLICATION_DETAIL\", {\r\n offset: 0,\r\n limit: 5,\r\n sortBy: \"commencementDate\",\r\n sortOrder: \"DESC\",\r\n });\r\n const data = {\r\n ..._data,\r\n fromDate: convertDateToEpoch(_data?.fromDate),\r\n toDate: convertDateToEpoch(_data?.toDate),\r\n };\r\n \r\n setPayload(\r\n Object.keys(data)\r\n .filter((k) => data[k])\r\n .reduce((acc, key) => ({ ...acc, [key]: typeof data[key] === \"object\" ? data[key] : data[key] }), {})\r\n );\r\n }\r\n useEffect(() => {\r\n const storedPayload = Digit.SessionStorage.get(\"AUDIT_APPLICATION_DETAIL\") || {};\r\n if (storedPayload) {\r\n const data = {\r\n ...storedPayload,\r\n };\r\n \r\n setPayload(\r\n Object.keys(data)\r\n .filter((k) => data[k])\r\n .reduce((acc, key) => ({ ...acc, [key]: typeof data[key] === \"object\" ? data[key].code : data[key] }), {})\r\n );\r\n }\r\n }, []);\r\n const config = {\r\n enabled: !!(payload && Object.keys(payload).length > 0),\r\n };\r\n const newObj = { ...payload };\r\n \r\n const {\r\n isLoading,\r\n data,\r\n} = Digit.Hooks.useAudit({\r\n tenantId,\r\n filters: {\r\n ...newObj,\r\n },\r\n config,\r\n });\r\n\r\n return (\r\n <AuditSearchApplication\r\n t={t}\r\n tenantId={tenantId}\r\n onSubmit={onSubmit}\r\n data={\r\n !isLoading\r\n ? data?.ElasticSearchData?.length > 0\r\n ? data?.ElasticSearchData\r\n : { display: \"ES_COMMON_NO_DATA\" }\r\n : \"\"\r\n }\r\n count={data?.ElasticSearchData?.length}\r\n />\r\n );\r\n };\r\n export default Search;","import { BackButton, WhatsappIcon, Card, CitizenHomeCard, CitizenInfoLabel } from \"@egovernments/digit-ui-react-components\";\r\nimport React from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { Route, Switch, useRouteMatch, useHistory, Link } from \"react-router-dom\";\r\nimport ErrorBoundary from \"../../components/ErrorBoundaries\";\r\nimport { AppHome, processLinkData } from \"../../components/Home\";\r\nimport TopBarSideBar from \"../../components/TopBarSideBar\";\r\nimport StaticCitizenSideBar from \"../../components/TopBarSideBar/SideBar/StaticCitizenSideBar\";\r\nimport CitizenHome from \"./Home\";\r\nimport LanguageSelection from \"./Home/LanguageSelection\";\r\nimport LocationSelection from \"./Home/LocationSelection\";\r\nimport Login from \"./Login\";\r\nimport UserProfile from \"./Home/UserProfile\";\r\nimport ErrorComponent from \"../../components/ErrorComponent\";\r\nimport FAQsSection from \"./FAQs/FAQs\";\r\nimport HowItWorks from \"./HowItWorks/howItWorks\";\r\nimport StaticDynamicCard from \"./StaticDynamicComponent/StaticDynamicCard\";\r\nimport Search from \"./SearchApp\";\r\nconst sidebarHiddenFor = [\r\n `${window?.contextPath}/citizen/register/name`,\r\n `/${window?.contextPath}/citizen/select-language`,\r\n `/${window?.contextPath}/citizen/select-location`,\r\n `/${window?.contextPath}/citizen/login`,\r\n `/${window?.contextPath}/citizen/register/otp`,\r\n];\r\n\r\nconst getTenants = (codes, tenants) => {\r\n return tenants.filter((tenant) => codes.map((item) => item.code).includes(tenant.code));\r\n};\r\n\r\nconst Home = ({\r\n stateInfo,\r\n userDetails,\r\n CITIZEN,\r\n cityDetails,\r\n mobileView,\r\n handleUserDropdownSelection,\r\n logoUrl,\r\n DSO,\r\n stateCode,\r\n modules,\r\n appTenants,\r\n sourceUrl,\r\n pathname,\r\n initData,\r\n}) => {\r\n const { isLoading: islinkDataLoading, data: linkData, isFetched: isLinkDataFetched } = Digit.Hooks.useCustomMDMS(\r\n Digit.ULBService.getStateId(),\r\n \"ACCESSCONTROL-ACTIONS-TEST\",\r\n [\r\n {\r\n name: \"actions-test\",\r\n filter: `[?(@.url == ${window.contextPath}-card)]`,\r\n },\r\n ],\r\n {\r\n select: (data) => {\r\n const formattedData = data?.[\"ACCESSCONTROL-ACTIONS-TEST\"]?.[\"actions-test\"]\r\n ?.filter((el) => el.enabled === true)\r\n .reduce((a, b) => {\r\n a[b.parentModule] = a[b.parentModule]?.length > 0 ? [b, ...a[b.parentModule]] : [b];\r\n return a;\r\n }, {});\r\n return formattedData;\r\n },\r\n }\r\n );\r\n\r\n const classname = Digit.Hooks.fsm.useRouteSubscription(pathname);\r\n const { t } = useTranslation();\r\n const { path } = useRouteMatch();\r\n const history = useHistory();\r\n const handleClickOnWhatsApp = (obj) => {\r\n window.open(obj);\r\n };\r\n\r\n const hideSidebar = sidebarHiddenFor.some((e) => window.location.href.includes(e));\r\n const appRoutes = modules.map(({ code, tenants }, index) => {\r\n const Module = Digit.ComponentRegistryService.getComponent(`${code}Module`);\r\n return Module ? (\r\n <Route key={index} path={`${path}/${code.toLowerCase()}`}>\r\n <Module stateCode={stateCode} moduleCode={code} userType=\"citizen\" tenants={getTenants(tenants, appTenants)} />\r\n </Route>\r\n ) : null;\r\n });\r\n\r\n const ModuleLevelLinkHomePages = modules.map(({ code, bannerImage }, index) => {\r\n let Links = Digit.ComponentRegistryService.getComponent(`${code}Links`) || (() => <React.Fragment />);\r\n let mdmsDataObj = isLinkDataFetched ? processLinkData(linkData, code, t) : undefined;\r\n\r\n if (mdmsDataObj?.header === \"ACTION_TEST_WS\") {\r\n mdmsDataObj?.links.sort((a, b) => {\r\n return b.orderNumber - a.orderNumber;\r\n });\r\n }\r\n return (\r\n <React.Fragment>\r\n <Route key={index} path={`${path}/${code.toLowerCase()}-home`}>\r\n <div className=\"moduleLinkHomePage\">\r\n <img src={bannerImage || stateInfo?.bannerUrl} alt=\"noimagefound\" />\r\n <BackButton className=\"moduleLinkHomePageBackButton\" />\r\n <h1>{t(\"MODULE_\" + code.toUpperCase())}</h1>\r\n <div className=\"moduleLinkHomePageModuleLinks\">\r\n {mdmsDataObj && (\r\n <CitizenHomeCard\r\n header={t(mdmsDataObj?.header)}\r\n links={mdmsDataObj?.links}\r\n Icon={() => <span />}\r\n Info={\r\n code === \"OBPS\"\r\n ? () => (\r\n <CitizenInfoLabel\r\n style={{ margin: \"0px\", padding: \"10px\" }}\r\n info={t(\"CS_FILE_APPLICATION_INFO_LABEL\")}\r\n text={t(`BPA_CITIZEN_HOME_STAKEHOLDER_INCLUDES_INFO_LABEL`)}\r\n />\r\n )\r\n : null\r\n }\r\n isInfo={code === \"OBPS\" ? true : false}\r\n />\r\n )}\r\n {/* <Links key={index} matchPath={`/digit-ui/citizen/${code.toLowerCase()}`} userType={\"citizen\"} /> */}\r\n </div>\r\n <StaticDynamicCard moduleCode={code?.toUpperCase()}/>\r\n </div>\r\n </Route>\r\n <Route key={\"faq\" + index} path={`${path}/${code.toLowerCase()}-faq`}>\r\n <FAQsSection module={code?.toUpperCase()} />\r\n </Route>\r\n <Route key={\"hiw\" + index} path={`${path}/${code.toLowerCase()}-how-it-works`}>\r\n <HowItWorks module={code?.toUpperCase()} />\r\n </Route>\r\n </React.Fragment>\r\n );\r\n });\r\n\r\n return (\r\n <div className={classname}>\r\n <TopBarSideBar\r\n t={t}\r\n stateInfo={stateInfo}\r\n userDetails={userDetails}\r\n CITIZEN={CITIZEN}\r\n cityDetails={cityDetails}\r\n mobileView={mobileView}\r\n handleUserDropdownSelection={handleUserDropdownSelection}\r\n logoUrl={logoUrl}\r\n showSidebar={true}\r\n linkData={linkData}\r\n islinkDataLoading={islinkDataLoading}\r\n />\r\n\r\n <div className={`main center-container citizen-home-container mb-25`}>\r\n {hideSidebar ? null : (\r\n <div className=\"SideBarStatic\">\r\n <StaticCitizenSideBar linkData={linkData} islinkDataLoading={islinkDataLoading} />\r\n </div>\r\n )}\r\n\r\n <Switch>\r\n <Route exact path={path}>\r\n <CitizenHome />\r\n </Route>\r\n\r\n <Route exact path={`${path}/select-language`}>\r\n <LanguageSelection />\r\n </Route>\r\n\r\n <Route exact path={`${path}/select-location`}>\r\n <LocationSelection />\r\n </Route>\r\n <Route path={`${path}/error`}>\r\n <ErrorComponent\r\n initData={initData}\r\n goToHome={() => {\r\n history.push(`/${window?.contextPath}/citizen`);\r\n }}\r\n />\r\n </Route>\r\n <Route path={`${path}/all-services`}>\r\n <AppHome\r\n userType=\"citizen\"\r\n modules={modules}\r\n getCitizenMenu={linkData}\r\n fetchedCitizen={isLinkDataFetched}\r\n isLoading={islinkDataLoading}\r\n />\r\n </Route>\r\n\r\n <Route path={`${path}/login`}>\r\n <Login stateCode={stateCode} />\r\n </Route>\r\n\r\n <Route path={`${path}/register`}>\r\n <Login stateCode={stateCode} isUserRegistered={false} />\r\n </Route>\r\n\r\n <Route path={`${path}/user/profile`}>\r\n <UserProfile stateCode={stateCode} userType={\"citizen\"} cityDetails={cityDetails} />\r\n </Route>\r\n\r\n <Route path={`${path}/Audit`}>\r\n <Search/>\r\n </Route>\r\n <ErrorBoundary initData={initData}>\r\n {appRoutes}\r\n {ModuleLevelLinkHomePages}\r\n </ErrorBoundary>\r\n </Switch>\r\n </div>\r\n <div className=\"citizen-home-footer\" style={window.location.href.includes(\"citizen/obps\") ? { zIndex: \"-1\" } : {}}>\r\n <img\r\n alt=\"Powered by DIGIT\"\r\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER\")}\r\n style={{ height: \"1.2em\", cursor: \"pointer\" }}\r\n onClick={() => {\r\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\r\n }}\r\n />\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Home;\r\n","import React, { useEffect } from \"react\";\r\nimport { Redirect, Route, Switch, useHistory, useLocation } from \"react-router-dom\";\r\nimport EmployeeApp from \"./pages/employee\";\r\nimport CitizenApp from \"./pages/citizen\";\r\n\r\nexport const DigitApp = ({ stateCode, modules, appTenants, logoUrl, initData }) => {\r\n const history = useHistory();\r\n const { pathname } = useLocation();\r\n const innerWidth = window.innerWidth;\r\n const cityDetails = Digit.ULBService.getCurrentUlb();\r\n const userDetails = Digit.UserService.getUser();\r\n const { data: storeData } = Digit.Hooks.useStore.getInitData();\r\n const { stateInfo } = storeData || {};\r\n const DSO = Digit.UserService.hasAccess([\"FSM_DSO\"]);\r\n let CITIZEN = userDetails?.info?.type === \"CITIZEN\" || !window.location.pathname.split(\"/\").includes(\"employee\") ? true : false;\r\n\r\n if (window.location.pathname.split(\"/\").includes(\"employee\")) CITIZEN = false;\r\n\r\n useEffect(() => {\r\n if (!pathname?.includes(\"application-details\")) {\r\n if (!pathname?.includes(\"inbox\")) {\r\n Digit.SessionStorage.del(\"fsm/inbox/searchParams\");\r\n }\r\n if (pathname?.includes(\"search\")) {\r\n Digit.SessionStorage.del(\"fsm/search/searchParams\");\r\n }\r\n }\r\n if (!pathname?.includes(\"dss\")) {\r\n Digit.SessionStorage.del(\"DSS_FILTERS\");\r\n }\r\n if (pathname?.toString() === `/${window?.contextPath}/employee`) {\r\n Digit.SessionStorage.del(\"SEARCH_APPLICATION_DETAIL\");\r\n Digit.SessionStorage.del(\"WS_EDIT_APPLICATION_DETAILS\");\r\n }\r\n if (pathname?.toString() === `/${window?.contextPath}/citizen` || pathname?.toString() === `/${window?.contextPath}/employee`) {\r\n Digit.SessionStorage.del(\"WS_DISCONNECTION\");\r\n }\r\n }, [pathname]);\r\n\r\n history.listen(() => {\r\n window?.scrollTo({ top: 0, left: 0, behavior: \"smooth\" });\r\n });\r\n\r\n const handleUserDropdownSelection = (option) => {\r\n option.func();\r\n };\r\n\r\n const mobileView = innerWidth <= 640;\r\n let sourceUrl = `${window.location.origin}/citizen`;\r\n const commonProps = {\r\n stateInfo,\r\n userDetails,\r\n CITIZEN,\r\n cityDetails,\r\n mobileView,\r\n handleUserDropdownSelection,\r\n logoUrl,\r\n DSO,\r\n stateCode,\r\n modules,\r\n appTenants,\r\n sourceUrl,\r\n pathname,\r\n initData,\r\n };\r\n return (\r\n <Switch>\r\n <Route path={`/${window?.contextPath}/employee`}>\r\n <EmployeeApp {...commonProps} />\r\n </Route>\r\n <Route path={`/${window?.contextPath}/citizen`}>\r\n <CitizenApp {...commonProps} />\r\n </Route>\r\n <Route>\r\n <Redirect to={`/${window?.contextPath}/citizen`} />\r\n </Route>\r\n </Switch>\r\n );\r\n};\r\n","export const commonReducer = (defaultData) => (state = defaultData, action) => {\r\n switch (action.type) {\r\n case \"LANGUAGE_SELECT\":\r\n return { ...state, selectedLanguage: action.payload };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { createStore, combineReducers, compose, applyMiddleware } from \"redux\";\r\nimport thunk from \"redux-thunk\";\r\nimport { commonReducer } from \"./reducers\";\r\n\r\nconst getRootReducer = (defaultStore, moduleReducers) =>\r\n combineReducers({\r\n common: commonReducer(defaultStore),\r\n ...moduleReducers,\r\n });\r\n\r\nconst middleware = [thunk];\r\n\r\nconst composeEnhancers =\r\n typeof window === \"object\" && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ ? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({}) : compose;\r\n\r\nconst enhancer = composeEnhancers(\r\n applyMiddleware(...middleware)\r\n // other store enhancers if any\r\n);\r\n\r\nconst getStore = (defaultStore, moduleReducers = {}) => {\r\n return createStore(getRootReducer(defaultStore, moduleReducers), enhancer);\r\n};\r\nexport default getStore;\r\n","import React from \"react\";\r\nimport { QueryClient, QueryClientProvider } from \"react-query\";\r\nimport { Provider } from \"react-redux\";\r\nimport { BrowserRouter as Router } from \"react-router-dom\";\r\nimport { getI18n } from \"react-i18next\";\r\nimport { Body, Loader } from \"@egovernments/digit-ui-react-components\";\r\nimport { DigitApp } from \"./App\";\r\nimport SelectOtp from \"./pages/citizen/Login/SelectOtp\";\r\n\r\nimport getStore from \"./redux/store\";\r\nimport ErrorBoundary from \"./components/ErrorBoundaries\";\r\nimport { useState } from \"react\";\r\n\r\nconst DigitUIWrapper = ({ stateCode, enabledModules, moduleReducers }) => {\r\n const { isLoading, data: initData } = Digit.Hooks.useInitStore(stateCode, enabledModules);\r\n if (isLoading) {\r\n return <Loader page={true} />;\r\n }\r\n\r\n const i18n = getI18n();\r\n return (\r\n <Provider store={getStore(initData, moduleReducers(initData))}>\r\n <Router>\r\n <Body>\r\n <DigitApp\r\n initData={initData}\r\n stateCode={stateCode}\r\n modules={initData?.modules}\r\n appTenants={initData.tenants}\r\n logoUrl={initData?.stateInfo?.logoUrl}\r\n />\r\n </Body>\r\n </Router>\r\n </Provider>\r\n );\r\n};\r\n\r\nexport const DigitUI = ({ stateCode, registry, enabledModules, moduleReducers }) => {\r\n const [privacy, setPrivacy] = useState(Digit.Utils.getPrivacyObject() || {});\r\n const userType = Digit.UserService.getType();\r\n const queryClient = new QueryClient({\r\n defaultOptions: {\r\n queries: {\r\n staleTime: 15 * 60 * 1000,\r\n cacheTime: 50 * 60 * 1000,\r\n retryDelay: (attemptIndex) => Infinity,\r\n /*\r\n enable this to have auto retry incase of failure\r\n retryDelay: attemptIndex => Math.min(1000 * 3 ** attemptIndex, 60000)\r\n */\r\n },\r\n },\r\n });\r\n\r\n const ComponentProvider = Digit.Contexts.ComponentProvider;\r\n const PrivacyProvider = Digit.Contexts.PrivacyProvider;\r\n\r\n const DSO = Digit.UserService.hasAccess([\"FSM_DSO\"]);\r\n\r\n return (\r\n <div>\r\n <ErrorBoundary>\r\n <QueryClientProvider client={queryClient}>\r\n <ComponentProvider.Provider value={registry}>\r\n <PrivacyProvider.Provider\r\n value={{\r\n privacy: privacy?.[window.location.pathname],\r\n resetPrivacy: (_data) => {\r\n Digit.Utils.setPrivacyObject({});\r\n setPrivacy({});\r\n },\r\n getPrivacy: () => {\r\n const privacyObj = Digit.Utils.getPrivacyObject();\r\n setPrivacy(privacyObj);\r\n return privacyObj;\r\n },\r\n /* Descoped method to update privacy object */\r\n updatePrivacyDescoped: (_data) => {\r\n const privacyObj = Digit.Utils.getAllPrivacyObject();\r\n const newObj = { ...privacyObj, [window.location.pathname]: _data };\r\n Digit.Utils.setPrivacyObject({ ...newObj });\r\n setPrivacy(privacyObj?.[window.location.pathname] || {});\r\n },\r\n /**\r\n * Main Method to update the privacy object anywhere in the application\r\n *\r\n * @author jagankumar-egov\r\n *\r\n * Feature :: Privacy\r\n *\r\n * @example\r\n * const { privacy , updatePrivacy } = Digit.Hooks.usePrivacyContext();\r\n */\r\n updatePrivacy: (uuid, fieldName) => {\r\n setPrivacy(Digit.Utils.updatePrivacy(uuid, fieldName) || {});\r\n },\r\n }}\r\n >\r\n <DigitUIWrapper stateCode={stateCode} enabledModules={enabledModules} moduleReducers={moduleReducers} />\r\n </PrivacyProvider.Provider>\r\n </ComponentProvider.Provider>\r\n </QueryClientProvider>\r\n </ErrorBoundary>\r\n </div>\r\n );\r\n};\r\n\r\nconst componentsToRegister = {\r\n SelectOtp,\r\n};\r\n\r\nexport const initCoreComponents = () => {\r\n Object.entries(componentsToRegister).forEach(([key, value]) => {\r\n Digit.ComponentRegistryService.setComponent(key, value);\r\n });\r\n};\r\n"],"names":["processLinkData","newData","code","t","obj","map","link","i18nKey","newObj","links","reverse","header","Digit","Utils","locale","getTransformedLocale","iconName","roleBasedLoginRoutes","role","from","window","contextPath","dashoardLink","loginLink","UserService","hasAccess","push","state","iconSelector","React","PTIcon","WSICon","FSMIcon","MCollectIcon","PGRIcon","TLIcon","OBPSIcon","BillsIcon","CitizenHome","modules","getCitizenMenu","fetchedCitizen","isLoading","paymentModule","filter","moduleArr","moduleArray","useTranslation","Loader","BackButton","mod","index","mdmsDataObj","undefined","length","CitizenHomeCard","ele","sort","x","y","orderNumber","CitizenInfoLabel","margin","padding","EmployeeHome","Card","ComponentRegistryService","getComponent","AppHome","userType","_Pact","prototype","then","onFulfilled","onRejected","result","s","callback","_settle","v","e","o","_this","value","pact","bind","observer","_isSettledPact","thenable","_forTo","array","body","check","i","reject","_cycle","_iteratorSymbol","Symbol","iterator","_forOf","target","step","next","done","return","_fixup","TypeError","values","_asyncIteratorSymbol","asyncIterator","_catch","recover","_finallyRethrows","finalizer","loginSteps","texts","cardText","nextText","submitBarLabel","inputs","label","type","name","error","validation","required","minLength","maxLength","pattern","SelectMobileNumber","onSelect","showRegisterLink","mobileNumber","onMobileChange","config","canSubmit","FormStep","useInterval","delay","savedCallback","useRef","useEffect","current","tick","timer","setInterval","clearInterval","SelectOtp","otp","onOtpChange","onResend","useState","timeLeft","setTimeLeft","handleResendOtp","Fragment","OTPInput","CardText","CardLabelError","SelectName","isDisabled","TYPE_REGISTER","TYPE_LOGIN","DEFAULT_REDIRECT_URL","setCitizenDetail","userObject","token","tenantId","JSON","parse","sessionStorage","getItem","selectedLanguage","localStorage","setItem","stringify","getFromLocation","searchParams","Login","stateCode","isUserRegistered","location","useLocation","useRouteMatch","path","history","useHistory","user","setUser","setError","isOtpValid","setIsOtpValid","data","params","setParmas","errorTO","setErrorTO","Hooks","useQueryParams","canSubmitName","setCanSubmitName","canSubmitOtp","setCanSubmitOtp","canSubmitNo","setCanSubmitNo","errorTimeout","clearTimeout","setTimeout","SessionStorage","set","info","access_token","redirectPath","ULBService","getCitizenCurrentTenant","replace","redirectBackTo","stepItems","useMemo","key","getUserType","getType","handleOtpChange","handleMobileChange","event","selectMobileNumber","sendOtp","res","err","selectName","selectOtp","requestData","username","password","authenticate","ResponseInfo","UserRequest","tokens","roleInfo","roles","find","userRole","globalConfigs","getConfig","getStateId","otpReference","registerUser","resendOtp","Switch","AppContainer","Route","Toast","loginConfig","submitButtonLabel","secondaryButtonLabel","b","for","c","d","f","g","h","k","l","m","n","p","q","r","w","z","a","u","$$typeof","A","process","env","NODE_ENV","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","console","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isMemo","isPortal","isProfiler","isStrictMode","isSuspense","exports","module","require$$0","require$$1","getOwnPropertySymbols","Object","hasOwnProperty","propIsEnumerable","propertyIsEnumerable","toObject","val","shouldUseNative","assign","test1","String","getOwnPropertyNames","test2","fromCharCode","order2","join","test3","split","forEach","letter","keys","source","to","symbols","arguments","call","ReactPropTypesSecret","Function","printWarning","loggedTypeFailures","has","text","message","Error","checkPropTypes","typeSpecs","componentName","getStack","typeSpecName","ex","stack","resetWarningCache","emptyFunctionThatReturnsNull","isValidElement","throwOnDirectAccess","ITERATOR_SYMBOL","FAUX_ITERATOR_SYMBOL","getIteratorFn","maybeIterable","iteratorFn","ANONYMOUS","ReactPropTypes","createPrimitiveTypeChecker","bigint","bool","func","number","string","symbol","any","createAnyTypeChecker","arrayOf","createArrayOfTypeChecker","element","createElementTypeChecker","elementType","createElementTypeTypeChecker","instanceOf","createInstanceTypeChecker","node","createNodeChecker","objectOf","createObjectOfTypeChecker","oneOf","createEnumTypeChecker","oneOfType","createUnionTypeChecker","shape","createShapeTypeChecker","exact","createStrictShapeTypeChecker","is","PropTypeError","createChainableTypeChecker","validate","manualPropTypeCallCache","manualPropTypeWarningCount","checkType","isRequired","props","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","RegExp","Date","constructor","PropTypes","emptyFunction","emptyFunctionWithReset","shim","getShim","require$$2","Background","children","Header","useStore","getInitData","storeData","stateInfo","logoUrl","toUpperCase","setEmployeeDetail","propsConfig","useTenants","cities","isStoreLoading","showToast","setShowToast","disable","setDisable","filteredRoles","get","href","includes","decodeURIComponent","onLogin","city","alert","response","error_description","closeToast","onForgotPassword","userId","populators","isMandatory","customProps","component","Dropdown","onChange","borderBottom","FormComposer","textAlign","minWidth","maxWidth","width","backgroundColor","cursor","open","focus","propTypes","loginParams","defaultProps","EmployeeLogin","LoginComponent","ChangePasswordComponent","mobile_number","setOtp","setType","onResendOTP","onChangePassword","newPassword","confirmPassword","changePassword","navigateToLogin","fields","CardSubHeader","EmployeeChangePassword","description","ForgotPassword","componentInFront","EmployeeForgotPassword","ForgotPasswordComponent","LanguageSelection","languages","StoreData","getCurrentLanguage","selected","setselected","handleChangeLanguage","language","LocalizationService","changeLanguage","handleSubmit","justifyContent","marginBottom","CustomButton","SubmitBar","getTenants","codes","tenants","tenant","item","AppModules","appTenants","ComponentProvider","Contexts","getUser","Redirect","pathname","search","appRoutes","Module","toLowerCase","ChangePassword","ErrorConfig","imgUrl","infoMessage","buttonInfo","maintenance","notfound","ErrorComponent","goToHome","Redircter","ErrorBoundary","errorStack","hasError","getDerivedStateFromError","componentDidCatch","errorInfo","setState","render","initData","Component","stringReplaceAll","str","searcher","replaceWith","ChangeCity","prop","dropDownData","setDropDownData","selectCityData","setSelectCityData","selectedCities","handleChangeCity","loggedInData","reload","userloggedValues","teantsArray","filteredArray","unique","ar","indexOf","uniCode","select","mobileView","color","cityValue","ChangeLanguage","isDropdown","dropdown","TextToImg","toggleMenu","TopBar","toggleSidebar","isSidebarOpen","handleLogout","userDetails","CITIZEN","cityDetails","userOptions","handleUserDropdownSelection","showLanguageChange","profilePic","setProfilePic","getCurrentTenantId","uuid","userSearch","usersResponse","thumbs","photo","at","CitizenHomePageTenantId","conditionsToDisableNotificationCountTrigger","useNotificationCount","enabled","unreadNotificationCount","unreadCount","notificationCountLoaded","isSuccess","updateSidebar","clikOusideFired","onNotificationIconClick","urlsToDisableNotificationIcon","TopBarComponent","logoUrlWhite","loggedin","Hamburger","logoId","statelogo","display","alignItems","ulbGrade","fontSize","right","overflow","userInfo","height","borderRadius","SideBarMenu","closeSidebar","redirectToLoginPage","isEmployee","icon","onClick","action","id","LogoutIcon","Heading","Close","CloseBtn","isMobileView","CloseSvg","LogoutDialog","onCancel","onDismiss","mobileDeviceWidth","innerWidth","setIsMobileView","onResize","addEventListener","Modal","maxHeight","position","top","left","transform","flex","bottom","paddingTop","marginLeft","marginRight","defaultImage","Profile","stateName","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","contactNumber","localeCompare","sidebar","splice","sidebarURL","pointerzevents","flexDirection","zIndex","objectFit","objectPosition","PoweredBy","CitizenSideBar","isOpen","onLogout","setSearch","useAccessControl","redirectUrl","configEmployeeSideBar","actions","url","displayName","getSingleDisplayName","getParentDisplayName","navigationURL","moduleName","ob","indx","findIndex","home","comp","part","c1","c2","concat","NavBar","SubMenu","subnav","setSubnav","showSubnav","announcement","ComplaintIcon","business","BPAHomeIcon","store","assignment","receipt","ReceiptIcon","PersonIcon","DocumentIconSolid","DropIcon","CollectionsBookmarIcons","FinanceChartIcon","edcr","collections","getModuleName","appendTranslate","trimModuleName","substring","getOrigin","origin","ArrowVectorDown","ArrowForward","getChildName","EmployeeSideBar","sidebarRef","style","collapseNav","expandNav","querySelectorAll","splitKeyValue","homeURL","unshift","renderSearch","SearchIcon","SideBar","TopBarSideBar","showSidebar","userProfile","UploadDrawer","closeDrawer","removeProfilePic","uploadedFile","setUploadedFile","file","setFile","selectfile","files","removeimg","onOverlayBodyClick","size","UploadServices","Filestorage","fileStoreId","gap","GalleryIcon","RemoveIcon","UserProfile","stateId","setUserDetails","setName","email","setEmail","gender","setGender","permanentCity","setCity","setMobileNo","profileImg","setProfileImg","openUploadSlide","setOpenUploadSide","changepassword","setChangepassword","currentPassword","setCurrentPassword","setNewPassword","setConfirmPassword","toast","setToast","loading","setLoading","windowWidth","setWindowWidth","errors","setErrors","getUserInfo","removeEventListener","editScreen","onClickAddPic","TogleforPassword","setGenderName","closeFileUploadDrawer","setUserName","test","userName","setUserEmailAddress","emailAddress","setUserMobileNumber","setUserCurrentPassword","setUserNewPassword","setUserConfirmPassword","duration","updateProfile","updateUser","responseInfo","status","existingPassword","changePasswordResponseInfo","Errors","errorObj","menu","pt","useGenderMDMS","Menu","genderDetails","setFileStoreId","thumbnails","getThumbnails","ids","Filefetch","fileStoreIds","images","getFileUrl","BreadCrumb","content","show","boxShadow","background","border","CameraIcon","paddingBottom","LabelFieldPair","CardLabel","TextInput","title","MobileNumber","float","userScreensExempted","EmployeeApp","DSO","sourceUrl","isUserProfile","some","bannerUrl","Home","uiHomePage","useEvents","variant","EventsData","EventsDataLoading","appBannerWebObj","appBannerDesktop","appBannerMobObj","appBannerMobile","citizenServicesObj","citizenServicesCard","infoAndUpdatesObj","informationAndUpdatesCard","whatsAppBannerWebObj","whatsAppBannerDesktop","whatsAppBannerMobObj","whatsAppBannerMobile","whatsNewSectionObj","whatsNewSection","handleClickOnWhatsAppBanner","navigationUrl","allCitizenServicesProps","headerLabel","sideOption","options","Icon","styles","flexWrap","allInfoAndUpdatesProps","Calender","DocumentIcon","CardBasedOptions","WhatsNewCard","RadioButtonProps","optionsKey","additionalWrapperClass","selectedOption","onSubmit","PageBasedInput","CardHeader","RadioButtons","LocationSelection","selectedCity","setSelectedCity","showError","setShowError","selectCity","SearchOnRadioButtons","FaqComponent","question","answer","lastIndex","toggleOpen","FAQsSection","useGetFAQsJSON","moduleFaqs","MdmsRes","faqs","faq","HowItWorks","videoPlay","setVideoPlay","vidSrc","setVidSrc","ViDSvg","onClickVideo","vidObj","onClose","useGetHowItWorksJSON","mdmsConfigResult","howItWorks","videosJson","videos","PDFSvg","pdfHeader","pdfDesc","DownloadImgIcon","StaticDynamicCard","moduleCode","useStaticData","isMdmsLoading","mdmsData","useDynamicData","filters","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","isHTMLElement","HTMLElement","SearchFields","control","reset","SearchField","DatePicker","MobileSearchApplication","Controller","register","previousPage","activateModal","payload","tabledata","settabledata","DownloadBtn","DownloadBtnCommon","handleExcelDownload","tabData","Download","Excel","returnObject","convertEpochToDate","timestamp","convertEpochToTimeInHours","dataView","dataViewedBy","dateEpoch","dateFromApi","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","Table","cellInfo","column","Search","setPayload","convertDateToEpoch","dateString","dayStartOrEnd","parts","match","DateObj","UTC","setMinutes","getTimezoneOffset","setHours","setSeconds","getSeconds","getTime","_data","sortBy","fromDate","toDate","reduce","acc","storedPayload","useAudit","AuditSearchApplication","ElasticSearchData","sidebarHiddenFor","_window","useCustomMDMS","formattedData","el","parentModule","isLinkDataFetched","classname","fsm","useRouteSubscription","hideSidebar","ModuleLevelLinkHomePages","bannerImage","Links","DigitApp","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","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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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/components/Home.js","../../../../node_modules/babel-plugin-transform-async-to-promises/helpers.mjs","../src/pages/citizen/Login/config.js","../src/pages/citizen/Login/SelectMobileNumber.js","../src/hooks/useInterval.js","../src/pages/citizen/Login/SelectOtp.js","../src/pages/citizen/Login/SelectName.js","../src/pages/citizen/Login/index.js","../src/pages/employee/Login/config.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/Login/login.js","../src/pages/employee/Login/index.js","../src/pages/employee/ChangePassword/config.js","../src/pages/employee/ChangePassword/changePassword.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/pages/employee/LanguageSelection/index.js","../src/components/AppModules.js","../src/components/ErrorComponent.js","../src/components/ErrorBoundaries.js","../src/components/ChangeCity.js","../src/components/ChangeLanguage.js","../src/components/TopBarSideBar/TopBar.js","../src/config/sidebar-menu.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/Home/ImageUpload/UploadDrawer.js","../src/pages/citizen/Home/UserProfile.js","../src/pages/employee/index.js","../src/pages/citizen/Home/index.js","../src/pages/citizen/Home/LanguageSelection.js","../src/pages/citizen/Home/LocationSelection.js","../src/pages/citizen/FAQs/FaqComponent.js","../src/pages/citizen/FAQs/FAQs.js","../src/pages/citizen/HowItWorks/howItWorks.js","../src/pages/citizen/StaticDynamicComponent/StaticDynamicCard.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/index.js","../src/App.js","../src/redux/reducers/index.js","../src/redux/store.js","../src/Module.js"],"sourcesContent":["import {\r\n BackButton,\r\n BillsIcon,\r\n CitizenHomeCard,\r\n CitizenInfoLabel,\r\n FSMIcon,\r\n Loader,\r\n MCollectIcon,\r\n OBPSIcon,\r\n PGRIcon,\r\n PTIcon,\r\n TLIcon,\r\n WSICon,\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport React from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\n/* \r\nFeature :: Citizen All service screen cards\r\n*/\r\nexport const processLinkData = (newData, code, t) => {\r\n const obj = newData?.[`${code}`];\r\n if (obj) {\r\n obj.map((link) => {\r\n (link.link = link[\"navigationURL\"]), (link.i18nKey = t(link[\"name\"]));\r\n });\r\n }\r\n const newObj = {\r\n links: obj?.reverse(),\r\n header: Digit.Utils.locale.getTransformedLocale(`ACTION_TEST_${code}`),\r\n iconName: `CITIZEN_${code}_ICON`,\r\n };\r\n if (code === \"FSM\") {\r\n const roleBasedLoginRoutes = [\r\n {\r\n role: \"FSM_DSO\",\r\n from: `/${window?.contextPath}/citizen/fsm/dso-dashboard`,\r\n dashoardLink: \"CS_LINK_DSO_DASHBOARD\",\r\n loginLink: \"CS_LINK_LOGIN_DSO\",\r\n },\r\n ];\r\n //RAIN-7297\r\n roleBasedLoginRoutes.map(({ role, from, loginLink, dashoardLink }) => {\r\n if (Digit.UserService.hasAccess(role))\r\n newObj?.links?.push({\r\n link: from,\r\n i18nKey: t(dashoardLink),\r\n });\r\n else\r\n newObj?.links?.push({\r\n link: `/${window?.contextPath}/citizen/login`,\r\n state: { role: \"FSM_DSO\", from },\r\n i18nKey: t(loginLink),\r\n });\r\n });\r\n }\r\n\r\n return newObj;\r\n};\r\nconst iconSelector = (code) => {\r\n switch (code) {\r\n case \"PT\":\r\n return <PTIcon className=\"fill-path-primary-main\" />;\r\n case \"WS\":\r\n return <WSICon className=\"fill-path-primary-main\" />;\r\n case \"FSM\":\r\n return <FSMIcon className=\"fill-path-primary-main\" />;\r\n case \"MCollect\":\r\n return <MCollectIcon className=\"fill-path-primary-main\" />;\r\n case \"PGR\":\r\n return <PGRIcon className=\"fill-path-primary-main\" />;\r\n case \"TL\":\r\n return <TLIcon className=\"fill-path-primary-main\" />;\r\n case \"OBPS\":\r\n return <OBPSIcon className=\"fill-path-primary-main\" />;\r\n case \"Bills\":\r\n return <BillsIcon className=\"fill-path-primary-main\" />;\r\n default:\r\n return <PTIcon className=\"fill-path-primary-main\" />;\r\n }\r\n};\r\nconst CitizenHome = ({ modules, getCitizenMenu, fetchedCitizen, isLoading }) => {\r\n const paymentModule = modules.filter(({ code }) => code === \"Payment\")[0];\r\n const moduleArr = modules.filter(({ code }) => code !== \"Payment\");\r\n const moduleArray = [paymentModule, ...moduleArr];\r\n const { t } = useTranslation();\r\n if (isLoading) {\r\n return <Loader />;\r\n }\r\n\r\n return (\r\n <React.Fragment>\r\n <div className=\"citizen-all-services-wrapper\">\r\n <BackButton />\r\n <div className=\"citizenAllServiceGrid\">\r\n {moduleArray\r\n .filter((mod) => mod)\r\n .map(({ code }, index) => {\r\n let mdmsDataObj;\r\n if (fetchedCitizen) mdmsDataObj = fetchedCitizen ? processLinkData(getCitizenMenu, code, t) : undefined;\r\n if (mdmsDataObj?.links?.length > 0) {\r\n return (\r\n <CitizenHomeCard\r\n header={t(mdmsDataObj?.header)}\r\n links={mdmsDataObj?.links?.filter((ele) => ele?.link)?.sort((x, y) => x?.orderNumber - y?.orderNumber)}\r\n Icon={() => iconSelector(code)}\r\n Info={\r\n code === \"OBPS\"\r\n ? () => (\r\n <CitizenInfoLabel\r\n style={{ margin: \"0px\", padding: \"10px\" }}\r\n info={t(\"CS_FILE_APPLICATION_INFO_LABEL\")}\r\n text={t(`BPA_CITIZEN_HOME_STAKEHOLDER_INCLUDES_INFO_LABEL`)}\r\n />\r\n )\r\n : null\r\n }\r\n isInfo={code === \"OBPS\" ? true : false}\r\n />\r\n );\r\n } else return <React.Fragment />;\r\n })}\r\n </div>\r\n </div>\r\n </React.Fragment>\r\n );\r\n};\r\n\r\nconst EmployeeHome = ({ modules }) => {\r\n return (\r\n <div className=\"employee-app-container\">\r\n <div className=\"ground-container moduleCardWrapper gridModuleWrapper\">\r\n {modules.map(({ code }, index) => {\r\n const Card = Digit.ComponentRegistryService.getComponent(`${code}Card`) || (() => <React.Fragment />);\r\n return <Card key={index} />;\r\n })}\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport const AppHome = ({ userType, modules, getCitizenMenu, fetchedCitizen, isLoading }) => {\r\n if (userType === \"citizen\") {\r\n return <CitizenHome modules={modules} getCitizenMenu={getCitizenMenu} fetchedCitizen={fetchedCitizen} isLoading={isLoading} />;\r\n }\r\n return <EmployeeHome modules={modules} />;\r\n};\r\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","export const loginSteps = [\r\n {\r\n texts: {\r\n header: \"CS_LOGIN_PROVIDE_MOBILE_NUMBER\",\r\n cardText: \"CS_LOGIN_TEXT\",\r\n nextText: \"CS_COMMONS_NEXT\",\r\n submitBarLabel: \"CS_COMMONS_NEXT\",\r\n },\r\n inputs: [\r\n {\r\n label: \"CORE_COMMON_MOBILE_NUMBER\",\r\n type: \"text\",\r\n name: \"mobileNumber\",\r\n error: \"ERR_HRMS_INVALID_MOB_NO\",\r\n validation: {\r\n required: true,\r\n minLength: 10,\r\n maxLength: 10,\r\n },\r\n },\r\n ],\r\n },\r\n {\r\n texts: {\r\n header: \"CS_LOGIN_OTP\",\r\n cardText: \"CS_LOGIN_OTP_TEXT\",\r\n nextText: \"CS_COMMONS_NEXT\",\r\n submitBarLabel: \"CS_COMMONS_NEXT\",\r\n },\r\n },\r\n {\r\n texts: {\r\n header: \"CS_LOGIN_PROVIDE_NAME\",\r\n cardText: \"CS_LOGIN_NAME_TEXT\",\r\n nextText: \"CS_COMMONS_NEXT\",\r\n submitBarLabel: \"CS_COMMONS_NEXT\",\r\n },\r\n inputs: [\r\n {\r\n label: \"CORE_COMMON_NAME\",\r\n type: \"text\",\r\n name: \"name\",\r\n error: \"CORE_COMMON_NAME_VALIDMSG\",\r\n validation: {\r\n required: true,\r\n minLength: 1,\r\n pattern: /^[^{0-9}^\\$\\\"<>?\\\\\\\\~!@#$%^()+={}\\[\\]*,/_:;“”‘’]{1,50}$/i\r\n },\r\n },\r\n ],\r\n },\r\n];\r\n","import React from \"react\";\r\nimport { CardText, FormStep } from \"@egovernments/digit-ui-react-components\";\r\nimport { Link } from \"react-router-dom\";\r\n\r\nconst SelectMobileNumber = ({ t, onSelect, showRegisterLink, mobileNumber, onMobileChange, config, canSubmit }) => {\r\n return (\r\n <FormStep\r\n isDisabled={!(mobileNumber.length === 10 && canSubmit)}\r\n onSelect={onSelect}\r\n config={config}\r\n t={t}\r\n componentInFront=\"+91\"\r\n onChange={onMobileChange}\r\n value={mobileNumber}\r\n ></FormStep>\r\n );\r\n};\r\n\r\nexport default SelectMobileNumber;\r\n","import React, { useEffect, useRef } from \"react\";\r\n\r\nfunction useInterval(callback, delay) {\r\n const savedCallback = useRef();\r\n useEffect(() => {\r\n savedCallback.current = callback;\r\n }, [callback]);\r\n\r\n useEffect(() => {\r\n function tick() {\r\n savedCallback.current();\r\n }\r\n if (delay !== null) {\r\n const timer = setInterval(tick, delay);\r\n return () => clearInterval(timer);\r\n }\r\n }, [delay]);\r\n}\r\n\r\nexport default useInterval;\r\n","import React, { useState, Fragment } from \"react\";\r\nimport { ButtonSelector, CardText, FormStep, LinkButton, OTPInput, CardLabelError } from \"@egovernments/digit-ui-react-components\";\r\nimport useInterval from \"../../../hooks/useInterval\";\r\n\r\nconst SelectOtp = ({ config, otp, onOtpChange, onResend, onSelect, t, error, userType = \"citizen\", canSubmit }) => {\r\n const [timeLeft, setTimeLeft] = useState(30);\r\n\r\n useInterval(\r\n () => {\r\n setTimeLeft(timeLeft - 1);\r\n },\r\n timeLeft > 0 ? 1000 : null\r\n );\r\n\r\n const handleResendOtp = () => {\r\n onResend();\r\n setTimeLeft(2);\r\n };\r\n\r\n if (userType === \"employee\") {\r\n return (\r\n <Fragment>\r\n <OTPInput length={6} onChange={onOtpChange} value={otp} />\r\n {timeLeft > 0 ? (\r\n <CardText>{`${t(\"CS_RESEND_ANOTHER_OTP\")} ${timeLeft} ${t(\"CS_RESEND_SECONDS\")}`}</CardText>\r\n ) : (\r\n <p className=\"card-text-button\" onClick={handleResendOtp}>\r\n {t(\"CS_RESEND_OTP\")}\r\n </p>\r\n )}\r\n {!error && <CardLabelError>{t(\"CS_INVALID_OTP\")}</CardLabelError>}\r\n </Fragment>\r\n );\r\n }\r\n\r\n return (\r\n <FormStep onSelect={onSelect} config={config} t={t} isDisabled={!(otp?.length === 6 && canSubmit)}>\r\n <OTPInput length={6} onChange={onOtpChange} value={otp} />\r\n {timeLeft > 0 ? (\r\n <CardText>{`${t(\"CS_RESEND_ANOTHER_OTP\")} ${timeLeft} ${t(\"CS_RESEND_SECONDS\")}`}</CardText>\r\n ) : (\r\n <p className=\"card-text-button\" onClick={handleResendOtp}>\r\n {t(\"CS_RESEND_OTP\")}\r\n </p>\r\n )}\r\n {!error && <CardLabelError>{t(\"CS_INVALID_OTP\")}</CardLabelError>}\r\n </FormStep>\r\n );\r\n};\r\n\r\nexport default SelectOtp;\r\n","import React from \"react\";\r\nimport { FormStep } from \"@egovernments/digit-ui-react-components\";\r\n\r\nconst SelectName = ({ config, onSelect, t, isDisabled }) => {\r\n return <FormStep config={config} onSelect={onSelect} t={t} isDisabled={isDisabled}></FormStep>;\r\n};\r\n\r\nexport default SelectName;\r\n","import React, { useEffect, useMemo, useState } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { AppContainer, BackButton, Toast } from \"@egovernments/digit-ui-react-components\";\r\nimport { Route, Switch, useHistory, useRouteMatch, useLocation } from \"react-router-dom\";\r\nimport { loginSteps } from \"./config\";\r\nimport SelectMobileNumber from \"./SelectMobileNumber\";\r\nimport SelectOtp from \"./SelectOtp\";\r\nimport SelectName from \"./SelectName\";\r\n\r\nconst TYPE_REGISTER = { type: \"register\" };\r\nconst TYPE_LOGIN = { type: \"login\" };\r\nconst DEFAULT_USER = \"digit-user\";\r\nconst DEFAULT_REDIRECT_URL = `/${window?.contextPath}/citizen`;\r\n\r\n/* set citizen details to enable backward compatiable */\r\nconst setCitizenDetail = (userObject, token, tenantId) => {\r\n let locale = JSON.parse(sessionStorage.getItem(\"Digit.initData\"))?.value?.selectedLanguage;\r\n localStorage.setItem(\"Citizen.tenant-id\", tenantId);\r\n localStorage.setItem(\"tenant-id\", tenantId);\r\n localStorage.setItem(\"citizen.userRequestObject\", JSON.stringify(userObject));\r\n localStorage.setItem(\"locale\", locale);\r\n localStorage.setItem(\"Citizen.locale\", locale);\r\n localStorage.setItem(\"token\", token);\r\n localStorage.setItem(\"Citizen.token\", token);\r\n localStorage.setItem(\"user-info\", JSON.stringify(userObject));\r\n localStorage.setItem(\"Citizen.user-info\", JSON.stringify(userObject));\r\n};\r\n\r\nconst getFromLocation = (state, searchParams) => {\r\n return state?.from || searchParams?.from || DEFAULT_REDIRECT_URL;\r\n};\r\n\r\nconst Login = ({ stateCode, isUserRegistered = true }) => {\r\n const { t } = useTranslation();\r\n const location = useLocation();\r\n const { path, url } = useRouteMatch();\r\n const history = useHistory();\r\n const [user, setUser] = useState(null);\r\n const [error, setError] = useState(null);\r\n const [isOtpValid, setIsOtpValid] = useState(true);\r\n const [tokens, setTokens] = useState(null);\r\n const [params, setParmas] = useState(isUserRegistered ? {} : location?.state?.data);\r\n const [errorTO, setErrorTO] = useState(null);\r\n const searchParams = Digit.Hooks.useQueryParams();\r\n const [canSubmitName, setCanSubmitName] = useState(false);\r\n const [canSubmitOtp, setCanSubmitOtp] = useState(true);\r\n const [canSubmitNo, setCanSubmitNo] = useState(true);\r\n\r\n useEffect(() => {\r\n let errorTimeout;\r\n if (error) {\r\n if (errorTO) {\r\n clearTimeout(errorTO);\r\n setErrorTO(null);\r\n }\r\n errorTimeout = setTimeout(() => {\r\n setError(\"\");\r\n }, 5000);\r\n setErrorTO(errorTimeout);\r\n }\r\n return () => {\r\n errorTimeout && clearTimeout(errorTimeout);\r\n };\r\n }, [error]);\r\n\r\n useEffect(() => {\r\n if (!user) {\r\n return;\r\n }\r\n Digit.SessionStorage.set(\"citizen.userRequestObject\", user);\r\n Digit.UserService.setUser(user);\r\n setCitizenDetail(user?.info, user?.access_token, stateCode);\r\n const redirectPath = location.state?.from || DEFAULT_REDIRECT_URL;\r\n if (!Digit.ULBService.getCitizenCurrentTenant(true)) {\r\n history.replace(`/${window?.contextPath}/citizen/select-location`, {\r\n redirectBackTo: redirectPath,\r\n });\r\n } else {\r\n history.replace(redirectPath);\r\n }\r\n }, [user]);\r\n\r\n const stepItems = useMemo(() =>\r\n loginSteps.map(\r\n (step) => {\r\n const texts = {};\r\n for (const key in step.texts) {\r\n texts[key] = t(step.texts[key]);\r\n }\r\n return { ...step, texts };\r\n },\r\n [loginSteps]\r\n )\r\n );\r\n\r\n const getUserType = () => Digit.UserService.getType();\r\n\r\n const handleOtpChange = (otp) => {\r\n setParmas({ ...params, otp });\r\n };\r\n\r\n const handleMobileChange = (event) => {\r\n const { value } = event.target;\r\n setParmas({ ...params, mobileNumber: value });\r\n };\r\n\r\n const selectMobileNumber = async (mobileNumber) => {\r\n setCanSubmitNo(false);\r\n setParmas({ ...params, ...mobileNumber });\r\n const data = {\r\n ...mobileNumber,\r\n tenantId: stateCode,\r\n userType: getUserType(),\r\n };\r\n if (isUserRegistered) {\r\n const [res, err] = await sendOtp({ otp: { ...data, ...TYPE_LOGIN } });\r\n if (!err) {\r\n setCanSubmitNo(true);\r\n history.replace(`${path}/otp`, { from: getFromLocation(location.state, searchParams), role: location.state?.role });\r\n return;\r\n } else {\r\n setCanSubmitNo(true);\r\n if (!(location.state && location.state.role === \"FSM_DSO\")) {\r\n history.push(`/${window?.contextPath}/citizen/register/name`, { from: getFromLocation(location.state, searchParams), data: data });\r\n }\r\n }\r\n if (location.state?.role) {\r\n setCanSubmitNo(true);\r\n setError(location.state?.role === \"FSM_DSO\" ? t(\"ES_ERROR_DSO_LOGIN\") : \"User not registered.\");\r\n }\r\n } else {\r\n const [res, err] = await sendOtp({ otp: { ...data, ...TYPE_REGISTER } });\r\n if (!err) {\r\n setCanSubmitNo(true);\r\n history.replace(`${path}/otp`, { from: getFromLocation(location.state, searchParams) });\r\n return;\r\n }\r\n setCanSubmitNo(true);\r\n }\r\n };\r\n\r\n const selectName = async (name) => {\r\n const data = {\r\n ...params,\r\n tenantId: stateCode,\r\n userType: getUserType(),\r\n ...name,\r\n };\r\n setParmas({ ...params, ...name });\r\n setCanSubmitName(true);\r\n const [res, err] = await sendOtp({ otp: { ...data, ...TYPE_REGISTER } });\r\n if (res) {\r\n setCanSubmitName(false);\r\n history.replace(`${path}/otp`, { from: getFromLocation(location.state, searchParams) });\r\n } else {\r\n setCanSubmitName(false);\r\n }\r\n };\r\n\r\n const selectOtp = async () => {\r\n try {\r\n setIsOtpValid(true);\r\n setCanSubmitOtp(false);\r\n const { mobileNumber, otp, name } = params;\r\n if (isUserRegistered) {\r\n const requestData = {\r\n username: mobileNumber,\r\n password: otp,\r\n tenantId: stateCode,\r\n userType: getUserType(),\r\n };\r\n const { ResponseInfo, UserRequest: info, ...tokens } = await Digit.UserService.authenticate(requestData);\r\n\r\n if (location.state?.role) {\r\n const roleInfo = info.roles.find((userRole) => userRole.code === location.state.role);\r\n if (!roleInfo || !roleInfo.code) {\r\n setError(t(\"ES_ERROR_USER_NOT_PERMITTED\"));\r\n setTimeout(() => history.replace(DEFAULT_REDIRECT_URL), 5000);\r\n return;\r\n }\r\n }\r\n if (window?.globalConfigs?.getConfig(\"ENABLE_SINGLEINSTANCE\")) {\r\n info.tenantId = Digit.ULBService.getStateId();\r\n }\r\n\r\n setUser({ info, ...tokens });\r\n } else if (!isUserRegistered) {\r\n const requestData = {\r\n name,\r\n username: mobileNumber,\r\n otpReference: otp,\r\n tenantId: stateCode,\r\n };\r\n\r\n const { ResponseInfo, UserRequest: info, ...tokens } = await Digit.UserService.registerUser(requestData, stateCode);\r\n\r\n if (window?.globalConfigs?.getConfig(\"ENABLE_SINGLEINSTANCE\")) {\r\n info.tenantId = Digit.ULBService.getStateId();\r\n }\r\n\r\n setUser({ info, ...tokens });\r\n }\r\n } catch (err) {\r\n setCanSubmitOtp(true);\r\n setIsOtpValid(false);\r\n }\r\n };\r\n\r\n const resendOtp = async () => {\r\n const { mobileNumber } = params;\r\n const data = {\r\n mobileNumber,\r\n tenantId: stateCode,\r\n userType: getUserType(),\r\n };\r\n if (!isUserRegistered) {\r\n const [res, err] = await sendOtp({ otp: { ...data, ...TYPE_REGISTER } });\r\n } else if (isUserRegistered) {\r\n const [res, err] = await sendOtp({ otp: { ...data, ...TYPE_LOGIN } });\r\n }\r\n };\r\n\r\n const sendOtp = async (data) => {\r\n try {\r\n const res = await Digit.UserService.sendOtp(data, stateCode);\r\n return [res, null];\r\n } catch (err) {\r\n return [null, err];\r\n }\r\n };\r\n\r\n return (\r\n <div className=\"citizen-form-wrapper\">\r\n <Switch>\r\n <AppContainer>\r\n <BackButton />\r\n <Route path={`${path}`} exact>\r\n <SelectMobileNumber\r\n onSelect={selectMobileNumber}\r\n config={stepItems[0]}\r\n mobileNumber={params.mobileNumber || \"\"}\r\n onMobileChange={handleMobileChange}\r\n canSubmit={canSubmitNo}\r\n showRegisterLink={isUserRegistered && !location.state?.role}\r\n t={t}\r\n />\r\n </Route>\r\n <Route path={`${path}/otp`}>\r\n <SelectOtp\r\n config={{ ...stepItems[1], texts: { ...stepItems[1].texts, cardText: `${stepItems[1].texts.cardText} ${params.mobileNumber || \"\"}` } }}\r\n onOtpChange={handleOtpChange}\r\n onResend={resendOtp}\r\n onSelect={selectOtp}\r\n otp={params.otp}\r\n error={isOtpValid}\r\n canSubmit={canSubmitOtp}\r\n t={t}\r\n />\r\n </Route>\r\n <Route path={`${path}/name`}>\r\n <SelectName config={stepItems[2]} onSelect={selectName} t={t} isDisabled={canSubmitName} />\r\n </Route>\r\n {error && <Toast error={true} label={error} onClose={() => setError(null)} />}\r\n </AppContainer>\r\n </Switch>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Login;\r\n","export const loginConfig = [\r\n {\r\n texts: {\r\n header: \"CORE_COMMON_LOGIN\",\r\n submitButtonLabel: \"CORE_COMMON_CONTINUE\",\r\n secondaryButtonLabel: \"CORE_COMMON_FORGOT_PASSWORD\",\r\n },\r\n inputs: [\r\n {\r\n label: \"CORE_LOGIN_USERNAME\",\r\n type: \"text\",\r\n name: \"username\",\r\n error: \"ERR_HRMS_INVALID_USER_ID\",\r\n },\r\n {\r\n label: \"CORE_LOGIN_PASSWORD\",\r\n type: \"password\",\r\n name: \"password\",\r\n error: \"ERR_HRMS_WRONG_PASSWORD\",\r\n },\r\n {\r\n label: \"CORE_COMMON_CITY\",\r\n type: \"custom\",\r\n name: \"city\",\r\n error: \"ERR_HRMS_INVALID_CITY\",\r\n },\r\n ],\r\n },\r\n];\r\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\";\r\n\r\nconst Background = ({ children }) => {\r\n return <div className=\"banner banner-container\">{children}</div>;\r\n};\r\n\r\nexport default Background;\r\n","import React from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { Loader } from \"@egovernments/digit-ui-react-components\"\r\n\r\nconst Header = () => {\r\n const { data: storeData, isLoading } = Digit.Hooks.useStore.getInitData();\r\n const { stateInfo } = storeData || {};\r\n const { t } = useTranslation()\r\n\r\n if (isLoading) return <Loader/>;\r\n\r\n return (\r\n <div className=\"bannerHeader\">\r\n <img className=\"bannerLogo\" src={stateInfo?.logoUrl} />\r\n <p>{t(`TENANT_TENANTS_${stateInfo?.code.toUpperCase()}`)}</p>\r\n </div>\r\n );\r\n}\r\n\r\nexport default Header;","import { BackButton, Dropdown, FormComposer, Loader, Toast } from \"@egovernments/digit-ui-react-components\";\r\nimport PropTypes from \"prop-types\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport Background from \"../../../components/Background\";\r\nimport Header from \"../../../components/Header\";\r\n\r\n/* set employee details to enable backward compatiable */\r\nconst setEmployeeDetail = (userObject, token) => {\r\n let locale = JSON.parse(sessionStorage.getItem(\"Digit.locale\"))?.value || \"en_IN\";\r\n localStorage.setItem(\"Employee.tenant-id\", userObject?.tenantId);\r\n localStorage.setItem(\"tenant-id\", userObject?.tenantId);\r\n localStorage.setItem(\"citizen.userRequestObject\", JSON.stringify(userObject));\r\n localStorage.setItem(\"locale\", locale);\r\n localStorage.setItem(\"Employee.locale\", locale);\r\n localStorage.setItem(\"token\", token);\r\n localStorage.setItem(\"Employee.token\", token);\r\n localStorage.setItem(\"user-info\", JSON.stringify(userObject));\r\n localStorage.setItem(\"Employee.user-info\", JSON.stringify(userObject));\r\n};\r\n\r\nconst Login = ({ config: propsConfig, t, isDisabled }) => {\r\n const { data: cities, isLoading } = Digit.Hooks.useTenants();\r\n const { data: storeData, isLoading: isStoreLoading } = Digit.Hooks.useStore.getInitData();\r\n const { stateInfo } = storeData || {};\r\n const [user, setUser] = useState(null);\r\n const [showToast, setShowToast] = useState(null);\r\n const [disable, setDisable] = useState(false);\r\n\r\n const history = useHistory();\r\n // const getUserType = () => \"EMPLOYEE\" || Digit.UserService.getType();\r\n\r\n useEffect(() => {\r\n if (!user) {\r\n return;\r\n }\r\n Digit.SessionStorage.set(\"citizen.userRequestObject\", user);\r\n const filteredRoles = user?.info?.roles?.filter((role) => role.tenantId === Digit.SessionStorage.get(\"Employee.tenantId\"));\r\n if (user?.info?.roles?.length > 0) user.info.roles = filteredRoles;\r\n Digit.UserService.setUser(user);\r\n setEmployeeDetail(user?.info, user?.access_token);\r\n let redirectPath = `/${window?.contextPath}/employee`;\r\n\r\n /* logic to redirect back to same screen where we left off */\r\n if (window?.location?.href?.includes(\"from=\")) {\r\n redirectPath = decodeURIComponent(window?.location?.href?.split(\"from=\")?.[1]) || `/${window?.contextPath}/employee`;\r\n }\r\n\r\n /* RAIN-6489 Logic to navigate to National DSS home incase user has only one role [NATADMIN]*/\r\n if (user?.info?.roles && user?.info?.roles?.every((e) => e.code === \"NATADMIN\")) {\r\n redirectPath = `/${window?.contextPath}/employee/dss/landing/NURT_DASHBOARD`;\r\n }\r\n /* RAIN-6489 Logic to navigate to National DSS home incase user has only one role [NATADMIN]*/\r\n if (user?.info?.roles && user?.info?.roles?.every((e) => e.code === \"STADMIN\")) {\r\n redirectPath = `/${window?.contextPath}/employee/dss/landing/home`;\r\n }\r\n\r\n history.replace(redirectPath);\r\n }, [user]);\r\n\r\n const onLogin = async (data) => {\r\n if (!data.city) {\r\n alert(\"Please Select City!\");\r\n return;\r\n }\r\n setDisable(true);\r\n\r\n const requestData = {\r\n ...data,\r\n userType: \"EMPLOYEE\",\r\n };\r\n requestData.tenantId = data.city.code;\r\n delete requestData.city;\r\n try {\r\n const { UserRequest: info, ...tokens } = await Digit.UserService.authenticate(requestData);\r\n Digit.SessionStorage.set(\"Employee.tenantId\", info?.tenantId);\r\n setUser({ info, ...tokens });\r\n } catch (err) {\r\n setShowToast(err?.response?.data?.error_description || \"Invalid login credentials!\");\r\n setTimeout(closeToast, 5000);\r\n }\r\n setDisable(false);\r\n };\r\n\r\n const closeToast = () => {\r\n setShowToast(null);\r\n };\r\n\r\n const onForgotPassword = () => {\r\n history.push(`/${window?.contextPath}/employee/user/forgot-password`);\r\n };\r\n\r\n const [userId, password, city] = propsConfig.inputs;\r\n const config = [\r\n {\r\n body: [\r\n {\r\n label: t(userId.label),\r\n type: userId.type,\r\n populators: {\r\n name: userId.name,\r\n },\r\n isMandatory: true,\r\n },\r\n {\r\n label: t(password.label),\r\n type: password.type,\r\n populators: {\r\n name: password.name,\r\n },\r\n isMandatory: true,\r\n },\r\n {\r\n label: t(city.label),\r\n type: city.type,\r\n populators: {\r\n name: city.name,\r\n customProps: {},\r\n component: (props, customProps) => (\r\n <Dropdown\r\n option={cities}\r\n className=\"login-city-dd\"\r\n optionKey=\"i18nKey\"\r\n select={(d) => {\r\n props.onChange(d);\r\n }}\r\n t={t}\r\n {...customProps}\r\n />\r\n ),\r\n },\r\n isMandatory: true,\r\n },\r\n ],\r\n },\r\n ];\r\n\r\n return isLoading || isStoreLoading ? (\r\n <Loader />\r\n ) : (\r\n <Background>\r\n <div className=\"employeeBackbuttonAlign\">\r\n <BackButton variant=\"white\" style={{ borderBottom: \"none\" }} />\r\n </div>\r\n\r\n <FormComposer\r\n onSubmit={onLogin}\r\n isDisabled={isDisabled || disable}\r\n noBoxShadow\r\n inline\r\n submitInForm\r\n config={config}\r\n label={propsConfig.texts.submitButtonLabel}\r\n secondaryActionLabel={propsConfig.texts.secondaryButtonLabel}\r\n onSecondayActionClick={onForgotPassword}\r\n heading={propsConfig.texts.header}\r\n headingStyle={{ textAlign: \"center\" }}\r\n cardStyle={{ margin: \"auto\", minWidth: \"408px\" }}\r\n className=\"loginFormStyleEmployee\"\r\n buttonStyle={{ maxWidth: \"100%\", width: \"100%\" }}\r\n >\r\n <Header />\r\n </FormComposer>\r\n {showToast && <Toast error={true} label={t(showToast)} onClose={closeToast} />}\r\n <div className=\"employee-login-home-footer\" style={{ backgroundColor: \"unset\" }}>\r\n <img\r\n alt=\"Powered by DIGIT\"\r\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER_BW\")}\r\n style={{ cursor: \"pointer\" }}\r\n onClick={() => {\r\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\r\n }}\r\n />{\" \"}\r\n </div>\r\n </Background>\r\n );\r\n};\r\n\r\nLogin.propTypes = {\r\n loginParams: PropTypes.any,\r\n};\r\n\r\nLogin.defaultProps = {\r\n loginParams: null,\r\n};\r\n\r\nexport default Login;\r\n","import React, { useMemo } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { AppContainer } from \"@egovernments/digit-ui-react-components\";\r\nimport { Route, Switch, useRouteMatch } from \"react-router-dom\";\r\nimport { loginConfig } from \"./config\";\r\nimport LoginComponent from \"./login\";\r\n\r\nconst EmployeeLogin = () => {\r\n const { t } = useTranslation();\r\n const { path } = useRouteMatch();\r\n\r\n const loginParams = useMemo(() =>\r\n loginConfig.map(\r\n (step) => {\r\n const texts = {};\r\n for (const key in step.texts) {\r\n texts[key] = t(step.texts[key]);\r\n }\r\n return { ...step, texts };\r\n },\r\n [loginConfig]\r\n )\r\n );\r\n\r\n return (\r\n <Switch>\r\n <Route path={`${path}`} exact>\r\n <LoginComponent config={loginParams[0]} t={t} />\r\n </Route>\r\n </Switch>\r\n );\r\n};\r\n\r\nexport default EmployeeLogin;\r\n","export const config = [\r\n {\r\n texts: {\r\n header: \"CORE_COMMON_RESET_PASSWORD_LABEL\",\r\n submitButtonLabel: \"CORE_COMMON_CHANGE_PASSWORD\",\r\n },\r\n inputs: [\r\n {\r\n label: \"CORE_LOGIN_USERNAME\",\r\n type: \"text\",\r\n name: \"userName\",\r\n error: \"ERR_HRMS_INVALID_USERNAME\",\r\n },\r\n {\r\n label: \"CORE_LOGIN_NEW_PASSWORD\",\r\n type: \"password\",\r\n name: \"newPassword\",\r\n error: \"CORE_COMMON_REQUIRED_ERRMSG\",\r\n },\r\n {\r\n label: \"CORE_LOGIN_CONFIRM_NEW_PASSWORD\",\r\n type: \"password\",\r\n name: \"confirmPassword\",\r\n error: \"CORE_COMMON_REQUIRED_ERRMSG\",\r\n },\r\n ],\r\n },\r\n];\r\n","import {\r\n BackButton, CardSubHeader, CardText, FormComposer, Toast\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport PropTypes from \"prop-types\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport Background from \"../../../components/Background\";\r\nimport Header from \"../../../components/Header\";\r\nimport SelectOtp from \"../../citizen/Login/SelectOtp\";\r\n\r\nconst ChangePasswordComponent = ({ config: propsConfig, t }) => {\r\n const [user, setUser] = useState(null);\r\n const { mobile_number: mobileNumber, tenantId } = Digit.Hooks.useQueryParams();\r\n const history = useHistory();\r\n const [otp, setOtp] = useState(\"\");\r\n const [isOtpValid, setIsOtpValid] = useState(true);\r\n const [showToast, setShowToast] = useState(null);\r\n const getUserType = () => Digit.UserService.getType();\r\n useEffect(() => {\r\n if (!user) {\r\n Digit.UserService.setType(\"employee\");\r\n return;\r\n }\r\n Digit.UserService.setUser(user);\r\n const redirectPath = location.state?.from || `/${window?.contextPath}/employee`;\r\n history.replace(redirectPath);\r\n }, [user]);\r\n\r\n const closeToast = () => {\r\n setShowToast(null);\r\n };\r\n\r\n const onResendOTP = async () => {\r\n const requestData = {\r\n otp: {\r\n mobileNumber,\r\n userType: getUserType().toUpperCase(),\r\n type: \"passwordreset\",\r\n tenantId,\r\n },\r\n };\r\n\r\n try {\r\n await Digit.UserService.sendOtp(requestData, tenantId);\r\n setShowToast(t(\"ES_OTP_RESEND\"));\r\n } catch (err) {\r\n setShowToast(err?.response?.data?.error_description || t(\"ES_INVALID_LOGIN_CREDENTIALS\"));\r\n }\r\n setTimeout(closeToast, 5000);\r\n };\r\n\r\n const onChangePassword = async (data) => {\r\n try {\r\n if (data.newPassword !== data.confirmPassword) {\r\n return setShowToast(t(\"ERR_PASSWORD_DO_NOT_MATCH\"));\r\n }\r\n const requestData = {\r\n ...data,\r\n otpReference: otp,\r\n tenantId,\r\n type: getUserType().toUpperCase(),\r\n };\r\n\r\n const response = await Digit.UserService.changePassword(requestData, tenantId);\r\n navigateToLogin();\r\n } catch (err) {\r\n setShowToast(err?.response?.data?.error?.fields?.[0]?.message || t(\"ES_SOMETHING_WRONG\"));\r\n setTimeout(closeToast, 5000);\r\n }\r\n };\r\n\r\n const navigateToLogin = () => {\r\n history.replace(`/${window?.contextPath}/employee/user/login`);\r\n };\r\n\r\n const [username, password, confirmPassword] = propsConfig.inputs;\r\n const config = [\r\n {\r\n body: [\r\n {\r\n label: t(username.label),\r\n type: username.type,\r\n populators: {\r\n name: username.name,\r\n },\r\n isMandatory: true,\r\n },\r\n {\r\n label: t(password.label),\r\n type: password.type,\r\n populators: {\r\n name: password.name,\r\n },\r\n isMandatory: true,\r\n },\r\n {\r\n label: t(confirmPassword.label),\r\n type: confirmPassword.type,\r\n populators: {\r\n name: confirmPassword.name,\r\n },\r\n isMandatory: true,\r\n },\r\n ],\r\n },\r\n ];\r\n\r\n return (\r\n <Background>\r\n <div className=\"employeeBackbuttonAlign\">\r\n <BackButton variant=\"white\" style={{ borderBottom: \"none\" }} />\r\n </div>\r\n <FormComposer\r\n onSubmit={onChangePassword}\r\n noBoxShadow\r\n inline\r\n submitInForm\r\n config={config}\r\n label={propsConfig.texts.submitButtonLabel}\r\n cardStyle={{ maxWidth: \"408px\", margin: \"auto\" }}\r\n className=\"employeeChangePassword\"\r\n >\r\n <Header />\r\n <CardSubHeader style={{ textAlign: \"center\" }}> {propsConfig.texts.header} </CardSubHeader>\r\n <CardText>\r\n {`${t(`CS_LOGIN_OTP_TEXT`)} `}\r\n <b>\r\n {\" \"}\r\n {`${t(`+ 91 - `)}`} {mobileNumber}\r\n </b>\r\n </CardText>\r\n <SelectOtp t={t} userType=\"employee\" otp={otp} onOtpChange={setOtp} error={isOtpValid} onResend={onResendOTP} />\r\n {/* <div>\r\n <CardLabel style={{ marginBottom: \"8px\" }}>{t(\"CORE_OTP_SENT_MESSAGE\")}</CardLabel>\r\n <CardLabelDesc style={{ marginBottom: \"0px\" }}> {mobileNumber} </CardLabelDesc>\r\n <CardLabelDesc style={{ marginBottom: \"8px\" }}> {t(\"CORE_EMPLOYEE_OTP_CHECK_MESSAGE\")}</CardLabelDesc>\r\n </div>\r\n <CardLabel style={{ marginBottom: \"8px\" }}>{t(\"CORE_OTP_OTP\")} *</CardLabel>\r\n <TextInput className=\"field\" name={otpReference} isRequired={true} onChange={updateOtp} type={\"text\"} style={{ marginBottom: \"10px\" }} />\r\n <div className=\"flex-right\">\r\n <div className=\"primary-label-btn\" onClick={onResendOTP}>\r\n {t(\"CORE_OTP_RESEND\")}\r\n </div>\r\n </div> */}\r\n </FormComposer>\r\n {showToast && <Toast error={true} label={t(showToast)} onClose={closeToast} />}\r\n <div className=\"EmployeeLoginFooter\">\r\n <img\r\n alt=\"Powered by DIGIT\"\r\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER_BW\")}\r\n style={{ cursor: \"pointer\" }}\r\n onClick={() => {\r\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\r\n }}\r\n />{\" \"}\r\n </div>\r\n </Background>\r\n );\r\n};\r\n\r\nChangePasswordComponent.propTypes = {\r\n loginParams: PropTypes.any,\r\n};\r\n\r\nChangePasswordComponent.defaultProps = {\r\n loginParams: null,\r\n};\r\n\r\nexport default ChangePasswordComponent;\r\n","import React, { useMemo } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { AppContainer } from \"@egovernments/digit-ui-react-components\";\r\nimport { Route, Switch, useRouteMatch } from \"react-router-dom\";\r\nimport { config } from \"./config\";\r\nimport ChangePasswordComponent from \"./changePassword\";\r\n\r\nconst EmployeeChangePassword = () => {\r\n const { t } = useTranslation();\r\n const { path } = useRouteMatch();\r\n\r\n const params = useMemo(() =>\r\n config.map(\r\n (step) => {\r\n const texts = {};\r\n for (const key in step.texts) {\r\n texts[key] = t(step.texts[key]);\r\n }\r\n return { ...step, texts };\r\n },\r\n [config]\r\n )\r\n );\r\n\r\n return (\r\n <Switch>\r\n <Route path={`${path}`} exact>\r\n <ChangePasswordComponent config={params[0]} t={t} />\r\n </Route>\r\n </Switch>\r\n );\r\n};\r\n\r\nexport default EmployeeChangePassword;\r\n","export const loginConfig = [\r\n {\r\n texts: {\r\n header: \"CORE_COMMON_FORGOT_PASSWORD_LABEL\",\r\n description: \"ES_FORGOT_PASSWORD_DESC\",\r\n submitButtonLabel: \"CORE_COMMON_CONTINUE\",\r\n },\r\n inputs: [\r\n {\r\n label: \"CORE_COMMON_MOBILE_NUMBER\",\r\n type: \"text\",\r\n name: \"mobileNumber\",\r\n error: \"ERR_HRMS_INVALID_MOBILE_NUMBER\",\r\n },\r\n {\r\n label: \"CORE_COMMON_CITY\",\r\n type: \"custom\",\r\n name: \"city\",\r\n error: \"ERR_HRMS_INVALID_CITY\",\r\n },\r\n ],\r\n },\r\n];\r\n","import { BackButton, Dropdown, FormComposer, Loader, Toast } from \"@egovernments/digit-ui-react-components\";\r\nimport PropTypes from \"prop-types\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport Background from \"../../../components/Background\";\r\nimport Header from \"../../../components/Header\";\r\n\r\nconst ForgotPassword = ({ config: propsConfig, t }) => {\r\n const { data: cities, isLoading } = Digit.Hooks.useTenants();\r\n const [user, setUser] = useState(null);\r\n const history = useHistory();\r\n const [showToast, setShowToast] = useState(null);\r\n const getUserType = () => Digit.UserService.getType();\r\n\r\n useEffect(() => {\r\n if (!user) {\r\n Digit.UserService.setType(\"employee\");\r\n return;\r\n }\r\n Digit.UserService.setUser(user);\r\n const redirectPath = location.state?.from || `/${window?.contextPath}/employee`;\r\n history.replace(redirectPath);\r\n }, [user]);\r\n\r\n const closeToast = () => {\r\n setShowToast(null);\r\n };\r\n\r\n const onForgotPassword = async (data) => {\r\n if (!data.city) {\r\n alert(\"Please Select City!\");\r\n return;\r\n }\r\n const requestData = {\r\n otp: {\r\n mobileNumber: data.mobileNumber,\r\n userType: getUserType().toUpperCase(),\r\n type: \"passwordreset\",\r\n tenantId: data.city.code,\r\n },\r\n };\r\n try {\r\n await Digit.UserService.sendOtp(requestData, data.city.code);\r\n history.push(`/${window?.contextPath}/employee/user/change-password?mobile_number=${data.mobileNumber}&tenantId=${data.city.code}`);\r\n } catch (err) {\r\n setShowToast(err?.response?.data?.error?.fields?.[0]?.message || \"Invalid login credentials!\");\r\n setTimeout(closeToast, 5000);\r\n }\r\n };\r\n\r\n const navigateToLogin = () => {\r\n history.replace(`/${window?.contextPath}/employee/login`);\r\n };\r\n\r\n const [userId, city] = propsConfig.inputs;\r\n const config = [\r\n {\r\n body: [\r\n {\r\n label: t(userId.label),\r\n type: userId.type,\r\n populators: {\r\n name: userId.name,\r\n componentInFront: \"+91\",\r\n },\r\n isMandatory: true,\r\n },\r\n {\r\n label: t(city.label),\r\n type: city.type,\r\n populators: {\r\n name: city.name,\r\n customProps: {},\r\n component: (props, customProps) => (\r\n <Dropdown\r\n option={cities}\r\n optionKey=\"name\"\r\n id={city.name}\r\n className=\"login-city-dd\"\r\n select={(d) => {\r\n props.onChange(d);\r\n }}\r\n {...customProps}\r\n />\r\n ),\r\n },\r\n isMandatory: true,\r\n },\r\n ],\r\n },\r\n ];\r\n\r\n if (isLoading) {\r\n return <Loader />;\r\n }\r\n\r\n return (\r\n <Background>\r\n <div className=\"employeeBackbuttonAlign\">\r\n <BackButton variant=\"white\" style={{ borderBottom: \"none\" }} />\r\n </div>\r\n <FormComposer\r\n onSubmit={onForgotPassword}\r\n noBoxShadow\r\n inline\r\n submitInForm\r\n config={config}\r\n label={propsConfig.texts.submitButtonLabel}\r\n secondaryActionLabel={propsConfig.texts.secondaryButtonLabel}\r\n onSecondayActionClick={navigateToLogin}\r\n heading={propsConfig.texts.header}\r\n description={propsConfig.texts.description}\r\n headingStyle={{ textAlign: \"center\" }}\r\n cardStyle={{ maxWidth: \"408px\", margin: \"auto\" }}\r\n className=\"employeeForgotPassword\"\r\n >\r\n <Header />\r\n </FormComposer>\r\n {showToast && <Toast error={true} label={t(showToast)} onClose={closeToast} />}\r\n <div className=\"EmployeeLoginFooter\">\r\n <img\r\n alt=\"Powered by DIGIT\"\r\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER_BW\")}\r\n style={{ cursor: \"pointer\" }}\r\n onClick={() => {\r\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\r\n }}\r\n />{\" \"}\r\n </div>\r\n </Background>\r\n );\r\n};\r\n\r\nForgotPassword.propTypes = {\r\n loginParams: PropTypes.any,\r\n};\r\n\r\nForgotPassword.defaultProps = {\r\n loginParams: null,\r\n};\r\n\r\nexport default ForgotPassword;\r\n","import React, { useMemo } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { AppContainer } from \"@egovernments/digit-ui-react-components\";\r\nimport { Route, Switch, useRouteMatch } from \"react-router-dom\";\r\nimport { loginConfig } from \"./config\";\r\nimport ForgotPasswordComponent from \"./forgotPassword\";\r\n\r\nconst EmployeeForgotPassword = () => {\r\n const { t } = useTranslation();\r\n const { path } = useRouteMatch();\r\n\r\n const params = useMemo(() =>\r\n loginConfig.map(\r\n (step) => {\r\n const texts = {};\r\n for (const key in step.texts) {\r\n texts[key] = t(step.texts[key]);\r\n }\r\n return { ...step, texts };\r\n },\r\n [loginConfig]\r\n )\r\n );\r\n\r\n return (\r\n <Switch>\r\n <Route path={`${path}`} exact>\r\n <ForgotPasswordComponent config={params[0]} t={t} />\r\n </Route>\r\n </Switch>\r\n );\r\n};\r\n\r\nexport default EmployeeForgotPassword;\r\n","import { Card, CustomButton, SubmitBar } from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useState } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport Background from \"../../../components/Background\";\r\n\r\nconst LanguageSelection = () => {\r\n const { data: storeData, isLoading } = Digit.Hooks.useStore.getInitData();\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const { languages, stateInfo } = storeData || {};\r\n const selectedLanguage = Digit.StoreData.getCurrentLanguage();\r\n const [selected, setselected] = useState(selectedLanguage);\r\n const handleChangeLanguage = (language) => {\r\n setselected(language.value);\r\n Digit.LocalizationService.changeLanguage(language.value, stateInfo.code);\r\n };\r\n\r\n const handleSubmit = (event) => {\r\n history.push(`/${window?.contextPath}/employee/user/login`);\r\n };\r\n\r\n if (isLoading) return null;\r\n\r\n return (\r\n <Background>\r\n <Card className=\"bannerCard removeBottomMargin\">\r\n <div className=\"bannerHeader\">\r\n <img className=\"bannerLogo\" src={stateInfo?.logoUrl} alt=\"Digit\" />\r\n\r\n <p>{t(`TENANT_TENANTS_${stateInfo?.code.toUpperCase()}`)}</p>\r\n </div>\r\n <div className=\"language-selector\" style={{ justifyContent: \"space-around\", marginBottom: \"24px\", padding: \"0 5%\" }}>\r\n {languages.map((language, index) => (\r\n <div className=\"language-button-container\" key={index}>\r\n <CustomButton\r\n selected={language.value === selected}\r\n text={language.label}\r\n onClick={() => handleChangeLanguage(language)}\r\n ></CustomButton>\r\n </div>\r\n ))}\r\n </div>\r\n <SubmitBar style={{ width: \"100%\" }} label={t(`CORE_COMMON_CONTINUE`)} onSubmit={handleSubmit} />\r\n </Card>\r\n <div className=\"EmployeeLoginFooter\">\r\n <img\r\n alt=\"Powered by DIGIT\"\r\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER_BW\")}\r\n style={{ cursor: \"pointer\" }}\r\n onClick={() => {\r\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\r\n }}\r\n />{\" \"}\r\n </div>\r\n </Background>\r\n );\r\n};\r\n\r\nexport default LanguageSelection;\r\n","import React, { useContext, useEffect } from \"react\";\r\nimport { Route, Switch, useRouteMatch, Redirect, useLocation } from \"react-router-dom\";\r\n\r\nimport { AppHome } from \"./Home\";\r\nimport Login from \"../pages/citizen/Login\";\r\nimport EmployeeLogin from \"../pages/employee/Login/index\";\r\nimport ChangePassword from \"../pages/employee/ChangePassword/index\";\r\nimport ForgotPassword from \"../pages/employee/ForgotPassword/index\";\r\nimport LanguageSelection from \"../pages/employee/LanguageSelection\";\r\n// import UserProfile from \"./userProfile\";\r\n\r\nconst getTenants = (codes, tenants) => {\r\n return tenants.filter((tenant) => codes?.map?.((item) => item.code).includes(tenant.code));\r\n};\r\n\r\nexport const AppModules = ({ stateCode, userType, modules, appTenants }) => {\r\n const ComponentProvider = Digit.Contexts.ComponentProvider;\r\n const { path } = useRouteMatch();\r\n const location = useLocation();\r\n\r\n const user = Digit.UserService.getUser();\r\n\r\n if (!user || !user?.access_token || !user?.info) {\r\n return <Redirect to={{ pathname: `/${window?.contextPath}/employee/user/login`, state: { from: location.pathname + location.search } }} />;\r\n }\r\n\r\n const appRoutes = modules.map(({ code, tenants }, index) => {\r\n const Module = Digit.ComponentRegistryService.getComponent(`${code}Module`);\r\n return Module ? (\r\n <Route key={index} path={`${path}/${code.toLowerCase()}`}>\r\n <Module stateCode={stateCode} moduleCode={code} userType={userType} tenants={getTenants(tenants, appTenants)} />\r\n </Route>\r\n ) : <Route key={index} path={`${path}/${code.toLowerCase()}`}>\r\n <Redirect to={{ pathname: `/${window?.contextPath}/employee/user/error?type=notfound`, state: { from: location.pathname + location.search } }} />\r\n </Route>;\r\n });\r\n\r\n return (\r\n <div className=\"ground-container\">\r\n <Switch>\r\n {appRoutes}\r\n <Route path={`${path}/login`}>\r\n <Redirect to={{ pathname: `/${window?.contextPath}/employee/user/login`, state: { from: location.pathname + location.search } }} />\r\n </Route>\r\n <Route path={`${path}/forgot-password`}>\r\n <ForgotPassword />\r\n </Route>\r\n <Route path={`${path}/change-password`}>\r\n <ChangePassword />\r\n </Route>\r\n <Route>\r\n <AppHome userType={userType} modules={modules} />\r\n </Route>\r\n {/* <Route path={`${path}/user-profile`}> <UserProfile /></Route> */}\r\n </Switch>\r\n </div>\r\n );\r\n};\r\n","import React from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nconst ErrorConfig = {\r\n error: {\r\n imgUrl: `https://s3.ap-south-1.amazonaws.com/egov-qa-assets/error-image.png`,\r\n infoMessage: \"CORE_SOMETHING_WENT_WRONG\",\r\n buttonInfo: \"ACTION_TEST_HOME\",\r\n },\r\n maintenance: {\r\n imgUrl: `https://s3.ap-south-1.amazonaws.com/egov-qa-assets/maintainence-image.png`,\r\n infoMessage: \"CORE_UNDER_MAINTENANCE\",\r\n buttonInfo: \"ACTION_TEST_HOME\",\r\n },\r\n notfound: {\r\n imgUrl: `https://s3.ap-south-1.amazonaws.com/egov-qa-assets/PageNotFound.png`,\r\n infoMessage: \"CORE_NOT_FOUND\",\r\n buttonInfo: \"ACTION_TEST_HOME\",\r\n },\r\n};\r\n\r\nconst ErrorComponent = (props) => {\r\n const { type = \"error\" } = Digit.Hooks.useQueryParams();\r\n const config = ErrorConfig[type];\r\n const { t } = useTranslation();\r\n\r\n const stateInfo = props.stateInfo;\r\n\r\n return (\r\n <div className=\"error-boundary\">\r\n <div className=\"error-container\">\r\n <img src={config.imgUrl} alt=\"error\" />\r\n <h1>{t(config.infoMessage)}</h1>\r\n <button\r\n onClick={() => {\r\n props.goToHome();\r\n }}\r\n >\r\n {t(config.buttonInfo)}\r\n </button>\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default ErrorComponent;\r\n","import React from \"react\";\r\nimport ErrorComponent from \"./ErrorComponent\";\r\n\r\nconst Redircter = () => {\r\n const path = Digit.UserService.getType() === \"employee\" ? `/${window?.contextPath}/employee/user/error` : `/${window?.contextPath}/citizen/error`;\r\n if (\r\n window.location.href.includes(\"employee/user/error\") ||\r\n window.location.href.includes(\"citizen/error\") ||\r\n process.env.NODE_ENV === \"development\"\r\n ) {\r\n //do nothing\r\n }else{\r\n window.location.href = path;\r\n }\r\n return <span></span>;\r\n};\r\n\r\nclass ErrorBoundary extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = { error: null, errorStack: null, hasError: false };\r\n }\r\n\r\n static getDerivedStateFromError(error) {\r\n // Update state so the next render will show the fallback UI.\r\n return { error: error?.message, hasError: true, errorStack: error?.stack };\r\n }\r\n\r\n componentDidCatch(error, errorInfo) {\r\n // Catch errors in any components below and re-render with error message\r\n this.setState({ error: error?.message, hasError: true, errorStack: error?.stack });\r\n // You can also log error messages to an error reporting service here\r\n }\r\n\r\n render() {\r\n if (this.state.hasError) {\r\n // (\"UI-errorInfo\", this.state?.errorStack);\r\n // (\"UI-component-details\", this.props);\r\n // You can render any custom fallback UI\r\n return (\r\n <div className=\"error-boundary\">\r\n <Redircter />\r\n <ErrorComponent initData={this.props.initData} />\r\n\r\n {/* <summary>Something went wrong</summary>\r\n <details style={{ whiteSpace: \"pre-wrap\" }}>\r\n {this.state?.errorStack && this.state.errorStack.toString().substring(0, 600)}\r\n {this.state?.error}\r\n </details> */}\r\n </div>\r\n );\r\n }\r\n return this.props.children;\r\n }\r\n}\r\n\r\nexport default ErrorBoundary;\r\n","import { Dropdown } from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useState, useEffect } from \"react\";\r\nimport { CustomButton, Menu } from \"@egovernments/digit-ui-react-components\";\r\nimport { useHistory } from \"react-router-dom\";\r\n\r\nconst stringReplaceAll = (str = \"\", searcher = \"\", replaceWith = \"\") => {\r\n if (searcher == \"\") return str;\r\n while (str?.includes(searcher)) {\r\n str = str?.replace(searcher, replaceWith);\r\n }\r\n return str;\r\n};\r\n\r\nconst ChangeCity = (prop) => {\r\n const [dropDownData, setDropDownData] = useState(null);\r\n const [selectCityData, setSelectCityData] = useState([]);\r\n const [selectedCity, setSelectedCity] = useState([]); //selectedCities?.[0]?.value\r\n const history = useHistory();\r\n const isDropdown = prop.dropdown || false;\r\n let selectedCities = [];\r\n\r\n const handleChangeCity = (city) => {\r\n const loggedInData = Digit.SessionStorage.get(\"citizen.userRequestObject\");\r\n const filteredRoles = Digit.SessionStorage.get(\"citizen.userRequestObject\")?.info?.roles?.filter(role => role.tenantId === city.value);\r\n if (filteredRoles?.length > 0) {\r\n loggedInData.info.roles = filteredRoles;\r\n loggedInData.info.tenantId = city?.value;\r\n }\r\n Digit.SessionStorage.set(\"Employee.tenantId\", city?.value);\r\n Digit.UserService.setUser(loggedInData);\r\n setDropDownData(city);\r\n if (window.location.href.includes(`/${window?.contextPath}/employee/`)) {\r\n const redirectPath = location.state?.from || `/${window?.contextPath}/employee`;\r\n history.replace(redirectPath);\r\n }\r\n window.location.reload();\r\n };\r\n\r\n useEffect(() => {\r\n const userloggedValues = Digit.SessionStorage.get(\"citizen.userRequestObject\");\r\n let teantsArray = [], filteredArray = [];\r\n userloggedValues?.info?.roles?.forEach(role => teantsArray.push(role.tenantId));\r\n let unique = teantsArray.filter((item, i, ar) => ar.indexOf(item) === i);\r\n unique?.forEach(uniCode => {\r\n filteredArray.push({\r\n label: prop?.t(`TENANT_TENANTS_${stringReplaceAll(uniCode, \".\", \"_\")?.toUpperCase()}`),\r\n value: uniCode\r\n })\r\n });\r\n selectedCities = filteredArray?.filter(select => select.value == Digit.SessionStorage.get(\"Employee.tenantId\"));\r\n setSelectCityData(filteredArray);\r\n }, [dropDownData]);\r\n\r\n // if (isDropdown) {\r\n return (\r\n <div style={prop?.mobileView ? {color: \"#767676\"} : {}}>\r\n <Dropdown\r\n option={selectCityData}\r\n selected={selectCityData.find((cityValue) => cityValue.value === dropDownData?.value)}\r\n optionKey={\"label\"}\r\n select={handleChangeCity}\r\n freeze={true}\r\n customSelector={<label className=\"cp\">{prop?.t(`TENANT_TENANTS_${stringReplaceAll(Digit.SessionStorage.get(\"Employee.tenantId\"), \".\", \"_\")?.toUpperCase()}`)}</label>}\r\n />\r\n </div>\r\n );\r\n // } else {\r\n // return (\r\n // <React.Fragment>\r\n // <div style={{ marginBottom: \"5px\" }}>City</div>\r\n // <div className=\"language-selector\" style={{display: \"flex\", flexWrap: \"wrap\"}}>\r\n // {selectCityData?.map((city, index) => (\r\n // <div className=\"language-button-container\" key={index}>\r\n // <CustomButton\r\n // selected={city.value === Digit.SessionStorage.get(\"Employee.tenantId\")}\r\n // text={city.label}\r\n // onClick={() => handleChangeCity(city)}\r\n // ></CustomButton>\r\n // </div>\r\n // ))}\r\n // </div>\r\n // </React.Fragment>\r\n // );\r\n // }\r\n};\r\n\r\nexport default ChangeCity;\r\n","import { ActionBar, Button, Dropdown } from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useState } from \"react\";\r\nimport { CustomButton, Menu } from \"@egovernments/digit-ui-react-components\";\r\n\r\nconst ChangeLanguage = (prop) => {\r\n const isDropdown = prop.dropdown || false;\r\n const { data: storeData, isLoading } = Digit.Hooks.useStore.getInitData();\r\n const { languages, stateInfo } = storeData || {};\r\n const selectedLanguage = Digit.StoreData.getCurrentLanguage();\r\n const [selected, setselected] = useState(selectedLanguage);\r\n const handleChangeLanguage = (language) => {\r\n setselected(language.value);\r\n Digit.LocalizationService.changeLanguage(language.value, stateInfo.code);\r\n };\r\n\r\n if (isLoading) return null;\r\n\r\n if (isDropdown) {\r\n return (\r\n <div>\r\n <Dropdown\r\n option={languages}\r\n selected={languages.find((language) => language.value === selectedLanguage)}\r\n optionKey={\"label\"}\r\n select={handleChangeLanguage}\r\n freeze={true}\r\n customSelector={<label className=\"cp\">{languages.find((language) => language.value === selected).label}</label>}\r\n />\r\n </div>\r\n );\r\n } else {\r\n return (\r\n <React.Fragment>\r\n <div style={{ marginBottom: \"5px\" }}>Language</div>\r\n <div className=\"language-selector\">\r\n {languages.map((language, index) => (\r\n <div className=\"language-button-container\" key={index}>\r\n <CustomButton\r\n selected={language.value === selected}\r\n text={language.label}\r\n onClick={() => handleChangeLanguage(language)}\r\n ></CustomButton>\r\n </div>\r\n ))}\r\n </div>\r\n </React.Fragment>\r\n );\r\n }\r\n};\r\n\r\nexport default ChangeLanguage;\r\n","import { Dropdown, Hamburger, TopBar as TopBarComponent } from \"@egovernments/digit-ui-react-components\";\r\nimport React from \"react\";\r\nimport { useHistory, useLocation } from \"react-router-dom\";\r\nimport ChangeCity from \"../ChangeCity\";\r\nimport ChangeLanguage from \"../ChangeLanguage\";\r\n\r\nconst TextToImg = (props) => (\r\n <span className=\"user-img-txt\" onClick={props.toggleMenu} title={props.name}>\r\n {props?.name?.[0]?.toUpperCase()}\r\n </span>\r\n);\r\nconst TopBar = ({\r\n t,\r\n stateInfo,\r\n toggleSidebar,\r\n isSidebarOpen,\r\n handleLogout,\r\n userDetails,\r\n CITIZEN,\r\n cityDetails,\r\n mobileView,\r\n userOptions,\r\n handleUserDropdownSelection,\r\n logoUrl,\r\n showLanguageChange = true,\r\n}) => {\r\n const [profilePic, setProfilePic] = React.useState(null);\r\n\r\n React.useEffect(async () => {\r\n const tenant = Digit.ULBService.getCurrentTenantId();\r\n const uuid = userDetails?.info?.uuid;\r\n if (uuid) {\r\n const usersResponse = await Digit.UserService.userSearch(tenant, { uuid: [uuid] }, {});\r\n if (usersResponse && usersResponse.user && usersResponse.user.length) {\r\n const userDetails = usersResponse.user[0];\r\n const thumbs = userDetails?.photo?.split(\",\");\r\n setProfilePic(thumbs?.at(0));\r\n }\r\n }\r\n }, [profilePic !== null, userDetails?.info?.uuid]);\r\n\r\n const CitizenHomePageTenantId = Digit.ULBService.getCitizenCurrentTenant(true);\r\n\r\n let history = useHistory();\r\n const { pathname } = useLocation();\r\n\r\n const conditionsToDisableNotificationCountTrigger = () => {\r\n if (Digit.UserService?.getUser()?.info?.type === \"EMPLOYEE\") return false;\r\n if (Digit.UserService?.getUser()?.info?.type === \"CITIZEN\") {\r\n if (!CitizenHomePageTenantId) return false;\r\n else return true;\r\n }\r\n return false;\r\n };\r\n\r\n const { data: { unreadCount: unreadNotificationCount } = {}, isSuccess: notificationCountLoaded } = Digit.Hooks.useNotificationCount({\r\n tenantId: CitizenHomePageTenantId,\r\n config: {\r\n enabled: conditionsToDisableNotificationCountTrigger(),\r\n },\r\n });\r\n\r\n const updateSidebar = () => {\r\n if (!Digit.clikOusideFired) {\r\n toggleSidebar(true);\r\n } else {\r\n Digit.clikOusideFired = false;\r\n }\r\n };\r\n\r\n function onNotificationIconClick() {\r\n history.push(`/${window?.contextPath}/citizen/engagement/notifications`);\r\n }\r\n\r\n const urlsToDisableNotificationIcon = (pathname) =>\r\n !!Digit.UserService?.getUser()?.access_token\r\n ? false\r\n : [`/${window?.contextPath}/citizen/select-language`, `/${window?.contextPath}/citizen/select-location`].includes(pathname);\r\n\r\n if (CITIZEN) {\r\n return (\r\n <div>\r\n <TopBarComponent\r\n img={stateInfo?.logoUrlWhite}\r\n isMobile={true}\r\n toggleSidebar={updateSidebar}\r\n logoUrl={stateInfo?.logoUrlWhite}\r\n onLogout={handleLogout}\r\n userDetails={userDetails}\r\n notificationCount={unreadNotificationCount < 99 ? unreadNotificationCount : 99}\r\n notificationCountLoaded={notificationCountLoaded}\r\n cityOfCitizenShownBesideLogo={t(CitizenHomePageTenantId)}\r\n onNotificationIconClick={onNotificationIconClick}\r\n hideNotificationIconOnSomeUrlsWhenNotLoggedIn={urlsToDisableNotificationIcon(pathname)}\r\n changeLanguage={!mobileView ? <ChangeLanguage dropdown={true} /> : null}\r\n />\r\n </div>\r\n );\r\n }\r\n const loggedin = userDetails?.access_token ? true : false;\r\n return (\r\n <div className=\"topbar\">\r\n {mobileView ? <Hamburger handleClick={toggleSidebar} color=\"#9E9E9E\" /> : null}\r\n <img className=\"city\" src={loggedin ? cityDetails?.logoId : stateInfo?.statelogo} />\r\n <span style={{ display: \"flex\", alignItems: \"center\", justifyContent: \"space-between\", width: \"100%\" }}>\r\n {loggedin &&\r\n (cityDetails?.city?.ulbGrade ? (\r\n <p className=\"ulb\" style={mobileView ? { fontSize: \"14px\", display: \"inline-block\" } : {}}>\r\n {t(cityDetails?.i18nKey).toUpperCase()}{\" \"}\r\n {t(`ULBGRADE_${cityDetails?.city?.ulbGrade.toUpperCase().replace(\" \", \"_\").replace(\".\", \"_\")}`).toUpperCase()}\r\n </p>\r\n ) : (\r\n <img className=\"state\" src={logoUrl} />\r\n ))}\r\n {!loggedin && (\r\n <p className=\"ulb\" style={mobileView ? { fontSize: \"14px\", display: \"inline-block\" } : {}}>\r\n {t(`MYCITY_${stateInfo?.code?.toUpperCase()}_LABEL`)} {t(`MYCITY_STATECODE_LABEL`)}\r\n </p>\r\n )}\r\n {!mobileView && (\r\n <div className={mobileView ? \"right\" : \"flex-right right w-80 column-gap-15\"} style={!loggedin ? { width: \"80%\" } : {}}>\r\n <div className=\"left\">\r\n {!window.location.href.includes(\"employee/user/login\") && !window.location.href.includes(\"employee/user/language-selection\") && (\r\n <ChangeCity dropdown={true} t={t} />\r\n )}\r\n </div>\r\n <div className=\"left\">{showLanguageChange && <ChangeLanguage dropdown={true} />}</div>\r\n {userDetails?.access_token && (\r\n <div className=\"left\">\r\n <Dropdown\r\n option={userOptions}\r\n optionKey={\"name\"}\r\n select={handleUserDropdownSelection}\r\n showArrow={true}\r\n freeze={true}\r\n style={mobileView ? { right: 0 } : {}}\r\n optionCardStyles={{ overflow: \"revert\" }}\r\n customSelector={\r\n profilePic == null ? (\r\n <TextToImg name={userDetails?.info?.name || userDetails?.info?.userInfo?.name || \"Employee\"} />\r\n ) : (\r\n <img src={profilePic} style={{ height: \"48px\", width: \"48px\", borderRadius: \"50%\" }} />\r\n )\r\n }\r\n />\r\n </div>\r\n )}\r\n <img className=\"state\" src={logoUrl} />\r\n </div>\r\n )}\r\n </span>\r\n </div>\r\n );\r\n};\r\n\r\nexport default TopBar;\r\n","import React from \"react\";\r\nimport { HomeIcon, LanguageIcon, LogoutIcon, AddressBookIcon, LocationIcon } from \"@egovernments/digit-ui-react-components\";\r\nimport ChangeLanguage from \"../components/ChangeLanguage\";\r\n\r\nconst SideBarMenu = (t, closeSidebar, redirectToLoginPage, isEmployee) => [\r\n {\r\n type: \"link\",\r\n element: \"HOME\",\r\n text: t(\"COMMON_BOTTOM_NAVIGATION_HOME\"),\r\n link: isEmployee ? `/${window?.contextPath}/employee` : `/${window?.contextPath}/citizen`,\r\n icon: \"HomeIcon\",\r\n populators: {\r\n onClick: closeSidebar,\r\n },\r\n },\r\n {\r\n type: \"component\",\r\n element: \"LANGUAGE\",\r\n action: <ChangeLanguage />,\r\n icon: \"LanguageIcon\",\r\n },\r\n {\r\n id: \"login-btn\",\r\n element: \"LOGIN\",\r\n text: t(\"CORE_COMMON_LOGIN\"),\r\n icon: <LogoutIcon className=\"icon\" />,\r\n populators: {\r\n onClick: redirectToLoginPage,\r\n },\r\n },\r\n];\r\n\r\nexport default SideBarMenu;\r\n","import { CardText, CloseSvg, Modal } from \"@egovernments/digit-ui-react-components\";\r\nimport React from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nconst Heading = (props) => {\r\n return <h1 className=\"heading-m\">{props.label}</h1>;\r\n};\r\nconst Close = () => (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"#FFFFFF\">\r\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\r\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\" />\r\n </svg>\r\n);\r\nconst CloseBtn = (props) => {\r\n return (\r\n <div onClick={props?.onClick} style={ props?.isMobileView ? { padding: 5} : null}>\r\n {\r\n props?.isMobileView\r\n ? (<CloseSvg />)\r\n : (<div className={\"icon-bg-secondary\"} style={{ backgroundColor: '#505A5F'}}> <Close /> </div>)\r\n }\r\n </div>\r\n )\r\n};\r\nconst LogoutDialog = ({ onSelect, onCancel, onDismiss }) => {\r\n const { t } = useTranslation();\r\n const mobileDeviceWidth = 780;\r\n const [isMobileView, setIsMobileView] = React.useState(window.innerWidth <= mobileDeviceWidth);\r\n const onResize = () => {\r\n if (window.innerWidth <= mobileDeviceWidth) {\r\n if (!isMobileView) {\r\n setIsMobileView(true);\r\n }\r\n } else {\r\n if (isMobileView) {\r\n setIsMobileView(false);\r\n }\r\n }\r\n }\r\n React.useEffect(() => {\r\n window.addEventListener(\"resize\", () => {\r\n onResize();\r\n });\r\n return () => {\r\n window.addEventListener(\"resize\", () => {\r\n onResize();\r\n });\r\n };\r\n });\r\n return (\r\n isMobileView\r\n ? <Modal\r\n popupStyles={{\r\n height: \"174px\",\r\n maxHeight: \"174px\",\r\n width: \"324px\",\r\n position: \"absolute\",\r\n top: \"50%\",\r\n left: \"50%\",\r\n transform: 'translate(-50%, -50%)',\r\n }}\r\n popupModuleActionBarStyles={{\r\n display: \"flex\",\r\n flex: 1,\r\n justifyContent: \"flex-start\",\r\n width: \"100%\",\r\n position: \"absolute\",\r\n left: 0,\r\n bottom: 0,\r\n padding: \"18px\",\r\n }}\r\n style={{\r\n flex: 1,\r\n }}\r\n popupModuleMianStyles={{\r\n padding: \"18px\",\r\n }}\r\n headerBarMain={<Heading label={t(\"CORE_LOGOUT_WEB_HEADER\")} />}\r\n headerBarEnd={<CloseBtn onClick={onDismiss} isMobileView={isMobileView} />}\r\n actionCancelLabel={t(\"TL_COMMON_NO\")}\r\n actionCancelOnSubmit={onCancel}\r\n actionSaveLabel={t(\"TL_COMMON_YES\")}\r\n actionSaveOnSubmit={onSelect}\r\n formId=\"modal-action\">\r\n <div>\r\n <CardText style={{ margin: 0 }}>\r\n {t(\"CORE_LOGOUT_MOBILE_CONFIRMATION_MESSAGE\") + \" \"}\r\n </CardText>\r\n </div>\r\n </Modal>\r\n : <Modal\r\n popupModuleMianStyles={{\r\n paddingTop: \"30px\",\r\n }}\r\n headerBarMain={<Heading label={t(\"CORE_LOGOUT_WEB_HEADER\")} />}\r\n headerBarEnd={<CloseBtn onClick={onDismiss} isMobileView={false} />}\r\n actionCancelLabel={t(\"CORE_LOGOUT_CANCEL\")}\r\n actionCancelOnSubmit={onCancel}\r\n actionSaveLabel={t(\"CORE_LOGOUT_WEB_YES\")}\r\n actionSaveOnSubmit={onSelect}\r\n formId=\"modal-action\">\r\n <div>\r\n <CardText style={{ marginBottom: \"54px\", marginLeft: \"8px\", marginRight: \"8px\" }}>\r\n {t(\"CORE_LOGOUT_WEB_CONFIRMATION_MESSAGE\") + \" \"}\r\n <strong>{t(\"CORE_LOGOUT_MESSAGE\")}?</strong>\r\n </CardText>\r\n </div>\r\n </Modal>\r\n )\r\n}\r\nexport default LogoutDialog;","import React, { useEffect, useState } from \"react\";\r\nimport {\r\n HomeIcon,\r\n EditPencilIcon,\r\n LogoutIcon,\r\n Loader,\r\n AddressBookIcon,\r\n PropertyHouse,\r\n CaseIcon,\r\n CollectionIcon,\r\n PTIcon,\r\n OBPSIcon,\r\n PGRIcon,\r\n FSMIcon,\r\n WSICon,\r\n MCollectIcon,\r\n Phone,\r\n BirthIcon,\r\n DeathIcon,\r\n FirenocIcon,\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport { Link, useLocation } from \"react-router-dom\";\r\nimport SideBarMenu from \"../../../config/sidebar-menu\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport LogoutDialog from \"../../Dialog/LogoutDialog\";\r\nimport ChangeCity from \"../../ChangeCity\";\r\n\r\nconst defaultImage =\r\n \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO4AAADUCAMAAACs0e/bAAAAM1BMVEXK0eL\" +\r\n \"/\" +\r\n \"/\" +\r\n \"/\" +\r\n \"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\";\r\n/* \r\nFeature :: Citizen Webview sidebar\r\n*/\r\nconst Profile = ({ info, stateName, t }) => (\r\n <div className=\"profile-section\">\r\n <div className=\"imageloader imageloader-loaded\">\r\n <img className=\"img-responsive img-circle img-Profile\" src={defaultImage} />\r\n </div>\r\n <div id=\"profile-name\" className=\"label-container name-Profile\">\r\n <div className=\"label-text\"> {info?.name} </div>\r\n </div>\r\n <div id=\"profile-location\" className=\"label-container loc-Profile\">\r\n <div className=\"label-text\"> {info?.mobileNumber} </div>\r\n </div>\r\n {info?.emailId && (\r\n <div id=\"profile-emailid\" className=\"label-container loc-Profile\">\r\n <div className=\"label-text\"> {info.emailId} </div>\r\n </div>\r\n )}\r\n <div className=\"profile-divider\"></div>\r\n {window.location.href.includes(\"/employee\") &&\r\n !window.location.href.includes(\"/employee/user/login\") &&\r\n !window.location.href.includes(\"employee/user/language-selection\") && <ChangeCity t={t} mobileView={true} />}\r\n </div>\r\n);\r\nconst IconsObject = {\r\n CommonPTIcon: <PTIcon className=\"icon\" />,\r\n OBPSIcon: <OBPSIcon className=\"icon\" />,\r\n propertyIcon: <PropertyHouse className=\"icon\" />,\r\n TLIcon: <CaseIcon className=\"icon\" />,\r\n PGRIcon: <PGRIcon className=\"icon\" />,\r\n FSMIcon: <FSMIcon className=\"icon\" />,\r\n WSIcon: <WSICon className=\"icon\" />,\r\n MCollectIcon: <MCollectIcon className=\"icon\" />,\r\n BillsIcon: <CollectionIcon className=\"icon\" />,\r\n BirthIcon: <BirthIcon className=\"icon\" />,\r\n DeathIcon: <DeathIcon className=\"icon\" />,\r\n FirenocIcon: <FirenocIcon className=\"icon\" />,\r\n HomeIcon: <HomeIcon className=\"icon\" />,\r\n EditPencilIcon: <EditPencilIcon className=\"icon\" />,\r\n LogoutIcon: <LogoutIcon className=\"icon\" />,\r\n Phone: <Phone className=\"icon\" />,\r\n};\r\nconst StaticCitizenSideBar = ({ linkData, islinkDataLoading }) => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const location = useLocation();\r\n const { pathname } = location;\r\n const { data: storeData, isFetched } = Digit.Hooks.useStore.getInitData();\r\n const { stateInfo } = storeData || {};\r\n const user = Digit.UserService.getUser();\r\n let isMobile = window.Digit.Utils.browser.isMobile();\r\n\r\n const [isEmployee, setisEmployee] = useState(false);\r\n const [isSidebarOpen, toggleSidebar] = useState(false);\r\n const [showDialog, setShowDialog] = useState(false);\r\n\r\n const handleLogout = () => {\r\n toggleSidebar(false);\r\n setShowDialog(true);\r\n };\r\n const handleOnSubmit = () => {\r\n Digit.UserService.logout();\r\n setShowDialog(false);\r\n };\r\n const handleOnCancel = () => {\r\n setShowDialog(false);\r\n };\r\n\r\n if (islinkDataLoading) {\r\n return <Loader />;\r\n }\r\n\r\n const redirectToLoginPage = () => {\r\n // localStorage.clear();\r\n // sessionStorage.clear();\r\n history.push(`/${window?.contextPath}/citizen/login`);\r\n };\r\n const showProfilePage = () => {\r\n history.push(`/${window?.contextPath}/citizen/user/profile`);\r\n };\r\n\r\n let menuItems = [...SideBarMenu(t, showProfilePage, redirectToLoginPage, isEmployee)];\r\n\r\n menuItems = menuItems.filter((item) => item.element !== \"LANGUAGE\");\r\n\r\n const tenantId = Digit.ULBService.getCurrentTenantId();\r\n const MenuItem = ({ item }) => {\r\n const leftIconArray = item?.icon || item.icon?.type?.name;\r\n const leftIcon = leftIconArray ? IconsObject[leftIconArray] : IconsObject.BillsIcon;\r\n let itemComponent;\r\n if (item.type === \"component\") {\r\n itemComponent = item.action;\r\n } else {\r\n itemComponent = item.text;\r\n }\r\n const Item = () => (\r\n <span className=\"menu-item\" {...item.populators}>\r\n {leftIcon}\r\n <div className=\"menu-label\">{itemComponent}</div>\r\n </span>\r\n );\r\n if (item.type === \"external-link\") {\r\n return (\r\n <a href={item.link}>\r\n <Item />\r\n </a>\r\n );\r\n }\r\n if (item.type === \"link\") {\r\n return (\r\n <Link to={item?.link}>\r\n <Item />\r\n </Link>\r\n );\r\n }\r\n\r\n return <Item />;\r\n };\r\n let profileItem;\r\n\r\n if (isFetched && user && user.access_token) {\r\n profileItem = <Profile info={user?.info} stateName={stateInfo?.name} t={t} />;\r\n menuItems = menuItems.filter((item) => item?.id !== \"login-btn\");\r\n menuItems = [\r\n ...menuItems,\r\n {\r\n text: t(\"EDIT_PROFILE\"),\r\n element: \"PROFILE\",\r\n icon: \"EditPencilIcon\",\r\n populators: {\r\n onClick: showProfilePage,\r\n },\r\n },\r\n {\r\n text: t(\"CORE_COMMON_LOGOUT\"),\r\n element: \"LOGOUT\",\r\n icon: \"LogoutIcon\",\r\n populators: { onClick: handleLogout },\r\n },\r\n {\r\n text: (\r\n <React.Fragment>\r\n {t(\"CS_COMMON_HELPLINE\")}\r\n <div className=\"telephone\" style={{ marginTop: \"-10%\" }}>\r\n {storeData?.tenants.map((i) => {\r\n i.code === tenantId ? (\r\n <div className=\"link\">\r\n <a href={`tel:${storeData?.tenants[i].contactNumber}`}>{storeData?.tenants[i].contactNumber}</a>\r\n </div>\r\n ) : (\r\n <div className=\"link\">\r\n <a href={`tel:${storeData?.tenants[0].contactNumber}`}>{storeData?.tenants[0].contactNumber}</a>\r\n </div>\r\n );\r\n })}\r\n <div className=\"link\">\r\n <a href={`tel:${storeData?.tenants[0].contactNumber}`}>{storeData?.tenants[0].contactNumber}</a>\r\n </div>\r\n </div>\r\n </React.Fragment>\r\n ),\r\n element: \"Helpline\",\r\n icon: \"Phone\",\r\n },\r\n ];\r\n }\r\n Object.keys(linkData)\r\n ?.sort((x, y) => y.localeCompare(x))\r\n ?.map((key) => {\r\n if (linkData[key][0]?.sidebar === \"digit-ui-links\") {\r\n menuItems.splice(1, 0, {\r\n type: linkData[key][0]?.sidebarURL?.includes(window?.contextPath) ? \"link\" : \"external-link\",\r\n text: t(`ACTION_TEST_${Digit.Utils.locale.getTransformedLocale(key)}`),\r\n links: linkData[key],\r\n icon: linkData[key][0]?.leftIcon,\r\n link: linkData[key][0]?.sidebarURL,\r\n });\r\n }\r\n });\r\n\r\n return (\r\n <React.Fragment>\r\n <div>\r\n <div\r\n style={{\r\n height: \"100%\",\r\n width: \"100%\",\r\n top: \"0px\",\r\n backgroundColor: \"rgba(0, 0, 0, 0.54)\",\r\n pointerzevents: \"auto\",\r\n }}\r\n ></div>\r\n <div\r\n style={{\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n height: isMobile ? \"calc(100vh - 56px)\" : \"auto\",\r\n zIndex: \"99\",\r\n }}\r\n >\r\n {profileItem}\r\n <div className=\"drawer-desktop\">\r\n {menuItems?.map((item, index) => (\r\n <div className={`sidebar-list ${pathname === item?.link || pathname === item?.sidebarURL ? \"active\" : \"\"}`} key={index}>\r\n <MenuItem item={item} />\r\n </div>\r\n ))}\r\n </div>\r\n </div>\r\n <div>{showDialog && <LogoutDialog onSelect={handleOnSubmit} onCancel={handleOnCancel} onDismiss={handleOnCancel}></LogoutDialog>}</div>\r\n </div>\r\n </React.Fragment>\r\n );\r\n};\r\n\r\nexport default StaticCitizenSideBar;\r\n","import {\r\n Loader, NavBar\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useState } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport SideBarMenu from \"../../../config/sidebar-menu\";\r\nimport ChangeCity from \"../../ChangeCity\";\r\nimport StaticCitizenSideBar from \"./StaticCitizenSideBar\";\r\n\r\nconst defaultImage =\r\n \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO4AAADUCAMAAACs0e/bAAAAM1BMVEXK0eL\" +\r\n \"/\" +\r\n \"/\" +\r\n \"/\" +\r\n \"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\";\r\nconst Profile = ({ info, stateName, t }) => {\r\n const [profilePic, setProfilePic] = React.useState(null);\r\n React.useEffect(async () => {\r\n const tenant = Digit.ULBService.getCurrentTenantId();\r\n const uuid = info?.uuid;\r\n if (uuid) {\r\n const usersResponse = await Digit.UserService.userSearch(tenant, { uuid: [uuid] }, {});\r\n\r\n if (usersResponse && usersResponse.user && usersResponse.user.length) {\r\n const userDetails = usersResponse.user[0];\r\n const thumbs = userDetails?.photo?.split(\",\");\r\n setProfilePic(thumbs?.at(0));\r\n }\r\n }\r\n }, [profilePic !== null]);\r\n return (\r\n <div className=\"profile-section\">\r\n <div className=\"imageloader imageloader-loaded\">\r\n <img\r\n className=\"img-responsive img-circle img-Profile\"\r\n src={profilePic ? profilePic : defaultImage}\r\n style={{ objectFit: \"cover\", objectPosition: \"center\" }}\r\n />\r\n </div>\r\n <div id=\"profile-name\" className=\"label-container name-Profile\">\r\n <div className=\"label-text\"> {info?.name} </div>\r\n </div>\r\n <div id=\"profile-location\" className=\"label-container loc-Profile\">\r\n <div className=\"label-text\"> {info?.mobileNumber} </div>\r\n </div>\r\n {info?.emailId && (\r\n <div id=\"profile-emailid\" className=\"label-container loc-Profile\">\r\n <div className=\"label-text\"> {info.emailId} </div>\r\n </div>\r\n )}\r\n <div className=\"profile-divider\"></div>\r\n {window.location.href.includes(\"/employee\") &&\r\n !window.location.href.includes(\"/employee/user/login\") &&\r\n !window.location.href.includes(\"employee/user/language-selection\") && <ChangeCity t={t} mobileView={true} />}\r\n </div>\r\n );\r\n};\r\nconst PoweredBy = () => (\r\n <div className=\"digit-footer\" style={{ marginBottom: 0 }}>\r\n <img\r\n alt=\"Powered by DIGIT\"\r\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER\")}\r\n style={{ cursor: \"pointer\" }}\r\n onClick={() => {\r\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\r\n }}\r\n />{\" \"}\r\n </div>\r\n);\r\n\r\n/* \r\nFeature :: Citizen Webview sidebar\r\n*/\r\nexport const CitizenSideBar = ({ isOpen, isMobile = false, toggleSidebar, onLogout, isEmployee = false, linkData, islinkDataLoading }) => {\r\n const { data: storeData, isFetched } = Digit.Hooks.useStore.getInitData();\r\n const { stateInfo } = storeData || {};\r\n const user = Digit.UserService.getUser();\r\n const [search, setSearch] = useState(\"\");\r\n\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const closeSidebar = () => {\r\n Digit.clikOusideFired = true;\r\n toggleSidebar(false);\r\n };\r\n\r\n const { isLoading, data } = Digit.Hooks.useAccessControl();\r\n const tenantId = Digit.ULBService.getCurrentTenantId();\r\n const showProfilePage = () => {\r\n const redirectUrl = isEmployee ? `/${window?.contextPath}/employee/user/profile` : `/${window?.contextPath}/citizen/user/profile`;\r\n history.push(redirectUrl);\r\n closeSidebar();\r\n };\r\n const redirectToLoginPage = () => {\r\n // localStorage.clear();\r\n // sessionStorage.clear();\r\n history.push(`/${window?.contextPath}/citizen/login`);\r\n closeSidebar();\r\n };\r\n if (islinkDataLoading || isLoading) {\r\n return <Loader />;\r\n }\r\n\r\n let menuItems = [...SideBarMenu(t, closeSidebar, redirectToLoginPage, isEmployee)];\r\n let profileItem;\r\n if (isFetched && user && user.access_token) {\r\n profileItem = <Profile info={user?.info} stateName={stateInfo?.name} t={t} />;\r\n menuItems = menuItems.filter((item) => item?.id !== \"login-btn\");\r\n menuItems = [\r\n ...menuItems,\r\n {\r\n text: t(\"EDIT_PROFILE\"),\r\n element: \"PROFILE\",\r\n icon: \"EditPencilIcon\",\r\n populators: {\r\n onClick: showProfilePage,\r\n },\r\n },\r\n {\r\n text: t(\"CORE_COMMON_LOGOUT\"),\r\n element: \"LOGOUT\",\r\n icon: \"LogoutIcon\",\r\n populators: {\r\n onClick: onLogout,\r\n },\r\n },\r\n {\r\n text: (\r\n <React.Fragment>\r\n {t(\"CS_COMMON_HELPLINE\")}\r\n <div className=\"telephone\" style={{ marginTop: \"-10%\" }}>\r\n {storeData?.tenants.map((i) => {\r\n i.code === tenantId ? (\r\n <div className=\"link\">\r\n <a href={`tel:${storeData?.tenants[i].contactNumber}`}>{storeData?.tenants[i].contactNumber}</a>\r\n </div>\r\n ) : (\r\n <div className=\"link\">\r\n <a href={`tel:${storeData?.tenants[0].contactNumber}`}>{storeData?.tenants[0].contactNumber}</a>\r\n </div>\r\n );\r\n })}\r\n <div className=\"link\">\r\n <a href={`tel:${storeData?.tenants[0].contactNumber}`}>{storeData?.tenants[0].contactNumber}</a>\r\n </div>\r\n </div>\r\n </React.Fragment>\r\n ),\r\n element: \"Helpline\",\r\n icon: \"Phone\",\r\n },\r\n ];\r\n }\r\n\r\n let configEmployeeSideBar = {};\r\n\r\n if (!isEmployee) {\r\n Object.keys(linkData)\r\n ?.sort((x, y) => y.localeCompare(x))\r\n ?.map((key) => {\r\n if (linkData[key][0]?.sidebar === \"digit-ui-links\")\r\n menuItems.splice(1, 0, {\r\n type: linkData[key][0]?.sidebarURL?.includes(window?.contextPath) ? \"link\" : \"external-link\",\r\n text: t(`ACTION_TEST_${Digit.Utils.locale.getTransformedLocale(key)}`),\r\n links: linkData[key],\r\n icon: linkData[key][0]?.leftIcon,\r\n link: linkData[key][0]?.sidebarURL,\r\n });\r\n });\r\n } else {\r\n data?.actions\r\n .filter((e) => e.url === \"url\" && e.displayName !== \"Home\")\r\n .forEach((item) => {\r\n if (search == \"\" && item.path !== \"\") {\r\n let index = item.path.split(\".\")[0];\r\n if (index === \"TradeLicense\") index = \"Trade License\";\r\n if (!configEmployeeSideBar[index]) {\r\n configEmployeeSideBar[index] = [item];\r\n } else {\r\n configEmployeeSideBar[index].push(item);\r\n }\r\n } else if (item.path !== \"\" && item?.displayName?.toLowerCase().includes(search.toLowerCase())) {\r\n let index = item.path.split(\".\")[0];\r\n if (index === \"TradeLicense\") index = \"Trade License\";\r\n if (!configEmployeeSideBar[index]) {\r\n configEmployeeSideBar[index] = [item];\r\n } else {\r\n configEmployeeSideBar[index].push(item);\r\n }\r\n }\r\n });\r\n const keys = Object.keys(configEmployeeSideBar);\r\n for (let i = 0; i < keys.length; i++) {\r\n const getSingleDisplayName = configEmployeeSideBar[keys[i]][0]?.displayName?.toUpperCase()?.replace(/[ -]/g, \"_\");\r\n const getParentDisplayName = keys[i]?.toUpperCase()?.replace(/[ -]/g, \"_\");\r\n\r\n if (configEmployeeSideBar[keys[i]][0].path.indexOf(\".\") === -1) {\r\n menuItems.splice(1, 0, {\r\n type: \"link\",\r\n text: t(`ACTION_TEST_${getSingleDisplayName}`),\r\n link: configEmployeeSideBar[keys[i]][0]?.navigationURL,\r\n icon: configEmployeeSideBar[keys[i]][0]?.leftIcon?.split?.(\":\")[1],\r\n populators: {\r\n onClick: () => {\r\n history.push(configEmployeeSideBar[keys[i]][0]?.navigationURL);\r\n closeSidebar();\r\n },\r\n },\r\n });\r\n } else {\r\n menuItems.splice(1, 0, {\r\n type: \"dynamic\",\r\n moduleName: t(`ACTION_TEST_${getParentDisplayName}`),\r\n links: configEmployeeSideBar[keys[i]]?.map((ob) => {return {...ob, displayName: t(`ACTION_TEST_${ob?.displayName?.toUpperCase()?.replace(/[ -]/g, \"_\")}`)}}),\r\n icon: configEmployeeSideBar[keys[i]][1]?.leftIcon,\r\n });\r\n }\r\n }\r\n const indx = menuItems.findIndex(a => a.element === \"HOME\");\r\n const home = menuItems.splice(indx,1);\r\n const comp = menuItems.findIndex(a => a.element === \"LANGUAGE\");\r\n const part = menuItems.splice(comp,menuItems?.length-comp);\r\n menuItems.sort((a,b) => {\r\n let c1 = a?.type === \"dynamic\" ? a?.moduleName : a?.text;\r\n let c2 = b?.type === \"dynamic\" ? b?.moduleName : b?.text;\r\n return c1.localeCompare(c2)\r\n } );\r\n home?.[0] && menuItems.splice(0,0,home[0]);\r\n menuItems = part?.length > 0 ? menuItems.concat(part) : menuItems;\r\n }\r\n\r\n /* URL with openlink wont have sidebar and actions */\r\n if (history.location.pathname.includes(\"/openlink\")) {\r\n profileItem = <span></span>;\r\n menuItems = menuItems.filter((ele) => ele.element === \"LANGUAGE\");\r\n }\r\n return isMobile ? (\r\n <NavBar\r\n open={isOpen}\r\n toggleSidebar={toggleSidebar}\r\n profileItem={profileItem}\r\n onClose={closeSidebar}\r\n menuItems={menuItems}\r\n Footer={<PoweredBy />}\r\n isEmployee={isEmployee}\r\n search={search}\r\n setSearch={setSearch}\r\n />\r\n ) : (\r\n <StaticCitizenSideBar logout={onLogout} />\r\n );\r\n};\r\n","import React, { useState, useContext } from \"react\";\r\nimport { Link, useLocation } from \"react-router-dom\";\r\nimport {\r\n ArrowForward,\r\n ArrowVectorDown,\r\n ArrowDirection,\r\n HomeIcon,\r\n ComplaintIcon,\r\n BPAHomeIcon,\r\n PropertyHouse,\r\n CaseIcon,\r\n ReceiptIcon,\r\n PersonIcon,\r\n DocumentIconSolid,\r\n DropIcon,\r\n CollectionsBookmarIcons,\r\n FinanceChartIcon,\r\n CollectionIcon,\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport ReactTooltip from \"react-tooltip\";\r\n\r\nconst SubMenu = ({ item }) => {\r\n const [subnav, setSubnav] = useState(false);\r\n const location = useLocation();\r\n const { pathname } = location;\r\n const { t } = useTranslation();\r\n const showSubnav = () => setSubnav(!subnav);\r\n const IconsObject = {\r\n home: <HomeIcon />,\r\n announcement: <ComplaintIcon />,\r\n business: <BPAHomeIcon />,\r\n store: <PropertyHouse />,\r\n assignment: <CaseIcon />,\r\n receipt: <ReceiptIcon />,\r\n \"business-center\": <PersonIcon />,\r\n description: <DocumentIconSolid />,\r\n \"water-tap\": <DropIcon />,\r\n \"collections-bookmark\": <CollectionsBookmarIcons />,\r\n \"insert-chart\": <FinanceChartIcon />,\r\n edcr: <CollectionIcon />,\r\n collections: <CollectionIcon />,\r\n };\r\n const leftIconArray = item?.icon?.leftIcon?.split?.(\":\")?.[1] || item?.leftIcon?.split?.(\":\")[1];\r\n const leftIcon = IconsObject[leftIconArray] || IconsObject.collections;\r\n const getModuleName = item?.moduleName?.replace(/[ -]/g, \"_\");\r\n const appendTranslate = t(`ACTION_TEST_${getModuleName}`);\r\n const trimModuleName = t(appendTranslate?.length > 20 ? appendTranslate.substring(0, 20) + \"...\" : appendTranslate);\r\n\r\n if (item.type === \"single\") {\r\n const getOrigin = window.location.origin;\r\n return (\r\n <div className=\"submenu-container\">\r\n <div className={`sidebar-link ${pathname === item?.navigationURL ? \"active\" : \"\"}`}>\r\n <div className=\"actions\">\r\n {leftIcon}\r\n {item.navigationURL?.indexOf(`/${window?.contextPath}`) === -1 ? (\r\n <a\r\n data-tip=\"React-tooltip\"\r\n data-for={`jk-side-${getModuleName}`}\r\n className=\"custom-link\"\r\n href={getOrigin + \"/employee/\" + item.navigationURL}\r\n >\r\n <span> {trimModuleName} </span>\r\n\r\n {trimModuleName?.includes(\"...\") &&<ReactTooltip textColor=\"white\" backgroundColor=\"grey\" place=\"right\" type=\"info\" effect=\"solid\" id={`jk-side-${getModuleName}`}>\r\n {t(`ACTION_TEST_${getModuleName}`)}\r\n </ReactTooltip>}\r\n </a>\r\n ) : (\r\n // <a className=\"custom-link\" href={getOrigin + \"/employee/\" + item.navigationURL}>\r\n // <div className=\"tooltip\">\r\n // <p className=\"p1\">{trimModuleName}</p>\r\n // <span className=\"tooltiptext\">{t(`ACTION_TEST_${getModuleName}`)}</span>\r\n // </div>\r\n // </a>\r\n <Link className=\"custom-link\" to={item.navigationURL}>\r\n <div data-tip=\"React-tooltip\" data-for={`jk-side-${getModuleName}`}>\r\n <span> {trimModuleName} </span>\r\n\r\n {trimModuleName?.includes(\"...\") && <ReactTooltip textColor=\"white\" backgroundColor=\"grey\" place=\"right\" type=\"info\" effect=\"solid\" id={`jk-side-${getModuleName}`}>\r\n {t(`ACTION_TEST_${getModuleName}`)}\r\n </ReactTooltip>}\r\n </div>\r\n {/* <div className=\"tooltip\">\r\n <p className=\"p1\">{trimModuleName}</p>\r\n <span className=\"tooltiptext\">{t(`ACTION_TEST_${getModuleName}`)}</span>\r\n </div>{\" \"} */}\r\n </Link>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n } else {\r\n return (\r\n <React.Fragment>\r\n <div className=\"submenu-container\">\r\n <div onClick={item.links && showSubnav} className={`sidebar-link`}>\r\n <div className=\"actions\">\r\n {leftIcon}\r\n <div data-tip=\"React-tooltip\" data-for={`jk-side-${getModuleName}`}>\r\n <span> {trimModuleName} </span>\r\n\r\n {trimModuleName?.includes(\"...\") && <ReactTooltip textColor=\"white\" backgroundColor=\"grey\" place=\"right\" type=\"info\" effect=\"solid\" id={`jk-side-${getModuleName}`}>\r\n {t(`ACTION_TEST_${getModuleName}`)}\r\n </ReactTooltip>}\r\n </div>\r\n {/* <div className=\"tooltip\">\r\n <p className=\"p1\">{trimModuleName}</p>\r\n <span className=\"tooltiptext\">{t(`ACTION_TEST_${getModuleName}`)}</span>\r\n </div>{\" \"} */}\r\n </div>\r\n <div> {item.links && subnav ? <ArrowVectorDown /> : item.links ? <ArrowForward /> : null} </div>\r\n </div>\r\n </div>\r\n\r\n {subnav &&\r\n item.links\r\n .sort((a, b) => a.orderNumber - b.orderNumber)\r\n .filter((item) => item.url === \"url\" || item.url !== \"\")\r\n .map((item, index) => {\r\n const getChildName = item?.displayName?.toUpperCase()?.replace(/[ -]/g, \"_\");\r\n const appendTranslate = t(`ACTION_TEST_${getChildName}`);\r\n const trimModuleName = t(appendTranslate?.length > 20 ? appendTranslate.substring(0, 20) + \"...\" : appendTranslate);\r\n\r\n if (item.navigationURL.indexOf(`/${window?.contextPath}`) === -1) {\r\n const getOrigin = window.location.origin;\r\n return (\r\n <a\r\n key={index}\r\n className={`dropdown-link ${pathname === item.link ? \"active\" : \"\"}`}\r\n href={getOrigin + \"/employee/\" + item.navigationURL}\r\n >\r\n <div className=\"actions\" data-tip=\"React-tooltip\" data-for={`jk-side-${index}`}>\r\n <span> {trimModuleName} </span>\r\n {trimModuleName?.includes(\"...\") && <ReactTooltip textColor=\"white\" backgroundColor=\"grey\" place=\"right\" type=\"info\" effect=\"solid\" id={`jk-side-${index}`}>\r\n {t(`ACTION_TEST_${getChildName}`)}\r\n </ReactTooltip>}\r\n </div>\r\n {/* <div className=\"actions\">\r\n <div className=\"tooltip\">\r\n <p className=\"p1\">{trimModuleName}</p>\r\n <span className=\"tooltiptext\">{t(`ACTION_TEST_${getChildName}`)}</span>\r\n </div>{\" \"}\r\n </div> */}\r\n </a>\r\n );\r\n }\r\n return (\r\n <Link\r\n to={item?.link || item.navigationURL}\r\n key={index}\r\n className={`dropdown-link ${pathname === item?.link || pathname === item?.navigationURL ? \"active\" : \"\"}`}\r\n >\r\n <div className=\"actions\" data-tip=\"React-tooltip\" data-for={`jk-side-${index}`}>\r\n <span> {trimModuleName} </span>\r\n {trimModuleName?.includes(\"...\") &&<ReactTooltip textColor=\"white\" backgroundColor=\"grey\" place=\"right\" type=\"info\" effect=\"solid\" id={`jk-side-${index}`}>\r\n {t(`ACTION_TEST_${getChildName}`)}\r\n </ReactTooltip>}\r\n {/* <div className=\"tooltip\">\r\n <p className=\"p1\">{trimModuleName}</p>\r\n <span className=\"tooltiptext\">{t(`ACTION_TEST_${getChildName}`)}</span>\r\n </div>{\" \"} */}\r\n </div>\r\n </Link>\r\n );\r\n })}\r\n </React.Fragment>\r\n );\r\n }\r\n};\r\n\r\nexport default SubMenu;\r\n","import React, { useRef, useEffect, useState } from \"react\";\r\nimport SubMenu from \"./SubMenu\";\r\nimport { Loader, SearchIcon } from \"@egovernments/digit-ui-react-components\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nconst EmployeeSideBar = () => {\r\n const sidebarRef = useRef(null);\r\n const { isLoading, data } = Digit.Hooks.useAccessControl();\r\n const [search, setSearch] = useState(\"\");\r\n const { t } = useTranslation();\r\n useEffect(() => {\r\n if (isLoading) {\r\n return <Loader />;\r\n }\r\n sidebarRef.current.style.cursor = \"pointer\";\r\n collapseNav();\r\n }, [isLoading]);\r\n\r\n const expandNav = () => {\r\n sidebarRef.current.style.width = \"260px\";\r\n sidebarRef.current.style.overflow = \"auto\";\r\n\r\n sidebarRef.current.querySelectorAll(\".dropdown-link\").forEach((element) => {\r\n element.style.display = \"flex\";\r\n });\r\n };\r\n const collapseNav = () => {\r\n sidebarRef.current.style.width = \"55px\";\r\n sidebarRef.current.style.overflow = \"hidden\";\r\n\r\n sidebarRef.current.querySelectorAll(\".dropdown-link\").forEach((element) => {\r\n element.style.display = \"none\";\r\n });\r\n sidebarRef.current.querySelectorAll(\".actions\").forEach((element) => {\r\n element.style.padding = \"0\";\r\n });\r\n };\r\n\r\n const configEmployeeSideBar = {};\r\n\r\n data?.actions\r\n .filter((e) => e.url === \"url\")\r\n .forEach((item) => {\r\n if (search == \"\" && item.path !== \"\") {\r\n let index = item.path.split(\".\")[0];\r\n if (index === \"TradeLicense\") index = \"Trade License\";\r\n if (!configEmployeeSideBar[index]) {\r\n configEmployeeSideBar[index] = [item];\r\n } else {\r\n configEmployeeSideBar[index].push(item);\r\n }\r\n } else if (item.path !== \"\" && item?.displayName?.toLowerCase().includes(search.toLowerCase())) {\r\n let index = item.path.split(\".\")[0];\r\n if (index === \"TradeLicense\") index = \"Trade License\";\r\n if (!configEmployeeSideBar[index]) {\r\n configEmployeeSideBar[index] = [item];\r\n } else {\r\n configEmployeeSideBar[index].push(item);\r\n }\r\n }\r\n });\r\n let res = [];\r\n const splitKeyValue = () => {\r\n const keys = Object.keys(configEmployeeSideBar);\r\n keys.sort((a, b) => a.orderNumber - b.orderNumber);\r\n for (let i = 0; i < keys.length; i++) {\r\n if (configEmployeeSideBar[keys[i]][0].path.indexOf(\".\") === -1) {\r\n if (configEmployeeSideBar[keys[i]][0].displayName === \"Home\") {\r\n const homeURL = `/${window?.contextPath}/employee`;\r\n res.unshift({\r\n moduleName: keys[i].toUpperCase(),\r\n icon: configEmployeeSideBar[keys[i]][0],\r\n navigationURL: homeURL,\r\n type: \"single\",\r\n });\r\n } else {\r\n res.push({\r\n moduleName: configEmployeeSideBar[keys[i]][0]?.displayName.toUpperCase(),\r\n type: \"single\",\r\n icon: configEmployeeSideBar[keys[i]][0],\r\n navigationURL: configEmployeeSideBar[keys[i]][0].navigationURL,\r\n });\r\n }\r\n } else {\r\n res.push({\r\n moduleName: keys[i].toUpperCase(),\r\n links: configEmployeeSideBar[keys[i]],\r\n icon: configEmployeeSideBar[keys[i]][0],\r\n orderNumber: configEmployeeSideBar[keys[i]][0].orderNumber,\r\n });\r\n }\r\n }\r\n res.splice(0,1);\r\n const indx = res.findIndex(a => a.moduleName === \"HOME\");\r\n const home = res.splice(indx,1);\r\n res.sort((a,b) => a.moduleName.localeCompare(b.moduleName));\r\n home?.[0] && res.splice(0,0,home[0]);\r\n return res.map((item, index) => {\r\n return <SubMenu item={item} key={index + 1} />;\r\n });\r\n };\r\n\r\n if (isLoading) {\r\n return <Loader />;\r\n }\r\n if (!res) {\r\n return \"\";\r\n }\r\n\r\n const renderSearch = () => {\r\n return (\r\n <div className=\"submenu-container\">\r\n <div className=\"sidebar-link\">\r\n <div className=\"actions search-icon-wrapper\">\r\n <SearchIcon className=\"search-icon\" />\r\n <input\r\n className=\"employee-search-input\"\r\n type=\"text\"\r\n placeholder={t(`ACTION_TEST_SEARCH`)}\r\n name=\"search\"\r\n value={search}\r\n onChange={(e) => setSearch(e.target.value)}\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n };\r\n\r\n return (\r\n <div className=\"sidebar\" ref={sidebarRef} onMouseOver={expandNav} onMouseLeave={collapseNav}>\r\n {renderSearch()}\r\n {splitKeyValue()}\r\n </div>\r\n );\r\n};\r\n\r\nexport default EmployeeSideBar;\r\n","import React from \"react\";\r\nimport { CitizenSideBar } from \"./CitizenSideBar\";\r\nimport EmployeeSideBar from \"./EmployeeSideBar\";\r\n\r\nconst SideBar = ({ t, CITIZEN, isSidebarOpen, toggleSidebar, handleLogout, mobileView, userDetails, modules, linkData, islinkDataLoading }) => {\r\n if (CITIZEN)\r\n return (\r\n <CitizenSideBar\r\n isOpen={isSidebarOpen}\r\n isMobile={true}\r\n toggleSidebar={toggleSidebar}\r\n onLogout={handleLogout}\r\n linkData={linkData}\r\n islinkDataLoading={islinkDataLoading}\r\n />\r\n );\r\n else {\r\n if (!mobileView && userDetails?.access_token) return <EmployeeSideBar {...{ mobileView, userDetails, modules }} />;\r\n else return <CitizenSideBar isOpen={isSidebarOpen} isMobile={true} toggleSidebar={toggleSidebar} onLogout={handleLogout} isEmployee={true} />;\r\n }\r\n};\r\n\r\nexport default SideBar;\r\n","import React, { useState } from \"react\";\r\nimport { EditPencilIcon, LogoutIcon } from \"@egovernments/digit-ui-react-components\";\r\nimport TopBar from \"./TopBar\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport SideBar from \"./SideBar\";\r\nimport LogoutDialog from \"../Dialog/LogoutDialog\";\r\nconst TopBarSideBar = ({\r\n t,\r\n stateInfo,\r\n userDetails,\r\n CITIZEN,\r\n cityDetails,\r\n mobileView,\r\n handleUserDropdownSelection,\r\n logoUrl,\r\n showSidebar = true,\r\n showLanguageChange,\r\n linkData,\r\n islinkDataLoading,\r\n}) => {\r\n const [isSidebarOpen, toggleSidebar] = useState(false);\r\n const history = useHistory();\r\n const [showDialog, setShowDialog] = useState(false);\r\n const handleLogout = () => {\r\n toggleSidebar(false);\r\n setShowDialog(true);\r\n };\r\n const handleOnSubmit = () => {\r\n Digit.UserService.logout();\r\n setShowDialog(false);\r\n }\r\n const handleOnCancel = () => {\r\n setShowDialog(false);\r\n }\r\n const userProfile = () => {\r\n history.push(`/${window?.contextPath}/employee/user/profile`);\r\n };\r\n const userOptions = [\r\n { name: t(\"EDIT_PROFILE\"), icon: <EditPencilIcon className=\"icon\" />, func: userProfile },\r\n { name: t(\"CORE_COMMON_LOGOUT\"), icon: <LogoutIcon className=\"icon\" />, func: handleLogout },\r\n ];\r\n return (\r\n <React.Fragment>\r\n <TopBar\r\n t={t}\r\n stateInfo={stateInfo}\r\n toggleSidebar={toggleSidebar}\r\n isSidebarOpen={isSidebarOpen}\r\n handleLogout={handleLogout}\r\n userDetails={userDetails}\r\n CITIZEN={CITIZEN}\r\n cityDetails={cityDetails}\r\n mobileView={mobileView}\r\n userOptions={userOptions}\r\n handleUserDropdownSelection={handleUserDropdownSelection}\r\n logoUrl={logoUrl}\r\n showLanguageChange={showLanguageChange}\r\n />\r\n {showDialog && (\r\n <LogoutDialog onSelect={handleOnSubmit} onCancel={handleOnCancel} onDismiss={handleOnCancel}></LogoutDialog>\r\n )}\r\n {showSidebar && (\r\n <SideBar\r\n t={t}\r\n CITIZEN={CITIZEN}\r\n isSidebarOpen={isSidebarOpen}\r\n toggleSidebar={toggleSidebar}\r\n handleLogout={handleLogout}\r\n mobileView={mobileView}\r\n userDetails={userDetails}\r\n linkData={linkData}\r\n islinkDataLoading={islinkDataLoading}\r\n />\r\n )}\r\n </React.Fragment>\r\n );\r\n};\r\nexport default TopBarSideBar;","import React, { useState, useEffect } from \"react\";\r\nimport { GalleryIcon, RemoveIcon, UploadFile } from \"@egovernments/digit-ui-react-components\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nfunction UploadDrawer({ setProfilePic, closeDrawer, userType, removeProfilePic ,showToast}) {\r\n const [uploadedFile, setUploadedFile] = useState(null);\r\n const [file, setFile] = useState(\"\");\r\n const [error, setError] = useState(null);\r\n const { t } = useTranslation();\r\n const selectfile = (e) => setFile(e.target.files[0]);\r\n const removeimg = () => {removeProfilePic(); closeDrawer()};\r\n const onOverlayBodyClick = () => closeDrawer();\r\n\r\n useEffect(() => {\r\n (async () => {\r\n setError(null);\r\n if (file) {\r\n if (file.size >= 1000000) {\r\n showToast(\"error\", t(\"CORE_COMMON_PROFILE_MAXIMUM_UPLOAD_SIZE_EXCEEDED\"))\r\n setError(t(\"CORE_COMMON_PROFILE_MAXIMUM_UPLOAD_SIZE_EXCEEDED\"));\r\n } else {\r\n try {\r\n const response = await Digit.UploadServices.Filestorage(`${userType}-profile`, file, Digit.ULBService.getStateId());\r\n if (response?.data?.files?.length > 0) {\r\n const fileStoreId = response?.data?.files[0]?.fileStoreId;\r\n setUploadedFile(fileStoreId);\r\n setProfilePic(fileStoreId);\r\n } else {\r\n showToast(\"error\", t(\"CORE_COMMON_PROFILE_FILE_UPLOAD_ERROR\"))\r\n setError(t(\"CORE_COMMON_PROFILE_FILE_UPLOAD_ERROR\"));\r\n }\r\n } catch (err) {\r\n showToast(\"error\",t(\"CORE_COMMON_PROFILE_INVALID_FILE_INPUT\"))\r\n // setError(t(\"PT_FILE_UPLOAD_ERROR\"));\r\n }\r\n }\r\n }\r\n })();\r\n }, [file]);\r\n\r\n return (\r\n <React.Fragment>\r\n <div\r\n style={{\r\n position: \"fixed\",\r\n top: \"0\",\r\n left: \"0\",\r\n right: \"0\",\r\n bottom: \"0\",\r\n width: \"100%\",\r\n height: \"100vh\",\r\n backgroundColor: \"rgba(0,0,0,.5)\",\r\n // zIndex: \"9998\",\r\n }}\r\n onClick={onOverlayBodyClick}\r\n ></div>\r\n <div\r\n style={{\r\n width: \"100%\",\r\n justifyContent: \"space-between\",\r\n display: \"flex\",\r\n backgroundColor: \"white\",\r\n alignItems: \"center\",\r\n position: \"fixed\",\r\n left: \"0\",\r\n right: \"0\",\r\n height: \"20%\",\r\n bottom: userType === \"citizen\" ? \"2.5rem\" : \"0\",\r\n zIndex: \"2\",\r\n }}\r\n >\r\n <div\r\n style={{ display: \"flex\", flex: \"1\", flexDirection: \"column\", width: \"100%\", justifyContent: \"center\", alignItems: \"center\", gap: \"8px 0\" }}\r\n >\r\n <label for=\"file\" style={{ cursor: \"pointer\" }}>\r\n {\" \"}\r\n <GalleryIcon />\r\n </label>\r\n <label style={{ cursor: \"pointer\" }}> Gallery</label>\r\n <input type=\"file\" id=\"file\" accept=\"image/*, .png, .jpeg, .jpg\" onChange={selectfile} style={{ display: \"none\" }} />\r\n </div>\r\n\r\n <div\r\n style={{ display: \"flex\", flex: \"1\", width: \"100%\", justifyContent: \"center\", alignItems: \"center\", flexDirection: \"column\", gap: \"8px 0\" }}\r\n >\r\n <button onClick={removeimg}>\r\n <RemoveIcon />\r\n </button>\r\n <label style={{ cursor: \"pointer\" }}>Remove</label>\r\n </div>\r\n </div>\r\n </React.Fragment>\r\n );\r\n}\r\n\r\nexport default UploadDrawer;\r\n","import {\r\n CameraIcon,\r\n CardLabel,\r\n Dropdown,\r\n LabelFieldPair,\r\n MobileNumber,\r\n TextInput,\r\n Toast,\r\n CardLabelError,\r\n BreadCrumb,\r\n BackButton,\r\n Loader,\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport UploadDrawer from \"./ImageUpload/UploadDrawer\";\r\n\r\nconst defaultImage =\r\n \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO4AAADUCAMAAACs0e/bAAAAM1BMVEXK0eL\" +\r\n \"/\" +\r\n \"/\" +\r\n \"/\" +\r\n \"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\";\r\n\r\nconst UserProfile = ({ stateCode, userType, cityDetails }) => {\r\n const history = useHistory();\r\n const { t } = useTranslation();\r\n const url = window.location.href;\r\n const stateId = Digit.ULBService.getStateId();\r\n const tenant = Digit.ULBService.getCurrentTenantId();\r\n const userInfo = Digit.UserService.getUser()?.info || {};\r\n const [userDetails, setUserDetails] = useState(null);\r\n const [name, setName] = useState(userInfo?.name ? userInfo.name : \"\");\r\n const [email, setEmail] = useState(userInfo?.emailId ? userInfo.emailId : \"\");\r\n const [gender, setGender] = useState(userDetails?.gender);\r\n const [city, setCity] = useState(userInfo?.permanentCity ? userInfo.permanentCity : cityDetails.name);\r\n const [mobileNumber, setMobileNo] = useState(userInfo?.mobileNumber ? userInfo.mobileNumber : \"\");\r\n const [profilePic, setProfilePic] = useState(null);\r\n const [profileImg, setProfileImg] = useState(\"\");\r\n const [openUploadSlide, setOpenUploadSide] = useState(false);\r\n const [changepassword, setChangepassword] = useState(false);\r\n const [currentPassword, setCurrentPassword] = useState(\"\");\r\n const [newPassword, setNewPassword] = useState(\"\");\r\n const [confirmPassword, setConfirmPassword] = useState(\"\");\r\n const [toast, setToast] = useState(null);\r\n const [loading, setLoading] = useState(false);\r\n const [windowWidth, setWindowWidth] = React.useState(window.innerWidth);\r\n const [errors, setErrors] = React.useState({});\r\n const isMobile = window.Digit.Utils.browser.isMobile();\r\n\r\n const getUserInfo = async () => {\r\n const uuid = userInfo?.uuid;\r\n if (uuid) {\r\n const usersResponse = await Digit.UserService.userSearch(tenant, { uuid: [uuid] }, {});\r\n usersResponse && usersResponse.user && usersResponse.user.length && setUserDetails(usersResponse.user[0]);\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n window.addEventListener(\"resize\", () => setWindowWidth(window.innerWidth));\r\n return () => {\r\n window.removeEventListener(\"resize\", () => setWindowWidth(window.innerWidth));\r\n };\r\n });\r\n\r\n useEffect(() => {\r\n setLoading(true);\r\n\r\n getUserInfo();\r\n\r\n setGender({\r\n i18nKey: undefined,\r\n code: userDetails?.gender,\r\n value: userDetails?.gender,\r\n });\r\n\r\n const thumbs = userDetails?.photo?.split(\",\");\r\n setProfileImg(thumbs?.at(0));\r\n\r\n setLoading(false);\r\n }, [userDetails !== null]);\r\n\r\n let validation = {};\r\n const editScreen = false; // To-do: Deubug and make me dynamic or remove if not needed\r\n const onClickAddPic = () => setOpenUploadSide(!openUploadSlide);\r\n const TogleforPassword = () => setChangepassword(!changepassword);\r\n const setGenderName = (value) => setGender(value);\r\n const closeFileUploadDrawer = () => setOpenUploadSide(false);\r\n\r\n const setUserName = (value) => {\r\n setName(value);\r\n\r\n if(!new RegExp(/^[a-zA-Z ]+$/i).test(value) || value.length === 0 || value.length > 50){\r\n setErrors({...errors, userName : {type: \"pattern\", message: \"CORE_COMMON_PROFILE_NAME_INVALID\"}});\r\n }else{\r\n setErrors({...errors, userName : null})\r\n }\r\n }\r\n\r\n const setUserEmailAddress = (value) => {\r\n setEmail(value);\r\n\r\n if(value.length && !(value.includes(\"@\") && value.includes(\".\"))){\r\n setErrors({...errors, emailAddress: {type: \"pattern\", message: \"CORE_COMMON_PROFILE_EMAIL_INVALID\"}})\r\n }else{\r\n setErrors({...errors, emailAddress : null})\r\n }\r\n }\r\n\r\n const setUserMobileNumber = (value) => {\r\n setMobileNo(value);\r\n\r\n if (userType === \"employee\" && !new RegExp(/^[6-9]{1}[0-9]{9}$/).test(value)) {\r\n setErrors({...errors, mobileNumber: {type: 'pattern', message: \"CORE_COMMON_PROFILE_MOBILE_NUMBER_INVALID\"}})\r\n }else{\r\n setErrors({...errors, mobileNumber: null});\r\n }\r\n }\r\n\r\n const setUserCurrentPassword = (value) => {\r\n setCurrentPassword(value);\r\n\r\n if (!new RegExp(/^([a-zA-Z0-9@#$%]{8,15})$/i).test(value)) {\r\n setErrors({...errors, currentPassword: {type: \"pattern\", message: \"CORE_COMMON_PROFILE_PASSWORD_INVALID\"}})\r\n }else{\r\n setErrors({...errors, currentPassword: null});\r\n }\r\n }\r\n\r\n const setUserNewPassword = (value) => {\r\n setNewPassword(value);\r\n\r\n if (!new RegExp(/^([a-zA-Z0-9@#$%]{8,15})$/i).test(value)) {\r\n setErrors({...errors, newPassword: {type: \"pattern\", message: \"CORE_COMMON_PROFILE_PASSWORD_INVALID\"}})\r\n }else{\r\n setErrors({...errors, newPassword: null});\r\n }\r\n }\r\n\r\n const setUserConfirmPassword = (value) => {\r\n setConfirmPassword(value);\r\n\r\n if (!new RegExp(/^([a-zA-Z0-9@#$%]{8,15})$/i).test(value)) {\r\n setErrors({...errors, confirmPassword: {type: \"pattern\", message: \"CORE_COMMON_PROFILE_PASSWORD_INVALID\"}})\r\n }else{\r\n setErrors({...errors, confirmPassword: null});\r\n }\r\n }\r\n\r\n const removeProfilePic = () => {\r\n setProfilePic(null);\r\n setProfileImg(null);\r\n };\r\n\r\n const showToast = (type, message, duration = 5000) => {\r\n setToast({ key: type, action: message });\r\n setTimeout(() => {\r\n setToast(null);\r\n }, duration);\r\n };\r\n\r\n const updateProfile = async () => {\r\n setLoading(true);\r\n try {\r\n const requestData = {\r\n ...userInfo,\r\n name,\r\n gender: gender?.value,\r\n emailId: email,\r\n photo: profilePic,\r\n };\r\n\r\n if (!new RegExp(/^([a-zA-Z ])*$/).test(name) || name === \"\" || name.length > 50 || name.length < 1) {\r\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_NAME_INVALID\" });\r\n }\r\n\r\n if (userType === \"employee\" && !new RegExp(/^[6-9]{1}[0-9]{9}$/).test(mobileNumber)) {\r\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_MOBILE_NUMBER_INVALID\" });\r\n }\r\n\r\n if (email.length && !(email.includes(\"@\") && email.includes(\".\"))) {\r\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_EMAIL_INVALID\" });\r\n }\r\n\r\n if (currentPassword.length || newPassword.length || confirmPassword.length) {\r\n if (newPassword !== confirmPassword) {\r\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_PASSWORD_MISMATCH\" });\r\n }\r\n\r\n if (!(currentPassword.length && newPassword.length && confirmPassword.length)) {\r\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_PASSWORD_INVALID\" });\r\n }\r\n\r\n if (!new RegExp(/^([a-zA-Z0-9@#$%]{8,15})$/i).test(newPassword) && !new RegExp(/^([a-zA-Z0-9@#$%]{8,15})$/i).test(confirmPassword)) {\r\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_PASSWORD_INVALID\" });\r\n }\r\n }\r\n\r\n const { responseInfo, user } = await Digit.UserService.updateUser(requestData, stateCode);\r\n\r\n if (responseInfo && responseInfo.status === \"200\") {\r\n const user = Digit.UserService.getUser();\r\n\r\n if (user) {\r\n Digit.UserService.setUser({\r\n ...user,\r\n info: {\r\n ...user.info,\r\n name,\r\n mobileNumber,\r\n emailId: email,\r\n permanentCity: city,\r\n },\r\n });\r\n }\r\n }\r\n\r\n if (currentPassword.length && newPassword.length && confirmPassword.length) {\r\n const requestData = {\r\n existingPassword: currentPassword,\r\n newPassword: newPassword,\r\n tenantId: tenant,\r\n type: \"EMPLOYEE\",\r\n username: userInfo?.userName,\r\n confirmPassword: confirmPassword,\r\n };\r\n\r\n if (newPassword === confirmPassword) {\r\n try {\r\n const res = await Digit.UserService.changePassword(requestData, tenant);\r\n\r\n const { responseInfo: changePasswordResponseInfo } = res;\r\n if (changePasswordResponseInfo?.status && changePasswordResponseInfo.status === \"200\") {\r\n showToast(\"success\", t(\"CORE_COMMON_PROFILE_UPDATE_SUCCESS_WITH_PASSWORD\"), 5000);\r\n } else {\r\n throw \"\";\r\n }\r\n } catch (error) {\r\n throw JSON.stringify({\r\n type: \"error\",\r\n message: error.Errors?.at(0)?.description ? error.Errors.at(0).description : \"CORE_COMMON_PROFILE_UPDATE_ERROR_WITH_PASSWORD\",\r\n });\r\n }\r\n } else {\r\n throw JSON.stringify({ type: \"error\", message: \"CORE_COMMON_PROFILE_ERROR_PASSWORD_NOT_MATCH\" });\r\n }\r\n } else if (responseInfo?.status && responseInfo.status === \"200\") {\r\n showToast(\"success\", t(\"CORE_COMMON_PROFILE_UPDATE_SUCCESS\"), 5000);\r\n }\r\n } catch (error) {\r\n const errorObj = JSON.parse(error);\r\n showToast(errorObj.type, t(errorObj.message), 5000);\r\n }\r\n\r\n setLoading(false);\r\n };\r\n\r\n let menu = [];\r\n const { data: Menu } = Digit.Hooks.pt.useGenderMDMS(stateId, \"common-masters\", \"GenderType\");\r\n Menu &&\r\n Menu.map((genderDetails) => {\r\n menu.push({ i18nKey: `PT_COMMON_GENDER_${genderDetails.code}`, code: `${genderDetails.code}`, value: `${genderDetails.code}` });\r\n });\r\n\r\n const setFileStoreId = async (fileStoreId) => {\r\n setProfilePic(fileStoreId);\r\n\r\n const thumbnails = fileStoreId ? await getThumbnails([fileStoreId], stateId) : null;\r\n\r\n setProfileImg(thumbnails?.thumbs[0]);\r\n\r\n closeFileUploadDrawer();\r\n };\r\n\r\n const getThumbnails = async (ids, tenantId) => {\r\n const res = await Digit.UploadServices.Filefetch(ids, tenantId);\r\n if (res.data.fileStoreIds && res.data.fileStoreIds.length !== 0) {\r\n return {\r\n thumbs: res.data.fileStoreIds.map((o) => o.url.split(\",\")[3]),\r\n images: res.data.fileStoreIds.map((o) => Digit.Utils.getFileUrl(o.url)),\r\n };\r\n } else {\r\n return null;\r\n }\r\n };\r\n\r\n if (loading) return <Loader></Loader>;\r\n\r\n return (\r\n <div className=\"user-profile\">\r\n <section style={{ margin: userType === \"citizen\" ? \"8px\" : \"24px\" }}>\r\n {userType === \"citizen\" ? (\r\n <BackButton></BackButton>\r\n ) : (\r\n <BreadCrumb\r\n crumbs={[\r\n {\r\n path: `/${window?.contextPath}/employee`,\r\n content: t(\"ES_COMMON_HOME\"),\r\n show: true,\r\n },\r\n {\r\n path: `/${window?.contextPath}/employee/user/profile`,\r\n content: t(\"ES_COMMON_PAGE_1\"),\r\n show: url.includes(\"/user/profile\"),\r\n },\r\n ]}\r\n ></BreadCrumb>\r\n )}\r\n </section>\r\n <div\r\n style={{\r\n display: \"flex\",\r\n flex: 1,\r\n flexDirection: windowWidth < 768 || userType === \"citizen\" ? \"column\" : \"row\",\r\n margin: userType === \"citizen\" ? \"8px\" : \"16px\",\r\n gap: userType === \"citizen\" ? \"\" : \"0 24px\",\r\n boxShadow: userType === \"citizen\" ? \"1px 1px 4px 0px rgba(0,0,0,0.2)\" : \"\",\r\n background: userType === \"citizen\" ? \"white\" : \"\",\r\n borderRadius: userType === \"citizen\" ? \"4px\" : \"\",\r\n maxWidth: userType === \"citizen\" ? \"960px\" : \"\",\r\n }}\r\n >\r\n <section\r\n style={{\r\n position: \"relative\",\r\n display: \"flex\",\r\n flex: userType === \"citizen\" ? 1 : 2.5,\r\n justifyContent: \"center\",\r\n alignItems: \"center\",\r\n maxWidth: \"100%\",\r\n height: \"376px\",\r\n borderRadius: \"4px\",\r\n boxShadow: userType === \"citizen\" ? \"\" : \"1px 1px 4px 0px rgba(0,0,0,0.2)\",\r\n border: `${userType === \"citizen\" ? \"8px\" : \"24px\"} solid #fff`,\r\n background: \"#EEEEEE\",\r\n padding: userType === \"citizen\" ? \"8px\" : \"16px\",\r\n }}\r\n >\r\n <div\r\n style={{\r\n position: \"relative\",\r\n height: userType === \"citizen\" ? \"114px\" : \"150px\",\r\n width: userType === \"citizen\" ? \"114px\" : \"150px\",\r\n margin: \"16px\",\r\n }}\r\n >\r\n <img\r\n style={{\r\n margin: \"auto\",\r\n borderRadius: \"300px\",\r\n justifyContent: \"center\",\r\n height: \"100%\",\r\n width: \"100%\",\r\n }}\r\n src={!profileImg || profileImg === \"\" ? defaultImage : profileImg}\r\n />\r\n <button style={{ position: \"absolute\", left: \"50%\", bottom: \"-24px\", transform: \"translateX(-50%)\" }} onClick={onClickAddPic}>\r\n <CameraIcon />\r\n </button>\r\n </div>\r\n </section>\r\n <section\r\n style={{\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n flex: userType === \"citizen\" ? 1 : 7.5,\r\n width: \"100%\",\r\n borderRadius: \"4px\",\r\n height: \"fit-content\",\r\n boxShadow: userType === \"citizen\" ? \"\" : \"1px 1px 4px 0px rgba(0,0,0,0.2)\",\r\n background: \"white\",\r\n padding: userType === \"citizen\" ? \"8px\" : \"24px\",\r\n paddingBottom : \"20px\",\r\n }}\r\n >\r\n {userType === \"citizen\" ? (\r\n <React.Fragment>\r\n <LabelFieldPair>\r\n <CardLabel style={editScreen ? { color: \"#B1B4B6\" } : {}}>{`${t(\"CORE_COMMON_PROFILE_NAME\")}`}*</CardLabel>\r\n <div style={{ width: \"100%\", maxWidth:\"960px\" }}>\r\n <TextInput\r\n t={t}\r\n style={{ width: \"100%\" }}\r\n type={\"text\"}\r\n isMandatory={false}\r\n name=\"name\"\r\n value={name}\r\n onChange={(e)=>setUserName(e.target.value)}\r\n {...(validation = {\r\n isRequired: true,\r\n pattern: \"^[a-zA-Z-.`' ]*$\",\r\n type: \"tel\",\r\n title: t(\"CORE_COMMON_PROFILE_NAME_ERROR_MESSAGE\"),\r\n })}\r\n disable={editScreen}\r\n />\r\n {errors?.userName && <CardLabelError> {errors?.userName?.message} </CardLabelError>}\r\n </div>\r\n </LabelFieldPair>\r\n\r\n <LabelFieldPair>\r\n <CardLabel style={editScreen ? { color: \"#B1B4B6\" } : {}}>{`${t(\"CORE_COMMON_PROFILE_GENDER\")}`}</CardLabel>\r\n <Dropdown\r\n style={{ width: \"100%\" }}\r\n className=\"form-field\"\r\n selected={gender?.length === 1 ? gender[0] : gender}\r\n disable={gender?.length === 1 || editScreen}\r\n option={menu}\r\n select={setGenderName}\r\n value={gender}\r\n optionKey=\"code\"\r\n t={t}\r\n name=\"gender\"\r\n />\r\n </LabelFieldPair>\r\n\r\n <LabelFieldPair>\r\n <CardLabel style={editScreen ? { color: \"#B1B4B6\" } : {}}>{`${t(\"CORE_COMMON_PROFILE_EMAIL\")}`}</CardLabel>\r\n <div style={{ width: \"100%\" }}>\r\n <TextInput\r\n t={t}\r\n style={{ width: \"100%\" }}\r\n type={\"email\"}\r\n isMandatory={false}\r\n optionKey=\"i18nKey\"\r\n name=\"email\"\r\n value={email}\r\n onChange={(e)=>setUserEmailAddress(e.target.value)}\r\n disable={editScreen}\r\n />\r\n {errors?.emailAddress && <CardLabelError> {errors?.emailAddress?.message} </CardLabelError>}\r\n </div>\r\n </LabelFieldPair>\r\n \r\n <button\r\n onClick={updateProfile}\r\n style={{\r\n marginTop: \"24px\",\r\n backgroundColor: \"#F47738\",\r\n width: \"100%\",\r\n height: \"40px\",\r\n color: \"white\",\r\n \r\n maxWidth : isMobile? \"100%\":\"240px\",\r\n borderBottom: \"1px solid black\",\r\n }}\r\n >\r\n {t(\"CORE_COMMON_SAVE\")}\r\n </button>\r\n </React.Fragment>\r\n ) : (\r\n <React.Fragment>\r\n <LabelFieldPair style={{ display: \"flex\" }}>\r\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>\r\n {`${t(\"CORE_COMMON_PROFILE_NAME\")}`}*\r\n </CardLabel>\r\n <div style={{width: \"100%\"}}>\r\n <TextInput\r\n t={t}\r\n type={\"text\"}\r\n isMandatory={false}\r\n name=\"name\"\r\n value={name}\r\n onChange={(e)=>setUserName(e.target.value)}\r\n placeholder=\"Enter Your Name\"\r\n {...(validation = {\r\n isRequired: true,\r\n pattern: \"^[a-zA-Z-.`' ]*$\",\r\n type: \"text\",\r\n title: t(\"CORE_COMMON_PROFILE_NAME_ERROR_MESSAGE\"),\r\n })}\r\n disable={editScreen}\r\n />\r\n {errors?.userName && <CardLabelError style={{margin: 0, padding: 0}}> {errors?.userName?.message} </CardLabelError>}\r\n </div>\r\n </LabelFieldPair>\r\n\r\n <LabelFieldPair style={{ display: \"flex\" }}>\r\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\r\n \"CORE_COMMON_PROFILE_GENDER\"\r\n )}`}</CardLabel>\r\n <Dropdown\r\n style={{ width: \"100%\" }}\r\n selected={gender?.length === 1 ? gender[0] : gender}\r\n disable={gender?.length === 1 || editScreen}\r\n option={menu}\r\n select={setGenderName}\r\n value={gender}\r\n optionKey=\"code\"\r\n t={t}\r\n name=\"gender\"\r\n />\r\n </LabelFieldPair>\r\n\r\n <LabelFieldPair style={{ display: \"flex\" }}>\r\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\r\n \"CORE_COMMON_PROFILE_CITY\"\r\n )}`}</CardLabel>\r\n <div style={{width: \"100%\"}}>\r\n <TextInput\r\n t={t}\r\n type={\"text\"}\r\n isMandatory={false}\r\n name=\"city\"\r\n value={t(city)}\r\n onChange={(e) => setCity(e.target.value)}\r\n placeholder=\"Enter Your City Name\"\r\n {...(validation = {\r\n isRequired: true,\r\n // pattern: \"^[a-zA-Z-.`' ]*$\",\r\n type: \"text\",\r\n title: t(\"CORE_COMMON_PROFILE_CITY_ERROR_MESSAGE\"),\r\n })}\r\n disable={true}\r\n />\r\n <CardLabelError></CardLabelError>\r\n </div>\r\n </LabelFieldPair>\r\n \r\n <LabelFieldPair style={{ display: \"flex\" }}>\r\n <CardLabel className=\"profile-label-margin\" style={{ width: \"300px\" }}>{`${t(\"CORE_COMMON_PROFILE_MOBILE_NUMBER\")}*`}</CardLabel>\r\n <div style={{ width: \"100%\" }}>\r\n <MobileNumber\r\n value={mobileNumber}\r\n style={{ width: \"100%\" }}\r\n name=\"mobileNumber\"\r\n placeholder=\"Enter a valid Mobile No.\"\r\n onChange={(value) => setUserMobileNumber(value)}\r\n disable={true}\r\n {...{ required: true, pattern: \"[6-9]{1}[0-9]{9}\", type: \"tel\", title: t(\"CORE_COMMON_PROFILE_MOBILE_NUMBER_INVALID\") }}\r\n />\r\n {errors?.mobileNumber && <CardLabelError style={{margin: 0, padding: 0}}> {errors?.mobileNumber?.message} </CardLabelError>}\r\n </div>\r\n </LabelFieldPair>\r\n \r\n <LabelFieldPair style={{ display: \"flex\" }}>\r\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\r\n \"CORE_COMMON_PROFILE_EMAIL\"\r\n )}`}</CardLabel>\r\n <div style={{width: \"100%\"}}>\r\n <TextInput\r\n t={t}\r\n type={\"email\"}\r\n isMandatory={false}\r\n placeholder=\"Enter a valid Email\"\r\n optionKey=\"i18nKey\"\r\n name=\"email\"\r\n value={email}\r\n onChange={(e)=>setUserEmailAddress(e.target.value)}\r\n disable={editScreen}\r\n />\r\n {errors?.emailAddress && <CardLabelError> {errors?.emailAddress?.message} </CardLabelError>}\r\n </div>\r\n </LabelFieldPair>\r\n\r\n <LabelFieldPair>\r\n <div>\r\n <a style={{ color: \"orange\", cursor: \"default\", marginBottom: \"5\", cursor: \"pointer\" }} onClick={TogleforPassword}>\r\n {t(\"CORE_COMMON_CHANGE_PASSWORD\")}\r\n </a>\r\n {changepassword ? (\r\n <div style={{ marginTop: \"10px\" }}>\r\n <LabelFieldPair style={{ display: \"flex\" }}>\r\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\r\n \"CORE_COMMON_PROFILE_CURRENT_PASSWORD\"\r\n )}`}</CardLabel>\r\n <div style={{width: \"100%\"}}>\r\n <TextInput\r\n t={t}\r\n type={\"password\"}\r\n isMandatory={false}\r\n name=\"name\"\r\n pattern=\"^([a-zA-Z0-9@#$%])+$\"\r\n onChange={(e) => setUserCurrentPassword(e.target.value)}\r\n disable={editScreen}\r\n />\r\n {errors?.currentPassword && <CardLabelError>{errors?.currentPassword?.message}</CardLabelError>}\r\n </div>\r\n </LabelFieldPair>\r\n\r\n <LabelFieldPair style={{ display: \"flex\" }}>\r\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\r\n \"CORE_COMMON_PROFILE_NEW_PASSWORD\"\r\n )}`}</CardLabel>\r\n <div style={{width: \"100%\"}}>\r\n <TextInput\r\n t={t}\r\n type={\"password\"}\r\n isMandatory={false}\r\n name=\"name\"\r\n pattern=\"^([a-zA-Z0-9@#$%])+$\"\r\n onChange={(e) => setUserNewPassword(e.target.value)}\r\n disable={editScreen}\r\n />\r\n {errors?.newPassword && <CardLabelError>{errors?.newPassword?.message}</CardLabelError>}\r\n </div>\r\n </LabelFieldPair>\r\n\r\n <LabelFieldPair style={{ display: \"flex\" }}>\r\n <CardLabel className=\"profile-label-margin\" style={editScreen ? { color: \"#B1B4B6\", width: \"300px\" } : { width: \"300px\" }}>{`${t(\r\n \"CORE_COMMON_PROFILE_CONFIRM_PASSWORD\"\r\n )}`}</CardLabel>\r\n <div style={{width: \"100%\"}}>\r\n <TextInput\r\n t={t}\r\n type={\"password\"}\r\n isMandatory={false}\r\n name=\"name\"\r\n pattern=\"^([a-zA-Z0-9@#$%])+$\"\r\n onChange={(e) => setUserConfirmPassword(e.target.value)}\r\n disable={editScreen}\r\n />\r\n {errors?.confirmPassword && <CardLabelError>{errors?.confirmPassword?.message}</CardLabelError>}\r\n </div>\r\n </LabelFieldPair>\r\n </div>\r\n ) : (\r\n \"\"\r\n )}\r\n </div>\r\n </LabelFieldPair>\r\n </React.Fragment>\r\n )}\r\n </section>\r\n </div>\r\n\r\n {userType === \"employee\" ? (\r\n <div\r\n style={{ height: \"88px\", backgroundColor: \"#FFFFFF\", display: \"flex\", justifyContent: \"flex-end\", marginTop: \"64px\", alignItems: \"center\" }}\r\n >\r\n <button\r\n onClick={updateProfile}\r\n style={{\r\n marginTop: \"24px\",\r\n backgroundColor: \"#F47738\",\r\n width: windowWidth < 768 ? \"100%\" : \"248px\",\r\n height: \"40px\",\r\n float: \"right\",\r\n margin: windowWidth < 768 ? \"0 16px\" : \"\",\r\n marginRight: windowWidth < 768 ? \"16px\" : \"31px\",\r\n color: \"white\",\r\n borderBottom: \"1px solid black\",\r\n }}\r\n >\r\n {t(\"CORE_COMMON_SAVE\")}\r\n </button>\r\n </div>\r\n ) : (\r\n \"\"\r\n )}\r\n {toast && (\r\n <Toast\r\n error={toast.key === \"error\"}\r\n label={t(toast.key === \"success\" ? `CORE_COMMON_PROFILE_UPDATE_SUCCESS` : toast.action)}\r\n onClose={() => setToast(null)}\r\n style={{ maxWidth: \"670px\" }}\r\n />\r\n )}\r\n\r\n {openUploadSlide == true ? (\r\n <UploadDrawer\r\n setProfilePic={setFileStoreId}\r\n closeDrawer={closeFileUploadDrawer}\r\n userType={userType}\r\n removeProfilePic={removeProfilePic}\r\n showToast={showToast}\r\n />\r\n ) : (\r\n \"\"\r\n )}\r\n </div>\r\n );\r\n};\r\n\r\nexport default UserProfile;\r\n","import React, { useEffect } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { Redirect, Route, Switch, useLocation, useRouteMatch, useHistory } from \"react-router-dom\";\r\nimport { AppModules } from \"../../components/AppModules\";\r\nimport ErrorBoundary from \"../../components/ErrorBoundaries\";\r\nimport TopBarSideBar from \"../../components/TopBarSideBar\";\r\nimport ChangePassword from \"./ChangePassword\";\r\nimport ForgotPassword from \"./ForgotPassword\";\r\nimport LanguageSelection from \"./LanguageSelection\";\r\nimport EmployeeLogin from \"./Login\";\r\nimport UserProfile from \"../citizen/Home/UserProfile\";\r\nimport ErrorComponent from \"../../components/ErrorComponent\";\r\n\r\nconst userScreensExempted = [\"user/profile\", \"user/error\"];\r\n\r\nconst EmployeeApp = ({\r\n stateInfo,\r\n userDetails,\r\n CITIZEN,\r\n cityDetails,\r\n mobileView,\r\n handleUserDropdownSelection,\r\n logoUrl,\r\n DSO,\r\n stateCode,\r\n modules,\r\n appTenants,\r\n sourceUrl,\r\n pathname,\r\n initData,\r\n}) => {\r\n const history = useHistory();\r\n const { t } = useTranslation();\r\n const { path } = useRouteMatch();\r\n const location = useLocation();\r\n const showLanguageChange = location?.pathname?.includes(\"language-selection\");\r\n const isUserProfile = userScreensExempted.some((url) => location?.pathname?.includes(url));\r\n useEffect(() => {\r\n Digit.UserService.setType(\"employee\");\r\n }, []);\r\n\r\n return (\r\n <div className=\"employee\">\r\n <Switch>\r\n <Route path={`${path}/user`}>\r\n {isUserProfile && (\r\n <TopBarSideBar\r\n t={t}\r\n stateInfo={stateInfo}\r\n userDetails={userDetails}\r\n CITIZEN={CITIZEN}\r\n cityDetails={cityDetails}\r\n mobileView={mobileView}\r\n handleUserDropdownSelection={handleUserDropdownSelection}\r\n logoUrl={logoUrl}\r\n showSidebar={isUserProfile ? true : false}\r\n showLanguageChange={!showLanguageChange}\r\n />\r\n )}\r\n <div\r\n className={isUserProfile ? \"grounded-container\" : \"loginContainer\"}\r\n style={\r\n isUserProfile\r\n ? { padding: 0, paddingTop: \"80px\", marginLeft: mobileView ? \"\" : \"64px\" }\r\n : { \"--banner-url\": `url(${stateInfo?.bannerUrl})`, padding: \"0px\" }\r\n }\r\n >\r\n <Switch>\r\n <Route path={`${path}/user/login`}>\r\n <EmployeeLogin />\r\n </Route>\r\n <Route path={`${path}/user/forgot-password`}>\r\n <ForgotPassword />\r\n </Route>\r\n <Route path={`${path}/user/change-password`}>\r\n <ChangePassword />\r\n </Route>\r\n <Route path={`${path}/user/profile`}>\r\n <UserProfile stateCode={stateCode} userType={\"employee\"} cityDetails={cityDetails} />\r\n </Route>\r\n <Route path={`${path}/user/error`}>\r\n <ErrorComponent\r\n initData={initData}\r\n goToHome={() => {\r\n history.push(`/${window?.contextPath}/employee`);\r\n }}\r\n />\r\n </Route>\r\n <Route path={`${path}/user/language-selection`}>\r\n <LanguageSelection />\r\n </Route>\r\n <Route>\r\n <Redirect to={`${path}/user/language-selection`} />\r\n </Route>\r\n </Switch>\r\n </div>\r\n </Route>\r\n <Route>\r\n <TopBarSideBar\r\n t={t}\r\n stateInfo={stateInfo}\r\n userDetails={userDetails}\r\n CITIZEN={CITIZEN}\r\n cityDetails={cityDetails}\r\n mobileView={mobileView}\r\n handleUserDropdownSelection={handleUserDropdownSelection}\r\n logoUrl={logoUrl}\r\n modules={modules}\r\n />\r\n <div className={`main ${DSO ? \"m-auto\" : \"\"}`}>\r\n <div className=\"employee-app-wrapper\">\r\n <ErrorBoundary initData={initData}>\r\n <AppModules stateCode={stateCode} userType=\"employee\" modules={modules} appTenants={appTenants} />\r\n </ErrorBoundary>\r\n </div>\r\n <div className=\"employee-home-footer\">\r\n <img\r\n alt=\"Powered by DIGIT\"\r\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER\")}\r\n style={{ height: \"1.1em\", cursor: \"pointer\" }}\r\n onClick={() => {\r\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\r\n }}\r\n />\r\n </div>\r\n </div>\r\n </Route>\r\n <Route>\r\n <Redirect to={`${path}/user/language-selection`} />\r\n </Route>\r\n </Switch>\r\n </div>\r\n );\r\n};\r\n\r\nexport default EmployeeApp;\r\n","import React, { useEffect } from \"react\";\r\nimport {\r\n StandaloneSearchBar,\r\n Loader,\r\n CardBasedOptions,\r\n ComplaintIcon,\r\n PTIcon,\r\n CaseIcon,\r\n DropIcon,\r\n HomeIcon,\r\n Calender,\r\n DocumentIcon,\r\n HelpIcon,\r\n WhatsNewCard,\r\n OBPSIcon,\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { CitizenSideBar } from \"../../../components/TopBarSideBar/SideBar/CitizenSideBar\";\r\nimport StaticCitizenSideBar from \"../../../components/TopBarSideBar/SideBar/StaticCitizenSideBar\";\r\n\r\nconst Home = () => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const tenantId = Digit.ULBService.getCitizenCurrentTenant(true);\r\n const { data: { stateInfo, uiHomePage } = {}, isLoading } = Digit.Hooks.useStore.getInitData();\r\n let isMobile = window.Digit.Utils.browser.isMobile();\r\n\r\n const conditionsToDisableNotificationCountTrigger = () => {\r\n if (Digit.UserService?.getUser()?.info?.type === \"EMPLOYEE\") return false;\r\n if (!Digit.UserService?.getUser()?.access_token) return false;\r\n return true;\r\n };\r\n\r\n const { data: EventsData, isLoading: EventsDataLoading } = Digit.Hooks.useEvents({\r\n tenantId,\r\n variant: \"whats-new\",\r\n config: {\r\n enabled: conditionsToDisableNotificationCountTrigger(),\r\n },\r\n });\r\n\r\n if (!tenantId) {\r\n history.push(`/${window?.contextPath}/citizen/select-language`);\r\n }\r\n\r\n const appBannerWebObj = uiHomePage?.appBannerDesktop;\r\n const appBannerMobObj = uiHomePage?.appBannerMobile;\r\n const citizenServicesObj = uiHomePage?.citizenServicesCard;\r\n const infoAndUpdatesObj = uiHomePage?.informationAndUpdatesCard;\r\n const whatsAppBannerWebObj = uiHomePage?.whatsAppBannerDesktop;\r\n const whatsAppBannerMobObj = uiHomePage?.whatsAppBannerMobile;\r\n const whatsNewSectionObj = uiHomePage?.whatsNewSection;\r\n\r\n const handleClickOnWhatsAppBanner = (obj) => {\r\n window.open(obj?.navigationUrl);\r\n };\r\n\r\n const allCitizenServicesProps = {\r\n header: t(citizenServicesObj?.headerLabel),\r\n sideOption: {\r\n name: t(citizenServicesObj?.sideOption?.name),\r\n onClick: () => history.push(citizenServicesObj?.sideOption?.navigationUrl),\r\n },\r\n options: [\r\n {\r\n name: t(citizenServicesObj?.props?.[0]?.label),\r\n Icon: <ComplaintIcon />,\r\n onClick: () => history.push(citizenServicesObj?.props?.[0]?.navigationUrl),\r\n },\r\n {\r\n name: t(citizenServicesObj?.props?.[1]?.label),\r\n Icon: <PTIcon className=\"fill-path-primary-main\" />,\r\n onClick: () => history.push(citizenServicesObj?.props?.[1]?.navigationUrl),\r\n },\r\n {\r\n name: t(citizenServicesObj?.props?.[2]?.label),\r\n Icon: <CaseIcon className=\"fill-path-primary-main\" />,\r\n onClick: () => history.push(citizenServicesObj?.props?.[2]?.navigationUrl),\r\n },\r\n // {\r\n // name: t(\"ACTION_TEST_WATER_AND_SEWERAGE\"),\r\n // Icon: <DropIcon/>,\r\n // onClick: () => history.push(`/${window?.contextPath}/citizen`)\r\n // },\r\n {\r\n name: t(citizenServicesObj?.props?.[3]?.label),\r\n Icon: <OBPSIcon />,\r\n onClick: () => history.push(citizenServicesObj?.props?.[3]?.navigationUrl),\r\n },\r\n ],\r\n styles: { display: \"flex\", flexWrap: \"wrap\", justifyContent: \"flex-start\", width: \"100%\" },\r\n };\r\n const allInfoAndUpdatesProps = {\r\n header: t(infoAndUpdatesObj?.headerLabel),\r\n sideOption: {\r\n name: t(infoAndUpdatesObj?.sideOption?.name),\r\n onClick: () => history.push(infoAndUpdatesObj?.sideOption?.navigationUrl),\r\n },\r\n options: [\r\n {\r\n name: t(infoAndUpdatesObj?.props?.[0]?.label),\r\n Icon: <HomeIcon />,\r\n onClick: () => history.push(infoAndUpdatesObj?.props?.[0]?.navigationUrl),\r\n },\r\n {\r\n name: t(infoAndUpdatesObj?.props?.[1]?.label),\r\n Icon: <Calender />,\r\n onClick: () => history.push(infoAndUpdatesObj?.props?.[1]?.navigationUrl),\r\n },\r\n {\r\n name: t(infoAndUpdatesObj?.props?.[2]?.label),\r\n Icon: <DocumentIcon />,\r\n onClick: () => history.push(infoAndUpdatesObj?.props?.[2]?.navigationUrl),\r\n },\r\n {\r\n name: t(infoAndUpdatesObj?.props?.[3]?.label),\r\n Icon: <DocumentIcon />,\r\n onClick: () => history.push(infoAndUpdatesObj?.props?.[3]?.navigationUrl),\r\n },\r\n // {\r\n // name: t(\"CS_COMMON_HELP\"),\r\n // Icon: <HelpIcon/>\r\n // }\r\n ],\r\n styles: { display: \"flex\", flexWrap: \"wrap\", justifyContent: \"flex-start\", width: \"100%\" },\r\n };\r\n\r\n return isLoading ? (\r\n <Loader />\r\n ) : (\r\n <div className=\"HomePageContainer\">\r\n {/* <div className=\"SideBarStatic\">\r\n <StaticCitizenSideBar />\r\n </div> */}\r\n <div className=\"HomePageWrapper\">\r\n {<div className=\"BannerWithSearch\">\r\n {isMobile ? <img src={appBannerMobObj?.bannerUrl} /> : <img src={appBannerWebObj?.bannerUrl} />}\r\n {/* <div className=\"Search\">\r\n <StandaloneSearchBar placeholder={t(\"CS_COMMON_SEARCH_PLACEHOLDER\")} />\r\n </div> */}\r\n <div className=\"ServicesSection\">\r\n <CardBasedOptions style={{marginTop:\"-30px\"}} {...allCitizenServicesProps} />\r\n <CardBasedOptions style={isMobile ? {} : {marginTop:\"-30px\"}} {...allInfoAndUpdatesProps} />\r\n </div>\r\n </div>}\r\n\r\n\r\n {(whatsAppBannerMobObj || whatsAppBannerWebObj) && (\r\n <div className=\"WhatsAppBanner\">\r\n {isMobile ? (\r\n <img src={whatsAppBannerMobObj?.bannerUrl} onClick={() => handleClickOnWhatsAppBanner(whatsAppBannerMobObj)} />\r\n ) : (\r\n <img src={whatsAppBannerWebObj?.bannerUrl} onClick={() => handleClickOnWhatsAppBanner(whatsAppBannerWebObj)} />\r\n )}\r\n </div>\r\n )}\r\n\r\n {conditionsToDisableNotificationCountTrigger() ? (\r\n EventsDataLoading ? (\r\n <Loader />\r\n ) : (\r\n <div className=\"WhatsNewSection\">\r\n <div className=\"headSection\">\r\n <h2>{t(whatsNewSectionObj?.headerLabel)}</h2>\r\n <p onClick={() => history.push(whatsNewSectionObj?.sideOption?.navigationUrl)}>{t(whatsNewSectionObj?.sideOption?.name)}</p>\r\n </div>\r\n <WhatsNewCard {...EventsData?.[0]} />\r\n </div>\r\n )\r\n ) : null}\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Home;\r\n","import React, { useMemo } from \"react\";\r\nimport { PageBasedInput, Loader, RadioButtons, CardHeader } from \"@egovernments/digit-ui-react-components\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useHistory } from \"react-router-dom\";\r\n\r\nconst LanguageSelection = () => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n\r\n const { data: { languages, stateInfo } = {}, isLoading } = Digit.Hooks.useStore.getInitData();\r\n const selectedLanguage = Digit.StoreData.getCurrentLanguage();\r\n\r\n const texts = useMemo(\r\n () => ({\r\n header: t(\"CS_COMMON_CHOOSE_LANGUAGE\"),\r\n submitBarLabel: t(\"CORE_COMMON_CONTINUE\"),\r\n }),\r\n [t]\r\n );\r\n\r\n const RadioButtonProps = useMemo(\r\n () => ({\r\n options: languages,\r\n optionsKey: \"label\",\r\n additionalWrapperClass: \"reverse-radio-selection-wrapper\",\r\n onSelect: (language) => Digit.LocalizationService.changeLanguage(language.value, stateInfo.code),\r\n selectedOption: languages?.filter((i) => i.value === selectedLanguage)[0],\r\n }),\r\n [selectedLanguage, languages]\r\n );\r\n\r\n function onSubmit() {\r\n history.push(`/${window?.contextPath}/citizen/select-location`);\r\n }\r\n\r\n return isLoading ? (\r\n <Loader />\r\n ) : (\r\n <div className=\"selection-card-wrapper\">\r\n <PageBasedInput texts={texts} onSubmit={onSubmit}>\r\n <CardHeader>{t(\"CS_COMMON_CHOOSE_LANGUAGE\")}</CardHeader>\r\n <RadioButtons {...RadioButtonProps} />\r\n </PageBasedInput>\r\n </div>\r\n );\r\n};\r\n\r\nexport default LanguageSelection;\r\n","import { BackButton, CardHeader, CardLabelError, PageBasedInput, SearchOnRadioButtons } from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useMemo, useState } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useHistory, useLocation } from \"react-router-dom\";\r\n\r\nconst LocationSelection = () => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const location = useLocation();\r\n const { data: cities, isLoading } = Digit.Hooks.useTenants();\r\n\r\n const [selectedCity, setSelectedCity] = useState(() => ({ code: Digit.ULBService.getCitizenCurrentTenant(true) }));\r\n const [showError, setShowError] = useState(false);\r\n\r\n const texts = useMemo(\r\n () => ({\r\n header: t(\"CS_COMMON_CHOOSE_LOCATION\"),\r\n submitBarLabel: t(\"CORE_COMMON_CONTINUE\"),\r\n }),\r\n [t]\r\n );\r\n\r\n function selectCity(city) {\r\n setSelectedCity(city);\r\n setShowError(false);\r\n }\r\n\r\n const RadioButtonProps = useMemo(() => {\r\n return {\r\n options: cities,\r\n optionsKey: \"i18nKey\",\r\n additionalWrapperClass: \"reverse-radio-selection-wrapper\",\r\n onSelect: selectCity,\r\n selectedOption: selectedCity,\r\n };\r\n }, [cities, t, selectedCity]);\r\n\r\n function onSubmit() {\r\n if (selectedCity) {\r\n Digit.SessionStorage.set(\"CITIZEN.COMMON.HOME.CITY\", selectedCity);\r\n const redirectBackTo = location.state?.redirectBackTo;\r\n if (redirectBackTo) {\r\n history.replace(redirectBackTo);\r\n } else history.push(`/${window?.contextPath}/citizen`);\r\n } else {\r\n setShowError(true);\r\n }\r\n }\r\n\r\n return isLoading ? (\r\n <loader />\r\n ) : (\r\n <div className=\"selection-card-wrapper\">\r\n <BackButton />\r\n <PageBasedInput texts={texts} onSubmit={onSubmit} className=\"location-selection-container\">\r\n <CardHeader>{t(\"CS_COMMON_CHOOSE_LOCATION\")}</CardHeader>\r\n <SearchOnRadioButtons {...RadioButtonProps} placeholder={t(\"COMMON_TABLE_SEARCH\")} />\r\n {showError ? <CardLabelError>{t(\"CS_COMMON_LOCATION_SELECTION_ERROR\")}</CardLabelError> : null}\r\n </PageBasedInput>\r\n </div>\r\n );\r\n};\r\n\r\nexport default LocationSelection;\r\n","import React, { useState } from \"react\";\r\nimport { ArrowForward } from \"@egovernments/digit-ui-react-components\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nconst FaqComponent = props => {\r\n const { question, answer, lastIndex } = props;\r\n const [isOpen, toggleOpen] = useState(false);\r\n const { t } = useTranslation();\r\n\r\n return (\r\n <div className=\"faqs border-none\" onClick={() => toggleOpen(!isOpen)}>\r\n <div className=\"faq-question\" style={{justifyContent: \"space-between\", display: \"flex\"}}>\r\n <span>\r\n {t(question)}\r\n </span>\r\n <span className={isOpen ? \"faqicon rotate\" : \"faqicon\"} style={{float: \"right\"}}>\r\n {isOpen ? <ArrowForward /> : <ArrowForward/>}\r\n </span>\r\n </div>\r\n\r\n <div \r\n className=\"faq-answer\" \r\n style={isOpen ? { display: \"block\"} : { display: \"none\" }}\r\n >\r\n <span>\r\n {t(answer)}\r\n </span>\r\n </div>\r\n {!lastIndex ? <div className=\"cs-box-border\"/> : null}\r\n </div>\r\n );\r\n};\r\n\r\nexport default FaqComponent;","import { Header, TextInput, SearchIconSvg, ArrowForward, Loader, BackButton} from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useState, Fragment, useRef, useEffect}from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport FaqComponent from \"./FaqComponent\";\r\n\r\n\r\nconst FAQsSection = ({module}) => {\r\n const user = Digit.UserService.getUser();\r\n const tenantId = user?.info?.tenantId || Digit.ULBService.getCurrentTenantId();\r\n const { t } = useTranslation();\r\n\r\n const SearchImg = () => {\r\n return <SearchIconSvg className=\"signature-img\" />;\r\n };\r\n\r\n const { isLoading, data } = Digit.Hooks.useGetFAQsJSON(Digit.ULBService.getStateId());\r\n\r\n const moduleFaqs = data?.MdmsRes[\"common-masters\"]?.faqs[0]?.[`${module}`].faqs;\r\n\r\n if(isLoading){\r\n return <Loader/>\r\n }\r\n return (\r\n <Fragment>\r\n <div className=\"faq-page\">\r\n <BackButton style={{marginLeft : \"unset\"}}></BackButton>\r\n <div style={{ marginBottom: \"15px\" }}>\r\n <Header styles={{ marginLeft: \"0px\", paddingTop: \"10px\", fontSize: \"32px\"}}>{t(\"FAQ_S\")}</Header>\r\n </div>\r\n <div className=\"faq-list\">\r\n {moduleFaqs.map((faq, i) => (\r\n <FaqComponent key={\"faq_\" + i} question={faq.question} answer={faq.answer} lastIndex={i === (moduleFaqs?.length - 1)}/>\r\n ))}\r\n </div>\r\n </div>\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default FAQsSection;","import { Header, CloseSvg, DownloadImgIcon, CustomButton, Loader, BackButton, PDFSvg, DownloadBtnCommon} from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useState, Fragment }from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\n\r\nconst HowItWorks = ({module}) => {\r\n const user = Digit.UserService.getUser();\r\n const tenantId = user?.info?.tenantId || Digit.ULBService.getCurrentTenantId();\r\n const { t } = useTranslation();\r\n const storeData = Digit.SessionStorage.get(\"initData\");\r\n const stateInfo = storeData.stateInfo;\r\n const selectedLanguage = Digit.StoreData.getCurrentLanguage();\r\n const [selected, setselected] = useState(selectedLanguage);\r\n const handleChangeLanguage = (language) => {\r\n setselected(language.value);\r\n Digit.LocalizationService.changeLanguage(language.value, stateInfo.code);\r\n };\r\n const [videoPlay, setVideoPlay] = useState(false);\r\n const [vidSrc, setVidSrc] = useState(\"\");\r\n\r\n const ViDSvg = () => (\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path 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\" fill=\"white\"/>\r\n </svg>\r\n );\r\n const onClickVideo = (vidObj) => {\r\n if(selected === \"hi_IN\"){\r\n setVidSrc(vidObj[\"hi_IN\"]);\r\n }\r\n else{\r\n setVidSrc(vidObj[\"en_IN\"]);\r\n }\r\n setVideoPlay(true);\r\n }\r\n const onClose = () => {\r\n setVideoPlay(false);\r\n }\r\n\r\n const { isLoading, data } = Digit.Hooks.useGetHowItWorksJSON(Digit.ULBService.getStateId());\r\n\r\n\r\n const mdmsConfigResult = data?.MdmsRes[\"common-masters\"]?.howItWorks[0]?.[`${module}`];\r\n const languages = \r\n [\r\n {\r\n label: \"ENGLISH\",\r\n value: \"en_IN\"\r\n },\r\n {\r\n label: \"हिंदी\",\r\n value: \"hi_IN\"\r\n }\r\n ];\r\n\r\n if(isLoading){\r\n return <Loader/>\r\n }\r\n return (\r\n <Fragment>\r\n <div className=\"how-it-works-page\">\r\n <BackButton></BackButton>\r\n <div className=\"how-it-works-page-header\">\r\n <Header>{t(\"HOW_IT_WORKS\")}</Header>\r\n </div>\r\n <div className=\"language-selector\" style={{margin: \"10px\"}}>\r\n {languages.map((language, index) => (\r\n <div className=\"language-button-container\" key={index}>\r\n <CustomButton\r\n selected={language.value === selected}\r\n text={language.label}\r\n onClick={() => handleChangeLanguage(language)}\r\n ></CustomButton>\r\n </div>\r\n ))}\r\n </div>\r\n {mdmsConfigResult.videosJson.map((videos, index) => (\r\n <div >\r\n <div className=\"WhatsNewCard\" style={{float: \"left\", position: \"relative\", width: \"100%\", marginBottom: 10}}>\r\n <div className=\"video-icon\" onClick={() => onClickVideo(videos)}>\r\n <div className=\"vid-svg\">\r\n <ViDSvg></ViDSvg>\r\n </div>\r\n </div>\r\n <div className=\"how-it-works-header-description\">\r\n <h2>{t(videos.headerLabel)}</h2>\r\n <p>{t(videos.description)}</p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n ))}\r\n <div className=\"WhatsNewCard\" style={{ position: \"relative\", width: \"100%\", marginBottom: 10, display: \"inline-block\"}}>\r\n <div className=\"how-it-works-pdf-section\">\r\n <div className=\"pdf-icon-header-desc\">\r\n <div className=\"pdf-icon\">\r\n <PDFSvg></PDFSvg>\r\n </div>\r\n <div className=\"pdf-header-desc\">\r\n <h2>{t(mdmsConfigResult.pdfHeader)}</h2>\r\n <p>{t(mdmsConfigResult.pdfDesc)}</p>\r\n </div>\r\n </div>\r\n <div className=\"download-icon\">\r\n <DownloadImgIcon/>\r\n </div>\r\n </div>\r\n </div>\r\n { videoPlay && (\r\n <div className=\"how-it-works-video-play\">\r\n <div className=\"close-button\">\r\n <CloseSvg onClick={onClose}></CloseSvg>\r\n </div>\r\n <video width={500} height={500} controls autoPlay>\r\n <source src={vidSrc} type=\"video/mp4\"></source>\r\n </video>\r\n </div>\r\n )}\r\n </div>\r\n </Fragment>\r\n );\r\n};\r\n\r\nexport default HowItWorks;","import { \r\n Card, \r\n CaseIcon,\r\n TimerIcon, \r\n RupeeSymbol, \r\n ValidityTimeIcon, \r\n WhatsappIconGreen, \r\n HelpLineIcon, \r\n ServiceCenterIcon, \r\n Loader, \r\n PTIcon, \r\n MCollectIcon, \r\n ComplaintIcon\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport React from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nconst StaticDynamicCard = ({moduleCode}) => {\r\n const { t } = useTranslation();\r\n const tenantId = Digit.ULBService.getCitizenCurrentTenant();\r\n const { isLoading: isMdmsLoading, data: mdmsData } = Digit.Hooks.useStaticData(Digit.ULBService.getStateId());\r\n const { isLoading: isSearchLoading, error, data: dynamicData, isSuccess } = Digit.Hooks.useDynamicData({ moduleCode, tenantId: tenantId , filters: {} , t});\r\n const handleClickOnWhatsApp = (obj) => {\r\n window.open(obj);\r\n };\r\n\r\n const IconComponent = ({module, styles}) => {\r\n\r\n switch(module){\r\n case 'TL':\r\n return <CaseIcon className=\"fill-path-primary-main\" styles={styles}/>;\r\n case 'PT':\r\n return <PTIcon className=\"fill-path-primary-main\" styles={styles}/>;\r\n case 'MCOLLECT':\r\n return <MCollectIcon className=\"fill-path-primary-main\" styles={styles}/>;\r\n case 'PGR':\r\n return <ComplaintIcon className=\"fill-path-primary-main\" styles={styles}/>\r\n default:\r\n return <CaseIcon className=\"fill-path-primary-main\" styles={styles}/>;\r\n }\r\n }\r\n const mdmsConfigResult = mdmsData?.MdmsRes[\"common-masters\"]?.StaticData[0]?.[`${moduleCode}`];\r\n\r\n const StaticDataIconComponentOne = ({module}) => {\r\n\r\n switch(module){\r\n case 'PT':\r\n case 'WS':\r\n return (<span className=\"timerIcon\">\r\n <TimerIcon/>\r\n </span>)\r\n default:\r\n return null\r\n }\r\n };\r\n const StaticDataIconComponentTwo = ({module}) => {\r\n\r\n switch(module){\r\n case 'PT':\r\n return (<span className=\"rupeeSymbol\">\r\n <RupeeSymbol/>\r\n </span>)\r\n case 'WS':\r\n return (<span className=\"timerIcon\">\r\n <TimerIcon/>\r\n </span>)\r\n default:\r\n return null\r\n }\r\n }\r\n const staticContent = (module) => {\r\n switch(module){\r\n case 'TL':\r\n case 'PT':\r\n case 'MCOLLECT':\r\n return {\r\n staticCommonContent: t(\"COMMON_VALIDITY\"),\r\n validity: mdmsConfigResult?.validity + (mdmsConfigResult?.validity === \"1\" ? t(\"COMMON_DAY\") : t(\"COMMON_DAYS\"))\r\n }\r\n case 'PGR':\r\n return {\r\n staticCommonContent: t(\"ACTION_TEST_COMPLAINT_TYPES\"),\r\n }\r\n case 'OBPS':\r\n return {\r\n staticCommonContent: t(\"BUILDING_PLAN_PERMIT_VALIDITY\"),\r\n validity: mdmsConfigResult?.validity + \" \" + (mdmsConfigResult?.validity === \"1\" ? t(\"COMMON_DAY\") : t(\"COMMON_DAYS\"))\r\n }\r\n default:\r\n return {\r\n staticCommonContent : \"\",\r\n }\r\n }\r\n }\r\n\r\n const staticData = (module) => {\r\n switch(module){\r\n case 'PT':\r\n return {\r\n staticDataOne : mdmsConfigResult?.staticDataOne + \" \" + t(\"COMMON_DAYS\"),\r\n staticDataOneHeader : t(\"APPLICATION_PROCESSING_TIME\"),\r\n staticDataTwo : mdmsConfigResult?.staticDataTwo,\r\n staticDataTwoHeader : t(\"APPLICATION_PROCESSING_FEE\"),\r\n }\r\n case 'WS':\r\n return {\r\n staticDataOne : \"\",\r\n staticDataOneHeader : t(\"PAY_WATER_CHARGES_BY\") + \" \"+ mdmsConfigResult?.staticDataOne + \" \"+ t(\"COMMON_DAYS\") + \" \"+ t(\"OF_BILL_GEN_TO_AVOID_LATE_FEE\"),\r\n staticDataTwo : mdmsConfigResult?.staticDataTwo + \" \" + t(\"COMMON_DAYS\"),\r\n staticDataTwoHeader : t(\"APPLICATION_PROCESSING_TIME\"),\r\n }\r\n default:\r\n return {}\r\n }\r\n }\r\n \r\n if(isMdmsLoading || isSearchLoading){\r\n return <Loader/>\r\n }\r\n return mdmsConfigResult ? (\r\n <React.Fragment>\r\n { mdmsConfigResult && mdmsConfigResult?.payViaWhatsApp ? \r\n <Card style={{margin: \"16px\", padding: \"16px\", maxWidth: \"unset\"}}>\r\n <div className=\"pay-whatsapp-card\" onClick={() => handleClickOnWhatsApp(mdmsConfigResult?.payViaWhatsApp)}>\r\n <div className=\"pay-whatsapp-text\">{t(\"PAY_VIA_WHATSAPP\")}</div>\r\n <div className=\"whatsAppIconG\">\r\n <WhatsappIconGreen />\r\n </div>\r\n </div>\r\n </Card> : null }\r\n { mdmsConfigResult && mdmsConfigResult?.helpline ?\r\n <Card style={{margin: \"16px\", padding: \"16px\", maxWidth: \"unset\"}}>\r\n <div className=\"static-home-Card\">\r\n <div className=\"static-home-Card-header\">{t(\"CALL_CENTER_HELPLINE\")}</div>\r\n <div className=\"helplineIcon\">\r\n <HelpLineIcon />\r\n </div>\r\n </div>\r\n <div className=\"call-center-card-text\">\r\n { mdmsConfigResult?.helpline?.contactOne ? <div className=\"call-center-card-content\">\r\n <a href={`tel:${mdmsConfigResult?.helpline?.contactOne}`}>{mdmsConfigResult?.helpline?.contactOne}</a>\r\n </div> : null}\r\n { mdmsConfigResult?.helpline?.contactTwo ? <div className=\"call-center-card-content\">\r\n <a href={`tel:${mdmsConfigResult?.helpline?.contactTwo}`}>{mdmsConfigResult?.helpline?.contactTwo}</a>\r\n </div> : null}\r\n </div>\r\n </Card> : null\r\n }\r\n { mdmsConfigResult && mdmsConfigResult?.serviceCenter ?\r\n <Card style={{margin: \"16px\", padding: \"16px\", maxWidth: \"unset\"}}>\r\n <div className=\"static-home-Card\">\r\n <div className=\"static-home-Card-header\">{t(\"CITIZEN_SERVICE_CENTER\")}</div>\r\n <div className=\"serviceCentrIcon\">\r\n <ServiceCenterIcon />\r\n </div>\r\n </div>\r\n <div className=\"service-center-details-card\">\r\n <div className=\"service-center-details-text\">\r\n {mdmsConfigResult?.serviceCenter}\r\n </div>\r\n </div>\r\n { mdmsConfigResult?.viewMapLocation ? <div className=\"link\">\r\n <a href={mdmsConfigResult?.viewMapLocation}>{t(\"VIEW_ON_MAP\")}</a>\r\n </div> : null}\r\n </Card> : <div/> }\r\n <Card style={{margin: \"16px\", padding: \"16px\", maxWidth: \"unset\"}}>\r\n { error || dynamicData == null || dynamicData?.dynamicDataOne === null ? (\r\n <div/>\r\n ) : (\r\n <div className=\"dynamicDataCard\">\r\n <div className=\"dynamicData\">\r\n <IconComponent module={moduleCode} styles={{width: \"24px\", height: \"24px\"}}/>\r\n <span className=\"dynamicData-content\">\r\n {dynamicData?.dynamicDataOne}\r\n </span>\r\n </div>\r\n </div> ) }\r\n { error || dynamicData == null || dynamicData?.dynamicDataTwo === null ? (\r\n <div/>\r\n ) : (\r\n <div className=\"dynamicDataCard\">\r\n <div className=\"dynamicData\">\r\n <IconComponent module={moduleCode} styles={{width: \"24px\", height: \"24px\"}}/>\r\n <span className=\"dynamicData-content\">\r\n {dynamicData?.dynamicDataTwo}\r\n </span>\r\n </div>\r\n </div>) }\r\n { mdmsConfigResult && mdmsConfigResult?.staticDataOne \r\n ? <div className=\"staticDataCard\">\r\n <div className=\"staticData\">\r\n <StaticDataIconComponentOne module={moduleCode}/>\r\n <span className=\"static-data-content\">\r\n <span className=\"static-data-content-first\" style={\r\n {\r\n marginTop: staticData(moduleCode)?.staticDataOne === \"\" ? \"8px\" : \"unset\"\r\n }\r\n }>\r\n {staticData(moduleCode)?.staticDataOneHeader}\r\n </span>\r\n <span className=\"static-data-content-second\">\r\n {`${staticData(moduleCode)?.staticDataOne}`}\r\n </span>\r\n </span>\r\n </div>\r\n </div> : <div/>}\r\n { mdmsConfigResult && mdmsConfigResult?.staticDataTwo \r\n ?\r\n <div className=\"staticDataCard\">\r\n <div className=\"staticData\">\r\n <StaticDataIconComponentTwo module={moduleCode}/>\r\n <span className=\"static-data-content\">\r\n <span className=\"static-data-content-first\">\r\n {staticData(moduleCode)?.staticDataTwoHeader}\r\n </span>\r\n <span className=\"static-data-content-second\">\r\n {staticData(moduleCode)?.staticDataTwo}\r\n </span>\r\n </span>\r\n </div>\r\n </div> : <div/> }\r\n { mdmsConfigResult && mdmsConfigResult?.validity \r\n ? <div className=\"staticDataCard\">\r\n <div className=\"staticData\">\r\n <span className=\"validityIcon\">\r\n <ValidityTimeIcon/>\r\n </span>\r\n <span className=\"static-data-content\">\r\n <span className=\"static-data-content-first\">\r\n {staticContent(moduleCode)?.staticCommonContent}\r\n </span>\r\n <span className=\"static-data-content-second\">\r\n {staticContent(moduleCode)?.validity}\r\n </span>\r\n </span>\r\n </div>\r\n </div> : <div/> }\r\n { error || dynamicData == null || !dynamicData?.staticData || dynamicData?.staticData === null ? (\r\n <div/>\r\n ) : (\r\n <div className=\"staticDataCard\">\r\n <div className=\"staticData\">\r\n { moduleCode === \"PGR\" \r\n ? <IconComponent module={moduleCode} styles={{width: \"24px\", height: \"24px\", marginLeft: \"13px\", marginTop: \"12px\"}}/>\r\n : <span className=\"validityIcon\">\r\n <ValidityTimeIcon/>\r\n </span>}\r\n <span className=\"static-data-content\">\r\n <span className=\"static-data-content-first\">\r\n {staticContent(moduleCode)?.staticCommonContent}\r\n </span>\r\n <span className=\"static-data-content-second\">\r\n {dynamicData?.staticData}\r\n </span>\r\n </span>\r\n </div>\r\n </div>)}\r\n </Card>\r\n </React.Fragment>) : <React.Fragment/>\r\n}\r\n\r\nexport default StaticDynamicCard;","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 React, { Fragment } from \"react\";\r\nimport { Controller, useWatch } from \"react-hook-form\";\r\nimport {\r\n TextInput,\r\n SubmitBar,\r\n LinkLabel,\r\n ActionBar,\r\n CloseSvg,\r\n DatePicker,\r\n CardLabelError,\r\n SearchForm,\r\n SearchField,\r\n Dropdown,\r\n Table,\r\n Card,\r\n MobileNumber,\r\n Loader,\r\n CardText,\r\n Header,\r\n} from \"@egovernments/digit-ui-react-components\";\r\nconst SearchFields = ({ register, control, reset, tenantId, t, previousPage, formState, isLoading }) => {\r\nconst isMobile = window.Digit.Utils.browser.isMobile();\r\n\r\n return (\r\n <>\r\n <SearchField className=\"pt-form-field\">\r\n <label>{t(\"AUDIT_FROM_DATE_LABEL\")}</label>\r\n <Controller\r\n render={(props) => <DatePicker date={props.value} onChange={props.onChange} />}\r\n name=\"fromDate\"\r\n control={control}\r\n />\r\n </SearchField>\r\n <SearchField className=\"pt-form-field\">\r\n <label>{t(\"AUDIT_TO_DATE_LABEL\")}</label>\r\n <Controller\r\n render={(props) => <DatePicker date={props.value} onChange={props.onChange} />}\r\n name=\"toDate\"\r\n control={control}\r\n />\r\n </SearchField>\r\n <SearchField className=\"pt-search-action-submit\">\r\n <SubmitBar style={{marginTop: isMobile? \"510px\":\"25px\", marginLeft:isMobile? \"0\":\"-30px\" ,maxWidth : isMobile? \"100%\":\"240px\",\r\n}} label={t(\"ES_COMMON_APPLY\")} submit />\r\n </SearchField>\r\n </>\r\n );\r\n};\r\nexport default SearchFields;\r\n","import React, { Fragment, useCallback, useMemo, useReducer, useState, useEffect } from \"react\";\r\nimport {\r\n CloseSvg,\r\n SearchForm,\r\n Table,\r\n Card,\r\n SearchAction,\r\n FilterAction,\r\n PopUp,\r\n DetailsCard,\r\n Loader,\r\n Toast,\r\n BackButton,\r\n Header,\r\n DownloadBtnCommon\r\n} from \"@egovernments/digit-ui-react-components\";\r\nimport SearchFormFields from \"./SearchFields\";\r\n// import { convertEpochToDateDMY } from \"../../utils\";\r\n\r\nconst MobileSearchApplication = ({ Controller, register, control, t, reset, previousPage, handleSubmit, tenantId, data, onSubmit, isLoading}) => {\r\n\r\n function activateModal(state, action) {\r\n switch (action.type) {\r\n case \"set\":\r\n return action.payload;\r\n case \"remove\":\r\n return false;\r\n default:\r\n break; }\r\n }\r\n const [tabledata,settabledata ]=useState([]);\r\n const DownloadBtn = (props) => {\r\n return (\r\n <div onClick={props.onClick}>\r\n <DownloadBtnCommon />\r\n </div>\r\n );\r\n };\r\n const handleExcelDownload = (tabData) => {\r\n if(tabData?.[0] !== undefined){\r\n return Digit.Download.Excel(tabData?.[0] , \"AuditReport\");\r\n }\r\n }; \r\n useEffect(() => {\r\n if ( data?.length >0){\r\n settabledata([\r\n \r\n data?.map((obj)=> {\r\n let returnObject={};\r\n returnObject[ t(\"AUDIT_DATE_LABEL\")]=convertEpochToDate(obj?.timestamp);\r\n returnObject[t(\"AUDIT_TIME_LABEL\")]=convertEpochToTimeInHours(obj?.timestamp);\r\n returnObject[t(\"AUDIT_DATAVIEWED_LABEL\")]=obj?.dataView[0]+','+obj?.dataView[1];\r\n returnObject[t(\"AUDIT_DATAVIEWED_BY_LABEL\")]=obj?.dataViewedBy;\r\n returnObject[t(\"AUDIT_ROLE_LABEL\")]=obj?.roles.map(obj=>obj.name).join(\",\");\r\n return {\r\n ...returnObject,\r\n }\r\n })\r\n ])\r\n }\r\n }, [data]);\r\n const convertEpochToDate = (dateEpoch) => {\r\n if (dateEpoch == null || dateEpoch == undefined || dateEpoch == \"\") {\r\n return \"NA\";\r\n }\r\n const dateFromApi = new Date(dateEpoch);\r\n let month = dateFromApi.getMonth() + 1;\r\n let day = dateFromApi.getDate();\r\n let year = dateFromApi.getFullYear();\r\n month = (month > 9 ? \"\" : \"0\") + month;\r\n day = (day > 9 ? \"\" : \"0\") + day;\r\n return `${day}/${month}/${year}`;\r\n };\r\n const convertEpochToTimeInHours = (dateEpoch) => {\r\n if (dateEpoch == null || dateEpoch == undefined || dateEpoch == \"\") {\r\n return \"NA\";\r\n }\r\n const dateFromApi = new Date(dateEpoch);\r\n let hour = dateFromApi.getHours();\r\n let min = dateFromApi.getMinutes();\r\n let period = hour > 12 ? \"PM\" : \"AM\";\r\n hour = hour > 12 ? hour - 12 : hour;\r\n hour = (hour > 9 ? \"\" : \"0\") + hour;\r\n min = (min > 9 ? \"\" : \"0\") + min;\r\n return `${hour}:${min} ${period}`;\r\n };\r\n const [currentlyActiveMobileModal, setActiveMobileModal] = useReducer(activateModal, false);\r\n \r\n const closeMobilePopupModal = () => {\r\n setActiveMobileModal({ type: \"remove\" });\r\n };\r\n \r\n const MobilePopUpCloseButton = () => (\r\n <div className=\"InboxMobilePopupCloseButtonWrapper\" onClick={closeMobilePopupModal}>\r\n <CloseSvg />\r\n </div>\r\n );\r\n const searchFormFieldsComponentProps = { Controller, register, control, t, reset, previousPage };\r\n\r\n const MobileComponentDirectory = ({ currentlyActiveMobileModal, searchFormFieldsComponentProps, tenantId, ...props }) => {\r\n const { closeMobilePopupModal } = props;\r\n switch (currentlyActiveMobileModal) {\r\n case \"SearchFormComponent\":\r\n return (\r\n <SearchForm {...props}>\r\n <MobilePopUpCloseButton />\r\n <div className=\"MobilePopupHeadingWrapper\">\r\n <h2>{t(\"PRIVACY_AUDIT_REPORT\")}:</h2>\r\n </div>\r\n <SearchFormFields {...searchFormFieldsComponentProps} {...{ closeMobilePopupModal, tenantId, t }} />\r\n {/* <SearchField className=\"submit\">\r\n <SubmitBar label={t(\"ES_COMMON_SEARCH\")} submit form=\"search-form\"/>\r\n <p onClick={onResetSearchForm}>{t(`ES_COMMON_CLEAR_ALL`)}</p>\r\n </SearchField> */}\r\n </SearchForm>\r\n );\r\n default:\r\n return <span></span>;\r\n }\r\n };\r\n const CurrentMobileModalComponent = useCallback(\r\n ({ currentlyActiveMobileModal, searchFormFieldsComponentProps, tenantId, ...props }) =>\r\n MobileComponentDirectory({ currentlyActiveMobileModal, searchFormFieldsComponentProps, tenantId, ...props }),\r\n [currentlyActiveMobileModal]\r\n );\r\n let roles = [];\r\n data?.roles?.forEach((item) => {\r\n roles.push(item?.name);\r\n});\r\n const propsMobileInboxCards = useMemo(\r\n () => {\r\n if (data?.display){\r\n return []\r\n }\r\n if(data === \"\")\r\n {\r\n return [];\r\n }\r\n return data?.map((data) => ({\r\n [t(\"AUDIT_DATE_LABEL\")]: convertEpochToDate(data.timestamp),\r\n [t(\"AUDIT_TIME_LABEL\")]: convertEpochToTimeInHours(data.timestamp),\r\n [t(\"AUDIT_DATAVIEWED_LABEL\")]: data.dataView[0]+','+data.dataView[1],\r\n [t(\"AUDIT_DATAVIEWED_BY_LABEL\")]: data.dataViewedBy,\r\n [t(\"AUDIT_ROLE_LABEL\")]: data.roles.slice(0,3)?.map((e)=>e.name).join(\",\"),\r\n }))\r\n },\r\n [data]\r\n );\r\n\r\n return (\r\n <React.Fragment>\r\n <BackButton />\r\n <div className=\"sideContent\" style={{ marginLeft:\"70%\", marginTop:\"-12%\"}}>\r\n <DownloadBtn className=\"mrlg cursorPointer\" onClick={() => handleExcelDownload(tabledata)}/>\r\n </div>\r\n <Header>{t(\"PRIVACY_AUDIT_REPORT\")}:</Header>\r\n <div className=\"searchBox\">\r\n <SearchAction\r\n text={t(\"ES_COMMON_SEARCH\")}\r\n handleActionClick={() => setActiveMobileModal({ type: \"set\", payload: \"SearchFormComponent\" })}\r\n {...{tenantId, t}} \r\n />\r\n </div>\r\n {currentlyActiveMobileModal ? (\r\n <PopUp>\r\n <CurrentMobileModalComponent\r\n onSubmit={(data) => {\r\n setActiveMobileModal({ type: \"remove\" });\r\n onSubmit(data);\r\n }}\r\n handleSubmit={handleSubmit}\r\n id=\"search-form\"\r\n className=\"rm-mb form-field-flex-one inboxPopupMobileWrapper\"\r\n {...{ searchFormFieldsComponentProps, currentlyActiveMobileModal, closeMobilePopupModal, tenantId }}\r\n />\r\n </PopUp>\r\n ) : null}\r\n {isLoading && <Loader/>}\r\n <DetailsCard\r\n {...{\r\n data: propsMobileInboxCards,\r\n }}\r\n />\r\n </React.Fragment>\r\n )\r\n }\r\n \r\n export default MobileSearchApplication ","import { BackButton, Card, Header, SearchForm, Table, Loader,DownloadBtnCommon } from \"@egovernments/digit-ui-react-components\";\r\nimport React, { useCallback, useEffect, useMemo , useState} from \"react\";\r\nimport { Controller, useForm } from \"react-hook-form\";\r\nimport { Link } from \"react-router-dom\";\r\nimport MobileSearchApplication from \"./MobileSearchApplication\";\r\nimport SearchFields from \"./SearchFields\";\r\n\r\nconst SearchApplication = ({ tenantId, t, onSubmit, data, count }) => {\r\n\r\n const initialValues = Digit.SessionStorage.get(\"AUDIT_APPLICATION_DETAIL\") || {\r\n offset: 0,\r\n limit: 5,\r\n sortOrder: \"DESC\",\r\n };\r\n const { register, control, handleSubmit, setValue, getValues, reset } = useForm({\r\n defaultValues: initialValues,\r\n });\r\n const convertEpochToDate = (dateEpoch) => {\r\n if (dateEpoch == null || dateEpoch == undefined || dateEpoch == \"\") {\r\n return \"NA\";\r\n }\r\n const dateFromApi = new Date(dateEpoch);\r\n let month = dateFromApi.getMonth() + 1;\r\n let day = dateFromApi.getDate();\r\n let year = dateFromApi.getFullYear();\r\n month = (month > 9 ? \"\" : \"0\") + month;\r\n day = (day > 9 ? \"\" : \"0\") + day;\r\n return `${day}/${month}/${year}`;\r\n };\r\n const convertEpochToTimeInHours = (dateEpoch) => {\r\n if (dateEpoch == null || dateEpoch == undefined || dateEpoch == \"\") {\r\n return \"NA\";\r\n }\r\n const dateFromApi = new Date(dateEpoch);\r\n let hour = dateFromApi.getHours();\r\n let min = dateFromApi.getMinutes();\r\n let period = hour > 12 ? \"PM\" : \"AM\";\r\n hour = hour > 12 ? hour - 12 : hour;\r\n hour = (hour > 9 ? \"\" : \"0\") + hour;\r\n min = (min > 9 ? \"\" : \"0\") + min;\r\n return `${hour}:${min} ${period}`;\r\n };\r\n const [tabledata,settabledata ]=useState([]);\r\n const DownloadBtn = (props) => {\r\n return (\r\n <div onClick={props.onClick}>\r\n <DownloadBtnCommon />\r\n </div>\r\n );\r\n };\r\n const handleExcelDownload = (tabData) => {\r\n if(tabData?.[0] !== undefined){\r\n return Digit.Download.Excel(tabData?.[0] , \"AuditReport\");\r\n }\r\n }; \r\n useEffect(() => {\r\n register(\"offset\", 0);\r\n register(\"limit\", 5);\r\n register(\"sortOrder\", \"DESC\");\r\n}, [register]);\r\nuseEffect(() => {\r\n if ( data?.length >0){\r\n settabledata([\r\n\r\n data?.map((obj)=> {\r\n let returnObject={};\r\n returnObject[ t(\"AUDIT_DATE_LABEL\")]=convertEpochToDate(obj?.timestamp);\r\n returnObject[t(\"AUDIT_TIME_LABEL\")]=convertEpochToTimeInHours(obj?.timestamp);\r\n returnObject[t(\"AUDIT_DATAVIEWED_LABEL\")]=obj?.dataView[0]+','+obj?.dataView[1];\r\n returnObject[t(\"AUDIT_DATAVIEWED_BY_LABEL\")]=obj?.dataViewedBy;\r\n returnObject[t(\"AUDIT_ROLE_LABEL\")]=obj?.roles.map(obj=>obj.name).join(\",\");\r\n return {\r\n ...returnObject,\r\n }\r\n })\r\n ])\r\n }\r\n}, [data]);\r\nconst onSort = useCallback((args) => {\r\n if (args.length === 0) return;\r\n setValue(\"sortBy\", args.id);\r\n setValue(\"sortOrder\", args.desc ? \"DESC\" : \"ASC\");\r\n}, []);\r\n\r\nfunction onPageSizeChange(e) {\r\n setValue(\"limit\", Number(e.target.value));\r\n handleSubmit(onSubmit)();\r\n}\r\n\r\nfunction nextPage() {\r\n setValue(\"offset\", getValues(\"offset\") + getValues(\"limit\"));\r\n handleSubmit(onSubmit)();\r\n}\r\nfunction previousPage() {\r\n setValue(\"offset\", getValues(\"offset\") - getValues(\"limit\"));\r\n handleSubmit(onSubmit)();\r\n}\r\nconst isMobile = window.Digit.Utils.browser.isMobile();\r\n\r\nif (isMobile) {\r\n return <MobileSearchApplication {...{ Controller, register, control, t, reset, previousPage, handleSubmit, tenantId, data, onSubmit }} />;\r\n}\r\n\r\n//need to get from workflow\r\nconst GetCell = (value) => <span className=\"cell-text\">{value}</span>;\r\nconst columns = useMemo(\r\n () => [\r\n {\r\n Header:t(\"AUDIT_DATE_LABEL\"),\r\n disableSortBy: true,\r\n accessor:( row ) => {\r\n const timestamp = row.timestamp === \"NA\" ? t(\"WS_NA\") : convertEpochToDate(row.timestamp);\r\n return GetCell(`${timestamp}`);\r\n },\r\n },\r\n {\r\n Header:t(\"AUDIT_TIME_LABEL\"),\r\n disableSortBy: true,\r\n accessor:(row) => {\r\n const timestamp = row.timestamp === \"NA\" ? t(\"WS_NA\") : convertEpochToTimeInHours(row.timestamp);\r\n return GetCell(`${timestamp}`);\r\n }, \r\n },\r\n {\r\n Header:isMobile? t(\"AUDIT_DATAVIEWED_LABEL\"):t(\"AUDIT_DATAVIEWED_PRIVACY\"),\r\n disableSortBy: true,\r\n accessor: (row) => {\r\n return GetCell(`${row?.dataView}`);\r\n }, \r\n },\r\n {\r\n Header:isMobile? t(\"AUDIT_DATAVIEWED_BY_LABEL\"):t(\"AUDIT_DATAVIEWED_BY_PRIVACY\"),\r\n disableSortBy: true,\r\n accessor:(row) => {\r\n return GetCell(`${row?.dataViewedBy}`);\r\n }, \r\n },\r\n {\r\n Header:t(\"AUDIT_ROLE_LABEL\"),\r\n disableSortBy: true,\r\n accessor: ( row ) => {\r\n return GetCell(`${row?.roles.slice(0,3)?.map((e)=>e.name)}`);\r\n }, \r\n }\r\n ],\r\n []\r\n );\r\n\r\n return (\r\n <React.Fragment>\r\n <div style={{marginRight:\"-70px\"}}> <BackButton /> </div> \r\n <div style={{marginTop:\"30px\", marginLeft:\"30px\"}}> <Header>{t(\"PRIVACY_AUDIT_REPORT\")}</Header> </div>\r\n <SearchForm className=\"audit-card\" onSubmit={onSubmit} handleSubmit={handleSubmit}>\r\n <SearchFields {...{ register, control, reset, tenantId, t, previousPage }} />\r\n </SearchForm>\r\n <div style={{marginTop:\"240px\",marginLeft:\"-55%\",maxWidth:\"80%\",marginRight:\"52px\"}} >\r\n {data?.display ? (\r\n <div style={{ marginTop: \"20x\",width:\"1025px\", marginLeft:\"25px\" ,backgroundColor: \"white\",height:\"60px\" }}>\r\n {t(data.display)\r\n .split(\"\\\\n\")\r\n .map((text, index) => (\r\n <p key={index} style={{ textAlign: \"center\" }}>\r\n {text}\r\n </p>\r\n ))}\r\n </div>\r\n ) : (\r\n data !== \"\" ? (\r\n <div style={{ backgroundColor: \"white\", marginRight:\"-30px\", marginLeft:\"30px\" }}> \r\n <div className=\"sideContent\" style={{ float:\"right\", padding:\"10px 30px\"}}>\r\n <DownloadBtn className=\"mrlg cursorPointer\" onClick={() => handleExcelDownload(tabledata)}/>\r\n </div>\r\n <Table\r\n t={t}\r\n data={data}\r\n totalRecords={count}\r\n columns={columns}\r\n getCellProps={(cellInfo) => {\r\n return {\r\n style: {\r\n minWidth: cellInfo.column.Header === t(\"ES_INBOX_APPLICATION_NO\") ? \"240px\" : \"\",\r\n padding: \"20px 18px\",\r\n fontSize: \"16px\",\r\n },\r\n };\r\n }}\r\n onPageSizeChange={onPageSizeChange}\r\n currentPage={getValues(\"offset\") / getValues(\"limit\")}\r\n onNextPage={nextPage}\r\n onPrevPage={previousPage}\r\n manualPagination={false}\r\n pageSizeLimit={getValues(\"limit\")}\r\n onSort={onSort}\r\n disableSort={false}\r\n sortParams={[{ id: getValues(\"sortBy\"), desc: getValues(\"sortOrder\") === \"DESC\" ? true : false }]}\r\n /></div>\r\n ) : (\r\n <Loader />\r\n \r\n ))}\r\n </div>\r\n </React.Fragment> );\r\n };\r\n \r\n export default SearchApplication;","import React, { useEffect, useState } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport AuditSearchApplication from \"../../components/Search\";\r\nconst Search = ({ path }) => {\r\n const { t } = useTranslation();\r\n const tenantId = Digit.ULBService.getCitizenCurrentTenant()\r\n const [payload, setPayload] = useState({});\r\n const convertDateToEpoch = (dateString, dayStartOrEnd = \"dayend\") => {\r\n //example input format : \"2018-10-02\"\r\n try {\r\n const parts = dateString.match(/(\\d{4})-(\\d{1,2})-(\\d{1,2})/);\r\n const DateObj = new Date(Date.UTC(parts[1], parts[2] - 1, parts[3]));\r\n DateObj.setMinutes(DateObj.getMinutes() + DateObj.getTimezoneOffset());\r\n if (dayStartOrEnd === \"dayend\") {\r\n DateObj.setHours(DateObj.getHours() + 24);\r\n DateObj.setSeconds(DateObj.getSeconds() - 1);\r\n }\r\n return DateObj.getTime();\r\n } catch (e) {\r\n return dateString;\r\n }\r\n };\r\n function onSubmit(_data) {\r\n Digit.SessionStorage.set(\"AUDIT_APPLICATION_DETAIL\", {\r\n offset: 0,\r\n limit: 5,\r\n sortBy: \"commencementDate\",\r\n sortOrder: \"DESC\",\r\n });\r\n const data = {\r\n ..._data,\r\n fromDate: convertDateToEpoch(_data?.fromDate),\r\n toDate: convertDateToEpoch(_data?.toDate),\r\n };\r\n \r\n setPayload(\r\n Object.keys(data)\r\n .filter((k) => data[k])\r\n .reduce((acc, key) => ({ ...acc, [key]: typeof data[key] === \"object\" ? data[key] : data[key] }), {})\r\n );\r\n }\r\n useEffect(() => {\r\n const storedPayload = Digit.SessionStorage.get(\"AUDIT_APPLICATION_DETAIL\") || {};\r\n if (storedPayload) {\r\n const data = {\r\n ...storedPayload,\r\n };\r\n \r\n setPayload(\r\n Object.keys(data)\r\n .filter((k) => data[k])\r\n .reduce((acc, key) => ({ ...acc, [key]: typeof data[key] === \"object\" ? data[key].code : data[key] }), {})\r\n );\r\n }\r\n }, []);\r\n const config = {\r\n enabled: !!(payload && Object.keys(payload).length > 0),\r\n };\r\n const newObj = { ...payload };\r\n \r\n const {\r\n isLoading,\r\n data,\r\n} = Digit.Hooks.useAudit({\r\n tenantId,\r\n filters: {\r\n ...newObj,\r\n },\r\n config,\r\n });\r\n\r\n return (\r\n <AuditSearchApplication\r\n t={t}\r\n tenantId={tenantId}\r\n onSubmit={onSubmit}\r\n data={\r\n !isLoading\r\n ? data?.ElasticSearchData?.length > 0\r\n ? data?.ElasticSearchData\r\n : { display: \"ES_COMMON_NO_DATA\" }\r\n : \"\"\r\n }\r\n count={data?.ElasticSearchData?.length}\r\n />\r\n );\r\n };\r\n export default Search;","import { BackButton, WhatsappIcon, Card, CitizenHomeCard, CitizenInfoLabel } from \"@egovernments/digit-ui-react-components\";\r\nimport React from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { Route, Switch, useRouteMatch, useHistory, Link } from \"react-router-dom\";\r\nimport ErrorBoundary from \"../../components/ErrorBoundaries\";\r\nimport { AppHome, processLinkData } from \"../../components/Home\";\r\nimport TopBarSideBar from \"../../components/TopBarSideBar\";\r\nimport StaticCitizenSideBar from \"../../components/TopBarSideBar/SideBar/StaticCitizenSideBar\";\r\nimport CitizenHome from \"./Home\";\r\nimport LanguageSelection from \"./Home/LanguageSelection\";\r\nimport LocationSelection from \"./Home/LocationSelection\";\r\nimport Login from \"./Login\";\r\nimport UserProfile from \"./Home/UserProfile\";\r\nimport ErrorComponent from \"../../components/ErrorComponent\";\r\nimport FAQsSection from \"./FAQs/FAQs\";\r\nimport HowItWorks from \"./HowItWorks/howItWorks\";\r\nimport StaticDynamicCard from \"./StaticDynamicComponent/StaticDynamicCard\";\r\nimport Search from \"./SearchApp\";\r\nconst sidebarHiddenFor = [\r\n `${window?.contextPath}/citizen/register/name`,\r\n `/${window?.contextPath}/citizen/select-language`,\r\n `/${window?.contextPath}/citizen/select-location`,\r\n `/${window?.contextPath}/citizen/login`,\r\n `/${window?.contextPath}/citizen/register/otp`,\r\n];\r\n\r\nconst getTenants = (codes, tenants) => {\r\n return tenants.filter((tenant) => codes.map((item) => item.code).includes(tenant.code));\r\n};\r\n\r\nconst Home = ({\r\n stateInfo,\r\n userDetails,\r\n CITIZEN,\r\n cityDetails,\r\n mobileView,\r\n handleUserDropdownSelection,\r\n logoUrl,\r\n DSO,\r\n stateCode,\r\n modules,\r\n appTenants,\r\n sourceUrl,\r\n pathname,\r\n initData,\r\n}) => {\r\n const { isLoading: islinkDataLoading, data: linkData, isFetched: isLinkDataFetched } = Digit.Hooks.useCustomMDMS(\r\n Digit.ULBService.getStateId(),\r\n \"ACCESSCONTROL-ACTIONS-TEST\",\r\n [\r\n {\r\n name: \"actions-test\",\r\n filter: `[?(@.url == '${window.contextPath}-card')]`,\r\n },\r\n ],\r\n {\r\n select: (data) => {\r\n const formattedData = data?.[\"ACCESSCONTROL-ACTIONS-TEST\"]?.[\"actions-test\"]\r\n ?.filter((el) => el.enabled === true)\r\n .reduce((a, b) => {\r\n a[b.parentModule] = a[b.parentModule]?.length > 0 ? [b, ...a[b.parentModule]] : [b];\r\n return a;\r\n }, {});\r\n return formattedData;\r\n },\r\n }\r\n );\r\n\r\n const classname = Digit.Hooks.fsm.useRouteSubscription(pathname);\r\n const { t } = useTranslation();\r\n const { path } = useRouteMatch();\r\n const history = useHistory();\r\n const handleClickOnWhatsApp = (obj) => {\r\n window.open(obj);\r\n };\r\n\r\n const hideSidebar = sidebarHiddenFor.some((e) => window.location.href.includes(e));\r\n const appRoutes = modules.map(({ code, tenants }, index) => {\r\n const Module = Digit.ComponentRegistryService.getComponent(`${code}Module`);\r\n return Module ? (\r\n <Route key={index} path={`${path}/${code.toLowerCase()}`}>\r\n <Module stateCode={stateCode} moduleCode={code} userType=\"citizen\" tenants={getTenants(tenants, appTenants)} />\r\n </Route>\r\n ) : null;\r\n });\r\n\r\n const ModuleLevelLinkHomePages = modules.map(({ code, bannerImage }, index) => {\r\n let Links = Digit.ComponentRegistryService.getComponent(`${code}Links`) || (() => <React.Fragment />);\r\n let mdmsDataObj = isLinkDataFetched ? processLinkData(linkData, code, t) : undefined;\r\n\r\n if (mdmsDataObj?.header === \"ACTION_TEST_WS\") {\r\n mdmsDataObj?.links.sort((a, b) => {\r\n return b.orderNumber - a.orderNumber;\r\n });\r\n }\r\n return (\r\n <React.Fragment>\r\n <Route key={index} path={`${path}/${code.toLowerCase()}-home`}>\r\n <div className=\"moduleLinkHomePage\">\r\n <img src={bannerImage || stateInfo?.bannerUrl} alt=\"noimagefound\" />\r\n <BackButton className=\"moduleLinkHomePageBackButton\" />\r\n <h1>{t(\"MODULE_\" + code.toUpperCase())}</h1>\r\n <div className=\"moduleLinkHomePageModuleLinks\">\r\n {mdmsDataObj && (\r\n <CitizenHomeCard\r\n header={t(mdmsDataObj?.header)}\r\n links={mdmsDataObj?.links}\r\n Icon={() => <span />}\r\n Info={\r\n code === \"OBPS\"\r\n ? () => (\r\n <CitizenInfoLabel\r\n style={{ margin: \"0px\", padding: \"10px\" }}\r\n info={t(\"CS_FILE_APPLICATION_INFO_LABEL\")}\r\n text={t(`BPA_CITIZEN_HOME_STAKEHOLDER_INCLUDES_INFO_LABEL`)}\r\n />\r\n )\r\n : null\r\n }\r\n isInfo={code === \"OBPS\" ? true : false}\r\n />\r\n )}\r\n {/* <Links key={index} matchPath={`/digit-ui/citizen/${code.toLowerCase()}`} userType={\"citizen\"} /> */}\r\n </div>\r\n <StaticDynamicCard moduleCode={code?.toUpperCase()}/>\r\n </div>\r\n </Route>\r\n <Route key={\"faq\" + index} path={`${path}/${code.toLowerCase()}-faq`}>\r\n <FAQsSection module={code?.toUpperCase()} />\r\n </Route>\r\n <Route key={\"hiw\" + index} path={`${path}/${code.toLowerCase()}-how-it-works`}>\r\n <HowItWorks module={code?.toUpperCase()} />\r\n </Route>\r\n </React.Fragment>\r\n );\r\n });\r\n\r\n return (\r\n <div className={classname}>\r\n <TopBarSideBar\r\n t={t}\r\n stateInfo={stateInfo}\r\n userDetails={userDetails}\r\n CITIZEN={CITIZEN}\r\n cityDetails={cityDetails}\r\n mobileView={mobileView}\r\n handleUserDropdownSelection={handleUserDropdownSelection}\r\n logoUrl={logoUrl}\r\n showSidebar={true}\r\n linkData={linkData}\r\n islinkDataLoading={islinkDataLoading}\r\n />\r\n\r\n <div className={`main center-container citizen-home-container mb-25`}>\r\n {hideSidebar ? null : (\r\n <div className=\"SideBarStatic\">\r\n <StaticCitizenSideBar linkData={linkData} islinkDataLoading={islinkDataLoading} />\r\n </div>\r\n )}\r\n\r\n <Switch>\r\n <Route exact path={path}>\r\n <CitizenHome />\r\n </Route>\r\n\r\n <Route exact path={`${path}/select-language`}>\r\n <LanguageSelection />\r\n </Route>\r\n\r\n <Route exact path={`${path}/select-location`}>\r\n <LocationSelection />\r\n </Route>\r\n <Route path={`${path}/error`}>\r\n <ErrorComponent\r\n initData={initData}\r\n goToHome={() => {\r\n history.push(`/${window?.contextPath}/citizen`);\r\n }}\r\n />\r\n </Route>\r\n <Route path={`${path}/all-services`}>\r\n <AppHome\r\n userType=\"citizen\"\r\n modules={modules}\r\n getCitizenMenu={linkData}\r\n fetchedCitizen={isLinkDataFetched}\r\n isLoading={islinkDataLoading}\r\n />\r\n </Route>\r\n\r\n <Route path={`${path}/login`}>\r\n <Login stateCode={stateCode} />\r\n </Route>\r\n\r\n <Route path={`${path}/register`}>\r\n <Login stateCode={stateCode} isUserRegistered={false} />\r\n </Route>\r\n\r\n <Route path={`${path}/user/profile`}>\r\n <UserProfile stateCode={stateCode} userType={\"citizen\"} cityDetails={cityDetails} />\r\n </Route>\r\n\r\n <Route path={`${path}/Audit`}>\r\n <Search/>\r\n </Route>\r\n <ErrorBoundary initData={initData}>\r\n {appRoutes}\r\n {ModuleLevelLinkHomePages}\r\n </ErrorBoundary>\r\n </Switch>\r\n </div>\r\n <div className=\"citizen-home-footer\" style={window.location.href.includes(\"citizen/obps\") ? { zIndex: \"-1\" } : {}}>\r\n <img\r\n alt=\"Powered by DIGIT\"\r\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER\")}\r\n style={{ height: \"1.2em\", cursor: \"pointer\" }}\r\n onClick={() => {\r\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\r\n }}\r\n />\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default Home;\r\n","import React, { useEffect } from \"react\";\r\nimport { Redirect, Route, Switch, useHistory, useLocation } from \"react-router-dom\";\r\nimport EmployeeApp from \"./pages/employee\";\r\nimport CitizenApp from \"./pages/citizen\";\r\n\r\nexport const DigitApp = ({ stateCode, modules, appTenants, logoUrl, initData }) => {\r\n const history = useHistory();\r\n const { pathname } = useLocation();\r\n const innerWidth = window.innerWidth;\r\n const cityDetails = Digit.ULBService.getCurrentUlb();\r\n const userDetails = Digit.UserService.getUser();\r\n const { data: storeData } = Digit.Hooks.useStore.getInitData();\r\n const { stateInfo } = storeData || {};\r\n const DSO = Digit.UserService.hasAccess([\"FSM_DSO\"]);\r\n let CITIZEN = userDetails?.info?.type === \"CITIZEN\" || !window.location.pathname.split(\"/\").includes(\"employee\") ? true : false;\r\n\r\n if (window.location.pathname.split(\"/\").includes(\"employee\")) CITIZEN = false;\r\n\r\n useEffect(() => {\r\n if (!pathname?.includes(\"application-details\")) {\r\n if (!pathname?.includes(\"inbox\")) {\r\n Digit.SessionStorage.del(\"fsm/inbox/searchParams\");\r\n }\r\n if (pathname?.includes(\"search\")) {\r\n Digit.SessionStorage.del(\"fsm/search/searchParams\");\r\n }\r\n }\r\n if (!pathname?.includes(\"dss\")) {\r\n Digit.SessionStorage.del(\"DSS_FILTERS\");\r\n }\r\n if (pathname?.toString() === `/${window?.contextPath}/employee`) {\r\n Digit.SessionStorage.del(\"SEARCH_APPLICATION_DETAIL\");\r\n Digit.SessionStorage.del(\"WS_EDIT_APPLICATION_DETAILS\");\r\n }\r\n if (pathname?.toString() === `/${window?.contextPath}/citizen` || pathname?.toString() === `/${window?.contextPath}/employee`) {\r\n Digit.SessionStorage.del(\"WS_DISCONNECTION\");\r\n }\r\n }, [pathname]);\r\n\r\n history.listen(() => {\r\n window?.scrollTo({ top: 0, left: 0, behavior: \"smooth\" });\r\n });\r\n\r\n const handleUserDropdownSelection = (option) => {\r\n option.func();\r\n };\r\n\r\n const mobileView = innerWidth <= 640;\r\n let sourceUrl = `${window.location.origin}/citizen`;\r\n const commonProps = {\r\n stateInfo,\r\n userDetails,\r\n CITIZEN,\r\n cityDetails,\r\n mobileView,\r\n handleUserDropdownSelection,\r\n logoUrl,\r\n DSO,\r\n stateCode,\r\n modules,\r\n appTenants,\r\n sourceUrl,\r\n pathname,\r\n initData,\r\n };\r\n return (\r\n <Switch>\r\n <Route path={`/${window?.contextPath}/employee`}>\r\n <EmployeeApp {...commonProps} />\r\n </Route>\r\n <Route path={`/${window?.contextPath}/citizen`}>\r\n <CitizenApp {...commonProps} />\r\n </Route>\r\n <Route>\r\n <Redirect to={`/${window?.contextPath}/citizen`} />\r\n </Route>\r\n </Switch>\r\n );\r\n};\r\n","export const commonReducer = (defaultData) => (state = defaultData, action) => {\r\n switch (action.type) {\r\n case \"LANGUAGE_SELECT\":\r\n return { ...state, selectedLanguage: action.payload };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { createStore, combineReducers, compose, applyMiddleware } from \"redux\";\r\nimport thunk from \"redux-thunk\";\r\nimport { commonReducer } from \"./reducers\";\r\n\r\nconst getRootReducer = (defaultStore, moduleReducers) =>\r\n combineReducers({\r\n common: commonReducer(defaultStore),\r\n ...moduleReducers,\r\n });\r\n\r\nconst middleware = [thunk];\r\n\r\nconst composeEnhancers =\r\n typeof window === \"object\" && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ ? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({}) : compose;\r\n\r\nconst enhancer = composeEnhancers(\r\n applyMiddleware(...middleware)\r\n // other store enhancers if any\r\n);\r\n\r\nconst getStore = (defaultStore, moduleReducers = {}) => {\r\n return createStore(getRootReducer(defaultStore, moduleReducers), enhancer);\r\n};\r\nexport default getStore;\r\n","import React from \"react\";\r\nimport { QueryClient, QueryClientProvider } from \"react-query\";\r\nimport { Provider } from \"react-redux\";\r\nimport { BrowserRouter as Router } from \"react-router-dom\";\r\nimport { getI18n } from \"react-i18next\";\r\nimport { Body, Loader } from \"@egovernments/digit-ui-react-components\";\r\nimport { DigitApp } from \"./App\";\r\nimport SelectOtp from \"./pages/citizen/Login/SelectOtp\";\r\n\r\nimport getStore from \"./redux/store\";\r\nimport ErrorBoundary from \"./components/ErrorBoundaries\";\r\nimport { useState } from \"react\";\r\n\r\nconst DigitUIWrapper = ({ stateCode, enabledModules, moduleReducers }) => {\r\n const { isLoading, data: initData } = Digit.Hooks.useInitStore(stateCode, enabledModules);\r\n if (isLoading) {\r\n return <Loader page={true} />;\r\n }\r\n\r\n const i18n = getI18n();\r\n return (\r\n <Provider store={getStore(initData, moduleReducers(initData))}>\r\n <Router>\r\n <Body>\r\n <DigitApp\r\n initData={initData}\r\n stateCode={stateCode}\r\n modules={initData?.modules}\r\n appTenants={initData.tenants}\r\n logoUrl={initData?.stateInfo?.logoUrl}\r\n />\r\n </Body>\r\n </Router>\r\n </Provider>\r\n );\r\n};\r\n\r\nexport const DigitUI = ({ stateCode, registry, enabledModules, moduleReducers }) => {\r\n const [privacy, setPrivacy] = useState(Digit.Utils.getPrivacyObject() || {});\r\n const userType = Digit.UserService.getType();\r\n const queryClient = new QueryClient({\r\n defaultOptions: {\r\n queries: {\r\n staleTime: 15 * 60 * 1000,\r\n cacheTime: 50 * 60 * 1000,\r\n retryDelay: (attemptIndex) => Infinity,\r\n /*\r\n enable this to have auto retry incase of failure\r\n retryDelay: attemptIndex => Math.min(1000 * 3 ** attemptIndex, 60000)\r\n */\r\n },\r\n },\r\n });\r\n\r\n const ComponentProvider = Digit.Contexts.ComponentProvider;\r\n const PrivacyProvider = Digit.Contexts.PrivacyProvider;\r\n\r\n const DSO = Digit.UserService.hasAccess([\"FSM_DSO\"]);\r\n\r\n return (\r\n <div>\r\n <ErrorBoundary>\r\n <QueryClientProvider client={queryClient}>\r\n <ComponentProvider.Provider value={registry}>\r\n <PrivacyProvider.Provider\r\n value={{\r\n privacy: privacy?.[window.location.pathname],\r\n resetPrivacy: (_data) => {\r\n Digit.Utils.setPrivacyObject({});\r\n setPrivacy({});\r\n },\r\n getPrivacy: () => {\r\n const privacyObj = Digit.Utils.getPrivacyObject();\r\n setPrivacy(privacyObj);\r\n return privacyObj;\r\n },\r\n /* Descoped method to update privacy object */\r\n updatePrivacyDescoped: (_data) => {\r\n const privacyObj = Digit.Utils.getAllPrivacyObject();\r\n const newObj = { ...privacyObj, [window.location.pathname]: _data };\r\n Digit.Utils.setPrivacyObject({ ...newObj });\r\n setPrivacy(privacyObj?.[window.location.pathname] || {});\r\n },\r\n /**\r\n * Main Method to update the privacy object anywhere in the application\r\n *\r\n * @author jagankumar-egov\r\n *\r\n * Feature :: Privacy\r\n *\r\n * @example\r\n * const { privacy , updatePrivacy } = Digit.Hooks.usePrivacyContext();\r\n */\r\n updatePrivacy: (uuid, fieldName) => {\r\n setPrivacy(Digit.Utils.updatePrivacy(uuid, fieldName) || {});\r\n },\r\n }}\r\n >\r\n <DigitUIWrapper stateCode={stateCode} enabledModules={enabledModules} moduleReducers={moduleReducers} />\r\n </PrivacyProvider.Provider>\r\n </ComponentProvider.Provider>\r\n </QueryClientProvider>\r\n </ErrorBoundary>\r\n </div>\r\n );\r\n};\r\n\r\nconst componentsToRegister = {\r\n SelectOtp,\r\n};\r\n\r\nexport const initCoreComponents = () => {\r\n Object.entries(componentsToRegister).forEach(([key, value]) => {\r\n Digit.ComponentRegistryService.setComponent(key, value);\r\n });\r\n};\r\n"],"names":["processLinkData","newData","code","t","obj","map","link","i18nKey","newObj","links","reverse","header","Digit","Utils","locale","getTransformedLocale","iconName","roleBasedLoginRoutes","role","from","window","contextPath","dashoardLink","loginLink","UserService","hasAccess","push","state","iconSelector","React","PTIcon","WSICon","FSMIcon","MCollectIcon","PGRIcon","TLIcon","OBPSIcon","BillsIcon","CitizenHome","modules","getCitizenMenu","fetchedCitizen","isLoading","paymentModule","filter","moduleArr","moduleArray","useTranslation","Loader","BackButton","mod","index","mdmsDataObj","undefined","length","CitizenHomeCard","ele","sort","x","y","orderNumber","CitizenInfoLabel","margin","padding","EmployeeHome","Card","ComponentRegistryService","getComponent","AppHome","userType","_Pact","prototype","then","onFulfilled","onRejected","result","s","callback","_settle","v","e","o","_this","value","pact","bind","observer","_isSettledPact","thenable","_forTo","array","body","check","i","reject","_cycle","_iteratorSymbol","Symbol","iterator","_forOf","target","step","next","done","return","_fixup","TypeError","values","_asyncIteratorSymbol","asyncIterator","_catch","recover","_finallyRethrows","finalizer","loginSteps","texts","cardText","nextText","submitBarLabel","inputs","label","type","name","error","validation","required","minLength","maxLength","pattern","SelectMobileNumber","onSelect","showRegisterLink","mobileNumber","onMobileChange","config","canSubmit","FormStep","useInterval","delay","savedCallback","useRef","useEffect","current","tick","timer","setInterval","clearInterval","SelectOtp","otp","onOtpChange","onResend","useState","timeLeft","setTimeLeft","handleResendOtp","Fragment","OTPInput","CardText","CardLabelError","SelectName","isDisabled","TYPE_REGISTER","TYPE_LOGIN","DEFAULT_REDIRECT_URL","setCitizenDetail","userObject","token","tenantId","JSON","parse","sessionStorage","getItem","selectedLanguage","localStorage","setItem","stringify","getFromLocation","searchParams","Login","stateCode","isUserRegistered","location","useLocation","useRouteMatch","path","history","useHistory","user","setUser","setError","isOtpValid","setIsOtpValid","data","params","setParmas","errorTO","setErrorTO","Hooks","useQueryParams","canSubmitName","setCanSubmitName","canSubmitOtp","setCanSubmitOtp","canSubmitNo","setCanSubmitNo","errorTimeout","clearTimeout","setTimeout","SessionStorage","set","info","access_token","redirectPath","ULBService","getCitizenCurrentTenant","replace","redirectBackTo","stepItems","useMemo","key","getUserType","getType","handleOtpChange","handleMobileChange","event","selectMobileNumber","sendOtp","res","err","selectName","selectOtp","requestData","username","password","authenticate","ResponseInfo","UserRequest","tokens","roleInfo","roles","find","userRole","globalConfigs","getConfig","getStateId","otpReference","registerUser","resendOtp","Switch","AppContainer","Route","Toast","loginConfig","submitButtonLabel","secondaryButtonLabel","b","for","c","d","f","g","h","k","l","m","n","p","q","r","w","z","a","u","$$typeof","A","process","env","NODE_ENV","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","console","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isMemo","isPortal","isProfiler","isStrictMode","isSuspense","exports","module","require$$0","require$$1","getOwnPropertySymbols","Object","hasOwnProperty","propIsEnumerable","propertyIsEnumerable","toObject","val","shouldUseNative","assign","test1","String","getOwnPropertyNames","test2","fromCharCode","order2","join","test3","split","forEach","letter","keys","source","to","symbols","arguments","call","ReactPropTypesSecret","Function","printWarning","loggedTypeFailures","has","text","message","Error","checkPropTypes","typeSpecs","componentName","getStack","typeSpecName","ex","stack","resetWarningCache","emptyFunctionThatReturnsNull","isValidElement","throwOnDirectAccess","ITERATOR_SYMBOL","FAUX_ITERATOR_SYMBOL","getIteratorFn","maybeIterable","iteratorFn","ANONYMOUS","ReactPropTypes","createPrimitiveTypeChecker","bigint","bool","func","number","string","symbol","any","createAnyTypeChecker","arrayOf","createArrayOfTypeChecker","element","createElementTypeChecker","elementType","createElementTypeTypeChecker","instanceOf","createInstanceTypeChecker","node","createNodeChecker","objectOf","createObjectOfTypeChecker","oneOf","createEnumTypeChecker","oneOfType","createUnionTypeChecker","shape","createShapeTypeChecker","exact","createStrictShapeTypeChecker","is","PropTypeError","createChainableTypeChecker","validate","manualPropTypeCallCache","manualPropTypeWarningCount","checkType","isRequired","props","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","RegExp","Date","constructor","PropTypes","emptyFunction","emptyFunctionWithReset","shim","getShim","require$$2","Background","children","Header","useStore","getInitData","storeData","stateInfo","logoUrl","toUpperCase","setEmployeeDetail","propsConfig","useTenants","cities","isStoreLoading","showToast","setShowToast","disable","setDisable","filteredRoles","get","href","includes","decodeURIComponent","onLogin","city","alert","response","error_description","closeToast","onForgotPassword","userId","populators","isMandatory","customProps","component","Dropdown","onChange","borderBottom","FormComposer","textAlign","minWidth","maxWidth","width","backgroundColor","cursor","open","focus","propTypes","loginParams","defaultProps","EmployeeLogin","LoginComponent","ChangePasswordComponent","mobile_number","setOtp","setType","onResendOTP","onChangePassword","newPassword","confirmPassword","changePassword","navigateToLogin","fields","CardSubHeader","EmployeeChangePassword","description","ForgotPassword","componentInFront","EmployeeForgotPassword","ForgotPasswordComponent","LanguageSelection","languages","StoreData","getCurrentLanguage","selected","setselected","handleChangeLanguage","language","LocalizationService","changeLanguage","handleSubmit","justifyContent","marginBottom","CustomButton","SubmitBar","getTenants","codes","tenants","tenant","item","AppModules","appTenants","ComponentProvider","Contexts","getUser","Redirect","pathname","search","appRoutes","Module","toLowerCase","ChangePassword","ErrorConfig","imgUrl","infoMessage","buttonInfo","maintenance","notfound","ErrorComponent","goToHome","Redircter","ErrorBoundary","errorStack","hasError","getDerivedStateFromError","componentDidCatch","errorInfo","setState","render","initData","Component","stringReplaceAll","str","searcher","replaceWith","ChangeCity","prop","dropDownData","setDropDownData","selectCityData","setSelectCityData","selectedCities","handleChangeCity","loggedInData","reload","userloggedValues","teantsArray","filteredArray","unique","ar","indexOf","uniCode","select","mobileView","color","cityValue","ChangeLanguage","isDropdown","dropdown","TextToImg","toggleMenu","TopBar","toggleSidebar","isSidebarOpen","handleLogout","userDetails","CITIZEN","cityDetails","userOptions","handleUserDropdownSelection","showLanguageChange","profilePic","setProfilePic","getCurrentTenantId","uuid","userSearch","usersResponse","thumbs","photo","at","CitizenHomePageTenantId","conditionsToDisableNotificationCountTrigger","useNotificationCount","enabled","unreadNotificationCount","unreadCount","notificationCountLoaded","isSuccess","updateSidebar","clikOusideFired","onNotificationIconClick","urlsToDisableNotificationIcon","TopBarComponent","logoUrlWhite","loggedin","Hamburger","logoId","statelogo","display","alignItems","ulbGrade","fontSize","right","overflow","userInfo","height","borderRadius","SideBarMenu","closeSidebar","redirectToLoginPage","isEmployee","icon","onClick","action","id","LogoutIcon","Heading","Close","CloseBtn","isMobileView","CloseSvg","LogoutDialog","onCancel","onDismiss","mobileDeviceWidth","innerWidth","setIsMobileView","onResize","addEventListener","Modal","maxHeight","position","top","left","transform","flex","bottom","paddingTop","marginLeft","marginRight","defaultImage","Profile","stateName","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","contactNumber","localeCompare","sidebar","splice","sidebarURL","pointerzevents","flexDirection","zIndex","objectFit","objectPosition","PoweredBy","CitizenSideBar","isOpen","onLogout","setSearch","useAccessControl","redirectUrl","configEmployeeSideBar","actions","url","displayName","getSingleDisplayName","getParentDisplayName","navigationURL","moduleName","ob","indx","findIndex","home","comp","part","c1","c2","concat","NavBar","SubMenu","subnav","setSubnav","showSubnav","announcement","ComplaintIcon","business","BPAHomeIcon","store","assignment","receipt","ReceiptIcon","PersonIcon","DocumentIconSolid","DropIcon","CollectionsBookmarIcons","FinanceChartIcon","edcr","collections","getModuleName","appendTranslate","trimModuleName","substring","getOrigin","origin","ArrowVectorDown","ArrowForward","getChildName","EmployeeSideBar","sidebarRef","style","collapseNav","expandNav","querySelectorAll","splitKeyValue","homeURL","unshift","renderSearch","SearchIcon","SideBar","TopBarSideBar","showSidebar","userProfile","UploadDrawer","closeDrawer","removeProfilePic","uploadedFile","setUploadedFile","file","setFile","selectfile","files","removeimg","onOverlayBodyClick","size","UploadServices","Filestorage","fileStoreId","gap","GalleryIcon","RemoveIcon","UserProfile","stateId","setUserDetails","setName","email","setEmail","gender","setGender","permanentCity","setCity","setMobileNo","profileImg","setProfileImg","openUploadSlide","setOpenUploadSide","changepassword","setChangepassword","currentPassword","setCurrentPassword","setNewPassword","setConfirmPassword","toast","setToast","loading","setLoading","windowWidth","setWindowWidth","errors","setErrors","getUserInfo","removeEventListener","editScreen","onClickAddPic","TogleforPassword","setGenderName","closeFileUploadDrawer","setUserName","test","userName","setUserEmailAddress","emailAddress","setUserMobileNumber","setUserCurrentPassword","setUserNewPassword","setUserConfirmPassword","duration","updateProfile","updateUser","responseInfo","status","existingPassword","changePasswordResponseInfo","Errors","errorObj","menu","pt","useGenderMDMS","Menu","genderDetails","setFileStoreId","thumbnails","getThumbnails","ids","Filefetch","fileStoreIds","images","getFileUrl","BreadCrumb","content","show","boxShadow","background","border","CameraIcon","paddingBottom","LabelFieldPair","CardLabel","TextInput","title","MobileNumber","float","userScreensExempted","EmployeeApp","DSO","sourceUrl","isUserProfile","some","bannerUrl","Home","uiHomePage","useEvents","variant","EventsData","EventsDataLoading","appBannerWebObj","appBannerDesktop","appBannerMobObj","appBannerMobile","citizenServicesObj","citizenServicesCard","infoAndUpdatesObj","informationAndUpdatesCard","whatsAppBannerWebObj","whatsAppBannerDesktop","whatsAppBannerMobObj","whatsAppBannerMobile","whatsNewSectionObj","whatsNewSection","handleClickOnWhatsAppBanner","navigationUrl","allCitizenServicesProps","headerLabel","sideOption","options","Icon","styles","flexWrap","allInfoAndUpdatesProps","Calender","DocumentIcon","CardBasedOptions","WhatsNewCard","RadioButtonProps","optionsKey","additionalWrapperClass","selectedOption","onSubmit","PageBasedInput","CardHeader","RadioButtons","LocationSelection","selectedCity","setSelectedCity","showError","setShowError","selectCity","SearchOnRadioButtons","FaqComponent","question","answer","lastIndex","toggleOpen","FAQsSection","useGetFAQsJSON","moduleFaqs","MdmsRes","faqs","faq","HowItWorks","videoPlay","setVideoPlay","vidSrc","setVidSrc","ViDSvg","onClickVideo","vidObj","onClose","useGetHowItWorksJSON","mdmsConfigResult","howItWorks","videosJson","videos","PDFSvg","pdfHeader","pdfDesc","DownloadImgIcon","StaticDynamicCard","moduleCode","useStaticData","isMdmsLoading","mdmsData","useDynamicData","filters","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","isHTMLElement","HTMLElement","SearchFields","control","reset","SearchField","DatePicker","MobileSearchApplication","Controller","register","previousPage","activateModal","payload","tabledata","settabledata","DownloadBtn","DownloadBtnCommon","handleExcelDownload","tabData","Download","Excel","returnObject","convertEpochToDate","timestamp","convertEpochToTimeInHours","dataView","dataViewedBy","dateEpoch","dateFromApi","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","Table","cellInfo","column","Search","setPayload","convertDateToEpoch","dateString","dayStartOrEnd","parts","match","DateObj","UTC","setMinutes","getTimezoneOffset","setHours","setSeconds","getSeconds","getTime","_data","sortBy","fromDate","toDate","reduce","acc","storedPayload","useAudit","AuditSearchApplication","ElasticSearchData","sidebarHiddenFor","_window","useCustomMDMS","formattedData","el","parentModule","isLinkDataFetched","classname","fsm","useRouteSubscription","hideSidebar","ModuleLevelLinkHomePages","bannerImage","Links","DigitApp","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","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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"}
|