@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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.modern.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","CitizenHome","modules","getCitizenMenu","fetchedCitizen","isLoading","paymentModule","filter","moduleArr","moduleArray","useTranslation","mod","index","mdmsDataObj","undefined","length","ele","sort","x","y","orderNumber","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","useInterval","delay","savedCallback","useRef","useEffect","current","tick","timer","setInterval","clearInterval","SelectOtp","otp","onOtpChange","onResend","useState","timeLeft","setTimeLeft","handleResendOtp","Fragment","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","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","onChange","borderBottom","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","EmployeeChangePassword","description","ForgotPassword","componentInFront","EmployeeForgotPassword","ForgotPasswordComponent","LanguageSelection","languages","StoreData","getCurrentLanguage","selected","setselected","handleChangeLanguage","language","LocalizationService","changeLanguage","handleSubmit","justifyContent","marginBottom","getTenants","codes","tenants","tenant","item","AppModules","appTenants","ComponentProvider","Contexts","getUser","pathname","search","appRoutes","Module","toLowerCase","ChangePassword","ErrorConfig","imgUrl","infoMessage","buttonInfo","maintenance","notfound","ErrorComponent","goToHome","Redircter","ErrorBoundary","errorStack","hasError","getDerivedStateFromError","componentDidCatch","errorInfo","setState","render","initData","React","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","logoId","statelogo","display","alignItems","ulbGrade","fontSize","right","overflow","userInfo","height","borderRadius","SideBarMenu","closeSidebar","redirectToLoginPage","isEmployee","icon","onClick","action","id","Heading","Close","CloseBtn","isMobileView","LogoutDialog","onCancel","onDismiss","mobileDeviceWidth","innerWidth","setIsMobileView","onResize","addEventListener","maxHeight","position","top","left","transform","flex","bottom","paddingTop","marginLeft","marginRight","defaultImage","Profile","stateName","emailId","IconsObject","CommonPTIcon","OBPSIcon","propertyIcon","TLIcon","PGRIcon","FSMIcon","WSIcon","MCollectIcon","BillsIcon","BirthIcon","DeathIcon","FirenocIcon","HomeIcon","EditPencilIcon","LogoutIcon","Phone","StaticCitizenSideBar","linkData","islinkDataLoading","isFetched","isMobile","browser","showDialog","setShowDialog","handleOnSubmit","logout","handleOnCancel","showProfilePage","menuItems","MenuItem","leftIconArray","leftIcon","itemComponent","Item","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","SubMenu","subnav","setSubnav","showSubnav","announcement","business","store","assignment","receipt","edcr","collections","getModuleName","appendTranslate","trimModuleName","substring","getOrigin","origin","getChildName","EmployeeSideBar","sidebarRef","style","collapseNav","expandNav","querySelectorAll","splitKeyValue","homeURL","unshift","renderSearch","SideBar","TopBarSideBar","showSidebar","userProfile","UploadDrawer","closeDrawer","removeProfilePic","uploadedFile","setUploadedFile","file","setFile","selectfile","files","removeimg","onOverlayBodyClick","size","UploadServices","Filestorage","fileStoreId","gap","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","content","show","boxShadow","background","border","paddingBottom","title","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","RadioButtonProps","optionsKey","additionalWrapperClass","selectedOption","onSubmit","LocationSelection","selectedCity","setSelectedCity","showError","setShowError","selectCity","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","pdfHeader","pdfDesc","StaticDynamicCard","moduleCode","useStaticData","isMdmsLoading","mdmsData","useDynamicData","filters","isSearchLoading","dynamicData","handleClickOnWhatsApp","IconComponent","StaticData","StaticDataIconComponentOne","StaticDataIconComponentTwo","staticContent","staticCommonContent","validity","staticData","staticDataOne","staticDataOneHeader","staticDataTwo","staticDataTwoHeader","payViaWhatsApp","helpline","contactOne","contactTwo","serviceCenter","viewMapLocation","dynamicDataOne","dynamicDataTwo","isHTMLElement","HTMLElement","SearchFields","control","reset","MobileSearchApplication","Controller","register","previousPage","activateModal","payload","tabledata","settabledata","DownloadBtn","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","SearchFormFields","CurrentMobileModalComponent","useCallback","propsMobileInboxCards","slice","SearchApplication","count","initialValues","offset","limit","sortOrder","useForm","defaultValues","setValue","getValues","onSort","args","desc","onPageSizeChange","Number","nextPage","GetCell","columns","disableSortBy","accessor","row","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","Router","DigitUI","registry","getPrivacyObject","privacy","setPrivacy","queryClient","QueryClient","defaultOptions","queries","staleTime","cacheTime","retryDelay","attemptIndex","Infinity","PrivacyProvider","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.modern.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","CitizenHome","modules","getCitizenMenu","fetchedCitizen","isLoading","paymentModule","filter","moduleArr","moduleArray","useTranslation","mod","index","mdmsDataObj","undefined","length","ele","sort","x","y","orderNumber","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","useInterval","delay","savedCallback","useRef","useEffect","current","tick","timer","setInterval","clearInterval","SelectOtp","otp","onOtpChange","onResend","useState","timeLeft","setTimeLeft","handleResendOtp","Fragment","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","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","onChange","borderBottom","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","EmployeeChangePassword","description","ForgotPassword","componentInFront","EmployeeForgotPassword","ForgotPasswordComponent","LanguageSelection","languages","StoreData","getCurrentLanguage","selected","setselected","handleChangeLanguage","language","LocalizationService","changeLanguage","handleSubmit","justifyContent","marginBottom","getTenants","codes","tenants","tenant","item","AppModules","appTenants","ComponentProvider","Contexts","getUser","pathname","search","appRoutes","Module","toLowerCase","ChangePassword","ErrorConfig","imgUrl","infoMessage","buttonInfo","maintenance","notfound","ErrorComponent","goToHome","Redircter","ErrorBoundary","errorStack","hasError","getDerivedStateFromError","componentDidCatch","errorInfo","setState","render","initData","React","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","logoId","statelogo","display","alignItems","ulbGrade","fontSize","right","overflow","userInfo","height","borderRadius","SideBarMenu","closeSidebar","redirectToLoginPage","isEmployee","icon","onClick","action","id","Heading","Close","CloseBtn","isMobileView","LogoutDialog","onCancel","onDismiss","mobileDeviceWidth","innerWidth","setIsMobileView","onResize","addEventListener","maxHeight","position","top","left","transform","flex","bottom","paddingTop","marginLeft","marginRight","defaultImage","Profile","stateName","emailId","IconsObject","CommonPTIcon","OBPSIcon","propertyIcon","TLIcon","PGRIcon","FSMIcon","WSIcon","MCollectIcon","BillsIcon","BirthIcon","DeathIcon","FirenocIcon","HomeIcon","EditPencilIcon","LogoutIcon","Phone","StaticCitizenSideBar","linkData","islinkDataLoading","isFetched","isMobile","browser","showDialog","setShowDialog","handleOnSubmit","logout","handleOnCancel","showProfilePage","menuItems","MenuItem","leftIconArray","leftIcon","itemComponent","Item","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","SubMenu","subnav","setSubnav","showSubnav","announcement","business","store","assignment","receipt","edcr","collections","getModuleName","appendTranslate","trimModuleName","substring","getOrigin","origin","getChildName","EmployeeSideBar","sidebarRef","style","collapseNav","expandNav","querySelectorAll","splitKeyValue","homeURL","unshift","renderSearch","SideBar","TopBarSideBar","showSidebar","userProfile","UploadDrawer","closeDrawer","removeProfilePic","uploadedFile","setUploadedFile","file","setFile","selectfile","files","removeimg","onOverlayBodyClick","size","UploadServices","Filestorage","fileStoreId","gap","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","content","show","boxShadow","background","border","paddingBottom","title","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","RadioButtonProps","optionsKey","additionalWrapperClass","selectedOption","onSubmit","LocationSelection","selectedCity","setSelectedCity","showError","setShowError","selectCity","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","pdfHeader","pdfDesc","StaticDynamicCard","moduleCode","useStaticData","isMdmsLoading","mdmsData","useDynamicData","filters","isSearchLoading","dynamicData","handleClickOnWhatsApp","IconComponent","StaticData","StaticDataIconComponentOne","StaticDataIconComponentTwo","staticContent","staticCommonContent","validity","staticData","staticDataOne","staticDataOneHeader","staticDataTwo","staticDataTwoHeader","payViaWhatsApp","helpline","contactOne","contactTwo","serviceCenter","viewMapLocation","dynamicDataOne","dynamicDataTwo","isHTMLElement","HTMLElement","SearchFields","control","reset","MobileSearchApplication","Controller","register","previousPage","activateModal","payload","tabledata","settabledata","DownloadBtn","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","SearchFormFields","CurrentMobileModalComponent","useCallback","propsMobileInboxCards","slice","SearchApplication","count","initialValues","offset","limit","sortOrder","useForm","defaultValues","setValue","getValues","onSort","args","desc","onPageSizeChange","Number","nextPage","GetCell","columns","disableSortBy","accessor","row","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","Router","DigitUI","registry","getPrivacyObject","privacy","setPrivacy","queryClient","QueryClient","defaultOptions","queries","staleTime","cacheTime","retryDelay","attemptIndex","Infinity","PrivacyProvider","resetPrivacy","setPrivacyObject","getPrivacy","privacyObj","updatePrivacyDescoped","getAllPrivacyObject","updatePrivacy","fieldName","componentsToRegister","initCoreComponents","setComponent"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}