@djb25/digit-ui-module-ekyc 1.0.6 → 1.0.7

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.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","../../../../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/Review.js","../src/pages/employee/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 }\n\n return <EmployeeModuleCard {...propsForModuleCard} />\n};\n\nexport default EKYCCard;\n","import React from \"react\";\nimport { Card } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\n\nconst StatusCards = ({ countData }) => {\n const { t } = useTranslation();\n\n return (\n <div className=\"ekyc-status-container\">\n <div className=\"ekyc-status-card\">\n <div className=\"count\">{countData?.total || 0}</div>\n <div className=\"label\">{t(\"EKYC_TOTAL\")}</div>\n </div>\n <div className=\"ekyc-status-card\">\n <div className=\"count pending\">{countData?.pending || 0}</div>\n <div className=\"label\">{t(\"EKYC_PENDING\")}</div>\n </div>\n <div className=\"ekyc-status-card\">\n <div className=\"count completed\">{countData?.completed || 0}</div>\n <div className=\"label\">{t(\"EKYC_COMPLETED\")}</div>\n </div>\n </div>\n );\n};\n\nexport default StatusCards;\n","import React, { useMemo } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { Table, SubmitBar, Header, Card, HomeIcon, PersonIcon } 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 [FilterComponent, setComp] = React.useState(() => Digit.ComponentRegistryService?.getComponent(filterComponent));\n\n const columns = useMemo(\n () => [\n {\n Header: t(\"EKYC_APPLICATION_NO\"),\n accessor: \"applicationNumber\",\n Cell: ({ row }) => {\n const applicationNumber = row.original?.applicationNumber || \"NA\";\n return (\n <Link to={`${parentRoute}/application-details/${applicationNumber}`}>\n <span className=\"ekyc-application-link\">{applicationNumber}</span>\n </Link>\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\" style={{ paddingBottom: \"16px\" }}>\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, Fragment } from \"react\";\nimport { TextInput, Card, SubmitBar, Header, HomeIcon } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport StatusCards from \"./StatusCards\";\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=\"inbox-container\">\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_CREATE_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 {/* <Card className=\"ekyc-metrics-card\" style={{ marginBottom: \"16px\", padding: \"16px\" }}>\n <StatusCards countData={props.countData} />\n </Card> */}\n\n <Card\n className=\"ekyc-search-card\"\n style={{ padding: \"24px\", marginBottom: \"24px\", borderRadius: \"12px\", boxShadow: \"0 4px 12px rgba(0,0,0,0.05)\" }}\n >\n <Header style={{ fontSize: \"24px\", marginBottom: \"20px\", fontWeight: \"700\", color: \"#0B0C0C\" }}>{t(\"EKYC_SEARCH_CONSUMER_HEADER\")}</Header>\n <form onSubmit={onSubmit}>\n <div style={{ display: \"flex\", gap: \"24px\", alignItems: \"flex-end\", flexWrap: \"wrap\" }}>\n <div style={{ flex: \"1\", minWidth: \"250px\" }}>\n <div className=\"filter-label\" style={{ fontWeight: \"600\", marginBottom: \"8px\", fontSize: \"14px\", color: \"#505A5F\" }}>\n {t(\"EKYC_K_NUMBER\")}\n </div>\n <div style={{ position: \"relative\" }}>\n <TextInput\n value={_searchParams?.kNumber}\n onChange={(e) => onChange(\"kNumber\", e.target.value)}\n placeholder={t(\"EKYC_K_NUMBER_PLACEHOLDER\")}\n style={{ borderRadius: \"8px\", paddingLeft: \"12px\", height: \"44px\" }}\n />\n </div>\n </div>\n\n <div style={{ flex: \"1\", minWidth: \"250px\" }}>\n <div className=\"filter-label\" style={{ fontWeight: \"600\", marginBottom: \"8px\", fontSize: \"14px\", color: \"#505A5F\" }}>\n {t(\"EKYC_K_NAME\")}\n </div>\n <div style={{ position: \"relative\" }}>\n <TextInput\n value={_searchParams?.kName}\n onChange={(e) => onChange(\"kName\", e.target.value)}\n placeholder={t(\"EKYC_K_NAME_PLACEHOLDER\")}\n style={{ borderRadius: \"8px\", paddingLeft: \"12px\", height: \"44px\" }}\n />\n </div>\n </div>\n </div>\n <div style={{ display: \"flex\", justifyContent: \"flex-end\", marginTop: \"20px\" }}>\n <div style={{ display: \"flex\", gap: \"12px\", alignItems: \"center\" }}>\n <button\n type=\"button\"\n onClick={onClear}\n style={{\n background: \"none\",\n border: \"none\",\n color: \"#0076f3ff\",\n fontWeight: \"600\",\n cursor: \"pointer\",\n fontSize: \"14px\",\n padding: \"10px\",\n }}\n >\n {t(\"ES_COMMON_CLEAR\")}\n </button>\n\n <SubmitBar\n label={t(\"ES_COMMON_SEARCH\")}\n onSubmit={onSubmit}\n style={{\n margin: 0,\n borderRadius: \"8px\",\n height: \"44px\",\n padding: \"0 32px\",\n // ❌ remove this (it breaks alignment)\n // marginTop: \"-55px\"\n }}\n />\n </div>\n </div>\n </form>\n </Card>\n {children}\n </div>\n </div>\n );\n};\n\nexport default SearchConsumer;\n","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 status: searchParams.status?.value || \"\"\n },\n {\n enabled: !!tenantId,\n }\n );\n\n const filteredData = useMemo(() => {\n const items = dashboardData?.dashboardInfo?.consumerList || [];\n return items.map(item => ({\n ...item,\n applicationNumber: item.kno || item.applicationNumber,\n citizenName: item.consumerName || item.citizenName,\n }));\n }, [dashboardData]);\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 };\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 { Card, CardHeader, StatusTable, Row, ActionBar, Modal, RadioButtons, Loader, CardLabel, SubmitBar } 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 = () => {\n setShowModal(true);\n };\n\n const onModalConfirm = () => {\n // Correctly handle redirection from create-kyc or dashboard\n const parentPath = path.includes(\"/create-kyc\") ? path.replace(\"/create-kyc\", \"\") : path.replace(\"/k-details\", \"\");\n history.push(`${parentPath}/aadhaar-verification`, { kNumber, selectedOption, connectionDetails });\n setShowModal(false);\n };\n\n const handleRaiseCorrection = () => {\n console.log(\"Raise Correction clicked\");\n };\n\n if (isLoading) {\n return <Loader />;\n }\n\n if (!connectionDetails) {\n return null;\n }\n\n return (\n <React.Fragment>\n <Card className=\"ekyc-create-card\" style={{ padding: \"24px\" }}>\n <CardHeader>{t(\"EKYC_K_NUMBER_DETAILS\")}</CardHeader>\n <StatusTable>\n <Row label={t(\"EKYC_K_NUMBER\")} text={kNumber || t(\"CS_NA\")} />\n <Row label={t(\"EKYC_K_NAME\")} text={kName || t(\"CS_NA\")} />\n </StatusTable>\n\n <CardHeader style={{ marginTop: \"24px\" }}>{t(\"EKYC_CONNECTION_DETAILS\")}</CardHeader>\n {connectionDetails?.connectionDetails ? (\n <StatusTable>\n <Row label={t(\"EKYC_CONSUMER_NAME\")} text={connectionDetails.connectionDetails.consumerName || t(\"CS_NA\")} />\n <Row label={t(\"EKYC_ADDRESS\")} text={connectionDetails.connectionDetails.address || t(\"CS_NA\")} />\n <Row label={t(\"EKYC_CONNECTION_TYPE\")} text={connectionDetails.connectionDetails.connectionType || t(\"CS_NA\")} />\n <Row label={t(\"EKYC_METER_NO\")} text={connectionDetails.connectionDetails.meterNumber || t(\"CS_NA\")} />\n <Row label={t(\"EKYC_PHONE_NO\")} text={connectionDetails.connectionDetails.phoneNumber || t(\"CS_NA\")} />\n <Row label={t(\"EKYC_EMAIL\")} text={connectionDetails.connectionDetails.email || t(\"CS_NA\")} />\n <Row label={t(\"EKYC_STATUS\")} text={connectionDetails.connectionDetails.statusflag || t(\"CS_NA\")} />\n </StatusTable>\n ) : (\n <CardLabel>{t(\"EKYC_NO_CONNECTION_DETAILS_FOUND\")}</CardLabel>\n )}\n\n <div style={{ display: \"flex\", justifyContent: \"flex-end\", marginTop: \"16px\" }}>\n <SubmitBar label={t(\"EKYC_START_VERIFICATION\")} onSubmit={handleStartVerification} style={{ borderRadius: \"12px\", margin: 0 }} />\n </div>\n {/* <button\n className=\"submit-bar\"\n style={{\n marginLeft: \"10px\",\n background: \"#3A8DCC\",\n border: \"none\",\n color: \"#fff\",\n padding: \"10px 24px\",\n borderRadius: \"12px\",\n fontWeight: \"600\",\n cursor: \"pointer\",\n boxShadow: \"0 2px 4px rgba(0,0,0,0.1)\"\n }}\n onClick={handleRaiseCorrection}\n >\n {t(\"EKYC_RAISE_CORRECTION\")}\n </button> */}\n </Card>\n\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;\n","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 sessionStorage.setItem(\"EKYC_CREATE_SEARCH_PARAMS\", JSON.stringify(params));\n sessionStorage.setItem(\"EKYC_CREATE_SEARCH_PERFORMED\", \"true\");\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","// 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} from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useLocation } from \"react-router-dom\";\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 };\n\n const addrDetails = flowState.connectionDetails?.addressDetails || {};\n\n const [addressType, setAddressType] = useState({ code: \"AADHAAR\", name: \"EKYC_AADHAAR_ADDRESS\" });\n const [correctAddress, setCorrectAddress] = useState({ code: \"NO\", name: \"CORE_COMMON_NO\" });\n const [fullAddress, setFullAddress] = useState(addrDetails.fullAddress || \"\");\n const [flatNo, setFlatNo] = useState(addrDetails.flatHouseNumber || \"\");\n const [building, setBuilding] = useState(addrDetails.buildingTower || \"\");\n const [landmark, setLandmark] = useState(addrDetails.landmark || \"\");\n const [pincode, setPincode] = useState(addrDetails.pinCode || \"\");\n const [doorPhoto, setDoorPhoto] = useState(null);\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(addrDetails.assembly ? { name: addrDetails.assembly } : null);\n const [ward, setWard] = useState(addrDetails.ward ? { name: addrDetails.ward } : null);\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 assembly: assembly?.name,\n ward: ward?.name\n };\n if (onComplete) {\n onComplete(payload);\n } else {\n const { kNumber, selectedOption, connectionDetails } = flowState;\n history.push(\"/digit-ui/employee/ekyc/property-info\", {\n kNumber, selectedOption, connectionDetails, addressDetails: payload,\n });\n }\n };\n\n const handleCapture = (e) => {\n const file = e.target.files[0];\n if (!file) return;\n const reader = new FileReader();\n reader.onloadend = () => setDoorPhoto(reader.result);\n reader.readAsDataURL(file);\n };\n\n const removePhoto = () => {\n setDoorPhoto(null);\n if (fileInputRef.current) fileInputRef.current.value = \"\";\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_DOOR_PHOTO_HEADER\")}\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 {/* Drop zone */}\n <input\n type=\"file\"\n ref={fileInputRef}\n onChange={handleCapture}\n accept=\"image/*\"\n style={{ display: \"none\" }}\n />\n <div\n onClick={!doorPhoto ? () => fileInputRef.current.click() : undefined}\n onMouseOver={(e) => { if (!doorPhoto) e.currentTarget.style.borderColor = \"#185FA5\"; }}\n onMouseOut={(e) => { if (!doorPhoto) e.currentTarget.style.borderColor = \"#D0D5DD\"; }}\n style={{\n border: \"1.5px dashed #D0D5DD\",\n borderRadius: \"10px\",\n minHeight: \"160px\",\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n justifyContent: \"center\",\n backgroundColor: \"#F9FAFB\",\n cursor: doorPhoto ? \"default\" : \"pointer\",\n overflow: \"hidden\",\n transition: \"border-color 0.15s\",\n position: \"relative\",\n padding: doorPhoto ? \"0\" : \"32px 24px\",\n }}\n >\n {!doorPhoto ? (\n <>\n <div style={{\n width: \"52px\", height: \"52px\", borderRadius: \"50%\",\n background: \"#E6F1FB\", display: \"flex\",\n alignItems: \"center\", justifyContent: \"center\", marginBottom: \"12px\",\n }}>\n <CameraIcon size={26} />\n </div>\n <div style={{ fontWeight: \"600\", fontSize: \"14px\", color: \"#101828\", marginBottom: \"4px\" }}>\n {t(\"EKYC_TAP_TO_CAPTURE\") || \"Tap to capture\"}\n </div>\n <div style={{ fontSize: \"12px\", color: \"#667085\" }}>\n {t(\"EKYC_CAPTURE_DOOR_IMAGE\")}\n </div>\n </>\n ) : (\n <>\n <img\n src={doorPhoto}\n alt=\"Door\"\n style={{ width: \"100%\", maxHeight: \"280px\", objectFit: \"cover\", display: \"block\" }}\n />\n <button\n onClick={(e) => { e.stopPropagation(); removePhoto(); }}\n style={{\n position: \"absolute\", top: \"10px\", right: \"10px\",\n background: \"#fff\", border: \"0.5px solid #EAECF0\",\n borderRadius: \"7px\", padding: \"6px 10px\",\n display: \"flex\", alignItems: \"center\", gap: \"5px\",\n cursor: \"pointer\", fontSize: \"12px\", color: \"#D92D20\", fontWeight: \"500\",\n }}\n >\n <TrashIcon size={13} /> {t(\"EKYC_REMOVE\")}\n </button>\n </>\n )}\n </div>\n\n {/* Submit */}\n {isSection ? (\n <div style={{ marginTop: \"24px\" }}>\n <SubmitBar\n label={t(\"EKYC_COMPLETE_VERIFICATION_AND_PROCEED\")}\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 </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_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 < 3 ? \"18px\" : 0 }}>\n {i < 3 && (\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 } 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 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 details =\n connectionDetails?.connectionDetails ||\n connectionDetails?.connectionDetailsInfo ||\n {};\n\n // ── State ──\n const [aadhaarLastFour, setAadhaarLastFour] = useState(\"\");\n const [isAadhaarVerified, setIsAadhaarVerified] = useState(false);\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({ code: \"NO\", name: \"CORE_COMMON_NO\" });\n const [userName, setUserName] = useState(details.consumerName || \"\");\n\n const [mobileChange, setMobileChange] = useState({ code: \"NO\", name: \"CORE_COMMON_NO\" });\n const [mobileNumber, setMobileNumber] = useState(details.phoneNumber || \"\");\n\n const [whatsappNumber, setWhatsappNumber] = useState(details.phoneNumber || \"\");\n const [email, setEmail] = useState(details.email || \"\");\n const [noOfPersons, setNoOfPersons] = useState(\n connectionDetails?.addressDetails?.noOfPerson || \"\"\n );\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 });\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_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 < 3 && <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\") || \"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}>{details.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\" }}>{details.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 </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 } from \"react\";\nimport {\n Card,\n CardLabel,\n TextInput,\n SubmitBar,\n CardHeader,\n ActionBar,\n Dropdown,\n InfoBannerIcon,\n HomeIcon,\n} from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useLocation } from \"react-router-dom\";\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 || { kNumber: \"EKYC-1234567890\" };\n const { kNumber } = flowState;\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(\"OWNER\");\n const [pidNumber, setPidNumber] = useState(\"\");\n const [connectionCategory, setConnectionCategory] = useState(null);\n const [connectionType, setConnectionType] = useState(null);\n const [userType, setUserType] = useState(null);\n const [noOfFloors, setNoOfFloors] = useState(null);\n const [propertyDocument, setPropertyDocument] = useState(null);\n const [buildingPhoto, setBuildingPhoto] = useState(null);\n\n const fileRef = useRef(null);\n const cameraRef = useRef(null);\n\n const handleSaveAndContinue = () => {\n history.push(\"/digit-ui/employee/ekyc/review\", {\n ...flowState,\n propertyDetails: {\n ownerType, pidNumber, connectionType,\n connectionCategory, userType, noOfFloors,\n propertyDocument, buildingPhoto,\n },\n });\n };\n\n const handleFileUpload = (e) => {\n const file = e.target.files[0];\n if (!file) return;\n setPropertyDocument(file);\n };\n\n const handlePhotoCapture = (e) => {\n const file = e.target.files[0];\n if (!file) return;\n const reader = new FileReader();\n reader.onloadend = () => setBuildingPhoto(reader.result);\n reader.readAsDataURL(file);\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 <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_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 < 3 ? \"18px\" : 0 }}>\n {i < 3 && (\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 <input type=\"file\" ref={fileRef} accept=\".pdf\" style={{ display: \"none\" }} onChange={handleFileUpload} />\n <div\n onClick={() => pidNumber && fileRef.current.click()}\n onMouseOver={(e) => { if (pidNumber) e.currentTarget.style.borderColor = \"#185FA5\"; }}\n onMouseOut={(e) => { if (pidNumber) e.currentTarget.style.borderColor = \"#B5D4F4\"; }}\n style={{\n border: pidNumber ? \"1.5px dashed #B5D4F4\" : \"1.5px dashed #D0D5DD\",\n borderRadius: \"10px\",\n padding: \"28px 20px\",\n textAlign: \"center\",\n cursor: pidNumber ? \"pointer\" : \"not-allowed\",\n backgroundColor: pidNumber ? \"#E6F1FB\" : \"#F9FAFB\",\n minHeight: \"160px\",\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n justifyContent: \"center\",\n gap: \"10px\",\n transition: \"all 0.15s\",\n opacity: pidNumber ? 1 : 0.6,\n }}\n >\n <div style={{\n background: pidNumber ? \"#fff\" : \"#EAECF0\",\n padding: \"10px\",\n borderRadius: \"10px\",\n display: \"flex\",\n filter: pidNumber ? \"none\" : \"grayscale(100%)\"\n }}>\n <svg width=\"32\" height=\"32\" viewBox=\"0 0 24 24\" fill={pidNumber ? \"#185FA5\" : \"#98A2B3\"}>\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 <path d=\"M12 18v-4M12 14l-2 2M12 14l2 2\" stroke=\"#fff\" strokeWidth=\"1.5\" strokeLinecap=\"round\" />\n </svg>\n </div>\n {propertyDocument ? (\n <div style={{ fontSize: \"13px\", fontWeight: \"600\", color: \"#0F6E56\" }}>\n ✓ {propertyDocument.name}\n </div>\n ) : (\n <>\n <div style={{ fontSize: \"13px\", fontWeight: \"600\", color: pidNumber ? \"#185FA5\" : \"#98A2B3\" }}>\n {pidNumber ? (t(\"EKYC_UPLOAD_PROPERTY_DOC_CTA\") || \"Tap to upload\") : (t(\"EKYC_ENTER_PID_FIRST_CTA\") || \"Enter PID to upload\")}\n </div>\n <div style={{ fontSize: \"12px\", color: pidNumber ? \"#378ADD\" : \"#98A2B3\" }}>{pidNumber ? \"PDF | Max 5MB\" : \"Requires PID\"}</div>\n </>\n )}\n </div>\n </div>\n\n {/* Camera Capture */}\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 <input type=\"file\" ref={cameraRef} accept=\"image/*\" capture=\"environment\" style={{ display: \"none\" }} onChange={handlePhotoCapture} />\n <div\n onClick={!buildingPhoto ? () => cameraRef.current.click() : undefined}\n onMouseOver={(e) => { if (!buildingPhoto) e.currentTarget.style.borderColor = \"#185FA5\"; }}\n onMouseOut={(e) => { if (!buildingPhoto) e.currentTarget.style.borderColor = \"#D0D5DD\"; }}\n style={{\n border: \"1.5px dashed #D0D5DD\", borderRadius: \"10px\",\n minHeight: \"160px\", display: \"flex\", flexDirection: \"column\",\n alignItems: \"center\", justifyContent: \"center\",\n backgroundColor: \"#F9FAFB\",\n cursor: buildingPhoto ? \"default\" : \"pointer\",\n overflow: \"hidden\", transition: \"border-color 0.15s\",\n position: \"relative\",\n padding: buildingPhoto ? \"0\" : \"28px 20px\",\n }}\n >\n {!buildingPhoto ? (\n <>\n <div style={{ background: \"#E6F1FB\", width: \"52px\", height: \"52px\", borderRadius: \"50%\", display: \"flex\", alignItems: \"center\", justifyContent: \"center\", marginBottom: \"10px\" }}>\n <CameraIcon size={26} />\n </div>\n <div style={{ fontSize: \"13px\", fontWeight: \"600\", color: \"#101828\" }}>\n {t(\"EKYC_TAP_TO_CAPTURE\") || \"Tap to capture\"}\n </div>\n <div style={{ fontSize: \"12px\", color: \"#667085\", marginTop: \"2px\" }}>\n {t(\"EKYC_BUILDING_PHOTO\") || \"Building photo with GPS\"}\n </div>\n <div style={{ fontSize: \"11px\", color: \"#98A2B3\", marginTop: \"2px\" }}>\n JPG, PNG | Max 2MB\n </div>\n </>\n ) : (\n <>\n <img src={buildingPhoto} alt=\"Building\" style={{ width: \"100%\", maxHeight: \"200px\", objectFit: \"cover\", display: \"block\" }} />\n <button\n onClick={(e) => { e.stopPropagation(); setBuildingPhoto(null); if (cameraRef.current) cameraRef.current.value = \"\"; }}\n style={{\n position: \"absolute\", top: \"8px\", right: \"8px\",\n background: \"#fff\", border: \"0.5px solid #EAECF0\",\n borderRadius: \"7px\", padding: \"5px 10px\",\n display: \"flex\", alignItems: \"center\", gap: \"5px\",\n cursor: \"pointer\", fontSize: \"12px\", color: \"#D92D20\", fontWeight: \"500\",\n }}\n >\n <TrashIcon size={13} /> {t(\"EKYC_REMOVE\") || \"Remove\"}\n </button>\n </>\n )}\n </div>\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 );\n};\n\nexport default PropertyInfo;","import React, { Fragment, useState } 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\";\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 }) => (\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\" }}>\n {row.value}\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 const {\n kNumber = \"EKYC-1234567890\",\n aadhaarDetails = {},\n addressDetails = {},\n propertyDetails = {},\n } = location.state || {};\n\n const [isSubmitting, setIsSubmitting] = useState(false);\n const [toast, setToast] = useState(null);\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 setIsSubmitting(true);\n setToast(null);\n try {\n const tenantId = Digit.ULBService.getCurrentTenantId() || \"dl.djb\";\n const userInfo = Digit.UserService.getUser()?.info || {};\n\n // ── 1. Upload property document (PDF File object) ──────────────────────\n const propertyDocFile = propertyDetails.propertyDocument || null; // File object from <input>\n const propertyDocFileStoreId = await uploadFile(propertyDocFile, tenantId);\n\n // ── 2. Upload building photo (data-URL string from camera capture) ─────\n let buildingImageFileStoreId = null;\n if (propertyDetails.buildingPhoto) {\n const photoFile = dataUrlToFile(propertyDetails.buildingPhoto, \"building_photo.jpg\");\n buildingImageFileStoreId = await uploadFile(photoFile, tenantId);\n }\n\n // ── 3. Build request payload ───────────────────────────────────────────\n const requestBody = {\n RequestInfo: {\n apiId: \"Rainmaker\",\n ver: \"1.0\",\n msgId: `${Date.now()}|${navigator.language || \"en_IN\"}`,\n tenantId,\n authToken: userInfo.access_token || Digit.UserService.getUser()?.access_token || \"\",\n },\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 };\n\n // ── 4. Call the update API ─────────────────────────────────────────────\n await Digit.CustomService.getResponse({\n url: \"/ekyc-service/user/application/_update\",\n params: { tenantId },\n body: requestBody,\n useCache: false,\n method: \"POST\",\n });\n\n setToast({ type: \"success\", message: t(\"EKYC_SUBMIT_SUCCESS\") || \"Application submitted successfully!\" });\n setTimeout(() => {\n history.push(\"/digit-ui/employee/ekyc/dashboard\");\n }, 1800);\n } catch (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 } finally {\n setIsSubmitting(false);\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 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_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 < 3 ? \"18px\" : 0,\n }}>\n {i < 3 && (\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 rows={[\n { label: t(\"EKYC_NAME\") || \"Name\", value: aadhaarDetails.userName || \"Rajesh Kumar Singh\" },\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\" },\n { label: t(\"EKYC_EMAIL_ADDRESS\") || \"Email\", value: aadhaarDetails.email || null },\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 rows={[\n { label: t(\"EKYC_FULL_ADDRESS\") || \"Full address\", value: addressDetails.fullAddress || \"H.No. 123, Sector 15, Rohini, Delhi – 110085\" },\n { label: t(\"EKYC_FLAT_HOUSE_NUMBER\") || \"Flat / House no.\", value: addressDetails.flatNo || null },\n { label: t(\"EKYC_BUILDING_TOWER\") || \"Building\", value: addressDetails.building || null },\n { label: t(\"EKYC_LANDMARK\") || \"Landmark\", value: addressDetails.landmark || null },\n { label: t(\"EKYC_PINCODE\") || \"Pincode\", value: addressDetails.pincode || \"110085\" },\n { label: t(\"EKYC_ASSEMBLY\") || \"Assembly\", value: addressDetails.assembly || \"AC-12 Chandni Chowk\" },\n { label: t(\"EKYC_WARD\") || \"Ward\", value: addressDetails.ward || \"WARD-45 Civil Lines\" },\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 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 },\n { label: t(\"EKYC_TYPE_OF_CONNECTION\") || \"Type of connection\", value: propertyDetails.connectionCategory?.label || null },\n { label: t(\"EKYC_CONNECTION_CATEGORY\") || \"Connection category\", value: propertyDetails.connectionType?.label || null },\n { label: t(\"EKYC_USER_TYPE\") || \"User type\", value: propertyDetails.userType?.label || null },\n { label: t(\"EKYC_NO_OF_FLOORS\") || \"No. of floors\", value: propertyDetails.noOfFloors?.label || null },\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\";\nimport Create from \"./Create\";\nimport AadhaarVerification from \"./AadhaarVerification\";\nimport AddressDetails from \"./AddressDetails\";\nimport PropertyInfo from \"./PropertyInfo\";\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(\"/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\">\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}/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}/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 React from \"react\";\nimport { useRouteMatch } from \"react-router-dom\";\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\";\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 null;\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};\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","StatusCards","_ref","countData","className","total","pending","completed","DesktopInbox","tableConfig","filterComponent","props","data","isLoading","onSort","onNextPage","onPrevPage","currentPage","pageSizeLimit","onPageSizeChange","parentRoute","searchParams","sortParams","totalRecords","onSearch","searchFields","FilterComponent","setComp","useState","_Digit$ComponentRegis","Digit","ComponentRegistryService","getComponent","columns","useMemo","Header","accessor","Cell","_ref2","_row$original","row","applicationNumber","original","Link","to","_ref3","_row$original2","citizenName","_ref4","_row$original3","status","tableData","items","style","paddingBottom","Card","display","alignItems","padding","marginBottom","borderRadius","color","marginRight","HomeIcon","width","height","fontWeight","fontSize","defaultSearchParams","onFilterChange","type","moduleCode","flex","marginLeft","Table","getCellProps","cellInfo","SearchConsumer","children","_searchParams","setSearchParams","onChange","key","value","prev","onSubmit","e","preventDefault","onClear","cleared","kNumber","kName","boxShadow","gap","flexWrap","minWidth","position","TextInput","target","placeholder","paddingLeft","justifyContent","marginTop","onClick","background","border","cursor","SubmitBar","margin","MobileInbox","_data$items","mobileData","map","item","mobileNumber","Loader","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","_searchParams$status","_dashboardData$dashbo2","businessService","initialStates","isInbox","tenantId","ULBService","getCurrentTenantId","pageOffset","setPageOffset","pageSize","setPageSize","setSortParams","desc","defaultStatusOption","dashboardData","isFetching","Hooks","ekyc","useEkycSurveyorDashboard","offset","limit","enabled","filteredData","_dashboardData$dashbo","dashboardInfo","consumerList","kno","consumerName","info","rejected","totalCount","handleSearch","useCallback","filterParam","fetchNextPage","fetchPrevPage","Math","max","handlePageSizeChange","newSize","Number","handleSort","args","name","options","optionsKey","Utils","browser","isMobile","floor","ConnectionDetailsView","connectionDetails","history","useHistory","path","useRouteMatch","showModal","setShowModal","selectedOption","setSelectedOption","code","handleStartVerification","onModalConfirm","parentPath","includes","replace","push","Fragment","CardHeader","StatusTable","Row","address","connectionType","meterNumber","phoneNumber","email","statusflag","CardLabel","Modal","headerBarMain","headerBarEnd","actionSaveLabel","actionSaveOnSubmit","actionCancelLabel","actionCancelOnSubmit","RadioButtons","onSelect","flexDirection","buttonStyle","Create","saved","sessionStorage","getItem","JSON","parse","searchPerformed","setSearchPerformed","showToast","setShowToast","isSearching","error","revalidate","useSearchConnection","details","onError","_error$response","_error$response$data","_error$response$data$","_error$response$data$2","response","Errors","message","removeItem","params","setItem","stringify","closeToast","Toast","isDsc","_iteratorSymbol","Symbol","iterator","_asyncIteratorSymbol","asyncIterator","_catch","body","recover","result","then","_finallyRethrows","finalizer","bind","CameraIcon","size","viewBox","fill","d","TargetIcon","PincodeIcon","_ref5","TrashIcon","_ref6","stroke","strokeWidth","strokeLinecap","points","CheckIcon","_ref7","IconInput","_ref8","icon","topAligned","inputStyle","left","top","transform","zIndex","opacity","pointerEvents","_extends","textInputStyle","paddingRight","SectionHead","_ref9","whiteSpace","AddressDetails","_ref1","_flowState$connection","_mdmsRes$egovLocatio","_mdmsRes$egovLocatio$","_mdmsRes$egovLocatio2","_mdmsRes$egovLocatio3","isSection","onComplete","parentState","location","useLocation","flowState","state","addrDetails","addressDetails","addressType","setAddressType","correctAddress","setCorrectAddress","fullAddress","setFullAddress","flatNo","setFlatNo","flatHouseNumber","building","setBuilding","buildingTower","landmark","setLandmark","pincode","setPincode","pinCode","doorPhoto","setDoorPhoto","isLocationFetching","setIsLocationFetching","fileInputRef","useRef","mdmsData","isMdmsLoading","useCommonMDMS","mdmsRes","MdmsRes","adminHierarchy","TenantBoundary","find","h","hierarchyType","rootBoundary","boundary","getAssemblies","boundaries","assemblies","targetLabel","_boundary$children","toLowerCase","getBlocks","blocks","child","_child$children","Array","isArray","assembly","setAssembly","ward","setWard","useEffect","foundAssembly","a","b","addressOptions","yesNoOptions","handleCompleteVerification","payload","handleCapture","file","files","reader","FileReader","onloadend","readAsDataURL","removePhoto","current","handleUseCurrentLocation","navigator","alert","geolocation","getCurrentPosition","_ref10","coords","latitude","longitude","Promise","resolve","fetch","res","ok","Error","json","amenity","road","neighbourhood","suburb","city","postcode","filter","Boolean","join","err","console","_wasThrown","_result","reject","enableHighAccuracy","timeout","maximumAge","renderContent","animation","LocationIcon","styles","innerStyles","backgroundColor","flexShrink","lineHeight","undefined","transition","onMouseOver","currentTarget","onMouseOut","borderTopColor","textTransform","letterSpacing","PropertyHouse","minHeight","gridTemplateColumns","test","maxLength","borderTop","val","disabled","InfoBannerIcon","ref","accept","click","borderColor","overflow","src","alt","maxHeight","objectFit","stopPropagation","right","ActionBar","x","y","rx","done","active","step","i","paddingTop","LockIcon","UserIcon","cx","cy","r","PhoneIcon","WhatsappIcon","MailIcon","UsersIcon","rightIcon","RadioToggleRow","_ref0","AadhaarVerification","_connectionDetails$ad","addressSectionRef","connectionDetailsInfo","aadhaarLastFour","setAadhaarLastFour","isAadhaarVerified","setIsAadhaarVerified","isVerifying","setIsVerifying","showOtpField","setShowOtpField","otp","setOtp","otpError","setOtpError","nameCorrect","setNameCorrect","userName","setUserName","mobileChange","setMobileChange","setMobileNumber","whatsappNumber","setWhatsappNumber","setEmail","noOfPersons","setNoOfPersons","noOfPerson","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","pidNumber","setPidNumber","connectionCategory","setConnectionCategory","setConnectionType","userType","setUserType","noOfFloors","setNoOfFloors","propertyDocument","setPropertyDocument","buildingPhoto","setBuildingPhoto","fileRef","cameraRef","propertyDetails","handleFileUpload","handlePhotoCapture","connectionCategoryOptions","propertyTypeV2","connectionTypeOptions","connectionTypeV2","userTypeOptions","userTypeV2","floorOptions","floorCount","fontStyle","capture","LocationIcon2","EditIcon","ReviewCard","title","onEdit","editLabel","rows","borderBottom","wordBreak","Review","_propertyDetails$conn3","_propertyDetails$conn4","_propertyDetails$user2","_propertyDetails$noOf2","isSubmitting","setIsSubmitting","toast","setToast","uploadFile","UploadServices","Filestorage","_res$data","_res$data$files","_res$data$files$","fileStoreId","dataUrlToFile","dataUrl","filename","arr","mime","match","bstr","atob","n","u8arr","Uint8Array","charCodeAt","File","_temp3","_Digit$UserService$ge","userInfo","UserService","getUser","propertyDocFile","propertyDocFileStoreId","_temp2","_Digit$UserService$ge2","_propertyDetails$user","_propertyDetails$noOf","_propertyDetails$conn","_propertyDetails$conn2","requestBody","RequestInfo","apiId","ver","msgId","Date","now","language","authToken","access_token","updateType","propertyDocumentFileStoreId","buildingImageFileStoreId","noOfFloor","parseInt","typeOfConnection","modifiedBy","CustomService","getResponse","url","useCache","method","_temp","photoFile","_uploadFile","_err$response","_err$response$data","_err$response$data$Er","_err$response$data$Er2","handleEditAadhaar","handleEditAddress","handleEditProperty","success","EmployeeApp","getBreadcrumbLabel","pathname","breadcrumbs","AppContainer","ModuleHeader","leftContent","ArrowLeft","onLeftClick","window","back","Switch","PrivateRoute","component","EkycModule","stateCode","tenants","StoreData","getCurrentLanguage","store","Services","useStore","SessionStorage","set","componentsToRegister","EKYCModule","EKYCInbox","EKYCDesktopInbox","EKYCMobileInbox","EKYC_INBOX_FILTER","initEkycComponents","Object","entries","forEach","setComponent"],"mappings":";;;;;;;;AAIA,MAAMA,QAAQ,GAAGA,MAAM;EACnB,MAAM;IAAEC;GAAG,GAAGC,2BAAc,EAAE;EAE9B,MAAMC,kBAAkB,GAAG;IACvBC,IAAI,eAAEC,cAAA,CAAAC,aAAA,CAACC,iCAAU,MAAE,CAAC;IACpBC,UAAU,EAAEP,CAAC,CAAC,kBAAkB,CAAC;IACjCQ,IAAI,EAAE,CACF;MACIC,KAAK,EAAE,GAAG;MACVC,KAAK,EAAEV,CAAC,CAAC,YAAY,CAAC;MACtBW,IAAI,EAAE;KACT,CACJ;IACDC,KAAK,EAAE,CACH;MACIF,KAAK,EAAEV,CAAC,CAAC,gBAAgB,CAAC;MAC1BW,IAAI,EAAE;KACT,EACD;MACID,KAAK,EAAEV,CAAC,CAAC,iBAAiB,CAAC;MAC3BW,IAAI,EAAE;KACT;GAER;EAED,oBAAOP,cAAA,CAAAC,aAAA,CAACQ,yCAAkB,EAAKX,kBAAqB,CAAC;AACzD,CAAC;;AC1BD,MAAMY,WAAW,GAAGC,IAAA,IAAmB;EAAA,IAAlB;IAAEC;GAAW,GAAAD,IAAA;EAC9B,MAAM;IAAEf;GAAG,GAAGC,2BAAc,EAAE;EAE9B,oBACIG,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACXb,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACXb,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;KAAS,CAAAD,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAEE,KAAK,KAAI,CAAO,CAAC,eACpDd,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;KAASjB,CAAC,CAAC,YAAY,CAAO,CAC5C,CAAC,eACNI,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACXb,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;KAAiB,CAAAD,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAEG,OAAO,KAAI,CAAO,CAAC,eAC9Df,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;KAASjB,CAAC,CAAC,cAAc,CAAO,CAC9C,CAAC,eACNI,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACXb,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;KAAmB,CAAAD,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAEI,SAAS,KAAI,CAAO,CAAC,eAClEhB,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;KAASjB,CAAC,CAAC,gBAAgB,CAAO,CAChD,CACJ,CAAC;AAEd,CAAC;;ACjBD,MAAMqB,YAAY,GAAGN,IAAA,IAAgD;EAAA,IAA/C;IAAEO,WAAW;IAAEC,eAAe;IAAE,GAAGC;GAAO,GAAAT,IAAA;EAC9D,MAAM;IACJU,IAAI;IACJC,SAAS;IACTC,MAAM;IACNC,UAAU;IACVC,UAAU;IACVC,WAAW;IACXC,aAAa;IACbC,gBAAgB;IAChBC,WAAW;IACXC,YAAY;IACZC,UAAU;IACVC,YAAY;IACZpB,SAAS;IACTqB,QAAQ;IACRC;GACD,GAAGd,KAAK;EACT,MAAM;IAAExB;GAAG,GAAGC,2BAAc,EAAE;EAC9B,MAAM,CAACsC,eAAe,EAAEC,OAAO,CAAC,GAAGpC,cAAK,CAACqC,QAAQ,CAAC;IAAA,IAAAC,qBAAA;IAAA,QAAAA,qBAAA,GAAMC,KAAK,CAACC,wBAAwB,cAAAF,qBAAA,uBAA9BA,qBAAA,CAAgCG,YAAY,CAACtB,eAAe,CAAC;IAAC;EAEtH,MAAMuB,OAAO,GAAGC,aAAO,CACrB,MAAM,CACJ;IACEC,MAAM,EAAEhD,CAAC,CAAC,qBAAqB,CAAC;IAChCiD,QAAQ,EAAE,mBAAmB;IAC7BC,IAAI,EAAEC,KAAA,IAAa;MAAA,IAAAC,aAAA;MAAA,IAAZ;QAAEC;OAAK,GAAAF,KAAA;MACZ,MAAMG,iBAAiB,GAAG,EAAAF,aAAA,GAAAC,GAAG,CAACE,QAAQ,cAAAH,aAAA,uBAAZA,aAAA,CAAcE,iBAAiB,KAAI,IAAI;MACjE,oBACElD,cAAA,CAAAC,aAAA,CAACmD,mBAAI;QAACC,EAAE,EAAE,GAAGxB,WAAW,wBAAwBqB,iBAAiB;sBAC/DlD,cAAA,CAAAC,aAAA;QAAMY,SAAS,EAAC;SAAyBqC,iBAAwB,CAC7D,CAAC;;GAGZ,EACD;IACEN,MAAM,EAAEhD,CAAC,CAAC,mBAAmB,CAAC;IAC9BiD,QAAQ,EAAE,aAAa;IACvBC,IAAI,EAAEQ,KAAA;MAAA,IAAAC,cAAA;MAAA,IAAC;QAAEN;OAAK,GAAAK,KAAA;MAAA,oBAAKtD,cAAA,CAAAC,aAAA,eAAO,EAAAsD,cAAA,GAAAN,GAAG,CAACE,QAAQ,cAAAI,cAAA,uBAAZA,cAAA,CAAcC,WAAW,KAAI,IAAW,CAAC;;GACpE,EAMD;IACEZ,MAAM,EAAEhD,CAAC,CAAC,aAAa,CAAC;IACxBiD,QAAQ,EAAE,QAAQ;IAClBC,IAAI,EAAEW,KAAA,IAAa;MAAA,IAAAC,cAAA;MAAA,IAAZ;QAAET;OAAK,GAAAQ,KAAA;MACZ,MAAME,MAAM,GAAG,EAAAD,cAAA,GAAAT,GAAG,CAACE,QAAQ,cAAAO,cAAA,uBAAZA,cAAA,CAAcC,MAAM,KAAI,SAAS;MAChD,oBAAO3D,cAAA,CAAAC,aAAA;QAAMY,SAAS,EAAE,mBAAmB8C,MAAM;SAAK/D,CAAC,CAAC,GAAG+D,MAAM,EAAE,CAAQ,CAAC;;GAE/E,CACF,EACD,CAAC/D,CAAC,EAAEiC,WAAW,CACjB,CAAC;EAED,MAAM+B,SAAS,GAAGjB,aAAO,CAAC,MAAM;IAC9B,OAAO,CAAAtB,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEwC,KAAK,KAAI,EAAE;GACzB,EAAE,CAACxC,IAAI,CAAC,CAAC;EAEV,oBACErB,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC,iBAAiB;IAACiD,KAAK,EAAE;MAAEC,aAAa,EAAE;;kBACvD/D,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBAEbb,cAAA,CAAAC,aAAA,CAAC+D,2BAAI;IACHnD,SAAS,EAAC,oBAAoB;IAC9BiD,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEC,OAAO,EAAE,MAAM;MAAEC,YAAY,EAAE,MAAM;MAAEC,YAAY,EAAE;;kBAErGrE,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC,gBAAgB;IAACiD,KAAK,EAAE;MAAEQ,KAAK,EAAE,SAAS;MAAEC,WAAW,EAAE;;kBACtEvE,cAAA,CAAAC,aAAA,CAACuE,+BAAQ;IAACV,KAAK,EAAE;MAAEW,KAAK,EAAE,MAAM;MAAEC,MAAM,EAAE;;GAAW,CAClD,CAAC,eACN1E,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEa,UAAU,EAAE,KAAK;MAAEC,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KAAc1E,CAAC,CAAC,kBAAkB,CAAO,CAC/F,CAAC,eAEPI,cAAA,CAAAC,aAAA,cACGkC,eAAe,iBACdnC,cAAA,CAAAC,aAAA,CAACkC,eAAe;IACd0C,mBAAmB,EAAEzD,KAAK,CAACyD,mBAAoB;IAC/CC,cAAc,EAAE1D,KAAK,CAACa,QAAS;IAC/BH,YAAY,EAAEA,YAAa;IAC3BiD,IAAI,EAAC,SAAS;IACdC,UAAU,EAAC;GACZ,CAEA,CACF,CAAC,eAENhF,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmB,IAAI,EAAE,CAAC;MAAEC,UAAU,EAAE;;kBAUjClF,cAAA,CAAAC,aAAA,CAAC+D,2BAAI;IAACnD,SAAS,EAAC,mBAAmB;IAACiD,KAAK,EAAE;MAAEM,YAAY,EAAE,MAAM;MAAED,OAAO,EAAE;;kBAC1EnE,cAAA,CAAAC,aAAA,CAACS,WAAW;IAACE,SAAS,EAAEA;GAAY,CAChC,CAAC,eAGPZ,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC,QAAQ;IAACiD,KAAK,EAAE;MAAEmB,IAAI,EAAE;;kBACrCjF,cAAA,CAAAC,aAAA,CAAC+D,2BAAI;IAACnD,SAAS,EAAC,iBAAiB;IAACiD,KAAK,EAAE;MAAEK,OAAO,EAAE;;kBAClDnE,cAAA,CAAAC,aAAA,CAACkF,4BAAK;IACJvF,CAAC,EAAEA,CAAE;IACLyB,IAAI,EAAEuC,SAAU;IAChBlB,OAAO,EAAEA,OAAQ;IACjBpB,SAAS,EAAEA,SAAU;IACrBC,MAAM,EAAEA,MAAO;IACfQ,UAAU,EAAEA,UAAW;IACvBC,YAAY,EAAEA,YAAa;IAC3BR,UAAU,EAAEA,UAAW;IACvBC,UAAU,EAAEA,UAAW;IACvBC,WAAW,EAAEA,WAAY;IACzBC,aAAa,EAAEA,aAAc;IAC7BC,gBAAgB,EAAEA,gBAAiB;IACnCwD,YAAY,EAAGC,QAAQ,IAAK;MAC1B,OAAO;QACLxE,SAAS,EAAE;OACZ;;GAEJ,CACG,CACH,CACF,CACF,CAAC;AAEV,CAAC;;AClID,MAAMyE,cAAc,GAAG3E,IAAA,IAAqE;EAAA,IAApE;IAAEsB,QAAQ;IAAEH,YAAY;IAAEK,eAAe;IAAEoD,QAAQ;IAAE,GAAGnE;GAAO,GAAAT,IAAA;EACrF,MAAM;IAAEf;GAAG,GAAGC,2BAAc,EAAE;EAC9B,MAAM,CAAC2F,aAAa,EAAEC,eAAe,CAAC,GAAGpD,cAAQ,CAAC,OAAO;IAAE,GAAGP;GAAc,CAAC,CAAC;EAE9E,MAAM4D,QAAQ,GAAGA,CAACC,GAAG,EAAEC,KAAK,KAAK;IAC/BH,eAAe,CAAEI,IAAI,KAAM;MAAE,GAAGA,IAAI;MAAE,CAACF,GAAG,GAAGC;KAAO,CAAC,CAAC;GACvD;EAED,MAAME,QAAQ,GAAIC,CAAC,IAAK;IACtB,IAAIA,CAAC,IAAIA,CAAC,CAACC,cAAc,EAAED,CAAC,CAACC,cAAc,EAAE;IAC7C/D,QAAQ,CAACuD,aAAa,CAAC;GACxB;EAED,MAAMS,OAAO,GAAGA,MAAM;IACpB,MAAMC,OAAO,GAAG;MAAEC,OAAO,EAAE,EAAE;MAAEC,KAAK,EAAE;KAAI;IAC1CX,eAAe,CAACS,OAAO,CAAC;IACxBjE,QAAQ,CAACiE,OAAO,CAAC;GAClB;EAED,oBACElG,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACbb,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBAEbb,cAAA,CAAAC,aAAA,CAAC+D,2BAAI;IACHnD,SAAS,EAAC,oBAAoB;IAC9BiD,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEC,OAAO,EAAE,MAAM;MAAEC,YAAY,EAAE,MAAM;MAAEC,YAAY,EAAE;;kBAErGrE,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC,gBAAgB;IAACiD,KAAK,EAAE;MAAEQ,KAAK,EAAE,SAAS;MAAEC,WAAW,EAAE;;kBACtEvE,cAAA,CAAAC,aAAA,CAACuE,+BAAQ;IAACV,KAAK,EAAE;MAAEW,KAAK,EAAE,MAAM;MAAEC,MAAM,EAAE;;GAAW,CAClD,CAAC,eACN1E,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEa,UAAU,EAAE,KAAK;MAAEC,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KAAc1E,CAAC,CAAC,oBAAoB,CAAO,CACjG,CAAC,eAEPI,cAAA,CAAAC,aAAA,cACGkC,eAAe,iBACdnC,cAAA,CAAAC,aAAA,CAACkC,eAAe;IACd0C,mBAAmB,EAAEzD,KAAK,CAACyD,mBAAoB;IAC/CC,cAAc,EAAE1D,KAAK,CAACa,QAAS;IAC/BH,YAAY,EAAEA,YAAa;IAC3BiD,IAAI,EAAC,SAAS;IACdC,UAAU,EAAC;GACZ,CAEA,CACF,CAAC,eAENhF,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmB,IAAI,EAAE,CAAC;MAAEC,UAAU,EAAE;;kBAKjClF,cAAA,CAAAC,aAAA,CAAC+D,2BAAI;IACHnD,SAAS,EAAC,kBAAkB;IAC5BiD,KAAK,EAAE;MAAEK,OAAO,EAAE,MAAM;MAAEC,YAAY,EAAE,MAAM;MAAEC,YAAY,EAAE,MAAM;MAAEgC,SAAS,EAAE;;kBAEjFrG,cAAA,CAAAC,aAAA,CAAC2C,6BAAM;IAACkB,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAER,YAAY,EAAE,MAAM;MAAEO,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE;;KAAc1E,CAAC,CAAC,6BAA6B,CAAU,CAAC,eAC3II,cAAA,CAAAC,aAAA;IAAM6F,QAAQ,EAAEA;kBACd9F,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEqC,GAAG,EAAE,MAAM;MAAEpC,UAAU,EAAE,UAAU;MAAEqC,QAAQ,EAAE;;kBAC5EvG,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmB,IAAI,EAAE,GAAG;MAAEuB,QAAQ,EAAE;;kBACjCxG,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC,cAAc;IAACiD,KAAK,EAAE;MAAEa,UAAU,EAAE,KAAK;MAAEP,YAAY,EAAE,KAAK;MAAEQ,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KACrG1E,CAAC,CAAC,eAAe,CACf,CAAC,eACNI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAE2C,QAAQ,EAAE;;kBACtBzG,cAAA,CAAAC,aAAA,CAACyG,gCAAS;IACRd,KAAK,EAAEJ,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEW,OAAQ;IAC9BT,QAAQ,EAAGK,CAAC,IAAKL,QAAQ,CAAC,SAAS,EAAEK,CAAC,CAACY,MAAM,CAACf,KAAK,CAAE;IACrDgB,WAAW,EAAEhH,CAAC,CAAC,2BAA2B,CAAE;IAC5CkE,KAAK,EAAE;MAAEO,YAAY,EAAE,KAAK;MAAEwC,WAAW,EAAE,MAAM;MAAEnC,MAAM,EAAE;;GAC5D,CACE,CACF,CAAC,eAEN1E,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmB,IAAI,EAAE,GAAG;MAAEuB,QAAQ,EAAE;;kBACjCxG,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC,cAAc;IAACiD,KAAK,EAAE;MAAEa,UAAU,EAAE,KAAK;MAAEP,YAAY,EAAE,KAAK;MAAEQ,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KACrG1E,CAAC,CAAC,aAAa,CACb,CAAC,eACNI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAE2C,QAAQ,EAAE;;kBACtBzG,cAAA,CAAAC,aAAA,CAACyG,gCAAS;IACRd,KAAK,EAAEJ,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEY,KAAM;IAC5BV,QAAQ,EAAGK,CAAC,IAAKL,QAAQ,CAAC,OAAO,EAAEK,CAAC,CAACY,MAAM,CAACf,KAAK,CAAE;IACnDgB,WAAW,EAAEhH,CAAC,CAAC,yBAAyB,CAAE;IAC1CkE,KAAK,EAAE;MAAEO,YAAY,EAAE,KAAK;MAAEwC,WAAW,EAAE,MAAM;MAAEnC,MAAM,EAAE;;GAC5D,CACE,CACF,CACF,CAAC,eACN1E,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAE6C,cAAc,EAAE,UAAU;MAAEC,SAAS,EAAE;;kBACpE/G,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEqC,GAAG,EAAE,MAAM;MAAEpC,UAAU,EAAE;;kBACtDlE,cAAA,CAAAC,aAAA;IACE8E,IAAI,EAAC,QAAQ;IACbiC,OAAO,EAAEf,OAAQ;IACjBnC,KAAK,EAAE;MACLmD,UAAU,EAAE,MAAM;MAClBC,MAAM,EAAE,MAAM;MACd5C,KAAK,EAAE,WAAW;MAClBK,UAAU,EAAE,KAAK;MACjBwC,MAAM,EAAE,SAAS;MACjBvC,QAAQ,EAAE,MAAM;MAChBT,OAAO,EAAE;;KAGVvE,CAAC,CAAC,iBAAiB,CACd,CAAC,eAETI,cAAA,CAAAC,aAAA,CAACmH,gCAAS;IACR9G,KAAK,EAAEV,CAAC,CAAC,kBAAkB,CAAE;IAC7BkG,QAAQ,EAAEA,QAAS;IACnBhC,KAAK,EAAE;MACLuD,MAAM,EAAE,CAAC;MACThD,YAAY,EAAE,KAAK;MACnBK,MAAM,EAAE,MAAM;MACdP,OAAO,EAAE;;GAIZ,CACE,CACF,CACD,CACF,CAAC,EACNoB,QACE,CACF,CAAC;AAEV,CAAC;;AC1HD,MAAM+B,WAAW,GAAG3G,IAAA,IAOd;EAAA,IAAA4G,WAAA;EAAA,IAPe;IACjBlG,IAAI;IACJC,SAAS;IACTW,QAAQ;IACRH,YAAY;IACZD,WAAW;IACXjB;GACH,GAAAD,IAAA;EACG,MAAM;IAAEf;GAAG,GAAGC,2BAAc,EAAE;EAE9B,MAAM2H,UAAU,GAAG,CAAAnG,IAAI,aAAJA,IAAI,wBAAAkG,WAAA,GAAJlG,IAAI,CAAEwC,KAAK,cAAA0D,WAAA,uBAAXA,WAAA,CAAaE,GAAG,CAAEC,IAAI,KAAM;IAC3C,CAAC9H,CAAC,CAAC,qBAAqB,CAAC,GAAG8H,IAAI,CAACxE,iBAAiB;IAClD,CAACtD,CAAC,CAAC,mBAAmB,CAAC,GAAG8H,IAAI,CAAClE,WAAW;IAC1C,CAAC5D,CAAC,CAAC,gBAAgB,CAAC,GAAG8H,IAAI,CAACC,YAAY;IACxC,CAAC/H,CAAC,CAAC,aAAa,CAAC,gBACbI,cAAA,CAAAC,aAAA;MAAMY,SAAS,EAAE,mBAAmB6G,IAAI,CAAC/D,MAAM;OAC1C/D,CAAC,CAAC,eAAe8H,IAAI,CAAC/D,MAAM,EAAE,CAC7B;GAEb,CAAC,CAAC,KAAI,EAAE;EAET,oBACI3D,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACXb,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACXb,cAAA,CAAAC,aAAA,CAAC2C,6BAAM;IAAC/B,SAAS,EAAC;KAASjB,CAAC,CAAC,mBAAmB,CAAU,CAAC,eAC3DI,cAAA,CAAAC,aAAA,CAACmD,mBAAI;IAACC,EAAE,EAAE,GAAGxB,WAAW;kBACpB7B,cAAA,CAAAC,aAAA,CAACmH,gCAAS;IAAC9G,KAAK,EAAEV,CAAC,CAAC,iBAAiB;GAAI,CACvC,CACL,CAAC,eAENI,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACXb,cAAA,CAAAC,aAAA,CAACS,WAAW;IAACE,SAAS,EAAEA;GAAY,CACnC,CAAC,eAENZ,cAAA,CAAAC,aAAA,CAACqF,cAAc;IACXrD,QAAQ,EAAEA,QAAS;IACnBH,YAAY,EAAEA;GACjB,CAAC,eAEF9B,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;KACVS,SAAS,gBACNtB,cAAA,CAAAC,aAAA,CAAC2H,6BAAM,MAAE,CAAC,GACV,CAAAJ,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEK,MAAM,IAAG,CAAC,gBACtB7H,cAAA,CAAAC,aAAA,CAAC6H,kCAAW;IACRzG,IAAI,EAAEmG,UAAW;IACjB5H,CAAC,EAAEA,CAAE;IACLmI,mBAAmB,EAAEnI,CAAC,CAAC,qBAAqB,CAAE;IAC9CoI,UAAU,EAAE,GAAGnG,WAAW;GAC7B,CAAC,gBAEF7B,cAAA,CAAAC,aAAA,CAAC+D,2BAAI,QACApE,CAAC,CAAC,mBAAmB,CAAC,CAClBqI,KAAK,CAAC,KAAK,CAAC,CACZR,GAAG,CAAC,CAACS,IAAI,EAAEC,KAAK,kBACbnI,cAAA,CAAAC,aAAA;IAAG0F,GAAG,EAAEwC,KAAM;IAACrE,KAAK,EAAE;MAAEsE,SAAS,EAAE;;KAC9BF,IACF,CACN,CACH,CAET,CACJ,CAAC;AAEd,CAAC;;AClED,MAAMG,MAAM,GAAG1H,IAAA,IAA4F;EAAA,IAA3F;IAAEmB,YAAY;IAAEgD,cAAc;IAAED,mBAAmB;IAAEyD,SAAS;IAAEtD,UAAU;IAAE,GAAG5D;GAAO,GAAAT,IAAA;EAClG,MAAM;IAAEf;GAAG,GAAGC,2BAAc,EAAE;EAE9B,MAAM,CAAC2F,aAAa,EAAEC,eAAe,CAAC,GAAGpD,cAAQ,CAAC,OAAO;IAAE,GAAGP;GAAc,CAAC,CAAC;EAU9E,MAAMyG,iBAAiB,GAAGA,MAAM;IAC5BzD,cAAc,CAACU,aAAa,CAAC;GAChC;EAED,MAAMgD,QAAQ,GAAGA,MAAM;IACnB/C,eAAe,CAAC;MAAE,GAAGZ;KAAqB,CAAC;IAC3CC,cAAc,CAAC;MAAE,GAAGD;KAAqB,CAAC;GAC7C;EAED,MAAM4D,cAAc,GAAI7C,KAAK,IAAK;IAC9B,MAAM8C,SAAS,GAAG;MAAE,GAAGlD,aAAa;MAAE7B,MAAM,EAAEiC;KAAO;IACrDH,eAAe,CAACiD,SAAS,CAAC;IAC1B5D,cAAc,CAAC4D,SAAS,CAAC;GAC5B;EAED,oBACI1I,cAAA,CAAAC,aAAA,CAAC0I,iCAAU;IACP7C,QAAQ,EAAEyC,iBAAkB;IAC5BK,YAAY,EAAGC,EAAE,IAAM9C,CAAC,IAAK;MAAEA,CAAC,IAAIA,CAAC,CAACC,cAAc,EAAE;MAAE6C,EAAE,EAAE;KAAI;IAChEC,iBAAiB,EAAEN,QAAS;IAC5BO,EAAE,EAAC,kBAAkB;IACrBC,qCAAqC,EAAE5H,KAAK,CAAC6H;kBAE7CjJ,cAAA,CAAAC,aAAA,CAACiJ,sCAAe,qBACZlJ,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC,cAAc;IAACiD,KAAK,EAAE;MAAEa,UAAU,EAAE;;KAC9C/E,CAAC,CAAC,aAAa,CAAC,EAAC,GACjB,CAAC,eACNI,cAAA,CAAAC,aAAA,CAACkJ,+BAAQ;IACLC,MAAM,EAAE,CACJ;MAAE9I,KAAK,EAAEV,CAAC,CAAC,iBAAiB,CAAC;MAAEgG,KAAK,EAAE;KAAI,EAC1C;MAAEtF,KAAK,EAAEV,CAAC,CAAC,oBAAoB,CAAC;MAAEgG,KAAK,EAAE;KAAU,EACnD;MAAEtF,KAAK,EAAEV,CAAC,CAAC,qBAAqB,CAAC;MAAEgG,KAAK,EAAE;KAAiB,CAC7D;IACFyD,SAAS,EAAC,OAAO;IACjBC,MAAM,EAAEb,cAAe;IACvBc,QAAQ,EAAE,CAAA/D,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAE7B,MAAM,KAAI;MAAErD,KAAK,EAAEV,CAAC,CAAC,iBAAiB,CAAC;MAAEgG,KAAK,EAAE;;GAC5E,CACY,CACT,CAAC;AAErB,CAAC;;ACjDD,MAAM4D,KAAK,GAAG7I,IAAA,IAMR;EAAA,IAAA8I,oBAAA,EAAAC,sBAAA;EAAA,IANS;IACX7H,WAAW;IACX8H,eAAe,GAAG,MAAM;IACxBC,aAAa,GAAG,EAAE;IAClBzI,eAAe;IACf0I;GACH,GAAAlJ,IAAA;EACG,MAAMmJ,QAAQ,GAAGvH,KAAK,CAACwH,UAAU,CAACC,kBAAkB,EAAE;EACtD,MAAM;IAAEpK;GAAG,GAAGC,2BAAc,EAAE;EAG9B,MAAM,CAACoK,UAAU,EAAEC,aAAa,CAAC,GAAG7H,cAAQ,CAACuH,aAAa,CAACK,UAAU,IAAI,CAAC,CAAC;EAC3E,MAAM,CAACE,QAAQ,EAAEC,WAAW,CAAC,GAAG/H,cAAQ,CAACuH,aAAa,CAACO,QAAQ,IAAI,EAAE,CAAC;EACtE,MAAM,CAACpI,UAAU,EAAEsI,aAAa,CAAC,GAAGhI,cAAQ,CAACuH,aAAa,CAAC7H,UAAU,IAAI,CAAC;IAAEgH,EAAE,EAAE,aAAa;IAAEuB,IAAI,EAAE;GAAM,CAAC,CAAC;EAG7G,MAAMC,mBAAmB,GAAG5H,aAAO,CAAC,OAAO;IAAErC,KAAK,EAAEV,CAAC,CAAC,iBAAiB,CAAC;IAAEgG,KAAK,EAAE;GAAI,CAAC,EAAE,CAAChG,CAAC,CAAC,CAAC;EAG5F,MAAM,CAACkC,YAAY,EAAE2D,eAAe,CAAC,GAAGpD,cAAQ,CAACuH,aAAa,CAAC9H,YAAY,IAAI;IAAE6B,MAAM,EAAE4G;GAAqB,CAAC;EAG/G,MAAM;IAAEjJ,SAAS;IAAED,IAAI,EAAEmJ,aAAa;IAAEC;GAAY,GAAGlI,KAAK,CAACmI,KAAK,CAACC,IAAI,CAACC,wBAAwB,CAC5F,EAAE,EACF;IACId,QAAQ;IACRe,MAAM,EAAEZ,UAAU;IAClBa,KAAK,EAAEX,QAAQ;IACfxG,MAAM,EAAE,EAAA8F,oBAAA,GAAA3H,YAAY,CAAC6B,MAAM,cAAA8F,oBAAA,uBAAnBA,oBAAA,CAAqB7D,KAAK,KAAI;GACzC,EACD;IACImF,OAAO,EAAE,CAAC,CAACjB;GAEnB,CAAC;EAED,MAAMkB,YAAY,GAAGrI,aAAO,CAAC,MAAM;IAAA,IAAAsI,qBAAA;IAC/B,MAAMpH,KAAK,GAAG,CAAA2G,aAAa,aAAbA,aAAa,wBAAAS,qBAAA,GAAbT,aAAa,CAAEU,aAAa,cAAAD,qBAAA,uBAA5BA,qBAAA,CAA8BE,YAAY,KAAI,EAAE;IAC9D,OAAOtH,KAAK,CAAC4D,GAAG,CAACC,IAAI,KAAK;MACtB,GAAGA,IAAI;MACPxE,iBAAiB,EAAEwE,IAAI,CAAC0D,GAAG,IAAI1D,IAAI,CAACxE,iBAAiB;MACrDM,WAAW,EAAEkE,IAAI,CAAC2D,YAAY,IAAI3D,IAAI,CAAClE;KAC1C,CAAC,CAAC;GACN,EAAE,CAACgH,aAAa,CAAC,CAAC;EAEnB,MAAM5J,SAAS,GAAG+B,aAAO,CAAC,MAAM;IAC5B,MAAM2I,IAAI,GAAG,CAAAd,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEU,aAAa,KAAI,EAAE;IAC/C,OAAO;MACHpK,KAAK,EAAEwK,IAAI,CAACxK,KAAK,IAAI,CAAC;MACtBE,SAAS,EAAEsK,IAAI,CAACtK,SAAS,IAAI,CAAC;MAC9BD,OAAO,EAAEuK,IAAI,CAACvK,OAAO,IAAI,CAAC;MAC1BwK,QAAQ,EAAED,IAAI,CAACC,QAAQ,IAAI;KAC9B;GACJ,EAAE,CAACf,aAAa,CAAC,CAAC;EAEnB,MAAMxI,YAAY,GAAG,CAAAwI,aAAa,aAAbA,aAAa,wBAAAd,sBAAA,GAAbc,aAAa,CAAEU,aAAa,cAAAxB,sBAAA,uBAA5BA,sBAAA,CAA8B1H,YAAY,MAAIwI,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEgB,UAAU,KAAI,CAAC;EAGjG,MAAMC,YAAY,GAAGC,iBAAW,CAAEC,WAAW,IAAK;IAG9ClG,eAAe,CAAEI,IAAI,KAAM;MAAE,GAAGA,IAAI;MAAE,GAAG8F;KAAa,CAAC,CAAC;IACxDzB,aAAa,CAAC,CAAC,CAAC;GACnB,EAAE,EAAE,CAAC;EAEN,MAAM0B,aAAa,GAAGA,MAAM1B,aAAa,CAAErE,IAAI,IAAKA,IAAI,GAAGsE,QAAQ,CAAC;EACpE,MAAM0B,aAAa,GAAGA,MAAM3B,aAAa,CAAErE,IAAI,IAAKiG,IAAI,CAACC,GAAG,CAAClG,IAAI,GAAGsE,QAAQ,EAAE,CAAC,CAAC,CAAC;EAEjF,MAAM6B,oBAAoB,GAAIjG,CAAC,IAAK;IAChC,MAAMkG,OAAO,GAAGC,MAAM,CAACnG,CAAC,CAACY,MAAM,CAACf,KAAK,CAAC;IACtCwE,WAAW,CAAC6B,OAAO,CAAC;IACpB/B,aAAa,CAAC,CAAC,CAAC;GACnB;EAED,MAAMiC,UAAU,GAAGT,iBAAW,CAAEU,IAAI,IAAK;IACrC,IAAIA,IAAI,CAACvE,MAAM,GAAG,CAAC,EAAEwC,aAAa,CAAC+B,IAAI,CAAC;GAC3C,EAAE,EAAE,CAAC;EAGN,MAAMlK,YAAY,GAAGS,aAAO,CAAC,MAAM,CAC/B;IACIrC,KAAK,EAAEV,CAAC,CAAC,aAAa,CAAC;IACvByM,IAAI,EAAE,QAAQ;IACdtH,IAAI,EAAE,UAAU;IAChBuH,OAAO,EAAE,CACL;MAAEhM,KAAK,EAAEV,CAAC,CAAC,iBAAiB,CAAC;MAAEgG,KAAK,EAAE;KAAI,EAC1C;MAAEtF,KAAK,EAAEV,CAAC,CAAC,oBAAoB,CAAC;MAAEgG,KAAK,EAAE;KAAU,EACnD;MAAEtF,KAAK,EAAEV,CAAC,CAAC,qBAAqB,CAAC;MAAEgG,KAAK,EAAE;KAAiB,CAC9D;IACD2G,UAAU,EAAE;GACf,CACJ,EAAE,CAAC3M,CAAC,CAAC,CAAC;EAEP,oBACII,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACXb,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;KACV0B,KAAK,CAACiK,KAAK,CAACC,OAAO,CAACC,QAAQ,EAAE,gBAC3B1M,cAAA,CAAAC,aAAA,CAACqH,WAAW;IACRjG,IAAI,EAAE;MAAEwC,KAAK,EAAEmH,YAAY;MAAEQ,UAAU,EAAExJ;KAAe;IACxDV,SAAS,EAAEA,SAAS,IAAImJ,UAAW;IACnCxI,QAAQ,EAAEwJ,YAAa;IACvBvJ,YAAY,EAAEA,YAAa;IAC3BJ,YAAY,EAAEA,YAAa;IAC3BD,WAAW,EAAEA,WAAY;IACzBjB,SAAS,EAAEA;GACd,CAAC,gBAEFZ,cAAA,CAAAC,aAAA,CAACgB,YAAY;IACT0I,eAAe,EAAEA,eAAgB;IACjCtI,IAAI,EAAE;MAAEwC,KAAK,EAAEmH,YAAY;MAAEQ,UAAU,EAAExJ;KAAe;IACxDV,SAAS,EAAEA,SAAS,IAAImJ,UAAW;IACnCvI,YAAY,EAAEA,YAAa;IAC3BD,QAAQ,EAAEwJ,YAAa;IACvBlK,MAAM,EAAE4K,UAAW;IACnB3K,UAAU,EAAEoK,aAAc;IAC1BnK,UAAU,EAAEoK,aAAc;IAC1BnK,WAAW,EAAEoK,IAAI,CAACa,KAAK,CAAC1C,UAAU,GAAGE,QAAQ,CAAE;IAC/CxI,aAAa,EAAEwI,QAAS;IACxBvI,gBAAgB,EAAEoK,oBAAqB;IACvCnK,WAAW,EAAEA,WAAY;IACzBC,YAAY,EAAEA,YAAa;IAC3BC,UAAU,EAAEA,UAAW;IACvBC,YAAY,EAAEA,YAAa;IAC3BpB,SAAS,EAAEA,SAAU;IACrBO,eAAe,EAAC;GACnB,CAEJ,CACJ,CAAC;AAEd,CAAC;;ACpID,MAAMyL,qBAAqB,GAAGjM,IAAA,IAAsD;EAAA,IAArD;IAAEwF,OAAO;IAAEC,KAAK;IAAEyG,iBAAiB;IAAEvL;GAAW,GAAAX,IAAA;EAC7E,MAAM;IAAEf;GAAG,GAAGC,2BAAc,EAAE;EAC9B,MAAMiN,OAAO,GAAGC,yBAAU,EAAE;EAC5B,MAAM;IAAEC;GAAM,GAAGC,4BAAa,EAAE;EAEhC,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAG9K,cAAQ,CAAC,KAAK,CAAC;EACjD,MAAM,CAAC+K,cAAc,EAAEC,iBAAiB,CAAC,GAAGhL,cAAQ,CAAC;IAAEiL,IAAI,EAAE,MAAM;IAAEjB,IAAI,EAAE;GAAa,CAAC;EAEzF,MAAMC,OAAO,GAAG,CACd;IAAEgB,IAAI,EAAE,MAAM;IAAEjB,IAAI,EAAE;GAAa,EACnC;IAAEiB,IAAI,EAAE,OAAO;IAAEjB,IAAI,EAAE;GAAc,CACtC;EAED,MAAMkB,uBAAuB,GAAGA,MAAM;IACpCJ,YAAY,CAAC,IAAI,CAAC;GACnB;EAED,MAAMK,cAAc,GAAGA,MAAM;IAE3B,MAAMC,UAAU,GAAGT,IAAI,CAACU,QAAQ,CAAC,aAAa,CAAC,GAAGV,IAAI,CAACW,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,GAAGX,IAAI,CAACW,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;IAClHb,OAAO,CAACc,IAAI,CAAC,GAAGH,UAAU,uBAAuB,EAAE;MAAEtH,OAAO;MAAEiH,cAAc;MAAEP;KAAmB,CAAC;IAClGM,YAAY,CAAC,KAAK,CAAC;GACpB;EAMD,IAAI7L,SAAS,EAAE;IACb,oBAAOtB,cAAA,CAAAC,aAAA,CAAC2H,6BAAM,MAAE,CAAC;;EAGnB,IAAI,CAACiF,iBAAiB,EAAE;IACtB,OAAO,IAAI;;EAGb,oBACE7M,cAAA,CAAAC,aAAA,CAACD,cAAK,CAAC6N,QAAQ,qBACb7N,cAAA,CAAAC,aAAA,CAAC+D,2BAAI;IAACnD,SAAS,EAAC,kBAAkB;IAACiD,KAAK,EAAE;MAAEK,OAAO,EAAE;;kBACnDnE,cAAA,CAAAC,aAAA,CAAC6N,iCAAU,QAAElO,CAAC,CAAC,uBAAuB,CAAc,CAAC,eACrDI,cAAA,CAAAC,aAAA,CAAC8N,kCAAW,qBACV/N,cAAA,CAAAC,aAAA,CAAC+N,0BAAG;IAAC1N,KAAK,EAAEV,CAAC,CAAC,eAAe,CAAE;IAACsI,IAAI,EAAE/B,OAAO,IAAIvG,CAAC,CAAC,OAAO;GAAI,CAAC,eAC/DI,cAAA,CAAAC,aAAA,CAAC+N,0BAAG;IAAC1N,KAAK,EAAEV,CAAC,CAAC,aAAa,CAAE;IAACsI,IAAI,EAAE9B,KAAK,IAAIxG,CAAC,CAAC,OAAO;GAAI,CAC/C,CAAC,eAEdI,cAAA,CAAAC,aAAA,CAAC6N,iCAAU;IAAChK,KAAK,EAAE;MAAEiD,SAAS,EAAE;;KAAWnH,CAAC,CAAC,yBAAyB,CAAc,CAAC,EACpFiN,iBAAiB,aAAjBA,iBAAiB,eAAjBA,iBAAiB,CAAEA,iBAAiB,gBACnC7M,cAAA,CAAAC,aAAA,CAAC8N,kCAAW,qBACV/N,cAAA,CAAAC,aAAA,CAAC+N,0BAAG;IAAC1N,KAAK,EAAEV,CAAC,CAAC,oBAAoB,CAAE;IAACsI,IAAI,EAAE2E,iBAAiB,CAACA,iBAAiB,CAACxB,YAAY,IAAIzL,CAAC,CAAC,OAAO;GAAI,CAAC,eAC7GI,cAAA,CAAAC,aAAA,CAAC+N,0BAAG;IAAC1N,KAAK,EAAEV,CAAC,CAAC,cAAc,CAAE;IAACsI,IAAI,EAAE2E,iBAAiB,CAACA,iBAAiB,CAACoB,OAAO,IAAIrO,CAAC,CAAC,OAAO;GAAI,CAAC,eAClGI,cAAA,CAAAC,aAAA,CAAC+N,0BAAG;IAAC1N,KAAK,EAAEV,CAAC,CAAC,sBAAsB,CAAE;IAACsI,IAAI,EAAE2E,iBAAiB,CAACA,iBAAiB,CAACqB,cAAc,IAAItO,CAAC,CAAC,OAAO;GAAI,CAAC,eACjHI,cAAA,CAAAC,aAAA,CAAC+N,0BAAG;IAAC1N,KAAK,EAAEV,CAAC,CAAC,eAAe,CAAE;IAACsI,IAAI,EAAE2E,iBAAiB,CAACA,iBAAiB,CAACsB,WAAW,IAAIvO,CAAC,CAAC,OAAO;GAAI,CAAC,eACvGI,cAAA,CAAAC,aAAA,CAAC+N,0BAAG;IAAC1N,KAAK,EAAEV,CAAC,CAAC,eAAe,CAAE;IAACsI,IAAI,EAAE2E,iBAAiB,CAACA,iBAAiB,CAACuB,WAAW,IAAIxO,CAAC,CAAC,OAAO;GAAI,CAAC,eACvGI,cAAA,CAAAC,aAAA,CAAC+N,0BAAG;IAAC1N,KAAK,EAAEV,CAAC,CAAC,YAAY,CAAE;IAACsI,IAAI,EAAE2E,iBAAiB,CAACA,iBAAiB,CAACwB,KAAK,IAAIzO,CAAC,CAAC,OAAO;GAAI,CAAC,eAC9FI,cAAA,CAAAC,aAAA,CAAC+N,0BAAG;IAAC1N,KAAK,EAAEV,CAAC,CAAC,aAAa,CAAE;IAACsI,IAAI,EAAE2E,iBAAiB,CAACA,iBAAiB,CAACyB,UAAU,IAAI1O,CAAC,CAAC,OAAO;GAAI,CACxF,CAAC,gBAEdI,cAAA,CAAAC,aAAA,CAACsO,gCAAS,QAAE3O,CAAC,CAAC,kCAAkC,CAAa,CAC9D,eAEDI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAE6C,cAAc,EAAE,UAAU;MAAEC,SAAS,EAAE;;kBACpE/G,cAAA,CAAAC,aAAA,CAACmH,gCAAS;IAAC9G,KAAK,EAAEV,CAAC,CAAC,yBAAyB,CAAE;IAACkG,QAAQ,EAAEyH,uBAAwB;IAACzJ,KAAK,EAAE;MAAEO,YAAY,EAAE,MAAM;MAAEgD,MAAM,EAAE;;GAAM,CAC7H,CAkBD,CAAC,EAEN6F,SAAS,iBACRlN,cAAA,CAAAC,aAAA,CAACuO,4BAAK;IACJC,aAAa,EAAE7O,CAAC,CAAC,+BAA+B,CAAE;IAClD8O,YAAY,eACV1O,cAAA,CAAAC,aAAA;MAAM+G,OAAO,EAAEA,MAAMmG,YAAY,CAAC,KAAK,CAAE;MAACrJ,KAAK,EAAE;QAAEqD,MAAM,EAAE,SAAS;QAAEhD,OAAO,EAAE;;OAAS,GAElF,CACP;IACDwK,eAAe,EAAE/O,CAAC,CAAC,mBAAmB,CAAE;IACxCgP,kBAAkB,EAAEpB,cAAe;IACnCqB,iBAAiB,EAAEjP,CAAC,CAAC,kBAAkB,CAAE;IACzCkP,oBAAoB,EAAEA,MAAM3B,YAAY,CAAC,KAAK,CAAE;IAChDrJ,KAAK,EAAE;MAAEO,YAAY,EAAE;;kBAEvBrE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEK,OAAO,EAAE;;kBACrBnE,cAAA,CAAAC,aAAA,CAAC8O,mCAAY;IACXzC,OAAO,EAAEA,OAAQ;IACjBC,UAAU,EAAC,MAAM;IACjBa,cAAc,EAAEA,cAAe;IAC/B4B,QAAQ,EAAE3B,iBAAkB;IAC5BvJ,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEgL,aAAa,EAAE,QAAQ;MAAE3I,GAAG,EAAE,MAAM;MAAE4I,WAAW,EAAE;QAAE7K,YAAY,EAAE;;KAAU;IACvGzE,CAAC,EAAEA;GACJ,CACE,CACA,CAEK,CAAC;AAErB,CAAC;;AC7GD,MAAMuP,MAAM,GAAGA,MAAM;EACjB,MAAM;IAAEvP;GAAG,GAAGC,2BAAc,EAAE;EAC9B,MAAM,CAACiC,YAAY,EAAE2D,eAAe,CAAC,GAAGpD,cAAQ,CAAC,MAAM;IACnD,MAAM+M,KAAK,GAAGC,cAAc,CAACC,OAAO,CAAC,2BAA2B,CAAC;IACjE,OAAOF,KAAK,GAAGG,IAAI,CAACC,KAAK,CAACJ,KAAK,CAAC,GAAG;MAAEjJ,OAAO,EAAE,EAAE;MAAEC,KAAK,EAAE;KAAI;GAChE,CAAC;EACF,MAAM,CAACqJ,eAAe,EAAEC,kBAAkB,CAAC,GAAGrN,cAAQ,CAAC,MAAM;IACzD,OAAOgN,cAAc,CAACC,OAAO,CAAC,8BAA8B,CAAC,KAAK,MAAM;GAC3E,CAAC;EACF,MAAM,CAACK,SAAS,EAAEC,YAAY,CAAC,GAAGvN,cAAQ,CAAC,IAAI,CAAC;EAEhD,MAAMyH,QAAQ,GAAGvH,KAAK,CAACwH,UAAU,CAACC,kBAAkB,EAAE;EAEtD,MAAM;IAAE1I,SAAS,EAAEuO,WAAW;IAAExO,IAAI,EAAEwL,iBAAiB;IAAEiD,KAAK;IAAEC;GAAY,GAAGxN,KAAK,CAACmI,KAAK,CAACC,IAAI,CAACqF,mBAAmB,CAAC;IAChHlG,QAAQ;IACRmG,OAAO,EAAE;MAAE7E,GAAG,EAAEtJ,YAAY,CAACqE,OAAO;MAAEkG,IAAI,EAAEvK,YAAY,CAACsE;;GAC5D,EAAE;IACC2E,OAAO,EAAE0E,eAAe,IAAI,CAAC,CAAC3N,YAAY,CAACqE,OAAO,IAAI,CAAC,CAACrE,YAAY,CAACsE,KAAK;IAC1E8J,OAAO,EAAGJ,KAAK,IAAK;MAAA,IAAAK,eAAA,EAAAC,oBAAA,EAAAC,qBAAA,EAAAC,sBAAA;MAChBV,YAAY,CAAC;QAAEE,KAAK,EAAE,IAAI;QAAExP,KAAK,EAAE,CAAAwP,KAAK,aAALA,KAAK,wBAAAK,eAAA,GAALL,KAAK,CAAES,QAAQ,cAAAJ,eAAA,wBAAAC,oBAAA,GAAfD,eAAA,CAAiB9O,IAAI,cAAA+O,oBAAA,wBAAAC,qBAAA,GAArBD,oBAAA,CAAuBI,MAAM,cAAAH,qBAAA,wBAAAC,sBAAA,GAA7BD,qBAAA,CAAgC,CAAC,CAAC,cAAAC,sBAAA,uBAAlCA,sBAAA,CAAoCG,OAAO,KAAI7Q,CAAC,CAAC,wDAAwD;OAAG,CAAC;MAChJ8P,kBAAkB,CAAC,KAAK,CAAC;MACzBL,cAAc,CAACqB,UAAU,CAAC,8BAA8B,CAAC;;GAEhE,CAAC;EAEF,MAAMjF,YAAY,GAAIkF,MAAM,IAAK;IAC7B,IAAI,CAACA,MAAM,CAACxK,OAAO,IAAI,CAACwK,MAAM,CAACvK,KAAK,EAAE;MAElCX,eAAe,CAAC;QAAEU,OAAO,EAAE,EAAE;QAAEC,KAAK,EAAE;OAAI,CAAC;MAC3CsJ,kBAAkB,CAAC,KAAK,CAAC;MACzBL,cAAc,CAACqB,UAAU,CAAC,2BAA2B,CAAC;MACtDrB,cAAc,CAACqB,UAAU,CAAC,8BAA8B,CAAC;MACzD;;IAGJ,IAAI,CAACC,MAAM,CAACxK,OAAO,IAAI,CAACwK,MAAM,CAACvK,KAAK,EAAE;MAClCwJ,YAAY,CAAC;QAAEE,KAAK,EAAE,IAAI;QAAExP,KAAK,EAAEV,CAAC,CAAC,sBAAsB;OAAG,CAAC;MAC/D;;IAEJ6F,eAAe,CAACkL,MAAM,CAAC;IACvBjB,kBAAkB,CAAC,IAAI,CAAC;IACxBL,cAAc,CAACuB,OAAO,CAAC,2BAA2B,EAAErB,IAAI,CAACsB,SAAS,CAACF,MAAM,CAAC,CAAC;IAC3EtB,cAAc,CAACuB,OAAO,CAAC,8BAA8B,EAAE,MAAM,CAAC;GACjE;EAED,MAAME,UAAU,GAAGA,MAAM;IACrBlB,YAAY,CAAC,IAAI,CAAC;GACrB;EAED,oBACI5P,cAAA,CAAAC,aAAA,CAACqF,cAAc;IACXrD,QAAQ,EAAEwJ,YAAa;IACvB3J,YAAY,EAAEA;KAEb2N,eAAe,iBACZzP,cAAA,CAAAC,aAAA,CAAC2M,qBAAqB;IAClBzG,OAAO,EAAErE,YAAY,CAACqE,OAAQ;IAC9BC,KAAK,EAAEtE,YAAY,CAACsE,KAAM;IAC1ByG,iBAAiB,EAAEA,iBAAkB;IACrCvL,SAAS,EAAEuO;GACd,CACJ,EAEA,CAACJ,eAAe,IAAI,CAACI,WAAW,iBAC7B7P,cAAA,CAAAC,aAAA,CAAC+D,2BAAI;IAACF,KAAK,EAAE;MAAEsE,SAAS,EAAE,QAAQ;MAAEjE,OAAO,EAAE;;kBACzCnE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEQ,KAAK,EAAE;;KAAc1E,CAAC,CAAC,6BAA6B,CAAO,CACvE,CACT,EACA+P,SAAS,iBAAI3P,cAAA,CAAAC,aAAA,CAAC8Q,4BAAK;IAACjB,KAAK,EAAEH,SAAS,CAACG,KAAM;IAACxP,KAAK,EAAEqP,SAAS,CAACrP,KAAM;IAAC2I,OAAO,EAAE6H,UAAW;IAACE,KAAK,EAAE;GAAO,CAC5F,CAAC;AAEzB,CAAC;;;;;;;;;;;;ACuFM,MAAMC,eAAe,gBAAiB,OAAOC,MAAM,KAAK,WAAW,GAAIA,MAAM,CAACC,QAAQ,KAAKD,MAAM,CAACC,QAAQ,GAAGD,MAAM,CAAC,iBAAiB,CAAC,CAAC,GAAI,YAAY;AAI9J,AAyDO,MAAME,oBAAoB,gBAAiB,OAAOF,MAAM,KAAK,WAAW,GAAIA,MAAM,CAACG,aAAa,KAAKH,MAAM,CAACG,aAAa,GAAGH,MAAM,CAAC,sBAAsB,CAAC,CAAC,GAAI,iBAAiB;AAGvL,AA8UO,SAASI,MAAMA,CAACC,IAAI,EAAEC,OAAO,EAAE;EACrC,IAAI;IACH,IAAIC,MAAM,GAAGF,IAAI,EAAE;GACnB,CAAC,OAAMxL,CAAC,EAAE;IACV,OAAOyL,OAAO,CAACzL,CAAC,CAAC;;EAElB,IAAI0L,MAAM,IAAIA,MAAM,CAACC,IAAI,EAAE;IAC1B,OAAOD,MAAM,CAACC,IAAI,CAAC,KAAK,CAAC,EAAEF,OAAO,CAAC;;EAEpC,OAAOC,MAAM;AACd;AAGA,AAAO,SAASE,gBAAgBA,CAACJ,IAAI,EAAEK,SAAS,EAAE;EACjD,IAAI;IACH,IAAIH,MAAM,GAAGF,IAAI,EAAE;GACnB,CAAC,OAAOxL,CAAC,EAAE;IACX,OAAO6L,SAAS,CAAC,IAAI,EAAE7L,CAAC,CAAC;;EAE1B,IAAI0L,MAAM,IAAIA,MAAM,CAACC,IAAI,EAAE;IAC1B,OAAOD,MAAM,CAACC,IAAI,CAACE,SAAS,CAACC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,EAAED,SAAS,CAACC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;;EAE5E,OAAOD,SAAS,CAAC,KAAK,EAAEH,MAAM,CAAC;AAChC;;ACliBA,MAAMK,UAAU,GAAGxO,KAAA;EAAA,IAAC;IAAEyO,IAAI,GAAG;GAAI,GAAAzO,KAAA;EAAA,oBAC/BtD,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC;kBACvDjS,cAAA,CAAAC,aAAA;IACEiS,CAAC,EAAC,8SAA8S;IAChTD,IAAI,EAAC;GACN,CACE,CAAC;AAAA,CACP;AAED,MAAME,UAAU,GAAG1O,KAAA;EAAA,IAAC;IAAEsO,IAAI,GAAG;GAAI,GAAAtO,KAAA;EAAA,oBAC/BzD,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC;kBACvDjS,cAAA,CAAAC,aAAA;IACEiS,CAAC,EAAC,2WAA2W;IAC7WD,IAAI,EAAC;GACN,CACE,CAAC;AAAA,CACP;AAED,MAAMG,WAAW,GAAGC,KAAA;EAAA,IAAC;IAAEN,IAAI,GAAG;GAAI,GAAAM,KAAA;EAAA,oBAChCrS,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC;kBACvDjS,cAAA,CAAAC,aAAA;IACEiS,CAAC,EAAC,mPAAmP;IACrPD,IAAI,EAAC;GACN,CACE,CAAC;AAAA,CACP;AAED,MAAMK,SAAS,GAAGC,KAAA;EAAA,IAAC;IAAER,IAAI,GAAG;GAAI,GAAAQ,KAAA;EAAA,oBAC9BvS,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAC,SAAS;IAACC,WAAW,EAAC,GAAG;IAACC,aAAa,EAAC;kBAC7G1S,cAAA,CAAAC,aAAA;IAAU0S,MAAM,EAAC;GAAgB,CAAC,eAClC3S,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAAiD,CAAC,eAC1DlS,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAAoB,CAAC,eAC7BlS,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAA0C,CAC/C,CAAC;AAAA,CACP;AAED,MAAMU,SAAS,GAAGC,KAAA;EAAA,IAAC;IAAEd,IAAI,GAAG,EAAE;IAAEzN,KAAK,GAAG;GAAQ,GAAAuO,KAAA;EAAA,oBAC9C7S,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAElO,KAAM;IAACmO,WAAW,EAAC,GAAG;IAACC,aAAa,EAAC;kBAC3G1S,cAAA,CAAAC,aAAA;IAAU0S,MAAM,EAAC;GAAkB,CAChC,CAAC;AAAA,CACP;AAID,MAAMG,SAAS,GAAGC,KAAA;EAAA,IAAC;IAAEC,IAAI;IAAEC,UAAU,GAAG,KAAK;IAAEC,UAAU,GAAG,EAAE;IAAE,GAAG9R;GAAO,GAAA2R,KAAA;EAAA,oBACxE/S,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAE2C,QAAQ,EAAE,UAAU;MAAEhC,KAAK,EAAE;;kBACzCzE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACV2C,QAAQ,EAAE,UAAU;MACpB0M,IAAI,EAAE,MAAM;MACZ,IAAIF,UAAU,GAAG;QAAEG,GAAG,EAAE;OAAQ,GAAG;QAAEA,GAAG,EAAE,KAAK;QAAEC,SAAS,EAAE;OAAoB,CAAC;MACjFC,MAAM,EAAE,CAAC;MACTC,OAAO,EAAE,IAAI;MACbtP,OAAO,EAAE,MAAM;MACfuP,aAAa,EAAE;;KAEdR,IACE,CAAC,eACNhT,cAAA,CAAAC,aAAA,CAACyG,gCAAS,EAAA+M,QAAA;IACRC,cAAc,EAAE;MAAE7M,WAAW,EAAE,MAAM;MAAE8M,YAAY,EAAE,MAAM;MAAE,GAAGT;;KAC5D9R,KAAK,CACV,CACE,CAAC;AAAA,CACP;AAID,MAAMwS,WAAW,GAAGC,KAAA;EAAA,IAAC;IAAEb,IAAI;IAAE1S;GAAO,GAAAuT,KAAA;EAAA,oBAClC7T,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEoC,GAAG,EAAE,KAAK;MACjDlC,YAAY,EAAE,MAAM;MAAE2C,SAAS,EAAE;;kBAEjC/G,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEyP,OAAO,EAAE,GAAG;MAAEtP,OAAO,EAAE;;KAAW+O,IAAU,CAAC,eAC3DhT,cAAA,CAAAC,aAAA;IAAM6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAEwP,UAAU,EAAE;;KAC/ExT,KACG,CAAC,eACPN,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmB,IAAI,EAAE,CAAC;MAAEP,MAAM,EAAE,KAAK;MAAEuC,UAAU,EAAE;;GAAc,CAC7D,CAAC;AAAA,CACP;AAID,AAwBA,MAAM8M,cAAc,GAAGC,KAAA,IAAoD;EAAA,IAAAC,qBAAA,EAAAC,oBAAA,EAAAC,qBAAA,EAAAC,qBAAA,EAAAC,qBAAA;EAAA,IAAnD;IAAEC,SAAS,GAAG,KAAK;IAAEC,UAAU;IAAEC;GAAa,GAAAR,KAAA;EACpE,MAAM;IAAEpU;GAAG,GAAGC,2BAAc,EAAE;EAC9B,MAAMiN,OAAO,GAAGC,yBAAU,EAAE;EAC5B,MAAM0H,QAAQ,GAAGC,0BAAW,EAAE;EAE9B,MAAMC,SAAS,GAAGH,WAAW,IAAIC,QAAQ,CAACG,KAAK,IAAI;IACjDzO,OAAO,EAAE,iBAAiB;IAC1BiH,cAAc,EAAE;MAAEE,IAAI,EAAE,MAAM;MAAEjB,IAAI,EAAE;KAAa;IACnDQ,iBAAiB,EAAE;GACpB;EAED,MAAMgI,WAAW,GAAG,EAAAZ,qBAAA,GAAAU,SAAS,CAAC9H,iBAAiB,cAAAoH,qBAAA,uBAA3BA,qBAAA,CAA6Ba,cAAc,KAAI,EAAE;EAErE,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAG3S,cAAQ,CAAC;IAAEiL,IAAI,EAAE,SAAS;IAAEjB,IAAI,EAAE;GAAwB,CAAC;EACjG,MAAM,CAAC4I,cAAc,EAAEC,iBAAiB,CAAC,GAAG7S,cAAQ,CAAC;IAAEiL,IAAI,EAAE,IAAI;IAAEjB,IAAI,EAAE;GAAkB,CAAC;EAC5F,MAAM,CAAC8I,WAAW,EAAEC,cAAc,CAAC,GAAG/S,cAAQ,CAACwS,WAAW,CAACM,WAAW,IAAI,EAAE,CAAC;EAC7E,MAAM,CAACE,MAAM,EAAEC,SAAS,CAAC,GAAGjT,cAAQ,CAACwS,WAAW,CAACU,eAAe,IAAI,EAAE,CAAC;EACvE,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAGpT,cAAQ,CAACwS,WAAW,CAACa,aAAa,IAAI,EAAE,CAAC;EACzE,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAGvT,cAAQ,CAACwS,WAAW,CAACc,QAAQ,IAAI,EAAE,CAAC;EACpE,MAAM,CAACE,OAAO,EAAEC,UAAU,CAAC,GAAGzT,cAAQ,CAACwS,WAAW,CAACkB,OAAO,IAAI,EAAE,CAAC;EACjE,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAG5T,cAAQ,CAAC,IAAI,CAAC;EAChD,MAAM,CAAC6T,kBAAkB,EAAEC,qBAAqB,CAAC,GAAG9T,cAAQ,CAAC,KAAK,CAAC;EACnE,MAAM+T,YAAY,GAAGC,YAAM,CAAC,IAAI,CAAC;EAEjC,MAAMvM,QAAQ,GAAGvH,KAAK,CAACwH,UAAU,CAACC,kBAAkB,EAAE;EACtD,MAAM;IAAE3I,IAAI,EAAEiV,QAAQ;IAAEhV,SAAS,EAAEiV;GAAe,GAAGhU,KAAK,CAACmI,KAAK,CAAC8L,aAAa,CAC5E1M,QAAQ,EACR,eAAe,EACf,CAAC,gBAAgB,CACnB,CAAC;EAED,MAAM2M,OAAO,GAAG,CAAAH,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEI,OAAO,KAAIJ,QAAQ;EAC7C,MAAMK,cAAc,GAAG,CAAAF,OAAO,aAAPA,OAAO,wBAAAvC,oBAAA,GAAPuC,OAAO,CAAG,eAAe,CAAC,cAAAvC,oBAAA,wBAAAC,qBAAA,GAA1BD,oBAAA,CAA4B0C,cAAc,cAAAzC,qBAAA,uBAA1CA,qBAAA,CAA4C0C,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACC,aAAa,CAACzJ,IAAI,KAAK,OAAO,CAAC,MACzGmJ,OAAO,aAAPA,OAAO,wBAAArC,qBAAA,GAAPqC,OAAO,CAAG,eAAe,CAAC,cAAArC,qBAAA,wBAAAC,qBAAA,GAA1BD,qBAAA,CAA4BwC,cAAc,cAAAvC,qBAAA,uBAA1CA,qBAAA,CAA6C,CAAC,CAAC;EAEpD,MAAM2C,YAAY,GAAGL,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAEM,QAAQ;EAE7C,MAAMC,aAAa,GAAIC,UAAU,IAAK;IACpC,IAAI,CAACA,UAAU,EAAE,OAAO,EAAE;IAC1B,IAAIC,UAAU,GAAG,EAAE;IACnB,MAAMC,WAAW,GAAG,uBAAuB;IAC3C,KAAK,MAAMJ,QAAQ,IAAIE,UAAU,EAAE;MAAA,IAAAG,kBAAA;MACjC,MAAMhX,KAAK,GAAG,CAAC2W,QAAQ,CAAC3W,KAAK,IAAI2W,QAAQ,CAAC5K,IAAI,IAAI,EAAE,EAAEkL,WAAW,EAAE,CAAC5J,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;MACtF,IAAIrN,KAAK,KAAK+W,WAAW,IAAI/W,KAAK,KAAK,sBAAsB,EAAE;QAC7D8W,UAAU,CAACxJ,IAAI,CAAC;UAAEN,IAAI,EAAE2J,QAAQ,CAAC3J,IAAI;UAAEjB,IAAI,EAAE4K,QAAQ,CAAC5K,IAAI;UAAE9G,QAAQ,EAAE0R,QAAQ,CAAC1R;SAAU,CAAC;;MAE5F,KAAA+R,kBAAA,GAAIL,QAAQ,CAAC1R,QAAQ,cAAA+R,kBAAA,eAAjBA,kBAAA,CAAmBzP,MAAM,EAAE;QAC7BuP,UAAU,CAACxJ,IAAI,CAAC,GAAGsJ,aAAa,CAACD,QAAQ,CAAC1R,QAAQ,CAAC,CAAC;;;IAGxD,OAAO6R,UAAU;GAClB;EAED,MAAMI,SAAS,GAAIjS,QAAQ,IAAK;IAC9B,IAAI,CAACA,QAAQ,EAAE,OAAO,EAAE;IACxB,IAAIkS,MAAM,GAAG,EAAE;IACf,MAAMJ,WAAW,GAAG,OAAO;IAC3B,KAAK,MAAMK,KAAK,IAAInS,QAAQ,EAAE;MAAA,IAAAoS,eAAA;MAC5B,MAAMrX,KAAK,GAAG,CAACoX,KAAK,CAACpX,KAAK,IAAIoX,KAAK,CAACrL,IAAI,IAAI,EAAE,EAAEkL,WAAW,EAAE,CAAC5J,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;MAChF,IAAIrN,KAAK,KAAK+W,WAAW,EAAE;QACzBI,MAAM,CAAC7J,IAAI,CAAC;UAAEN,IAAI,EAAEoK,KAAK,CAACpK,IAAI;UAAEjB,IAAI,EAAEqL,KAAK,CAACrL;SAAM,CAAC;;MAErD,KAAAsL,eAAA,GAAID,KAAK,CAACnS,QAAQ,cAAAoS,eAAA,eAAdA,eAAA,CAAgB9P,MAAM,EAAE;QAC1B4P,MAAM,CAAC7J,IAAI,CAAC,GAAG4J,SAAS,CAACE,KAAK,CAACnS,QAAQ,CAAC,CAAC;;;IAG7C,OAAOkS,MAAM;GACd;EAED,MAAML,UAAU,GAAGF,aAAa,CAACU,KAAK,CAACC,OAAO,CAACb,YAAY,CAAC,GAAGA,YAAY,GAAGA,YAAY,GAAG,CAACA,YAAY,CAAC,GAAG,EAAE,CAAC;EAEjH,MAAM,CAACc,QAAQ,EAAEC,WAAW,CAAC,GAAG1V,cAAQ,CAACwS,WAAW,CAACiD,QAAQ,GAAG;IAAEzL,IAAI,EAAEwI,WAAW,CAACiD;GAAU,GAAG,IAAI,CAAC;EACtG,MAAM,CAACE,IAAI,EAAEC,OAAO,CAAC,GAAG5V,cAAQ,CAACwS,WAAW,CAACmD,IAAI,GAAG;IAAE3L,IAAI,EAAEwI,WAAW,CAACmD;GAAM,GAAG,IAAI,CAAC;EAEtFE,eAAS,CAAC,MAAM;IACd,IAAIzB,OAAO,IAAI5B,WAAW,CAACiD,QAAQ,IAAI,EAACA,QAAQ,aAARA,QAAQ,eAARA,QAAQ,CAAExK,IAAI,GAAE;MACtD,MAAM6K,aAAa,GAAGf,UAAU,CAACP,IAAI,CAAEuB,CAAC,IAAKA,CAAC,CAAC/L,IAAI,KAAKwI,WAAW,CAACiD,QAAQ,IAAIM,CAAC,CAAC9K,IAAI,KAAKuH,WAAW,CAACiD,QAAQ,CAAC;MAChH,IAAIK,aAAa,EAAEJ,WAAW,CAACI,aAAa,CAAC;;GAEhD,EAAE,CAAC1B,OAAO,EAAEW,UAAU,CAAC,CAAC;EAEzB,MAAMK,MAAM,GAAGK,QAAQ,GAAGN,SAAS,CAACM,QAAQ,CAACvS,QAAQ,CAAC,GAAG,EAAE;EAE3D2S,eAAS,CAAC,MAAM;IACd,IAAIJ,QAAQ,IAAIE,IAAI,IAAI,CAACP,MAAM,CAACZ,IAAI,CAAEwB,CAAC,IAAKA,CAAC,CAAChM,IAAI,KAAK2L,IAAI,CAAC3L,IAAI,CAAC,EAAE;MACjE4L,OAAO,CAAC,IAAI,CAAC;;GAEhB,EAAE,CAACH,QAAQ,CAAC,CAAC;EAEd,MAAMQ,cAAc,GAAG,CACrB;IAAEhL,IAAI,EAAE,SAAS;IAAEjB,IAAI,EAAE;GAAwB,EACjD;IAAEiB,IAAI,EAAE,KAAK;IAAEjB,IAAI,EAAE;GAAoB,CAC1C;EAED,MAAMkM,YAAY,GAAG,CACnB;IAAEjL,IAAI,EAAE,KAAK;IAAEjB,IAAI,EAAE;GAAmB,EACxC;IAAEiB,IAAI,EAAE,IAAI;IAAEjB,IAAI,EAAE;GAAkB,CACvC;EAED,MAAMmM,0BAA0B,GAAGA,MAAM;IACvC,MAAMC,OAAO,GAAG;MACd1D,WAAW;MACXI,WAAW;MACXE,MAAM;MACNG,QAAQ;MACRG,QAAQ;MACRE,OAAO;MACPG,SAAS;MACT8B,QAAQ,EAAEA,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEzL,IAAI;MACxB2L,IAAI,EAAEA,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAE3L;KACb;IACD,IAAIkI,UAAU,EAAE;MACdA,UAAU,CAACkE,OAAO,CAAC;KACpB,MAAM;MACL,MAAM;QAAEtS,OAAO;QAAEiH,cAAc;QAAEP;OAAmB,GAAG8H,SAAS;MAChE7H,OAAO,CAACc,IAAI,CAAC,uCAAuC,EAAE;QACpDzH,OAAO;QAAEiH,cAAc;QAAEP,iBAAiB;QAAEiI,cAAc,EAAE2D;OAC7D,CAAC;;GAEL;EAED,MAAMC,aAAa,GAAI3S,CAAC,IAAK;IAC3B,MAAM4S,IAAI,GAAG5S,CAAC,CAACY,MAAM,CAACiS,KAAK,CAAC,CAAC,CAAC;IAC9B,IAAI,CAACD,IAAI,EAAE;IACX,MAAME,MAAM,GAAG,IAAIC,UAAU,EAAE;IAC/BD,MAAM,CAACE,SAAS,GAAG,MAAM9C,YAAY,CAAC4C,MAAM,CAACpH,MAAM,CAAC;IACpDoH,MAAM,CAACG,aAAa,CAACL,IAAI,CAAC;GAC3B;EAED,MAAMM,WAAW,GAAGA,MAAM;IACxBhD,YAAY,CAAC,IAAI,CAAC;IAClB,IAAIG,YAAY,CAAC8C,OAAO,EAAE9C,YAAY,CAAC8C,OAAO,CAACtT,KAAK,GAAG,EAAE;GAC1D;EAED,MAAMuT,wBAAwB,GAAGA,MAAM;IACrC,IAAI,EAAE,aAAa,IAAIC,SAAS,CAAC,EAAE;MACjCC,KAAK,CAACzZ,CAAC,CAAC,2BAA2B,CAAC,CAAC;MACrC;;IAEFuW,qBAAqB,CAAC,IAAI,CAAC;IAC3BiD,SAAS,CAACE,WAAW,CAACC,kBAAkB,WAAAC,MAAA;MAAA,IAC/B;QAAEC,MAAM,EAAE;UAAEC,QAAQ;UAAEC;;OAAa,GAAAH,MAAA;MAAA,IAAK;QAAA,OAAAI,OAAA,CAAAC,OAAA,CAAAlI,gBAAA;UAAA,OAAAL,MAAA,aACzC;YAAA,OAAAsI,OAAA,CAAAC,OAAA,CACgBC,KAAK,CACrB,+DAA+DJ,QAAQ,QAAQC,SAAS,2BAC1F,CAAC,EAAAjI,IAAA,WAFKqI,GAAG;cAGT,IAAI,CAACA,GAAG,CAACC,EAAE,EAAE,MAAM,IAAIC,KAAK,CAAC,gBAAgB,CAAC;cAAC,OAAAL,OAAA,CAAAC,OAAA,CAC5BE,GAAG,CAACG,IAAI,EAAE,EAAAxI,IAAA,WAAvBrQ,IAAI;gBAAA,IACNA,IAAI,aAAJA,IAAI,eAAJA,IAAI,CAAE4M,OAAO;kBACf,MAAMmK,CAAC,GAAG/W,IAAI,CAAC4M,OAAO;kBACtBmH,cAAc,CAAC,CAACgD,CAAC,CAAC+B,OAAO,EAAE/B,CAAC,CAACgC,IAAI,EAAEhC,CAAC,CAACiC,aAAa,EAAEjC,CAAC,CAACkC,MAAM,EAAElC,CAAC,CAACmC,IAAI,EAAEnC,CAAC,CAACxD,KAAK,EAAEwD,CAAC,CAACoC,QAAQ,CAAC,CAACC,MAAM,CAACC,OAAO,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC,CAAC;kBACtH7E,UAAU,CAACsC,CAAC,CAACoC,QAAQ,IAAI,EAAE,CAAC;kBAC5B5E,WAAW,CAACwC,CAAC,CAACkC,MAAM,IAAIlC,CAAC,CAACiC,aAAa,IAAI,EAAE,CAAC;kBAC9C/E,SAAS,CAAC8C,CAAC,CAAC+B,OAAO,IAAI,EAAE,CAAC;;;;WAE7B,YAAQS,GAAG,EAAE;YACZC,OAAO,CAAC/K,KAAK,CAAC,wBAAwB,EAAE8K,GAAG,CAAC;WAC7C;qBAAAE,UAAA,EAAAC,OAAA;UACC5E,qBAAqB,CAAC,KAAK,CAAC;UAAC,IAAA2E,UAAA,QAAAC,OAAA;UAAA,OAAAA,OAAA;;OAEhC,QAAAhV,CAAA;QAAA,OAAA6T,OAAA,CAAAoB,MAAA,CAAAjV,CAAA;;OACA6U,GAAG,IAAK;MACPC,OAAO,CAAC/K,KAAK,CAAC,oBAAoB,EAAE8K,GAAG,CAAC;MACxCzE,qBAAqB,CAAC,KAAK,CAAC;MAC5BkD,KAAK,CAACzZ,CAAC,CAAC,uBAAuB,CAAC,CAAC;KAClC,EACD;MAAEqb,kBAAkB,EAAE,IAAI;MAAEC,OAAO,EAAE,KAAK;MAAEC,UAAU,EAAE;KAC1D,CAAC;GACF;EAED,MAAMC,aAAa,GAAGA,mBACpBpb,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEuX,SAAS,EAAE;;kBAGvBrb,cAAA,CAAAC,aAAA,CAAC2T,WAAW;IACVZ,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACqb,mCAAY;MAACza,SAAS,EAAC,MAAM;MAAC0a,MAAM,EAAE;QAAEtJ,IAAI,EAAE,SAAS;QAAExN,KAAK,EAAE,MAAM;QAAEC,MAAM,EAAE;;KAAW,CAAE;IACpGpE,KAAK,EAAEV,CAAC,CAAC,6BAA6B;GACvC,CAAC,eAEFI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEM,YAAY,EAAE;;kBAC1BpE,cAAA,CAAAC,aAAA,CAAC8O,mCAAY;IACXzC,OAAO,EAAEgM,cAAe;IACxB/L,UAAU,EAAC,MAAM;IACjBa,cAAc,EAAE2H,WAAY;IAC5B/F,QAAQ,EAAEgG,cAAe;IACzBpV,CAAC,EAAEA,CAAE;IACL4b,WAAW,EAAE;MAAEvX,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE;KAAW;IACvDJ,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEqC,GAAG,EAAE;;GAChC,CACE,CAAC,EAGLyO,WAAW,CAACzH,IAAI,KAAK,SAAS,iBAC7BtN,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACV2X,eAAe,EAAE,SAAS;MAC1BvU,MAAM,EAAE,qBAAqB;MAC7B7C,YAAY,EAAE,KAAK;MACnBF,OAAO,EAAE,WAAW;MACpBF,OAAO,EAAE,MAAM;MACfC,UAAU,EAAE,YAAY;MACxBoC,GAAG,EAAE,MAAM;MACXlC,YAAY,EAAE,MAAM;MACpBiX,SAAS,EAAE;;kBAEXrb,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAE2X,eAAe,EAAE,SAAS;MAAEtX,OAAO,EAAE,KAAK;MAAEE,YAAY,EAAE,KAAK;MAAEJ,OAAO,EAAE,MAAM;MAAEyX,UAAU,EAAE;;kBAC1G1b,cAAA,CAAAC,aAAA,CAACqb,mCAAY;IAACza,SAAS,EAAC,MAAM;IAAC0a,MAAM,EAAE;MAAEtJ,IAAI,EAAE,SAAS;MAAExN,KAAK,EAAE,MAAM;MAAEC,MAAM,EAAE;;GAAW,CACzF,CAAC,eACN1E,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAE+W,UAAU,EAAE,KAAK;MAAErX,KAAK,EAAE,SAAS;MAAEK,UAAU,EAAE;;KAC9EkQ,WAAW,CAACM,WACV,CACF,CACN,EAGAJ,WAAW,CAACzH,IAAI,KAAK,KAAK,iBACzBtN,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEuX,SAAS,EAAE;;kBAGvBrb,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAE4C,cAAc,EAAE,eAAe;MAAE1C,YAAY,EAAE;;kBAClGpE,cAAA,CAAAC,aAAA,CAACsO,gCAAS;IAACzK,KAAK,EAAE;MAAEa,UAAU,EAAE,KAAK;MAAEP,YAAY,EAAE,CAAC;MAAEQ,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KAC9E1E,CAAC,CAAC,gCAAgC,CAC1B,CAAC,eACZI,cAAA,CAAAC,aAAA,CAAC8O,mCAAY;IACXzC,OAAO,EAAEiM,YAAa;IACtBhM,UAAU,EAAC,MAAM;IACjBa,cAAc,EAAE6H,cAAe;IAC/BjG,QAAQ,EAAEkG,iBAAkB;IAC5BtV,CAAC,EAAEA,CAAE;IACL4b,WAAW,EAAE;MAAEvX,OAAO,EAAE,MAAM;MAAEqC,GAAG,EAAE;KAAS;IAC9CxC,KAAK,EAAE;MAAEM,YAAY,EAAE;;GACxB,CACE,CAAC,eAGNpE,cAAA,CAAAC,aAAA;IACE+G,OAAO,EAAE,CAACkP,kBAAkB,GAAGiD,wBAAwB,GAAGyC,SAAU;IACpE9X,KAAK,EAAE;MACLoD,MAAM,EAAE,qBAAqB;MAC7B7C,YAAY,EAAE,KAAK;MACnBF,OAAO,EAAE,WAAW;MACpBF,OAAO,EAAE,MAAM;MACfC,UAAU,EAAE,QAAQ;MACpB4C,cAAc,EAAE,eAAe;MAC/B1C,YAAY,EAAE,MAAM;MACpB+C,MAAM,EAAE+O,kBAAkB,GAAG,aAAa,GAAG,SAAS;MACtDuF,eAAe,EAAEvF,kBAAkB,GAAG,SAAS,GAAG,MAAM;MACxD2F,UAAU,EAAE,kBAAkB;MAC9BtI,OAAO,EAAE2C,kBAAkB,GAAG,GAAG,GAAG;KACpC;IACF4F,WAAW,EAAG/V,CAAC,IAAK;MAAE,IAAI,CAACmQ,kBAAkB,EAAEnQ,CAAC,CAACgW,aAAa,CAACjY,KAAK,CAACmD,UAAU,GAAG,SAAS;KAAI;IAC/F+U,UAAU,EAAGjW,CAAC,IAAK;MAAE,IAAI,CAACmQ,kBAAkB,EAAEnQ,CAAC,CAACgW,aAAa,CAACjY,KAAK,CAACmD,UAAU,GAAG,MAAM;;kBAEvFjH,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEoC,GAAG,EAAE;;kBACxDtG,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAE2X,eAAe,EAAE,SAAS;MAAEtX,OAAO,EAAE,KAAK;MAAEE,YAAY,EAAE,KAAK;MAAEJ,OAAO,EAAE;;KACrFiS,kBAAkB,gBACjBlW,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVW,KAAK,EAAE,MAAM;MAAEC,MAAM,EAAE,MAAM;MAAEwC,MAAM,EAAE,mBAAmB;MAC1D+U,cAAc,EAAE,aAAa;MAAE5X,YAAY,EAAE,KAAK;MAClDgX,SAAS,EAAE;;GACT,CAAC,gBAELrb,cAAA,CAAAC,aAAA,CAACkS,UAAU;IAACJ,IAAI,EAAE;GAAK,CAEtB,CAAC,eACN/R,cAAA,CAAAC,aAAA;IAAM6D,KAAK,EAAE;MAAEa,UAAU,EAAE,KAAK;MAAEC,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KACxD4R,kBAAkB,GACftW,CAAC,CAAC,wBAAwB,CAAC,GAC3BA,CAAC,CAAC,2BAA2B,CAC7B,CACH,CAAC,EACL,CAACsW,kBAAkB,iBAClBlW,cAAA,CAAAC,aAAA;IAAM6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE,SAAS;MAAEqX,UAAU,EAAE;;KAAK,QAAO,CAE1E,CAAC,eAGN3b,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEM,YAAY,EAAE;;kBAC1BpE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAE4X,aAAa,EAAE,WAAW;MAAEC,aAAa,EAAE,QAAQ;MAAE/X,YAAY,EAAE;;KACrIxE,CAAC,CAAC,mBAAmB,CACnB,CAAC,eACNI,cAAA,CAAAC,aAAA,CAAC6S,SAAS;IACRE,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACmc,oCAAa;MAACb,MAAM,EAAE;QAAEtJ,IAAI,EAAE,SAAS;QAAExN,KAAK,EAAE,MAAM;QAAEC,MAAM,EAAE;;KAAW,CAAE;IACpFuO,UAAU;IACVrN,KAAK,EAAEuP,WAAY;IACnBzP,QAAQ,EAAGK,CAAC,IAAKqP,cAAc,CAACrP,CAAC,CAACY,MAAM,CAACf,KAAK,CAAE;IAChDgB,WAAW,EAAEhH,CAAC,CAAC,yBAAyB,CAAE;IAC1CsT,UAAU,EAAE;MAAEmJ,SAAS,EAAE;;GAC1B,CACE,CAAC,eAGNrc,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEqY,mBAAmB,EAAE,SAAS;MAAEhW,GAAG,EAAE,MAAM;MAAElC,YAAY,EAAE;;kBACxFpE,cAAA,CAAAC,aAAA,2BACED,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAE4X,aAAa,EAAE,WAAW;MAAEC,aAAa,EAAE,QAAQ;MAAE/X,YAAY,EAAE;;KACrIxE,CAAC,CAAC,wBAAwB,CACxB,CAAC,eACNI,cAAA,CAAAC,aAAA,CAAC6S,SAAS;IACRE,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACmc,oCAAa;MAACb,MAAM,EAAE;QAAEtJ,IAAI,EAAE,SAAS;QAAExN,KAAK,EAAE,MAAM;QAAEC,MAAM,EAAE;;KAAW,CAAE;IACpFkB,KAAK,EAAEyP,MAAO;IACd3P,QAAQ,EAAGK,CAAC,IAAKuP,SAAS,CAACvP,CAAC,CAACY,MAAM,CAACf,KAAK,CAAE;IAC3CgB,WAAW,EAAEhH,CAAC,CAAC,oBAAoB;GACpC,CACE,CAAC,eACNI,cAAA,CAAAC,aAAA,2BACED,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAE4X,aAAa,EAAE,WAAW;MAAEC,aAAa,EAAE,QAAQ;MAAE/X,YAAY,EAAE;;KACrIxE,CAAC,CAAC,qBAAqB,CACrB,CAAC,eACNI,cAAA,CAAAC,aAAA,CAAC6S,SAAS;IACRE,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACmc,oCAAa;MAACb,MAAM,EAAE;QAAEtJ,IAAI,EAAE,SAAS;QAAExN,KAAK,EAAE,MAAM;QAAEC,MAAM,EAAE;;KAAW,CAAE;IACpFkB,KAAK,EAAE4P,QAAS;IAChB9P,QAAQ,EAAGK,CAAC,IAAK0P,WAAW,CAAC1P,CAAC,CAACY,MAAM,CAACf,KAAK,CAAE;IAC7CgB,WAAW,EAAEhH,CAAC,CAAC,qBAAqB;GACrC,CACE,CACF,CAAC,eAGNI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEqY,mBAAmB,EAAE,SAAS;MAAEhW,GAAG,EAAE,MAAM;MAAElC,YAAY,EAAE;;kBACxFpE,cAAA,CAAAC,aAAA,2BACED,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAE4X,aAAa,EAAE,WAAW;MAAEC,aAAa,EAAE,QAAQ;MAAE/X,YAAY,EAAE;;KACrIxE,CAAC,CAAC,eAAe,CACf,CAAC,eACNI,cAAA,CAAAC,aAAA,CAAC6S,SAAS;IACRE,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACqb,mCAAY;MAACza,SAAS,EAAC,MAAM;MAAC0a,MAAM,EAAE;QAAEtJ,IAAI,EAAE,SAAS;QAAExN,KAAK,EAAE,MAAM;QAAEC,MAAM,EAAE;;KAAW,CAAE;IACpGkB,KAAK,EAAE+P,QAAS;IAChBjQ,QAAQ,EAAGK,CAAC,IAAK6P,WAAW,CAAC7P,CAAC,CAACY,MAAM,CAACf,KAAK,CAAE;IAC7CgB,WAAW,EAAEhH,CAAC,CAAC,qBAAqB;GACrC,CACE,CAAC,eACNI,cAAA,CAAAC,aAAA,2BACED,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAE4X,aAAa,EAAE,WAAW;MAAEC,aAAa,EAAE,QAAQ;MAAE/X,YAAY,EAAE;;KACrIxE,CAAC,CAAC,cAAc,CACd,CAAC,eACNI,cAAA,CAAAC,aAAA,CAAC6S,SAAS;IACRE,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACmS,WAAW;MAACL,IAAI,EAAE;KAAK,CAAE;IAChCnM,KAAK,EAAEiQ,OAAQ;IACfnQ,QAAQ,EAAGK,CAAC,IAAK;MAAE,IAAI,OAAO,CAACwW,IAAI,CAACxW,CAAC,CAACY,MAAM,CAACf,KAAK,CAAC,EAAEkQ,UAAU,CAAC/P,CAAC,CAACY,MAAM,CAACf,KAAK,CAAC;KAAI;IACnFgB,WAAW,EAAEhH,CAAC,CAAC,oBAAoB,CAAE;IACrC4c,SAAS,EAAE;GACZ,CACE,CACF,CACF,CACN,eAEDxc,cAAA,CAAAC,aAAA;IAAI6D,KAAK,EAAE;MAAEuD,MAAM,EAAE,QAAQ;MAAEH,MAAM,EAAE,CAAC;MAAEuV,SAAS,EAAE;;GAAwB,CAAC,eAG9Ezc,cAAA,CAAAC,aAAA,CAAC2T,WAAW;IACVZ,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACmc,oCAAa;MAACb,MAAM,EAAE;QAAEtJ,IAAI,EAAE,SAAS;QAAExN,KAAK,EAAE,MAAM;QAAEC,MAAM,EAAE;;KAAW,CAAE;IACpFpE,KAAK,EAAEV,CAAC,CAAC,8BAA8B;GACxC,CAAC,EAED2W,aAAa,gBAAGvW,cAAA,CAAAC,aAAA,CAAC2H,6BAAM,MAAE,CAAC,gBACzB5H,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEqY,mBAAmB,EAAE,SAAS;MAAEhW,GAAG,EAAE,MAAM;MAAElC,YAAY,EAAE;;kBACxFpE,cAAA,CAAAC,aAAA,2BACED,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAE4X,aAAa,EAAE,WAAW;MAAEC,aAAa,EAAE,QAAQ;MAAE/X,YAAY,EAAE;;KACrIxE,CAAC,CAAC,eAAe,CACf,CAAC,eACNI,cAAA,CAAAC,aAAA,CAACkJ,+BAAQ;IACPC,MAAM,EAAEgO,UAAW;IACnB/N,SAAS,EAAC,MAAM;IAChBE,QAAQ,EAAEuO,QAAS;IACnBxO,MAAM,EAAGoT,GAAG,IAAK;MAAE3E,WAAW,CAAC2E,GAAG,CAAC;MAAEzE,OAAO,CAAC,IAAI,CAAC;KAAI;IACtDrY,CAAC,EAAEA;GACJ,CACE,CAAC,eACNI,cAAA,CAAAC,aAAA,2BACED,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAE4X,aAAa,EAAE,WAAW;MAAEC,aAAa,EAAE,QAAQ;MAAE/X,YAAY,EAAE;;KACrIxE,CAAC,CAAC,WAAW,CAAC,IAAI,OAChB,CAAC,eACNI,cAAA,CAAAC,aAAA,CAACkJ,+BAAQ;IACPC,MAAM,EAAEqO,MAAO;IACfpO,SAAS,EAAC,MAAM;IAChBE,QAAQ,EAAEyO,IAAK;IACf1O,MAAM,EAAE2O,OAAQ;IAChB0E,QAAQ,EAAE,CAAC7E,QAAS;IACpBlY,CAAC,EAAEA;GACJ,CACE,CACF,CACN,eAEDI,cAAA,CAAAC,aAAA;IAAI6D,KAAK,EAAE;MAAEuD,MAAM,EAAE,QAAQ;MAAEH,MAAM,EAAE,CAAC;MAAEuV,SAAS,EAAE;;GAAwB,CAAC,eAG9Ezc,cAAA,CAAAC,aAAA,CAAC2T,WAAW;IACVZ,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAAC6R,UAAU;MAACC,IAAI,EAAE;KAAK,CAAE;IAC/BzR,KAAK,EAAEV,CAAC,CAAC,wBAAwB;GAClC,CAAC,eAEFI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE,SAAS;MAAEF,YAAY,EAAE;;KAC7DxE,CAAC,CAAC,gCAAgC,CAChC,CAAC,eAGNI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACV2X,eAAe,EAAE,SAAS;MAC1BvU,MAAM,EAAE,qBAAqB;MAC7B7C,YAAY,EAAE,KAAK;MACnBF,OAAO,EAAE,WAAW;MACpBF,OAAO,EAAE,MAAM;MACfC,UAAU,EAAE,YAAY;MACxBoC,GAAG,EAAE,MAAM;MACXlC,YAAY,EAAE;;kBAEdpE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAE4X,UAAU,EAAE,CAAC;MAAE3U,SAAS,EAAE;;kBACtC/G,cAAA,CAAAC,aAAA,CAAC2c,qCAAc;IAAC3K,IAAI,EAAC;GAAW,CAC7B,CAAC,eACNjS,cAAA,CAAAC,aAAA,2BACED,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEa,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAEM,QAAQ,EAAE,MAAM;MAAER,YAAY,EAAE;;KAChFxE,CAAC,CAAC,gBAAgB,CAChB,CAAC,eACNI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KACpC1E,CAAC,CAAC,0BAA0B,CAC1B,CACF,CACF,CAAC,eAGNI,cAAA,CAAAC,aAAA;IACE8E,IAAI,EAAC,MAAM;IACX8X,GAAG,EAAEzG,YAAa;IAClB1Q,QAAQ,EAAEgT,aAAc;IACxBoE,MAAM,EAAC,SAAS;IAChBhZ,KAAK,EAAE;MAAEG,OAAO,EAAE;;GACnB,CAAC,eACFjE,cAAA,CAAAC,aAAA;IACE+G,OAAO,EAAE,CAACgP,SAAS,GAAG,MAAMI,YAAY,CAAC8C,OAAO,CAAC6D,KAAK,EAAE,GAAGnB,SAAU;IACrEE,WAAW,EAAG/V,CAAC,IAAK;MAAE,IAAI,CAACiQ,SAAS,EAAEjQ,CAAC,CAACgW,aAAa,CAACjY,KAAK,CAACkZ,WAAW,GAAG,SAAS;KAAI;IACvFhB,UAAU,EAAGjW,CAAC,IAAK;MAAE,IAAI,CAACiQ,SAAS,EAAEjQ,CAAC,CAACgW,aAAa,CAACjY,KAAK,CAACkZ,WAAW,GAAG,SAAS;KAAI;IACtFlZ,KAAK,EAAE;MACLoD,MAAM,EAAE,sBAAsB;MAC9B7C,YAAY,EAAE,MAAM;MACpBgY,SAAS,EAAE,OAAO;MAClBpY,OAAO,EAAE,MAAM;MACfgL,aAAa,EAAE,QAAQ;MACvB/K,UAAU,EAAE,QAAQ;MACpB4C,cAAc,EAAE,QAAQ;MACxB2U,eAAe,EAAE,SAAS;MAC1BtU,MAAM,EAAE6O,SAAS,GAAG,SAAS,GAAG,SAAS;MACzCiH,QAAQ,EAAE,QAAQ;MAClBpB,UAAU,EAAE,oBAAoB;MAChCpV,QAAQ,EAAE,UAAU;MACpBtC,OAAO,EAAE6R,SAAS,GAAG,GAAG,GAAG;;KAG5B,CAACA,SAAS,gBACThW,cAAA,CAAAC,aAAA,CAAA4N,cAAA,qBACE7N,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVW,KAAK,EAAE,MAAM;MAAEC,MAAM,EAAE,MAAM;MAAEL,YAAY,EAAE,KAAK;MAClD4C,UAAU,EAAE,SAAS;MAAEhD,OAAO,EAAE,MAAM;MACtCC,UAAU,EAAE,QAAQ;MAAE4C,cAAc,EAAE,QAAQ;MAAE1C,YAAY,EAAE;;kBAE9DpE,cAAA,CAAAC,aAAA,CAAC6R,UAAU;IAACC,IAAI,EAAE;GAAK,CACpB,CAAC,eACN/R,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEa,UAAU,EAAE,KAAK;MAAEC,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE,SAAS;MAAEF,YAAY,EAAE;;KAChFxE,CAAC,CAAC,qBAAqB,CAAC,IAAI,gBAC1B,CAAC,eACNI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KACpC1E,CAAC,CAAC,yBAAyB,CACzB,CACL,CAAC,gBAEHI,cAAA,CAAAC,aAAA,CAAA4N,cAAA,qBACE7N,cAAA,CAAAC,aAAA;IACEid,GAAG,EAAElH,SAAU;IACfmH,GAAG,EAAC,MAAM;IACVrZ,KAAK,EAAE;MAAEW,KAAK,EAAE,MAAM;MAAE2Y,SAAS,EAAE,OAAO;MAAEC,SAAS,EAAE,OAAO;MAAEpZ,OAAO,EAAE;;GAC1E,CAAC,eACFjE,cAAA,CAAAC,aAAA;IACE+G,OAAO,EAAGjB,CAAC,IAAK;MAAEA,CAAC,CAACuX,eAAe,EAAE;MAAErE,WAAW,EAAE;KAAI;IACxDnV,KAAK,EAAE;MACL2C,QAAQ,EAAE,UAAU;MAAE2M,GAAG,EAAE,MAAM;MAAEmK,KAAK,EAAE,MAAM;MAChDtW,UAAU,EAAE,MAAM;MAAEC,MAAM,EAAE,qBAAqB;MACjD7C,YAAY,EAAE,KAAK;MAAEF,OAAO,EAAE,UAAU;MACxCF,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEoC,GAAG,EAAE,KAAK;MACjDa,MAAM,EAAE,SAAS;MAAEvC,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE,SAAS;MAAEK,UAAU,EAAE;;kBAGrE3E,cAAA,CAAAC,aAAA,CAACqS,SAAS;IAACP,IAAI,EAAE;GAAK,CAAC,KAAC,EAACnS,CAAC,CAAC,aAAa,CAClC,CACR,CAED,CAAC,EAGL0U,SAAS,gBACRtU,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEiD,SAAS,EAAE;;kBACvB/G,cAAA,CAAAC,aAAA,CAACmH,gCAAS;IACR9G,KAAK,EAAEV,CAAC,CAAC,wCAAwC,CAAE;IACnDkG,QAAQ,EAAE0S;GACX,CACE,CAAC,gBAENxY,cAAA,CAAAC,aAAA,CAACud,gCAAS,qBACRxd,cAAA,CAAAC,aAAA,CAACmH,gCAAS;IACR9G,KAAK,EAAEV,CAAC,CAAC,4BAA4B,CAAE;IACvCkG,QAAQ,EAAE0S;GACX,CACQ,CACZ,eAGDxY,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAE4C,cAAc,EAAE,QAAQ;MAC/DR,GAAG,EAAE,KAAK;MAAES,SAAS,EAAE,MAAM;MAC7BnC,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;kBAEzBtE,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAC,IAAI;IAACC,MAAM,EAAC,IAAI;IAACsN,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAC,cAAc;IAACC,WAAW,EAAC,GAAG;IAACC,aAAa,EAAC;kBAC9G1S,cAAA,CAAAC,aAAA;IAAMwd,CAAC,EAAC,GAAG;IAACC,CAAC,EAAC,IAAI;IAACjZ,KAAK,EAAC,IAAI;IAACC,MAAM,EAAC,IAAI;IAACiZ,EAAE,EAAC;GAAK,CAAC,eACnD3d,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAA4B,CACjC,CAAC,EACLtS,CAAC,CAAC,yBAAyB,CACzB,CACF,CACN;EAGD,IAAI0U,SAAS,EAAE;IACb,oBACEtU,cAAA,CAAAC,aAAA,CAAC4N,cAAQ,qBACP7N,cAAA,CAAAC,aAAA;MAAI6D,KAAK,EAAE;QAAEuD,MAAM,EAAE,QAAQ;QAAEH,MAAM,EAAE,CAAC;QAAEuV,SAAS,EAAE;;KAAwB,CAAC,EAC7ErB,aAAa,EACN,CAAC;;EAKf,oBACEpb,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACbb,cAAA,CAAAC,aAAA,gBAAQ;AACd;AACA;AACA,OAAe,CAAC,eAGVD,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACbb,cAAA,CAAAC,aAAA,CAAC+D,2BAAI;IAACF,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEC,OAAO,EAAE,WAAW;MAAEC,YAAY,EAAE,MAAM;MAAEC,YAAY,EAAE;;kBAC9GrE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEQ,KAAK,EAAE,SAAS;MAAEC,WAAW,EAAE,MAAM;MAAEN,OAAO,EAAE;;kBAC5DjE,cAAA,CAAAC,aAAA,CAACuE,+BAAQ;IAACV,KAAK,EAAE;MAAEW,KAAK,EAAE,MAAM;MAAEC,MAAM,EAAE;;GAAW,CAClD,CAAC,eACN1E,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEa,UAAU,EAAE,KAAK;MAAEC,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KACvD1E,CAAC,CAAC,cAAc,CAAC,IAAI,cACnB,CACD,CAAC,eAEPI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmD,UAAU,EAAE,MAAM;MAAE9C,OAAO,EAAE,WAAW;MAAEE,YAAY,EAAE,KAAK;MAAE6C,MAAM,EAAE;;KAClF,CACC;IAAE5G,KAAK,EAAEV,CAAC,CAAC,mBAAmB,CAAC,IAAI,SAAS;IAAEge,IAAI,EAAE,IAAI;IAAEC,MAAM,EAAE;GAAO,EACzE;IAAEvd,KAAK,EAAEV,CAAC,CAAC,mBAAmB,CAAC,IAAI,SAAS;IAAEge,IAAI,EAAE,KAAK;IAAEC,MAAM,EAAE;GAAM,EACzE;IAAEvd,KAAK,EAAEV,CAAC,CAAC,oBAAoB,CAAC,IAAI,UAAU;IAAEge,IAAI,EAAE,KAAK;IAAEC,MAAM,EAAE;GAAO,EAC5E;IAAEvd,KAAK,EAAEV,CAAC,CAAC,kBAAkB,CAAC,IAAI,QAAQ;IAAEge,IAAI,EAAE,KAAK;IAAEC,MAAM,EAAE;GAAO,CACzE,CAACpW,GAAG,CAAC,CAACqW,IAAI,EAAEC,CAAC,kBACZ/d,cAAA,CAAAC,aAAA;IAAK0F,GAAG,EAAEoY,CAAE;IAACja,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEqC,GAAG,EAAE,MAAM;MAAEpC,UAAU,EAAE,YAAY;MAAEuC,QAAQ,EAAE,UAAU;MAAE1C,aAAa,EAAEga,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG;;KACjIA,CAAC,GAAG,CAAC,iBACJ/d,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAE2C,QAAQ,EAAE,UAAU;MAAE0M,IAAI,EAAE,MAAM;MAAEC,GAAG,EAAE,MAAM;MAAE3O,KAAK,EAAE,KAAK;MAAEC,MAAM,EAAE,mBAAmB;MAAEuC,UAAU,EAAE;;GAAc,CACrI,eACDjH,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVW,KAAK,EAAE,MAAM;MAAEC,MAAM,EAAE,MAAM;MAAEL,YAAY,EAAE,KAAK;MAAEqX,UAAU,EAAE,CAAC;MAAE3U,SAAS,EAAE,KAAK;MACnFG,MAAM,EAAE4W,IAAI,CAACF,IAAI,GAAG,MAAM,GAAGE,IAAI,CAACD,MAAM,GAAG,qBAAqB,GAAG,qBAAqB;MACxF5W,UAAU,EAAE6W,IAAI,CAACF,IAAI,GAAG,SAAS,GAAGE,IAAI,CAACD,MAAM,GAAG,SAAS,GAAG,MAAM;MACpE5Z,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAE4C,cAAc,EAAE,QAAQ;MAC/DlC,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MACnCL,KAAK,EAAEwZ,IAAI,CAACF,IAAI,GAAG,MAAM,GAAGE,IAAI,CAACD,MAAM,GAAG,SAAS,GAAG;;KAErDC,IAAI,CAACF,IAAI,gBAAG5d,cAAA,CAAAC,aAAA,CAAC2S,SAAS;IAACb,IAAI,EAAE,EAAG;IAACzN,KAAK,EAAC;GAAQ,CAAC,GAAGyZ,CAAC,GAAG,CACrD,CAAC,eACN/d,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVc,QAAQ,EAAE,MAAM;MAAEoZ,UAAU,EAAE,KAAK;MACnC1Z,KAAK,EAAEwZ,IAAI,CAACF,IAAI,GAAG,SAAS,GAAGE,IAAI,CAACD,MAAM,GAAG,SAAS,GAAG,SAAS;MAClElZ,UAAU,EAAEmZ,IAAI,CAACF,IAAI,IAAIE,IAAI,CAACD,MAAM,GAAG,KAAK,GAAG;;KAE9CC,IAAI,CAACxd,KACH,CACF,CACN,CACE,CACF,CAAC,eAGNN,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmB,IAAI,EAAE,CAAC;MAAEC,UAAU,EAAE;;kBACjClF,cAAA,CAAAC,aAAA,CAAC+D,2BAAI,qBACHhE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAE6C,cAAc,EAAE,eAAe;MAAE5C,UAAU,EAAE,QAAQ;MAAEE,YAAY,EAAE;;kBAClGpE,cAAA,CAAAC,aAAA,CAAC6N,iCAAU;IAAChK,KAAK,EAAE;MAAEuD,MAAM,EAAE,CAAC;MAAEzC,QAAQ,EAAE;;KACvChF,CAAC,CAAC,6BAA6B,CAAC,IAAI,iBAC3B,CAAC,eACbI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVmD,UAAU,EAAE,SAAS;MAAEC,MAAM,EAAE,qBAAqB;MACpD7C,YAAY,EAAE,MAAM;MAAEF,OAAO,EAAE,UAAU;MACzCS,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KAExB1E,CAAC,CAAC,eAAe,CAAC,IAAI,UAAU,EAAC,GAAC,EAAC,GAAG,eACvCI,cAAA,CAAAC,aAAA;IAAM6D,KAAK,EAAE;MAAEQ,KAAK,EAAE,SAAS;MAAEK,UAAU,EAAE;;KAAUgQ,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAExO,OAAc,CAC7E,CACF,CAAC,EACLiV,aAAa,EACV,CACH,CACF,CAAC;AAEV,CAAC;;ACrtBD,MAAM6C,QAAQ,GAAGtd,IAAA;EAAA,IAAC;IAAEoR,IAAI,GAAG;GAAI,GAAApR,IAAA;EAAA,oBAC7BX,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAC,cAAc;IAACC,WAAW,EAAC,KAAK;IAACC,aAAa,EAAC;kBACpH1S,cAAA,CAAAC,aAAA;IAAMwd,CAAC,EAAC,GAAG;IAACC,CAAC,EAAC,IAAI;IAACjZ,KAAK,EAAC,IAAI;IAACC,MAAM,EAAC,IAAI;IAACiZ,EAAE,EAAC;GAAK,CAAC,eACnD3d,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAA4B,CACjC,CAAC;AAAA,CACP;AAED,MAAMgM,QAAQ,GAAGnb,KAAA;EAAA,IAAC;IAAEgP,IAAI,GAAG,EAAE;IAAEzN,KAAK,GAAG;GAAgB,GAAAvB,KAAA;EAAA,oBACrD/C,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAElO,KAAM;IAACmO,WAAW,EAAC,KAAK;IAACC,aAAa,EAAC;kBAC7G1S,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAA6C,CAAC,eACtDlS,cAAA,CAAAC,aAAA;IAAQke,EAAE,EAAC,IAAI;IAACC,EAAE,EAAC,GAAG;IAACC,CAAC,EAAC;GAAK,CAC3B,CAAC;AAAA,CACP;AAED,MAAMC,SAAS,GAAGhb,KAAA;EAAA,IAAC;IAAEyO,IAAI,GAAG,EAAE;IAAEzN,KAAK,GAAG;GAAgB,GAAAhB,KAAA;EAAA,oBACtDtD,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAElO,KAAM;IAACmO,WAAW,EAAC,KAAK;IAACC,aAAa,EAAC;kBAC7G1S,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAA6R,CAClS,CAAC;AAAA,CACP;AAED,MAAMqM,YAAY,GAAG9a,KAAA;EAAA,IAAC;IAAEsO,IAAI,GAAG;GAAI,GAAAtO,KAAA;EAAA,oBACjCzD,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC;kBACvDjS,cAAA,CAAAC,aAAA;IACEiS,CAAC,EAAC,6mBAA6mB;IAC/mBD,IAAI,EAAC;GACN,CAAC,eACFjS,cAAA,CAAAC,aAAA;IACEiS,CAAC,EAAC,mIAAmI;IACrIM,MAAM,EAAC,SAAS;IAACC,WAAW,EAAC,KAAK;IAACC,aAAa,EAAC;GAClD,CACE,CAAC;AAAA,CACP;AAED,MAAM8L,QAAQ,GAAGnM,KAAA;EAAA,IAAC;IAAEN,IAAI,GAAG,EAAE;IAAEzN,KAAK,GAAG;GAAgB,GAAA+N,KAAA;EAAA,oBACrDrS,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAElO,KAAM;IAACmO,WAAW,EAAC,KAAK;IAACC,aAAa,EAAC;kBAC7G1S,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAA+E,CAAC,eACxFlS,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAAmB,CACxB,CAAC;AAAA,CACP;AAED,MAAMuM,SAAS,GAAGlM,KAAA;EAAA,IAAC;IAAER,IAAI,GAAG,EAAE;IAAEzN,KAAK,GAAG;GAAgB,GAAAiO,KAAA;EAAA,oBACtDvS,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAElO,KAAM;IAACmO,WAAW,EAAC,KAAK;IAACC,aAAa,EAAC;kBAC7G1S,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAA6C,CAAC,eACtDlS,cAAA,CAAAC,aAAA;IAAQke,EAAE,EAAC,GAAG;IAACC,EAAE,EAAC,GAAG;IAACC,CAAC,EAAC;GAAK,CAAC,eAC9Bre,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAAuD,CAC5D,CAAC;AAAA,CACP;AAED,MAAMU,WAAS,GAAGC,KAAA;EAAA,IAAC;IAAEd,IAAI,GAAG,EAAE;IAAEzN,KAAK,GAAG;GAAW,GAAAuO,KAAA;EAAA,oBACjD7S,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAElO,KAAM;IAACmO,WAAW,EAAC,KAAK;IAACC,aAAa,EAAC;kBAC7G1S,cAAA,CAAAC,aAAA;IAAU0S,MAAM,EAAC;GAAkB,CAChC,CAAC;AAAA,CACP;AAID,MAAMG,WAAS,GAAGC,KAAA;EAAA,IAAC;IAAEC,IAAI;IAAE0L,SAAS;IAAExL,UAAU,GAAG,EAAE;IAAE,GAAG9R;GAAO,GAAA2R,KAAA;EAAA,oBAC/D/S,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAE2C,QAAQ,EAAE,UAAU;MAAEhC,KAAK,EAAE;;kBACzCzE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACV2C,QAAQ,EAAE,UAAU;MAAE0M,IAAI,EAAE,MAAM;MAAEC,GAAG,EAAE,KAAK;MAC9CC,SAAS,EAAE,kBAAkB;MAAEC,MAAM,EAAE,CAAC;MAAEC,OAAO,EAAE,IAAI;MACvDtP,OAAO,EAAE,MAAM;MAAEuP,aAAa,EAAE;;KAE/BR,IACE,CAAC,eACNhT,cAAA,CAAAC,aAAA,CAACyG,gCAAS,EAAA+M,QAAA;IACRC,cAAc,EAAE;MAAE7M,WAAW,EAAE,MAAM;MAAE8M,YAAY,EAAE+K,SAAS,GAAG,MAAM,GAAG,MAAM;MAAE,GAAGxL;;KACjF9R,KAAK,CACV,CAAC,EACDsd,SAAS,iBACR1e,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACV2C,QAAQ,EAAE,UAAU;MAAE8W,KAAK,EAAE,MAAM;MAAEnK,GAAG,EAAE,KAAK;MAC/CC,SAAS,EAAE,kBAAkB;MAAEpP,OAAO,EAAE;;KAEvCya,SACE,CAEJ,CAAC;AAAA,CACP;AAID,MAAM9K,aAAW,GAAGC,KAAA;EAAA,IAAC;IAAEb,IAAI;IAAE1S;GAAO,GAAAuT,KAAA;EAAA,oBAClC7T,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEoC,GAAG,EAAE,KAAK;MACjDlC,YAAY,EAAE,MAAM;MAAE2C,SAAS,EAAE;;kBAEjC/G,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEyP,OAAO,EAAE,GAAG;MAAEtP,OAAO,EAAE;;KAAW+O,IAAU,CAAC,eAC3DhT,cAAA,CAAAC,aAAA;IAAM6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAEwP,UAAU,EAAE;;KAC/ExT,KACG,CAAC,eACPN,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmB,IAAI,EAAE,CAAC;MAAEP,MAAM,EAAE,KAAK;MAAEuC,UAAU,EAAE;;GAAc,CAC7D,CAAC;AAAA,CACP;AAID,MAAM0X,cAAc,GAAGC,KAAA;EAAA,IAAC;IAAEte,KAAK;IAAEiJ,QAAQ;IAAEyF,QAAQ;IAAEpP,CAAC;IAAE0M;GAAS,GAAAsS,KAAA;EAAA,oBAC/D5e,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MACrC4C,cAAc,EAAE,eAAe;MAAE1C,YAAY,EAAE;;kBAE/CpE,cAAA,CAAAC,aAAA,CAACsO,gCAAS;IAACzK,KAAK,EAAE;MAAEa,UAAU,EAAE,KAAK;MAAEP,YAAY,EAAE,CAAC;MAAEQ,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KAC9EhE,KACQ,CAAC,eACZN,cAAA,CAAAC,aAAA,CAAC8O,mCAAY;IACXzC,OAAO,EAAEA,OAAQ;IACjBC,UAAU,EAAC,MAAM;IACjBa,cAAc,EAAE7D,QAAS;IACzByF,QAAQ,EAAEA,QAAS;IACnBpP,CAAC,EAAEA,CAAE;IACL4b,WAAW,EAAE;MAAEvX,OAAO,EAAE,MAAM;MAAEqC,GAAG,EAAE,MAAM;MAAEpC,UAAU,EAAE;KAAW;IACpEJ,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEqC,GAAG,EAAE,MAAM;MAAElC,YAAY,EAAE;;GACtD,CACE,CAAC;AAAA,CACP;AAID,MAAMya,mBAAmB,GAAGA,MAAM;EAAA,IAAAC,qBAAA;EAChC,MAAM;IAAElf;GAAG,GAAGC,2BAAc,EAAE;EAC9B,MAAM4U,QAAQ,GAAGC,0BAAW,EAAE;EAC9B,MAAM5H,OAAO,GAAGC,yBAAU,EAAE;EAC5B,MAAMgS,iBAAiB,GAAG1I,YAAM,CAAC,IAAI,CAAC;EACtC,MAAM;IAAElQ,OAAO;IAAEiH,cAAc;IAAEP;GAAmB,GAAG4H,QAAQ,CAACG,KAAK,IAAI;IACvEzO,OAAO,EAAE,iBAAiB;IAC1BiH,cAAc,EAAE;MAAEE,IAAI,EAAE,MAAM;MAAEjB,IAAI,EAAE;KAAa;IACnDQ,iBAAiB,EAAE;MACjBmS,qBAAqB,EAAE;QACrB3T,YAAY,EAAE,oBAAoB;QAClC4C,OAAO,EAAE,6CAA6C;QACtDG,WAAW,EAAE,YAAY;QACzBC,KAAK,EAAE;;;GAGZ;EAGD,MAAM4B,OAAO,GACX,CAAApD,iBAAiB,aAAjBA,iBAAiB,uBAAjBA,iBAAiB,CAAEA,iBAAiB,MACpCA,iBAAiB,aAAjBA,iBAAiB,uBAAjBA,iBAAiB,CAAEmS,qBAAqB,KACxC,EAAE;EAGJ,MAAM,CAACC,eAAe,EAAEC,kBAAkB,CAAC,GAAG7c,cAAQ,CAAC,EAAE,CAAC;EAC1D,MAAM,CAAC8c,iBAAiB,EAAEC,oBAAoB,CAAC,GAAG/c,cAAQ,CAAC,KAAK,CAAC;EACjE,MAAM,CAACgd,WAAW,EAAEC,cAAc,CAAC,GAAGjd,cAAQ,CAAC,KAAK,CAAC;EACrD,MAAM,CAACkd,YAAY,EAAEC,eAAe,CAAC,GAAGnd,cAAQ,CAAC,KAAK,CAAC;EACvD,MAAM,CAACod,GAAG,EAAEC,MAAM,CAAC,GAAGrd,cAAQ,CAAC,EAAE,CAAC;EAClC,MAAM,CAACsd,QAAQ,EAAEC,WAAW,CAAC,GAAGvd,cAAQ,CAAC,KAAK,CAAC;EAC/C,MAAM,CAACwd,WAAW,EAAEC,cAAc,CAAC,GAAGzd,cAAQ,CAAC;IAAEiL,IAAI,EAAE,IAAI;IAAEjB,IAAI,EAAE;GAAkB,CAAC;EACtF,MAAM,CAAC0T,QAAQ,EAAEC,WAAW,CAAC,GAAG3d,cAAQ,CAAC4N,OAAO,CAAC5E,YAAY,IAAI,EAAE,CAAC;EAEpE,MAAM,CAAC4U,YAAY,EAAEC,eAAe,CAAC,GAAG7d,cAAQ,CAAC;IAAEiL,IAAI,EAAE,IAAI;IAAEjB,IAAI,EAAE;GAAkB,CAAC;EACxF,MAAM,CAAC1E,YAAY,EAAEwY,eAAe,CAAC,GAAG9d,cAAQ,CAAC4N,OAAO,CAAC7B,WAAW,IAAI,EAAE,CAAC;EAE3E,MAAM,CAACgS,cAAc,EAAEC,iBAAiB,CAAC,GAAGhe,cAAQ,CAAC4N,OAAO,CAAC7B,WAAW,IAAI,EAAE,CAAC;EAC/E,MAAM,CAACC,KAAK,EAAEiS,QAAQ,CAAC,GAAGje,cAAQ,CAAC4N,OAAO,CAAC5B,KAAK,IAAI,EAAE,CAAC;EACvD,MAAM,CAACkS,WAAW,EAAEC,cAAc,CAAC,GAAGne,cAAQ,CAC5C,CAAAwK,iBAAiB,aAAjBA,iBAAiB,wBAAAiS,qBAAA,GAAjBjS,iBAAiB,CAAEiI,cAAc,cAAAgK,qBAAA,uBAAjCA,qBAAA,CAAmC2B,UAAU,KAAI,EACnD,CAAC;EACD,MAAM,CAACC,kBAAkB,EAAEC,qBAAqB,CAAC,GAAGte,cAAQ,CAAC,KAAK,CAAC;EACnE,MAAM,CAACue,WAAW,EAAEC,cAAc,CAAC,GAAGxe,cAAQ,CAAC,IAAI,CAAC;EAEpD,MAAMkW,YAAY,GAAG,CACnB;IAAEjL,IAAI,EAAE,KAAK;IAAEjB,IAAI,EAAE;GAAmB,EACxC;IAAEiB,IAAI,EAAE,IAAI;IAAEjB,IAAI,EAAE;GAAkB,CACvC;EAGD,MAAMyU,mBAAmB,GAAGA,MAAM;IAChC,IAAI7B,eAAe,CAACpX,MAAM,KAAK,EAAE,IAAIwX,WAAW,EAAE;IAClDC,cAAc,CAAC,IAAI,CAAC;IACpByB,UAAU,CAAC,MAAM;MACfzB,cAAc,CAAC,KAAK,CAAC;MACrBE,eAAe,CAAC,IAAI,CAAC;KACtB,EAAE,IAAI,CAAC;GACT;EAED,MAAMwB,eAAe,GAAGA,MAAM;IAC5B,IAAIvB,GAAG,KAAK,QAAQ,EAAE;MACpBL,oBAAoB,CAAC,IAAI,CAAC;MAC1BI,eAAe,CAAC,KAAK,CAAC;MACtBI,WAAW,CAAC,KAAK,CAAC;MAElBe,qBAAqB,CAAC,IAAI,CAAC;MAC3BI,UAAU,CAAC,MAAM;QAAA,IAAAE,qBAAA;QACf,CAAAA,qBAAA,GAAAlC,iBAAiB,CAAC7F,OAAO,cAAA+H,qBAAA,uBAAzBA,qBAAA,CAA2BC,cAAc,CAAC;UAAEC,QAAQ,EAAE,QAAQ;UAAEC,KAAK,EAAE;SAAS,CAAC;OAClF,EAAE,GAAG,CAAC;KACR,MAAM;MACLxB,WAAW,CAAC,IAAI,CAAC;;GAEpB;EAED,MAAMyB,qBAAqB,GAAGA,MAAM;IAClCV,qBAAqB,CAAC,IAAI,CAAC;IAC3BI,UAAU,CAAC,MAAM;MAAA,IAAAO,sBAAA;MACf,CAAAA,sBAAA,GAAAvC,iBAAiB,CAAC7F,OAAO,cAAAoI,sBAAA,uBAAzBA,sBAAA,CAA2BJ,cAAc,CAAC;QAAEC,QAAQ,EAAE,QAAQ;QAAEC,KAAK,EAAE;OAAS,CAAC;KAClF,EAAE,GAAG,CAAC;GACR;EAED,MAAMG,iBAAiB,GAAIzM,cAAc,IAAK;IAC5C+L,cAAc,CAAC/L,cAAc,CAAC;IAC9BhI,OAAO,CAACc,IAAI,CAAC,uCAAuC,EAAE;MACpDzH,OAAO;MACPiH,cAAc;MACdP,iBAAiB;MACjB2U,cAAc,EAAE;QACdvC,eAAe;QACfE,iBAAiB;QACjBY,QAAQ;QACRpY,YAAY;QACZyY,cAAc;QACd/R,KAAK;QACLkS;OACD;MACDzL;KACD,CAAC;GACH;EAGD,MAAMyG,MAAM,GAAG;IACbkG,aAAa,EAAE;MACbzE,WAAW,EAAE,SAAS;MACtBvB,eAAe,EAAE;KAClB;IACDiG,YAAY,EAAE;MACZjG,eAAe,EAAE,SAAS;MAC1BvU,MAAM,EAAE,qBAAqB;MAC7B7C,YAAY,EAAE,KAAK;MACnBF,OAAO,EAAE,MAAM;MACf4C,SAAS,EAAE,MAAM;MACjB3C,YAAY,EAAE,KAAK;MACnBiX,SAAS,EAAE;KACZ;IACDsG,SAAS,EAAE;MACT/c,QAAQ,EAAE,MAAM;MAChBD,UAAU,EAAE,KAAK;MACjBL,KAAK,EAAE,SAAS;MAChB4X,aAAa,EAAE,WAAW;MAC1BC,aAAa,EAAE,QAAQ;MACvB/X,YAAY,EAAE;KACf;IACDwd,SAAS,EAAE;MACThd,QAAQ,EAAE,MAAM;MAChBD,UAAU,EAAE,KAAK;MACjBL,KAAK,EAAE;KACR;IACDud,MAAM,EAAE;MACN5d,OAAO,EAAE,MAAM;MACfqY,mBAAmB,EAAE,SAAS;MAC9BhW,GAAG,EAAE,MAAM;MACXlC,YAAY,EAAE;KACf;IACD0d,WAAW,EAAE;MACX7d,OAAO,EAAE,cAAc;MACvBW,QAAQ,EAAE,MAAM;MAChBqC,UAAU,EAAE,SAAS;MACrB3C,KAAK,EAAE,SAAS;MAChB4C,MAAM,EAAE,qBAAqB;MAC7B7C,YAAY,EAAE,MAAM;MACpBF,OAAO,EAAE,SAAS;MAClBe,UAAU,EAAE,KAAK;MACjBP,UAAU,EAAE;;GAEf;EAED,oBACE3E,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACbb,cAAA,CAAAC,aAAA,gBAAQ;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAe,CAAC,eAGVD,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACbb,cAAA,CAAAC,aAAA,CAAC+D,2BAAI;IAACF,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEC,OAAO,EAAE,WAAW;MAAEC,YAAY,EAAE,MAAM;MAAEC,YAAY,EAAE;;kBAC9GrE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEQ,KAAK,EAAE,SAAS;MAAEC,WAAW,EAAE,MAAM;MAAEN,OAAO,EAAE;;kBAC5DjE,cAAA,CAAAC,aAAA,CAACuE,+BAAQ;IAACV,KAAK,EAAE;MAAEW,KAAK,EAAE,MAAM;MAAEC,MAAM,EAAE;;GAAW,CAClD,CAAC,eACN1E,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEa,UAAU,EAAE,KAAK;MAAEC,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KACvD1E,CAAC,CAAC,cAAc,CAAC,IAAI,cACnB,CACD,CAAC,eAEPI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmD,UAAU,EAAE,MAAM;MAAE9C,OAAO,EAAE,WAAW;MAAEE,YAAY,EAAE,KAAK;MAAE6C,MAAM,EAAE;;KAClF,CACC;IAAE5G,KAAK,EAAEV,CAAC,CAAC,mBAAmB,CAAC,IAAI,SAAS;IAAEge,IAAI,EAAE8C,kBAAkB;IAAE7C,MAAM,EAAE,CAAC6C;GAAoB,EACrG;IAAEpgB,KAAK,EAAEV,CAAC,CAAC,mBAAmB,CAAC,IAAI,SAAS;IAAEge,IAAI,EAAEgD,WAAW,KAAK,IAAI;IAAE/C,MAAM,EAAE6C,kBAAkB,IAAIE,WAAW,KAAK;GAAM,EAC9H;IAAEtgB,KAAK,EAAEV,CAAC,CAAC,oBAAoB,CAAC,IAAI,UAAU;IAAEge,IAAI,EAAE,KAAK;IAAEC,MAAM,EAAE;GAAO,EAC5E;IAAEvd,KAAK,EAAEV,CAAC,CAAC,kBAAkB,CAAC,IAAI,QAAQ;IAAEge,IAAI,EAAE,KAAK;IAAEC,MAAM,EAAE;GAAO,CACzE,CAACpW,GAAG,CAAC,CAACqW,IAAI,EAAEC,CAAC,kBACZ/d,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC,mBAAmB;IAAC8E,GAAG,EAAEoY;kBACtC/d,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAE,gBAAgBid,IAAI,CAACF,IAAI,GAAG,OAAO,GAAGE,IAAI,CAACD,MAAM,GAAG,SAAS,GAAG,EAAE;KAC/EC,IAAI,CAACF,IAAI,gBACN5d,cAAA,CAAAC,aAAA,CAAC2S,WAAS;IAACb,IAAI,EAAE,EAAG;IAACzN,KAAK,EAAC;GAAQ,CAAC,GACpCyZ,CAAC,GAAG,CACL,CAAC,EACLA,CAAC,GAAG,CAAC,iBAAI/d,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;GAAkB,CAAC,eAC5Cb,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAE,kBAAkBid,IAAI,CAACF,IAAI,GAAG,OAAO,GAAGE,IAAI,CAACD,MAAM,GAAG,SAAS,GAAG,EAAE;KACjFC,IAAI,CAACxd,KACH,CACF,CACN,CACE,CACF,CAAC,eAGNN,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmB,IAAI,EAAE,CAAC;MAAEC,UAAU,EAAE;;kBACjClF,cAAA,CAAAC,aAAA,CAAC+D,2BAAI,qBAGHhE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAE6C,cAAc,EAAE,UAAU;MAAE1C,YAAY,EAAE;;kBACvEpE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVmD,UAAU,EAAE,SAAS;MAAEC,MAAM,EAAE,qBAAqB;MACpD7C,YAAY,EAAE,MAAM;MAAEF,OAAO,EAAE,UAAU;MACzCS,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KAExB1E,CAAC,CAAC,eAAe,CAAC,IAAI,UAAU,EAAC,GAAC,EAAC,GAAG,eACvCI,cAAA,CAAAC,aAAA;IAAM6D,KAAK,EAAE;MAAEQ,KAAK,EAAE,SAAS;MAAEK,UAAU,EAAE;;KAAUwB,OAAc,CAClE,CACF,CAAC,eAGNnG,cAAA,CAAAC,aAAA,CAAC2T,aAAW;IACVZ,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACge,QAAQ;MAAClM,IAAI,EAAE;KAAK,CAAE;IAC7BzR,KAAK,EAAEV,CAAC,CAAC,4BAA4B,CAAC,IAAI;GAC3C,CAAC,eAEFI,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;KACZjB,CAAC,CAAC,2BAA2B,CAAC,IAAI,4BAChC,CAAC,eACNI,cAAA,CAAAC,aAAA,CAAC8hB,qCAAc,qBACb/hB,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACbb,cAAA,CAAAC,aAAA,CAAC6S,WAAS;IACRE,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACge,QAAQ;MAAClM,IAAI,EAAE;KAAK,CAAE;IAC7B2M,SAAS,EAAES,iBAAiB,gBAAGnf,cAAA,CAAAC,aAAA,CAAC2S,WAAS;MAACb,IAAI,EAAE;KAAK,CAAC,GAAG,IAAK;IAC9DnM,KAAK,EAAEqZ,eAAgB;IACvBvZ,QAAQ,EAAGK,CAAC,IAAK;MACf,MAAM2W,GAAG,GAAG3W,CAAC,CAACY,MAAM,CAACf,KAAK;MAC1B,IAAI8W,GAAG,CAAC7U,MAAM,IAAI,EAAE,IAAI,OAAO,CAAC0U,IAAI,CAACG,GAAG,CAAC,EAAEwC,kBAAkB,CAACxC,GAAG,CAAC;KAClE;IACF9V,WAAW,EAAEhH,CAAC,CAAC,yBAAyB,CAAC,IAAI,iBAAkB;IAC/D4c,SAAS,EAAE,EAAG;IACdG,QAAQ,EAAEwC,iBAAkB;IAC5BjM,UAAU,EAAEiM,iBAAiB,GAAG5D,MAAM,CAACkG,aAAa,GAAG;GACxD,CACE,CACS,CAAC,EAEhB,CAACtC,iBAAiB,IAAI,CAACI,YAAY,iBAClCvf,cAAA,CAAAC,aAAA,CAACmH,gCAAS;IACR9G,KAAK,EAAE+e,WAAW,GACdzf,CAAC,CAAC,gBAAgB,CAAC,IAAI,cAAc,GACrCA,CAAC,CAAC,yBAAyB,CAAC,IAAI,gBAAiB;IACrDkG,QAAQ,EAAEgb,mBAAoB;IAC9BnE,QAAQ,EAAEsC,eAAe,CAACpX,MAAM,KAAK,EAAE,IAAIwX,WAAY;IACvDvb,KAAK,EAAE;MAAEiD,SAAS,EAAE;;GACrB,CACF,EAEA,CAACoY,iBAAiB,IAAII,YAAY,iBACjCvf,cAAA,CAAAC,aAAA,CAAC4N,cAAQ,qBACP7N,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC,kBAAkB;IAACiD,KAAK,EAAE;MAAEiD,SAAS,EAAE;;KACnDnH,CAAC,CAAC,gBAAgB,CAAC,IAAI,WACrB,CAAC,eACNI,cAAA,CAAAC,aAAA,CAAC8hB,qCAAc,qBACb/hB,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACbb,cAAA,CAAAC,aAAA,CAAC6S,WAAS;IACRE,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACge,QAAQ;MAAClM,IAAI,EAAE;KAAK,CAAE;IAC7BnM,KAAK,EAAE6Z,GAAI;IACX/Z,QAAQ,EAAGK,CAAC,IAAK;MACf,MAAM2W,GAAG,GAAG3W,CAAC,CAACY,MAAM,CAACf,KAAK;MAC1B,IAAI,OAAO,CAAC2W,IAAI,CAACG,GAAG,CAAC,EAAE;QACrBgD,MAAM,CAAChD,GAAG,CAAC;QACX,IAAIiD,QAAQ,EAAEC,WAAW,CAAC,KAAK,CAAC;;KAElC;IACFhZ,WAAW,EAAEhH,CAAC,CAAC,4BAA4B,CAAC,IAAI,cAAe;IAC/D4c,SAAS,EAAE;GACZ,CACE,CACS,CAAC,EAChBmD,QAAQ,iBACP3f,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEQ,KAAK,EAAE,SAAS;MAAEM,QAAQ,EAAE,MAAM;MAAEmC,SAAS,EAAE;;KAC1DnH,CAAC,CAAC,kBAAkB,CAAC,IAAI,mCACvB,CACN,eACDI,cAAA,CAAAC,aAAA,CAACmH,gCAAS;IACR9G,KAAK,EAAEV,CAAC,CAAC,qBAAqB,CAAC,IAAI,YAAa;IAChDkG,QAAQ,EAAEkb,eAAgB;IAC1BrE,QAAQ,EAAE8C,GAAG,CAAC5X,MAAM,KAAK,CAAE;IAC3B/D,KAAK,EAAE;MAAEiD,SAAS,EAAE;;GACrB,CACO,CACX,EAEAoY,iBAAiB,iBAChBnf,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAEyX,MAAM,CAACmG;kBACjB1hB,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEoC,GAAG,EAAE,KAAK;MAAElC,YAAY,EAAE;;kBAC7EpE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVW,KAAK,EAAE,MAAM;MAAEC,MAAM,EAAE,MAAM;MAAEL,YAAY,EAAE,KAAK;MAClD4C,UAAU,EAAE,SAAS;MAAEhD,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAC5D4C,cAAc,EAAE,QAAQ;MAAEuU,SAAS,EAAE,6BAA6B;MAClEK,UAAU,EAAE;;kBAEZ1b,cAAA,CAAAC,aAAA,CAAC2S,WAAS;IAACb,IAAI,EAAE,EAAG;IAACzN,KAAK,EAAC;GAAW,CACnC,CAAC,eACNtE,cAAA,CAAAC,aAAA;IAAM6D,KAAK,EAAE;MAAEa,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAEM,QAAQ,EAAE;;KAC3DhF,CAAC,CAAC,+BAA+B,CAAC,IAAI,+BACnC,CACH,CAAC,eACNI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEqY,mBAAmB,EAAE,SAAS;MAAEhW,GAAG,EAAE;;kBAClEtG,cAAA,CAAAC,aAAA,2BACED,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAEyX,MAAM,CAACoG;KAAY/hB,CAAC,CAAC,WAAW,CAAC,IAAI,MAAY,CAAC,eAC9DI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAEyX,MAAM,CAACqG;KAAY3R,OAAO,CAAC5E,YAAkB,CACtD,CAAC,eACNrL,cAAA,CAAAC,aAAA,2BACED,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAEyX,MAAM,CAACoG;KAAY/hB,CAAC,CAAC,cAAc,CAAC,IAAI,SAAe,CAAC,eACpEI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAEyX,MAAM,CAACqG;KAAY3C,eAAqB,CACjD,CAAC,eACNjf,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEke,UAAU,EAAE;;kBACxBhiB,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAEyX,MAAM,CAACoG;KAAY/hB,CAAC,CAAC,cAAc,CAAC,IAAI,SAAe,CAAC,eACpEI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAE,GAAGyX,MAAM,CAACqG,SAAS;MAAEhd,QAAQ,EAAE;;KAAWqL,OAAO,CAAChC,OAAa,CAC1E,CACF,CACF,CACN,eAEDjO,cAAA,CAAAC,aAAA;IAAI6D,KAAK,EAAE;MAAEuD,MAAM,EAAE,QAAQ;MAAEH,MAAM,EAAE,CAAC;MAAEuV,SAAS,EAAE;;GAAwB,CAAC,eAG9Ezc,cAAA,CAAAC,aAAA,CAAC2T,aAAW;IACVZ,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACie,QAAQ;MAACnM,IAAI,EAAE;KAAK,CAAE;IAC7BzR,KAAK,EAAEV,CAAC,CAAC,6BAA6B,CAAC,IAAI;GAC5C,CAAC,eAGFI,cAAA,CAAAC,aAAA,CAAC0e,cAAc;IACbre,KAAK,EAAE,GAAGV,CAAC,CAAC,gBAAgB,CAAC,KAAKA,CAAC,CAAC,wBAAwB,CAAC,GAAI;IACjE2J,QAAQ,EAAEsW,WAAY;IACtB7Q,QAAQ,EAAE8Q,cAAe;IACzBxT,OAAO,EAAEiM,YAAa;IACtB0J,GAAG;IACHriB,CAAC,EAAEA;GACJ,CAAC,eACFI,cAAA,CAAAC,aAAA,CAAC8hB,qCAAc,qBACb/hB,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACbb,cAAA,CAAAC,aAAA,CAAC6S,WAAS;IACRE,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACie,QAAQ;MAACnM,IAAI,EAAE,EAAG;MAACzN,KAAK,EAAEub,WAAW,CAACvS,IAAI,KAAK,KAAK,GAAG,SAAS,GAAG;KAAY,CAAE;IACxFxJ,KAAK,EAAE;MAAEM,YAAY,EAAE;KAAS;IAChCwB,KAAK,EAAEma,QAAS;IAChBra,QAAQ,EAAGK,CAAC,IAAKia,WAAW,CAACja,CAAC,CAACY,MAAM,CAACf,KAAK,CAAE;IAC7CgB,WAAW,EAAEhH,CAAC,CAAC,6BAA6B,CAAC,IAAI,iBAAkB;IACnE+c,QAAQ,EAAEkD,WAAW,CAACvS,IAAI,KAAK;GAChC,CACE,CACS,CAAC,eAGjBtN,cAAA,CAAAC,aAAA,CAAC0e,cAAc;IACbre,KAAK,EAAE,GAAGV,CAAC,CAAC,yBAAyB,CAAC,KAAKA,CAAC,CAAC,yBAAyB,CAAC,GAAI;IAC3E2J,QAAQ,EAAE0W,YAAa;IACvBjR,QAAQ,EAAEkR,eAAgB;IAC1B5T,OAAO,EAAEiM,YAAa;IACtB3Y,CAAC,EAAEA;GACJ,CAAC,eACFI,cAAA,CAAAC,aAAA,CAAC8hB,qCAAc,qBACb/hB,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACbb,cAAA,CAAAC,aAAA,CAAC6S,WAAS;IACRE,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACqe,SAAS;MAACvM,IAAI,EAAE,EAAG;MAACzN,KAAK,EAAE2b,YAAY,CAAC3S,IAAI,KAAK,KAAK,GAAG,SAAS,GAAG;KAAY,CAAE;IAC1FxJ,KAAK,EAAE;MAAEM,YAAY,EAAE;KAAS;IAChCwB,KAAK,EAAE+B,YAAa;IACpBjC,QAAQ,EAAGK,CAAC,IAAKoa,eAAe,CAACpa,CAAC,CAACY,MAAM,CAACf,KAAK,CAAE;IACjDgB,WAAW,EAAC,iBAAiB;IAC7B+V,QAAQ,EAAEsD,YAAY,CAAC3S,IAAI,KAAK;GACjC,CACE,CACS,CAAC,eAGjBtN,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAEyX,MAAM,CAACsG;kBACjB7hB,cAAA,CAAAC,aAAA,2BACED,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;KACZjB,CAAC,CAAC,sBAAsB,CAAC,IAAI,iBAC3B,CAAC,eACNI,cAAA,CAAAC,aAAA,CAAC6S,WAAS;IACRE,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACse,YAAY;MAACxM,IAAI,EAAE;KAAK,CAAE;IACjCnM,KAAK,EAAEwa,cAAe;IACtB1a,QAAQ,EAAGK,CAAC,IAAKsa,iBAAiB,CAACta,CAAC,CAACY,MAAM,CAACf,KAAK,CAAE;IACnDgB,WAAW,EAAC;GACb,CACE,CAAC,eACN5G,cAAA,CAAAC,aAAA,2BACED,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;KACZjB,CAAC,CAAC,oBAAoB,CAAC,IAAI,eAAe,eAC3CI,cAAA,CAAAC,aAAA;IAAM6D,KAAK,EAAEyX,MAAM,CAACuG;KAAcliB,CAAC,CAAC,eAAe,CAAC,IAAI,UAAiB,CACtE,CAAC,eACNI,cAAA,CAAAC,aAAA,CAAC6S,WAAS;IACRE,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACue,QAAQ;MAACzM,IAAI,EAAE;KAAK,CAAE;IAC7BnM,KAAK,EAAEyI,KAAM;IACb3I,QAAQ,EAAGK,CAAC,IAAKua,QAAQ,CAACva,CAAC,CAACY,MAAM,CAACf,KAAK,CAAE;IAC1CgB,WAAW,EAAEhH,CAAC,CAAC,gCAAgC,CAAC,IAAI;GACrD,CACE,CACF,CAAC,eAENI,cAAA,CAAAC,aAAA;IAAI6D,KAAK,EAAE;MAAEuD,MAAM,EAAE,QAAQ;MAAEH,MAAM,EAAE,CAAC;MAAEuV,SAAS,EAAE;;GAAwB,CAAC,eAG9Ezc,cAAA,CAAAC,aAAA,CAAC2T,aAAW;IACVZ,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACwe,SAAS;MAAC1M,IAAI,EAAE;KAAK,CAAE;IAC9BzR,KAAK,EAAEV,CAAC,CAAC,4BAA4B,CAAC,IAAI;GAC3C,CAAC,eAEFI,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;KACZjB,CAAC,CAAC,oBAAoB,CAAC,IAAI,0BACzB,CAAC,eACNI,cAAA,CAAAC,aAAA,CAAC8hB,qCAAc,qBACb/hB,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACbb,cAAA,CAAAC,aAAA,CAAC6S,WAAS;IACRE,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACwe,SAAS;MAAC1M,IAAI,EAAE;KAAK,CAAE;IAC9BnM,KAAK,EAAE2a,WAAY;IACnB7a,QAAQ,EAAGK,CAAC,IAAK;MACf,IAAI,OAAO,CAACwW,IAAI,CAACxW,CAAC,CAACY,MAAM,CAACf,KAAK,CAAC,EAAE4a,cAAc,CAACza,CAAC,CAACY,MAAM,CAACf,KAAK,CAAC;KAChE;IACFgB,WAAW,EAAEhH,CAAC,CAAC,0BAA0B,CAAC,IAAI;GAC/C,CACE,CACS,CAAC,EAGhB,CAAC8gB,kBAAkB,iBAClB1gB,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEiD,SAAS,EAAE;;kBACvB/G,cAAA,CAAAC,aAAA,CAACmH,gCAAS;IACR9G,KAAK,EAAEV,CAAC,CAAC,yBAAyB,CAAC,IAAI,iBAAkB;IACzDkG,QAAQ,EAAEub;GACX,CACE,CACN,EAGAX,kBAAkB,iBACjB1gB,cAAA,CAAAC,aAAA;IAAK4c,GAAG,EAAEkC;kBACR/e,cAAA,CAAAC,aAAA,CAAC8T,cAAc;IACbO,SAAS,EAAE,IAAK;IAChBC,UAAU,EAAEgN,iBAAkB;IAC9B/M,WAAW,EAAE;MAAErO,OAAO;MAAEiH,cAAc;MAAEP;;GACzC,CACE,CACN,eAGD7M,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAE4C,cAAc,EAAE,QAAQ;MAC/DR,GAAG,EAAE,KAAK;MAAES,SAAS,EAAE,MAAM;MAC7BnC,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;kBAEzBtE,cAAA,CAAAC,aAAA,CAACge,QAAQ;IAAClM,IAAI,EAAE;GAAK,CAAC,EACrBnS,CAAC,CAAC,yBAAyB,CAAC,IAAI,mCAC9B,CAED,CACH,CACF,CAAC;AAEV,CAAC;;ACzkBD,MAAMgT,WAAS,GAAGjS,IAAA;EAAA,IAAC;IAAEoR,IAAI,GAAG,EAAE;IAAEzN,KAAK,GAAG;GAAQ,GAAA3D,IAAA;EAAA,oBAC5CX,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAElO,KAAM;IAACmO,WAAW,EAAC,GAAG;IAACC,aAAa,EAAC;kBACzG1S,cAAA,CAAAC,aAAA;IAAU0S,MAAM,EAAC;GAAkB,CAClC,CAAC;AAAA,CACT;AAED,MAAMuP,YAAY,GAAGnf,KAAA;EAAA,IAAC;IAAEgP,IAAI,GAAG;GAAI,GAAAhP,KAAA;EAAA,oBAC/B/C,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC;kBACrDjS,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAAuL,CAC9L,CAAC;AAAA,CACT;AAED,MAAMiQ,aAAa,GAAG7e,KAAA;EAAA,IAAC;IAAEyO,IAAI,GAAG;GAAI,GAAAzO,KAAA;EAAA,oBAChCtD,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC;kBACrDjS,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAAoJ,CAC3J,CAAC;AAAA,CACT;AAED,MAAMkQ,YAAY,GAAG3e,KAAA;EAAA,IAAC;IAAEsO,IAAI,GAAG;GAAI,GAAAtO,KAAA;EAAA,oBAC/BzD,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC;kBACrDjS,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAA0F,CACjG,CAAC;AAAA,CACT;AAED,MAAMJ,YAAU,GAAGO,KAAA;EAAA,IAAC;IAAEN,IAAI,GAAG;GAAI,GAAAM,KAAA;EAAA,oBAC7BrS,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC;kBACrDjS,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAAsN,CAC7N,CAAC;AAAA,CACT;AAED,MAAMI,WAAS,GAAGC,KAAA;EAAA,IAAC;IAAER,IAAI,GAAG;GAAI,GAAAQ,KAAA;EAAA,oBAC5BvS,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAC,SAAS;IAACC,WAAW,EAAC,GAAG;IAACC,aAAa,EAAC;kBAC3G1S,cAAA,CAAAC,aAAA;IAAU0S,MAAM,EAAC;GAAgB,CAAC,eAClC3S,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAAiD,CAAC,eAC1DlS,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAAoB,CAAC,eAC7BlS,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAA0C,CACjD,CAAC;AAAA,CACT;AAED,MAAMmQ,OAAO,GAAGxP,KAAA;EAAA,IAAC;IAAEd,IAAI,GAAG;GAAI,GAAAc,KAAA;EAAA,oBAC1B7S,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAC,cAAc;IAACC,WAAW,EAAC,GAAG;IAACC,aAAa,EAAC;kBAChH1S,cAAA,CAAAC,aAAA;IAAMwd,CAAC,EAAC,GAAG;IAACC,CAAC,EAAC,GAAG;IAACjZ,KAAK,EAAC,IAAI;IAACC,MAAM,EAAC,IAAI;IAACiZ,EAAE,EAAC;GAAK,CAAC,eAClD3d,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAAwB,CAC/B,CAAC;AAAA,CACT;AAID,MAAM0B,aAAW,GAAGb,KAAA;EAAA,IAAC;IAAEC,IAAI;IAAE1S;GAAO,GAAAyS,KAAA;EAAA,oBAChC/S,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACRG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEoC,GAAG,EAAE,KAAK;MACjDlC,YAAY,EAAE,MAAM;MAAE2C,SAAS,EAAE;;kBAEjC/G,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEyP,OAAO,EAAE,GAAG;MAAEtP,OAAO,EAAE;;KAAW+O,IAAU,CAAC,eAC3DhT,cAAA,CAAAC,aAAA;IAAM6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAEwP,UAAU,EAAE;;KAC7ExT,KACC,CAAC,eACPN,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmB,IAAI,EAAE,CAAC;MAAEP,MAAM,EAAE,KAAK;MAAEuC,UAAU,EAAE;;GAAc,CAC/D,CAAC;AAAA,CACT;AAID,MAAM6L,WAAS,GAAGe,KAAA;EAAA,IAAC;IAAEb,IAAI;IAAE,GAAG5R;GAAO,GAAAyS,KAAA;EAAA,oBACjC7T,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAE2C,QAAQ,EAAE,UAAU;MAAEhC,KAAK,EAAE;;kBACvCzE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACR2C,QAAQ,EAAE,UAAU;MAAE0M,IAAI,EAAE,MAAM;MAClCC,GAAG,EAAE,KAAK;MAAEC,SAAS,EAAE,kBAAkB;MACzCC,MAAM,EAAE,CAAC;MAAEC,OAAO,EAAE,IAAI;MAAEtP,OAAO,EAAE,MAAM;MAAEuP,aAAa,EAAE;;KAEzDR,IACA,CAAC,eACNhT,cAAA,CAAAC,aAAA,CAACyG,gCAAS,EAAA+M,QAAA;IAACC,cAAc,EAAE;MAAE7M,WAAW,EAAE,MAAM;MAAE8M,YAAY,EAAE;;KAAcvS,KAAK,CAAG,CACrF,CAAC;AAAA,CACT;AAID,MAAMkhB,YAAY,GAAGA,MAAM;EAAA,IAAAC,mBAAA,EAAAC,qBAAA,EAAAC,oBAAA,EAAAC,qBAAA,EAAAC,mBAAA,EAAAC,qBAAA,EAAAC,mBAAA,EAAAC,qBAAA;EACvB,MAAM;IAAEljB;GAAG,GAAGC,2BAAc,EAAE;EAC9B,MAAMiN,OAAO,GAAGC,yBAAU,EAAE;EAC5B,MAAM0H,QAAQ,GAAGC,0BAAW,EAAE;EAE9B,MAAMC,SAAS,GAAGF,QAAQ,CAACG,KAAK,IAAI;IAAEzO,OAAO,EAAE;GAAmB;EAClE,MAAM;IAAEA;GAAS,GAAGwO,SAAS;EAE7B,MAAM7K,QAAQ,GAAGvH,KAAK,CAACwH,UAAU,CAACC,kBAAkB,EAAE;EACtD,MAAM;IAAE3I,IAAI,EAAE0hB;GAAQ,GAAGxgB,KAAK,CAACmI,KAAK,CAACC,IAAI,CAACqY,kBAAkB,CAAClZ,QAAQ,CAAC;EACtE,MAAM;IAAEzI,IAAI,EAAE4hB;GAAU,GAAG1gB,KAAK,CAACmI,KAAK,CAACC,IAAI,CAACuY,sBAAsB,CAACpZ,QAAQ,CAAC;EAC5E,MAAM;IAAEzI,IAAI,EAAE8hB;GAAQ,GAAG5gB,KAAK,CAACmI,KAAK,CAACC,IAAI,CAACyY,cAAc,CAACtZ,QAAQ,CAAC;EAClE,MAAM;IAAEzI,IAAI,EAAEgiB;GAAQ,GAAG9gB,KAAK,CAACmI,KAAK,CAACC,IAAI,CAAC2Y,gBAAgB,CAACxZ,QAAQ,CAAC;EAEpE,MAAM,CAACyZ,SAAS,EAAEC,YAAY,CAAC,GAAGnhB,cAAQ,CAAC,OAAO,CAAC;EACnD,MAAM,CAACohB,SAAS,EAAEC,YAAY,CAAC,GAAGrhB,cAAQ,CAAC,EAAE,CAAC;EAC9C,MAAM,CAACshB,kBAAkB,EAAEC,qBAAqB,CAAC,GAAGvhB,cAAQ,CAAC,IAAI,CAAC;EAClE,MAAM,CAAC6L,cAAc,EAAE2V,iBAAiB,CAAC,GAAGxhB,cAAQ,CAAC,IAAI,CAAC;EAC1D,MAAM,CAACyhB,QAAQ,EAAEC,WAAW,CAAC,GAAG1hB,cAAQ,CAAC,IAAI,CAAC;EAC9C,MAAM,CAAC2hB,UAAU,EAAEC,aAAa,CAAC,GAAG5hB,cAAQ,CAAC,IAAI,CAAC;EAClD,MAAM,CAAC6hB,gBAAgB,EAAEC,mBAAmB,CAAC,GAAG9hB,cAAQ,CAAC,IAAI,CAAC;EAC9D,MAAM,CAAC+hB,aAAa,EAAEC,gBAAgB,CAAC,GAAGhiB,cAAQ,CAAC,IAAI,CAAC;EAExD,MAAMiiB,OAAO,GAAGjO,YAAM,CAAC,IAAI,CAAC;EAC5B,MAAMkO,SAAS,GAAGlO,YAAM,CAAC,IAAI,CAAC;EAE9B,MAAMgL,qBAAqB,GAAGA,MAAM;IAChCvU,OAAO,CAACc,IAAI,CAAC,gCAAgC,EAAE;MAC3C,GAAG+G,SAAS;MACZ6P,eAAe,EAAE;QACbjB,SAAS;QAAEE,SAAS;QAAEvV,cAAc;QACpCyV,kBAAkB;QAAEG,QAAQ;QAAEE,UAAU;QACxCE,gBAAgB;QAAEE;;KAEzB,CAAC;GACL;EAED,MAAMK,gBAAgB,GAAI1e,CAAC,IAAK;IAC5B,MAAM4S,IAAI,GAAG5S,CAAC,CAACY,MAAM,CAACiS,KAAK,CAAC,CAAC,CAAC;IAC9B,IAAI,CAACD,IAAI,EAAE;IACXwL,mBAAmB,CAACxL,IAAI,CAAC;GAC5B;EAED,MAAM+L,kBAAkB,GAAI3e,CAAC,IAAK;IAC9B,MAAM4S,IAAI,GAAG5S,CAAC,CAACY,MAAM,CAACiS,KAAK,CAAC,CAAC,CAAC;IAC9B,IAAI,CAACD,IAAI,EAAE;IACX,MAAME,MAAM,GAAG,IAAIC,UAAU,EAAE;IAC/BD,MAAM,CAACE,SAAS,GAAG,MAAMsL,gBAAgB,CAACxL,MAAM,CAACpH,MAAM,CAAC;IACxDoH,MAAM,CAACG,aAAa,CAACL,IAAI,CAAC;GAC7B;EAED,MAAMgM,yBAAyB,GAC3B,CAAA5B,MAAM,aAANA,MAAM,wBAAAR,mBAAA,GAANQ,MAAM,CAAG,yBAAyB,CAAC,cAAAR,mBAAA,wBAAAC,qBAAA,GAAnCD,mBAAA,CAAqCqC,cAAc,cAAApC,qBAAA,uBAAnDA,qBAAA,CAAqD/a,GAAG,CAAEC,IAAI,KAAM;IAChEpH,KAAK,EAAEV,CAAC,CAAC8H,IAAI,CAAC4F,IAAI,CAAC;IAAE1H,KAAK,EAAE8B,IAAI,CAAC4F;GACpC,CAAC,CAAC,KAAI,EAAE;EAEb,MAAMuX,qBAAqB,GACvB,CAAA5B,QAAQ,aAARA,QAAQ,wBAAAR,oBAAA,GAARQ,QAAQ,CAAG,yBAAyB,CAAC,cAAAR,oBAAA,wBAAAC,qBAAA,GAArCD,oBAAA,CAAuCqC,gBAAgB,cAAApC,qBAAA,uBAAvDA,qBAAA,CAAyDjb,GAAG,CAAEC,IAAI,KAAM;IACpEpH,KAAK,EAAEV,CAAC,CAAC8H,IAAI,CAAC4F,IAAI,CAAC;IAAE1H,KAAK,EAAE8B,IAAI,CAAC4F;GACpC,CAAC,CAAC,KAAI,EAAE;EAEb,MAAMyX,eAAe,GACjB,CAAA5B,MAAM,aAANA,MAAM,wBAAAR,mBAAA,GAANQ,MAAM,CAAG,yBAAyB,CAAC,cAAAR,mBAAA,wBAAAC,qBAAA,GAAnCD,mBAAA,CAAqCqC,UAAU,cAAApC,qBAAA,uBAA/CA,qBAAA,CAAiDnb,GAAG,CAAEC,IAAI,KAAM;IAC5DpH,KAAK,EAAEV,CAAC,CAAC8H,IAAI,CAAC4F,IAAI,CAAC;IAAE1H,KAAK,EAAE8B,IAAI,CAAC4F;GACpC,CAAC,CAAC,KAAI,EAAE;EAEb,MAAM2X,YAAY,GACd,CAAA5B,MAAM,aAANA,MAAM,wBAAAR,mBAAA,GAANQ,MAAM,CAAG,yBAAyB,CAAC,cAAAR,mBAAA,wBAAAC,qBAAA,GAAnCD,mBAAA,CAAqCqC,UAAU,cAAApC,qBAAA,uBAA/CA,qBAAA,CAAiDrb,GAAG,CAAEC,IAAI,KAAM;IAC5DpH,KAAK,EAAEV,CAAC,CAAC8H,IAAI,CAAC4F,IAAI,CAAC;IAAE1H,KAAK,EAAE8B,IAAI,CAAC4F;GACpC,CAAC,CAAC,KAAI,EAAE;EAEb,oBACItN,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACXb,cAAA,CAAAC,aAAA,gBAAQ;AACpB;AACA;AACA;AACA;AACA,OAAe,CAAC,eAGJD,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACXb,cAAA,CAAAC,aAAA,CAAC+D,2BAAI;IAACF,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEC,OAAO,EAAE,WAAW;MAAEC,YAAY,EAAE,MAAM;MAAEC,YAAY,EAAE;;kBAC5GrE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEQ,KAAK,EAAE,SAAS;MAAEC,WAAW,EAAE,MAAM;MAAEN,OAAO,EAAE;;kBAC1DjE,cAAA,CAAAC,aAAA,CAACuE,+BAAQ;IAACV,KAAK,EAAE;MAAEW,KAAK,EAAE,MAAM;MAAEC,MAAM,EAAE;;GAAW,CACpD,CAAC,eACN1E,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEa,UAAU,EAAE,KAAK;MAAEC,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KACrD1E,CAAC,CAAC,cAAc,CAAC,IAAI,cACrB,CACH,CAAC,eAEPI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmD,UAAU,EAAE,MAAM;MAAE9C,OAAO,EAAE,WAAW;MAAEE,YAAY,EAAE,KAAK;MAAE6C,MAAM,EAAE;;KAChF,CACG;IAAE5G,KAAK,EAAEV,CAAC,CAAC,mBAAmB,CAAC,IAAI,SAAS;IAAEge,IAAI,EAAE,IAAI;IAAEC,MAAM,EAAE;GAAO,EACzE;IAAEvd,KAAK,EAAEV,CAAC,CAAC,mBAAmB,CAAC,IAAI,SAAS;IAAEge,IAAI,EAAE,IAAI;IAAEC,MAAM,EAAE;GAAO,EACzE;IAAEvd,KAAK,EAAEV,CAAC,CAAC,oBAAoB,CAAC,IAAI,UAAU;IAAEge,IAAI,EAAE,KAAK;IAAEC,MAAM,EAAE;GAAM,EAC3E;IAAEvd,KAAK,EAAEV,CAAC,CAAC,kBAAkB,CAAC,IAAI,QAAQ;IAAEge,IAAI,EAAE,KAAK;IAAEC,MAAM,EAAE;GAAO,CAC3E,CAACpW,GAAG,CAAC,CAACqW,IAAI,EAAEC,CAAC,kBACV/d,cAAA,CAAAC,aAAA;IAAK0F,GAAG,EAAEoY,CAAE;IAACja,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEqC,GAAG,EAAE,MAAM;MAAEpC,UAAU,EAAE,YAAY;MAAEuC,QAAQ,EAAE,UAAU;MAAE1C,aAAa,EAAEga,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG;;KAC/HA,CAAC,GAAG,CAAC,iBACF/d,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAE2C,QAAQ,EAAE,UAAU;MAAE0M,IAAI,EAAE,MAAM;MAAEC,GAAG,EAAE,MAAM;MAAE3O,KAAK,EAAE,KAAK;MAAEC,MAAM,EAAE,mBAAmB;MAAEuC,UAAU,EAAE;;GAAc,CACvI,eACDjH,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACRW,KAAK,EAAE,MAAM;MAAEC,MAAM,EAAE,MAAM;MAAEL,YAAY,EAAE,KAAK;MAAEqX,UAAU,EAAE,CAAC;MAAE3U,SAAS,EAAE,KAAK;MACnFG,MAAM,EAAE4W,IAAI,CAACF,IAAI,GAAG,MAAM,GAAGE,IAAI,CAACD,MAAM,GAAG,qBAAqB,GAAG,qBAAqB;MACxF5W,UAAU,EAAE6W,IAAI,CAACF,IAAI,GAAG,SAAS,GAAGE,IAAI,CAACD,MAAM,GAAG,SAAS,GAAG,MAAM;MACpE5Z,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAE4C,cAAc,EAAE,QAAQ;MAC/DlC,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MACnCL,KAAK,EAAEwZ,IAAI,CAACF,IAAI,GAAG,MAAM,GAAGE,IAAI,CAACD,MAAM,GAAG,SAAS,GAAG;;KAErDC,IAAI,CAACF,IAAI,gBAAG5d,cAAA,CAAAC,aAAA,CAAC2S,WAAS;IAACb,IAAI,EAAE,EAAG;IAACzN,KAAK,EAAC;GAAQ,CAAC,GAAGyZ,CAAC,GAAG,CACvD,CAAC,eACN/d,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACRc,QAAQ,EAAE,MAAM;MAAEoZ,UAAU,EAAE,KAAK;MACnC1Z,KAAK,EAAEwZ,IAAI,CAACF,IAAI,GAAG,SAAS,GAAGE,IAAI,CAACD,MAAM,GAAG,SAAS,GAAG,SAAS;MAClElZ,UAAU,EAAEmZ,IAAI,CAACF,IAAI,IAAIE,IAAI,CAACD,MAAM,GAAG,KAAK,GAAG;;KAE9CC,IAAI,CAACxd,KACL,CACJ,CACR,CACA,CACJ,CAAC,eAGNN,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmB,IAAI,EAAE,CAAC;MAAEC,UAAU,EAAE;;kBAC/BlF,cAAA,CAAAC,aAAA,CAAC+D,2BAAI,qBAEDhE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAE6C,cAAc,EAAE,eAAe;MAAE5C,UAAU,EAAE,QAAQ;MAAEE,YAAY,EAAE;;kBAChGpE,cAAA,CAAAC,aAAA,CAAC6N,iCAAU;IAAChK,KAAK,EAAE;MAAEuD,MAAM,EAAE,CAAC;MAAEzC,QAAQ,EAAE;;KACrChF,CAAC,CAAC,8BAA8B,CAAC,IAAI,kBAC9B,CAAC,eACbI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACRmD,UAAU,EAAE,SAAS;MAAEC,MAAM,EAAE,qBAAqB;MACpD7C,YAAY,EAAE,MAAM;MAAEF,OAAO,EAAE,UAAU;MACzCS,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KAExB1E,CAAC,CAAC,eAAe,CAAC,IAAI,UAAU,EAAC,GAAC,EAAC,GAAG,eACvCI,cAAA,CAAAC,aAAA;IAAM6D,KAAK,EAAE;MAAEQ,KAAK,EAAE,SAAS;MAAEK,UAAU,EAAE;;KAAUwB,OAAc,CACpE,CACJ,CAAC,eAENnG,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEuX,SAAS,EAAE;;kBAGrBrb,cAAA,CAAAC,aAAA,CAAC2T,aAAW;IACRZ,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACkiB,aAAa;MAACpQ,IAAI,EAAE;KAAK,CAAE;IAClCzR,KAAK,EAAEV,CAAC,CAAC,uBAAuB,CAAC,IAAI;GACxC,CAAC,eAGFI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEM,YAAY,EAAE;;kBACxBpE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAE4X,aAAa,EAAE,WAAW;MAAEC,aAAa,EAAE,QAAQ;MAAE/X,YAAY,EAAE;;KACnIxE,CAAC,CAAC,qBAAqB,CAAC,IAAI,gBAC5B,CAAC,eACNI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEwX,eAAe,EAAE,SAAS;MAAEtX,OAAO,EAAE,KAAK;MAAEE,YAAY,EAAE,MAAM;MAAEiC,GAAG,EAAE;;KACjG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAACmB,GAAG,CAAE1C,IAAI,iBAC1B/E,cAAA,CAAAC,aAAA;IACI0F,GAAG,EAAEZ,IAAK;IACViC,OAAO,EAAEA,MAAMwc,YAAY,CAACze,IAAI,CAAE;IAClCjB,KAAK,EAAE;MACHmB,IAAI,EAAE,CAAC;MAAEd,OAAO,EAAE,UAAU;MAAEE,YAAY,EAAE,KAAK;MAAE6C,MAAM,EAAE,MAAM;MAAEC,MAAM,EAAE,SAAS;MACpFvC,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEkX,UAAU,EAAE,WAAW;MAC5D5U,UAAU,EAAEsc,SAAS,KAAKxe,IAAI,GAAG,SAAS,GAAG,aAAa;MAC1DT,KAAK,EAAEif,SAAS,KAAKxe,IAAI,GAAG,MAAM,GAAG;;KAGxCnF,CAAC,CAAC,QAAQmF,IAAI,EAAE,CAAC,KAAKA,IAAI,KAAK,OAAO,GAAG,OAAO,GAAG,QAAQ,CACxD,CACX,CACA,CACJ,CAAC,eAGN/E,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEM,YAAY,EAAE;;kBACxBpE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAE4X,aAAa,EAAE,WAAW;MAAEC,aAAa,EAAE,QAAQ;MAAE/X,YAAY,EAAE;;KACnIxE,CAAC,CAAC,iBAAiB,CAAC,IAAI,YAAY,EAAE,GAAG,eAC1CI,cAAA,CAAAC,aAAA;IAAM6D,KAAK,EAAE;MAAEqhB,SAAS,EAAE,QAAQ;MAAExgB,UAAU,EAAE,KAAK;MAAEuX,aAAa,EAAE,MAAM;MAAE5X,KAAK,EAAE;;KAAa,SAC5F,EAAC1E,CAAC,CAAC,eAAe,CAAC,IAAI,UACvB,CACL,CAAC,eACNI,cAAA,CAAAC,aAAA,CAAC6S,WAAS;IACNE,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACoiB,OAAO;MAACtQ,IAAI,EAAE;KAAK,CAAE;IAC5BnM,KAAK,EAAE6d,SAAU;IACjB/d,QAAQ,EAAGK,CAAC,IAAK2d,YAAY,CAAC3d,CAAC,CAACY,MAAM,CAACf,KAAK,CAAE;IAC9CgB,WAAW,EAAEhH,CAAC,CAAC,uBAAuB,CAAC,IAAI;GAC9C,CACA,CAAC,eAENI,cAAA,CAAAC,aAAA;IAAI6D,KAAK,EAAE;MAAEuD,MAAM,EAAE,QAAQ;MAAEH,MAAM,EAAE,CAAC;MAAEuV,SAAS,EAAE;;GAAwB,CAAC,eAG9Ezc,cAAA,CAAAC,aAAA,CAAC2T,aAAW;IACRZ,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACiiB,YAAY;MAACnQ,IAAI,EAAE;KAAK,CAAE;IACjCzR,KAAK,EAAEV,CAAC,CAAC,oBAAoB,CAAC,IAAI;GACrC,CAAC,eAGFI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEqY,mBAAmB,EAAE,SAAS;MAAEhW,GAAG,EAAE,MAAM;MAAElC,YAAY,EAAE;;kBACtFpE,cAAA,CAAAC,aAAA,2BACID,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAE4X,aAAa,EAAE,WAAW;MAAEC,aAAa,EAAE,QAAQ;MAAE/X,YAAY,EAAE;;KACnIxE,CAAC,CAAC,yBAAyB,CAAC,IAAI,oBAChC,CAAC,eACNI,cAAA,CAAAC,aAAA,CAACkJ,+BAAQ;IACLI,QAAQ,EAAEoa,kBAAmB;IAC7Bra,MAAM,EAAEsa,qBAAsB;IAC9Bxa,MAAM,EAAEub,yBAA0B;IAClCtb,SAAS,EAAC,OAAO;IACjBzJ,CAAC,EAAEA,CAAE;IACLgH,WAAW,EAAEhH,CAAC,CAAC,aAAa,CAAC,IAAI;GACpC,CACA,CAAC,eACNI,cAAA,CAAAC,aAAA,2BACID,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAE4X,aAAa,EAAE,WAAW;MAAEC,aAAa,EAAE,QAAQ;MAAE/X,YAAY,EAAE;;KACnIxE,CAAC,CAAC,0BAA0B,CAAC,IAAI,qBACjC,CAAC,eACNI,cAAA,CAAAC,aAAA,CAACkJ,+BAAQ;IACLI,QAAQ,EAAE2E,cAAe;IACzB5E,MAAM,EAAEua,iBAAkB;IAC1Bza,MAAM,EAAEyb,qBAAsB;IAC9Bxb,SAAS,EAAC,OAAO;IACjBzJ,CAAC,EAAEA,CAAE;IACLgH,WAAW,EAAEhH,CAAC,CAAC,aAAa,CAAC,IAAI;GACpC,CACA,CACJ,CAAC,eAENI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEqY,mBAAmB,EAAE,SAAS;MAAEhW,GAAG,EAAE,MAAM;MAAElC,YAAY,EAAE;;kBACtFpE,cAAA,CAAAC,aAAA,2BACID,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAE4X,aAAa,EAAE,WAAW;MAAEC,aAAa,EAAE,QAAQ;MAAE/X,YAAY,EAAE;;KACnIxE,CAAC,CAAC,gBAAgB,CAAC,IAAI,WACvB,CAAC,eACNI,cAAA,CAAAC,aAAA,CAACkJ,+BAAQ;IACLI,QAAQ,EAAEua,QAAS;IACnBxa,MAAM,EAAEya,WAAY;IACpB3a,MAAM,EAAE2b,eAAgB;IACxB1b,SAAS,EAAC,OAAO;IACjBzJ,CAAC,EAAEA,CAAE;IACLgH,WAAW,EAAEhH,CAAC,CAAC,aAAa,CAAC,IAAI;GACpC,CACA,CAAC,eACNI,cAAA,CAAAC,aAAA,2BACID,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAE4X,aAAa,EAAE,WAAW;MAAEC,aAAa,EAAE,QAAQ;MAAE/X,YAAY,EAAE;;KACnIxE,CAAC,CAAC,mBAAmB,CAAC,IAAI,eAC1B,CAAC,eACNI,cAAA,CAAAC,aAAA,CAACkJ,+BAAQ;IACLI,QAAQ,EAAEya,UAAW;IACrB1a,MAAM,EAAE2a,aAAc;IACtB7a,MAAM,EAAE6b,YAAa;IACrB5b,SAAS,EAAC,OAAO;IACjBzJ,CAAC,EAAEA,CAAE;IACLgH,WAAW,EAAEhH,CAAC,CAAC,aAAa,CAAC,IAAI;GACpC,CACA,CACJ,CAAC,eAENI,cAAA,CAAAC,aAAA;IAAI6D,KAAK,EAAE;MAAEuD,MAAM,EAAE,QAAQ;MAAEH,MAAM,EAAE,CAAC;MAAEuV,SAAS,EAAE;;GAAwB,CAAC,eAG9Ezc,cAAA,CAAAC,aAAA,CAAC2T,aAAW;IACRZ,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACmiB,YAAY;MAACrQ,IAAI,EAAE;KAAK,CAAE;IACjCzR,KAAK,EAAEV,CAAC,CAAC,sBAAsB,CAAC,IAAI;GACvC,CAAC,eAEFI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEqY,mBAAmB,EAAE,SAAS;MAAEhW,GAAG,EAAE,MAAM;MAAElC,YAAY,EAAE;;kBAGtFpE,cAAA,CAAAC,aAAA,2BACID,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAE4X,aAAa,EAAE,WAAW;MAAEC,aAAa,EAAE,QAAQ;MAAE/X,YAAY,EAAE;;KACnIxE,CAAC,CAAC,0BAA0B,CAAC,IAAI,0BACjC,CAAC,eACNI,cAAA,CAAAC,aAAA;IAAO8E,IAAI,EAAC,MAAM;IAAC8X,GAAG,EAAEyH,OAAQ;IAACxH,MAAM,EAAC,MAAM;IAAChZ,KAAK,EAAE;MAAEG,OAAO,EAAE;KAAS;IAACyB,QAAQ,EAAE+e;GAAmB,CAAC,eACzGzkB,cAAA,CAAAC,aAAA;IACI+G,OAAO,EAAEA,MAAMyc,SAAS,IAAIa,OAAO,CAACpL,OAAO,CAAC6D,KAAK,EAAG;IACpDjB,WAAW,EAAG/V,CAAC,IAAK;MAAE,IAAI0d,SAAS,EAAE1d,CAAC,CAACgW,aAAa,CAACjY,KAAK,CAACkZ,WAAW,GAAG,SAAS;KAAI;IACtFhB,UAAU,EAAGjW,CAAC,IAAK;MAAE,IAAI0d,SAAS,EAAE1d,CAAC,CAACgW,aAAa,CAACjY,KAAK,CAACkZ,WAAW,GAAG,SAAS;KAAI;IACrFlZ,KAAK,EAAE;MACHoD,MAAM,EAAEuc,SAAS,GAAG,sBAAsB,GAAG,sBAAsB;MACnEpf,YAAY,EAAE,MAAM;MACpBF,OAAO,EAAE,WAAW;MACpBiE,SAAS,EAAE,QAAQ;MACnBjB,MAAM,EAAEsc,SAAS,GAAG,SAAS,GAAG,aAAa;MAC7ChI,eAAe,EAAEgI,SAAS,GAAG,SAAS,GAAG,SAAS;MAClDpH,SAAS,EAAE,OAAO;MAClBpY,OAAO,EAAE,MAAM;MACfgL,aAAa,EAAE,QAAQ;MACvB/K,UAAU,EAAE,QAAQ;MACpB4C,cAAc,EAAE,QAAQ;MACxBR,GAAG,EAAE,MAAM;MACXuV,UAAU,EAAE,WAAW;MACvBtI,OAAO,EAAEkQ,SAAS,GAAG,CAAC,GAAG;;kBAG7BzjB,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACRmD,UAAU,EAAEwc,SAAS,GAAG,MAAM,GAAG,SAAS;MAC1Ctf,OAAO,EAAE,MAAM;MACfE,YAAY,EAAE,MAAM;MACpBJ,OAAO,EAAE,MAAM;MACfwW,MAAM,EAAEgJ,SAAS,GAAG,MAAM,GAAG;;kBAE7BzjB,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAC,IAAI;IAACC,MAAM,EAAC,IAAI;IAACsN,OAAO,EAAC,WAAW;IAACC,IAAI,EAAEwR,SAAS,GAAG,SAAS,GAAG;kBAC1EzjB,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAA0F,CAAC,eACnGlS,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC,gCAAgC;IAACM,MAAM,EAAC,MAAM;IAACC,WAAW,EAAC,KAAK;IAACC,aAAa,EAAC;GAAS,CAC/F,CACJ,CAAC,EACLwR,gBAAgB,gBACblkB,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE;;KAAa,SACjE,EAAC4f,gBAAgB,CAAC7X,IACnB,CAAC,gBAENrM,cAAA,CAAAC,aAAA,CAAA4N,cAAA,qBACI7N,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAEmf,SAAS,GAAG,SAAS,GAAG;;KAC7EA,SAAS,GAAI7jB,CAAC,CAAC,8BAA8B,CAAC,IAAI,eAAe,GAAKA,CAAC,CAAC,0BAA0B,CAAC,IAAI,qBACvG,CAAC,eACNI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAEmf,SAAS,GAAG,SAAS,GAAG;;KAAcA,SAAS,GAAG,eAAe,GAAG,cAAoB,CACjI,CAEL,CACJ,CAAC,eAGNzjB,cAAA,CAAAC,aAAA,2BACID,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAE4X,aAAa,EAAE,WAAW;MAAEC,aAAa,EAAE,QAAQ;MAAE/X,YAAY,EAAE;;KACnIxE,CAAC,CAAC,6BAA6B,CAAC,IAAI,wBACpC,CAAC,eACNI,cAAA,CAAAC,aAAA;IAAO8E,IAAI,EAAC,MAAM;IAAC8X,GAAG,EAAE0H,SAAU;IAACzH,MAAM,EAAC,SAAS;IAACsI,OAAO,EAAC,aAAa;IAACthB,KAAK,EAAE;MAAEG,OAAO,EAAE;KAAS;IAACyB,QAAQ,EAAEgf;GAAqB,CAAC,eACtI1kB,cAAA,CAAAC,aAAA;IACI+G,OAAO,EAAE,CAACod,aAAa,GAAG,MAAMG,SAAS,CAACrL,OAAO,CAAC6D,KAAK,EAAE,GAAGnB,SAAU;IACtEE,WAAW,EAAG/V,CAAC,IAAK;MAAE,IAAI,CAACqe,aAAa,EAAEre,CAAC,CAACgW,aAAa,CAACjY,KAAK,CAACkZ,WAAW,GAAG,SAAS;KAAI;IAC3FhB,UAAU,EAAGjW,CAAC,IAAK;MAAE,IAAI,CAACqe,aAAa,EAAEre,CAAC,CAACgW,aAAa,CAACjY,KAAK,CAACkZ,WAAW,GAAG,SAAS;KAAI;IAC1FlZ,KAAK,EAAE;MACHoD,MAAM,EAAE,sBAAsB;MAAE7C,YAAY,EAAE,MAAM;MACpDgY,SAAS,EAAE,OAAO;MAAEpY,OAAO,EAAE,MAAM;MAAEgL,aAAa,EAAE,QAAQ;MAC5D/K,UAAU,EAAE,QAAQ;MAAE4C,cAAc,EAAE,QAAQ;MAC9C2U,eAAe,EAAE,SAAS;MAC1BtU,MAAM,EAAEid,aAAa,GAAG,SAAS,GAAG,SAAS;MAC7CnH,QAAQ,EAAE,QAAQ;MAAEpB,UAAU,EAAE,oBAAoB;MACpDpV,QAAQ,EAAE,UAAU;MACpBtC,OAAO,EAAEigB,aAAa,GAAG,GAAG,GAAG;;KAGlC,CAACA,aAAa,gBACXpkB,cAAA,CAAAC,aAAA,CAAA4N,cAAA,qBACI7N,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmD,UAAU,EAAE,SAAS;MAAExC,KAAK,EAAE,MAAM;MAAEC,MAAM,EAAE,MAAM;MAAEL,YAAY,EAAE,KAAK;MAAEJ,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAE4C,cAAc,EAAE,QAAQ;MAAE1C,YAAY,EAAE;;kBACpKpE,cAAA,CAAAC,aAAA,CAAC6R,YAAU;IAACC,IAAI,EAAE;GAAK,CACtB,CAAC,eACN/R,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE;;KACrD1E,CAAC,CAAC,qBAAqB,CAAC,IAAI,gBAC5B,CAAC,eACNI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE,SAAS;MAAEyC,SAAS,EAAE;;KACxDnH,CAAC,CAAC,qBAAqB,CAAC,IAAI,yBAC5B,CAAC,eACNI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE,SAAS;MAAEyC,SAAS,EAAE;;KAAS,oBAEjE,CACP,CAAC,gBAEH/G,cAAA,CAAAC,aAAA,CAAA4N,cAAA,qBACI7N,cAAA,CAAAC,aAAA;IAAKid,GAAG,EAAEkH,aAAc;IAACjH,GAAG,EAAC,UAAU;IAACrZ,KAAK,EAAE;MAAEW,KAAK,EAAE,MAAM;MAAE2Y,SAAS,EAAE,OAAO;MAAEC,SAAS,EAAE,OAAO;MAAEpZ,OAAO,EAAE;;GAAY,CAAC,eAC9HjE,cAAA,CAAAC,aAAA;IACI+G,OAAO,EAAGjB,CAAC,IAAK;MAAEA,CAAC,CAACuX,eAAe,EAAE;MAAE+G,gBAAgB,CAAC,IAAI,CAAC;MAAE,IAAIE,SAAS,CAACrL,OAAO,EAAEqL,SAAS,CAACrL,OAAO,CAACtT,KAAK,GAAG,EAAE;KAAI;IACtH9B,KAAK,EAAE;MACH2C,QAAQ,EAAE,UAAU;MAAE2M,GAAG,EAAE,KAAK;MAAEmK,KAAK,EAAE,KAAK;MAC9CtW,UAAU,EAAE,MAAM;MAAEC,MAAM,EAAE,qBAAqB;MACjD7C,YAAY,EAAE,KAAK;MAAEF,OAAO,EAAE,UAAU;MACxCF,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEoC,GAAG,EAAE,KAAK;MACjDa,MAAM,EAAE,SAAS;MAAEvC,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE,SAAS;MAAEK,UAAU,EAAE;;kBAGvE3E,cAAA,CAAAC,aAAA,CAACqS,WAAS;IAACP,IAAI,EAAE;GAAK,CAAC,KAAC,EAACnS,CAAC,CAAC,aAAa,CAAC,IAAI,QACzC,CACV,CAEL,CACJ,CACJ,CAAC,eAGNI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACR2X,eAAe,EAAE,SAAS;MAAEvU,MAAM,EAAE,qBAAqB;MACzD7C,YAAY,EAAE,KAAK;MAAEF,OAAO,EAAE,WAAW;MACzCF,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,YAAY;MAAEoC,GAAG,EAAE,MAAM;MAAElC,YAAY,EAAE;;kBAEtEpE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAE4X,UAAU,EAAE,CAAC;MAAE3U,SAAS,EAAE;;kBACpC/G,cAAA,CAAAC,aAAA,CAAC2c,qCAAc;IAAC3K,IAAI,EAAC;GAAW,CAC/B,CAAC,eACNjS,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE,SAAS;MAAEqX,UAAU,EAAE;;KACzD/b,CAAC,CAAC,yBAAyB,CAAC,IAAI,mHAChC,CACJ,CAEJ,CAAC,eAGNI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEiD,SAAS,EAAE;;kBACrB/G,cAAA,CAAAC,aAAA,CAACmH,gCAAS;IACN9G,KAAK,EAAEV,CAAC,CAAC,wBAAwB,CAAC,IAAI,iBAAkB;IACxDkG,QAAQ,EAAEub;GACb,CACA,CAAC,eAGNrhB,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACRG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAE4C,cAAc,EAAE,QAAQ;MAC/DR,GAAG,EAAE,KAAK;MAAES,SAAS,EAAE,MAAM;MAC7BnC,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;kBAEzBtE,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAC,IAAI;IAACC,MAAM,EAAC,IAAI;IAACsN,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAC,cAAc;IAACC,WAAW,EAAC,GAAG;IAACC,aAAa,EAAC;kBAC5G1S,cAAA,CAAAC,aAAA;IAAMwd,CAAC,EAAC,GAAG;IAACC,CAAC,EAAC,IAAI;IAACjZ,KAAK,EAAC,IAAI;IAACC,MAAM,EAAC,IAAI;IAACiZ,EAAE,EAAC;GAAK,CAAC,eACnD3d,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAA4B,CACnC,CAAC,EACLtS,CAAC,CAAC,yBAAyB,CAAC,IAAI,mCAChC,CACH,CACL,CACJ,CAAC;AAEd,CAAC;;AClfD,MAAMgT,WAAS,GAAGjS,IAAA;EAAA,IAAC;IAAEoR,IAAI,GAAG,EAAE;IAAEzN,KAAK,GAAG;GAAQ,GAAA3D,IAAA;EAAA,oBAC9CX,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAElO,KAAM;IAACmO,WAAW,EAAC,GAAG;IAACC,aAAa,EAAC;kBAC3G1S,cAAA,CAAAC,aAAA;IAAU0S,MAAM,EAAC;GAAkB,CAChC,CAAC;AAAA,CACP;AAED,MAAMzS,UAAU,GAAG6C,KAAA;EAAA,IAAC;IAAEgP,IAAI,GAAG;GAAI,GAAAhP,KAAA;EAAA,oBAC/B/C,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC;kBACvDjS,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAAgJ,CACrJ,CAAC;AAAA,CACP;AAED,MAAMmT,aAAa,GAAG/hB,KAAA;EAAA,IAAC;IAAEyO,IAAI,GAAG;GAAI,GAAAzO,KAAA;EAAA,oBAClCtD,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC;kBACvDjS,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAA8J,CACnK,CAAC;AAAA,CACP;AAED,MAAMgQ,cAAY,GAAGze,KAAA;EAAA,IAAC;IAAEsO,IAAI,GAAG;GAAI,GAAAtO,KAAA;EAAA,oBACjCzD,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC;kBACvDjS,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAAuL,CAC5L,CAAC;AAAA,CACP;AAED,MAAMoT,QAAQ,GAAGjT,KAAA;EAAA,IAAC;IAAEN,IAAI,GAAG;GAAI,GAAAM,KAAA;EAAA,oBAC7BrS,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAEsN,IAAK;IAACrN,MAAM,EAAEqN,IAAK;IAACC,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAC,cAAc;IAACC,WAAW,EAAC,GAAG;IAACC,aAAa,EAAC;kBAClH1S,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAA8D,CAAC,eACvElS,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAA2D,CAChE,CAAC;AAAA,CACP;AAID,MAAM0B,aAAW,GAAGrB,KAAA;EAAA,IAAC;IAAES,IAAI;IAAE1S;GAAO,GAAAiS,KAAA;EAAA,oBAClCvS,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEoC,GAAG,EAAE,KAAK;MACjDlC,YAAY,EAAE,MAAM;MAAE2C,SAAS,EAAE;;kBAEjC/G,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEyP,OAAO,EAAE,GAAG;MAAEtP,OAAO,EAAE;;KAAW+O,IAAU,CAAC,eAC3DhT,cAAA,CAAAC,aAAA;IAAM6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MAAEwP,UAAU,EAAE;;KAC/ExT,KACG,CAAC,eACPN,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmB,IAAI,EAAE,CAAC;MAAEP,MAAM,EAAE,KAAK;MAAEuC,UAAU,EAAE;;GAAc,CAC7D,CAAC;AAAA,CACP;AAID,MAAMse,UAAU,GAAG1S,KAAA;EAAA,IAAC;IAAEG,IAAI;IAAEwS,KAAK;IAAEC,MAAM;IAAEC,SAAS;IAAEC;GAAM,GAAA9S,KAAA;EAAA,oBAC1D7S,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVoD,MAAM,EAAE,qBAAqB;MAC7B7C,YAAY,EAAE,MAAM;MACpB4Y,QAAQ,EAAE,QAAQ;MAClB7Y,YAAY,EAAE,MAAM;MACpBiX,SAAS,EAAE;;kBAGXrb,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVG,OAAO,EAAE,MAAM;MAAE6C,cAAc,EAAE,eAAe;MAAE5C,UAAU,EAAE,QAAQ;MACtEC,OAAO,EAAE,WAAW;MACpB8C,UAAU,EAAE,SAAS;MACrB2e,YAAY,EAAE;;kBAEd5lB,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEoC,GAAG,EAAE;;kBACxDtG,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEyP,OAAO,EAAE,GAAG;MAAEtP,OAAO,EAAE;;KAAW+O,IAAU,CAAC,eAC3DhT,cAAA,CAAAC,aAAA;IAAM6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE;;KAAckhB,KAAY,CAClF,CAAC,eACNxlB,cAAA,CAAAC,aAAA;IACE+G,OAAO,EAAEye,MAAO;IAChB3hB,KAAK,EAAE;MACLG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEoC,GAAG,EAAE,KAAK;MACjDW,UAAU,EAAE,MAAM;MAAEC,MAAM,EAAE,qBAAqB;MACjD7C,YAAY,EAAE,KAAK;MAAEF,OAAO,EAAE,UAAU;MACxCS,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MAAEL,KAAK,EAAE,SAAS;MACrD6C,MAAM,EAAE;;kBAGVnH,cAAA,CAAAC,aAAA,CAACqlB,QAAQ;IAACvT,IAAI,EAAE;GAAK,CAAC,EACrB2T,SACK,CACL,CAAC,eAGN1lB,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEK,OAAO,EAAE;;KACpBwhB,IAAI,CAACle,GAAG,CAAC,CAACxE,GAAG,EAAE8a,CAAC,KACf9a,GAAG,CAAC2C,KAAK,gBACP5F,cAAA,CAAAC,aAAA;IAAK0F,GAAG,EAAEoY,CAAE;IAACja,KAAK,EAAE;MAClBG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,YAAY;MACzCC,OAAO,EAAE,WAAW;MACpByhB,YAAY,EAAE7H,CAAC,GAAG4H,IAAI,CAAC9d,MAAM,GAAG,CAAC,GAAG,qBAAqB,GAAG;;kBAE5D7H,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVmB,IAAI,EAAE,WAAW;MAAEL,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MACtDL,KAAK,EAAE,SAAS;MAAE4X,aAAa,EAAE,WAAW;MAC5CC,aAAa,EAAE,QAAQ;MAAE6B,UAAU,EAAE;;KAEpC/a,GAAG,CAAC3C,KACF,CAAC,eACNN,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmB,IAAI,EAAE,CAAC;MAAEL,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE,SAAS;MAAEK,UAAU,EAAE,KAAK;MAAEkhB,SAAS,EAAE;;KACtF5iB,GAAG,CAAC2C,KACF,CACF,CAAC,GACJ,IACL,CACE,CACF,CAAC;AAAA,CACP;AAID,MAAMkgB,MAAM,GAAGA,MAAM;EAAA,IAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA;EACnB,MAAM;IAAEtmB;GAAG,GAAGC,2BAAc,EAAE;EAC9B,MAAMiN,OAAO,GAAGC,yBAAU,EAAE;EAC5B,MAAM0H,QAAQ,GAAGC,0BAAW,EAAE;EAE9B,MAAM;IACJvO,OAAO,GAAG,iBAAiB;IAC3Bqb,cAAc,GAAG,EAAE;IACnB1M,cAAc,GAAG,EAAE;IACnB0P,eAAe,GAAG;GACnB,GAAG/P,QAAQ,CAACG,KAAK,IAAI,EAAE;EAExB,MAAM,CAACuR,YAAY,EAAEC,eAAe,CAAC,GAAG/jB,cAAQ,CAAC,KAAK,CAAC;EACvD,MAAM,CAACgkB,KAAK,EAAEC,QAAQ,CAAC,GAAGjkB,cAAQ,CAAC,IAAI,CAAC;EAGxC,MAAMkkB,UAAU,aAAU5N,IAAI,EAAE7O,QAAQ;IAAA,IAAK;MAC3C,IAAI,CAAC6O,IAAI,EAAE,OAAAiB,OAAA,CAAAC,OAAA,CAAO,IAAI;MAAC,OAAAD,OAAA,CAAAC,OAAA,CACLtX,KAAK,CAACikB,cAAc,CAACC,WAAW,CAAC,MAAM,EAAE9N,IAAI,EAAE7O,QAAQ,CAAC,EAAA4H,IAAA,WAApEqI,GAAG;QAAA,IAAA2M,SAAA,EAAAC,eAAA,EAAAC,gBAAA;QACT,OAAO,CAAA7M,GAAG,aAAHA,GAAG,wBAAA2M,SAAA,GAAH3M,GAAG,CAAE1Y,IAAI,cAAAqlB,SAAA,wBAAAC,eAAA,GAATD,SAAA,CAAW9N,KAAK,cAAA+N,eAAA,wBAAAC,gBAAA,GAAhBD,eAAA,CAAmB,CAAC,CAAC,cAAAC,gBAAA,uBAArBA,gBAAA,CAAuBC,WAAW,KAAI,IAAI;;KAClD,QAAA9gB,CAAA;MAAA,OAAA6T,OAAA,CAAAoB,MAAA,CAAAjV,CAAA;;;EAGD,MAAM+gB,aAAa,GAAGA,CAACC,OAAO,EAAEC,QAAQ,KAAK;IAC3C,MAAMC,GAAG,GAAGF,OAAO,CAAC9e,KAAK,CAAC,GAAG,CAAC;IAC9B,MAAMif,IAAI,GAAGD,GAAG,CAAC,CAAC,CAAC,CAACE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACvC,MAAMC,IAAI,GAAGC,IAAI,CAACJ,GAAG,CAAC,CAAC,CAAC,CAAC;IACzB,IAAIK,CAAC,GAAGF,IAAI,CAACvf,MAAM;IACnB,MAAM0f,KAAK,GAAG,IAAIC,UAAU,CAACF,CAAC,CAAC;IAC/B,OAAOA,CAAC,EAAE,EAAEC,KAAK,CAACD,CAAC,CAAC,GAAGF,IAAI,CAACK,UAAU,CAACH,CAAC,CAAC;IACzC,OAAO,IAAII,IAAI,CAAC,CAACH,KAAK,CAAC,EAAEP,QAAQ,EAAE;MAAEjiB,IAAI,EAAEmiB;KAAM,CAAC;GACnD;EAED,MAAMte,YAAY;IAAA,IAAe;MAC/Bwd,eAAe,CAAC,IAAI,CAAC;MACrBE,QAAQ,CAAC,IAAI,CAAC;MAAC,MAAAqB,MAAA,GAAAhW,gBAAA;QAAA,OAAAL,MAAA,aACX;UAAA,IAAAsW,qBAAA;UACF,MAAM9d,QAAQ,GAAGvH,KAAK,CAACwH,UAAU,CAACC,kBAAkB,EAAE,IAAI,QAAQ;UAClE,MAAM6d,QAAQ,GAAG,EAAAD,qBAAA,GAAArlB,KAAK,CAACulB,WAAW,CAACC,OAAO,EAAE,cAAAH,qBAAA,uBAA3BA,qBAAA,CAA6Btc,IAAI,KAAI,EAAE;UAGxD,MAAM0c,eAAe,GAAGxD,eAAe,CAACN,gBAAgB,IAAI,IAAI;UAAC,OAAAtK,OAAA,CAAAC,OAAA,CAC5B0M,UAAU,CAACyB,eAAe,EAAEle,QAAQ,CAAC,EAAA4H,IAAA,WAApEuW,sBAAsB;YAAA,SAAAC;cAAA,IAAAC,sBAAA,EAAAC,qBAAA,EAAAC,qBAAA,EAAAC,qBAAA,EAAAC,sBAAA;cAU5B,MAAMC,WAAW,GAAG;gBAClBC,WAAW,EAAE;kBACXC,KAAK,EAAE,WAAW;kBAClBC,GAAG,EAAE,KAAK;kBACVC,KAAK,EAAE,GAAGC,IAAI,CAACC,GAAG,EAAE,IAAI1P,SAAS,CAAC2P,QAAQ,IAAI,OAAO,EAAE;kBACvDjf,QAAQ;kBACRkf,SAAS,EAAEnB,QAAQ,CAACoB,YAAY,MAAAd,sBAAA,GAAI5lB,KAAK,CAACulB,WAAW,CAACC,OAAO,EAAE,cAAAI,sBAAA,uBAA3BA,sBAAA,CAA6Bc,YAAY,KAAI;iBAClF;gBACDC,UAAU,EAAE,UAAU;gBACtB9d,GAAG,EAAEjF,OAAO;gBACZsd,SAAS,EAAEe,eAAe,CAACf,SAAS,IAAI,IAAI;gBAC5C0F,2BAA2B,EAAElB,sBAAsB;gBACnDmB,wBAAwB,EAAEA,wBAAwB;gBAClDtF,QAAQ,EAAE,EAAAsE,qBAAA,GAAA5D,eAAe,CAACV,QAAQ,cAAAsE,qBAAA,uBAAxBA,qBAAA,CAA0BxiB,KAAK,KAAI,IAAI;gBACjDyjB,SAAS,EAAE,CAAAhB,qBAAA,GAAA7D,eAAe,CAACR,UAAU,cAAAqE,qBAAA,eAA1BA,qBAAA,CAA4BziB,KAAK,GAAG0jB,QAAQ,CAAC9E,eAAe,CAACR,UAAU,CAACpe,KAAK,EAAE,EAAE,CAAC,GAAG,IAAI;gBACpG2jB,gBAAgB,EAAE,EAAAjB,qBAAA,GAAA9D,eAAe,CAACb,kBAAkB,cAAA2E,qBAAA,uBAAlCA,qBAAA,CAAoC1iB,KAAK,KAAI,IAAI;gBACnE+d,kBAAkB,EAAE,EAAA4E,sBAAA,GAAA/D,eAAe,CAACtW,cAAc,cAAAqa,sBAAA,uBAA9BA,sBAAA,CAAgC3iB,KAAK,KAAI,IAAI;gBACjE4jB,UAAU,EAAE3B,QAAQ,CAACxb,IAAI,IAAIwb,QAAQ,CAAC9H,QAAQ,IAAI;eACnD;cAAC,OAAAnG,OAAA,CAAAC,OAAA,CAGItX,KAAK,CAACknB,aAAa,CAACC,WAAW,CAAC;gBACpCC,GAAG,EAAE,wCAAwC;gBAC7ChZ,MAAM,EAAE;kBAAE7G;iBAAU;gBACpByH,IAAI,EAAEiX,WAAW;gBACjBoB,QAAQ,EAAE,KAAK;gBACfC,MAAM,EAAE;eACT,CAAC,EAAAnY,IAAA;gBAEF4U,QAAQ,CAAC;kBAAEvhB,IAAI,EAAE,SAAS;kBAAE0L,OAAO,EAAE7Q,CAAC,CAAC,qBAAqB,CAAC,IAAI;iBAAuC,CAAC;gBACzGmhB,UAAU,CAAC,MAAM;kBACfjU,OAAO,CAACc,IAAI,CAAC,mCAAmC,CAAC;iBAClD,EAAE,IAAI,CAAC;;;YAvCR,IAAIwb,wBAAwB,GAAG,IAAI;YAAC,MAAAU,KAAA;cAAA,IAChCtF,eAAe,CAACJ,aAAa;gBAC/B,MAAM2F,SAAS,GAAGjD,aAAa,CAACtC,eAAe,CAACJ,aAAa,EAAE,oBAAoB,CAAC;gBAAC,OAAAxK,OAAA,CAAAC,OAAA,CACpD0M,UAAU,CAACwD,SAAS,EAAEjgB,QAAQ,CAAC,EAAA4H,IAAA,WAAAsY,WAAA;kBAAhEZ,wBAAwB,GAAAY,WAAwC;;;;YAAC,OAAAF,KAAA,IAAAA,KAAA,CAAApY,IAAA,GAAAoY,KAAA,CAAApY,IAAA,CAAAwW,MAAA,IAAAA,MAAA,CAAA4B,KAAA;;SAqCpE,YAAQlP,GAAG,EAAE;UAAA,IAAAqP,aAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,sBAAA;UACZvP,OAAO,CAAC/K,KAAK,CAAC,oBAAoB,EAAE8K,GAAG,CAAC;UACxC0L,QAAQ,CAAC;YACPvhB,IAAI,EAAE,OAAO;YACb0L,OAAO,EAAE,CAAAmK,GAAG,aAAHA,GAAG,wBAAAqP,aAAA,GAAHrP,GAAG,CAAErK,QAAQ,cAAA0Z,aAAA,wBAAAC,kBAAA,GAAbD,aAAA,CAAe5oB,IAAI,cAAA6oB,kBAAA,wBAAAC,qBAAA,GAAnBD,kBAAA,CAAqB1Z,MAAM,cAAA2Z,qBAAA,wBAAAC,sBAAA,GAA3BD,qBAAA,CAA8B,CAAC,CAAC,cAAAC,sBAAA,uBAAhCA,sBAAA,CAAkC3Z,OAAO,KAChD7Q,CAAC,CAAC,mBAAmB,CAAC,IAAI;WAC7B,CAAC;SACH;mBAAAkb,UAAA,EAAAC,OAAA;QACCqL,eAAe,CAAC,KAAK,CAAC;QAAC,IAAAtL,UAAA,QAAAC,OAAA;QAAA,OAAAA,OAAA;;MAAA,OAAAnB,OAAA,CAAAC,OAAA,CAAA8N,MAAA,IAAAA,MAAA,CAAAjW,IAAA,GAAAiW,MAAA,CAAAjW,IAAA;KAE1B,QAAA3L,CAAA;MAAA,OAAA6T,OAAA,CAAAoB,MAAA,CAAAjV,CAAA;;;EAED,MAAMskB,iBAAiB,GAAGA,MAAM;IAC9Bvd,OAAO,CAACc,IAAI,CAAC,8CAA8C,EAAE6G,QAAQ,CAACG,KAAK,CAAC;GAC7E;EAED,MAAM0V,iBAAiB,GAAGA,MAAM;IAC9Bxd,OAAO,CAACc,IAAI,CAAC,yCAAyC,EAAE6G,QAAQ,CAACG,KAAK,CAAC;GACxE;EAED,MAAM2V,kBAAkB,GAAGA,MAAM;IAC/Bzd,OAAO,CAACc,IAAI,CAAC,uCAAuC,EAAE6G,QAAQ,CAACG,KAAK,CAAC;GACtE;EAED,oBACE5U,cAAA,CAAAC,aAAA,CAAC4N,cAAQ,qBACT7N,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACbb,cAAA,CAAAC,aAAA,gBAAQ;AACd;AACA;AACA;AACA;AACA,OAAe,CAAC,eAGVD,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACbb,cAAA,CAAAC,aAAA,CAAC+D,2BAAI;IAACF,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEC,OAAO,EAAE,WAAW;MAAEC,YAAY,EAAE,MAAM;MAAEC,YAAY,EAAE;;kBAC9GrE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEQ,KAAK,EAAE,SAAS;MAAEC,WAAW,EAAE,MAAM;MAAEN,OAAO,EAAE;;kBAC5DjE,cAAA,CAAAC,aAAA,CAACuE,+BAAQ;IAACV,KAAK,EAAE;MAAEW,KAAK,EAAE,MAAM;MAAEC,MAAM,EAAE;;GAAW,CAClD,CAAC,eACN1E,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEa,UAAU,EAAE,KAAK;MAAEC,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KACvD1E,CAAC,CAAC,cAAc,CAAC,IAAI,cACnB,CACD,CAAC,eAEPI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmD,UAAU,EAAE,MAAM;MAAE9C,OAAO,EAAE,WAAW;MAAEE,YAAY,EAAE,KAAK;MAAE6C,MAAM,EAAE;;KAClF,CACC;IAAE5G,KAAK,EAAEV,CAAC,CAAC,mBAAmB,CAAC,IAAI,SAAS;IAAEge,IAAI,EAAE,IAAI;IAAEC,MAAM,EAAE;GAAO,EACzE;IAAEvd,KAAK,EAAEV,CAAC,CAAC,mBAAmB,CAAC,IAAI,SAAS;IAAEge,IAAI,EAAE,IAAI;IAAEC,MAAM,EAAE;GAAO,EACzE;IAAEvd,KAAK,EAAEV,CAAC,CAAC,oBAAoB,CAAC,IAAI,UAAU;IAAEge,IAAI,EAAE,IAAI;IAAEC,MAAM,EAAE;GAAO,EAC3E;IAAEvd,KAAK,EAAEV,CAAC,CAAC,kBAAkB,CAAC,IAAI,QAAQ;IAAEge,IAAI,EAAE,KAAK;IAAEC,MAAM,EAAE;GAAM,CACxE,CAACpW,GAAG,CAAC,CAACqW,IAAI,EAAEC,CAAC,kBACZ/d,cAAA,CAAAC,aAAA;IAAK0F,GAAG,EAAEoY,CAAE;IAACja,KAAK,EAAE;MAClBG,OAAO,EAAE,MAAM;MAAEqC,GAAG,EAAE,MAAM;MAAEpC,UAAU,EAAE,YAAY;MACtDuC,QAAQ,EAAE,UAAU;MAAE1C,aAAa,EAAEga,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG;;KAErDA,CAAC,GAAG,CAAC,iBACJ/d,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACV2C,QAAQ,EAAE,UAAU;MAAE0M,IAAI,EAAE,MAAM;MAAEC,GAAG,EAAE,MAAM;MAC/C3O,KAAK,EAAE,KAAK;MAAEC,MAAM,EAAE,mBAAmB;MAAEuC,UAAU,EAAE;;GACrD,CACL,eACDjH,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVW,KAAK,EAAE,MAAM;MAAEC,MAAM,EAAE,MAAM;MAAEL,YAAY,EAAE,KAAK;MAAEqX,UAAU,EAAE,CAAC;MAAE3U,SAAS,EAAE,KAAK;MACnFG,MAAM,EAAE4W,IAAI,CAACF,IAAI,GAAG,MAAM,GAAGE,IAAI,CAACD,MAAM,GAAG,qBAAqB,GAAG,qBAAqB;MACxF5W,UAAU,EAAE6W,IAAI,CAACF,IAAI,GAAG,SAAS,GAAGE,IAAI,CAACD,MAAM,GAAG,SAAS,GAAG,MAAM;MACpE5Z,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAE4C,cAAc,EAAE,QAAQ;MAC/DlC,QAAQ,EAAE,MAAM;MAAED,UAAU,EAAE,KAAK;MACnCL,KAAK,EAAEwZ,IAAI,CAACF,IAAI,GAAG,MAAM,GAAGE,IAAI,CAACD,MAAM,GAAG,SAAS,GAAG;;KAErDC,IAAI,CAACF,IAAI,gBAAG5d,cAAA,CAAAC,aAAA,CAAC2S,WAAS;IAACb,IAAI,EAAE,EAAG;IAACzN,KAAK,EAAC;GAAQ,CAAC,GAAGyZ,CAAC,GAAG,CACrD,CAAC,eACN/d,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVc,QAAQ,EAAE,MAAM;MAAEoZ,UAAU,EAAE,KAAK;MACnC1Z,KAAK,EAAEwZ,IAAI,CAACF,IAAI,GAAG,SAAS,GAAGE,IAAI,CAACD,MAAM,GAAG,SAAS,GAAG,SAAS;MAClElZ,UAAU,EAAEmZ,IAAI,CAACF,IAAI,IAAIE,IAAI,CAACD,MAAM,GAAG,KAAK,GAAG;;KAE9CC,IAAI,CAACxd,KACH,CACF,CACN,CACE,CACF,CAAC,eAGNN,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEmB,IAAI,EAAE,CAAC;MAAEC,UAAU,EAAE;;kBACjClF,cAAA,CAAAC,aAAA,CAAC+D,2BAAI,qBAGHhE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEG,OAAO,EAAE,MAAM;MAAE6C,cAAc,EAAE,eAAe;MAAE5C,UAAU,EAAE,QAAQ;MAAEE,YAAY,EAAE;;kBAClGpE,cAAA,CAAAC,aAAA,CAAC6N,iCAAU;IAAChK,KAAK,EAAE;MAAEuD,MAAM,EAAE,CAAC;MAAEzC,QAAQ,EAAE;;KACvChF,CAAC,CAAC,qBAAqB,CAAC,IAAI,gBACnB,CAAC,eACbI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVmD,UAAU,EAAE,SAAS;MAAEC,MAAM,EAAE,qBAAqB;MACpD7C,YAAY,EAAE,MAAM;MAAEF,OAAO,EAAE,UAAU;MACzCS,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;KAExB1E,CAAC,CAAC,eAAe,CAAC,IAAI,UAAU,EAAC,GAAC,EAAC,GAAG,eACvCI,cAAA,CAAAC,aAAA;IAAM6D,KAAK,EAAE;MAAEQ,KAAK,EAAE,SAAS;MAAEK,UAAU,EAAE;;KAAUwB,OAAc,CAClE,CACF,CAAC,eAGNnG,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACV2X,eAAe,EAAE,SAAS;MAAEvU,MAAM,EAAE,qBAAqB;MACzD7C,YAAY,EAAE,KAAK;MAAEF,OAAO,EAAE,WAAW;MACzCF,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAEoC,GAAG,EAAE,MAAM;MAClDlC,YAAY,EAAE;;kBAEdpE,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAE2X,eAAe,EAAE,SAAS;MAAEtX,OAAO,EAAE,KAAK;MAAEE,YAAY,EAAE,KAAK;MAAEJ,OAAO,EAAE,MAAM;MAAEyX,UAAU,EAAE;;kBAC1G1b,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAC,IAAI;IAACC,MAAM,EAAC,IAAI;IAACsN,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAC,SAAS;IAACC,WAAW,EAAC,GAAG;IAACC,aAAa,EAAC;kBACzG1S,cAAA,CAAAC,aAAA;IAAU0S,MAAM,EAAC;GAAkB,CAChC,CACF,CAAC,eACN3S,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEc,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE,SAAS;MAAEK,UAAU,EAAE;;KAC3D/E,CAAC,CAAC,oBAAoB,CAAC,IAAI,mGACzB,CACF,CAAC,eAENI,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEuX,SAAS,EAAE;;kBAGvBrb,cAAA,CAAAC,aAAA,CAAC2T,aAAW;IACVZ,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACC,UAAU;MAAC6R,IAAI,EAAE;KAAK,CAAE;IAC/BzR,KAAK,EAAEV,CAAC,CAAC,kCAAkC,CAAC,IAAI;GACjD,CAAC,eAEFI,cAAA,CAAAC,aAAA,CAACslB,UAAU;IACTvS,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACC,UAAU;MAAC6R,IAAI,EAAE;KAAK,CAAE;IAC/ByT,KAAK,EAAE5lB,CAAC,CAAC,kCAAkC,CAAC,IAAI,iBAAkB;IAClE6lB,MAAM,EAAE4E,iBAAkB;IAC1B3E,SAAS,EAAE9lB,CAAC,CAAC,gBAAgB,CAAC,IAAI,MAAO;IACzC+lB,IAAI,EAAE,CACJ;MAAErlB,KAAK,EAAEV,CAAC,CAAC,WAAW,CAAC,IAAI,MAAM;MAAEgG,KAAK,EAAE4b,cAAc,CAACzB,QAAQ,IAAI;KAAsB,EAC3F;MAAEzf,KAAK,EAAEV,CAAC,CAAC,cAAc,CAAC,IAAI,aAAa;MAAEgG,KAAK,EAAE4b,cAAc,CAACvC,eAAe,GAAG,GAAGuC,cAAc,CAACvC,eAAe,EAAE,GAAG;KAAkB,EAC7I;MAAE3e,KAAK,EAAEV,CAAC,CAAC,gBAAgB,CAAC,IAAI,YAAY;MAAEgG,KAAK,EAAE4b,cAAc,CAAC7Z,YAAY,IAAI;KAAc,EAClG;MAAErH,KAAK,EAAEV,CAAC,CAAC,oBAAoB,CAAC,IAAI,OAAO;MAAEgG,KAAK,EAAE4b,cAAc,CAACnT,KAAK,IAAI;KAAM;GAErF,CAAC,eAEFrO,cAAA,CAAAC,aAAA;IAAI6D,KAAK,EAAE;MAAEuD,MAAM,EAAE,QAAQ;MAAEH,MAAM,EAAE,CAAC;MAAEuV,SAAS,EAAE;;GAAwB,CAAC,eAG9Ezc,cAAA,CAAAC,aAAA,CAAC2T,aAAW;IACVZ,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAAColB,aAAa;MAACtT,IAAI,EAAE;KAAK,CAAE;IAClCzR,KAAK,EAAEV,CAAC,CAAC,6BAA6B,CAAC,IAAI;GAC5C,CAAC,eAEFI,cAAA,CAAAC,aAAA,CAACslB,UAAU;IACTvS,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAAColB,aAAa;MAACtT,IAAI,EAAE;KAAK,CAAE;IAClCyT,KAAK,EAAE5lB,CAAC,CAAC,6BAA6B,CAAC,IAAI,iBAAkB;IAC7D6lB,MAAM,EAAE6E,iBAAkB;IAC1B5E,SAAS,EAAE9lB,CAAC,CAAC,gBAAgB,CAAC,IAAI,MAAO;IACzC+lB,IAAI,EAAE,CACJ;MAAErlB,KAAK,EAAEV,CAAC,CAAC,mBAAmB,CAAC,IAAI,cAAc;MAAEgG,KAAK,EAAEkP,cAAc,CAACK,WAAW,IAAI;KAAgD,EACxI;MAAE7U,KAAK,EAAEV,CAAC,CAAC,wBAAwB,CAAC,IAAI,kBAAkB;MAAEgG,KAAK,EAAEkP,cAAc,CAACO,MAAM,IAAI;KAAM,EAClG;MAAE/U,KAAK,EAAEV,CAAC,CAAC,qBAAqB,CAAC,IAAI,UAAU;MAAEgG,KAAK,EAAEkP,cAAc,CAACU,QAAQ,IAAI;KAAM,EACzF;MAAElV,KAAK,EAAEV,CAAC,CAAC,eAAe,CAAC,IAAI,UAAU;MAAEgG,KAAK,EAAEkP,cAAc,CAACa,QAAQ,IAAI;KAAM,EACnF;MAAErV,KAAK,EAAEV,CAAC,CAAC,cAAc,CAAC,IAAI,SAAS;MAAEgG,KAAK,EAAEkP,cAAc,CAACe,OAAO,IAAI;KAAU,EACpF;MAAEvV,KAAK,EAAEV,CAAC,CAAC,eAAe,CAAC,IAAI,UAAU;MAAEgG,KAAK,EAAEkP,cAAc,CAACgD,QAAQ,IAAI;KAAuB,EACpG;MAAExX,KAAK,EAAEV,CAAC,CAAC,WAAW,CAAC,IAAI,MAAM;MAAEgG,KAAK,EAAEkP,cAAc,CAACkD,IAAI,IAAI;KAAuB;GAE3F,CAAC,eAEFhY,cAAA,CAAAC,aAAA;IAAI6D,KAAK,EAAE;MAAEuD,MAAM,EAAE,QAAQ;MAAEH,MAAM,EAAE,CAAC;MAAEuV,SAAS,EAAE;;GAAwB,CAAC,eAG9Ezc,cAAA,CAAAC,aAAA,CAAC2T,aAAW;IACVZ,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACiiB,cAAY;MAACnQ,IAAI,EAAE;KAAK,CAAE;IACjCzR,KAAK,EAAEV,CAAC,CAAC,oBAAoB,CAAC,IAAI;GACnC,CAAC,eAEFI,cAAA,CAAAC,aAAA,CAACslB,UAAU;IACTvS,IAAI,eAAEhT,cAAA,CAAAC,aAAA,CAACiiB,cAAY;MAACnQ,IAAI,EAAE;KAAK,CAAE;IACjCyT,KAAK,EAAE5lB,CAAC,CAAC,oBAAoB,CAAC,IAAI,kBAAmB;IACrD6lB,MAAM,EAAE8E,kBAAmB;IAC3B7E,SAAS,EAAE9lB,CAAC,CAAC,gBAAgB,CAAC,IAAI,MAAO;IACzC+lB,IAAI,EAAE,CACJ;MAAErlB,KAAK,EAAEV,CAAC,CAAC,qBAAqB,CAAC,IAAI,gBAAgB;MAAEgG,KAAK,EAAE4e,eAAe,CAACjB,SAAS,IAAI;KAAS,EACpG;MAAEjjB,KAAK,EAAEV,CAAC,CAAC,iBAAiB,CAAC,IAAI,YAAY;MAAEgG,KAAK,EAAE4e,eAAe,CAACf,SAAS,IAAI;KAAM,EACzF;MAAEnjB,KAAK,EAAEV,CAAC,CAAC,yBAAyB,CAAC,IAAI,oBAAoB;MAAEgG,KAAK,EAAE,EAAAmgB,sBAAA,GAAAvB,eAAe,CAACb,kBAAkB,cAAAoC,sBAAA,uBAAlCA,sBAAA,CAAoCzlB,KAAK,KAAI;KAAM,EACzH;MAAEA,KAAK,EAAEV,CAAC,CAAC,0BAA0B,CAAC,IAAI,qBAAqB;MAAEgG,KAAK,EAAE,EAAAogB,sBAAA,GAAAxB,eAAe,CAACtW,cAAc,cAAA8X,sBAAA,uBAA9BA,sBAAA,CAAgC1lB,KAAK,KAAI;KAAM,EACvH;MAAEA,KAAK,EAAEV,CAAC,CAAC,gBAAgB,CAAC,IAAI,WAAW;MAAEgG,KAAK,EAAE,EAAAqgB,sBAAA,GAAAzB,eAAe,CAACV,QAAQ,cAAAmC,sBAAA,uBAAxBA,sBAAA,CAA0B3lB,KAAK,KAAI;KAAM,EAC7F;MAAEA,KAAK,EAAEV,CAAC,CAAC,mBAAmB,CAAC,IAAI,eAAe;MAAEgG,KAAK,EAAE,EAAAsgB,sBAAA,GAAA1B,eAAe,CAACR,UAAU,cAAAkC,sBAAA,uBAA1BA,sBAAA,CAA4B5lB,KAAK,KAAI;KAAM;GAEzG,CAEE,CAAC,eAGNN,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MAAEiD,SAAS,EAAE;;kBACvB/G,cAAA,CAAAC,aAAA,CAACmH,gCAAS;IACR9G,KAAK,EAAE6lB,YAAY,GACdvmB,CAAC,CAAC,iBAAiB,CAAC,IAAI,eAAe,GACvCA,CAAC,CAAC,kBAAkB,CAAC,IAAI,QAC7B;IACDkG,QAAQ,EAAE8C,YAAa;IACvB+T,QAAQ,EAAEwJ;GACX,CACE,CAAC,eAGNnmB,cAAA,CAAAC,aAAA;IAAK6D,KAAK,EAAE;MACVG,OAAO,EAAE,MAAM;MAAEC,UAAU,EAAE,QAAQ;MAAE4C,cAAc,EAAE,QAAQ;MAC/DR,GAAG,EAAE,KAAK;MAAES,SAAS,EAAE,MAAM;MAC7BnC,QAAQ,EAAE,MAAM;MAAEN,KAAK,EAAE;;kBAEzBtE,cAAA,CAAAC,aAAA;IAAKwE,KAAK,EAAC,IAAI;IAACC,MAAM,EAAC,IAAI;IAACsN,OAAO,EAAC,WAAW;IAACC,IAAI,EAAC,MAAM;IAACO,MAAM,EAAC,cAAc;IAACC,WAAW,EAAC,GAAG;IAACC,aAAa,EAAC;kBAC9G1S,cAAA,CAAAC,aAAA;IAAMwd,CAAC,EAAC,GAAG;IAACC,CAAC,EAAC,IAAI;IAACjZ,KAAK,EAAC,IAAI;IAACC,MAAM,EAAC,IAAI;IAACiZ,EAAE,EAAC;GAAK,CAAC,eACnD3d,cAAA,CAAAC,aAAA;IAAMiS,CAAC,EAAC;GAA4B,CACjC,CAAC,EACLtS,CAAC,CAAC,yBAAyB,CAAC,IAAI,mCAC9B,CAED,CACH,CACF,CAAC,EAGLymB,KAAK,iBACJrmB,cAAA,CAAAC,aAAA,CAAC8Q,4BAAK;IACJzQ,KAAK,EAAE+lB,KAAK,CAAC5V,OAAQ;IACrBX,KAAK,EAAEuW,KAAK,CAACthB,IAAI,KAAK,OAAQ;IAC9BylB,OAAO,EAAEnE,KAAK,CAACthB,IAAI,KAAK,SAAU;IAClCkE,OAAO,EAAEA,MAAMqd,QAAQ,CAAC,IAAI;GAC7B,CAEO,CAAC;AAEf,CAAC;;AC5aD,MAAMmE,WAAW,GAAG9pB,IAAA,IAAc;EAAA,IAAb;IAAEqM;GAAM,GAAArM,IAAA;EACzB,MAAM;IAAEf;GAAG,GAAGC,2BAAc,EAAE;EAC9B,MAAM4U,QAAQ,GAAGC,0BAAW,EAAE;EAE9BrF,cAAc,CAACqB,UAAU,CAAC,iBAAiB,CAAC;EAE5C,MAAMga,kBAAkB,GAAGA,MAAM;IAC7B,MAAMC,QAAQ,GAAGlW,QAAQ,CAACkW,QAAQ;IAClC,IAAIA,QAAQ,CAACjd,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,iBAAiB;IAC7D,IAAIid,QAAQ,CAACjd,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,iBAAiB;IAC9D,IAAIid,QAAQ,CAACjd,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,gBAAgB;IAC5D,IAAIid,QAAQ,CAACjd,QAAQ,CAAC,uBAAuB,CAAC,EAAE,OAAO,2BAA2B;IAClF,IAAIid,QAAQ,CAACjd,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,sBAAsB;IACxE,IAAIid,QAAQ,CAACjd,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,oBAAoB;IACpE,IAAIid,QAAQ,CAACjd,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,aAAa;IACtD,OAAO,iBAAiB;GAC3B;EAED,MAAMkd,WAAW,GAAG,CAChB;IAAE5X,IAAI,EAAExO,+BAAQ;IAAEwI,IAAI,EAAE;GAAsB,EAC9C;IAAE1M,KAAK,EAAEV,CAAC,CAAC8qB,kBAAkB,EAAE;GAAG,CACrC;EAED,oBACI1qB,cAAA,CAAAC,aAAA,CAAC4qB,mCAAY,qBACT7qB,cAAA,CAAAC,aAAA;IAAKY,SAAS,EAAC;kBACXb,cAAA,CAAAC,aAAA,CAAC6qB,mCAAY;IACTC,WAAW,eACP/qB,cAAA,CAAAC,aAAA,CAACD,cAAK,CAAC6N,QAAQ,qBACX7N,cAAA,CAAAC,aAAA,CAAC+qB,gCAAS;MAACnqB,SAAS,EAAC;KAAQ,CAAC,QAElB,CACnB;IACDoqB,WAAW,EAAEA,MAAMC,MAAM,CAACpe,OAAO,CAACqe,IAAI,EAAG;IACzCP,WAAW,EAAEA;GAChB,CAAC,eAEF5qB,cAAA,CAAAC,aAAA,CAACmrB,qBAAM,qBACHprB,cAAA,CAAAC,aAAA,CAACorB,mCAAY;IACTre,IAAI,EAAE,GAAGA,IAAI,YAAa;IAC1Bse,SAAS,EAAEA,mBACPtrB,cAAA,CAAAC,aAAA,CAACuJ,KAAK;MACF3H,WAAW,EAAEmL,IAAK;MAClBrD,eAAe,EAAC,MAAM;MACtB3E,UAAU,EAAC,MAAM;MACjB6E,OAAO,EAAE;KACZ;GAER,CAAC,eAEF7J,cAAA,CAAAC,aAAA,CAACorB,mCAAY;IACTre,IAAI,EAAE,GAAGA,IAAI,aAAc;IAC3Bse,SAAS,EAAEA,mBAAMtrB,cAAA,CAAAC,aAAA,CAACkP,MAAM,MAAE;GAC7B,CAAC,eAEFnP,cAAA,CAAAC,aAAA,CAACorB,mCAAY;IACTre,IAAI,EAAE,GAAGA,IAAI,uBAAwB;IACrCse,SAAS,EAAEA,mBAAMtrB,cAAA,CAAAC,aAAA,CAAC4e,mBAAmB,MAAE;GAC1C,CAAC,eAEF7e,cAAA,CAAAC,aAAA,CAACorB,mCAAY;IACTre,IAAI,EAAE,GAAGA,IAAI,kBAAmB;IAChCse,SAAS,EAAEA,mBAAMtrB,cAAA,CAAAC,aAAA,CAAC8T,cAAc,MAAE;GACrC,CAAC,eAEF/T,cAAA,CAAAC,aAAA,CAACorB,mCAAY;IACTre,IAAI,EAAE,GAAGA,IAAI,gBAAiB;IAC9Bse,SAAS,EAAEA,mBAAMtrB,cAAA,CAAAC,aAAA,CAACqiB,YAAY,MAAE;GACnC,CAAC,eAEFtiB,cAAA,CAAAC,aAAA,CAACorB,mCAAY;IACTre,IAAI,EAAE,GAAGA,IAAI,SAAU;IACvBse,SAAS,EAAEA,mBAAMtrB,cAAA,CAAAC,aAAA,CAAC6lB,MAAM,MAAE;GAC7B,CAAC,eAEF9lB,cAAA,CAAAC,aAAA,CAACorB,mCAAY;IACTre,IAAI,EAAE,GAAGA,IAAI,GAAI;IACjBse,SAAS,EAAEA,mBACPtrB,cAAA,CAAAC,aAAA,CAACuJ,KAAK;MACF3H,WAAW,EAAEmL,IAAK;MAClBrD,eAAe,EAAC,MAAM;MACtB3E,UAAU,EAAC,MAAM;MACjB6E,OAAO,EAAE;KACZ;GAER,CACG,CACP,CACK,CAAC;AAEvB,CAAC;;MC5FY0hB,UAAU,GAAG5qB,IAAA,IAAsC;EAAA,IAArC;IAAE6qB,SAAS;IAAE1H,QAAQ;IAAE2H;GAAS,GAAA9qB,IAAA;EACvD,MAAM;IAAEqM,IAAI;IAAE2c;GAAK,GAAG1c,4BAAa,EAAE;EACrC,MAAMjI,UAAU,GAAG,MAAM;EACzB,MAAM+jB,QAAQ,GAAGxmB,KAAK,CAACmpB,SAAS,CAACC,kBAAkB,EAAE;EACrD,MAAM;IAAErqB,SAAS;IAAED,IAAI,EAAEuqB;GAAO,GAAGrpB,KAAK,CAACspB,QAAQ,CAACC,QAAQ,CAAC;IAAEN,SAAS;IAAExmB,UAAU;IAAE+jB;GAAU,CAAC;EAC/FxmB,KAAK,CAACwpB,cAAc,CAACC,GAAG,CAAC,cAAc,EAAEP,OAAO,CAAC;EAEjD,IAAInqB,SAAS,EAAE;IACX,OAAO,IAAI;;EAEf,IAAIwiB,QAAQ,KAAK,UAAU,EAAE;IACzB,oBAAO9jB,cAAA,CAAAC,aAAA,CAACwqB,WAAW;MAACzd,IAAI,EAAEA,IAAK;MAAC2c,GAAG,EAAEA,GAAI;MAAC7F,QAAQ,EAAEA,QAAS;MAAC2H,OAAO,EAAEA;KAAU,CAAC;GACrF,MAAM,OAAO,IAAI;AACtB,CAAC;AAED,MAAMQ,oBAAoB,GAAG;EACzBC,UAAU,EAAEX,UAAU;EACtB5rB,QAAQ;EACRwsB,SAAS,EAAE3iB,KAAK;EAChB4iB,gBAAgB,EAAEnrB,YAAY;EAC9BorB,eAAe,EAAE/kB,WAAW;EAC5BglB,iBAAiB,EAAGlrB,KAAK,iBAAKpB,cAAA,CAAAC,aAAA,CAACoI,MAAM,EAAKjH,KAAQ;AACtD,CAAC;AAED,MAAamrB,kBAAkB,GAAGA,MAAM;EACpCC,MAAM,CAACC,OAAO,CAACR,oBAAoB,CAAC,CAACS,OAAO,CAAC3pB,KAAA,IAAkB;IAAA,IAAjB,CAAC4C,GAAG,EAAEC,KAAK,CAAC,GAAA7C,KAAA;IACtDR,KAAK,CAACC,wBAAwB,CAACmqB,YAAY,CAAChnB,GAAG,EAAEC,KAAK,CAAC;GAC1D,CAAC;AACN,CAAC;;;;;;"}
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/Review.js","../src/pages/employee/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 }\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 const chartRef2 = useRef(null);\n const chartInstance2 = useRef(null);\n\n const total = countData?.total || 0;\n const pending = countData?.pending || 0;\n const active = countData?.completed || 0; // Showing completed data as active\n const completed = 0; // Forced to 0\n const rejected = countData?.rejected || 0;\n\n const actualCompleted = countData?.completed || 0;\n const applied = total;\n const approved = actualCompleted;\n\n const efficiency = total > 0 ? Math.round((actualCompleted / total) * 100) : 0;\n\n useEffect(() => {\n // Chart 1: Status Breakdown\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_COMPLETED\"), t(\"EKYC_PENDING\")],\n datasets: [{\n data: [active, completed, pending],\n backgroundColor: [\"#1a3a6b\", \"#77B6EA\", \"#3d84ed\"],\n borderColor: [\"#ffffff\", \"#ffffff\", \"#ffffff\"],\n borderWidth: 2,\n hoverOffset: 4,\n }],\n },\n options: {\n cutout: \"75%\",\n plugins: { legend: { display: false } },\n maintainAspectRatio: true,\n responsive: true,\n aspectRatio: 1,\n },\n });\n }\n\n // Chart 2: Applied vs Approved\n if (chartRef2.current) {\n if (chartInstance2.current) chartInstance2.current.destroy();\n const ctx2 = chartRef2.current.getContext(\"2d\");\n chartInstance2.current = new Chart(ctx2, {\n type: \"doughnut\",\n data: {\n labels: [t(\"EKYC_APPROVED\"), t(\"EKYC_OTHERS\")],\n datasets: [{\n data: [approved, Math.max(0, applied - approved)],\n backgroundColor: [\"#219653\", \"#E0E0E0\"],\n borderColor: [\"#ffffff\", \"#ffffff\"],\n borderWidth: 2,\n hoverOffset: 4,\n }],\n },\n options: {\n cutout: \"75%\",\n plugins: { legend: { display: false } },\n maintainAspectRatio: true,\n responsive: true,\n aspectRatio: 1,\n },\n });\n }\n\n return () => {\n if (chartInstance1.current) chartInstance1.current.destroy();\n if (chartInstance2.current) chartInstance2.current.destroy();\n };\n }, [pending, completed, active, applied, approved, t]);\n\n const formatNumber = (num) => {\n return new Intl.NumberFormat(\"en-IN\").format(num || 0);\n };\n\n return (\n <div style={{ fontFamily: \"'Segoe UI', sans-serif\", width: \"100%\" }}>\n <div style={{ display: \"flex\", justifyContent: \"space-between\", alignItems: \"flex-start\", flexWrap: \"wrap\", gap: \"24px\" }}>\n\n {/* Statistics Section */}\n <div style={{ flex: \"1\", minWidth: \"250px\" }}>\n <div style={{ fontSize: \"11px\", fontWeight: \"700\", color: \"#888\", letterSpacing: \"1px\", marginBottom: \"16px\", textTransform: \"uppercase\" }}>\n {t(\"EKYC_DASHBOARD_METRICS\") || \"DASHBOARD METRICS\"}\n </div>\n\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: \"12px\" }}>\n {/* Active */}\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"10px\" }}>\n <span style={{ width: \"12px\", height: \"12px\", borderRadius: \"50%\", backgroundColor: \"#1a3a6b\", flexShrink: 0 }} />\n <span style={{ fontSize: \"14px\", color: \"#333\" }}>\n {t(\"EKYC_ACTIVE\")}: <strong style={{ color: \"#1a3a6b\" }}>{formatNumber(active)}</strong>\n </span>\n </div>\n\n {/* Pending */}\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"10px\" }}>\n <span style={{ width: \"12px\", height: \"12px\", borderRadius: \"50%\", backgroundColor: \"#3d84ed\", flexShrink: 0 }} />\n <span style={{ fontSize: \"14px\", color: \"#333\" }}>\n {t(\"EKYC_PENDING\")}: <strong style={{ color: \"#1a3a6b\" }}>{formatNumber(pending)}</strong>\n </span>\n </div>\n\n {/* Completed */}\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"10px\" }}>\n <span style={{ width: \"12px\", height: \"12px\", borderRadius: \"50%\", backgroundColor: \"#77B6EA\", flexShrink: 0 }} />\n <span style={{ fontSize: \"14px\", color: \"#333\" }}>\n {t(\"EKYC_COMPLETED\")}: <strong style={{ color: \"#1a3a6b\" }}>{formatNumber(completed)}</strong>\n </span>\n </div>\n\n {/* Total Section */}\n <div style={{ marginTop: \"20px\", padding: \"16px\", background: \"#f8faff\", borderRadius: \"8px\", border: \"1px solid #eef2f6\" }}>\n <div style={{ fontSize: \"32px\", fontWeight: \"800\", color: \"#1a3a6b\", lineHeight: 1 }}>\n {formatNumber(total)}\n </div>\n <div style={{ fontSize: \"12px\", color: \"#667085\", marginTop: \"4px\", fontWeight: \"600\" }}>\n {t(\"EKYC_TOTAL_APPLICATIONS\") || \"Total Applications Applied\"}\n </div>\n </div>\n </div>\n </div>\n\n {/* Visualizations Section */}\n <div style={{ display: \"flex\", gap: \"32px\", alignItems: \"center\", justifyContent: \"flex-end\", flexWrap: \"wrap\" }}>\n\n {/* Chart 1: Status Breakdown */}\n <div style={{ textAlign: \"center\" }}>\n <div style={{ width: \"140px\", height: \"140px\", position: \"relative\" }}>\n <canvas ref={chartRef1} />\n <div style={{ position: \"absolute\", top: \"50%\", left: \"50%\", transform: \"translate(-50%, -50%)\", textAlign: \"center\", pointerEvents: \"none\", width: \"100%\" }}>\n {/* <div style={{ fontSize: \"16px\", fontWeight: \"800\", color: \"#1a3a6b\", lineHeight: 1.2 }}>\n {formatNumber(active)} / {formatNumber(total)}\n </div> */}\n <div style={{ fontSize: \"9px\", color: \"#667085\", fontWeight: \"700\", marginTop: \"4px\" }}>\n {efficiency}%\n </div>\n </div>\n </div>\n <div style={{ marginTop: \"8px\", fontSize: \"11px\", fontWeight: \"700\", color: \"#888\", textTransform: \"uppercase\" }}>{t(\"EKYC_STATUS_BREAKDOWN\")}</div>\n </div>\n\n {/* Chart 2: Applied vs Approved */}\n <div style={{ textAlign: \"center\" }}>\n <div style={{ width: \"140px\", height: \"140px\", position: \"relative\" }}>\n <canvas ref={chartRef2} />\n <div style={{ position: \"absolute\", top: \"50%\", left: \"50%\", transform: \"translate(-50%, -50%)\", textAlign: \"center\", pointerEvents: \"none\", width: \"100%\" }}>\n {/* <div style={{ fontSize: \"16px\", fontWeight: \"800\", color: \"#219653\", lineHeight: 1.2 }}>\n {formatNumber(approved)} / {formatNumber(applied)}\n </div> */}\n <div style={{ fontSize: \"9px\", color: \"#667085\", fontWeight: \"700\", marginTop: \"4px\" }}>\n {total > 0 ? Math.round((approved / total) * 100) : 0}%\n </div>\n </div>\n </div>\n <div style={{ marginTop: \"8px\", fontSize: \"11px\", fontWeight: \"700\", color: \"#888\", textTransform: \"uppercase\" }}>{t(\"EKYC_SUBMISSION_HEALTH\")}</div>\n </div>\n\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=\"ground-container employee-app-container form-container\">\n <div className=\"inbox-container\" style={{ paddingBottom: \"16px\" }}>\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 </div>\n );\n};\n\nexport default DesktopInbox;\n","import React, { useState, Fragment } from \"react\";\nimport { TextInput, Card, SubmitBar, Header, HomeIcon } from \"@djb25/digit-ui-react-components\";\nimport { useTranslation } from \"react-i18next\";\nimport StatusCards from \"./StatusCards\";\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=\"inbox-container\">\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_CREATE_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 {/* <Card className=\"ekyc-metrics-card\" style={{ marginBottom: \"16px\", padding: \"16px\" }}>\n <StatusCards countData={props.countData} />\n </Card> */}\n\n <Card\n className=\"ekyc-search-card\"\n style={{ padding: \"24px\", marginBottom: \"24px\", borderRadius: \"12px\", boxShadow: \"0 4px 12px rgba(0,0,0,0.05)\" }}\n >\n <Header style={{ fontSize: \"24px\", marginBottom: \"20px\", fontWeight: \"700\", color: \"#0B0C0C\" }}>{t(\"EKYC_SEARCH_CONSUMER_HEADER\")}</Header>\n <form onSubmit={onSubmit}>\n <div style={{ display: \"flex\", gap: \"24px\", alignItems: \"flex-end\", flexWrap: \"wrap\" }}>\n <div style={{ flex: \"1\", minWidth: \"250px\" }}>\n <div className=\"filter-label\" style={{ fontWeight: \"600\", marginBottom: \"8px\", fontSize: \"14px\", color: \"#505A5F\" }}>\n {t(\"EKYC_K_NUMBER\")}\n </div>\n <div style={{ position: \"relative\" }}>\n <TextInput\n value={_searchParams?.kNumber}\n onChange={(e) => onChange(\"kNumber\", e.target.value)}\n placeholder={t(\"EKYC_K_NUMBER_PLACEHOLDER\")}\n style={{ borderRadius: \"8px\", paddingLeft: \"12px\", height: \"44px\" }}\n />\n </div>\n </div>\n\n <div style={{ flex: \"1\", minWidth: \"250px\" }}>\n <div className=\"filter-label\" style={{ fontWeight: \"600\", marginBottom: \"8px\", fontSize: \"14px\", color: \"#505A5F\" }}>\n {t(\"EKYC_K_NAME\")}\n </div>\n <div style={{ position: \"relative\" }}>\n <TextInput\n value={_searchParams?.kName}\n onChange={(e) => onChange(\"kName\", e.target.value)}\n placeholder={t(\"EKYC_K_NAME_PLACEHOLDER\")}\n style={{ borderRadius: \"8px\", paddingLeft: \"12px\", height: \"44px\" }}\n />\n </div>\n </div>\n </div>\n <div style={{ display: \"flex\", justifyContent: \"flex-end\", marginTop: \"20px\" }}>\n <div style={{ display: \"flex\", gap: \"12px\", alignItems: \"center\" }}>\n <button\n type=\"button\"\n onClick={onClear}\n style={{\n background: \"none\",\n border: \"none\",\n color: \"#0076f3ff\",\n fontWeight: \"600\",\n cursor: \"pointer\",\n fontSize: \"14px\",\n padding: \"10px\",\n }}\n >\n {t(\"ES_COMMON_CLEAR\")}\n </button>\n\n <SubmitBar\n label={t(\"ES_COMMON_SEARCH\")}\n onSubmit={onSubmit}\n style={{\n margin: 0,\n borderRadius: \"8px\",\n height: \"44px\",\n padding: \"0 32px\",\n // ❌ remove this (it breaks alignment)\n // marginTop: \"-55px\"\n }}\n />\n </div>\n </div>\n </form>\n </Card>\n {children}\n </div>\n </div>\n );\n};\n\nexport default SearchConsumer;\n","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 { Card, CardHeader, StatusTable, Row, ActionBar, Modal, RadioButtons, Loader, CardLabel, SubmitBar } 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 = () => {\n setShowModal(true);\n };\n\n const onModalConfirm = () => {\n // Correctly handle redirection from create-kyc or dashboard\n const parentPath = path.includes(\"/create-kyc\") ? path.replace(\"/create-kyc\", \"\") : path.replace(\"/k-details\", \"\");\n history.push(`${parentPath}/aadhaar-verification`, { kNumber, selectedOption, connectionDetails });\n setShowModal(false);\n };\n\n const handleRaiseCorrection = () => {\n console.log(\"Raise Correction clicked\");\n };\n\n if (isLoading) {\n return <Loader />;\n }\n\n if (!connectionDetails) {\n return null;\n }\n\n return (\n <React.Fragment>\n <Card className=\"ekyc-create-card\" style={{ padding: \"24px\" }}>\n <CardHeader>{t(\"EKYC_K_NUMBER_DETAILS\")}</CardHeader>\n <StatusTable>\n <Row label={t(\"EKYC_K_NUMBER\")} text={kNumber || t(\"CS_NA\")} />\n <Row label={t(\"EKYC_K_NAME\")} text={kName || t(\"CS_NA\")} />\n </StatusTable>\n\n <CardHeader style={{ marginTop: \"24px\" }}>{t(\"EKYC_CONNECTION_DETAILS\")}</CardHeader>\n {connectionDetails?.connectionDetails ? (\n <StatusTable>\n <Row label={t(\"EKYC_CONSUMER_NAME\")} text={connectionDetails.connectionDetails.consumerName || t(\"CS_NA\")} />\n <Row label={t(\"EKYC_ADDRESS\")} text={connectionDetails.connectionDetails.address || t(\"CS_NA\")} />\n <Row label={t(\"EKYC_CONNECTION_TYPE\")} text={connectionDetails.connectionDetails.connectionType || t(\"CS_NA\")} />\n <Row label={t(\"EKYC_METER_NO\")} text={connectionDetails.connectionDetails.meterNumber || t(\"CS_NA\")} />\n <Row label={t(\"EKYC_PHONE_NO\")} text={connectionDetails.connectionDetails.phoneNumber || t(\"CS_NA\")} />\n <Row label={t(\"EKYC_EMAIL\")} text={connectionDetails.connectionDetails.email || t(\"CS_NA\")} />\n <Row label={t(\"EKYC_STATUS\")} text={connectionDetails.connectionDetails.statusflag || t(\"CS_NA\")} />\n </StatusTable>\n ) : (\n <CardLabel>{t(\"EKYC_NO_CONNECTION_DETAILS_FOUND\")}</CardLabel>\n )}\n\n <div style={{ display: \"flex\", justifyContent: \"flex-end\", marginTop: \"16px\" }}>\n <SubmitBar label={t(\"EKYC_START_VERIFICATION\")} onSubmit={handleStartVerification} style={{ borderRadius: \"12px\", margin: 0 }} />\n </div>\n {/* <button\n className=\"submit-bar\"\n style={{\n marginLeft: \"10px\",\n background: \"#3A8DCC\",\n border: \"none\",\n color: \"#fff\",\n padding: \"10px 24px\",\n borderRadius: \"12px\",\n fontWeight: \"600\",\n cursor: \"pointer\",\n boxShadow: \"0 2px 4px rgba(0,0,0,0.1)\"\n }}\n onClick={handleRaiseCorrection}\n >\n {t(\"EKYC_RAISE_CORRECTION\")}\n </button> */}\n </Card>\n\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;\n","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 <div class=\"ground-container employee-app-container form-container\">\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 </div>\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_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 < 3 ? \"18px\" : 0 }}>\n {i < 3 && (\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=\"ground-container employee-app-container form-container\">\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_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 < 3 && <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 </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 </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/review\", {\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 <div class=\"ground-container employee-app-container form-container\">\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_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 < 3 ? \"18px\" : 0 }}>\n {i < 3 && (\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 </div>\n );\n};\n\nexport default PropertyInfo;","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 connectionCategory: getSavedData(\"EKYC_TYPE_OF_CONNECTION_DATA\"),\n connectionType: getSavedData(\"EKYC_CONNECTION_CATEGORY_DATA\"),\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 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. 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 };\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 return (\n <div className=\"ground-container employee-app-container form-container\">\n\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_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 < 3 ? \"18px\" : 0,\n }}>\n {i < 3 && (\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 </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 </div>\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\";\nimport Create from \"./Create\";\nimport AadhaarVerification from \"./AadhaarVerification\";\nimport AddressDetails from \"./AddressDetails\";\nimport PropertyInfo from \"./PropertyInfo\";\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(\"/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\">\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}/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}/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 React from \"react\";\nimport { useRouteMatch } from \"react-router-dom\";\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\";\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 null;\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};\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","chartRef2","chartInstance2","total","pending","active","completed","actualCompleted","applied","approved","efficiency","Math","round","useEffect","current","destroy","ctx1","getContext","type","data","labels","datasets","backgroundColor","borderColor","borderWidth","hoverOffset","options","cutout","plugins","legend","display","maintainAspectRatio","responsive","aspectRatio","ctx2","max","formatNumber","num","Intl","NumberFormat","format","style","fontFamily","width","justifyContent","alignItems","flexWrap","gap","flex","minWidth","fontSize","fontWeight","color","letterSpacing","marginBottom","textTransform","flexDirection","height","borderRadius","flexShrink","marginTop","padding","background","border","lineHeight","textAlign","position","ref","top","left","transform","pointerEvents","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","className","cursor","onClick","_ref3","_row$original3","citizenName","_ref4","_row$original4","status","tableData","items","paddingBottom","Modal","headerBarMain","headerBarEnd","hideSubmit","popupStyles","maxWidth","popupModuleMianStyles","srcDoc","src","undefined","title","Loader","Card","marginRight","HomeIcon","defaultSearchParams","onFilterChange","moduleCode","marginLeft","Table","getCellProps","cellInfo","SearchConsumer","children","_searchParams","setSearchParams","onChange","key","value","prev","onSubmit","e","preventDefault","onClear","cleared","kNumber","kName","boxShadow","TextInput","target","placeholder","paddingLeft","SubmitBar","margin","MobileInbox","_data$items","mobileData","map","item","mobileNumber","Link","to","length","DetailsCard","serviceRequestIdKey","linkPrefix","split","text","index","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","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","Fragment","CardHeader","StatusTable","Row","address","connectionType","phoneNumber","statusflag","CardLabel","actionSaveLabel","actionSaveOnSubmit","actionCancelLabel","actionCancelOnSubmit","RadioButtons","onSelect","buttonStyle","Create","saved","sessionStorage","getItem","JSON","parse","searchPerformed","setSearchPerformed","showToast","setShowToast","isSearching","error","revalidate","useSearchConnection","details","_error$response","_error$response$data","_error$response$data$","_error$response$data$2","response","Errors","removeItem","params","currentKno","Object","keys","forEach","startsWith","setItem","stringify","closeToast","class","Toast","isDsc","getSavedData","fallback","console","warn","_iteratorSymbol","Symbol","iterator","_asyncIteratorSymbol","asyncIterator","_catch","body","recover","result","then","_finallyRethrows","finalizer","bind","CameraIcon","size","viewBox","fill","d","TargetIcon","PincodeIcon","_ref5","CheckIcon","_ref7","stroke","strokeWidth","strokeLinecap","points","IconInput","_ref8","icon","topAligned","inputStyle","zIndex","opacity","_extends","textInputStyle","paddingRight","SectionHead","_ref9","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","toLowerCase","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","transition","onMouseOver","currentTarget","onMouseOut","borderTopColor","PropertyHouse","minHeight","gridTemplateColumns","test","maxLength","borderTop","val","disabled","UploadFile","extraStyleName","accept","onUpload","onDelete","overflow","alt","maxHeight","objectFit","ActionBar","x","y","rx","success","done","step","i","paddingTop","LockIcon","UserIcon","cx","cy","r","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","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","isFieldModified","currentVal","initialVal","isMutationLoading","useEkycApplicationUpdate","isSubmitting","dataUrlToFile","dataUrl","filename","arr","mime","match","bstr","atob","n","u8arr","Uint8Array","charCodeAt","File","_temp7","_Digit$UserService$ge","_propertyDetails$user","_propertyDetails$noOf","_propertyDetails$conn","_propertyDetails$conn2","requestBody","updateType","propertyDocFileStoreId","buildingImageFileStoreId","parseInt","modifiedBy","userInfo","_err$response","_err$response$data","_err$response$data$Er","_err$response$data$Er2","doorFile","_uploadFile3","photoFile","_uploadFile2","UserService","getUser","_uploadFile","handleEditAadhaar","handleEditAddress","handleEditProperty","EmployeeApp","getBreadcrumbLabel","pathname","breadcrumbs","AppContainer","ModuleHeader","leftContent","ArrowLeft","onLeftClick","window","back","Switch","PrivateRoute","component","EkycModule","stateCode","tenants","language","StoreData","getCurrentLanguage","store","Services","useStore","SessionStorage","set","componentsToRegister","EKYCModule","EKYCInbox","EKYCDesktopInbox","EKYCMobileInbox","EKYC_INBOX_FILTER","initEkycComponents","entries","setComponent"],"mappings":"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"}