@djb25/digit-ui-module-ekyc 1.0.24 → 1.0.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +2011 -1164
- package/dist/index.modern.js.map +1 -1
- package/package.json +3 -1
- package/src/Module.js +0 -2
- package/src/components/AadhaarVerification.js +239 -339
- package/src/components/AssignEkyc.js +10 -67
- package/src/components/AssignEkycModal.js +21 -4
- package/src/components/DesktopInbox.js +1 -1
- package/src/components/EKYCCard.js +6 -8
- package/src/components/MeterDetails.js +227 -263
- package/src/components/PropertyInfo.js +176 -215
- package/src/components/Review.js +70 -13
- package/src/components/SearchFormFieldsComponent.js +4 -4
- package/src/components/SurveyorDetailsCard.js +220 -27
- package/src/config/AadhaarVerificationConfig.js +367 -0
- package/src/config/MeterDetailsConfig.js +297 -0
- package/src/config/PropertyInfoConfig.js +145 -0
- package/src/config/config.js +1 -0
- package/src/hook/SupervisorInboxTableConfig.js +2 -53
- package/src/hook/useInboxTableConfig.js +5 -5
- package/src/pages/citizen/Inbox.js +19 -9
- package/src/pages/citizen/index.js +44 -17
- package/src/pages/employee/ConsumerDetails.js +82 -24
- package/src/pages/employee/EKYCForm.js +21 -20
- package/src/pages/employee/Inbox.js +13 -7
- package/src/pages/employee/index.js +42 -13
- package/src/utils/reportDownloader.js +75 -0
- package/src/components/AddressDetails.js +0 -207
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/components/EKYCCard.js","../src/components/StatusCards.js","../src/components/Dashboard.js","../src/components/DesktopInbox.js","../src/components/SearchConsumer.js","../src/components/MobileInbox.js","../src/components/Filter.js","../src/components/mockData.js","../src/components/analytics/charts/ExecutiveLineChart.jsx","../src/components/analytics/charts/ExecutiveBarChart.jsx","../src/components/analytics/charts/ExecutivePieChart.jsx","../src/components/CeoDashboard.jsx","../src/components/VendorDetails.jsx","../src/hook/useInboxTableConfig.js","../../../../node_modules/babel-plugin-transform-async-to-promises/helpers.mjs","../src/components/SearchFormFieldsComponent.js","../src/pages/employee/Inbox.js","../src/pages/employee/Mapping.js","../src/components/ConnectionDetailsView.js","../src/pages/employee/Create.js","../src/components/Review.js","../../../../node_modules/react-query/es/react/QueryClientProvider.js","../src/components/AadhaarVerification.js","../src/config/config.js","../src/pages/employee/EKYCForm.js","../src/components/AssignEkycModal.js","../src/components/SurveyorDetailsCard.js","../src/hook/SupervisorInboxTableConfig.js","../src/components/AssignEkyc.js","../src/pages/employee/index.js","../src/components/PropertyInfo.js","../src/components/MeterDetails.js","../src/pages/citizen/Home.js","../src/pages/citizen/Inbox.js","../src/components/AddressDetails.js","../src/pages/citizen/index.js","../src/Module.js"],"sourcesContent":["import { PersonIcon, EmployeeModuleCard } from \"@djb25/digit-ui-react-components\";\nimport React from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nconst EKYCCard = () => {\n const { t } = useTranslation();\n\n const propsForModuleCard = {\n Icon: <PersonIcon />,\n moduleName: t(\"ACTION_TEST_EKYC\"),\n kpis: [\n {\n count: \"-\",\n label: t(\"TOTAL_EKYC\"),\n link: `/digit-ui/employee/ekyc/dashboard`,\n },\n ],\n links: [\n {\n label: t(\"EKYC_DASHBOARD\"),\n link: `/digit-ui/employee/ekyc/dashboard`,\n },\n {\n label: t(\"EKYC_INBOX\"),\n link: `/digit-ui/employee/ekyc/inbox`,\n },\n // {\n // label: t(\"EKYC_CREATE_KYC\"),\n // link: `/digit-ui/employee/ekyc/create-kyc`\n // },\n // {\n // label: t(\"EKYC_UPDATE_KYC\"),\n // link: `/digit-ui/employee/ekyc/update-kyc`\n // },\n {\n label: t(\"CEO_M.F_DOR_FINANCE_VIEW\"),\n link: `/digit-ui/employee/ekyc/ceo-dashboard`,\n },\n\n // {\n // label: t(\"EKYC_MAPPING\"),\n // link: `/digit-ui/employee/ekyc/mapping`,\n // },\n\n {\n label: t(\"EKYC_ASSIGN\"),\n link: `/digit-ui/employee/ekyc/assign`,\n },\n ],\n };\n\n return <EmployeeModuleCard {...propsForModuleCard} />;\n};\n\nexport default EKYCCard;\n","import React, { useEffect, useRef } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport * as Chartjs from \"chart.js/auto\";\n\nconst getChartConstructor = () => {\n const C = Chartjs.Chart || Chartjs.default || Chartjs;\n return C;\n};\n\nconst StatusCards = ({ countData }) => {\n const { t } = useTranslation();\n const chartRef1 = useRef(null);\n const chartInstance1 = useRef(null);\n\n const total = countData?.total || 0;\n const pending = countData?.pending || 0;\n const active = countData?.completed || 0;\n const completed = 0;\n\n const actualCompleted = countData?.completed || 0;\n const approved = actualCompleted;\n\n const efficiency = total > 0 ? Math.round((actualCompleted / total) * 100) : 0;\n const healthPct = total > 0 ? Math.round((approved / total) * 100) : 0;\n\n const formatNumber = (num) => new Intl.NumberFormat(\"en-IN\").format(num || 0);\n\n useEffect(() => {\n if (chartRef1.current) {\n if (chartInstance1.current) chartInstance1.current.destroy();\n const ctx1 = chartRef1.current.getContext(\"2d\");\n const ChartConstructor = getChartConstructor();\n chartInstance1.current = new ChartConstructor(ctx1, {\n type: \"doughnut\",\n data: {\n labels: [t(\"EKYC_ACTIVE\"), t(\"EKYC_PENDING\"), t(\"EKYC_COMPLETED\")],\n datasets: [\n {\n data: [active, pending, completed],\n backgroundColor: [\"#0c2a52\", \"#77B6EA\", \"#c8ddf5\"],\n borderColor: [\"#ffffff\", \"#ffffff\", \"#ffffff\"],\n borderWidth: 2,\n hoverOffset: 4,\n },\n ],\n },\n options: {\n cutout: \"75%\",\n plugins: { legend: { display: false } },\n maintainAspectRatio: false,\n responsive: true,\n },\n });\n }\n\n return () => {\n if (chartInstance1.current) chartInstance1.current.destroy();\n };\n }, [pending, completed, active, t]);\n\n const legendItems = [\n { color: \"#0c2a52\", label: t(\"EKYC_ACTIVE\"), value: active },\n { color: \"#77B6EA\", label: t(\"EKYC_PENDING\"), value: pending },\n { color: \"#c8ddf5\", label: t(\"EKYC_COMPLETED\"), value: completed },\n ];\n\n return (\n <div className=\"ekyc-employee-container\">\n <div className=\"status-cards-wrapper\">\n {/* Header */}\n <div className=\"status-cards-header\">\n <div>\n <div className=\"eyebrow\">\n <span className=\"eyebrow-dot\" />\n {t(\"EKYC_INSTITUTIONAL_OVERVIEW\") || \"Institutional Performance Overview\"}\n </div>\n <h1 className=\"status-cards-h1\">{t(\"EKYC_DASHBOARD_TITLE\") || \"eKYC Verification Dashboard\"}</h1>\n <p className=\"status-cards-subtitle\">\n {t(\"EKYC_DASHBOARD_SUBTITLE\") || \"Real-time monitoring of consumer verification workflows across all administrative zones.\"}\n </p>\n </div>\n <div className=\"total-applications-card\">\n <div className=\"total-label\">{t(\"EKYC_TOTAL_APPLICATIONS\") || \"Total Applications Processed\"}</div>\n <div className=\"total-number\">{formatNumber(total)}</div>\n <div className=\"total-badge\">↗ +12.4% {t(\"EKYC_FROM_LAST_QUARTER\") || \"from last quarter\"}</div>\n </div>\n </div>\n\n {/* Panels */}\n <div className=\"status-panels-grid\">\n {/* Panel 1: Status Breakdown */}\n <div className=\"status-panel\">\n <div className=\"panel-title\">{t(\"EKYC_STATUS_BREAKDOWN\") || \"Status Breakdown\"}</div>\n <div className=\"panel-subtitle\">{t(\"EKYC_VERIFICATION_LIFECYCLE\") || \"Verification lifecycle distribution\"}</div>\n <div className=\"breakdown-body\">\n <div className=\"status-legend\">\n {legendItems.map((item) => (\n <div key={item.label} className=\"legend-row\">\n <span className=\"legend-label\">\n <span className=\"indicator-dot\" style={{ background: item.color }} />\n {item.label}\n </span>\n <span className=\"legend-value\">{formatNumber(item.value)}</span>\n </div>\n ))}\n </div>\n <div className=\"chart-wrapper\">\n <canvas ref={chartRef1} style={{ width: \"100%\", height: \"100%\" }} />\n <div className=\"chart-center\">\n <div className=\"chart-percentage\">{efficiency}%</div>\n <div className=\"chart-label\">{t(\"EKYC_COMPLETE\") || \"Complete\"}</div>\n </div>\n </div>\n </div>\n </div>\n\n {/* Panel 2: Submission Health */}\n <div className=\"status-panel\">\n <div className=\"panel-title\">\n {t(\"EKYC_SUBMISSION_HEALTH\") || \"Submission Health\"}\n <span className=\"optimal-badge\">{t(\"EKYC_OPTIMAL\") || \"Optimal\"}</span>\n </div>\n <div className=\"panel-subtitle\">{t(\"EKYC_PLATFORM_EFFICIENCY\") || \"Platform operational efficiency\"}</div>\n <div className=\"health-metrics-row\">\n <div className=\"health-percentage\">{healthPct}%</div>\n <div className=\"health-trend\">↗ +2.1%</div>\n </div>\n <div className=\"status-progress-bar\">\n <div className=\"progress-fill\" style={{ width: `${healthPct}%` }} />\n </div>\n <div className=\"mini-metrics-grid\">\n <div className=\"metric-box\">\n <div className=\"metric-label\">{t(\"EKYC_AVG_LATENCY\") || \"Avg Latency\"}</div>\n <div className=\"metric-value\">1.2s</div>\n </div>\n <div className=\"metric-box\">\n <div className=\"metric-label\">{t(\"EKYC_ERROR_RATE\") || \"Error Rate\"}</div>\n <div className=\"metric-value\">0.04%</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default StatusCards;\n","import React, { useMemo } from \"react\";\nimport StatusCards from \"./StatusCards\";\nimport { Card, Loader } from \"@djb25/digit-ui-react-components\";\n\n// Mock data removed in favor of API integration\n\nconst Dashboard = () => {\n const tenantId = Digit.ULBService.getCurrentTenantId();\n\n // 2. API Data Fetching\n const { isLoading, data: dashboardData } = Digit.Hooks.ekyc.useEkycSurveyorDashboard(\n {},\n {\n tenantId,\n offset: 0,\n limit: 10,\n },\n {\n enabled: !!tenantId,\n }\n );\n\n const countData = useMemo(() => {\n const info = dashboardData?.dashboardInfo || {};\n return {\n total: info.total || 0,\n completed: info.completed || 0,\n pending: info.pending || 0,\n rejected: info.rejected || 0,\n active: info.active || 0,\n };\n }, [dashboardData]);\n\n return isLoading ? (\n <Loader />\n ) : (\n <Card className=\"min-width-full\">\n <StatusCards countData={countData} />\n </Card>\n );\n};\n\nexport default Dashboard;\n","import React, { useMemo, useState } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Table, Card, Loader, InboxLinks } from \"@djb25/digit-ui-react-components\";\nimport { useHistory } from \"react-router-dom\";\nimport StatusCards from \"./StatusCards\";\n\nconst DesktopInbox = ({ tableConfig, filterComponent, ...props }) => {\n const {\n data,\n isLoading,\n onSort,\n onNextPage,\n onPrevPage,\n currentPage,\n pageSizeLimit,\n onPageSizeChange,\n parentRoute,\n searchParams,\n sortParams,\n totalRecords,\n countData,\n } = props;\n const { t } = useTranslation();\n const history = useHistory();\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const FilterComponent = Digit.ComponentRegistryService?.getComponent(filterComponent);\n\n // State for Review Modal\n const [selectedKno, setSelectedKno] = useState(\"\");\n const { data: reviewData, getReview } = Digit.Hooks.ekyc.useEkycAPI(\"review\", tenantId);\n const handleReview = (kno) => {\n setSelectedKno(kno);\n getReview({ kno });\n };\n\n React.useEffect(() => {\n if (reviewData) {\n history.push(\"/digit-ui/employee/ekyc/review\", { kNumber: selectedKno, aadhaarData: reviewData?.aadhaarData, reviewData });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [reviewData]);\n\n const columns = useMemo(\n () => [\n {\n Header: t(\"EKYC_APPLICATION_NO\"),\n accessor: \"applicationNumber\",\n Cell: ({ row }) => {\n const kno = row.original?.kno || row.original?.applicationNumber || \"NA\";\n return (\n <span\n className=\"ekyc-application-link\"\n style={{ color: \"#add8f7\", cursor: \"pointer\", fontWeight: \"bold\" }}\n onClick={() => handleReview(kno)}\n >\n {kno}\n </span>\n );\n },\n },\n {\n Header: t(\"EKYC_CITIZEN_NAME\"),\n accessor: \"citizenName\",\n Cell: ({ row }) => <span>{row.original?.citizenName || \"NA\"}</span>,\n },\n // {\n // Header: t(\"EKYC_MOBILE_NO\"),\n // accessor: \"mobileNumber\",\n // Cell: ({ row }) => <span>{row.original?.mobileNumber || \"NA\"}</span>,\n // },\n {\n Header: t(\"EKYC_STATUS\"),\n accessor: \"actionStatus\",\n Cell: ({ row }) => {\n const status = row.original?.status || \"DEFAULT\";\n return <span className={`ekyc-status-tag ${status}`}>{t(`${status}`)}</span>;\n },\n },\n {\n Header: t(\"EKYC_EKYC_STATUS\"),\n accessor: \"ekycStatus\",\n Cell: ({ row }) => {\n const ekycStatus = row.original?.ekycstatus || \"NA\";\n return <span className={`ekyc-status-tag ${ekycStatus}`}>{t(`${ekycStatus}`)}</span>\n }\n },\n {\n Header: t(\"EKYC_ACTION\"),\n accessor: \"status\",\n Cell: ({ row }) => {\n const kno = row.original?.kno || row.original?.applicationNumber || \"NA\";\n return (\n <span\n className=\"ekyc-application-link\"\n style={{ color: \"#add8f7\", cursor: \"pointer\", fontWeight: \"bold\" }}\n onClick={() => handleReview(kno)}\n >\n {t(\"EKYC_REVIEW\")}\n </span>\n );\n },\n },\n ],\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [t, parentRoute]\n );\n\n const tableData = useMemo(() => {\n return data?.items || (Array.isArray(data) ? data : []);\n }, [data]);\n\n return (\n <div className=\"app-container\">\n <div className=\"inbox-container\">\n {isLoading && <Loader />}\n <div className=\"side-panel-item\">\n {/* Sidebar Title Card */}\n\n <InboxLinks headerText={props.moduleCode} />\n\n {FilterComponent && (\n <FilterComponent\n defaultSearchParams={props.defaultSearchParams}\n onFilterChange={props.onSearch}\n searchParams={searchParams}\n type=\"desktop\"\n moduleCode=\"EKYC\"\n />\n )}\n </div>\n\n <div className=\"employee-form-content\" style={{ flex: 1 }}>\n {/* Header Section (retaining for context/actions) */}\n {/* <div className=\"ekyc-header-container module-header\" style={{ marginBottom: \"16px\", display: \"flex\", justifyContent: \"space-between\", alignItems: \"center\" }}>\n <Header className=\"title\" style={{ margin: 0 }}>{t(\"EKYC_INBOX_HEADER\")}</Header>\n <Link to={`${parentRoute}/create-kyc`}>\n <SubmitBar label={t(\"EKYC_CREATE_KYC\")} style={{ borderRadius: \"8px\" }} />\n </Link>\n </div> */}\n\n {/* Metrics Section (The Card) */}\n <Card className=\"ekyc-metrics-card\">\n <StatusCards countData={countData} />\n </Card>\n\n {/* Table Section */}\n <div className=\"result\" style={{ flex: 1 }}>\n <Card className=\"ekyc-table-card\" style={{ padding: 0 }}>\n <Table\n t={t}\n data={tableData}\n columns={columns}\n isLoading={isLoading}\n onSort={onSort}\n sortParams={sortParams}\n totalRecords={totalRecords}\n onNextPage={onNextPage}\n onPrevPage={onPrevPage}\n currentPage={currentPage}\n pageSizeLimit={pageSizeLimit}\n onPageSizeChange={onPageSizeChange}\n getCellProps={(cellInfo) => {\n return {\n className: \"ekyc-table-cell\",\n };\n }}\n />\n </Card>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default DesktopInbox;\n","import React, { useState } from \"react\";\nimport { TextInput, Card, HomeIcon } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\n\nconst SearchConsumer = ({ onSearch, searchParams, FilterComponent, children, ...props }) => {\n const { t } = useTranslation();\n const [_searchParams, setSearchParams] = useState(() => ({ ...searchParams }));\n\n const onChange = (key, value) => {\n setSearchParams((prev) => ({ ...prev, [key]: value }));\n };\n\n const onSubmit = (e) => {\n if (e && e.preventDefault) e.preventDefault();\n onSearch(_searchParams);\n };\n\n const onClear = () => {\n const cleared = { kNumber: \"\", kName: \"\" };\n setSearchParams(cleared);\n onSearch(cleared);\n };\n\n return (\n <div className=\"ekyc-employee-container\">\n <div className=\"search-consumer-wrapper\">\n <div className=\"header-wrapper\">\n {/* Sidebar Title Card — flush top, full width */}\n <Card className=\"sidebar-title-card\">\n <div className=\"icon-container\">\n <HomeIcon />\n </div>\n <div className=\"title-text\">\n {t(\"EKYC_SEARCH_CONSUMER_HEADER\")}\n </div>\n </Card>\n </div>\n\n {/* Main Content */}\n <div className=\"main-content-wrapper\">\n {/* Top Row: Search Card + Stats Cards */}\n <div className=\"search-stats-row\">\n {/* Identity Lookup Card */}\n <div className=\"identity-lookup-card\">\n {/* Card Title */}\n <div className=\"lookup-card-title\">\n <div className=\"lookup-icon-bg\">\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#3A7BD5\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <circle cx=\"11\" cy=\"11\" r=\"8\" />\n <line x1=\"21\" y1=\"21\" x2=\"16.65\" y2=\"16.65\" />\n </svg>\n </div>\n <span className=\"lookup-title-text\">\n {t(\"EKYC_IDENTITY_LOOKUP\") || \"Identity Lookup\"}\n </span>\n </div>\n\n {/* Inputs Row */}\n <form onSubmit={onSubmit}>\n <div className=\"inputs-row\">\n <div className=\"input-group\">\n <label>\n {t(\"EKYC_K_NUMBER\") || \"K Number\"}\n <span className=\"info-badge\">i</span>\n </label>\n <TextInput\n value={_searchParams?.kNumber}\n onChange={(e) => onChange(\"kNumber\", e.target.value)}\n placeholder={t(\"EKYC_K_NUMBER_PLACEHOLDER\") || \"e.g. 8234910234\"}\n />\n </div>\n\n <div className=\"input-group\">\n <label>\n {t(\"EKYC_K_NAME\") || \"K Name\"}\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#3A7BD5\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <path d=\"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2\" />\n <circle cx=\"12\" cy=\"7\" r=\"4\" />\n </svg>\n </label>\n <TextInput\n value={_searchParams?.kName}\n onChange={(e) => onChange(\"kName\", e.target.value)}\n placeholder={t(\"EKYC_K_NAME_PLACEHOLDER\") || \"Consumer name search\"}\n />\n </div>\n </div>\n\n {/* Actions Row */}\n <div className=\"actions-row\">\n <button type=\"button\" onClick={onClear} className=\"clear-btn\">\n {t(\"ES_COMMON_CLEAR\") || \"Clear\"}\n </button>\n <button type=\"submit\" className=\"search-btn\">\n {t(\"ES_COMMON_SEARCH\") || \"Execute Search\"}\n </button>\n </div>\n </form>\n </div>\n\n {/* Right Stats Column */}\n <div className=\"stats-column\">\n {/* Today's Audits Card */}\n <div className=\"audits-card\">\n <div className=\"audits-label\">{t(\"EKYC_TODAYS_AUDITS\") || \"Today's Audits\"}</div>\n <div className=\"audits-count\">{props.countData?.todaysAudits || 24}</div>\n <div className=\"audits-change\">\n <span>↗</span>\n {props.countData?.auditChange || \"12% increase from yesterday\"}\n </div>\n <div className=\"audits-watermark\">M</div>\n </div>\n\n {/* Queue Status Card */}\n <div className=\"queue-card\">\n <div className=\"queue-label\">{t(\"EKYC_QUEUE_STATUS\") || \"Queue Status\"}</div>\n <div className=\"queue-content\">\n <div className=\"queue-status-text\">\n {props.countData?.pendingCount || 3} Pending\n </div>\n <div className=\"avatar-group\">\n {[0, 1].map((i) => (\n <div key={i} className=\"avatar-item\">\n {String.fromCharCode(65 + i)}\n </div>\n ))}\n <div className=\"avatar-more\">+1</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n {/* Children (ConnectionDetailsView or placeholder) */}\n {children}\n </div>\n </div>\n </div>\n );\n};\n\nexport default SearchConsumer;","import React from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Header, Card, SubmitBar, DetailsCard, Loader } from \"@djb25/digit-ui-react-components\";\nimport { Link } from \"react-router-dom\";\nimport SearchConsumer from \"./SearchConsumer\";\nimport StatusCards from \"./StatusCards\";\n\nconst MobileInbox = ({\n data,\n isLoading,\n onSearch,\n searchParams,\n parentRoute,\n countData,\n}) => {\n const { t } = useTranslation();\n\n const mobileData = data?.items?.map((item) => ({\n [t(\"EKYC_APPLICATION_NO\")]: item.applicationNumber,\n [t(\"EKYC_CITIZEN_NAME\")]: item.citizenName,\n [t(\"EKYC_MOBILE_NO\")]: item.mobileNumber,\n [t(\"EKYC_STATUS\")]: (\n <span className={`ekyc-status-tag ${item.status}`}>\n {t(`EKYC_STATUS_${item.status}`)}\n </span>\n ),\n })) || [];\n\n return (\n <div className=\"inbox-wrapper\">\n <div className=\"ekyc-header-container module-header\">\n <Header className=\"title\">{t(\"EKYC_INBOX_HEADER\")}</Header>\n <Link to={`${parentRoute}/create-kyc`}>\n <SubmitBar label={t(\"EKYC_CREATE_KYC\")} />\n </Link>\n </div>\n\n <div className=\"ekyc-metrics-section\">\n <StatusCards countData={countData} />\n </div>\n\n <SearchConsumer\n onSearch={onSearch}\n searchParams={searchParams}\n />\n\n <div className=\"mobile-data-container\">\n {isLoading ? (\n <Loader />\n ) : mobileData?.length > 0 ? (\n <DetailsCard\n data={mobileData}\n t={t}\n serviceRequestIdKey={t(\"EKYC_APPLICATION_NO\")}\n linkPrefix={`${parentRoute}/application-details/`}\n />\n ) : (\n <Card>\n {t(\"ES_COMMON_NO_DATA\")\n .split(\"\\\\n\")\n .map((text, index) => (\n <p key={index} style={{ textAlign: \"center\" }}>\n {text}\n </p>\n ))}\n </Card>\n )}\n </div>\n </div>\n );\n};\n\nexport default MobileInbox;\n","import React, { useState } from \"react\";\nimport { Dropdown, FilterForm, FilterFormField } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Filter = ({ searchParams, onFilterChange, defaultSearchParams, statusMap, moduleCode, ...props }) => {\n const { t } = useTranslation();\n\n const [_searchParams, setSearchParams] = useState(() => ({ ...searchParams }));\n\n const applyLocalFilters = () => {\n onFilterChange(_searchParams);\n };\n\n const clearAll = () => {\n setSearchParams({ ...defaultSearchParams });\n onFilterChange({ ...defaultSearchParams });\n };\n\n const onStatusChange = (value) => {\n const newParams = { ..._searchParams, status: value };\n setSearchParams(newParams);\n onFilterChange(newParams);\n };\n\n return (\n <FilterForm\n onSubmit={applyLocalFilters}\n handleSubmit={(fn) => (e) => {\n e && e.preventDefault();\n fn();\n }}\n onResetFilterForm={clearAll}\n id=\"ekyc-filter-form\"\n onMobileExclusiveFilterPopupFormClose={props.onClose}\n >\n <FilterFormField>\n <div className=\"filter-label\" style={{ fontWeight: \"normal\" }}>\n {t(\"EKYC_STATUS\")}:\n </div>\n <Dropdown\n option={[\n { label: t(\"EKYC_STATUS_ALL\"), value: \"\" },\n { label: t(\"EKYC_STATUS_ACTIVE\"), value: \"ACTIVE\" },\n { label: t(\"EKYC_STATUS_PENDING\"), value: \"PENDING START\" },\n ]}\n optionKey=\"label\"\n select={onStatusChange}\n selected={_searchParams?.status || { label: t(\"EKYC_STATUS_ALL\"), value: \"\" }}\n />\n </FilterFormField>\n </FilterForm>\n );\n};\n\nexport default Filter;\n","export const ekycMockData = {\n topKpis: {\n totalWaterConnections: 2990996,\n totalEkycCompleted: 2460810,\n totalPending: 530186,\n totalRejected: 224324,\n agencyEkycCompleted: 2352069,\n citizenSelfEkycCompleted: 638927,\n todaysEkyc: 54684,\n successRate: 82,\n rejectionPercentage: 7,\n },\n\n executiveMetrics: {\n totalSurveyors: 186,\n totalSupervisors: 56,\n activeJurisdictions: 27,\n todaysGrowth: 2.8,\n selfEkycAdoption: 38,\n avgApprovalTime: \"2.3 Days\",\n riskZones: 7,\n escalationsOpen: 18,\n },\n\n alerts: [\n {\n title: \"North East District pending increased\",\n priority: \"high\",\n change: \"+22%\",\n district: \"North East District\",\n },\n {\n title: \"Agency 2 self eKYC adoption low\",\n priority: \"medium\",\n change: \"-12%\",\n district: \"West District\",\n },\n {\n title: \"Escalation raised in NWS Bhera Enclave\",\n priority: \"high\",\n change: \"+18\",\n district: \"Outer North\",\n },\n {\n title: \"Approval rate improved in East District\",\n priority: \"low\",\n change: \"+9%\",\n district: \"East District\",\n },\n ],\n\n heatmapData: [\n {\n district: \"Outer North\",\n intensity: 82,\n },\n {\n district: \"East District\",\n intensity: 48,\n },\n {\n district: \"South District\",\n intensity: 67,\n },\n {\n district: \"North East District\",\n intensity: 74,\n },\n ],\n\n dailyTrend: [\n {\n label: \"Mon\",\n completed: 270689,\n pending: 491305,\n rejected: 145810,\n },\n {\n label: \"Tue\",\n completed: 442945,\n pending: 466563,\n rejected: 157026,\n },\n {\n label: \"Wed\",\n completed: 615202,\n pending: 441821,\n rejected: 168243,\n },\n {\n label: \"Thu\",\n completed: 812067,\n pending: 413545,\n rejected: 179459,\n },\n {\n label: \"Fri\",\n completed: 1033540,\n pending: 381733,\n rejected: 190675,\n },\n {\n label: \"Sat\",\n completed: 1279621,\n pending: 346388,\n rejected: 201891,\n },\n {\n label: \"Sun\",\n completed: 1574918,\n pending: 303973,\n rejected: 213107,\n },\n ],\n\n selfVsAgency: [\n {\n label: \"Agency1\",\n agency: 201457,\n citizen: 758414,\n },\n {\n label: \"Agency 2\",\n agency: 164302,\n citizen: 919322,\n },\n {\n label: \"Agency 3\",\n agency: 328451,\n citizen: 541772,\n },\n ],\n\n pendingVsCompleted: [\n {\n label: \"Agency1\",\n completed: 201457,\n pending: 201457,\n },\n {\n label: \"Agency 2\",\n completed: 164302,\n pending: 164302,\n },\n {\n label: \"Agency 3\",\n completed: 328451,\n pending: 77278,\n },\n ],\n\n rejectionAnalysis: [\n {\n label: \"Agency1\",\n rejected: 71990,\n success: 72,\n },\n {\n label: \"Agency 2\",\n rejected: 81271,\n success: 77,\n },\n {\n label: \"Agency 3\",\n rejected: 71063,\n success: 86,\n },\n ],\n\n vendors: [\n {\n id: 1,\n name: \"Agency1\",\n\n assignedConnections: 959871,\n\n completedEkyc: 201457,\n\n selfEkyc: 758414,\n\n pending: 201457,\n\n rejected: 71990,\n\n inactiveDemand: 1161328,\n\n successRate: 72,\n\n progress: 21,\n\n supervisors: 23,\n\n activeSurveyors: 64,\n\n jurisdictions: [\"Outer North\", \"North West District\", \"Model Town AC 18\", \"Cluster 2\", \"North District\"],\n\n dailyPerformance: [\n {\n day: \"Mon\",\n completed: 16116,\n pending: 196084,\n rejected: 53272,\n },\n {\n day: \"Tue\",\n completed: 26189,\n pending: 192727,\n rejected: 55072,\n },\n {\n day: \"Wed\",\n completed: 38276,\n pending: 188698,\n rejected: 57232,\n },\n {\n day: \"Thu\",\n completed: 52378,\n pending: 183997,\n rejected: 59751,\n },\n {\n day: \"Fri\",\n completed: 68495,\n pending: 178625,\n rejected: 62631,\n },\n {\n day: \"Sat\",\n completed: 84611,\n pending: 173253,\n rejected: 65510,\n },\n {\n day: \"Sun\",\n completed: 100728,\n pending: 167880,\n rejected: 68390,\n },\n ],\n\n zones: [\n {\n agency: \"Agency1\",\n district: \"Outer North\",\n cluster: \"NWS Bhera Enclave\",\n\n assignedConnections: 102669,\n\n location: \"102669\",\n\n zroOffice: \"NWS Bhera Enclave\",\n\n assemblyConstituency: \"Part of Mundka AC 08\",\n\n gpsLocation: null,\n\n distanceFromFarthestPoint: null,\n\n activeDemand: 202197,\n\n pppZones: 15800,\n\n inactiveDemand: 35265,\n\n districtwiseInactiveTotal: 237462,\n },\n\n {\n agency: \"Agency1\",\n district: \"Outer North\",\n\n cluster: \"Narela\",\n\n assignedConnections: 99528,\n\n location: \"99528\",\n\n zroOffice: \"Narela\",\n\n assemblyConstituency: \"Narela AC 01\",\n\n activeDemand: 99528,\n\n pppZones: 19465,\n\n inactiveDemand: 35265,\n },\n\n {\n agency: \"Agency1\",\n\n district: \"North West District\",\n\n cluster: \"Rohini AC 13\",\n\n assignedConnections: 71041,\n\n location: \"71041\",\n\n zroOffice: \"Rohini\",\n\n assemblyConstituency: \"Rithala AC 06\",\n\n activeDemand: 247949,\n\n pppZones: 28975,\n\n inactiveDemand: 49494,\n },\n\n {\n agency: \"Agency1\",\n\n district: \"Mangol Puri AC 12\",\n\n cluster: \"Model Town AC 18\",\n\n assignedConnections: 68957,\n\n location: \"68957\",\n\n zroOffice: \"Central North District\",\n\n assemblyConstituency: \"Ashok Vihar\",\n\n activeDemand: 231216,\n\n pppZones: 16627,\n\n inactiveDemand: 36915,\n },\n\n {\n agency: \"Agency1\",\n\n district: \"Timarpur AC 03\",\n\n cluster: \"Cluster 2\",\n\n assignedConnections: 34862,\n\n location: \"34862\",\n\n zroOffice: \"Old Delhi District\",\n\n assemblyConstituency: \"Pratap Nagar\",\n\n activeDemand: 99694,\n\n pppZones: 20011,\n\n inactiveDemand: 48011,\n },\n\n {\n agency: \"Agency1\",\n\n district: \"Bali Maran AC 22\",\n\n cluster: \"North District\",\n\n assignedConnections: 110507,\n\n location: \"110507\",\n\n zroOffice: \"Burari\",\n\n assemblyConstituency: \"Burari AC 2\",\n\n activeDemand: 178815,\n\n pppZones: 14700,\n\n inactiveDemand: 31772,\n },\n ],\n },\n\n {\n id: 2,\n\n name: \"Agency 2\",\n\n assignedConnections: 1083624,\n\n completedEkyc: 164302,\n\n selfEkyc: 919322,\n\n pending: 164302,\n\n rejected: 81271,\n\n inactiveDemand: 1247926,\n\n successRate: 77,\n\n progress: 15,\n\n supervisors: 14,\n\n activeSurveyors: 64,\n\n jurisdictions: [\"West District\", \"Janak Puri\", \"South District\"],\n\n dailyPerformance: [\n {\n day: \"Mon\",\n completed: 13144,\n pending: 159920,\n rejected: 60140,\n },\n {\n day: \"Tue\",\n completed: 21359,\n pending: 157182,\n rejected: 62172,\n },\n {\n day: \"Wed\",\n completed: 31217,\n pending: 153896,\n rejected: 64610,\n },\n {\n day: \"Thu\",\n completed: 42718,\n pending: 150062,\n rejected: 67454,\n },\n {\n day: \"Fri\",\n completed: 55862,\n pending: 145681,\n rejected: 70705,\n },\n {\n day: \"Sat\",\n completed: 69006,\n pending: 141299,\n rejected: 73956,\n },\n {\n day: \"Sun\",\n completed: 82151,\n pending: 136918,\n rejected: 77207,\n },\n ],\n\n zones: [\n {\n agency: \"Agency 2\",\n\n district: \"West District\",\n\n cluster: \"Rajouri Garden AC 27\",\n\n assignedConnections: 84506,\n\n location: \"84506\",\n\n zroOffice: \"Rajouri Garden AC 27\",\n\n assemblyConstituency: \"Punjabi Bagh\",\n\n activeDemand: 470766,\n\n pppZones: 13269,\n\n inactiveDemand: 64564,\n },\n\n {\n agency: \"Agency 2\",\n\n district: \"West District\",\n\n cluster: \"Tilak Nagar AC 29\",\n\n assignedConnections: 51428,\n\n location: \"51428\",\n\n zroOffice: \"Tilak Nagar AC 29\",\n\n assemblyConstituency: \"Paschim Vihar\",\n\n activeDemand: 470766,\n\n pppZones: 6298,\n\n inactiveDemand: 64564,\n },\n\n {\n agency: \"Agency 2\",\n\n district: \"Part of Uttam Nagar & Vikas puri\",\n\n cluster: \"Janak Puri\",\n\n assignedConnections: 163041,\n\n location: \"163041\",\n\n zroOffice: \"Janakpuri\",\n\n assemblyConstituency: \"Janakpuri AC 30\",\n\n activeDemand: 369772,\n\n pppZones: 25729,\n\n inactiveDemand: 60534,\n },\n\n {\n agency: \"Agency 2\",\n\n district: \"South District\",\n\n cluster: \"South District\",\n\n assignedConnections: 52803,\n\n location: \"52803\",\n\n zroOffice: \"R K Puram\",\n\n assemblyConstituency: \"Malviya Nagar AC 43\",\n\n activeDemand: 243086,\n\n pppZones: 9678,\n\n inactiveDemand: 39204,\n },\n\n {\n agency: \"Agency 2\",\n\n district: \"South District\",\n\n cluster: \"Vasant Kunz\",\n\n assignedConnections: 58997,\n\n location: \"58997\",\n\n zroOffice: \"Vasant Kunj\",\n\n assemblyConstituency: \"Vasant Kunj\",\n\n activeDemand: 243086,\n\n pppZones: 6691,\n\n inactiveDemand: 39204,\n },\n ],\n },\n\n {\n id: 3,\n\n name: \"Agency 3\",\n\n assignedConnections: 947501,\n\n completedEkyc: 328451,\n\n selfEkyc: 541772,\n\n pending: 77278,\n\n rejected: 71063,\n\n inactiveDemand: 1016841,\n\n successRate: 86,\n\n progress: 78,\n\n supervisors: 19,\n\n activeSurveyors: 58,\n\n jurisdictions: [\"East District\", \"North East District\", \"South East District\", \"MNWS\"],\n\n dailyPerformance: [\n {\n day: \"Mon\",\n completed: 44120,\n pending: 130002,\n rejected: 5711,\n },\n {\n day: \"Tue\",\n completed: 58221,\n pending: 121998,\n rejected: 7104,\n },\n {\n day: \"Wed\",\n completed: 70218,\n pending: 113201,\n rejected: 8842,\n },\n {\n day: \"Thu\",\n completed: 85124,\n pending: 104006,\n rejected: 9911,\n },\n {\n day: \"Fri\",\n completed: 102315,\n pending: 94441,\n rejected: 11214,\n },\n {\n day: \"Sat\",\n completed: 121009,\n pending: 85218,\n rejected: 12902,\n },\n {\n day: \"Sun\",\n completed: 142118,\n pending: 77278,\n rejected: 14101,\n },\n ],\n\n zones: [\n {\n agency: \"Agency 3\",\n\n district: \"East District\",\n\n cluster: \"Mayur Vihar\",\n\n assignedConnections: 72326,\n\n location: \"72326\",\n\n zroOffice: \"Mayur Vihar\",\n\n assemblyConstituency: \"Trilokpuri AC 55\",\n\n activeDemand: 328564,\n\n pppZones: 9691,\n\n inactiveDemand: 52477,\n },\n\n {\n agency: \"Agency 3\",\n\n district: \"East District\",\n\n cluster: \"Yojna Vihar\",\n\n assignedConnections: 40651,\n\n location: \"40651\",\n\n zroOffice: \"Yojna Vihar\",\n\n assemblyConstituency: \"Vishwas Nagar AC 59\",\n\n activeDemand: 328564,\n\n pppZones: 10097,\n\n inactiveDemand: 52477,\n },\n\n {\n agency: \"Agency 3\",\n\n district: \"North East District\",\n\n cluster: \"GTB Enclave\",\n\n assignedConnections: 80453,\n\n location: \"80453\",\n\n zroOffice: \"GTB Enclave\",\n\n assemblyConstituency: \"Seemapuri AC 63\",\n\n activeDemand: 323753,\n\n pppZones: 10671,\n\n inactiveDemand: 50575,\n },\n\n {\n agency: \"Agency 3\",\n\n district: \"North East District\",\n\n cluster: \"Yamuna Vihar\",\n\n assignedConnections: 90599,\n\n location: \"90599\",\n\n zroOffice: \"Yamuna Vihar\",\n\n assemblyConstituency: \"Mustafabad AC 69\",\n\n activeDemand: 323753,\n\n pppZones: 18185,\n\n inactiveDemand: 50575,\n },\n\n {\n agency: \"Agency 3\",\n\n district: \"South East District\",\n\n cluster: \"Kalkaji AC 51\",\n\n assignedConnections: 29188,\n\n location: \"29188\",\n\n zroOffice: \"Kalkaji AC 51\",\n\n assemblyConstituency: \"Saket\",\n\n activeDemand: 136102,\n\n pppZones: 3675,\n\n inactiveDemand: 23977,\n },\n\n {\n agency: \"Agency 3\",\n\n district: \"South East District\",\n\n cluster: \"Okhla\",\n\n assignedConnections: 18473,\n\n location: \"18473\",\n\n zroOffice: \"Sarita Vihar/Okhla\",\n\n assemblyConstituency: \"Okhla AC 54\",\n\n activeDemand: 136102,\n\n pppZones: 3703,\n\n inactiveDemand: 23977,\n },\n ],\n },\n ],\n};\n","// import React from \"react\";\n// import { ResponsiveContainer, LineChart, Line, XAxis, YAxis, Tooltip, CartesianGrid, Legend } from \"recharts\";\n\n// const ExecutiveLineChart = ({ data = [], dataKey = \"completed\", name = \"Value\" }) => {\n// return (\n// <div className=\"chart-card\" style={{ minHeight: 320 }}>\n// <ResponsiveContainer width=\"100%\" height={320}>\n// <LineChart data={data} margin={{ top: 12, right: 16, left: 0, bottom: 0 }}>\n// <CartesianGrid stroke=\"rgba(148, 163, 184, 0.12)\" strokeDasharray=\"4 4\" />\n// <XAxis dataKey=\"label\" axisLine={false} tickLine={false} tick={{ fill: \"#cbd5e1\" }} />\n// <YAxis axisLine={false} tickLine={false} tick={{ fill: \"#cbd5e1\" }} />\n// <Tooltip contentStyle={{ background: \"#0f172a\", border: \"none\", borderRadius: 14, color: \"#f8fafc\" }} itemStyle={{ color: \"#f8fafc\" }} />\n// <Legend verticalAlign=\"top\" align=\"right\" iconType=\"circle\" wrapperStyle={{ color: \"#cbd5e1\" }} />\n// <Line\n// type=\"monotone\"\n// dataKey={dataKey}\n// name={name}\n// stroke=\"#38bdf8\"\n// strokeWidth={3}\n// dot={{ r: 4 }}\n// activeDot={{ r: 6, strokeWidth: 2, fill: \"#60a5fa\" }}\n// />\n// </LineChart>\n// </ResponsiveContainer>\n// </div>\n// );\n// };\n\n// export default ExecutiveLineChart;\n\nimport React from \"react\";\nimport { ResponsiveContainer, LineChart, Line, XAxis, YAxis, Tooltip, CartesianGrid, Legend } from \"recharts\";\n\nconst ExecutiveLineChart = ({ data = [] }) => {\n const formattedData = data.map((item) => ({\n ...item,\n\n agencyKyc: item.completed || 0,\n\n selfKyc: Math.round((item.completed || 0) * 0.42),\n\n totalKyc: (item.completed || 0) + Math.round((item.completed || 0) * 0.42),\n }));\n\n return (\n <div className=\"chart-card executive-line-chart\">\n <ResponsiveContainer width=\"100%\" height={340}>\n <LineChart\n data={formattedData}\n margin={{\n top: 20,\n right: 12,\n left: 0,\n bottom: 0,\n }}\n >\n <CartesianGrid stroke=\"#e2e8f0\" strokeDasharray=\"3 3\" vertical={false} />\n\n <XAxis\n dataKey=\"label\"\n axisLine={false}\n tickLine={false}\n tick={{\n fill: \"#64748b\",\n fontSize: 12,\n fontWeight: 600,\n }}\n />\n\n <YAxis\n axisLine={false}\n tickLine={false}\n tick={{\n fill: \"#64748b\",\n fontSize: 12,\n }}\n />\n\n <Tooltip\n cursor={{\n stroke: \"#cbd5e1\",\n strokeWidth: 1,\n }}\n contentStyle={{\n background: \"#ffffff\",\n border: \"1px solid #e2e8f0\",\n borderRadius: 18,\n boxShadow: \"0 10px 30px rgba(15,23,42,0.08)\",\n }}\n labelStyle={{\n color: \"#0f172a\",\n fontWeight: 700,\n marginBottom: 10,\n }}\n />\n\n <Legend\n verticalAlign=\"top\"\n align=\"right\"\n iconType=\"circle\"\n wrapperStyle={{\n paddingBottom: 18,\n color: \"#475569\",\n fontWeight: 600,\n }}\n />\n\n {/* TOTAL */}\n\n <Line\n type=\"monotone\"\n dataKey=\"totalKyc\"\n name=\"Total eKYC\"\n stroke=\"#0f172a\"\n strokeWidth={4}\n dot={false}\n activeDot={{\n r: 6,\n }}\n />\n\n {/* AGENCY */}\n\n <Line\n type=\"monotone\"\n dataKey=\"agencyKyc\"\n name=\"Agency eKYC\"\n stroke=\"#3b82f6\"\n strokeWidth={3}\n dot={{\n r: 3,\n }}\n activeDot={{\n r: 6,\n }}\n />\n\n {/* SELF */}\n\n <Line\n type=\"monotone\"\n dataKey=\"selfKyc\"\n name=\"Self eKYC\"\n stroke=\"#10b981\"\n strokeWidth={3}\n dot={{\n r: 3,\n }}\n activeDot={{\n r: 6,\n }}\n />\n </LineChart>\n </ResponsiveContainer>\n </div>\n );\n};\n\nexport default ExecutiveLineChart;\n","import React from \"react\";\nimport { ResponsiveContainer, BarChart, Bar, XAxis, YAxis, Tooltip, CartesianGrid, Legend } from \"recharts\";\n\nconst ExecutiveBarChart = ({ data = [], categories = [], xKey = \"label\" }) => {\n return (\n <div className=\"chart-card\" style={{ minHeight: 320 }}>\n <ResponsiveContainer width=\"100%\" height={320}>\n <BarChart data={data} margin={{ top: 12, right: 16, left: 0, bottom: 0 }}>\n <CartesianGrid stroke=\"rgba(148, 163, 184, 0.12)\" strokeDasharray=\"4 4\" />\n <XAxis dataKey={xKey} axisLine={false} tickLine={false} tick={{ fill: \"#cbd5e1\" }} />\n <YAxis axisLine={false} tickLine={false} tick={{ fill: \"#cbd5e1\" }} />\n <Tooltip contentStyle={{ background: \"#0f172a\", border: \"none\", borderRadius: 14 }} itemStyle={{ color: \"#f8fafc\" }} />\n <Legend verticalAlign=\"top\" align=\"right\" iconType=\"circle\" wrapperStyle={{ color: \"#cbd5e1\" }} />\n {categories.map((series, index) => (\n <Bar\n key={series.key}\n dataKey={series.key}\n name={series.name}\n fill={index === 0 ? \"#34d399\" : \"#60a5fa\"}\n radius={[12, 12, 0, 0]}\n barSize={24}\n />\n ))}\n </BarChart>\n </ResponsiveContainer>\n </div>\n );\n};\n\nexport default ExecutiveBarChart;\n","import React from \"react\";\nimport { ResponsiveContainer, PieChart, Pie, Cell, Tooltip, Legend } from \"recharts\";\n\nconst colors = [\"#22c55e\", \"#38bdf8\", \"#f97316\", \"#facc15\", \"#f43f5e\"];\n\nconst ExecutivePieChart = ({ data = [], dataKey = \"value\", labelKey = \"label\" }) => {\n return (\n <div className=\"chart-card\" style={{ minHeight: 320 }}>\n <ResponsiveContainer width=\"100%\" height={320}>\n <PieChart>\n <Pie data={data} dataKey={dataKey} nameKey={labelKey} cx=\"50%\" cy=\"50%\" outerRadius={110} innerRadius={60} paddingAngle={3} label={{ fill: \"#f8fafc\", fontSize: 12 }}>\n {data.map((entry, index) => (\n <Cell key={`cell-${index}`} fill={colors[index % colors.length]} />\n ))}\n </Pie>\n <Tooltip contentStyle={{ background: \"#0f172a\", border: \"none\", borderRadius: 14, color: \"#f8fafc\" }} />\n <Legend verticalAlign=\"bottom\" align=\"center\" iconType=\"circle\" wrapperStyle={{ color: \"#cbd5e1\", marginTop: 10 }} />\n </PieChart>\n </ResponsiveContainer>\n </div>\n );\n};\n\nexport default ExecutivePieChart;\n","import React, { useMemo, useState } from \"react\";\nimport { useHistory, useLocation } from \"react-router-dom\";\nimport {\n FaChartLine,\n FaUsers,\n FaCheckCircle,\n FaClock,\n FaExclamationTriangle,\n FaUserTie,\n FaMapMarkedAlt,\n FaSearch,\n FaArrowRight,\n} from \"react-icons/fa\";\nimport { ekycMockData } from \"./mockData\";\nimport ExecutiveLineChart from \"./analytics/charts/ExecutiveLineChart\";\nimport ExecutiveBarChart from \"./analytics/charts/ExecutiveBarChart\";\nimport ExecutivePieChart from \"./analytics/charts/ExecutivePieChart\";\n\nconst CeoDashboard = () => {\n const history = useHistory();\n const location = useLocation();\n const [query, setQuery] = useState(\"\");\n const [statusFilter, setStatusFilter] = useState(\"All\");\n\n const basePath = location.pathname.replace(/\\/ceo-dashboard$/, \"\");\n const filters = [\"All\", \"High Priority\", \"Stable\", \"Watchlist\"];\n\n const vendors = useMemo(() => ekycMockData.vendors || [], []);\n const topKpis = useMemo(() => ekycMockData.topKpis || {}, []);\n const dailyTrend = useMemo(() => ekycMockData.dailyTrend || [], []);\n const selfVsAgency = useMemo(() => ekycMockData.selfVsAgency || [], []);\n const pendingVsCompleted = useMemo(() => ekycMockData.pendingVsCompleted || [], []);\n // const rejectionAnalysis = ekycMockData.rejectionAnalysis || [];\n\n const filteredVendors = useMemo(() => {\n return vendors\n .filter((vendor) => {\n if (statusFilter === \"High Priority\") return vendor.successRate < 70;\n if (statusFilter === \"Watchlist\") return vendor.pending > 35000;\n if (statusFilter === \"Stable\") return vendor.successRate >= 70;\n return true;\n })\n .filter((vendor) => {\n if (!query) return true;\n const keyword = query.toLowerCase();\n return (\n vendor.name.toLowerCase().includes(keyword) ||\n vendor.jurisdictions.some((zone) => zone.toLowerCase().includes(keyword)) ||\n vendor.zones.some((zone) => zone.location?.toLowerCase().includes(keyword))\n );\n });\n }, [vendors, query, statusFilter]);\n\n const zoneRows = useMemo(() => {\n return vendors\n .flatMap((vendor) => vendor.zones.map((zone) => ({ ...zone, agency: vendor.name })))\n .filter((row) => row.location)\n .sort((a, b) => (b.activeDemand || 0) - (a.activeDemand || 0));\n }, [vendors]);\n\n const alerts = [\n \"North East District has 22% more pending accounts than last week\",\n \"Agency 2 has a 12% improvement opportunity in Self eKYC adoption\",\n \"Urgent: 18 supervisor escalations raised for NWS Bhera Enclave\",\n \"Risk alert: Rejection trends are rising in Outer North clusters\",\n ];\n\n const routeToVendor = (vendorId) => {\n history.push(`${basePath}/vendors/${vendorId}`);\n };\n\n return (\n <div className=\"ekyc-dashboard-wrapper\">\n <div className=\"dashboard-shell\">\n <section className=\"kpi-grid\">\n {[\n {\n title: \"Total Water Connections\",\n value: topKpis.totalWaterConnections,\n icon: <FaUsers />,\n variant: \"primary\",\n },\n {\n title: \"Total eKYC Completed\",\n value: topKpis.totalEkycCompleted,\n icon: <FaCheckCircle />,\n variant: \"success\",\n },\n {\n title: \"Total Pending\",\n value: topKpis.totalPending,\n icon: <FaClock />,\n variant: \"warning\",\n },\n {\n title: \"Total Rejected\",\n value: topKpis.totalRejected,\n icon: <FaExclamationTriangle />,\n variant: \"danger\",\n },\n {\n title: \"Agency eKYC Completed\",\n value: topKpis.agencyEkycCompleted,\n icon: <FaUserTie />,\n variant: \"info\",\n },\n {\n title: \"Citizen Self eKYC Completed\",\n value: topKpis.citizenSelfEkycCompleted,\n icon: <FaUsers />,\n variant: \"secondary\",\n },\n {\n title: \"Today's eKYC\",\n value: topKpis.todaysEkyc,\n icon: <FaChartLine />,\n variant: \"muted\",\n },\n {\n title: \"Success Rate\",\n value: `${topKpis.successRate}%`,\n icon: <FaCheckCircle />,\n variant: \"success\",\n },\n {\n title: \"Rejection Percentage\",\n value: `${topKpis.rejectionPercentage}%`,\n icon: <FaExclamationTriangle />,\n variant: \"danger\",\n },\n ].map((card) => (\n <article key={card.title} className={`kpi-card card-${card.variant}`}>\n <div className=\"kpi-icon\">{card.icon}</div>\n <div>\n <p className=\"kpi-title\">{card.title}</p>\n <h2>{card.value?.toLocaleString?.() ?? card.value}</h2>\n </div>\n </article>\n ))}\n </section>\n\n <section className=\"vendor-section\">\n <div className=\"section-top\">\n <div>\n <h2>Agency Performance Snapshot</h2>\n <p>Search, filter, and navigate into detailed analytics for every assigned vendor.</p>\n </div>\n <div className=\"vendor-filters\">\n <div className=\"search-box\">\n <FaSearch />\n <input type=\"text\" placeholder=\"Search agency, jurisdiction, location\" value={query} onChange={(e) => setQuery(e.target.value)} />\n </div>\n <div className=\"status-pill-group\">\n {filters.map((status) => (\n <button key={status} className={`status-pill ${statusFilter === status ? \"active\" : \"\"}`} onClick={() => setStatusFilter(status)}>\n {status}\n </button>\n ))}\n </div>\n </div>\n </div>\n\n <div className=\"vendor-grid\">\n {filteredVendors.map((vendor) => (\n <div key={vendor.id} className=\"vendor-card glass-card\" onClick={() => routeToVendor(vendor.id)}>\n <div className=\"vendor-card-top\">\n <div>\n <p className=\"vendor-chip\">{vendor.name}</p>\n <h3>{vendor.assignedConnections.toLocaleString()}</h3>\n <p className=\"vendor-subtitle\">Assigned connections across {vendor.jurisdictions.length} jurisdiction(s)</p>\n </div>\n <div className=\"vendor-progress-value\">{vendor.progress}%</div>\n </div>\n <div className=\"progress-bar\">\n <div className=\"progress-fill\" style={{ width: `${vendor.progress}%` }} />\n </div>\n <div className=\"vendor-stats-grid\">\n <div>\n <strong>{vendor.completedEkyc.toLocaleString()}</strong>\n <span>Agency eKYC</span>\n </div>\n <div>\n <strong>{vendor.selfEkyc.toLocaleString()}</strong>\n <span>Self eKYC</span>\n </div>\n <div>\n <strong>{vendor.pending.toLocaleString()}</strong>\n <span>Pending</span>\n </div>\n <div>\n <strong>{vendor.rejected.toLocaleString()}</strong>\n <span>Rejected</span>\n </div>\n </div>\n <div className=\"vendor-card-footer\">\n <span>{vendor.activeSurveyors} Surveyors</span>\n <span>{vendor.supervisors} Supervisors</span>\n <span>{vendor.jurisdictions.join(\", \")}</span>\n </div>\n <div className=\"vendor-card-action\">\n <span>Explore analytics</span>\n <FaArrowRight />\n </div>\n </div>\n ))}\n </div>\n </section>\n\n <section className=\"analytics-grid\">\n <div className=\"analytics-panel glass-card\">\n <div className=\"section-header\">\n <h2>Daily eKYC Trend</h2>\n <span className=\"badge success\">Live index</span>\n </div>\n <ExecutiveLineChart data={dailyTrend} dataKey=\"completed\" name=\"Completed\" />\n </div>\n\n <div className=\"analytics-panel glass-card\">\n <div className=\"section-header\">\n <h2>Self vs Agency eKYC</h2>\n <span className=\"badge info\">Adoption</span>\n </div>\n <ExecutiveBarChart\n data={selfVsAgency}\n categories={[\n { key: \"agency\", name: \"Agency\" },\n { key: \"citizen\", name: \"Citizen\" },\n ]}\n />\n </div>\n\n <div className=\"analytics-panel glass-card\">\n <div className=\"section-header\">\n <h2>Pending vs Completed</h2>\n <span className=\"badge warning\">Operational pulse</span>\n </div>\n <ExecutivePieChart data={pendingVsCompleted} dataKey=\"completed\" labelKey=\"label\" />\n </div>\n </section>\n\n <section className=\"zone-section\">\n <div className=\"section-header\">\n <div>\n <h2>\n <FaMapMarkedAlt /> Jurisdiction Performance\n </h2>\n <p>Top zones evaluated from the full agency dataset.</p>\n </div>\n <button className=\"secondary-button\">Export Zone Data</button>\n </div>\n\n <div className=\"table-wrapper glass-card\">\n <table>\n <thead>\n <tr>\n <th>Agency</th>\n <th>Location</th>\n <th>District</th>\n <th>Assigned</th>\n <th>Agency eKYC</th>\n <th>Pending</th>\n <th>Progress</th>\n </tr>\n </thead>\n <tbody>\n {zoneRows.slice(0, 10).map((zone, index) => (\n <tr key={`${zone.agency}-${zone.location}-${index}`}>\n <td>{zone.agency}</td>\n <td>{zone.location}</td>\n <td>{zone.district || zone.cluster}</td>\n <td>{zone.activeDemand?.toLocaleString() ?? \"—\"}</td>\n <td>{zone.pppZones?.toLocaleString() ?? \"—\"}</td>\n <td>{zone.inactiveDemand?.toLocaleString() ?? \"—\"}</td>\n <td>\n <span className=\"status-badge success\">\n {Math.min(100, Math.round(((zone.pppZones || 0) / Math.max(zone.activeDemand || 1, 1)) * 100))}%\n </span>\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n </section>\n\n <section className=\"bottom-grid\">\n <div className=\"alerts-panel glass-card\">\n <div className=\"section-header\">\n <h2>\n <FaExclamationTriangle /> Critical Alerts\n </h2>\n </div>\n <div className=\"alerts-list\">\n {alerts.map((alert) => (\n <div key={alert} className=\"alert-card\">\n <FaExclamationTriangle />\n <p>{alert}</p>\n </div>\n ))}\n </div>\n </div>\n\n <div className=\"efficiency-panel glass-card\">\n <div className=\"section-header\">\n <h2>\n <FaUserTie /> Workforce & Efficiency\n </h2>\n </div>\n <div className=\"efficiency-grid\">\n <div className=\"efficiency-box\">\n <h3>48</h3>\n <p>Supervisors Online</p>\n </div>\n <div className=\"efficiency-box\">\n <h3>168</h3>\n <p>Surveyors Active</p>\n </div>\n <div className=\"efficiency-box\">\n <h3>{topKpis.todayEkyc?.toLocaleString()}</h3>\n <p>eKYC Completed Today</p>\n </div>\n <div className=\"efficiency-box\">\n <h3>{topKpis.successRate}%</h3>\n <p>Operational Efficiency</p>\n </div>\n </div>\n </div>\n </section>\n </div>\n </div>\n );\n};\n\nexport default CeoDashboard;\n","import React, { useMemo } from \"react\";\nimport { useHistory, useParams } from \"react-router-dom\";\nimport { FaArrowLeft, FaUsers, FaCheckCircle, FaClock, FaExclamationTriangle, FaMapMarkedAlt } from \"react-icons/fa\";\nimport { ekycMockData } from \"./mockData\";\nimport ExecutiveLineChart from \"./analytics/charts/ExecutiveLineChart\";\nimport ExecutiveBarChart from \"./analytics/charts/ExecutiveBarChart\";\nimport ExecutivePieChart from \"./analytics/charts/ExecutivePieChart\";\nimport { Loader } from \"@djb25/digit-ui-react-components\";\n\nconst VendorDetails = () => {\n const history = useHistory();\n const { vendorId = 1 } = useParams();\n const vendor = useMemo(() => ekycMockData.vendors.find((item) => item.id === Number(vendorId)), [vendorId]);\n\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const { isLoading, data: dashboardData } = Digit.Hooks.ekyc.useEkycSurveyorDashboard(\n {},\n {\n tenantId,\n offset: 0,\n limit: 10,\n },\n {\n enabled: !!tenantId,\n }\n );\n\n if (!vendor) {\n return (\n <div className=\"ekyc-dashboard-wrapper\">\n <div className=\"dashboard-shell\">\n <div className=\"detail-header\">\n <button className=\"back-button\" onClick={() => history.goBack()}>\n <FaArrowLeft /> Back\n </button>\n </div>\n <div className=\"empty-state\">\n <h2>Vendor analytics not found</h2>\n <p>The selected vendor does not exist in the current report. Please return to the dashboard.</p>\n </div>\n </div>\n </div>\n );\n }\n\n const zoneRows = vendor.zones.slice(0, 8);\n\n const performanceData = vendor.dailyPerformance.map((row) => ({\n day: row.day,\n completed: row.completed,\n pending: row.pending,\n rejected: row.rejected,\n }));\n\n if (isLoading) <Loader />;\n\n return (\n <div className=\"ekyc-dashboard-wrapper\">\n <div className=\"dashboard-shell detail-shell\">\n <section className=\"kpi-grid detail-kpi-grid\">\n {[\n {\n label: \"Assigned Connections\",\n value: vendor.assignedConnections,\n icon: <FaUsers />,\n variant: \"primary\",\n },\n {\n label: \"Agency eKYC\",\n value: vendor.completedEkyc,\n icon: <FaCheckCircle />,\n variant: \"success\",\n },\n {\n label: \"Self eKYC\",\n value: vendor.selfEkyc,\n icon: <FaUsers />,\n variant: \"info\",\n },\n {\n label: \"Pending\",\n value: vendor.pending,\n icon: <FaClock />,\n variant: \"warning\",\n },\n {\n label: \"Rejected\",\n value: vendor.rejected,\n icon: <FaExclamationTriangle />,\n variant: \"danger\",\n },\n {\n label: \"Success Rate\",\n value: `${vendor.successRate}%`,\n icon: <FaCheckCircle />,\n variant: \"success\",\n },\n ].map((item) => (\n <article key={item.label} className={`kpi-card card-${item.variant}`}>\n <div className=\"kpi-icon\">{item.icon}</div>\n <div>\n <p className=\"kpi-title\">{item.label}</p>\n <h2>{item.value?.toLocaleString?.() ?? item.value}</h2>\n </div>\n </article>\n ))}\n </section>\n\n <section className=\"analytics-grid detail-analytics-grid\">\n <div className=\"analytics-panel glass-card\">\n <div className=\"section-header\">\n <h2>Daily Completion Trend</h2>\n <span className=\"badge success\">Performance</span>\n </div>\n <ExecutiveLineChart data={performanceData} dataKey=\"completed\" name=\"Completed\" />\n </div>\n\n <div className=\"analytics-panel glass-card\">\n <div className=\"section-header\">\n <h2>Pending vs Completed</h2>\n <span className=\"badge warning\">Workload</span>\n </div>\n <ExecutiveBarChart\n data={performanceData}\n categories={[\n { key: \"completed\", name: \"Completed\" },\n { key: \"pending\", name: \"Pending\" },\n ]}\n xKey=\"day\"\n />\n </div>\n\n <div className=\"analytics-panel glass-card\">\n <div className=\"section-header\">\n <h2>Self vs Agency Split</h2>\n <span className=\"badge info\">Adoption</span>\n </div>\n <ExecutivePieChart\n data={[\n { label: \"Agency eKYC\", value: vendor.completedEkyc },\n { label: \"Citizen Self eKYC\", value: vendor.selfEkyc },\n ]}\n dataKey=\"value\"\n labelKey=\"label\"\n />\n </div>\n </section>\n\n <section className=\"zone-section detail-zone-section\">\n <div className=\"section-header\">\n <div>\n <h2>\n <FaMapMarkedAlt /> Zone-wise Jurisdiction Analytics\n </h2>\n <p>Drill into the current operational load and heatmap intensity for this vendor.</p>\n </div>\n </div>\n <div className=\"table-wrapper glass-card\">\n <table>\n <thead>\n <tr>\n <th>Zone</th>\n <th>Cluster</th>\n <th>Assigned</th>\n <th>Agency eKYC</th>\n <th>Pending</th>\n <th>Activity Score</th>\n </tr>\n </thead>\n <tbody>\n {zoneRows.map((row, index) => (\n <tr key={`${row.location}-${index}`}>\n <td>{row.location}</td>\n <td>{row.cluster || row.district}</td>\n <td>{row.activeDemand?.toLocaleString() ?? \"—\"}</td>\n <td>{row.pppZones?.toLocaleString() ?? \"—\"}</td>\n <td>{row.inactiveDemand?.toLocaleString() ?? \"—\"}</td>\n <td>\n <span className={`status-badge ${row.intensityScore > 65 ? \"danger\" : row.intensityScore > 45 ? \"warning\" : \"success\"}`}>\n {row.intensityScore}%\n </span>\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n </section>\n\n <section className=\"bottom-grid detail-bottom-grid\">\n <div className=\"cards-summary glass-card\">\n <h2>Operational Efficiency</h2>\n <div className=\"efficiency-grid\">\n <div className=\"efficiency-box\">\n <h3>{vendor.activeSurveyors}</h3>\n <p>Active Surveyors</p>\n </div>\n <div className=\"efficiency-box\">\n <h3>{vendor.supervisors}</h3>\n <p>Supervisors</p>\n </div>\n <div className=\"efficiency-box\">\n <h3>{vendor.progress}%</h3>\n <p>Execution Rate</p>\n </div>\n <div className=\"efficiency-box\">\n <h3>{vendor.dailyPerformance.slice(-1)[0]?.completed?.toLocaleString()}</h3>\n <p>Latest Day Completed</p>\n </div>\n </div>\n </div>\n\n <div className=\"cards-summary glass-card\">\n <h2>Supervisor Pulse</h2>\n <div className=\"pulse-list\">\n {vendor.jurisdictions.map((zone) => (\n <div key={zone} className=\"pulse-row\">\n <span>{zone}</span>\n <span>{Math.max(12, Math.round(Math.random() * 38))} active</span>\n </div>\n ))}\n </div>\n </div>\n </section>\n </div>\n </div>\n );\n};\n\nexport default VendorDetails;\n","import React, { useState } from \"react\";\nimport { useHistory } from \"react-router-dom\";\nimport { useTranslation } from \"react-i18next\";\n\nconst useInboxTableConfig = ({\n parentRoute,\n onPageSizeChange,\n formState,\n totalCount,\n table,\n dispatch,\n checkPathName,\n onSortingByData,\n tenantId,\n inboxStyles = {},\n tableStyle = {},\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const [selectedKno, setSelectedKno] = useState(\"\");\n const { data: reviewData, getReview } = Digit.Hooks.ekyc.useEkycAPI(\"review\", tenantId);\n const handleReview = (kno) => {\n setSelectedKno(kno);\n getReview({ kno });\n };\n\n const limit = formState?.tableForm?.limit || 10;\n const offset = formState?.tableForm?.offset || 0;\n const userType = Digit.SessionStorage.get(\"User\")?.info?.type?.toLowerCase() || \"citizen\";\n\n React.useEffect(() => {\n if (reviewData) {\n history.push(`/digit-ui/${userType}/ekyc/review/${selectedKno}`, { aadhaarData: reviewData?.aadhaarData, reviewData });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [reviewData]);\n\n const tableColumnConfig = [\n {\n Header: t(\"EKYC_APPLICATION_NO\"),\n accessor: \"applicationNumber\",\n disableSortBy: true,\n Cell: ({ row }) => {\n const kno = row.original?.kno || row.original?.applicationNumber || \"NA\";\n return (\n <span\n className=\"ekyc-application-link\"\n style={{ color: \"#add8f7\", cursor: \"pointer\", fontWeight: \"bold\" }}\n onClick={() => handleReview(kno)}\n >\n {kno}\n </span>\n );\n },\n },\n {\n Header: t(\"EKYC_CITIZEN_NAME\"),\n accessor: \"citizenName\",\n Cell: ({ row }) => <span>{row.original?.citizenName || \"NA\"}</span>,\n },\n {\n Header: t(\"EKYC_STATUS\"),\n accessor: \"actionStatus\",\n Cell: ({ row }) => {\n const status = row.original?.status || \"DEFAULT\";\n return <span className={`ekyc-status-tag ${status}`}>{t(`${status}`)}</span>;\n },\n },\n {\n Header: t(\"EKYC_EKYC_STATUS\"),\n accessor: \"ekycStatus\",\n Cell: ({ row }) => {\n const ekycStatus = row.original?.ekycstatus || \"NA\";\n return <span className={`ekyc-status-tag ${ekycStatus}`}>{t(`${ekycStatus}`)}</span>;\n },\n },\n {\n Header: t(\"EKYC_REVIEW\"),\n accessor: \"review\",\n Cell: ({ row }) => {\n const kno = row.original?.kno || row.original?.applicationNumber || \"NA\";\n return (\n <span\n className=\"ekyc-application-link\"\n style={{ color: \"#add8f7\", cursor: \"pointer\", fontWeight: \"bold\" }}\n onClick={() => handleReview(kno)}\n >\n {t(\"EKYC_REVIEW\")}\n </span>\n );\n },\n },\n ];\n\n return {\n getCellProps: (cellInfo) => {\n return {\n style: {\n padding: \"8px\",\n fontSize: \"12px\",\n },\n };\n },\n disableSort: false,\n autoSort: false,\n manualPagination: true,\n initSortId: \"applicationDate\",\n onPageSizeChange: onPageSizeChange,\n currentPage: Math.floor(offset / limit),\n onNextPage: () =>\n dispatch({\n action: \"mutateTableForm\",\n data: { ...formState.tableForm, offset: parseInt(formState.tableForm?.offset) + parseInt(formState.tableForm?.limit) },\n checkPathName,\n }),\n onPrevPage: () =>\n dispatch({\n action: \"mutateTableForm\",\n data: { ...formState.tableForm, offset: parseInt(formState.tableForm?.offset) - parseInt(formState.tableForm?.limit) },\n checkPathName,\n }),\n pageSizeLimit: limit,\n onSort: onSortingByData,\n // sortParams: [{id: getValues(\"sortBy\"), desc: getValues(\"sortOrder\") === \"DESC\" ? true : false}],\n totalRecords: totalCount,\n onSearch: formState?.searchForm?.message,\n onLastPage: () =>\n dispatch({\n action: \"mutateTableForm\",\n data: { ...formState.tableForm, offset: Math.ceil(totalCount / 10) * 10 - parseInt(formState.tableForm?.limit) },\n checkPathName,\n }),\n onFirstPage: () => dispatch({ action: \"mutateTableForm\", data: { ...formState.tableForm, offset: 0 }, checkPathName }),\n // globalSearch: {searchForItemsInTable},\n // searchQueryForTable,\n data: table,\n columns: tableColumnConfig,\n inboxStyles: { ...inboxStyles },\n tableStyle: { ...tableStyle },\n };\n};\n\nexport default useInboxTableConfig;\n","// A type of promise-like that resolves synchronously and supports only one observer\nexport const _Pact = /*#__PURE__*/(function() {\n\tfunction _Pact() {}\n\t_Pact.prototype.then = function(onFulfilled, onRejected) {\n\t\tconst result = new _Pact();\n\t\tconst state = this.s;\n\t\tif (state) {\n\t\t\tconst callback = state & 1 ? onFulfilled : onRejected;\n\t\t\tif (callback) {\n\t\t\t\ttry {\n\t\t\t\t\t_settle(result, 1, callback(this.v));\n\t\t\t\t} catch (e) {\n\t\t\t\t\t_settle(result, 2, e);\n\t\t\t\t}\n\t\t\t\treturn result;\n\t\t\t} else {\n\t\t\t\treturn this;\n\t\t\t}\n\t\t}\n\t\tthis.o = function(_this) {\n\t\t\ttry {\n\t\t\t\tconst value = _this.v;\n\t\t\t\tif (_this.s & 1) {\n\t\t\t\t\t_settle(result, 1, onFulfilled ? onFulfilled(value) : value);\n\t\t\t\t} else if (onRejected) {\n\t\t\t\t\t_settle(result, 1, onRejected(value));\n\t\t\t\t} else {\n\t\t\t\t\t_settle(result, 2, value);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t_settle(result, 2, e);\n\t\t\t}\n\t\t};\n\t\treturn result;\n\t}\n\treturn _Pact;\n})();\n\n// Settles a pact synchronously\nexport function _settle(pact, state, value) {\n\tif (!pact.s) {\n\t\tif (value instanceof _Pact) {\n\t\t\tif (value.s) {\n\t\t\t\tif (state & 1) {\n\t\t\t\t\tstate = value.s;\n\t\t\t\t}\n\t\t\t\tvalue = value.v;\n\t\t\t} else {\n\t\t\t\tvalue.o = _settle.bind(null, pact, state);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tif (value && value.then) {\n\t\t\tvalue.then(_settle.bind(null, pact, state), _settle.bind(null, pact, 2));\n\t\t\treturn;\n\t\t}\n\t\tpact.s = state;\n\t\tpact.v = value;\n\t\tconst observer = pact.o;\n\t\tif (observer) {\n\t\t\tobserver(pact);\n\t\t}\n\t}\n}\n\nexport function _isSettledPact(thenable) {\n\treturn thenable instanceof _Pact && thenable.s & 1;\n}\n\n// Converts argument to a function that always returns a Promise\nexport function _async(f) {\n\treturn function() {\n\t\tfor (var args = [], i = 0; i < arguments.length; i++) {\n\t\t\targs[i] = arguments[i];\n\t\t}\n\t\ttry {\n\t\t\treturn Promise.resolve(f.apply(this, args));\n\t\t} catch(e) {\n\t\t\treturn Promise.reject(e);\n\t\t}\n\t}\n}\n\n// Awaits on a value that may or may not be a Promise (equivalent to the await keyword in ES2015, with continuations passed explicitly)\nexport function _await(value, then, direct) {\n\tif (direct) {\n\t\treturn then ? then(value) : value;\n\t}\n\tif (!value || !value.then) {\n\t\tvalue = Promise.resolve(value);\n\t}\n\treturn then ? value.then(then) : value;\n}\n\n// Awaits on a value that may or may not be a Promise, then ignores it\nexport function _awaitIgnored(value, direct) {\n\tif (!direct) {\n\t\treturn value && value.then ? value.then(_empty) : Promise.resolve();\n\t}\n}\n\n// Proceeds after a value has resolved, or proceeds immediately if the value is not thenable\nexport function _continue(value, then) {\n\treturn value && value.then ? value.then(then) : then(value);\n}\n\n// Proceeds after a value has resolved, or proceeds immediately if the value is not thenable\nexport function _continueIgnored(value) {\n\tif (value && value.then) {\n\t\treturn value.then(_empty);\n\t}\n}\n\n// Asynchronously iterate through an object that has a length property, passing the index as the first argument to the callback (even as the length property changes)\nexport function _forTo(array, body, check) {\n\tvar i = -1, pact, reject;\n\tfunction _cycle(result) {\n\t\ttry {\n\t\t\twhile (++i < array.length && (!check || !check())) {\n\t\t\t\tresult = body(i);\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult.then(_cycle, reject || (reject = _settle.bind(null, pact = new _Pact(), 2)));\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (pact) {\n\t\t\t\t_settle(pact, 1, result);\n\t\t\t} else {\n\t\t\t\tpact = result;\n\t\t\t}\n\t\t} catch (e) {\n\t\t\t_settle(pact || (pact = new _Pact()), 2, e);\n\t\t}\n\t}\n\t_cycle();\n\treturn pact;\n}\n\n// Asynchronously iterate through an object's properties (including properties inherited from the prototype)\n// Uses a snapshot of the object's properties\nexport function _forIn(target, body, check) {\n\tvar keys = [];\n\tfor (var key in target) {\n\t\tkeys.push(key);\n\t}\n\treturn _forTo(keys, function(i) { return body(keys[i]); }, check);\n}\n\n// Asynchronously iterate through an object's own properties (excluding properties inherited from the prototype)\n// Uses a snapshot of the object's properties\nexport function _forOwn(target, body, check) {\n\tvar keys = [];\n\tfor (var key in target) {\n\t\tif (Object.prototype.hasOwnProperty.call(target, key)) {\n\t\t\tkeys.push(key);\n\t\t}\n\t}\n\treturn _forTo(keys, function(i) { return body(keys[i]); }, check);\n}\n\nexport const _iteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.iterator || (Symbol.iterator = Symbol(\"Symbol.iterator\"))) : \"@@iterator\";\n\n// Asynchronously iterate through an object's values\n// Uses for...of if the runtime supports it, otherwise iterates until length on a copy\nexport function _forOf(target, body, check) {\n\tif (typeof target[_iteratorSymbol] === \"function\") {\n\t\tvar iterator = target[_iteratorSymbol](), step, pact, reject;\n\t\tfunction _cycle(result) {\n\t\t\ttry {\n\t\t\t\twhile (!(step = iterator.next()).done && (!check || !check())) {\n\t\t\t\t\tresult = body(step.value);\n\t\t\t\t\tif (result && result.then) {\n\t\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tresult.then(_cycle, reject || (reject = _settle.bind(null, pact = new _Pact(), 2)));\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (pact) {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t} else {\n\t\t\t\t\tpact = result;\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t_settle(pact || (pact = new _Pact()), 2, e);\n\t\t\t}\n\t\t}\n\t\t_cycle();\n\t\tif (iterator.return) {\n\t\t\tvar _fixup = function(value) {\n\t\t\t\ttry {\n\t\t\t\t\tif (!step.done) {\n\t\t\t\t\t\titerator.return();\n\t\t\t\t\t}\n\t\t\t\t} catch(e) {\n\t\t\t\t}\n\t\t\t\treturn value;\n\t\t\t}\n\t\t\tif (pact && pact.then) {\n\t\t\t\treturn pact.then(_fixup, function(e) {\n\t\t\t\t\tthrow _fixup(e);\n\t\t\t\t});\n\t\t\t}\n\t\t\t_fixup();\n\t\t}\n\t\treturn pact;\n\t}\n\t// No support for Symbol.iterator\n\tif (!(\"length\" in target)) {\n\t\tthrow new TypeError(\"Object is not iterable\");\n\t}\n\t// Handle live collections properly\n\tvar values = [];\n\tfor (var i = 0; i < target.length; i++) {\n\t\tvalues.push(target[i]);\n\t}\n\treturn _forTo(values, function(i) { return body(values[i]); }, check);\n}\n\nexport const _asyncIteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.asyncIterator || (Symbol.asyncIterator = Symbol(\"Symbol.asyncIterator\"))) : \"@@asyncIterator\";\n\n// Asynchronously iterate on a value using it's async iterator if present, or its synchronous iterator if missing\nexport function _forAwaitOf(target, body, check) {\n\tif (typeof target[_asyncIteratorSymbol] === \"function\") {\n\t\tvar pact = new _Pact();\n\t\tvar iterator = target[_asyncIteratorSymbol]();\n\t\titerator.next().then(_resumeAfterNext).then(void 0, _reject);\n\t\treturn pact;\n\t\tfunction _resumeAfterBody(result) {\n\t\t\tif (check && check()) {\n\t\t\t\treturn _settle(pact, 1, iterator.return ? iterator.return().then(function() { return result; }) : result);\n\t\t\t}\n\t\t\titerator.next().then(_resumeAfterNext).then(void 0, _reject);\n\t\t}\n\t\tfunction _resumeAfterNext(step) {\n\t\t\tif (step.done) {\n\t\t\t\t_settle(pact, 1);\n\t\t\t} else {\n\t\t\t\tPromise.resolve(body(step.value)).then(_resumeAfterBody).then(void 0, _reject);\n\t\t\t}\n\t\t}\n\t\tfunction _reject(error) {\n\t\t\t_settle(pact, 2, iterator.return ? iterator.return().then(function() { return error; }) : error);\n\t\t}\n\t}\n\treturn Promise.resolve(_forOf(target, function(value) { return Promise.resolve(value).then(body); }, check));\n}\n\n// Asynchronously implement a generic for loop\nexport function _for(test, update, body) {\n\tvar stage;\n\tfor (;;) {\n\t\tvar shouldContinue = test();\n\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\tshouldContinue = shouldContinue.v;\n\t\t}\n\t\tif (!shouldContinue) {\n\t\t\treturn result;\n\t\t}\n\t\tif (shouldContinue.then) {\n\t\t\tstage = 0;\n\t\t\tbreak;\n\t\t}\n\t\tvar result = body();\n\t\tif (result && result.then) {\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.s;\n\t\t\t} else {\n\t\t\t\tstage = 1;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif (update) {\n\t\t\tvar updateValue = update();\n\t\t\tif (updateValue && updateValue.then && !_isSettledPact(updateValue)) {\n\t\t\t\tstage = 2;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\tvar pact = new _Pact();\n\tvar reject = _settle.bind(null, pact, 2);\n\t(stage === 0 ? shouldContinue.then(_resumeAfterTest) : stage === 1 ? result.then(_resumeAfterBody) : updateValue.then(_resumeAfterUpdate)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterBody(value) {\n\t\tresult = value;\n\t\tdo {\n\t\t\tif (update) {\n\t\t\t\tupdateValue = update();\n\t\t\t\tif (updateValue && updateValue.then && !_isSettledPact(updateValue)) {\n\t\t\t\t\tupdateValue.then(_resumeAfterUpdate).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\tshouldContinue = test();\n\t\t\tif (!shouldContinue || (_isSettledPact(shouldContinue) && !shouldContinue.v)) {\n\t\t\t\t_settle(pact, 1, result);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.v;\n\t\t\t}\n\t\t} while (!result || !result.then);\n\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t}\n\tfunction _resumeAfterTest(shouldContinue) {\n\t\tif (shouldContinue) {\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t} else {\n\t\t\t\t_resumeAfterBody(result);\n\t\t\t}\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n\tfunction _resumeAfterUpdate() {\n\t\tif (shouldContinue = test()) {\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t} else {\n\t\t\t\t_resumeAfterTest(shouldContinue);\n\t\t\t}\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n}\n\n// Asynchronously implement a do ... while loop\nexport function _do(body, test) {\n\tvar awaitBody;\n\tdo {\n\t\tvar result = body();\n\t\tif (result && result.then) {\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.v;\n\t\t\t} else {\n\t\t\t\tawaitBody = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tvar shouldContinue = test();\n\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\tshouldContinue = shouldContinue.v;\n\t\t}\n\t\tif (!shouldContinue) {\n\t\t\treturn result;\n\t\t}\n\t} while (!shouldContinue.then);\n\tconst pact = new _Pact();\n\tconst reject = _settle.bind(null, pact, 2);\n\t(awaitBody ? result.then(_resumeAfterBody) : shouldContinue.then(_resumeAfterTest)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterBody(value) {\n\t\tresult = value;\n\t\tfor (;;) {\n\t\t\tshouldContinue = test();\n\t\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\t\tshouldContinue = shouldContinue.v;\n\t\t\t}\n\t\t\tif (!shouldContinue) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\tresult = result.v;\n\t\t\t\t} else {\n\t\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t_settle(pact, 1, result);\n\t}\n\tfunction _resumeAfterTest(shouldContinue) {\n\t\tif (shouldContinue) {\n\t\t\tdo {\n\t\t\t\tresult = body();\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tshouldContinue = test();\n\t\t\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\t\t\tshouldContinue = shouldContinue.v;\n\t\t\t\t}\n\t\t\t\tif (!shouldContinue) {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} while (!shouldContinue.then);\n\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n}\n\n// Asynchronously implement a switch statement\nexport function _switch(discriminant, cases) {\n\tvar dispatchIndex = -1;\n\tvar awaitBody;\n\touter: {\n\t\tfor (var i = 0; i < cases.length; i++) {\n\t\t\tvar test = cases[i][0];\n\t\t\tif (test) {\n\t\t\t\tvar testValue = test();\n\t\t\t\tif (testValue && testValue.then) {\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\t\t\t\tif (testValue === discriminant) {\n\t\t\t\t\tdispatchIndex = i;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Found the default case, set it as the pending dispatch case\n\t\t\t\tdispatchIndex = i;\n\t\t\t}\n\t\t}\n\t\tif (dispatchIndex !== -1) {\n\t\t\tdo {\n\t\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\t\twhile (!body) {\n\t\t\t\t\tdispatchIndex++;\n\t\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t\t}\n\t\t\t\tvar result = body();\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tawaitBody = true;\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\t\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\t\tdispatchIndex++;\n\t\t\t} while (fallthroughCheck && !fallthroughCheck());\n\t\t\treturn result;\n\t\t}\n\t}\n\tconst pact = new _Pact();\n\tconst reject = _settle.bind(null, pact, 2);\n\t(awaitBody ? result.then(_resumeAfterBody) : testValue.then(_resumeAfterTest)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterTest(value) {\n\t\tfor (;;) {\n\t\t\tif (value === discriminant) {\n\t\t\t\tdispatchIndex = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (++i === cases.length) {\n\t\t\t\tif (dispatchIndex !== -1) {\n\t\t\t\t\tbreak;\n\t\t\t\t} else {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\ttest = cases[i][0];\n\t\t\tif (test) {\n\t\t\t\tvalue = test();\n\t\t\t\tif (value && value.then) {\n\t\t\t\t\tvalue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tdispatchIndex = i;\n\t\t\t}\n\t\t}\n\t\tdo {\n\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\twhile (!body) {\n\t\t\t\tdispatchIndex++;\n\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t}\n\t\t\tvar result = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\tdispatchIndex++;\n\t\t} while (fallthroughCheck && !fallthroughCheck());\n\t\t_settle(pact, 1, result);\n\t}\n\tfunction _resumeAfterBody(result) {\n\t\tfor (;;) {\n\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\tif (!fallthroughCheck || fallthroughCheck()) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdispatchIndex++;\n\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\twhile (!body) {\n\t\t\t\tdispatchIndex++;\n\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\t_settle(pact, 1, result);\n\t}\n}\n\n// Asynchronously call a function and pass the result to explicitly passed continuations\nexport function _call(body, then, direct) {\n\tif (direct) {\n\t\treturn then ? then(body()) : body();\n\t}\n\ttry {\n\t\tvar result = Promise.resolve(body());\n\t\treturn then ? result.then(then) : result;\n\t} catch (e) {\n\t\treturn Promise.reject(e);\n\t}\n}\n\n// Asynchronously call a function and swallow the result\nexport function _callIgnored(body, direct) {\n\treturn _call(body, _empty, direct);\n}\n\n// Asynchronously call a function and pass the result to explicitly passed continuations\nexport function _invoke(body, then) {\n\tvar result = body();\n\tif (result && result.then) {\n\t\treturn result.then(then);\n\t}\n\treturn then(result);\n}\n\n// Asynchronously call a function and swallow the result\nexport function _invokeIgnored(body) {\n\tvar result = body();\n\tif (result && result.then) {\n\t\treturn result.then(_empty);\n\t}\n}\n\n// Asynchronously call a function and send errors to recovery continuation\nexport function _catch(body, recover) {\n\ttry {\n\t\tvar result = body();\n\t} catch(e) {\n\t\treturn recover(e);\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(void 0, recover);\n\t}\n\treturn result;\n}\n\n// Asynchronously await a promise and pass the result to a finally continuation\nexport function _finallyRethrows(body, finalizer) {\n\ttry {\n\t\tvar result = body();\n\t} catch (e) {\n\t\treturn finalizer(true, e);\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(finalizer.bind(null, false), finalizer.bind(null, true));\n\t}\n\treturn finalizer(false, result);\n}\n\n// Asynchronously await a promise and invoke a finally continuation that always overrides the result\nexport function _finally(body, finalizer) {\n\ttry {\n\t\tvar result = body();\n\t} catch (e) {\n\t\treturn finalizer();\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(finalizer, finalizer);\n\t}\n\treturn finalizer();\n}\n\n// Rethrow or return a value from a finally continuation\nexport function _rethrow(thrown, value) {\n\tif (thrown)\n\t\tthrow value;\n\treturn value;\n}\n\n// Empty function to implement break and other control flow that ignores asynchronous results\nexport function _empty() {\n}\n\n// Sentinel value for early returns in generators \nexport const _earlyReturn = /*#__PURE__*/ {};\n\n// Asynchronously call a function and send errors to recovery continuation, skipping early returns\nexport function _catchInGenerator(body, recover) {\n\treturn _catch(body, function(e) {\n\t\tif (e === _earlyReturn) {\n\t\t\tthrow e;\n\t\t}\n\t\treturn recover(e);\n\t});\n}\n\n// Asynchronous generator class; accepts the entrypoint of the generator, to which it passes itself when the generator should start\nexport const _AsyncGenerator = /*#__PURE__*/(function() {\n\tfunction _AsyncGenerator(entry) {\n\t\tthis._entry = entry;\n\t\tthis._pact = null;\n\t\tthis._resolve = null;\n\t\tthis._return = null;\n\t\tthis._promise = null;\n\t}\n\n\tfunction _wrapReturnedValue(value) {\n\t\treturn { value: value, done: true };\n\t}\n\tfunction _wrapYieldedValue(value) {\n\t\treturn { value: value, done: false };\n\t}\n\n\t_AsyncGenerator.prototype._yield = function(value) {\n\t\t// Yield the value to the pending next call\n\t\tthis._resolve(value && value.then ? value.then(_wrapYieldedValue) : _wrapYieldedValue(value));\n\t\t// Return a pact for an upcoming next/return/throw call\n\t\treturn this._pact = new _Pact();\n\t};\n\t_AsyncGenerator.prototype.next = function(value) {\n\t\t// Advance the generator, starting it if it has yet to be started\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tconst _entry = _this._entry;\n\t\t\t\tif (_entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the next call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Start the generator\n\t\t\t\t_this._entry = null;\n\t\t\t\t_this._resolve = resolve;\n\t\t\t\tfunction returnValue(value) {\n\t\t\t\t\t_this._resolve(value && value.then ? value.then(_wrapReturnedValue) : _wrapReturnedValue(value));\n\t\t\t\t\t_this._pact = null;\n\t\t\t\t\t_this._resolve = null;\n\t\t\t\t}\n\t\t\t\tvar result = _entry(_this);\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tresult.then(returnValue, function(error) {\n\t\t\t\t\t\tif (error === _earlyReturn) {\n\t\t\t\t\t\t\treturnValue(_this._return);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst pact = new _Pact();\n\t\t\t\t\t\t\t_this._resolve(pact);\n\t\t\t\t\t\t\t_this._pact = null;\n\t\t\t\t\t\t\t_this._resolve = null;\n\t\t\t\t\t\t\t_resolve(pact, 2, error);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\treturnValue(result);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Generator is started and a yield expression is pending, settle it\n\t\t\t\t_this._pact = null;\n\t\t\t\t_this._resolve = resolve;\n\t\t\t\t_settle(_pact, 1, value);\n\t\t\t}\n\t\t});\n\t};\n\t_AsyncGenerator.prototype.return = function(value) {\n\t\t// Early return from the generator if started, otherwise abandons the generator\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tif (_this._entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the return call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Generator is not started, abandon it and return the specified value\n\t\t\t\t_this._entry = null;\n\t\t\t\treturn resolve(value && value.then ? value.then(_wrapReturnedValue) : _wrapReturnedValue(value));\n\t\t\t}\n\t\t\t// Settle the yield expression with a rejected \"early return\" value\n\t\t\t_this._return = value;\n\t\t\t_this._resolve = resolve;\n\t\t\t_this._pact = null;\n\t\t\t_settle(_pact, 2, _earlyReturn);\n\t\t});\n\t};\n\t_AsyncGenerator.prototype.throw = function(error) {\n\t\t// Inject an exception into the pending yield expression\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve, reject) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tif (_this._entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the throw call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Generator is not started, abandon it and return a rejected Promise containing the error\n\t\t\t\t_this._entry = null;\n\t\t\t\treturn reject(error);\n\t\t\t}\n\t\t\t// Settle the yield expression with the value as a rejection\n\t\t\t_this._resolve = resolve;\n\t\t\t_this._pact = null;\n\t\t\t_settle(_pact, 2, error);\n\t\t});\n\t};\n\n\t_AsyncGenerator.prototype[_asyncIteratorSymbol] = function() {\n\t\treturn this;\n\t};\n\t\n\treturn _AsyncGenerator;\n})();\n","import React from \"react\";\nimport { Controller } from \"react-hook-form\";\nimport { CardLabelError, TextInput, CustomTooltip, Label } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\n\nconst SearchFormFieldsComponents = ({ searchFormState, controlSearchForm }) => {\n const { t } = useTranslation();\n const { errors } = searchFormState;\n\n return (\n <React.Fragment>\n {/* MOBILE NUMBER */}\n <span className=\"mobile-input\">\n <Label className=\"flex-roww flex-gap-2\">\n {t(\"EKYC_MOBILE_NUMBER\") || \"Mobile Number\"}\n <CustomTooltip message={t(\"EKYC_MOBILE_NUMBER_MESSAGE\")} />\n </Label>\n\n <Controller\n name=\"mobileNumber\"\n control={controlSearchForm}\n defaultValue=\"\"\n rules={{\n pattern: {\n value: /^[0-9]{10}$/,\n message: t(\"ERR_INVALID_MOBILE_NO\"),\n },\n }}\n render={({ onChange, value }) => <TextInput value={value || \"\"} onChange={(e) => onChange(e.target.value)} />}\n />\n\n {errors?.mobileNumber && <CardLabelError>{errors.mobileNumber.message}</CardLabelError>}\n </span>\n\n {/* K NAME */}\n {/* <span className=\"mobile-input\">\n <Label className=\"flex-roww flex-gap-2\">\n {t(\"EKYC_K_NAME\") || \"K Name\"}\n <CustomTooltip message={t(\"EKYC_K_NAME_MESSAGE\")} />\n </Label>\n\n <Controller\n name=\"kName\"\n control={controlSearchForm}\n defaultValue=\"\"\n render={({ onChange, value }) => <TextInput value={value || \"\"} onChange={(e) => onChange(e.target.value)} />}\n />\n\n {errors?.kName && <CardLabelError>{errors.kName.message}</CardLabelError>}\n </span> */}\n </React.Fragment>\n );\n};\n\nexport default SearchFormFieldsComponents;\n","import React, { useMemo, useCallback, useReducer } from \"react\";\nimport { useLocation } from \"react-router-dom\";\nimport { InboxComposer } from \"@djb25/digit-ui-react-components\";\nimport useInboxTableConfig from \"../../hook/useInboxTableConfig\";\nimport SearchFormFieldsComponents from \"../../components/SearchFormFieldsComponent\";\n\n// Mock data removed in favor of API integration\n\nconst Inbox = ({ parentRoute, businessService = \"EKYC\", initialStates = {}, filterComponent, isInbox }) => {\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const location = useLocation();\n\n const formInitValue = {\n filterForm: {},\n searchForm: {},\n tableForm: {\n limit: 10,\n offset: 0,\n sortBy: \"createdTime\",\n sortOrder: \"DESC\",\n },\n };\n\n const [formState, dispatch] = useReducer(formReducer, formInitValue);\n\n const filters = useMemo(() => {\n return formState?.searchForm || {};\n }, [formState?.searchForm]);\n\n const queryParams = useMemo(() => {\n return {\n tenantId,\n offset: formState?.tableForm?.offset || 0,\n limit: formState?.tableForm?.limit || 10,\n };\n }, [tenantId, formState?.tableForm?.offset, formState?.tableForm?.limit]);\n\n const { isLoading: isListLoading, data: listData = {} } = Digit.Hooks.ekyc.useEkycApplicationList(filters, queryParams, {\n enabled: !!tenantId,\n keepPreviousData: true,\n });\n\n const searchDetails = useMemo(\n () => ({\n kno: formState?.searchForm?.kNumber || \"\",\n name: formState?.searchForm?.kName || \"\",\n }),\n [formState?.searchForm?.kNumber, formState?.searchForm?.kName]\n );\n\n const isSearchActive = !!(searchDetails.kno || searchDetails.name);\n\n const { isLoading: isSearchLoading, data: searchData } = Digit.Hooks.ekyc.useSearchConnection(\n {\n tenantId,\n details: searchDetails,\n },\n {\n enabled: !!tenantId && !!searchDetails.kno, // 🔥 important\n keepPreviousData: true,\n }\n );\n\n const sourceData = useMemo(() => {\n if (isSearchActive) {\n if (!searchData) return [];\n return [searchData];\n }\n\n return listData?.consumerList || [];\n }, [isSearchActive, searchData, listData]);\n\n const filteredData = useMemo(() => {\n return (sourceData || []).map((item) => {\n // ✅ detect search response\n const isSearchItem = !!item.connectionDetails;\n\n if (isSearchItem) {\n return {\n applicationNo: item.propertyInfo?.kno || \"\",\n connectionNo: item.propertyInfo?.kno || \"\",\n owner: item.connectionDetails?.consumerName || \"\",\n applicationNumber: item.propertyInfo?.kno || \"\",\n citizenName: item.connectionDetails?.consumerName || \"\",\n status: item.connectionDetails?.statusflag || \"\",\n sla: 0,\n };\n }\n\n // ✅ dashboard mapping\n const fullName = [item.firstName, item.middleName, item.lastName].filter(Boolean).join(\" \");\n return {\n ...item,\n applicationNo: item.kno || item.applicationNumber || \"\",\n connectionNo: item.kno || \"\",\n owner: fullName || item.consumerName || item.citizenName || \"\",\n applicationNumber: item.kno || item.applicationNumber || \"\",\n citizenName: fullName || item.consumerName || item.citizenName || \"\",\n status: item.status || \"\",\n sla: item.sla ?? 0,\n };\n });\n }, [sourceData]);\n\n const totalRecords = listData?.totalCount || 0;\n\n const checkPathName = location.pathname.includes(\"ekyc/inbox\");\n const PropsForInboxLinks = {\n headerText: checkPathName ? \"EKYC_MODULE\" : \"MODULE_SW\",\n };\n\n const SearchFormFields = useCallback(\n ({ registerRef, searchFormState, controlSearchForm }) => (\n <SearchFormFieldsComponents {...{ registerRef, searchFormState, controlSearchForm }} className=\"search\" />\n ),\n []\n );\n\n const tableOrderFormDefaultValues = {\n sortBy: \"createdTime\",\n limit: window.Digit.Utils.browser.isMobile() ? 50 : 10,\n offset: 0,\n sortOrder: \"DESC\",\n };\n\n const onSearchFormSubmit = (data) => {\n data.hasOwnProperty(\"\") && delete data?.[\"\"];\n dispatch({ action: \"mutateTableForm\", data: { ...tableOrderFormDefaultValues }, checkPathName });\n dispatch({ action: \"mutateSearchForm\", data, checkPathName });\n };\n\n const searchFormDefaultValues = {\n mobileNumber: \"\",\n applicationNumber: \"\",\n consumerNo: \"\",\n };\n\n const onSearchFormReset = (setSearchFormValue) => {\n setSearchFormValue(\"mobileNumber\", null);\n setSearchFormValue(\"applicationNumber\", null);\n setSearchFormValue(\"consumerNo\", null);\n dispatch({ action: \"mutateSearchForm\", data: searchFormDefaultValues });\n };\n\n const propsForSearchForm = {\n SearchFormFields,\n onSearchFormSubmit,\n searchFormDefaultValues: formState?.searchForm,\n resetSearchFormDefaultValues: searchFormDefaultValues,\n onSearchFormReset,\n className: \"search-form-wns-inbox\",\n };\n\n const FilterFormFields = useCallback(\n ({ registerRef, controlFilterForm, setFilterFormValue, getFilterFormValue }) => <React.Fragment></React.Fragment>,\n []\n );\n\n const propsForFilterForm = {\n FilterFormFields,\n onFilterFormSubmit: () => {},\n filterFormDefaultValues: \"\",\n resetFilterFormDefaultValues: \"\",\n onFilterFormReset: () => {},\n };\n\n function formReducer(state, payload) {\n const storageKey = payload.checkPathName ? \"EKYC.INBOX\" : \"EKYC.SW.INBOX\";\n\n // ✅ safety for SLA\n switch (payload.action) {\n case \"mutateSearchForm\":\n Digit.SessionStorage.set(storageKey, { ...state, searchForm: payload.data });\n return { ...state, searchForm: payload.data };\n\n case \"mutateFilterForm\":\n Digit.SessionStorage.set(storageKey, { ...state, filterForm: payload.data });\n return { ...state, filterForm: payload.data };\n\n case \"mutateTableForm\":\n Digit.SessionStorage.set(storageKey, { ...state, tableForm: payload.data });\n return { ...state, tableForm: payload.data };\n\n default:\n return state; // ✅ IMPORTANT\n }\n }\n\n const onPageSizeChange = (e) => {\n const newLimit = Number(e.target.value);\n\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n limit: newLimit,\n offset: 0, // reset page\n },\n checkPathName,\n });\n };\n\n const onSortingByData = (e) => {\n if (e.length > 0) {\n const [{ id, desc }] = e;\n const sortOrder = desc ? \"DESC\" : \"ASC\";\n const sortBy = id;\n\n if (!(formState.tableForm.sortBy === sortBy && formState.tableForm.sortOrder === sortOrder)) {\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n sortBy: id,\n sortOrder: desc ? \"DESC\" : \"ASC\",\n },\n checkPathName,\n });\n }\n }\n };\n\n const propsForInboxTable = useInboxTableConfig({\n ...{\n parentRoute,\n onPageSizeChange,\n formState,\n totalCount: totalRecords,\n table: filteredData,\n dispatch,\n onSortingByData,\n tenantId,\n checkPathName,\n inboxStyles: { overflowX: \"scroll\", overflowY: \"hidden\" },\n tableStyle: { width: \"70%\" },\n },\n });\n\n const isInboxLoading = isListLoading || isSearchLoading;\n\n return (\n <div className=\"app-container\">\n <InboxComposer\n {...{\n isInboxLoading,\n PropsForInboxLinks,\n ...propsForSearchForm,\n ...propsForFilterForm,\n // ...propsForMobileSortForm,\n propsForInboxTable,\n // propsForInboxMobileCards,\n formState,\n countData: listData,\n }}\n />\n </div>\n );\n};\n\nexport default Inbox;\n","import React, { useState, useMemo } from \"react\";\nimport {\n Header,\n Card,\n CardHeader,\n CardText,\n CardLabel,\n Dropdown,\n SubmitBar,\n ActionBar,\n Table,\n Toast,\n LabelFieldPair,\n Modal,\n DeleteIcon,\n EditIcon,\n} from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\n\n// ─── Static Mock Data ─────────────────────────────────────────────────────────\n\nconst MOCK_SURVEYORS = [\n { name: \"Amit Kumar\", id: \"SVR001\", role: \"Surveyor\" },\n { name: \"Sanjay Singh\", id: \"SVR002\", role: \"Surveyor\" },\n { name: \"Rahul Sharma\", id: \"SVR003\", role: \"Surveyor\" },\n { name: \"Priya Verma\", id: \"SVR004\", role: \"Surveyor\" },\n];\n\nconst MOCK_MRDS = [\n { name: \"MRD - 01 (Central Zone)\", code: \"MRD01\", zone: \"Central\" },\n { name: \"MRD - 02 (North Zone)\", code: \"MRD02\", zone: \"North\" },\n { name: \"MRD - 03 (South Zone)\", code: \"MRD03\", zone: \"South\" },\n { name: \"MRD - 04 (West Zone)\", code: \"MRD04\", zone: \"West\" },\n { name: \"MRD - 05 (East Zone)\", code: \"MRD05\", zone: \"East\" },\n { name: \"MRD - 06 (Rohini)\", code: \"MRD06\", zone: \"Rohini\" },\n { name: \"MRD - 07 (Dwarka)\", code: \"MRD07\", zone: \"Dwarka\" },\n];\n\n// ─── Main Component ───────────────────────────────────────────────────────────\n\nconst Mapping = () => {\n const { t } = useTranslation();\n\n // Form state\n const [selectedSurveyor, setSelectedSurveyor] = useState(null);\n const [selectedMRD, setSelectedMRD] = useState(null);\n\n // Mappings list\n const [mappings, setMappings] = useState([]);\n\n // Edit state: stores the id of the row being edited + its draft values\n const [editingId, setEditingId] = useState(null);\n const [editSurveyor, setEditSurveyor] = useState(null);\n const [editMRD, setEditMRD] = useState(null);\n\n // Delete confirm modal\n const [deleteTarget, setDeleteTarget] = useState(null);\n\n const [toast, setToast] = useState(null);\n\n // ── Handlers ──────────────────────────────────────────────────────────────\n\n const handleAddMapping = () => {\n if (!selectedSurveyor || !selectedMRD) {\n setToast({ type: \"error\", message: t(\"EKYC_SELECT_BOTH_ERROR\") || \"Please select both Surveyor and MRD\" });\n return;\n }\n const exists = mappings.some(\n m => m.surveyorId === selectedSurveyor.id && m.mrdCode === selectedMRD.code\n );\n if (exists) {\n setToast({ type: \"warning\", message: t(\"EKYC_MAPPING_EXISTS\") || \"This mapping already exists\" });\n return;\n }\n setMappings(prev => [...prev, {\n id: Date.now(),\n surveyorName: selectedSurveyor.name,\n surveyorId: selectedSurveyor.id,\n mrdName: selectedMRD.name,\n mrdCode: selectedMRD.code,\n zone: selectedMRD.zone,\n }]);\n setSelectedMRD(null);\n setSelectedSurveyor(null);\n setToast({ type: \"success\", message: t(\"EKYC_MAPPING_ADDED\") || \"Mapping added successfully\" });\n };\n\n const handleEditStart = (row) => {\n setEditingId(row.id);\n setEditSurveyor(MOCK_SURVEYORS.find(s => s.id === row.surveyorId) || null);\n setEditMRD(MOCK_MRDS.find(m => m.code === row.mrdCode) || null);\n };\n\n const handleEditSave = (id) => {\n if (!editSurveyor || !editMRD) {\n setToast({ type: \"error\", message: t(\"EKYC_SELECT_BOTH_ERROR\") || \"Please select both Surveyor and MRD to save\" });\n return;\n }\n // Check duplicate (excluding self)\n const duplicate = mappings.some(\n m => m.id !== id && m.surveyorId === editSurveyor.id && m.mrdCode === editMRD.code\n );\n if (duplicate) {\n setToast({ type: \"warning\", message: t(\"EKYC_MAPPING_EXISTS\") || \"This mapping already exists\" });\n return;\n }\n setMappings(prev => prev.map(m => m.id !== id ? m : {\n ...m,\n surveyorName: editSurveyor.name,\n surveyorId: editSurveyor.id,\n mrdName: editMRD.name,\n mrdCode: editMRD.code,\n zone: editMRD.zone,\n }));\n setEditingId(null);\n setToast({ type: \"success\", message: t(\"EKYC_MAPPING_UPDATED\") || \"Mapping updated successfully\" });\n };\n\n const handleEditCancel = () => {\n setEditingId(null);\n setEditSurveyor(null);\n setEditMRD(null);\n };\n\n const handleDeleteConfirm = () => {\n setMappings(prev => prev.filter(m => m.id !== deleteTarget.id));\n setDeleteTarget(null);\n setToast({ type: \"success\", message: t(\"EKYC_MAPPING_REMOVED\") || \"Mapping removed\" });\n };\n\n const handleSaveMappings = () => {\n if (mappings.length === 0) {\n setToast({ type: \"error\", message: t(\"EKYC_NO_MAPPINGS_TO_SAVE\") || \"No mappings to save\" });\n return;\n }\n // TODO: replace with real API call\n setToast({ type: \"success\", message: t(\"EKYC_MAPPINGS_SAVED_SUCCESS\") || \"Surveyor mappings saved successfully!\" });\n };\n\n // ── Table columns ─────────────────────────────────────────────────────────\n\n const columns = useMemo(() => [\n {\n Header: t(\"EKYC_SURVEYOR_NAME\") || \"Surveyor\",\n accessor: \"surveyorName\",\n Cell: ({ row }) => {\n const isEditing = editingId === row.original.id;\n if (isEditing) {\n return (\n <Dropdown\n selected={editSurveyor}\n select={setEditSurveyor}\n option={MOCK_SURVEYORS}\n optionKey=\"name\"\n t={t}\n placeholder={t(\"EKYC_SELECT_SURVEYOR_PLACEHOLDER\") || \"Choose surveyor...\"}\n />\n );\n }\n return (\n <div>\n <span className=\"link\">{row.original.surveyorName}</span>\n <div style={{ fontSize: \"12px\", color: \"#666\" }}>{row.original.surveyorId}</div>\n </div>\n );\n },\n },\n {\n Header: t(\"EKYC_MRD_ASSIGNED\") || \"MRD Assigned\",\n accessor: \"mrdName\",\n Cell: ({ row }) => {\n const isEditing = editingId === row.original.id;\n if (isEditing) {\n return (\n <Dropdown\n selected={editMRD}\n select={setEditMRD}\n option={MOCK_MRDS}\n optionKey=\"name\"\n t={t}\n placeholder={t(\"EKYC_SELECT_MRD_PLACEHOLDER\") || \"Choose MRD...\"}\n />\n );\n }\n return (\n <div>\n <span>{row.original.mrdName}</span>\n <div style={{ fontSize: \"12px\", color: \"#666\" }}>{row.original.zone}</div>\n </div>\n );\n },\n },\n {\n Header: t(\"ES_COMMON_ACTION\") || \"Actions\",\n Cell: ({ row }) => {\n const isEditing = editingId === row.original.id;\n if (isEditing) {\n return (\n <div style={{ display: \"flex\", gap: \"10px\" }}>\n <span\n style={{ cursor: \"pointer\", color: \"#f47738\", fontWeight: \"bold\" }}\n onClick={() => handleEditSave(row.original.id)}\n >\n {t(\"ES_COMMON_SAVE\")}\n </span>\n <span\n style={{ cursor: \"pointer\", color: \"#505A5F\", fontWeight: \"bold\" }}\n onClick={handleEditCancel}\n >\n {t(\"ES_COMMON_CANCEL\")}\n </span>\n </div>\n );\n }\n return (\n <div style={{ display: \"flex\", gap: \"16px\" }}>\n <span onClick={() => handleEditStart(row.original)} style={{ cursor: \"pointer\" }}>\n <EditIcon className=\"icon\" fill=\"#f47738\" />\n </span>\n <span onClick={() => setDeleteTarget(row.original)} style={{ cursor: \"pointer\" }}>\n <DeleteIcon className=\"icon\" fill=\"#f47738\" />\n </span>\n </div>\n );\n },\n },\n ], [editingId, editSurveyor, editMRD, mappings, t]);\n\n // ── Render ────────────────────────────────────────────────────────────────\n\n return (\n <React.Fragment>\n <div className=\"side-panel-item\">\n <Card className=\"employeeCard filter inboxLinks\" style={{ marginTop: \"16px\" }}>\n <div className=\"complaint-links-container\">\n <div className=\"header\" style={{ marginBottom: \"0px\" }}>\n <span className=\"logo\">\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M4 19.5A2.5 2.5 0 0 1 6.5 17H20\" stroke=\"white\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n <path d=\"M6.5 2H20V22H6.5A2.5 2.5 0 0 1 4 19.5V4.5A2.5 2.5 0 0 1 6.5 2Z\" stroke=\"white\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n </svg>\n </span>\n <span className=\"text\">{t(\"EKYC_SURVEYOR_MAPPING\") || \"Surveyor Mapping\"}</span>\n </div>\n </div>\n </Card>\n </div>\n\n <Card>\n <CardHeader>{t(\"EKYC_NEW_MAPPING\") || \"New Mapping\"}</CardHeader>\n <CardText>\n {t(\"EKYC_MAPPING_SUBHEADER\") || \"Assign Meter Reading Dairies to surveyors to manage their data access.\"}\n </CardText>\n\n <LabelFieldPair>\n <CardLabel>{t(\"EKYC_SELECT_SURVEYOR\") || \"Select Surveyor\"} *</CardLabel>\n <div className=\"\">\n <Dropdown\n selected={selectedSurveyor}\n select={setSelectedSurveyor}\n option={MOCK_SURVEYORS}\n optionKey=\"name\"\n t={t}\n placeholder={t(\"EKYC_SELECT_SURVEYOR_PLACEHOLDER\") || \"Choose a surveyor...\"}\n />\n </div>\n </LabelFieldPair>\n\n <LabelFieldPair>\n <CardLabel>{t(\"EKYC_SELECT_MRD\") || \"Select MRD\"} *</CardLabel>\n <div className=\"field\">\n <Dropdown\n selected={selectedMRD}\n select={setSelectedMRD}\n option={MOCK_MRDS}\n optionKey=\"name\"\n t={t}\n placeholder={t(\"EKYC_SELECT_MRD_PLACEHOLDER\") || \"Choose an MRD...\"}\n />\n </div>\n </LabelFieldPair>\n\n <div style={{ display: \"flex\", justifyContent: \"flex-end\", marginTop: \"24px\" }}>\n <SubmitBar\n label={t(\"EKYC_ADD_TO_LIST\") || \"Add to Mapping List\"}\n onSubmit={handleAddMapping}\n disabled={!selectedSurveyor || !selectedMRD}\n />\n </div>\n </Card>\n\n {mappings.length > 0 && (\n <Card>\n <CardHeader>\n {t(\"EKYC_MAPPING_SUMMARY\") || \"Mapping Summary\"} ({mappings.length})\n </CardHeader>\n <Table\n t={t}\n data={mappings}\n columns={columns}\n getCellProps={(cellInfo) => {\n return {\n style: {\n padding: \"10px\",\n fontSize: \"16px\",\n }\n };\n }}\n tableClassName=\"table digit-table\"\n />\n </Card>\n )}\n\n {mappings.length > 0 && (\n <ActionBar>\n <SubmitBar\n label={t(\"EKYC_SAVE_MAPPINGS\") || \"Save Mappings\"}\n onSubmit={handleSaveMappings}\n />\n </ActionBar>\n )}\n\n {deleteTarget && (\n <Modal\n headerBarMain={t(\"EKYC_REMOVE_MAPPING\") || \"Remove Mapping\"}\n headerBarEnd={\n <span onClick={() => setDeleteTarget(null)} style={{ cursor: \"pointer\", padding: \"8px\" }}>\n X\n </span>\n }\n actionSaveLabel={t(\"ES_COMMON_REMOVE\")}\n actionSaveOnSubmit={handleDeleteConfirm}\n actionCancelLabel={t(\"ES_COMMON_CANCEL\")}\n actionCancelOnSubmit={() => setDeleteTarget(null)}\n style={{ borderRadius: \"12px\" }}\n >\n <CardText style={{ marginTop: \"16px\", marginBottom: \"16px\" }}>\n {t(\"EKYC_REMOVE_MAPPING_CONFIRM_MSG\") || \"Are you sure you want to remove the mapping between \"}\n <strong>{deleteTarget?.surveyorName}</strong> and <strong>{deleteTarget?.mrdName}</strong>?\n </CardText>\n </Modal>\n )}\n\n {toast && (\n <Toast\n label={toast.message}\n error={toast.type === \"error\"}\n warning={toast.type === \"warning\"}\n info={toast.type === \"info\"}\n isDsc={true}\n onClose={() => setToast(null)}\n />\n )}\n </React.Fragment>\n );\n};\n\nexport default Mapping;","import React, { useState } from \"react\";\nimport { Loader, Modal, RadioButtons } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useRouteMatch } from \"react-router-dom\";\n\nconst ConnectionDetailsView = ({ kNumber, kName, connectionDetails, isLoading }) => {\n const { t } = useTranslation();\n const history = useHistory();\n const { path } = useRouteMatch();\n\n const [showModal, setShowModal] = useState(false);\n const [selectedOption, setSelectedOption] = useState({ code: \"SELF\", name: \"EKYC_SELF\" });\n\n const options = [\n { code: \"SELF\", name: \"EKYC_SELF\" },\n { code: \"OTHER\", name: \"EKYC_OTHER\" },\n ];\n\n const handleStartVerification = () => setShowModal(true);\n\n const onModalConfirm = () => {\n const parentPath = path.includes(\"/create-kyc\")\n ? path.replace(\"/create-kyc\", \"\")\n : path.replace(\"/k-details\", \"\");\n history.push(`${parentPath}/consumer-details`, { kNumber, selectedOption, connectionDetails });\n setShowModal(false);\n };\n\n if (isLoading) return <Loader />;\n if (!connectionDetails) return null;\n\n const details = connectionDetails?.connectionDetails || {};\n const statusFlag = details.statusflag || \"\";\n const isActive = statusFlag?.toLowerCase() === \"active\" || statusFlag === \"A\";\n\n return (\n <React.Fragment>\n <div className=\"ekyc-employee-container\">\n {/* Main Card */}\n <div className=\"connection-details-card\">\n {/* Card Header */}\n <div className=\"details-card-header\">\n <div className=\"header-title-wrapper\">\n <div className=\"header-icon-bg\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#3A7BD5\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <path d=\"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2\" />\n <circle cx=\"12\" cy=\"7\" r=\"4\" />\n </svg>\n </div>\n <span className=\"header-title-text\">\n {t(\"EKYC_K_NUMBER_DETAILS\") || \"Consumer Identity Details\"}\n </span>\n </div>\n\n {/* Status Badge */}\n <span className={`status-badge ${isActive ? \"active\" : \"inactive\"}`}>\n {isActive ? (t(\"EKYC_ACTIVE_CONNECTION\") || \"Active Connection\") : (statusFlag || t(\"CS_NA\"))}\n </span>\n </div>\n\n {/* Card Body */}\n <div className=\"details-card-body\">\n <div className=\"body-content-row\">\n {/* Left: Verification Parameters */}\n <div className=\"detail-section\">\n <div className=\"section-title\">\n {t(\"EKYC_VERIFICATION_PARAMETERS\") || \"Verification Parameters\"}\n </div>\n\n <div className=\"data-grid\">\n {/* Consumer Name */}\n <div className=\"data-item\">\n <div className=\"data-label\">\n {t(\"EKYC_CONSUMER_NAME\") || \"Consumer Name\"}\n </div>\n <div className=\"data-value\">\n {details.consumerName || kName || t(\"CS_NA\")}\n </div>\n </div>\n\n {/* K Number */}\n <div className=\"data-item\">\n <div className=\"data-label\">\n {t(\"EKYC_K_NUMBER\") || \"K Number\"}\n </div>\n <div className=\"data-value blue\">\n {kNumber || t(\"CS_NA\")}\n </div>\n </div>\n\n {/* Meter Serial No */}\n <div className=\"data-item\">\n <div className=\"data-label\">\n {t(\"EKYC_METER_NO\") || \"Meter Serial No.\"}\n </div>\n <div className=\"data-value\">\n {details.meterNumber || t(\"CS_NA\")}\n </div>\n </div>\n\n {/* Connection Type */}\n <div className=\"data-item\">\n <div className=\"data-label\">\n {t(\"EKYC_CONNECTION_TYPE\") || \"Connection Type\"}\n </div>\n <div className=\"data-value\">\n {details.connectionType || t(\"CS_NA\")}\n </div>\n </div>\n </div>\n </div>\n\n {/* Divider */}\n <div className=\"vertical-divider\" />\n\n {/* Right: Address & Contact */}\n <div className=\"detail-section\">\n <div className=\"section-title\">\n {t(\"EKYC_ADDRESS_AND_CONTACT\") || \"Address & Contact\"}\n </div>\n\n {/* Service Address */}\n <div className=\"address-block\">\n <div className=\"icon-wrapper-small\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#6B7B8E\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <path d=\"M21 10c0 7-9 13-9 13S3 17 3 10a9 9 0 0 1 18 0z\" />\n <circle cx=\"12\" cy=\"10\" r=\"3\" />\n </svg>\n </div>\n <div>\n <div className=\"data-label\">\n {t(\"EKYC_ADDRESS\") || \"Service Address\"}\n </div>\n <div className=\"address-text\">\n {details.address || t(\"CS_NA\")}\n </div>\n </div>\n </div>\n\n {/* Contact + Email row */}\n <div className=\"contact-row\">\n {/* Contact */}\n <div className=\"contact-item\">\n <div className=\"icon-wrapper-small\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#6B7B8E\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <rect x=\"5\" y=\"2\" width=\"14\" height=\"20\" rx=\"2\" ry=\"2\" />\n <line x1=\"12\" y1=\"18\" x2=\"12.01\" y2=\"18\" />\n </svg>\n </div>\n <div>\n <div className=\"data-label\">\n {t(\"EKYC_PHONE_NO\") || \"Contact\"}\n </div>\n <div className=\"address-text\">\n {details.phoneNumber || t(\"CS_NA\")}\n </div>\n </div>\n </div>\n\n {/* Email */}\n <div className=\"contact-item\">\n <div className=\"icon-wrapper-small\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#6B7B8E\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <circle cx=\"12\" cy=\"12\" r=\"4\" />\n <path d=\"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-3.92 7.94\" />\n </svg>\n </div>\n <div>\n <div className=\"data-label\">\n {t(\"EKYC_EMAIL\") || \"Email Address\"}\n </div>\n <div className=\"address-text\">\n {details.email || t(\"CS_NA\")}\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n {/* Card Footer */}\n <div className=\"details-card-footer\">\n {/* Last Verified */}\n <div className=\"footer-meta-text\">\n {connectionDetails?.lastVerified\n ? `${t(\"EKYC_LAST_VERIFIED\") || \"Last verified:\"} ${connectionDetails.lastVerified}`\n : \"\"}\n </div>\n\n {/* Action Buttons */}\n <div className=\"action-btns-container\" style={{ fontSize: \"12px\" }}>\n <button\n onClick={handleStartVerification}\n className=\"primary-action-btn\"\n style={{ fontSize: \"12px\" }}\n >\n {t(\"EKYC_START_REVIEW\") || \"Start Review\"}\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\" />\n <polyline points=\"12 5 19 12 12 19\" />\n </svg>\n </button>\n </div>\n </div>\n </div>\n </div>\n\n {/* Modal */}\n {showModal && (\n <Modal\n headerBarMain={t(\"EKYC_SELECT_VERIFICATION_TYPE\")}\n headerBarEnd={\n <span onClick={() => setShowModal(false)} style={{ cursor: \"pointer\", padding: \"8px\" }}>\n X\n </span>\n }\n actionSaveLabel={t(\"ES_COMMON_CONFIRM\")}\n actionSaveOnSubmit={onModalConfirm}\n actionCancelLabel={t(\"ES_COMMON_CANCEL\")}\n actionCancelOnSubmit={() => setShowModal(false)}\n style={{ borderRadius: \"12px\" }}\n >\n <div style={{ padding: \"24px\" }}>\n <RadioButtons\n name=\"verificationType\"\n options={options}\n optionsKey=\"name\"\n selectedOption={selectedOption}\n onSelect={setSelectedOption}\n style={{ display: \"flex\", flexDirection: \"column\", gap: \"12px\", buttonStyle: { borderRadius: \"5px\" } }}\n t={t}\n />\n </div>\n </Modal>\n )}\n </React.Fragment>\n );\n};\n\nexport default ConnectionDetailsView;","import React, { useState, useEffect } from \"react\";\nimport { Card, HomeIcon, Toast } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport SearchConsumer from \"../../components/SearchConsumer\";\nimport ConnectionDetailsView from \"../../components/ConnectionDetailsView\";\n\nconst Create = () => {\n const { t } = useTranslation();\n const [searchParams, setSearchParams] = useState(() => {\n const saved = sessionStorage.getItem(\"EKYC_CREATE_SEARCH_PARAMS\");\n return saved ? JSON.parse(saved) : { kNumber: \"\", kName: \"\" };\n });\n const [searchPerformed, setSearchPerformed] = useState(() => {\n return sessionStorage.getItem(\"EKYC_CREATE_SEARCH_PERFORMED\") === \"true\";\n });\n const [showToast, setShowToast] = useState(null);\n const [formParams, setFormParams, clearParams] = Digit.Hooks.useSessionStorage(\"EKYC_CREATE\", {});\n\n const tenantId = Digit.ULBService.getCurrentTenantId();\n\n const { isLoading: isSearching, data: connectionDetails, error, revalidate } = Digit.Hooks.ekyc.useSearchConnection({\n tenantId,\n details: { kno: searchParams.kNumber, name: searchParams.kName }\n }, {\n enabled: searchPerformed && !!searchParams.kNumber && !!searchParams.kName,\n onError: (error) => {\n setShowToast({ error: true, label: error?.response?.data?.Errors?.[0]?.message || t(\"EKYC_SEARCH_ERROR_PLEASE_ENTER_THE_CORRECT_CREDENTIALS\") });\n setSearchPerformed(false);\n sessionStorage.removeItem(\"EKYC_CREATE_SEARCH_PERFORMED\");\n }\n });\n\n const handleSearch = (params) => {\n if (!params.kNumber && !params.kName) {\n // This is the \"Clear\" case\n setSearchParams({ kNumber: \"\", kName: \"\" });\n setSearchPerformed(false);\n sessionStorage.removeItem(\"EKYC_CREATE_SEARCH_PARAMS\");\n sessionStorage.removeItem(\"EKYC_CREATE_SEARCH_PERFORMED\");\n clearParams(); // Clear consolidated EKYC data\n return;\n }\n\n if (!params.kNumber || !params.kName) {\n setShowToast({ error: true, label: t(\"EKYC_FILL_ALL_FIELDS\") });\n return;\n }\n setSearchParams(params);\n setSearchPerformed(true);\n\n // Clear previous EKYC session data if K-number changes\n const currentKno = sessionStorage.getItem(\"EKYC_K_NUMBER\");\n if (currentKno !== params.kNumber) {\n clearParams();\n // Clear any other EKYC keys if they exist\n Object.keys(sessionStorage).forEach(key => {\n if (key.startsWith(\"EKYC_\") && key !== \"EKYC_CREATE\") sessionStorage.removeItem(key);\n });\n }\n\n sessionStorage.setItem(\"EKYC_CREATE_SEARCH_PARAMS\", JSON.stringify(params));\n sessionStorage.setItem(\"EKYC_CREATE_SEARCH_PERFORMED\", \"true\");\n sessionStorage.setItem(\"EKYC_K_NUMBER\", params.kNumber);\n };\n\n const closeToast = () => {\n setShowToast(null);\n };\n\n return (\n <SearchConsumer\n onSearch={handleSearch}\n searchParams={searchParams}\n >\n {searchPerformed && (\n <ConnectionDetailsView\n kNumber={searchParams.kNumber}\n kName={searchParams.kName}\n connectionDetails={connectionDetails}\n isLoading={isSearching}\n />\n )}\n\n {!searchPerformed && !isSearching && (\n <Card style={{ textAlign: \"center\", padding: \"40px\" }}>\n <div style={{ color: \"#667085\" }}>{t(\"EKYC_SEARCH_TO_VIEW_DETAILS\")}</div>\n </Card>\n )}\n {showToast && <Toast error={showToast.error} label={showToast.label} onClose={closeToast} isDsc={true} />}\n </SearchConsumer>\n );\n};\n\nexport default Create;\n","import React, { Fragment, useState } from \"react\";\nimport {\n Card,\n CardSubHeader,\n StatusTable,\n Row,\n SubmitBar,\n Loader,\n ActionBar,\n CheckBox,\n LinkButton,\n EditIcon,\n GenericFileIcon,\n} from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useLocation, useParams } from \"react-router-dom\";\n\n// ─── Constants ───────────────────────────────────────────────────────────────\n\nconst ActionButton = ({ jumpTo, state }) => {\n const history = useHistory();\n function routeTo() {\n history.push(jumpTo, { ...state, isEditing: true });\n }\n return (\n <LinkButton label={<EditIcon style={{ width: \"20px\", height: \"20px\", fill: \"#F47738\" }} />} style={{ margin: 0, padding: 0 }} onClick={routeTo} />\n );\n};\n\nconst checkForNA = (value) => (value !== null && value !== undefined && value !== \"\" ? value : \"N/A\");\n\nconst boolToYesNo = (value, t) => {\n if (value === true || value === \"true\" || String(value).toLowerCase() === \"yes\") return t(\"CORE_COMMON_YES\");\n if (value === false || value === \"false\" || String(value).toLowerCase() === \"no\") return t(\"CORE_COMMON_NO\");\n if (value === \"true\") return t(\"CORE_COMMON_YES\");\n if (value === \"false\") return t(\"CORE_COMMON_NO\");\n return \"N/A\";\n};\n\n/**\n * Robust data extraction for comparison.\n * The API returns { applicationReviewInfo: { newData: { ... }, oldData: { ... } } }\n */\nconst extractReviewData = (searchData, flowState) => {\n const rawData = searchData && Object.keys(searchData).length > 0 ? searchData : flowState?.reviewData || {};\n\n // Navigate through applicationReviewInfo -> newData/oldData\n const reviewWrapper = rawData?.applicationReviewInfo || rawData?.applicationReview || rawData;\n const applicationData = (Array.isArray(reviewWrapper) ? reviewWrapper[0] : reviewWrapper) || {};\n\n return {\n newData: applicationData?.newData || applicationData,\n oldData: applicationData?.oldData || null,\n };\n};\n\nconst ReviewSection = ({ title, fields, newData, oldData, t, jumpTo, state }) => {\n return (\n <div\n className=\"review-section-wrapper\"\n style={{ marginBottom: \"48px\", background: \"#fff\", borderRadius: \"12px\", border: \"1px solid #EAECF0\", overflow: \"hidden\" }}\n >\n <div\n style={{\n padding: \"20px 24px\",\n background: \"#F9FAFB\",\n borderBottom: \"1px solid #EAECF0\",\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n }}\n >\n <CardSubHeader style={{ margin: 0, fontSize: \"18px\", color: \"#101828\", fontWeight: \"700\" }}>{title}</CardSubHeader>\n {jumpTo && <ActionButton jumpTo={jumpTo} state={state} />}\n </div>\n\n <div style={{ padding: \"0 24px\" }}>\n <table style={{ width: \"100%\", borderCollapse: \"collapse\", tableLayout: \"fixed\" }}>\n <thead>\n <tr>\n <th\n style={{\n padding: \"16px 0\",\n textAlign: \"left\",\n color: \"#667085\",\n fontSize: \"12px\",\n fontWeight: \"600\",\n textTransform: \"uppercase\",\n width: \"30%\",\n }}\n >\n {t(\"EKYC_FIELD_NAME\")}\n </th>\n <th\n style={{\n padding: \"16px 0\",\n textAlign: \"left\",\n color: \"#667085\",\n fontSize: \"12px\",\n fontWeight: \"600\",\n textTransform: \"uppercase\",\n width: \"35%\",\n }}\n >\n {t(\"EKYC_EXISTING_INFORMATION\")}\n </th>\n <th\n style={{\n padding: \"16px 0\",\n textAlign: \"left\",\n color: \"#667085\",\n fontSize: \"12px\",\n fontWeight: \"600\",\n textTransform: \"uppercase\",\n width: \"35%\",\n }}\n >\n {t(\"EKYC_PROPOSED_UPDATES\")}\n </th>\n </tr>\n </thead>\n <tbody>\n {fields.map((field, idx) => {\n const valNew = newData?.[field.key];\n const valOld = oldData?.[field.key];\n const isChanged = oldData && String(valNew) !== String(valOld) && valOld !== undefined && valOld !== null;\n\n return (\n <tr key={idx} style={{ borderTop: \"1px solid #F2F4F7\" }}>\n <td style={{ padding: \"16px 0\", fontSize: \"14px\", color: \"#344054\", fontWeight: \"500\" }}>{t(field.label)}</td>\n <td style={{ padding: \"16px 0\", fontSize: \"14px\", color: \"#667085\" }}>\n {field.isBool ? boolToYesNo(valOld, t) : checkForNA(valOld)}\n </td>\n <td\n style={{ padding: \"16px 0\", fontSize: \"14px\", color: isChanged ? \"#1B8B32\" : \"#101828\", fontWeight: isChanged ? \"700\" : \"400\" }}\n >\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"8px\" }}>\n {field.isBool ? boolToYesNo(valNew, t) : checkForNA(valNew)}\n {isChanged && (\n <span\n style={{\n background: \"#ECFDF3\",\n color: \"#067647\",\n padding: \"2px 8px\",\n borderRadius: \"12px\",\n fontSize: \"10px\",\n fontWeight: \"600\",\n }}\n >\n {t(\"EKYC_CHANGED\")}\n </span>\n )}\n </div>\n </td>\n </tr>\n );\n })}\n </tbody>\n </table>\n </div>\n </div>\n );\n};\n\nconst Review = () => {\n const { t } = useTranslation();\n const history = useHistory();\n const location = useLocation();\n let { kno } = useParams();\n\n const [agree, setAgree] = useState(false);\n const [isSubmitting, setIsSubmitting] = useState(false);\n const [showPreview, setShowPreview] = useState(false);\n const [previewUrl, setPreviewUrl] = useState(\"\");\n\n const flowState = location.state || {};\n const { edits = {} } = flowState;\n const activeKno = kno;\n\n const { aadhaarData = {}, addressDetails: editedAddress = {}, propertyDetails: editedProperty = {}, meterDetails: editedMeter = {} } = edits;\n\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const workflowMutation = Digit.Hooks.ekyc.useEkycWorkflow(tenantId);\n const updateMutation = Digit.Hooks.ekyc.useEkycUpdate(tenantId);\n\n const { data: searchData, isLoading: isSearchLoading } = Digit.Hooks.ekyc.useEkycSearchReview({ kno: activeKno, fetchType: \"REVIEW\" }, tenantId, {\n enabled: !!activeKno,\n });\n\n // ── Data Consolidation ──────────────────────────────────────────────────\n const { newData: apiNewData, oldData: apiOldData } = extractReviewData(searchData, flowState);\n\n const prepareConsolidatedData = (data) => {\n if (!data) return null;\n const apiConn = data?.connectionDetails || data || {};\n const apiAddr = data?.addressDetails || data || {};\n const apiProp = data?.propertyInfo || data || {};\n const apiMeter = data?.meterDetails || data || {};\n\n return {\n connection: {\n consumerName:\n apiConn?.consumerName || (apiConn?.firstName ? [apiConn.firstName, apiConn.middleName, apiConn.lastName].filter(Boolean).join(\" \") : null),\n address: apiConn?.address || apiConn?.addressRaw,\n connectionType: apiConn?.connectionType || apiConn?.connectionCategory,\n meterNumber: apiConn?.meterNumber || apiConn?.meterNo,\n phoneNumber: apiConn?.phoneNumber || apiConn?.mobileNo || apiConn?.mobileNumber,\n email: apiConn?.email,\n statusflag: apiConn?.statusflag || apiConn?.statusFlag,\n ekycStatus: apiConn?.ekycStatus,\n knumber: apiConn?.knumber || apiConn?.kno,\n },\n address: {\n fullAddress: apiAddr?.fullAddress || apiAddr?.addressRaw,\n flatHouseNumber: apiAddr?.flatHouseNumber || apiAddr?.flatNo,\n buildingTower: apiAddr?.buildingTower || apiAddr?.building,\n landmark: apiAddr?.landmark,\n pinCode: apiAddr?.pinCode || apiAddr?.pincode,\n ward: apiAddr?.ward || apiAddr?.locality,\n assembly: apiAddr?.assembly,\n gpsValid: apiAddr?.gpsValid,\n latitude: apiAddr?.latitude,\n longitude: apiAddr?.longitude,\n mobileNo: apiAddr?.mobileNo || apiAddr?.mobileNumber,\n whatsappNo: apiAddr?.whatsappNo,\n email: apiAddr?.email,\n noOfPerson: apiAddr?.noOfPerson || apiAddr?.noOfPersons,\n knumber: apiAddr?.knumber || apiAddr?.kno,\n doorPhotoFilestoreId: apiAddr?.doorPhotoFilestoreId,\n },\n property: {\n kno: apiProp?.kno,\n pidNumber: apiProp?.pidNumber,\n typeOfConnection: apiProp?.typeOfConnection,\n connectionCategory: apiProp?.connectionCategory,\n userType: apiProp?.userType,\n numberOfFloors: apiProp?.numberOfFloors || apiProp?.noOfFloor,\n tenantName: apiProp?.tenantName,\n tenantMobile: apiProp?.tenantMobile,\n ekycStatus: apiProp?.ekycStatus,\n propertyDocumentFileStoreId: apiProp?.propertyDocumentFileStoreId,\n buildingImageFileStoreId: apiProp?.buildingImageFileStoreId,\n },\n meter: {\n kno: apiMeter?.kno,\n metered: apiMeter?.meterStatus === \"METERED\" || apiMeter?.metered,\n meterNumber: apiMeter?.meterNumber || apiMeter?.meterNo,\n meterMake: apiMeter?.meterMake,\n meterLocationAddress: apiMeter?.meterLocationAddress,\n meterLatitude: apiMeter?.meterLatitude,\n meterLongitude: apiMeter?.meterLongitude,\n workingStatus: apiMeter?.workingStatus,\n lastBillRaised: apiMeter?.lastBillRaised,\n systemMeterId: apiMeter?.systemMeterId,\n meterPhotoFileStoreId: apiMeter?.meterPhotoFileStoreId,\n },\n };\n };\n\n const newDataRaw = prepareConsolidatedData(apiNewData);\n const oldDataRaw = prepareConsolidatedData(apiOldData);\n\n // Apply edits to newData if present\n const connectionData = {\n ...newDataRaw?.connection,\n consumerName: aadhaarData?.name || newDataRaw?.connection?.consumerName,\n phoneNumber: aadhaarData?.mobileNumber || newDataRaw?.connection?.phoneNumber,\n knumber: newDataRaw?.connection?.knumber || activeKno,\n };\n\n const addressData = {\n ...newDataRaw?.address,\n fullAddress: editedAddress?.fullAddress || newDataRaw?.address?.fullAddress,\n flatHouseNumber: editedAddress?.flatHouseNumber || editedAddress?.flatNo || newDataRaw?.address?.flatHouseNumber,\n buildingTower: editedAddress?.buildingTower || editedAddress?.building || newDataRaw?.address?.buildingTower,\n landmark: editedAddress?.landmark || newDataRaw?.address?.landmark,\n pinCode: editedAddress?.pinCode || editedAddress?.pincode || newDataRaw?.address?.pinCode,\n ward: editedAddress?.ward || newDataRaw?.address?.ward,\n assembly: editedAddress?.assembly || newDataRaw?.address?.assembly,\n gpsValid: editedAddress?.gpsValid !== undefined ? editedAddress.gpsValid : newDataRaw?.address?.gpsValid,\n latitude: editedAddress?.latitude || newDataRaw?.address?.latitude,\n longitude: editedAddress?.longitude || newDataRaw?.address?.longitude,\n mobileNo: editedAddress?.mobileNo || aadhaarData?.mobileNumber || newDataRaw?.address?.mobileNo,\n whatsappNo: editedAddress?.whatsappNo || aadhaarData?.whatsappNumber || newDataRaw?.address?.whatsappNo,\n email: editedAddress?.email || newDataRaw?.address?.email,\n noOfPerson: editedAddress?.noOfPerson || aadhaarData?.noOfPersons || newDataRaw?.address?.noOfPerson,\n knumber: editedAddress?.knumber || newDataRaw?.address?.knumber || activeKno,\n doorPhotoFilestoreId: editedAddress?.doorPhotoFileStoreId || newDataRaw?.address?.doorPhotoFilestoreId,\n };\n\n const propertyData = {\n ...newDataRaw?.property,\n kno: newDataRaw?.property?.kno || activeKno,\n pidNumber: editedProperty?.pidNumber || newDataRaw?.property?.pidNumber,\n typeOfConnection: editedProperty?.connectionTypeData?.label || newDataRaw?.property?.typeOfConnection,\n connectionCategory: editedProperty?.connectionCategoryData?.label || newDataRaw?.property?.connectionCategory,\n userType: editedProperty?.userTypeData?.label || newDataRaw?.property?.userType,\n numberOfFloors: editedProperty?.noOfFloorsData?.label || newDataRaw?.property?.numberOfFloors,\n propertyDocumentFileStoreId: editedProperty?.propertyDocumentFileStoreId || newDataRaw?.property?.propertyDocumentFileStoreId,\n };\n\n const meterData = {\n ...newDataRaw?.meter,\n kno: editedMeter?.kno || newDataRaw?.meter?.kno || activeKno,\n metered: editedMeter?.meterStatusData?.value === \"Metered\" || newDataRaw?.meter?.metered,\n meterNumber: newDataRaw?.meter?.meterNumber,\n meterMake: editedMeter?.meterMake || newDataRaw?.meter?.meterMake,\n meterLocationAddress: editedMeter?.meterLocation || newDataRaw?.meter?.meterLocationAddress,\n workingStatus: editedMeter?.workingStatusData?.value === \"Working\" || newDataRaw?.meter?.workingStatus,\n lastBillRaised: editedMeter?.lastBillRaisedData?.value === \"Yes\" || newDataRaw?.meter?.lastBillRaised,\n meterPhotoFileStoreId: editedMeter?.meterPhotoFileStoreId || newDataRaw?.meter?.meterPhotoFileStoreId,\n };\n\n // ── Section Fields Configuration ─────────────────────────────────────\n const connectionFields = [\n { label: \"EKYC_K_NUMBER\", key: \"knumber\" },\n { label: \"EKYC_CONSUMER_NAME\", key: \"consumerName\" },\n { label: \"EKYC_ADDRESS\", key: \"address\" },\n { label: \"EKYC_CONNECTION_TYPE\", key: \"connectionType\" },\n { label: \"EKYC_METER_NO\", key: \"meterNumber\" },\n { label: \"EKYC_MOBILE_NO\", key: \"phoneNumber\" },\n { label: \"EKYC_EMAIL\", key: \"email\" },\n { label: \"EKYC_STATUS_FLAG\", key: \"statusflag\" },\n { label: \"EKYC_STATUS\", key: \"ekycStatus\" },\n ];\n\n const addressFields = [\n { label: \"EKYC_FULL_ADDRESS\", key: \"fullAddress\" },\n { label: \"EKYC_FLAT_HOUSE_NO\", key: \"flatHouseNumber\" },\n { label: \"EKYC_BUILDING_TOWER\", key: \"buildingTower\" },\n { label: \"EKYC_LANDMARK\", key: \"landmark\" },\n { label: \"EKYC_PINCODE\", key: \"pinCode\" },\n { label: \"EKYC_LOCALITY\", key: \"ward\" },\n { label: \"EKYC_ASSEMBLY\", key: \"assembly\" },\n { label: \"EKYC_GPS_VALID\", key: \"gpsValid\", isBool: true },\n { label: \"EKYC_LATITUDE\", key: \"latitude\" },\n { label: \"EKYC_LONGITUDE\", key: \"longitude\" },\n { label: \"EKYC_MOBILE_NO\", key: \"mobileNo\" },\n { label: \"EKYC_WHATSAPP_NO\", key: \"whatsappNo\" },\n { label: \"EKYC_EMAIL\", key: \"email\" },\n { label: \"EKYC_NO_OF_PERSONS\", key: \"noOfPerson\" },\n { label: \"EKYC_K_NUMBER\", key: \"knumber\" },\n ];\n\n const propertyFields = [\n { label: \"EKYC_CONNECTION_CATEGORY\", key: \"connectionCategory\" },\n { label: \"EKYC_PID_NUMBER\", key: \"pidNumber\" },\n { label: \"EKYC_TYPE_OF_CONNECTION\", key: \"typeOfConnection\" },\n { label: \"EKYC_USER_TYPE\", key: \"userType\" },\n { label: \"EKYC_FLOOR_COUNT\", key: \"numberOfFloors\" },\n { label: \"EKYC_TENANT_NAME\", key: \"tenantName\" },\n { label: \"EKYC_TENANT_MOBILE\", key: \"tenantMobile\" },\n { label: \"EKYC_STATUS\", key: \"ekycStatus\" },\n ];\n\n const meterFields = [\n { label: \"EKYC_METERED\", key: \"metered\", isBool: true },\n { label: \"EKYC_METER_NO\", key: \"meterNumber\" },\n { label: \"EKYC_METER_MAKE\", key: \"meterMake\" },\n { label: \"EKYC_METER_LOCATION_ADDRESS\", key: \"meterLocationAddress\" },\n { label: \"EKYC_METER_LATITUDE\", key: \"meterLatitude\" },\n { label: \"EKYC_METER_LONGITUDE\", key: \"meterLongitude\" },\n { label: \"EKYC_WORKING_STATUS\", key: \"workingStatus\", isBool: true },\n { label: \"EKYC_LAST_BILL_RAISED\", key: \"lastBillRaised\", isBool: true },\n { label: \"EKYC_SYSTEM_METER_ID\", key: \"systemMeterId\" },\n ];\n\n const handleDeclaration = () => setAgree(!agree);\n\n const handleReject = async () => {\n const payload = {\n RequestInfo: {\n apiId: \"Rainmaker\",\n ver: \"1.0\",\n msgId: \"message-id\",\n authToken: Digit.UserService.getUser()?.access_token,\n },\n kno: activeKno,\n action: \"REJECTED\",\n remarks: \"Application rejected by reviewer\",\n reviewedBy: Digit.UserService.getUser()?.info?.userName,\n role: \"ZRO\",\n };\n try {\n const result = await workflowMutation.mutateAsync(payload);\n if (result) {\n history.push(\"/digit-ui/employee/ekyc/response\", { success: true, result });\n }\n } catch (err) {\n console.error(\"Reject Error:\", err);\n }\n };\n\n const handleApprove = async () => {\n const payload = {\n RequestInfo: {\n apiId: \"Rainmaker\",\n ver: \"1.0\",\n msgId: \"message-id\",\n authToken: Digit.UserService.getUser()?.access_token,\n },\n kno: activeKno,\n action: \"APPROVED\",\n remarks: \"All documents verified\",\n reviewedBy: Digit.UserService.getUser()?.info?.userName,\n role: \"ZRO\",\n };\n try {\n const result = await workflowMutation.mutateAsync(payload);\n if (result) {\n history.push(\"/digit-ui/employee/ekyc/response\", { success: true, result });\n }\n } catch (err) {\n console.error(\"Approve Error:\", err);\n }\n };\n\n const handleFinalSubmit = async () => {\n setIsSubmitting(true);\n try {\n const payload = {\n kno: activeKno,\n tenantId: tenantId,\n newData: {\n connectionDetails: connectionData,\n addressDetails: addressData,\n propertyInfo: propertyData,\n meterDetails: meterData,\n },\n };\n\n const result = await updateMutation.mutateAsync(payload);\n if (result) {\n history.push(\"/digit-ui/employee/ekyc/response\", { success: true, result });\n }\n } catch (err) {\n console.error(\"Submit Error:\", err);\n } finally {\n setIsSubmitting(false);\n }\n };\n\n const handleViewDocument = (fileStoreId) => {\n if (!fileStoreId) return;\n const documentUrl = `https://dev-djb.nitcon.in/filestore/v1/files/id?tenantId=dl.djb&fileStoreId=${fileStoreId}`;\n setPreviewUrl(documentUrl);\n setShowPreview(true);\n };\n\n if (isSearchLoading || isSubmitting) return <Loader />;\n\n const baseUrl = \"/digit-ui/employee/ekyc\";\n\n return (\n <Fragment>\n <Card className=\"overflow-y-scroll\">\n {/* ── 1. Connection Details ────────────────────────────────────── */}\n <ReviewSection\n title={t(\"EKYC_CONNECTION_DETAILS\")}\n fields={connectionFields}\n newData={connectionData}\n oldData={oldDataRaw?.connection}\n t={t}\n jumpTo={`${baseUrl}/consumer-details`}\n state={{ ...flowState, reviewData: searchData, edits }}\n />\n\n {/* ── 2. Address Details ──────────────────────────────────────── */}\n <ReviewSection\n title={t(\"EKYC_ADDRESS_DETAILS\")}\n fields={addressFields}\n newData={addressData}\n oldData={oldDataRaw?.address}\n t={t}\n jumpTo={`${baseUrl}/address-details`}\n state={{ ...flowState, reviewData: searchData, edits }}\n />\n\n {/* ── 3. Property Info ────────────────────────────────────────── */}\n <ReviewSection\n title={t(\"EKYC_PROPERTY_INFO\")}\n fields={propertyFields}\n newData={propertyData}\n oldData={oldDataRaw?.property}\n t={t}\n jumpTo={`${baseUrl}/property-info`}\n state={{ ...flowState, reviewData: searchData, edits }}\n />\n\n {/* ── 4. Meter Details ────────────────────────────────────────── */}\n <ReviewSection\n title={t(\"EKYC_METER_DETAILS\")}\n fields={meterFields}\n newData={meterData}\n oldData={oldDataRaw?.meter}\n t={t}\n jumpTo={`${baseUrl}/meter-details`}\n state={{ ...flowState, reviewData: searchData, edits }}\n />\n\n {/* ── 5. Documents ────────────────────────────────────────────── */}\n <div style={{ marginTop: \"40px\" }}>\n <CardSubHeader style={{ marginBottom: \"20px\" }}>{t(\"EKYC_DOCUMENTS\")}</CardSubHeader>\n <StatusTable style={{ maxWidth: \"600px\" }}>\n <Row\n label={t(\"EKYC_DOOR_PHOTO\")}\n text={addressData.doorPhotoFilestoreId ? t(\"EKYC_PHOTO_AVAILABLE\") : t(\"CS_NA\")}\n actionButton={\n addressData.doorPhotoFilestoreId && (\n <div onClick={() => handleViewDocument(addressData.doorPhotoFilestoreId)}>\n <GenericFileIcon style={{ cursor: \"pointer\", fill: \"#F47738\" }} />\n </div>\n )\n }\n />\n <Row\n label={t(\"EKYC_METER_PHOTO\")}\n text={meterData.meterPhotoFileStoreId ? t(\"EKYC_PHOTO_AVAILABLE\") : t(\"CS_NA\")}\n actionButton={\n meterData.meterPhotoFileStoreId && (\n <div onClick={() => handleViewDocument(meterData.meterPhotoFileStoreId)}>\n <GenericFileIcon style={{ cursor: \"pointer\", fill: \"#F47738\" }} />\n </div>\n )\n }\n />\n <Row\n label={t(\"EKYC_BUILDING_IMAGE\")}\n text={propertyData.buildingImageFileStoreId ? t(\"EKYC_PHOTO_AVAILABLE\") : t(\"CS_NA\")}\n actionButton={\n propertyData.buildingImageFileStoreId && (\n <div onClick={() => handleViewDocument(propertyData.buildingImageFileStoreId)}>\n <GenericFileIcon style={{ cursor: \"pointer\", fill: \"#F47738\" }} />\n </div>\n )\n }\n />\n <Row\n label={t(\"EKYC_PROPERTY_DOCUMENTS\")}\n text={propertyData.propertyDocumentFileStoreId ? t(\"EKYC_DOCS_AVAILABLE\") : t(\"CS_NA\")}\n actionButton={\n propertyData.propertyDocumentFileStoreId && (\n <div onClick={() => handleViewDocument(propertyData.propertyDocumentFileStoreId)}>\n <GenericFileIcon style={{ cursor: \"pointer\", fill: \"#F47738\" }} />\n </div>\n )\n }\n />\n </StatusTable>\n </div>\n\n <div style={{ marginTop: \"40px\", paddingTop: \"30px\", borderTop: \"1px solid #EAECF0\" }}>\n <CheckBox\n id=\"agreeDeclaration\"\n name=\"agreeDeclaration\"\n label={<span style={{ fontSize: \"16px\", color: \"#344054\" }}>{t(\"EKYC_FINAL_DECLARATION\")}</span>}\n onChange={handleDeclaration}\n checked={agree}\n />\n </div>\n\n <ActionBar>\n <SubmitBar label={t(\"EKYC_REJECT\")} onSubmit={handleReject} disabled={!agree} />\n <SubmitBar label={t(\"EKYC_APPROVE\")} onSubmit={handleApprove} disabled={!agree} />\n {/* <SubmitBar label={t(\"EKYC_SUBMIT_APPLICATION\")} onSubmit={handleFinalSubmit} disabled={!agree} /> */}\n </ActionBar>\n </Card>\n\n {/* ── Document Preview Modal ────────────────────────────────────── */}\n {showPreview && (\n <div\n style={{\n position: \"fixed\",\n top: 0,\n left: 0,\n width: \"100%\",\n height: \"100%\",\n backgroundColor: \"rgba(0,0,0,0.7)\",\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n zIndex: 10000,\n }}\n >\n <div\n style={{\n position: \"relative\",\n backgroundColor: \"#fff\",\n padding: \"30px\",\n borderRadius: \"12px\",\n maxWidth: \"600px\",\n width: \"100%\",\n maxHeight: \"70vh\",\n overflow: \"auto\",\n boxShadow: \"0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)\",\n }}\n >\n <div\n onClick={() => setShowPreview(false)}\n style={{\n position: \"absolute\",\n top: \"10px\",\n right: \"10px\",\n cursor: \"pointer\",\n fontWeight: \"bold\",\n fontSize: \"20px\",\n color: \"#333\",\n background: \"#eee\",\n width: \"30px\",\n height: \"30px\",\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n borderRadius: \"50%\",\n }}\n >\n ×\n </div>\n <img\n src={previewUrl}\n alt=\"Document Preview\"\n style={{ maxWidth: \"100%\", height: \"auto\", display: \"block\" }}\n onError={(e) => {\n e.target.style.display = \"none\";\n e.target.nextSibling.style.display = \"block\";\n }}\n />\n <div style={{ display: \"none\", padding: \"40px\", textAlign: \"center\" }}>\n <p>{t(\"EKYC_DOCUMENT_PREVIEW_NOT_AVAILABLE\")}</p>\n <LinkButton label={t(\"EKYC_OPEN_IN_NEW_TAB\")} onClick={() => window.open(previewUrl, \"_blank\")} />\n </div>\n </div>\n </div>\n )}\n </Fragment>\n );\n};\n\nexport default Review;\n","import React from 'react';\n\nvar QueryClientContext = function () {\n var context = /*#__PURE__*/React.createContext(undefined);\n\n if (typeof window !== 'undefined') {\n // @ts-ignore\n window.ReactQueryClientContext = context;\n }\n\n return context;\n}();\n\nfunction getQueryClientContext() {\n var _ref;\n\n return typeof window !== 'undefined' ? // @ts-ignore\n (_ref = window.ReactQueryClientContext) != null ? _ref : QueryClientContext : QueryClientContext;\n}\n\nexport var useQueryClient = function useQueryClient() {\n var queryClient = React.useContext(getQueryClientContext());\n\n if (!queryClient) {\n throw new Error('No QueryClient set, use QueryClientProvider to set one');\n }\n\n return queryClient;\n};\nexport var QueryClientProvider = function QueryClientProvider(_ref2) {\n var client = _ref2.client,\n children = _ref2.children;\n React.useEffect(function () {\n client.mount();\n return function () {\n client.unmount();\n };\n }, [client]);\n var Context = getQueryClientContext();\n return /*#__PURE__*/React.createElement(Context.Provider, {\n value: client\n }, children);\n};","\nimport React, { useState, Fragment, useEffect } from \"react\";\nimport { useLocation } from \"react-router-dom\";\nimport {\n CardLabel,\n TextInput,\n Dropdown,\n UploadFile,\n RadioButtons,\n Toast,\n FormStep,\n Loader,\n CheckBox\n} from \"@djb25/digit-ui-react-components\";\nconst AadhaarVerification = ({ config, onSelect, formData }) => {\n const location = useLocation();\n const flowState = location.state || {};\n\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const searchKno = flowState?.kNumber || flowState?.kno || formData?.kNumber || formData?.kno || sessionStorage.getItem(\"EKYC_K_NUMBER\");\n\n const { isLoading, data: searchData } = Digit.Hooks.ekyc.useSearchConnection(\n { tenantId, details: { kno: searchKno } },\n { enabled: !!searchKno, cacheTime: 0 }\n );\n\n const updateMutation = Digit.Hooks.ekyc.useEkycUpdate(tenantId);\n\n const savedData = formData?.aadhaarVerification || {};\n\n // 🔹 STATES\n const [kno, setKno] = useState(savedData.kno || searchKno || \"\");\n const [consumerType, setConsumerType] = useState(savedData.consumerType ? { name: savedData.consumerType } : null);\n const [occupantType, setOccupantType] = useState(savedData.occupantType ? { name: savedData.occupantType } : null);\n const [categoryType, setCategoryType] = useState(savedData.categoryType ? { name: savedData.categoryType } : null);\n\n const [consumerName, setConsumerName] = useState(savedData.consumerName || \"\");\n const [firstName, setFirstName] = useState(savedData.firstName || \"\");\n const [middleName, setMiddleName] = useState(savedData.middleName || \"\");\n const [lastName, setLastName] = useState(savedData.lastName || \"\");\n\n const [gender, setGender] = useState(savedData.gender ? { name: savedData.gender } : null);\n const [parentSpouseName, setParentSpouseName] = useState(savedData.parentSpouseName || \"\");\n const [relation, setRelation] = useState(savedData.relation || \"\");\n\n const [mobile, setMobile] = useState(savedData.mobile || \"\");\n const [whatsapp, setWhatsapp] = useState(savedData.whatsapp || \"\");\n const [email, setEmail] = useState(savedData.email || \"\");\n const [residents, setResidents] = useState(savedData.residents || \"\");\n\n // Tenant\n const [documentProof, setDocumentProof] = useState(savedData.documentProof || null);\n const [documentId, setDocumentId] = useState(savedData.documentId || null);\n const [ownerMobile, setOwnerMobile] = useState(savedData.ownerMobile || \"\");\n const [tenantVerification, setTenantVerification] = useState(savedData.tenantVerification || \"\");\n\n // Govt\n const [designation, setDesignation] = useState(savedData.designation || \"\");\n const [department, setDepartment] = useState(savedData.department || \"\");\n const [employeeId, setEmployeeId] = useState(savedData.employeeId || \"\");\n const [landline, setLandline] = useState(savedData.landline || \"\");\n\n // Other Entity\n const [entityRelation, setEntityRelation] = useState(savedData.entityRelation || \"\");\n const [contactPerson, setContactPerson] = useState(savedData.contactPerson || \"\");\n const [entityName, setEntityName] = useState(savedData.entityName || \"\");\n\n // Identity\n const [idProof, setIdProof] = useState(savedData.idProof ? { name: savedData.idProof } : null);\n const [idNumber, setIdNumber] = useState(savedData.idNumber || \"\");\n const [documentNumber, setDocumentNumber] = useState(savedData.documentNumber || \"\");\n const [identityType, setIdentityType] = useState(savedData.identityType ? { name: savedData.identityType } : null);\n const [idFile, setIdFile] = useState(savedData.idFile || null);\n\n // Consent\n const [consent, setConsent] = useState(savedData.consent || false);\n const [informantIsConsumer, setInformantIsConsumer] = useState(savedData.informantIsConsumer ?? true);\n const [informantName, setInformantName] = useState(savedData.informantName || \"\");\n const [informantRelation, setInformantRelation] = useState(savedData.informantRelation || \"\");\n\n const [toast, setToast] = useState(null);\n\n useEffect(() => {\n const rawData = searchData || formData?.connectionDetails;\n const details = rawData?.connectionDetails || rawData || {};\n const addrDetails = rawData?.addressDetails || {};\n\n if (details && Object.keys(details).length > 0 && !savedData.firstName) {\n if (!kno && searchKno) setKno(searchKno);\n\n if (details.firstName) {\n setFirstName(details.firstName);\n if (details.middleName) setMiddleName(details.middleName);\n if (details.lastName) setLastName(details.lastName);\n } else if (details.consumerName) {\n setConsumerName(details.consumerName);\n const parts = details.consumerName.trim().split(/\\s+/);\n setFirstName(parts[0] || \"\");\n if (parts.length === 2) setLastName(parts[1]);\n if (parts.length > 2) {\n setMiddleName(parts.slice(1, -1).join(\" \"));\n setLastName(parts[parts.length - 1]);\n }\n }\n\n if (details.phoneNumber || addrDetails.mobileNo) setMobile(details.phoneNumber || addrDetails.mobileNo);\n if (details.email || addrDetails.email) setEmail(details.email || addrDetails.email);\n if (addrDetails.whatsappNo) setWhatsapp(addrDetails.whatsappNo);\n if (addrDetails.noOfPerson) setResidents(String(addrDetails.noOfPerson));\n\n if (details.consumerType) setConsumerType({ name: details.consumerType });\n if (details.occupantType) setOccupantType({ name: details.occupantType });\n if (details.gender) setGender({ name: details.gender });\n if (details.parentSpouse) setParentSpouseName(details.parentSpouse);\n if (details.documentNumber) {\n setDocumentId(details.documentNumber);\n setIdNumber(details.documentNumber);\n }\n if (details.informantName) setInformantName(details.informantName);\n if (details.informantRelation) setInformantRelation(details.informantRelation);\n }\n }, [searchData, formData?.connectionDetails, searchKno]);\n\n // 🔹 OPTIONS\n const consumerTypeOptions = [\n { name: \"Individual\" },\n { name: \"Govt\" },\n { name: \"Company_Society_Org\" },\n ];\n\n const occupantOptions = [\n { name: \"Self\" },\n { name: \"Tenanted\" },\n ];\n\n const genderOptions = [\n { name: \"Male\" },\n { name: \"Female\" },\n { name: \"Others\" },\n { name: \"Not prefer to say\" },\n ];\n\n const identityTypeOptions = [\n { name: \"Aadhaar Card\" },\n { name: \"Driving License\" },\n { name: \"Passport\" },\n { name: \"Voter ID\" },\n ];\n\n const yesNo = [{ name: \"Yes\" }, { name: \"No\" }];\n\n // 🔹 FILE UPLOAD\n const uploadFile = async (e, setter, idSetter) => {\n const file = e.target.files[0];\n if (!file) return;\n\n try {\n const res = await Digit.UploadServices.Filestorage(\"EKYC\", file);\n const id = res?.data?.files?.[0]?.fileStoreId;\n if (id) {\n setter(file.name);\n idSetter(id);\n }\n } catch {\n setToast({ type: \"error\", message: \"Upload failed\" });\n }\n };\n\n // 🔹 VALIDATION\n const isValid = () => {\n if (!kno) return false;\n if (!consumerType) return false;\n if (!occupantType) return false;\n if (!categoryType) return false;\n if (!firstName) return false;\n if (!mobile) return false;\n if (!residents || Number(residents) <= 0) return false;\n\n if (occupantType?.name === \"Tenanted\" && !documentId && !ownerMobile)\n return false;\n\n return consent; // consent must be true\n };\n\n // 🔹 SUBMIT\n const onStepSelect = async () => {\n // If not valid, just show a warning (or uncomment below to enforce)\n /*\n if (!isValid()) {\n setToast({ type: \"error\", message: \"Fill required fields\" });\n return;\n }\n */\n\n const data = {\n kno,\n consumerType: consumerType?.name,\n occupantType: occupantType?.name,\n categoryType: categoryType?.name,\n consumerName,\n firstName,\n middleName,\n lastName,\n gender: gender?.name,\n parentSpouseName,\n relation,\n mobile,\n whatsapp,\n email,\n residents,\n documentId,\n ownerMobile,\n tenantVerification,\n designation,\n department,\n employeeId,\n landline,\n entityRelation,\n contactPerson,\n entityName,\n idProof: idProof?.name,\n idNumber,\n consent,\n informantIsConsumer,\n informantName,\n informantRelation,\n };\n\n try {\n await updateMutation.mutateAsync({\n RequestInfo: {},\n updateType: \"CONSUMER\",\n ...data\n });\n setToast({ type: \"success\", message: \"Data updated successfully!\" });\n onSelect(config.key, data);\n } catch (error) {\n setToast({ type: \"error\", message: \"Failed to update consumer details\" });\n }\n };\n\n if (isLoading) {\n return <Loader />;\n }\n\n return (\n <Fragment>\n <FormStep onSelect={onStepSelect} config={config} isDisabled={!isValid()}>\n\n <div>\n <CardLabel>Consumer Type *</CardLabel>\n <Dropdown option={consumerTypeOptions} selected={consumerType} select={setConsumerType} />\n </div>\n\n <div>\n <CardLabel>Occupant Type *</CardLabel>\n <Dropdown option={occupantOptions} selected={occupantType} select={setOccupantType} />\n </div>\n\n <div>\n <CardLabel>Category Type *</CardLabel>\n <Dropdown option={[]} selected={categoryType} select={setCategoryType} />\n </div>\n\n <div>\n <CardLabel>First Name *</CardLabel>\n <TextInput value={firstName} onChange={(e) => setFirstName(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>Middle Name</CardLabel>\n <TextInput value={middleName} onChange={(e) => setMiddleName(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>Last Name</CardLabel>\n <TextInput value={lastName} onChange={(e) => setLastName(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>Gender</CardLabel>\n <Dropdown option={genderOptions} selected={gender} select={setGender} />\n </div>\n\n <div>\n <CardLabel>Parent/Spouse Name </CardLabel>\n <TextInput value={parentSpouseName} onChange={(e) => setParentSpouseName(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>Mobile *</CardLabel>\n <TextInput value={mobile} onChange={(e) => setMobile(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>WhatsApp</CardLabel>\n <TextInput value={whatsapp} onChange={(e) => setWhatsapp(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>Email</CardLabel>\n <TextInput value={email} onChange={(e) => setEmail(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>No. of Residents *</CardLabel>\n <TextInput value={residents} onChange={(e) => setResidents(e.target.value)} />\n </div>\n<div>\n {console.log(\"identityType\",identityType)}\n <CardLabel>Type of Identity *</CardLabel>\n <Dropdown option={identityTypeOptions} selected={identityType} select={setIdentityType} />\n </div>\n <div>\n <CardLabel>Proof of Identity</CardLabel>\n <UploadFile onUpload={(e) => uploadFile(e, setDocumentProof, setDocumentId)} />\n </div>\n <div>\n <CardLabel>Document Number</CardLabel>\n <TextInput value={documentNumber} onChange={(e) => setDocumentNumber(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>Informant Is Consumer</CardLabel>\n <CheckBox \n label=\"Yes, the informant is the consumer\" \n checked={informantIsConsumer} \n onChange={(e) => setInformantIsConsumer(e.target.checked)} \n />\n </div>\n\n {!informantIsConsumer && (\n <Fragment>\n <div>\n <CardLabel>Informant Name</CardLabel>\n <TextInput value={informantName} onChange={(e) => setInformantName(e.target.value)} />\n </div>\n <div>\n <CardLabel>Informant Relation</CardLabel>\n <TextInput value={informantRelation} onChange={(e) => setInformantRelation(e.target.value)} />\n </div>\n </Fragment>\n )}\n\n {/* TENANT LOGIC */}\n {occupantType?.name === \"Tenanted\" && (\n <Fragment>\n <div>\n <CardLabel>Document Proof</CardLabel>\n <UploadFile onUpload={(e) => uploadFile(e, setDocumentProof, setDocumentId)} />\n </div>\n\n {!documentId && (\n <Fragment>\n <div>\n <CardLabel>Owner Mobile *</CardLabel>\n <TextInput value={ownerMobile} onChange={(e) => setOwnerMobile(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>Tenant Verification</CardLabel>\n <TextInput value={tenantVerification} onChange={(e) => setTenantVerification(e.target.value)} />\n </div>\n </Fragment>\n )}\n </Fragment>\n )}\n\n {/* GOVT */}\n {consumerType?.name === \"Govt\" && (\n <Fragment>\n <div>\n <CardLabel>Designation</CardLabel>\n <TextInput value={designation} onChange={(e) => setDesignation(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>Department</CardLabel>\n <TextInput value={department} onChange={(e) => setDepartment(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>Employee ID</CardLabel>\n <TextInput value={employeeId} onChange={(e) => setEmployeeId(e.target.value)} />\n </div>\n </Fragment>\n )}\n\n {/* OTHER ENTITY */}\n {consumerType?.name === \"Company_Society_Org\" && (\n <Fragment>\n <div>\n <CardLabel>Entity Name</CardLabel>\n <TextInput value={entityName} onChange={(e) => setEntityName(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>Contact Person</CardLabel>\n <TextInput value={contactPerson} onChange={(e) => setContactPerson(e.target.value)} />\n </div>\n </Fragment>\n )}\n </FormStep>\n {toast && (\n <Toast\n error={toast.type === \"error\"}\n label={toast.message}\n onClose={() => setToast(null)}\n />\n )}\n </Fragment>\n );\n};\n\nexport default AadhaarVerification;","import AadhaarVerification from \"../components/AadhaarVerification\";\n\nexport const ekycConfig = [\n {\n body: [\n {\n route: \"consumer-details\",\n component: AadhaarVerification,\n key: \"aadhaarVerification\",\n texts: {\n header: \"EKYC_CONSUMER_CONNECTION\",\n submitBarLabel: \"COMMON_SAVE_NEXT\",\n },\n timeLine: [\n {\n currentStep: 1,\n actions: \"EKYC_CONSUMER_CONNECTION\",\n },\n ],\n },\n {\n route: \"address-details\",\n component: \"AddressDetails\",\n key: \"addressDetails\",\n doorImage: true,\n texts: {\n header: \"EKYC_ADDRESS_DETAILS\",\n submitBarLabel: \"COMMON_SAVE_NEXT\",\n },\n timeLine: [\n {\n currentStep: 2,\n actions: \"EKYC_ADDRESS_DETAILS\",\n },\n ],\n },\n {\n route: \"property-info\",\n component: \"PropertyInfo\",\n key: \"propertyDetails\",\n texts: {\n header: \"EKYC_PROPERTY_INFO\",\n submitBarLabel: \"COMMON_SAVE_NEXT\",\n },\n timeLine: [\n {\n currentStep: 3,\n actions: \"EKYC_PROPERTY_INFO\",\n },\n ],\n },\n {\n route: \"meter-details\",\n component: \"MeterDetails\",\n key: \"meterDetails\",\n texts: {\n header: \"EKYC_METER_DETAILS\",\n submitBarLabel: \"COMMON_SAVE_NEXT\",\n },\n timeLine: [\n {\n currentStep: 4,\n actions: \"EKYC_METER_DETAILS\",\n },\n ],\n },\n ],\n },\n];\n","import React, { useState, useEffect, useRef } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { useQueryClient } from \"react-query\";\nimport { Redirect, Route, Switch, useHistory, useLocation, useRouteMatch } from \"react-router-dom\";\nimport { Header, VerticalTimeline } from \"@djb25/digit-ui-react-components\";\nimport { ekycConfig } from \"../../config/config\";\n\nconst EKYCForm = ({ path: passedPath }) => {\n const queryClient = useQueryClient();\n const match = useRouteMatch();\n const { t } = useTranslation();\n const location = useLocation();\n const { pathname } = location;\n const history = useHistory();\n\n let config = [];\n const [params, setParams, clearParams] = Digit.Hooks.useSessionStorage(\"EKYC_CREATE\", {});\n const userInfo = Digit.UserService.getUser();\n const tenantId = Digit.ULBService.getCurrentTenantId();\n\n useEffect(() => {\n if (location.state && Object.keys(location.state).length > 0) {\n const { edits, ...rest } = location.state;\n setParams({ ...params, ...rest, ...edits });\n }\n }, [location.state]);\n\n const goNext = (skipStep, index, isAddMultiple, key) => {\n let currentPath = pathname.split(\"/\").pop();\n let routeObj = config.find((routeObj) => (key ? routeObj.key === key : routeObj.route === currentPath));\n if (!routeObj) routeObj = config.find((routeObj) => routeObj.route === currentPath);\n\n let nextStep = null;\n const currentIndex = config.findIndex(c => c.route === routeObj.route);\n if (currentIndex > -1 && currentIndex < config.length - 1) {\n nextStep = config[currentIndex + 1].route;\n }\n\n let redirectWithHistory = history.push;\n if (skipStep) {\n redirectWithHistory = history.replace;\n }\n\n const base = passedPath || match.path.split('/').slice(0, -1).join('/');\n if (nextStep === null) {\n return redirectWithHistory(`${base}/review`, { ...params, edits: params });\n }\n\n redirectWithHistory(`${base}/${nextStep}`, { ...params });\n };\n\n function handleSelect(key, data, skipStep, index, isAddMultiple = false) {\n setParams({ ...params, ...{ [key]: { ...params[key], ...data } } });\n goNext(skipStep, index, isAddMultiple, key);\n }\n\n const onSuccess = () => {\n clearParams();\n queryClient.invalidateQueries(\"EKYC_CREATE\");\n };\n\n ekycConfig.forEach((obj) => {\n config = config.concat(obj.body);\n });\n\n config.indexRoute = \"consumer-details\";\n\n const formStepRoutes = config.map(c => c.route);\n const isFormStep = formStepRoutes.some((route) => pathname.includes(route));\n\n const sectionRefs = useRef({});\n\n useEffect(() => {\n if (isFormStep) {\n const currentRoute = pathname.split(\"/\").pop();\n if (sectionRefs.current[currentRoute]) {\n sectionRefs.current[currentRoute].scrollIntoView({ behavior: \"smooth\", block: \"start\" });\n }\n }\n }, [pathname, isFormStep]);\n\n return (\n <React.Fragment>\n <div className=\"employee-form-section-wrapper\">\n <VerticalTimeline config={config} showFinalStep={true} />\n <div className=\"employee-form-section\">\n <Switch>\n <Route path={formStepRoutes.map((route) => `${(passedPath || match.path.split('/').slice(0, -1).join('/'))}/${route}`)}>\n <div className=\"single-page-form-container\">\n {config.map((routeObj, index) => {\n const { component, key } = routeObj;\n const Component = typeof component === \"string\" ? Digit.ComponentRegistryService.getComponent(component) : component;\n\n return (\n <div key={index} ref={(el) => (sectionRefs.current[routeObj.route] = el)} className=\"form-section-unit\">\n <Component\n config={{ ...routeObj, isCollapsible: true, defaultOpen: true }}\n onSelect={handleSelect}\n t={t}\n formData={params}\n />\n </div>\n );\n })}\n </div>\n </Route>\n <Route>\n <Redirect to={`${(passedPath || match.path.split('/').slice(0, -1).join('/'))}/${config.indexRoute}`} />\n </Route>\n </Switch>\n </div>\n </div>\n </React.Fragment>\n );\n};\n\nexport default EKYCForm;\n","import React, { useMemo, useState, useEffect } from \"react\";\nimport { Modal, Close, Table, Toast } from \"@djb25/digit-ui-react-components\";\n\nconst AssignEkycModal = ({ surveyor, closeModal }) => {\n const [selectedKnos, setSelectedKnos] = useState([]);\n const [isBulkSelection, setIsBulkSelection] = useState(false);\n const [currentPage, setCurrentPage] = useState(0);\n const [pageSize, setPageSize] = useState(10);\n const [showToast, setShowToast] = useState(false);\n const [toastData, setToastData] = useState({\n error: false,\n label: \"\",\n });\n const [filters, setFilters] = useState({\n kno: \"\", // search value\n pincode: \"\",\n zoneName: \"\",\n ward: \"\",\n assembly: \"\",\n mrkey: \"\",\n ekycStatus: \"\",\n });\n\n const [debouncedFilters, setDebouncedFilters] = useState(filters);\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setDebouncedFilters(filters);\n }, 500);\n\n return () => clearTimeout(timer);\n }, [filters]);\n\n useEffect(() => {\n setCurrentPage(0);\n }, [debouncedFilters]);\n\n const { data: applicationData, isFetching: isLoading } = Digit.Hooks.ekyc.useEkycApplicationList(\n {\n ...(debouncedFilters.kno && {\n kno: debouncedFilters.kno,\n }),\n\n ...(debouncedFilters.ekycStatus && {\n ekycStatus: debouncedFilters.ekycStatus,\n }),\n\n ...(debouncedFilters.zoneName && {\n zoneName: debouncedFilters.zoneName,\n }),\n\n ...(debouncedFilters.assembly && {\n assembly: debouncedFilters.assembly,\n }),\n\n ...(debouncedFilters.ward && {\n ward: debouncedFilters.ward,\n }),\n\n ...(debouncedFilters.mrkey && {\n mrkey: debouncedFilters.mrkey,\n }),\n\n ...(debouncedFilters.pincode && {\n pincode: debouncedFilters.pincode,\n }),\n },\n {\n tenantId: \"dl.djb\",\n offset: currentPage * pageSize,\n limit: pageSize,\n },\n {\n keepPreviousData: true,\n }\n );\n\n const assignmentMutation = Digit.Hooks.ekyc.useEkycAssignmentCreate({\n onSuccess: (response) => {\n if (response?.error) {\n setToastData({\n error: true,\n label: response?.data?.message || \"Something went wrong\",\n });\n\n setShowToast(true);\n return;\n }\n\n setToastData({\n error: false,\n label: \"Assignment successful\",\n });\n\n setShowToast(true);\n\n // optional delay so user can see the success toast\n setTimeout(() => {\n closeModal();\n }, 1000);\n },\n\n onError: (error) => {\n setToastData({\n error: true,\n label: error?.data?.message || error?.response?.data?.message || \"Something went wrong\",\n });\n\n setShowToast(true);\n },\n });\n\n const tableData = applicationData?.consumerList || [];\n\n const getAssignmentPayload = () => {\n if (isBulkSelection) {\n const filterMappings = [\n { key: \"ekycStatus\", type: \"EKYCSTATUS\" },\n { key: \"zoneName\", type: \"ZONENAME\" },\n { key: \"assembly\", type: \"ASSEMBLY\" },\n { key: \"ward\", type: \"WARD\" },\n { key: \"mrkey\", type: \"MRKEY\" },\n { key: \"pincode\", type: \"PINCODE\" },\n ];\n\n const appliedFilter = filterMappings.find(({ key }) => debouncedFilters[key]);\n\n if (appliedFilter) {\n return {\n assignmentType: appliedFilter.type,\n assignmentValue: debouncedFilters[appliedFilter.key],\n };\n }\n }\n\n console.log(\"=-=-==-=-=-=-\", {\n assignmentType: \"KNO\",\n assignmentValues: selectedKnos,\n });\n\n return {\n assignmentType: \"KNO\",\n assignmentValues: selectedKnos,\n };\n };\n const handleAssign = () => {\n const { assignmentType, assignmentValue, assignmentValues } = getAssignmentPayload();\n\n assignmentMutation.mutate({\n tenantId: \"dl.djb\",\n surveyorId: surveyor?.owner?.uuid,\n assignmentType,\n assignmentValue,\n assignmentValues,\n });\n };\n\n const handleSelectAll = () => {\n setIsBulkSelection(true);\n\n const pageKnos = tableData.map((item) => item.kno);\n\n const allSelected = pageKnos.length > 0 && pageKnos.every((kno) => selectedKnos.includes(kno));\n\n setSelectedKnos((prev) => (allSelected ? prev.filter((kno) => !pageKnos.includes(kno)) : [...new Set([...prev, ...pageKnos])]));\n };\n\n const handleFilterChange = (key, value) => {\n setFilters((prev) => ({\n ...prev,\n [key]: value,\n }));\n };\n\n const columns = useMemo(\n () => [\n {\n Header: () => (\n <input\n type=\"checkbox\"\n checked={tableData.length > 0 && tableData.every((item) => selectedKnos.includes(item.kno))}\n onChange={handleSelectAll}\n />\n ),\n id: \"selection\",\n Cell: ({ row }) => {\n const kno = row.original.kno;\n\n return <input type=\"checkbox\" checked={selectedKnos.includes(kno)} onChange={() => handleSelect(kno)} />;\n },\n },\n {\n Header: \"KNO\",\n accessor: \"kno\",\n },\n {\n Header: \"Consumer Name\",\n accessor: (row) => `${row.firstName || \"\"} ${row.middleName || \"\"} ${row.lastName || \"\"}`.trim(),\n id: \"consumerName\",\n },\n {\n Header: \"Zone\",\n accessor: \"zoneName\",\n },\n {\n Header: \"Pincode\",\n accessor: \"pincode\",\n },\n {\n Header: \"Status\",\n accessor: \"status\",\n Cell: ({ value }) => (\n <span className={`status-badge ${value === \"ACTIVE\" ? \"verified\" : value === \"PENDING\" ? \"pending\" : \"assigned\"}`}>{value}</span>\n ),\n },\n {\n Header: \"eKYC Status\",\n accessor: \"ekycStatus\",\n Cell: ({ value }) => value || \"-\",\n },\n ],\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [selectedKnos, tableData]\n );\n\n const handleSelect = (kno) => {\n setSelectedKnos((prev) => (prev.includes(kno) ? prev.filter((item) => item !== kno) : [...prev, kno]));\n };\n\n return (\n <Modal\n headerBarMain={`Assign KNOs to ${surveyor?.name}`}\n headerBarEnd={<Close onClick={closeModal} />}\n actionCancelLabel=\"Cancel\"\n actionCancelOnSubmit={closeModal}\n actionSaveLabel={`Assign ${selectedKnos.length} KNOs`}\n actionSaveOnSubmit={handleAssign}\n >\n <div className=\"assign-knos-modal\">\n {/* Filters */}\n <div className=\"filters-grid\">\n <input className=\"form-control\" placeholder=\"KNO\" value={filters.kno} onChange={(e) => handleFilterChange(\"kno\", e.target.value)} />\n\n <input\n className=\"form-control\"\n placeholder=\"Pincode\"\n value={filters.pincode}\n onChange={(e) => handleFilterChange(\"pincode\", e.target.value)}\n />\n\n <input\n className=\"form-control\"\n placeholder=\"Zone\"\n value={filters.zoneName}\n onChange={(e) => handleFilterChange(\"zoneName\", e.target.value)}\n />\n\n <input className=\"form-control\" placeholder=\"Ward\" value={filters.ward} onChange={(e) => handleFilterChange(\"ward\", e.target.value)} />\n\n <input\n className=\"form-control\"\n placeholder=\"Assembly\"\n value={filters.assembly}\n onChange={(e) => handleFilterChange(\"assembly\", e.target.value)}\n />\n\n <input className=\"form-control\" placeholder=\"MR Key\" value={filters.mrkey} onChange={(e) => handleFilterChange(\"mrkey\", e.target.value)} />\n\n <select className=\"form-control\" value={filters.ekycStatus} onChange={(e) => handleFilterChange(\"ekycStatus\", e.target.value)}>\n <option value=\"\">All eKYC Status</option>\n <option value=\"PENDING\">Pending</option>\n <option value=\"APPROVED\">Approved</option>\n <option value=\"REJECTED\">Rejected</option>\n </select>\n </div>\n\n {/* Table */}\n <Table\n tableTitle=\"eKYC Applications\"\n tableClass=\"ekycTable\"\n data={tableData}\n columns={columns}\n isLoading={isLoading}\n totalRecords={applicationData?.totalCount || 0}\n currentPage={currentPage}\n pageSizeLimit={pageSize}\n manualPagination={true}\n isPaginationRequired={true}\n onNextPage={() => {\n if (currentPage < (applicationData?.totalPages || 1) - 1) {\n setCurrentPage((prev) => prev + 1);\n }\n }}\n onPrevPage={() => {\n if (currentPage > 0) {\n setCurrentPage((prev) => prev - 1);\n }\n }}\n onFirstPage={() => {\n setCurrentPage(0);\n }}\n onLastPage={() => {\n setCurrentPage(Math.max((applicationData?.totalPages || 1) - 1, 0));\n }}\n onPageSizeChange={(e) => {\n setPageSize(Number(e.target.value));\n setCurrentPage(0);\n }}\n />\n </div>\n {showToast && <Toast error={toastData.error} label={toastData.label} onClose={() => setShowToast(false)} />}\n </Modal>\n );\n};\n\nexport default AssignEkycModal;\n","import React, { useMemo, useState } from \"react\";\nimport { ResponsiveContainer, BarChart, Bar, XAxis, YAxis, Tooltip, CartesianGrid, PieChart, Pie, Cell, Legend } from \"recharts\";\n\nimport { Card, SubmitBar, ActionBar, Menu, Loader, Table } from \"@djb25/digit-ui-react-components\";\n\nimport { useTranslation } from \"react-i18next\";\nimport { useParams } from \"react-router-dom\";\n\nimport AssignEkycModal from \"./AssignEkycModal\";\n\nconst SurveyorDetailsDashboard = () => {\n const tenantId = Digit.ULBService.getCurrentTenantId();\n\n const [showModal, setShowModal] = useState(false);\n const [showOptions, setShowOptions] = useState(false);\n\n const { id: surveyorId } = useParams();\n const ownerIds = Digit.SessionStorage.get(\"User\")?.info?.uuid;\n\n const { t } = useTranslation();\n\n const searchParams = surveyorId ? { ids: surveyorId } : { ownerIds };\n\n const { data: surveyorSearchResponse, isLoading } = Digit.Hooks.fsm.useSurveyorSearch(tenantId, searchParams, { staleTime: Infinity });\n\n const roles = Digit.SessionStorage.get(\"User\")?.info?.roles.map((ele) => ele.code);\n\n const surveyor = useMemo(() => {\n return surveyorSearchResponse?.surveyors?.[0] || null;\n }, [surveyorSearchResponse]);\n\n const [currentPage, setCurrentPage] = useState(0);\n const [pageSize, setPageSize] = useState(20);\n const queryParams = {\n tenantId: \"dl.djb\",\n offset: currentPage * pageSize,\n limit: pageSize,\n surveyorId: surveyor?.owner?.uuid,\n };\n\n const { isFetching: isDashboardLoading, data: dashboardData = {}, refetch: refetchDashboard } = Digit.Hooks.ekyc.useEkycSurveyorDashboard(\n {},\n queryParams,\n {\n enabled: !!queryParams.tenantId && !!queryParams.surveyorId,\n keepPreviousData: true,\n }\n );\n\n const knoColumns = useMemo(\n () => [\n {\n Header: \"KNO\",\n accessor: \"kno\",\n },\n {\n Header: \"Consumer Name\",\n accessor: (row) => `${row.firstName || \"\"} ${row.middleName || \"\"} ${row.lastName || \"\"}`.trim(),\n id: \"consumerName\",\n },\n {\n Header: \"Zone\",\n accessor: \"zoneName\",\n },\n {\n Header: \"Pincode\",\n accessor: \"pincode\",\n },\n {\n Header: \"Status\",\n accessor: \"status\",\n Cell: ({ value }) => (\n <span className={`status-badge ${value === \"ACTIVE\" ? \"verified\" : value === \"PENDING\" ? \"pending\" : \"assigned\"}`}>{value}</span>\n ),\n },\n {\n Header: \"eKYC Status\",\n accessor: \"ekycStatus\",\n Cell: ({ value }) => value || \"-\",\n },\n ],\n []\n );\n\n if (isLoading) {\n return <Loader />;\n }\n\n if (!surveyor) {\n return (\n <Card>\n <div style={{ padding: \"24px\" }}>{t(\"NO_SURVEYOR_FOUND\")}</div>\n </Card>\n );\n }\n\n const weeklyData = [\n { day: \"Mon\", completed: 4 },\n { day: \"Tue\", completed: 6 },\n { day: \"Wed\", completed: 3 },\n { day: \"Thu\", completed: 8 },\n { day: \"Fri\", completed: 5 },\n { day: \"Sat\", completed: 7 },\n { day: \"Sun\", completed: 2 },\n ];\n\n const statusData = [\n {\n name: \"Completed\",\n value: surveyor?.completedCases || 0,\n color: \"#10B981\",\n },\n {\n name: \"Pending\",\n value: surveyor?.pendingCases || 0,\n color: \"#F59E0B\",\n },\n {\n name: \"Rejected\",\n value: surveyor?.rejectedCases || 0,\n color: \"#EF4444\",\n },\n ];\n\n const StatCard = ({ title, value, type, isLoading }) => (\n <div className={`stat-card ${type}`}>\n {isLoading ? (\n <React.Fragment>\n <div className=\"stat-title skeleton skeleton-text\"></div>\n <div className=\"stat-value skeleton skeleton-number\"></div>\n </React.Fragment>\n ) : (\n <React.Fragment>\n <div className=\"stat-title\">{title}</div>\n <div className=\"stat-value\">{value}</div>\n </React.Fragment>\n )}\n </div>\n );\n\n const options = [{ action: \"Assign\" }];\n\n const fullName = surveyor?.owner?.name || surveyor?.name || \"N/A\";\n\n const employeeId = surveyor?.employeeId || surveyor?.owner?.uuid || surveyor?.id;\n\n const handleMenuSelect = (option) => {\n setShowOptions(false); // close menu\n setShowModal(true);\n };\n\n const closeModal = async () => {\n await refetchDashboard();\n setShowModal(false);\n };\n\n return (\n <Card className=\"surveyor-dashboard\">\n {/* Header */}\n <div className=\"ekyc-dashboard-section\">\n <div className=\"ekyc-dashboard-header\">\n <div className=\"avatar\">{fullName?.charAt(0)?.toUpperCase()}</div>\n\n <div className=\"header-content\">\n <h2 className=\"name\">{fullName}</h2>\n\n <div className=\"designation\">{surveyor?.description || t(\"FIELD_SURVEYOR\")}</div>\n\n <div className=\"employee-id\">\n {t(\"EMPLOYEE_ID\")}: {employeeId}\n </div>\n </div>\n </div>\n </div>\n\n {/* Stats */}\n <div className=\"stats-wrapper\">\n <StatCard title={t(\"TOTAL_ASSIGNED\")} value={dashboardData?.dashboardInfo?.total || 0} type=\"today\" isLoading={isDashboardLoading} />\n <StatCard title={t(\"COMPLETED\")} value={dashboardData?.dashboardInfo?.completed || 0} type=\"week\" isLoading={isDashboardLoading} />\n <StatCard title={t(\"PENDING\")} value={dashboardData?.dashboardInfo?.pending || 0} type=\"pending\" isLoading={isDashboardLoading} />\n <StatCard title={t(\"SUBMITTED\")} value={dashboardData?.dashboardInfo?.submittedCount || 0} type=\"month\" isLoading={isDashboardLoading} />\n </div>\n\n {/* Charts */}\n <div className=\"charts-wrapper\">\n {/* Weekly Chart */}\n <div className=\"chart-card\">\n <h3 className=\"chart-title\">{t(\"WEEKLY_SURVEY_PROGRESS\")}</h3>\n\n <ResponsiveContainer width=\"100%\" height={300}>\n <BarChart data={weeklyData}>\n <CartesianGrid strokeDasharray=\"3 3\" />\n\n <XAxis dataKey=\"day\" />\n\n <YAxis />\n\n <Tooltip />\n\n <Bar dataKey=\"completed\" fill=\"#0B2559\" radius={[6, 6, 0, 0]} />\n </BarChart>\n </ResponsiveContainer>\n </div>\n\n {/* Pie Chart */}\n <div className=\"chart-card\">\n <h3 className=\"chart-title\">{t(\"CASE_DISTRIBUTION\")}</h3>\n\n <ResponsiveContainer width=\"100%\" height={300}>\n <PieChart>\n <Pie data={statusData} dataKey=\"value\" nameKey=\"name\" outerRadius={90} label>\n {statusData.map((entry, index) => (\n <Cell key={index} fill={entry.color} />\n ))}\n </Pie>\n\n <Tooltip />\n\n <Legend />\n </PieChart>\n </ResponsiveContainer>\n </div>\n </div>\n\n {/* Details */}\n <div className=\"ekyc-dashboard-section\">\n <div className=\"details-grid\">\n <div className=\"detail-item\">\n <span className=\"label\">{t(\"MOBILE\")}:</span>\n <span className=\"value\">{surveyor?.owner?.mobileNumber || surveyor?.mobileNo || \"N/A\"}</span>\n </div>\n\n <div className=\"detail-item\">\n <span className=\"label\">{t(\"EMAIL\")}:</span>\n <span className=\"value\">{surveyor?.owner?.emailId || \"N/A\"}</span>\n </div>\n\n <div className=\"detail-item\">\n <span className=\"label\">{t(\"GENDER\")}:</span>\n <span className=\"value\">{surveyor?.owner?.gender || \"N/A\"}</span>\n </div>\n\n <div className=\"detail-item\">\n <span className=\"label\">{t(\"STATUS\")}:</span>\n <span className=\"value\">{surveyor?.status || \"N/A\"}</span>\n </div>\n\n <div className=\"detail-item\">\n <span className=\"label\">{t(\"SERVICE_TYPE\")}:</span>\n <span className=\"value\">{surveyor?.additionalDetails?.serviceType || \"N/A\"}</span>\n </div>\n\n <div className=\"detail-item\">\n <span className=\"label\">{t(\"VENDOR_ID\")}:</span>\n <span className=\"value\">{surveyor?.vendorId || \"N/A\"}</span>\n </div>\n </div>\n </div>\n <Card className=\"dashboard-card\">\n <Table\n t={t}\n tableTitle={t(\"ASSIGNED_KNOS\")}\n tableClass=\"ekycTable\"\n data={dashboardData?.dashboardInfo?.consumerList || []}\n columns={knoColumns}\n isLoading={isDashboardLoading}\n totalRecords={dashboardData?.dashboardInfo?.total}\n currentPage={currentPage}\n pageSizeLimit={pageSize}\n isPaginationRequired={true}\n onNextPage={() => {\n if (currentPage < (dashboardData?.dashboardInfo?.totalPages || 1) - 1) {\n setCurrentPage((prev) => prev + 1);\n }\n }}\n onPrevPage={() => {\n if (currentPage > 0) {\n setCurrentPage((prev) => prev - 1);\n }\n }}\n onFirstPage={() => {\n setCurrentPage(0);\n }}\n onLastPage={() => {\n setCurrentPage(Math.max((dashboardData?.dashboardInfo?.totalPages || 1) - 1, 0));\n }}\n onPageSizeChange={(e) => {\n setPageSize(Number(e.target.value));\n setCurrentPage(0);\n }}\n />\n </Card>\n {/* Actions */}\n {(!roles.includes(\"EKYC_SURVEYOR\") || roles.includes(\"EMPLOYEE\")) && (\n <ActionBar>\n <SubmitBar label={t(\"EKYC_ASSIGN_KNOS\")} onSubmit={() => setShowOptions((prev) => !prev)} />\n\n {showOptions && (\n <Menu\n options={options}\n optionKey={\"action\"}\n t={t}\n onSelect={handleMenuSelect}\n style={{\n color: \"#FFFFFF\",\n fontSize: \"18px\",\n }}\n />\n )}\n </ActionBar>\n )}\n\n {showModal && <AssignEkycModal surveyor={surveyor} closeModal={closeModal} />}\n </Card>\n );\n};\n\nexport default SurveyorDetailsDashboard;\n","import React from \"react\";\nimport { useHistory } from \"react-router-dom\";\nimport { useTranslation } from \"react-i18next\";\n\nconst SupervisorInboxTableConfig = ({\n onPageSizeChange,\n formState,\n totalCount,\n table,\n dispatch,\n checkPathName,\n onSortingByData,\n inboxStyles = {},\n tableStyle = {},\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n\n const userType = Digit.SessionStorage.get(\"User\")?.info?.type?.toLowerCase() || \"citizen\";\n\n const handleReview = (id) => {\n history.push(`/digit-ui/${userType}/ekyc/assign/surveyor-details/${id}`);\n };\n\n const limit = formState?.tableForm?.limit || 10;\n const offset = formState?.tableForm?.offset || 0;\n\n const tableColumnConfig = [\n {\n Header: t(\"SURVEYOR_ID\"),\n accessor: \"id\",\n Cell: ({ row }) => {\n const id = row.original?.id;\n return (\n <span\n className=\"ekyc-application-link\"\n style={{ color: \"#add8f7\", cursor: \"pointer\", fontWeight: \"bold\" }}\n onClick={() => handleReview(id)}\n >\n {id || \"NA\"}\n </span>\n );\n },\n },\n\n {\n Header: t(\"SURVEYOR_NAME\"),\n accessor: \"surveyorName\",\n Cell: ({ row }) => <span>{row.original?.surveyorName || row.original?.name || \"NA\"}</span>,\n },\n\n {\n Header: t(\"MOBILE_NUMBER\"),\n accessor: \"mobileNo\",\n Cell: ({ row }) => <span>{row.original?.mobileNo || row.original?.owner?.mobileNumber || \"NA\"}</span>,\n },\n\n {\n Header: t(\"STATUS\"),\n accessor: \"status\",\n Cell: ({ row }) => {\n const status = row.original?.status || \"DEFAULT\";\n return <span className={`ekyc-status-tag ${status}`}>{t(status)}</span>;\n },\n },\n\n {\n Header: t(\"SERVICE_TYPE\"),\n accessor: \"serviceType\",\n Cell: ({ row }) => <span>{row.original?.serviceType || \"NA\"}</span>,\n },\n ];\n\n return {\n getCellProps: () => ({\n style: {\n padding: \"8px\",\n fontSize: \"12px\",\n },\n }),\n\n disableSort: false,\n autoSort: false,\n manualPagination: true,\n\n currentPage: Math.floor(offset / limit),\n\n onPageSizeChange,\n\n onNextPage: () =>\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n offset: Number(offset) + Number(limit),\n },\n checkPathName,\n }),\n\n onPrevPage: () =>\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n offset: Number(offset) - Number(limit),\n },\n checkPathName,\n }),\n\n onLastPage: () =>\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n offset: Math.ceil(totalCount / limit) * limit - Number(limit),\n },\n checkPathName,\n }),\n\n onFirstPage: () =>\n dispatch({\n action: \"mutateTableForm\",\n data: { ...formState.tableForm, offset: 0 },\n checkPathName,\n }),\n\n totalRecords: totalCount,\n onSort: onSortingByData,\n\n data: table,\n columns: tableColumnConfig,\n\n inboxStyles: { ...inboxStyles },\n tableStyle: { ...tableStyle },\n };\n};\n\nexport default SupervisorInboxTableConfig;\n","import React, { useMemo, useCallback, useReducer, useState } from \"react\";\nimport { useLocation } from \"react-router-dom\";\nimport { InboxComposer } from \"@djb25/digit-ui-react-components\";\nimport SupervisorInboxTableConfig from \"../hook/SupervisorInboxTableConfig\";\nimport SearchFormFieldsComponents from \"./SearchFormFieldsComponent\";\n\n// Mock data removed in favor of API integration\n\nconst AssignEkyc = () => {\n let tenantId = Digit.ULBService.getCurrentTenantId();\n if (!tenantId || tenantId === \"dl\") {\n tenantId = \"dl.djb\"; // Force tenantId to dl.djb for EKYC APIs in citizen portal\n }\n const location = useLocation();\n const formInitValue = {\n filterForm: {},\n searchForm: {},\n tableForm: {\n limit: 10,\n offset: 0,\n sortBy: \"createdTime\",\n sortOrder: \"DESC\",\n },\n };\n\n const [formState, dispatch] = useReducer(formReducer, formInitValue);\n const userDetails = Digit.SessionStorage.get(\"User\");\n\n let paginationParms = {\n limit: formState?.tableForm?.limit || 10,\n offset: formState?.tableForm?.offset || 0,\n sortBy: formState?.tableForm?.sortBy || \"createdTime\",\n sortOrder: formState?.tableForm?.sortOrder || \"DESC\",\n };\n\n const mobileNumber = formState?.searchForm?.mobileNumber || \"\";\n const isSearchActive = !!mobileNumber;\n\n const filters = {\n ...paginationParms,\n status: \"ACTIVE,DISABLED\",\n };\n\n if (isSearchActive) {\n filters.mobileNumber = mobileNumber;\n }\n\n const { data: dashboardData, isLoading } = Digit.Hooks.fsm.useSurveyorSearch(\n tenantId,\n filters,\n { enabled: !!tenantId, keepPreviousData: true }\n );\n\n const { isLoading: isDataSearchLoading, data } = Digit.Hooks.ekyc.useEkycAssignmentProgress({\n enabled: !!tenantId,\n keepPreviousData: true,\n });\n\n const sourceData = useMemo(() => {\n return dashboardData?.surveyors || [];\n }, [dashboardData]);\n\n const filteredData = useMemo(() => {\n return (sourceData || []).map((item) => {\n const owner = item?.owner || {};\n\n const roleCodes = owner?.roles?.map((role) => role.code)?.join(\", \") || \"\";\n\n return {\n ...item,\n\n id: item?.id || \"\",\n\n surveyorName: item?.name || owner?.name || \"\",\n\n mobileNo: item?.mobileNo || owner?.mobileNumber || \"\",\n\n email: owner?.emailId || \"\",\n\n vendorId: item?.vendorId || \"\",\n\n tenantId: item?.tenantId || \"\",\n\n supervisorId: item?.supervisorId || \"\",\n\n status: item?.status || \"\",\n\n roleCodes,\n\n userName: owner?.userName || \"\",\n\n gender: owner?.gender || \"\",\n\n serviceType: item?.additionalDetails?.serviceType || \"\",\n\n createdTime: item?.auditDetails?.createdTime || 0,\n\n lastModifiedTime: item?.auditDetails?.lastModifiedTime || 0,\n };\n });\n }, [sourceData]);\n\n const totalRecords = dashboardData?.dashboardInfo?.totalRecords || dashboardData?.totalCount || 0;\n\n const checkPathName = location.pathname.includes(\"ekyc/inbox\");\n const PropsForInboxLinks = {\n headerText: checkPathName ? \"EKYC_MODULE\" : \"MODULE_SW\",\n };\n\n const SearchFormFields = useCallback(\n ({ registerRef, searchFormState, controlSearchForm }) => (\n <SearchFormFieldsComponents {...{ registerRef, searchFormState, controlSearchForm }} className=\"search\" />\n ),\n []\n );\n\n const tableOrderFormDefaultValues = {\n sortBy: \"createdTime\",\n limit: window.Digit.Utils.browser.isMobile() ? 50 : 10,\n offset: 0,\n sortOrder: \"DESC\",\n };\n\n const onSearchFormSubmit = (data) => {\n data.hasOwnProperty(\"\") && delete data?.[\"\"];\n dispatch({ action: \"mutateTableForm\", data: { ...tableOrderFormDefaultValues }, checkPathName });\n dispatch({ action: \"mutateSearchForm\", data, checkPathName });\n };\n\n const searchFormDefaultValues = {\n mobileNumber: \"\",\n applicationNumber: \"\",\n consumerNo: \"\",\n };\n\n const onSearchFormReset = (setSearchFormValue) => {\n setSearchFormValue(\"mobileNumber\", null);\n setSearchFormValue(\"applicationNumber\", null);\n setSearchFormValue(\"consumerNo\", null);\n dispatch({ action: \"mutateSearchForm\", data: searchFormDefaultValues });\n };\n\n const propsForSearchForm = {\n SearchFormFields,\n onSearchFormSubmit,\n searchFormDefaultValues: formState?.searchForm,\n resetSearchFormDefaultValues: searchFormDefaultValues,\n onSearchFormReset,\n className: \"search-form-wns-inbox\",\n };\n\n const FilterFormFields = useCallback(\n ({ registerRef, controlFilterForm, setFilterFormValue, getFilterFormValue }) => <React.Fragment></React.Fragment>,\n []\n );\n\n const propsForFilterForm = {\n FilterFormFields,\n onFilterFormSubmit: () => {},\n filterFormDefaultValues: \"\",\n resetFilterFormDefaultValues: \"\",\n onFilterFormReset: () => {},\n };\n\n function formReducer(state, payload) {\n const storageKey = payload.checkPathName ? \"EKYC.INBOX\" : \"EKYC.SW.INBOX\";\n\n // ✅ safety for SLA\n switch (payload.action) {\n case \"mutateSearchForm\":\n Digit.SessionStorage.set(storageKey, { ...state, searchForm: payload.data });\n return { ...state, searchForm: payload.data };\n\n case \"mutateFilterForm\":\n Digit.SessionStorage.set(storageKey, { ...state, filterForm: payload.data });\n return { ...state, filterForm: payload.data };\n\n case \"mutateTableForm\":\n Digit.SessionStorage.set(storageKey, { ...state, tableForm: payload.data });\n return { ...state, tableForm: payload.data };\n\n default:\n return state; // ✅ IMPORTANT\n }\n }\n\n const onPageSizeChange = (e) => {\n const newLimit = Number(e.target.value);\n\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n limit: newLimit,\n offset: 0, // reset page\n },\n checkPathName,\n });\n };\n\n const onSortingByData = (e) => {\n if (e.length > 0) {\n const [{ id, desc }] = e;\n const sortOrder = desc ? \"DESC\" : \"ASC\";\n const sortBy = id;\n\n if (!(formState.tableForm.sortBy === sortBy && formState.tableForm.sortOrder === sortOrder)) {\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n sortBy: id,\n sortOrder: desc ? \"DESC\" : \"ASC\",\n },\n checkPathName,\n });\n }\n }\n };\n\n const propsForInboxTable = SupervisorInboxTableConfig({\n ...{\n onPageSizeChange,\n formState,\n totalCount: totalRecords,\n table: filteredData,\n dispatch,\n onSortingByData,\n tenantId,\n checkPathName,\n inboxStyles: { overflowX: \"scroll\", overflowY: \"hidden\" },\n tableStyle: { width: \"70%\" },\n },\n });\n\n const isInboxLoading = isLoading;\n\n const cards = [\n {\n label: \"TOTAL_EKYC_APPLICATIONS\",\n count: data?.totalKnos || 0,\n color: \"#0B2559\",\n filter: null,\n active: true,\n },\n {\n label: \"TOTAL_ASSIGNMENTS\",\n count: data?.totalAssignments || 0,\n color: \"#3B82F6\",\n filter: [\"ASSIGNED\"],\n },\n {\n label: \"EKYC_COMPLETED\",\n count: data?.completedKnos || 0,\n color: \"#10B981\",\n filter: [\"COMPLETED\"],\n },\n {\n label: \"PENDING_APPLICATIONS\",\n count: (data?.totalKnos || 0) - (data?.completedKnos || 0),\n color: \"#F59E0B\",\n filter: [\"PENDING\"],\n },\n {\n label: \"OVERALL_PROGRESS\",\n count: `${data?.overallProgressPercent || 0}%`,\n color: \"#A855F7\",\n filter: [\"IN_PROGRESS\"],\n },\n ];\n\n return (\n <div className=\"app-container\">\n <InboxComposer\n {...{\n isInboxLoading,\n PropsForInboxLinks,\n ...propsForSearchForm,\n ...propsForFilterForm,\n // ...propsForMobileSortForm,\n propsForInboxTable,\n // propsForInboxMobileCards,\n formState,\n countData: dashboardData?.dashboardInfo,\n cards,\n isCardLoading: isDataSearchLoading,\n }}\n />\n </div>\n );\n};\n\nexport default AssignEkyc;\n","import { AppContainer, PrivateRoute, ModuleHeader, ArrowLeft, HomeIcon, LayoutWrapper } from \"@djb25/digit-ui-react-components\";\nimport React from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Switch, useLocation } from \"react-router-dom\";\nimport Dashboard from \"../../components/Dashboard\";\nimport CeoDashboard from \"../../components/CeoDashboard.jsx\";\nimport VendorDetails from \"../../components/VendorDetails.jsx\";\nimport Inbox from \"./Inbox\";\nimport Mapping from \"./Mapping\";\nimport Create from \"./Create\";\nimport Review from \"../../components/Review\";\nimport EKYCForm from \"./EKYCForm\";\nimport SurveyorDetailsCard from \"../../components/SurveyorDetailsCard.js\";\nimport AssignEkyc from \"../../components/AssignEkyc.js\";\n\nconst EmployeeApp = ({ path }) => {\n const { t } = useTranslation();\n const location = useLocation();\n\n sessionStorage.removeItem(\"revalidateddone\");\n\n const getBreadcrumbLabel = () => {\n const pathname = location.pathname;\n if (pathname.includes(\"/dashboard\")) return \"ES_COMMON_INBOX\";\n if (pathname.includes(\"/create-kyc\")) return \"EKYC_CREATE_KYC\";\n if (pathname.includes(\"/k-details\")) return \"EKYC_K_DETAILS\";\n if (pathname.includes(\"/consumer-details\")) return \"EKYC_CONSUMER_DETAILS\";\n if (pathname.includes(\"/address-details\")) return \"EKYC_ADDRESS_DETAILS\";\n if (pathname.includes(\"/property-info\")) return \"EKYC_PROPERTY_INFO\";\n if (pathname.includes(\"/meter-details\")) return \"EKYC_METER_DETAILS\";\n if (pathname.includes(\"/review\")) return \"EKYC_REVIEW\";\n return \"ES_COMMON_INBOX\";\n };\n\n const breadcrumbs = [{ icon: HomeIcon, path: \"/digit-ui/employee\" }, { label: t(getBreadcrumbLabel()) }];\n\n const formStepRoutes = [\"consumer-details\", \"address-details\", \"property-info\", \"meter-details\"];\n\n return (\n <AppContainer>\n <div className=\"ground-container employee-app-container form-container\">\n <ModuleHeader\n leftContent={\n <React.Fragment>\n <ArrowLeft className=\"icon\" />\n Back\n </React.Fragment>\n }\n onLeftClick={() => window.history.back()}\n breadcrumbs={breadcrumbs}\n />\n\n <div className=\"employee-form\">\n <Switch>\n <PrivateRoute\n path={`${path}/dashboard`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <Dashboard parentRoute={path} businessService=\"EKYC\" moduleCode=\"EKYC\" isInbox={true} />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/inbox`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <Inbox parentRoute={path} businessService=\"EKYC\" moduleCode=\"EKYC\" isInbox={true} />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/create-kyc`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <Create />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/mapping`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <Mapping />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/assign`}\n exact\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <AssignEkyc />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/assign/surveyor-details/:id`}\n exact\n component={() => (\n <LayoutWrapper layoutClass=\"action\">\n <SurveyorDetailsCard />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={formStepRoutes.map((route) => `${path}/${route}`)}\n component={(props) => (\n <LayoutWrapper layoutClass=\"normal\">\n <EKYCForm {...props} path={path} />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/review/:kno`}\n component={() => (\n <LayoutWrapper layoutClass=\"action\">\n <Review />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/ceo-dashboard`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <CeoDashboard />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/vendors/:vendorId`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <VendorDetails />\n </LayoutWrapper>\n )}\n />\n\n {/* <PrivateRoute\n path={`${path}/`}\n component={() => <Inbox parentRoute={path} businessService=\"EKYC\" moduleCode=\"EKYC\" isInbox={true} />}\n /> */}\n </Switch>\n </div>\n </div>\n </AppContainer>\n );\n};\n\nexport default EmployeeApp;\n","import React, { useState, Fragment, useEffect } from \"react\";\nimport { useLocation } from \"react-router-dom\";\nimport {\n CardLabel,\n TextInput,\n Dropdown,\n UploadFile,\n Toast,\n FormStep,\n Loader\n} from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\n\nconst PropertyInfo = ({ config, onSelect, formData }) => {\n const { t } = useTranslation();\n const location = useLocation();\n const flowState = location.state || {};\n const tenantId = Digit.ULBService.getCurrentTenantId();\n\n const searchKno = flowState?.kNumber || flowState?.kno || formData?.kNumber || formData?.kno || sessionStorage.getItem(\"EKYC_K_NUMBER\");\n\n const { isLoading, data: searchData } = Digit.Hooks.ekyc.useSearchConnection(\n { tenantId, details: { kno: searchKno } },\n { enabled: !!searchKno, cacheTime: 0 }\n );\n\n const updateMutation = Digit.Hooks.ekyc.useEkycUpdate(tenantId);\n\n const savedData = formData?.propertyDetails || {};\n\n // 🔹 STATES\n const [pidNumber, setPidNumber] = useState(savedData.pidNumber || \"\");\n const [propertyType, setPropertyType] = useState(savedData.propertyType ? { name: savedData.propertyType } : null);\n const [subPropertyCategory, setSubPropertyCategory] = useState(savedData.subPropertyCategory ? { name: savedData.subPropertyCategory } : null);\n\n const [noOfFloors, setNoOfFloors] = useState(savedData.noOfFloors || \"\");\n const [floorNo, setFloorNo] = useState(savedData.floorNo || \"\");\n\n const [noOfRooms, setNoOfRooms] = useState(savedData.noOfRooms || \"\");\n const [noOfBeds, setNoOfBeds] = useState(savedData.noOfBeds || \"\");\n const [dwellingUnits, setDwellingUnits] = useState(savedData.dwellingUnits || \"\");\n\n const [buildingImage, setBuildingImage] = useState(null);\n const [buildingImageId, setBuildingImageId] = useState(savedData.buildingImageId || null);\n\n const [toast, setToast] = useState(null);\n\n // 🔹 PROPERTY TYPE OPTIONS\n const propertyTypeOptions = [\n { name: \"Residential\" },\n { name: \"Commercial\" },\n { name: \"Hotel\" },\n { name: \"Hospital\" },\n { name: \"Nursing Home\" },\n ];\n\n useEffect(() => {\n const rawData = searchData || formData?.connectionDetails;\n const propertyInfo = rawData?.propertyInfo || rawData?.propertyDetails || {};\n\n if (propertyInfo && Object.keys(propertyInfo).length > 0 && !savedData.pidNumber) {\n if (propertyInfo.pidNumber) setPidNumber(propertyInfo.pidNumber);\n if (propertyInfo.numberOfFloors || propertyInfo.noOfFloor) setNoOfFloors(String(propertyInfo.numberOfFloors || propertyInfo.noOfFloor));\n if (propertyInfo.buildingImageFileStoreId) setBuildingImageId(propertyInfo.buildingImageFileStoreId);\n\n if (propertyInfo.subPropertyCategory) {\n const matchingType = propertyTypeOptions.find(type => type.name.toLowerCase() === propertyInfo.subPropertyCategory.toLowerCase());\n if (matchingType) setPropertyType(matchingType);\n else setPropertyType({ name: propertyInfo.subPropertyCategory });\n setSubPropertyCategory({ name: propertyInfo.subPropertyCategory });\n }\n\n if (propertyInfo.propertyType) {\n setSubPropertyCategory({ name: propertyInfo.propertyType }); // Just in case, depending on how UI renders it\n if (!propertyInfo.subPropertyCategory) setPropertyType({ name: propertyInfo.propertyType });\n }\n\n if (propertyInfo.floorNo) setFloorNo(propertyInfo.floorNo);\n if (propertyInfo.numberOfRooms !== null && propertyInfo.numberOfRooms !== undefined) setNoOfRooms(String(propertyInfo.numberOfRooms));\n if (propertyInfo.numberOfBeds !== null && propertyInfo.numberOfBeds !== undefined) setNoOfBeds(String(propertyInfo.numberOfBeds));\n if (propertyInfo.numberOfDwellingUnits !== null && propertyInfo.numberOfDwellingUnits !== undefined) setDwellingUnits(String(propertyInfo.numberOfDwellingUnits));\n }\n }, [searchData, formData?.connectionDetails]);\n\n // 🔹 FILE UPLOAD\n const handleUpload = async (e) => {\n const file = e.target.files[0];\n if (!file) return;\n\n if (file.size > 2000000) {\n setToast({ type: \"error\", message: \"Max size 2MB exceeded\" });\n return;\n }\n\n try {\n const res = await Digit.UploadServices.Filestorage(\n \"EKYC\",\n file,\n tenantId\n );\n\n const fileStoreId = res?.data?.files?.[0]?.fileStoreId;\n\n if (fileStoreId) {\n setBuildingImageId(fileStoreId);\n\n const reader = new FileReader();\n reader.onloadend = () => setBuildingImage(reader.result);\n reader.readAsDataURL(file);\n\n setToast({ type: \"success\", message: \"Upload successful\" });\n }\n } catch {\n setToast({ type: \"error\", message: \"Upload failed\" });\n }\n };\n\n // 🔹 VALIDATION\n const isValid = () => {\n if (!propertyType) return false;\n if (!subPropertyCategory) return false;\n if (!noOfFloors || Number(noOfFloors) < 1) return false;\n if (!buildingImageId) return false;\n\n if (propertyType?.name === \"Hotel\" && !noOfRooms) return false;\n if (\n (propertyType?.name === \"Hospital\" ||\n propertyType?.name === \"Nursing Home\") &&\n !noOfBeds\n )\n return false;\n\n return true;\n };\n\n // 🔹 SUBMIT\n const onStepSelect = async () => {\n /* Optional validation enforce\n if (!isValid()) {\n setToast({ type: \"error\", message: \"Fill all required fields\" });\n return;\n }\n */\n\n const data = {\n pidNumber,\n propertyType: propertyType?.name,\n subPropertyCategory: subPropertyCategory?.name,\n noOfFloors,\n floorNo,\n noOfRooms,\n noOfBeds,\n dwellingUnits,\n buildingImageId,\n };\n\n try {\n await updateMutation.mutateAsync({\n RequestInfo: {},\n updateType: \"PROPERTY\",\n kno: searchKno,\n ...data,\n });\n setToast({ type: \"success\", message: \"Property details updated successfully!\" });\n onSelect(config.key, data);\n } catch (error) {\n setToast({ type: \"error\", message: \"Failed to update property details\" });\n }\n };\n\n if (isLoading) {\n return <Loader />;\n }\n\n return (\n <Fragment>\n <FormStep\n t={t}\n onSelect={onStepSelect}\n config={config}\n label={t(\"ES_COMMON_CONTINUE\")}\n isDisabled={!isValid()}\n >\n <div>\n <CardLabel>PID Number</CardLabel>\n <TextInput value={pidNumber} onChange={(e) => setPidNumber(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>Property Type</CardLabel>\n <Dropdown\n option={propertyTypeOptions}\n selected={propertyType}\n select={setPropertyType}\n />\n </div>\n\n <div>\n <CardLabel>Sub Property Category</CardLabel>\n <Dropdown option={[]} selected={subPropertyCategory} select={setSubPropertyCategory} />\n </div>\n\n <div>\n <CardLabel>No. of Floors *</CardLabel>\n <TextInput\n type=\"number\"\n value={noOfFloors}\n onChange={(e) => setNoOfFloors(e.target.value)}\n />\n </div>\n\n <div>\n <CardLabel>Floor No. of this KNO</CardLabel>\n <TextInput value={floorNo} onChange={(e) => setFloorNo(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>No of Beds</CardLabel>\n <TextInput\n type=\"number\"\n value={noOfBeds}\n onChange={(e) => setNoOfBeds(e.target.value)}\n />\n </div>\n\n <div>\n <CardLabel>No. of Rooms</CardLabel>\n <TextInput\n type=\"number\"\n value={noOfRooms}\n onChange={(e) => setNoOfRooms(e.target.value)}\n />\n </div>\n\n {/* HOTEL CONDITION */}\n {propertyType?.name === \"Hotel\" && (\n <div>\n <CardLabel>No. of Rooms *</CardLabel>\n <TextInput\n type=\"number\"\n value={noOfRooms}\n onChange={(e) => setNoOfRooms(e.target.value)}\n />\n </div>\n )}\n\n {/* HOSPITAL CONDITION */}\n {(propertyType?.name === \"Hospital\" ||\n propertyType?.name === \"Nursing Home\") && (\n <div>\n <CardLabel>No. of Beds *</CardLabel>\n <TextInput\n type=\"number\"\n value={noOfBeds}\n onChange={(e) => setNoOfBeds(e.target.value)}\n />\n </div>\n )}\n\n <div>\n <CardLabel>Number of Dwelling Units</CardLabel>\n <TextInput\n type=\"number\"\n value={dwellingUnits}\n onChange={(e) => setDwellingUnits(e.target.value)}\n />\n </div>\n\n <div>\n <CardLabel>Building Image *</CardLabel>\n <UploadFile\n onUpload={handleUpload}\n onDelete={() => {\n setBuildingImage(null);\n setBuildingImageId(null);\n }}\n message={buildingImageId ? \"Uploaded\" : \"No file selected\"}\n />\n </div>\n\n {buildingImage && (\n <div style={{ gridColumn: \"span 2\" }}>\n <img\n src={buildingImage}\n alt=\"preview\"\n style={{ width: \"100%\", marginTop: \"10px\" }}\n />\n </div>\n )}\n\n {toast && (\n <Toast\n label={toast.message}\n error={toast.type === \"error\"}\n onClose={() => setToast(null)}\n />\n )}\n </FormStep>\n </Fragment>\n );\n};\n\nexport default PropertyInfo;","import React, { useState, Fragment, useEffect } from \"react\";\nimport { useLocation } from \"react-router-dom\";\nimport {\n CardLabel,\n TextInput,\n Dropdown,\n UploadFile,\n Toast,\n FormStep,\n Loader\n} from \"@djb25/digit-ui-react-components\";\n\nconst MeterDetails = ({ config, onSelect, formData }) => {\n const location = useLocation();\n const flowState = location.state || {};\n const tenantId = Digit.ULBService.getCurrentTenantId();\n\n const searchKno = flowState?.kNumber || flowState?.kno || formData?.kNumber || formData?.kno || sessionStorage.getItem(\"EKYC_K_NUMBER\");\n\n const { isLoading, data: searchData } = Digit.Hooks.ekyc.useSearchConnection(\n { tenantId, details: { kno: searchKno } },\n { enabled: !!searchKno, cacheTime: 0 }\n );\n\n const updateMutation = Digit.Hooks.ekyc.useEkycUpdate(tenantId);\n\n const savedData = formData?.meterDetails || {};\n\n // 🔹 STATES\n const [connectionCategory, setConnectionCategory] = useState(savedData.connectionCategory || \"\");\n const [saType, setSaType] = useState(savedData.saType || \"\");\n const [status, setStatus] = useState(savedData.status || \"\");\n\n const [mrCode, setMrCode] = useState(savedData.mrCode || \"\");\n const [areaCode, setAreaCode] = useState(savedData.areaCode || \"\");\n const [mrKey, setMrKey] = useState(savedData.mrKey || \"\");\n\n const [meterNumber, setMeterNumber] = useState(savedData.meterNumber || \"\");\n const [meterMaker, setMeterMaker] = useState(savedData.meterMaker || \"\");\n\n const [meterStatus, setMeterStatus] = useState(savedData.meterStatus ? { name: savedData.meterStatus } : null);\n const [meterCondition, setMeterCondition] = useState(savedData.meterCondition ? { name: savedData.meterCondition } : null);\n const [meterLocation, setMeterLocation] = useState(savedData.meterLocation ? { name: savedData.meterLocation } : null);\n\n const [lastBillReceived, setLastBillReceived] = useState(savedData.lastBillReceived ? { name: savedData.lastBillReceived } : null);\n const [billMonthYear, setBillMonthYear] = useState(savedData.billMonthYear ? { name: savedData.billMonthYear } : null);\n const [reason, setReason] = useState(savedData.reason || \"\");\n\n const [accessToMeter, setAccessToMeter] = useState(savedData.accessToMeter ? { name: savedData.accessToMeter } : null);\n const [sewerConnection, setSewerConnection] = useState(savedData.sewerConnection ? { name: savedData.sewerConnection } : null);\n const [septicTank, setSepticTank] = useState(savedData.septicTank ? { name: savedData.septicTank } : null);\n\n const [meterPhoto, setMeterPhoto] = useState(null);\n const [meterPhotoId, setMeterPhotoId] = useState(savedData.meterPhotoId || null);\n\n const [toast, setToast] = useState(null);\n\n // 🔹 OPTIONS\n const yesNo = [{ name: \"Yes\" }, { name: \"No\" }];\n\n const meterStatusOptions = [\n { name: \"Metered\" },\n { name: \"Unmetered\" },\n { name: \"Can not be identified\" },\n ];\n\n const meterConditionOptions = [\n { name: \"Damaged\" },\n { name: \"Not-Damaged\" },\n ];\n\n const meterLocationOptions = [\n { name: \"Inside\" },\n { name: \"Outside\" },\n ];\n\n // 🔹 MONTH-YEAR OPTIONS (1998–2026)\n const monthYearOptions = [];\n for (let y = 1998; y <= 2026; y++) {\n for (let m = 1; m <= 12; m++) {\n monthYearOptions.push({ name: `${m}/${y}` });\n }\n }\n\n useEffect(() => {\n const rawData = searchData || formData?.connectionDetails;\n const apiMeter = rawData?.meterDetails || rawData || {};\n\n if (apiMeter && Object.keys(apiMeter).length > 0 && !savedData.connectionCategory) {\n if (apiMeter.connectionCategory) setConnectionCategory(apiMeter.connectionCategory);\n if (apiMeter.saType) setSaType(apiMeter.saType);\n if (apiMeter.statusFlag) setStatus(apiMeter.statusFlag);\n\n if (apiMeter.mrcode) setMrCode(String(apiMeter.mrcode));\n if (apiMeter.areacode) setAreaCode(String(apiMeter.areacode));\n if (apiMeter.mrkey) setMrKey(String(apiMeter.mrkey));\n\n if (apiMeter.meterNumber) setMeterNumber(apiMeter.meterNumber);\n if (apiMeter.meterMake) setMeterMaker(apiMeter.meterMake);\n\n if (apiMeter.meterStatus) {\n const matchingStatus = meterStatusOptions.find(o => o.name.toLowerCase() === apiMeter.meterStatus.toLowerCase());\n if (matchingStatus) setMeterStatus(matchingStatus);\n else setMeterStatus({ name: apiMeter.meterStatus });\n } else if (apiMeter.metered !== undefined) {\n setMeterStatus({ name: apiMeter.metered ? \"Metered\" : \"Unmetered\" });\n }\n\n if (apiMeter.meterCondition) {\n const matchingCond = meterConditionOptions.find(o => o.name.toLowerCase() === apiMeter.meterCondition.toLowerCase());\n if (matchingCond) setMeterCondition(matchingCond);\n else setMeterCondition({ name: apiMeter.meterCondition });\n }\n\n if (apiMeter.meterLocation) {\n const matchingLoc = meterLocationOptions.find(o => o.name.toLowerCase() === apiMeter.meterLocation.toLowerCase() || apiMeter.meterLocation.toLowerCase().includes(o.name.toLowerCase()));\n if (matchingLoc) setMeterLocation(matchingLoc);\n else setMeterLocation({ name: apiMeter.meterLocation });\n }\n\n if (apiMeter.lastBillRaised !== undefined && apiMeter.lastBillRaised !== null) {\n const strVal = String(apiMeter.lastBillRaised).toLowerCase();\n if (strVal === \"true\" || strVal === \"yes\") setLastBillReceived({ name: \"Yes\" });\n else setLastBillReceived({ name: \"No\" });\n }\n\n if (apiMeter.lastBillReceivedDate) {\n const formatted = apiMeter.lastBillReceivedDate.replace(\"-\", \"/\");\n const parsedParts = formatted.split(\"/\");\n if (parsedParts.length === 2) {\n const mon = parseInt(parsedParts[0], 10);\n const yr = parseInt(parsedParts[1], 10);\n setBillMonthYear({ name: `${mon}/${yr}` });\n } else {\n setBillMonthYear({ name: apiMeter.lastBillReceivedDate });\n }\n }\n\n if (apiMeter.lastBillNotRaisedReason) setReason(apiMeter.lastBillNotRaisedReason);\n\n if (apiMeter.accessToMeter !== undefined && apiMeter.accessToMeter !== null) {\n const strVal = String(apiMeter.accessToMeter).toLowerCase();\n if (strVal === \"true\" || strVal === \"yes\") setAccessToMeter({ name: \"Yes\" });\n else setAccessToMeter({ name: \"No\" });\n }\n\n if (apiMeter.sewerConnection !== undefined && apiMeter.sewerConnection !== null) {\n const strVal = String(apiMeter.sewerConnection).toLowerCase();\n if (strVal === \"true\" || strVal === \"yes\") setSewerConnection({ name: \"Yes\" });\n else setSewerConnection({ name: \"No\" });\n }\n\n if (apiMeter.septicTank !== undefined && apiMeter.septicTank !== null) {\n const strVal = String(apiMeter.septicTank).toLowerCase();\n if (strVal === \"true\" || strVal === \"yes\") setSepticTank({ name: \"Yes\" });\n else setSepticTank({ name: \"No\" });\n }\n\n if (apiMeter.meterPhotoFileStoreId) setMeterPhotoId(apiMeter.meterPhotoFileStoreId);\n }\n }, [searchData, formData?.connectionDetails]);\n\n // 🔹 FREEZE LOGIC\n const isFrozen = meterStatus?.name === \"Can not be identified\";\n\n // 🔹 FILE UPLOAD\n const uploadPhoto = async (e) => {\n const file = e.target.files[0];\n if (!file) return;\n\n try {\n const res = await Digit.UploadServices.Filestorage(\"EKYC\", file, tenantId);\n const id = res?.data?.files?.[0]?.fileStoreId;\n\n if (id) {\n setMeterPhotoId(id);\n\n const reader = new FileReader();\n reader.onloadend = () => setMeterPhoto(reader.result);\n reader.readAsDataURL(file);\n }\n } catch {\n setToast({ type: \"error\", message: \"Upload failed\" });\n }\n };\n\n // 🔹 VALIDATION\n const isValid = () => {\n if (!connectionCategory) return false;\n if (!meterStatus) return false;\n if (!meterLocation) return false;\n if (!lastBillReceived) return false;\n if (!sewerConnection) return false;\n\n if (meterStatus?.name === \"Metered\" && !meterPhotoId) return false;\n\n if (lastBillReceived?.name === \"No\" && !reason) return false;\n if (lastBillReceived?.name === \"Yes\" && !billMonthYear) return false;\n\n if (sewerConnection?.name === \"No\" && !septicTank) return false;\n\n return true;\n };\n\n // 🔹 SUBMIT\n const onStepSelect = async () => {\n /*\n if (!isValid()) {\n setToast({ type: \"error\", message: \"Fill all mandatory fields\" });\n return;\n }\n */\n\n const data = {\n connectionCategory,\n saType,\n status,\n mrCode,\n areaCode,\n mrKey,\n meterNumber,\n meterMaker,\n meterStatus: meterStatus?.name,\n meterCondition: meterCondition?.name,\n meterLocation: meterLocation?.name,\n lastBillReceived: lastBillReceived?.name,\n billMonthYear: billMonthYear?.name,\n reason,\n accessToMeter: accessToMeter?.name,\n sewerConnection: sewerConnection?.name,\n septicTank: septicTank?.name,\n meterPhotoId,\n };\n\n try {\n await updateMutation.mutateAsync({\n RequestInfo: {},\n updateType: \"METER\",\n kno: searchKno,\n ...data,\n });\n setToast({ type: \"success\", message: \"Meter details updated successfully!\" });\n onSelect(config.key, data);\n } catch (error) {\n setToast({ type: \"error\", message: \"Failed to update meter details\" });\n }\n };\n\n if (isLoading) {\n return <Loader />;\n }\n\n return (\n <Fragment>\n <FormStep onSelect={onStepSelect} config={config} isDisabled={!isValid()}>\n <div>\n <CardLabel>Connection Category *</CardLabel>\n <TextInput value={connectionCategory} onChange={(e) => setConnectionCategory(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>SA Type</CardLabel>\n <TextInput value={saType} onChange={(e) => setSaType(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>Status</CardLabel>\n <TextInput value={status} onChange={(e) => setStatus(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>MR Code</CardLabel>\n <TextInput value={mrCode} onChange={(e) => setMrCode(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>Area Code</CardLabel>\n <TextInput value={areaCode} onChange={(e) => setAreaCode(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>MR Key</CardLabel>\n <TextInput value={mrKey} onChange={(e) => setMrKey(e.target.value)} />\n </div>\n\n {!isFrozen && (\n <Fragment>\n <div>\n <CardLabel>Meter Number</CardLabel>\n <TextInput value={meterNumber} onChange={(e) => setMeterNumber(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>Meter Maker</CardLabel>\n <TextInput value={meterMaker} onChange={(e) => setMeterMaker(e.target.value)} />\n </div>\n\n <div>\n <CardLabel>Meter Condition</CardLabel>\n <Dropdown option={meterConditionOptions} selected={meterCondition} select={setMeterCondition} />\n </div>\n\n {meterStatus?.name === \"Metered\" && (\n <Fragment>\n <div>\n <CardLabel>Meter Photo *</CardLabel>\n <UploadFile onUpload={uploadPhoto} message={meterPhotoId ? \"Uploaded\" : \"No file\"} />\n </div>\n {meterPhoto && (\n <div style={{ gridColumn: \"span 2\" }}>\n <img src={meterPhoto} style={{ width: \"100%\" }} />\n </div>\n )}\n </Fragment>\n )}\n </Fragment>\n )}\n\n <div>\n <CardLabel>Meter Status *</CardLabel>\n <Dropdown option={meterStatusOptions} selected={meterStatus} select={setMeterStatus} />\n </div>\n\n <div>\n <CardLabel>Meter Location *</CardLabel>\n <Dropdown option={meterLocationOptions} selected={meterLocation} select={setMeterLocation} />\n </div>\n\n <div>\n <CardLabel>Last Bill Received *</CardLabel>\n <Dropdown option={yesNo} selected={lastBillReceived} select={setLastBillReceived} />\n </div>\n\n {lastBillReceived?.name === \"Yes\" && (\n <div>\n <CardLabel>When was the last bill received *</CardLabel>\n <Dropdown option={monthYearOptions} selected={billMonthYear} select={setBillMonthYear} />\n </div>\n )}\n\n {lastBillReceived?.name === \"No\" && (\n <div>\n <CardLabel>Reason *</CardLabel>\n <TextInput value={reason} onChange={(e) => setReason(e.target.value)} />\n </div>\n )}\n\n <div>\n <CardLabel>Access to Meter</CardLabel>\n <Dropdown option={yesNo} selected={accessToMeter} select={setAccessToMeter} />\n </div>\n\n <div>\n <CardLabel>Sewer Connection *</CardLabel>\n <Dropdown option={yesNo} selected={sewerConnection} select={setSewerConnection} />\n </div>\n\n {sewerConnection?.name === \"No\" && (\n <div>\n <CardLabel>Septic Tank *</CardLabel>\n <Dropdown option={yesNo} selected={septicTank} select={setSepticTank} />\n </div>\n )}\n\n {toast && <Toast label={toast.message} error={toast.type === \"error\"} onClose={() => setToast(null)} />}\n\n </FormStep>\n </Fragment>\n );\n};\n\nexport default MeterDetails;","import React from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { ModuleLinksView } from \"@djb25/digit-ui-react-components\";\nconst Home = () => {\n const { t } = useTranslation();\n const propsForModuleCard = {\n moduleName: t(\"ACTION_TEST_EKYC\"),\n kpis: [\n {\n count: \"-\",\n label: t(\"TOTAL_EKYC\"),\n link: `/digit-ui/citizen/ekyc/dashboard`,\n },\n ],\n links: [],\n };\n const citizenInfo = Digit.SessionStorage.get(\"User\")?.info?.roles;\n const roles = citizenInfo.map((ele) => ele.code);\n\n if (roles.includes(\"EKYC_SURVEYOR\")) {\n propsForModuleCard.links.push({\n label: t(\"SURVEYOR_DASHBOARD\"),\n link: `/digit-ui/citizen/ekyc/surveyor-dashboard`,\n });\n }\n\n if (roles.includes(\"EKYC_SUPERVISOR\") || roles.includes(\"EKYC_VENDOR\")) {\n propsForModuleCard.links.push(\n {\n label: t(\"EKYC_DASHBOARD\"),\n link: `/digit-ui/citizen/ekyc/dashboard`,\n },\n {\n label: t(\"EKYC_INBOX\"),\n link: `/digit-ui/citizen/ekyc/inbox`,\n },\n {\n label: t(\"EKYC_ASSIGN\"),\n link: `/digit-ui/citizen/ekyc/assign`,\n }\n );\n }\n\n if (roles.length === 1 && roles.includes(\"CITIZEN\")) {\n propsForModuleCard.links.push({\n label: t(\"EKYC_STATUS\"),\n link: `/digit-ui/citizen/ekyc/:id`,\n });\n }\n\n return <ModuleLinksView links={propsForModuleCard.links} />;\n};\n\nexport default Home;\n","import React, { useMemo, useCallback, useReducer } from \"react\";\nimport { useLocation } from \"react-router-dom\";\nimport { InboxComposer } from \"@djb25/digit-ui-react-components\";\nimport useInboxTableConfig from \"../../hook/useInboxTableConfig\";\nimport SearchFormFieldsComponents from \"../../components/SearchFormFieldsComponent\";\n\n// Mock data removed in favor of API integration\n\nconst Inbox = ({ parentRoute }) => {\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const location = useLocation();\n\n const formInitValue = {\n filterForm: {},\n searchForm: {},\n tableForm: {\n limit: 10,\n offset: 0,\n sortBy: \"createdTime\",\n sortOrder: \"DESC\",\n },\n };\n\n const [formState, dispatch] = useReducer(formReducer, formInitValue);\n\n const queryParams = useMemo(() => {\n return {\n tenantId,\n offset: formState?.tableForm?.offset || 0,\n limit: formState?.tableForm?.limit || 10,\n search: formState?.searchForm || {},\n };\n }, [tenantId, formState?.tableForm?.offset, formState?.tableForm?.limit, formState?.searchForm]);\n\n const { isLoading, data: dashboardData = {} } = Digit.Hooks.ekyc.useEkycSurveyorDashboard({}, queryParams, {\n enabled: !!tenantId,\n keepPreviousData: true,\n });\n\n const searchDetails = useMemo(\n () => ({\n kno: formState?.searchForm?.kNumber || \"\",\n name: formState?.searchForm?.kName || \"\",\n }),\n [formState?.searchForm?.kNumber, formState?.searchForm?.kName]\n );\n\n const isSearchActive = !!(searchDetails.kno || searchDetails.name);\n\n const { isLoading: isSearchLoading, data: searchData } = Digit.Hooks.ekyc.useSearchConnection(\n {\n tenantId,\n details: searchDetails,\n },\n {\n enabled: !!tenantId && !!searchDetails.kno, // 🔥 important\n keepPreviousData: true,\n }\n );\n\n const sourceData = useMemo(() => {\n if (isSearchActive) {\n if (!searchData) return [];\n return [searchData];\n }\n\n return dashboardData?.dashboardInfo?.consumerList || [];\n }, [isSearchActive, searchData, dashboardData]);\n\n const filteredData = useMemo(() => {\n return (sourceData || []).map((item) => {\n // ✅ detect search response\n const isSearchItem = !!item.connectionDetails;\n\n if (isSearchItem) {\n return {\n applicationNo: item.propertyInfo?.kno || \"\",\n connectionNo: item.propertyInfo?.kno || \"\",\n owner: item.connectionDetails?.consumerName || \"\",\n applicationNumber: item.propertyInfo?.kno || \"\",\n citizenName: item.connectionDetails?.consumerName || \"\",\n status: item.connectionDetails?.statusflag || \"\",\n sla: 0,\n };\n }\n\n // ✅ dashboard mapping\n return {\n ...item,\n applicationNo: item.kno || item.applicationNumber || \"\",\n connectionNo: item.connectionNo || \"\",\n owner: item.consumerName || item.citizenName || \"\",\n applicationNumber: item.kno || item.applicationNumber || \"\",\n citizenName: item.consumerName || item.citizenName || \"\",\n status: item.status || \"\",\n sla: item.sla ?? 0,\n };\n });\n }, [sourceData]);\n\n const totalRecords = dashboardData?.dashboardInfo?.totalRecords || dashboardData?.totalCount || 0;\n\n const checkPathName = location.pathname.includes(\"ekyc/inbox\");\n const PropsForInboxLinks = {\n headerText: checkPathName ? \"MODULE_WATER\" : \"MODULE_SW\",\n };\n\n const SearchFormFields = useCallback(\n ({ registerRef, searchFormState, controlSearchForm }) => (\n <SearchFormFieldsComponents {...{ registerRef, searchFormState, controlSearchForm }} className=\"search\" />\n ),\n []\n );\n\n const tableOrderFormDefaultValues = {\n sortBy: \"createdTime\",\n limit: window.Digit.Utils.browser.isMobile() ? 50 : 10,\n offset: 0,\n sortOrder: \"DESC\",\n };\n\n const onSearchFormSubmit = (data) => {\n data.hasOwnProperty(\"\") && delete data?.[\"\"];\n dispatch({ action: \"mutateTableForm\", data: { ...tableOrderFormDefaultValues }, checkPathName });\n dispatch({ action: \"mutateSearchForm\", data, checkPathName });\n };\n\n const searchFormDefaultValues = {\n mobileNumber: \"\",\n applicationNumber: \"\",\n consumerNo: \"\",\n };\n\n const onSearchFormReset = (setSearchFormValue) => {\n setSearchFormValue(\"mobileNumber\", null);\n setSearchFormValue(\"applicationNumber\", null);\n setSearchFormValue(\"consumerNo\", null);\n dispatch({ action: \"mutateSearchForm\", data: searchFormDefaultValues });\n };\n\n const propsForSearchForm = {\n SearchFormFields,\n onSearchFormSubmit,\n searchFormDefaultValues: formState?.searchForm,\n resetSearchFormDefaultValues: searchFormDefaultValues,\n onSearchFormReset,\n className: \"search-form-wns-inbox\",\n };\n\n const FilterFormFields = useCallback(\n ({ registerRef, controlFilterForm, setFilterFormValue, getFilterFormValue }) => <React.Fragment></React.Fragment>,\n []\n );\n\n const propsForFilterForm = {\n FilterFormFields,\n onFilterFormSubmit: () => {},\n filterFormDefaultValues: \"\",\n resetFilterFormDefaultValues: \"\",\n onFilterFormReset: () => {},\n };\n\n function formReducer(state, payload) {\n const storageKey = payload.checkPathName ? \"EKYC.INBOX\" : \"EKYC.SW.INBOX\";\n\n // ✅ safety for SLA\n switch (payload.action) {\n case \"mutateSearchForm\":\n Digit.SessionStorage.set(storageKey, { ...state, searchForm: payload.data });\n return { ...state, searchForm: payload.data };\n\n case \"mutateFilterForm\":\n Digit.SessionStorage.set(storageKey, { ...state, filterForm: payload.data });\n return { ...state, filterForm: payload.data };\n\n case \"mutateTableForm\":\n Digit.SessionStorage.set(storageKey, { ...state, tableForm: payload.data });\n return { ...state, tableForm: payload.data };\n\n default:\n return state; // ✅ IMPORTANT\n }\n }\n\n const onPageSizeChange = (e) => {\n const newLimit = Number(e.target.value);\n\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n limit: newLimit,\n offset: 0, // reset page\n },\n checkPathName,\n });\n };\n\n const onSortingByData = (e) => {\n if (e.length > 0) {\n const [{ id, desc }] = e;\n const sortOrder = desc ? \"DESC\" : \"ASC\";\n const sortBy = id;\n\n if (!(formState.tableForm.sortBy === sortBy && formState.tableForm.sortOrder === sortOrder)) {\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n sortBy: id,\n sortOrder: desc ? \"DESC\" : \"ASC\",\n },\n checkPathName,\n });\n }\n }\n };\n\n const propsForInboxTable = useInboxTableConfig({\n ...{\n parentRoute,\n onPageSizeChange,\n formState,\n totalCount: totalRecords,\n table: filteredData,\n dispatch,\n onSortingByData,\n tenantId,\n checkPathName,\n inboxStyles: { overflowX: \"scroll\", overflowY: \"hidden\" },\n tableStyle: { width: \"70%\" },\n },\n });\n\n const isInboxLoading = isLoading || isSearchLoading;\n\n return (\n <div className=\"app-container\">\n <InboxComposer\n {...{\n isInboxLoading,\n PropsForInboxLinks,\n ...propsForSearchForm,\n ...propsForFilterForm,\n // ...propsForMobileSortForm,\n propsForInboxTable,\n // propsForInboxMobileCards,\n formState,\n }}\n />\n </div>\n );\n};\n\nexport default Inbox;\n","import React, { useState, useEffect, Fragment } from \"react\";\nimport { CardLabel, TextInput, Dropdown, UploadFile, Toast, FormStep, Loader } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\n\nconst AddressDetails = ({ config, onSelect }) => {\n const { t } = useTranslation();\n\n const tenantId = Digit.ULBService.getCurrentTenantId();\n\n // 🔹 STATES\n const [houseNo, setHouseNo] = useState(\"\");\n const [street, setStreet] = useState(\"\");\n const [locality, setLocality] = useState(\"\");\n const [landmark, setLandmark] = useState(\"\");\n const [subLocality, setSubLocality] = useState(null);\n\n const [pinCode, setPinCode] = useState(\"\");\n const [assembly, setAssembly] = useState(null);\n const [ward, setWard] = useState(null);\n const [zone, setZone] = useState(null);\n\n const [latitude, setLatitude] = useState(\"\");\n const [longitude, setLongitude] = useState(\"\");\n\n const [addressType, setAddressType] = useState(null);\n\n const [doorPhoto, setDoorPhoto] = useState(null);\n const [doorPhotoFileStoreId, setDoorPhotoFileStoreId] = useState(null);\n\n const [toast, setToast] = useState(null);\n\n // 🔹 MDMS DATA\n const { data: mdmsData, isLoading } = Digit.Hooks.useCommonMDMS(tenantId, \"egov-location\", [\"TenantBoundary\"]);\n\n const assemblies = mdmsData?.MdmsRes?.[\"egov-location\"]?.TenantBoundary?.[0]?.boundary?.children || [];\n\n // 🔹 AUTO GPS\n useEffect(() => {\n let isMounted = true;\n\n if (navigator.geolocation) {\n navigator.geolocation.getCurrentPosition(\n (pos) => {\n if (!isMounted) return;\n setLatitude(pos.coords.latitude);\n setLongitude(pos.coords.longitude);\n },\n () => {\n if (!isMounted) return;\n setToast({ type: \"error\", message: \"GPS access denied\" });\n }\n );\n }\n\n return () => {\n isMounted = false;\n };\n }, []);\n\n // 🔹 PIN CODE HANDLER\n const handlePincodeChange = (e) => {\n const value = e.target.value;\n if (/^\\d{0,6}$/.test(value)) {\n setPinCode(value);\n\n if (value.length === 6) {\n fetchLocationByPincode(value);\n }\n }\n };\n\n // 🔹 MOCK PIN API (Replace with real API)\n const fetchLocationByPincode = (pin) => {\n // 🔥 Replace this with backend API\n console.log(\"Fetching location for PIN:\", pin);\n };\n\n // 🔹 FILE UPLOAD\n const selectphoto = async (e) => {\n let isMounted = true;\n\n const file = e.target.files[0];\n if (!file) return;\n\n if (file.size >= 2000000) {\n setToast({ type: \"error\", message: \"Max size 2MB exceeded\" });\n return;\n }\n\n try {\n const res = await Digit.UploadServices.Filestorage(\"EKYC\", file, tenantId);\n\n if (!isMounted) return;\n\n const fileStoreId = res?.data?.files?.[0]?.fileStoreId;\n\n if (fileStoreId) {\n setDoorPhotoFileStoreId(fileStoreId);\n\n const reader = new FileReader();\n reader.onloadend = () => {\n if (!isMounted) return;\n setDoorPhoto(reader.result);\n };\n reader.readAsDataURL(file);\n\n setToast({ type: \"success\", message: \"Upload successful\" });\n }\n } catch {\n if (!isMounted) return;\n setToast({ type: \"error\", message: \"Upload failed\" });\n }\n\n return () => {\n isMounted = false;\n };\n };\n\n const removePhoto = () => {\n setDoorPhoto(null);\n setDoorPhotoFileStoreId(null);\n };\n\n // 🔹 VALIDATION\n const isValid = () => {\n return houseNo && street && pinCode.length === 6 && assembly && ward && zone && latitude && longitude && doorPhotoFileStoreId;\n };\n\n // 🔹 SUBMIT\n const onStepSelect = () => {\n if (!isValid()) {\n setToast({ type: \"error\", message: \"Please fill all mandatory fields\" });\n return;\n }\n\n const data = {\n houseNo,\n street,\n locality,\n landmark,\n subLocality,\n pinCode,\n assembly: assembly?.name,\n ward: ward?.name,\n zone: zone?.name,\n latitude,\n longitude,\n addressType: addressType?.name,\n doorPhotoFilestoreId: doorPhotoFileStoreId,\n };\n\n onSelect(config.key, data);\n };\n\n if (isLoading) return <Loader />;\n\n return (\n <Fragment>\n <FormStep t={t} onSelect={onStepSelect} config={config} label={t(\"ES_COMMON_CONTINUE\")}>\n <CardLabel>House No / Flat No *</CardLabel>\n <TextInput value={houseNo} onChange={(e) => setHouseNo(e.target.value)} />\n\n <CardLabel>Street / Address Line *</CardLabel>\n <TextInput value={street} onChange={(e) => setStreet(e.target.value)} />\n\n <CardLabel>Locality</CardLabel>\n <TextInput value={locality} onChange={(e) => setLocality(e.target.value)} />\n\n <CardLabel>Landmark</CardLabel>\n <TextInput value={landmark} onChange={(e) => setLandmark(e.target.value)} />\n\n <CardLabel>Sub Locality</CardLabel>\n <Dropdown option={[]} selected={subLocality} select={setSubLocality} />\n\n <CardLabel>PIN Code *</CardLabel>\n <TextInput value={pinCode} onChange={handlePincodeChange} maxLength={6} />\n\n <CardLabel>Assembly *</CardLabel>\n <Dropdown option={assemblies} selected={assembly} select={setAssembly} />\n\n <CardLabel>Ward *</CardLabel>\n <Dropdown option={assembly?.children || []} selected={ward} select={setWard} />\n\n <CardLabel>Zone *</CardLabel>\n <Dropdown option={ward?.children || []} selected={zone} select={setZone} />\n\n <CardLabel>Latitude</CardLabel>\n <TextInput value={latitude} disabled />\n\n <CardLabel>Longitude</CardLabel>\n <TextInput value={longitude} disabled />\n\n <CardLabel>Address Type</CardLabel>\n <Dropdown option={[{ name: \"Permanent\" }, { name: \"Correspondence\" }, { name: \"Other\" }]} selected={addressType} select={setAddressType} />\n\n <CardLabel>Door Image *</CardLabel>\n <UploadFile onUpload={selectphoto} onDelete={removePhoto} message={doorPhotoFileStoreId ? \"Uploaded\" : \"No file selected\"} />\n\n {doorPhoto && <img src={doorPhoto} alt=\"preview\" style={{ width: \"100%\", marginTop: \"10px\" }} />}\n\n {toast && <Toast label={toast.message} error={toast.type === \"error\"} onClose={() => setToast(null)} />}\n </FormStep>\n </Fragment>\n );\n};\n\nexport default AddressDetails;\n","import React from \"react\";\nimport { PrivateRoute, ModuleHeader, ArrowLeft, HomeIcon, LayoutWrapper } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { Switch, useLocation, useRouteMatch } from \"react-router-dom\";\nimport AadhaarVerification from \"../../components/AadhaarVerification\";\nimport PropertyInfo from \"../../components/PropertyInfo\";\nimport MeterDetails from \"../../components/MeterDetails\";\nimport Review from \"../../components/Review\";\nimport Home from \"./Home\";\nimport Dashboard from \"../../components/Dashboard\";\nimport Inbox from \"./Inbox\";\nimport AddressDetails from \"../../components/AddressDetails\";\nimport AssignEkyc from \"../../components/AssignEkyc\";\nimport SurveyorDetailsCard from \"../../components/SurveyorDetailsCard\";\nimport VendorDetails from \"../../components/VendorDetails\";\n\nconst CitizenApp = () => {\n const { t } = useTranslation();\n const location = useLocation();\n const { path } = useRouteMatch();\n\n sessionStorage.removeItem(\"revalidateddone\");\n\n const getBreadcrumbLabel = () => {\n const pathname = location.pathname;\n if (pathname.includes(\"/create-kyc\")) return \"EKYC_CREATE_KYC\";\n if (pathname.includes(\"/aadhaar-verification\")) return \"EKYC_AADHAAR_VERIFICATION\";\n if (pathname.includes(\"/address-details\")) return \"EKYC_ADDRESS_DETAILS\";\n if (pathname.includes(\"/property-info\")) return \"EKYC_PROPERTY_INFO\";\n if (pathname.includes(\"/meter-details\")) return \"EKYC_METER_DETAILS\";\n if (pathname.includes(\"/review\")) return \"EKYC_REVIEW\";\n return \"EKYC_HOME\";\n };\n\n const breadcrumbs = [{ icon: HomeIcon, path: \"/digit-ui/citizen\" }, { label: t(getBreadcrumbLabel()) }];\n\n const roles = Digit.SessionStorage.get(\"User\")?.info?.roles.map((ele) => ele.code);\n const isEkyAction = (!roles?.includes(\"EKYC_SURVEYOR\") || roles?.includes(\"EMPLOYEE\"))\n return (\n <React.Fragment>\n <div className=\"ground-container form-container\">\n <ModuleHeader\n leftContent={\n <React.Fragment>\n <ArrowLeft className=\"icon\" />\n {t(\"CS_COMMON_BACK\")}\n </React.Fragment>\n }\n onLeftClick={() => window.history.back()}\n breadcrumbs={breadcrumbs}\n />\n\n <Switch>\n <PrivateRoute\n exact\n path={`${path}`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <Home />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/dashboard`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <VendorDetails />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/inbox`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <Inbox />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/aadhaar-verification`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <AadhaarVerification />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/address-details`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <AddressDetails />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/property-info`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <PropertyInfo />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/meter-details`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <MeterDetails />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/review`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <Review />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/assign`}\n exact\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <AssignEkyc />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/assign/surveyor-details/:id`}\n exact\n component={() => (\n <LayoutWrapper layoutClass=\"action\">\n <SurveyorDetailsCard />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/surveyor-dashboard/:id`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <SurveyorDetailsCard />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/surveyor-dashboard`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <SurveyorDetailsCard />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/status/:applicationId`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <Review />\n </LayoutWrapper>\n )}\n />\n </Switch>\n </div>\n </React.Fragment>\n );\n};\n\nexport default CitizenApp;\n","import React, { useEffect } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { useRouteMatch } from \"react-router-dom\";\nimport { CitizenHomeCard, DocumentIcon, Loader } from \"@djb25/digit-ui-react-components\";\nimport EKYCCard from \"./components/EKYCCard\";\nimport Inbox from \"./components/Dashboard\";\nimport DesktopInbox from \"./components/DesktopInbox\";\nimport MobileInbox from \"./components/MobileInbox\";\nimport Filter from \"./components/Filter\";\nimport EmployeeApp from \"./pages/employee\";\nimport CitizenApp from \"./pages/citizen\";\nimport PropertyInfo from \"./components/PropertyInfo\";\nimport MeterDetails from \"./components/MeterDetails\";\nimport AadhaarVerification from \"./components/AadhaarVerification\";\nimport AddressDetails from \"./components/AddressDetails\";\n\nexport const EkycModule = ({ stateCode, userType, tenants }) => {\n const { path, url } = useRouteMatch();\n const moduleCode = \"EKYC\";\n const language = Digit.StoreData.getCurrentLanguage();\n const { isLoading } = Digit.Services.useStore({ stateCode, moduleCode, language });\n\n Digit.SessionStorage.set(\"EKYC_TENANTS\", tenants);\n\n useEffect(\n () =>\n Digit.LocalizationService.getLocale({\n modules: [`rainmaker-ekyc`, `rainmaker-${Digit.ULBService.getCurrentTenantId()}`],\n locale: Digit.StoreData.getCurrentLanguage(),\n tenantId: Digit.ULBService.getCurrentTenantId(),\n }),\n []\n );\n\n if (isLoading) {\n return <Loader page={true} />;\n }\n\n if (userType === \"employee\") {\n return <EmployeeApp path={path} url={url} userType={userType} tenants={tenants} />;\n } else return <CitizenApp />;\n};\n\nexport const EkycLinks = ({ matchPath, userType }) => {\n const { t } = useTranslation();\n const links = [\n {\n link: `${matchPath}/create-kyc`,\n i18nKey: t(\"EKYC_CREATE_KYC\"),\n },\n {\n link: `${matchPath}/update-kyc`,\n i18nKey: t(\"EKYC_UPDATE_KYC\"),\n },\n ];\n\n return <CitizenHomeCard header={t(\"EKYC_MODULE_NAME\")} links={links} Icon={() => <DocumentIcon className=\"fill-path-primary-main\" />} />;\n};\n\nconst componentsToRegister = {\n EKYCModule: EkycModule,\n EKYCCard,\n EKYCInbox: Inbox,\n EKYCDesktopInbox: DesktopInbox,\n EKYCMobileInbox: MobileInbox,\n EKYC_INBOX_FILTER: (props) => <Filter {...props} />,\n EkycLinks,\n AadhaarVerification,\n AddressDetails,\n PropertyInfo,\n MeterDetails,\n};\n\nexport const initEkycComponents = () => {\n Object.entries(componentsToRegister).forEach(([key, value]) => {\n Digit.ComponentRegistryService.setComponent(key, value);\n });\n};\n\nexport default EkycModule;\n"],"names":["EKYCCard","t","useTranslation","propsForModuleCard","Icon","React","createElement","PersonIcon","moduleName","kpis","count","label","link","links","EmployeeModuleCard","getChartConstructor","C","Chartjs","StatusCards","_ref","countData","chartRef1","useRef","chartInstance1","total","pending","active","completed","actualCompleted","approved","efficiency","Math","round","healthPct","formatNumber","num","Intl","NumberFormat","format","useEffect","current","destroy","ctx1","getContext","ChartConstructor","type","data","labels","datasets","backgroundColor","borderColor","borderWidth","hoverOffset","options","cutout","plugins","legend","display","maintainAspectRatio","responsive","legendItems","color","value","className","map","item","key","style","background","ref","width","height","Dashboard","tenantId","Digit","ULBService","getCurrentTenantId","isLoading","dashboardData","Hooks","ekyc","useEkycSurveyorDashboard","offset","limit","enabled","useMemo","info","dashboardInfo","rejected","Loader","Card","DesktopInbox","_Digit$ComponentRegis","tableConfig","filterComponent","props","onSort","onNextPage","onPrevPage","currentPage","pageSizeLimit","onPageSizeChange","parentRoute","searchParams","sortParams","totalRecords","history","useHistory","FilterComponent","ComponentRegistryService","getComponent","selectedKno","setSelectedKno","useState","reviewData","getReview","useEkycAPI","handleReview","kno","push","kNumber","aadhaarData","columns","Header","accessor","Cell","_ref2","_row$original","_row$original2","row","original","applicationNumber","cursor","fontWeight","onClick","_ref3","_row$original3","citizenName","_ref4","_row$original4","status","_ref5","_row$original5","ekycStatus","ekycstatus","_ref6","_row$original6","_row$original7","tableData","items","Array","isArray","InboxLinks","headerText","moduleCode","defaultSearchParams","onFilterChange","onSearch","flex","padding","Table","getCellProps","cellInfo","SearchConsumer","_props$countData","_props$countData2","_props$countData3","children","_searchParams","setSearchParams","onChange","prev","onSubmit","e","preventDefault","onClear","cleared","kName","HomeIcon","viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","cx","cy","r","x1","y1","x2","y2","TextInput","target","placeholder","d","todaysAudits","auditChange","pendingCount","i","String","fromCharCode","MobileInbox","_data$items","mobileData","mobileNumber","Link","to","SubmitBar","length","DetailsCard","serviceRequestIdKey","linkPrefix","split","text","index","textAlign","Filter","statusMap","applyLocalFilters","clearAll","onStatusChange","newParams","FilterForm","handleSubmit","fn","onResetFilterForm","id","onMobileExclusiveFilterPopupFormClose","onClose","FilterFormField","Dropdown","option","optionKey","select","selected","ekycMockData","topKpis","totalWaterConnections","totalEkycCompleted","totalPending","totalRejected","agencyEkycCompleted","citizenSelfEkycCompleted","todaysEkyc","successRate","rejectionPercentage","executiveMetrics","totalSurveyors","totalSupervisors","activeJurisdictions","todaysGrowth","selfEkycAdoption","avgApprovalTime","riskZones","escalationsOpen","alerts","title","priority","change","district","heatmapData","intensity","dailyTrend","selfVsAgency","agency","citizen","pendingVsCompleted","rejectionAnalysis","success","vendors","name","assignedConnections","completedEkyc","selfEkyc","inactiveDemand","progress","supervisors","activeSurveyors","jurisdictions","dailyPerformance","day","zones","cluster","location","zroOffice","assemblyConstituency","gpsLocation","distanceFromFarthestPoint","activeDemand","pppZones","districtwiseInactiveTotal","ExecutiveLineChart","formattedData","agencyKyc","selfKyc","totalKyc","ResponsiveContainer","LineChart","margin","top","right","left","bottom","CartesianGrid","strokeDasharray","vertical","XAxis","dataKey","axisLine","tickLine","tick","fontSize","YAxis","Tooltip","contentStyle","border","borderRadius","boxShadow","labelStyle","marginBottom","Legend","verticalAlign","align","iconType","wrapperStyle","paddingBottom","Line","dot","activeDot","ExecutiveBarChart","categories","xKey","minHeight","BarChart","itemStyle","series","Bar","radius","barSize","colors","ExecutivePieChart","labelKey","PieChart","Pie","nameKey","outerRadius","innerRadius","paddingAngle","entry","marginTop","CeoDashboard","_topKpis$todayEkyc","useLocation","query","setQuery","statusFilter","setStatusFilter","basePath","pathname","replace","filters","filteredVendors","filter","vendor","keyword","toLowerCase","includes","some","zone","_zone$location","zoneRows","flatMap","sort","a","b","routeToVendor","vendorId","icon","FaUsers","variant","FaCheckCircle","FaClock","FaExclamationTriangle","FaUserTie","FaChartLine","card","_card$value","_card$value$toLocaleS","toLocaleString","call","FaSearch","join","FaArrowRight","FaMapMarkedAlt","slice","_zone$activeDemand","_zone$pppZones","_zone$inactiveDemand","min","max","alert","todayEkyc","VendorDetails","_vendor$dailyPerforma","_vendor$dailyPerforma2","useParams","find","Number","goBack","FaArrowLeft","performanceData","_item$value","_item$value$toLocaleS","_row$activeDemand","_row$pppZones","_row$inactiveDemand","intensityScore","random","useInboxTableConfig","_formState$tableForm","_formState$tableForm2","_Digit$SessionStorage","_Digit$SessionStorage2","_Digit$SessionStorage3","_formState$searchForm","formState","totalCount","table","dispatch","checkPathName","onSortingByData","inboxStyles","tableStyle","tableForm","userType","SessionStorage","get","tableColumnConfig","disableSortBy","disableSort","autoSort","manualPagination","initSortId","floor","_formState$tableForm3","_formState$tableForm4","action","parseInt","_formState$tableForm5","_formState$tableForm6","searchForm","message","onLastPage","_formState$tableForm7","ceil","onFirstPage","_iteratorSymbol","Symbol","iterator","_asyncIteratorSymbol","asyncIterator","_catch","body","recover","result","then","SearchFormFieldsComponents","searchFormState","controlSearchForm","errors","Fragment","Label","CustomTooltip","Controller","control","defaultValue","rules","pattern","render","CardLabelError","Inbox","_formState$searchForm3","_formState$searchForm4","businessService","initialStates","isInbox","formInitValue","filterForm","sortBy","sortOrder","useReducer","formReducer","queryParams","isListLoading","listData","useEkycApplicationList","keepPreviousData","searchDetails","_formState$searchForm2","isSearchActive","isSearchLoading","searchData","useSearchConnection","details","sourceData","consumerList","filteredData","isSearchItem","connectionDetails","_item$propertyInfo","_item$propertyInfo2","_item$connectionDetai","_item$propertyInfo3","_item$connectionDetai2","_item$connectionDetai3","applicationNo","propertyInfo","connectionNo","owner","consumerName","statusflag","sla","fullName","firstName","middleName","lastName","Boolean","PropsForInboxLinks","SearchFormFields","useCallback","registerRef","tableOrderFormDefaultValues","window","Utils","browser","isMobile","onSearchFormSubmit","hasOwnProperty","searchFormDefaultValues","consumerNo","onSearchFormReset","setSearchFormValue","propsForSearchForm","resetSearchFormDefaultValues","FilterFormFields","propsForFilterForm","onFilterFormSubmit","filterFormDefaultValues","resetFilterFormDefaultValues","onFilterFormReset","state","payload","storageKey","set","newLimit","desc","propsForInboxTable","overflowX","overflowY","isInboxLoading","InboxComposer","_extends","MOCK_SURVEYORS","role","MOCK_MRDS","code","Mapping","selectedSurveyor","setSelectedSurveyor","selectedMRD","setSelectedMRD","mappings","setMappings","editingId","setEditingId","editSurveyor","setEditSurveyor","editMRD","setEditMRD","deleteTarget","setDeleteTarget","toast","setToast","handleAddMapping","exists","m","surveyorId","mrdCode","Date","now","surveyorName","mrdName","handleEditStart","s","handleEditSave","duplicate","handleEditCancel","handleDeleteConfirm","handleSaveMappings","isEditing","gap","EditIcon","DeleteIcon","xmlns","CardHeader","CardText","LabelFieldPair","CardLabel","justifyContent","disabled","tableClassName","ActionBar","Modal","headerBarMain","headerBarEnd","actionSaveLabel","actionSaveOnSubmit","actionCancelLabel","actionCancelOnSubmit","Toast","error","warning","isDsc","ConnectionDetailsView","path","useRouteMatch","showModal","setShowModal","selectedOption","setSelectedOption","handleStartVerification","onModalConfirm","parentPath","statusFlag","isActive","meterNumber","connectionType","address","x","y","rx","ry","phoneNumber","email","lastVerified","points","RadioButtons","optionsKey","onSelect","flexDirection","buttonStyle","Create","saved","sessionStorage","getItem","JSON","parse","searchPerformed","setSearchPerformed","showToast","setShowToast","formParams","setFormParams","clearParams","useSessionStorage","isSearching","revalidate","onError","_error$response","_error$response$data","_error$response$data$","_error$response$data$2","response","Errors","removeItem","handleSearch","params","currentKno","Object","keys","forEach","startsWith","setItem","stringify","closeToast","ActionButton","jumpTo","routeTo","LinkButton","checkForNA","undefined","boolToYesNo","extractReviewData","flowState","rawData","reviewWrapper","applicationReviewInfo","applicationReview","applicationData","newData","oldData","ReviewSection","fields","overflow","borderBottom","alignItems","CardSubHeader","borderCollapse","tableLayout","textTransform","field","idx","valNew","valOld","isChanged","borderTop","isBool","Review","_newDataRaw$connectio","_newDataRaw$connectio2","_newDataRaw$connectio3","_newDataRaw$address","_newDataRaw$address2","_newDataRaw$address3","_newDataRaw$address4","_newDataRaw$address5","_newDataRaw$address6","_newDataRaw$address7","_newDataRaw$address8","_newDataRaw$address9","_newDataRaw$address0","_newDataRaw$address1","_newDataRaw$address10","_newDataRaw$address11","_newDataRaw$address12","_newDataRaw$address13","_newDataRaw$address14","_newDataRaw$property","_newDataRaw$property2","_editedProperty$conne","_newDataRaw$property3","_editedProperty$conne2","_newDataRaw$property4","_editedProperty$userT","_newDataRaw$property5","_editedProperty$noOfF","_newDataRaw$property6","_newDataRaw$property7","_newDataRaw$meter","_editedMeter$meterSta","_newDataRaw$meter2","_newDataRaw$meter3","_newDataRaw$meter4","_newDataRaw$meter5","_editedMeter$workingS","_newDataRaw$meter6","_editedMeter$lastBill","_newDataRaw$meter7","_newDataRaw$meter8","agree","setAgree","isSubmitting","setIsSubmitting","showPreview","setShowPreview","previewUrl","setPreviewUrl","edits","activeKno","addressDetails","editedAddress","propertyDetails","editedProperty","meterDetails","editedMeter","workflowMutation","useEkycWorkflow","updateMutation","useEkycUpdate","useEkycSearchReview","fetchType","apiNewData","apiOldData","prepareConsolidatedData","apiConn","apiAddr","apiProp","apiMeter","connection","addressRaw","connectionCategory","meterNo","mobileNo","knumber","fullAddress","flatHouseNumber","flatNo","buildingTower","building","landmark","pinCode","pincode","ward","locality","assembly","gpsValid","latitude","longitude","whatsappNo","noOfPerson","noOfPersons","doorPhotoFilestoreId","property","pidNumber","typeOfConnection","numberOfFloors","noOfFloor","tenantName","tenantMobile","propertyDocumentFileStoreId","buildingImageFileStoreId","meter","metered","meterStatus","meterMake","meterLocationAddress","meterLatitude","meterLongitude","workingStatus","lastBillRaised","systemMeterId","meterPhotoFileStoreId","newDataRaw","oldDataRaw","connectionData","addressData","whatsappNumber","doorPhotoFileStoreId","propertyData","connectionTypeData","connectionCategoryData","userTypeData","noOfFloorsData","meterData","meterStatusData","meterLocation","workingStatusData","lastBillRaisedData","connectionFields","addressFields","propertyFields","meterFields","handleDeclaration","handleReject","_Digit$UserService$ge","_Digit$UserService$ge2","_Digit$UserService$ge3","RequestInfo","apiId","ver","msgId","authToken","UserService","getUser","access_token","remarks","reviewedBy","userName","_temp","Promise","resolve","mutateAsync","err","console","reject","handleApprove","_Digit$UserService$ge4","_Digit$UserService$ge5","_Digit$UserService$ge6","_temp2","handleViewDocument","fileStoreId","documentUrl","baseUrl","StatusTable","maxWidth","Row","actionButton","GenericFileIcon","paddingTop","CheckBox","checked","position","zIndex","maxHeight","src","alt","nextSibling","open","QueryClientContext","context","createContext","ReactQueryClientContext","getQueryClientContext","useQueryClient","queryClient","useContext","Error","AadhaarVerification","config","formData","searchKno","cacheTime","savedData","aadhaarVerification","setKno","consumerType","setConsumerType","occupantType","setOccupantType","categoryType","setCategoryType","setConsumerName","setFirstName","setMiddleName","setLastName","gender","setGender","parentSpouseName","setParentSpouseName","relation","setRelation","mobile","setMobile","whatsapp","setWhatsapp","setEmail","residents","setResidents","documentProof","setDocumentProof","documentId","setDocumentId","ownerMobile","setOwnerMobile","tenantVerification","setTenantVerification","designation","setDesignation","department","setDepartment","employeeId","setEmployeeId","landline","setLandline","entityRelation","setEntityRelation","contactPerson","setContactPerson","entityName","setEntityName","idProof","setIdProof","idNumber","setIdNumber","documentNumber","setDocumentNumber","identityType","setIdentityType","idFile","setIdFile","consent","setConsent","informantIsConsumer","setInformantIsConsumer","informantName","setInformantName","informantRelation","setInformantRelation","addrDetails","parts","trim","parentSpouse","consumerTypeOptions","occupantOptions","genderOptions","identityTypeOptions","uploadFile","setter","idSetter","file","files","UploadServices","Filestorage","res","_res$data","_res$data$files","_res$data$files$","isValid","onStepSelect","updateType","FormStep","isDisabled","log","UploadFile","onUpload","ekycConfig","route","component","texts","header","submitBarLabel","timeLine","currentStep","actions","doorImage","EKYCForm","passedPath","match","setParams","userInfo","rest","goNext","skipStep","isAddMultiple","currentPath","pop","routeObj","nextStep","currentIndex","findIndex","c","redirectWithHistory","base","handleSelect","obj","concat","indexRoute","formStepRoutes","isFormStep","sectionRefs","currentRoute","scrollIntoView","behavior","block","VerticalTimeline","showFinalStep","Switch","Route","Component","el","isCollapsible","defaultOpen","Redirect","AssignEkycModal","surveyor","closeModal","selectedKnos","setSelectedKnos","isBulkSelection","setIsBulkSelection","setCurrentPage","pageSize","setPageSize","toastData","setToastData","setFilters","zoneName","mrkey","debouncedFilters","setDebouncedFilters","timer","setTimeout","clearTimeout","isFetching","assignmentMutation","useEkycAssignmentCreate","onSuccess","_response$data","_error$data","getAssignmentPayload","filterMappings","appliedFilter","assignmentType","assignmentValue","assignmentValues","handleAssign","_surveyor$owner","mutate","uuid","handleSelectAll","pageKnos","allSelected","every","Set","handleFilterChange","Close","tableTitle","tableClass","isPaginationRequired","totalPages","SurveyorDetailsDashboard","_Digit$SessionStorage4","_surveyor$owner2","_surveyor$owner3","_fullName$charAt","_dashboardData$dashbo","_dashboardData$dashbo2","_dashboardData$dashbo3","_dashboardData$dashbo4","_surveyor$owner4","_surveyor$owner5","_surveyor$owner6","_surveyor$additionalD","_dashboardData$dashbo5","_dashboardData$dashbo6","showOptions","setShowOptions","ownerIds","ids","surveyorSearchResponse","fsm","useSurveyorSearch","staleTime","Infinity","roles","ele","_surveyorSearchRespon","surveyors","isDashboardLoading","refetch","refetchDashboard","knoColumns","weeklyData","statusData","completedCases","pendingCases","rejectedCases","StatCard","handleMenuSelect","charAt","toUpperCase","description","submittedCount","emailId","additionalDetails","serviceType","_dashboardData$dashbo7","_dashboardData$dashbo8","Menu","SupervisorInboxTableConfig","_row$original5$owner","AssignEkyc","userDetails","paginationParms","isDataSearchLoading","useEkycAssignmentProgress","_owner$roles","_owner$roles$map","_item$additionalDetai","_item$auditDetails","_item$auditDetails2","roleCodes","supervisorId","createdTime","auditDetails","lastModifiedTime","cards","totalKnos","totalAssignments","completedKnos","overallProgressPercent","isCardLoading","EmployeeApp","getBreadcrumbLabel","breadcrumbs","AppContainer","ModuleHeader","leftContent","ArrowLeft","onLeftClick","back","PrivateRoute","LayoutWrapper","layoutClass","exact","SurveyorDetailsCard","PropertyInfo","setPidNumber","propertyType","setPropertyType","subPropertyCategory","setSubPropertyCategory","noOfFloors","setNoOfFloors","floorNo","setFloorNo","noOfRooms","setNoOfRooms","noOfBeds","setNoOfBeds","dwellingUnits","setDwellingUnits","buildingImage","setBuildingImage","buildingImageId","setBuildingImageId","propertyTypeOptions","matchingType","numberOfRooms","numberOfBeds","numberOfDwellingUnits","handleUpload","size","reader","FileReader","onloadend","readAsDataURL","onDelete","gridColumn","MeterDetails","setConnectionCategory","saType","setSaType","setStatus","mrCode","setMrCode","areaCode","setAreaCode","mrKey","setMrKey","setMeterNumber","meterMaker","setMeterMaker","setMeterStatus","meterCondition","setMeterCondition","setMeterLocation","lastBillReceived","setLastBillReceived","billMonthYear","setBillMonthYear","reason","setReason","accessToMeter","setAccessToMeter","sewerConnection","setSewerConnection","septicTank","setSepticTank","meterPhoto","setMeterPhoto","meterPhotoId","setMeterPhotoId","yesNo","meterStatusOptions","meterConditionOptions","meterLocationOptions","monthYearOptions","mrcode","areacode","matchingStatus","o","matchingCond","matchingLoc","strVal","lastBillReceivedDate","formatted","parsedParts","mon","yr","lastBillNotRaisedReason","isFrozen","uploadPhoto","Home","citizenInfo","ModuleLinksView","search","AddressDetails","_mdmsData$MdmsRes","_mdmsData$MdmsRes$ego","_mdmsData$MdmsRes$ego2","_mdmsData$MdmsRes$ego3","_mdmsData$MdmsRes$ego4","houseNo","setHouseNo","street","setStreet","setLocality","setLandmark","subLocality","setSubLocality","setPinCode","setAssembly","setWard","setZone","setLatitude","setLongitude","addressType","setAddressType","doorPhoto","setDoorPhoto","setDoorPhotoFileStoreId","mdmsData","useCommonMDMS","assemblies","MdmsRes","TenantBoundary","boundary","isMounted","navigator","geolocation","getCurrentPosition","pos","coords","handlePincodeChange","test","fetchLocationByPincode","pin","selectphoto","_exit","_result","removePhoto","maxLength","CitizenApp","isEkyAction","EkycModule","stateCode","tenants","url","language","StoreData","getCurrentLanguage","Services","useStore","LocalizationService","getLocale","modules","locale","page","EkycLinks","matchPath","i18nKey","CitizenHomeCard","DocumentIcon","componentsToRegister","EKYCModule","EKYCInbox","EKYCDesktopInbox","EKYCMobileInbox","EKYC_INBOX_FILTER","initEkycComponents","entries","setComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/components/EKYCCard.js","../src/components/StatusCards.js","../src/components/Dashboard.js","../src/components/DesktopInbox.js","../src/components/SearchConsumer.js","../src/components/MobileInbox.js","../src/components/Filter.js","../src/components/mockData.js","../src/components/analytics/charts/ExecutiveLineChart.jsx","../src/components/analytics/charts/ExecutiveBarChart.jsx","../src/components/analytics/charts/ExecutivePieChart.jsx","../src/components/CeoDashboard.jsx","../src/components/VendorDetails.jsx","../src/hook/useInboxTableConfig.js","../../../../node_modules/babel-plugin-transform-async-to-promises/helpers.mjs","../src/components/SearchFormFieldsComponent.js","../src/pages/employee/Inbox.js","../src/pages/employee/Mapping.js","../src/components/ConnectionDetailsView.js","../src/pages/employee/Create.js","../src/components/Review.js","../src/config/AadhaarVerificationConfig.js","../src/components/AadhaarVerification.js","../src/config/config.js","../src/pages/employee/EKYCForm.js","../src/components/AssignEkycModal.js","../src/utils/reportDownloader.js","../src/components/SurveyorDetailsCard.js","../../vendor/src/config/tableConfig.js","../src/hook/SupervisorInboxTableConfig.js","../src/components/AssignEkyc.js","../src/pages/employee/index.js","../src/config/PropertyInfoConfig.js","../src/components/PropertyInfo.js","../src/config/MeterDetailsConfig.js","../src/components/MeterDetails.js","../src/pages/citizen/Home.js","../src/pages/citizen/Inbox.js","../src/pages/citizen/index.js","../src/Module.js"],"sourcesContent":["import { PersonIcon, EmployeeModuleCard } from \"@djb25/digit-ui-react-components\";\nimport React from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nconst EKYCCard = () => {\n const { t } = useTranslation();\n\n const propsForModuleCard = {\n Icon: <PersonIcon />,\n moduleName: t(\"ACTION_TEST_EKYC\"),\n kpis: [\n {\n count: \"-\",\n label: t(\"TOTAL_EKYC\"),\n link: `/digit-ui/employee/ekyc/dashboard`,\n },\n ],\n links: [\n {\n label: t(\"CEO_M.F_DOR_FINANCE_VIEW\"),\n link: `/digit-ui/employee/ekyc/ceo-dashboard`,\n },\n // {\n // label: t(\"EKYC_DASHBOARD\"),\n // link: `/digit-ui/employee/ekyc/dashboard`,\n // },\n {\n label: t(\"EKYC_INBOX\"),\n link: `/digit-ui/employee/ekyc/inbox`,\n },\n // {\n // label: t(\"EKYC_CREATE_KYC\"),\n // link: `/digit-ui/employee/ekyc/create-kyc`\n // },\n // {\n // label: t(\"EKYC_UPDATE_KYC\"),\n // link: `/digit-ui/employee/ekyc/update-kyc`\n // },\n // {\n // label: t(\"EKYC_MAPPING\"),\n // link: `/digit-ui/employee/ekyc/mapping`,\n // },\n {\n label: t(\"EKYC_ASSIGN\"),\n link: `/digit-ui/employee/ekyc/assign`,\n },\n ],\n };\n\n return <EmployeeModuleCard {...propsForModuleCard} />;\n};\n\nexport default EKYCCard;\n","import React, { useEffect, useRef } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport * as Chartjs from \"chart.js/auto\";\n\nconst getChartConstructor = () => {\n const C = Chartjs.Chart || Chartjs.default || Chartjs;\n return C;\n};\n\nconst StatusCards = ({ countData }) => {\n const { t } = useTranslation();\n const chartRef1 = useRef(null);\n const chartInstance1 = useRef(null);\n\n const total = countData?.total || 0;\n const pending = countData?.pending || 0;\n const active = countData?.completed || 0;\n const completed = 0;\n\n const actualCompleted = countData?.completed || 0;\n const approved = actualCompleted;\n\n const efficiency = total > 0 ? Math.round((actualCompleted / total) * 100) : 0;\n const healthPct = total > 0 ? Math.round((approved / total) * 100) : 0;\n\n const formatNumber = (num) => new Intl.NumberFormat(\"en-IN\").format(num || 0);\n\n useEffect(() => {\n if (chartRef1.current) {\n if (chartInstance1.current) chartInstance1.current.destroy();\n const ctx1 = chartRef1.current.getContext(\"2d\");\n const ChartConstructor = getChartConstructor();\n chartInstance1.current = new ChartConstructor(ctx1, {\n type: \"doughnut\",\n data: {\n labels: [t(\"EKYC_ACTIVE\"), t(\"EKYC_PENDING\"), t(\"EKYC_COMPLETED\")],\n datasets: [\n {\n data: [active, pending, completed],\n backgroundColor: [\"#0c2a52\", \"#77B6EA\", \"#c8ddf5\"],\n borderColor: [\"#ffffff\", \"#ffffff\", \"#ffffff\"],\n borderWidth: 2,\n hoverOffset: 4,\n },\n ],\n },\n options: {\n cutout: \"75%\",\n plugins: { legend: { display: false } },\n maintainAspectRatio: false,\n responsive: true,\n },\n });\n }\n\n return () => {\n if (chartInstance1.current) chartInstance1.current.destroy();\n };\n }, [pending, completed, active, t]);\n\n const legendItems = [\n { color: \"#0c2a52\", label: t(\"EKYC_ACTIVE\"), value: active },\n { color: \"#77B6EA\", label: t(\"EKYC_PENDING\"), value: pending },\n { color: \"#c8ddf5\", label: t(\"EKYC_COMPLETED\"), value: completed },\n ];\n\n return (\n <div className=\"ekyc-employee-container\">\n <div className=\"status-cards-wrapper\">\n {/* Header */}\n <div className=\"status-cards-header\">\n <div>\n <div className=\"eyebrow\">\n <span className=\"eyebrow-dot\" />\n {t(\"EKYC_INSTITUTIONAL_OVERVIEW\") || \"Institutional Performance Overview\"}\n </div>\n <h1 className=\"status-cards-h1\">{t(\"EKYC_DASHBOARD_TITLE\") || \"eKYC Verification Dashboard\"}</h1>\n <p className=\"status-cards-subtitle\">\n {t(\"EKYC_DASHBOARD_SUBTITLE\") || \"Real-time monitoring of consumer verification workflows across all administrative zones.\"}\n </p>\n </div>\n <div className=\"total-applications-card\">\n <div className=\"total-label\">{t(\"EKYC_TOTAL_APPLICATIONS\") || \"Total Applications Processed\"}</div>\n <div className=\"total-number\">{formatNumber(total)}</div>\n <div className=\"total-badge\">↗ +12.4% {t(\"EKYC_FROM_LAST_QUARTER\") || \"from last quarter\"}</div>\n </div>\n </div>\n\n {/* Panels */}\n <div className=\"status-panels-grid\">\n {/* Panel 1: Status Breakdown */}\n <div className=\"status-panel\">\n <div className=\"panel-title\">{t(\"EKYC_STATUS_BREAKDOWN\") || \"Status Breakdown\"}</div>\n <div className=\"panel-subtitle\">{t(\"EKYC_VERIFICATION_LIFECYCLE\") || \"Verification lifecycle distribution\"}</div>\n <div className=\"breakdown-body\">\n <div className=\"status-legend\">\n {legendItems.map((item) => (\n <div key={item.label} className=\"legend-row\">\n <span className=\"legend-label\">\n <span className=\"indicator-dot\" style={{ background: item.color }} />\n {item.label}\n </span>\n <span className=\"legend-value\">{formatNumber(item.value)}</span>\n </div>\n ))}\n </div>\n <div className=\"chart-wrapper\">\n <canvas ref={chartRef1} style={{ width: \"100%\", height: \"100%\" }} />\n <div className=\"chart-center\">\n <div className=\"chart-percentage\">{efficiency}%</div>\n <div className=\"chart-label\">{t(\"EKYC_COMPLETE\") || \"Complete\"}</div>\n </div>\n </div>\n </div>\n </div>\n\n {/* Panel 2: Submission Health */}\n <div className=\"status-panel\">\n <div className=\"panel-title\">\n {t(\"EKYC_SUBMISSION_HEALTH\") || \"Submission Health\"}\n <span className=\"optimal-badge\">{t(\"EKYC_OPTIMAL\") || \"Optimal\"}</span>\n </div>\n <div className=\"panel-subtitle\">{t(\"EKYC_PLATFORM_EFFICIENCY\") || \"Platform operational efficiency\"}</div>\n <div className=\"health-metrics-row\">\n <div className=\"health-percentage\">{healthPct}%</div>\n <div className=\"health-trend\">↗ +2.1%</div>\n </div>\n <div className=\"status-progress-bar\">\n <div className=\"progress-fill\" style={{ width: `${healthPct}%` }} />\n </div>\n <div className=\"mini-metrics-grid\">\n <div className=\"metric-box\">\n <div className=\"metric-label\">{t(\"EKYC_AVG_LATENCY\") || \"Avg Latency\"}</div>\n <div className=\"metric-value\">1.2s</div>\n </div>\n <div className=\"metric-box\">\n <div className=\"metric-label\">{t(\"EKYC_ERROR_RATE\") || \"Error Rate\"}</div>\n <div className=\"metric-value\">0.04%</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default StatusCards;\n","import React, { useMemo } from \"react\";\nimport StatusCards from \"./StatusCards\";\nimport { Card, Loader } from \"@djb25/digit-ui-react-components\";\n\n// Mock data removed in favor of API integration\n\nconst Dashboard = () => {\n const tenantId = Digit.ULBService.getCurrentTenantId();\n\n // 2. API Data Fetching\n const { isLoading, data: dashboardData } = Digit.Hooks.ekyc.useEkycSurveyorDashboard(\n {},\n {\n tenantId,\n offset: 0,\n limit: 10,\n },\n {\n enabled: !!tenantId,\n }\n );\n\n const countData = useMemo(() => {\n const info = dashboardData?.dashboardInfo || {};\n return {\n total: info.total || 0,\n completed: info.completed || 0,\n pending: info.pending || 0,\n rejected: info.rejected || 0,\n active: info.active || 0,\n };\n }, [dashboardData]);\n\n return isLoading ? (\n <Loader />\n ) : (\n <Card className=\"min-width-full\">\n <StatusCards countData={countData} />\n </Card>\n );\n};\n\nexport default Dashboard;\n","import React, { useMemo, useState } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Table, Card, Loader, InboxLinks } from \"@djb25/digit-ui-react-components\";\nimport { useHistory } from \"react-router-dom\";\nimport StatusCards from \"./StatusCards\";\n\nconst DesktopInbox = ({ tableConfig, filterComponent, ...props }) => {\n const {\n data,\n isLoading,\n onSort,\n onNextPage,\n onPrevPage,\n currentPage,\n pageSizeLimit,\n onPageSizeChange,\n parentRoute,\n searchParams,\n sortParams,\n totalRecords,\n countData,\n } = props;\n const { t } = useTranslation();\n const history = useHistory();\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const FilterComponent = Digit.ComponentRegistryService?.getComponent(filterComponent);\n\n // State for Review Modal\n const [selectedKno, setSelectedKno] = useState(\"\");\n const { data: reviewData, getReview } = Digit.Hooks.ekyc.useEkycAPI(\"review\", tenantId);\n const handleReview = (kno) => {\n setSelectedKno(kno);\n getReview({ kno });\n };\n\n React.useEffect(() => {\n if (reviewData) {\n history.push(\"/digit-ui/employee/ekyc/review\", { kNumber: selectedKno, aadhaarData: reviewData?.aadhaarData, reviewData });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [reviewData]);\n\n const columns = useMemo(\n () => [\n {\n Header: t(\"EKYC_APPLICATION_NO\"),\n accessor: \"applicationNumber\",\n Cell: ({ row }) => {\n const kno = row.original?.kno || row.original?.applicationNumber || \"NA\";\n return (\n <span\n className=\"ekyc-application-link\"\n style={{ color: \"#add8f7\", cursor: \"pointer\", fontWeight: \"bold\" }}\n onClick={() => handleReview(kno)}\n >\n {kno}\n </span>\n );\n },\n },\n {\n Header: t(\"EKYC_CITIZEN_NAME\"),\n accessor: \"citizenName\",\n Cell: ({ row }) => <span>{row.original?.citizenName || \"NA\"}</span>,\n },\n // {\n // Header: t(\"EKYC_MOBILE_NO\"),\n // accessor: \"mobileNumber\",\n // Cell: ({ row }) => <span>{row.original?.mobileNumber || \"NA\"}</span>,\n // },\n {\n Header: t(\"EKYC_STATUS\"),\n accessor: \"actionStatus\",\n Cell: ({ row }) => {\n const status = row.original?.status || \"DEFAULT\";\n return <span className={`ekyc-status-tag ${status}`}>{t(`${status}`)}</span>;\n },\n },\n {\n Header: t(\"EKYC_EKYC_STATUS\"),\n accessor: \"ekycStatus\",\n Cell: ({ row }) => {\n const ekycStatus = row.original?.ekycStatus || row.original?.ekycstatus || \"NA\";\n return <span className={`ekyc-status-tag ${ekycStatus}`}>{t(`${ekycStatus}`)}</span>\n }\n },\n {\n Header: t(\"EKYC_ACTION\"),\n accessor: \"status\",\n Cell: ({ row }) => {\n const kno = row.original?.kno || row.original?.applicationNumber || \"NA\";\n return (\n <span\n className=\"ekyc-application-link\"\n style={{ color: \"#add8f7\", cursor: \"pointer\", fontWeight: \"bold\" }}\n onClick={() => handleReview(kno)}\n >\n {t(\"EKYC_REVIEW\")}\n </span>\n );\n },\n },\n ],\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [t, parentRoute]\n );\n\n const tableData = useMemo(() => {\n return data?.items || (Array.isArray(data) ? data : []);\n }, [data]);\n\n return (\n <div className=\"app-container\">\n <div className=\"inbox-container\">\n {isLoading && <Loader />}\n <div className=\"side-panel-item\">\n {/* Sidebar Title Card */}\n\n <InboxLinks headerText={props.moduleCode} />\n\n {FilterComponent && (\n <FilterComponent\n defaultSearchParams={props.defaultSearchParams}\n onFilterChange={props.onSearch}\n searchParams={searchParams}\n type=\"desktop\"\n moduleCode=\"EKYC\"\n />\n )}\n </div>\n\n <div className=\"employee-form-content\" style={{ flex: 1 }}>\n {/* Header Section (retaining for context/actions) */}\n {/* <div className=\"ekyc-header-container module-header\" style={{ marginBottom: \"16px\", display: \"flex\", justifyContent: \"space-between\", alignItems: \"center\" }}>\n <Header className=\"title\" style={{ margin: 0 }}>{t(\"EKYC_INBOX_HEADER\")}</Header>\n <Link to={`${parentRoute}/create-kyc`}>\n <SubmitBar label={t(\"EKYC_CREATE_KYC\")} style={{ borderRadius: \"8px\" }} />\n </Link>\n </div> */}\n\n {/* Metrics Section (The Card) */}\n <Card className=\"ekyc-metrics-card\">\n <StatusCards countData={countData} />\n </Card>\n\n {/* Table Section */}\n <div className=\"result\" style={{ flex: 1 }}>\n <Card className=\"ekyc-table-card\" style={{ padding: 0 }}>\n <Table\n t={t}\n data={tableData}\n columns={columns}\n isLoading={isLoading}\n onSort={onSort}\n sortParams={sortParams}\n totalRecords={totalRecords}\n onNextPage={onNextPage}\n onPrevPage={onPrevPage}\n currentPage={currentPage}\n pageSizeLimit={pageSizeLimit}\n onPageSizeChange={onPageSizeChange}\n getCellProps={(cellInfo) => {\n return {\n className: \"ekyc-table-cell\",\n };\n }}\n />\n </Card>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default DesktopInbox;\n","import React, { useState } from \"react\";\nimport { TextInput, Card, HomeIcon } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\n\nconst SearchConsumer = ({ onSearch, searchParams, FilterComponent, children, ...props }) => {\n const { t } = useTranslation();\n const [_searchParams, setSearchParams] = useState(() => ({ ...searchParams }));\n\n const onChange = (key, value) => {\n setSearchParams((prev) => ({ ...prev, [key]: value }));\n };\n\n const onSubmit = (e) => {\n if (e && e.preventDefault) e.preventDefault();\n onSearch(_searchParams);\n };\n\n const onClear = () => {\n const cleared = { kNumber: \"\", kName: \"\" };\n setSearchParams(cleared);\n onSearch(cleared);\n };\n\n return (\n <div className=\"ekyc-employee-container\">\n <div className=\"search-consumer-wrapper\">\n <div className=\"header-wrapper\">\n {/* Sidebar Title Card — flush top, full width */}\n <Card className=\"sidebar-title-card\">\n <div className=\"icon-container\">\n <HomeIcon />\n </div>\n <div className=\"title-text\">\n {t(\"EKYC_SEARCH_CONSUMER_HEADER\")}\n </div>\n </Card>\n </div>\n\n {/* Main Content */}\n <div className=\"main-content-wrapper\">\n {/* Top Row: Search Card + Stats Cards */}\n <div className=\"search-stats-row\">\n {/* Identity Lookup Card */}\n <div className=\"identity-lookup-card\">\n {/* Card Title */}\n <div className=\"lookup-card-title\">\n <div className=\"lookup-icon-bg\">\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#3A7BD5\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <circle cx=\"11\" cy=\"11\" r=\"8\" />\n <line x1=\"21\" y1=\"21\" x2=\"16.65\" y2=\"16.65\" />\n </svg>\n </div>\n <span className=\"lookup-title-text\">\n {t(\"EKYC_IDENTITY_LOOKUP\") || \"Identity Lookup\"}\n </span>\n </div>\n\n {/* Inputs Row */}\n <form onSubmit={onSubmit}>\n <div className=\"inputs-row\">\n <div className=\"input-group\">\n <label>\n {t(\"EKYC_K_NUMBER\") || \"K Number\"}\n <span className=\"info-badge\">i</span>\n </label>\n <TextInput\n value={_searchParams?.kNumber}\n onChange={(e) => onChange(\"kNumber\", e.target.value)}\n placeholder={t(\"EKYC_K_NUMBER_PLACEHOLDER\") || \"e.g. 8234910234\"}\n />\n </div>\n\n <div className=\"input-group\">\n <label>\n {t(\"EKYC_K_NAME\") || \"K Name\"}\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#3A7BD5\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <path d=\"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2\" />\n <circle cx=\"12\" cy=\"7\" r=\"4\" />\n </svg>\n </label>\n <TextInput\n value={_searchParams?.kName}\n onChange={(e) => onChange(\"kName\", e.target.value)}\n placeholder={t(\"EKYC_K_NAME_PLACEHOLDER\") || \"Consumer name search\"}\n />\n </div>\n </div>\n\n {/* Actions Row */}\n <div className=\"actions-row\">\n <button type=\"button\" onClick={onClear} className=\"clear-btn\">\n {t(\"ES_COMMON_CLEAR\") || \"Clear\"}\n </button>\n <button type=\"submit\" className=\"search-btn\">\n {t(\"ES_COMMON_SEARCH\") || \"Execute Search\"}\n </button>\n </div>\n </form>\n </div>\n\n {/* Right Stats Column */}\n <div className=\"stats-column\">\n {/* Today's Audits Card */}\n <div className=\"audits-card\">\n <div className=\"audits-label\">{t(\"EKYC_TODAYS_AUDITS\") || \"Today's Audits\"}</div>\n <div className=\"audits-count\">{props.countData?.todaysAudits || 24}</div>\n <div className=\"audits-change\">\n <span>↗</span>\n {props.countData?.auditChange || \"12% increase from yesterday\"}\n </div>\n <div className=\"audits-watermark\">M</div>\n </div>\n\n {/* Queue Status Card */}\n <div className=\"queue-card\">\n <div className=\"queue-label\">{t(\"EKYC_QUEUE_STATUS\") || \"Queue Status\"}</div>\n <div className=\"queue-content\">\n <div className=\"queue-status-text\">\n {props.countData?.pendingCount || 3} Pending\n </div>\n <div className=\"avatar-group\">\n {[0, 1].map((i) => (\n <div key={i} className=\"avatar-item\">\n {String.fromCharCode(65 + i)}\n </div>\n ))}\n <div className=\"avatar-more\">+1</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n {/* Children (ConnectionDetailsView or placeholder) */}\n {children}\n </div>\n </div>\n </div>\n );\n};\n\nexport default SearchConsumer;","import React from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Header, Card, SubmitBar, DetailsCard, Loader } from \"@djb25/digit-ui-react-components\";\nimport { Link } from \"react-router-dom\";\nimport SearchConsumer from \"./SearchConsumer\";\nimport StatusCards from \"./StatusCards\";\n\nconst MobileInbox = ({\n data,\n isLoading,\n onSearch,\n searchParams,\n parentRoute,\n countData,\n}) => {\n const { t } = useTranslation();\n\n const mobileData = data?.items?.map((item) => ({\n [t(\"EKYC_APPLICATION_NO\")]: item.applicationNumber,\n [t(\"EKYC_CITIZEN_NAME\")]: item.citizenName,\n [t(\"EKYC_MOBILE_NO\")]: item.mobileNumber,\n [t(\"EKYC_STATUS\")]: (\n <span className={`ekyc-status-tag ${item.status}`}>\n {t(`EKYC_STATUS_${item.status}`)}\n </span>\n ),\n })) || [];\n\n return (\n <div className=\"inbox-wrapper\">\n <div className=\"ekyc-header-container module-header\">\n <Header className=\"title\">{t(\"EKYC_INBOX_HEADER\")}</Header>\n <Link to={`${parentRoute}/create-kyc`}>\n <SubmitBar label={t(\"EKYC_CREATE_KYC\")} />\n </Link>\n </div>\n\n <div className=\"ekyc-metrics-section\">\n <StatusCards countData={countData} />\n </div>\n\n <SearchConsumer\n onSearch={onSearch}\n searchParams={searchParams}\n />\n\n <div className=\"mobile-data-container\">\n {isLoading ? (\n <Loader />\n ) : mobileData?.length > 0 ? (\n <DetailsCard\n data={mobileData}\n t={t}\n serviceRequestIdKey={t(\"EKYC_APPLICATION_NO\")}\n linkPrefix={`${parentRoute}/application-details/`}\n />\n ) : (\n <Card>\n {t(\"ES_COMMON_NO_DATA\")\n .split(\"\\\\n\")\n .map((text, index) => (\n <p key={index} style={{ textAlign: \"center\" }}>\n {text}\n </p>\n ))}\n </Card>\n )}\n </div>\n </div>\n );\n};\n\nexport default MobileInbox;\n","import React, { useState } from \"react\";\nimport { Dropdown, FilterForm, FilterFormField } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Filter = ({ searchParams, onFilterChange, defaultSearchParams, statusMap, moduleCode, ...props }) => {\n const { t } = useTranslation();\n\n const [_searchParams, setSearchParams] = useState(() => ({ ...searchParams }));\n\n const applyLocalFilters = () => {\n onFilterChange(_searchParams);\n };\n\n const clearAll = () => {\n setSearchParams({ ...defaultSearchParams });\n onFilterChange({ ...defaultSearchParams });\n };\n\n const onStatusChange = (value) => {\n const newParams = { ..._searchParams, status: value };\n setSearchParams(newParams);\n onFilterChange(newParams);\n };\n\n return (\n <FilterForm\n onSubmit={applyLocalFilters}\n handleSubmit={(fn) => (e) => {\n e && e.preventDefault();\n fn();\n }}\n onResetFilterForm={clearAll}\n id=\"ekyc-filter-form\"\n onMobileExclusiveFilterPopupFormClose={props.onClose}\n >\n <FilterFormField>\n <div className=\"filter-label\" style={{ fontWeight: \"normal\" }}>\n {t(\"EKYC_STATUS\")}:\n </div>\n <Dropdown\n option={[\n { label: t(\"EKYC_STATUS_ALL\"), value: \"\" },\n { label: t(\"EKYC_STATUS_ACTIVE\"), value: \"ACTIVE\" },\n { label: t(\"EKYC_STATUS_PENDING\"), value: \"PENDING START\" },\n ]}\n optionKey=\"label\"\n select={onStatusChange}\n selected={_searchParams?.status || { label: t(\"EKYC_STATUS_ALL\"), value: \"\" }}\n />\n </FilterFormField>\n </FilterForm>\n );\n};\n\nexport default Filter;\n","export const ekycMockData = {\n topKpis: {\n totalWaterConnections: 2990996,\n totalEkycCompleted: 2460810,\n totalPending: 530186,\n totalRejected: 224324,\n agencyEkycCompleted: 2352069,\n citizenSelfEkycCompleted: 638927,\n todaysEkyc: 54684,\n successRate: 82,\n rejectionPercentage: 7,\n },\n\n executiveMetrics: {\n totalSurveyors: 186,\n totalSupervisors: 56,\n activeJurisdictions: 27,\n todaysGrowth: 2.8,\n selfEkycAdoption: 38,\n avgApprovalTime: \"2.3 Days\",\n riskZones: 7,\n escalationsOpen: 18,\n },\n\n alerts: [\n {\n title: \"North East District pending increased\",\n priority: \"high\",\n change: \"+22%\",\n district: \"North East District\",\n },\n {\n title: \"Agency 2 self eKYC adoption low\",\n priority: \"medium\",\n change: \"-12%\",\n district: \"West District\",\n },\n {\n title: \"Escalation raised in NWS Bhera Enclave\",\n priority: \"high\",\n change: \"+18\",\n district: \"Outer North\",\n },\n {\n title: \"Approval rate improved in East District\",\n priority: \"low\",\n change: \"+9%\",\n district: \"East District\",\n },\n ],\n\n heatmapData: [\n {\n district: \"Outer North\",\n intensity: 82,\n },\n {\n district: \"East District\",\n intensity: 48,\n },\n {\n district: \"South District\",\n intensity: 67,\n },\n {\n district: \"North East District\",\n intensity: 74,\n },\n ],\n\n dailyTrend: [\n {\n label: \"Mon\",\n completed: 270689,\n pending: 491305,\n rejected: 145810,\n },\n {\n label: \"Tue\",\n completed: 442945,\n pending: 466563,\n rejected: 157026,\n },\n {\n label: \"Wed\",\n completed: 615202,\n pending: 441821,\n rejected: 168243,\n },\n {\n label: \"Thu\",\n completed: 812067,\n pending: 413545,\n rejected: 179459,\n },\n {\n label: \"Fri\",\n completed: 1033540,\n pending: 381733,\n rejected: 190675,\n },\n {\n label: \"Sat\",\n completed: 1279621,\n pending: 346388,\n rejected: 201891,\n },\n {\n label: \"Sun\",\n completed: 1574918,\n pending: 303973,\n rejected: 213107,\n },\n ],\n\n selfVsAgency: [\n {\n label: \"Agency1\",\n agency: 201457,\n citizen: 758414,\n },\n {\n label: \"Agency 2\",\n agency: 164302,\n citizen: 919322,\n },\n {\n label: \"Agency 3\",\n agency: 328451,\n citizen: 541772,\n },\n ],\n\n pendingVsCompleted: [\n {\n label: \"Agency1\",\n completed: 201457,\n pending: 201457,\n },\n {\n label: \"Agency 2\",\n completed: 164302,\n pending: 164302,\n },\n {\n label: \"Agency 3\",\n completed: 328451,\n pending: 77278,\n },\n ],\n\n rejectionAnalysis: [\n {\n label: \"Agency1\",\n rejected: 71990,\n success: 72,\n },\n {\n label: \"Agency 2\",\n rejected: 81271,\n success: 77,\n },\n {\n label: \"Agency 3\",\n rejected: 71063,\n success: 86,\n },\n ],\n\n vendors: [\n {\n id: 1,\n name: \"Agency1\",\n\n assignedConnections: 959871,\n\n completedEkyc: 201457,\n\n selfEkyc: 758414,\n\n pending: 201457,\n\n rejected: 71990,\n\n inactiveDemand: 1161328,\n\n successRate: 72,\n\n progress: 21,\n\n supervisors: 23,\n\n activeSurveyors: 64,\n\n jurisdictions: [\"Outer North\", \"North West District\", \"Model Town AC 18\", \"Cluster 2\", \"North District\"],\n\n dailyPerformance: [\n {\n day: \"Mon\",\n completed: 16116,\n pending: 196084,\n rejected: 53272,\n },\n {\n day: \"Tue\",\n completed: 26189,\n pending: 192727,\n rejected: 55072,\n },\n {\n day: \"Wed\",\n completed: 38276,\n pending: 188698,\n rejected: 57232,\n },\n {\n day: \"Thu\",\n completed: 52378,\n pending: 183997,\n rejected: 59751,\n },\n {\n day: \"Fri\",\n completed: 68495,\n pending: 178625,\n rejected: 62631,\n },\n {\n day: \"Sat\",\n completed: 84611,\n pending: 173253,\n rejected: 65510,\n },\n {\n day: \"Sun\",\n completed: 100728,\n pending: 167880,\n rejected: 68390,\n },\n ],\n\n zones: [\n {\n agency: \"Agency1\",\n district: \"Outer North\",\n cluster: \"NWS Bhera Enclave\",\n\n assignedConnections: 102669,\n\n location: \"102669\",\n\n zroOffice: \"NWS Bhera Enclave\",\n\n assemblyConstituency: \"Part of Mundka AC 08\",\n\n gpsLocation: null,\n\n distanceFromFarthestPoint: null,\n\n activeDemand: 202197,\n\n pppZones: 15800,\n\n inactiveDemand: 35265,\n\n districtwiseInactiveTotal: 237462,\n },\n\n {\n agency: \"Agency1\",\n district: \"Outer North\",\n\n cluster: \"Narela\",\n\n assignedConnections: 99528,\n\n location: \"99528\",\n\n zroOffice: \"Narela\",\n\n assemblyConstituency: \"Narela AC 01\",\n\n activeDemand: 99528,\n\n pppZones: 19465,\n\n inactiveDemand: 35265,\n },\n\n {\n agency: \"Agency1\",\n\n district: \"North West District\",\n\n cluster: \"Rohini AC 13\",\n\n assignedConnections: 71041,\n\n location: \"71041\",\n\n zroOffice: \"Rohini\",\n\n assemblyConstituency: \"Rithala AC 06\",\n\n activeDemand: 247949,\n\n pppZones: 28975,\n\n inactiveDemand: 49494,\n },\n\n {\n agency: \"Agency1\",\n\n district: \"Mangol Puri AC 12\",\n\n cluster: \"Model Town AC 18\",\n\n assignedConnections: 68957,\n\n location: \"68957\",\n\n zroOffice: \"Central North District\",\n\n assemblyConstituency: \"Ashok Vihar\",\n\n activeDemand: 231216,\n\n pppZones: 16627,\n\n inactiveDemand: 36915,\n },\n\n {\n agency: \"Agency1\",\n\n district: \"Timarpur AC 03\",\n\n cluster: \"Cluster 2\",\n\n assignedConnections: 34862,\n\n location: \"34862\",\n\n zroOffice: \"Old Delhi District\",\n\n assemblyConstituency: \"Pratap Nagar\",\n\n activeDemand: 99694,\n\n pppZones: 20011,\n\n inactiveDemand: 48011,\n },\n\n {\n agency: \"Agency1\",\n\n district: \"Bali Maran AC 22\",\n\n cluster: \"North District\",\n\n assignedConnections: 110507,\n\n location: \"110507\",\n\n zroOffice: \"Burari\",\n\n assemblyConstituency: \"Burari AC 2\",\n\n activeDemand: 178815,\n\n pppZones: 14700,\n\n inactiveDemand: 31772,\n },\n ],\n },\n\n {\n id: 2,\n\n name: \"Agency 2\",\n\n assignedConnections: 1083624,\n\n completedEkyc: 164302,\n\n selfEkyc: 919322,\n\n pending: 164302,\n\n rejected: 81271,\n\n inactiveDemand: 1247926,\n\n successRate: 77,\n\n progress: 15,\n\n supervisors: 14,\n\n activeSurveyors: 64,\n\n jurisdictions: [\"West District\", \"Janak Puri\", \"South District\"],\n\n dailyPerformance: [\n {\n day: \"Mon\",\n completed: 13144,\n pending: 159920,\n rejected: 60140,\n },\n {\n day: \"Tue\",\n completed: 21359,\n pending: 157182,\n rejected: 62172,\n },\n {\n day: \"Wed\",\n completed: 31217,\n pending: 153896,\n rejected: 64610,\n },\n {\n day: \"Thu\",\n completed: 42718,\n pending: 150062,\n rejected: 67454,\n },\n {\n day: \"Fri\",\n completed: 55862,\n pending: 145681,\n rejected: 70705,\n },\n {\n day: \"Sat\",\n completed: 69006,\n pending: 141299,\n rejected: 73956,\n },\n {\n day: \"Sun\",\n completed: 82151,\n pending: 136918,\n rejected: 77207,\n },\n ],\n\n zones: [\n {\n agency: \"Agency 2\",\n\n district: \"West District\",\n\n cluster: \"Rajouri Garden AC 27\",\n\n assignedConnections: 84506,\n\n location: \"84506\",\n\n zroOffice: \"Rajouri Garden AC 27\",\n\n assemblyConstituency: \"Punjabi Bagh\",\n\n activeDemand: 470766,\n\n pppZones: 13269,\n\n inactiveDemand: 64564,\n },\n\n {\n agency: \"Agency 2\",\n\n district: \"West District\",\n\n cluster: \"Tilak Nagar AC 29\",\n\n assignedConnections: 51428,\n\n location: \"51428\",\n\n zroOffice: \"Tilak Nagar AC 29\",\n\n assemblyConstituency: \"Paschim Vihar\",\n\n activeDemand: 470766,\n\n pppZones: 6298,\n\n inactiveDemand: 64564,\n },\n\n {\n agency: \"Agency 2\",\n\n district: \"Part of Uttam Nagar & Vikas puri\",\n\n cluster: \"Janak Puri\",\n\n assignedConnections: 163041,\n\n location: \"163041\",\n\n zroOffice: \"Janakpuri\",\n\n assemblyConstituency: \"Janakpuri AC 30\",\n\n activeDemand: 369772,\n\n pppZones: 25729,\n\n inactiveDemand: 60534,\n },\n\n {\n agency: \"Agency 2\",\n\n district: \"South District\",\n\n cluster: \"South District\",\n\n assignedConnections: 52803,\n\n location: \"52803\",\n\n zroOffice: \"R K Puram\",\n\n assemblyConstituency: \"Malviya Nagar AC 43\",\n\n activeDemand: 243086,\n\n pppZones: 9678,\n\n inactiveDemand: 39204,\n },\n\n {\n agency: \"Agency 2\",\n\n district: \"South District\",\n\n cluster: \"Vasant Kunz\",\n\n assignedConnections: 58997,\n\n location: \"58997\",\n\n zroOffice: \"Vasant Kunj\",\n\n assemblyConstituency: \"Vasant Kunj\",\n\n activeDemand: 243086,\n\n pppZones: 6691,\n\n inactiveDemand: 39204,\n },\n ],\n },\n\n {\n id: 3,\n\n name: \"Agency 3\",\n\n assignedConnections: 947501,\n\n completedEkyc: 328451,\n\n selfEkyc: 541772,\n\n pending: 77278,\n\n rejected: 71063,\n\n inactiveDemand: 1016841,\n\n successRate: 86,\n\n progress: 78,\n\n supervisors: 19,\n\n activeSurveyors: 58,\n\n jurisdictions: [\"East District\", \"North East District\", \"South East District\", \"MNWS\"],\n\n dailyPerformance: [\n {\n day: \"Mon\",\n completed: 44120,\n pending: 130002,\n rejected: 5711,\n },\n {\n day: \"Tue\",\n completed: 58221,\n pending: 121998,\n rejected: 7104,\n },\n {\n day: \"Wed\",\n completed: 70218,\n pending: 113201,\n rejected: 8842,\n },\n {\n day: \"Thu\",\n completed: 85124,\n pending: 104006,\n rejected: 9911,\n },\n {\n day: \"Fri\",\n completed: 102315,\n pending: 94441,\n rejected: 11214,\n },\n {\n day: \"Sat\",\n completed: 121009,\n pending: 85218,\n rejected: 12902,\n },\n {\n day: \"Sun\",\n completed: 142118,\n pending: 77278,\n rejected: 14101,\n },\n ],\n\n zones: [\n {\n agency: \"Agency 3\",\n\n district: \"East District\",\n\n cluster: \"Mayur Vihar\",\n\n assignedConnections: 72326,\n\n location: \"72326\",\n\n zroOffice: \"Mayur Vihar\",\n\n assemblyConstituency: \"Trilokpuri AC 55\",\n\n activeDemand: 328564,\n\n pppZones: 9691,\n\n inactiveDemand: 52477,\n },\n\n {\n agency: \"Agency 3\",\n\n district: \"East District\",\n\n cluster: \"Yojna Vihar\",\n\n assignedConnections: 40651,\n\n location: \"40651\",\n\n zroOffice: \"Yojna Vihar\",\n\n assemblyConstituency: \"Vishwas Nagar AC 59\",\n\n activeDemand: 328564,\n\n pppZones: 10097,\n\n inactiveDemand: 52477,\n },\n\n {\n agency: \"Agency 3\",\n\n district: \"North East District\",\n\n cluster: \"GTB Enclave\",\n\n assignedConnections: 80453,\n\n location: \"80453\",\n\n zroOffice: \"GTB Enclave\",\n\n assemblyConstituency: \"Seemapuri AC 63\",\n\n activeDemand: 323753,\n\n pppZones: 10671,\n\n inactiveDemand: 50575,\n },\n\n {\n agency: \"Agency 3\",\n\n district: \"North East District\",\n\n cluster: \"Yamuna Vihar\",\n\n assignedConnections: 90599,\n\n location: \"90599\",\n\n zroOffice: \"Yamuna Vihar\",\n\n assemblyConstituency: \"Mustafabad AC 69\",\n\n activeDemand: 323753,\n\n pppZones: 18185,\n\n inactiveDemand: 50575,\n },\n\n {\n agency: \"Agency 3\",\n\n district: \"South East District\",\n\n cluster: \"Kalkaji AC 51\",\n\n assignedConnections: 29188,\n\n location: \"29188\",\n\n zroOffice: \"Kalkaji AC 51\",\n\n assemblyConstituency: \"Saket\",\n\n activeDemand: 136102,\n\n pppZones: 3675,\n\n inactiveDemand: 23977,\n },\n\n {\n agency: \"Agency 3\",\n\n district: \"South East District\",\n\n cluster: \"Okhla\",\n\n assignedConnections: 18473,\n\n location: \"18473\",\n\n zroOffice: \"Sarita Vihar/Okhla\",\n\n assemblyConstituency: \"Okhla AC 54\",\n\n activeDemand: 136102,\n\n pppZones: 3703,\n\n inactiveDemand: 23977,\n },\n ],\n },\n ],\n};\n","// import React from \"react\";\n// import { ResponsiveContainer, LineChart, Line, XAxis, YAxis, Tooltip, CartesianGrid, Legend } from \"recharts\";\n\n// const ExecutiveLineChart = ({ data = [], dataKey = \"completed\", name = \"Value\" }) => {\n// return (\n// <div className=\"chart-card\" style={{ minHeight: 320 }}>\n// <ResponsiveContainer width=\"100%\" height={320}>\n// <LineChart data={data} margin={{ top: 12, right: 16, left: 0, bottom: 0 }}>\n// <CartesianGrid stroke=\"rgba(148, 163, 184, 0.12)\" strokeDasharray=\"4 4\" />\n// <XAxis dataKey=\"label\" axisLine={false} tickLine={false} tick={{ fill: \"#cbd5e1\" }} />\n// <YAxis axisLine={false} tickLine={false} tick={{ fill: \"#cbd5e1\" }} />\n// <Tooltip contentStyle={{ background: \"#0f172a\", border: \"none\", borderRadius: 14, color: \"#f8fafc\" }} itemStyle={{ color: \"#f8fafc\" }} />\n// <Legend verticalAlign=\"top\" align=\"right\" iconType=\"circle\" wrapperStyle={{ color: \"#cbd5e1\" }} />\n// <Line\n// type=\"monotone\"\n// dataKey={dataKey}\n// name={name}\n// stroke=\"#38bdf8\"\n// strokeWidth={3}\n// dot={{ r: 4 }}\n// activeDot={{ r: 6, strokeWidth: 2, fill: \"#60a5fa\" }}\n// />\n// </LineChart>\n// </ResponsiveContainer>\n// </div>\n// );\n// };\n\n// export default ExecutiveLineChart;\n\nimport React from \"react\";\nimport { ResponsiveContainer, LineChart, Line, XAxis, YAxis, Tooltip, CartesianGrid, Legend } from \"recharts\";\n\nconst ExecutiveLineChart = ({ data = [] }) => {\n const formattedData = data.map((item) => ({\n ...item,\n\n agencyKyc: item.completed || 0,\n\n selfKyc: Math.round((item.completed || 0) * 0.42),\n\n totalKyc: (item.completed || 0) + Math.round((item.completed || 0) * 0.42),\n }));\n\n return (\n <div className=\"chart-card executive-line-chart\">\n <ResponsiveContainer width=\"100%\" height={340}>\n <LineChart\n data={formattedData}\n margin={{\n top: 20,\n right: 12,\n left: 0,\n bottom: 0,\n }}\n >\n <CartesianGrid stroke=\"#e2e8f0\" strokeDasharray=\"3 3\" vertical={false} />\n\n <XAxis\n dataKey=\"label\"\n axisLine={false}\n tickLine={false}\n tick={{\n fill: \"#64748b\",\n fontSize: 12,\n fontWeight: 600,\n }}\n />\n\n <YAxis\n axisLine={false}\n tickLine={false}\n tick={{\n fill: \"#64748b\",\n fontSize: 12,\n }}\n />\n\n <Tooltip\n cursor={{\n stroke: \"#cbd5e1\",\n strokeWidth: 1,\n }}\n contentStyle={{\n background: \"#ffffff\",\n border: \"1px solid #e2e8f0\",\n borderRadius: 18,\n boxShadow: \"0 10px 30px rgba(15,23,42,0.08)\",\n }}\n labelStyle={{\n color: \"#0f172a\",\n fontWeight: 700,\n marginBottom: 10,\n }}\n />\n\n <Legend\n verticalAlign=\"top\"\n align=\"right\"\n iconType=\"circle\"\n wrapperStyle={{\n paddingBottom: 18,\n color: \"#475569\",\n fontWeight: 600,\n }}\n />\n\n {/* TOTAL */}\n\n <Line\n type=\"monotone\"\n dataKey=\"totalKyc\"\n name=\"Total eKYC\"\n stroke=\"#0f172a\"\n strokeWidth={4}\n dot={false}\n activeDot={{\n r: 6,\n }}\n />\n\n {/* AGENCY */}\n\n <Line\n type=\"monotone\"\n dataKey=\"agencyKyc\"\n name=\"Agency eKYC\"\n stroke=\"#3b82f6\"\n strokeWidth={3}\n dot={{\n r: 3,\n }}\n activeDot={{\n r: 6,\n }}\n />\n\n {/* SELF */}\n\n <Line\n type=\"monotone\"\n dataKey=\"selfKyc\"\n name=\"Self eKYC\"\n stroke=\"#10b981\"\n strokeWidth={3}\n dot={{\n r: 3,\n }}\n activeDot={{\n r: 6,\n }}\n />\n </LineChart>\n </ResponsiveContainer>\n </div>\n );\n};\n\nexport default ExecutiveLineChart;\n","import React from \"react\";\nimport { ResponsiveContainer, BarChart, Bar, XAxis, YAxis, Tooltip, CartesianGrid, Legend } from \"recharts\";\n\nconst ExecutiveBarChart = ({ data = [], categories = [], xKey = \"label\" }) => {\n return (\n <div className=\"chart-card\" style={{ minHeight: 320 }}>\n <ResponsiveContainer width=\"100%\" height={320}>\n <BarChart data={data} margin={{ top: 12, right: 16, left: 0, bottom: 0 }}>\n <CartesianGrid stroke=\"rgba(148, 163, 184, 0.12)\" strokeDasharray=\"4 4\" />\n <XAxis dataKey={xKey} axisLine={false} tickLine={false} tick={{ fill: \"#cbd5e1\" }} />\n <YAxis axisLine={false} tickLine={false} tick={{ fill: \"#cbd5e1\" }} />\n <Tooltip contentStyle={{ background: \"#0f172a\", border: \"none\", borderRadius: 14 }} itemStyle={{ color: \"#f8fafc\" }} />\n <Legend verticalAlign=\"top\" align=\"right\" iconType=\"circle\" wrapperStyle={{ color: \"#cbd5e1\" }} />\n {categories.map((series, index) => (\n <Bar\n key={series.key}\n dataKey={series.key}\n name={series.name}\n fill={index === 0 ? \"#34d399\" : \"#60a5fa\"}\n radius={[12, 12, 0, 0]}\n barSize={24}\n />\n ))}\n </BarChart>\n </ResponsiveContainer>\n </div>\n );\n};\n\nexport default ExecutiveBarChart;\n","import React from \"react\";\nimport { ResponsiveContainer, PieChart, Pie, Cell, Tooltip, Legend } from \"recharts\";\n\nconst colors = [\"#22c55e\", \"#38bdf8\", \"#f97316\", \"#facc15\", \"#f43f5e\"];\n\nconst ExecutivePieChart = ({ data = [], dataKey = \"value\", labelKey = \"label\" }) => {\n return (\n <div className=\"chart-card\" style={{ minHeight: 320 }}>\n <ResponsiveContainer width=\"100%\" height={320}>\n <PieChart>\n <Pie data={data} dataKey={dataKey} nameKey={labelKey} cx=\"50%\" cy=\"50%\" outerRadius={110} innerRadius={60} paddingAngle={3} label={{ fill: \"#f8fafc\", fontSize: 12 }}>\n {data.map((entry, index) => (\n <Cell key={`cell-${index}`} fill={colors[index % colors.length]} />\n ))}\n </Pie>\n <Tooltip contentStyle={{ background: \"#0f172a\", border: \"none\", borderRadius: 14, color: \"#f8fafc\" }} />\n <Legend verticalAlign=\"bottom\" align=\"center\" iconType=\"circle\" wrapperStyle={{ color: \"#cbd5e1\", marginTop: 10 }} />\n </PieChart>\n </ResponsiveContainer>\n </div>\n );\n};\n\nexport default ExecutivePieChart;\n","import React, { useMemo, useState } from \"react\";\nimport { useHistory, useLocation } from \"react-router-dom\";\nimport {\n FaChartLine,\n FaUsers,\n FaCheckCircle,\n FaClock,\n FaExclamationTriangle,\n FaUserTie,\n FaMapMarkedAlt,\n FaSearch,\n FaArrowRight,\n} from \"react-icons/fa\";\nimport { ekycMockData } from \"./mockData\";\nimport ExecutiveLineChart from \"./analytics/charts/ExecutiveLineChart\";\nimport ExecutiveBarChart from \"./analytics/charts/ExecutiveBarChart\";\nimport ExecutivePieChart from \"./analytics/charts/ExecutivePieChart\";\n\nconst CeoDashboard = () => {\n const history = useHistory();\n const location = useLocation();\n const [query, setQuery] = useState(\"\");\n const [statusFilter, setStatusFilter] = useState(\"All\");\n\n const basePath = location.pathname.replace(/\\/ceo-dashboard$/, \"\");\n const filters = [\"All\", \"High Priority\", \"Stable\", \"Watchlist\"];\n\n const vendors = useMemo(() => ekycMockData.vendors || [], []);\n const topKpis = useMemo(() => ekycMockData.topKpis || {}, []);\n const dailyTrend = useMemo(() => ekycMockData.dailyTrend || [], []);\n const selfVsAgency = useMemo(() => ekycMockData.selfVsAgency || [], []);\n const pendingVsCompleted = useMemo(() => ekycMockData.pendingVsCompleted || [], []);\n // const rejectionAnalysis = ekycMockData.rejectionAnalysis || [];\n\n const filteredVendors = useMemo(() => {\n return vendors\n .filter((vendor) => {\n if (statusFilter === \"High Priority\") return vendor.successRate < 70;\n if (statusFilter === \"Watchlist\") return vendor.pending > 35000;\n if (statusFilter === \"Stable\") return vendor.successRate >= 70;\n return true;\n })\n .filter((vendor) => {\n if (!query) return true;\n const keyword = query.toLowerCase();\n return (\n vendor.name.toLowerCase().includes(keyword) ||\n vendor.jurisdictions.some((zone) => zone.toLowerCase().includes(keyword)) ||\n vendor.zones.some((zone) => zone.location?.toLowerCase().includes(keyword))\n );\n });\n }, [vendors, query, statusFilter]);\n\n const zoneRows = useMemo(() => {\n return vendors\n .flatMap((vendor) => vendor.zones.map((zone) => ({ ...zone, agency: vendor.name })))\n .filter((row) => row.location)\n .sort((a, b) => (b.activeDemand || 0) - (a.activeDemand || 0));\n }, [vendors]);\n\n const alerts = [\n \"North East District has 22% more pending accounts than last week\",\n \"Agency 2 has a 12% improvement opportunity in Self eKYC adoption\",\n \"Urgent: 18 supervisor escalations raised for NWS Bhera Enclave\",\n \"Risk alert: Rejection trends are rising in Outer North clusters\",\n ];\n\n const routeToVendor = (vendorId) => {\n history.push(`${basePath}/vendors/${vendorId}`);\n };\n\n return (\n <div className=\"ekyc-dashboard-wrapper\">\n <div className=\"dashboard-shell\">\n <section className=\"kpi-grid\">\n {[\n {\n title: \"Total Water Connections\",\n value: topKpis.totalWaterConnections,\n icon: <FaUsers />,\n variant: \"primary\",\n },\n {\n title: \"Total eKYC Completed\",\n value: topKpis.totalEkycCompleted,\n icon: <FaCheckCircle />,\n variant: \"success\",\n },\n {\n title: \"Total Pending\",\n value: topKpis.totalPending,\n icon: <FaClock />,\n variant: \"warning\",\n },\n {\n title: \"Total Rejected\",\n value: topKpis.totalRejected,\n icon: <FaExclamationTriangle />,\n variant: \"danger\",\n },\n {\n title: \"Agency eKYC Completed\",\n value: topKpis.agencyEkycCompleted,\n icon: <FaUserTie />,\n variant: \"info\",\n },\n {\n title: \"Citizen Self eKYC Completed\",\n value: topKpis.citizenSelfEkycCompleted,\n icon: <FaUsers />,\n variant: \"secondary\",\n },\n {\n title: \"Today's eKYC\",\n value: topKpis.todaysEkyc,\n icon: <FaChartLine />,\n variant: \"muted\",\n },\n {\n title: \"Success Rate\",\n value: `${topKpis.successRate}%`,\n icon: <FaCheckCircle />,\n variant: \"success\",\n },\n {\n title: \"Rejection Percentage\",\n value: `${topKpis.rejectionPercentage}%`,\n icon: <FaExclamationTriangle />,\n variant: \"danger\",\n },\n ].map((card) => (\n <article key={card.title} className={`kpi-card card-${card.variant}`}>\n <div className=\"kpi-icon\">{card.icon}</div>\n <div>\n <p className=\"kpi-title\">{card.title}</p>\n <h2>{card.value?.toLocaleString?.() ?? card.value}</h2>\n </div>\n </article>\n ))}\n </section>\n\n <section className=\"vendor-section\">\n <div className=\"section-top\">\n <div>\n <h2>Agency Performance Snapshot</h2>\n <p>Search, filter, and navigate into detailed analytics for every assigned vendor.</p>\n </div>\n <div className=\"vendor-filters\">\n <div className=\"search-box\">\n <FaSearch />\n <input type=\"text\" placeholder=\"Search agency, jurisdiction, location\" value={query} onChange={(e) => setQuery(e.target.value)} />\n </div>\n <div className=\"status-pill-group\">\n {filters.map((status) => (\n <button key={status} className={`status-pill ${statusFilter === status ? \"active\" : \"\"}`} onClick={() => setStatusFilter(status)}>\n {status}\n </button>\n ))}\n </div>\n </div>\n </div>\n\n <div className=\"vendor-grid\">\n {filteredVendors.map((vendor) => (\n <div key={vendor.id} className=\"vendor-card glass-card\" onClick={() => routeToVendor(vendor.id)}>\n <div className=\"vendor-card-top\">\n <div>\n <p className=\"vendor-chip\">{vendor.name}</p>\n <h3>{vendor.assignedConnections.toLocaleString()}</h3>\n <p className=\"vendor-subtitle\">Assigned connections across {vendor.jurisdictions.length} jurisdiction(s)</p>\n </div>\n <div className=\"vendor-progress-value\">{vendor.progress}%</div>\n </div>\n <div className=\"progress-bar\">\n <div className=\"progress-fill\" style={{ width: `${vendor.progress}%` }} />\n </div>\n <div className=\"vendor-stats-grid\">\n <div>\n <strong>{vendor.completedEkyc.toLocaleString()}</strong>\n <span>Agency eKYC</span>\n </div>\n <div>\n <strong>{vendor.selfEkyc.toLocaleString()}</strong>\n <span>Self eKYC</span>\n </div>\n <div>\n <strong>{vendor.pending.toLocaleString()}</strong>\n <span>Pending</span>\n </div>\n <div>\n <strong>{vendor.rejected.toLocaleString()}</strong>\n <span>Rejected</span>\n </div>\n </div>\n <div className=\"vendor-card-footer\">\n <span>{vendor.activeSurveyors} Surveyors</span>\n <span>{vendor.supervisors} Supervisors</span>\n <span>{vendor.jurisdictions.join(\", \")}</span>\n </div>\n <div className=\"vendor-card-action\">\n <span>Explore analytics</span>\n <FaArrowRight />\n </div>\n </div>\n ))}\n </div>\n </section>\n\n <section className=\"analytics-grid\">\n <div className=\"analytics-panel glass-card\">\n <div className=\"section-header\">\n <h2>Daily eKYC Trend</h2>\n <span className=\"badge success\">Live index</span>\n </div>\n <ExecutiveLineChart data={dailyTrend} dataKey=\"completed\" name=\"Completed\" />\n </div>\n\n <div className=\"analytics-panel glass-card\">\n <div className=\"section-header\">\n <h2>Self vs Agency eKYC</h2>\n <span className=\"badge info\">Adoption</span>\n </div>\n <ExecutiveBarChart\n data={selfVsAgency}\n categories={[\n { key: \"agency\", name: \"Agency\" },\n { key: \"citizen\", name: \"Citizen\" },\n ]}\n />\n </div>\n\n <div className=\"analytics-panel glass-card\">\n <div className=\"section-header\">\n <h2>Pending vs Completed</h2>\n <span className=\"badge warning\">Operational pulse</span>\n </div>\n <ExecutivePieChart data={pendingVsCompleted} dataKey=\"completed\" labelKey=\"label\" />\n </div>\n </section>\n\n <section className=\"zone-section\">\n <div className=\"section-header\">\n <div>\n <h2>\n <FaMapMarkedAlt /> Jurisdiction Performance\n </h2>\n <p>Top zones evaluated from the full agency dataset.</p>\n </div>\n <button className=\"secondary-button\">Export Zone Data</button>\n </div>\n\n <div className=\"table-wrapper glass-card\">\n <table>\n <thead>\n <tr>\n <th>Agency</th>\n <th>Location</th>\n <th>District</th>\n <th>Assigned</th>\n <th>Agency eKYC</th>\n <th>Pending</th>\n <th>Progress</th>\n </tr>\n </thead>\n <tbody>\n {zoneRows.slice(0, 10).map((zone, index) => (\n <tr key={`${zone.agency}-${zone.location}-${index}`}>\n <td>{zone.agency}</td>\n <td>{zone.location}</td>\n <td>{zone.district || zone.cluster}</td>\n <td>{zone.activeDemand?.toLocaleString() ?? \"—\"}</td>\n <td>{zone.pppZones?.toLocaleString() ?? \"—\"}</td>\n <td>{zone.inactiveDemand?.toLocaleString() ?? \"—\"}</td>\n <td>\n <span className=\"status-badge success\">\n {Math.min(100, Math.round(((zone.pppZones || 0) / Math.max(zone.activeDemand || 1, 1)) * 100))}%\n </span>\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n </section>\n\n <section className=\"bottom-grid\">\n <div className=\"alerts-panel glass-card\">\n <div className=\"section-header\">\n <h2>\n <FaExclamationTriangle /> Critical Alerts\n </h2>\n </div>\n <div className=\"alerts-list\">\n {alerts.map((alert) => (\n <div key={alert} className=\"alert-card\">\n <FaExclamationTriangle />\n <p>{alert}</p>\n </div>\n ))}\n </div>\n </div>\n\n <div className=\"efficiency-panel glass-card\">\n <div className=\"section-header\">\n <h2>\n <FaUserTie /> Workforce & Efficiency\n </h2>\n </div>\n <div className=\"efficiency-grid\">\n <div className=\"efficiency-box\">\n <h3>48</h3>\n <p>Supervisors Online</p>\n </div>\n <div className=\"efficiency-box\">\n <h3>168</h3>\n <p>Surveyors Active</p>\n </div>\n <div className=\"efficiency-box\">\n <h3>{topKpis.todayEkyc?.toLocaleString()}</h3>\n <p>eKYC Completed Today</p>\n </div>\n <div className=\"efficiency-box\">\n <h3>{topKpis.successRate}%</h3>\n <p>Operational Efficiency</p>\n </div>\n </div>\n </div>\n </section>\n </div>\n </div>\n );\n};\n\nexport default CeoDashboard;\n","import React, { useMemo } from \"react\";\nimport { useHistory, useParams } from \"react-router-dom\";\nimport { FaArrowLeft, FaUsers, FaCheckCircle, FaClock, FaExclamationTriangle, FaMapMarkedAlt } from \"react-icons/fa\";\nimport { ekycMockData } from \"./mockData\";\nimport ExecutiveLineChart from \"./analytics/charts/ExecutiveLineChart\";\nimport ExecutiveBarChart from \"./analytics/charts/ExecutiveBarChart\";\nimport ExecutivePieChart from \"./analytics/charts/ExecutivePieChart\";\nimport { Loader } from \"@djb25/digit-ui-react-components\";\n\nconst VendorDetails = () => {\n const history = useHistory();\n const { vendorId = 1 } = useParams();\n const vendor = useMemo(() => ekycMockData.vendors.find((item) => item.id === Number(vendorId)), [vendorId]);\n\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const { isLoading, data: dashboardData } = Digit.Hooks.ekyc.useEkycSurveyorDashboard(\n {},\n {\n tenantId,\n offset: 0,\n limit: 10,\n },\n {\n enabled: !!tenantId,\n }\n );\n\n if (!vendor) {\n return (\n <div className=\"ekyc-dashboard-wrapper\">\n <div className=\"dashboard-shell\">\n <div className=\"detail-header\">\n <button className=\"back-button\" onClick={() => history.goBack()}>\n <FaArrowLeft /> Back\n </button>\n </div>\n <div className=\"empty-state\">\n <h2>Vendor analytics not found</h2>\n <p>The selected vendor does not exist in the current report. Please return to the dashboard.</p>\n </div>\n </div>\n </div>\n );\n }\n\n const zoneRows = vendor.zones.slice(0, 8);\n\n const performanceData = vendor.dailyPerformance.map((row) => ({\n day: row.day,\n completed: row.completed,\n pending: row.pending,\n rejected: row.rejected,\n }));\n\n if (isLoading) <Loader />;\n\n return (\n <div className=\"ekyc-dashboard-wrapper\">\n <div className=\"dashboard-shell detail-shell\">\n <section className=\"kpi-grid detail-kpi-grid\">\n {[\n {\n label: \"Assigned Connections\",\n value: vendor.assignedConnections,\n icon: <FaUsers />,\n variant: \"primary\",\n },\n {\n label: \"Agency eKYC\",\n value: vendor.completedEkyc,\n icon: <FaCheckCircle />,\n variant: \"success\",\n },\n {\n label: \"Self eKYC\",\n value: vendor.selfEkyc,\n icon: <FaUsers />,\n variant: \"info\",\n },\n {\n label: \"Pending\",\n value: vendor.pending,\n icon: <FaClock />,\n variant: \"warning\",\n },\n {\n label: \"Rejected\",\n value: vendor.rejected,\n icon: <FaExclamationTriangle />,\n variant: \"danger\",\n },\n {\n label: \"Success Rate\",\n value: `${vendor.successRate}%`,\n icon: <FaCheckCircle />,\n variant: \"success\",\n },\n ].map((item) => (\n <article key={item.label} className={`kpi-card card-${item.variant}`}>\n <div className=\"kpi-icon\">{item.icon}</div>\n <div>\n <p className=\"kpi-title\">{item.label}</p>\n <h2>{item.value?.toLocaleString?.() ?? item.value}</h2>\n </div>\n </article>\n ))}\n </section>\n\n <section className=\"analytics-grid detail-analytics-grid\">\n <div className=\"analytics-panel glass-card\">\n <div className=\"section-header\">\n <h2>Daily Completion Trend</h2>\n <span className=\"badge success\">Performance</span>\n </div>\n <ExecutiveLineChart data={performanceData} dataKey=\"completed\" name=\"Completed\" />\n </div>\n\n <div className=\"analytics-panel glass-card\">\n <div className=\"section-header\">\n <h2>Pending vs Completed</h2>\n <span className=\"badge warning\">Workload</span>\n </div>\n <ExecutiveBarChart\n data={performanceData}\n categories={[\n { key: \"completed\", name: \"Completed\" },\n { key: \"pending\", name: \"Pending\" },\n ]}\n xKey=\"day\"\n />\n </div>\n\n <div className=\"analytics-panel glass-card\">\n <div className=\"section-header\">\n <h2>Self vs Agency Split</h2>\n <span className=\"badge info\">Adoption</span>\n </div>\n <ExecutivePieChart\n data={[\n { label: \"Agency eKYC\", value: vendor.completedEkyc },\n { label: \"Citizen Self eKYC\", value: vendor.selfEkyc },\n ]}\n dataKey=\"value\"\n labelKey=\"label\"\n />\n </div>\n </section>\n\n <section className=\"zone-section detail-zone-section\">\n <div className=\"section-header\">\n <div>\n <h2>\n <FaMapMarkedAlt /> Zone-wise Jurisdiction Analytics\n </h2>\n <p>Drill into the current operational load and heatmap intensity for this vendor.</p>\n </div>\n </div>\n <div className=\"table-wrapper glass-card\">\n <table>\n <thead>\n <tr>\n <th>Zone</th>\n <th>Cluster</th>\n <th>Assigned</th>\n <th>Agency eKYC</th>\n <th>Pending</th>\n <th>Activity Score</th>\n </tr>\n </thead>\n <tbody>\n {zoneRows.map((row, index) => (\n <tr key={`${row.location}-${index}`}>\n <td>{row.location}</td>\n <td>{row.cluster || row.district}</td>\n <td>{row.activeDemand?.toLocaleString() ?? \"—\"}</td>\n <td>{row.pppZones?.toLocaleString() ?? \"—\"}</td>\n <td>{row.inactiveDemand?.toLocaleString() ?? \"—\"}</td>\n <td>\n <span className={`status-badge ${row.intensityScore > 65 ? \"danger\" : row.intensityScore > 45 ? \"warning\" : \"success\"}`}>\n {row.intensityScore}%\n </span>\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n </section>\n\n <section className=\"bottom-grid detail-bottom-grid\">\n <div className=\"cards-summary glass-card\">\n <h2>Operational Efficiency</h2>\n <div className=\"efficiency-grid\">\n <div className=\"efficiency-box\">\n <h3>{vendor.activeSurveyors}</h3>\n <p>Active Surveyors</p>\n </div>\n <div className=\"efficiency-box\">\n <h3>{vendor.supervisors}</h3>\n <p>Supervisors</p>\n </div>\n <div className=\"efficiency-box\">\n <h3>{vendor.progress}%</h3>\n <p>Execution Rate</p>\n </div>\n <div className=\"efficiency-box\">\n <h3>{vendor.dailyPerformance.slice(-1)[0]?.completed?.toLocaleString()}</h3>\n <p>Latest Day Completed</p>\n </div>\n </div>\n </div>\n\n <div className=\"cards-summary glass-card\">\n <h2>Supervisor Pulse</h2>\n <div className=\"pulse-list\">\n {vendor.jurisdictions.map((zone) => (\n <div key={zone} className=\"pulse-row\">\n <span>{zone}</span>\n <span>{Math.max(12, Math.round(Math.random() * 38))} active</span>\n </div>\n ))}\n </div>\n </div>\n </section>\n </div>\n </div>\n );\n};\n\nexport default VendorDetails;\n","import React, { useState } from \"react\";\nimport { useHistory } from \"react-router-dom\";\nimport { useTranslation } from \"react-i18next\";\n\nconst useInboxTableConfig = ({\n parentRoute,\n onPageSizeChange,\n formState,\n totalCount,\n table,\n dispatch,\n checkPathName,\n onSortingByData,\n tenantId,\n inboxStyles = {},\n tableStyle = {},\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n const [selectedKno, setSelectedKno] = useState(\"\");\n const { data: reviewData, getReview } = Digit.Hooks.ekyc.useEkycAPI(\"review\", tenantId);\n const handleReview = (kno) => {\n setSelectedKno(kno);\n getReview({ kno });\n };\n\n const limit = formState?.tableForm?.limit || 10;\n const offset = formState?.tableForm?.offset || 0;\n const userType = Digit.SessionStorage.get(\"User\")?.info?.type?.toLowerCase() || \"citizen\";\n\n React.useEffect(() => {\n if (reviewData) {\n history.push(`/digit-ui/${userType}/ekyc/review/${selectedKno}`, { aadhaarData: reviewData?.aadhaarData, reviewData });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [reviewData]);\n\n const tableColumnConfig = [\n {\n Header: t(\"EKYC_APPLICATION_NO\"),\n accessor: \"applicationNumber\",\n disableSortBy: true,\n Cell: ({ row }) => {\n const kno = row.original?.kno || row.original?.applicationNumber || \"NA\";\n return (\n <span\n className=\"ekyc-application-link\"\n style={{ color: \"#add8f7\", cursor: \"pointer\", fontWeight: \"bold\" }}\n onClick={() => handleReview(kno)}\n >\n {kno}\n </span>\n );\n },\n },\n {\n Header: t(\"EKYC_CITIZEN_NAME\"),\n accessor: \"citizenName\",\n Cell: ({ row }) => <span>{row.original?.citizenName || \"NA\"}</span>,\n },\n {\n Header: t(\"EKYC_STATUS\"),\n accessor: \"actionStatus\",\n Cell: ({ row }) => {\n const status = row.original?.status || \"DEFAULT\";\n return <span className={`ekyc-status-tag ${status}`}>{t(`${status}`)}</span>;\n },\n },\n {\n Header: t(\"EKYC_EKYC_STATUS\"),\n accessor: \"ekycStatus\",\n Cell: ({ row }) => {\n const ekycStatus = row.original?.ekycStatus || row.original?.ekycstatus || \"NA\";\n return <span className={`ekyc-status-tag ${ekycStatus}`}>{t(`${ekycStatus}`)}</span>;\n },\n },\n {\n Header: t(\"EKYC_REVIEW\"),\n accessor: \"review\",\n Cell: ({ row }) => {\n const kno = row.original?.kno || row.original?.applicationNumber || \"NA\";\n return (\n <span\n className=\"ekyc-application-link\"\n style={{ color: \"#add8f7\", cursor: \"pointer\", fontWeight: \"bold\" }}\n onClick={() => handleReview(kno)}\n >\n {t(\"EKYC_REVIEW\")}\n </span>\n );\n },\n },\n ];\n\n return {\n getCellProps: (cellInfo) => {\n return {\n style: {\n padding: \"8px\",\n fontSize: \"12px\",\n },\n };\n },\n disableSort: false,\n autoSort: false,\n manualPagination: true,\n initSortId: \"applicationDate\",\n onPageSizeChange: onPageSizeChange,\n currentPage: offset,\n onNextPage: () =>\n dispatch({\n action: \"mutateTableForm\",\n data: { ...formState.tableForm, offset: parseInt(formState.tableForm?.offset) + 10 },\n checkPathName,\n }),\n onPrevPage: () =>\n dispatch({\n action: \"mutateTableForm\",\n data: { ...formState.tableForm, offset: parseInt(formState.tableForm?.offset) - 10 },\n checkPathName,\n }),\n pageSizeLimit: limit,\n onSort: onSortingByData,\n // sortParams: [{id: getValues(\"sortBy\"), desc: getValues(\"sortOrder\") === \"DESC\" ? true : false}],\n totalRecords: totalCount,\n onSearch: formState?.searchForm?.message,\n onLastPage: () =>\n dispatch({\n action: \"mutateTableForm\",\n data: { ...formState.tableForm, offset: Math.max(0, Math.ceil(totalCount / limit) - 10) },\n checkPathName,\n }),\n onFirstPage: () => dispatch({ action: \"mutateTableForm\", data: { ...formState.tableForm, offset: 0 }, checkPathName }),\n // globalSearch: {searchForItemsInTable},\n // searchQueryForTable,\n data: table,\n columns: tableColumnConfig,\n inboxStyles: { ...inboxStyles },\n tableStyle: { ...tableStyle },\n };\n};\n\nexport default useInboxTableConfig;\n","// A type of promise-like that resolves synchronously and supports only one observer\nexport const _Pact = /*#__PURE__*/(function() {\n\tfunction _Pact() {}\n\t_Pact.prototype.then = function(onFulfilled, onRejected) {\n\t\tconst result = new _Pact();\n\t\tconst state = this.s;\n\t\tif (state) {\n\t\t\tconst callback = state & 1 ? onFulfilled : onRejected;\n\t\t\tif (callback) {\n\t\t\t\ttry {\n\t\t\t\t\t_settle(result, 1, callback(this.v));\n\t\t\t\t} catch (e) {\n\t\t\t\t\t_settle(result, 2, e);\n\t\t\t\t}\n\t\t\t\treturn result;\n\t\t\t} else {\n\t\t\t\treturn this;\n\t\t\t}\n\t\t}\n\t\tthis.o = function(_this) {\n\t\t\ttry {\n\t\t\t\tconst value = _this.v;\n\t\t\t\tif (_this.s & 1) {\n\t\t\t\t\t_settle(result, 1, onFulfilled ? onFulfilled(value) : value);\n\t\t\t\t} else if (onRejected) {\n\t\t\t\t\t_settle(result, 1, onRejected(value));\n\t\t\t\t} else {\n\t\t\t\t\t_settle(result, 2, value);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t_settle(result, 2, e);\n\t\t\t}\n\t\t};\n\t\treturn result;\n\t}\n\treturn _Pact;\n})();\n\n// Settles a pact synchronously\nexport function _settle(pact, state, value) {\n\tif (!pact.s) {\n\t\tif (value instanceof _Pact) {\n\t\t\tif (value.s) {\n\t\t\t\tif (state & 1) {\n\t\t\t\t\tstate = value.s;\n\t\t\t\t}\n\t\t\t\tvalue = value.v;\n\t\t\t} else {\n\t\t\t\tvalue.o = _settle.bind(null, pact, state);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tif (value && value.then) {\n\t\t\tvalue.then(_settle.bind(null, pact, state), _settle.bind(null, pact, 2));\n\t\t\treturn;\n\t\t}\n\t\tpact.s = state;\n\t\tpact.v = value;\n\t\tconst observer = pact.o;\n\t\tif (observer) {\n\t\t\tobserver(pact);\n\t\t}\n\t}\n}\n\nexport function _isSettledPact(thenable) {\n\treturn thenable instanceof _Pact && thenable.s & 1;\n}\n\n// Converts argument to a function that always returns a Promise\nexport function _async(f) {\n\treturn function() {\n\t\tfor (var args = [], i = 0; i < arguments.length; i++) {\n\t\t\targs[i] = arguments[i];\n\t\t}\n\t\ttry {\n\t\t\treturn Promise.resolve(f.apply(this, args));\n\t\t} catch(e) {\n\t\t\treturn Promise.reject(e);\n\t\t}\n\t}\n}\n\n// Awaits on a value that may or may not be a Promise (equivalent to the await keyword in ES2015, with continuations passed explicitly)\nexport function _await(value, then, direct) {\n\tif (direct) {\n\t\treturn then ? then(value) : value;\n\t}\n\tif (!value || !value.then) {\n\t\tvalue = Promise.resolve(value);\n\t}\n\treturn then ? value.then(then) : value;\n}\n\n// Awaits on a value that may or may not be a Promise, then ignores it\nexport function _awaitIgnored(value, direct) {\n\tif (!direct) {\n\t\treturn value && value.then ? value.then(_empty) : Promise.resolve();\n\t}\n}\n\n// Proceeds after a value has resolved, or proceeds immediately if the value is not thenable\nexport function _continue(value, then) {\n\treturn value && value.then ? value.then(then) : then(value);\n}\n\n// Proceeds after a value has resolved, or proceeds immediately if the value is not thenable\nexport function _continueIgnored(value) {\n\tif (value && value.then) {\n\t\treturn value.then(_empty);\n\t}\n}\n\n// Asynchronously iterate through an object that has a length property, passing the index as the first argument to the callback (even as the length property changes)\nexport function _forTo(array, body, check) {\n\tvar i = -1, pact, reject;\n\tfunction _cycle(result) {\n\t\ttry {\n\t\t\twhile (++i < array.length && (!check || !check())) {\n\t\t\t\tresult = body(i);\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult.then(_cycle, reject || (reject = _settle.bind(null, pact = new _Pact(), 2)));\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (pact) {\n\t\t\t\t_settle(pact, 1, result);\n\t\t\t} else {\n\t\t\t\tpact = result;\n\t\t\t}\n\t\t} catch (e) {\n\t\t\t_settle(pact || (pact = new _Pact()), 2, e);\n\t\t}\n\t}\n\t_cycle();\n\treturn pact;\n}\n\n// Asynchronously iterate through an object's properties (including properties inherited from the prototype)\n// Uses a snapshot of the object's properties\nexport function _forIn(target, body, check) {\n\tvar keys = [];\n\tfor (var key in target) {\n\t\tkeys.push(key);\n\t}\n\treturn _forTo(keys, function(i) { return body(keys[i]); }, check);\n}\n\n// Asynchronously iterate through an object's own properties (excluding properties inherited from the prototype)\n// Uses a snapshot of the object's properties\nexport function _forOwn(target, body, check) {\n\tvar keys = [];\n\tfor (var key in target) {\n\t\tif (Object.prototype.hasOwnProperty.call(target, key)) {\n\t\t\tkeys.push(key);\n\t\t}\n\t}\n\treturn _forTo(keys, function(i) { return body(keys[i]); }, check);\n}\n\nexport const _iteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.iterator || (Symbol.iterator = Symbol(\"Symbol.iterator\"))) : \"@@iterator\";\n\n// Asynchronously iterate through an object's values\n// Uses for...of if the runtime supports it, otherwise iterates until length on a copy\nexport function _forOf(target, body, check) {\n\tif (typeof target[_iteratorSymbol] === \"function\") {\n\t\tvar iterator = target[_iteratorSymbol](), step, pact, reject;\n\t\tfunction _cycle(result) {\n\t\t\ttry {\n\t\t\t\twhile (!(step = iterator.next()).done && (!check || !check())) {\n\t\t\t\t\tresult = body(step.value);\n\t\t\t\t\tif (result && result.then) {\n\t\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tresult.then(_cycle, reject || (reject = _settle.bind(null, pact = new _Pact(), 2)));\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (pact) {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t} else {\n\t\t\t\t\tpact = result;\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t_settle(pact || (pact = new _Pact()), 2, e);\n\t\t\t}\n\t\t}\n\t\t_cycle();\n\t\tif (iterator.return) {\n\t\t\tvar _fixup = function(value) {\n\t\t\t\ttry {\n\t\t\t\t\tif (!step.done) {\n\t\t\t\t\t\titerator.return();\n\t\t\t\t\t}\n\t\t\t\t} catch(e) {\n\t\t\t\t}\n\t\t\t\treturn value;\n\t\t\t}\n\t\t\tif (pact && pact.then) {\n\t\t\t\treturn pact.then(_fixup, function(e) {\n\t\t\t\t\tthrow _fixup(e);\n\t\t\t\t});\n\t\t\t}\n\t\t\t_fixup();\n\t\t}\n\t\treturn pact;\n\t}\n\t// No support for Symbol.iterator\n\tif (!(\"length\" in target)) {\n\t\tthrow new TypeError(\"Object is not iterable\");\n\t}\n\t// Handle live collections properly\n\tvar values = [];\n\tfor (var i = 0; i < target.length; i++) {\n\t\tvalues.push(target[i]);\n\t}\n\treturn _forTo(values, function(i) { return body(values[i]); }, check);\n}\n\nexport const _asyncIteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.asyncIterator || (Symbol.asyncIterator = Symbol(\"Symbol.asyncIterator\"))) : \"@@asyncIterator\";\n\n// Asynchronously iterate on a value using it's async iterator if present, or its synchronous iterator if missing\nexport function _forAwaitOf(target, body, check) {\n\tif (typeof target[_asyncIteratorSymbol] === \"function\") {\n\t\tvar pact = new _Pact();\n\t\tvar iterator = target[_asyncIteratorSymbol]();\n\t\titerator.next().then(_resumeAfterNext).then(void 0, _reject);\n\t\treturn pact;\n\t\tfunction _resumeAfterBody(result) {\n\t\t\tif (check && check()) {\n\t\t\t\treturn _settle(pact, 1, iterator.return ? iterator.return().then(function() { return result; }) : result);\n\t\t\t}\n\t\t\titerator.next().then(_resumeAfterNext).then(void 0, _reject);\n\t\t}\n\t\tfunction _resumeAfterNext(step) {\n\t\t\tif (step.done) {\n\t\t\t\t_settle(pact, 1);\n\t\t\t} else {\n\t\t\t\tPromise.resolve(body(step.value)).then(_resumeAfterBody).then(void 0, _reject);\n\t\t\t}\n\t\t}\n\t\tfunction _reject(error) {\n\t\t\t_settle(pact, 2, iterator.return ? iterator.return().then(function() { return error; }) : error);\n\t\t}\n\t}\n\treturn Promise.resolve(_forOf(target, function(value) { return Promise.resolve(value).then(body); }, check));\n}\n\n// Asynchronously implement a generic for loop\nexport function _for(test, update, body) {\n\tvar stage;\n\tfor (;;) {\n\t\tvar shouldContinue = test();\n\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\tshouldContinue = shouldContinue.v;\n\t\t}\n\t\tif (!shouldContinue) {\n\t\t\treturn result;\n\t\t}\n\t\tif (shouldContinue.then) {\n\t\t\tstage = 0;\n\t\t\tbreak;\n\t\t}\n\t\tvar result = body();\n\t\tif (result && result.then) {\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.s;\n\t\t\t} else {\n\t\t\t\tstage = 1;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif (update) {\n\t\t\tvar updateValue = update();\n\t\t\tif (updateValue && updateValue.then && !_isSettledPact(updateValue)) {\n\t\t\t\tstage = 2;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\tvar pact = new _Pact();\n\tvar reject = _settle.bind(null, pact, 2);\n\t(stage === 0 ? shouldContinue.then(_resumeAfterTest) : stage === 1 ? result.then(_resumeAfterBody) : updateValue.then(_resumeAfterUpdate)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterBody(value) {\n\t\tresult = value;\n\t\tdo {\n\t\t\tif (update) {\n\t\t\t\tupdateValue = update();\n\t\t\t\tif (updateValue && updateValue.then && !_isSettledPact(updateValue)) {\n\t\t\t\t\tupdateValue.then(_resumeAfterUpdate).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\tshouldContinue = test();\n\t\t\tif (!shouldContinue || (_isSettledPact(shouldContinue) && !shouldContinue.v)) {\n\t\t\t\t_settle(pact, 1, result);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.v;\n\t\t\t}\n\t\t} while (!result || !result.then);\n\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t}\n\tfunction _resumeAfterTest(shouldContinue) {\n\t\tif (shouldContinue) {\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t} else {\n\t\t\t\t_resumeAfterBody(result);\n\t\t\t}\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n\tfunction _resumeAfterUpdate() {\n\t\tif (shouldContinue = test()) {\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t} else {\n\t\t\t\t_resumeAfterTest(shouldContinue);\n\t\t\t}\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n}\n\n// Asynchronously implement a do ... while loop\nexport function _do(body, test) {\n\tvar awaitBody;\n\tdo {\n\t\tvar result = body();\n\t\tif (result && result.then) {\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.v;\n\t\t\t} else {\n\t\t\t\tawaitBody = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tvar shouldContinue = test();\n\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\tshouldContinue = shouldContinue.v;\n\t\t}\n\t\tif (!shouldContinue) {\n\t\t\treturn result;\n\t\t}\n\t} while (!shouldContinue.then);\n\tconst pact = new _Pact();\n\tconst reject = _settle.bind(null, pact, 2);\n\t(awaitBody ? result.then(_resumeAfterBody) : shouldContinue.then(_resumeAfterTest)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterBody(value) {\n\t\tresult = value;\n\t\tfor (;;) {\n\t\t\tshouldContinue = test();\n\t\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\t\tshouldContinue = shouldContinue.v;\n\t\t\t}\n\t\t\tif (!shouldContinue) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\tresult = result.v;\n\t\t\t\t} else {\n\t\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t_settle(pact, 1, result);\n\t}\n\tfunction _resumeAfterTest(shouldContinue) {\n\t\tif (shouldContinue) {\n\t\t\tdo {\n\t\t\t\tresult = body();\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tshouldContinue = test();\n\t\t\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\t\t\tshouldContinue = shouldContinue.v;\n\t\t\t\t}\n\t\t\t\tif (!shouldContinue) {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} while (!shouldContinue.then);\n\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n}\n\n// Asynchronously implement a switch statement\nexport function _switch(discriminant, cases) {\n\tvar dispatchIndex = -1;\n\tvar awaitBody;\n\touter: {\n\t\tfor (var i = 0; i < cases.length; i++) {\n\t\t\tvar test = cases[i][0];\n\t\t\tif (test) {\n\t\t\t\tvar testValue = test();\n\t\t\t\tif (testValue && testValue.then) {\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\t\t\t\tif (testValue === discriminant) {\n\t\t\t\t\tdispatchIndex = i;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Found the default case, set it as the pending dispatch case\n\t\t\t\tdispatchIndex = i;\n\t\t\t}\n\t\t}\n\t\tif (dispatchIndex !== -1) {\n\t\t\tdo {\n\t\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\t\twhile (!body) {\n\t\t\t\t\tdispatchIndex++;\n\t\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t\t}\n\t\t\t\tvar result = body();\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tawaitBody = true;\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\t\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\t\tdispatchIndex++;\n\t\t\t} while (fallthroughCheck && !fallthroughCheck());\n\t\t\treturn result;\n\t\t}\n\t}\n\tconst pact = new _Pact();\n\tconst reject = _settle.bind(null, pact, 2);\n\t(awaitBody ? result.then(_resumeAfterBody) : testValue.then(_resumeAfterTest)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterTest(value) {\n\t\tfor (;;) {\n\t\t\tif (value === discriminant) {\n\t\t\t\tdispatchIndex = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (++i === cases.length) {\n\t\t\t\tif (dispatchIndex !== -1) {\n\t\t\t\t\tbreak;\n\t\t\t\t} else {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\ttest = cases[i][0];\n\t\t\tif (test) {\n\t\t\t\tvalue = test();\n\t\t\t\tif (value && value.then) {\n\t\t\t\t\tvalue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tdispatchIndex = i;\n\t\t\t}\n\t\t}\n\t\tdo {\n\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\twhile (!body) {\n\t\t\t\tdispatchIndex++;\n\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t}\n\t\t\tvar result = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\tdispatchIndex++;\n\t\t} while (fallthroughCheck && !fallthroughCheck());\n\t\t_settle(pact, 1, result);\n\t}\n\tfunction _resumeAfterBody(result) {\n\t\tfor (;;) {\n\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\tif (!fallthroughCheck || fallthroughCheck()) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdispatchIndex++;\n\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\twhile (!body) {\n\t\t\t\tdispatchIndex++;\n\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\t_settle(pact, 1, result);\n\t}\n}\n\n// Asynchronously call a function and pass the result to explicitly passed continuations\nexport function _call(body, then, direct) {\n\tif (direct) {\n\t\treturn then ? then(body()) : body();\n\t}\n\ttry {\n\t\tvar result = Promise.resolve(body());\n\t\treturn then ? result.then(then) : result;\n\t} catch (e) {\n\t\treturn Promise.reject(e);\n\t}\n}\n\n// Asynchronously call a function and swallow the result\nexport function _callIgnored(body, direct) {\n\treturn _call(body, _empty, direct);\n}\n\n// Asynchronously call a function and pass the result to explicitly passed continuations\nexport function _invoke(body, then) {\n\tvar result = body();\n\tif (result && result.then) {\n\t\treturn result.then(then);\n\t}\n\treturn then(result);\n}\n\n// Asynchronously call a function and swallow the result\nexport function _invokeIgnored(body) {\n\tvar result = body();\n\tif (result && result.then) {\n\t\treturn result.then(_empty);\n\t}\n}\n\n// Asynchronously call a function and send errors to recovery continuation\nexport function _catch(body, recover) {\n\ttry {\n\t\tvar result = body();\n\t} catch(e) {\n\t\treturn recover(e);\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(void 0, recover);\n\t}\n\treturn result;\n}\n\n// Asynchronously await a promise and pass the result to a finally continuation\nexport function _finallyRethrows(body, finalizer) {\n\ttry {\n\t\tvar result = body();\n\t} catch (e) {\n\t\treturn finalizer(true, e);\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(finalizer.bind(null, false), finalizer.bind(null, true));\n\t}\n\treturn finalizer(false, result);\n}\n\n// Asynchronously await a promise and invoke a finally continuation that always overrides the result\nexport function _finally(body, finalizer) {\n\ttry {\n\t\tvar result = body();\n\t} catch (e) {\n\t\treturn finalizer();\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(finalizer, finalizer);\n\t}\n\treturn finalizer();\n}\n\n// Rethrow or return a value from a finally continuation\nexport function _rethrow(thrown, value) {\n\tif (thrown)\n\t\tthrow value;\n\treturn value;\n}\n\n// Empty function to implement break and other control flow that ignores asynchronous results\nexport function _empty() {\n}\n\n// Sentinel value for early returns in generators \nexport const _earlyReturn = /*#__PURE__*/ {};\n\n// Asynchronously call a function and send errors to recovery continuation, skipping early returns\nexport function _catchInGenerator(body, recover) {\n\treturn _catch(body, function(e) {\n\t\tif (e === _earlyReturn) {\n\t\t\tthrow e;\n\t\t}\n\t\treturn recover(e);\n\t});\n}\n\n// Asynchronous generator class; accepts the entrypoint of the generator, to which it passes itself when the generator should start\nexport const _AsyncGenerator = /*#__PURE__*/(function() {\n\tfunction _AsyncGenerator(entry) {\n\t\tthis._entry = entry;\n\t\tthis._pact = null;\n\t\tthis._resolve = null;\n\t\tthis._return = null;\n\t\tthis._promise = null;\n\t}\n\n\tfunction _wrapReturnedValue(value) {\n\t\treturn { value: value, done: true };\n\t}\n\tfunction _wrapYieldedValue(value) {\n\t\treturn { value: value, done: false };\n\t}\n\n\t_AsyncGenerator.prototype._yield = function(value) {\n\t\t// Yield the value to the pending next call\n\t\tthis._resolve(value && value.then ? value.then(_wrapYieldedValue) : _wrapYieldedValue(value));\n\t\t// Return a pact for an upcoming next/return/throw call\n\t\treturn this._pact = new _Pact();\n\t};\n\t_AsyncGenerator.prototype.next = function(value) {\n\t\t// Advance the generator, starting it if it has yet to be started\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tconst _entry = _this._entry;\n\t\t\t\tif (_entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the next call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Start the generator\n\t\t\t\t_this._entry = null;\n\t\t\t\t_this._resolve = resolve;\n\t\t\t\tfunction returnValue(value) {\n\t\t\t\t\t_this._resolve(value && value.then ? value.then(_wrapReturnedValue) : _wrapReturnedValue(value));\n\t\t\t\t\t_this._pact = null;\n\t\t\t\t\t_this._resolve = null;\n\t\t\t\t}\n\t\t\t\tvar result = _entry(_this);\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tresult.then(returnValue, function(error) {\n\t\t\t\t\t\tif (error === _earlyReturn) {\n\t\t\t\t\t\t\treturnValue(_this._return);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst pact = new _Pact();\n\t\t\t\t\t\t\t_this._resolve(pact);\n\t\t\t\t\t\t\t_this._pact = null;\n\t\t\t\t\t\t\t_this._resolve = null;\n\t\t\t\t\t\t\t_resolve(pact, 2, error);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\treturnValue(result);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Generator is started and a yield expression is pending, settle it\n\t\t\t\t_this._pact = null;\n\t\t\t\t_this._resolve = resolve;\n\t\t\t\t_settle(_pact, 1, value);\n\t\t\t}\n\t\t});\n\t};\n\t_AsyncGenerator.prototype.return = function(value) {\n\t\t// Early return from the generator if started, otherwise abandons the generator\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tif (_this._entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the return call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Generator is not started, abandon it and return the specified value\n\t\t\t\t_this._entry = null;\n\t\t\t\treturn resolve(value && value.then ? value.then(_wrapReturnedValue) : _wrapReturnedValue(value));\n\t\t\t}\n\t\t\t// Settle the yield expression with a rejected \"early return\" value\n\t\t\t_this._return = value;\n\t\t\t_this._resolve = resolve;\n\t\t\t_this._pact = null;\n\t\t\t_settle(_pact, 2, _earlyReturn);\n\t\t});\n\t};\n\t_AsyncGenerator.prototype.throw = function(error) {\n\t\t// Inject an exception into the pending yield expression\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve, reject) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tif (_this._entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the throw call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Generator is not started, abandon it and return a rejected Promise containing the error\n\t\t\t\t_this._entry = null;\n\t\t\t\treturn reject(error);\n\t\t\t}\n\t\t\t// Settle the yield expression with the value as a rejection\n\t\t\t_this._resolve = resolve;\n\t\t\t_this._pact = null;\n\t\t\t_settle(_pact, 2, error);\n\t\t});\n\t};\n\n\t_AsyncGenerator.prototype[_asyncIteratorSymbol] = function() {\n\t\treturn this;\n\t};\n\t\n\treturn _AsyncGenerator;\n})();\n","import React from \"react\";\nimport { Controller } from \"react-hook-form\";\nimport { CardLabelError, TextInput, CustomTooltip, Label } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\n\nconst SearchFormFieldsComponents = ({ searchFormState, controlSearchForm }) => {\n const { t } = useTranslation();\n const { errors } = searchFormState;\n\n return (\n <React.Fragment>\n {/* MOBILE NUMBER */}\n <span className=\"mobile-input\">\n <Label className=\"flex-roww flex-gap-2\">\n {t(\"EKYC_K.NUMBER\") || \"K Number\"}\n <CustomTooltip message={t(\"EKYC_MOBILE_NUMBER_MESSAGE\")} />\n </Label>\n\n <Controller\n name=\"kNumber\"\n control={controlSearchForm}\n defaultValue=\"\"\n rules={{\n pattern: {\n value: /^[0-9]{10}$/,\n message: t(\"ERR_INVALID_KNO\"),\n },\n }}\n render={({ onChange, value }) => <TextInput value={value || \"\"} onChange={(e) => onChange(e.target.value)} />}\n />\n\n {errors?.kNumber && <CardLabelError>{errors.kNumber.message}</CardLabelError>}\n </span>\n\n {/* K NAME */}\n {/* <span className=\"mobile-input\">\n <Label className=\"flex-roww flex-gap-2\">\n {t(\"EKYC_K_NAME\") || \"K Name\"}\n <CustomTooltip message={t(\"EKYC_K_NAME_MESSAGE\")} />\n </Label>\n\n <Controller\n name=\"kName\"\n control={controlSearchForm}\n defaultValue=\"\"\n render={({ onChange, value }) => <TextInput value={value || \"\"} onChange={(e) => onChange(e.target.value)} />}\n />\n\n {errors?.kName && <CardLabelError>{errors.kName.message}</CardLabelError>}\n </span> */}\n </React.Fragment>\n );\n};\n\nexport default SearchFormFieldsComponents;\n","import React, { useMemo, useCallback, useReducer } from \"react\";\nimport { useLocation } from \"react-router-dom\";\nimport { InboxComposer } from \"@djb25/digit-ui-react-components\";\nimport useInboxTableConfig from \"../../hook/useInboxTableConfig\";\nimport SearchFormFieldsComponents from \"../../components/SearchFormFieldsComponent\";\n\n// Mock data removed in favor of API integration\n\nconst Inbox = ({ parentRoute, businessService = \"EKYC\", initialStates = {}, filterComponent, isInbox }) => {\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const location = useLocation();\n\n const formInitValue = {\n filterForm: {},\n searchForm: {},\n tableForm: {\n limit: 10,\n offset: 0,\n sortBy: \"createdTime\",\n sortOrder: \"DESC\",\n },\n };\n\n const [formState, dispatch] = useReducer(formReducer, formInitValue);\n\n const filters = useMemo(() => {\n const searchForm = formState?.searchForm || {};\n return {\n ...searchForm,\n ...(searchForm.kNumber && { kno: searchForm.kNumber }),\n };\n }, [formState?.searchForm]);\n\n const queryParams = useMemo(() => {\n return {\n tenantId,\n offset: formState?.tableForm?.offset || 0,\n limit: formState?.tableForm?.limit || 10,\n };\n }, [tenantId, formState?.tableForm?.offset, formState?.tableForm?.limit]);\n\n const { isLoading: isListLoading, data: listData = {} } = Digit.Hooks.ekyc.useEkycApplicationList(filters, queryParams, {\n enabled: !!tenantId,\n keepPreviousData: true,\n });\n\n const searchDetails = useMemo(\n () => ({\n kno: formState?.searchForm?.kNumber || \"\",\n name: formState?.searchForm?.kName || \"\",\n }),\n [formState?.searchForm?.kNumber, formState?.searchForm?.kName]\n );\n\n const isSearchActive = !!(searchDetails.kno || searchDetails.name);\n\n const { isLoading: isSearchLoading, data: searchData } = Digit.Hooks.ekyc.useSearchConnection(\n {\n tenantId,\n details: searchDetails,\n },\n {\n enabled: !!tenantId && !!searchDetails.kno, // 🔥 important\n keepPreviousData: true,\n }\n );\n\n const sourceData = useMemo(() => {\n if (isSearchActive) {\n if (!searchData) return [];\n return [searchData];\n }\n\n return listData?.consumerList || [];\n }, [isSearchActive, searchData, listData]);\n\n const filteredData = useMemo(() => {\n return (sourceData || []).map((item) => {\n // ✅ detect search response\n const isSearchItem = !!item.connectionDetails;\n\n if (isSearchItem) {\n return {\n applicationNo: item.propertyInfo?.kno || \"\",\n connectionNo: item.propertyInfo?.kno || \"\",\n owner: item.connectionDetails?.consumerName || \"\",\n applicationNumber: item.propertyInfo?.kno || \"\",\n citizenName: item.connectionDetails?.consumerName || \"\",\n status: item.connectionDetails?.statusflag || \"\",\n ekycStatus: item.connectionDetails?.ekycStatus || item.connectionDetails?.ekycstatus || item.ekycStatus || item.ekycstatus || \"NA\",\n sla: 0,\n };\n }\n\n // ✅ dashboard mapping\n const fullName = [item.firstName, item.middleName, item.lastName].filter(Boolean).join(\" \");\n return {\n ...item,\n applicationNo: item.kno || item.applicationNumber || \"\",\n connectionNo: item.kno || \"\",\n owner: fullName || item.consumerName || item.citizenName || \"\",\n applicationNumber: item.kno || item.applicationNumber || \"\",\n citizenName: fullName || item.consumerName || item.citizenName || \"\",\n status: item.status || \"\",\n ekycStatus: item.ekycStatus || item.ekycstatus || \"NA\",\n sla: item.sla ?? 0,\n };\n });\n }, [sourceData]);\n\n const totalRecords = listData?.totalCount || 0;\n\n const checkPathName = location.pathname.includes(\"ekyc/inbox\");\n const PropsForInboxLinks = {\n headerText: checkPathName ? \"EKYC_MODULE\" : \"MODULE_SW\",\n };\n\n const SearchFormFields = useCallback(\n ({ registerRef, searchFormState, controlSearchForm }) => (\n <SearchFormFieldsComponents {...{ registerRef, searchFormState, controlSearchForm }} className=\"search\" />\n ),\n []\n );\n\n const tableOrderFormDefaultValues = {\n sortBy: \"createdTime\",\n limit: window.Digit.Utils.browser.isMobile() ? 50 : 10,\n offset: 0,\n sortOrder: \"DESC\",\n };\n\n const onSearchFormSubmit = (data) => {\n data.hasOwnProperty(\"\") && delete data?.[\"\"];\n dispatch({ action: \"mutateTableForm\", data: { ...tableOrderFormDefaultValues }, checkPathName });\n dispatch({ action: \"mutateSearchForm\", data, checkPathName });\n };\n\n const searchFormDefaultValues = {\n kNumber: \"\",\n applicationNumber: \"\",\n consumerNo: \"\",\n };\n\n const onSearchFormReset = (setSearchFormValue) => {\n setSearchFormValue(\"kNumber\", null);\n setSearchFormValue(\"applicationNumber\", null);\n setSearchFormValue(\"consumerNo\", null);\n dispatch({ action: \"mutateSearchForm\", data: searchFormDefaultValues });\n };\n\n const propsForSearchForm = {\n SearchFormFields,\n onSearchFormSubmit,\n searchFormDefaultValues: formState?.searchForm,\n resetSearchFormDefaultValues: searchFormDefaultValues,\n onSearchFormReset,\n className: \"search-form-wns-inbox\",\n };\n\n const FilterFormFields = useCallback(\n ({ registerRef, controlFilterForm, setFilterFormValue, getFilterFormValue }) => <React.Fragment></React.Fragment>,\n []\n );\n\n const propsForFilterForm = {\n FilterFormFields,\n onFilterFormSubmit: () => { },\n filterFormDefaultValues: \"\",\n resetFilterFormDefaultValues: \"\",\n onFilterFormReset: () => { },\n };\n\n function formReducer(state, payload) {\n const storageKey = payload.checkPathName ? \"EKYC.INBOX\" : \"EKYC.SW.INBOX\";\n\n // ✅ safety for SLA\n switch (payload.action) {\n case \"mutateSearchForm\":\n Digit.SessionStorage.set(storageKey, { ...state, searchForm: payload.data });\n return { ...state, searchForm: payload.data };\n\n case \"mutateFilterForm\":\n Digit.SessionStorage.set(storageKey, { ...state, filterForm: payload.data });\n return { ...state, filterForm: payload.data };\n\n case \"mutateTableForm\":\n Digit.SessionStorage.set(storageKey, { ...state, tableForm: payload.data });\n return { ...state, tableForm: payload.data };\n\n default:\n return state; // ✅ IMPORTANT\n }\n }\n\n const onPageSizeChange = (e) => {\n const newLimit = Number(e.target.value);\n\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n limit: newLimit,\n offset: 0, // reset page\n },\n checkPathName,\n });\n };\n\n const onSortingByData = (e) => {\n if (e.length > 0) {\n const [{ id, desc }] = e;\n const sortOrder = desc ? \"DESC\" : \"ASC\";\n const sortBy = id;\n\n if (!(formState.tableForm.sortBy === sortBy && formState.tableForm.sortOrder === sortOrder)) {\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n sortBy: id,\n sortOrder: desc ? \"DESC\" : \"ASC\",\n },\n checkPathName,\n });\n }\n }\n };\n\n const propsForInboxTable = useInboxTableConfig({\n ...{\n parentRoute,\n onPageSizeChange,\n formState,\n totalCount: totalRecords,\n table: filteredData,\n dispatch,\n onSortingByData,\n tenantId,\n checkPathName,\n inboxStyles: { overflowX: \"scroll\", overflowY: \"hidden\" },\n tableStyle: { width: \"70%\" },\n },\n });\n\n const isInboxLoading = isListLoading || isSearchLoading;\n\n return (\n <div className=\"app-container\">\n <InboxComposer\n {...{\n isInboxLoading,\n // PropsForInboxLinks,\n ...propsForSearchForm,\n // ...propsForFilterForm,\n // ...propsForMobileSortForm,\n propsForInboxTable,\n // propsForInboxMobileCards,\n formState,\n countData: listData,\n }}\n />\n </div>\n );\n};\n\nexport default Inbox;\n","import React, { useState, useMemo } from \"react\";\nimport {\n Header,\n Card,\n CardHeader,\n CardText,\n CardLabel,\n Dropdown,\n SubmitBar,\n ActionBar,\n Table,\n Toast,\n LabelFieldPair,\n Modal,\n DeleteIcon,\n EditIcon,\n} from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\n\n// ─── Static Mock Data ─────────────────────────────────────────────────────────\n\nconst MOCK_SURVEYORS = [\n { name: \"Amit Kumar\", id: \"SVR001\", role: \"Surveyor\" },\n { name: \"Sanjay Singh\", id: \"SVR002\", role: \"Surveyor\" },\n { name: \"Rahul Sharma\", id: \"SVR003\", role: \"Surveyor\" },\n { name: \"Priya Verma\", id: \"SVR004\", role: \"Surveyor\" },\n];\n\nconst MOCK_MRDS = [\n { name: \"MRD - 01 (Central Zone)\", code: \"MRD01\", zone: \"Central\" },\n { name: \"MRD - 02 (North Zone)\", code: \"MRD02\", zone: \"North\" },\n { name: \"MRD - 03 (South Zone)\", code: \"MRD03\", zone: \"South\" },\n { name: \"MRD - 04 (West Zone)\", code: \"MRD04\", zone: \"West\" },\n { name: \"MRD - 05 (East Zone)\", code: \"MRD05\", zone: \"East\" },\n { name: \"MRD - 06 (Rohini)\", code: \"MRD06\", zone: \"Rohini\" },\n { name: \"MRD - 07 (Dwarka)\", code: \"MRD07\", zone: \"Dwarka\" },\n];\n\n// ─── Main Component ───────────────────────────────────────────────────────────\n\nconst Mapping = () => {\n const { t } = useTranslation();\n\n // Form state\n const [selectedSurveyor, setSelectedSurveyor] = useState(null);\n const [selectedMRD, setSelectedMRD] = useState(null);\n\n // Mappings list\n const [mappings, setMappings] = useState([]);\n\n // Edit state: stores the id of the row being edited + its draft values\n const [editingId, setEditingId] = useState(null);\n const [editSurveyor, setEditSurveyor] = useState(null);\n const [editMRD, setEditMRD] = useState(null);\n\n // Delete confirm modal\n const [deleteTarget, setDeleteTarget] = useState(null);\n\n const [toast, setToast] = useState(null);\n\n // ── Handlers ──────────────────────────────────────────────────────────────\n\n const handleAddMapping = () => {\n if (!selectedSurveyor || !selectedMRD) {\n setToast({ type: \"error\", message: t(\"EKYC_SELECT_BOTH_ERROR\") || \"Please select both Surveyor and MRD\" });\n return;\n }\n const exists = mappings.some(\n m => m.surveyorId === selectedSurveyor.id && m.mrdCode === selectedMRD.code\n );\n if (exists) {\n setToast({ type: \"warning\", message: t(\"EKYC_MAPPING_EXISTS\") || \"This mapping already exists\" });\n return;\n }\n setMappings(prev => [...prev, {\n id: Date.now(),\n surveyorName: selectedSurveyor.name,\n surveyorId: selectedSurveyor.id,\n mrdName: selectedMRD.name,\n mrdCode: selectedMRD.code,\n zone: selectedMRD.zone,\n }]);\n setSelectedMRD(null);\n setSelectedSurveyor(null);\n setToast({ type: \"success\", message: t(\"EKYC_MAPPING_ADDED\") || \"Mapping added successfully\" });\n };\n\n const handleEditStart = (row) => {\n setEditingId(row.id);\n setEditSurveyor(MOCK_SURVEYORS.find(s => s.id === row.surveyorId) || null);\n setEditMRD(MOCK_MRDS.find(m => m.code === row.mrdCode) || null);\n };\n\n const handleEditSave = (id) => {\n if (!editSurveyor || !editMRD) {\n setToast({ type: \"error\", message: t(\"EKYC_SELECT_BOTH_ERROR\") || \"Please select both Surveyor and MRD to save\" });\n return;\n }\n // Check duplicate (excluding self)\n const duplicate = mappings.some(\n m => m.id !== id && m.surveyorId === editSurveyor.id && m.mrdCode === editMRD.code\n );\n if (duplicate) {\n setToast({ type: \"warning\", message: t(\"EKYC_MAPPING_EXISTS\") || \"This mapping already exists\" });\n return;\n }\n setMappings(prev => prev.map(m => m.id !== id ? m : {\n ...m,\n surveyorName: editSurveyor.name,\n surveyorId: editSurveyor.id,\n mrdName: editMRD.name,\n mrdCode: editMRD.code,\n zone: editMRD.zone,\n }));\n setEditingId(null);\n setToast({ type: \"success\", message: t(\"EKYC_MAPPING_UPDATED\") || \"Mapping updated successfully\" });\n };\n\n const handleEditCancel = () => {\n setEditingId(null);\n setEditSurveyor(null);\n setEditMRD(null);\n };\n\n const handleDeleteConfirm = () => {\n setMappings(prev => prev.filter(m => m.id !== deleteTarget.id));\n setDeleteTarget(null);\n setToast({ type: \"success\", message: t(\"EKYC_MAPPING_REMOVED\") || \"Mapping removed\" });\n };\n\n const handleSaveMappings = () => {\n if (mappings.length === 0) {\n setToast({ type: \"error\", message: t(\"EKYC_NO_MAPPINGS_TO_SAVE\") || \"No mappings to save\" });\n return;\n }\n // TODO: replace with real API call\n setToast({ type: \"success\", message: t(\"EKYC_MAPPINGS_SAVED_SUCCESS\") || \"Surveyor mappings saved successfully!\" });\n };\n\n // ── Table columns ─────────────────────────────────────────────────────────\n\n const columns = useMemo(() => [\n {\n Header: t(\"EKYC_SURVEYOR_NAME\") || \"Surveyor\",\n accessor: \"surveyorName\",\n Cell: ({ row }) => {\n const isEditing = editingId === row.original.id;\n if (isEditing) {\n return (\n <Dropdown\n selected={editSurveyor}\n select={setEditSurveyor}\n option={MOCK_SURVEYORS}\n optionKey=\"name\"\n t={t}\n placeholder={t(\"EKYC_SELECT_SURVEYOR_PLACEHOLDER\") || \"Choose surveyor...\"}\n />\n );\n }\n return (\n <div>\n <span className=\"link\">{row.original.surveyorName}</span>\n <div style={{ fontSize: \"12px\", color: \"#666\" }}>{row.original.surveyorId}</div>\n </div>\n );\n },\n },\n {\n Header: t(\"EKYC_MRD_ASSIGNED\") || \"MRD Assigned\",\n accessor: \"mrdName\",\n Cell: ({ row }) => {\n const isEditing = editingId === row.original.id;\n if (isEditing) {\n return (\n <Dropdown\n selected={editMRD}\n select={setEditMRD}\n option={MOCK_MRDS}\n optionKey=\"name\"\n t={t}\n placeholder={t(\"EKYC_SELECT_MRD_PLACEHOLDER\") || \"Choose MRD...\"}\n />\n );\n }\n return (\n <div>\n <span>{row.original.mrdName}</span>\n <div style={{ fontSize: \"12px\", color: \"#666\" }}>{row.original.zone}</div>\n </div>\n );\n },\n },\n {\n Header: t(\"ES_COMMON_ACTION\") || \"Actions\",\n Cell: ({ row }) => {\n const isEditing = editingId === row.original.id;\n if (isEditing) {\n return (\n <div style={{ display: \"flex\", gap: \"10px\" }}>\n <span\n style={{ cursor: \"pointer\", color: \"#f47738\", fontWeight: \"bold\" }}\n onClick={() => handleEditSave(row.original.id)}\n >\n {t(\"ES_COMMON_SAVE\")}\n </span>\n <span\n style={{ cursor: \"pointer\", color: \"#505A5F\", fontWeight: \"bold\" }}\n onClick={handleEditCancel}\n >\n {t(\"ES_COMMON_CANCEL\")}\n </span>\n </div>\n );\n }\n return (\n <div style={{ display: \"flex\", gap: \"16px\" }}>\n <span onClick={() => handleEditStart(row.original)} style={{ cursor: \"pointer\" }}>\n <EditIcon className=\"icon\" fill=\"#f47738\" />\n </span>\n <span onClick={() => setDeleteTarget(row.original)} style={{ cursor: \"pointer\" }}>\n <DeleteIcon className=\"icon\" fill=\"#f47738\" />\n </span>\n </div>\n );\n },\n },\n ], [editingId, editSurveyor, editMRD, mappings, t]);\n\n // ── Render ────────────────────────────────────────────────────────────────\n\n return (\n <React.Fragment>\n <div className=\"side-panel-item\">\n <Card className=\"employeeCard filter inboxLinks\" style={{ marginTop: \"16px\" }}>\n <div className=\"complaint-links-container\">\n <div className=\"header\" style={{ marginBottom: \"0px\" }}>\n <span className=\"logo\">\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M4 19.5A2.5 2.5 0 0 1 6.5 17H20\" stroke=\"white\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n <path d=\"M6.5 2H20V22H6.5A2.5 2.5 0 0 1 4 19.5V4.5A2.5 2.5 0 0 1 6.5 2Z\" stroke=\"white\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n </svg>\n </span>\n <span className=\"text\">{t(\"EKYC_SURVEYOR_MAPPING\") || \"Surveyor Mapping\"}</span>\n </div>\n </div>\n </Card>\n </div>\n\n <Card>\n <CardHeader>{t(\"EKYC_NEW_MAPPING\") || \"New Mapping\"}</CardHeader>\n <CardText>\n {t(\"EKYC_MAPPING_SUBHEADER\") || \"Assign Meter Reading Dairies to surveyors to manage their data access.\"}\n </CardText>\n\n <LabelFieldPair>\n <CardLabel>{t(\"EKYC_SELECT_SURVEYOR\") || \"Select Surveyor\"} *</CardLabel>\n <div className=\"\">\n <Dropdown\n selected={selectedSurveyor}\n select={setSelectedSurveyor}\n option={MOCK_SURVEYORS}\n optionKey=\"name\"\n t={t}\n placeholder={t(\"EKYC_SELECT_SURVEYOR_PLACEHOLDER\") || \"Choose a surveyor...\"}\n />\n </div>\n </LabelFieldPair>\n\n <LabelFieldPair>\n <CardLabel>{t(\"EKYC_SELECT_MRD\") || \"Select MRD\"} *</CardLabel>\n <div className=\"field\">\n <Dropdown\n selected={selectedMRD}\n select={setSelectedMRD}\n option={MOCK_MRDS}\n optionKey=\"name\"\n t={t}\n placeholder={t(\"EKYC_SELECT_MRD_PLACEHOLDER\") || \"Choose an MRD...\"}\n />\n </div>\n </LabelFieldPair>\n\n <div style={{ display: \"flex\", justifyContent: \"flex-end\", marginTop: \"24px\" }}>\n <SubmitBar\n label={t(\"EKYC_ADD_TO_LIST\") || \"Add to Mapping List\"}\n onSubmit={handleAddMapping}\n disabled={!selectedSurveyor || !selectedMRD}\n />\n </div>\n </Card>\n\n {mappings.length > 0 && (\n <Card>\n <CardHeader>\n {t(\"EKYC_MAPPING_SUMMARY\") || \"Mapping Summary\"} ({mappings.length})\n </CardHeader>\n <Table\n t={t}\n data={mappings}\n columns={columns}\n getCellProps={(cellInfo) => {\n return {\n style: {\n padding: \"10px\",\n fontSize: \"16px\",\n }\n };\n }}\n tableClassName=\"table digit-table\"\n />\n </Card>\n )}\n\n {mappings.length > 0 && (\n <ActionBar>\n <SubmitBar\n label={t(\"EKYC_SAVE_MAPPINGS\") || \"Save Mappings\"}\n onSubmit={handleSaveMappings}\n />\n </ActionBar>\n )}\n\n {deleteTarget && (\n <Modal\n headerBarMain={t(\"EKYC_REMOVE_MAPPING\") || \"Remove Mapping\"}\n headerBarEnd={\n <span onClick={() => setDeleteTarget(null)} style={{ cursor: \"pointer\", padding: \"8px\" }}>\n X\n </span>\n }\n actionSaveLabel={t(\"ES_COMMON_REMOVE\")}\n actionSaveOnSubmit={handleDeleteConfirm}\n actionCancelLabel={t(\"ES_COMMON_CANCEL\")}\n actionCancelOnSubmit={() => setDeleteTarget(null)}\n style={{ borderRadius: \"12px\" }}\n >\n <CardText style={{ marginTop: \"16px\", marginBottom: \"16px\" }}>\n {t(\"EKYC_REMOVE_MAPPING_CONFIRM_MSG\") || \"Are you sure you want to remove the mapping between \"}\n <strong>{deleteTarget?.surveyorName}</strong> and <strong>{deleteTarget?.mrdName}</strong>?\n </CardText>\n </Modal>\n )}\n\n {toast && (\n <Toast\n label={toast.message}\n error={toast.type === \"error\"}\n warning={toast.type === \"warning\"}\n info={toast.type === \"info\"}\n isDsc={true}\n onClose={() => setToast(null)}\n />\n )}\n </React.Fragment>\n );\n};\n\nexport default Mapping;","import React, { useState } from \"react\";\nimport { Loader, Modal, RadioButtons } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useRouteMatch } from \"react-router-dom\";\n\nconst ConnectionDetailsView = ({ kNumber, kName, connectionDetails, isLoading }) => {\n const { t } = useTranslation();\n const history = useHistory();\n const { path } = useRouteMatch();\n\n const [showModal, setShowModal] = useState(false);\n const [selectedOption, setSelectedOption] = useState({ code: \"SELF\", name: \"EKYC_SELF\" });\n\n const options = [\n { code: \"SELF\", name: \"EKYC_SELF\" },\n { code: \"OTHER\", name: \"EKYC_OTHER\" },\n ];\n\n const handleStartVerification = () => setShowModal(true);\n\n const onModalConfirm = () => {\n const parentPath = path.includes(\"/create-kyc\")\n ? path.replace(\"/create-kyc\", \"\")\n : path.replace(\"/k-details\", \"\");\n history.push(`${parentPath}/consumer-details`, { kNumber, selectedOption, connectionDetails });\n setShowModal(false);\n };\n\n if (isLoading) return <Loader />;\n if (!connectionDetails) return null;\n\n const details = connectionDetails?.connectionDetails || {};\n const statusFlag = details.statusflag || \"\";\n const isActive = statusFlag?.toLowerCase() === \"active\" || statusFlag === \"A\";\n\n return (\n <React.Fragment>\n <div className=\"ekyc-employee-container\">\n {/* Main Card */}\n <div className=\"connection-details-card\">\n {/* Card Header */}\n <div className=\"details-card-header\">\n <div className=\"header-title-wrapper\">\n <div className=\"header-icon-bg\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#3A7BD5\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <path d=\"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2\" />\n <circle cx=\"12\" cy=\"7\" r=\"4\" />\n </svg>\n </div>\n <span className=\"header-title-text\">\n {t(\"EKYC_K_NUMBER_DETAILS\") || \"Consumer Identity Details\"}\n </span>\n </div>\n\n {/* Status Badge */}\n <span className={`status-badge ${isActive ? \"active\" : \"inactive\"}`}>\n {isActive ? (t(\"EKYC_ACTIVE_CONNECTION\") || \"Active Connection\") : (statusFlag || t(\"CS_NA\"))}\n </span>\n </div>\n\n {/* Card Body */}\n <div className=\"details-card-body\">\n <div className=\"body-content-row\">\n {/* Left: Verification Parameters */}\n <div className=\"detail-section\">\n <div className=\"section-title\">\n {t(\"EKYC_VERIFICATION_PARAMETERS\") || \"Verification Parameters\"}\n </div>\n\n <div className=\"data-grid\">\n {/* Consumer Name */}\n <div className=\"data-item\">\n <div className=\"data-label\">\n {t(\"EKYC_CONSUMER_NAME\") || \"Consumer Name\"}\n </div>\n <div className=\"data-value\">\n {details.consumerName || kName || t(\"CS_NA\")}\n </div>\n </div>\n\n {/* K Number */}\n <div className=\"data-item\">\n <div className=\"data-label\">\n {t(\"EKYC_K_NUMBER\") || \"K Number\"}\n </div>\n <div className=\"data-value blue\">\n {kNumber || t(\"CS_NA\")}\n </div>\n </div>\n\n {/* Meter Serial No */}\n <div className=\"data-item\">\n <div className=\"data-label\">\n {t(\"EKYC_METER_NO\") || \"Meter Serial No.\"}\n </div>\n <div className=\"data-value\">\n {details.meterNumber || t(\"CS_NA\")}\n </div>\n </div>\n\n {/* Connection Type */}\n <div className=\"data-item\">\n <div className=\"data-label\">\n {t(\"EKYC_CONNECTION_TYPE\") || \"Connection Type\"}\n </div>\n <div className=\"data-value\">\n {details.connectionType || t(\"CS_NA\")}\n </div>\n </div>\n </div>\n </div>\n\n {/* Divider */}\n <div className=\"vertical-divider\" />\n\n {/* Right: Address & Contact */}\n <div className=\"detail-section\">\n <div className=\"section-title\">\n {t(\"EKYC_ADDRESS_AND_CONTACT\") || \"Address & Contact\"}\n </div>\n\n {/* Service Address */}\n <div className=\"address-block\">\n <div className=\"icon-wrapper-small\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#6B7B8E\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <path d=\"M21 10c0 7-9 13-9 13S3 17 3 10a9 9 0 0 1 18 0z\" />\n <circle cx=\"12\" cy=\"10\" r=\"3\" />\n </svg>\n </div>\n <div>\n <div className=\"data-label\">\n {t(\"EKYC_ADDRESS\") || \"Service Address\"}\n </div>\n <div className=\"address-text\">\n {details.address || t(\"CS_NA\")}\n </div>\n </div>\n </div>\n\n {/* Contact + Email row */}\n <div className=\"contact-row\">\n {/* Contact */}\n <div className=\"contact-item\">\n <div className=\"icon-wrapper-small\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#6B7B8E\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <rect x=\"5\" y=\"2\" width=\"14\" height=\"20\" rx=\"2\" ry=\"2\" />\n <line x1=\"12\" y1=\"18\" x2=\"12.01\" y2=\"18\" />\n </svg>\n </div>\n <div>\n <div className=\"data-label\">\n {t(\"EKYC_PHONE_NO\") || \"Contact\"}\n </div>\n <div className=\"address-text\">\n {details.phoneNumber || t(\"CS_NA\")}\n </div>\n </div>\n </div>\n\n {/* Email */}\n <div className=\"contact-item\">\n <div className=\"icon-wrapper-small\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#6B7B8E\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <circle cx=\"12\" cy=\"12\" r=\"4\" />\n <path d=\"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-3.92 7.94\" />\n </svg>\n </div>\n <div>\n <div className=\"data-label\">\n {t(\"EKYC_EMAIL\") || \"Email Address\"}\n </div>\n <div className=\"address-text\">\n {details.email || t(\"CS_NA\")}\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n {/* Card Footer */}\n <div className=\"details-card-footer\">\n {/* Last Verified */}\n <div className=\"footer-meta-text\">\n {connectionDetails?.lastVerified\n ? `${t(\"EKYC_LAST_VERIFIED\") || \"Last verified:\"} ${connectionDetails.lastVerified}`\n : \"\"}\n </div>\n\n {/* Action Buttons */}\n <div className=\"action-btns-container\" style={{ fontSize: \"12px\" }}>\n <button\n onClick={handleStartVerification}\n className=\"primary-action-btn\"\n style={{ fontSize: \"12px\" }}\n >\n {t(\"EKYC_START_REVIEW\") || \"Start Review\"}\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\" />\n <polyline points=\"12 5 19 12 12 19\" />\n </svg>\n </button>\n </div>\n </div>\n </div>\n </div>\n\n {/* Modal */}\n {showModal && (\n <Modal\n headerBarMain={t(\"EKYC_SELECT_VERIFICATION_TYPE\")}\n headerBarEnd={\n <span onClick={() => setShowModal(false)} style={{ cursor: \"pointer\", padding: \"8px\" }}>\n X\n </span>\n }\n actionSaveLabel={t(\"ES_COMMON_CONFIRM\")}\n actionSaveOnSubmit={onModalConfirm}\n actionCancelLabel={t(\"ES_COMMON_CANCEL\")}\n actionCancelOnSubmit={() => setShowModal(false)}\n style={{ borderRadius: \"12px\" }}\n >\n <div style={{ padding: \"24px\" }}>\n <RadioButtons\n name=\"verificationType\"\n options={options}\n optionsKey=\"name\"\n selectedOption={selectedOption}\n onSelect={setSelectedOption}\n style={{ display: \"flex\", flexDirection: \"column\", gap: \"12px\", buttonStyle: { borderRadius: \"5px\" } }}\n t={t}\n />\n </div>\n </Modal>\n )}\n </React.Fragment>\n );\n};\n\nexport default ConnectionDetailsView;","import React, { useState, useEffect } from \"react\";\nimport { Card, HomeIcon, Toast } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport SearchConsumer from \"../../components/SearchConsumer\";\nimport ConnectionDetailsView from \"../../components/ConnectionDetailsView\";\n\nconst Create = () => {\n const { t } = useTranslation();\n const [searchParams, setSearchParams] = useState(() => {\n const saved = sessionStorage.getItem(\"EKYC_CREATE_SEARCH_PARAMS\");\n return saved ? JSON.parse(saved) : { kNumber: \"\", kName: \"\" };\n });\n const [searchPerformed, setSearchPerformed] = useState(() => {\n return sessionStorage.getItem(\"EKYC_CREATE_SEARCH_PERFORMED\") === \"true\";\n });\n const [showToast, setShowToast] = useState(null);\n const [formParams, setFormParams, clearParams] = Digit.Hooks.useSessionStorage(\"EKYC_CREATE\", {});\n\n const tenantId = Digit.ULBService.getCurrentTenantId();\n\n const { isLoading: isSearching, data: connectionDetails, error, revalidate } = Digit.Hooks.ekyc.useSearchConnection({\n tenantId,\n details: { kno: searchParams.kNumber, name: searchParams.kName }\n }, {\n enabled: searchPerformed && !!searchParams.kNumber && !!searchParams.kName,\n onError: (error) => {\n setShowToast({ error: true, label: error?.response?.data?.Errors?.[0]?.message || t(\"EKYC_SEARCH_ERROR_PLEASE_ENTER_THE_CORRECT_CREDENTIALS\") });\n setSearchPerformed(false);\n sessionStorage.removeItem(\"EKYC_CREATE_SEARCH_PERFORMED\");\n }\n });\n\n const handleSearch = (params) => {\n if (!params.kNumber && !params.kName) {\n // This is the \"Clear\" case\n setSearchParams({ kNumber: \"\", kName: \"\" });\n setSearchPerformed(false);\n sessionStorage.removeItem(\"EKYC_CREATE_SEARCH_PARAMS\");\n sessionStorage.removeItem(\"EKYC_CREATE_SEARCH_PERFORMED\");\n clearParams(); // Clear consolidated EKYC data\n return;\n }\n\n if (!params.kNumber || !params.kName) {\n setShowToast({ error: true, label: t(\"EKYC_FILL_ALL_FIELDS\") });\n return;\n }\n setSearchParams(params);\n setSearchPerformed(true);\n\n // Clear previous EKYC session data if K-number changes\n const currentKno = sessionStorage.getItem(\"EKYC_K_NUMBER\");\n if (currentKno !== params.kNumber) {\n clearParams();\n // Clear any other EKYC keys if they exist\n Object.keys(sessionStorage).forEach(key => {\n if (key.startsWith(\"EKYC_\") && key !== \"EKYC_CREATE\") sessionStorage.removeItem(key);\n });\n }\n\n sessionStorage.setItem(\"EKYC_CREATE_SEARCH_PARAMS\", JSON.stringify(params));\n sessionStorage.setItem(\"EKYC_CREATE_SEARCH_PERFORMED\", \"true\");\n sessionStorage.setItem(\"EKYC_K_NUMBER\", params.kNumber);\n };\n\n const closeToast = () => {\n setShowToast(null);\n };\n\n return (\n <SearchConsumer\n onSearch={handleSearch}\n searchParams={searchParams}\n >\n {searchPerformed && (\n <ConnectionDetailsView\n kNumber={searchParams.kNumber}\n kName={searchParams.kName}\n connectionDetails={connectionDetails}\n isLoading={isSearching}\n />\n )}\n\n {!searchPerformed && !isSearching && (\n <Card style={{ textAlign: \"center\", padding: \"40px\" }}>\n <div style={{ color: \"#667085\" }}>{t(\"EKYC_SEARCH_TO_VIEW_DETAILS\")}</div>\n </Card>\n )}\n {showToast && <Toast error={showToast.error} label={showToast.label} onClose={closeToast} isDsc={true} />}\n </SearchConsumer>\n );\n};\n\nexport default Create;\n","import React, { Fragment, useState } from \"react\";\nimport {\n Card,\n CardSubHeader,\n StatusTable,\n Row,\n SubmitBar,\n Loader,\n ActionBar,\n CheckBox,\n LinkButton,\n EditIcon,\n GenericFileIcon,\n Menu,\n Toast,\n} from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useLocation, useParams } from \"react-router-dom\";\n\n// ─── Constants ───────────────────────────────────────────────────────────────\n\nconst ActionButton = ({ jumpTo, state }) => {\n const history = useHistory();\n function routeTo() {\n history.push(jumpTo, { ...state, isEditing: true });\n }\n return (\n <LinkButton label={<EditIcon style={{ width: \"20px\", height: \"20px\", fill: \"#F47738\" }} />} style={{ margin: 0, padding: 0 }} onClick={routeTo} />\n );\n};\n\nconst checkForNA = (value) => (value !== null && value !== undefined && value !== \"\" ? value : \"N/A\");\n\nconst boolToYesNo = (value, t) => {\n if (value === true || value === \"true\" || String(value).toLowerCase() === \"yes\") return t(\"CORE_COMMON_YES\");\n if (value === false || value === \"false\" || String(value).toLowerCase() === \"no\") return t(\"CORE_COMMON_NO\");\n if (value === \"true\") return t(\"CORE_COMMON_YES\");\n if (value === \"false\") return t(\"CORE_COMMON_NO\");\n};\n/**\n * Robust data extraction for comparison.\n * The API returns { applicationReviewInfo: { newData: { ... }, oldData: { ... } } }\n */\nconst extractReviewData = (searchData, flowState) => {\n const rawData = searchData && Object.keys(searchData).length > 0 ? searchData : flowState?.reviewData || {};\n\n // Navigate through applicationReviewInfo -> newData/oldData\n const reviewWrapper = rawData?.applicationReviewInfo || rawData?.applicationReview || rawData;\n const applicationData = (Array.isArray(reviewWrapper) ? reviewWrapper[0] : reviewWrapper) || {};\n\n return {\n newData: applicationData?.newData || applicationData,\n oldData: applicationData?.oldData || null,\n };\n};\n\nconst ReviewSection = ({ title, fields, newData, oldData, t, jumpTo, state }) => {\n return (\n <div\n className=\"review-section-wrapper\"\n style={{ marginBottom: \"48px\", background: \"#fff\", borderRadius: \"12px\", border: \"1px solid #EAECF0\", overflow: \"hidden\" }}\n >\n <div\n style={{\n padding: \"20px 24px\",\n background: \"#F9FAFB\",\n borderBottom: \"1px solid #EAECF0\",\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n }}\n >\n <CardSubHeader style={{ margin: 0, fontSize: \"18px\", color: \"#101828\", fontWeight: \"700\" }}>{title}</CardSubHeader>\n {jumpTo && <ActionButton jumpTo={jumpTo} state={state} />}\n </div>\n\n <div style={{ padding: \"0 24px\" }}>\n <table style={{ width: \"100%\", borderCollapse: \"collapse\", tableLayout: \"fixed\" }}>\n <thead>\n <tr>\n <th\n style={{\n padding: \"16px 0\",\n textAlign: \"left\",\n color: \"#667085\",\n fontSize: \"12px\",\n fontWeight: \"600\",\n textTransform: \"uppercase\",\n width: \"30%\",\n }}\n >\n {t(\"EKYC_FIELD_NAME\")}\n </th>\n <th\n style={{\n padding: \"16px 0\",\n textAlign: \"left\",\n color: \"#667085\",\n fontSize: \"12px\",\n fontWeight: \"600\",\n textTransform: \"uppercase\",\n width: \"35%\",\n }}\n >\n {t(\"EKYC_EXISTING_INFORMATION\")}\n </th>\n <th\n style={{\n padding: \"16px 0\",\n textAlign: \"left\",\n color: \"#667085\",\n fontSize: \"12px\",\n fontWeight: \"600\",\n textTransform: \"uppercase\",\n width: \"35%\",\n }}\n >\n {t(\"EKYC_PROPOSED_UPDATES\")}\n </th>\n </tr>\n </thead>\n <tbody>\n {fields.map((field, idx) => {\n const valNew = newData?.[field.key];\n const valOld = oldData?.[field.key];\n const isChanged = oldData && String(valNew) !== String(valOld) && valOld !== undefined && valOld !== null;\n\n return (\n <tr key={idx} style={{ borderTop: \"1px solid #F2F4F7\" }}>\n <td style={{ padding: \"16px 0\", fontSize: \"14px\", color: \"#344054\", fontWeight: \"500\" }}>{t(field.label)}</td>\n <td style={{ padding: \"16px 0\", fontSize: \"14px\", color: \"#667085\" }}>\n {field.isBool ? boolToYesNo(valOld, t) : checkForNA(valOld)}\n </td>\n <td\n style={{ padding: \"16px 0\", fontSize: \"14px\", color: isChanged ? \"#1B8B32\" : \"#101828\", fontWeight: isChanged ? \"700\" : \"400\" }}\n >\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"8px\" }}>\n {field.isBool ? boolToYesNo(valNew, t) : checkForNA(valNew)}\n {isChanged && (\n <span\n style={{\n background: \"#ECFDF3\",\n color: \"#067647\",\n padding: \"2px 8px\",\n borderRadius: \"12px\",\n fontSize: \"10px\",\n fontWeight: \"600\",\n }}\n >\n {t(\"EKYC_CHANGED\")}\n </span>\n )}\n </div>\n </td>\n </tr>\n );\n })}\n </tbody>\n </table>\n </div>\n </div>\n );\n};\n\nconst Review = () => {\n const { t } = useTranslation();\n const history = useHistory();\n const location = useLocation();\n let { kno } = useParams();\n\n const [agree, setAgree] = useState(false);\n const [isSubmitting, setIsSubmitting] = useState(false);\n const [showPreview, setShowPreview] = useState(false);\n const [previewUrl, setPreviewUrl] = useState(\"\");\n const [showOptions, setShowOptions] = useState(false);\n const [showToast, setShowToast] = useState(false);\n const [toastData, setToastData] = useState({ error: false, label: \"\" });\n\n const options = [\n { action: t(\"Approve\") },\n { action: t(\"Reject\") }\n ];\n\n const flowState = location.state || {};\n const { edits = {} } = flowState;\n const activeKno = kno;\n\n const { aadhaarData = {}, addressDetails: editedAddress = {}, propertyDetails: editedProperty = {}, meterDetails: editedMeter = {} } = edits;\n\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const workflowMutation = Digit.Hooks.ekyc.useEkycWorkflow(tenantId);\n const updateMutation = Digit.Hooks.ekyc.useEkycUpdate(tenantId);\n\n const { data: searchData, isLoading: isSearchLoading } = Digit.Hooks.ekyc.useEkycSearchReview({ kno: activeKno, fetchType: \"REVIEW\" }, tenantId, {\n enabled: !!activeKno,\n });\n\n // ── Data Consolidation ──────────────────────────────────────────────────\n const { newData: apiNewData, oldData: apiOldData } = extractReviewData(searchData, flowState);\n\n const prepareConsolidatedData = (data) => {\n if (!data) return null;\n const apiConn = data?.connectionDetails || data || {};\n const apiAddr = data?.addressDetails || data || {};\n const apiProp = data?.propertyInfo || data || {};\n const apiMeter = data?.meterDetails || data || {};\n\n return {\n connection: {\n consumerName:\n apiConn?.consumerName || (apiConn?.firstName ? [apiConn.firstName, apiConn.middleName, apiConn.lastName].filter(Boolean).join(\" \") : null),\n address: apiConn?.address || apiConn?.addressRaw,\n connectionType: apiConn?.connectionType || apiConn?.connectionCategory,\n meterNumber: apiConn?.meterNumber || apiConn?.meterNo,\n phoneNumber: apiConn?.phoneNumber || apiConn?.mobileNo || apiConn?.mobileNumber,\n email: apiConn?.email,\n statusflag: apiConn?.statusflag || apiConn?.statusFlag,\n ekycStatus: apiConn?.ekycStatus,\n knumber: apiConn?.knumber || apiConn?.kno,\n },\n address: {\n fullAddress: apiAddr?.fullAddress || apiAddr?.addressRaw,\n flatHouseNumber: apiAddr?.flatHouseNumber || apiAddr?.flatNo,\n buildingTower: apiAddr?.buildingTower || apiAddr?.building,\n landmark: apiAddr?.landmark,\n pinCode: apiAddr?.pinCode || apiAddr?.pincode,\n ward: apiAddr?.ward || apiAddr?.locality,\n assembly: apiAddr?.assembly,\n gpsValid: apiAddr?.gpsValid,\n latitude: apiAddr?.latitude,\n longitude: apiAddr?.longitude,\n mobileNo: apiAddr?.mobileNo || apiAddr?.mobileNumber,\n whatsappNo: apiAddr?.whatsappNo,\n email: apiAddr?.email,\n noOfPerson: apiAddr?.noOfPerson || apiAddr?.noOfPersons,\n knumber: apiAddr?.knumber || apiAddr?.kno,\n doorPhotoFilestoreId: apiAddr?.doorPhotoFilestoreId,\n },\n property: {\n kno: apiProp?.kno,\n pidNumber: apiProp?.pidNumber,\n typeOfConnection: apiProp?.typeOfConnection,\n connectionCategory: apiProp?.connectionCategory,\n userType: apiProp?.userType,\n numberOfFloors: apiProp?.numberOfFloors || apiProp?.noOfFloor,\n tenantName: apiProp?.tenantName,\n tenantMobile: apiProp?.tenantMobile,\n ekycStatus: apiProp?.ekycStatus,\n propertyDocumentFileStoreId: apiProp?.propertyDocumentFileStoreId,\n buildingImageFileStoreId: apiProp?.buildingImageFileStoreId,\n },\n meter: {\n kno: apiMeter?.kno,\n metered: apiMeter?.meterStatus === \"METERED\" || apiMeter?.metered,\n meterNumber: apiMeter?.meterNumber || apiMeter?.meterNo,\n meterMake: apiMeter?.meterMake,\n meterLocationAddress: apiMeter?.meterLocationAddress,\n meterLatitude: apiMeter?.meterLatitude,\n meterLongitude: apiMeter?.meterLongitude,\n workingStatus: apiMeter?.workingStatus,\n lastBillRaised: apiMeter?.lastBillRaised,\n systemMeterId: apiMeter?.systemMeterId,\n meterPhotoFileStoreId: apiMeter?.meterPhotoFileStoreId,\n },\n };\n };\n\n const newDataRaw = prepareConsolidatedData(apiNewData);\n const oldDataRaw = prepareConsolidatedData(apiOldData);\n\n // Apply edits to newData if present\n const connectionData = {\n ...newDataRaw?.connection,\n consumerName: aadhaarData?.name || newDataRaw?.connection?.consumerName,\n phoneNumber: aadhaarData?.mobileNumber || newDataRaw?.connection?.phoneNumber,\n knumber: newDataRaw?.connection?.knumber || activeKno,\n };\n\n const addressData = {\n ...newDataRaw?.address,\n fullAddress: editedAddress?.fullAddress || newDataRaw?.address?.fullAddress,\n flatHouseNumber: editedAddress?.flatHouseNumber || editedAddress?.flatNo || newDataRaw?.address?.flatHouseNumber,\n buildingTower: editedAddress?.buildingTower || editedAddress?.building || newDataRaw?.address?.buildingTower,\n landmark: editedAddress?.landmark || newDataRaw?.address?.landmark,\n pinCode: editedAddress?.pinCode || editedAddress?.pincode || newDataRaw?.address?.pinCode,\n ward: editedAddress?.ward || newDataRaw?.address?.ward,\n assembly: editedAddress?.assembly || newDataRaw?.address?.assembly,\n gpsValid: editedAddress?.gpsValid !== undefined ? editedAddress.gpsValid : newDataRaw?.address?.gpsValid,\n latitude: editedAddress?.latitude || newDataRaw?.address?.latitude,\n longitude: editedAddress?.longitude || newDataRaw?.address?.longitude,\n mobileNo: editedAddress?.mobileNo || aadhaarData?.mobileNumber || newDataRaw?.address?.mobileNo,\n whatsappNo: editedAddress?.whatsappNo || aadhaarData?.whatsappNumber || newDataRaw?.address?.whatsappNo,\n email: editedAddress?.email || newDataRaw?.address?.email,\n noOfPerson: editedAddress?.noOfPerson || aadhaarData?.noOfPersons || newDataRaw?.address?.noOfPerson,\n knumber: editedAddress?.knumber || newDataRaw?.address?.knumber || activeKno,\n doorPhotoFilestoreId: editedAddress?.doorPhotoFileStoreId || newDataRaw?.address?.doorPhotoFilestoreId,\n };\n\n const propertyData = {\n ...newDataRaw?.property,\n kno: newDataRaw?.property?.kno || activeKno,\n pidNumber: editedProperty?.pidNumber || newDataRaw?.property?.pidNumber,\n typeOfConnection: editedProperty?.connectionTypeData?.label || newDataRaw?.property?.typeOfConnection,\n connectionCategory: editedProperty?.connectionCategoryData?.label || newDataRaw?.property?.connectionCategory,\n userType: editedProperty?.userTypeData?.label || newDataRaw?.property?.userType,\n numberOfFloors: editedProperty?.noOfFloorsData?.label || newDataRaw?.property?.numberOfFloors,\n propertyDocumentFileStoreId: editedProperty?.propertyDocumentFileStoreId || newDataRaw?.property?.propertyDocumentFileStoreId,\n };\n\n const meterData = {\n ...newDataRaw?.meter,\n kno: editedMeter?.kno || newDataRaw?.meter?.kno || activeKno,\n metered: editedMeter?.meterStatusData?.value === \"Metered\" || newDataRaw?.meter?.metered,\n meterNumber: newDataRaw?.meter?.meterNumber,\n meterMake: editedMeter?.meterMake || newDataRaw?.meter?.meterMake,\n meterLocationAddress: editedMeter?.meterLocation || newDataRaw?.meter?.meterLocationAddress,\n workingStatus: editedMeter?.workingStatusData?.value === \"Working\" || newDataRaw?.meter?.workingStatus,\n lastBillRaised: editedMeter?.lastBillRaisedData?.value === \"Yes\" || newDataRaw?.meter?.lastBillRaised,\n meterPhotoFileStoreId: editedMeter?.meterPhotoFileStoreId || newDataRaw?.meter?.meterPhotoFileStoreId,\n };\n\n // ── Section Fields Configuration ─────────────────────────────────────\n const connectionFields = [\n { label: \"EKYC_K_NUMBER\", key: \"knumber\" },\n { label: \"EKYC_CONSUMER_NAME\", key: \"consumerName\" },\n { label: \"EKYC_ADDRESS\", key: \"address\" },\n { label: \"EKYC_CONNECTION_TYPE\", key: \"connectionType\" },\n { label: \"EKYC_METER_NO\", key: \"meterNumber\" },\n { label: \"EKYC_MOBILE_NO\", key: \"phoneNumber\" },\n { label: \"EKYC_EMAIL\", key: \"email\" },\n { label: \"EKYC_STATUS_FLAG\", key: \"statusflag\" },\n { label: \"EKYC_STATUS\", key: \"ekycStatus\" },\n ];\n\n const addressFields = [\n { label: \"EKYC_FULL_ADDRESS\", key: \"fullAddress\" },\n { label: \"EKYC_FLAT_HOUSE_NO\", key: \"flatHouseNumber\" },\n { label: \"EKYC_BUILDING_TOWER\", key: \"buildingTower\" },\n { label: \"EKYC_LANDMARK\", key: \"landmark\" },\n { label: \"EKYC_PINCODE\", key: \"pinCode\" },\n { label: \"EKYC_LOCALITY\", key: \"ward\" },\n { label: \"EKYC_ASSEMBLY\", key: \"assembly\" },\n { label: \"EKYC_GPS_VALID\", key: \"gpsValid\", isBool: true },\n { label: \"EKYC_LATITUDE\", key: \"latitude\" },\n { label: \"EKYC_LONGITUDE\", key: \"longitude\" },\n { label: \"EKYC_MOBILE_NO\", key: \"mobileNo\" },\n { label: \"EKYC_WHATSAPP_NO\", key: \"whatsappNo\" },\n { label: \"EKYC_EMAIL\", key: \"email\" },\n { label: \"EKYC_NO_OF_PERSONS\", key: \"noOfPerson\" },\n { label: \"EKYC_K_NUMBER\", key: \"knumber\" },\n ];\n\n const propertyFields = [\n { label: \"EKYC_CONNECTION_CATEGORY\", key: \"connectionCategory\" },\n { label: \"EKYC_PID_NUMBER\", key: \"pidNumber\" },\n { label: \"EKYC_TYPE_OF_CONNECTION\", key: \"typeOfConnection\" },\n { label: \"EKYC_USER_TYPE\", key: \"userType\" },\n { label: \"EKYC_FLOOR_COUNT\", key: \"numberOfFloors\" },\n { label: \"EKYC_TENANT_NAME\", key: \"tenantName\" },\n { label: \"EKYC_TENANT_MOBILE\", key: \"tenantMobile\" },\n { label: \"EKYC_STATUS\", key: \"ekycStatus\" },\n ];\n\n const meterFields = [\n { label: \"EKYC_METERED\", key: \"metered\", isBool: true },\n { label: \"EKYC_METER_NO\", key: \"meterNumber\" },\n { label: \"EKYC_METER_MAKE\", key: \"meterMake\" },\n { label: \"EKYC_METER_LOCATION_ADDRESS\", key: \"meterLocationAddress\" },\n { label: \"EKYC_METER_LATITUDE\", key: \"meterLatitude\" },\n { label: \"EKYC_METER_LONGITUDE\", key: \"meterLongitude\" },\n { label: \"EKYC_WORKING_STATUS\", key: \"workingStatus\", isBool: true },\n { label: \"EKYC_LAST_BILL_RAISED\", key: \"lastBillRaised\", isBool: true },\n { label: \"EKYC_SYSTEM_METER_ID\", key: \"systemMeterId\" },\n ];\n\n const handleDeclaration = () => setAgree(!agree);\n\n const handleReject = async () => {\n const payload = {\n RequestInfo: {\n apiId: \"Rainmaker\",\n ver: \"1.0\",\n msgId: \"message-id\",\n tenantId: tenantId,\n authToken: Digit.UserService.getUser()?.access_token,\n },\n kno: activeKno,\n action: \"REJECTED\",\n remarks: \"Application rejected by reviewer\",\n reviewedBy: Digit.UserService.getUser()?.info?.userName,\n role: \"ZRO\",\n };\n try {\n const result = await workflowMutation.mutateAsync(payload);\n if (result) {\n history.push(\"/digit-ui/employee/ekyc/response\", { success: true, result });\n }\n } catch (err) {\n console.error(\"Reject Error:\", err);\n }\n };\n\n const handleApprove = async () => {\n const payload = {\n RequestInfo: {\n apiId: \"Rainmaker\",\n ver: \"1.0\",\n msgId: \"message-id\",\n tenantId: tenantId,\n authToken: Digit.UserService.getUser()?.access_token,\n },\n kno: activeKno,\n action: \"APPROVED\",\n remarks: \"All documents verified\",\n reviewedBy: Digit.UserService.getUser()?.info?.userName,\n role: \"ZRO\",\n };\n try {\n const result = await workflowMutation.mutateAsync(payload);\n if (result) {\n setToastData({\n error: false,\n label: t(\"EKYC_APPLICATION_APPROVE_SUCCESSFUL\") || \"Application Approved Successfully\",\n });\n setShowToast(true);\n setTimeout(() => {\n history.push(\"/digit-ui/employee/ekyc/inbox\");\n }, 2000);\n }\n } catch (err) {\n console.error(\"Approve Error:\", err);\n setToastData({\n error: true,\n label: err?.message || err?.response?.data?.message || \"Approve Error\",\n });\n setShowToast(true);\n }\n };\n\n const handleFinalSubmit = async () => {\n setIsSubmitting(true);\n try {\n const payload = {\n kno: activeKno,\n tenantId: tenantId,\n newData: {\n connectionDetails: connectionData,\n addressDetails: addressData,\n propertyInfo: propertyData,\n meterDetails: meterData,\n },\n };\n\n const result = await updateMutation.mutateAsync(payload);\n if (result) {\n history.push(\"/digit-ui/employee/ekyc/response\", { success: true, result });\n }\n } catch (err) {\n console.error(\"Submit Error:\", err);\n } finally {\n setIsSubmitting(false);\n }\n };\n\n const handleViewDocument = (fileStoreId) => {\n if (!fileStoreId) return;\n const documentUrl = `https://dev-djb.nitcon.in/filestore/v1/files/id?tenantId=dl.djb&fileStoreId=${fileStoreId}`;\n setPreviewUrl(documentUrl);\n setShowPreview(true);\n };\n\n const handleMenuSelect = (option) => {\n setShowOptions(false); // close menu\n if (option.action === t(\"Approve\")) {\n handleApprove();\n } else if (option.action === t(\"Reject\")) {\n handleReject();\n }\n };\n\n if (isSearchLoading || isSubmitting) return <Loader />;\n\n const baseUrl = \"/digit-ui/employee/ekyc\";\n\n return (\n <Fragment>\n <Card className=\"overflow-y-scroll\">\n {/* ── 1. Connection Details ────────────────────────────────────── */}\n <ReviewSection\n title={t(\"EKYC_CONNECTION_DETAILS\")}\n fields={connectionFields}\n newData={connectionData}\n oldData={oldDataRaw?.connection}\n t={t}\n jumpTo={`${baseUrl}/consumer-details?kno=${kno}`}\n state={{ ...flowState, kNumber: kno, kno, reviewData: searchData, edits }}\n />\n\n {/* ── 2. Address Details ──────────────────────────────────────── */}\n <ReviewSection\n title={t(\"EKYC_ADDRESS_DETAILS\")}\n fields={addressFields}\n newData={addressData}\n oldData={oldDataRaw?.address}\n t={t}\n jumpTo={`${baseUrl}/address-details?kno=${kno}`}\n state={{ ...flowState, kNumber: kno, kno, reviewData: searchData, edits }}\n />\n\n {/* ── 3. Property Info ────────────────────────────────────────── */}\n <ReviewSection\n title={t(\"EKYC_PROPERTY_INFO\")}\n fields={propertyFields}\n newData={propertyData}\n oldData={oldDataRaw?.property}\n t={t}\n jumpTo={`${baseUrl}/property-info?kno=${kno}`}\n state={{ ...flowState, kNumber: kno, kno, reviewData: searchData, edits }}\n />\n\n {/* ── 4. Meter Details ────────────────────────────────────────── */}\n <ReviewSection\n title={t(\"EKYC_METER_DETAILS\")}\n fields={meterFields}\n newData={meterData}\n oldData={oldDataRaw?.meter}\n t={t}\n jumpTo={`${baseUrl}/meter-details?kno=${kno}`}\n state={{ ...flowState, kNumber: kno, kno, reviewData: searchData, edits }}\n />\n\n {/* ── 5. Documents ────────────────────────────────────────────── */}\n <div style={{ marginTop: \"40px\" }}>\n <CardSubHeader style={{ marginBottom: \"20px\" }}>{t(\"EKYC_DOCUMENTS\")}</CardSubHeader>\n <StatusTable style={{ maxWidth: \"600px\" }}>\n <Row\n label={t(\"EKYC_DOOR_PHOTO\")}\n text={addressData.doorPhotoFilestoreId ? t(\"EKYC_PHOTO_AVAILABLE\") : t(\"CS_NA\")}\n actionButton={\n addressData.doorPhotoFilestoreId && (\n <div onClick={() => handleViewDocument(addressData.doorPhotoFilestoreId)}>\n <GenericFileIcon style={{ cursor: \"pointer\", fill: \"#F47738\" }} />\n </div>\n )\n }\n />\n <Row\n label={t(\"EKYC_METER_PHOTO\")}\n text={meterData.meterPhotoFileStoreId ? t(\"EKYC_PHOTO_AVAILABLE\") : t(\"CS_NA\")}\n actionButton={\n meterData.meterPhotoFileStoreId && (\n <div onClick={() => handleViewDocument(meterData.meterPhotoFileStoreId)}>\n <GenericFileIcon style={{ cursor: \"pointer\", fill: \"#F47738\" }} />\n </div>\n )\n }\n />\n <Row\n label={t(\"EKYC_BUILDING_IMAGE\")}\n text={propertyData.buildingImageFileStoreId ? t(\"EKYC_PHOTO_AVAILABLE\") : t(\"CS_NA\")}\n actionButton={\n propertyData.buildingImageFileStoreId && (\n <div onClick={() => handleViewDocument(propertyData.buildingImageFileStoreId)}>\n <GenericFileIcon style={{ cursor: \"pointer\", fill: \"#F47738\" }} />\n </div>\n )\n }\n />\n <Row\n label={t(\"EKYC_PROPERTY_DOCUMENTS\")}\n text={propertyData.propertyDocumentFileStoreId ? t(\"EKYC_DOCS_AVAILABLE\") : t(\"CS_NA\")}\n actionButton={\n propertyData.propertyDocumentFileStoreId && (\n <div onClick={() => handleViewDocument(propertyData.propertyDocumentFileStoreId)}>\n <GenericFileIcon style={{ cursor: \"pointer\", fill: \"#F47738\" }} />\n </div>\n )\n }\n />\n </StatusTable>\n </div>\n\n <div style={{ marginTop: \"40px\", paddingTop: \"30px\", borderTop: \"1px solid #EAECF0\" }}>\n <CheckBox\n id=\"agreeDeclaration\"\n name=\"agreeDeclaration\"\n label={<span style={{ fontSize: \"16px\", color: \"#344054\" }}>{t(\"EKYC_FINAL_DECLARATION\")}</span>}\n onChange={handleDeclaration}\n checked={agree}\n />\n </div>\n\n {/* <ActionBar>\n <SubmitBar label={t(\"EKYC_REJECT\")} onSubmit={handleReject} disabled={!agree} />\n <SubmitBar label={t(\"EKYC_APPROVE\")} onSubmit={handleApprove} disabled={!agree} />\n <SubmitBar label={t(\"EKYC_SUBMIT_APPLICATION\")} onSubmit={handleFinalSubmit} disabled={!agree} />\n </ActionBar> */}\n <ActionBar>\n <SubmitBar\n label={t(\"TAKE_ACTION_FOR_APPROVE_REJECT\")}\n onSubmit={() => setShowOptions((prev) => !prev)}\n disabled={!agree}\n />\n {showOptions && (\n <Menu\n options={options}\n optionKey={\"action\"}\n t={t}\n onSelect={handleMenuSelect}\n style={{\n color: \"#FFFFFF\",\n fontSize: \"18px\",\n }}\n />\n )}\n </ActionBar>\n </Card>\n\n {/* ── Document Preview Modal ────────────────────────────────────── */}\n {showPreview && (\n <div\n style={{\n position: \"fixed\",\n top: 0,\n left: 0,\n width: \"100%\",\n height: \"100%\",\n backgroundColor: \"rgba(0,0,0,0.7)\",\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n zIndex: 10000,\n }}\n >\n <div\n style={{\n position: \"relative\",\n backgroundColor: \"#fff\",\n padding: \"30px\",\n borderRadius: \"12px\",\n maxWidth: \"600px\",\n width: \"100%\",\n maxHeight: \"70vh\",\n overflow: \"auto\",\n boxShadow: \"0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)\",\n }}\n >\n <div\n onClick={() => setShowPreview(false)}\n style={{\n position: \"absolute\",\n top: \"10px\",\n right: \"10px\",\n cursor: \"pointer\",\n fontWeight: \"bold\",\n fontSize: \"20px\",\n color: \"#333\",\n background: \"#eee\",\n width: \"30px\",\n height: \"30px\",\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n borderRadius: \"50%\",\n }}\n >\n ×\n </div>\n <img\n src={previewUrl}\n alt=\"Document Preview\"\n style={{ maxWidth: \"100%\", height: \"auto\", display: \"block\" }}\n onError={(e) => {\n e.target.style.display = \"none\";\n e.target.nextSibling.style.display = \"block\";\n }}\n />\n <div style={{ display: \"none\", padding: \"40px\", textAlign: \"center\" }}>\n <p>{t(\"EKYC_DOCUMENT_PREVIEW_NOT_AVAILABLE\")}</p>\n <LinkButton label={t(\"EKYC_OPEN_IN_NEW_TAB\")} onClick={() => window.open(previewUrl, \"_blank\")} />\n </div>\n </div>\n </div>\n )}\n {showToast && (\n <Toast\n error={toastData.error}\n label={toastData.label}\n onClose={() => setShowToast(false)}\n />\n )}\n </Fragment>\n );\n};\n\nexport default Review;\n","import React from \"react\";\nimport { UploadFile, CheckBox, Dropdown } from \"@djb25/digit-ui-react-components\";\n\nconst AadhaarVerificationConfig = (t, formData = {}, uploadFile, setDocumentId, documentId) => {\n const consumerType = formData?.consumerType?.name || formData?.consumerType;\n const occupantType = formData?.occupantType?.name || formData?.occupantType;\n const informantIsConsumer = formData?.informantIsConsumer ?? true;\n\n const fields = [\n {\n label: t(\"Consumer Type\"),\n isMandatory: true,\n type: \"custom\",\n key: \"consumerType\",\n populators: {\n name: \"consumerType\",\n component: (props) => (\n <Dropdown\n option={[{ name: \"Individual\" }, { name: \"Govt\" }, { name: \"Company_Society_Org\" }]}\n optionKey=\"name\"\n selected={props.value}\n select={props.onChange}\n />\n ),\n },\n },\n {\n label: t(\"Occupant Type\"),\n isMandatory: true,\n type: \"custom\",\n key: \"occupantType\",\n populators: {\n name: \"occupantType\",\n component: (props) => (\n <Dropdown\n option={[{ name: \"Self\" }, { name: \"Tenanted\" }]}\n optionKey=\"name\"\n selected={props.value}\n select={props.onChange}\n />\n ),\n },\n },\n {\n label: t(\"Category Type\"),\n isMandatory: true,\n type: \"custom\",\n key: \"categoryType\",\n populators: {\n name: \"categoryType\",\n component: (props) => (\n <Dropdown\n option={[{ name: \"Bulk\" }, { name: \"Non-Bulk\" }]}\n optionKey=\"name\"\n selected={props.value}\n select={props.onChange}\n />\n ),\n },\n },\n {\n label: t(\"First Name\"),\n isMandatory: true,\n type: \"text\",\n populators: {\n name: \"firstName\",\n validation: { required: true },\n },\n },\n {\n label: t(\"Middle Name\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"middleName\",\n },\n },\n {\n label: t(\"Last Name\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"lastName\",\n },\n },\n {\n label: t(\"Gender\"),\n isMandatory: false,\n type: \"custom\",\n key: \"gender\",\n populators: {\n name: \"gender\",\n component: (props) => (\n <Dropdown\n option={[{ name: \"Male\" }, { name: \"Female\" }, { name: \"Others\" }, { name: \"Not prefer to say\" }]}\n optionKey=\"name\"\n selected={props.value}\n select={props.onChange}\n />\n ),\n },\n },\n {\n label: t(\"Parent/Spouse Name\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"parentSpouseName\",\n },\n },\n {\n label: t(\"Mobile\"),\n isMandatory: true,\n type: \"text\",\n populators: {\n name: \"mobile\",\n validation: {\n required: true,\n pattern: /^[6-9]\\d{9}$/,\n },\n error: t(\"Invalid mobile number\"),\n },\n },\n {\n label: t(\"WhatsApp\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"whatsapp\",\n },\n },\n {\n label: t(\"Email\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"email\",\n validation: {\n pattern: /^[a-zA-Z0-9+_.-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z0-9.-]+$/,\n },\n error: t(\"Invalid email address\"),\n },\n },\n {\n label: t(\"No. of Residents\"),\n isMandatory: true,\n type: \"text\",\n populators: {\n name: \"residents\",\n validation: {\n required: true,\n min: 1,\n },\n },\n },\n {\n label: t(\"Type of Identity\"),\n isMandatory: true,\n type: \"custom\",\n key: \"identityType\",\n populators: {\n name: \"identityType\",\n component: (props) => (\n <Dropdown\n option={[{ name: \"Aadhaar Card\" }, { name: \"Driving License\" }, { name: \"Passport\" }, { name: \"Voter ID\" }]}\n optionKey=\"name\"\n selected={props.value}\n select={props.onChange}\n />\n ),\n },\n },\n {\n label: t(\"Proof of Identity\"),\n isMandatory: false,\n type: \"custom\",\n key: \"idFile\",\n populators: {\n name: \"idFile\",\n component: (props) => (\n <UploadFile\n onUpload={(e) => uploadFile(e, props.onChange)}\n onDelete={() => {\n props.onChange(null);\n setDocumentId(null);\n }}\n message={props.value ? t(\"Uploaded\") : t(\"No file selected\")}\n />\n ),\n },\n },\n {\n label: t(\"Document Number\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"documentNumber\",\n },\n },\n {\n label: t(\"Informant Is Consumer\"),\n isMandatory: false,\n type: \"custom\",\n key: \"informantIsConsumer\",\n populators: {\n name: \"informantIsConsumer\",\n component: (props) => (\n <CheckBox\n label={t(\"Yes, the informant is the consumer\")}\n checked={props.value ?? true}\n onChange={(e) => props.onChange(e.target.checked)}\n />\n ),\n },\n },\n ];\n\n // Informant conditional fields\n if (!informantIsConsumer) {\n fields.push(\n {\n label: t(\"Informant Name\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"informantName\",\n },\n },\n {\n label: t(\"Informant Relation\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"informantRelation\",\n },\n }\n );\n }\n\n // Tenant conditional fields\n if (occupantType === \"Tenanted\") {\n fields.push({\n label: t(\"Document Proof\"),\n isMandatory: false,\n type: \"custom\",\n key: \"documentProof\",\n populators: {\n name: \"documentProof\",\n component: (props) => (\n <UploadFile\n onUpload={(e) => uploadFile(e, props.onChange)}\n onDelete={() => {\n props.onChange(null);\n setDocumentId(null);\n }}\n message={props.value ? t(\"Uploaded\") : t(\"No file selected\")}\n />\n ),\n },\n });\n\n if (!documentId) {\n fields.push(\n {\n label: t(\"Owner Mobile\"),\n isMandatory: true,\n type: \"text\",\n populators: {\n name: \"ownerMobile\",\n validation: {\n required: true,\n pattern: /^[6-9]\\d{9}$/,\n },\n },\n },\n {\n label: t(\"Tenant Verification\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"tenantVerification\",\n },\n }\n );\n }\n }\n\n // Govt conditional fields\n if (consumerType === \"Govt\") {\n fields.push(\n {\n label: t(\"Designation\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"designation\",\n },\n },\n {\n label: t(\"Department\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"department\",\n },\n },\n {\n label: t(\"Employee ID\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"employeeId\",\n },\n }\n );\n }\n\n // Company / Society / Org conditional fields\n if (consumerType === \"Company_Society_Org\") {\n fields.push(\n {\n label: t(\"Entity Name\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"entityName\",\n },\n },\n {\n label: t(\"Contact Person\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"contactPerson\",\n },\n }\n );\n }\n\n // Consent checkbox field\n fields.push({\n label: t(\"Consent\"),\n isMandatory: true,\n type: \"custom\",\n key: \"consent\",\n populators: {\n name: \"consent\",\n validation: { required: true },\n component: (props) => (\n <CheckBox\n label={t(\"I hereby consent to verify my Aadhaar details.\")}\n checked={props.value ?? false}\n onChange={(e) => props.onChange(e.target.checked)}\n />\n ),\n },\n });\n\n return [\n {\n head: t(\"EKYC_CONSUMER_CONNECTION\"),\n body: fields,\n },\n ];\n};\n\nexport default AadhaarVerificationConfig;\n","import React, { useState, Fragment, useEffect } from \"react\";\nimport { useLocation } from \"react-router-dom\";\nimport { Toast, Loader, FormComposer } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport AadhaarVerificationConfig from \"../config/AadhaarVerificationConfig\";\n\nconst AadhaarVerification = ({ config, onSelect, formData }) => {\n const { t } = useTranslation();\n const location = useLocation();\n const flowState = location.state || {};\n\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const queryParams = new URLSearchParams(location.search);\n const urlKno = queryParams.get(\"kno\");\n const searchKno =\n urlKno ||\n flowState?.kNumber ||\n flowState?.kno ||\n formData?.kNumber ||\n formData?.kno ||\n sessionStorage.getItem(\"EKYC_K_NUMBER\") ||\n \"\";\n\n const { isLoading, data: searchData } = Digit.Hooks.ekyc.useSearchConnection(\n { tenantId, details: { kno: searchKno, fetchType: \"CONNECTION\" } },\n { enabled: !!searchKno, cacheTime: 0 }\n );\n\n const updateMutation = Digit.Hooks.ekyc.useEkycUpdate(tenantId);\n\n const savedData = formData?.aadhaarVerification || {};\n\n // 🔹 STATES\n const [documentId, setDocumentId] = useState(savedData.documentId || null);\n const [documentProof, setDocumentProof] = useState(savedData.documentProof || null);\n const [toast, setToast] = useState(null);\n const [isDataLoaded, setIsDataLoaded] = useState(false);\n const [canSubmit, setCanSubmit] = useState(false);\n\n const [defaultValues, setDefaultValues] = useState(() => ({\n kno: savedData.kno || searchKno || \"\",\n consumerType: savedData.consumerType ? { name: savedData.consumerType } : null,\n occupantType: savedData.occupantType ? { name: savedData.occupantType } : null,\n categoryType: savedData.categoryType ? { name: savedData.categoryType } : null,\n firstName: savedData.firstName || \"\",\n middleName: savedData.middleName || \"\",\n lastName: savedData.lastName || \"\",\n gender: savedData.gender ? { name: savedData.gender } : null,\n parentSpouseName: savedData.parentSpouseName || \"\",\n mobile: savedData.mobile || \"\",\n whatsapp: savedData.whatsapp || \"\",\n email: savedData.email || \"\",\n residents: savedData.residents || \"\",\n identityType: savedData.identityType ? { name: savedData.identityType } : null,\n documentNumber: savedData.documentNumber || \"\",\n informantIsConsumer: savedData.informantIsConsumer ?? true,\n informantName: savedData.informantName || \"\",\n informantRelation: savedData.informantRelation || \"\",\n documentId: savedData.documentId || null,\n documentProof: savedData.documentProof || null,\n idFile: savedData.idFile || null,\n ownerMobile: savedData.ownerMobile || \"\",\n tenantVerification: savedData.tenantVerification || \"\",\n designation: savedData.designation || \"\",\n department: savedData.department || \"\",\n employeeId: savedData.employeeId || \"\",\n entityName: savedData.entityName || \"\",\n contactPerson: savedData.contactPerson || \"\",\n consent: savedData.consent || false,\n }));\n\n const [localFormData, setLocalFormData] = useState(defaultValues);\n\n const extractApplicationData = (searchData) => {\n if (!searchData) return null;\n const reviewWrapper =\n searchData?.applicationReviewInfo || searchData?.applicationReview || searchData;\n const applicationData = (Array.isArray(reviewWrapper) ? reviewWrapper[0] : reviewWrapper) || {};\n return applicationData?.newData || applicationData;\n };\n\n useEffect(() => {\n const appData = extractApplicationData(searchData);\n const rawData = appData || formData?.connectionDetails;\n const details = rawData?.connectionDetails || rawData || {};\n const addrDetails = rawData?.addressDetails || {};\n\n if (details && Object.keys(details).length > 0 && !isDataLoaded) {\n let fName = \"\";\n let mName = \"\";\n let lName = \"\";\n\n if (details.firstName) {\n fName = details.firstName;\n mName = details.middleName || \"\";\n lName = details.lastName || \"\";\n } else if (details.consumerName) {\n const parts = details.consumerName.trim().split(/\\s+/);\n fName = parts[0] || \"\";\n if (parts.length === 2) lName = parts[1];\n if (parts.length > 2) {\n mName = parts.slice(1, -1).join(\" \");\n lName = parts[parts.length - 1];\n }\n }\n\n const updatedDefaults = {\n kno: savedData.kno || searchKno || \"\",\n consumerType: savedData.consumerType\n ? { name: savedData.consumerType }\n : details.consumerType\n ? { name: details.consumerType }\n : null,\n occupantType: savedData.occupantType\n ? { name: savedData.occupantType }\n : details.occupantType\n ? { name: details.occupantType }\n : null,\n categoryType: savedData.categoryType ? { name: savedData.categoryType } : null,\n firstName: savedData.firstName || fName,\n middleName: savedData.middleName || mName,\n lastName: savedData.lastName || lName,\n gender: savedData.gender\n ? { name: savedData.gender }\n : details.gender\n ? { name: details.gender }\n : null,\n parentSpouseName: savedData.parentSpouseName || details.parentSpouse || \"\",\n mobile: savedData.mobile || details.phoneNumber || addrDetails.mobileNo || \"\",\n whatsapp: savedData.whatsapp || addrDetails.whatsappNo || \"\",\n email: savedData.email || details.email || addrDetails.email || \"\",\n residents: savedData.residents || (addrDetails.noOfPerson ? String(addrDetails.noOfPerson) : \"\"),\n identityType: savedData.identityType ? { name: savedData.identityType } : null,\n documentNumber: savedData.documentNumber || \"\",\n informantIsConsumer: savedData.informantIsConsumer ?? true,\n informantName: savedData.informantName || details.informantName || \"\",\n informantRelation: savedData.informantRelation || details.informantRelation || \"\",\n documentId: savedData.documentId || details.documentNumber || null,\n documentProof: savedData.documentProof || null,\n idFile: savedData.idFile || null,\n ownerMobile: savedData.ownerMobile || \"\",\n tenantVerification: savedData.tenantVerification || \"\",\n designation: savedData.designation || \"\",\n department: savedData.department || \"\",\n employeeId: savedData.employeeId || \"\",\n entityName: savedData.entityName || \"\",\n contactPerson: savedData.contactPerson || \"\",\n consent: savedData.consent || false,\n };\n\n setDefaultValues(updatedDefaults);\n setLocalFormData(updatedDefaults);\n if (updatedDefaults.documentId) {\n setDocumentId(updatedDefaults.documentId);\n }\n if (updatedDefaults.documentProof) {\n setDocumentProof(updatedDefaults.documentProof);\n }\n setIsDataLoaded(true);\n }\n }, [searchData, formData?.connectionDetails, isDataLoaded]);\n\n // 🔹 FILE UPLOAD\n const handleUploadProof = async (e, onChange) => {\n const file = e.target.files[0];\n if (!file) return;\n\n if (file.size > 2000000) {\n setToast({ type: \"error\", message: t(\"Max size 2MB exceeded\") });\n return;\n }\n\n try {\n const res = await Digit.UploadServices.Filestorage(\"EKYC\", file, tenantId);\n const fileStoreId = res?.data?.files?.[0]?.fileStoreId;\n if (fileStoreId) {\n onChange(file.name);\n setDocumentProof(file.name);\n setDocumentId(fileStoreId);\n setToast({ type: \"success\", message: t(\"Upload successful\") });\n }\n } catch {\n setToast({ type: \"error\", message: t(\"Upload failed\") });\n }\n };\n\n const onFormValueChange = (setValue, data) => {\n // Avoid updating states on every keypress unless they affect conditional visibility\n const consumerTypeChanged =\n (data?.consumerType?.name || data?.consumerType) !==\n (localFormData?.consumerType?.name || localFormData?.consumerType);\n const occupantTypeChanged =\n (data?.occupantType?.name || data?.occupantType) !==\n (localFormData?.occupantType?.name || localFormData?.occupantType);\n const informantIsConsumerChanged = data?.informantIsConsumer !== localFormData?.informantIsConsumer;\n\n if (consumerTypeChanged || occupantTypeChanged || informantIsConsumerChanged) {\n setLocalFormData((prev) => ({\n ...prev,\n ...data,\n }));\n }\n\n // Determine validation\n const knoVal = data?.kno || searchKno;\n const consumerTypeVal = data?.consumerType;\n const occupantTypeVal = data?.occupantType;\n const categoryTypeVal = data?.categoryType;\n const firstNameVal = data?.firstName;\n const mobileVal = data?.mobile;\n const residentsVal = data?.residents;\n const consentVal = data?.consent;\n const docId = data?.documentId || documentId;\n const ownerMobileVal = data?.ownerMobile;\n\n let valid = true;\n if (!knoVal) valid = false;\n if (!consumerTypeVal) valid = false;\n if (!occupantTypeVal) valid = false;\n if (!categoryTypeVal) valid = false;\n if (!firstNameVal) valid = false;\n if (!mobileVal || !/^[6-9]\\d{9}$/.test(mobileVal)) valid = false;\n if (!residentsVal || Number(residentsVal) <= 0) valid = false;\n if (occupantTypeVal?.name === \"Tenanted\" && !docId && !ownerMobileVal) valid = false;\n if (!consentVal) valid = false;\n\n if (valid !== canSubmit) {\n setCanSubmit(valid);\n }\n };\n\n const onSubmit = async (data) => {\n const submitData = {\n kno: data.kno || searchKno,\n consumerType: data.consumerType?.name || data.consumerType,\n occupantType: data.occupantType?.name || data.occupantType,\n categoryType: data.categoryType?.name || data.categoryType,\n consumerName: data.consumerName || `${data.firstName || \"\"} ${data.middleName || \"\"} ${data.lastName || \"\"}`.trim(),\n firstName: data.firstName,\n middleName: data.middleName,\n lastName: data.lastName,\n gender: data.gender?.name || data.gender,\n parentSpouseName: data.parentSpouseName,\n relation: data.relation || savedData.relation || \"\",\n mobile: data.mobile,\n whatsapp: data.whatsapp,\n email: data.email,\n residents: data.residents,\n documentId: documentId,\n documentProof: documentProof,\n ownerMobile: data.ownerMobile,\n tenantVerification: data.tenantVerification,\n designation: data.designation,\n department: data.department,\n employeeId: data.employeeId,\n landline: data.landline || savedData.landline || \"\",\n entityRelation: data.entityRelation || savedData.entityRelation || \"\",\n contactPerson: data.contactPerson,\n entityName: data.entityName,\n idProof: data.identityType?.name || data.identityType,\n idNumber: data.documentNumber,\n consent: data.consent,\n informantIsConsumer: data.informantIsConsumer ?? true,\n informantName: data.informantName,\n informantRelation: data.informantRelation,\n };\n\n try {\n await updateMutation.mutateAsync({\n RequestInfo: {},\n updateType: \"CONSUMER\",\n ...submitData,\n });\n setToast({ type: \"success\", message: t(\"Data updated successfully!\") });\n onSelect(config.key, submitData);\n } catch (error) {\n setToast({ type: \"error\", message: t(\"Failed to update consumer details\") });\n }\n };\n\n if (isLoading) {\n return <Loader />;\n }\n\n const Config = AadhaarVerificationConfig(t, localFormData, handleUploadProof, setDocumentId, documentId);\n\n return (\n <Fragment>\n <FormComposer\n key={isDataLoaded ? \"loaded\" : \"loading\"}\n isDisabled={!canSubmit}\n label={t(\"ES_COMMON_CONTINUE\")}\n config={Config.map((item) => ({\n ...item,\n isCollapsible: true,\n isDefaultOpen: true,\n }))}\n onSubmit={onSubmit}\n defaultValues={defaultValues}\n onFormValueChange={onFormValueChange}\n noCard={false}\n submitInForm={true}\n />\n {toast && (\n <Toast\n error={toast.type === \"error\"}\n label={toast.message}\n onClose={() => setToast(null)}\n />\n )}\n </Fragment>\n );\n};\n\nexport default AadhaarVerification;\n","import AadhaarVerification from \"../components/AadhaarVerification\";\n\nexport const ekycConfig = [\n {\n body: [\n {\n route: \"consumer-details\",\n component: AadhaarVerification,\n key: \"aadhaarVerification\",\n texts: {\n header: \"EKYC_CONSUMER_CONNECTION\",\n submitBarLabel: \"COMMON_SAVE_NEXT\",\n },\n timeLine: [\n {\n currentStep: 1,\n actions: \"EKYC_CONSUMER_CONNECTION\",\n },\n ],\n },\n {\n route: \"address-details\",\n component: \"AddressDetails\",\n key: \"addressDetails\",\n doorImage: true,\n showMapActualLocation: false,\n texts: {\n header: \"EKYC_ADDRESS_DETAILS\",\n submitBarLabel: \"COMMON_SAVE_NEXT\",\n },\n timeLine: [\n {\n currentStep: 2,\n actions: \"EKYC_ADDRESS_DETAILS\",\n },\n ],\n },\n {\n route: \"property-info\",\n component: \"PropertyInfo\",\n key: \"propertyDetails\",\n texts: {\n header: \"EKYC_PROPERTY_INFO\",\n submitBarLabel: \"COMMON_SAVE_NEXT\",\n },\n timeLine: [\n {\n currentStep: 3,\n actions: \"EKYC_PROPERTY_INFO\",\n },\n ],\n },\n {\n route: \"meter-details\",\n component: \"MeterDetails\",\n key: \"meterDetails\",\n texts: {\n header: \"EKYC_METER_DETAILS\",\n submitBarLabel: \"COMMON_SAVE_NEXT\",\n },\n timeLine: [\n {\n currentStep: 4,\n actions: \"EKYC_METER_DETAILS\",\n },\n ],\n },\n ],\n },\n];\n","import React, { useEffect, useRef } from \"react\";\nimport { useTranslation } from \"react-i18next\";\n// import { useQueryClient } from \"react-query\";\nimport { Redirect, Route, Switch, useHistory, useLocation, useRouteMatch } from \"react-router-dom\";\nimport { VerticalTimeline } from \"@djb25/digit-ui-react-components\";\nimport { ekycConfig } from \"../../config/config\";\n\nconst EKYCForm = ({ path: passedPath }) => {\n // const queryClient = useQueryClient();\n const match = useRouteMatch();\n const { t } = useTranslation();\n const location = useLocation();\n const { pathname } = location;\n const history = useHistory();\n\n let config = [];\n const [params, setParams] = Digit.Hooks.useSessionStorage(\"EKYC_CREATE\", {});\n\n useEffect(() => {\n if (location.state && Object.keys(location.state).length > 0) {\n const { edits, ...rest } = location.state;\n setParams({ ...params, ...rest, ...edits });\n }\n }, [location.state]);\n\n const goNext = (skipStep, index, isAddMultiple, key) => {\n let currentPath = pathname.split(\"/\").pop();\n let routeObj = config.find((routeObj) => (key ? routeObj.key === key : routeObj.route === currentPath));\n if (!routeObj) routeObj = config.find((routeObj) => routeObj.route === currentPath);\n\n let nextStep = null;\n const currentIndex = config.findIndex((c) => c.route === routeObj.route);\n if (currentIndex > -1 && currentIndex < config.length - 1) {\n nextStep = config[currentIndex + 1].route;\n }\n\n let redirectWithHistory = history.push;\n if (skipStep) {\n redirectWithHistory = history.replace;\n }\n\n const base = passedPath || match.path.split(\"/\").slice(0, -1).join(\"/\");\n if (nextStep === null) {\n return redirectWithHistory(`${base}/review`, { ...params, edits: params });\n }\n\n redirectWithHistory(`${base}/${nextStep}`, { ...params });\n };\n\n function handleSelect(key, data, skipStep, index, isAddMultiple = false, silent = false) {\n setParams((prev) => ({ ...prev, [key]: { ...params[key], ...data } }));\n if (!silent) {\n goNext(skipStep, index, isAddMultiple, key);\n }\n }\n\n // const onSuccess = () => {\n // clearParams();\n // queryClient.invalidateQueries(\"EKYC_CREATE\");\n // };\n\n ekycConfig.forEach((obj) => {\n config = config.concat(obj.body);\n });\n\n config.indexRoute = \"consumer-details\";\n\n const formStepRoutes = config.map((c) => c.route);\n const isFormStep = formStepRoutes.some((route) => pathname.includes(route));\n\n const sectionRefs = useRef({});\n\n useEffect(() => {\n if (isFormStep) {\n const currentRoute = pathname.split(\"/\").pop();\n if (sectionRefs.current[currentRoute]) {\n sectionRefs.current[currentRoute].scrollIntoView({ behavior: \"smooth\", block: \"start\" });\n }\n }\n }, [pathname, isFormStep]);\n\n return (\n <React.Fragment>\n <div className=\"employee-form-section-wrapper\">\n <VerticalTimeline config={config} showFinalStep={true} />\n <div className=\"employee-form-section\">\n <Switch>\n <Route path={formStepRoutes.map((route) => `${passedPath || match.path.split(\"/\").slice(0, -1).join(\"/\")}/${route}`)}>\n <div className=\"single-page-form-container\">\n {config.map((routeObj, index) => {\n const { component } = routeObj;\n const Component = typeof component === \"string\" ? Digit.ComponentRegistryService.getComponent(component) : component;\n\n return (\n <div key={index} ref={(el) => (sectionRefs.current[routeObj.route] = el)} className=\"form-section-unit\">\n <Component\n config={{ ...routeObj, isCollapsible: true, defaultOpen: true }}\n onSelect={handleSelect}\n t={t}\n formData={params}\n // formData={{ ...params, address: params.addressDetails }}\n />\n </div>\n );\n })}\n </div>\n </Route>\n <Route>\n <Redirect to={`${passedPath || match.path.split(\"/\").slice(0, -1).join(\"/\")}/${config.indexRoute}`} />\n </Route>\n </Switch>\n </div>\n </div>\n </React.Fragment>\n );\n};\n\nexport default EKYCForm;\n","import React, { useMemo, useState, useEffect } from \"react\";\nimport { Modal, Close, Table, Toast } from \"@djb25/digit-ui-react-components\";\n\nconst AssignEkycModal = ({ surveyor, closeModal, refetchDashboard }) => {\n const [selectedKnos, setSelectedKnos] = useState([]);\n const [isBulkSelection, setIsBulkSelection] = useState(false);\n const [currentPage, setCurrentPage] = useState(0);\n const [pageSize, setPageSize] = useState(10);\n const [showToast, setShowToast] = useState(false);\n const [toastData, setToastData] = useState({\n error: false,\n label: \"\",\n });\n const [filters, setFilters] = useState({\n kno: \"\", // search value\n pincode: \"\",\n zoneName: \"\",\n ward: \"\",\n assembly: \"\",\n mrkey: \"\",\n ekycStatus: \"\",\n });\n\n const [debouncedFilters, setDebouncedFilters] = useState(filters);\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setDebouncedFilters(filters);\n }, 500);\n\n return () => clearTimeout(timer);\n }, [filters]);\n\n useEffect(() => {\n setCurrentPage(0);\n }, [debouncedFilters]);\n\n const { data: applicationData, isFetching: isLoading } = Digit.Hooks.ekyc.useEkycApplicationList(\n {\n ...(debouncedFilters.kno && {\n kno: debouncedFilters.kno,\n }),\n\n ...(debouncedFilters.ekycStatus && {\n ekycStatus: debouncedFilters.ekycStatus,\n }),\n\n ...(debouncedFilters.zoneName && {\n zoneName: debouncedFilters.zoneName,\n }),\n\n ...(debouncedFilters.assembly && {\n assembly: debouncedFilters.assembly,\n }),\n\n ...(debouncedFilters.ward && {\n ward: debouncedFilters.ward,\n }),\n\n ...(debouncedFilters.mrkey && {\n mrkey: debouncedFilters.mrkey,\n }),\n\n ...(debouncedFilters.pincode && {\n pincode: debouncedFilters.pincode,\n }),\n },\n {\n tenantId: \"dl.djb\",\n offset: currentPage * pageSize,\n limit: pageSize,\n },\n {\n keepPreviousData: true,\n }\n );\n\n const assignmentMutation = Digit.Hooks.ekyc.useEkycAssignmentCreate({\n onSuccess: (response) => {\n if (response?.error) {\n setToastData({\n error: true,\n label: response?.data?.message || \"Something went wrong\",\n });\n\n setShowToast(true);\n return;\n }\n\n setToastData({\n error: false,\n label: \"Assignment successful\",\n });\n\n setShowToast(true);\n\n // optional delay so user can see the success toast\n setTimeout(async () => {\n await refetchDashboard();\n closeModal();\n }, 1000);\n },\n\n onError: (error) => {\n setToastData({\n error: true,\n label: error?.data?.message || error?.response?.data?.message || \"Something went wrong\",\n });\n\n setShowToast(true);\n },\n });\n\n const tableData = applicationData?.consumerList || [];\n\n const getAssignmentPayload = () => {\n if (isBulkSelection) {\n const filterMappings = [\n { key: \"ekycStatus\", type: \"EKYCSTATUS\" },\n { key: \"zoneName\", type: \"ZONENAME\" },\n { key: \"assembly\", type: \"ASSEMBLY\" },\n { key: \"ward\", type: \"WARD\" },\n { key: \"mrkey\", type: \"MRKEY\" },\n { key: \"pincode\", type: \"PINCODE\" },\n ];\n\n const appliedFilter = filterMappings.find(({ key }) => debouncedFilters[key]);\n\n if (appliedFilter) {\n return {\n assignmentType: appliedFilter.type,\n assignmentValue: debouncedFilters[appliedFilter.key],\n };\n }\n }\n\n console.log(\"=-=-==-=-=-=-\", {\n assignmentType: \"KNO\",\n assignmentValues: selectedKnos,\n });\n\n return {\n assignmentType: \"KNO\",\n assignmentValues: selectedKnos,\n };\n };\n const handleAssign = () => {\n const { assignmentType, assignmentValue, assignmentValues } = getAssignmentPayload();\n\n assignmentMutation.mutate({\n tenantId: \"dl.djb\",\n surveyorId: surveyor?.owner?.uuid,\n assignmentType,\n assignmentValue,\n assignmentValues,\n });\n };\n\n const handleSelectAll = () => {\n setIsBulkSelection(true);\n\n const pageKnos = tableData.map((item) => item.kno);\n\n const allSelected = pageKnos.length > 0 && pageKnos.every((kno) => selectedKnos.includes(kno));\n\n setSelectedKnos((prev) => (allSelected ? prev.filter((kno) => !pageKnos.includes(kno)) : [...new Set([...prev, ...pageKnos])]));\n };\n\n const handleFilterChange = (key, value) => {\n setFilters((prev) => ({\n ...prev,\n [key]: value,\n }));\n };\n\n const columns = useMemo(\n () => [\n {\n Header: () => (\n <input\n type=\"checkbox\"\n checked={tableData.length > 0 && tableData.every((item) => selectedKnos.includes(item.kno))}\n onChange={handleSelectAll}\n />\n ),\n id: \"selection\",\n Cell: ({ row }) => {\n const kno = row.original.kno;\n\n return <input type=\"checkbox\" checked={selectedKnos.includes(kno)} onChange={() => handleSelect(kno)} />;\n },\n },\n {\n Header: \"KNO\",\n accessor: \"kno\",\n },\n {\n Header: \"Consumer Name\",\n accessor: (row) => `${row.firstName || \"\"} ${row.middleName || \"\"} ${row.lastName || \"\"}`.trim(),\n id: \"consumerName\",\n },\n {\n Header: \"Zone\",\n accessor: \"zoneName\",\n },\n {\n Header: \"Pincode\",\n accessor: \"pincode\",\n },\n {\n Header: \"Status\",\n accessor: \"status\",\n Cell: ({ value }) => (\n <span className={`status-badge ${value === \"ACTIVE\" ? \"verified\" : value === \"PENDING\" ? \"pending\" : \"assigned\"}`}>{value}</span>\n ),\n },\n {\n Header: \"eKYC Status\",\n accessor: \"ekycStatus\",\n Cell: ({ value }) => value || \"-\",\n },\n ],\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [selectedKnos, tableData]\n );\n\n const handleSelect = (kno) => {\n setSelectedKnos((prev) => (prev.includes(kno) ? prev.filter((item) => item !== kno) : [...prev, kno]));\n };\n\n return (\n <Modal\n headerBarMain={`Assign KNOs to ${surveyor?.name}`}\n headerBarEnd={<Close onClick={closeModal} />}\n actionCancelLabel=\"Cancel\"\n actionCancelOnSubmit={closeModal}\n actionSaveLabel={`Assign ${selectedKnos.length} KNOs`}\n actionSaveOnSubmit={handleAssign}\n >\n <div className=\"assign-knos-modal\">\n {/* Filters */}\n <div className=\"filters-grid\">\n <input className=\"form-control\" placeholder=\"KNO\" value={filters.kno} onChange={(e) => handleFilterChange(\"kno\", e.target.value)} />\n\n <input\n className=\"form-control\"\n placeholder=\"Pincode\"\n value={filters.pincode}\n onChange={(e) => handleFilterChange(\"pincode\", e.target.value)}\n />\n\n <input\n className=\"form-control\"\n placeholder=\"Zone\"\n value={filters.zoneName}\n onChange={(e) => handleFilterChange(\"zoneName\", e.target.value)}\n />\n\n {/* <SelectEkycZones\n t={t}\n isMultiSelect={false}\n config={{\n key: \"zoneCode\",\n }}\n formData={{\n zoneIds: filters.zoneCode ? [{ code: filters.zoneCode, name: filters.zoneName }] : [],\n }}\n onSelect={(key, value) => {\n console.log(value);\n handleFilterChange(\"zoneName\", value);\n }}\n placeHolder=\"Zones\"\n /> */}\n\n {/* <input className=\"form-control\" placeholder=\"Ward\" value={filters.ward} onChange={(e) => handleFilterChange(\"ward\", e.target.value)} />\n\n <input\n className=\"form-control\"\n placeholder=\"Assembly\"\n value={filters.assembly}\n onChange={(e) => handleFilterChange(\"assembly\", e.target.value)}\n />\n\n <input className=\"form-control\" placeholder=\"MR Key\" value={filters.mrkey} onChange={(e) => handleFilterChange(\"mrkey\", e.target.value)} />\n\n <select className=\"form-control\" value={filters.ekycStatus} onChange={(e) => handleFilterChange(\"ekycStatus\", e.target.value)}>\n <option value=\"\">All eKYC Status</option>\n <option value=\"PENDING\">Pending</option>\n <option value=\"APPROVED\">Approved</option>\n <option value=\"REJECTED\">Rejected</option>\n </select> */}\n </div>\n\n {/* Table */}\n <Table\n tableTitle=\"eKYC Applications\"\n tableClass=\"ekycTable\"\n data={tableData}\n columns={columns}\n isLoading={isLoading}\n totalRecords={applicationData?.totalCount || 0}\n currentPage={currentPage}\n pageSizeLimit={pageSize}\n manualPagination={true}\n isPaginationRequired={true}\n onNextPage={() => {\n if (currentPage < (applicationData?.totalPages || 1) - 1) {\n setCurrentPage((prev) => prev + 1);\n }\n }}\n onPrevPage={() => {\n if (currentPage > 0) {\n setCurrentPage((prev) => prev - 1);\n }\n }}\n onFirstPage={() => {\n setCurrentPage(0);\n }}\n onLastPage={() => {\n setCurrentPage(Math.max((applicationData?.totalPages || 1) - 1, 0));\n }}\n onPageSizeChange={(e) => {\n setPageSize(Number(e.target.value));\n setCurrentPage(0);\n }}\n />\n </div>\n {showToast && <Toast error={toastData.error} label={toastData.label} onClose={() => setShowToast(false)} />}\n </Modal>\n );\n};\n\nexport default AssignEkycModal;\n","export const downloadSurveyorPDF = async ({\n rows,\n surveyorName,\n employeeId,\n mobileNumber,\n vendorName,\n supervisorName,\n dashboardInfo,\n t,\n}) => {\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const initData = Digit.SessionStorage.get(\"initData\");\n const tenants = initData?.tenants || [];\n const tenantInfo = tenants.find((tenant) => tenant.code === tenantId);\n\n const capitalize = (text) =>\n text && text.substr(0, 1).toUpperCase() + text.substr(1);\n const ulbCamel = (ulb) =>\n ulb &&\n ulb\n .toLowerCase()\n .split(\" \")\n .map(capitalize)\n .join(\" \");\n\n const name = \"Delhi Jal Board\";\n const email = \"contact@delhijalboard.nic.in\";\n const phoneNumber = \"+91-11-23538416\";\n\n const details = [\n {\n title: t(\"SURVEYOR_DETAILS\"),\n asSectionHeader: true,\n values: [\n { title: t(\"SURVEYOR_NAME\"), value: surveyorName },\n { title: t(\"EMPLOYEE_ID\"), value: employeeId },\n { title: t(\"MOBILE_NUMBER\"), value: mobileNumber },\n { title: t(\"VENDOR_NAME\"), value: vendorName },\n { title: t(\"SUPERVISOR_NAME\"), value: supervisorName }\n ].filter((item) => item.value),\n },\n {\n title: t(\"SUMMARY_STATISTICS\"),\n asSectionHeader: true,\n values: [\n { title: t(\"TOTAL_ASSIGNED\"), value: dashboardInfo?.total || 0 },\n { title: t(\"COMPLETED\"), value: dashboardInfo?.completed || 0 },\n { title: t(\"PENDING\"), value: dashboardInfo?.pending || 0 },\n { title: t(\"SUBMITTED\"), value: dashboardInfo?.submittedCount || 0 },\n ].filter((item) => item.value),\n },\n ];\n\n if (\n window.Digit &&\n window.Digit.Utils &&\n window.Digit.Utils.pdf &&\n window.Digit.Utils.pdf.generateSurveyorReport\n ) {\n window.Digit.Utils.pdf.generateSurveyorReport({\n tenantId,\n logo: null,\n name,\n email,\n phoneNumber,\n heading: t(\"EKYC_SURVEYOR_REPORT\"),\n details,\n applicationNumber: employeeId,\n rows,\n t,\n });\n } else {\n console.error(\"Digit.Utils.pdf.generateSurveyorReport is not available\");\n }\n};\n","import React, { useMemo, useState, useRef, useEffect } from \"react\";\nimport { ResponsiveContainer, BarChart, Bar, XAxis, YAxis, Tooltip, CartesianGrid, PieChart, Pie, Cell, Legend } from \"recharts\";\n\nimport { Card, SubmitBar, ActionBar, Menu, Loader, Table } from \"@djb25/digit-ui-react-components\";\n\nimport { useTranslation } from \"react-i18next\";\nimport { useParams } from \"react-router-dom\";\n\nimport AssignEkycModal from \"./AssignEkycModal\";\nimport { downloadSurveyorPDF } from \"../utils/reportDownloader\";\n\nconst SurveyorDetailsDashboard = () => {\n const tenantId = Digit.ULBService.getCurrentTenantId();\n\n const [showModal, setShowModal] = useState(false);\n const [showOptions, setShowOptions] = useState(false);\n\n const { id: surveyorId } = useParams();\n const ownerIds = Digit.SessionStorage.get(\"User\")?.info?.uuid;\n\n const { t } = useTranslation();\n\n const searchParams = surveyorId ? { ids: surveyorId } : { ownerIds };\n\n const { data: surveyorSearchResponse, isLoading } = Digit.Hooks.fsm.useSurveyorSearch(tenantId, searchParams, { staleTime: Infinity });\n\n const roles = Digit.SessionStorage.get(\"User\")?.info?.roles.map((ele) => ele.code);\n\n const surveyor = useMemo(() => {\n return surveyorSearchResponse?.surveyors?.[0] || null;\n }, [surveyorSearchResponse]);\n\n const { data: vendorData } = Digit.Hooks.fsm.useDsoSearch(tenantId, { status: \"ACTIVE\" }, { enabled: !!tenantId });\n const { data: supervisorSearchResponse } = Digit.Hooks.fsm.useSupervisorSearch(tenantId, { status: \"ACTIVE\" }, { enabled: !!tenantId });\n\n const vendorName = useMemo(() => {\n if (!vendorData || !surveyor?.vendorId) return \"N/A\";\n const mappedVendor = vendorData.find((v) => v.dsoDetails?.id === surveyor.vendorId || v.dsoDetails?.vendorId === surveyor.vendorId);\n return mappedVendor?.dsoDetails?.name || surveyor.vendorId || \"N/A\";\n }, [vendorData, surveyor?.vendorId]);\n\n const supervisorName = useMemo(() => {\n if (!supervisorSearchResponse?.supervisors || !surveyor?.supervisorId) return \"N/A\";\n const mappedSupervisor = supervisorSearchResponse.supervisors.find((s) => s.id === surveyor.supervisorId || s.owner?.uuid === surveyor.supervisorId);\n return mappedSupervisor?.name || mappedSupervisor?.owner?.name || surveyor.supervisorId || \"N/A\";\n }, [supervisorSearchResponse, surveyor?.supervisorId]);\n\n const fullName = surveyor?.owner?.name || surveyor?.name || \"N/A\";\n const employeeId = surveyor?.employeeId || surveyor?.owner?.uuid || surveyor?.id;\n const mobileNumber = surveyor?.owner?.mobileNumber || surveyor?.mobileNo || \"N/A\";\n\n const [currentPage, setCurrentPage] = useState(0);\n const [pageSize, setPageSize] = useState(20);\n const queryParams = {\n tenantId: \"dl.djb\",\n offset: currentPage * pageSize,\n limit: pageSize,\n surveyorId: surveyor?.owner?.uuid,\n };\n\n const { isFetching: isDashboardLoading, data: dashboardData = {}, refetch: refetchDashboard } = Digit.Hooks.ekyc.useEkycSurveyorDashboard(\n {},\n queryParams,\n {\n enabled: !!queryParams.tenantId && !!queryParams.surveyorId,\n keepPreviousData: true,\n }\n );\n\n const knoColumns = useMemo(\n () => [\n {\n Header: \"KNO\",\n accessor: \"kno\",\n },\n {\n Header: \"Consumer Name\",\n accessor: (row) => `${row.firstName || \"\"} ${row.middleName || \"\"} ${row.lastName || \"\"}`.trim(),\n id: \"consumerName\",\n },\n {\n Header: \"Zone\",\n accessor: \"zoneName\",\n },\n {\n Header: \"Pincode\",\n accessor: \"pincode\",\n },\n {\n Header: \"Status\",\n accessor: \"status\",\n Cell: ({ value }) => (\n <span className={`status-badge ${value === \"ACTIVE\" ? \"verified\" : value === \"PENDING\" ? \"pending\" : \"assigned\"}`}>{value}</span>\n ),\n },\n {\n Header: \"eKYC Status\",\n accessor: \"ekycStatus\",\n Cell: ({ value }) => value || \"-\",\n },\n ],\n []\n );\n\n // ─── Download Report hooks (must be before any early returns) ───────\n\n const [showReportMenu, setShowReportMenu] = useState(false);\n const [customDate, setCustomDate] = useState({ from: \"\", to: \"\" });\n const [showCustomPicker, setShowCustomPicker] = useState(false);\n const reportMenuRef = useRef(null);\n\n useEffect(() => {\n const handler = (e) => {\n if (reportMenuRef.current && !reportMenuRef.current.contains(e.target)) {\n setShowReportMenu(false);\n setShowCustomPicker(false);\n }\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, []);\n\n if (isLoading) {\n return <Loader />;\n }\n\n if (!surveyor) {\n return (\n <Card>\n <div style={{ padding: \"24px\" }}>{t(\"NO_SURVEYOR_FOUND\")}</div>\n </Card>\n );\n }\n\n const weeklyData = [\n { day: \"Mon\", completed: 4 },\n { day: \"Tue\", completed: 6 },\n { day: \"Wed\", completed: 3 },\n { day: \"Thu\", completed: 8 },\n { day: \"Fri\", completed: 5 },\n { day: \"Sat\", completed: 7 },\n { day: \"Sun\", completed: 2 },\n ];\n\n const statusData = [\n {\n name: \"Completed\",\n value: surveyor?.completedCases || 0,\n color: \"#10B981\",\n },\n {\n name: \"Pending\",\n value: surveyor?.pendingCases || 0,\n color: \"#F59E0B\",\n },\n {\n name: \"Rejected\",\n value: surveyor?.rejectedCases || 0,\n color: \"#EF4444\",\n },\n ];\n\n const getDateRange = (filter) => {\n const now = new Date();\n const start = new Date(now);\n if (filter === \"today\") {\n start.setHours(0, 0, 0, 0);\n return { from: start, to: now };\n }\n if (filter === \"week\") {\n start.setDate(now.getDate() - now.getDay());\n start.setHours(0, 0, 0, 0);\n return { from: start, to: now };\n }\n if (filter === \"month\") {\n start.setDate(1);\n start.setHours(0, 0, 0, 0);\n return { from: start, to: now };\n }\n return null;\n };\n\n const handlePresetDownload = (filter) => {\n const allRows = dashboardData?.dashboardInfo?.consumerList || [];\n\n const range = getDateRange(filter);\n\n if (!range) return;\n\n const filtered = allRows.filter((r) => {\n const ts =\n r.submittedAt ||\n r.createdTime ||\n r.lastModifiedTime ||\n 0;\n\n return ts >= range.from.getTime() && ts <= range.to.getTime();\n });\n\n downloadSurveyorPDF({\n rows: filtered.length ? filtered : allRows,\n surveyorName: fullName,\n vendorName,\n supervisorName,\n employeeId,\n mobileNumber,\n dashboardInfo: dashboardData?.dashboardInfo,\n t,\n });\n\n setShowReportMenu(false);\n setShowCustomPicker(false);\n };\n\n const handleCustomDownload = () => {\n if (!customDate.from || !customDate.to) {\n alert(t(\"SELECT_DATE_RANGE\") || \"Please select both From and To dates.\");\n return;\n }\n const from = new Date(customDate.from);\n const to = new Date(customDate.to);\n to.setHours(23, 59, 59, 999);\n const allRows = dashboardData?.dashboardInfo?.consumerList || [];\n const filtered = allRows.filter((r) => {\n const ts = r.createdTime || r.lastModifiedTime || 0;\n return ts >= from.getTime() && ts <= to.getTime();\n });\n downloadSurveyorPDF({\n rows: filtered.length ? filtered : allRows,\n surveyorName: fullName,\n vendorName,\n supervisorName,\n employeeId,\n mobileNumber,\n dashboardInfo: dashboardData?.dashboardInfo,\n t,\n });\n setShowReportMenu(false);\n setShowCustomPicker(false);\n };\n\n const StatCard = ({ title, value, type, isLoading }) => (\n <div className={`stat-card ${type}`}>\n {isLoading ? (\n <React.Fragment>\n <div className=\"stat-title skeleton skeleton-text\"></div>\n <div className=\"stat-value skeleton skeleton-number\"></div>\n </React.Fragment>\n ) : (\n <React.Fragment>\n <div className=\"stat-title\">{title}</div>\n <div className=\"stat-value\">{value}</div>\n </React.Fragment>\n )}\n </div>\n );\n\n const options = [{ action: \"Assign\" }];\n\n const handleMenuSelect = (option) => {\n setShowOptions(false); // close menu\n setShowModal(true);\n };\n\n const closeModal = async () => {\n setShowModal(false);\n };\n\n return (\n <Card className=\"surveyor-dashboard\">\n {/* Header + Download Report */}\n <div className=\"ekyc-dashboard-section\">\n <div className=\"ekyc-dashboard-header\">\n <div className=\"avatar\">{fullName?.charAt(0)?.toUpperCase()}</div>\n\n <div className=\"header-content\">\n <h2 className=\"name\">{fullName}</h2>\n\n <div className=\"designation\">{surveyor?.description || t(\"FIELD_SURVEYOR\")}</div>\n\n <div className=\"employee-id\">\n {t(\"EMPLOYEE_ID\")}: {employeeId}\n </div>\n </div>\n </div>\n\n {/* Download Report — far right */}\n <div className=\"report-download\" ref={reportMenuRef}>\n <button\n className=\"download-btn\"\n onClick={() => {\n setShowReportMenu((p) => !p);\n setShowCustomPicker(false);\n }}\n >\n {t(\"DOWNLOAD_REPORT\") || \"Download Report\"}\n </button>\n\n {showReportMenu && (\n <div className=\"report-menu\">\n {[\n { label: t(\"TODAY\") || \"Today\", key: \"today\" },\n { label: t(\"THIS_WEEK\") || \"This Week\", key: \"week\" },\n { label: t(\"THIS_MONTH\") || \"This Month\", key: \"month\" },\n ].map(({ label, key }) => (\n <div\n key={key}\n className=\"menu-item\"\n onClick={() => handlePresetDownload(key)}\n >\n {label}\n </div>\n ))}\n\n <div\n className=\"custom-date-trigger\"\n onClick={() => setShowCustomPicker((p) => !p)}\n >\n {t(\"CUSTOM_DATE\") || \"Custom Date\"}\n </div>\n\n {showCustomPicker && (\n <div className=\"custom-picker\">\n <div className=\"date-field\">\n <label className=\"date-label\">\n {t(\"FROM_DATE\") || \"From\"}\n </label>\n <input\n type=\"date\"\n className=\"date-input\"\n value={customDate.from}\n onChange={(e) =>\n setCustomDate((d) => ({ ...d, from: e.target.value }))\n }\n />\n </div>\n\n <div className=\"date-field\">\n <label className=\"date-label\">\n {t(\"TO_DATE\") || \"To\"}\n </label>\n <input\n type=\"date\"\n className=\"date-input\"\n value={customDate.to}\n onChange={(e) =>\n setCustomDate((d) => ({ ...d, to: e.target.value }))\n }\n />\n </div>\n\n <button\n className=\"download-action-btn\"\n onClick={handleCustomDownload}\n >\n {t(\"DOWNLOAD\") || \"Download\"}\n </button>\n </div>\n )}\n </div>\n )}\n </div>\n </div>\n\n {/* Stats */}\n <div className=\"stats-wrapper\">\n <StatCard title={t(\"TOTAL_ASSIGNED\")} value={dashboardData?.dashboardInfo?.total || 0} type=\"today\" isLoading={isDashboardLoading} />\n <StatCard title={t(\"COMPLETED\")} value={dashboardData?.dashboardInfo?.completed || 0} type=\"week\" isLoading={isDashboardLoading} />\n <StatCard title={t(\"PENDING\")} value={dashboardData?.dashboardInfo?.pending || 0} type=\"pending\" isLoading={isDashboardLoading} />\n <StatCard title={t(\"SUBMITTED\")} value={dashboardData?.dashboardInfo?.submittedCount || 0} type=\"month\" isLoading={isDashboardLoading} />\n </div>\n\n {/* Charts */}\n <div className=\"charts-wrapper\">\n {/* Weekly Chart */}\n <div className=\"chart-card\">\n <h3 className=\"chart-title\">{t(\"WEEKLY_SURVEY_PROGRESS\")}</h3>\n\n <ResponsiveContainer width=\"100%\" height={300}>\n <BarChart data={weeklyData}>\n <CartesianGrid strokeDasharray=\"3 3\" />\n\n <XAxis dataKey=\"day\" />\n\n <YAxis />\n\n <Tooltip />\n\n <Bar dataKey=\"completed\" fill=\"#0B2559\" radius={[6, 6, 0, 0]} />\n </BarChart>\n </ResponsiveContainer>\n </div>\n\n {/* Pie Chart */}\n <div className=\"chart-card\">\n <h3 className=\"chart-title\">{t(\"CASE_DISTRIBUTION\")}</h3>\n\n <ResponsiveContainer width=\"100%\" height={300}>\n <PieChart>\n <Pie data={statusData} dataKey=\"value\" nameKey=\"name\" outerRadius={90} label>\n {statusData.map((entry, index) => (\n <Cell key={index} fill={entry.color} />\n ))}\n </Pie>\n\n <Tooltip />\n\n <Legend />\n </PieChart>\n </ResponsiveContainer>\n </div>\n </div>\n\n {/* Details */}\n <div className=\"ekyc-dashboard-section\">\n <div className=\"details-grid\">\n <div className=\"detail-item\">\n <span className=\"label\">{t(\"MOBILE\")}:</span>\n <span className=\"value\">{surveyor?.owner?.mobileNumber || surveyor?.mobileNo || \"N/A\"}</span>\n </div>\n\n <div className=\"detail-item\">\n <span className=\"label\">{t(\"EMAIL\")}:</span>\n <span className=\"value\">{surveyor?.owner?.emailId || \"N/A\"}</span>\n </div>\n\n <div className=\"detail-item\">\n <span className=\"label\">{t(\"GENDER\")}:</span>\n <span className=\"value\">{surveyor?.owner?.gender || \"N/A\"}</span>\n </div>\n\n <div className=\"detail-item\">\n <span className=\"label\">{t(\"STATUS\")}:</span>\n <span className=\"value\">{surveyor?.status || \"N/A\"}</span>\n </div>\n\n <div className=\"detail-item\">\n <span className=\"label\">{t(\"SERVICE_TYPE\")}:</span>\n <span className=\"value\">{surveyor?.additionalDetails?.serviceType || \"N/A\"}</span>\n </div>\n\n <div className=\"detail-item\">\n <span className=\"label\">{t(\"VENDOR_ID\")}:</span>\n <span className=\"value\">{surveyor?.vendorId || \"N/A\"}</span>\n </div>\n </div>\n </div>\n <Card className=\"dashboard-card\">\n <Table\n t={t}\n tableTitle={t(\"ASSIGNED_KNOS\")}\n tableClass=\"ekycTable\"\n data={dashboardData?.dashboardInfo?.consumerList || []}\n columns={knoColumns}\n isLoading={isDashboardLoading}\n totalRecords={dashboardData?.dashboardInfo?.total}\n currentPage={currentPage}\n pageSizeLimit={pageSize}\n isPaginationRequired={true}\n onNextPage={() => {\n if (currentPage < (dashboardData?.dashboardInfo?.totalPages || 1) - 1) {\n setCurrentPage((prev) => prev + 1);\n }\n }}\n onPrevPage={() => {\n if (currentPage > 0) {\n setCurrentPage((prev) => prev - 1);\n }\n }}\n onFirstPage={() => {\n setCurrentPage(0);\n }}\n onLastPage={() => {\n setCurrentPage(Math.max((dashboardData?.dashboardInfo?.totalPages || 1) - 1, 0));\n }}\n onPageSizeChange={(e) => {\n setPageSize(Number(e.target.value));\n setCurrentPage(0);\n }}\n />\n </Card>\n {/* Actions */}\n {\n (!roles.includes(\"EKYC_SURVEYOR\") || roles.includes(\"EMPLOYEE\")) && (\n <ActionBar>\n <SubmitBar label={t(\"EKYC_ASSIGN_KNOS\")} onSubmit={() => setShowOptions((prev) => !prev)} />\n\n {showOptions && (\n <Menu\n options={options}\n optionKey={\"action\"}\n t={t}\n onSelect={handleMenuSelect}\n style={{\n color: \"#FFFFFF\",\n fontSize: \"18px\",\n }}\n />\n )}\n </ActionBar>\n \n )\n }\n\n {showModal && <AssignEkycModal surveyor={surveyor} closeModal={closeModal} refetchDashboard={refetchDashboard} />}\n </Card>\n\n );\n};\n\nexport default SurveyorDetailsDashboard;\n","import React from \"react\";\nexport function formReducer(state, payload) {\n const storageKey = \"EKYC.SW.INBOX\";\n\n // ✅ safety for SLA\n switch (payload.action) {\n case \"mutateSearchForm\":\n Digit.SessionStorage.set(storageKey, { ...state, searchForm: payload.data });\n return { ...state, searchForm: payload.data };\n\n case \"mutateFilterForm\":\n Digit.SessionStorage.set(storageKey, { ...state, filterForm: payload.data });\n return { ...state, filterForm: payload.data };\n\n case \"mutateTableForm\":\n Digit.SessionStorage.set(storageKey, { ...state, tableForm: payload.data });\n return { ...state, tableForm: payload.data };\n\n default:\n return state; // ✅ IMPORTANT\n }\n}\n\nexport const formInitValue = {\n filterForm: {},\n searchForm: {},\n tableForm: {\n limit: 10,\n offset: 0,\n sortBy: \"createdTime\",\n sortOrder: \"DESC\",\n },\n};\n\nexport const tableColumnConfig = (t, handleReview) => [\n {\n Header: t(\"SURVEYOR_NAME\"),\n accessor: \"surveyorName\",\n Cell: ({ row }) => {\n const id = row.original?.id;\n return (\n <span className=\"ekyc-application-link\" style={{ color: \"#add8f7\", cursor: \"pointer\", fontWeight: \"bold\" }} onClick={() => handleReview(id)}>\n {row.original?.surveyorName || row.original?.name || \"NA\"}\n </span>\n );\n },\n },\n\n // {\n // Header: t(\"SURVEYOR_NAME\"),\n // accessor: \"surveyorName\",\n // Cell: ({ row }) => <span>{row.original?.surveyorName || row.original?.name || \"NA\"}</span>,\n // },\n\n {\n Header: t(\"MOBILE_NUMBER\"),\n accessor: \"mobileNo\",\n Cell: ({ row }) => <span>{row.original?.mobileNo || row.original?.owner?.mobileNumber || \"NA\"}</span>,\n },\n\n {\n Header: t(\"STATUS\"),\n accessor: \"status\",\n Cell: ({ row }) => {\n const status = row.original?.status || \"DEFAULT\";\n return <span className={`ekyc-status-tag ${status}`}>{t(status)}</span>;\n },\n },\n\n {\n Header: t(\"SERVICE_TYPE\"),\n accessor: \"serviceType\",\n Cell: ({ row }) => <span>{row.original?.serviceType || \"NA\"}</span>,\n },\n];\n","import { useHistory } from \"react-router-dom\";\nimport { useTranslation } from \"react-i18next\";\nimport { tableColumnConfig } from \"../../../vendor/src/config/tableConfig\";\n\nconst SupervisorInboxTableConfig = ({\n onPageSizeChange,\n formState,\n totalCount,\n table,\n dispatch,\n onSortingByData,\n inboxStyles = {},\n tableStyle = {},\n}) => {\n const { t } = useTranslation();\n const history = useHistory();\n\n const userType = Digit.SessionStorage.get(\"User\")?.info?.type?.toLowerCase() || \"citizen\";\n\n const handleReview = (id) => {\n history.push(`/digit-ui/${userType}/ekyc/assign/surveyor-details/${id}`);\n };\n\n const limit = formState?.tableForm?.limit || 10;\n const offset = formState?.tableForm?.offset || 0;\n\n return {\n getCellProps: () => ({\n style: {\n padding: \"8px\",\n fontSize: \"12px\",\n },\n }),\n\n disableSort: false,\n autoSort: false,\n manualPagination: true,\n\n currentPage: Math.floor(offset / limit),\n\n onPageSizeChange,\n\n onNextPage: () =>\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n offset: Number(offset) + Number(limit),\n },\n }),\n\n onPrevPage: () =>\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n offset: Number(offset) - Number(limit),\n },\n }),\n\n onLastPage: () =>\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n offset: Math.ceil(totalCount / limit) * limit - Number(limit),\n },\n }),\n\n onFirstPage: () =>\n dispatch({\n action: \"mutateTableForm\",\n data: { ...formState.tableForm, offset: 0 },\n }),\n\n totalRecords: totalCount,\n onSort: onSortingByData,\n\n data: table,\n columns: tableColumnConfig(t, handleReview),\n\n inboxStyles: { ...inboxStyles },\n tableStyle: { ...tableStyle },\n };\n};\n\nexport default SupervisorInboxTableConfig;\n","import React, { useMemo, useCallback, useReducer } from \"react\";\nimport { InboxComposer } from \"@djb25/digit-ui-react-components\";\nimport SupervisorInboxTableConfig from \"../hook/SupervisorInboxTableConfig\";\nimport SearchFormFieldsComponents from \"./SearchFormFieldsComponent\";\nimport { formInitValue, formReducer } from \"../../../vendor/src/config/tableConfig\";\n\n// Mock data removed in favor of API integration\n\nconst AssignEkyc = () => {\n let tenantId = Digit.ULBService.getCurrentTenantId();\n if (!tenantId || tenantId === \"dl\") {\n tenantId = \"dl.djb\"; // Force tenantId to dl.djb for EKYC APIs in citizen portal\n }\n\n const [formState, dispatch] = useReducer(formReducer, formInitValue);\n\n let paginationParms = {\n limit: formState?.tableForm?.limit || 10,\n offset: formState?.tableForm?.offset || 0,\n sortBy: formState?.tableForm?.sortBy || \"createdTime\",\n sortOrder: formState?.tableForm?.sortOrder || \"DESC\",\n };\n\n const mobileNumber = formState?.searchForm?.mobileNumber || \"\";\n const isSearchActive = !!mobileNumber;\n\n const filters = {\n ...paginationParms,\n status: \"ACTIVE,DISABLED\",\n };\n\n if (isSearchActive) {\n filters.mobileNumber = mobileNumber;\n }\n\n const { data: dashboardData, isLoading } = Digit.Hooks.fsm.useSurveyorSearch(tenantId, filters, { enabled: !!tenantId, keepPreviousData: true });\n\n const { isLoading: isDataSearchLoading, data } = Digit.Hooks.ekyc.useEkycAssignmentProgress({\n enabled: !!tenantId,\n keepPreviousData: true,\n });\n\n const sourceData = useMemo(() => {\n return dashboardData?.surveyors || [];\n }, [dashboardData]);\n\n const filteredData = useMemo(() => {\n return (sourceData || []).map((item) => {\n const owner = item?.owner || {};\n const roleCodes = owner?.roles?.map((role) => role.code)?.join(\", \") || \"\";\n\n return {\n ...item,\n id: item?.id || \"\",\n surveyorName: item?.name || owner?.name || \"\",\n mobileNo: item?.mobileNo || owner?.mobileNumber || \"\",\n email: owner?.emailId || \"\",\n vendorId: item?.vendorId || \"\",\n tenantId: item?.tenantId || \"\",\n supervisorId: item?.supervisorId || \"\",\n status: item?.status || \"\",\n roleCodes,\n userName: owner?.userName || \"\",\n gender: owner?.gender || \"\",\n serviceType: item?.additionalDetails?.serviceType || \"\",\n createdTime: item?.auditDetails?.createdTime || 0,\n lastModifiedTime: item?.auditDetails?.lastModifiedTime || 0,\n };\n });\n }, [sourceData]);\n\n const totalRecords = dashboardData?.dashboardInfo?.totalRecords || dashboardData?.totalCount || 0;\n\n const PropsForInboxLinks = {\n headerText: \"EKYC_MODULE\",\n };\n\n const SearchFormFields = useCallback(\n ({ registerRef, searchFormState, controlSearchForm }) => (\n <SearchFormFieldsComponents {...{ registerRef, searchFormState, controlSearchForm }} className=\"search\" />\n ),\n []\n );\n\n const tableOrderFormDefaultValues = {\n sortBy: \"createdTime\",\n limit: window.Digit.Utils.browser.isMobile() ? 50 : 10,\n offset: 0,\n sortOrder: \"DESC\",\n };\n\n const onSearchFormSubmit = (data) => {\n data.hasOwnProperty(\"\") && delete data?.[\"\"];\n dispatch({ action: \"mutateTableForm\", data: { ...tableOrderFormDefaultValues } });\n dispatch({ action: \"mutateSearchForm\", data });\n };\n\n const searchFormDefaultValues = {\n mobileNumber: \"\",\n applicationNumber: \"\",\n consumerNo: \"\",\n };\n\n const onSearchFormReset = (setSearchFormValue) => {\n setSearchFormValue(\"mobileNumber\", null);\n setSearchFormValue(\"applicationNumber\", null);\n setSearchFormValue(\"consumerNo\", null);\n dispatch({ action: \"mutateSearchForm\", data: searchFormDefaultValues });\n };\n\n const propsForSearchForm = {\n SearchFormFields,\n onSearchFormSubmit,\n searchFormDefaultValues: formState?.searchForm,\n resetSearchFormDefaultValues: searchFormDefaultValues,\n onSearchFormReset,\n className: \"search-form-wns-inbox\",\n };\n\n const FilterFormFields = useCallback(\n ({ registerRef, controlFilterForm, setFilterFormValue, getFilterFormValue }) => <React.Fragment></React.Fragment>,\n []\n );\n\n const propsForFilterForm = {\n FilterFormFields,\n onFilterFormSubmit: () => { },\n filterFormDefaultValues: \"\",\n resetFilterFormDefaultValues: \"\",\n onFilterFormReset: () => { },\n };\n\n const onPageSizeChange = (e) => {\n const newLimit = Number(e.target.value);\n\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n limit: newLimit,\n offset: 0, // reset page\n },\n });\n };\n\n const onSortingByData = (e) => {\n if (e.length > 0) {\n const [{ id, desc }] = e;\n const sortOrder = desc ? \"DESC\" : \"ASC\";\n const sortBy = id;\n\n if (!(formState.tableForm.sortBy === sortBy && formState.tableForm.sortOrder === sortOrder)) {\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n sortBy: id,\n sortOrder: desc ? \"DESC\" : \"ASC\",\n },\n });\n }\n }\n };\n\n const propsForInboxTable = SupervisorInboxTableConfig({\n ...{\n onPageSizeChange,\n formState,\n totalCount: totalRecords,\n table: filteredData,\n dispatch,\n onSortingByData,\n tenantId,\n inboxStyles: { overflowX: \"scroll\", overflowY: \"hidden\" },\n tableStyle: { width: \"70%\" },\n },\n });\n\n const isInboxLoading = isLoading;\n\n const cards = [\n {\n label: \"TOTAL_EKYC_APPLICATIONS\",\n count: data?.totalKnos || 0,\n color: \"#0B2559\",\n filter: null,\n active: true,\n },\n {\n label: \"TOTAL_ASSIGNMENTS\",\n count: data?.totalAssignments || 0,\n color: \"#3B82F6\",\n filter: [\"ASSIGNED\"],\n },\n {\n label: \"EKYC_COMPLETED\",\n count: data?.completedKnos || 0,\n color: \"#10B981\",\n filter: [\"COMPLETED\"],\n },\n {\n label: \"PENDING_APPLICATIONS\",\n count: (data?.totalKnos || 0) - (data?.completedKnos || 0),\n color: \"#F59E0B\",\n filter: [\"PENDING\"],\n },\n {\n label: \"OVERALL_PROGRESS\",\n count: `${data?.overallProgressPercent || 0}%`,\n color: \"#A855F7\",\n filter: [\"IN_PROGRESS\"],\n },\n ];\n\n return (\n <div className=\"app-container\">\n <InboxComposer\n {...{\n isInboxLoading,\n // PropsForInboxLinks,\n ...propsForSearchForm,\n // ...propsForFilterForm,\n // ...propsForMobileSortForm,\n propsForInboxTable,\n // propsForInboxMobileCards,\n formState,\n countData: dashboardData?.dashboardInfo,\n cards,\n isCardLoading: isDataSearchLoading,\n }}\n />\n </div>\n );\n};\n\nexport default AssignEkyc;\n","import { AppContainer, PrivateRoute, ModuleHeader, ArrowLeft, HomeIcon, LayoutWrapper } from \"@djb25/digit-ui-react-components\";\nimport React from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Switch, useLocation } from \"react-router-dom\";\nimport Dashboard from \"../../components/Dashboard\";\nimport CeoDashboard from \"../../components/CeoDashboard.jsx\";\nimport VendorDetails from \"../../components/VendorDetails.jsx\";\nimport Inbox from \"./Inbox\";\nimport Mapping from \"./Mapping\";\nimport Create from \"./Create\";\nimport Review from \"../../components/Review\";\nimport EKYCForm from \"./EKYCForm\";\nimport SurveyorDetailsCard from \"../../components/SurveyorDetailsCard.js\";\nimport AssignEkyc from \"../../components/AssignEkyc.js\";\n\nconst EmployeeApp = ({ path }) => {\n const { t } = useTranslation();\n const location = useLocation();\n\n sessionStorage.removeItem(\"revalidateddone\");\n\n const getDynamicBreadcrumbs = () => {\n const pathname = location.pathname;\n\n // Parent crumb — always present and clickable → redirects to eKYC inbox\n const crumbs = [\n { icon: HomeIcon, path: \"/digit-ui/employee\" },\n { label: t(\"ACTION_TEST_EKYC\"), path: `/digit-ui/employee/module/details` },\n ];\n\n // Child crumb — only appended when on a sub-page (not inbox/dashboard itself)\n if (pathname.includes(\"/create-kyc\")) {\n crumbs.push({ label: t(\"EKYC_CREATE_KYC\") });\n } else if (pathname.includes(\"/consumer-details\")) {\n crumbs.push({ label: t(\"EKYC_CONSUMER_DETAILS\") });\n } else if (pathname.includes(\"/address-details\")) {\n crumbs.push({ label: t(\"EKYC_ADDRESS_DETAILS\") });\n } else if (pathname.includes(\"/property-info\")) {\n crumbs.push({ label: t(\"EKYC_PROPERTY_INFO\") });\n } else if (pathname.includes(\"/meter-details\")) {\n crumbs.push({ label: t(\"EKYC_METER_DETAILS\") });\n } else if (pathname.includes(\"/review\")) {\n crumbs.push({ label: t(\"EKYC_INBOX\"), path: `/digit-ui/employee/ekyc/inbox` });\n crumbs.push({ label: t(\"EKYC_REVIEW\") });\n } else if (pathname.includes(\"/assign/surveyor-details\")) {\n crumbs.push({ label: t(\"EKYC_ASSIGN\"), path: `/digit-ui/employee/ekyc/assign` });\n crumbs.push({ label: t(\"EKYC_SURVEYOR_DETAILS\") });\n } else if (pathname.includes(\"/assign\")) {\n crumbs.push({ label: t(\"EKYC_ASSIGN\") });\n } else if (pathname.includes(\"/ceo-dashboard\")) {\n crumbs.push({ label: t(\"CEO_M.F_DOR_FINANCE_VIEW\") });\n } else if (pathname.includes(\"/vendors/\")) {\n crumbs.push({ label: t(\"EKYC_VENDOR_DETAILS\") });\n } else if (pathname.includes(\"/mapping\")) {\n crumbs.push({ label: t(\"EKYC_MAPPING\") });\n } else if (pathname.includes(\"/dashboard\")) {\n crumbs.push({ label: t(\"EKYC_DASHBOARD\") });\n } else if (pathname.includes(\"/inbox\")) {\n crumbs.push({ label: t(\"EKYC_INBOX\") });\n }\n // dashboard & inbox → no child crumb (only \"eKYC Admin\" shown)\n\n return crumbs;\n };\n\n const formStepRoutes = [\"consumer-details\", \"address-details\", \"property-info\", \"meter-details\"];\n\n return (\n <AppContainer>\n <div className=\"ground-container employee-app-container form-container\">\n <ModuleHeader\n leftContent={\n <React.Fragment>\n <ArrowLeft className=\"icon\" />\n Back\n </React.Fragment>\n }\n onLeftClick={() => window.history.back()}\n breadcrumbs={getDynamicBreadcrumbs()}\n />\n\n <div className=\"employee-form\">\n <Switch>\n <PrivateRoute\n path={`${path}/dashboard`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <Dashboard parentRoute={path} businessService=\"EKYC\" moduleCode=\"EKYC\" isInbox={true} />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/inbox`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <Inbox parentRoute={path} businessService=\"EKYC\" moduleCode=\"EKYC\" isInbox={true} />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/create-kyc`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <Create />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/mapping`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <Mapping />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/assign`}\n exact\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <AssignEkyc />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/assign/surveyor-details/:id`}\n exact\n component={() => (\n <LayoutWrapper layoutClass=\"action\">\n <SurveyorDetailsCard />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={formStepRoutes.map((route) => `${path}/${route}`)}\n component={(props) => (\n <LayoutWrapper layoutClass=\"normal\">\n <EKYCForm {...props} path={path} />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/review/:kno`}\n component={() => (\n <LayoutWrapper layoutClass=\"action\">\n <Review />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/ceo-dashboard`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <CeoDashboard />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/vendors/:vendorId`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <VendorDetails />\n </LayoutWrapper>\n )}\n />\n\n {/* <PrivateRoute\n path={`${path}/`}\n component={() => <Inbox parentRoute={path} businessService=\"EKYC\" moduleCode=\"EKYC\" isInbox={true} />}\n /> */}\n </Switch>\n </div>\n </div>\n </AppContainer>\n );\n};\n\nexport default EmployeeApp;\n","import React from \"react\";\nimport { UploadFile, Dropdown } from \"@djb25/digit-ui-react-components\";\n\nconst PropertyInfoConfig = (t, formData = {}, uploadFile, buildingImage, buildingImageId, setBuildingImage, setBuildingImageId) => {\n const propertyType = formData?.propertyType?.name || formData?.propertyType;\n const isHotel = propertyType === \"Hotel\";\n const isHospitalOrNursing = propertyType === \"Hospital\" || propertyType === \"Nursing Home\";\n\n const fields = [\n {\n label: t(\"PID Number\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"pidNumber\",\n },\n },\n {\n label: t(\"Property Type\"),\n isMandatory: false,\n type: \"custom\",\n key: \"propertyType\",\n populators: {\n name: \"propertyType\",\n component: (props) => (\n <Dropdown\n option={[\n { name: \"Residential\" },\n { name: \"Commercial\" },\n { name: \"Hotel\" },\n { name: \"Hospital\" },\n { name: \"Nursing Home\" },\n ]}\n optionKey=\"name\"\n selected={props.value}\n select={props.onChange}\n />\n ),\n },\n },\n {\n label: t(\"Sub Property Category\"),\n isMandatory: false,\n type: \"custom\",\n key: \"subPropertyCategory\",\n populators: {\n name: \"subPropertyCategory\",\n component: (props) => (\n <Dropdown\n option={[]}\n optionKey=\"name\"\n selected={props.value}\n select={props.onChange}\n />\n ),\n },\n },\n {\n label: t(\"No. of Floors\"),\n isMandatory: true,\n type: \"number\",\n populators: {\n name: \"noOfFloors\",\n validation: {\n required: true,\n min: 1,\n },\n },\n },\n {\n label: t(\"Floor No. of this KNO\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"floorNo\",\n },\n },\n {\n label: isHospitalOrNursing ? t(\"No of Beds\") : t(\"No of Beds\"),\n isMandatory: isHospitalOrNursing,\n type: \"number\",\n populators: {\n name: \"noOfBeds\",\n validation: isHospitalOrNursing ? { required: true, min: 1 } : {},\n },\n },\n {\n label: isHotel ? t(\"No. of Rooms\") : t(\"No. of Rooms\"),\n isMandatory: isHotel,\n type: \"number\",\n populators: {\n name: \"noOfRooms\",\n validation: isHotel ? { required: true, min: 1 } : {},\n },\n },\n {\n label: t(\"Number of Dwelling Units\"),\n isMandatory: false,\n type: \"number\",\n populators: {\n name: \"dwellingUnits\",\n },\n },\n {\n label: t(\"Building Image\"),\n isMandatory: true,\n type: \"custom\",\n key: \"buildingImage\",\n populators: {\n name: \"buildingImage\",\n component: (props) => (\n <div>\n <UploadFile\n onUpload={(e) => uploadFile(e, props.onChange)}\n onDelete={() => {\n props.onChange(null);\n setBuildingImage(null);\n setBuildingImageId(null);\n }}\n message={buildingImageId ? t(\"Uploaded\") : t(\"No file selected\")}\n />\n {buildingImage && (\n <div style={{ marginTop: \"10px\" }}>\n <img\n src={buildingImage}\n alt=\"preview\"\n style={{ maxWidth: \"100%\", maxHeight: \"200px\", objectFit: \"contain\" }}\n />\n </div>\n )}\n </div>\n ),\n },\n },\n ];\n\n return [\n {\n head: t(\"EKYC_PROPERTY_DETAILS\"),\n body: fields,\n },\n ];\n};\n\nexport default PropertyInfoConfig;\n","import React, { useState, Fragment, useEffect } from \"react\";\nimport { useLocation } from \"react-router-dom\";\nimport { Toast, Loader, FormComposer } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport PropertyInfoConfig from \"../config/PropertyInfoConfig\";\n\nconst PropertyInfo = ({ config, onSelect, formData }) => {\n const { t } = useTranslation();\n const location = useLocation();\n const flowState = location.state || {};\n const tenantId = Digit.ULBService.getCurrentTenantId();\n\n const queryParams = new URLSearchParams(location.search);\n const urlKno = queryParams.get(\"kno\");\n const searchKno =\n urlKno ||\n flowState?.kNumber ||\n flowState?.kno ||\n formData?.kNumber ||\n formData?.kno ||\n sessionStorage.getItem(\"EKYC_K_NUMBER\");\n\n const { isLoading, data: searchData } = Digit.Hooks.ekyc.useSearchConnection(\n { tenantId, details: { kno: searchKno, fetchType: \"PROPERTY\" } },\n { enabled: !!searchKno, cacheTime: 0 }\n );\n\n const updateMutation = Digit.Hooks.ekyc.useEkycUpdate(tenantId);\n\n const savedData = formData?.propertyDetails || {};\n\n // 🔹 STATES\n const [buildingImage, setBuildingImage] = useState(null);\n const [buildingImageId, setBuildingImageId] = useState(savedData.buildingImageId || null);\n const [toast, setToast] = useState(null);\n const [isDataLoaded, setIsDataLoaded] = useState(false);\n const [canSubmit, setCanSubmit] = useState(false);\n\n const [defaultValues, setDefaultValues] = useState(() => ({\n pidNumber: savedData.pidNumber || \"\",\n propertyType: savedData.propertyType ? { name: savedData.propertyType } : null,\n subPropertyCategory: savedData.subPropertyCategory ? { name: savedData.subPropertyCategory } : null,\n noOfFloors: savedData.noOfFloors || \"\",\n floorNo: savedData.floorNo || \"\",\n noOfRooms: savedData.noOfRooms || \"\",\n noOfBeds: savedData.noOfBeds || \"\",\n dwellingUnits: savedData.dwellingUnits || \"\",\n buildingImage: savedData.buildingImageId ? \"Uploaded\" : null,\n }));\n\n const [localFormData, setLocalFormData] = useState(defaultValues);\n\n const extractApplicationData = (searchData) => {\n if (!searchData) return null;\n const reviewWrapper =\n searchData?.applicationReviewInfo || searchData?.applicationReview || searchData;\n const applicationData = (Array.isArray(reviewWrapper) ? reviewWrapper[0] : reviewWrapper) || {};\n return applicationData?.newData || applicationData;\n };\n\n useEffect(() => {\n const appData = extractApplicationData(searchData);\n const rawData = appData || formData?.connectionDetails;\n const propertyInfo = rawData?.propertyInfo || rawData?.propertyDetails || rawData || {};\n\n if (propertyInfo && Object.keys(propertyInfo).length > 0 && !isDataLoaded) {\n let propType = null;\n let subPropCat = null;\n\n if (propertyInfo.subPropertyCategory) {\n const matchingType = [\n { name: \"Residential\" },\n { name: \"Commercial\" },\n { name: \"Hotel\" },\n { name: \"Hospital\" },\n { name: \"Nursing Home\" },\n ].find((type) => type.name.toLowerCase() === propertyInfo.subPropertyCategory.toLowerCase());\n if (matchingType) propType = matchingType;\n else propType = { name: propertyInfo.subPropertyCategory };\n subPropCat = { name: propertyInfo.subPropertyCategory };\n }\n\n if (propertyInfo.propertyType) {\n subPropCat = { name: propertyInfo.propertyType };\n if (!propertyInfo.subPropertyCategory) propType = { name: propertyInfo.propertyType };\n }\n\n const updatedDefaults = {\n pidNumber: savedData.pidNumber || propertyInfo.pidNumber || \"\",\n propertyType: savedData.propertyType ? { name: savedData.propertyType } : propType,\n subPropertyCategory: savedData.subPropertyCategory\n ? { name: savedData.subPropertyCategory }\n : subPropCat,\n noOfFloors:\n savedData.noOfFloors ||\n (propertyInfo.numberOfFloors || propertyInfo.noOfFloor\n ? String(propertyInfo.numberOfFloors || propertyInfo.noOfFloor)\n : \"\"),\n floorNo: savedData.floorNo || propertyInfo.floorNo || \"\",\n noOfRooms:\n savedData.noOfRooms ||\n (propertyInfo.numberOfRooms !== null && propertyInfo.numberOfRooms !== undefined\n ? String(propertyInfo.numberOfRooms)\n : \"\"),\n noOfBeds:\n savedData.noOfBeds ||\n (propertyInfo.numberOfBeds !== null && propertyInfo.numberOfBeds !== undefined\n ? String(propertyInfo.numberOfBeds)\n : \"\"),\n dwellingUnits:\n savedData.dwellingUnits ||\n (propertyInfo.numberOfDwellingUnits !== null && propertyInfo.numberOfDwellingUnits !== undefined\n ? String(propertyInfo.numberOfDwellingUnits)\n : \"\"),\n buildingImage: savedData.buildingImageId || propertyInfo.buildingImageFileStoreId || null,\n };\n\n setDefaultValues(updatedDefaults);\n setLocalFormData(updatedDefaults);\n if (updatedDefaults.buildingImage) {\n setBuildingImageId(updatedDefaults.buildingImage);\n }\n setIsDataLoaded(true);\n }\n }, [searchData, formData?.connectionDetails, isDataLoaded]);\n\n // 🔹 FILE UPLOAD\n const handleUpload = async (e, onChange) => {\n const file = e.target.files[0];\n if (!file) return;\n\n if (file.size > 2000000) {\n setToast({ type: \"error\", message: t(\"Max size 2MB exceeded\") });\n return;\n }\n\n try {\n const res = await Digit.UploadServices.Filestorage(\"EKYC\", file, tenantId);\n const fileStoreId = res?.data?.files?.[0]?.fileStoreId;\n\n if (fileStoreId) {\n onChange(file.name);\n setBuildingImageId(fileStoreId);\n\n const reader = new FileReader();\n reader.onloadend = () => setBuildingImage(reader.result);\n reader.readAsDataURL(file);\n\n setToast({ type: \"success\", message: t(\"Upload successful\") });\n }\n } catch {\n setToast({ type: \"error\", message: t(\"Upload failed\") });\n }\n };\n\n const onFormValueChange = (setValue, data) => {\n // Check if propertyType changed to re-evaluate mandatory validation or conditional visibility\n const propertyTypeChanged =\n (data?.propertyType?.name || data?.propertyType) !==\n (localFormData?.propertyType?.name || localFormData?.propertyType);\n\n if (propertyTypeChanged) {\n setLocalFormData((prev) => ({\n ...prev,\n ...data,\n }));\n }\n\n // Determine validation\n const propTypeVal = data?.propertyType;\n const subPropCatVal = data?.subPropertyCategory;\n const noOfFloorsVal = data?.noOfFloors;\n const buildingImgId = buildingImageId || data?.buildingImage;\n const noOfRoomsVal = data?.noOfRooms;\n const noOfBedsVal = data?.noOfBeds;\n\n let valid = true;\n if (!propTypeVal) valid = false;\n if (!subPropCatVal) valid = false;\n if (!noOfFloorsVal || Number(noOfFloorsVal) < 1) valid = false;\n if (!buildingImgId) valid = false;\n\n if (propTypeVal?.name === \"Hotel\" && !noOfRoomsVal) valid = false;\n if (\n (propTypeVal?.name === \"Hospital\" || propTypeVal?.name === \"Nursing Home\") &&\n !noOfBedsVal\n )\n valid = false;\n\n if (valid !== canSubmit) {\n setCanSubmit(valid);\n }\n };\n\n const onSubmit = async (data) => {\n const submitData = {\n pidNumber: data.pidNumber,\n propertyType: data.propertyType?.name || data.propertyType,\n subPropertyCategory: data.subPropertyCategory?.name || data.subPropertyCategory,\n noOfFloors: data.noOfFloors,\n floorNo: data.floorNo,\n noOfRooms: data.noOfRooms,\n noOfBeds: data.noOfBeds,\n dwellingUnits: data.dwellingUnits,\n buildingImageId: buildingImageId,\n };\n\n try {\n await updateMutation.mutateAsync({\n RequestInfo: {},\n updateType: \"PROPERTY\",\n kno: searchKno,\n ...submitData,\n });\n setToast({ type: \"success\", message: t(\"Property details updated successfully!\") });\n onSelect(config.key, submitData);\n } catch (error) {\n setToast({ type: \"error\", message: t(\"Failed to update property details\") });\n }\n };\n\n if (isLoading) {\n return <Loader />;\n }\n\n const Config = PropertyInfoConfig(\n t,\n localFormData,\n handleUpload,\n buildingImage,\n buildingImageId,\n setBuildingImage,\n setBuildingImageId\n );\n\n return (\n <Fragment>\n <FormComposer\n key={isDataLoaded ? \"loaded\" : \"loading\"}\n isDisabled={!canSubmit}\n label={t(\"ES_COMMON_CONTINUE\")}\n config={Config.map((item) => ({\n ...item,\n isCollapsible: true,\n isDefaultOpen: true,\n }))}\n onSubmit={onSubmit}\n defaultValues={defaultValues}\n onFormValueChange={onFormValueChange}\n noCard={false}\n submitInForm={true}\n />\n {toast && (\n <Toast\n error={toast.type === \"error\"}\n label={toast.message}\n onClose={() => setToast(null)}\n />\n )}\n </Fragment>\n );\n};\n\nexport default PropertyInfo;","import React from \"react\";\nimport { UploadFile, Dropdown } from \"@djb25/digit-ui-react-components\";\n\nconst MeterDetailsConfig = (t, formData = {}, uploadPhoto, meterPhoto, meterPhotoId, setMeterPhoto, setMeterPhotoId) => {\n const meterStatus = formData?.meterStatus?.name || formData?.meterStatus;\n const lastBillReceived = formData?.lastBillReceived?.name || formData?.lastBillReceived;\n const sewerConnection = formData?.sewerConnection?.name || formData?.sewerConnection;\n\n const isFrozen = meterStatus === \"Can not be identified\";\n\n // Generate Month-Year Options (1998–2026)\n const monthYearOptions = [];\n for (let y = 1998; y <= 2026; y++) {\n for (let m = 1; m <= 12; m++) {\n monthYearOptions.push({ name: `${m}/${y}` });\n }\n }\n\n const yesNo = [{ name: \"Yes\" }, { name: \"No\" }];\n\n const fields = [\n {\n label: t(\"Connection Category\"),\n isMandatory: true,\n type: \"text\",\n populators: {\n name: \"connectionCategory\",\n validation: { required: true },\n },\n },\n {\n label: t(\"SA Type\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"saType\",\n },\n },\n {\n label: t(\"Status\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"status\",\n },\n },\n {\n label: t(\"MR Code\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"mrCode\",\n },\n },\n {\n label: t(\"Area Code\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"areaCode\",\n },\n },\n {\n label: t(\"MR Key\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"mrKey\",\n },\n },\n ];\n\n // 🔹 Non-frozen fields\n if (!isFrozen) {\n fields.push(\n {\n label: t(\"Meter Number\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"meterNumber\",\n },\n },\n {\n label: t(\"Meter Maker\"),\n isMandatory: false,\n type: \"text\",\n populators: {\n name: \"meterMaker\",\n },\n },\n {\n label: t(\"Meter Condition\"),\n isMandatory: false,\n type: \"custom\",\n key: \"meterCondition\",\n populators: {\n name: \"meterCondition\",\n component: (props) => (\n <Dropdown\n option={[{ name: \"Damaged\" }, { name: \"Not-Damaged\" }]}\n optionKey=\"name\"\n selected={props.value}\n select={props.onChange}\n />\n ),\n },\n }\n );\n\n if (meterStatus === \"Metered\") {\n fields.push({\n label: t(\"Meter Photo *\"),\n isMandatory: true,\n type: \"custom\",\n key: \"meterPhoto\",\n populators: {\n name: \"meterPhoto\",\n component: (props) => (\n <div>\n <UploadFile\n onUpload={(e) => uploadPhoto(e, props.onChange)}\n onDelete={() => {\n props.onChange(null);\n setMeterPhoto(null);\n setMeterPhotoId(null);\n }}\n message={meterPhotoId ? t(\"Uploaded\") : t(\"No file selected\")}\n />\n {meterPhoto && (\n <div style={{ marginTop: \"10px\" }}>\n <img\n src={meterPhoto}\n alt=\"preview\"\n style={{ maxWidth: \"100%\", maxHeight: \"200px\", objectFit: \"contain\" }}\n />\n </div>\n )}\n </div>\n ),\n },\n });\n }\n }\n\n // 🔹 Standard fields after the conditional section\n fields.push(\n {\n label: t(\"Meter Status\"),\n isMandatory: true,\n type: \"custom\",\n key: \"meterStatus\",\n populators: {\n name: \"meterStatus\",\n component: (props) => (\n <Dropdown\n option={[{ name: \"Metered\" }, { name: \"Unmetered\" }, { name: \"Can not be identified\" }]}\n optionKey=\"name\"\n selected={props.value}\n select={props.onChange}\n />\n ),\n },\n },\n {\n label: t(\"Meter Location\"),\n isMandatory: true,\n type: \"custom\",\n key: \"meterLocation\",\n populators: {\n name: \"meterLocation\",\n component: (props) => (\n <Dropdown\n option={[{ name: \"Inside\" }, { name: \"Outside\" }]}\n optionKey=\"name\"\n selected={props.value}\n select={props.onChange}\n />\n ),\n },\n },\n {\n label: t(\"Last Bill Received\"),\n isMandatory: true,\n type: \"custom\",\n key: \"lastBillReceived\",\n populators: {\n name: \"lastBillReceived\",\n component: (props) => (\n <Dropdown\n option={yesNo}\n optionKey=\"name\"\n selected={props.value}\n select={props.onChange}\n />\n ),\n },\n }\n );\n\n // 🔹 Bill-received fields\n if (lastBillReceived === \"Yes\") {\n fields.push({\n label: t(\"When was the last bill received *\"),\n isMandatory: true,\n type: \"custom\",\n key: \"billMonthYear\",\n populators: {\n name: \"billMonthYear\",\n component: (props) => (\n <Dropdown\n option={monthYearOptions}\n optionKey=\"name\"\n selected={props.value}\n select={props.onChange}\n />\n ),\n },\n });\n } else if (lastBillReceived === \"No\") {\n fields.push({\n label: t(\"Reason *\"),\n isMandatory: true,\n type: \"text\",\n populators: {\n name: \"reason\",\n validation: { required: true },\n },\n });\n }\n\n fields.push(\n {\n label: t(\"Access to Meter\"),\n isMandatory: false,\n type: \"custom\",\n key: \"accessToMeter\",\n populators: {\n name: \"accessToMeter\",\n component: (props) => (\n <Dropdown\n option={yesNo}\n optionKey=\"name\"\n selected={props.value}\n select={props.onChange}\n />\n ),\n },\n },\n {\n label: t(\"Sewer Connection\"),\n isMandatory: true,\n type: \"custom\",\n key: \"sewerConnection\",\n populators: {\n name: \"sewerConnection\",\n component: (props) => (\n <Dropdown\n option={yesNo}\n optionKey=\"name\"\n selected={props.value}\n select={props.onChange}\n />\n ),\n },\n }\n );\n\n if (sewerConnection === \"No\") {\n fields.push({\n label: t(\"Septic Tank\"),\n isMandatory: true,\n type: \"custom\",\n key: \"septicTank\",\n populators: {\n name: \"septicTank\",\n component: (props) => (\n <Dropdown\n option={yesNo}\n optionKey=\"name\"\n selected={props.value}\n select={props.onChange}\n />\n ),\n },\n });\n }\n\n return [\n {\n head: t(\"EKYC_METER_DETAILS\"),\n body: fields,\n },\n ];\n};\n\nexport default MeterDetailsConfig;\n","import React, { useState, Fragment, useEffect } from \"react\";\nimport { useLocation } from \"react-router-dom\";\nimport { Toast, Loader, FormComposer } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport MeterDetailsConfig from \"../config/MeterDetailsConfig\";\n\nconst MeterDetails = ({ config, onSelect, formData }) => {\n const { t } = useTranslation();\n const location = useLocation();\n const flowState = location.state || {};\n const tenantId = Digit.ULBService.getCurrentTenantId();\n\n const queryParams = new URLSearchParams(location.search);\n const urlKno = queryParams.get(\"kno\");\n const searchKno =\n urlKno ||\n flowState?.kNumber ||\n flowState?.kno ||\n formData?.kNumber ||\n formData?.kno ||\n sessionStorage.getItem(\"EKYC_K_NUMBER\");\n\n const { isLoading, data: searchData } = Digit.Hooks.ekyc.useSearchConnection(\n { tenantId, details: { kno: searchKno, fetchType: \"METER\" } },\n { enabled: !!searchKno, cacheTime: 0 }\n );\n\n const updateMutation = Digit.Hooks.ekyc.useEkycUpdate(tenantId);\n\n const savedData = formData?.meterDetails || {};\n\n // 🔹 STATES\n const [meterPhoto, setMeterPhoto] = useState(null);\n const [meterPhotoId, setMeterPhotoId] = useState(savedData.meterPhotoId || null);\n const [toast, setToast] = useState(null);\n const [isDataLoaded, setIsDataLoaded] = useState(false);\n const [canSubmit, setCanSubmit] = useState(false);\n\n const [defaultValues, setDefaultValues] = useState(() => ({\n connectionCategory: savedData.connectionCategory || \"\",\n saType: savedData.saType || \"\",\n status: savedData.status || \"\",\n mrCode: savedData.mrCode || \"\",\n areaCode: savedData.areaCode || \"\",\n mrKey: savedData.mrKey || \"\",\n meterNumber: savedData.meterNumber || \"\",\n meterMaker: savedData.meterMaker || \"\",\n meterStatus: savedData.meterStatus ? { name: savedData.meterStatus } : null,\n meterCondition: savedData.meterCondition ? { name: savedData.meterCondition } : null,\n meterLocation: savedData.meterLocation ? { name: savedData.meterLocation } : null,\n lastBillReceived: savedData.lastBillReceived ? { name: savedData.lastBillReceived } : null,\n billMonthYear: savedData.billMonthYear ? { name: savedData.billMonthYear } : null,\n reason: savedData.reason || \"\",\n accessToMeter: savedData.accessToMeter ? { name: savedData.accessToMeter } : null,\n sewerConnection: savedData.sewerConnection ? { name: savedData.sewerConnection } : null,\n septicTank: savedData.septicTank ? { name: savedData.septicTank } : null,\n meterPhoto: savedData.meterPhotoId ? \"Uploaded\" : null,\n }));\n\n const [localFormData, setLocalFormData] = useState(defaultValues);\n\n const extractApplicationData = (searchData) => {\n if (!searchData) return null;\n const reviewWrapper =\n searchData?.applicationReviewInfo || searchData?.applicationReview || searchData;\n const applicationData = (Array.isArray(reviewWrapper) ? reviewWrapper[0] : reviewWrapper) || {};\n return applicationData?.newData || applicationData;\n };\n\n useEffect(() => {\n const appData = extractApplicationData(searchData);\n const rawData = appData || formData?.connectionDetails;\n const apiMeter = rawData?.meterDetails || rawData || {};\n\n if (apiMeter && Object.keys(apiMeter).length > 0 && !isDataLoaded) {\n let mStatus = null;\n let mCondition = null;\n let mLoc = null;\n let billRec = null;\n let billMonYr = null;\n let accToMeter = null;\n let sewerConn = null;\n let sepTank = null;\n\n if (apiMeter.meterStatus) {\n const matchingStatus = [\n { name: \"Metered\" },\n { name: \"Unmetered\" },\n { name: \"Can not be identified\" },\n ].find((o) => o.name.toLowerCase() === apiMeter.meterStatus.toLowerCase());\n if (matchingStatus) mStatus = matchingStatus;\n else mStatus = { name: apiMeter.meterStatus };\n } else if (apiMeter.metered !== undefined) {\n mStatus = { name: apiMeter.metered ? \"Metered\" : \"Unmetered\" };\n }\n\n if (apiMeter.meterCondition) {\n const matchingCond = [{ name: \"Damaged\" }, { name: \"Not-Damaged\" }].find(\n (o) => o.name.toLowerCase() === apiMeter.meterCondition.toLowerCase()\n );\n if (matchingCond) mCondition = matchingCond;\n else mCondition = { name: apiMeter.meterCondition };\n }\n\n if (apiMeter.meterLocation) {\n const matchingLoc = [{ name: \"Inside\" }, { name: \"Outside\" }].find(\n (o) =>\n o.name.toLowerCase() === apiMeter.meterLocation.toLowerCase() ||\n apiMeter.meterLocation.toLowerCase().includes(o.name.toLowerCase())\n );\n if (matchingLoc) mLoc = matchingLoc;\n else mLoc = { name: apiMeter.meterLocation };\n }\n\n if (apiMeter.lastBillRaised !== undefined && apiMeter.lastBillRaised !== null) {\n const strVal = String(apiMeter.lastBillRaised).toLowerCase();\n if (strVal === \"true\" || strVal === \"yes\") billRec = { name: \"Yes\" };\n else billRec = { name: \"No\" };\n }\n\n if (apiMeter.lastBillReceivedDate) {\n const formatted = apiMeter.lastBillReceivedDate.replace(\"-\", \"/\");\n const parsedParts = formatted.split(\"/\");\n if (parsedParts.length === 2) {\n const mon = parseInt(parsedParts[0], 10);\n const yr = parseInt(parsedParts[1], 10);\n billMonYr = { name: `${mon}/${yr}` };\n } else {\n billMonYr = { name: apiMeter.lastBillReceivedDate };\n }\n }\n\n if (apiMeter.accessToMeter !== undefined && apiMeter.accessToMeter !== null) {\n const strVal = String(apiMeter.accessToMeter).toLowerCase();\n if (strVal === \"true\" || strVal === \"yes\") accToMeter = { name: \"Yes\" };\n else accToMeter = { name: \"No\" };\n }\n\n if (apiMeter.sewerConnection !== undefined && apiMeter.sewerConnection !== null) {\n const strVal = String(apiMeter.sewerConnection).toLowerCase();\n if (strVal === \"true\" || strVal === \"yes\") sewerConn = { name: \"Yes\" };\n else sewerConn = { name: \"No\" };\n }\n\n if (apiMeter.septicTank !== undefined && apiMeter.septicTank !== null) {\n const strVal = String(apiMeter.septicTank).toLowerCase();\n if (strVal === \"true\" || strVal === \"yes\") sepTank = { name: \"Yes\" };\n else sepTank = { name: \"No\" };\n }\n\n const updatedDefaults = {\n connectionCategory: savedData.connectionCategory || apiMeter.connectionCategory || \"\",\n saType: savedData.saType || apiMeter.saType || \"\",\n status: savedData.status || apiMeter.statusFlag || \"\",\n mrCode: savedData.mrCode || (apiMeter.mrcode ? String(apiMeter.mrcode) : \"\"),\n areaCode: savedData.areaCode || (apiMeter.areacode ? String(apiMeter.areacode) : \"\"),\n mrKey: savedData.mrKey || (apiMeter.mrkey ? String(apiMeter.mrkey) : \"\"),\n meterNumber: savedData.meterNumber || apiMeter.meterNumber || \"\",\n meterMaker: savedData.meterMaker || apiMeter.meterMake || \"\",\n meterStatus: savedData.meterStatus ? { name: savedData.meterStatus } : mStatus,\n meterCondition: savedData.meterCondition ? { name: savedData.meterCondition } : mCondition,\n meterLocation: savedData.meterLocation ? { name: savedData.meterLocation } : mLoc,\n lastBillReceived: savedData.lastBillReceived ? { name: savedData.lastBillReceived } : billRec,\n billMonthYear: savedData.billMonthYear ? { name: savedData.billMonthYear } : billMonYr,\n reason: savedData.reason || apiMeter.lastBillNotRaisedReason || \"\",\n accessToMeter: savedData.accessToMeter ? { name: savedData.accessToMeter } : accToMeter,\n sewerConnection: savedData.sewerConnection ? { name: savedData.sewerConnection } : sewerConn,\n septicTank: savedData.septicTank ? { name: savedData.septicTank } : sepTank,\n meterPhoto: savedData.meterPhotoId || apiMeter.meterPhotoFileStoreId || null,\n };\n\n setDefaultValues(updatedDefaults);\n setLocalFormData(updatedDefaults);\n if (updatedDefaults.meterPhoto) {\n setMeterPhotoId(updatedDefaults.meterPhoto);\n }\n setIsDataLoaded(true);\n }\n }, [searchData, formData?.connectionDetails, isDataLoaded]);\n\n // 🔹 FILE UPLOAD\n const handleUpload = async (e, onChange) => {\n const file = e.target.files[0];\n if (!file) return;\n\n if (file.size > 2000000) {\n setToast({ type: \"error\", message: t(\"Max size 2MB exceeded\") });\n return;\n }\n\n try {\n const res = await Digit.UploadServices.Filestorage(\"EKYC\", file, tenantId);\n const fileStoreId = res?.data?.files?.[0]?.fileStoreId;\n\n if (fileStoreId) {\n onChange(file.name);\n setMeterPhotoId(fileStoreId);\n\n const reader = new FileReader();\n reader.onloadend = () => setMeterPhoto(reader.result);\n reader.readAsDataURL(file);\n\n setToast({ type: \"success\", message: t(\"Upload successful\") });\n }\n } catch {\n setToast({ type: \"error\", message: t(\"Upload failed\") });\n }\n };\n\n const onFormValueChange = (setValue, data) => {\n const meterStatusChanged =\n (data?.meterStatus?.name || data?.meterStatus) !==\n (localFormData?.meterStatus?.name || localFormData?.meterStatus);\n\n const lastBillReceivedChanged =\n (data?.lastBillReceived?.name || data?.lastBillReceived) !==\n (localFormData?.lastBillReceived?.name || localFormData?.lastBillReceived);\n\n const sewerConnectionChanged =\n (data?.sewerConnection?.name || data?.sewerConnection) !==\n (localFormData?.sewerConnection?.name || localFormData?.sewerConnection);\n\n if (meterStatusChanged || lastBillReceivedChanged || sewerConnectionChanged) {\n setLocalFormData((prev) => ({\n ...prev,\n ...data,\n }));\n }\n\n // Determine validation\n const connCatVal = data?.connectionCategory;\n const mStatusVal = data?.meterStatus;\n const mLocVal = data?.meterLocation;\n const billRecVal = data?.lastBillReceived;\n const sewerConnVal = data?.sewerConnection;\n const mPhotoId = meterPhotoId || data?.meterPhoto;\n const reasonVal = data?.reason;\n const billMonYrVal = data?.billMonthYear;\n const sepTankVal = data?.septicTank;\n\n let valid = true;\n if (!connCatVal) valid = false;\n if (!mStatusVal) valid = false;\n if (!mLocVal) valid = false;\n if (!billRecVal) valid = false;\n if (!sewerConnVal) valid = false;\n\n if (mStatusVal?.name === \"Metered\" && !mPhotoId) valid = false;\n if (billRecVal?.name === \"No\" && !reasonVal) valid = false;\n if (billRecVal?.name === \"Yes\" && !billMonYrVal) valid = false;\n if (sewerConnVal?.name === \"No\" && !sepTankVal) valid = false;\n\n if (valid !== canSubmit) {\n setCanSubmit(valid);\n }\n };\n\n const onSubmit = async (data) => {\n const submitData = {\n connectionCategory: data.connectionCategory,\n saType: data.saType,\n status: data.status,\n mrCode: data.mrCode,\n areaCode: data.areaCode,\n mrKey: data.mrKey,\n meterNumber: data.meterNumber,\n meterMaker: data.meterMaker,\n meterStatus: data.meterStatus?.name || data.meterStatus,\n meterCondition: data.meterCondition?.name || data.meterCondition,\n meterLocation: data.meterLocation?.name || data.meterLocation,\n lastBillReceived: data.lastBillReceived?.name || data.lastBillReceived,\n billMonthYear: data.billMonthYear?.name || data.billMonthYear,\n reason: data.reason,\n accessToMeter: data.accessToMeter?.name || data.accessToMeter,\n sewerConnection: data.sewerConnection?.name || data.sewerConnection,\n septicTank: data.septicTank?.name || data.septicTank,\n meterPhotoId: meterPhotoId,\n };\n\n try {\n await updateMutation.mutateAsync({\n RequestInfo: {},\n updateType: \"METER\",\n kno: searchKno,\n ...submitData,\n });\n setToast({ type: \"success\", message: t(\"Meter details updated successfully!\") });\n onSelect(config.key, submitData);\n } catch (error) {\n setToast({ type: \"error\", message: t(\"Failed to update meter details\") });\n }\n };\n\n if (isLoading) {\n return <Loader />;\n }\n\n const Config = MeterDetailsConfig(\n t,\n localFormData,\n handleUpload,\n meterPhoto,\n meterPhotoId,\n setMeterPhoto,\n setMeterPhotoId\n );\n\n return (\n <Fragment>\n <FormComposer\n key={isDataLoaded ? \"loaded\" : \"loading\"}\n isDisabled={!canSubmit}\n label={t(\"ES_COMMON_CONTINUE\")}\n config={Config.map((item) => ({\n ...item,\n isCollapsible: true,\n isDefaultOpen: true,\n }))}\n onSubmit={onSubmit}\n defaultValues={defaultValues}\n onFormValueChange={onFormValueChange}\n noCard={false}\n submitInForm={true}\n />\n {toast && (\n <Toast\n error={toast.type === \"error\"}\n label={toast.message}\n onClose={() => setToast(null)}\n />\n )}\n </Fragment>\n );\n};\n\nexport default MeterDetails;","import React from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { ModuleLinksView } from \"@djb25/digit-ui-react-components\";\nconst Home = () => {\n const { t } = useTranslation();\n const propsForModuleCard = {\n moduleName: t(\"ACTION_TEST_EKYC\"),\n kpis: [\n {\n count: \"-\",\n label: t(\"TOTAL_EKYC\"),\n link: `/digit-ui/citizen/ekyc/dashboard`,\n },\n ],\n links: [],\n };\n const citizenInfo = Digit.SessionStorage.get(\"User\")?.info?.roles;\n const roles = citizenInfo.map((ele) => ele.code);\n\n if (roles.includes(\"EKYC_SURVEYOR\")) {\n propsForModuleCard.links.push({\n label: t(\"SURVEYOR_DASHBOARD\"),\n link: `/digit-ui/citizen/ekyc/surveyor-dashboard`,\n });\n }\n\n if (roles.includes(\"EKYC_SUPERVISOR\") || roles.includes(\"EKYC_VENDOR\")) {\n propsForModuleCard.links.push(\n {\n label: t(\"EKYC_DASHBOARD\"),\n link: `/digit-ui/citizen/ekyc/dashboard`,\n },\n {\n label: t(\"EKYC_INBOX\"),\n link: `/digit-ui/citizen/ekyc/inbox`,\n },\n {\n label: t(\"EKYC_ASSIGN\"),\n link: `/digit-ui/citizen/ekyc/assign`,\n }\n );\n }\n\n if (roles.length === 1 && roles.includes(\"CITIZEN\")) {\n propsForModuleCard.links.push({\n label: t(\"EKYC_STATUS\"),\n link: `/digit-ui/citizen/ekyc/:id`,\n });\n }\n\n return <ModuleLinksView links={propsForModuleCard.links} />;\n};\n\nexport default Home;\n","import React, { useMemo, useCallback, useReducer } from \"react\";\nimport { useLocation } from \"react-router-dom\";\nimport { InboxComposer } from \"@djb25/digit-ui-react-components\";\nimport useInboxTableConfig from \"../../hook/useInboxTableConfig\";\nimport SearchFormFieldsComponents from \"../../components/SearchFormFieldsComponent\";\n\n// Mock data removed in favor of API integration\n\nconst Inbox = ({ parentRoute }) => {\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const location = useLocation();\n\n const formInitValue = {\n filterForm: {},\n searchForm: {},\n tableForm: {\n limit: 10,\n offset: 0,\n sortBy: \"createdTime\",\n sortOrder: \"DESC\",\n },\n };\n\n const [formState, dispatch] = useReducer(formReducer, formInitValue);\n\n const queryParams = useMemo(() => {\n return {\n tenantId,\n offset: formState?.tableForm?.offset || 0,\n limit: formState?.tableForm?.limit || 10,\n search: formState?.searchForm || {},\n };\n }, [tenantId, formState?.tableForm?.offset, formState?.tableForm?.limit, formState?.searchForm]);\n\n const filters = useMemo(() => {\n const searchForm = formState?.searchForm || {};\n return {\n ...searchForm,\n ...(searchForm.kNumber && { kno: searchForm.kNumber }),\n };\n }, [formState?.searchForm]);\n\n const { isLoading, data: dashboardData = {} } = Digit.Hooks.ekyc.useEkycApplicationList(filters, queryParams, {\n enabled: !!tenantId,\n keepPreviousData: true,\n });\n\n const searchDetails = useMemo(\n () => ({\n kno: formState?.searchForm?.kNumber || \"\",\n name: formState?.searchForm?.kName || \"\",\n }),\n [formState?.searchForm?.kNumber, formState?.searchForm?.kName]\n );\n\n const isSearchActive = !!(searchDetails.kno || searchDetails.name);\n\n const { isLoading: isSearchLoading, data: searchData } = Digit.Hooks.ekyc.useSearchConnection(\n {\n tenantId,\n details: searchDetails,\n },\n {\n enabled: !!tenantId && !!searchDetails.kno, // 🔥 important\n keepPreviousData: true,\n }\n );\n\n const sourceData = useMemo(() => {\n if (isSearchActive) {\n if (!searchData) return [];\n return [searchData];\n }\n\n return dashboardData?.consumerList || [];\n }, [isSearchActive, searchData, dashboardData]);\n\n const filteredData = useMemo(() => {\n return (sourceData || []).map((item) => {\n // ✅ detect search response\n const isSearchItem = !!item.connectionDetails;\n\n if (isSearchItem) {\n return {\n applicationNo: item.propertyInfo?.kno || \"\",\n connectionNo: item.propertyInfo?.kno || \"\",\n owner: item.connectionDetails?.consumerName || \"\",\n applicationNumber: item.propertyInfo?.kno || \"\",\n citizenName: item.connectionDetails?.consumerName || \"\",\n status: item.connectionDetails?.statusflag || \"\",\n ekycStatus: item.connectionDetails?.ekycStatus || item.connectionDetails?.ekycstatus || item.ekycStatus || item.ekycstatus || \"NA\",\n sla: 0,\n };\n }\n\n // ✅ dashboard mapping\n return {\n ...item,\n applicationNo: item.kno || item.applicationNumber || \"\",\n connectionNo: item.connectionNo || \"\",\n owner: item.consumerName || item.citizenName || \"\",\n applicationNumber: item.kno || item.applicationNumber || \"\",\n citizenName: item.consumerName || item.citizenName || \"\",\n status: item.status || \"\",\n ekycStatus: item.ekycStatus || item.ekycstatus || \"NA\",\n sla: item.sla ?? 0,\n };\n });\n }, [sourceData]);\n\n const totalRecords = dashboardData?.dashboardInfo?.totalRecords || dashboardData?.totalCount || 0;\n\n const checkPathName = location.pathname.includes(\"ekyc/inbox\");\n const PropsForInboxLinks = {\n headerText: \"EKYC_MODULE\",\n };\n\n const SearchFormFields = useCallback(\n ({ registerRef, searchFormState, controlSearchForm }) => (\n <SearchFormFieldsComponents {...{ registerRef, searchFormState, controlSearchForm }} className=\"search\" />\n ),\n []\n );\n\n const tableOrderFormDefaultValues = {\n sortBy: \"createdTime\",\n limit: window.Digit.Utils.browser.isMobile() ? 50 : 10,\n offset: 0,\n sortOrder: \"DESC\",\n };\n\n const onSearchFormSubmit = (data) => {\n data.hasOwnProperty(\"\") && delete data?.[\"\"];\n dispatch({ action: \"mutateTableForm\", data: { ...tableOrderFormDefaultValues }, checkPathName });\n dispatch({ action: \"mutateSearchForm\", data, checkPathName });\n };\n\n const searchFormDefaultValues = {\n kNumber: \"\",\n applicationNumber: \"\",\n consumerNo: \"\",\n };\n\n const onSearchFormReset = (setSearchFormValue) => {\n setSearchFormValue(\"kNumber\", null);\n setSearchFormValue(\"applicationNumber\", null);\n setSearchFormValue(\"consumerNo\", null);\n dispatch({ action: \"mutateSearchForm\", data: searchFormDefaultValues });\n };\n\n const propsForSearchForm = {\n SearchFormFields,\n onSearchFormSubmit,\n searchFormDefaultValues: formState?.searchForm,\n resetSearchFormDefaultValues: searchFormDefaultValues,\n onSearchFormReset,\n className: \"search-form-wns-inbox\",\n };\n\n const FilterFormFields = useCallback(\n ({ registerRef, controlFilterForm, setFilterFormValue, getFilterFormValue }) => <React.Fragment></React.Fragment>,\n []\n );\n\n const propsForFilterForm = {\n FilterFormFields,\n onFilterFormSubmit: () => { },\n filterFormDefaultValues: \"\",\n resetFilterFormDefaultValues: \"\",\n onFilterFormReset: () => { },\n };\n\n function formReducer(state, payload) {\n const storageKey = payload.checkPathName ? \"EKYC.INBOX\" : \"EKYC.SW.INBOX\";\n\n // ✅ safety for SLA\n switch (payload.action) {\n case \"mutateSearchForm\":\n Digit.SessionStorage.set(storageKey, { ...state, searchForm: payload.data });\n return { ...state, searchForm: payload.data };\n\n case \"mutateFilterForm\":\n Digit.SessionStorage.set(storageKey, { ...state, filterForm: payload.data });\n return { ...state, filterForm: payload.data };\n\n case \"mutateTableForm\":\n Digit.SessionStorage.set(storageKey, { ...state, tableForm: payload.data });\n return { ...state, tableForm: payload.data };\n\n default:\n return state; // ✅ IMPORTANT\n }\n }\n\n const onPageSizeChange = (e) => {\n const newLimit = Number(e.target.value);\n\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n limit: newLimit,\n offset: 0, // reset page\n },\n checkPathName,\n });\n };\n\n const onSortingByData = (e) => {\n if (e.length > 0) {\n const [{ id, desc }] = e;\n const sortOrder = desc ? \"DESC\" : \"ASC\";\n const sortBy = id;\n\n if (!(formState.tableForm.sortBy === sortBy && formState.tableForm.sortOrder === sortOrder)) {\n dispatch({\n action: \"mutateTableForm\",\n data: {\n ...formState.tableForm,\n sortBy: id,\n sortOrder: desc ? \"DESC\" : \"ASC\",\n },\n checkPathName,\n });\n }\n }\n };\n\n const propsForInboxTable = useInboxTableConfig({\n ...{\n parentRoute,\n onPageSizeChange,\n formState,\n totalCount: totalRecords,\n table: filteredData,\n dispatch,\n onSortingByData,\n tenantId,\n checkPathName,\n inboxStyles: { overflowX: \"scroll\", overflowY: \"hidden\" },\n tableStyle: { width: \"70%\" },\n },\n });\n\n const isInboxLoading = isLoading || isSearchLoading;\n\n return (\n <div className=\"app-container\">\n <InboxComposer\n {...{\n isInboxLoading,\n // PropsForInboxLinks,\n ...propsForSearchForm,\n // ...propsForFilterForm,\n // ...propsForMobileSortForm,\n propsForInboxTable,\n // propsForInboxMobileCards,\n formState,\n }}\n />\n </div>\n );\n};\n\nexport default Inbox;\n","import React from \"react\";\nimport { PrivateRoute, ModuleHeader, ArrowLeft, HomeIcon, LayoutWrapper } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { Switch, useLocation, useRouteMatch } from \"react-router-dom\";\nimport AadhaarVerification from \"../../components/AadhaarVerification\";\nimport PropertyInfo from \"../../components/PropertyInfo\";\nimport MeterDetails from \"../../components/MeterDetails\";\nimport Review from \"../../components/Review\";\nimport Home from \"./Home\";\nimport Inbox from \"./Inbox\";\nimport AssignEkyc from \"../../components/AssignEkyc\";\nimport SurveyorDetailsCard from \"../../components/SurveyorDetailsCard\";\nimport VendorDetails from \"../../components/VendorDetails\";\n\nconst CitizenApp = () => {\n const { t } = useTranslation();\n const location = useLocation();\n const { path } = useRouteMatch();\n\n sessionStorage.removeItem(\"revalidateddone\");\n\n const getDynamicBreadcrumbs = () => {\n const pathname = location.pathname;\n\n // Parent crumb — always present and clickable → redirects to eKYC citizen home\n const crumbs = [\n { icon: HomeIcon, path: \"/digit-ui/citizen\" },\n { label: t(\"EKYC_MODULE_NAME\"), path: `/digit-ui/citizen/ekyc` },\n ];\n\n // Child crumb — only appended when on a sub-page\n if (pathname.includes(\"/create-kyc\")) {\n crumbs.push({ label: t(\"EKYC_CREATE_KYC\") });\n } else if (pathname.includes(\"/aadhaar-verification\")) {\n crumbs.push({ label: t(\"EKYC_AADHAAR_VERIFICATION\") });\n } else if (pathname.includes(\"/address-details\")) {\n crumbs.push({ label: t(\"EKYC_ADDRESS_DETAILS\") });\n } else if (pathname.includes(\"/property-info\")) {\n crumbs.push({ label: t(\"EKYC_PROPERTY_INFO\") });\n } else if (pathname.includes(\"/meter-details\")) {\n crumbs.push({ label: t(\"EKYC_METER_DETAILS\") });\n } else if (pathname.includes(\"/review\")) {\n crumbs.push({ label: t(\"EKYC_INBOX\"), path: `/digit-ui/citizen/ekyc/inbox` });\n crumbs.push({ label: t(\"EKYC_REVIEW\") });\n } else if (pathname.includes(\"/assign/surveyor-details\")) {\n crumbs.push({ label: t(\"EKYC_ASSIGN\"), path: `/digit-ui/citizen/ekyc/assign` });\n crumbs.push({ label: t(\"EKYC_SURVEYOR_DETAILS\") });\n } else if (pathname.includes(\"/assign\")) {\n crumbs.push({ label: t(\"EKYC_ASSIGN\") });\n } else if (pathname.includes(\"/surveyor-dashboard\")) {\n crumbs.push({ label: t(\"EKYC_SURVEYOR_DASHBOARD\") });\n } else if (pathname.includes(\"/dashboard\")) {\n crumbs.push({ label: t(\"EKYC_DASHBOARD\") });\n } else if (pathname.includes(\"/inbox\")) {\n crumbs.push({ label: t(\"EKYC_INBOX\") });\n } else if (pathname.includes(\"/status/\")) {\n crumbs.push({ label: t(\"EKYC_STATUS\") });\n }\n // home (exact path) → no child crumb\n\n return crumbs;\n };\n\n // const roles = Digit.SessionStorage.get(\"User\")?.info?.roles.map((ele) => ele.code);\n // const isEkyAction = (!roles?.includes(\"EKYC_SURVEYOR\") || roles?.includes(\"EMPLOYEE\"))\n return (\n <React.Fragment>\n <div className=\"ground-container form-container\">\n <ModuleHeader\n leftContent={\n <React.Fragment>\n <ArrowLeft className=\"icon\" />\n {t(\"CS_COMMON_BACK\")}\n </React.Fragment>\n }\n onLeftClick={() => window.history.back()}\n breadcrumbs={getDynamicBreadcrumbs()}\n />\n\n <Switch>\n <PrivateRoute\n exact\n path={`${path}`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <Home />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/dashboard`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <VendorDetails />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/inbox`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <Inbox />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/aadhaar-verification`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <AadhaarVerification />\n </LayoutWrapper>\n )}\n />\n\n {/* <PrivateRoute\n path={`${path}/address-details`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <AddressDetails />\n </LayoutWrapper>\n )}\n /> */}\n\n <PrivateRoute\n path={`${path}/property-info`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <PropertyInfo />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/meter-details`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <MeterDetails />\n </LayoutWrapper>\n )}\n />\n\n <PrivateRoute\n path={`${path}/review`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <Review />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/assign`}\n exact\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <AssignEkyc />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/assign/surveyor-details/:id`}\n exact\n component={() => (\n <LayoutWrapper layoutClass=\"action\">\n <SurveyorDetailsCard />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/surveyor-dashboard/:id`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <SurveyorDetailsCard />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/surveyor-dashboard`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <SurveyorDetailsCard />\n </LayoutWrapper>\n )}\n />\n <PrivateRoute\n path={`${path}/status/:applicationId`}\n component={() => (\n <LayoutWrapper layoutClass=\"normal\">\n <Review />\n </LayoutWrapper>\n )}\n />\n </Switch>\n </div>\n </React.Fragment>\n );\n};\n\nexport default CitizenApp;\n","import React, { useEffect } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { useRouteMatch } from \"react-router-dom\";\nimport { CitizenHomeCard, DocumentIcon, Loader } from \"@djb25/digit-ui-react-components\";\nimport EKYCCard from \"./components/EKYCCard\";\nimport Inbox from \"./components/Dashboard\";\nimport DesktopInbox from \"./components/DesktopInbox\";\nimport MobileInbox from \"./components/MobileInbox\";\nimport Filter from \"./components/Filter\";\nimport EmployeeApp from \"./pages/employee\";\nimport CitizenApp from \"./pages/citizen\";\nimport PropertyInfo from \"./components/PropertyInfo\";\nimport MeterDetails from \"./components/MeterDetails\";\nimport AadhaarVerification from \"./components/AadhaarVerification\";\n\nexport const EkycModule = ({ stateCode, userType, tenants }) => {\n const { path, url } = useRouteMatch();\n const moduleCode = \"EKYC\";\n const language = Digit.StoreData.getCurrentLanguage();\n const { isLoading } = Digit.Services.useStore({ stateCode, moduleCode, language });\n\n Digit.SessionStorage.set(\"EKYC_TENANTS\", tenants);\n\n useEffect(\n () =>\n Digit.LocalizationService.getLocale({\n modules: [`rainmaker-ekyc`, `rainmaker-${Digit.ULBService.getCurrentTenantId()}`],\n locale: Digit.StoreData.getCurrentLanguage(),\n tenantId: Digit.ULBService.getCurrentTenantId(),\n }),\n []\n );\n\n if (isLoading) {\n return <Loader page={true} />;\n }\n\n if (userType === \"employee\") {\n return <EmployeeApp path={path} url={url} userType={userType} tenants={tenants} />;\n } else return <CitizenApp />;\n};\n\nexport const EkycLinks = ({ matchPath, userType }) => {\n const { t } = useTranslation();\n const links = [\n {\n link: `${matchPath}/create-kyc`,\n i18nKey: t(\"EKYC_CREATE_KYC\"),\n },\n {\n link: `${matchPath}/update-kyc`,\n i18nKey: t(\"EKYC_UPDATE_KYC\"),\n },\n ];\n\n return <CitizenHomeCard header={t(\"EKYC_MODULE_NAME\")} links={links} Icon={() => <DocumentIcon className=\"fill-path-primary-main\" />} />;\n};\n\nconst componentsToRegister = {\n EKYCModule: EkycModule,\n EKYCCard,\n EKYCInbox: Inbox,\n EKYCDesktopInbox: DesktopInbox,\n EKYCMobileInbox: MobileInbox,\n EKYC_INBOX_FILTER: (props) => <Filter {...props} />,\n EkycLinks,\n AadhaarVerification,\n PropertyInfo,\n MeterDetails,\n};\n\nexport const initEkycComponents = () => {\n Object.entries(componentsToRegister).forEach(([key, value]) => {\n Digit.ComponentRegistryService.setComponent(key, value);\n });\n};\n\nexport default EkycModule;\n"],"names":["EKYCCard","t","useTranslation","propsForModuleCard","Icon","React","createElement","PersonIcon","moduleName","kpis","count","label","link","links","EmployeeModuleCard","getChartConstructor","C","Chartjs","StatusCards","_ref","countData","chartRef1","useRef","chartInstance1","total","pending","active","completed","actualCompleted","approved","efficiency","Math","round","healthPct","formatNumber","num","Intl","NumberFormat","format","useEffect","current","destroy","ctx1","getContext","ChartConstructor","type","data","labels","datasets","backgroundColor","borderColor","borderWidth","hoverOffset","options","cutout","plugins","legend","display","maintainAspectRatio","responsive","legendItems","color","value","className","map","item","key","style","background","ref","width","height","Dashboard","tenantId","Digit","ULBService","getCurrentTenantId","isLoading","dashboardData","Hooks","ekyc","useEkycSurveyorDashboard","offset","limit","enabled","useMemo","info","dashboardInfo","rejected","Loader","Card","DesktopInbox","_Digit$ComponentRegis","tableConfig","filterComponent","props","onSort","onNextPage","onPrevPage","currentPage","pageSizeLimit","onPageSizeChange","parentRoute","searchParams","sortParams","totalRecords","history","useHistory","FilterComponent","ComponentRegistryService","getComponent","selectedKno","setSelectedKno","useState","reviewData","getReview","useEkycAPI","handleReview","kno","push","kNumber","aadhaarData","columns","Header","accessor","Cell","_ref2","_row$original","_row$original2","row","original","applicationNumber","cursor","fontWeight","onClick","_ref3","_row$original3","citizenName","_ref4","_row$original4","status","_ref5","_row$original5","_row$original6","ekycStatus","ekycstatus","_ref6","_row$original7","_row$original8","tableData","items","Array","isArray","InboxLinks","headerText","moduleCode","defaultSearchParams","onFilterChange","onSearch","flex","padding","Table","getCellProps","cellInfo","SearchConsumer","_props$countData","_props$countData2","_props$countData3","children","_searchParams","setSearchParams","onChange","prev","onSubmit","e","preventDefault","onClear","cleared","kName","HomeIcon","viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","cx","cy","r","x1","y1","x2","y2","TextInput","target","placeholder","d","todaysAudits","auditChange","pendingCount","i","String","fromCharCode","MobileInbox","_data$items","mobileData","mobileNumber","Link","to","SubmitBar","length","DetailsCard","serviceRequestIdKey","linkPrefix","split","text","index","textAlign","Filter","statusMap","applyLocalFilters","clearAll","onStatusChange","newParams","FilterForm","handleSubmit","fn","onResetFilterForm","id","onMobileExclusiveFilterPopupFormClose","onClose","FilterFormField","Dropdown","option","optionKey","select","selected","ekycMockData","topKpis","totalWaterConnections","totalEkycCompleted","totalPending","totalRejected","agencyEkycCompleted","citizenSelfEkycCompleted","todaysEkyc","successRate","rejectionPercentage","executiveMetrics","totalSurveyors","totalSupervisors","activeJurisdictions","todaysGrowth","selfEkycAdoption","avgApprovalTime","riskZones","escalationsOpen","alerts","title","priority","change","district","heatmapData","intensity","dailyTrend","selfVsAgency","agency","citizen","pendingVsCompleted","rejectionAnalysis","success","vendors","name","assignedConnections","completedEkyc","selfEkyc","inactiveDemand","progress","supervisors","activeSurveyors","jurisdictions","dailyPerformance","day","zones","cluster","location","zroOffice","assemblyConstituency","gpsLocation","distanceFromFarthestPoint","activeDemand","pppZones","districtwiseInactiveTotal","ExecutiveLineChart","formattedData","agencyKyc","selfKyc","totalKyc","ResponsiveContainer","LineChart","margin","top","right","left","bottom","CartesianGrid","strokeDasharray","vertical","XAxis","dataKey","axisLine","tickLine","tick","fontSize","YAxis","Tooltip","contentStyle","border","borderRadius","boxShadow","labelStyle","marginBottom","Legend","verticalAlign","align","iconType","wrapperStyle","paddingBottom","Line","dot","activeDot","ExecutiveBarChart","categories","xKey","minHeight","BarChart","itemStyle","series","Bar","radius","barSize","colors","ExecutivePieChart","labelKey","PieChart","Pie","nameKey","outerRadius","innerRadius","paddingAngle","entry","marginTop","CeoDashboard","_topKpis$todayEkyc","useLocation","query","setQuery","statusFilter","setStatusFilter","basePath","pathname","replace","filters","filteredVendors","filter","vendor","keyword","toLowerCase","includes","some","zone","_zone$location","zoneRows","flatMap","sort","a","b","routeToVendor","vendorId","icon","FaUsers","variant","FaCheckCircle","FaClock","FaExclamationTriangle","FaUserTie","FaChartLine","card","_card$value","_card$value$toLocaleS","toLocaleString","call","FaSearch","join","FaArrowRight","FaMapMarkedAlt","slice","_zone$activeDemand","_zone$pppZones","_zone$inactiveDemand","min","max","alert","todayEkyc","VendorDetails","_vendor$dailyPerforma","_vendor$dailyPerforma2","useParams","find","Number","goBack","FaArrowLeft","performanceData","_item$value","_item$value$toLocaleS","_row$activeDemand","_row$pppZones","_row$inactiveDemand","intensityScore","random","useInboxTableConfig","_formState$tableForm","_formState$tableForm2","_Digit$SessionStorage","_Digit$SessionStorage2","_Digit$SessionStorage3","_formState$searchForm","formState","totalCount","table","dispatch","checkPathName","onSortingByData","inboxStyles","tableStyle","tableForm","userType","SessionStorage","get","tableColumnConfig","disableSortBy","disableSort","autoSort","manualPagination","initSortId","_formState$tableForm3","action","parseInt","_formState$tableForm4","searchForm","message","onLastPage","ceil","onFirstPage","_iteratorSymbol","Symbol","iterator","_asyncIteratorSymbol","asyncIterator","_catch","body","recover","result","then","SearchFormFieldsComponents","searchFormState","controlSearchForm","errors","Fragment","Label","CustomTooltip","Controller","control","defaultValue","rules","pattern","render","CardLabelError","Inbox","_formState$searchForm3","_formState$searchForm4","businessService","initialStates","isInbox","formInitValue","filterForm","sortBy","sortOrder","useReducer","formReducer","queryParams","isListLoading","listData","useEkycApplicationList","keepPreviousData","searchDetails","_formState$searchForm2","isSearchActive","isSearchLoading","searchData","useSearchConnection","details","sourceData","consumerList","filteredData","isSearchItem","connectionDetails","_item$propertyInfo","_item$propertyInfo2","_item$connectionDetai","_item$propertyInfo3","_item$connectionDetai2","_item$connectionDetai3","_item$connectionDetai4","_item$connectionDetai5","applicationNo","propertyInfo","connectionNo","owner","consumerName","statusflag","sla","fullName","firstName","middleName","lastName","Boolean","SearchFormFields","useCallback","registerRef","tableOrderFormDefaultValues","window","Utils","browser","isMobile","onSearchFormSubmit","hasOwnProperty","searchFormDefaultValues","consumerNo","onSearchFormReset","setSearchFormValue","propsForSearchForm","resetSearchFormDefaultValues","FilterFormFields","state","payload","storageKey","set","newLimit","desc","propsForInboxTable","overflowX","overflowY","isInboxLoading","InboxComposer","_extends","MOCK_SURVEYORS","role","MOCK_MRDS","code","Mapping","selectedSurveyor","setSelectedSurveyor","selectedMRD","setSelectedMRD","mappings","setMappings","editingId","setEditingId","editSurveyor","setEditSurveyor","editMRD","setEditMRD","deleteTarget","setDeleteTarget","toast","setToast","handleAddMapping","exists","m","surveyorId","mrdCode","Date","now","surveyorName","mrdName","handleEditStart","s","handleEditSave","duplicate","handleEditCancel","handleDeleteConfirm","handleSaveMappings","isEditing","gap","EditIcon","DeleteIcon","xmlns","CardHeader","CardText","LabelFieldPair","CardLabel","justifyContent","disabled","tableClassName","ActionBar","Modal","headerBarMain","headerBarEnd","actionSaveLabel","actionSaveOnSubmit","actionCancelLabel","actionCancelOnSubmit","Toast","error","warning","isDsc","ConnectionDetailsView","path","useRouteMatch","showModal","setShowModal","selectedOption","setSelectedOption","handleStartVerification","onModalConfirm","parentPath","statusFlag","isActive","meterNumber","connectionType","address","x","y","rx","ry","phoneNumber","email","lastVerified","points","RadioButtons","optionsKey","onSelect","flexDirection","buttonStyle","Create","saved","sessionStorage","getItem","JSON","parse","searchPerformed","setSearchPerformed","showToast","setShowToast","formParams","setFormParams","clearParams","useSessionStorage","isSearching","revalidate","onError","_error$response","_error$response$data","_error$response$data$","_error$response$data$2","response","Errors","removeItem","handleSearch","params","currentKno","Object","keys","forEach","startsWith","setItem","stringify","closeToast","ActionButton","jumpTo","routeTo","LinkButton","checkForNA","undefined","boolToYesNo","extractReviewData","flowState","rawData","reviewWrapper","applicationReviewInfo","applicationReview","applicationData","newData","oldData","ReviewSection","fields","overflow","borderBottom","alignItems","CardSubHeader","borderCollapse","tableLayout","textTransform","field","idx","valNew","valOld","isChanged","borderTop","isBool","Review","_newDataRaw$connectio","_newDataRaw$connectio2","_newDataRaw$connectio3","_newDataRaw$address","_newDataRaw$address2","_newDataRaw$address3","_newDataRaw$address4","_newDataRaw$address5","_newDataRaw$address6","_newDataRaw$address7","_newDataRaw$address8","_newDataRaw$address9","_newDataRaw$address0","_newDataRaw$address1","_newDataRaw$address10","_newDataRaw$address11","_newDataRaw$address12","_newDataRaw$address13","_newDataRaw$address14","_newDataRaw$property","_newDataRaw$property2","_editedProperty$conne","_newDataRaw$property3","_editedProperty$conne2","_newDataRaw$property4","_editedProperty$userT","_newDataRaw$property5","_editedProperty$noOfF","_newDataRaw$property6","_newDataRaw$property7","_newDataRaw$meter","_editedMeter$meterSta","_newDataRaw$meter2","_newDataRaw$meter3","_newDataRaw$meter4","_newDataRaw$meter5","_editedMeter$workingS","_newDataRaw$meter6","_editedMeter$lastBill","_newDataRaw$meter7","_newDataRaw$meter8","agree","setAgree","isSubmitting","setIsSubmitting","showPreview","setShowPreview","previewUrl","setPreviewUrl","showOptions","setShowOptions","toastData","setToastData","edits","activeKno","addressDetails","editedAddress","propertyDetails","editedProperty","meterDetails","editedMeter","workflowMutation","useEkycWorkflow","updateMutation","useEkycUpdate","useEkycSearchReview","fetchType","apiNewData","apiOldData","prepareConsolidatedData","apiConn","apiAddr","apiProp","apiMeter","connection","addressRaw","connectionCategory","meterNo","mobileNo","knumber","fullAddress","flatHouseNumber","flatNo","buildingTower","building","landmark","pinCode","pincode","ward","locality","assembly","gpsValid","latitude","longitude","whatsappNo","noOfPerson","noOfPersons","doorPhotoFilestoreId","property","pidNumber","typeOfConnection","numberOfFloors","noOfFloor","tenantName","tenantMobile","propertyDocumentFileStoreId","buildingImageFileStoreId","meter","metered","meterStatus","meterMake","meterLocationAddress","meterLatitude","meterLongitude","workingStatus","lastBillRaised","systemMeterId","meterPhotoFileStoreId","newDataRaw","oldDataRaw","connectionData","addressData","whatsappNumber","doorPhotoFileStoreId","propertyData","connectionTypeData","connectionCategoryData","userTypeData","noOfFloorsData","meterData","meterStatusData","meterLocation","workingStatusData","lastBillRaisedData","connectionFields","addressFields","propertyFields","meterFields","handleDeclaration","handleReject","_Digit$UserService$ge","_Digit$UserService$ge2","_Digit$UserService$ge3","RequestInfo","apiId","ver","msgId","authToken","UserService","getUser","access_token","remarks","reviewedBy","userName","_temp","Promise","resolve","mutateAsync","err","console","reject","handleApprove","_Digit$UserService$ge4","_Digit$UserService$ge5","_Digit$UserService$ge6","_temp2","setTimeout","_err$response","_err$response$data","handleViewDocument","fileStoreId","documentUrl","handleMenuSelect","baseUrl","StatusTable","maxWidth","Row","actionButton","GenericFileIcon","paddingTop","CheckBox","checked","Menu","position","zIndex","maxHeight","src","alt","nextSibling","open","AadhaarVerificationConfig","formData","uploadFile","setDocumentId","documentId","_formData","_formData$consumerTyp","_formData2","_formData3","_formData3$occupantTy","_formData4","_formData5","consumerType","occupantType","informantIsConsumer","isMandatory","populators","component","validation","required","UploadFile","onUpload","onDelete","head","AadhaarVerification","config","URLSearchParams","search","urlKno","searchKno","cacheTime","savedData","aadhaarVerification","documentProof","setDocumentProof","isDataLoaded","setIsDataLoaded","canSubmit","setCanSubmit","defaultValues","setDefaultValues","categoryType","gender","parentSpouseName","mobile","whatsapp","residents","identityType","documentNumber","informantName","informantRelation","idFile","ownerMobile","tenantVerification","designation","department","employeeId","entityName","contactPerson","consent","localFormData","setLocalFormData","extractApplicationData","appData","addrDetails","fName","mName","lName","parts","trim","updatedDefaults","parentSpouse","handleUploadProof","file","files","size","UploadServices","Filestorage","res","_res$data","_res$data$files","_res$data$files$","onFormValueChange","setValue","_data$consumerType","_localFormData$consum","_data$occupantType","_localFormData$occupa","consumerTypeChanged","occupantTypeChanged","informantIsConsumerChanged","knoVal","consumerTypeVal","occupantTypeVal","categoryTypeVal","firstNameVal","mobileVal","residentsVal","consentVal","docId","ownerMobileVal","valid","test","_data$consumerType2","_data$occupantType2","_data$categoryType","_data$gender","_data$identityType","submitData","relation","landline","entityRelation","idProof","idNumber","updateType","Config","FormComposer","isDisabled","isCollapsible","isDefaultOpen","noCard","submitInForm","ekycConfig","route","texts","header","submitBarLabel","timeLine","currentStep","actions","doorImage","showMapActualLocation","EKYCForm","passedPath","match","setParams","rest","goNext","skipStep","isAddMultiple","currentPath","pop","routeObj","nextStep","currentIndex","findIndex","c","redirectWithHistory","base","handleSelect","silent","obj","concat","indexRoute","formStepRoutes","isFormStep","sectionRefs","currentRoute","scrollIntoView","behavior","block","VerticalTimeline","showFinalStep","Switch","Route","Component","el","defaultOpen","Redirect","AssignEkycModal","surveyor","closeModal","refetchDashboard","selectedKnos","setSelectedKnos","isBulkSelection","setIsBulkSelection","setCurrentPage","pageSize","setPageSize","setFilters","zoneName","mrkey","debouncedFilters","setDebouncedFilters","timer","clearTimeout","isFetching","assignmentMutation","useEkycAssignmentCreate","onSuccess","_response$data","_error$data","getAssignmentPayload","filterMappings","appliedFilter","assignmentType","assignmentValue","log","assignmentValues","handleAssign","_surveyor$owner","mutate","uuid","handleSelectAll","pageKnos","allSelected","every","Set","handleFilterChange","Close","tableTitle","tableClass","isPaginationRequired","totalPages","downloadSurveyorPDF","rows","vendorName","supervisorName","initData","tenants","tenantInfo","tenant","capitalize","substr","toUpperCase","ulbCamel","ulb","asSectionHeader","values","submittedCount","pdf","generateSurveyorReport","logo","heading","SurveyorDetailsDashboard","_Digit$SessionStorage4","_surveyor$owner2","_surveyor$owner3","_surveyor$owner4","_fullName$charAt","_dashboardData$dashbo3","_dashboardData$dashbo4","_dashboardData$dashbo5","_dashboardData$dashbo6","_surveyor$owner5","_surveyor$owner6","_surveyor$owner7","_surveyor$additionalD","_dashboardData$dashbo7","_dashboardData$dashbo8","ownerIds","ids","surveyorSearchResponse","fsm","useSurveyorSearch","staleTime","Infinity","roles","ele","_surveyorSearchRespon","surveyors","vendorData","useDsoSearch","supervisorSearchResponse","useSupervisorSearch","_mappedVendor$dsoDeta","mappedVendor","v","_v$dsoDetails","_v$dsoDetails2","dsoDetails","_mappedSupervisor$own","supervisorId","mappedSupervisor","_s$owner","isDashboardLoading","refetch","knoColumns","showReportMenu","setShowReportMenu","customDate","setCustomDate","from","showCustomPicker","setShowCustomPicker","reportMenuRef","handler","contains","document","addEventListener","removeEventListener","weeklyData","statusData","completedCases","pendingCases","rejectedCases","getDateRange","start","setHours","setDate","getDate","getDay","handlePresetDownload","_dashboardData$dashbo","allRows","range","filtered","ts","submittedAt","createdTime","lastModifiedTime","getTime","handleCustomDownload","_dashboardData$dashbo2","StatCard","charAt","description","p","emailId","additionalDetails","serviceType","_dashboardData$dashbo9","_dashboardData$dashbo0","_row$original5$owner","SupervisorInboxTableConfig","floor","AssignEkyc","paginationParms","isDataSearchLoading","useEkycAssignmentProgress","_owner$roles","_owner$roles$map","_item$additionalDetai","_item$auditDetails","_item$auditDetails2","roleCodes","auditDetails","cards","totalKnos","totalAssignments","completedKnos","overallProgressPercent","isCardLoading","EmployeeApp","getDynamicBreadcrumbs","crumbs","AppContainer","ModuleHeader","leftContent","ArrowLeft","onLeftClick","back","breadcrumbs","PrivateRoute","LayoutWrapper","layoutClass","exact","SurveyorDetailsCard","PropertyInfoConfig","buildingImage","buildingImageId","setBuildingImage","setBuildingImageId","_formData$propertyTyp","propertyType","isHotel","isHospitalOrNursing","objectFit","PropertyInfo","subPropertyCategory","noOfFloors","floorNo","noOfRooms","noOfBeds","dwellingUnits","propType","subPropCat","matchingType","numberOfRooms","numberOfBeds","numberOfDwellingUnits","handleUpload","reader","FileReader","onloadend","readAsDataURL","_data$propertyType","_localFormData$proper","propertyTypeChanged","propTypeVal","subPropCatVal","noOfFloorsVal","buildingImgId","noOfRoomsVal","noOfBedsVal","_data$propertyType2","_data$subPropertyCate","MeterDetailsConfig","uploadPhoto","meterPhoto","meterPhotoId","setMeterPhoto","setMeterPhotoId","_formData$meterStatus","_formData3$lastBillRe","_formData5$sewerConne","_formData6","lastBillReceived","sewerConnection","isFrozen","monthYearOptions","yesNo","MeterDetails","saType","mrCode","areaCode","mrKey","meterMaker","meterCondition","billMonthYear","reason","accessToMeter","septicTank","mStatus","mCondition","mLoc","billRec","billMonYr","accToMeter","sewerConn","sepTank","matchingStatus","o","matchingCond","matchingLoc","strVal","lastBillReceivedDate","formatted","parsedParts","mon","yr","mrcode","areacode","lastBillNotRaisedReason","_data$meterStatus","_localFormData$meterS","_data$lastBillReceive","_localFormData$lastBi","_data$sewerConnection","_localFormData$sewerC","meterStatusChanged","lastBillReceivedChanged","sewerConnectionChanged","connCatVal","mStatusVal","mLocVal","billRecVal","sewerConnVal","mPhotoId","reasonVal","billMonYrVal","sepTankVal","_data$meterStatus2","_data$meterCondition","_data$meterLocation","_data$lastBillReceive2","_data$billMonthYear","_data$accessToMeter","_data$sewerConnection2","_data$septicTank","Home","citizenInfo","ModuleLinksView","CitizenApp","EkycModule","stateCode","url","language","StoreData","getCurrentLanguage","Services","useStore","LocalizationService","getLocale","modules","locale","page","EkycLinks","matchPath","i18nKey","CitizenHomeCard","DocumentIcon","componentsToRegister","EKYCModule","EKYCInbox","EKYCDesktopInbox","EKYCMobileInbox","EKYC_INBOX_FILTER","initEkycComponents","entries","setComponent"],"mappings":"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"}
|