@djb25/digit-ui-module-ekyc 1.0.8 → 1.0.9
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 +3281 -4272
- package/dist/index.modern.js.map +1 -1
- package/package.json +1 -1
- package/src/Module.js +42 -31
- package/src/components/ConnectionDetailsView.js +5 -3
- package/src/components/DesktopInbox.js +68 -184
- package/src/components/EKYCCard.js +35 -27
- package/src/components/Filter.js +48 -53
- package/src/components/SearchFormFieldsComponent.js +55 -0
- package/src/components/StatusCards.js +7 -3
- package/src/config/config.js +69 -0
- package/src/hook/useInboxTableConfig.js +134 -0
- package/src/pages/citizen/index.js +1 -1
- package/src/pages/employee/AadhaarVerification.js +473 -609
- package/src/pages/employee/AddressDetails.js +508 -733
- package/src/pages/employee/ConsumerDetails.js +512 -0
- package/src/pages/employee/Create.js +5 -1
- package/src/pages/employee/Dashboard.js +43 -0
- package/src/pages/employee/EKYCForm.js +117 -0
- package/src/pages/employee/Inbox.js +248 -140
- package/src/pages/employee/Mapping.js +640 -6
- package/src/pages/employee/MeterDetails.js +481 -471
- package/src/pages/employee/PropertyInfo.js +472 -562
- package/src/pages/employee/Review.js +268 -540
- package/src/pages/employee/Update.js +9 -0
- package/src/pages/employee/index.js +59 -94
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/DesktopInbox.js","../src/components/SearchConsumer.js","../src/components/MobileInbox.js","../src/components/Filter.js","../src/pages/employee/Inbox.js","../src/components/ConnectionDetailsView.js","../src/pages/employee/Create.js","../src/utils/index.js","../../../../node_modules/babel-plugin-transform-async-to-promises/helpers.mjs","../src/pages/employee/AddressDetails.js","../src/pages/employee/AadhaarVerification.js","../src/pages/employee/PropertyInfo.js","../src/pages/employee/MeterDetails.js","../src/pages/employee/Review.js","../src/pages/employee/index.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_CREATE_KYC\"),\n link: `/digit-ui/employee/ekyc/create-kyc`\n },\n // {\n // label: t(\"EKYC_MAPPING\"),\n // link: `/digit-ui/employee/ekyc/mapping`\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 { Chart, registerables } from \"chart.js\";\n\nChart.register(...registerables);\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 const rejected = countData?.rejected || 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 chartInstance1.current = new Chart(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\") ||\n \"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\">\n {t(\"EKYC_TOTAL_APPLICATIONS\") || \"Total Applications Processed\"}\n </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\">\n {t(\"EKYC_VERIFICATION_LIFECYCLE\") || \"Verification lifecycle distribution\"}\n </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\n className=\"indicator-dot\"\n style={{ background: item.color }}\n />\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\">\n {t(\"EKYC_PLATFORM_EFFICIENCY\") || \"Platform operational efficiency\"}\n </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;","import React, { useMemo, useState } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Table, SubmitBar, Header, Card, HomeIcon, PersonIcon, Modal, Loader } from \"@djb25/digit-ui-react-components\";\nimport { Link } 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 onSearch,\n searchFields,\n } = props;\n const { t } = useTranslation();\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const [FilterComponent, setComp] = React.useState(() => Digit.ComponentRegistryService?.getComponent(filterComponent));\n\n // State for Review Modal\n const [showReviewModal, setShowReviewModal] = useState(false);\n const [reviewHtml, setReviewHtml] = useState(\"\");\n const [selectedKno, setSelectedKno] = useState(\"\");\n\n const generateReviewHtml = (info) => {\n if (!info) return \"<h3>No data found</h3>\";\n\n // Helper to format labels\n const formatLabel = (str) => str.replace(/([A-Z])/g, ' $1').replace(/^./, (s) => s.toUpperCase());\n\n return `\n <!DOCTYPE html>\n <html>\n <head>\n <link href=\"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap\" rel=\"stylesheet\">\n <style>\n body { font-family: 'Inter', sans-serif; padding: 30px; color: #101828; line-height: 1.5; background: #fff; }\n .header { display: flex; justify-content: space-between; align-items: flex-start; border-bottom: 2px solid #185FA5; padding-bottom: 20px; margin-bottom: 30px; }\n .title { margin: 0; color: #185FA5; font-size: 24px; font-weight: 700; }\n .subtitle { margin: 5px 0 0; color: #667085; font-size: 14px; }\n .section { margin-bottom: 30px; border: 1px solid #EAECF0; border-radius: 12px; overflow: hidden; }\n .section-header { background: #F9FAFB; padding: 12px 20px; border-bottom: 1px solid #EAECF0; font-weight: 700; font-size: 14px; color: #344054; text-transform: uppercase; letter-spacing: 0.05em; }\n .grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0; }\n .item { padding: 16px 20px; border-bottom: 1px solid #F2F4F7; }\n .item:nth-last-child(-n+2) { border-bottom: none; }\n .label { font-size: 11px; color: #667085; text-transform: uppercase; font-weight: 600; letter-spacing: 0.02em; margin-bottom: 4px; }\n .value { font-size: 14px; font-weight: 500; color: #1D2939; }\n .badge { display: inline-block; padding: 4px 12px; border-radius: 16px; font-size: 12px; font-weight: 600; }\n .badge-success { background: #ECFDF3; color: #027A48; }\n .badge-warning { background: #FFFAEB; color: #B54708; }\n .print-btn { background: #185FA5; color: #fff; padding: 10px 20px; border: none; border-radius: 8px; cursor: pointer; font-weight: 600; font-size: 14px; display: block; margin: 20px auto; }\n @media print { .print-btn { display: none; } body { padding: 0; } }\n </style>\n </head>\n <body>\n <div class=\"header\">\n <div>\n <h1 class=\"title\">Delhi Jal Board</h1>\n <p class=\"subtitle\">EKYC Application Review Summary</p>\n </div>\n <div style=\"text-align: right\">\n <span class=\"badge ${info.statusFlag === 'ACTIVE' ? 'badge-success' : 'badge-warning'}\">${info.statusFlag || 'N/A'}</span>\n <p class=\"subtitle\" style=\"margin-top: 8px\">Generated on: ${new Date().toLocaleDateString()}</p>\n </div>\n </div>\n\n <div class=\"section\">\n <div class=\"section-header\">Basic Details</div>\n <div class=\"grid\">\n <div class=\"item\"><div class=\"label\">KNO Number</div><div class=\"value\">${info.kno || 'N/A'}</div></div>\n <div class=\"item\"><div class=\"label\">Consumer Name</div><div class=\"value\">${info.consumerName || 'N/A'}</div></div>\n <div class=\"item\"><div class=\"label\">Mobile Number</div><div class=\"value\">${info.mobileNo || 'N/A'}</div></div>\n <div class=\"item\"><div class=\"label\">Email Address</div><div class=\"value\">${info.email || 'N/A'}</div></div>\n <div class=\"item\"><div class=\"label\">Connection Type</div><div class=\"value\">${info.typeOfConnection || 'N/A'}</div></div>\n <div class=\"item\"><div class=\"label\">Category</div><div class=\"value\">${info.connectionCategory || 'N/A'}</div></div>\n </div>\n </div>\n\n <div class=\"section\">\n <div class=\"section-header\">Location & Property Information</div>\n <div class=\"grid\">\n <div class=\"item\"><div class=\"label\">Address</div><div class=\"value\">${info.addressRaw || 'N/A'}</div></div>\n <div class=\"item\"><div class=\"label\">Locality</div><div class=\"value\">${info.locality || 'N/A'}</div></div>\n <div class=\"item\"><div class=\"label\">City - Pincode</div><div class=\"value\">${info.city || 'N/A'} - ${info.pincode || 'N/A'}</div></div>\n <div class=\"item\"><div class=\"label\">PID Number</div><div class=\"value\">${info.pidNumber || 'N/A'}</div></div>\n <div class=\"item\"><div class=\"label\">No. of Floors</div><div class=\"value\">${info.noOfFloor || 'N/A'}</div></div>\n <div class=\"item\"><div class=\"label\">Verification Status</div><div class=\"value\"><span class=\"badge ${info.verificationStatus === 'SUCCESSFUL' ? 'badge-success' : 'badge-warning'}\">${info.verificationStatus || 'PENDING'}</span></div></div>\n </div>\n </div>\n\n <div class=\"section\">\n <div class=\"section-header\">Meter Information</div>\n <div class=\"grid\">\n <div class=\"item\"><div class=\"label\">Meter Number</div><div class=\"value\">${info.meterNumber || 'N/A'}</div></div>\n <div class=\"item\"><div class=\"label\">Meter Make</div><div class=\"value\">${info.meterMake || 'N/A'}</div></div>\n <div class=\"item\"><div class=\"label\">Meter Location</div><div class=\"value\">${info.meterLocationAddress || 'N/A'}</div></div>\n <div class=\"item\"><div class=\"label\">Working Status</div><div class=\"value\">${info.workingStatus ? 'Working' : 'Not Working'}</div></div>\n </div>\n </div>\n\n <button class=\"print-btn\" onclick=\"window.print()\">Print This Review</button>\n </body>\n </html>\n `;\n };\n\n // Use the library hook if available, otherwise fallback to local definition\n // This is a safety measure to handle stale library builds in dev environment\n const useReviewHook = Digit.Hooks.ekyc?.useEkycApplicationReview || ((p, config) => {\n return Digit.Hooks.useMutation((data) => Digit.EkycService.application_review(data, p), config);\n });\n\n const { mutate: getReview, isLoading: isReviewLoading } = useReviewHook(\n { tenantId },\n {\n onSuccess: (res) => {\n if (res?.applicationReviewInfo) {\n const html = generateReviewHtml(res.applicationReviewInfo);\n setReviewHtml(html);\n setShowReviewModal(true);\n } else {\n // Fallback to URL method if the API is updated later to return a URL\n const url = res?.acknowledgementURL || res?.reviewUrl || res?.url;\n if (url) {\n setReviewHtml(\"\"); // Clear HTML so iframe uses URL\n setReviewUrl(url);\n setShowReviewModal(true);\n } else {\n alert(t(\"EKYC_REVIEW_INFO_NOT_FOUND\"));\n }\n }\n },\n onError: (err) => {\n alert(err?.message || t(\"ERR_FAILED_TO_FETCH_REVIEW\"));\n }\n }\n );\n\n const handleReview = (kno) => {\n setSelectedKno(kno);\n getReview({ kno });\n };\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: \"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 [t, parentRoute]\n );\n\n const tableData = useMemo(() => {\n return data?.items || [];\n }, [data]);\n\n return (\n <div className=\"inbox-container\">\n {showReviewModal && (\n <Modal\n headerBarMain={t(\"EKYC_APPLICATION_REVIEW\") + (selectedKno ? ` - ${selectedKno}` : \"\")}\n headerBarEnd={<div style={{ cursor: \"pointer\", padding: \"5px 10px\", background: \"#F2F4F7\", borderRadius: \"4px\" }} onClick={() => setShowReviewModal(false)}>{t(\"CLOSE\")}</div>}\n hideSubmit={true}\n popupStyles={{ width: \"90%\", height: \"90%\", maxWidth: \"1000px\" }}\n popupModuleMianStyles={{ height: \"calc(100% - 60px)\", padding: 0 }}\n >\n <iframe\n srcDoc={reviewHtml}\n src={!reviewHtml ? reviewUrl : undefined}\n title=\"Application Review\"\n style={{ width: \"100%\", height: \"100%\", border: \"none\" }}\n />\n </Modal>\n )}\n {(isLoading || isReviewLoading) && <Loader />}\n <div className=\"filters-container\">\n {/* Sidebar Title Card */}\n <Card\n className=\"sidebar-title-card\"\n style={{ display: \"flex\", alignItems: \"center\", padding: \"16px\", marginBottom: \"16px\", borderRadius: \"4px\" }}\n >\n <div className=\"icon-container\" style={{ color: \"#3A8DCC\", marginRight: \"12px\" }}>\n <HomeIcon style={{ width: \"24px\", height: \"24px\" }} />\n </div>\n <div style={{ fontWeight: \"700\", fontSize: \"18px\", color: \"#0B0C0C\" }}>{t(\"ACTION_TEST_EKYC\")}</div>\n </Card>\n\n <div>\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 </div>\n\n <div style={{ flex: 1, marginLeft: \"16px\" }}>\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\" style={{ marginBottom: \"16px\", padding: \"16px\" }}>\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 );\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, { useEffect, 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 localParamChange = (filterParam) => {\n let keys_to_delete = filterParam.delete;\n let _new = { ..._searchParams, ...filterParam };\n if (keys_to_delete) keys_to_delete.forEach((key) => delete _new[key]);\n delete filterParam.delete;\n setSearchParams({ ..._new });\n };\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) => { e && e.preventDefault(); fn(); }}\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","import React, { useCallback, useEffect, useState, useMemo } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport DesktopInbox from \"../../components/DesktopInbox\";\nimport MobileInbox from \"../../components/MobileInbox\";\nimport Filter from \"../../components/Filter\";\n\n// Mock data removed in favor of API integration\n\nconst Inbox = ({\n parentRoute,\n businessService = \"EKYC\",\n initialStates = {},\n filterComponent,\n isInbox,\n}) => {\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const { t } = useTranslation();\n\n // 1. Unified State Management\n const [pageOffset, setPageOffset] = useState(initialStates.pageOffset || 0);\n const [pageSize, setPageSize] = useState(initialStates.pageSize || 10);\n const [sortParams, setSortParams] = useState(initialStates.sortParams || [{ id: \"createdTime\", desc: true }]);\n\n // Define the default option for the dropdown\n const defaultStatusOption = useMemo(() => ({ label: t(\"EKYC_STATUS_ALL\"), value: \"\" }), [t]);\n\n // Maintain the full search objects for the Search component\n const [searchParams, setSearchParams] = useState(initialStates.searchParams || { status: defaultStatusOption });\n\n // 2. API Data Fetching\n const { isLoading, data: dashboardData, isFetching } = Digit.Hooks.ekyc.useEkycSurveyorDashboard(\n {}, \n { \n tenantId, \n offset: pageOffset, \n limit: pageSize,\n },\n {\n enabled: !!tenantId,\n }\n );\n\n const filteredData = useMemo(() => {\n let items = dashboardData?.dashboardInfo?.consumerList || [];\n \n // Frontend filtering since we no longer send status to API\n const selectedStatus = searchParams.status?.value;\n if (selectedStatus && selectedStatus !== \"\") {\n items = items.filter(item => item.status === selectedStatus);\n }\n\n return items.map(item => ({\n ...item,\n applicationNumber: item.kno || item.applicationNumber,\n citizenName: item.consumerName || item.citizenName,\n }));\n }, [dashboardData, searchParams.status]);\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 const totalRecords = dashboardData?.dashboardInfo?.totalRecords || dashboardData?.totalCount || 0;\n\n // 3. Handlers\n const handleSearch = useCallback((filterParam) => {\n // Here we keep the full objects (like for dropdowns) in searchParams\n // so that the Search component can display them correctly.\n setSearchParams((prev) => ({ ...prev, ...filterParam }));\n setPageOffset(0);\n }, []);\n\n const fetchNextPage = () => setPageOffset((prev) => prev + pageSize);\n const fetchPrevPage = () => setPageOffset((prev) => Math.max(prev - pageSize, 0));\n\n const handlePageSizeChange = (e) => {\n const newSize = Number(e.target.value);\n setPageSize(newSize);\n setPageOffset(0);\n };\n\n const handleSort = useCallback((args) => {\n if (args.length > 0) setSortParams(args);\n }, []);\n\n // 4. Form Configuration\n const searchFields = useMemo(() => [\n {\n label: t(\"EKYC_STATUS\"),\n name: \"status\",\n type: \"dropdown\",\n options: [\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 optionsKey: \"label\"\n },\n ], [t]);\n\n return (\n <div className=\"ekyc-employee-container\">\n <div className=\"inbox-main-container\">\n {Digit.Utils.browser.isMobile() ? (\n <MobileInbox\n data={{ items: filteredData, totalCount: totalRecords }}\n isLoading={isLoading || isFetching}\n onSearch={handleSearch}\n searchFields={searchFields}\n searchParams={searchParams}\n parentRoute={parentRoute}\n countData={countData}\n />\n ) : (\n <DesktopInbox\n businessService={businessService}\n data={{ items: filteredData, totalCount: totalRecords }}\n isLoading={isLoading || isFetching}\n searchFields={searchFields}\n onSearch={handleSearch}\n onSort={handleSort}\n onNextPage={fetchNextPage}\n onPrevPage={fetchPrevPage}\n currentPage={Math.floor(pageOffset / pageSize)}\n pageSizeLimit={pageSize}\n onPageSizeChange={handlePageSizeChange}\n parentRoute={parentRoute}\n searchParams={searchParams}\n sortParams={sortParams}\n totalRecords={totalRecords}\n countData={countData}\n filterComponent=\"EKYC_INBOX_FILTER\"\n />\n )}\n </div>\n </div>\n );\n};\n\nexport default Inbox;","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}/aadhaar-verification`, { 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\">\n <button\n onClick={handleStartVerification}\n className=\"primary-action-btn\"\n >\n {t(\"EKYC_START_VERIFICATION\") || \"Start Verification\"}\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 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\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 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 Object.keys(sessionStorage).forEach(key => {\n if (key.startsWith(\"EKYC_\")) 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","/**\n * Compares initial and current objects and returns an object containing only the differences.\n * Highly optimized for partial updates (PATCH-like behavior).\n * \n * @param {Object} initial - The original data from the backend.\n * @param {Object} current - The current form state.\n * @returns {Object} - An object with only the changed fields.\n */\nexport const getPayloadDiff = (initial, current) => {\n const diff = {};\n \n Object.keys(current).forEach(key => {\n const initialVal = initial?.[key];\n const currentVal = current[key];\n\n // Handle nested objects (like addressDetails or aadhaarDetails)\n if (currentVal && typeof currentVal === 'object' && !Array.isArray(currentVal) && !(currentVal instanceof File)) {\n const nestedDiff = getPayloadDiff(initialVal || {}, currentVal);\n if (Object.keys(nestedDiff).length > 0) {\n diff[key] = nestedDiff;\n }\n } \n // Handle primitive types or arrays/files\n else if (JSON.stringify(initialVal) !== JSON.stringify(currentVal)) {\n diff[key] = currentVal;\n }\n });\n\n return diff;\n};\n\n/**\n * Safely retrieves and parses JSON data from sessionStorage.\n * @param {string} key - The storage key.\n * @param {*} fallback - Default value if no data is found.\n * @returns {*} The parsed data or fallback.\n */\nexport const getSavedData = (key, fallback) => {\n const saved = sessionStorage.getItem(key);\n try {\n return saved ? JSON.parse(saved) : fallback;\n } catch (e) {\n console.warn(`Error parsing sessionStorage key \"${key}\":`, e);\n return fallback;\n }\n};\n","// A type of promise-like that resolves synchronously and supports only one observer\nexport const _Pact = /*#__PURE__*/(function() {\n\tfunction _Pact() {}\n\t_Pact.prototype.then = function(onFulfilled, onRejected) {\n\t\tconst result = new _Pact();\n\t\tconst state = this.s;\n\t\tif (state) {\n\t\t\tconst callback = state & 1 ? onFulfilled : onRejected;\n\t\t\tif (callback) {\n\t\t\t\ttry {\n\t\t\t\t\t_settle(result, 1, callback(this.v));\n\t\t\t\t} catch (e) {\n\t\t\t\t\t_settle(result, 2, e);\n\t\t\t\t}\n\t\t\t\treturn result;\n\t\t\t} else {\n\t\t\t\treturn this;\n\t\t\t}\n\t\t}\n\t\tthis.o = function(_this) {\n\t\t\ttry {\n\t\t\t\tconst value = _this.v;\n\t\t\t\tif (_this.s & 1) {\n\t\t\t\t\t_settle(result, 1, onFulfilled ? onFulfilled(value) : value);\n\t\t\t\t} else if (onRejected) {\n\t\t\t\t\t_settle(result, 1, onRejected(value));\n\t\t\t\t} else {\n\t\t\t\t\t_settle(result, 2, value);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t_settle(result, 2, e);\n\t\t\t}\n\t\t};\n\t\treturn result;\n\t}\n\treturn _Pact;\n})();\n\n// Settles a pact synchronously\nexport function _settle(pact, state, value) {\n\tif (!pact.s) {\n\t\tif (value instanceof _Pact) {\n\t\t\tif (value.s) {\n\t\t\t\tif (state & 1) {\n\t\t\t\t\tstate = value.s;\n\t\t\t\t}\n\t\t\t\tvalue = value.v;\n\t\t\t} else {\n\t\t\t\tvalue.o = _settle.bind(null, pact, state);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tif (value && value.then) {\n\t\t\tvalue.then(_settle.bind(null, pact, state), _settle.bind(null, pact, 2));\n\t\t\treturn;\n\t\t}\n\t\tpact.s = state;\n\t\tpact.v = value;\n\t\tconst observer = pact.o;\n\t\tif (observer) {\n\t\t\tobserver(pact);\n\t\t}\n\t}\n}\n\nexport function _isSettledPact(thenable) {\n\treturn thenable instanceof _Pact && thenable.s & 1;\n}\n\n// Converts argument to a function that always returns a Promise\nexport function _async(f) {\n\treturn function() {\n\t\tfor (var args = [], i = 0; i < arguments.length; i++) {\n\t\t\targs[i] = arguments[i];\n\t\t}\n\t\ttry {\n\t\t\treturn Promise.resolve(f.apply(this, args));\n\t\t} catch(e) {\n\t\t\treturn Promise.reject(e);\n\t\t}\n\t}\n}\n\n// Awaits on a value that may or may not be a Promise (equivalent to the await keyword in ES2015, with continuations passed explicitly)\nexport function _await(value, then, direct) {\n\tif (direct) {\n\t\treturn then ? then(value) : value;\n\t}\n\tif (!value || !value.then) {\n\t\tvalue = Promise.resolve(value);\n\t}\n\treturn then ? value.then(then) : value;\n}\n\n// Awaits on a value that may or may not be a Promise, then ignores it\nexport function _awaitIgnored(value, direct) {\n\tif (!direct) {\n\t\treturn value && value.then ? value.then(_empty) : Promise.resolve();\n\t}\n}\n\n// Proceeds after a value has resolved, or proceeds immediately if the value is not thenable\nexport function _continue(value, then) {\n\treturn value && value.then ? value.then(then) : then(value);\n}\n\n// Proceeds after a value has resolved, or proceeds immediately if the value is not thenable\nexport function _continueIgnored(value) {\n\tif (value && value.then) {\n\t\treturn value.then(_empty);\n\t}\n}\n\n// Asynchronously iterate through an object that has a length property, passing the index as the first argument to the callback (even as the length property changes)\nexport function _forTo(array, body, check) {\n\tvar i = -1, pact, reject;\n\tfunction _cycle(result) {\n\t\ttry {\n\t\t\twhile (++i < array.length && (!check || !check())) {\n\t\t\t\tresult = body(i);\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult.then(_cycle, reject || (reject = _settle.bind(null, pact = new _Pact(), 2)));\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (pact) {\n\t\t\t\t_settle(pact, 1, result);\n\t\t\t} else {\n\t\t\t\tpact = result;\n\t\t\t}\n\t\t} catch (e) {\n\t\t\t_settle(pact || (pact = new _Pact()), 2, e);\n\t\t}\n\t}\n\t_cycle();\n\treturn pact;\n}\n\n// Asynchronously iterate through an object's properties (including properties inherited from the prototype)\n// Uses a snapshot of the object's properties\nexport function _forIn(target, body, check) {\n\tvar keys = [];\n\tfor (var key in target) {\n\t\tkeys.push(key);\n\t}\n\treturn _forTo(keys, function(i) { return body(keys[i]); }, check);\n}\n\n// Asynchronously iterate through an object's own properties (excluding properties inherited from the prototype)\n// Uses a snapshot of the object's properties\nexport function _forOwn(target, body, check) {\n\tvar keys = [];\n\tfor (var key in target) {\n\t\tif (Object.prototype.hasOwnProperty.call(target, key)) {\n\t\t\tkeys.push(key);\n\t\t}\n\t}\n\treturn _forTo(keys, function(i) { return body(keys[i]); }, check);\n}\n\nexport const _iteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.iterator || (Symbol.iterator = Symbol(\"Symbol.iterator\"))) : \"@@iterator\";\n\n// Asynchronously iterate through an object's values\n// Uses for...of if the runtime supports it, otherwise iterates until length on a copy\nexport function _forOf(target, body, check) {\n\tif (typeof target[_iteratorSymbol] === \"function\") {\n\t\tvar iterator = target[_iteratorSymbol](), step, pact, reject;\n\t\tfunction _cycle(result) {\n\t\t\ttry {\n\t\t\t\twhile (!(step = iterator.next()).done && (!check || !check())) {\n\t\t\t\t\tresult = body(step.value);\n\t\t\t\t\tif (result && result.then) {\n\t\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tresult.then(_cycle, reject || (reject = _settle.bind(null, pact = new _Pact(), 2)));\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (pact) {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t} else {\n\t\t\t\t\tpact = result;\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t_settle(pact || (pact = new _Pact()), 2, e);\n\t\t\t}\n\t\t}\n\t\t_cycle();\n\t\tif (iterator.return) {\n\t\t\tvar _fixup = function(value) {\n\t\t\t\ttry {\n\t\t\t\t\tif (!step.done) {\n\t\t\t\t\t\titerator.return();\n\t\t\t\t\t}\n\t\t\t\t} catch(e) {\n\t\t\t\t}\n\t\t\t\treturn value;\n\t\t\t}\n\t\t\tif (pact && pact.then) {\n\t\t\t\treturn pact.then(_fixup, function(e) {\n\t\t\t\t\tthrow _fixup(e);\n\t\t\t\t});\n\t\t\t}\n\t\t\t_fixup();\n\t\t}\n\t\treturn pact;\n\t}\n\t// No support for Symbol.iterator\n\tif (!(\"length\" in target)) {\n\t\tthrow new TypeError(\"Object is not iterable\");\n\t}\n\t// Handle live collections properly\n\tvar values = [];\n\tfor (var i = 0; i < target.length; i++) {\n\t\tvalues.push(target[i]);\n\t}\n\treturn _forTo(values, function(i) { return body(values[i]); }, check);\n}\n\nexport const _asyncIteratorSymbol = /*#__PURE__*/ typeof Symbol !== \"undefined\" ? (Symbol.asyncIterator || (Symbol.asyncIterator = Symbol(\"Symbol.asyncIterator\"))) : \"@@asyncIterator\";\n\n// Asynchronously iterate on a value using it's async iterator if present, or its synchronous iterator if missing\nexport function _forAwaitOf(target, body, check) {\n\tif (typeof target[_asyncIteratorSymbol] === \"function\") {\n\t\tvar pact = new _Pact();\n\t\tvar iterator = target[_asyncIteratorSymbol]();\n\t\titerator.next().then(_resumeAfterNext).then(void 0, _reject);\n\t\treturn pact;\n\t\tfunction _resumeAfterBody(result) {\n\t\t\tif (check && check()) {\n\t\t\t\treturn _settle(pact, 1, iterator.return ? iterator.return().then(function() { return result; }) : result);\n\t\t\t}\n\t\t\titerator.next().then(_resumeAfterNext).then(void 0, _reject);\n\t\t}\n\t\tfunction _resumeAfterNext(step) {\n\t\t\tif (step.done) {\n\t\t\t\t_settle(pact, 1);\n\t\t\t} else {\n\t\t\t\tPromise.resolve(body(step.value)).then(_resumeAfterBody).then(void 0, _reject);\n\t\t\t}\n\t\t}\n\t\tfunction _reject(error) {\n\t\t\t_settle(pact, 2, iterator.return ? iterator.return().then(function() { return error; }) : error);\n\t\t}\n\t}\n\treturn Promise.resolve(_forOf(target, function(value) { return Promise.resolve(value).then(body); }, check));\n}\n\n// Asynchronously implement a generic for loop\nexport function _for(test, update, body) {\n\tvar stage;\n\tfor (;;) {\n\t\tvar shouldContinue = test();\n\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\tshouldContinue = shouldContinue.v;\n\t\t}\n\t\tif (!shouldContinue) {\n\t\t\treturn result;\n\t\t}\n\t\tif (shouldContinue.then) {\n\t\t\tstage = 0;\n\t\t\tbreak;\n\t\t}\n\t\tvar result = body();\n\t\tif (result && result.then) {\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.s;\n\t\t\t} else {\n\t\t\t\tstage = 1;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif (update) {\n\t\t\tvar updateValue = update();\n\t\t\tif (updateValue && updateValue.then && !_isSettledPact(updateValue)) {\n\t\t\t\tstage = 2;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\tvar pact = new _Pact();\n\tvar reject = _settle.bind(null, pact, 2);\n\t(stage === 0 ? shouldContinue.then(_resumeAfterTest) : stage === 1 ? result.then(_resumeAfterBody) : updateValue.then(_resumeAfterUpdate)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterBody(value) {\n\t\tresult = value;\n\t\tdo {\n\t\t\tif (update) {\n\t\t\t\tupdateValue = update();\n\t\t\t\tif (updateValue && updateValue.then && !_isSettledPact(updateValue)) {\n\t\t\t\t\tupdateValue.then(_resumeAfterUpdate).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\tshouldContinue = test();\n\t\t\tif (!shouldContinue || (_isSettledPact(shouldContinue) && !shouldContinue.v)) {\n\t\t\t\t_settle(pact, 1, result);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.v;\n\t\t\t}\n\t\t} while (!result || !result.then);\n\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t}\n\tfunction _resumeAfterTest(shouldContinue) {\n\t\tif (shouldContinue) {\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t} else {\n\t\t\t\t_resumeAfterBody(result);\n\t\t\t}\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n\tfunction _resumeAfterUpdate() {\n\t\tif (shouldContinue = test()) {\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t} else {\n\t\t\t\t_resumeAfterTest(shouldContinue);\n\t\t\t}\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n}\n\n// Asynchronously implement a do ... while loop\nexport function _do(body, test) {\n\tvar awaitBody;\n\tdo {\n\t\tvar result = body();\n\t\tif (result && result.then) {\n\t\t\tif (_isSettledPact(result)) {\n\t\t\t\tresult = result.v;\n\t\t\t} else {\n\t\t\t\tawaitBody = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tvar shouldContinue = test();\n\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\tshouldContinue = shouldContinue.v;\n\t\t}\n\t\tif (!shouldContinue) {\n\t\t\treturn result;\n\t\t}\n\t} while (!shouldContinue.then);\n\tconst pact = new _Pact();\n\tconst reject = _settle.bind(null, pact, 2);\n\t(awaitBody ? result.then(_resumeAfterBody) : shouldContinue.then(_resumeAfterTest)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterBody(value) {\n\t\tresult = value;\n\t\tfor (;;) {\n\t\t\tshouldContinue = test();\n\t\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\t\tshouldContinue = shouldContinue.v;\n\t\t\t}\n\t\t\tif (!shouldContinue) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (shouldContinue.then) {\n\t\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\tresult = result.v;\n\t\t\t\t} else {\n\t\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t_settle(pact, 1, result);\n\t}\n\tfunction _resumeAfterTest(shouldContinue) {\n\t\tif (shouldContinue) {\n\t\t\tdo {\n\t\t\t\tresult = body();\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tif (_isSettledPact(result)) {\n\t\t\t\t\t\tresult = result.v;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tshouldContinue = test();\n\t\t\t\tif (_isSettledPact(shouldContinue)) {\n\t\t\t\t\tshouldContinue = shouldContinue.v;\n\t\t\t\t}\n\t\t\t\tif (!shouldContinue) {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} while (!shouldContinue.then);\n\t\t\tshouldContinue.then(_resumeAfterTest).then(void 0, reject);\n\t\t} else {\n\t\t\t_settle(pact, 1, result);\n\t\t}\n\t}\n}\n\n// Asynchronously implement a switch statement\nexport function _switch(discriminant, cases) {\n\tvar dispatchIndex = -1;\n\tvar awaitBody;\n\touter: {\n\t\tfor (var i = 0; i < cases.length; i++) {\n\t\t\tvar test = cases[i][0];\n\t\t\tif (test) {\n\t\t\t\tvar testValue = test();\n\t\t\t\tif (testValue && testValue.then) {\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\t\t\t\tif (testValue === discriminant) {\n\t\t\t\t\tdispatchIndex = i;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Found the default case, set it as the pending dispatch case\n\t\t\t\tdispatchIndex = i;\n\t\t\t}\n\t\t}\n\t\tif (dispatchIndex !== -1) {\n\t\t\tdo {\n\t\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\t\twhile (!body) {\n\t\t\t\t\tdispatchIndex++;\n\t\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t\t}\n\t\t\t\tvar result = body();\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tawaitBody = true;\n\t\t\t\t\tbreak outer;\n\t\t\t\t}\n\t\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\t\tdispatchIndex++;\n\t\t\t} while (fallthroughCheck && !fallthroughCheck());\n\t\t\treturn result;\n\t\t}\n\t}\n\tconst pact = new _Pact();\n\tconst reject = _settle.bind(null, pact, 2);\n\t(awaitBody ? result.then(_resumeAfterBody) : testValue.then(_resumeAfterTest)).then(void 0, reject);\n\treturn pact;\n\tfunction _resumeAfterTest(value) {\n\t\tfor (;;) {\n\t\t\tif (value === discriminant) {\n\t\t\t\tdispatchIndex = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (++i === cases.length) {\n\t\t\t\tif (dispatchIndex !== -1) {\n\t\t\t\t\tbreak;\n\t\t\t\t} else {\n\t\t\t\t\t_settle(pact, 1, result);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\ttest = cases[i][0];\n\t\t\tif (test) {\n\t\t\t\tvalue = test();\n\t\t\t\tif (value && value.then) {\n\t\t\t\t\tvalue.then(_resumeAfterTest).then(void 0, reject);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tdispatchIndex = i;\n\t\t\t}\n\t\t}\n\t\tdo {\n\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\twhile (!body) {\n\t\t\t\tdispatchIndex++;\n\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t}\n\t\t\tvar result = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\tdispatchIndex++;\n\t\t} while (fallthroughCheck && !fallthroughCheck());\n\t\t_settle(pact, 1, result);\n\t}\n\tfunction _resumeAfterBody(result) {\n\t\tfor (;;) {\n\t\t\tvar fallthroughCheck = cases[dispatchIndex][2];\n\t\t\tif (!fallthroughCheck || fallthroughCheck()) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdispatchIndex++;\n\t\t\tvar body = cases[dispatchIndex][1];\n\t\t\twhile (!body) {\n\t\t\t\tdispatchIndex++;\n\t\t\t\tbody = cases[dispatchIndex][1];\n\t\t\t}\n\t\t\tresult = body();\n\t\t\tif (result && result.then) {\n\t\t\t\tresult.then(_resumeAfterBody).then(void 0, reject);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\t_settle(pact, 1, result);\n\t}\n}\n\n// Asynchronously call a function and pass the result to explicitly passed continuations\nexport function _call(body, then, direct) {\n\tif (direct) {\n\t\treturn then ? then(body()) : body();\n\t}\n\ttry {\n\t\tvar result = Promise.resolve(body());\n\t\treturn then ? result.then(then) : result;\n\t} catch (e) {\n\t\treturn Promise.reject(e);\n\t}\n}\n\n// Asynchronously call a function and swallow the result\nexport function _callIgnored(body, direct) {\n\treturn _call(body, _empty, direct);\n}\n\n// Asynchronously call a function and pass the result to explicitly passed continuations\nexport function _invoke(body, then) {\n\tvar result = body();\n\tif (result && result.then) {\n\t\treturn result.then(then);\n\t}\n\treturn then(result);\n}\n\n// Asynchronously call a function and swallow the result\nexport function _invokeIgnored(body) {\n\tvar result = body();\n\tif (result && result.then) {\n\t\treturn result.then(_empty);\n\t}\n}\n\n// Asynchronously call a function and send errors to recovery continuation\nexport function _catch(body, recover) {\n\ttry {\n\t\tvar result = body();\n\t} catch(e) {\n\t\treturn recover(e);\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(void 0, recover);\n\t}\n\treturn result;\n}\n\n// Asynchronously await a promise and pass the result to a finally continuation\nexport function _finallyRethrows(body, finalizer) {\n\ttry {\n\t\tvar result = body();\n\t} catch (e) {\n\t\treturn finalizer(true, e);\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(finalizer.bind(null, false), finalizer.bind(null, true));\n\t}\n\treturn finalizer(false, result);\n}\n\n// Asynchronously await a promise and invoke a finally continuation that always overrides the result\nexport function _finally(body, finalizer) {\n\ttry {\n\t\tvar result = body();\n\t} catch (e) {\n\t\treturn finalizer();\n\t}\n\tif (result && result.then) {\n\t\treturn result.then(finalizer, finalizer);\n\t}\n\treturn finalizer();\n}\n\n// Rethrow or return a value from a finally continuation\nexport function _rethrow(thrown, value) {\n\tif (thrown)\n\t\tthrow value;\n\treturn value;\n}\n\n// Empty function to implement break and other control flow that ignores asynchronous results\nexport function _empty() {\n}\n\n// Sentinel value for early returns in generators \nexport const _earlyReturn = /*#__PURE__*/ {};\n\n// Asynchronously call a function and send errors to recovery continuation, skipping early returns\nexport function _catchInGenerator(body, recover) {\n\treturn _catch(body, function(e) {\n\t\tif (e === _earlyReturn) {\n\t\t\tthrow e;\n\t\t}\n\t\treturn recover(e);\n\t});\n}\n\n// Asynchronous generator class; accepts the entrypoint of the generator, to which it passes itself when the generator should start\nexport const _AsyncGenerator = /*#__PURE__*/(function() {\n\tfunction _AsyncGenerator(entry) {\n\t\tthis._entry = entry;\n\t\tthis._pact = null;\n\t\tthis._resolve = null;\n\t\tthis._return = null;\n\t\tthis._promise = null;\n\t}\n\n\tfunction _wrapReturnedValue(value) {\n\t\treturn { value: value, done: true };\n\t}\n\tfunction _wrapYieldedValue(value) {\n\t\treturn { value: value, done: false };\n\t}\n\n\t_AsyncGenerator.prototype._yield = function(value) {\n\t\t// Yield the value to the pending next call\n\t\tthis._resolve(value && value.then ? value.then(_wrapYieldedValue) : _wrapYieldedValue(value));\n\t\t// Return a pact for an upcoming next/return/throw call\n\t\treturn this._pact = new _Pact();\n\t};\n\t_AsyncGenerator.prototype.next = function(value) {\n\t\t// Advance the generator, starting it if it has yet to be started\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tconst _entry = _this._entry;\n\t\t\t\tif (_entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the next call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Start the generator\n\t\t\t\t_this._entry = null;\n\t\t\t\t_this._resolve = resolve;\n\t\t\t\tfunction returnValue(value) {\n\t\t\t\t\t_this._resolve(value && value.then ? value.then(_wrapReturnedValue) : _wrapReturnedValue(value));\n\t\t\t\t\t_this._pact = null;\n\t\t\t\t\t_this._resolve = null;\n\t\t\t\t}\n\t\t\t\tvar result = _entry(_this);\n\t\t\t\tif (result && result.then) {\n\t\t\t\t\tresult.then(returnValue, function(error) {\n\t\t\t\t\t\tif (error === _earlyReturn) {\n\t\t\t\t\t\t\treturnValue(_this._return);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst pact = new _Pact();\n\t\t\t\t\t\t\t_this._resolve(pact);\n\t\t\t\t\t\t\t_this._pact = null;\n\t\t\t\t\t\t\t_this._resolve = null;\n\t\t\t\t\t\t\t_resolve(pact, 2, error);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\treturnValue(result);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Generator is started and a yield expression is pending, settle it\n\t\t\t\t_this._pact = null;\n\t\t\t\t_this._resolve = resolve;\n\t\t\t\t_settle(_pact, 1, value);\n\t\t\t}\n\t\t});\n\t};\n\t_AsyncGenerator.prototype.return = function(value) {\n\t\t// Early return from the generator if started, otherwise abandons the generator\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tif (_this._entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the return call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Generator is not started, abandon it and return the specified value\n\t\t\t\t_this._entry = null;\n\t\t\t\treturn resolve(value && value.then ? value.then(_wrapReturnedValue) : _wrapReturnedValue(value));\n\t\t\t}\n\t\t\t// Settle the yield expression with a rejected \"early return\" value\n\t\t\t_this._return = value;\n\t\t\t_this._resolve = resolve;\n\t\t\t_this._pact = null;\n\t\t\t_settle(_pact, 2, _earlyReturn);\n\t\t});\n\t};\n\t_AsyncGenerator.prototype.throw = function(error) {\n\t\t// Inject an exception into the pending yield expression\n\t\tconst _this = this;\n\t\treturn _this._promise = new Promise(function (resolve, reject) {\n\t\t\tconst _pact = _this._pact;\n\t\t\tif (_pact === null) {\n\t\t\t\tif (_this._entry === null) {\n\t\t\t\t\t// Generator is started, but not awaiting a yield expression\n\t\t\t\t\t// Abandon the throw call!\n\t\t\t\t\treturn resolve(_this._promise);\n\t\t\t\t}\n\t\t\t\t// Generator is not started, abandon it and return a rejected Promise containing the error\n\t\t\t\t_this._entry = null;\n\t\t\t\treturn reject(error);\n\t\t\t}\n\t\t\t// Settle the yield expression with the value as a rejection\n\t\t\t_this._resolve = resolve;\n\t\t\t_this._pact = null;\n\t\t\t_settle(_pact, 2, error);\n\t\t});\n\t};\n\n\t_AsyncGenerator.prototype[_asyncIteratorSymbol] = function() {\n\t\treturn this;\n\t};\n\t\n\treturn _AsyncGenerator;\n})();\n","import React, { useState, useRef, Fragment, useEffect } from \"react\";\nimport {\n Card,\n LabelFieldPair,\n CardLabel,\n TextInput,\n SubmitBar,\n CardHeader,\n RadioButtons,\n ActionBar,\n InfoBannerIcon,\n PropertyHouse,\n LocationIcon,\n HomeIcon,\n ConnectingCheckPoints,\n CheckPoint,\n Dropdown,\n Loader,\n UploadFile,\n Toast,\n} from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useLocation } from \"react-router-dom\";\nimport { getPayloadDiff, getSavedData } from \"../../utils\";\n\n// ─── Icons ────────────────────────────────────────────────────────────────────\n\nconst FlagIcon = ({ size = 20 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\">\n <path d=\"M14.4 6L13.6 4H5V21H7V14H12.6L13.4 16H20V6H14.4Z\" fill=\"#0F6E56\" />\n </svg>\n);\n\nconst IdCardIcon = ({ size = 20 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\">\n <path\n d=\"M2 7V17C2 18.1 2.9 19 4 19H20C21.1 19 22 18.1 22 17V7C22 5.9 21.1 5 20 5H4C2.9 5 2 5.9 2 7ZM12 11H14V13H12V11ZM12 7H14V9H12V7ZM16 11H20V13H16V11ZM16 7H20V9H16V7ZM4 7H10V15H4V7ZM20 17H4V16H20V17Z\"\n fill=\"#185FA5\"\n />\n </svg>\n);\n\nconst CameraIcon = ({ size = 28 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\">\n <path\n d=\"M9 2L7.17 4H4C2.9 4 2 4.9 2 6V18C2 19.1 2.9 20 4 20H20C21.1 20 22 19.1 22 18V6C22 4.9 21.1 4 20 4H16.83L15 2H9ZM12 17C9.24 17 7 14.76 7 12C7 9.24 9.24 7 12 7C14.76 7 17 9.24 17 12C17 14.76 14.76 17 12 17ZM12 9C10.34 9 9 10.34 9 12C9 13.66 10.34 15 12 15C13.66 15 15 13.66 15 12C15 10.34 13.66 9 12 9Z\"\n fill=\"#185FA5\"\n />\n </svg>\n);\n\nconst TargetIcon = ({ size = 20 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\">\n <path\n d=\"M12 8C9.79 8 8 9.79 8 12C8 14.21 9.79 16 12 16C14.21 16 16 14.21 16 12C16 9.79 14.21 8 12 8ZM20.94 11C20.48 6.83 17.17 3.52 13 3.06V1H11V3.06C6.83 3.52 3.52 6.83 3.06 11H1V13H3.06C3.52 17.17 6.83 20.48 11 20.94V23H13V20.94C17.17 20.48 20.48 17.17 20.94 13H23V11H20.94ZM12 19C8.13 19 5 15.87 5 12C5 8.13 8.13 5 12 5C15.87 5 19 8.13 19 12C19 15.87 15.87 19 12 19Z\"\n fill=\"#185FA5\"\n />\n </svg>\n);\n\nconst PincodeIcon = ({ size = 18 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\">\n <path\n d=\"M13 13V11H15V13H13ZM13 9V7H15V9H13ZM17 13V11H19V13H17ZM17 9V7H19V9H17ZM11 13V11H9V13H11ZM11 9V7H9V9H11ZM7 13V11H5V13H7ZM7 9V7H5V9H7ZM21 3H3C1.9 3 1 3.9 1 5V19C1 20.1 1.9 21 3 21H21C22.1 21 23 20.1 23 19V5C23 3.9 22.1 3 21 3ZM21 19H3V5H21V19Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nconst TrashIcon = ({ size = 16 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#D92D20\" strokeWidth=\"2\" strokeLinecap=\"round\">\n <polyline points=\"3 6 5 6 21 6\" />\n <path d=\"M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6\" />\n <path d=\"M10 11v6M14 11v6\" />\n <path d=\"M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2\" />\n </svg>\n);\n\nconst CheckIcon = ({ size = 11, color = \"#fff\" }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke={color} strokeWidth=\"3\" strokeLinecap=\"round\">\n <polyline points=\"20 6 9 17 4 12\" />\n </svg>\n);\n\n// ─── Reusable: Icon-prefixed input ────────────────────────────────────────────\n\nconst IconInput = ({ icon, topAligned = false, inputStyle = {}, ...props }) => (\n <div style={{ position: \"relative\", width: \"100%\" }}>\n <div style={{\n position: \"absolute\",\n left: \"10px\",\n ...(topAligned ? { top: \"14px\" } : { top: \"50%\", transform: \"translateY(-50%)\" }),\n zIndex: 1,\n opacity: 0.45,\n display: \"flex\",\n pointerEvents: \"none\",\n }}>\n {icon}\n </div>\n <TextInput\n textInputStyle={{ paddingLeft: \"36px\", paddingRight: \"12px\", ...inputStyle }}\n {...props}\n />\n </div>\n);\n\n// ─── Reusable: Section heading with inline rule ───────────────────────────────\n\nconst SectionHead = ({ icon, label }) => (\n <div style={{\n display: \"flex\", alignItems: \"center\", gap: \"8px\",\n marginBottom: \"16px\", marginTop: \"4px\",\n }}>\n <div style={{ opacity: 0.5, display: \"flex\" }}>{icon}</div>\n <span style={{ fontSize: \"15px\", fontWeight: \"600\", color: \"#0B0C0C\", whiteSpace: \"nowrap\" }}>\n {label}\n </span>\n <div style={{ flex: 1, height: \"1px\", background: \"#EAECF0\" }} />\n </div>\n);\n\n// ─── Reusable: Admin info card ────────────────────────────────────────────────\n\nconst AdminCard = ({ bgColor, iconBg, icon, labelColor, label, value }) => (\n <div style={{\n backgroundColor: bgColor,\n padding: \"14px 16px\",\n borderRadius: \"8px\",\n display: \"flex\",\n alignItems: \"center\",\n gap: \"14px\",\n border: \"0.5px solid #EAECF0\",\n }}>\n <div style={{ backgroundColor: iconBg, padding: \"8px\", borderRadius: \"8px\", display: \"flex\", flexShrink: 0 }}>\n {icon}\n </div>\n <div>\n <div style={{ color: labelColor, fontSize: \"10px\", fontWeight: \"600\", textTransform: \"uppercase\", letterSpacing: \"0.05em\", marginBottom: \"3px\" }}>\n {label}\n </div>\n <div style={{ fontSize: \"14px\", fontWeight: \"600\", color: \"#101828\" }}>{value}</div>\n </div>\n </div>\n);\n\n// ─── Main Component ───────────────────────────────────────────────────────────\n\nconst AddressDetails = ({ isSection = false, onComplete, parentState }) => {\n const { t } = useTranslation();\n const history = useHistory();\n const location = useLocation();\n\n const flowState = parentState || location.state || {\n kNumber: \"EKYC-1234567890\",\n selectedOption: { code: \"SELF\", name: \"EKYC_SELF\" },\n connectionDetails: null,\n initialData: {},\n };\n\n const initialData = flowState.initialData || {};\n\n const addrDetails = flowState.connectionDetails?.addressDetails || {};\n\n const [addressType, setAddressType] = useState(() => getSavedData(\"EKYC_ADDRESS_TYPE\", { code: \"AADHAAR\", name: \"EKYC_AADHAAR_ADDRESS\" }));\n const [correctAddress, setCorrectAddress] = useState(() => getSavedData(\"EKYC_ADDRESS_CORRECT\", { code: \"NO\", name: \"CORE_COMMON_NO\" }));\n const [fullAddress, setFullAddress] = useState(() => sessionStorage.getItem(\"EKYC_FULL_ADDRESS\") || initialData.fullAddress || \"\");\n const [flatNo, setFlatNo] = useState(() => sessionStorage.getItem(\"EKYC_FLAT_NO\") || initialData.flatNo || \"\");\n const [building, setBuilding] = useState(() => sessionStorage.getItem(\"EKYC_BUILDING\") || initialData.building || \"\");\n const [landmark, setLandmark] = useState(() => sessionStorage.getItem(\"EKYC_LANDMARK\") || initialData.landmark || \"\");\n const [pincode, setPincode] = useState(() => sessionStorage.getItem(\"EKYC_PINCODE\") || initialData.pincode || \"\");\n const [doorPhoto, setDoorPhoto] = useState(() => sessionStorage.getItem(\"EKYC_DOOR_PHOTO\") || null);\n const [doorPhotoFileStoreId, setDoorPhotoFileStoreId] = useState(() => sessionStorage.getItem(\"EKYC_DOOR_PHOTO_FILESTORE_ID\") || null);\n \n const [filephoto, setFilephoto] = useState(null);\n const [error, setError] = useState(null);\n const [toast, setToast] = useState(null);\n\n // Sync address state to sessionStorage\n useEffect(() => {\n sessionStorage.setItem(\"EKYC_ADDRESS_TYPE\", JSON.stringify(addressType));\n sessionStorage.setItem(\"EKYC_ADDRESS_CORRECT\", JSON.stringify(correctAddress));\n sessionStorage.setItem(\"EKYC_FULL_ADDRESS\", fullAddress);\n sessionStorage.setItem(\"EKYC_FLAT_NO\", flatNo);\n sessionStorage.setItem(\"EKYC_BUILDING\", building);\n sessionStorage.setItem(\"EKYC_LANDMARK\", landmark);\n sessionStorage.setItem(\"EKYC_PINCODE\", pincode);\n if (doorPhoto) sessionStorage.setItem(\"EKYC_DOOR_PHOTO\", doorPhoto);\n if (doorPhotoFileStoreId) sessionStorage.setItem(\"EKYC_DOOR_PHOTO_FILESTORE_ID\", doorPhotoFileStoreId);\n sessionStorage.setItem(\"EKYC_CURRENT_STEP\", \"ADDRESS\");\n }, [addressType, correctAddress, fullAddress, flatNo, building, landmark, pincode, doorPhoto, doorPhotoFileStoreId]);\n\n const uploadFile = async (file, tenantId) => {\n if (!file) return null;\n const res = await Digit.UploadServices.Filestorage(\"EKYC\", file, tenantId);\n return res?.data?.files?.[0]?.fileStoreId || null;\n };\n\n useEffect(() => {\n (async () => {\n setError(null);\n if (filephoto) {\n if (filephoto.size >= 2000000) {\n setError(t(\"EKYC_MAXIMUM_UPLOAD_SIZE_EXCEEDED\"));\n setToast({ type: \"error\", message: t(\"EKYC_MAXIMUM_UPLOAD_SIZE_EXCEEDED\") });\n } else {\n try {\n setToast({ type: \"info\", message: t(\"EKYC_UPLOADING\") });\n const fsId = await uploadFile(filephoto, tenantId);\n if (fsId) {\n setDoorPhotoFileStoreId(fsId);\n const reader = new FileReader();\n reader.onloadend = () => setDoorPhoto(reader.result);\n reader.readAsDataURL(filephoto);\n setToast({ type: \"success\", message: t(\"EKYC_UPLOAD_SUCCESS\") });\n } else {\n setError(t(\"EKYC_FILE_UPLOAD_ERROR\"));\n setToast({ type: \"error\", message: t(\"EKYC_FILE_UPLOAD_ERROR\") });\n }\n } catch (err) {\n setError(t(\"EKYC_FILE_UPLOAD_ERROR\"));\n setToast({ type: \"error\", message: t(\"EKYC_FILE_UPLOAD_ERROR\") });\n }\n }\n }\n })();\n }, [filephoto]);\n const [isLocationFetching, setIsLocationFetching] = useState(false);\n const fileInputRef = useRef(null);\n\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const { data: mdmsData, isLoading: isMdmsLoading } = Digit.Hooks.useCommonMDMS(\n tenantId,\n \"egov-location\",\n [\"TenantBoundary\"]\n );\n\n const mdmsRes = mdmsData?.MdmsRes || mdmsData;\n const adminHierarchy = mdmsRes?.[\"egov-location\"]?.TenantBoundary?.find(h => h.hierarchyType.code === \"ADMIN\")\n || mdmsRes?.[\"egov-location\"]?.TenantBoundary?.[0];\n\n const rootBoundary = adminHierarchy?.boundary;\n\n const getAssemblies = (boundaries) => {\n if (!boundaries) return [];\n let assemblies = [];\n const targetLabel = \"assembly constituency\";\n for (const boundary of boundaries) {\n const label = (boundary.label || boundary.name || \"\").toLowerCase().replace(/_/g, \" \");\n if (label === targetLabel || label === \"assemblyconstituency\") {\n assemblies.push({ code: boundary.code, name: boundary.name, children: boundary.children });\n }\n if (boundary.children?.length) {\n assemblies.push(...getAssemblies(boundary.children));\n }\n }\n return assemblies;\n };\n\n const getBlocks = (children) => {\n if (!children) return [];\n let blocks = [];\n const targetLabel = \"block\";\n for (const child of children) {\n const label = (child.label || child.name || \"\").toLowerCase().replace(/_/g, \" \");\n if (label === targetLabel) {\n blocks.push({ code: child.code, name: child.name });\n }\n if (child.children?.length) {\n blocks.push(...getBlocks(child.children));\n }\n }\n return blocks;\n };\n\n const assemblies = getAssemblies(Array.isArray(rootBoundary) ? rootBoundary : rootBoundary ? [rootBoundary] : []);\n\n const [assembly, setAssembly] = useState(() => getSavedData(\"EKYC_ASSEMBLY_DATA\", initialData.assembly ? { name: initialData.assembly } : null));\n const [ward, setWard] = useState(() => getSavedData(\"EKYC_WARD_DATA\", initialData.ward ? { name: initialData.ward } : null));\n\n // Sync MDMS selection\n useEffect(() => {\n sessionStorage.setItem(\"EKYC_ASSEMBLY_DATA\", JSON.stringify(assembly));\n sessionStorage.setItem(\"EKYC_WARD_DATA\", JSON.stringify(ward));\n }, [assembly, ward]);\n\n useEffect(() => {\n if (mdmsRes && addrDetails.assembly && !assembly?.code) {\n const foundAssembly = assemblies.find((a) => a.name === addrDetails.assembly || a.code === addrDetails.assembly);\n if (foundAssembly) setAssembly(foundAssembly);\n }\n }, [mdmsRes, assemblies]);\n\n const blocks = assembly ? getBlocks(assembly.children) : [];\n\n useEffect(() => {\n if (assembly && ward && !blocks.find((b) => b.name === ward.name)) {\n setWard(null);\n }\n }, [assembly]);\n\n const addressOptions = [\n { code: \"AADHAAR\", name: \"EKYC_AADHAAR_ADDRESS\" },\n { code: \"OLD\", name: \"EKYC_OLD_ADDRESS\" },\n ];\n\n const yesNoOptions = [\n { code: \"YES\", name: \"CORE_COMMON_YES\" },\n { code: \"NO\", name: \"CORE_COMMON_NO\" },\n ];\n\n const handleCompleteVerification = () => {\n const payload = {\n addressType,\n fullAddress,\n flatNo,\n building,\n landmark,\n pincode,\n doorPhoto,\n doorPhotoFileStoreId,\n assembly: assembly?.name,\n ward: ward?.name\n };\n if (onComplete) {\n onComplete(payload);\n } else {\n const { kNumber, selectedOption, connectionDetails, initialData } = flowState;\n history.push(\"/digit-ui/employee/ekyc/property-info\", {\n kNumber, selectedOption, connectionDetails, addressDetails: payload, initialData\n });\n }\n };\n\n function selectphoto(e) {\n setDoorPhotoFileStoreId(null);\n setFilephoto(e.target.files[0]);\n }\n\n const removePhoto = () => {\n setDoorPhoto(null);\n setDoorPhotoFileStoreId(null);\n setFilephoto(null);\n };\n\n const handleUseCurrentLocation = () => {\n if (!(\"geolocation\" in navigator)) {\n alert(t(\"GEOLOCATION_NOT_SUPPORTED\"));\n return;\n }\n setIsLocationFetching(true);\n navigator.geolocation.getCurrentPosition(\n async ({ coords: { latitude, longitude } }) => {\n try {\n const res = await fetch(\n `https://nominatim.openstreetmap.org/reverse?format=json&lat=${latitude}&lon=${longitude}&zoom=18&addressdetails=1`\n );\n if (!res.ok) throw new Error(\"Geocode failed\");\n const data = await res.json();\n if (data?.address) {\n const a = data.address;\n setFullAddress([a.amenity, a.road, a.neighbourhood, a.suburb, a.city, a.state, a.postcode].filter(Boolean).join(\", \"));\n setPincode(a.postcode || \"\");\n setLandmark(a.suburb || a.neighbourhood || \"\");\n setFlatNo(a.amenity || \"\");\n }\n } catch (err) {\n console.error(\"Reverse geocode error:\", err);\n } finally {\n setIsLocationFetching(false);\n }\n },\n (err) => {\n console.error(\"Geolocation error:\", err);\n setIsLocationFetching(false);\n alert(t(\"LOCATION_FETCH_FAILED\"));\n },\n { enableHighAccuracy: true, timeout: 10000, maximumAge: 0 }\n );\n };\n\n const renderContent = () => (\n <div style={{ animation: \"fadeSlideIn 0.3s ease\" }}>\n\n {/* ── Address Type Toggle ── */}\n <SectionHead\n icon={<LocationIcon className=\"icon\" styles={{ fill: \"#0B0C0C\", width: \"16px\", height: \"16px\" }} />}\n label={t(\"EKYC_ADDRESS_DETAILS_HEADER\")}\n />\n\n <div style={{ marginBottom: \"20px\" }}>\n <RadioButtons\n options={addressOptions}\n optionsKey=\"name\"\n selectedOption={addressType}\n onSelect={setAddressType}\n t={t}\n innerStyles={{ display: \"flex\", alignItems: \"center\" }}\n style={{ display: \"flex\", gap: \"40px\" }}\n />\n </div>\n\n {/* ── Aadhaar Address display ── */}\n {addressType.code === \"AADHAAR\" && (\n <div style={{\n backgroundColor: \"#E1F5EE\",\n border: \"0.5px solid #5DCAA5\",\n borderRadius: \"8px\",\n padding: \"14px 16px\",\n display: \"flex\",\n alignItems: \"flex-start\",\n gap: \"12px\",\n marginBottom: \"20px\",\n animation: \"fadeSlideIn 0.3s ease\",\n }}>\n <div style={{ backgroundColor: \"#9FE1CB\", padding: \"6px\", borderRadius: \"6px\", display: \"flex\", flexShrink: 0 }}>\n <LocationIcon className=\"icon\" styles={{ fill: \"#085041\", width: \"16px\", height: \"16px\" }} />\n </div>\n <div style={{ fontSize: \"14px\", lineHeight: \"1.6\", color: \"#04342C\", fontWeight: \"500\" }}>\n {addrDetails.fullAddress}\n </div>\n </div>\n )}\n\n {/* ── Old / Custom Address ── */}\n {addressType.code === \"OLD\" && (\n <div style={{ animation: \"fadeSlideIn 0.3s ease\" }}>\n\n {/* Correction toggle */}\n <div style={{ display: \"flex\", alignItems: \"center\", justifyContent: \"space-between\", marginBottom: \"14px\" }}>\n <CardLabel style={{ fontWeight: \"500\", marginBottom: 0, fontSize: \"13px\", color: \"#505A5F\" }}>\n {t(\"EKYC_ADDRESS_CORRECTION_PROMPT\")}\n </CardLabel>\n <RadioButtons\n options={yesNoOptions}\n optionsKey=\"name\"\n selectedOption={correctAddress}\n onSelect={setCorrectAddress}\n t={t}\n innerStyles={{ display: \"flex\", gap: \"20px\" }}\n style={{ marginBottom: 0 }}\n />\n </div>\n\n {/* Use Current Location */}\n <div\n onClick={!isLocationFetching ? handleUseCurrentLocation : undefined}\n style={{\n border: \"0.5px solid #D0D5DD\",\n borderRadius: \"8px\",\n padding: \"12px 16px\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n marginBottom: \"20px\",\n cursor: isLocationFetching ? \"not-allowed\" : \"pointer\",\n backgroundColor: isLocationFetching ? \"#F9FAFB\" : \"#fff\",\n transition: \"background 0.15s\",\n opacity: isLocationFetching ? 0.7 : 1,\n }}\n onMouseOver={(e) => { if (!isLocationFetching) e.currentTarget.style.background = \"#F9FAFB\"; }}\n onMouseOut={(e) => { if (!isLocationFetching) e.currentTarget.style.background = \"#fff\"; }}\n >\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"12px\" }}>\n <div style={{ backgroundColor: \"#E6F1FB\", padding: \"7px\", borderRadius: \"7px\", display: \"flex\" }}>\n {isLocationFetching ? (\n <div style={{\n width: \"18px\", height: \"18px\", border: \"2px solid #185FA5\",\n borderTopColor: \"transparent\", borderRadius: \"50%\",\n animation: \"spin 1s linear infinite\",\n }} />\n ) : (\n <TargetIcon size={18} />\n )}\n </div>\n <span style={{ fontWeight: \"500\", fontSize: \"14px\", color: \"#344054\" }}>\n {isLocationFetching\n ? t(\"EKYC_FETCHING_LOCATION\")\n : t(\"EKYC_USE_CURRENT_LOCATION\")}\n </span>\n </div>\n {!isLocationFetching && (\n <span style={{ fontSize: \"18px\", color: \"#98A2B3\", lineHeight: 1 }}>›</span>\n )}\n </div>\n\n {/* Full Address (textarea-style) */}\n <div style={{ marginBottom: \"14px\" }}>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_FULL_ADDRESS\")}\n </div>\n <IconInput\n icon={<PropertyHouse styles={{ fill: \"#0068fa\", width: \"15px\", height: \"15px\" }} />}\n topAligned\n value={fullAddress}\n onChange={(e) => setFullAddress(e.target.value)}\n placeholder={t(\"EKYC_ENTER_FULL_ADDRESS\")}\n inputStyle={{ minHeight: \"72px\" }}\n />\n </div>\n\n {/* Flat + Building */}\n <div style={{ display: \"grid\", gridTemplateColumns: \"1fr 1fr\", gap: \"14px\", marginBottom: \"14px\" }}>\n <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_FLAT_HOUSE_NUMBER\")}\n </div>\n <IconInput\n icon={<PropertyHouse styles={{ fill: \"#0068fa\", width: \"15px\", height: \"15px\" }} />}\n value={flatNo}\n onChange={(e) => setFlatNo(e.target.value)}\n placeholder={t(\"EKYC_ENTER_FLAT_NO\")}\n />\n </div>\n <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_BUILDING_TOWER\")}\n </div>\n <IconInput\n icon={<PropertyHouse styles={{ fill: \"#0068fa\", width: \"15px\", height: \"15px\" }} />}\n value={building}\n onChange={(e) => setBuilding(e.target.value)}\n placeholder={t(\"EKYC_ENTER_BUILDING\")}\n />\n </div>\n </div>\n\n {/* Landmark + Pincode */}\n <div style={{ display: \"grid\", gridTemplateColumns: \"1fr 1fr\", gap: \"14px\", marginBottom: \"4px\" }}>\n <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_LANDMARK\")}\n </div>\n <IconInput\n icon={<LocationIcon className=\"icon\" styles={{ fill: \"#0068fa\", width: \"15px\", height: \"15px\" }} />}\n value={landmark}\n onChange={(e) => setLandmark(e.target.value)}\n placeholder={t(\"EKYC_ENTER_LANDMARK\")}\n />\n </div>\n <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_PINCODE\")}\n </div>\n <IconInput\n icon={<PincodeIcon size={15} />}\n value={pincode}\n onChange={(e) => { if (/^\\d*$/.test(e.target.value)) setPincode(e.target.value); }}\n placeholder={t(\"EKYC_ENTER_PINCODE\")}\n maxLength={6}\n />\n </div>\n </div>\n </div>\n )}\n\n <hr style={{ margin: \"24px 0\", border: 0, borderTop: \"1px solid #EAECF0\" }} />\n\n {/* ── Administrative Division ── */}\n <SectionHead\n icon={<PropertyHouse styles={{ fill: \"#0B0C0C\", width: \"16px\", height: \"16px\" }} />}\n label={t(\"EKYC_ADMINISTRATIVE_DIVISION\")}\n />\n\n {isMdmsLoading ? <Loader /> : (\n <div style={{ display: \"grid\", gridTemplateColumns: \"1fr 1fr\", gap: \"14px\", marginBottom: \"24px\" }}>\n <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_ASSEMBLY\")}\n </div>\n <Dropdown\n option={assemblies}\n optionKey=\"name\"\n selected={assembly}\n select={(val) => { setAssembly(val); setWard(null); }}\n t={t}\n />\n </div>\n <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_WARD\") || \"Block\"}\n </div>\n <Dropdown\n option={blocks}\n optionKey=\"name\"\n selected={ward}\n select={setWard}\n disabled={!assembly}\n t={t}\n />\n </div>\n </div>\n )}\n\n <hr style={{ margin: \"24px 0\", border: 0, borderTop: \"1px solid #EAECF0\" }} />\n\n {/* ── Door Photo ── */}\n <SectionHead\n icon={<CameraIcon size={16} />}\n label={t(\"EKYC_CAPTURE_DOOR_IMAGE\")}\n />\n\n <div style={{ fontSize: \"12px\", color: \"#667085\", marginBottom: \"12px\" }}>\n {t(\"EKYC_REQUIRED_FOR_VERIFICATION\")}\n </div>\n\n {/* Warning banner\n <div style={{\n backgroundColor: \"#FFFAEB\",\n border: \"0.5px solid #FEDF89\",\n borderRadius: \"8px\",\n padding: \"12px 14px\",\n display: \"flex\",\n alignItems: \"flex-start\",\n gap: \"10px\",\n marginBottom: \"16px\",\n }}>\n <div style={{ flexShrink: 0, marginTop: \"1px\" }}>\n <InfoBannerIcon fill=\"#B54708\" />\n </div>\n <div>\n <div style={{ fontWeight: \"600\", color: \"#B54708\", fontSize: \"13px\", marginBottom: \"2px\" }}>\n {t(\"EKYC_IMPORTANT\")}\n </div>\n <div style={{ fontSize: \"12px\", color: \"#92400E\" }}>\n {t(\"EKYC_CAPTURE_LIVE_CAMERA\")}\n </div>\n </div>\n </div> */}\n\n {/* Building Photo Upload */}\n <UploadFile\n id={\"ekyc-door-photo\"}\n extraStyleName={\"propertyCreate\"}\n accept=\".jpg,.png,.jpeg\"\n onUpload={selectphoto}\n onDelete={removePhoto}\n message={doorPhotoFileStoreId ? `1 ${t(`EKYC_ACTION_FILEUPLOADED`)}` : t(`EKYC_ACTION_NO_FILEUPLOADED`)}\n error={error}\n />\n {doorPhoto && (\n <div style={{ marginTop: \"10px\", borderRadius: \"8px\", overflow: \"hidden\", border: \"1px solid #EAECF0\" }}>\n <img src={doorPhoto} alt=\"Door Preview\" style={{ width: \"100%\", maxHeight: \"250px\", objectFit: \"cover\" }} />\n </div>\n )}\n\n {/* Submit */}\n {isSection ? (\n <div style={{ marginTop: \"24px\" }}>\n <SubmitBar\n label={t(\"ES_COMMON_SAVE_CONTINUE\")}\n onSubmit={handleCompleteVerification}\n />\n </div>\n ) : (\n <ActionBar>\n <SubmitBar\n label={t(\"EKYC_COMPLETE_VERIFICATION\")}\n onSubmit={handleCompleteVerification}\n />\n </ActionBar>\n )}\n\n {/* Secure notice */}\n <div style={{\n display: \"flex\", alignItems: \"center\", justifyContent: \"center\",\n gap: \"5px\", marginTop: \"16px\",\n fontSize: \"11px\", color: \"#98A2B3\",\n }}>\n <svg width=\"11\" height=\"11\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\">\n <rect x=\"3\" y=\"11\" width=\"18\" height=\"11\" rx=\"2\" />\n <path d=\"M7 11V7a5 5 0 0 1 10 0v4\" />\n </svg>\n {t(\"EKYC_SECURE_DATA_NOTICE\")}\n </div>\n {toast && (\n <Toast\n label={toast.message}\n error={toast.type === \"error\"}\n info={toast.type === \"info\"}\n success={toast.type === \"success\"}\n onClose={() => setToast(null)}\n />\n )}\n </div>\n );\n\n // ── When rendered as inline section inside AadhaarVerification ──\n if (isSection) {\n return (\n <Fragment>\n <hr style={{ margin: \"32px 0\", border: 0, borderTop: \"2px solid #EAECF0\" }} />\n {renderContent()}\n </Fragment>\n );\n }\n\n // ── When rendered as a standalone page ──\n return (\n <div className=\"inbox-container\">\n <style>{`\n @keyframes spin { to { transform: rotate(360deg); } }\n @keyframes fadeSlideIn { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }\n `}</style>\n\n {/* Sidebar */}\n <div className=\"filters-container\">\n <Card style={{ display: \"flex\", alignItems: \"center\", padding: \"12px 16px\", marginBottom: \"12px\", borderRadius: \"8px\" }}>\n <div style={{ color: \"#185FA5\", marginRight: \"10px\", display: \"flex\" }}>\n <HomeIcon style={{ width: \"20px\", height: \"20px\" }} />\n </div>\n <div style={{ fontWeight: \"600\", fontSize: \"15px\", color: \"#0B0C0C\" }}>\n {t(\"EKYC_PROCESS\") || \"eKYC Process\"}\n </div>\n </Card>\n\n <div style={{ background: \"#fff\", padding: \"16px 14px\", borderRadius: \"8px\", border: \"1px solid #EAECF0\" }}>\n {[\n { label: t(\"EKYC_STEP_AADHAAR\") || \"Aadhaar\", done: true, active: false },\n { label: t(\"EKYC_STEP_ADDRESS\") || \"Address\", done: false, active: true },\n { label: t(\"EKYC_STEP_PROPERTY\") || \"Property\", done: false, active: false },\n { label: t(\"EKYC_STEP_METER\") || \"Meter\", done: false, active: false },\n { label: t(\"EKYC_STEP_REVIEW\") || \"Review\", done: false, active: false },\n ].map((step, i) => (\n <div key={i} style={{ display: \"flex\", gap: \"10px\", alignItems: \"flex-start\", position: \"relative\", paddingBottom: i < 4 ? \"18px\" : 0 }}>\n {i < 4 && (\n <div style={{ position: \"absolute\", left: \"10px\", top: \"22px\", width: \"1px\", height: \"calc(100% - 10px)\", background: \"#EAECF0\" }} />\n )}\n <div style={{\n width: \"20px\", height: \"20px\", borderRadius: \"50%\", flexShrink: 0, marginTop: \"1px\",\n border: step.done ? \"none\" : step.active ? \"1.5px solid #185FA5\" : \"1.5px solid #D0D5DD\",\n background: step.done ? \"#0F6E56\" : step.active ? \"#E6F1FB\" : \"#fff\",\n display: \"flex\", alignItems: \"center\", justifyContent: \"center\",\n fontSize: \"10px\", fontWeight: \"500\",\n color: step.done ? \"#fff\" : step.active ? \"#185FA5\" : \"#98A2B3\",\n }}>\n {step.done ? <CheckIcon size={11} color=\"#fff\" /> : i + 1}\n </div>\n <div style={{\n fontSize: \"12px\", paddingTop: \"2px\",\n color: step.done ? \"#0F6E56\" : step.active ? \"#0B0C0C\" : \"#667085\",\n fontWeight: step.done || step.active ? \"600\" : \"400\",\n }}>\n {step.label}\n </div>\n </div>\n ))}\n </div>\n </div>\n\n {/* Main */}\n <div style={{ flex: 1, marginLeft: \"16px\" }}>\n <Card>\n <div style={{ display: \"flex\", justifyContent: \"space-between\", alignItems: \"center\", marginBottom: \"20px\" }}>\n <CardHeader style={{ margin: 0, fontSize: \"18px\" }}>\n {t(\"EKYC_ADDRESS_DETAILS_HEADER\") || \"Address Details\"}\n </CardHeader>\n <div style={{\n background: \"#F9FAFB\", border: \"0.5px solid #EAECF0\",\n borderRadius: \"20px\", padding: \"4px 14px\",\n fontSize: \"12px\", color: \"#667085\",\n }}>\n {t(\"EKYC_K_NUMBER\") || \"K Number\"}:{\" \"}\n <span style={{ color: \"#0B0C0C\", fontWeight: \"600\" }}>{flowState?.kNumber}</span>\n </div>\n </div>\n {renderContent()}\n </Card>\n </div>\n </div>\n );\n};\n\nexport default AddressDetails;","import React, { useState, useRef, Fragment, useEffect } from \"react\";\nimport {\n Card,\n LabelFieldPair,\n CardLabel,\n TextInput,\n SubmitBar,\n CardHeader,\n RadioButtons,\n ActionBar,\n HomeIcon,\n ConnectingCheckPoints,\n CheckPoint,\n} from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation, useHistory } from \"react-router-dom\";\nimport { getSavedData } from \"../../utils\";\nimport AddressDetails from \"./AddressDetails\";\n\n// ─── Icons ───────────────────────────────────────────────────────────────────\n\nconst LockIcon = ({ size = 16 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"1.8\" strokeLinecap=\"round\">\n <rect x=\"3\" y=\"11\" width=\"18\" height=\"11\" rx=\"2\" />\n <path d=\"M7 11V7a5 5 0 0 1 10 0v4\" />\n </svg>\n);\n\nconst UserIcon = ({ size = 16, color = \"currentColor\" }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke={color} strokeWidth=\"1.8\" strokeLinecap=\"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);\n\nconst PhoneIcon = ({ size = 16, color = \"currentColor\" }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke={color} strokeWidth=\"1.8\" strokeLinecap=\"round\">\n <path d=\"M22 16.92v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07 19.5 19.5 0 01-5.37-5.37 19.79 19.79 0 01-3.07-8.63A2 2 0 014.82 0h3a2 2 0 012 1.72c.127.96.361 1.903.7 2.81a2 2 0 01-.45 2.11L8.91 7.91a16 16 0 006.16 6.16l1.27-1.27a2 2 0 012.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0122 16.92z\" />\n </svg>\n);\n\nconst WhatsappIcon = ({ size = 16 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\">\n <path\n d=\"M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413z\"\n fill=\"#25D366\"\n />\n <path\n d=\"M12 2C6.477 2 2 6.477 2 12c0 1.89.525 3.66 1.438 5.168L2 22l4.832-1.438A9.96 9.96 0 0012 22c5.523 0 10-4.477 10-10S17.523 2 12 2z\"\n stroke=\"#25D366\" strokeWidth=\"1.8\" strokeLinecap=\"round\"\n />\n </svg>\n);\n\nconst MailIcon = ({ size = 16, color = \"currentColor\" }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke={color} strokeWidth=\"1.8\" strokeLinecap=\"round\">\n <path d=\"M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z\" />\n <path d=\"M22 6l-10 7L2 6\" />\n </svg>\n);\n\nconst UsersIcon = ({ size = 16, color = \"currentColor\" }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke={color} strokeWidth=\"1.8\" strokeLinecap=\"round\">\n <path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\" />\n <circle cx=\"9\" cy=\"7\" r=\"4\" />\n <path d=\"M23 21v-2a4 4 0 0 0-3-3.87M16 3.13a4 4 0 0 1 0 7.75\" />\n </svg>\n);\n\nconst CheckIcon = ({ size = 15, color = \"#1D9E75\" }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke={color} strokeWidth=\"2.8\" strokeLinecap=\"round\">\n <polyline points=\"20 6 9 17 4 12\" />\n </svg>\n);\n\n// ─── Reusable: Icon-prefixed input wrapper ────────────────────────────────────\n\nconst IconInput = ({ icon, rightIcon, inputStyle = {}, ...props }) => (\n <div style={{ position: \"relative\", width: \"100%\" }}>\n <div style={{\n position: \"absolute\", left: \"10px\", top: \"50%\",\n transform: \"translateY(-50%)\", zIndex: 1, opacity: 0.45,\n display: \"flex\", pointerEvents: \"none\",\n }}>\n {icon}\n </div>\n <TextInput\n textInputStyle={{ paddingLeft: \"36px\", paddingRight: rightIcon ? \"36px\" : \"12px\", ...inputStyle }}\n {...props}\n />\n {rightIcon && (\n <div style={{\n position: \"absolute\", right: \"10px\", top: \"50%\",\n transform: \"translateY(-50%)\", display: \"flex\",\n }}>\n {rightIcon}\n </div>\n )}\n </div>\n);\n\n// ─── Reusable: Section heading with inline rule ───────────────────────────────\n\nconst SectionHead = ({ icon, label }) => (\n <div style={{\n display: \"flex\", alignItems: \"center\", gap: \"8px\",\n marginBottom: \"16px\", marginTop: \"4px\",\n }}>\n <div style={{ opacity: 0.5, display: \"flex\" }}>{icon}</div>\n <span style={{ fontSize: \"15px\", fontWeight: \"600\", color: \"#0B0C0C\", whiteSpace: \"nowrap\" }}>\n {label}\n </span>\n <div style={{ flex: 1, height: \"1px\", background: \"#EAECF0\" }} />\n </div>\n);\n\n// ─── Reusable: Radio toggle row ───────────────────────────────────────────────\n\nconst RadioToggleRow = ({ label, selected, onSelect, t, options }) => (\n <div style={{\n display: \"flex\", alignItems: \"center\",\n justifyContent: \"space-between\", marginBottom: \"8px\",\n }}>\n <CardLabel style={{ fontWeight: \"500\", marginBottom: 0, fontSize: \"13px\", color: \"#505A5F\" }}>\n {label}\n </CardLabel>\n <RadioButtons\n options={options}\n optionsKey=\"name\"\n selectedOption={selected}\n onSelect={onSelect}\n t={t}\n innerStyles={{ display: \"flex\", gap: \"20px\", alignItems: \"center\" }}\n style={{ display: \"flex\", gap: \"20px\", marginBottom: 0 }}\n />\n </div>\n);\n\n// ─── Main Component ───────────────────────────────────────────────────────────\n\nconst AadhaarVerification = () => {\n const { t } = useTranslation();\n const location = useLocation();\n const history = useHistory();\n const addressSectionRef = useRef(null);\n const { kNumber, selectedOption, connectionDetails } = location.state || {\n kNumber: \"EKYC-1234567890\",\n selectedOption: { code: \"SELF\", name: \"EKYC_SELF\" },\n connectionDetails: {\n connectionDetailsInfo: {\n consumerName: \"Rajesh Kumar Singh\",\n address: \"House No. 45, Sector 12, New Delhi - 110001\",\n phoneNumber: \"9876543210\",\n email: \"rajesh.singh@example.com\",\n },\n },\n };\n\n // Normalize the nested data shape (API returns .connectionDetails, fallback uses .connectionDetailsInfo)\n const initialDetails =\n connectionDetails?.connectionDetails ||\n connectionDetails?.connectionDetailsInfo ||\n {};\n\n // ── State ──\n const [initialData] = useState(() => getSavedData(\"EKYC_INITIAL_DATA\", {\n userName: initialDetails.consumerName || \"\",\n mobileNumber: initialDetails.phoneNumber || \"\",\n whatsappNumber: initialDetails.phoneNumber || \"\",\n email: initialDetails.email || \"\",\n noOfPersons: connectionDetails?.addressDetails?.noOfPerson || \"\",\n // Property and Connection Info\n pidNumber: connectionDetails?.propertyDetails?.pidNumber || \"\",\n typeOfConnection: connectionDetails?.connectionDetails?.connectionType || \"\",\n connectionCategory: connectionDetails?.connectionDetails?.connectionCategory || \"\",\n userType: connectionDetails?.propertyDetails?.userType || \"\",\n noOfFloor: connectionDetails?.propertyDetails?.noOfFloor || null,\n // Address Info\n fullAddress: connectionDetails?.addressDetails?.fullAddress || \"\",\n flatNo: connectionDetails?.addressDetails?.flatHouseNumber || \"\",\n building: connectionDetails?.addressDetails?.buildingTower || \"\",\n landmark: connectionDetails?.addressDetails?.landmark || \"\",\n pincode: connectionDetails?.addressDetails?.pinCode || \"\",\n assembly: connectionDetails?.addressDetails?.assembly || \"\",\n ward: connectionDetails?.addressDetails?.ward || \"\",\n }));\n\n // Sync initial data snapshot\n useEffect(() => {\n sessionStorage.setItem(\"EKYC_INITIAL_DATA\", JSON.stringify(initialData));\n }, [initialData]);\n\n const [aadhaarLastFour, setAadhaarLastFour] = useState(() => sessionStorage.getItem(\"EKYC_AADHAAR_LAST_FOUR\") || \"\");\n const [isAadhaarVerified, setIsAadhaarVerified] = useState(() => sessionStorage.getItem(\"EKYC_AADHAAR_VERIFIED\") === \"true\");\n const [isVerifying, setIsVerifying] = useState(false);\n const [showOtpField, setShowOtpField] = useState(false);\n const [otp, setOtp] = useState(\"\");\n const [otpError, setOtpError] = useState(false);\n const [nameCorrect, setNameCorrect] = useState(() => getSavedData(\"EKYC_NAME_CORRECT\", { code: \"NO\", name: \"CORE_COMMON_NO\" }));\n const [userName, setUserName] = useState(() => sessionStorage.getItem(\"EKYC_USER_NAME\") || initialData.userName);\n\n const [mobileChange, setMobileChange] = useState(() => getSavedData(\"EKYC_MOBILE_CHANGE\", { code: \"NO\", name: \"CORE_COMMON_NO\" }));\n const [mobileNumber, setMobileNumber] = useState(() => sessionStorage.getItem(\"EKYC_MOBILE_NUMBER\") || initialData.mobileNumber);\n\n const [whatsappNumber, setWhatsappNumber] = useState(() => sessionStorage.getItem(\"EKYC_WHATSAPP_NUMBER\") || initialData.whatsappNumber);\n const [email, setEmail] = useState(() => sessionStorage.getItem(\"EKYC_EMAIL\") || initialData.email);\n const [noOfPersons, setNoOfPersons] = useState(() => sessionStorage.getItem(\"EKYC_NO_OF_PERSONS\") || initialData.noOfPersons);\n\n // Sync current form state to sessionStorage\n useEffect(() => {\n sessionStorage.setItem(\"EKYC_AADHAAR_LAST_FOUR\", aadhaarLastFour);\n sessionStorage.setItem(\"EKYC_AADHAAR_VERIFIED\", isAadhaarVerified);\n sessionStorage.setItem(\"EKYC_NAME_CORRECT\", JSON.stringify(nameCorrect));\n sessionStorage.setItem(\"EKYC_USER_NAME\", userName);\n sessionStorage.setItem(\"EKYC_MOBILE_CHANGE\", JSON.stringify(mobileChange));\n sessionStorage.setItem(\"EKYC_MOBILE_NUMBER\", mobileNumber);\n sessionStorage.setItem(\"EKYC_WHATSAPP_NUMBER\", whatsappNumber);\n sessionStorage.setItem(\"EKYC_EMAIL\", email);\n sessionStorage.setItem(\"EKYC_NO_OF_PERSONS\", noOfPersons);\n sessionStorage.setItem(\"EKYC_CURRENT_STEP\", \"AADHAAR\");\n }, [aadhaarLastFour, isAadhaarVerified, nameCorrect, userName, mobileChange, mobileNumber, whatsappNumber, email, noOfPersons]);\n const [showAddressSection, setShowAddressSection] = useState(false);\n const [addressData, setAddressData] = useState(null);\n\n const yesNoOptions = [\n { code: \"YES\", name: \"CORE_COMMON_YES\" },\n { code: \"NO\", name: \"CORE_COMMON_NO\" },\n ];\n\n // ── Handlers ──\n const handleVerifyAadhaar = () => {\n if (aadhaarLastFour.length !== 12 || isVerifying) return;\n setIsVerifying(true);\n setTimeout(() => {\n setIsVerifying(false);\n setShowOtpField(true);\n }, 1200);\n };\n\n const handleVerifyOtp = () => {\n if (otp === \"123456\") {\n setIsAadhaarVerified(true);\n setShowOtpField(false);\n setOtpError(false);\n // Auto-expand address section upon verification\n setShowAddressSection(true);\n setTimeout(() => {\n addressSectionRef.current?.scrollIntoView({ behavior: \"smooth\", block: \"start\" });\n }, 100);\n } else {\n setOtpError(true);\n }\n };\n\n const handleSaveAndContinue = () => {\n setShowAddressSection(true);\n setTimeout(() => {\n addressSectionRef.current?.scrollIntoView({ behavior: \"smooth\", block: \"start\" });\n }, 100);\n };\n\n const handleCompleteAll = (addressDetails) => {\n setAddressData(addressDetails);\n history.push(\"/digit-ui/employee/ekyc/property-info\", {\n kNumber,\n selectedOption,\n connectionDetails,\n aadhaarDetails: {\n aadhaarLastFour,\n isAadhaarVerified,\n userName,\n mobileNumber,\n whatsappNumber,\n email,\n noOfPersons,\n },\n addressDetails,\n initialData: initialData, // Pass the initial snapshot\n });\n };\n\n // ── Styles ──\n const styles = {\n verifiedInput: {\n borderColor: \"#1D9E75\",\n backgroundColor: \"#E1F5EE\",\n },\n verifiedCard: {\n backgroundColor: \"#E1F5EE\",\n border: \"0.5px solid #5DCAA5\",\n borderRadius: \"8px\",\n padding: \"16px\",\n marginTop: \"14px\",\n marginBottom: \"4px\",\n animation: \"fadeSlideIn 0.35s ease\",\n },\n infoLabel: {\n fontSize: \"11px\",\n fontWeight: \"600\",\n color: \"#1D9E75\",\n textTransform: \"uppercase\",\n letterSpacing: \"0.05em\",\n marginBottom: \"3px\",\n },\n infoValue: {\n fontSize: \"14px\",\n fontWeight: \"500\",\n color: \"#04342C\",\n },\n twoCol: {\n display: \"grid\",\n gridTemplateColumns: \"1fr 1fr\",\n gap: \"14px\",\n marginBottom: \"20px\",\n },\n optionalTag: {\n display: \"inline-block\",\n fontSize: \"10px\",\n background: \"#F1EFE8\",\n color: \"#5F5E5A\",\n border: \"0.5px solid #D3D1C7\",\n borderRadius: \"10px\",\n padding: \"1px 7px\",\n marginLeft: \"6px\",\n fontWeight: \"400\",\n },\n };\n\n return (\n <div className=\"inbox-container\">\n <style>{`\n @keyframes fadeSlideIn {\n from { opacity: 0; transform: translateY(6px); }\n to { opacity: 1; transform: translateY(0); }\n }\n @keyframes pulseGreen {\n 0%, 100% { box-shadow: 0 0 0 0 rgba(29,158,117,0.35); }\n 50% { box-shadow: 0 0 0 6px rgba(29,158,117,0); }\n }\n .ekyc-sidebar-step { display: flex; gap: 10px; align-items: flex-start; position: relative; padding-bottom: 18px; }\n .ekyc-sidebar-step:last-child { padding-bottom: 0; }\n .ekyc-step-line { position: absolute; left: 10px; top: 22px; width: 1px; height: calc(100% - 10px); background: #EAECF0; }\n .ekyc-step-dot { width: 20px; height: 20px; border-radius: 50%; border: 1.5px solid #D0D5DD; display: flex; align-items: center; justify-content: center; font-size: 10px; font-weight: 500; color: #98A2B3; background: #fff; flex-shrink: 0; margin-top: 1px; }\n .ekyc-step-dot.active { border-color: #185FA5; color: #185FA5; background: #E6F1FB; }\n .ekyc-step-dot.done { border-color: #0F6E56; background: #0F6E56; color: #fff; }\n .ekyc-step-label { font-size: 12px; color: #667085; padding-top: 2px; }\n .ekyc-step-label.active { color: #0B0C0C; font-weight: 600; }\n .ekyc-step-label.done { color: #0F6E56; }\n .ekyc-field-label { font-size: 11px; font-weight: 600; color: #667085; text-transform: uppercase; letter-spacing: 0.04em; margin-bottom: 6px; }\n `}</style>\n\n {/* ── Sidebar ── */}\n <div className=\"filters-container\">\n <Card style={{ display: \"flex\", alignItems: \"center\", padding: \"12px 16px\", marginBottom: \"12px\", borderRadius: \"8px\" }}>\n <div style={{ color: \"#185FA5\", marginRight: \"10px\", display: \"flex\" }}>\n <HomeIcon style={{ width: \"20px\", height: \"20px\" }} />\n </div>\n <div style={{ fontWeight: \"600\", fontSize: \"15px\", color: \"#0B0C0C\" }}>\n {t(\"EKYC_PROCESS\") || \"eKYC Process\"}\n </div>\n </Card>\n\n <div style={{ background: \"#fff\", padding: \"16px 14px\", borderRadius: \"8px\", border: \"1px solid #EAECF0\" }}>\n {[\n { label: t(\"EKYC_STEP_AADHAAR\") || \"Aadhaar\", done: showAddressSection, active: !showAddressSection },\n { label: t(\"EKYC_STEP_ADDRESS\") || \"Address\", done: addressData !== null, active: showAddressSection && addressData === null },\n { label: t(\"EKYC_STEP_PROPERTY\") || \"Property\", done: false, active: false },\n { label: t(\"EKYC_STEP_METER\") || \"Meter\", done: false, active: false },\n { label: t(\"EKYC_STEP_REVIEW\") || \"Review\", done: false, active: false },\n ].map((step, i) => (\n <div className=\"ekyc-sidebar-step\" key={i}>\n <div className={`ekyc-step-dot${step.done ? \" done\" : step.active ? \" active\" : \"\"}`}>\n {step.done\n ? <CheckIcon size={11} color=\"#fff\" />\n : i + 1}\n </div>\n {i < 4 && <div className=\"ekyc-step-line\" />}\n <div className={`ekyc-step-label${step.done ? \" done\" : step.active ? \" active\" : \"\"}`}>\n {step.label}\n </div>\n </div>\n ))}\n </div>\n </div>\n\n {/* ── Main content ── */}\n <div style={{ flex: 1, marginLeft: \"16px\" }}>\n <Card>\n\n {/* K-Number badge */}\n <div style={{ display: \"flex\", justifyContent: \"flex-end\", marginBottom: \"20px\" }}>\n <div style={{\n background: \"#F9FAFB\", border: \"0.5px solid #EAECF0\",\n borderRadius: \"20px\", padding: \"4px 14px\",\n fontSize: \"12px\", color: \"#667085\",\n }}>\n {t(\"EKYC_K_NUMBER\") || \"K Number\"}:{\" \"}\n <span style={{ color: \"#0B0C0C\", fontWeight: \"600\" }}>{kNumber}</span>\n </div>\n </div>\n\n {/* ── Section 1: Aadhaar ── */}\n <SectionHead\n icon={<LockIcon size={16} />}\n label={t(\"EKYC_AADHAAR_NUMBER_HEADER\") || \"Aadhaar Number\"}\n />\n\n <div className=\"ekyc-field-label\">\n {t(\"EKYC_LAST_4_DIGIT_AADHAAR\") || \"Enter 12 digits of Aadhaar\"}\n </div>\n <LabelFieldPair>\n <div className=\"field\">\n <IconInput\n icon={<LockIcon size={15} />}\n rightIcon={isAadhaarVerified ? <CheckIcon size={15} /> : null}\n value={aadhaarLastFour}\n onChange={(e) => {\n const val = e.target.value;\n if (val.length <= 12 && /^\\d*$/.test(val)) setAadhaarLastFour(val);\n }}\n placeholder={t(\"EKYC_ENTER_LAST_4_DIGIT\") || \"Enter 12 digits\"}\n maxLength={12}\n disabled={isAadhaarVerified}\n inputStyle={isAadhaarVerified ? styles.verifiedInput : {}}\n />\n </div>\n </LabelFieldPair>\n\n {!isAadhaarVerified && !showOtpField && (\n <SubmitBar\n label={isVerifying\n ? t(\"EKYC_VERIFYING\") || \"Verifying...\"\n : t(\"EKYC_VERIFY_AADHAAR_BTN\") || \"Verify Aadhaar\"}\n onSubmit={handleVerifyAadhaar}\n disabled={aadhaarLastFour.length !== 12 || isVerifying}\n style={{ marginTop: \"12px\" }}\n />\n )}\n\n {!isAadhaarVerified && showOtpField && (\n <Fragment>\n <div className=\"ekyc-field-label\" style={{ marginTop: \"16px\" }}>\n {t(\"EKYC_ENTER_OTP\")}\n </div>\n <LabelFieldPair>\n <div className=\"field\">\n <IconInput\n icon={<LockIcon size={15} />}\n value={otp}\n onChange={(e) => {\n const val = e.target.value;\n if (/^\\d*$/.test(val)) {\n setOtp(val);\n if (otpError) setOtpError(false);\n }\n }}\n placeholder={t(\"EKYC_ENTER_OTP_PLACEHOLDER\") || \"Enter 123456\"}\n maxLength={6}\n />\n </div>\n </LabelFieldPair>\n {otpError && (\n <div style={{ color: \"#D4351C\", fontSize: \"12px\", marginTop: \"4px\" }}>\n {t(\"EKYC_INVALID_OTP\") || \"Invalid OTP. Please enter 123456.\"}\n </div>\n )}\n <SubmitBar\n label={t(\"EKYC_VERIFY_OTP_BTN\") || \"Verify OTP\"}\n onSubmit={handleVerifyOtp}\n disabled={otp.length !== 6}\n style={{ marginTop: \"12px\" }}\n />\n </Fragment>\n )}\n\n {isAadhaarVerified && (\n <div style={styles.verifiedCard}>\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"8px\", marginBottom: \"14px\" }}>\n <div style={{\n width: \"24px\", height: \"24px\", borderRadius: \"50%\",\n background: \"#9FE1CB\", display: \"flex\", alignItems: \"center\",\n justifyContent: \"center\", animation: \"pulseGreen 2s ease infinite\",\n flexShrink: 0,\n }}>\n <CheckIcon size={13} color=\"#085041\" />\n </div>\n <span style={{ fontWeight: \"600\", color: \"#085041\", fontSize: \"14px\" }}>\n {t(\"EKYC_AADHAAR_VERIFIED_SUCCESS\") || \"Aadhaar Verified Successfully\"}\n </span>\n </div>\n <div style={{ display: \"grid\", gridTemplateColumns: \"1fr 1fr\", gap: \"12px\" }}>\n <div>\n <div style={styles.infoLabel}>{t(\"EKYC_NAME\") || \"Name\"}</div>\n <div style={styles.infoValue}>{initialDetails.consumerName}</div>\n </div>\n <div>\n <div style={styles.infoLabel}>{t(\"EKYC_AADHAAR\") || \"Aadhaar\"}</div>\n <div style={styles.infoValue}>{aadhaarLastFour}</div>\n </div>\n <div style={{ gridColumn: \"span 2\" }}>\n <div style={styles.infoLabel}>{t(\"EKYC_ADDRESS\") || \"Address\"}</div>\n <div style={{ ...styles.infoValue, fontSize: \"13px\" }}>{initialDetails.address}</div>\n </div>\n </div>\n </div>\n )}\n\n <hr style={{ margin: \"24px 0\", border: 0, borderTop: \"1px solid #EAECF0\" }} />\n\n {/* ── Section 2: Contact Details ── */}\n <SectionHead\n icon={<UserIcon size={16} />}\n label={t(\"EKYC_CONTACT_DETAILS_HEADER\") || \"Contact Details\"}\n />\n\n {/* Name */}\n <RadioToggleRow\n label={`${t(\"EKYC_USER_NAME\")} (${t(\"EKYC_NAME_CORRECT_HINT\")})`}\n selected={nameCorrect}\n onSelect={setNameCorrect}\n options={yesNoOptions}\n sty\n t={t}\n />\n <LabelFieldPair>\n <div className=\"field\">\n <IconInput\n icon={<UserIcon size={15} color={nameCorrect.code === \"YES\" ? \"#64748b\" : \"#94a3b8\"} />}\n style={{ marginBottom: \"12px\" }}\n value={userName}\n onChange={(e) => setUserName(e.target.value)}\n placeholder={t(\"EKYC_ENTER_NAME_PLACEHOLDER\") || \"Enter full name\"}\n disabled={nameCorrect.code !== \"YES\"}\n />\n </div>\n </LabelFieldPair>\n\n {/* Mobile */}\n <RadioToggleRow\n label={`${t(\"EKYC_USER_MOBILE_NUMBER\")} (${t(\"EKYC_UPDATE_MOBILE_HINT\")})`}\n selected={mobileChange}\n onSelect={setMobileChange}\n options={yesNoOptions}\n t={t}\n />\n <LabelFieldPair>\n <div className=\"field\">\n <IconInput\n icon={<PhoneIcon size={15} color={mobileChange.code === \"YES\" ? \"#64748b\" : \"#94a3b8\"} />}\n style={{ marginBottom: \"12px\" }}\n value={mobileNumber}\n onChange={(e) => setMobileNumber(e.target.value)}\n placeholder=\"+91 XXXXX XXXXX\"\n disabled={mobileChange.code !== \"YES\"}\n />\n </div>\n </LabelFieldPair>\n\n {/* WhatsApp + Email */}\n <div style={styles.twoCol}>\n <div>\n <div className=\"ekyc-field-label\">\n {t(\"EKYC_WHATSAPP_NUMBER\") || \"WhatsApp Number\"}\n <span style={styles.optionalTag}>{t(\"EKYC_OPTIONAL\") || \"Optional\"}</span>\n </div>\n <IconInput\n icon={<WhatsappIcon size={15} />}\n value={whatsappNumber}\n onChange={(e) => setWhatsappNumber(e.target.value)}\n placeholder=\"+91 XXXXX XXXXX\"\n />\n </div>\n <div>\n <div className=\"ekyc-field-label\">\n {t(\"EKYC_EMAIL_ADDRESS\") || \"Email Address\"}\n <span style={styles.optionalTag}>{t(\"EKYC_OPTIONAL\") || \"Optional\"}</span>\n </div>\n <IconInput\n icon={<MailIcon size={15} />}\n value={email}\n onChange={(e) => setEmail(e.target.value)}\n placeholder={t(\"EKYC_EMAIL_ADDRESS_PLACEHOLDER\") || \"example@email.com\"}\n />\n </div>\n </div>\n\n <hr style={{ margin: \"24px 0\", border: 0, borderTop: \"1px solid #EAECF0\" }} />\n\n {/* ── Section 3: Family Details ── */}\n <SectionHead\n icon={<UsersIcon size={16} />}\n label={t(\"EKYC_FAMILY_DETAILS_HEADER\") || \"Family Details\"}\n />\n\n <div className=\"ekyc-field-label\">\n {t(\"EKYC_NO_OF_PERSONS\") || \"Number of Family Members\"}\n </div>\n <LabelFieldPair>\n <div className=\"field\">\n <IconInput\n icon={<UsersIcon size={15} />}\n value={noOfPersons}\n onChange={(e) => {\n if (/^\\d*$/.test(e.target.value)) setNoOfPersons(e.target.value);\n }}\n placeholder={t(\"EKYC_ENTER_NO_OF_PERSONS\") || \"Enter total number of persons\"}\n />\n </div>\n </LabelFieldPair>\n\n {/* Save & Continue (Non-sticky, at form end) */}\n {!showAddressSection && (\n <div style={{ marginTop: \"24px\" }}>\n <SubmitBar\n label={t(\"ES_COMMON_SAVE_CONTINUE\") || \"Save & Continue\"}\n onSubmit={handleSaveAndContinue}\n />\n </div>\n )}\n\n {/* Address section (injected inline) */}\n {showAddressSection && (\n <div ref={addressSectionRef}>\n <AddressDetails\n isSection={true}\n onComplete={handleCompleteAll}\n parentState={{ kNumber, selectedOption, connectionDetails }}\n />\n </div>\n )}\n\n {/* Secure notice */}\n <div style={{\n display: \"flex\", alignItems: \"center\", justifyContent: \"center\",\n gap: \"5px\", marginTop: \"20px\",\n fontSize: \"11px\", color: \"#98A2B3\",\n }}>\n <LockIcon size={11} />\n {t(\"EKYC_SECURE_DATA_NOTICE\") || \"Your data is encrypted and secure\"}\n </div>\n\n </Card>\n </div>\n </div>\n );\n};\n\nexport default AadhaarVerification;","import React, { useState, useRef, Fragment, useEffect } from \"react\";\nimport {\n Card,\n CardLabel,\n TextInput,\n SubmitBar,\n CardHeader,\n ActionBar,\n Dropdown,\n InfoBannerIcon,\n HomeIcon,\n UploadFile,\n Toast,\n} from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useLocation } from \"react-router-dom\";\nimport { getPayloadDiff, getSavedData } from \"../../utils\";\n\n// ─── Icons ────────────────────────────────────────────────────────────────────\n\nconst CheckIcon = ({ size = 11, color = \"#fff\" }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke={color} strokeWidth=\"3\" strokeLinecap=\"round\">\n <polyline points=\"20 6 9 17 4 12\" />\n </svg>\n);\n\nconst BuildingIcon = ({ size = 16 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M12 7V3H2v18h20V7H12zM6 19H4v-2h2v2zm0-4H4v-2h2v2zm0-4H4V9h2v2zm0-4H4V5h2v2zm4 12H8v-2h2v2zm0-4H8v-2h2v2zm0-4H8V9h2v2zm0-4H8V5h2v2zm10 12h-8V9h8v10zm-2-8h-4v2h4v-2zm0 4h-4v2h4v-2z\" />\n </svg>\n);\n\nconst BriefcaseIcon = ({ size = 16 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M20 6H16V4c0-1.11-.89-2-2-2h-4c-1.11 0-2 .89-2 2v2H4c-1.11 0-2 .89-2 2v13c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1.11-.89-2-2-2zm-6-2v2h-4V4h4z\" />\n </svg>\n);\n\nconst DocumentIcon = ({ size = 16 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M14 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V8l-6-6zm-1 7V3.5L18.5 9H13z\" />\n </svg>\n);\n\nconst CameraIcon = ({ size = 24 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M9 2L7.17 4H4C2.9 4 2 4.9 2 6v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2h-3.17L13 2H9zm3 15c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\" />\n </svg>\n);\n\nconst TrashIcon = ({ size = 14 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#D92D20\" strokeWidth=\"2\" strokeLinecap=\"round\">\n <polyline points=\"3 6 5 6 21 6\" />\n <path d=\"M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6\" />\n <path d=\"M10 11v6M14 11v6\" />\n <path d=\"M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2\" />\n </svg>\n);\n\nconst PidIcon = ({ size = 16 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\">\n <rect x=\"3\" y=\"4\" width=\"18\" height=\"16\" rx=\"2\" />\n <path d=\"M7 8h5M7 12h8M7 16h4\" />\n </svg>\n);\n\n// ─── Reusable: Section heading with inline rule ───────────────────────────────\n\nconst SectionHead = ({ icon, label }) => (\n <div style={{\n display: \"flex\", alignItems: \"center\", gap: \"8px\",\n marginBottom: \"16px\", marginTop: \"4px\",\n }}>\n <div style={{ opacity: 0.5, display: \"flex\" }}>{icon}</div>\n <span style={{ fontSize: \"15px\", fontWeight: \"600\", color: \"#0B0C0C\", whiteSpace: \"nowrap\" }}>\n {label}\n </span>\n <div style={{ flex: 1, height: \"1px\", background: \"#EAECF0\" }} />\n </div>\n);\n\n// ─── Reusable: Icon-prefixed input ────────────────────────────────────────────\n\nconst IconInput = ({ icon, ...props }) => (\n <div style={{ position: \"relative\", width: \"100%\" }}>\n <div style={{\n position: \"absolute\", left: \"10px\",\n top: \"50%\", transform: \"translateY(-50%)\",\n zIndex: 1, opacity: 0.45, display: \"flex\", pointerEvents: \"none\",\n }}>\n {icon}\n </div>\n <TextInput textInputStyle={{ paddingLeft: \"36px\", paddingRight: \"12px\" }} {...props} />\n </div>\n);\n\n// ─── Main Component ───────────────────────────────────────────────────────────\n\nconst PropertyInfo = () => {\n const { t } = useTranslation();\n const history = useHistory();\n const location = useLocation();\n\n const flowState = location.state || {\n kNumber: sessionStorage.getItem(\"EKYC_K_NUMBER\") || \"EKYC-1234567890\",\n initialData: getSavedData(\"EKYC_INITIAL_DATA\", {})\n };\n const { kNumber } = flowState;\n const initialData = flowState.initialData || getSavedData(\"EKYC_INITIAL_DATA\", {});\n\n const tenantId = Digit.ULBService.getCurrentTenantId();\n const { data: dataV0 } = Digit.Hooks.ekyc.useGetPropertyType(tenantId);\n const { data: dataConn } = Digit.Hooks.ekyc.useGetConnectionTypeV2(tenantId);\n const { data: dataV1 } = Digit.Hooks.ekyc.useGetUserType(tenantId);\n const { data: dataV2 } = Digit.Hooks.ekyc.useGetFloorCount(tenantId);\n\n const [ownerType, setOwnerType] = useState(() => sessionStorage.getItem(\"EKYC_OWNER_TYPE\") || initialData.ownerType || \"OWNER\");\n const [pidNumber, setPidNumber] = useState(() => sessionStorage.getItem(\"EKYC_PID_NUMBER\") || initialData.pidNumber || \"\");\n const [connectionCategory, setConnectionCategory] = useState(() =>\n getSavedData(\"EKYC_TYPE_OF_CONNECTION_DATA\", initialData.typeOfConnection ? { label: t(initialData.typeOfConnection), value: initialData.typeOfConnection } : null)\n );\n const [connectionType, setConnectionType] = useState(() =>\n getSavedData(\"EKYC_CONNECTION_CATEGORY_DATA\", initialData.connectionCategory ? { label: t(initialData.connectionCategory), value: initialData.connectionCategory } : null)\n );\n const [userType, setUserType] = useState(() =>\n getSavedData(\"EKYC_USER_TYPE_DATA\", initialData.userType ? { label: t(initialData.userType), value: initialData.userType } : null)\n );\n const [noOfFloors, setNoOfFloors] = useState(() =>\n getSavedData(\"EKYC_NO_OF_FLOORS_DATA\", initialData.noOfFloor ? { label: t(initialData.noOfFloor), value: initialData.noOfFloor } : null)\n );\n const [propertyDocument, setPropertyDocument] = useState(() => sessionStorage.getItem(\"EKYC_PROPERTY_DOC\") || null);\n const [propertyDocumentFileStoreId, setPropertyDocumentFileStoreId] = useState(() => sessionStorage.getItem(\"EKYC_PROPERTY_DOC_FILESTORE_ID\") || null);\n const [buildingPhoto, setBuildingPhoto] = useState(() => sessionStorage.getItem(\"EKYC_BUILDING_PHOTO\") || null);\n const [buildingPhotoFileStoreId, setBuildingPhotoFileStoreId] = useState(() => sessionStorage.getItem(\"EKYC_BUILDING_PHOTO_FILESTORE_ID\") || null);\n\n const [filepdf, setFilepdf] = useState(null);\n const [filephoto, setFilephoto] = useState(null);\n const [error, setError] = useState(null);\n const [toast, setToast] = useState(null);\n\n // Sync property state to sessionStorage\n useEffect(() => {\n sessionStorage.setItem(\"EKYC_OWNER_TYPE\", ownerType);\n sessionStorage.setItem(\"EKYC_PID_NUMBER\", pidNumber);\n sessionStorage.setItem(\"EKYC_TYPE_OF_CONNECTION_DATA\", JSON.stringify(connectionCategory));\n sessionStorage.setItem(\"EKYC_CONNECTION_CATEGORY_DATA\", JSON.stringify(connectionType));\n sessionStorage.setItem(\"EKYC_USER_TYPE_DATA\", JSON.stringify(userType));\n sessionStorage.setItem(\"EKYC_NO_OF_FLOORS_DATA\", JSON.stringify(noOfFloors));\n if (propertyDocument) sessionStorage.setItem(\"EKYC_PROPERTY_DOC\", propertyDocument);\n if (propertyDocumentFileStoreId) sessionStorage.setItem(\"EKYC_PROPERTY_DOC_FILESTORE_ID\", propertyDocumentFileStoreId);\n if (buildingPhoto) sessionStorage.setItem(\"EKYC_BUILDING_PHOTO\", buildingPhoto);\n if (buildingPhotoFileStoreId) sessionStorage.setItem(\"EKYC_BUILDING_PHOTO_FILESTORE_ID\", buildingPhotoFileStoreId);\n sessionStorage.setItem(\"EKYC_CURRENT_STEP\", \"PROPERTY\");\n }, [ownerType, pidNumber, connectionCategory, connectionType, userType, noOfFloors, propertyDocument, propertyDocumentFileStoreId, buildingPhoto, buildingPhotoFileStoreId]);\n\n const uploadFile = async (file, tenantId) => {\n if (!file) return null;\n const res = await Digit.UploadServices.Filestorage(\"EKYC\", file, tenantId);\n return res?.data?.files?.[0]?.fileStoreId || null;\n };\n\n const dataUrlToFile = (dataUrl, filename) => {\n const arr = dataUrl.split(\",\");\n const mime = arr[0].match(/:(.*?);/)[1];\n const bstr = atob(arr[1]);\n let n = bstr.length;\n const u8arr = new Uint8Array(n);\n while (n--) u8arr[n] = bstr.charCodeAt(n);\n return new File([u8arr], filename, { type: mime });\n };\n\n // useEffect hooks for automatic upload (WT-style)\n useEffect(() => {\n (async () => {\n setError(null);\n if (filepdf) {\n if (filepdf.size >= 5000000) {\n setError(t(\"EKYC_MAXIMUM_UPLOAD_SIZE_EXCEEDED\"));\n setToast({ type: \"error\", message: t(\"EKYC_MAXIMUM_UPLOAD_SIZE_EXCEEDED\") });\n } else {\n try {\n setToast({ type: \"info\", message: t(\"EKYC_UPLOADING\") });\n const fileStoreId = await uploadFile(filepdf, tenantId);\n if (fileStoreId) {\n setPropertyDocumentFileStoreId(fileStoreId);\n setPropertyDocument(filepdf.name);\n setToast({ type: \"success\", message: t(\"EKYC_UPLOAD_SUCCESS\") });\n } else {\n setError(t(\"EKYC_FILE_UPLOAD_ERROR\"));\n setToast({ type: \"error\", message: t(\"EKYC_FILE_UPLOAD_ERROR\") });\n }\n } catch (err) {\n setError(t(\"EKYC_FILE_UPLOAD_ERROR\"));\n setToast({ type: \"error\", message: t(\"EKYC_FILE_UPLOAD_ERROR\") });\n }\n }\n }\n })();\n }, [filepdf]);\n\n useEffect(() => {\n (async () => {\n setError(null);\n if (filephoto) {\n if (filephoto.size >= 2000000) {\n setError(t(\"EKYC_MAXIMUM_UPLOAD_SIZE_EXCEEDED\"));\n setToast({ type: \"error\", message: t(\"EKYC_MAXIMUM_UPLOAD_SIZE_EXCEEDED\") });\n } else {\n try {\n setToast({ type: \"info\", message: t(\"EKYC_UPLOADING\") });\n const fileStoreId = await uploadFile(filephoto, tenantId);\n if (fileStoreId) {\n setBuildingPhotoFileStoreId(fileStoreId);\n // Also store as dataURL for preview if needed, but for WT style we just need the fileStoreId\n const reader = new FileReader();\n reader.onloadend = () => setBuildingPhoto(reader.result);\n reader.readAsDataURL(filephoto);\n setToast({ type: \"success\", message: t(\"EKYC_UPLOAD_SUCCESS\") });\n } else {\n setError(t(\"EKYC_FILE_UPLOAD_ERROR\"));\n setToast({ type: \"error\", message: t(\"EKYC_FILE_UPLOAD_ERROR\") });\n }\n } catch (err) {\n setError(t(\"EKYC_FILE_UPLOAD_ERROR\"));\n setToast({ type: \"error\", message: t(\"EKYC_FILE_UPLOAD_ERROR\") });\n }\n }\n }\n })();\n }, [filephoto]);\n\n const fileRef = useRef(null);\n const cameraRef = useRef(null);\n\n const handleSaveAndContinue = () => {\n history.push(\"/digit-ui/employee/ekyc/meter-details\", {\n ...flowState,\n propertyDetails: {\n ownerType, pidNumber, connectionType,\n connectionCategory, userType, noOfFloors,\n propertyDocument, propertyDocumentFileStoreId,\n buildingPhoto, buildingPhotoFileStoreId,\n },\n initialData,\n });\n };\n\n function selectpdf(e) {\n setPropertyDocumentFileStoreId(null);\n setFilepdf(e.target.files[0]);\n }\n\n function selectphoto(e) {\n setBuildingPhotoFileStoreId(null);\n setFilephoto(e.target.files[0]);\n }\n\n const connectionCategoryOptions =\n dataV0?.[\"ws-services-calculation\"]?.propertyTypeV2?.map((item) => ({\n label: t(item.code), value: item.code,\n })) || [];\n\n const connectionTypeOptions =\n dataConn?.[\"ws-services-calculation\"]?.connectionTypeV2?.map((item) => ({\n label: t(item.code), value: item.code,\n })) || [];\n\n const userTypeOptions =\n dataV1?.[\"ws-services-calculation\"]?.userTypeV2?.map((item) => ({\n label: t(item.code), value: item.code,\n })) || [];\n\n const floorOptions =\n dataV2?.[\"ws-services-calculation\"]?.floorCount?.map((item) => ({\n label: t(item.code), value: item.code,\n })) || [];\n\n return (\n <>\n <div className=\"inbox-container\">\n <style>{`\n @keyframes fadeSlideIn {\n from { opacity: 0; transform: translateY(8px); }\n to { opacity: 1; transform: translateY(0); }\n }\n `}</style>\n\n {/* ── Sidebar ── */}\n <div className=\"filters-container\">\n <Card style={{ display: \"flex\", alignItems: \"center\", padding: \"12px 16px\", marginBottom: \"12px\", borderRadius: \"8px\" }}>\n <div style={{ color: \"#185FA5\", marginRight: \"10px\", display: \"flex\" }}>\n <HomeIcon style={{ width: \"20px\", height: \"20px\" }} />\n </div>\n <div style={{ fontWeight: \"600\", fontSize: \"15px\", color: \"#0B0C0C\" }}>\n {t(\"EKYC_PROCESS\") || \"eKYC Process\"}\n </div>\n </Card>\n\n <div style={{ background: \"#fff\", padding: \"16px 14px\", borderRadius: \"8px\", border: \"1px solid #EAECF0\" }}>\n {[\n { label: t(\"EKYC_STEP_AADHAAR\") || \"Aadhaar\", done: true, active: false },\n { label: t(\"EKYC_STEP_ADDRESS\") || \"Address\", done: true, active: false },\n { label: t(\"EKYC_STEP_PROPERTY\") || \"Property\", done: false, active: true },\n { label: t(\"EKYC_STEP_METER\") || \"Meter\", done: false, active: false },\n { label: t(\"EKYC_STEP_REVIEW\") || \"Review\", done: false, active: false },\n ].map((step, i) => (\n <div key={i} style={{ display: \"flex\", gap: \"10px\", alignItems: \"flex-start\", position: \"relative\", paddingBottom: i < 4 ? \"18px\" : 0 }}>\n {i < 4 && (\n <div style={{ position: \"absolute\", left: \"10px\", top: \"22px\", width: \"1px\", height: \"calc(100% - 10px)\", background: \"#EAECF0\" }} />\n )}\n <div style={{\n width: \"20px\", height: \"20px\", borderRadius: \"50%\", flexShrink: 0, marginTop: \"1px\",\n border: step.done ? \"none\" : step.active ? \"1.5px solid #185FA5\" : \"1.5px solid #D0D5DD\",\n background: step.done ? \"#0F6E56\" : step.active ? \"#E6F1FB\" : \"#fff\",\n display: \"flex\", alignItems: \"center\", justifyContent: \"center\",\n fontSize: \"10px\", fontWeight: \"500\",\n color: step.done ? \"#fff\" : step.active ? \"#185FA5\" : \"#98A2B3\",\n }}>\n {step.done ? <CheckIcon size={11} color=\"#fff\" /> : i + 1}\n </div>\n <div style={{\n fontSize: \"12px\", paddingTop: \"2px\",\n color: step.done ? \"#0F6E56\" : step.active ? \"#0B0C0C\" : \"#667085\",\n fontWeight: step.done || step.active ? \"600\" : \"400\",\n }}>\n {step.label}\n </div>\n </div>\n ))}\n </div>\n </div>\n\n {/* ── Main Content ── */}\n <div style={{ flex: 1, marginLeft: \"16px\" }}>\n <Card>\n {/* Header */}\n <div style={{ display: \"flex\", justifyContent: \"space-between\", alignItems: \"center\", marginBottom: \"20px\" }}>\n <CardHeader style={{ margin: 0, fontSize: \"18px\" }}>\n {t(\"EKYC_PROPERTY_DETAILS_HEADER\") || \"Property Details\"}\n </CardHeader>\n <div style={{\n background: \"#F9FAFB\", border: \"0.5px solid #EAECF0\",\n borderRadius: \"20px\", padding: \"4px 14px\",\n fontSize: \"12px\", color: \"#667085\",\n }}>\n {t(\"EKYC_K_NUMBER\") || \"K Number\"}:{\" \"}\n <span style={{ color: \"#0B0C0C\", fontWeight: \"600\" }}>{kNumber}</span>\n </div>\n </div>\n\n <div style={{ animation: \"fadeSlideIn 0.3s ease\" }}>\n\n {/* ── Property Details Section ── */}\n <SectionHead\n icon={<BriefcaseIcon size={16} />}\n label={t(\"EKYC_PROPERTY_DETAILS\") || \"Property details\"}\n />\n\n {/* Owner / Tenant Toggle */}\n <div style={{ marginBottom: \"20px\" }}>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"8px\" }}>\n {t(\"EKYC_PROPERTY_OWNER\") || \"Property owner\"}\n </div>\n <div style={{ display: \"flex\", backgroundColor: \"#F2F4F7\", padding: \"4px\", borderRadius: \"10px\", gap: \"4px\" }}>\n {[\"OWNER\", \"TENANT\"].map((type) => (\n <button\n key={type}\n onClick={() => setOwnerType(type)}\n style={{\n flex: 1, padding: \"9px 12px\", borderRadius: \"7px\", border: \"none\", cursor: \"pointer\",\n fontSize: \"13px\", fontWeight: \"600\", transition: \"all 0.15s\",\n background: ownerType === type ? \"#185FA5\" : \"transparent\",\n color: ownerType === type ? \"#fff\" : \"#667085\",\n }}\n >\n {t(`EKYC_${type}`) || (type === \"OWNER\" ? \"Owner\" : \"Tenant\")}\n </button>\n ))}\n </div>\n </div>\n\n {/* PID Number */}\n <div style={{ marginBottom: \"20px\" }}>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_PID_NUMBER\") || \"PID number\"}{\" \"}\n <span style={{ fontStyle: \"italic\", fontWeight: \"400\", textTransform: \"none\", color: \"#98A2B3\" }}>\n — {t(\"EKYC_OPTIONAL\") || \"optional\"}\n </span>\n </div>\n <IconInput\n icon={<PidIcon size={15} />}\n value={pidNumber}\n onChange={(e) => setPidNumber(e.target.value)}\n placeholder={t(\"EKYC_ENTER_PID_NUMBER\") || \"Enter PID number\"}\n />\n </div>\n\n <hr style={{ margin: \"24px 0\", border: 0, borderTop: \"1px solid #EAECF0\" }} />\n\n {/* ── Building Info Section ── */}\n <SectionHead\n icon={<BuildingIcon size={16} />}\n label={t(\"EKYC_BUILDING_INFO\") || \"Building info\"}\n />\n\n {/* Dropdowns grid */}\n <div style={{ display: \"grid\", gridTemplateColumns: \"1fr 1fr\", gap: \"14px\", marginBottom: \"14px\" }}>\n {/* <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_TYPE_OF_CONNECTION\") || \"Type of connection\"}\n </div>\n <Dropdown\n selected={connectionCategory}\n select={setConnectionCategory}\n option={connectionCategoryOptions}\n optionKey=\"label\"\n t={t}\n placeholder={t(\"EKYC_SELECT\") || \"Select\"}\n />\n </div> */}\n {/* <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_CONNECTION_CATEGORY\") || \"Connection category\"}\n </div>\n <Dropdown\n selected={connectionType}\n select={setConnectionType}\n option={connectionTypeOptions}\n optionKey=\"label\"\n t={t}\n placeholder={t(\"EKYC_SELECT\") || \"Select\"}\n />\n </div> */}\n </div>\n\n <div style={{ display: \"grid\", gridTemplateColumns: \"1fr 1fr\", gap: \"14px\", marginBottom: \"24px\" }}>\n <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_USER_TYPE\") || \"User type\"}\n </div>\n <Dropdown\n selected={userType}\n select={setUserType}\n option={userTypeOptions}\n optionKey=\"label\"\n t={t}\n placeholder={t(\"EKYC_SELECT\") || \"Select\"}\n />\n </div>\n <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_NO_OF_FLOORS\") || \"No. of floors\"}\n </div>\n <Dropdown\n selected={noOfFloors}\n select={setNoOfFloors}\n option={floorOptions}\n optionKey=\"label\"\n t={t}\n placeholder={t(\"EKYC_SELECT\") || \"Select\"}\n />\n </div>\n </div>\n\n <hr style={{ margin: \"24px 0\", border: 0, borderTop: \"1px solid #EAECF0\" }} />\n\n {/* ── Documents & Photo Section ── */}\n <SectionHead\n icon={<DocumentIcon size={16} />}\n label={t(\"EKYC_DOCUMENTS_PHOTO\") || \"Documents & photo\"}\n />\n\n <div style={{ display: \"grid\", gridTemplateColumns: \"1fr 1fr\", gap: \"14px\", marginBottom: \"20px\" }}>\n\n {/* PDF Upload */}\n <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"8px\" }}>\n {t(\"EKYC_UPLOAD_PROPERTY_DOC\") || \"Upload property document\"}\n </div>\n <UploadFile\n id={\"ekyc-property-doc\"}\n extraStyleName={\"propertyCreate\"}\n accept=\".pdf\"\n onUpload={selectpdf}\n onDelete={() => {\n setPropertyDocumentFileStoreId(null);\n setPropertyDocument(null);\n setFilepdf(null);\n }}\n message={propertyDocumentFileStoreId ? `1 ${t(`EKYC_ACTION_FILEUPLOADED`)}` : t(`EKYC_ACTION_NO_FILEUPLOADED`)}\n error={error}\n disabled={!pidNumber}\n />\n {!pidNumber && (\n <div style={{ fontSize: \"11px\", color: \"#D92D20\", marginTop: \"4px\" }}>\n {t(\"EKYC_ENTER_PID_FIRST_CTA\") || \"Enter PID to upload\"}\n </div>\n )}\n </div>\n\n {/* Building Photo Upload */}\n <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"8px\" }}>\n {t(\"EKYC_CAPTURE_BUILDING_IMAGE\") || \"Capture building image\"}\n </div>\n <UploadFile\n id={\"ekyc-building-photo\"}\n extraStyleName={\"propertyCreate\"}\n accept=\".jpg,.png,.jpeg\"\n onUpload={selectphoto}\n onDelete={() => {\n setBuildingPhotoFileStoreId(null);\n setBuildingPhoto(null);\n setFilephoto(null);\n }}\n message={buildingPhotoFileStoreId ? `1 ${t(`EKYC_ACTION_FILEUPLOADED`)}` : t(`EKYC_ACTION_NO_FILEUPLOADED`)}\n error={error}\n />\n {buildingPhoto && (\n <div style={{ marginTop: \"10px\", borderRadius: \"8px\", overflow: \"hidden\", border: \"1px solid #EAECF0\" }}>\n <img src={buildingPhoto} alt=\"Building Preview\" style={{ width: \"100%\", maxHeight: \"150px\", objectFit: \"cover\" }} />\n </div>\n )}\n </div>\n </div>\n\n {/* Info Banner */}\n <div style={{\n backgroundColor: \"#E6F1FB\", border: \"0.5px solid #B5D4F4\",\n borderRadius: \"8px\", padding: \"12px 14px\",\n display: \"flex\", alignItems: \"flex-start\", gap: \"10px\", marginBottom: \"4px\",\n }}>\n <div style={{ flexShrink: 0, marginTop: \"1px\" }}>\n <InfoBannerIcon fill=\"#185FA5\" />\n </div>\n <div style={{ fontSize: \"13px\", color: \"#185FA5\", lineHeight: \"1.5\" }}>\n {t(\"EKYC_TENANT_INFO_NOTICE\") || \"This section is enabled only if the user is not the owner. Tenant details will be required if tenant is selected.\"}\n </div>\n </div>\n\n </div>\n\n {/* Submit (Non-sticky, at form end) */}\n <div style={{ marginTop: \"24px\" }}>\n <SubmitBar\n label={t(\"EKYC_SAVE_AND_CONTINUE\") || \"Save & Continue\"}\n onSubmit={handleSaveAndContinue}\n />\n </div>\n\n {/* Secure notice */}\n <div style={{\n display: \"flex\", alignItems: \"center\", justifyContent: \"center\",\n gap: \"5px\", marginTop: \"16px\",\n fontSize: \"11px\", color: \"#98A2B3\",\n }}>\n <svg width=\"11\" height=\"11\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\">\n <rect x=\"3\" y=\"11\" width=\"18\" height=\"11\" rx=\"2\" />\n <path d=\"M7 11V7a5 5 0 0 1 10 0v4\" />\n </svg>\n {t(\"EKYC_SECURE_DATA_NOTICE\") || \"Your data is encrypted and secure\"}\n </div>\n </Card>\n </div>\n </div>\n {toast && (\n <Toast\n label={toast.message}\n error={toast.type === \"error\"}\n info={toast.type === \"info\"}\n success={toast.type === \"success\"}\n onClose={() => setToast(null)}\n />\n )}\n </>\n );\n};\n\nexport default PropertyInfo;","import React, { useState, useRef, Fragment, useEffect } from \"react\";\nimport {\n Card,\n CardLabel,\n TextInput,\n SubmitBar,\n CardHeader,\n ActionBar,\n Dropdown,\n InfoBannerIcon,\n HomeIcon,\n UploadFile,\n Toast,\n} from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useLocation } from \"react-router-dom\";\nimport { getPayloadDiff, getSavedData } from \"../../utils\";\n\n// ─── Icons ────────────────────────────────────────────────────────────────────\n\nconst CheckIcon = ({ size = 11, color = \"#fff\" }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke={color} strokeWidth=\"3\" strokeLinecap=\"round\">\n <polyline points=\"20 6 9 17 4 12\" />\n </svg>\n);\n\nconst MeterIcon = ({ size = 16 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm.5-13H11v6l5.25 3.15.75-1.23-4.5-2.67V7z\" />\n </svg>\n);\n\nconst ConnectionIcon = ({ size = 16 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z\" />\n </svg>\n);\n\nconst CameraIcon = ({ size = 24 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M9 2L7.17 4H4C2.9 4 2 4.9 2 6v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2h-3.17L13 2H9zm3 15c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\" />\n </svg>\n);\n\n// ─── Reusable: Section heading with inline rule ───────────────────────────────\n\nconst SectionHead = ({ icon, label }) => (\n <div style={{\n display: \"flex\", alignItems: \"center\", gap: \"8px\",\n marginBottom: \"16px\", marginTop: \"4px\",\n }}>\n <div style={{ opacity: 0.5, display: \"flex\" }}>{icon}</div>\n <span style={{ fontSize: \"15px\", fontWeight: \"600\", color: \"#0B0C0C\", whiteSpace: \"nowrap\" }}>\n {label}\n </span>\n <div style={{ flex: 1, height: \"1px\", background: \"#EAECF0\" }} />\n </div>\n);\n\n// ─── Reusable: Icon-prefixed input ────────────────────────────────────────────\n\nconst IconInput = ({ icon, ...props }) => (\n <div style={{ position: \"relative\", width: \"100%\" }}>\n <div style={{\n position: \"absolute\", left: \"10px\",\n top: \"50%\", transform: \"translateY(-50%)\",\n zIndex: 1, opacity: 0.45, display: \"flex\", pointerEvents: \"none\",\n }}>\n {icon}\n </div>\n <TextInput textInputStyle={{ paddingLeft: \"36px\", paddingRight: \"12px\" }} {...props} />\n </div>\n);\n\n// ─── Main Component ───────────────────────────────────────────────────────────\n\nconst MeterDetails = () => {\n const { t } = useTranslation();\n const history = useHistory();\n const location = useLocation();\n\n const flowState = location.state || {\n kNumber: sessionStorage.getItem(\"EKYC_K_NUMBER\") || \"EKYC-1234567890\",\n initialData: getSavedData(\"EKYC_INITIAL_DATA\", {})\n };\n const { kNumber } = flowState;\n const initialData = flowState.initialData || getSavedData(\"EKYC_INITIAL_DATA\", {});\n\n const tenantId = Digit.ULBService.getCurrentTenantId();\n \n // MDMS Hooks for Connection Details\n const { data: dataV0 } = Digit.Hooks.ekyc.useGetPropertyType(tenantId);\n const { data: dataConn } = Digit.Hooks.ekyc.useGetConnectionTypeV2(tenantId);\n\n // ── Meter State ──\n const [meterStatus, setMeterStatus] = useState(() => \n getSavedData(\"EKYC_METER_STATUS_DATA\", initialData.meterStatus ? { label: t(`EKYC_METER_${initialData.meterStatus}`), value: initialData.meterStatus } : null)\n );\n const [meterPhoto, setMeterStatusPhoto] = useState(() => sessionStorage.getItem(\"EKYC_METER_PHOTO\") || null);\n const [meterPhotoFileStoreId, setMeterStatusPhotoFileStoreId] = useState(() => sessionStorage.getItem(\"EKYC_METER_PHOTO_FILESTORE_ID\") || null);\n const [workingStatus, setWorkingStatus] = useState(() =>\n getSavedData(\"EKYC_METER_WORKING_STATUS_DATA\", initialData.workingStatus ? { label: t(`EKYC_METER_${initialData.workingStatus}`), value: initialData.workingStatus } : null)\n );\n const [meterLocation, setMeterLocation] = useState(() => sessionStorage.getItem(\"EKYC_METER_LOCATION\") || initialData.meterLocation || \"\");\n const [lastBillRaised, setLastBillRaised] = useState(() =>\n getSavedData(\"EKYC_LAST_BILL_RAISED_DATA\", initialData.lastBillRaised ? { label: t(`EKYC_${initialData.lastBillRaised}`), value: initialData.lastBillRaised } : null)\n );\n const [noBillReason, setNoBillReason] = useState(() => sessionStorage.getItem(\"EKYC_REASON_FOR_NO_BILL\") || initialData.noBillReason || \"\");\n const [sewerConnection, setSewerConnection] = useState(() =>\n getSavedData(\"EKYC_SEWER_CONNECTION_DATA\", initialData.sewerConnection ? { label: t(`EKYC_${initialData.sewerConnection}`), value: initialData.sewerConnection } : null)\n );\n\n // ── Connection State (Moved from PropertyInfo) ──\n const [connectionCategory, setConnectionCategory] = useState(() =>\n getSavedData(\"EKYC_TYPE_OF_CONNECTION_DATA\", initialData.typeOfConnection ? { label: t(initialData.typeOfConnection), value: initialData.typeOfConnection } : null)\n );\n const [connectionType, setConnectionType] = useState(() =>\n getSavedData(\"EKYC_CONNECTION_CATEGORY_DATA\", initialData.connectionCategory ? { label: t(initialData.connectionCategory), value: initialData.connectionCategory } : null)\n );\n\n const [filephoto, setFilephoto] = useState(null);\n const [error, setError] = useState(null);\n const [toast, setToast] = useState(null);\n\n // Sync state to sessionStorage\n useEffect(() => {\n sessionStorage.setItem(\"EKYC_METER_STATUS_DATA\", JSON.stringify(meterStatus));\n sessionStorage.setItem(\"EKYC_METER_WORKING_STATUS_DATA\", JSON.stringify(workingStatus));\n sessionStorage.setItem(\"EKYC_METER_LOCATION\", meterLocation);\n sessionStorage.setItem(\"EKYC_LAST_BILL_RAISED_DATA\", JSON.stringify(lastBillRaised));\n sessionStorage.setItem(\"EKYC_REASON_FOR_NO_BILL\", noBillReason);\n sessionStorage.setItem(\"EKYC_SEWER_CONNECTION_DATA\", JSON.stringify(sewerConnection));\n sessionStorage.setItem(\"EKYC_TYPE_OF_CONNECTION_DATA\", JSON.stringify(connectionCategory));\n sessionStorage.setItem(\"EKYC_CONNECTION_CATEGORY_DATA\", JSON.stringify(connectionType));\n if (meterPhoto) sessionStorage.setItem(\"EKYC_METER_PHOTO\", meterPhoto);\n if (meterPhotoFileStoreId) sessionStorage.setItem(\"EKYC_METER_PHOTO_FILESTORE_ID\", meterPhotoFileStoreId);\n sessionStorage.setItem(\"EKYC_CURRENT_STEP\", \"METER\");\n }, [meterStatus, workingStatus, meterLocation, lastBillRaised, noBillReason, sewerConnection, connectionCategory, connectionType, meterPhoto, meterPhotoFileStoreId]);\n\n const uploadFile = async (file, tenantId) => {\n if (!file) return null;\n const res = await Digit.UploadServices.Filestorage(\"EKYC\", file, tenantId);\n return res?.data?.files?.[0]?.fileStoreId || null;\n };\n\n useEffect(() => {\n (async () => {\n setError(null);\n if (filephoto) {\n if (filephoto.size >= 2000000) {\n setError(t(\"EKYC_MAXIMUM_UPLOAD_SIZE_EXCEEDED\"));\n setToast({ type: \"error\", message: t(\"EKYC_MAXIMUM_UPLOAD_SIZE_EXCEEDED\") });\n } else {\n try {\n setToast({ type: \"info\", message: t(\"EKYC_UPLOADING\") });\n const fileStoreId = await uploadFile(filephoto, tenantId);\n if (fileStoreId) {\n setMeterStatusPhotoFileStoreId(fileStoreId);\n const reader = new FileReader();\n reader.onloadend = () => setMeterStatusPhoto(reader.result);\n reader.readAsDataURL(filephoto);\n setToast({ type: \"success\", message: t(\"EKYC_UPLOAD_SUCCESS\") });\n } else {\n setError(t(\"EKYC_FILE_UPLOAD_ERROR\"));\n setToast({ type: \"error\", message: t(\"EKYC_FILE_UPLOAD_ERROR\") });\n }\n } catch (err) {\n setError(t(\"EKYC_FILE_UPLOAD_ERROR\"));\n setToast({ type: \"error\", message: t(\"EKYC_FILE_UPLOAD_ERROR\") });\n }\n }\n }\n })();\n }, [filephoto]);\n\n const handleSaveAndContinue = () => {\n history.push(\"/digit-ui/employee/ekyc/review\", {\n ...location.state,\n meterDetails: {\n meterStatus, meterPhoto, meterPhotoFileStoreId,\n workingStatus, meterLocation, lastBillRaised,\n noBillReason, sewerConnection,\n connectionType, connectionCategory\n }\n });\n };\n\n function selectphoto(e) {\n setMeterStatusPhotoFileStoreId(null);\n setFilephoto(e.target.files[0]);\n }\n\n const meterStatusOptions = [\n { label: t(\"EKYC_METERED\"), value: \"Metered\" },\n { label: t(\"EKYC_UNMETERED\"), value: \"Unmetered\" },\n ];\n\n const workingStatusOptions = [\n { label: t(\"EKYC_WORKING\"), value: \"Working\" },\n { label: t(\"EKYC_NOT_WORKING\"), value: \"Not Working\" },\n ];\n\n const yesNoOptions = [\n { label: t(\"CORE_COMMON_YES\"), value: \"Yes\" },\n { label: t(\"CORE_COMMON_NO\"), value: \"No\" },\n ];\n\n const connectionCategoryOptions =\n dataV0?.[\"ws-services-calculation\"]?.propertyTypeV2?.map((item) => ({\n label: t(item.code), value: item.code,\n })) || [];\n\n const connectionTypeOptions =\n dataConn?.[\"ws-services-calculation\"]?.connectionTypeV2?.map((item) => ({\n label: t(item.code), value: item.code,\n })) || [];\n\n return (\n <div className=\"inbox-container\">\n <style>{`\n @keyframes fadeSlideIn {\n from { opacity: 0; transform: translateY(8px); }\n to { opacity: 1; transform: translateY(0); }\n }\n `}</style>\n\n {/* ── Sidebar ── */}\n <div className=\"filters-container\">\n <Card style={{ display: \"flex\", alignItems: \"center\", padding: \"12px 16px\", marginBottom: \"12px\", borderRadius: \"8px\" }}>\n <div style={{ color: \"#185FA5\", marginRight: \"10px\", display: \"flex\" }}>\n <HomeIcon style={{ width: \"20px\", height: \"20px\" }} />\n </div>\n <div style={{ fontWeight: \"600\", fontSize: \"15px\", color: \"#0B0C0C\" }}>\n {t(\"EKYC_PROCESS\") || \"eKYC Process\"}\n </div>\n </Card>\n\n <div style={{ background: \"#fff\", padding: \"16px 14px\", borderRadius: \"8px\", border: \"1px solid #EAECF0\" }}>\n {[\n { label: t(\"EKYC_STEP_AADHAAR\") || \"Aadhaar\", done: true, active: false },\n { label: t(\"EKYC_STEP_ADDRESS\") || \"Address\", done: true, active: false },\n { label: t(\"EKYC_STEP_PROPERTY\") || \"Property\", done: true, active: false },\n { label: t(\"EKYC_STEP_METER\") || \"Meter\", done: false, active: true },\n { label: t(\"EKYC_STEP_REVIEW\") || \"Review\", done: false, active: false },\n ].map((step, i) => (\n <div key={i} style={{ display: \"flex\", gap: \"10px\", alignItems: \"flex-start\", position: \"relative\", paddingBottom: i < 4 ? \"18px\" : 0 }}>\n {i < 4 && (\n <div style={{ position: \"absolute\", left: \"10px\", top: \"22px\", width: \"1px\", height: \"calc(100% - 10px)\", background: \"#EAECF0\" }} />\n )}\n <div style={{\n width: \"20px\", height: \"20px\", borderRadius: \"50%\", flexShrink: 0, marginTop: \"1px\",\n border: step.done ? \"none\" : step.active ? \"1.5px solid #185FA5\" : \"1.5px solid #D0D5DD\",\n background: step.done ? \"#0F6E56\" : step.active ? \"#E6F1FB\" : \"#fff\",\n display: \"flex\", alignItems: \"center\", justifyContent: \"center\",\n fontSize: \"10px\", fontWeight: \"500\",\n color: step.done ? \"#fff\" : step.active ? \"#185FA5\" : \"#98A2B3\",\n }}>\n {step.done ? <CheckIcon size={11} color=\"#fff\" /> : i + 1}\n </div>\n <div style={{\n fontSize: \"12px\", paddingTop: \"2px\",\n color: step.done ? \"#0F6E56\" : step.active ? \"#0B0C0C\" : \"#667085\",\n fontWeight: step.done || step.active ? \"600\" : \"400\",\n }}>\n {step.label}\n </div>\n </div>\n ))}\n </div>\n </div>\n\n {/* ── Main Content ── */}\n <div style={{ flex: 1, marginLeft: \"16px\" }}>\n <Card>\n {/* Header */}\n <div style={{ display: \"flex\", justifyContent: \"space-between\", alignItems: \"center\", marginBottom: \"20px\" }}>\n <CardHeader style={{ margin: 0, fontSize: \"18px\" }}>\n {t(\"EKYC_METER_DETAILS_HEADER\") || \"Meter Details\"}\n </CardHeader>\n <div style={{\n background: \"#F9FAFB\", border: \"0.5px solid #EAECF0\",\n borderRadius: \"20px\", padding: \"4px 14px\",\n fontSize: \"12px\", color: \"#667085\",\n }}>\n {t(\"EKYC_K_NUMBER\") || \"K Number\"}:{\" \"}\n <span style={{ color: \"#0B0C0C\", fontWeight: \"600\" }}>{kNumber}</span>\n </div>\n </div>\n\n <div style={{ animation: \"fadeSlideIn 0.3s ease\" }}>\n\n {/* ── Meter Details Section ── */}\n <SectionHead\n icon={<MeterIcon size={16} />}\n label={t(\"EKYC_METER_DETAILS\") || \"Meter details\"}\n />\n\n <div style={{ display: \"grid\", gridTemplateColumns: \"1fr 1fr\", gap: \"14px\", marginBottom: \"20px\" }}>\n <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_METER_STATUS\") || \"Meter status\"}\n </div>\n <Dropdown\n selected={meterStatus}\n select={setMeterStatus}\n option={meterStatusOptions}\n optionKey=\"label\"\n t={t}\n placeholder={t(\"EKYC_SELECT\") || \"Select\"}\n />\n </div>\n {meterStatus?.value === \"Metered\" && (\n <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_METER_WORKING_STATUS\") || \"Meter working status\"}\n </div>\n <Dropdown\n selected={workingStatus}\n select={setWorkingStatus}\n option={workingStatusOptions}\n optionKey=\"label\"\n t={t}\n placeholder={t(\"EKYC_SELECT\") || \"Select\"}\n />\n </div>\n )}\n </div>\n\n {meterStatus?.value === \"Metered\" && (\n <Fragment>\n <div style={{ marginBottom: \"20px\" }}>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"8px\" }}>\n {t(\"EKYC_CAPTURE_METER_IMAGE\") || \"Capture meter image\"}\n </div>\n <UploadFile\n id={\"ekyc-meter-photo\"}\n extraStyleName={\"propertyCreate\"}\n accept=\".jpg,.png,.jpeg\"\n onUpload={selectphoto}\n onDelete={() => {\n setMeterStatusPhotoFileStoreId(null);\n setMeterStatusPhoto(null);\n setFilephoto(null);\n }}\n message={meterPhotoFileStoreId ? `1 ${t(`EKYC_ACTION_FILEUPLOADED`)}` : t(`EKYC_ACTION_NO_FILEUPLOADED`)}\n error={error}\n />\n {meterPhoto && (\n <div style={{ marginTop: \"10px\", borderRadius: \"8px\", overflow: \"hidden\", border: \"1px solid #EAECF0\" }}>\n <img src={meterPhoto} alt=\"Meter Preview\" style={{ width: \"100%\", maxHeight: \"150px\", objectFit: \"cover\" }} />\n </div>\n )}\n </div>\n\n <div style={{ display: \"grid\", gridTemplateColumns: \"1fr 1fr\", gap: \"14px\", marginBottom: \"20px\" }}>\n <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_METER_LOCATION\") || \"Meter location\"}\n </div>\n <TextInput\n value={meterLocation}\n onChange={(e) => setMeterLocation(e.target.value)}\n placeholder={t(\"EKYC_ENTER_METER_LOCATION\") || \"Enter location\"}\n />\n </div>\n <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_LAST_BILL_RAISED\") || \"Last bill raised\"}\n </div>\n <Dropdown\n selected={lastBillRaised}\n select={setLastBillRaised}\n option={yesNoOptions}\n optionKey=\"label\"\n t={t}\n placeholder={t(\"EKYC_SELECT\") || \"Select\"}\n />\n </div>\n </div>\n\n {lastBillRaised?.value === \"No\" && (\n <div style={{ marginBottom: \"20px\" }}>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_REASON_FOR_NO_BILL\") || \"Reason for no bill\"}\n </div>\n <TextInput\n value={noBillReason}\n onChange={(e) => setNoBillReason(e.target.value)}\n placeholder={t(\"EKYC_ENTER_REASON\") || \"Enter reason\"}\n />\n </div>\n )}\n </Fragment>\n )}\n\n <div style={{ marginBottom: \"20px\" }}>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_SEWER_CONNECTION\") || \"Sewer connection\"}\n </div>\n <div style={{ width: \"calc(50% - 7px)\" }}>\n <Dropdown\n selected={sewerConnection}\n select={setSewerConnection}\n option={yesNoOptions}\n optionKey=\"label\"\n t={t}\n placeholder={t(\"EKYC_SELECT\") || \"Select\"}\n />\n </div>\n </div>\n\n <hr style={{ margin: \"24px 0\", border: 0, borderTop: \"1px solid #EAECF0\" }} />\n\n {/* ── Property/Connection Details Section ── */}\n <SectionHead\n icon={<ConnectionIcon size={16} />}\n label={t(\"EKYC_PROPERTY_CONNECTION_DETAILS\") || \"Property Connection Details\"}\n />\n\n <div style={{ display: \"grid\", gridTemplateColumns: \"1fr 1fr\", gap: \"14px\", marginBottom: \"24px\" }}>\n <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_TYPE_OF_CONNECTION\") || \"Type of connection\"}\n </div>\n <Dropdown\n selected={connectionCategory}\n select={setConnectionCategory}\n option={connectionCategoryOptions}\n optionKey=\"label\"\n t={t}\n placeholder={t(\"EKYC_SELECT\") || \"Select\"}\n />\n </div>\n <div>\n <div style={{ fontSize: \"11px\", fontWeight: \"600\", color: \"#667085\", textTransform: \"uppercase\", letterSpacing: \"0.04em\", marginBottom: \"6px\" }}>\n {t(\"EKYC_CONNECTION_CATEGORY\") || \"Connection category\"}\n </div>\n <Dropdown\n selected={connectionType}\n select={setConnectionType}\n option={connectionTypeOptions}\n optionKey=\"label\"\n t={t}\n placeholder={t(\"EKYC_SELECT\") || \"Select\"}\n />\n </div>\n </div>\n\n </div>\n\n {/* Submit */}\n <div style={{ marginTop: \"24px\" }}>\n <SubmitBar\n label={t(\"EKYC_SAVE_AND_CONTINUE\") || \"Save & Continue\"}\n onSubmit={handleSaveAndContinue}\n />\n </div>\n\n {/* Secure notice */}\n <div style={{\n display: \"flex\", alignItems: \"center\", justifyContent: \"center\",\n gap: \"5px\", marginTop: \"16px\",\n fontSize: \"11px\", color: \"#98A2B3\",\n }}>\n <svg width=\"11\" height=\"11\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\">\n <rect x=\"3\" y=\"11\" width=\"18\" height=\"11\" rx=\"2\" />\n <path d=\"M7 11V7a5 5 0 0 1 10 0v4\" />\n </svg>\n {t(\"EKYC_SECURE_DATA_NOTICE\") || \"Your data is encrypted and secure\"}\n </div>\n </Card>\n </div>\n {toast && (\n <Toast\n label={toast.message}\n error={toast.type === \"error\"}\n info={toast.type === \"info\"}\n success={toast.type === \"success\"}\n onClose={() => setToast(null)}\n />\n )}\n </div>\n );\n};\n\nexport default MeterDetails;\n","import React, { Fragment, useState, useEffect } from \"react\";\nimport {\n Card,\n CardHeader,\n SubmitBar,\n HomeIcon,\n ActionBar,\n Toast,\n} from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useLocation } from \"react-router-dom\";\nimport { getPayloadDiff, getSavedData } from \"../../utils\";\n\n// ─── Icons ────────────────────────────────────────────────────────────────────\n\nconst CheckIcon = ({ size = 11, color = \"#fff\" }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke={color} strokeWidth=\"3\" strokeLinecap=\"round\">\n <polyline points=\"20 6 9 17 4 12\" />\n </svg>\n);\n\nconst PersonIcon = ({ size = 16 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M12 12c2.7 0 4.8-2.1 4.8-4.8S14.7 2.4 12 2.4 7.2 4.5 7.2 7.2 9.3 12 12 12zm0 2.4c-3.2 0-9.6 1.6-9.6 4.8v2.4h19.2v-2.4c0-3.2-6.4-4.8-9.6-4.8z\" />\n </svg>\n);\n\nconst LocationIcon2 = ({ size = 16 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z\" />\n </svg>\n);\n\nconst BuildingIcon = ({ size = 16 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M12 7V3H2v18h20V7H12zM6 19H4v-2h2v2zm0-4H4v-2h2v2zm0-4H4V9h2v2zm0-4H4V5h2v2zm4 12H8v-2h2v2zm0-4H8v-2h2v2zm0-4H8V9h2v2zm0-4H8V5h2v2zm10 12h-8V9h8v10zm-2-8h-4v2h4v-2zm0 4h-4v2h4v-2z\" />\n </svg>\n);\n\nconst EditIcon = ({ size = 14 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\">\n <path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\" />\n <path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\" />\n </svg>\n);\n\n// ─── Reusable: Section heading with inline rule ───────────────────────────────\n\nconst SectionHead = ({ icon, label }) => (\n <div style={{\n display: \"flex\", alignItems: \"center\", gap: \"8px\",\n marginBottom: \"16px\", marginTop: \"4px\",\n }}>\n <div style={{ opacity: 0.5, display: \"flex\" }}>{icon}</div>\n <span style={{ fontSize: \"15px\", fontWeight: \"600\", color: \"#0B0C0C\", whiteSpace: \"nowrap\" }}>\n {label}\n </span>\n <div style={{ flex: 1, height: \"1px\", background: \"#EAECF0\" }} />\n </div>\n);\n\n// ─── Reusable: Review section card ───────────────────────────────────────────\n\nconst ReviewCard = ({ icon, title, onEdit, editLabel, rows, t }) => (\n <div style={{\n border: \"0.5px solid #EAECF0\",\n borderRadius: \"10px\",\n overflow: \"hidden\",\n marginBottom: \"16px\",\n animation: \"fadeSlideIn 0.3s ease\",\n }}>\n {/* Card header */}\n <div style={{\n display: \"flex\", justifyContent: \"space-between\", alignItems: \"center\",\n padding: \"14px 16px\",\n background: \"#F9FAFB\",\n borderBottom: \"0.5px solid #EAECF0\",\n }}>\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"8px\" }}>\n <div style={{ opacity: 0.5, display: \"flex\" }}>{icon}</div>\n <span style={{ fontSize: \"14px\", fontWeight: \"600\", color: \"#0B0C0C\" }}>{title}</span>\n </div>\n <button\n onClick={onEdit}\n style={{\n display: \"flex\", alignItems: \"center\", gap: \"5px\",\n background: \"none\", border: \"0.5px solid #D0D5DD\",\n borderRadius: \"6px\", padding: \"5px 12px\",\n fontSize: \"12px\", fontWeight: \"600\", color: \"#185FA5\",\n cursor: \"pointer\",\n }}\n >\n <EditIcon size={12} />\n {editLabel}\n </button>\n </div>\n\n {/* Rows */}\n <div style={{ padding: \"4px 0\" }}>\n {rows.map((row, i) => (\n row.value ? (\n <div key={i} style={{\n display: \"flex\", alignItems: \"flex-start\",\n padding: \"10px 16px\",\n borderBottom: i < rows.length - 1 ? \"0.5px solid #F2F4F7\" : \"none\",\n }}>\n <div style={{\n flex: \"0 0 180px\", fontSize: \"12px\", fontWeight: \"600\",\n color: \"#667085\", textTransform: \"uppercase\",\n letterSpacing: \"0.04em\", paddingTop: \"1px\",\n }}>\n {row.label}\n </div>\n <div style={{ flex: 1, fontSize: \"14px\", color: \"#101828\", fontWeight: \"500\", wordBreak: \"break-word\", display: \"flex\", alignItems: \"center\", gap: \"8px\" }}>\n {row.value}\n {row.isModified && (\n <span style={{\n fontSize: \"10px\",\n background: \"#FFF4ED\",\n color: \"#B45309\",\n border: \"0.5px solid #FDE68A\",\n borderRadius: \"4px\",\n padding: \"2px 6px\",\n fontWeight: \"600\",\n textTransform: \"uppercase\"\n }}>\n {t(\"EKYC_MODIFIED\") || \"Modified\"}\n </span>\n )}\n </div>\n </div>\n ) : null\n ))}\n </div>\n </div>\n);\n\n// ─── Main Component ───────────────────────────────────────────────────────────\n\nconst Review = () => {\n const { t } = useTranslation();\n const history = useHistory();\n const location = useLocation();\n\n // ── Restore State Logic ──\n const state = location.state || {};\n const initialData = state.initialData || getSavedData(\"EKYC_INITIAL_DATA\", {});\n const kNumber = state.kNumber || sessionStorage.getItem(\"EKYC_K_NUMBER\") || \"EKYC-1234567890\";\n\n // Reconstruct nested objects if state is lost on refresh\n const aadhaarDetails = state.aadhaarDetails || {\n userName: sessionStorage.getItem(\"EKYC_USER_NAME\"),\n mobileNumber: sessionStorage.getItem(\"EKYC_MOBILE_NUMBER\"),\n whatsappNumber: sessionStorage.getItem(\"EKYC_WHATSAPP_NUMBER\"),\n email: sessionStorage.getItem(\"EKYC_EMAIL\"),\n noOfPersons: sessionStorage.getItem(\"EKYC_NO_OF_PERSONS\"),\n };\n\n const addressDetails = state.addressDetails || {\n fullAddress: sessionStorage.getItem(\"EKYC_FULL_ADDRESS\"),\n flatNo: sessionStorage.getItem(\"EKYC_FLAT_NO\"),\n building: sessionStorage.getItem(\"EKYC_BUILDING\"),\n landmark: sessionStorage.getItem(\"EKYC_LANDMARK\"),\n pincode: sessionStorage.getItem(\"EKYC_PINCODE\"),\n assembly: getSavedData(\"EKYC_ASSEMBLY_DATA\")?.name,\n ward: getSavedData(\"EKYC_WARD_DATA\")?.name,\n doorPhoto: sessionStorage.getItem(\"EKYC_DOOR_PHOTO\"),\n doorPhotoFileStoreId: sessionStorage.getItem(\"EKYC_DOOR_PHOTO_FILESTORE_ID\"),\n };\n\n const propertyDetails = state.propertyDetails || {\n ownerType: sessionStorage.getItem(\"EKYC_OWNER_TYPE\"),\n pidNumber: sessionStorage.getItem(\"EKYC_PID_NUMBER\"),\n userType: getSavedData(\"EKYC_USER_TYPE_DATA\"),\n noOfFloors: getSavedData(\"EKYC_NO_OF_FLOORS_DATA\"),\n propertyDocument: sessionStorage.getItem(\"EKYC_PROPERTY_DOC\"),\n propertyDocumentFileStoreId: sessionStorage.getItem(\"EKYC_PROPERTY_DOC_FILESTORE_ID\"),\n buildingPhoto: sessionStorage.getItem(\"EKYC_BUILDING_PHOTO\"),\n buildingPhotoFileStoreId: sessionStorage.getItem(\"EKYC_BUILDING_PHOTO_FILESTORE_ID\"),\n };\n\n const meterDetails = state.meterDetails || {\n meterStatus: getSavedData(\"EKYC_METER_STATUS_DATA\"),\n workingStatus: getSavedData(\"EKYC_METER_WORKING_STATUS_DATA\"),\n meterLocation: sessionStorage.getItem(\"EKYC_METER_LOCATION\"),\n lastBillRaised: getSavedData(\"EKYC_LAST_BILL_RAISED_DATA\"),\n noBillReason: sessionStorage.getItem(\"EKYC_REASON_FOR_NO_BILL\"),\n sewerConnection: getSavedData(\"EKYC_SEWER_CONNECTION_DATA\"),\n connectionCategory: getSavedData(\"EKYC_TYPE_OF_CONNECTION_DATA\"),\n connectionType: getSavedData(\"EKYC_CONNECTION_CATEGORY_DATA\"),\n meterPhoto: sessionStorage.getItem(\"EKYC_METER_PHOTO\"),\n meterPhotoFileStoreId: sessionStorage.getItem(\"EKYC_METER_PHOTO_FILESTORE_ID\"),\n };\n\n useEffect(() => {\n sessionStorage.setItem(\"EKYC_CURRENT_STEP\", \"REVIEW\");\n }, []);\n\n // Helper to check if a field is modified\n const isFieldModified = (key, currentVal) => {\n const initialVal = initialData[key];\n if (initialVal === undefined) return false;\n return JSON.stringify(initialVal) !== JSON.stringify(currentVal);\n };\n\n const [toast, setToast] = useState(null);\n const tenantId = Digit.ULBService.getCurrentTenantId() || \"dl\";\n const { mutate, isLoading: isMutationLoading } = Digit.Hooks.ekyc.useEkycApplicationUpdate(tenantId);\n const isSubmitting = isMutationLoading;\n\n // ── Helper: upload a File object to Filestore ──────────────────────────────\n const uploadFile = async (file, tenantId) => {\n if (!file) return null;\n const res = await Digit.UploadServices.Filestorage(\"EKYC\", file, tenantId);\n return res?.data?.files?.[0]?.fileStoreId || null;\n };\n\n // ── Helper: convert a data-URL (base64 string) to a File blob ─────────────\n const dataUrlToFile = (dataUrl, filename) => {\n const arr = dataUrl.split(\",\");\n const mime = arr[0].match(/:(.*?);/)[1];\n const bstr = atob(arr[1]);\n let n = bstr.length;\n const u8arr = new Uint8Array(n);\n while (n--) u8arr[n] = bstr.charCodeAt(n);\n return new File([u8arr], filename, { type: mime });\n };\n\n const handleSubmit = async () => {\n setToast(null);\n try {\n const userInfo = Digit.UserService.getUser()?.info || {};\n\n // ── 1. Upload property document ──────────────────────────────────────\n let propertyDocFileStoreId = propertyDetails.propertyDocumentFileStoreId || null;\n if (!propertyDocFileStoreId && propertyDetails.propertyDocument instanceof File) {\n propertyDocFileStoreId = await uploadFile(propertyDetails.propertyDocument, tenantId);\n }\n\n // ── 2. Upload building photo ──────────────────────────────────────────\n let buildingImageFileStoreId = propertyDetails.buildingPhotoFileStoreId || null;\n if (!buildingImageFileStoreId && propertyDetails.buildingPhoto) {\n // Fallback if we only have the dataURL\n const photoFile = dataUrlToFile(propertyDetails.buildingPhoto, \"building_photo.jpg\");\n buildingImageFileStoreId = await uploadFile(photoFile, tenantId);\n }\n\n // ── 3. Upload door photo ──────────────────────────────────────────────\n let doorPhotoFileStoreId = addressDetails.doorPhotoFileStoreId || null;\n if (!doorPhotoFileStoreId && addressDetails.doorPhoto) {\n const doorFile = dataUrlToFile(addressDetails.doorPhoto, \"door_photo.jpg\");\n doorPhotoFileStoreId = await uploadFile(doorFile, tenantId);\n }\n\n // ── 4. Upload meter photo ──────────────────────────────────────────────\n let meterImageFileStoreId = meterDetails.meterPhotoFileStoreId || null;\n if (!meterImageFileStoreId && meterDetails.meterPhoto) {\n const meterFile = dataUrlToFile(meterDetails.meterPhoto, \"meter_photo.jpg\");\n meterImageFileStoreId = await uploadFile(meterFile, tenantId);\n }\n\n // ── 4. Build optimized request payload ────────────────────────────────\n // Note: RequestInfo is added automatically by the Digit Request utility\n const requestBody = {\n updateType: \"PROPERTY\",\n kno: kNumber,\n pidNumber: propertyDetails.pidNumber || null,\n propertyDocumentFileStoreId: propertyDocFileStoreId,\n buildingImageFileStoreId: buildingImageFileStoreId,\n userType: propertyDetails.userType?.value || null,\n noOfFloor: propertyDetails.noOfFloors?.value ? parseInt(propertyDetails.noOfFloors.value, 10) : null,\n typeOfConnection: propertyDetails.connectionCategory?.value || null,\n connectionCategory: propertyDetails.connectionType?.value || null,\n modifiedBy: userInfo.name || userInfo.userName || null,\n mobileNumber: aadhaarDetails.mobileNumber || null,\n email: aadhaarDetails.email || null,\n userName: aadhaarDetails.userName || null,\n noOfPersons: aadhaarDetails.noOfPersons || null,\n doorPhotoFileStoreId: doorPhotoFileStoreId,\n fullAddress: addressDetails.fullAddress || null,\n flatNo: addressDetails.flatNo || null,\n building: addressDetails.building || null,\n landmark: addressDetails.landmark || null,\n pincode: addressDetails.pincode || null,\n assembly: addressDetails.assembly || null,\n ward: addressDetails.ward || null,\n // Meter Details\n meterStatus: meterDetails.meterStatus?.value || null,\n meterWorkingStatus: meterDetails.workingStatus?.value || null,\n meterLocation: meterDetails.meterLocation || null,\n lastBillRaised: meterDetails.lastBillRaised?.value || null,\n noBillReason: meterDetails.noBillReason || null,\n sewerConnection: meterDetails.sewerConnection?.value || null,\n typeOfConnection: meterDetails.connectionCategory?.value || null,\n connectionCategory: meterDetails.connectionType?.value || null,\n meterImageFileStoreId: meterImageFileStoreId,\n };\n\n // ── 4. Call the update API using the new Hook ──────────────────────────\n mutate(requestBody, {\n onSuccess: (res) => {\n setToast({ type: \"success\", message: t(\"EKYC_SUBMIT_SUCCESS\") || \"Application submitted successfully!\" });\n\n // Cleanup sessionStorage on success\n Object.keys(sessionStorage).forEach(key => {\n if (key.startsWith(\"EKYC_\")) sessionStorage.removeItem(key);\n });\n\n setTimeout(() => {\n history.push(\"/digit-ui/employee/ekyc/dashboard\");\n }, 1800);\n },\n onError: (err) => {\n console.error(\"eKYC Submit Error:\", err);\n setToast({\n type: \"error\",\n message: err?.response?.data?.Errors?.[0]?.message ||\n t(\"EKYC_SUBMIT_ERROR\") || \"Submission failed. Please try again.\",\n });\n }\n });\n\n } catch (err) {\n console.error(\"eKYC Frontend Error:\", err);\n setToast({\n type: \"error\",\n message: t(\"EKYC_SUBMIT_ERROR\") || \"An error occurred during submission.\",\n });\n }\n };\n\n const handleEditAadhaar = () => {\n history.push(\"/digit-ui/employee/ekyc/aadhaar-verification\", location.state);\n };\n\n const handleEditAddress = () => {\n history.push(\"/digit-ui/employee/ekyc/address-details\", location.state);\n };\n\n const handleEditProperty = () => {\n history.push(\"/digit-ui/employee/ekyc/property-info\", location.state);\n };\n\n const handleEditMeter = () => {\n history.push(\"/digit-ui/employee/ekyc/meter-details\", location.state);\n };\n\n return (\n <Fragment>\n <div className=\"inbox-container\">\n <style>{`\n @keyframes fadeSlideIn {\n from { opacity: 0; transform: translateY(8px); }\n to { opacity: 1; transform: translateY(0); }\n }\n `}</style>\n\n {/* ── Sidebar ── */}\n <div className=\"filters-container\">\n <Card style={{ display: \"flex\", alignItems: \"center\", padding: \"12px 16px\", marginBottom: \"12px\", borderRadius: \"8px\" }}>\n <div style={{ color: \"#185FA5\", marginRight: \"10px\", display: \"flex\" }}>\n <HomeIcon style={{ width: \"20px\", height: \"20px\" }} />\n </div>\n <div style={{ fontWeight: \"600\", fontSize: \"15px\", color: \"#0B0C0C\" }}>\n {t(\"EKYC_PROCESS\") || \"eKYC Process\"}\n </div>\n </Card>\n\n <div style={{ background: \"#fff\", padding: \"16px 14px\", borderRadius: \"8px\", border: \"1px solid #EAECF0\" }}>\n {[\n { label: t(\"EKYC_STEP_AADHAAR\") || \"Aadhaar\", done: true, active: false },\n { label: t(\"EKYC_STEP_ADDRESS\") || \"Address\", done: true, active: false },\n { label: t(\"EKYC_STEP_PROPERTY\") || \"Property\", done: true, active: false },\n { label: t(\"EKYC_STEP_METER\") || \"Meter\", done: true, active: false },\n { label: t(\"EKYC_STEP_REVIEW\") || \"Review\", done: false, active: true },\n ].map((step, i) => (\n <div key={i} style={{\n display: \"flex\", gap: \"10px\", alignItems: \"flex-start\",\n position: \"relative\", paddingBottom: i < 4 ? \"18px\" : 0,\n }}>\n {i < 4 && (\n <div style={{\n position: \"absolute\", left: \"10px\", top: \"22px\",\n width: \"1px\", height: \"calc(100% - 10px)\", background: \"#EAECF0\",\n }} />\n )}\n <div style={{\n width: \"20px\", height: \"20px\", borderRadius: \"50%\", flexShrink: 0, marginTop: \"1px\",\n border: step.done ? \"none\" : step.active ? \"1.5px solid #185FA5\" : \"1.5px solid #D0D5DD\",\n background: step.done ? \"#0F6E56\" : step.active ? \"#E6F1FB\" : \"#fff\",\n display: \"flex\", alignItems: \"center\", justifyContent: \"center\",\n fontSize: \"10px\", fontWeight: \"500\",\n color: step.done ? \"#fff\" : step.active ? \"#185FA5\" : \"#98A2B3\",\n }}>\n {step.done ? <CheckIcon size={11} color=\"#fff\" /> : i + 1}\n </div>\n <div style={{\n fontSize: \"12px\", paddingTop: \"2px\",\n color: step.done ? \"#0F6E56\" : step.active ? \"#0B0C0C\" : \"#667085\",\n fontWeight: step.done || step.active ? \"600\" : \"400\",\n }}>\n {step.label}\n </div>\n </div>\n ))}\n </div>\n </div>\n\n {/* ── Main Content ── */}\n <div style={{ flex: 1, marginLeft: \"16px\" }}>\n <Card>\n\n {/* Page header */}\n <div style={{ display: \"flex\", justifyContent: \"space-between\", alignItems: \"center\", marginBottom: \"20px\" }}>\n <CardHeader style={{ margin: 0, fontSize: \"18px\" }}>\n {t(\"EKYC_REVIEW_DETAILS\") || \"Review Details\"}\n </CardHeader>\n <div style={{\n background: \"#F9FAFB\", border: \"0.5px solid #EAECF0\",\n borderRadius: \"20px\", padding: \"4px 14px\",\n fontSize: \"12px\", color: \"#667085\",\n }}>\n {t(\"EKYC_K_NUMBER\") || \"K Number\"}:{\" \"}\n <span style={{ color: \"#0B0C0C\", fontWeight: \"600\" }}>{kNumber}</span>\n </div>\n </div>\n\n {/* Confirmation banner */}\n <div style={{\n backgroundColor: \"#E1F5EE\", border: \"0.5px solid #5DCAA5\",\n borderRadius: \"8px\", padding: \"12px 16px\",\n display: \"flex\", alignItems: \"center\", gap: \"10px\",\n marginBottom: \"24px\",\n }}>\n <div style={{ backgroundColor: \"#9FE1CB\", padding: \"5px\", borderRadius: \"6px\", display: \"flex\", flexShrink: 0 }}>\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#085041\" strokeWidth=\"3\" strokeLinecap=\"round\">\n <polyline points=\"20 6 9 17 4 12\" />\n </svg>\n </div>\n <div style={{ fontSize: \"13px\", color: \"#04342C\", fontWeight: \"500\" }}>\n {t(\"EKYC_REVIEW_NOTICE\") || \"Please review all details carefully before submitting. You can edit any section by clicking Edit.\"}\n </div>\n </div>\n\n <div style={{ animation: \"fadeSlideIn 0.3s ease\" }}>\n\n {/* ── Aadhaar section head ── */}\n <SectionHead\n icon={<PersonIcon size={16} />}\n label={t(\"EKYC_AADHAAR_VERIFICATION_HEADER\") || \"Aadhaar details\"}\n />\n\n <ReviewCard\n icon={<PersonIcon size={16} />}\n title={t(\"EKYC_AADHAAR_VERIFICATION_HEADER\") || \"Aadhaar details\"}\n onEdit={handleEditAadhaar}\n editLabel={t(\"CS_COMMON_EDIT\") || \"Edit\"}\n t={t}\n rows={[\n { label: t(\"EKYC_NAME\") || \"Name\", value: aadhaarDetails.userName || \"Rajesh Kumar Singh\", isModified: isFieldModified(\"userName\", aadhaarDetails.userName) },\n { label: t(\"EKYC_AADHAAR\") || \"Aadhaar no.\", value: aadhaarDetails.aadhaarLastFour ? `${aadhaarDetails.aadhaarLastFour}` : \"XXXX XXXX 1234\" },\n { label: t(\"EKYC_MOBILE_NO\") || \"Mobile no.\", value: aadhaarDetails.mobileNumber || \"XXXXXXXXXX\", isModified: isFieldModified(\"mobileNumber\", aadhaarDetails.mobileNumber) },\n { label: t(\"EKYC_EMAIL_ADDRESS\") || \"Email\", value: aadhaarDetails.email || null, isModified: isFieldModified(\"email\", aadhaarDetails.email) },\n ]}\n />\n\n <hr style={{ margin: \"20px 0\", border: 0, borderTop: \"1px solid #EAECF0\" }} />\n\n {/* ── Address section head ── */}\n <SectionHead\n icon={<LocationIcon2 size={16} />}\n label={t(\"EKYC_ADDRESS_DETAILS_HEADER\") || \"Address details\"}\n />\n\n <ReviewCard\n icon={<LocationIcon2 size={16} />}\n title={t(\"EKYC_ADDRESS_DETAILS_HEADER\") || \"Address details\"}\n onEdit={handleEditAddress}\n editLabel={t(\"CS_COMMON_EDIT\") || \"Edit\"}\n t={t}\n rows={[\n { label: t(\"EKYC_FULL_ADDRESS\") || \"Full address\", value: addressDetails.fullAddress || \"H.No. 123, Sector 15, Rohini, Delhi – 110085\", isModified: isFieldModified(\"fullAddress\", addressDetails.fullAddress) },\n { label: t(\"EKYC_FLAT_HOUSE_NUMBER\") || \"Flat / House no.\", value: addressDetails.flatNo || null, isModified: isFieldModified(\"flatNo\", addressDetails.flatNo) },\n { label: t(\"EKYC_BUILDING_TOWER\") || \"Building\", value: addressDetails.building || null, isModified: isFieldModified(\"building\", addressDetails.building) },\n { label: t(\"EKYC_LANDMARK\") || \"Landmark\", value: addressDetails.landmark || null, isModified: isFieldModified(\"landmark\", addressDetails.landmark) },\n { label: t(\"EKYC_PINCODE\") || \"Pincode\", value: addressDetails.pincode || \"110085\", isModified: isFieldModified(\"pincode\", addressDetails.pincode) },\n { label: t(\"EKYC_ASSEMBLY\") || \"Assembly\", value: addressDetails.assembly || \"AC-12 Chandni Chowk\", isModified: isFieldModified(\"assembly\", addressDetails.assembly) },\n { label: t(\"EKYC_WARD\") || \"Ward\", value: addressDetails.ward || \"WARD-45 Civil Lines\", isModified: isFieldModified(\"ward\", addressDetails.ward) },\n ]}\n />\n\n <hr style={{ margin: \"20px 0\", border: 0, borderTop: \"1px solid #EAECF0\" }} />\n\n {/* ── Property section head ── */}\n <SectionHead\n icon={<BuildingIcon size={16} />}\n label={t(\"EKYC_PROPERTY_INFO\") || \"Property details\"}\n />\n\n <ReviewCard\n icon={<BuildingIcon size={16} />}\n title={t(\"EKYC_PROPERTY_INFO\") || \"Property details\"}\n onEdit={handleEditProperty}\n editLabel={t(\"CS_COMMON_EDIT\") || \"Edit\"}\n t={t}\n rows={[\n { label: t(\"EKYC_PROPERTY_OWNER\") || \"Property owner\", value: propertyDetails.ownerType || \"Owner\" },\n { label: t(\"EKYC_PID_NUMBER\") || \"PID number\", value: propertyDetails.pidNumber || null, isModified: isFieldModified(\"pidNumber\", propertyDetails.pidNumber) },\n { label: t(\"EKYC_TYPE_OF_CONNECTION\") || \"Type of connection\", value: propertyDetails.connectionCategory?.label || null, isModified: isFieldModified(\"typeOfConnection\", propertyDetails.connectionCategory?.value) },\n { label: t(\"EKYC_CONNECTION_CATEGORY\") || \"Connection category\", value: propertyDetails.connectionType?.label || null, isModified: isFieldModified(\"connectionCategory\", propertyDetails.connectionType?.value) },\n { label: t(\"EKYC_USER_TYPE\") || \"User type\", value: propertyDetails.userType?.label || null, isModified: isFieldModified(\"userType\", propertyDetails.userType?.value) },\n { label: t(\"EKYC_NO_OF_FLOORS\") || \"No. of floors\", value: propertyDetails.noOfFloors?.label || null, isModified: isFieldModified(\"noOfFloor\", propertyDetails.noOfFloors?.value) },\n ]}\n />\n\n <hr style={{ margin: \"20px 0\", border: 0, borderTop: \"1px solid #EAECF0\" }} />\n\n {/* ── Meter section head ── */}\n <SectionHead\n icon={<svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm.5-13H11v6l5.25 3.15.75-1.23-4.5-2.67V7z\" /></svg>}\n label={t(\"EKYC_METER_DETAILS_HEADER\") || \"Meter details\"}\n />\n\n <ReviewCard\n icon={<svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm.5-13H11v6l5.25 3.15.75-1.23-4.5-2.67V7z\" /></svg>}\n title={t(\"EKYC_METER_DETAILS_HEADER\") || \"Meter details\"}\n onEdit={handleEditMeter}\n editLabel={t(\"CS_COMMON_EDIT\") || \"Edit\"}\n t={t}\n rows={[\n { label: t(\"EKYC_METER_STATUS\") || \"Meter status\", value: meterDetails.meterStatus?.label || null, isModified: isFieldModified(\"meterStatus\", meterDetails.meterStatus?.value) },\n { label: t(\"EKYC_METER_WORKING_STATUS\") || \"Meter working status\", value: meterDetails.workingStatus?.label || null, isModified: isFieldModified(\"meterWorkingStatus\", meterDetails.workingStatus?.value) },\n { label: t(\"EKYC_METER_LOCATION\") || \"Meter location\", value: meterDetails.meterLocation || null, isModified: isFieldModified(\"meterLocation\", meterDetails.meterLocation) },\n { label: t(\"EKYC_LAST_BILL_RAISED\") || \"Last bill raised\", value: meterDetails.lastBillRaised?.label || null, isModified: isFieldModified(\"lastBillRaised\", meterDetails.lastBillRaised?.value) },\n { label: t(\"EKYC_REASON_FOR_NO_BILL\") || \"Reason for no bill\", value: meterDetails.noBillReason || null, isModified: isFieldModified(\"noBillReason\", meterDetails.noBillReason) },\n { label: t(\"EKYC_SEWER_CONNECTION\") || \"Sewer connection\", value: meterDetails.sewerConnection?.label || null, isModified: isFieldModified(\"sewerConnection\", meterDetails.sewerConnection?.value) },\n { label: t(\"EKYC_TYPE_OF_CONNECTION\") || \"Type of connection\", value: meterDetails.connectionCategory?.label || null, isModified: isFieldModified(\"typeOfConnection\", meterDetails.connectionCategory?.value) },\n { label: t(\"EKYC_CONNECTION_CATEGORY\") || \"Connection category\", value: meterDetails.connectionType?.label || null, isModified: isFieldModified(\"connectionCategory\", meterDetails.connectionType?.value) },\n ]}\n />\n\n </div>\n\n {/* Submit (Non-sticky, at form end) */}\n <div style={{ marginTop: \"24px\" }}>\n <SubmitBar\n label={isSubmitting\n ? (t(\"EKYC_SUBMITTING\") || \"Submitting...\")\n : (t(\"ES_COMMON_SUBMIT\") || \"Submit\")\n }\n onSubmit={handleSubmit}\n disabled={isSubmitting}\n />\n </div>\n\n {/* Secure notice */}\n <div style={{\n display: \"flex\", alignItems: \"center\", justifyContent: \"center\",\n gap: \"5px\", marginTop: \"16px\",\n fontSize: \"11px\", color: \"#98A2B3\",\n }}>\n <svg width=\"11\" height=\"11\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\">\n <rect x=\"3\" y=\"11\" width=\"18\" height=\"11\" rx=\"2\" />\n <path d=\"M7 11V7a5 5 0 0 1 10 0v4\" />\n </svg>\n {t(\"EKYC_SECURE_DATA_NOTICE\") || \"Your data is encrypted and secure\"}\n </div>\n\n </Card>\n </div>\n </div>\n\n {/* Toast notification */}\n {toast && (\n <Toast\n label={toast.message}\n error={toast.type === \"error\"}\n success={toast.type === \"success\"}\n onClose={() => setToast(null)}\n />\n )}\n </Fragment>\n );\n};\n\nexport default Review;","import { AppContainer, PrivateRoute, ModuleHeader, ArrowLeft, HomeIcon } from \"@djb25/digit-ui-react-components\";\nimport React from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Switch, useLocation } from \"react-router-dom\";\nimport Inbox from \"./Inbox\";\n//import Mapping from \"./Mapping\";\nimport Create from \"./Create\";\nimport AadhaarVerification from \"./AadhaarVerification\";\nimport AddressDetails from \"./AddressDetails\";\nimport PropertyInfo from \"./PropertyInfo\";\nimport MeterDetails from \"./MeterDetails\";\nimport Review from \"./Review\";\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(\"/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 \"ES_COMMON_INBOX\";\n };\n\n const breadcrumbs = [\n { icon: HomeIcon, path: \"/digit-ui/employee\" },\n { label: t(getBreadcrumbLabel()) }\n ];\n\n return (\n <AppContainer>\n <div className=\"ground-container employee-app-container employee-app-homepage-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 <Switch>\n <PrivateRoute\n path={`${path}/dashboard`}\n component={() => (\n <Inbox\n parentRoute={path}\n businessService=\"EKYC\"\n moduleCode=\"EKYC\"\n isInbox={true}\n />\n )}\n />\n\n <PrivateRoute\n path={`${path}/create-kyc`}\n component={() => <Create />}\n />\n\n {/* <PrivateRoute\n path={`${path}/mapping`}\n component={() => <Mapping />}\n /> */}\n\n <PrivateRoute\n path={`${path}/aadhaar-verification`}\n component={() => <AadhaarVerification />}\n />\n\n <PrivateRoute\n path={`${path}/address-details`}\n component={() => <AddressDetails />}\n />\n\n <PrivateRoute\n path={`${path}/property-info`}\n component={() => <PropertyInfo />}\n />\n\n <PrivateRoute\n path={`${path}/meter-details`}\n component={() => <MeterDetails />}\n />\n \n <PrivateRoute\n path={`${path}/review`}\n component={() => <Review />}\n />\n\n <PrivateRoute\n path={`${path}/`}\n component={() => (\n <Inbox\n parentRoute={path}\n businessService=\"EKYC\"\n moduleCode=\"EKYC\"\n isInbox={true}\n />\n )}\n />\n </Switch>\n </div>\n </AppContainer>\n );\n};\n\nexport default EmployeeApp;\n","import { AppContainer, PrivateRoute, ModuleHeader, ArrowLeft, HomeIcon } from \"@djb25/digit-ui-react-components\";\nimport React from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Switch, useLocation, useRouteMatch } from \"react-router-dom\";\nimport Create from \"../employee/Create\";\nimport AadhaarVerification from \"../employee/AadhaarVerification\";\nimport AddressDetails from \"../employee/AddressDetails\";\nimport PropertyInfo from \"../employee/PropertyInfo\";\nimport MeterDetails from \"../employee/MeterDetails\";\nimport Review from \"../employee/Review\";\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 = [\n { icon: HomeIcon, path: \"/digit-ui/citizen\" },\n { label: t(getBreadcrumbLabel()) }\n ];\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 {t(\"CS_COMMON_BACK\")}\n </React.Fragment>\n }\n onLeftClick={() => window.history.back()}\n breadcrumbs={breadcrumbs}\n />\n\n <Switch>\n <PrivateRoute\n path={`${path}/create-kyc`}\n component={() => <Create />}\n />\n\n <PrivateRoute\n path={`${path}/aadhaar-verification`}\n component={() => <AadhaarVerification />}\n />\n\n <PrivateRoute\n path={`${path}/address-details`}\n component={() => <AddressDetails />}\n />\n\n <PrivateRoute\n path={`${path}/property-info`}\n component={() => <PropertyInfo />}\n />\n\n <PrivateRoute\n path={`${path}/meter-details`}\n component={() => <MeterDetails />}\n />\n \n <PrivateRoute\n path={`${path}/review`}\n component={() => <Review />}\n />\n\n <PrivateRoute\n path={`${path}/`}\n component={() => <Create />}\n />\n </Switch>\n </div>\n </AppContainer>\n );\n};\n\nexport default CitizenApp;\n","import React from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { useRouteMatch } from \"react-router-dom\";\nimport { CitizenHomeCard, DocumentIcon } from \"@djb25/digit-ui-react-components\";\nimport EKYCCard from \"./components/EKYCCard\";\nimport Inbox from \"./pages/employee/Inbox\";\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\";\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, data: store } = Digit.Services.useStore({ stateCode, moduleCode, language });\n Digit.SessionStorage.set(\"EKYC_TENANTS\", tenants);\n\n if (isLoading) {\n return null;\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\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};\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","Chart","register","registerables","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","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","DesktopInbox","_Digit$Hooks$ekyc","tableConfig","filterComponent","props","isLoading","onSort","onNextPage","onPrevPage","currentPage","pageSizeLimit","onPageSizeChange","parentRoute","searchParams","sortParams","totalRecords","onSearch","searchFields","tenantId","Digit","ULBService","getCurrentTenantId","FilterComponent","setComp","useState","_Digit$ComponentRegis","ComponentRegistryService","getComponent","showReviewModal","setShowReviewModal","reviewHtml","setReviewHtml","selectedKno","setSelectedKno","generateReviewHtml","info","statusFlag","Date","toLocaleDateString","kno","consumerName","mobileNo","email","typeOfConnection","connectionCategory","addressRaw","locality","city","pincode","pidNumber","noOfFloor","verificationStatus","meterNumber","meterMake","meterLocationAddress","workingStatus","useReviewHook","Hooks","ekyc","useEkycApplicationReview","p","config","useMutation","EkycService","application_review","mutate","getReview","isReviewLoading","onSuccess","res","applicationReviewInfo","html","url","acknowledgementURL","reviewUrl","setReviewUrl","alert","onError","err","message","handleReview","columns","useMemo","Header","accessor","Cell","_ref2","_row$original","_row$original2","row","original","applicationNumber","cursor","fontWeight","onClick","_ref3","_row$original3","citizenName","_ref4","_row$original4","status","tableData","items","Modal","headerBarMain","headerBarEnd","padding","borderRadius","hideSubmit","popupStyles","maxWidth","popupModuleMianStyles","srcDoc","src","undefined","title","border","Loader","Card","alignItems","marginBottom","marginRight","HomeIcon","fontSize","defaultSearchParams","onFilterChange","moduleCode","flex","marginLeft","Table","getCellProps","cellInfo","SearchConsumer","_props$countData","_props$countData2","_props$countData3","children","_searchParams","setSearchParams","onChange","prev","onSubmit","e","preventDefault","onClear","cleared","kNumber","kName","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","Inbox","_dashboardData$dashbo2","businessService","initialStates","isInbox","pageOffset","setPageOffset","pageSize","setPageSize","setSortParams","desc","defaultStatusOption","dashboardData","isFetching","useEkycSurveyorDashboard","offset","limit","enabled","filteredData","_dashboardData$dashbo","_searchParams$status","dashboardInfo","consumerList","selectedStatus","filter","rejected","totalCount","handleSearch","useCallback","filterParam","fetchNextPage","fetchPrevPage","max","handlePageSizeChange","newSize","Number","handleSort","args","name","optionsKey","Utils","browser","isMobile","floor","ConnectionDetailsView","connectionDetails","history","useHistory","path","useRouteMatch","showModal","setShowModal","selectedOption","setSelectedOption","code","handleStartVerification","onModalConfirm","parentPath","includes","replace","push","details","statusflag","isActive","toLowerCase","Fragment","connectionType","address","x","y","rx","ry","phoneNumber","lastVerified","points","actionSaveLabel","actionSaveOnSubmit","actionCancelLabel","actionCancelOnSubmit","RadioButtons","onSelect","flexDirection","gap","buttonStyle","Create","saved","sessionStorage","getItem","JSON","parse","searchPerformed","setSearchPerformed","showToast","setShowToast","isSearching","error","revalidate","useSearchConnection","_error$response","_error$response$data","_error$response$data$","_error$response$data$2","response","Errors","removeItem","params","currentKno","Object","keys","forEach","startsWith","setItem","stringify","closeToast","Toast","isDsc","getSavedData","fallback","console","warn","_iteratorSymbol","Symbol","iterator","_asyncIteratorSymbol","asyncIterator","_catch","body","recover","result","then","_finallyRethrows","finalizer","bind","CameraIcon","size","TargetIcon","PincodeIcon","_ref5","CheckIcon","_ref7","IconInput","_ref8","icon","topAligned","inputStyle","position","left","top","transform","zIndex","opacity","pointerEvents","_extends","textInputStyle","paddingLeft","paddingRight","SectionHead","_ref9","marginTop","whiteSpace","AddressDetails","_ref1","_flowState$connection","_mdmsRes$egovLocatio","_mdmsRes$egovLocatio$","_mdmsRes$egovLocatio2","_mdmsRes$egovLocatio3","isSection","onComplete","parentState","location","useLocation","flowState","state","initialData","addrDetails","addressDetails","addressType","setAddressType","correctAddress","setCorrectAddress","fullAddress","setFullAddress","flatNo","setFlatNo","building","setBuilding","landmark","setLandmark","setPincode","doorPhoto","setDoorPhoto","doorPhotoFileStoreId","setDoorPhotoFileStoreId","filephoto","setFilephoto","setError","toast","setToast","uploadFile","file","Promise","resolve","UploadServices","Filestorage","_res$data","_res$data$files","_res$data$files$","files","fileStoreId","reject","_temp3","_temp2","_temp","fsId","reader","FileReader","onloadend","readAsDataURL","isLocationFetching","setIsLocationFetching","fileInputRef","mdmsData","isMdmsLoading","useCommonMDMS","mdmsRes","MdmsRes","adminHierarchy","TenantBoundary","find","h","hierarchyType","rootBoundary","boundary","getAssemblies","boundaries","assemblies","targetLabel","_boundary$children","getBlocks","blocks","child","_child$children","Array","isArray","assembly","setAssembly","ward","setWard","foundAssembly","a","b","addressOptions","yesNoOptions","handleCompleteVerification","payload","selectphoto","removePhoto","handleUseCurrentLocation","navigator","geolocation","getCurrentPosition","_ref10","coords","latitude","longitude","fetch","ok","Error","json","amenity","road","neighbourhood","suburb","postcode","Boolean","join","_wasThrown","_result","enableHighAccuracy","timeout","maximumAge","renderContent","animation","LocationIcon","styles","innerStyles","flexShrink","lineHeight","justifyContent","CardLabel","transition","onMouseOver","currentTarget","onMouseOut","borderTopColor","textTransform","letterSpacing","PropertyHouse","minHeight","gridTemplateColumns","test","maxLength","margin","borderTop","val","disabled","UploadFile","extraStyleName","accept","onUpload","onDelete","overflow","alt","maxHeight","objectFit","ActionBar","success","done","step","paddingBottom","paddingTop","CardHeader","LockIcon","UserIcon","PhoneIcon","WhatsappIcon","MailIcon","UsersIcon","_ref6","rightIcon","right","RadioToggleRow","_ref0","AadhaarVerification","addressSectionRef","connectionDetailsInfo","initialDetails","_connectionDetails$ad","_connectionDetails$pr","_connectionDetails$co","_connectionDetails$co2","_connectionDetails$pr2","_connectionDetails$pr3","_connectionDetails$ad2","_connectionDetails$ad3","_connectionDetails$ad4","_connectionDetails$ad5","_connectionDetails$ad6","_connectionDetails$ad7","_connectionDetails$ad8","userName","whatsappNumber","noOfPersons","noOfPerson","propertyDetails","userType","flatHouseNumber","buildingTower","pinCode","aadhaarLastFour","setAadhaarLastFour","isAadhaarVerified","setIsAadhaarVerified","isVerifying","setIsVerifying","showOtpField","setShowOtpField","otp","setOtp","otpError","setOtpError","nameCorrect","setNameCorrect","setUserName","mobileChange","setMobileChange","setMobileNumber","setWhatsappNumber","setEmail","setNoOfPersons","showAddressSection","setShowAddressSection","addressData","setAddressData","handleVerifyAadhaar","setTimeout","handleVerifyOtp","_addressSectionRef$cu","scrollIntoView","behavior","block","handleSaveAndContinue","_addressSectionRef$cu2","handleCompleteAll","aadhaarDetails","verifiedInput","verifiedCard","infoLabel","infoValue","twoCol","optionalTag","LabelFieldPair","gridColumn","sty","BuildingIcon","BriefcaseIcon","DocumentIcon","PidIcon","PropertyInfo","_dataV0$wsServicesC","_dataV0$wsServicesC$p","_dataConn$wsServices","_dataConn$wsServices$","_dataV1$wsServicesC","_dataV1$wsServicesC$u","_dataV2$wsServicesC","_dataV2$wsServicesC$f","dataV0","useGetPropertyType","dataConn","useGetConnectionTypeV2","dataV1","useGetUserType","dataV2","useGetFloorCount","ownerType","setOwnerType","setPidNumber","setConnectionCategory","setConnectionType","setUserType","noOfFloors","setNoOfFloors","propertyDocument","setPropertyDocument","propertyDocumentFileStoreId","setPropertyDocumentFileStoreId","buildingPhoto","setBuildingPhoto","buildingPhotoFileStoreId","setBuildingPhotoFileStoreId","filepdf","setFilepdf","_temp6","_temp5","_temp4","fileRef","cameraRef","selectpdf","connectionCategoryOptions","propertyTypeV2","connectionTypeOptions","connectionTypeV2","userTypeOptions","userTypeV2","floorOptions","floorCount","fontStyle","InfoBannerIcon","MeterIcon","ConnectionIcon","MeterDetails","meterStatus","setMeterStatus","meterPhoto","setMeterStatusPhoto","meterPhotoFileStoreId","setMeterStatusPhotoFileStoreId","setWorkingStatus","meterLocation","setMeterLocation","lastBillRaised","setLastBillRaised","noBillReason","setNoBillReason","sewerConnection","setSewerConnection","meterDetails","meterStatusOptions","workingStatusOptions","LocationIcon2","EditIcon","ReviewCard","onEdit","editLabel","rows","borderBottom","wordBreak","isModified","Review","_getSavedData","_getSavedData2","_propertyDetails$conn3","_propertyDetails$conn4","_propertyDetails$conn5","_propertyDetails$conn6","_propertyDetails$user2","_propertyDetails$user3","_propertyDetails$noOf2","_propertyDetails$noOf3","_meterDetails$meterSt2","_meterDetails$meterSt3","_meterDetails$working2","_meterDetails$working3","_meterDetails$lastBil2","_meterDetails$lastBil3","_meterDetails$sewerCo2","_meterDetails$sewerCo3","_meterDetails$connect3","_meterDetails$connect4","_meterDetails$connect5","_meterDetails$connect6","isFieldModified","currentVal","initialVal","isMutationLoading","useEkycApplicationUpdate","isSubmitting","dataUrlToFile","dataUrl","filename","arr","mime","match","bstr","atob","n","u8arr","Uint8Array","charCodeAt","File","_temp9","_Digit$UserService$ge","_temp8","_propertyDetails$user","_propertyDetails$noOf","_propertyDetails$conn","_propertyDetails$conn2","_meterDetails$meterSt","_meterDetails$working","_meterDetails$lastBil","_meterDetails$sewerCo","_meterDetails$connect","_meterDetails$connect2","requestBody","updateType","propertyDocFileStoreId","buildingImageFileStoreId","parseInt","modifiedBy","userInfo","meterWorkingStatus","meterImageFileStoreId","_err$response","_err$response$data","_err$response$data$Er","_err$response$data$Er2","meterFile","_uploadFile4","doorFile","_uploadFile3","photoFile","_uploadFile2","UserService","getUser","_temp7","_uploadFile","handleEditAadhaar","handleEditAddress","handleEditProperty","handleEditMeter","EmployeeApp","getBreadcrumbLabel","pathname","breadcrumbs","AppContainer","ModuleHeader","leftContent","ArrowLeft","onLeftClick","window","back","Switch","PrivateRoute","component","CitizenApp","EkycModule","stateCode","tenants","language","StoreData","getCurrentLanguage","store","Services","useStore","SessionStorage","set","EkycLinks","matchPath","i18nKey","CitizenHomeCard","header","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/pages/employee/Dashboard.js","../src/components/DesktopInbox.js","../src/components/SearchConsumer.js","../src/components/MobileInbox.js","../src/components/Filter.js","../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/pages/employee/Review.js","../../../../node_modules/react-query/es/react/QueryClientProvider.js","../src/pages/employee/AadhaarVerification.js","../src/config/config.js","../src/pages/employee/EKYCForm.js","../src/pages/employee/index.js","../src/pages/employee/AddressDetails.js","../src/pages/employee/PropertyInfo.js","../src/pages/employee/MeterDetails.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(\"EKYC_MAPPING\"),\n link: `/digit-ui/employee/ekyc/mapping`,\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 const rejected = countData?.rejected || 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\") ||\n \"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\">\n {t(\"EKYC_TOTAL_APPLICATIONS\") || \"Total Applications Processed\"}\n </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\">\n {t(\"EKYC_VERIFICATION_LIFECYCLE\") || \"Verification lifecycle distribution\"}\n </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\n className=\"indicator-dot\"\n style={{ background: item.color }}\n />\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\">\n {t(\"EKYC_PLATFORM_EFFICIENCY\") || \"Platform operational efficiency\"}\n </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;","import React, { useMemo } from \"react\";\nimport StatusCards from \"../../components/StatusCards\";\nimport { Card, Loader } from \"@djb25/digit-ui-react-components\";\n\n// Mock data removed in favor of API integration\n\nconst Dashboard = ({ parentRoute, businessService = \"EKYC\", initialStates = {}, filterComponent, isInbox }) => {\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>\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_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 || [];\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","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\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 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_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\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, Tooltip, 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 {/* K NUMBER */}\n <span className=\"mobile-input\">\n <Label className=\"flex-roww flex-gap-2\">\n {t(\"EKYC_K_NUMBER\") || \"K Number\"}\n <Tooltip message={t(\"EKYC_K_NUMBER_MESSAGE\")} />\n </Label>\n\n <Controller\n name=\"kNumber\"\n control={controlSearchForm}\n defaultValue=\"\"\n rules={{\n pattern: {\n value: /^[a-zA-Z0-9-_/]*$/,\n message: t(\"ERR_INVALID_APPLICATION_NO\"),\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 <Tooltip 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 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, useMemo } from \"react\";\nimport { Card, Dropdown, Toast, Table } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\n\n// ─── Icons ────────────────────────────────────────────────────────────────────\n\nconst UserIcon = ({ size = 18, color = \"currentColor\" }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke={color} 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);\n\nconst DiaryIcon = ({ size = 18, color = \"currentColor\" }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke={color} strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <path d=\"M4 19.5A2.5 2.5 0 0 1 6.5 17H20\" />\n <path d=\"M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z\" />\n </svg>\n);\n\nconst TrashIcon = ({ size = 14 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <polyline points=\"3 6 5 6 21 6\" />\n <path d=\"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2\" />\n </svg>\n);\n\nconst EditIcon = ({ size = 14 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\" />\n <path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\" />\n </svg>\n);\n\nconst MapPinIcon = ({ size = 12 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <path d=\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z\" />\n <circle cx=\"12\" cy=\"10\" r=\"3\" />\n </svg>\n);\n\nconst PlusIcon = ({ size = 16 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\" />\n <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\" />\n </svg>\n);\n\nconst SaveIcon = ({ size = 16 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <path d=\"M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z\" />\n <polyline points=\"17 21 17 13 7 13 7 21\" />\n <polyline points=\"7 3 7 8 15 8\" />\n </svg>\n);\n\nconst CheckIcon = ({ size = 16 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <polyline points=\"20 6 9 17 4 12\" />\n </svg>\n);\n\nconst XIcon = ({ size = 16 }) => (\n <svg width={size} height={size} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\" />\n <line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\" />\n </svg>\n);\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// ─── Confirm Delete Modal ─────────────────────────────────────────────────────\n\nconst ConfirmDeleteModal = ({ mapping, onConfirm, onCancel }) => (\n <div style={{\n position: \"fixed\", inset: 0, background: \"rgba(0,0,0,0.35)\",\n display: \"flex\", alignItems: \"center\", justifyContent: \"center\", zIndex: 1000,\n }}>\n <div style={{\n background: \"#fff\", borderRadius: \"12px\", padding: \"28px 28px 24px\",\n width: \"400px\", boxShadow: \"0 20px 60px rgba(0,0,0,0.15)\",\n }}>\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"12px\", marginBottom: \"16px\" }}>\n <div style={{\n width: \"40px\", height: \"40px\", borderRadius: \"50%\",\n background: \"#FEF3F2\", display: \"flex\", alignItems: \"center\", justifyContent: \"center\",\n }}>\n <TrashIcon size={18} />\n </div>\n <div>\n <div style={{ fontWeight: \"700\", fontSize: \"16px\", color: \"#0D1B2A\" }}>Remove Mapping</div>\n <div style={{ fontSize: \"12px\", color: \"#6B7B8E\" }}>This action cannot be undone</div>\n </div>\n </div>\n <p style={{ fontSize: \"13px\", color: \"#344054\", marginBottom: \"24px\", lineHeight: \"1.6\" }}>\n Are you sure you want to remove the mapping between{\" \"}\n <strong>{mapping?.surveyorName}</strong> and <strong>{mapping?.mrdName}</strong>?\n </p>\n <div style={{ display: \"flex\", gap: \"10px\", justifyContent: \"flex-end\" }}>\n <button onClick={onCancel} style={{\n background: \"none\", border: \"1px solid #D0D5DD\", borderRadius: \"8px\",\n padding: \"8px 20px\", fontWeight: \"600\", fontSize: \"13px\",\n color: \"#344054\", cursor: \"pointer\",\n }}>Cancel</button>\n <button onClick={onConfirm} style={{\n background: \"#B42318\", border: \"none\", borderRadius: \"8px\",\n padding: \"8px 20px\", fontWeight: \"600\", fontSize: \"13px\",\n color: \"#fff\", cursor: \"pointer\",\n display: \"flex\", alignItems: \"center\", gap: \"6px\",\n }}>\n <TrashIcon size={13} /> Remove\n </button>\n </div>\n </div>\n </div>\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 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: \"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: \"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: \"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: \"info\", 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 <div style={{ minWidth: \"180px\" }}>\n <Dropdown\n selected={editSurveyor}\n select={setEditSurveyor}\n option={MOCK_SURVEYORS}\n optionKey=\"name\"\n t={t}\n placeholder=\"Choose surveyor...\"\n />\n </div>\n );\n }\n return (\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"10px\" }}>\n <div style={{\n width: \"32px\", height: \"32px\", borderRadius: \"50%\",\n background: \"#EEF4FB\", display: \"flex\", alignItems: \"center\", justifyContent: \"center\", flexShrink: 0,\n }}>\n <UserIcon size={15} color=\"#3A7BD5\" />\n </div>\n <div>\n <div style={{ fontWeight: \"600\", fontSize: \"13px\", color: \"#0D1B2A\" }}>{row.original.surveyorName}</div>\n <div style={{ fontSize: \"11px\", color: \"#6B7B8E\" }}>ID: {row.original.surveyorId}</div>\n </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 <div style={{ minWidth: \"200px\" }}>\n <Dropdown\n selected={editMRD}\n select={setEditMRD}\n option={MOCK_MRDS}\n optionKey=\"name\"\n t={t}\n placeholder=\"Choose MRD...\"\n />\n </div>\n );\n }\n return (\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"10px\" }}>\n <div style={{\n width: \"32px\", height: \"32px\", borderRadius: \"50%\",\n background: \"#EEF4FB\", display: \"flex\", alignItems: \"center\", justifyContent: \"center\", flexShrink: 0,\n }}>\n <DiaryIcon size={15} color=\"#3A7BD5\" />\n </div>\n <div>\n <div style={{ fontWeight: \"600\", fontSize: \"13px\", color: \"#0D1B2A\" }}>{row.original.mrdName}</div>\n <div style={{ fontSize: \"11px\", color: \"#3A7BD5\", display: \"flex\", alignItems: \"center\", gap: \"3px\" }}>\n <MapPinIcon size={10} /> {row.original.zone}\n </div>\n </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: \"8px\" }}>\n <button\n onClick={() => handleEditSave(row.original.id)}\n style={{\n display: \"flex\", alignItems: \"center\", gap: \"5px\",\n background: \"#3A7BD5\", color: \"#fff\",\n border: \"none\", borderRadius: \"6px\",\n padding: \"6px 12px\", fontWeight: \"600\",\n fontSize: \"12px\", cursor: \"pointer\",\n }}\n >\n <CheckIcon size={13} /> Save\n </button>\n <button\n onClick={handleEditCancel}\n style={{\n display: \"flex\", alignItems: \"center\", gap: \"5px\",\n background: \"none\", border: \"1px solid #D0D5DD\",\n borderRadius: \"6px\", padding: \"6px 12px\",\n fontWeight: \"600\", fontSize: \"12px\",\n color: \"#344054\", cursor: \"pointer\",\n }}\n >\n <XIcon size={13} /> Cancel\n </button>\n </div>\n );\n }\n return (\n <div style={{ display: \"flex\", gap: \"8px\" }}>\n <button\n onClick={() => handleEditStart(row.original)}\n style={{\n display: \"flex\", alignItems: \"center\", gap: \"5px\",\n background: \"none\", border: \"1px solid #D0D5DD\",\n borderRadius: \"6px\", padding: \"6px 12px\",\n color: \"#344054\", fontSize: \"12px\",\n fontWeight: \"600\", cursor: \"pointer\",\n }}\n >\n <EditIcon size={13} /> Edit\n </button>\n <button\n onClick={() => setDeleteTarget(row.original)}\n style={{\n display: \"flex\", alignItems: \"center\", gap: \"5px\",\n background: \"none\", border: \"1px solid #FECDCA\",\n borderRadius: \"6px\", padding: \"6px 12px\",\n color: \"#B42318\", fontSize: \"12px\",\n fontWeight: \"600\", cursor: \"pointer\",\n }}\n >\n <TrashIcon size={13} /> Remove\n </button>\n </div>\n );\n },\n },\n ], [editingId, editSurveyor, editMRD, mappings, t]);\n\n // ── Render ────────────────────────────────────────────────────────────────\n\n return (\n <div style={{ background: \"#F5F7FA\", minHeight: \"100vh\", padding: \"0\" }}>\n\n {/* Page Header Bar */}\n <Card style={{\n display: \"flex\", alignItems: \"center\", justifyContent: \"space-between\",\n padding: \"16px 24px\", marginBottom: \"0\", borderRadius: \"4px\",\n }}>\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"12px\" }}>\n <div style={{ color: \"#3A8DCC\" }}>\n <DiaryIcon size={24} />\n </div>\n <div style={{ fontWeight: \"700\", fontSize: \"18px\", color: \"#0B0C0C\" }}>\n {t(\"EKYC_SURVEYOR_MAPPING\") || \"Surveyor Mapping\"}\n </div>\n </div>\n <button\n onClick={handleSaveMappings}\n disabled={mappings.length === 0}\n style={{\n display: \"flex\", alignItems: \"center\", gap: \"8px\",\n background: mappings.length === 0 ? \"#D0D5DD\" : \"#0F3460\",\n color: \"#fff\", border: \"none\", borderRadius: \"8px\",\n padding: \"10px 20px\", fontWeight: \"600\", fontSize: \"14px\",\n cursor: mappings.length === 0 ? \"not-allowed\" : \"pointer\",\n transition: \"background 0.2s\",\n }}\n >\n <SaveIcon size={15} />\n {t(\"EKYC_SAVE_MAPPINGS\") || \"Save Mappings\"}\n </button>\n </Card>\n\n {/* Content */}\n <div style={{ padding: \"24px 32px\" }}>\n <p style={{ fontSize: \"13px\", color: \"#6B7B8E\", marginBottom: \"24px\", marginTop: \"0\" }}>\n {t(\"EKYC_MAPPING_SUBHEADER\") || \"Assign Meter Reading Dairies to surveyors to manage their data access.\"}\n </p>\n\n <div style={{ display: \"grid\", gridTemplateColumns: \"360px 1fr\", gap: \"20px\", alignItems: \"start\" }}>\n\n {/* ── Left: New Mapping Panel ── */}\n <div style={{\n background: \"#fff\", borderRadius: \"12px\",\n border: \"1px solid #E5E9EF\", overflow: \"hidden\",\n }}>\n {/* Header */}\n <div style={{\n display: \"flex\", alignItems: \"center\", gap: \"10px\",\n padding: \"16px 20px\", borderBottom: \"1px solid #F0F2F5\", background: \"#FAFBFC\",\n }}>\n <div style={{\n width: \"32px\", height: \"32px\", borderRadius: \"8px\",\n background: \"#EEF4FB\", display: \"flex\", alignItems: \"center\", justifyContent: \"center\",\n }}>\n <DiaryIcon size={16} color=\"#3A7BD5\" />\n </div>\n <span style={{ fontWeight: \"700\", fontSize: \"15px\", color: \"#0D1B2A\" }}>\n {t(\"EKYC_NEW_MAPPING\") || \"New Mapping\"}\n </span>\n </div>\n\n {/* Body */}\n <div style={{ padding: \"20px\" }}>\n {/* Surveyor */}\n <div style={{ marginBottom: \"16px\" }}>\n <label style={{\n display: \"flex\", alignItems: \"center\", gap: \"6px\",\n fontSize: \"11px\", fontWeight: \"700\", letterSpacing: \"0.06em\",\n color: \"#3A7BD5\", textTransform: \"uppercase\", marginBottom: \"8px\",\n }}>\n <UserIcon size={12} color=\"#3A7BD5\" />\n {t(\"EKYC_SELECT_SURVEYOR\") || \"Select Surveyor\"}\n </label>\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\n {/* MRD */}\n <div style={{ marginBottom: \"16px\" }}>\n <label style={{\n display: \"flex\", alignItems: \"center\", gap: \"6px\",\n fontSize: \"11px\", fontWeight: \"700\", letterSpacing: \"0.06em\",\n color: \"#3A7BD5\", textTransform: \"uppercase\", marginBottom: \"8px\",\n }}>\n <DiaryIcon size={12} color=\"#3A7BD5\" />\n {t(\"EKYC_SELECT_MRD\") || \"Select MRD\"}\n </label>\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\n {/* MRD Info Preview */}\n {selectedMRD && (\n <div style={{\n background: \"#EEF4FB\", borderLeft: \"3px solid #3A7BD5\",\n borderRadius: \"6px\", padding: \"10px 14px\",\n fontSize: \"12px\", color: \"#0D1B2A\", marginBottom: \"16px\",\n display: \"flex\", alignItems: \"center\", gap: \"8px\",\n }}>\n <MapPinIcon size={13} />\n <span><strong>{selectedMRD.name}</strong> — {selectedMRD.zone} Zone</span>\n </div>\n )}\n\n {/* Surveyor Preview */}\n {selectedSurveyor && (\n <div style={{\n background: \"#F5F7FA\", borderLeft: \"3px solid #6B7B8E\",\n borderRadius: \"6px\", padding: \"10px 14px\",\n fontSize: \"12px\", color: \"#0D1B2A\", marginBottom: \"16px\",\n display: \"flex\", alignItems: \"center\", gap: \"8px\",\n }}>\n <UserIcon size={13} color=\"#6B7B8E\" />\n <span><strong>{selectedSurveyor.name}</strong> — {selectedSurveyor.id}</span>\n </div>\n )}\n\n {/* Add Button */}\n <button\n onClick={handleAddMapping}\n disabled={!selectedSurveyor || !selectedMRD}\n style={{\n width: \"100%\",\n display: \"flex\", alignItems: \"center\", justifyContent: \"center\", gap: \"8px\",\n background: (!selectedSurveyor || !selectedMRD) ? \"#D0D5DD\" : \"#3A7BD5\",\n color: \"#fff\", border: \"none\", borderRadius: \"8px\",\n padding: \"12px\", fontWeight: \"600\", fontSize: \"14px\",\n cursor: (!selectedSurveyor || !selectedMRD) ? \"not-allowed\" : \"pointer\",\n marginTop: \"4px\", transition: \"background 0.2s\",\n }}\n >\n <PlusIcon size={16} />\n {t(\"EKYC_ADD_TO_LIST\") || \"Add to Mapping List\"}\n </button>\n </div>\n\n {/* Stats Footer */}\n {mappings.length > 0 && (\n <div style={{\n padding: \"12px 20px\", borderTop: \"1px solid #F0F2F5\",\n background: \"#FAFBFC\", display: \"flex\", gap: \"16px\",\n }}>\n <div style={{ textAlign: \"center\", flex: 1 }}>\n <div style={{ fontSize: \"20px\", fontWeight: \"700\", color: \"#0F3460\" }}>\n {mappings.length}\n </div>\n <div style={{ fontSize: \"11px\", color: \"#6B7B8E\" }}>Total Mappings</div>\n </div>\n <div style={{ width: \"1px\", background: \"#E5E9EF\" }} />\n <div style={{ textAlign: \"center\", flex: 1 }}>\n <div style={{ fontSize: \"20px\", fontWeight: \"700\", color: \"#0F3460\" }}>\n {[...new Set(mappings.map(m => m.surveyorId))].length}\n </div>\n <div style={{ fontSize: \"11px\", color: \"#6B7B8E\" }}>Surveyors</div>\n </div>\n <div style={{ width: \"1px\", background: \"#E5E9EF\" }} />\n <div style={{ textAlign: \"center\", flex: 1 }}>\n <div style={{ fontSize: \"20px\", fontWeight: \"700\", color: \"#0F3460\" }}>\n {[...new Set(mappings.map(m => m.mrdCode))].length}\n </div>\n <div style={{ fontSize: \"11px\", color: \"#6B7B8E\" }}>MRDs</div>\n </div>\n </div>\n )}\n </div>\n\n {/* ── Right: Summary Table Panel ── */}\n <div style={{\n background: \"#fff\", borderRadius: \"12px\",\n border: \"1px solid #E5E9EF\", overflow: \"hidden\", minHeight: \"420px\",\n }}>\n {/* Header */}\n <div style={{\n display: \"flex\", alignItems: \"center\", justifyContent: \"space-between\",\n padding: \"16px 20px\", borderBottom: \"1px solid #F0F2F5\", background: \"#FAFBFC\",\n }}>\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"10px\" }}>\n <div style={{\n width: \"32px\", height: \"32px\", borderRadius: \"8px\",\n background: \"#EEF4FB\", display: \"flex\", alignItems: \"center\", justifyContent: \"center\",\n }}>\n <UserIcon size={16} color=\"#3A7BD5\" />\n </div>\n <span style={{ fontWeight: \"700\", fontSize: \"15px\", color: \"#0D1B2A\" }}>\n {t(\"EKYC_MAPPING_SUMMARY\") || \"Mapping Summary\"}\n </span>\n </div>\n <span style={{\n background: mappings.length > 0 ? \"#0F3460\" : \"#E5E9EF\",\n color: mappings.length > 0 ? \"#fff\" : \"#6B7B8E\",\n fontSize: \"12px\", fontWeight: \"700\",\n padding: \"3px 10px\", borderRadius: \"20px\",\n }}>\n {mappings.length} {t(\"EKYC_ITEMS\") || \"items\"}\n </span>\n </div>\n\n {/* Body */}\n <div style={{ padding: \"20px\" }}>\n {mappings.length > 0 ? (\n <div style={{ border: \"1px solid #E5E9EF\", borderRadius: \"8px\", overflow: \"hidden\" }}>\n <Table\n t={t}\n data={mappings}\n columns={columns}\n getCellProps={() => ({})}\n tableClassName=\"digit-table\"\n />\n </div>\n ) : (\n <div style={{\n display: \"flex\", flexDirection: \"column\",\n alignItems: \"center\", justifyContent: \"center\",\n minHeight: \"320px\", textAlign: \"center\",\n }}>\n <div style={{ marginBottom: \"16px\", opacity: 0.2 }}>\n <DiaryIcon size={56} color=\"#0F3460\" />\n </div>\n <div style={{ fontSize: \"15px\", fontWeight: \"700\", color: \"#0D1B2A\", marginBottom: \"6px\" }}>\n {t(\"EKYC_NO_MAPPINGS\") || \"No Mappings Created Yet\"}\n </div>\n <div style={{ fontSize: \"13px\", color: \"#6B7B8E\" }}>\n {t(\"EKYC_NO_MAPPINGS_HINT\") || \"Select a surveyor and MRD on the left to get started.\"}\n </div>\n </div>\n )}\n </div>\n </div>\n </div>\n </div>\n\n {/* Delete Confirm Modal */}\n {deleteTarget && (\n <ConfirmDeleteModal\n mapping={deleteTarget}\n onConfirm={handleDeleteConfirm}\n onCancel={() => setDeleteTarget(null)}\n />\n )}\n\n {/* Toast */}\n {toast && (\n <Toast\n label={toast.message}\n error={toast.type === \"error\"}\n warning={toast.type === \"warning\"}\n isDsc={true}\n onClose={() => setToast(null)}\n />\n )}\n </div>\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, { useState, Fragment, useEffect } from \"react\";\nimport {\n Card,\n CardHeader,\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 } from \"react-router-dom\";\n\n// ─── Constants ───────────────────────────────────────────────────────────────\n\nconst ActionButton = ({ jumpTo, state }) => {\n const { t } = useTranslation();\n const history = useHistory();\n function routeTo() {\n history.push(jumpTo, { ...state, isEditing: true });\n }\n return (\n <LinkButton\n label={<EditIcon style={{ marginTop: \"-30px\", float: \"right\", position: \"relative\", bottom: \"32px\" }} />}\n className=\"check-page-link-button\"\n onClick={routeTo}\n />\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 return \"N/A\";\n};\n\n/**\n * Robust data extraction based on the screenshot provided.\n * The API returns { applicationReview: { newData: { ...flatFields } } }\n */\nconst extractActiveData = (searchData, flowState) => {\n const rawData = (searchData && Object.keys(searchData).length > 0) ? searchData : flowState?.reviewData || {};\n\n // Navigate through applicationReview -> newData\n const reviewWrapper = rawData?.applicationReview || rawData;\n const applicationData = (Array.isArray(reviewWrapper) ? reviewWrapper[0] : reviewWrapper) || {};\n return applicationData?.newData || applicationData;\n};\n\nconst Review = () => {\n const { t } = useTranslation();\n const history = useHistory();\n const location = useLocation();\n\n const [agree, setAgree] = useState(false);\n const [isSubmitting, setIsSubmitting] = useState(false);\n\n const flowState = location.state || {};\n const { kNumber, kno, edits = {} } = flowState;\n const activeKno = kNumber || kno;\n\n const { aadhaarData = {}, addressDetails: editedAddress = {}, propertyDetails: editedProperty = {}, meterDetails: editedMeter = {} } = edits;\n\n const tenantId = Digit.ULBService.getCurrentTenantId();\n\n const { data: searchData, isLoading: isSearchLoading } = Digit.Hooks.ekyc.useEkycSearchReview(\n { kno: activeKno, fetchType: \"REVIEW\" },\n tenantId,\n { enabled: !!activeKno }\n );\n\n // ── Data Consolidation ──────────────────────────────────────────────────\n const activeData = extractActiveData(searchData, flowState);\n\n // Support both structured (connectionDetails.x) and flat (x) formats\n const apiConn = activeData?.connectionDetails || activeData || {};\n const apiAddr = activeData?.addressDetails || activeData || {};\n const apiProp = activeData?.propertyInfo || activeData || {};\n const apiMeter = activeData?.meterDetails || activeData || {};\n\n const connectionData = {\n consumerName: aadhaarData?.name || apiConn?.consumerName,\n address: apiConn?.address || apiConn?.addressRaw,\n connectionType: apiConn?.connectionType || apiConn?.connectionCategory,\n meterNumber: apiConn?.meterNumber || apiConn?.meterNo,\n phoneNumber: aadhaarData?.mobileNumber || apiConn?.phoneNumber || apiConn?.mobileNo,\n email: apiConn?.email,\n statusflag: apiConn?.statusflag || apiConn?.statusFlag,\n ekycStatus: apiConn?.ekycStatus,\n knumber: apiConn?.knumber || apiConn?.kno || activeKno,\n };\n\n const addressData = {\n fullAddress: editedAddress?.fullAddress || apiAddr?.fullAddress || apiAddr?.addressRaw,\n flatHouseNumber: editedAddress?.flatHouseNumber || editedAddress?.flatNo || apiAddr?.flatHouseNumber,\n buildingTower: editedAddress?.buildingTower || editedAddress?.building || apiAddr?.buildingTower,\n landmark: editedAddress?.landmark || apiAddr?.landmark,\n pinCode: editedAddress?.pinCode || editedAddress?.pincode || apiAddr?.pinCode || apiAddr?.pincode,\n ward: editedAddress?.ward || apiAddr?.ward || apiAddr?.locality,\n assembly: editedAddress?.assembly || apiAddr?.assembly,\n gpsValid: editedAddress?.gpsValid !== undefined ? editedAddress.gpsValid : apiAddr?.gpsValid,\n latitude: editedAddress?.latitude || apiAddr?.latitude,\n longitude: editedAddress?.longitude || apiAddr?.longitude,\n mobileNo: editedAddress?.mobileNo || aadhaarData?.mobileNumber || apiAddr?.mobileNo,\n whatsappNo: editedAddress?.whatsappNo || aadhaarData?.whatsappNumber || apiAddr?.whatsappNo,\n email: editedAddress?.email || apiAddr?.email,\n noOfPerson: editedAddress?.noOfPerson || aadhaarData?.noOfPersons || apiAddr?.noOfPerson,\n knumber: editedAddress?.knumber || apiAddr?.knumber || apiAddr?.kno || activeKno,\n doorPhotoFilestoreId: editedAddress?.doorPhotoFileStoreId || apiAddr?.doorPhotoFilestoreId,\n };\n\n const propertyData = {\n kno: apiProp?.kno || activeKno,\n pidNumber: editedProperty?.pidNumber || apiProp?.pidNumber,\n typeOfConnection: editedProperty?.connectionTypeData?.label || apiProp?.typeOfConnection,\n connectionCategory: editedProperty?.connectionCategoryData?.label || apiProp?.connectionCategory,\n userType: editedProperty?.userTypeData?.label || apiProp?.userType,\n numberOfFloors: editedProperty?.noOfFloorsData?.label || apiProp?.numberOfFloors,\n tenantName: apiProp?.tenantName,\n tenantMobile: apiProp?.tenantMobile,\n ekycStatus: apiProp?.ekycStatus,\n propertyDocumentFileStoreId: editedProperty?.propertyDocumentFileStoreId || apiProp?.propertyDocumentFileStoreId,\n buildingImageFileStoreId: apiProp?.buildingImageFileStoreId,\n };\n\n const meterData = {\n kno: editedMeter?.kno || apiMeter?.kno || activeKno,\n metered: editedMeter?.meterStatusData?.value === \"Metered\" || apiMeter?.metered,\n meterNumber: apiMeter?.meterNumber || apiMeter?.meterNo,\n meterMake: editedMeter?.meterMake || apiMeter?.meterMake,\n meterLocationAddress: editedMeter?.meterLocation || apiMeter?.meterLocationAddress,\n meterLatitude: apiMeter?.meterLatitude,\n meterLongitude: apiMeter?.meterLongitude,\n workingStatus: editedMeter?.workingStatusData?.value === \"Working\" || apiMeter?.workingStatus,\n lastBillRaised: editedMeter?.lastBillRaisedData?.value === \"Yes\" || apiMeter?.lastBillRaised,\n systemMeterId: apiMeter?.systemMeterId,\n meterPhotoFileStoreId: editedMeter?.meterPhotoFileStoreId || apiMeter?.meterPhotoFileStoreId,\n };\n\n const handleDeclaration = () => setAgree(!agree);\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 Digit.EkycService.application_update(payload, tenantId);\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 if (isSearchLoading || isSubmitting) return <Loader />;\n\n const baseUrl = \"/digit-ui/employee/ekyc\";\n\n return (\n <div className=\"review-container\">\n <Card>\n {/* ── Header ───────────────────────────────────────────────────── */}\n <div style={{ display: \"flex\", justifyContent: \"space-between\", alignItems: \"center\", marginBottom: \"20px\" }}>\n <CardHeader style={{ margin: 0 }}>{t(\"EKYC_REVIEW_APPLICATION\")}</CardHeader>\n <div style={{\n background: \"#F9FAFB\", border: \"0.5px solid #EAECF0\",\n borderRadius: \"20px\", padding: \"4px 14px\",\n fontSize: \"12px\", color: \"#667085\",\n }}>\n {t(\"EKYC_K_NUMBER\")}: <span style={{ color: \"#0B0C0C\", fontWeight: \"600\" }}>{activeKno}</span>\n </div>\n </div>\n\n {/* ── 1. Connection Details ────────────────────────────────────── */}\n <CardSubHeader>{t(\"EKYC_CONNECTION_DETAILS\")}</CardSubHeader>\n <StatusTable style={{ marginTop: \"20px\", marginBottom: \"30px\" }}>\n <Row label={t(\"EKYC_K_NUMBER\")} text={checkForNA(connectionData.knumber)} />\n <Row label={t(\"EKYC_CONSUMER_NAME\")} text={checkForNA(connectionData.consumerName)} />\n <Row label={t(\"EKYC_ADDRESS\")} text={checkForNA(connectionData.address)} />\n <Row label={t(\"EKYC_CONNECTION_TYPE\")} text={checkForNA(connectionData.connectionType)} />\n <Row label={t(\"EKYC_METER_NO\")} text={checkForNA(connectionData.meterNumber)} />\n <Row label={t(\"EKYC_MOBILE_NO\")} text={checkForNA(connectionData.phoneNumber)} />\n <Row label={t(\"EKYC_EMAIL\")} text={checkForNA(connectionData.email)} />\n <Row label={t(\"EKYC_STATUS_FLAG\")} text={checkForNA(connectionData.statusflag)} />\n <Row label={t(\"EKYC_STATUS\")} text={checkForNA(connectionData.ekycStatus)} />\n </StatusTable>\n\n {/* ── 2. Address Details ──────────────────────────────────────── */}\n <CardSubHeader>{t(\"EKYC_ADDRESS_DETAILS\")}</CardSubHeader>\n <StatusTable style={{ marginTop: \"20px\", marginBottom: \"30px\" }}>\n <Row\n label={t(\"EKYC_FULL_ADDRESS\")}\n text={checkForNA(addressData.fullAddress)}\n actionButton={<ActionButton jumpTo={`${baseUrl}/address-details`} state={{ ...flowState, reviewData: searchData, edits }} />}\n />\n <Row label={t(\"EKYC_FLAT_HOUSE_NO\")} text={checkForNA(addressData.flatHouseNumber)} />\n <Row label={t(\"EKYC_BUILDING_TOWER\")} text={checkForNA(addressData.buildingTower)} />\n <Row label={t(\"EKYC_LANDMARK\")} text={checkForNA(addressData.landmark)} />\n <Row label={t(\"EKYC_PINCODE\")} text={checkForNA(addressData.pinCode)} />\n <Row label={t(\"EKYC_LOCALITY\")} text={checkForNA(addressData.ward)} />\n <Row label={t(\"EKYC_ASSEMBLY\")} text={checkForNA(addressData.assembly)} />\n <Row label={t(\"EKYC_GPS_VALID\")} text={boolToYesNo(addressData.gpsValid, t)} />\n <Row label={t(\"EKYC_LATITUDE\")} text={checkForNA(addressData.latitude)} />\n <Row label={t(\"EKYC_LONGITUDE\")} text={checkForNA(addressData.longitude)} />\n <Row label={t(\"EKYC_MOBILE_NO\")} text={checkForNA(addressData.mobileNo)} />\n <Row label={t(\"EKYC_WHATSAPP_NO\")} text={checkForNA(addressData.whatsappNo)} />\n <Row label={t(\"EKYC_EMAIL\")} text={checkForNA(addressData.email)} />\n <Row label={t(\"EKYC_NO_OF_PERSONS\")} text={checkForNA(addressData.noOfPerson)} />\n <Row label={t(\"EKYC_K_NUMBER\")} text={checkForNA(addressData.knumber)} />\n </StatusTable>\n\n {/* ── 3. Property Info ────────────────────────────────────────── */}\n <CardSubHeader>{t(\"EKYC_PROPERTY_INFO\")}</CardSubHeader>\n <StatusTable style={{ marginTop: \"20px\", marginBottom: \"30px\" }}>\n <Row\n label={t(\"EKYC_CONNECTION_CATEGORY\")}\n text={checkForNA(propertyData.connectionCategory)}\n actionButton={<ActionButton jumpTo={`${baseUrl}/property-info`} state={{ ...flowState, reviewData: searchData, edits }} />}\n />\n {/* <Row label={t(\"EKYC_KNO\")} text={checkForNA(propertyData.kno)} /> */}\n <Row label={t(\"EKYC_PID_NUMBER\")} text={checkForNA(propertyData.pidNumber)} />\n <Row label={t(\"EKYC_TYPE_OF_CONNECTION\")} text={checkForNA(propertyData.typeOfConnection)} />\n <Row label={t(\"EKYC_USER_TYPE\")} text={checkForNA(propertyData.userType)} />\n <Row label={t(\"EKYC_FLOOR_COUNT\")} text={checkForNA(propertyData.numberOfFloors)} />\n <Row label={t(\"EKYC_TENANT_NAME\")} text={checkForNA(propertyData.tenantName)} />\n <Row label={t(\"EKYC_TENANT_MOBILE\")} text={checkForNA(propertyData.tenantMobile)} />\n <Row label={t(\"EKYC_STATUS\")} text={checkForNA(propertyData.ekycStatus)} />\n </StatusTable>\n\n {/* ── 4. Meter Details ────────────────────────────────────────── */}\n <CardSubHeader>{t(\"EKYC_METER_DETAILS\")}</CardSubHeader>\n <StatusTable style={{ marginTop: \"20px\", marginBottom: \"30px\" }}>\n <Row\n label={t(\"EKYC_METERED\")}\n text={boolToYesNo(meterData.metered, t)}\n actionButton={<ActionButton jumpTo={`${baseUrl}/meter-details`} state={{ ...flowState, reviewData: searchData, edits }} />}\n />\n {/* <Row label={t(\"EKYC_KNO\")} text={checkForNA(meterData.kno)} /> */}\n <Row label={t(\"EKYC_METER_NO\")} text={checkForNA(meterData.meterNumber)} />\n <Row label={t(\"EKYC_METER_MAKE\")} text={checkForNA(meterData.meterMake)} />\n <Row label={t(\"EKYC_METER_LOCATION_ADDRESS\")} text={checkForNA(meterData.meterLocationAddress)} />\n <Row label={t(\"EKYC_METER_LATITUDE\")} text={checkForNA(meterData.meterLatitude)} />\n <Row label={t(\"EKYC_METER_LONGITUDE\")} text={checkForNA(meterData.meterLongitude)} />\n <Row label={t(\"EKYC_WORKING_STATUS\")} text={boolToYesNo(meterData.workingStatus, t)} />\n <Row label={t(\"EKYC_LAST_BILL_RAISED\")} text={boolToYesNo(meterData.lastBillRaised, t)} />\n <Row label={t(\"EKYC_SYSTEM_METER_ID\")} text={checkForNA(meterData.systemMeterId)} />\n </StatusTable>\n\n {/* ── 5. Documents ────────────────────────────────────────────── */}\n <CardSubHeader>{t(\"EKYC_DOCUMENTS\")}</CardSubHeader>\n <StatusTable style={{ marginTop: \"20px\", marginBottom: \"30px\" }}>\n <Row\n label={t(\"EKYC_DOOR_PHOTO\")}\n text={addressData.doorPhotoFilestoreId ? t(\"EKYC_PHOTO_AVAILABLE\") : t(\"CS_NA\")}\n actionButton={addressData.doorPhotoFilestoreId && <GenericFileIcon style={{ cursor: \"pointer\" }} />}\n />\n <Row\n label={t(\"EKYC_METER_PHOTO\")}\n text={meterData.meterPhotoFileStoreId ? t(\"EKYC_PHOTO_AVAILABLE\") : t(\"CS_NA\")}\n actionButton={meterData.meterPhotoFileStoreId && <GenericFileIcon style={{ cursor: \"pointer\" }} />}\n />\n <Row\n label={t(\"EKYC_BUILDING_IMAGE\")}\n text={propertyData.buildingImageFileStoreId ? t(\"EKYC_PHOTO_AVAILABLE\") : t(\"CS_NA\")}\n actionButton={propertyData.buildingImageFileStoreId && <GenericFileIcon style={{ cursor: \"pointer\" }} />}\n />\n <Row\n label={t(\"EKYC_PROPERTY_DOCUMENTS\")}\n text={propertyData.propertyDocumentFileStoreId ? t(\"EKYC_DOCS_AVAILABLE\") : t(\"CS_NA\")}\n actionButton={propertyData.propertyDocumentFileStoreId && <GenericFileIcon style={{ cursor: \"pointer\" }} />}\n />\n </StatusTable>\n\n <CheckBox\n id=\"agreeDeclaration\"\n name=\"agreeDeclaration\"\n label={t(\"EKYC_FINAL_DECLARATION\")}\n onChange={handleDeclaration}\n checked={agree}\n style={{ marginTop: \"20px\" }}\n />\n </Card>\n\n <ActionBar style={{ position: \"static\", marginTop: \"24px\" }}>\n <SubmitBar\n label={t(\"EKYC_SUBMIT_APPLICATION\")}\n onSubmit={handleFinalSubmit}\n disabled={!agree}\n />\n </ActionBar>\n </div>\n );\n};\n\nexport default Review;","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};","// import React, { useState, Fragment, useEffect, useRef } from \"react\";\n// import {\n// Card,\n// CardLabel,\n// TextInput,\n// SubmitBar,\n// CardHeader,\n// RadioButtons,\n// ActionBar,\n// Loader,\n// FormStep,\n// } from \"@djb25/digit-ui-react-components\";\n// import { useTranslation } from \"react-i18next\";\n// import { useLocation, useHistory } from \"react-router-dom\";\n// import { getSavedData } from \"../../utils\";\n// import AddressDetails from \"./AddressDetails\";\n\n// const AadhaarVerification = ({ config, onSelect, formData, t: tProps }) => {\n// const { t } = useTranslation();\n// const location = useLocation();\n// const history = useHistory();\n// const addressSectionRef = useRef(null);\n\n// const flowState = location.state || {};\n// const { isEditing, kNumber } = flowState;\n\n// // Robust data extraction from formData\n// const activeEdits = formData || {};\n// const rawReviewData = formData?.reviewData || formData?.connectionDetails || {};\n// const reviewWrapper = rawReviewData?.applicationReview || rawReviewData;\n// const applicationData = (Array.isArray(reviewWrapper) ? reviewWrapper[0] : reviewWrapper) || {};\n// const apiData = applicationData?.newData || applicationData;\n// const apiConn = apiData?.connectionDetails || apiData || {};\n\n// const initialData = {\n// userName: apiConn.consumerName || \"\",\n// mobileNumber: apiConn.phoneNumber || apiConn.mobileNo || \"\",\n// whatsappNumber: apiConn.phoneNumber || apiConn.mobileNo || \"\",\n// email: apiConn.email || \"\",\n// noOfPersons: apiConn.noOfPerson || apiConn.noOfPersons || \"\",\n// };\n\n// const aadhaarData = activeEdits?.aadhaarData || {};\n\n// const [aadhaarNumber, setAadhaarNumber] = useState(aadhaarData.aadhaarNumber || \"\");\n// const [isAadhaarVerified, setIsAadhaarVerified] = useState(aadhaarData.isAadhaarVerified === true || isEditing); // Auto-verify if editing\n// const [showOtpField, setShowOtpField] = useState(false);\n// const [otp, setOtp] = useState(\"\");\n// const [otpError, setOtpError] = useState(false);\n// const [nameCorrect, setNameCorrect] = useState(aadhaarData.nameCorrect || { code: \"YES\", name: \"CORE_COMMON_YES\" });\n// const [userName, setUserName] = useState(aadhaarData.name || initialData.userName);\n// const [mobileChange, setMobileChange] = useState(aadhaarData.mobileChange || { code: \"YES\", name: \"CORE_COMMON_YES\" });\n// const [mobileNumber, setMobileNumber] = useState(aadhaarData.mobileNumber || initialData.mobileNumber);\n// const [whatsappNumber, setWhatsappNumber] = useState(aadhaarData.whatsappNumber || initialData.whatsappNumber);\n// const [email, setEmail] = useState(aadhaarData.email || initialData.email);\n// const [noOfPersons, setNoOfPersons] = useState(aadhaarData.noOfPersons || initialData.noOfPersons);\n// const [showAddressSection, setShowAddressSection] = useState(false);\n\n// const getUpdatedData = () => ({\n// aadhaarNumber,\n// isAadhaarVerified,\n// name: userName,\n// nameCorrect,\n// mobileChange,\n// mobileNumber,\n// whatsappNumber,\n// email,\n// noOfPersons,\n// gender: \"Male\",\n// dob: \"01/01/1990\",\n// });\n\n// const handleVerifyAadhaar = () => {\n// if (aadhaarNumber.length === 12) setShowOtpField(true);\n// };\n\n// const handleVerifyOtp = () => {\n// if (otp === \"123456\") {\n// setIsAadhaarVerified(true);\n// setShowOtpField(false);\n// setShowAddressSection(true);\n// if (onSelect) {\n// onSelect(config.key, { ...getUpdatedData(), isAadhaarVerified: true });\n// }\n// } else {\n// setOtpError(true);\n// }\n// };\n\n// const onStepSelect = () => {\n// const updatedData = getUpdatedData();\n// if (onSelect) {\n// onSelect(config.key, updatedData);\n// } else {\n// if (isEditing) {\n// history.push(\"/digit-ui/employee/ekyc/review\", { ...location.state, edits: { ...edits, aadhaarData: updatedData } });\n// } else {\n// history.push(\"/digit-ui/employee/ekyc/address-details\", {\n// ...location.state,\n// edits: { ...edits, aadhaarData: updatedData }\n// });\n// }\n// }\n// };\n\n// const handleUpdateAndReturn = () => {\n// history.push(\"/digit-ui/employee/ekyc/review\", { ...location.state, edits: { ...edits, aadhaarData: getUpdatedData() } });\n// };\n\n// const yesNoOptions = [\n// { code: \"YES\", name: \"CORE_COMMON_YES\" },\n// { code: \"NO\", name: \"CORE_COMMON_NO\" },\n// ];\n\n// return (\n// <Fragment>\n// <FormStep\n// t={t}\n// config={config || {}}\n// onSelect={onStepSelect}\n// isDisabled={!isAadhaarVerified || !userName || !mobileNumber}\n// label={t(config?.texts?.submitBarLabel) || (isEditing ? t(\"EKYC_UPDATE_AND_RETURN\") : t(\"ES_COMMON_CONTINUE\"))}\n// >\n// <CardLabel>{t(\"EKYC_AADHAAR_NUMBER\")} <span className=\"astericColor\">*</span></CardLabel>\n// <TextInput\n// id=\"aadhaarNumber\"\n// name=\"aadhaarNumber\"\n// value={aadhaarNumber}\n// onChange={(e) => setAadhaarNumber(e.target.value)}\n// placeholder={t(\"EKYC_ENTER_AADHAAR_NUMBER\")}\n// maxLength={12}\n// disabled={isAadhaarVerified}\n// />\n// {!isAadhaarVerified && !showOtpField && (\n// <SubmitBar label={t(\"EKYC_VERIFY\")} onSubmit={handleVerifyAadhaar} disabled={aadhaarNumber.length !== 12} />\n// )}\n\n// {showOtpField && (\n// <Fragment>\n// <CardLabel>{t(\"EKYC_ENTER_OTP\")} <span className=\"astericColor\">*</span></CardLabel>\n// <TextInput\n// id=\"otp\"\n// name=\"otp\"\n// value={otp}\n// onChange={(e) => setOtp(e.target.value)}\n// placeholder=\"123456\"\n// maxLength={6}\n// />\n// {otpError && <div style={{ color: \"red\", fontSize: \"12px\" }}>{t(\"EKYC_INVALID_OTP\")}</div>}\n// <SubmitBar label={t(\"EKYC_VERIFY_OTP\")} onSubmit={handleVerifyOtp} disabled={otp.length !== 6} />\n// </Fragment>\n// )}\n\n// {isAadhaarVerified && (\n// <Fragment>\n// <CardLabel>{t(\"EKYC_IS_NAME_CORRECT\")}</CardLabel>\n// <RadioButtons\n// options={yesNoOptions}\n// optionsKey=\"name\"\n// selectedOption={nameCorrect}\n// onSelect={setNameCorrect}\n// />\n// <CardLabel>{t(\"EKYC_USER_NAME\")} <span className=\"astericColor\">*</span></CardLabel>\n// <TextInput\n// id=\"userName\"\n// name=\"userName\"\n// value={userName}\n// onChange={(e) => setUserName(e.target.value)}\n// disabled={nameCorrect.code === \"NO\"}\n// />\n\n// <CardLabel>{t(\"EKYC_CHANGE_MOBILE\")}</CardLabel>\n// <RadioButtons\n// options={yesNoOptions}\n// optionsKey=\"name\"\n// selectedOption={mobileChange}\n// onSelect={setMobileChange}\n// />\n// <CardLabel>{t(\"EKYC_MOBILE_NUMBER\")} <span className=\"astericColor\">*</span></CardLabel>\n// <TextInput\n// id=\"mobileNumber\"\n// name=\"mobileNumber\"\n// value={mobileNumber}\n// onChange={(e) => setMobileNumber(e.target.value)}\n// disabled={mobileChange.code === \"NO\"}\n// />\n\n// <CardLabel>{t(\"EKYC_WHATSAPP_NUMBER\")}</CardLabel>\n// <TextInput\n// id=\"whatsappNumber\"\n// name=\"whatsappNumber\"\n// value={whatsappNumber}\n// onChange={(e) => setWhatsappNumber(e.target.value)}\n// />\n\n// <CardLabel>{t(\"EKYC_EMAIL_ID\")}</CardLabel>\n// <TextInput\n// id=\"email\"\n// name=\"email\"\n// value={email}\n// onChange={(e) => setEmail(e.target.value)}\n// />\n\n// <CardLabel>{t(\"EKYC_NO_OF_PERSONS\")}</CardLabel>\n// <TextInput\n// id=\"noOfPersons\"\n// name=\"noOfPersons\"\n// value={noOfPersons}\n// onChange={(e) => setNoOfPersons(e.target.value)}\n// />\n// </Fragment>\n// )}\n// </FormStep>\n// {isEditing && !onSelect && (\n// <ActionBar style={{ position: \"static\", marginTop: \"20px\" }}>\n// <SubmitBar label={t(\"EKYC_UPDATE_AND_RETURN\")} onSubmit={handleUpdateAndReturn} />\n// </ActionBar>\n// )}\n// </Fragment>\n// );\n// };\n\n// export default AadhaarVerification;\n\n\n\nimport React, { useState, Fragment } from \"react\";\nimport {\n CardLabel,\n TextInput,\n Dropdown,\n UploadFile,\n RadioButtons,\n Toast,\n FormStep,\n} from \"@djb25/digit-ui-react-components\";\n\nconst AadhaarVerification = ({ config, onSelect }) => {\n\n // 🔹 STATES\n const [kno, setKno] = useState(\"\");\n const [consumerType, setConsumerType] = useState(null);\n const [occupantType, setOccupantType] = useState(null);\n const [categoryType, setCategoryType] = useState(null);\n\n const [consumerName, setConsumerName] = useState(\"\");\n const [firstName, setFirstName] = useState(\"\");\n const [middleName, setMiddleName] = useState(\"\");\n const [lastName, setLastName] = useState(\"\");\n\n const [gender, setGender] = useState(null);\n const [relation, setRelation] = useState(\"\");\n\n const [mobile, setMobile] = useState(\"\");\n const [whatsapp, setWhatsapp] = useState(\"\");\n const [email, setEmail] = useState(\"\");\n const [residents, setResidents] = useState(\"\");\n\n // Tenant\n const [documentProof, setDocumentProof] = useState(null);\n const [documentId, setDocumentId] = useState(null);\n const [ownerMobile, setOwnerMobile] = useState(\"\");\n const [tenantVerification, setTenantVerification] = useState(\"\");\n\n // Govt\n const [designation, setDesignation] = useState(\"\");\n const [department, setDepartment] = useState(\"\");\n const [employeeId, setEmployeeId] = useState(\"\");\n const [landline, setLandline] = useState(\"\");\n\n // Other Entity\n const [entityRelation, setEntityRelation] = useState(\"\");\n const [contactPerson, setContactPerson] = useState(\"\");\n const [entityName, setEntityName] = useState(\"\");\n\n // Identity\n const [idProof, setIdProof] = useState(null);\n const [idNumber, setIdNumber] = useState(\"\");\n const [idFile, setIdFile] = useState(null);\n\n // Consent\n const [consent, setConsent] = useState(false);\n const [informantIsConsumer, setInformantIsConsumer] = useState(true);\n const [informantName, setInformantName] = useState(\"\");\n const [informantRelation, setInformantRelation] = useState(\"\");\n\n const [toast, setToast] = useState(null);\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 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;\n };\n\n // 🔹 SUBMIT\n const onStepSelect = () => {\n if (!isValid()) {\n setToast({ type: \"error\", message: \"Fill required fields\" });\n return;\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 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 onSelect(config.key, data);\n };\n\n return (\n <Fragment>\n <FormStep onSelect={onStepSelect} config={config}>\n <div>\n <CardLabel>K Number *</CardLabel>\n <TextInput value={kno} onChange={(e) => setKno(e.target.value)} />\n </div>\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>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\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 </Fragment>\n );\n};\n\nexport default AadhaarVerification;","import AadhaarVerification from \"../pages/employee/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 { AppContainer, PrivateRoute, ModuleHeader, ArrowLeft, HomeIcon } 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 \"./Dashboard\";\nimport Inbox from \"./Inbox\";\nimport Mapping from \"./Mapping\";\nimport Create from \"./Create\";\n\nimport Review from \"./Review\";\nimport EKYCForm from \"./EKYCForm\";\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 <div className=\"employee-form-content\">\n <Switch>\n <PrivateRoute\n path={`${path}/dashboard`}\n component={() => <Dashboard parentRoute={path} businessService=\"EKYC\" moduleCode=\"EKYC\" isInbox={true} />}\n />\n <PrivateRoute\n path={`${path}/inbox`}\n component={() => <Inbox parentRoute={path} businessService=\"EKYC\" moduleCode=\"EKYC\" isInbox={true} />}\n />\n\n <PrivateRoute path={`${path}/create-kyc`} component={() => <Create />} />\n\n <PrivateRoute path={`${path}/mapping`} component={() => <Mapping />} />\n\n <PrivateRoute path={formStepRoutes.map((route) => `${path}/${route}`)} component={(props) => <EKYCForm {...props} path={path} />} />\n\n <PrivateRoute path={`${path}/review`} component={() => <Review />} />\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 </div>\n </AppContainer>\n );\n};\n\nexport default EmployeeApp;\n","// import React, { useState, useRef, Fragment, useEffect } from \"react\";\n// import {\n// Card,\n// CardLabel,\n// TextInput,\n// SubmitBar,\n// CardHeader,\n// RadioButtons,\n// ActionBar,\n// Dropdown,\n// Loader,\n// UploadFile,\n// Toast,\n// FormStep,\n// } from \"@djb25/digit-ui-react-components\";\n// import { useTranslation } from \"react-i18next\";\n// import { useHistory, useLocation } from \"react-router-dom\";\n// import { getSavedData } from \"../../utils\";\n\n// const AddressDetails = ({ config, onSelect, formData, t: tProps }) => {\n// const { t } = useTranslation();\n// const history = useHistory();\n// const location = useLocation();\n\n// const flowState = location.state || {};\n// const { isEditing, kNumber } = flowState;\n\n// // Robust data extraction from formData (which includes reviewData and edits from EKYCForm)\n// const activeEdits = formData || {};\n// const rawReviewData = formData?.reviewData || formData?.connectionDetails || {};\n// const reviewWrapper = rawReviewData?.applicationReview || rawReviewData;\n// const applicationData = (Array.isArray(reviewWrapper) ? reviewWrapper[0] : reviewWrapper) || {};\n// const apiData = applicationData?.newData || applicationData;\n// const apiAddr = apiData?.addressDetails || apiData || {};\n\n// const addrData = activeEdits?.addressDetails || {};\n\n// const [addressType, setAddressType] = useState(addrData.addressType || { code: \"AADHAAR\", name: \"EKYC_AADHAAR_ADDRESS\" });\n// const [correctAddress, setCorrectAddress] = useState(addrData.correctAddress || { code: \"NO\", name: \"CORE_COMMON_NO\" });\n// const [fullAddress, setFullAddress] = useState(addrData.fullAddress || apiAddr.addressRaw || apiAddr.fullAddress || \"\");\n// const [flatHouseNumber, setFlatHouseNumber] = useState(addrData.flatHouseNumber || addrData.flatNo || apiAddr.flatHouseNumber || apiAddr.flatNo || \"\");\n// const [buildingTower, setBuildingTower] = useState(addrData.buildingTower || addrData.building || apiAddr.buildingTower || apiAddr.building || \"\");\n// const [landmark, setLandmark] = useState(addrData.landmark || apiAddr.landmark || \"\");\n// const [pinCode, setPinCode] = useState(addrData.pinCode || addrData.pincode || apiAddr.pinCode || apiAddr.pincode || \"\");\n// const [doorPhoto, setDoorPhoto] = useState(addrData.doorPhoto || null);\n// const [doorPhotoFileStoreId, setDoorPhotoFileStoreId] = useState(addrData.doorPhotoFilestoreId || addrData.doorPhotoFileStoreId || apiAddr.doorPhotoFilestoreId || null);\n\n// const [gpsValid, setGpsValid] = useState(addrData.gpsValid !== undefined ? addrData.gpsValid : (apiAddr.gpsValid !== undefined ? apiAddr.gpsValid : true));\n// const [latitude, setLatitude] = useState(addrData.latitude || apiAddr.latitude || \"\");\n// const [longitude, setLongitude] = useState(addrData.longitude || apiAddr.longitude || \"\");\n// const [mobileNo, setMobileNo] = useState(addrData.mobileNo || apiAddr.mobileNo || \"\");\n// const [whatsappNo, setWhatsappNo] = useState(addrData.whatsappNo || apiAddr.whatsappNo || \"\");\n// const [email, setEmail] = useState(addrData.email || apiAddr.email || \"\");\n// const [noOfPerson, setNoOfPerson] = useState(addrData.noOfPerson || apiAddr.noOfPerson || apiAddr.noOfPersons || \"\");\n// const [knumber, setKnumber] = useState(addrData.knumber || apiAddr.knumber || apiAddr.kno || kNumber || \"\");\n\n// const [toast, setToast] = useState(null);\n\n// const tenantId = Digit.ULBService.getCurrentTenantId();\n// const { data: mdmsData, isLoading: isMdmsLoading } = Digit.Hooks.useCommonMDMS(tenantId, \"egov-location\", [\"TenantBoundary\"]);\n// const assemblies = mdmsData?.MdmsRes?.[\"egov-location\"]?.TenantBoundary?.[0]?.boundary?.children || [];\n// const [assembly, setAssembly] = useState(addrData.assemblyData || (apiAddr.assembly ? { name: apiAddr.assembly } : null));\n// const [ward, setWard] = useState(addrData.wardData || (apiAddr.ward ? { name: apiAddr.ward } : null));\n\n// const getUpdatedData = () => ({\n// addressType,\n// correctAddress,\n// fullAddress,\n// flatHouseNumber,\n// buildingTower,\n// landmark,\n// pinCode,\n// doorPhoto,\n// doorPhotoFilestoreId: doorPhotoFileStoreId,\n// assembly: assembly?.name,\n// ward: ward?.name,\n// assemblyData: assembly,\n// wardData: ward,\n// gpsValid,\n// latitude,\n// longitude,\n// mobileNo,\n// whatsappNo,\n// email,\n// noOfPerson,\n// knumber\n// });\n\n// const selectphoto = async (e) => {\n// const file = e.target.files[0];\n// if (file) {\n// if (file.size >= 2000000) {\n// setToast({ type: \"error\", message: t(\"EKYC_MAXIMUM_UPLOAD_SIZE_EXCEEDED\") });\n// return;\n// }\n// try {\n// const res = await Digit.UploadServices.Filestorage(\"EKYC\", file, tenantId);\n// if (res?.data?.files?.[0]?.fileStoreId) {\n// const fileStoreId = res.data.files[0].fileStoreId;\n// setDoorPhotoFileStoreId(fileStoreId);\n// const reader = new FileReader();\n// reader.onloadend = () => {\n// setDoorPhoto(reader.result);\n// if (onSelect) {\n// onSelect(config.key, { ...getUpdatedData(), doorPhoto: reader.result, doorPhotoFilestoreId: fileStoreId });\n// }\n// };\n// reader.readAsDataURL(file);\n// setToast({ type: \"success\", message: t(\"EKYC_UPLOAD_SUCCESS\") });\n// }\n// } catch (err) {\n// setToast({ type: \"error\", message: t(\"EKYC_FILE_UPLOAD_ERROR\") });\n// }\n// }\n// };\n\n// const removePhoto = () => {\n// setDoorPhoto(null);\n// setDoorPhotoFileStoreId(null);\n// if (onSelect) {\n// onSelect(config.key, { ...getUpdatedData(), doorPhoto: null, doorPhotoFilestoreId: null });\n// }\n// };\n\n// const onStepSelect = () => {\n// const updatedData = getUpdatedData();\n// if (onSelect) {\n// onSelect(config.key, updatedData);\n// } else {\n// if (isEditing) {\n// history.push(\"/digit-ui/employee/ekyc/review\", { ...location.state, edits: { ...edits, addressDetails: updatedData } });\n// } else {\n// history.push(\"/digit-ui/employee/ekyc/property-info\", {\n// ...location.state,\n// edits: { ...edits, addressDetails: updatedData }\n// });\n// }\n// }\n// };\n\n// const handleUpdateAndReturn = () => {\n// history.push(\"/digit-ui/employee/ekyc/review\", { ...location.state, edits: { ...edits, addressDetails: getUpdatedData() } });\n// };\n\n// const addressOptions = [\n// { code: \"AADHAAR\", name: \"EKYC_AADHAAR_ADDRESS\" },\n// { code: \"CURRENT\", name: \"EKYC_CURRENT_ADDRESS\" },\n// ];\n\n// const yesNoOptions = [\n// { code: \"YES\", name: \"CORE_COMMON_YES\" },\n// { code: \"NO\", name: \"CORE_COMMON_NO\" },\n// ];\n\n// if (isMdmsLoading) return <Loader />;\n\n// return (\n// <Fragment>\n// <FormStep t={t} onSelect={onStepSelect} config={config || {}} label={t(config?.texts?.submitBarLabel) || (isEditing ? t(\"EKYC_UPDATE_AND_RETURN\") : t(\"ES_COMMON_CONTINUE\"))}>\n// <CardLabel>{t(\"EKYC_ADDRESS_TYPE\")}</CardLabel>\n// <RadioButtons\n// options={addressOptions}\n// optionsKey=\"name\"\n// selectedOption={addressType}\n// onSelect={setAddressType}\n// />\n\n// <CardLabel>{t(\"EKYC_IS_ADDRESS_CORRECT\")}</CardLabel>\n// <RadioButtons\n// options={yesNoOptions}\n// optionsKey=\"name\"\n// selectedOption={correctAddress}\n// onSelect={setCorrectAddress}\n// />\n\n// {correctAddress?.code === \"NO\" && (\n// <Fragment>\n// <CardLabel>{t(\"EKYC_FULL_ADDRESS\")}</CardLabel>\n// <TextInput\n// id=\"fullAddress\"\n// name=\"fullAddress\"\n// value={fullAddress}\n// onChange={(e) => setFullAddress(e.target.value)}\n// placeholder={t(\"EKYC_ENTER_FULL_ADDRESS\")}\n// />\n\n// <CardLabel>{t(\"EKYC_FLAT_HOUSE_NO\")}</CardLabel>\n// <TextInput\n// id=\"flatHouseNumber\"\n// name=\"flatHouseNumber\"\n// value={flatHouseNumber}\n// onChange={(e) => setFlatHouseNumber(e.target.value)}\n// placeholder={t(\"EKYC_ENTER_FLAT_HOUSE_NO\")}\n// />\n\n// <CardLabel>{t(\"EKYC_BUILDING_TOWER\")}</CardLabel>\n// <TextInput\n// id=\"buildingTower\"\n// name=\"buildingTower\"\n// value={buildingTower}\n// onChange={(e) => setBuildingTower(e.target.value)}\n// placeholder={t(\"EKYC_ENTER_BUILDING_TOWER\")}\n// />\n\n// <CardLabel>{t(\"EKYC_LANDMARK\")}</CardLabel>\n// <TextInput\n// id=\"landmark\"\n// name=\"landmark\"\n// value={landmark}\n// onChange={(e) => setLandmark(e.target.value)}\n// placeholder={t(\"EKYC_ENTER_LANDMARK\")}\n// />\n\n// <CardLabel>{t(\"EKYC_PINCODE\")}</CardLabel>\n// <TextInput\n// id=\"pinCode\"\n// name=\"pinCode\"\n// value={pinCode}\n// onChange={(e) => setPinCode(e.target.value)}\n// placeholder={t(\"EKYC_ENTER_PINCODE\")}\n// />\n// </Fragment>\n// )}\n\n// <CardLabel>{t(\"EKYC_ASSEMBLY_WARD\")}</CardLabel>\n// <Dropdown\n// option={assemblies}\n// optionKey=\"name\"\n// selected={assembly}\n// select={setAssembly}\n// t={t}\n// />\n\n// {assembly && (\n// <Fragment>\n// <CardLabel>{t(\"EKYC_WARD\")}</CardLabel>\n// <Dropdown\n// option={assembly.children || []}\n// optionKey=\"name\"\n// selected={ward}\n// select={setWard}\n// t={t}\n// />\n// </Fragment>\n// )}\n\n// <CardLabel>{t(\"EKYC_GPS_VALID\")}</CardLabel>\n// <RadioButtons\n// options={[\n// { code: true, name: \"CORE_COMMON_YES\" },\n// { code: false, name: \"CORE_COMMON_NO\" },\n// ]}\n// optionsKey=\"name\"\n// selectedOption={gpsValid ? { code: true, name: \"CORE_COMMON_YES\" } : { code: false, name: \"CORE_COMMON_NO\" }}\n// onSelect={(val) => setGpsValid(val.code)}\n// />\n\n// <CardLabel>{t(\"EKYC_LATITUDE\")}</CardLabel>\n// <TextInput\n// id=\"latitude\"\n// name=\"latitude\"\n// value={latitude}\n// onChange={(e) => setLatitude(e.target.value)}\n// placeholder={t(\"EKYC_ENTER_LATITUDE\")}\n// />\n\n// <CardLabel>{t(\"EKYC_LONGITUDE\")}</CardLabel>\n// <TextInput\n// id=\"longitude\"\n// name=\"longitude\"\n// value={longitude}\n// onChange={(e) => setLongitude(e.target.value)}\n// placeholder={t(\"EKYC_ENTER_LONGITUDE\")}\n// />\n\n// <CardLabel>{t(\"EKYC_MOBILE_NO\")}</CardLabel>\n// <TextInput\n// id=\"mobileNo\"\n// name=\"mobileNo\"\n// value={mobileNo}\n// onChange={(e) => setMobileNo(e.target.value)}\n// placeholder={t(\"EKYC_ENTER_MOBILE_NO\")}\n// />\n\n// <CardLabel>{t(\"EKYC_WHATSAPP_NO\")}</CardLabel>\n// <TextInput\n// id=\"whatsappNo\"\n// name=\"whatsappNo\"\n// value={whatsappNo}\n// onChange={(e) => setWhatsappNo(e.target.value)}\n// placeholder={t(\"EKYC_ENTER_WHATSAPP_NO\")}\n// />\n\n// <CardLabel>{t(\"EKYC_EMAIL\")}</CardLabel>\n// <TextInput\n// id=\"email\"\n// name=\"email\"\n// value={email}\n// onChange={(e) => setEmail(e.target.value)}\n// placeholder={t(\"EKYC_ENTER_EMAIL\")}\n// />\n\n// <CardLabel>{t(\"EKYC_NO_OF_PERSONS\")}</CardLabel>\n// <TextInput\n// id=\"noOfPerson\"\n// name=\"noOfPerson\"\n// value={noOfPerson}\n// onChange={(e) => setNoOfPerson(e.target.value)}\n// placeholder={t(\"EKYC_ENTER_NO_OF_PERSONS\")}\n// />\n\n// <CardLabel>{t(\"EKYC_K_NUMBER\")}</CardLabel>\n// <TextInput\n// id=\"knumber\"\n// name=\"knumber\"\n// value={knumber}\n// onChange={(e) => setKnumber(e.target.value)}\n// placeholder={t(\"EKYC_ENTER_K_NUMBER\")}\n// />\n\n// <CardLabel>{t(\"EKYC_DOOR_PHOTO\")}</CardLabel>\n// <UploadFile\n// onUpload={selectphoto}\n// onDelete={removePhoto}\n// message={doorPhotoFileStoreId ? t(\"EKYC_FILE_UPLOADED\") : t(\"EKYC_NO_FILE_SELECTED\")}\n// />\n// {doorPhoto && <img src={doorPhoto} style={{ width: \"100%\", marginTop: \"10px\", borderRadius: \"8px\" }} />}\n\n// {toast && <Toast label={toast.message} error={toast.type === \"error\"} onClose={() => setToast(null)} />}\n// </FormStep>\n// {isEditing && !onSelect && (\n// // <ActionBar style={{ position: \"static\", marginTop: \"20px\" }}>\n// <SubmitBar label={t(\"EKYC_UPDATE_AND_RETURN\")} onSubmit={handleUpdateAndReturn} />\n// // </ActionBar>\n// )}\n// </Fragment>\n// );\n// };\n\n// export default AddressDetails;\n\nimport 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, { useState, Fragment, useEffect } from \"react\";\n// import {\n// Card,\n// CardLabel,\n// TextInput,\n// SubmitBar,\n// CardHeader,\n// ActionBar,\n// Dropdown,\n// UploadFile,\n// Toast,\n// FormStep,\n// RadioButtons,\n// } from \"@djb25/digit-ui-react-components\";\n// import { useTranslation } from \"react-i18next\";\n// import { useHistory, useLocation } from \"react-router-dom\";\n// import { getSavedData } from \"../../utils\";\n\n// const PropertyInfo = ({ config, onSelect, formData, t: tProps }) => {\n// const { t } = useTranslation();\n// const history = useHistory();\n// const location = useLocation();\n\n// const flowState = location.state || {};\n// const { isEditing } = flowState;\n\n// // Robust data extraction from formData\n// const activeEdits = formData || {};\n// const rawReviewData = formData?.reviewData || formData?.connectionDetails || {};\n// const reviewWrapper = rawReviewData?.applicationReview || rawReviewData;\n// const applicationData = (Array.isArray(reviewWrapper) ? reviewWrapper[0] : reviewWrapper) || {};\n// const apiData = applicationData?.newData || applicationData;\n// const apiProp = apiData?.propertyInfo || apiData || {};\n\n// const tenantId = Digit.ULBService.getCurrentTenantId();\n\n// const { data: dataV1 } = Digit.Hooks.ekyc.useGetUserType(tenantId);\n// const { data: dataV2 } = Digit.Hooks.ekyc.useGetFloorCount(tenantId);\n// const { data: dataV3 } = Digit.Hooks.ekyc.useGetPropertyType(tenantId);\n// const { data: dataConn } = Digit.Hooks.ekyc.useGetConnectionTypeV2(tenantId);\n\n// const userTypeOptions = dataV1?.[\"ws-services-calculation\"]?.userTypeV2?.map((item) => ({\n// label: t(item.code), value: item.code,\n// })) || [];\n\n// const floorOptions = dataV2?.[\"ws-services-calculation\"]?.floorCount?.map((item) => ({\n// label: t(item.code), value: item.code,\n// })) || [];\n\n// const connectionCategoryOptions = dataV3?.[\"ws-services-calculation\"]?.propertyTypeV2?.map((item) => ({\n// label: t(item.code), value: item.code,\n// })) || [];\n\n// const connectionTypeOptions = dataConn?.[\"ws-services-calculation\"]?.connectionTypeV2?.map((item) => ({\n// label: t(item.code), value: item.code,\n// })) || [];\n\n// const propData = activeEdits?.propertyDetails || {};\n\n// const [ownerType, setOwnerType] = useState(propData.ownerType || (apiProp.tenantName ? \"TENANT\" : \"OWNER\"));\n// const [pidNumber, setPidNumber] = useState(propData.pidNumber || apiProp.pidNumber || \"\");\n// const [userType, setUserType] = useState(propData.userTypeData || null);\n// const [noOfFloors, setNoOfFloors] = useState(propData.noOfFloorsData || null);\n// const [connectionCategory, setConnectionCategory] = useState(propData.connectionCategoryData || null);\n// const [typeOfConnection, setTypeOfConnection] = useState(propData.typeOfConnectionData || null);\n\n// const [propertyDocument, setPropertyDocument] = useState(propData.propertyDocument || null);\n// const [propertyDocumentFileStoreId, setPropertyDocumentFileStoreId] = useState(propData.propertyDocumentFileStoreId || apiProp.propertyDocumentFileStoreId || null);\n\n// const [toast, setToast] = useState(null);\n\n// // Pre-fill dropdowns from API\n// useEffect(() => {\n// if (!userType && userTypeOptions.length > 0) {\n// const val = apiProp.userType;\n// const found = userTypeOptions.find(o => o.value === val || o.label === val);\n// if (found) setUserType(found);\n// }\n// }, [userTypeOptions, apiProp.userType]);\n\n// useEffect(() => {\n// if (!noOfFloors && floorOptions.length > 0) {\n// const val = apiProp.numberOfFloors || apiProp.noOfFloor;\n// const found = floorOptions.find(o => o.value === String(val) || o.label === String(val));\n// if (found) setNoOfFloors(found);\n// }\n// }, [floorOptions, apiProp.numberOfFloors]);\n\n// useEffect(() => {\n// if (!connectionCategory && connectionCategoryOptions.length > 0) {\n// const val = apiProp.connectionCategory;\n// const found = connectionCategoryOptions.find(o => o.value === val || o.label === val);\n// if (found) setConnectionCategory(found);\n// }\n// }, [connectionCategoryOptions, apiProp.connectionCategory]);\n\n// useEffect(() => {\n// if (!typeOfConnection && connectionTypeOptions.length > 0) {\n// const val = apiProp.typeOfConnection;\n// const found = connectionTypeOptions.find(o => o.value === val || o.label === val);\n// if (found) setTypeOfConnection(found);\n// }\n// }, [connectionTypeOptions, apiProp.typeOfConnection]);\n\n// const getUpdatedData = () => ({\n// ownerType,\n// pidNumber,\n// userTypeData: userType,\n// noOfFloorsData: noOfFloors,\n// connectionCategoryData: connectionCategory,\n// typeOfConnectionData: typeOfConnection,\n// propertyDocument,\n// propertyDocumentFileStoreId,\n// kno: apiProp.kno || flowState.kno\n// });\n\n// const selectpdf = async (e) => {\n// const file = e.target.files[0];\n// if (file) {\n// if (file.size >= 5000000) {\n// setToast({ type: \"error\", message: t(\"EKYC_MAXIMUM_UPLOAD_SIZE_EXCEEDED\") });\n// return;\n// }\n// try {\n// const res = await Digit.UploadServices.Filestorage(\"EKYC\", file, tenantId);\n// if (res?.data?.files?.[0]?.fileStoreId) {\n// const fileStoreId = res.data.files[0].fileStoreId;\n// setPropertyDocumentFileStoreId(fileStoreId);\n// setPropertyDocument(file.name);\n// if (onSelect) {\n// onSelect(config.key, { ...getUpdatedData(), propertyDocument: file.name, propertyDocumentFileStoreId: fileStoreId });\n// }\n// setToast({ type: \"success\", message: t(\"EKYC_UPLOAD_SUCCESS\") });\n// }\n// } catch (err) {\n// setToast({ type: \"error\", message: t(\"EKYC_FILE_UPLOAD_ERROR\") });\n// }\n// }\n// };\n\n// const onStepSelect = () => {\n// const updatedData = getUpdatedData();\n// if (onSelect) {\n// onSelect(config.key, updatedData);\n// } else {\n// if (isEditing) {\n// history.push(\"/digit-ui/employee/ekyc/review\", { ...location.state, edits: { ...edits, propertyDetails: updatedData } });\n// } else {\n// history.push(\"/digit-ui/employee/ekyc/meter-details\", {\n// ...location.state,\n// edits: { ...edits, propertyDetails: updatedData }\n// });\n// }\n// }\n// };\n\n// const handleUpdateAndReturn = () => {\n// history.push(\"/digit-ui/employee/ekyc/review\", { ...location.state, edits: { ...edits, propertyDetails: getUpdatedData() } });\n// };\n\n// const ownerOptions = [\n// { code: \"OWNER\", name: \"EKYC_OWNER\" },\n// { code: \"TENANT\", name: \"EKYC_TENANT\" },\n// ];\n\n// return (\n// <Fragment>\n// <FormStep t={t} onSelect={onStepSelect} config={config || {}} label={t(config?.texts?.submitBarLabel) || (isEditing ? t(\"EKYC_UPDATE_AND_RETURN\") : t(\"ES_COMMON_CONTINUE\"))}>\n// <CardLabel>{t(\"EKYC_OWNER_TENANT\")}</CardLabel>\n// <RadioButtons\n// options={ownerOptions}\n// optionsKey=\"name\"\n// selectedOption={ownerOptions.find(o => o.code === ownerType)}\n// onSelect={(val) => setOwnerType(val.code)}\n// />\n\n// <CardLabel>{t(\"EKYC_PID_NUMBER\")}</CardLabel>\n// <TextInput\n// id=\"pidNumber\"\n// name=\"pidNumber\"\n// value={pidNumber}\n// onChange={(e) => setPidNumber(e.target.value)}\n// placeholder={t(\"EKYC_ENTER_PID_NUMBER\")}\n// />\n\n// <CardLabel>{t(\"EKYC_USER_TYPE\")}</CardLabel>\n// <Dropdown\n// option={userTypeOptions}\n// optionKey=\"label\"\n// selected={userType}\n// select={setUserType}\n// t={t}\n// />\n\n// <CardLabel>{t(\"EKYC_NO_OF_FLOORS\")}</CardLabel>\n// <Dropdown\n// option={floorOptions}\n// optionKey=\"label\"\n// selected={noOfFloors}\n// select={setNoOfFloors}\n// t={t}\n// />\n\n// <CardLabel>{t(\"EKYC_TYPE_OF_CONNECTION\")}</CardLabel>\n// <Dropdown\n// option={connectionTypeOptions}\n// optionKey=\"label\"\n// selected={typeOfConnection}\n// select={setTypeOfConnection}\n// t={t}\n// />\n\n// <CardLabel>{t(\"EKYC_CONNECTION_CATEGORY\")}</CardLabel>\n// <Dropdown\n// option={connectionCategoryOptions}\n// optionKey=\"label\"\n// selected={connectionCategory}\n// select={setConnectionCategory}\n// t={t}\n// />\n\n// <CardLabel>{t(\"EKYC_UPLOAD_PROPERTY_DOC\")}</CardLabel>\n// <UploadFile\n// onUpload={selectpdf}\n// onDelete={() => {\n// setPropertyDocument(null);\n// setPropertyDocumentFileStoreId(null);\n// if (onSelect) {\n// onSelect(config.key, { ...getUpdatedData(), propertyDocument: null, propertyDocumentFileStoreId: null });\n// }\n// }}\n// message={propertyDocumentFileStoreId ? t(\"EKYC_FILE_UPLOADED\") : t(\"EKYC_NO_FILE_SELECTED\")}\n// />\n\n// {toast && <Toast label={toast.message} error={toast.type === \"error\"} onClose={() => setToast(null)} />}\n// </FormStep>\n// {isEditing && !onSelect && (\n// <ActionBar style={{ position: \"static\", marginTop: \"20px\" }}>\n// <SubmitBar label={t(\"EKYC_UPDATE_AND_RETURN\")} onSubmit={handleUpdateAndReturn} />\n// </ActionBar>\n// )}\n// </Fragment>\n// );\n// };\n\n// export default PropertyInfo;\n\n\n\nimport React, { useState, Fragment } from \"react\";\nimport {\n CardLabel,\n TextInput,\n Dropdown,\n UploadFile,\n Toast,\n FormStep,\n} from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\n\nconst PropertyInfo = ({ config, onSelect }) => {\n const { t } = useTranslation();\n const tenantId = Digit.ULBService.getCurrentTenantId();\n\n // 🔹 STATES\n const [pidNumber, setPidNumber] = useState(\"\");\n const [propertyType, setPropertyType] = useState(null);\n const [subPropertyCategory, setSubPropertyCategory] = useState(null);\n\n const [noOfFloors, setNoOfFloors] = useState(\"\");\n const [floorNo, setFloorNo] = useState(\"\");\n\n const [noOfRooms, setNoOfRooms] = useState(\"\");\n const [noOfBeds, setNoOfBeds] = useState(\"\");\n const [dwellingUnits, setDwellingUnits] = useState(\"\");\n\n const [buildingImage, setBuildingImage] = useState(null);\n const [buildingImageId, setBuildingImageId] = useState(null);\n\n const [toast, setToast] = useState(null);\n\n // 🔹 PROPERTY TYPE OPTIONS (you can replace with MDMS)\n const propertyTypeOptions = [\n { name: \"Residential\" },\n { name: \"Commercial\" },\n { name: \"Hotel\" },\n { name: \"Hospital\" },\n { name: \"Nursing Home\" },\n ];\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 (!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 = () => {\n if (!isValid()) {\n setToast({ type: \"error\", message: \"Fill all required fields\" });\n return;\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 onSelect(config.key, data);\n };\n\n return (\n <Fragment>\n <FormStep\n t={t}\n onSelect={onStepSelect}\n config={config}\n label={t(\"ES_COMMON_CONTINUE\")}\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\";\n// import {\n// Card,\n// CardLabel,\n// TextInput,\n// SubmitBar,\n// CardHeader,\n// ActionBar,\n// Dropdown,\n// UploadFile,\n// Toast,\n// FormStep,\n// } from \"@djb25/digit-ui-react-components\";\n// import { useTranslation } from \"react-i18next\";\n// import { useHistory, useLocation } from \"react-router-dom\";\n// import { getSavedData } from \"../../utils\";\n\n// const MeterDetails = ({ config, onSelect, formData, t: tProps }) => {\n// const { t } = useTranslation();\n// const history = useHistory();\n// const location = useLocation();\n\n// const flowState = location.state || {};\n// const { isEditing, kNumber } = flowState;\n\n// // Robust data extraction from formData\n// const activeEdits = formData || {};\n// const rawReviewData = formData?.reviewData || formData?.connectionDetails || {};\n// const reviewWrapper = rawReviewData?.applicationReview || rawReviewData;\n// const applicationData = (Array.isArray(reviewWrapper) ? reviewWrapper[0] : reviewWrapper) || {};\n// const apiData = applicationData?.newData || applicationData;\n// const apiMeter = apiData?.meterDetails || apiData || {};\n\n// const tenantId = Digit.ULBService.getCurrentTenantId();\n\n// const { data: dataV0 } = Digit.Hooks.ekyc.useGetPropertyType(tenantId);\n// const { data: dataConn } = Digit.Hooks.ekyc.useGetConnectionTypeV2(tenantId);\n\n// const mtrData = activeEdits?.meterDetails || {};\n\n// const [meterStatus, setMeterStatus] = useState(mtrData.meterStatusData || (apiMeter.metered !== undefined ? { label: apiMeter.metered ? t(\"EKYC_METER_METERED\") : t(\"EKYC_METER_UNMETERED\"), value: apiMeter.metered ? \"Metered\" : \"Unmetered\" } : (apiMeter.meterStatus ? { label: t(`EKYC_METER_${apiMeter.meterStatus}`), value: apiMeter.meterStatus } : null)));\n// const [meterPhoto, setMeterStatusPhoto] = useState(mtrData.meterPhoto || null);\n// const [meterPhotoFileStoreId, setMeterStatusPhotoFileStoreId] = useState(mtrData.meterPhotoFileStoreId || apiMeter.meterPhotoFileStoreId || null);\n// const [workingStatus, setWorkingStatus] = useState(mtrData.workingStatusData || (apiMeter.workingStatus !== undefined ? { label: apiMeter.workingStatus ? t(\"EKYC_METER_WORKING\") : t(\"EKYC_METER_NOT_WORKING\"), value: apiMeter.workingStatus ? \"Working\" : \"Not Working\" } : (apiMeter.workingStatus ? { label: t(`EKYC_METER_${apiMeter.workingStatus}`), value: apiMeter.workingStatus } : null)));\n// const [meterLocation, setMeterLocation] = useState(mtrData.meterLocation || apiMeter.meterLocationAddress || apiMeter.meterLocation || \"\");\n// const [lastBillRaised, setLastBillRaised] = useState(mtrData.lastBillRaisedData || (apiMeter.lastBillRaised !== undefined ? { label: apiMeter.lastBillRaised ? t(\"CORE_COMMON_YES\") : t(\"CORE_COMMON_NO\"), value: apiMeter.lastBillRaised ? \"Yes\" : \"No\" } : (apiMeter.lastBillRaised ? { label: t(`EKYC_${apiMeter.lastBillRaised}`), value: apiMeter.lastBillRaised } : null)));\n// const [sewerConnection, setSewerConnection] = useState(mtrData.sewerConnectionData || (apiMeter.sewerConnection ? { label: t(`EKYC_${apiMeter.sewerConnection}`), value: apiMeter.sewerConnection } : null));\n// const [connectionCategory, setConnectionCategory] = useState(mtrData.connectionCategoryData || (apiMeter.connectionCategory ? { label: t(apiMeter.connectionCategory), value: apiMeter.connectionCategory } : (apiMeter.typeOfConnection ? { label: t(apiMeter.typeOfConnection), value: apiMeter.typeOfConnection } : null)));\n// const [connectionType, setConnectionType] = useState(mtrData.connectionTypeData || (apiMeter.connectionType ? { label: t(apiMeter.connectionType), value: apiMeter.connectionType } : (apiMeter.connectionCategory ? { label: t(apiMeter.connectionCategory), value: apiMeter.connectionCategory } : null)));\n\n// const [toast, setToast] = useState(null);\n\n// const getUpdatedData = () => ({\n// meterStatusData: meterStatus,\n// meterPhoto,\n// meterPhotoFileStoreId,\n// workingStatusData: workingStatus,\n// meterLocation,\n// lastBillRaisedData: lastBillRaised,\n// sewerConnectionData: sewerConnection,\n// connectionCategoryData: connectionCategory,\n// connectionTypeData: connectionType,\n// });\n\n// const selectphoto = async (e) => {\n// const file = e.target.files[0];\n// if (file) {\n// if (file.size >= 2000000) {\n// setToast({ type: \"error\", message: t(\"EKYC_MAXIMUM_UPLOAD_SIZE_EXCEEDED\") });\n// return;\n// }\n// try {\n// const res = await Digit.UploadServices.Filestorage(\"EKYC\", file, tenantId);\n// if (res?.data?.files?.[0]?.fileStoreId) {\n// const fileStoreId = res.data.files[0].fileStoreId;\n// setMeterStatusPhotoFileStoreId(fileStoreId);\n// const reader = new FileReader();\n// reader.onloadend = () => {\n// setMeterStatusPhoto(reader.result);\n// if (onSelect) {\n// onSelect(config.key, { ...getUpdatedData(), meterPhoto: reader.result, meterPhotoFileStoreId: fileStoreId });\n// }\n// };\n// reader.readAsDataURL(file);\n// setToast({ type: \"success\", message: t(\"EKYC_UPLOAD_SUCCESS\") });\n// }\n// } catch (err) {\n// setToast({ type: \"error\", message: t(\"EKYC_FILE_UPLOAD_ERROR\") });\n// }\n// }\n// };\n\n// const onStepSelect = () => {\n// const updatedData = getUpdatedData();\n// if (onSelect) {\n// onSelect(config.key, updatedData);\n// } else {\n// if (isEditing) {\n// history.push(\"/digit-ui/employee/ekyc/review\", { ...location.state, edits: { ...edits, meterDetails: updatedData } });\n// } else {\n// history.push(\"/digit-ui/employee/ekyc/review\", {\n// ...location.state,\n// edits: { ...edits, meterDetails: updatedData }\n// });\n// }\n// }\n// };\n\n// const handleUpdateAndReturn = () => {\n// history.push(\"/digit-ui/employee/ekyc/review\", { ...location.state, edits: { ...edits, meterDetails: getUpdatedData() } });\n// };\n\n// const meterStatusOptions = [\n// { label: t(\"EKYC_METER_METERED\"), value: \"Metered\" },\n// { label: t(\"EKYC_METER_UNMETERED\"), value: \"Unmetered\" },\n// ];\n\n// const workingStatusOptions = [\n// { label: t(\"EKYC_METER_WORKING\"), value: \"Working\" },\n// { label: t(\"EKYC_METER_NOT_WORKING\"), value: \"Not Working\" },\n// ];\n\n// const yesNoOptions = [\n// { label: t(\"CORE_COMMON_YES\"), value: \"Yes\" },\n// { label: t(\"CORE_COMMON_NO\"), value: \"No\" },\n// ];\n\n// const connectionCategoryOptions = dataV0?.[\"ws-services-calculation\"]?.propertyTypeV2?.map((item) => ({\n// label: t(item.code), value: item.code,\n// })) || [];\n\n// const connectionTypeOptions = dataConn?.[\"ws-services-calculation\"]?.connectionTypeV2?.map((item) => ({\n// label: t(item.code), value: item.code,\n// })) || [];\n\n// return (\n// <Fragment>\n// <FormStep t={t} onSelect={onStepSelect} config={config || {}} label={t(config?.texts?.submitBarLabel) || (isEditing ? t(\"EKYC_UPDATE_AND_RETURN\") : t(\"ES_COMMON_CONTINUE\"))}>\n// <CardLabel>{t(\"EKYC_METER_STATUS\")}</CardLabel>\n// <Dropdown\n// option={meterStatusOptions}\n// optionKey=\"label\"\n// selected={meterStatus}\n// select={setMeterStatus}\n// t={t}\n// />\n\n// {meterStatus?.value === \"Metered\" && (\n// <Fragment>\n// <CardLabel>{t(\"EKYC_METER_WORKING_STATUS\")}</CardLabel>\n// <Dropdown\n// option={workingStatusOptions}\n// optionKey=\"label\"\n// selected={workingStatus}\n// select={setWorkingStatus}\n// t={t}\n// />\n\n// <CardLabel>{t(\"EKYC_CAPTURE_METER_IMAGE\")}</CardLabel>\n// <UploadFile\n// onUpload={selectphoto}\n// onDelete={() => {\n// setMeterStatusPhoto(null);\n// setMeterStatusPhotoFileStoreId(null);\n// if (onSelect) {\n// onSelect(config.key, { ...getUpdatedData(), meterPhoto: null, meterPhotoFileStoreId: null });\n// }\n// }}\n// message={meterPhotoFileStoreId ? t(\"EKYC_FILE_UPLOADED\") : t(\"EKYC_NO_FILE_SELECTED\")}\n// />\n// {meterPhoto && <img src={meterPhoto} style={{ width: \"100%\", marginTop: \"10px\", borderRadius: \"8px\" }} />}\n\n// <CardLabel>{t(\"EKYC_METER_LOCATION\")}</CardLabel>\n// <TextInput\n// id=\"meterLocation\"\n// name=\"meterLocation\"\n// value={meterLocation}\n// onChange={(e) => setMeterLocation(e.target.value)}\n// placeholder={t(\"EKYC_ENTER_METER_LOCATION\")}\n// />\n\n// <CardLabel>{t(\"EKYC_LAST_BILL_RAISED\")}</CardLabel>\n// <Dropdown\n// option={yesNoOptions}\n// optionKey=\"label\"\n// selected={lastBillRaised}\n// select={setLastBillRaised}\n// t={t}\n// />\n// </Fragment>\n// )}\n\n// <CardLabel>{t(\"EKYC_SEWER_CONNECTION\")}</CardLabel>\n// <Dropdown\n// option={yesNoOptions}\n// optionKey=\"label\"\n// selected={sewerConnection}\n// select={setSewerConnection}\n// t={t}\n// />\n\n// <CardLabel>{t(\"EKYC_TYPE_OF_CONNECTION\")}</CardLabel>\n// <Dropdown\n// option={connectionCategoryOptions}\n// optionKey=\"label\"\n// selected={connectionCategory}\n// select={setConnectionCategory}\n// t={t}\n// />\n\n// <CardLabel>{t(\"EKYC_CONNECTION_CATEGORY\")}</CardLabel>\n// <Dropdown\n// option={connectionTypeOptions}\n// optionKey=\"label\"\n// selected={connectionType}\n// select={setConnectionType}\n// t={t}\n// />\n\n// {toast && <Toast label={toast.message} error={toast.type === \"error\"} onClose={() => setToast(null)} />}\n// </FormStep>\n// {isEditing && !onSelect && (\n// <ActionBar style={{ position: \"static\", marginTop: \"20px\" }}>\n// <SubmitBar label={t(\"EKYC_UPDATE_AND_RETURN\")} onSubmit={handleUpdateAndReturn} />\n// </ActionBar>\n// )}\n// </Fragment>\n// );\n// };\n\n// export default MeterDetails;\n\n\n\n\nimport React, { useState, Fragment } from \"react\";\nimport {\n CardLabel,\n TextInput,\n Dropdown,\n UploadFile,\n Toast,\n FormStep,\n} from \"@djb25/digit-ui-react-components\";\n\nconst MeterDetails = ({ config, onSelect }) => {\n const tenantId = Digit.ULBService.getCurrentTenantId();\n\n // 🔹 STATES\n const [connectionCategory, setConnectionCategory] = useState(\"\");\n const [saType, setSaType] = useState(\"\");\n const [status, setStatus] = useState(\"\");\n\n const [mrCode, setMrCode] = useState(\"\");\n const [areaCode, setAreaCode] = useState(\"\");\n const [mrKey, setMrKey] = useState(\"\");\n\n const [meterNumber, setMeterNumber] = useState(\"\");\n const [meterMaker, setMeterMaker] = useState(\"\");\n\n const [meterStatus, setMeterStatus] = useState(null);\n const [meterCondition, setMeterCondition] = useState(null);\n const [meterLocation, setMeterLocation] = useState(null);\n\n const [lastBillReceived, setLastBillReceived] = useState(null);\n const [billMonthYear, setBillMonthYear] = useState(null);\n const [reason, setReason] = useState(\"\");\n\n const [accessToMeter, setAccessToMeter] = useState(null);\n const [sewerConnection, setSewerConnection] = useState(null);\n const [septicTank, setSepticTank] = useState(null);\n\n const [meterPhoto, setMeterPhoto] = useState(null);\n const [meterPhotoId, setMeterPhotoId] = useState(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 // 🔹 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\n if (sewerConnection?.name === \"No\" && !septicTank) return false;\n\n return true;\n };\n\n // 🔹 SUBMIT\n const onStepSelect = () => {\n if (!isValid()) {\n setToast({ type: \"error\", message: \"Fill all mandatory fields\" });\n return;\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 onSelect(config.key, data);\n };\n\n return (\n <Fragment>\n <FormStep onSelect={onStepSelect} config={config}>\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 { AppContainer, PrivateRoute, ModuleHeader, ArrowLeft, HomeIcon } from \"@djb25/digit-ui-react-components\";\nimport React from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Switch, useLocation, useRouteMatch } from \"react-router-dom\";\nimport Create from \"../employee/Create\";\nimport AadhaarVerification from \"../employee/AadhaarVerification\";\nimport AddressDetails from \"../employee/AddressDetails\";\nimport PropertyInfo from \"../employee/PropertyInfo\";\nimport MeterDetails from \"../employee/MeterDetails\";\nimport Review from \"../employee/Review\";\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 = [\n { icon: HomeIcon, path: \"/digit-ui/citizen\" },\n { label: t(getBreadcrumbLabel()) }\n ];\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 {t(\"CS_COMMON_BACK\")}\n </React.Fragment>\n }\n onLeftClick={() => window.history.back()}\n breadcrumbs={breadcrumbs}\n />\n\n <Switch>\n <PrivateRoute\n path={`${path}/create-kyc`}\n component={() => <Create />}\n />\n\n <PrivateRoute\n path={`${path}/aadhaar-verification`}\n component={() => <AadhaarVerification />}\n />\n\n <PrivateRoute\n path={`${path}/address-details`}\n component={() => <AddressDetails />}\n />\n\n <PrivateRoute\n path={`${path}/property-info`}\n component={() => <PropertyInfo />}\n />\n\n <PrivateRoute\n path={`${path}/meter-details`}\n component={() => <MeterDetails />}\n />\n\n <PrivateRoute\n path={`${path}/review`}\n component={() => <Review />}\n />\n\n <PrivateRoute\n path={`${path}/`}\n component={() => <Create />}\n />\n </Switch>\n </div>\n </AppContainer>\n );\n};\n\nexport default CitizenApp;\n","import React from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { useRouteMatch } from \"react-router-dom\";\nimport { CitizenHomeCard, DocumentIcon } from \"@djb25/digit-ui-react-components\";\nimport EKYCCard from \"./components/EKYCCard\";\nimport Inbox from \"./pages/employee/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 AadhaarVerification from \"./pages/employee/AadhaarVerification\";\nimport AddressDetails from \"./pages/employee/AddressDetails\";\nimport PropertyInfo from \"./pages/employee/PropertyInfo\";\nimport MeterDetails from \"./pages/employee/MeterDetails\";\nexport const EkycModule = ({ stateCode, userType, tenants }) => {\n const { path, url } = useRouteMatch();\n const moduleCode = \"EKYC\";\n const language = Digit.StoreData.getCurrentLanguage();\n const { isLoading, data: store } = Digit.Services.useStore({ stateCode, moduleCode, language });\n Digit.SessionStorage.set(\"EKYC_TENANTS\", tenants);\n\n if (isLoading) {\n return null;\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","_row$original6","tableData","items","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","useInboxTableConfig","_formState$tableForm","_formState$tableForm2","_formState$searchForm","formState","totalCount","table","dispatch","checkPathName","onSortingByData","inboxStyles","tableStyle","tableForm","tableColumnConfig","disableSortBy","fontSize","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","_finallyRethrows","finalizer","bind","SearchFormFieldsComponents","searchFormState","controlSearchForm","errors","Fragment","Label","Tooltip","Controller","name","control","defaultValue","rules","pattern","render","CardLabelError","Inbox","_formState$searchForm3","_formState$searchForm4","_dashboardData$dashbo2","businessService","initialStates","isInbox","location","useLocation","formInitValue","filterForm","sortBy","sortOrder","useReducer","formReducer","queryParams","search","keepPreviousData","searchDetails","_formState$searchForm2","isSearchActive","isSearchLoading","searchData","useSearchConnection","details","sourceData","_dashboardData$dashbo","consumerList","filteredData","isSearchItem","connectionDetails","_item$propertyInfo","_item$propertyInfo2","_item$connectionDetai","_item$propertyInfo3","_item$connectionDetai2","_item$connectionDetai3","applicationNo","propertyInfo","connectionNo","owner","consumerName","statusflag","sla","pathname","includes","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","SessionStorage","set","newLimit","Number","desc","propsForInboxTable","overflowX","overflowY","isInboxLoading","InboxComposer","_extends","UserIcon","size","DiaryIcon","TrashIcon","points","EditIcon","MapPinIcon","PlusIcon","_ref6","SaveIcon","_ref7","CheckIcon","_ref8","XIcon","_ref9","MOCK_SURVEYORS","role","MOCK_MRDS","code","zone","ConfirmDeleteModal","_ref0","mapping","onConfirm","onCancel","position","inset","alignItems","justifyContent","zIndex","borderRadius","boxShadow","gap","marginBottom","lineHeight","surveyorName","mrdName","border","Mapping","selectedSurveyor","setSelectedSurveyor","selectedMRD","setSelectedMRD","mappings","setMappings","editingId","setEditingId","editSurveyor","setEditSurveyor","editMRD","setEditMRD","deleteTarget","setDeleteTarget","toast","setToast","handleAddMapping","exists","some","m","surveyorId","mrdCode","Date","now","handleEditStart","find","s","handleEditSave","duplicate","handleEditCancel","handleDeleteConfirm","filter","handleSaveMappings","_ref1","isEditing","minWidth","flexShrink","_ref10","_ref11","minHeight","disabled","transition","marginTop","gridTemplateColumns","overflow","borderBottom","letterSpacing","textTransform","borderLeft","borderTop","Set","tableClassName","flexDirection","opacity","Toast","error","warning","isDsc","ConnectionDetailsView","path","useRouteMatch","showModal","setShowModal","selectedOption","setSelectedOption","handleStartVerification","onModalConfirm","parentPath","replace","statusFlag","isActive","toLowerCase","meterNumber","connectionType","address","x","y","rx","ry","phoneNumber","email","lastVerified","Modal","headerBarMain","headerBarEnd","actionSaveLabel","actionSaveOnSubmit","actionCancelLabel","actionCancelOnSubmit","RadioButtons","optionsKey","onSelect","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","float","bottom","checkForNA","undefined","boolToYesNo","extractActiveData","flowState","rawData","reviewWrapper","applicationReview","applicationData","Array","isArray","newData","Review","_editedProperty$conne","_editedProperty$conne2","_editedProperty$userT","_editedProperty$noOfF","_editedMeter$meterSta","_editedMeter$workingS","_editedMeter$lastBill","agree","setAgree","isSubmitting","setIsSubmitting","edits","activeKno","addressDetails","editedAddress","propertyDetails","editedProperty","meterDetails","editedMeter","useEkycSearchReview","fetchType","activeData","apiConn","apiAddr","apiProp","apiMeter","connectionData","addressRaw","connectionCategory","meterNo","mobileNo","ekycStatus","knumber","addressData","fullAddress","flatHouseNumber","flatNo","buildingTower","building","landmark","pinCode","pincode","ward","locality","assembly","gpsValid","latitude","longitude","whatsappNo","whatsappNumber","noOfPerson","noOfPersons","doorPhotoFilestoreId","doorPhotoFileStoreId","propertyData","pidNumber","typeOfConnection","connectionTypeData","connectionCategoryData","userType","userTypeData","numberOfFloors","noOfFloorsData","tenantName","tenantMobile","propertyDocumentFileStoreId","buildingImageFileStoreId","meterData","metered","meterStatusData","meterMake","meterLocationAddress","meterLocation","meterLatitude","meterLongitude","workingStatus","workingStatusData","lastBillRaised","lastBillRaisedData","systemMeterId","meterPhotoFileStoreId","handleDeclaration","handleFinalSubmit","_temp","Promise","resolve","EkycService","application_update","success","err","console","_wasThrown","_result","reject","baseUrl","CardHeader","margin","CardSubHeader","StatusTable","Row","actionButton","GenericFileIcon","CheckBox","checked","ActionBar","QueryClientContext","context","createContext","ReactQueryClientContext","getQueryClientContext","useQueryClient","queryClient","useContext","Error","AadhaarVerification","config","setKno","consumerType","setConsumerType","occupantType","setOccupantType","categoryType","setCategoryType","setConsumerName","firstName","setFirstName","middleName","setMiddleName","lastName","setLastName","gender","setGender","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","idFile","setIdFile","consent","setConsent","informantIsConsumer","setInformantIsConsumer","informantName","setInformantName","informantRelation","setInformantRelation","consumerTypeOptions","occupantOptions","genderOptions","uploadFile","setter","idSetter","file","files","UploadServices","Filestorage","res","_res$data","_res$data$files","_res$data$files$","fileStoreId","isValid","onStepSelect","FormStep","CardLabel","UploadFile","onUpload","ekycConfig","route","component","texts","header","submitBarLabel","timeLine","currentStep","actions","doorImage","EKYCForm","passedPath","match","setParams","userInfo","UserService","getUser","rest","goNext","skipStep","isAddMultiple","currentPath","pop","routeObj","nextStep","currentIndex","findIndex","c","redirectWithHistory","base","slice","join","handleSelect","obj","concat","indexRoute","formStepRoutes","isFormStep","sectionRefs","currentRoute","scrollIntoView","behavior","block","VerticalTimeline","showFinalStep","Switch","Route","Component","el","isCollapsible","defaultOpen","formData","Redirect","EmployeeApp","getBreadcrumbLabel","breadcrumbs","icon","AppContainer","ModuleHeader","leftContent","ArrowLeft","onLeftClick","back","PrivateRoute","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","log","selectphoto","_exit","_temp2","reader","FileReader","onloadend","readAsDataURL","removePhoto","maxLength","onDelete","src","alt","PropertyInfo","setPidNumber","propertyType","setPropertyType","subPropertyCategory","setSubPropertyCategory","noOfFloors","setNoOfFloors","floorNo","setFloorNo","noOfRooms","setNoOfRooms","noOfBeds","setNoOfBeds","dwellingUnits","setDwellingUnits","buildingImage","setBuildingImage","buildingImageId","setBuildingImageId","propertyTypeOptions","handleUpload","gridColumn","MeterDetails","setConnectionCategory","saType","setSaType","setStatus","mrCode","setMrCode","areaCode","setAreaCode","mrKey","setMrKey","setMeterNumber","meterMaker","setMeterMaker","meterStatus","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","isFrozen","uploadPhoto","CitizenApp","EkycModule","stateCode","tenants","url","language","StoreData","getCurrentLanguage","store","Services","useStore","EkycLinks","matchPath","i18nKey","CitizenHomeCard","DocumentIcon","componentsToRegister","EKYCModule","EKYCInbox","EKYCDesktopInbox","EKYCMobileInbox","EKYC_INBOX_FILTER","initEkycComponents","entries","setComponent"],"mappings":"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"}
|