diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..25c8e1b --- /dev/null +++ b/.prettierrc @@ -0,0 +1,7 @@ +{ + "semi": true, + "tabWidth": 2, + "printWidth": 100, + "singleQuote": true, + "trailingComma": "es5" +} diff --git a/eslint.config.js b/eslint.config.js index 238d2e4..1a0e96b 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -1,8 +1,10 @@ -import js from '@eslint/js' -import globals from 'globals' -import react from 'eslint-plugin-react' -import reactHooks from 'eslint-plugin-react-hooks' -import reactRefresh from 'eslint-plugin-react-refresh' +import js from '@eslint/js'; +import globals from 'globals'; +import react from 'eslint-plugin-react'; +import reactHooks from 'eslint-plugin-react-hooks'; +import reactRefresh from 'eslint-plugin-react-refresh'; +import prettier from 'eslint-plugin-prettier'; +import prettierConfig from 'eslint-config-prettier'; export default [ { ignores: ['dist'] }, @@ -22,17 +24,17 @@ export default [ react, 'react-hooks': reactHooks, 'react-refresh': reactRefresh, + prettier, }, rules: { ...js.configs.recommended.rules, ...react.configs.recommended.rules, ...react.configs['jsx-runtime'].rules, ...reactHooks.configs.recommended.rules, + ...prettierConfig.rules, 'react/jsx-no-target-blank': 'off', - 'react-refresh/only-export-components': [ - 'warn', - { allowConstantExport: true }, - ], + 'react-refresh/only-export-components': ['warn', { allowConstantExport: true }], + 'prettier/prettier': 'error', }, }, -] +]; diff --git a/package-lock.json b/package-lock.json index f9381cf..09636a1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -28,11 +28,14 @@ "@vitejs/plugin-react": "^4.3.1", "autoprefixer": "^10.4.20", "eslint": "^9.9.0", + "eslint-config-prettier": "^10.1.8", + "eslint-plugin-prettier": "^5.5.4", "eslint-plugin-react": "^7.35.0", "eslint-plugin-react-hooks": "^5.1.0-rc.0", "eslint-plugin-react-refresh": "^0.4.9", "globals": "^15.9.0", "postcss": "^8.4.47", + "prettier": "^3.6.2", "tailwindcss": "^3.4.13", "vite": "^5.4.1" } @@ -1090,6 +1093,19 @@ "node": ">=14" } }, + "node_modules/@pkgr/core": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.2.9.tgz", + "integrity": "sha512-QNqXyfVS2wm9hweSYD2O7F0G06uurj9kZ96TRQE5Y9hU7+tgdZwIkbAKc5Ocy1HxEY2kuDQa6cQ1WRs/O5LFKA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/pkgr" + } + }, "node_modules/@remix-run/router": { "version": "1.19.2", "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.19.2.tgz", @@ -2492,6 +2508,53 @@ } } }, + "node_modules/eslint-config-prettier": { + "version": "10.1.8", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.1.8.tgz", + "integrity": "sha512-82GZUjRS0p/jganf6q1rEO25VSoHH0hKPCTrgillPjdI/3bgBhAE1QzHrHTizjpRvy6pGAvKjDJtk2pF9NDq8w==", + "dev": true, + "license": "MIT", + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "funding": { + "url": "https://opencollective.com/eslint-config-prettier" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-plugin-prettier": { + "version": "5.5.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.5.4.tgz", + "integrity": "sha512-swNtI95SToIz05YINMA6Ox5R057IMAmWZ26GqPxusAp1TZzj+IdY9tXNWWD3vkF/wEqydCONcwjTFpxybBqZsg==", + "dev": true, + "license": "MIT", + "dependencies": { + "prettier-linter-helpers": "^1.0.0", + "synckit": "^0.11.7" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint-plugin-prettier" + }, + "peerDependencies": { + "@types/eslint": ">=8.0.0", + "eslint": ">=8.0.0", + "eslint-config-prettier": ">= 7.0.0 <10.0.0 || >=10.1.0", + "prettier": ">=3.0.0" + }, + "peerDependenciesMeta": { + "@types/eslint": { + "optional": true + }, + "eslint-config-prettier": { + "optional": true + } + } + }, "node_modules/eslint-plugin-react": { "version": "7.37.0", "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.0.tgz", @@ -2738,6 +2801,13 @@ "dev": true, "license": "MIT" }, + "node_modules/fast-diff": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", + "dev": true, + "license": "Apache-2.0" + }, "node_modules/fast-glob": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", @@ -4655,6 +4725,35 @@ "node": ">= 0.8.0" } }, + "node_modules/prettier": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.6.2.tgz", + "integrity": "sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==", + "dev": true, + "license": "MIT", + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-diff": "^1.1.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/prop-types": { "version": "15.8.1", "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", @@ -5371,6 +5470,22 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/synckit": { + "version": "0.11.11", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.11.11.tgz", + "integrity": "sha512-MeQTA1r0litLUf0Rp/iisCaL8761lKAZHaimlbGK4j0HysC4PLfqygQj9srcs0m2RdtDYnF8UuYyKpbjHYp7Jw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@pkgr/core": "^0.2.9" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/synckit" + } + }, "node_modules/tailwindcss": { "version": "3.4.13", "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.13.tgz", diff --git a/package.json b/package.json index ae9f08e..ac976d1 100644 --- a/package.json +++ b/package.json @@ -7,6 +7,7 @@ "dev": "vite", "build": "vite build", "lint": "eslint .", + "format": "prettier --write .", "preview": "vite preview" }, "dependencies": { @@ -30,11 +31,14 @@ "@vitejs/plugin-react": "^4.3.1", "autoprefixer": "^10.4.20", "eslint": "^9.9.0", + "eslint-config-prettier": "^10.1.8", + "eslint-plugin-prettier": "^5.5.4", "eslint-plugin-react": "^7.35.0", "eslint-plugin-react-hooks": "^5.1.0-rc.0", "eslint-plugin-react-refresh": "^0.4.9", "globals": "^15.9.0", "postcss": "^8.4.47", + "prettier": "^3.6.2", "tailwindcss": "^3.4.13", "vite": "^5.4.1" } diff --git a/postcss.config.js b/postcss.config.js index 2e7af2b..2aa7205 100644 --- a/postcss.config.js +++ b/postcss.config.js @@ -3,4 +3,4 @@ export default { tailwindcss: {}, autoprefixer: {}, }, -} +}; diff --git a/public/locales/bn/translation.json b/public/locales/bn/translation.json index 005f663..9dd4b8c 100644 --- a/public/locales/bn/translation.json +++ b/public/locales/bn/translation.json @@ -1,54 +1,54 @@ { - "appName": "সমন্বিত PACS কিষাণ সমাধান", - "username": "ব্যবহারকারীর নাম", - "pacsName": "PACS নাম", - "userType": "ব্যবহারকারীর ধরন", - "moduleName": "মডিউলের নাম", - "date": "তারিখ", - "home": "হোম", - "moduleList": "মডিউল তালিকা", - "enquiry": "অনুসন্ধান", - "lockerOperation": "লকার অপারেশন", - "reports": "রিপোর্ট", - "worklist": "কাজের", - "userManagement": "ব্যবহারকারী ব্যবস্থাপনা", - "logout": "প্রস্থান", - "kcc": "কেসিসি", - "trading": "বাণিজ্য", - "asset": "সম্পদ", - "locker": "লকার", - "pacsTeller": "PACS টেলার", - "authoriser": "অনুমোদনকারী", - "cashOfficer": "নগদ কর্মকর্তা", - "selfHelpGroup": "স্বনির্ভর গোষ্ঠী", - "deposit": "আমানত", - "loan": "ঋণ", - "share": "শেয়ার", - "lockerEnquiry": "লকার অনুসন্ধান", - "accountEnquiry": "অ্যাকাউন্ট অনুসন্ধান", - "accountCreation": "অ্যাকাউন্ট তৈরি", - "cabinetMaintenance": "ক্যাবিনেট রক্ষণাবেক্ষণ", - "lockerMaintenance": "লকার রক্ষণাবেক্ষণ", - "rentPenaltyCollection": "ভাড়া / জরিমানা সংগ্রহ", - "chargeManagement": "চার্জ ব্যবস্থাপনা", - "checkInOutManagement": "চেক ইন/আউট ব্যবস্থাপনা", - "accountSurrender": "অ্যাকাউন্ট সমর্পণ", - "myIntimation": "আমার বিজ্ঞপ্তি", - "changePassword": "পাসওয়ার্ড পরিবর্তন", - "resetLogin": "লগইন স্ট্যাটাস রিসেট করুন", - "currentDate" : "{{val, datetime}}", - "notifications": "বিজ্ঞপ্তি", - "holidayList": "ছুটির তালিকা", - "information": "তথ্য", - "hpn_complete_before_31": "অনুগ্রহ করে ৩১শে মার্চের সমস্ত লেনদেন ২১:00 ঘটিকার আগে সম্পন্ন করুন", - "hpn_npa": "আগামী ৩১শে মার্চ ২১:00 ঘটিকার আগে ঋণ এনপিএ রিপোর্ট থেকে প্রস্তাবিত এনপিএ স্থিতি যাচাই করার পরে প্রযোজ্য ঋণ অ্যাকাউন্টের জন্য এনপিএ চিহ্নিত/অচিহ্নিত করুন", - "hpn_helpdesk_contact": "ফোনে সমস্যার সমাধানের জন্য আমাদের সাথে যোগাযোগ করুন 033-4065-9546 / 4071-8135 (সকাল ৯:00 থেকে রাত ৯:00 পর্যন্ত)", - "hpn_rupay_kcc_time": "সমস্ত রূপে কিসান ক্রেডিট কার্ড লেনদেন ১৯:00 ঘটিকার আগে সম্পন্ন করুন", - "hpn_rupay_kcc_atm": "কিছু অভ্যন্তরীণ পরিবর্তনের কারণে, মাইক্রো-এটিএম এর মাধ্যমে রূপে কিসান ক্রেডিট কার্ড কার্যক্রম বন্ধ করা হয়েছে। সেবা আগামীকাল থেকে পুনরায় চালু হবে।", - "copyright_statement": "কপিরাইট © ২০২৩, টাটা কনসাল্টেন্সি সার্ভিসেস। সমস্ত অধিকার সংরক্ষিত", - "privacy_policy": "গোপনীয়তা নীতি", - "create": "তৈরি করুন", - "operation": "অপারেশন", - "next": "পরবর্তী", - "select": "নির্বাচন করুন" + "appName": "সমন্বিত PACS কিষাণ সমাধান", + "username": "ব্যবহারকারীর নাম", + "pacsName": "PACS নাম", + "userType": "ব্যবহারকারীর ধরন", + "moduleName": "মডিউলের নাম", + "date": "তারিখ", + "home": "হোম", + "moduleList": "মডিউল তালিকা", + "enquiry": "অনুসন্ধান", + "lockerOperation": "লকার অপারেশন", + "reports": "রিপোর্ট", + "worklist": "কাজের", + "userManagement": "ব্যবহারকারী ব্যবস্থাপনা", + "logout": "প্রস্থান", + "kcc": "কেসিসি", + "trading": "বাণিজ্য", + "asset": "সম্পদ", + "locker": "লকার", + "pacsTeller": "PACS টেলার", + "authoriser": "অনুমোদনকারী", + "cashOfficer": "নগদ কর্মকর্তা", + "selfHelpGroup": "স্বনির্ভর গোষ্ঠী", + "deposit": "আমানত", + "loan": "ঋণ", + "share": "শেয়ার", + "lockerEnquiry": "লকার অনুসন্ধান", + "accountEnquiry": "অ্যাকাউন্ট অনুসন্ধান", + "accountCreation": "অ্যাকাউন্ট তৈরি", + "cabinetMaintenance": "ক্যাবিনেট রক্ষণাবেক্ষণ", + "lockerMaintenance": "লকার রক্ষণাবেক্ষণ", + "rentPenaltyCollection": "ভাড়া / জরিমানা সংগ্রহ", + "chargeManagement": "চার্জ ব্যবস্থাপনা", + "checkInOutManagement": "চেক ইন/আউট ব্যবস্থাপনা", + "accountSurrender": "অ্যাকাউন্ট সমর্পণ", + "myIntimation": "আমার বিজ্ঞপ্তি", + "changePassword": "পাসওয়ার্ড পরিবর্তন", + "resetLogin": "লগইন স্ট্যাটাস রিসেট করুন", + "currentDate": "{{val, datetime}}", + "notifications": "বিজ্ঞপ্তি", + "holidayList": "ছুটির তালিকা", + "information": "তথ্য", + "hpn_complete_before_31": "অনুগ্রহ করে ৩১শে মার্চের সমস্ত লেনদেন ২১:00 ঘটিকার আগে সম্পন্ন করুন", + "hpn_npa": "আগামী ৩১শে মার্চ ২১:00 ঘটিকার আগে ঋণ এনপিএ রিপোর্ট থেকে প্রস্তাবিত এনপিএ স্থিতি যাচাই করার পরে প্রযোজ্য ঋণ অ্যাকাউন্টের জন্য এনপিএ চিহ্নিত/অচিহ্নিত করুন", + "hpn_helpdesk_contact": "ফোনে সমস্যার সমাধানের জন্য আমাদের সাথে যোগাযোগ করুন 033-4065-9546 / 4071-8135 (সকাল ৯:00 থেকে রাত ৯:00 পর্যন্ত)", + "hpn_rupay_kcc_time": "সমস্ত রূপে কিসান ক্রেডিট কার্ড লেনদেন ১৯:00 ঘটিকার আগে সম্পন্ন করুন", + "hpn_rupay_kcc_atm": "কিছু অভ্যন্তরীণ পরিবর্তনের কারণে, মাইক্রো-এটিএম এর মাধ্যমে রূপে কিসান ক্রেডিট কার্ড কার্যক্রম বন্ধ করা হয়েছে। সেবা আগামীকাল থেকে পুনরায় চালু হবে।", + "copyright_statement": "কপিরাইট © ২০২৩, টাটা কনসাল্টেন্সি সার্ভিসেস। সমস্ত অধিকার সংরক্ষিত", + "privacy_policy": "গোপনীয়তা নীতি", + "create": "তৈরি করুন", + "operation": "অপারেশন", + "next": "পরবর্তী", + "select": "নির্বাচন করুন" } diff --git a/public/locales/en/translation.json b/public/locales/en/translation.json index a5bae49..a3212d7 100644 --- a/public/locales/en/translation.json +++ b/public/locales/en/translation.json @@ -1,83 +1,83 @@ { - "appName": "Integrated PACS Kisan Solution", - "username": "Username", - "pacsName": "PACS Name", - "userType": "User Type", - "moduleName": "Module Name", - "languageSelect": "Language", - "date": "Date", - "home": "Home", - "moduleList": "Module List", - "enquiry": "Enquiry", - "lockerOperation": "Locker Operation", - "reports": "Reports", - "worklist": "Worklist", - "userManagement": "User Management", - "logout": "Logout", - "kcc": "KCCP", - "trading": "Trading", - "asset": "Asset", - "selfHelpGroup": "Self Help Group", - "deposit": "Deposit", - "loan": "Loan", - "share": "Share", - "locker": "Locker", - "pacsTeller": "PACS Teller", - "authoriser": "Authoriser", - "cashOfficer": "Cash Officer", - "lockerEnquiry": "Locker Enquiry", - "accountEnquiry": "Account Enquiry", - "accountCreation": "Account Creation", - "cabinetMaintenance": "Cabinet Maintenance", - "lockerMaintenance": "Locker Maintenance", - "rentPenaltyCollection": "Rent / Penalty Collection", - "chargeManagement": "Charge Management", - "checkInOutManagement": "Check in/out Management", - "accountSurrender": "Account Surrender", - "myIntimation": "My Intimation", - "changePassword": "Change Password", - "resetLogin": "Reset Login Status", - "currentDate" : "{{val, datetime}}", - "notifications": "Notification", - "holidayList": "Holiday List", - "information": "Information", - "hpn_complete_before_31": "Please complete all transactions of 31st March before 21:00 Hrs", - "hpn_npa": "Do Mark/Unmark NPA for applicable loan accounts after verifying suggestive NPA status from loan NPA reports before upcoming 31st March 21:00 Hrs", - "hpn_helpdesk_contact": "For on call issue resolution reach us at 033-4065-9546 / 4071-8135 (9:00 AM to 9:00 PM)", - "hpn_rupay_kcc_time": "Complete all Rupay KCC transactions before 19:00 Hrs", - "hpn_rupay_kcc_atm": "Due to some internal changes, Rupay KCC Operations through Micro-ATM has been stopped. The service will resume starting tomorrow.", - "copyright_statement": "Copyright © 2023, Tata Consultancy Services. All rights reserved", - "privacy_policy": "Privacy Policy", - "create": "Create", - "operation": "Operation", - "next": "Next", - "select": "Select", - "cabinetCreation": "Cabinet Creation", - "cabinetId": "Cabinet ID", - "cabinetKeyId": "Cabinet Key ID", - "noOfLockers": "No of Lockers", - "productCode": "Product Code", - "interestCategory": "Interest Category", - "segmentCode": "Segment Code", - "accountHolderType": "Account Holder Type", - "primaryCifNumber": "Primary CIF Number", - "nomineeCifNumber": "Nominee CIF Number", - "activityCode": "Activity Code", - "customerType": "Customer Type", - "collateralFDAccount": "Collateral FD Account", - "rentPayAccount": "Rent Pay Account", - "submit": "Submit", - "lockerId": "Locker ID", - "status": "Status", - "lockerStatus": "Locker Status", - "open": "Open", - "close": "Close", - "reasonForChange": "Reason for Change", - "oldKeyId": "Old Key ID", - "newKeyId": "New Key ID", - "confirmNewKeyId": "Confirm New Key ID", - "highlightedFieldsInvalid": "Highlighted fields are invalid", - "changeStatus": "Change Status", - "keySwap": "Key Swap", - "chargeEdit": "Edit Charges" -} \ No newline at end of file + "appName": "Integrated PACS Kisan Solution", + "username": "Username", + "pacsName": "PACS Name", + "userType": "User Type", + "moduleName": "Module Name", + "languageSelect": "Language", + "date": "Date", + "home": "Home", + "moduleList": "Module List", + "enquiry": "Enquiry", + "lockerOperation": "Locker Operation", + "reports": "Reports", + "worklist": "Worklist", + "userManagement": "User Management", + "logout": "Logout", + "kcc": "KCCP", + "trading": "Trading", + "asset": "Asset", + "selfHelpGroup": "Self Help Group", + "deposit": "Deposit", + "loan": "Loan", + "share": "Share", + "locker": "Locker", + "pacsTeller": "PACS Teller", + "authoriser": "Authoriser", + "cashOfficer": "Cash Officer", + "lockerEnquiry": "Locker Enquiry", + "accountEnquiry": "Account Enquiry", + "accountCreation": "Account Creation", + "cabinetMaintenance": "Cabinet Maintenance", + "lockerMaintenance": "Locker Maintenance", + "rentPenaltyCollection": "Rent / Penalty Collection", + "chargeManagement": "Charge Management", + "checkInOutManagement": "Check in/out Management", + "accountSurrender": "Account Surrender", + "myIntimation": "My Intimation", + "changePassword": "Change Password", + "resetLogin": "Reset Login Status", + "currentDate": "{{val, datetime}}", + "notifications": "Notification", + "holidayList": "Holiday List", + "information": "Information", + "hpn_complete_before_31": "Please complete all transactions of 31st March before 21:00 Hrs", + "hpn_npa": "Do Mark/Unmark NPA for applicable loan accounts after verifying suggestive NPA status from loan NPA reports before upcoming 31st March 21:00 Hrs", + "hpn_helpdesk_contact": "For on call issue resolution reach us at 033-4065-9546 / 4071-8135 (9:00 AM to 9:00 PM)", + "hpn_rupay_kcc_time": "Complete all Rupay KCC transactions before 19:00 Hrs", + "hpn_rupay_kcc_atm": "Due to some internal changes, Rupay KCC Operations through Micro-ATM has been stopped. The service will resume starting tomorrow.", + "copyright_statement": "Copyright © 2023, Tata Consultancy Services. All rights reserved", + "privacy_policy": "Privacy Policy", + "create": "Create", + "operation": "Operation", + "next": "Next", + "select": "Select", + "cabinetCreation": "Cabinet Creation", + "cabinetId": "Cabinet ID", + "cabinetKeyId": "Cabinet Key ID", + "noOfLockers": "No of Lockers", + "productCode": "Product Code", + "interestCategory": "Interest Category", + "segmentCode": "Segment Code", + "accountHolderType": "Account Holder Type", + "primaryCifNumber": "Primary CIF Number", + "nomineeCifNumber": "Nominee CIF Number", + "activityCode": "Activity Code", + "customerType": "Customer Type", + "collateralFDAccount": "Collateral FD Account", + "rentPayAccount": "Rent Pay Account", + "submit": "Submit", + "lockerId": "Locker ID", + "status": "Status", + "lockerStatus": "Locker Status", + "open": "Open", + "close": "Close", + "reasonForChange": "Reason for Change", + "oldKeyId": "Old Key ID", + "newKeyId": "New Key ID", + "confirmNewKeyId": "Confirm New Key ID", + "highlightedFieldsInvalid": "Highlighted fields are invalid", + "changeStatus": "Change Status", + "keySwap": "Key Swap", + "chargeEdit": "Edit Charges" +} diff --git a/public/locales/hi/translation.json b/public/locales/hi/translation.json index 2e5be0a..2af266e 100644 --- a/public/locales/hi/translation.json +++ b/public/locales/hi/translation.json @@ -1,56 +1,56 @@ { - "appName": "समन्वित PACS किसान समाधान", - "username": "उपयोगकर्ता नाम", - "pacsName": "PACS नाम", - "userType": "उपयोगकर्ता प्रकार", - "moduleName": "मॉड्यूल नाम", - "languageSelect": "भाषा", - "date": "तारीख", - "home": "होम", - "moduleList": "मॉड्यूल सूची", - "enquiry": "पूछताछ", - "lockerOperation": "लॉकर ऑपरेशन", - "reports": "रिपोर्ट", - "worklist": "कार्य सूची", - "userManagement": "उपयोगकर्ता प्रबंधन", - "logout": "लॉगआउट", - "kcc": "केसीसी", - "trading": "व्यापार", - "asset": "संपत्ति", - "selfHelpGroup": "स्वयं सहायता समूह", - "deposit": "जमा", - "loan": "ऋण", - "share": "शेयर", - "locker": "लॉकर", - "pacsTeller": "PACS टेलर", - "authoriser": "PACS अधिकृत", - "cashOfficer": "कैश अधिकारी", - "lockerEnquiry": "लॉकर पूछताछ", - "accountEnquiry": "खाता पूछताछ", - "accountCreation": "खाता निर्माण", - "cabinetMaintenance": "कैबिनेट रखरखाव", - "lockerMaintenance": "लॉकर रखरखाव", - "rentPenaltyCollection": "किराया / जुर्माना संग्रह", - "chargeManagement": "शुल्क प्रबंधन", - "checkInOutManagement": "चेक इन/आउट प्रबंधन", - "accountSurrender": "खाता समर्पण", - "myIntimation": "मेरा सूचितकरण", - "changePassword": "पासवर्ड बदलें", - "resetLogin": "लॉगिन स्थिति रीसेट करें", - "currentDate" : "{{val, datetime}}", - "notifications": "सूचना", - "holidayList": "छुट्टी की सूची", - "information": "जानकारी", - "hpn_complete_before_31": "कृपया 31 मार्च के सभी लेनदेन 21:00 बजे से पहले पूरा करें", - "hpn_npa": "कृपया आगामी 31 मार्च 21:00 बजे से पहले ऋण एनपीए रिपोर्ट से सुझावित एनपीए स्थिति की जांच के बाद संबंधित ऋण खातों के लिए एनपीए को चिह्नित/अचिह्नित करें", - "hpn_helpdesk_contact": "किसी भी समस्या के समाधान के लिए हमें 033-4065-9546 / 4071-8135 (सुबह 9:00 से रात 9:00 बजे तक) पर संपर्क करें", - "hpn_rupay_kcc_time": "सभी रुपे केसीसी लेनदेन 19:00 बजे से पहले पूरा करें", - "hpn_rupay_kcc_atm": "कुछ आंतरिक बदलावों के कारण, माइक्रो-एटीएम के माध्यम से रुपे केसीसी संचालन बंद कर दिया गया है। सेवा कल से फिर से शुरू होगी।", - "copyright_statement": "कॉपीराइट © 2023, टाटा कंसल्टेंसी सर्विसेज। सभी अधिकार सुरक्षित", - "privacy_policy": "गोपनीयता नीति", - "create": "बनाएं", - "operation": "ऑपरेशन", - "next": "अगला", - "select": "चुनें", - "productCode": "प्रोडक्ट कोड" -} \ No newline at end of file + "appName": "समन्वित PACS किसान समाधान", + "username": "उपयोगकर्ता नाम", + "pacsName": "PACS नाम", + "userType": "उपयोगकर्ता प्रकार", + "moduleName": "मॉड्यूल नाम", + "languageSelect": "भाषा", + "date": "तारीख", + "home": "होम", + "moduleList": "मॉड्यूल सूची", + "enquiry": "पूछताछ", + "lockerOperation": "लॉकर ऑपरेशन", + "reports": "रिपोर्ट", + "worklist": "कार्य सूची", + "userManagement": "उपयोगकर्ता प्रबंधन", + "logout": "लॉगआउट", + "kcc": "केसीसी", + "trading": "व्यापार", + "asset": "संपत्ति", + "selfHelpGroup": "स्वयं सहायता समूह", + "deposit": "जमा", + "loan": "ऋण", + "share": "शेयर", + "locker": "लॉकर", + "pacsTeller": "PACS टेलर", + "authoriser": "PACS अधिकृत", + "cashOfficer": "कैश अधिकारी", + "lockerEnquiry": "लॉकर पूछताछ", + "accountEnquiry": "खाता पूछताछ", + "accountCreation": "खाता निर्माण", + "cabinetMaintenance": "कैबिनेट रखरखाव", + "lockerMaintenance": "लॉकर रखरखाव", + "rentPenaltyCollection": "किराया / जुर्माना संग्रह", + "chargeManagement": "शुल्क प्रबंधन", + "checkInOutManagement": "चेक इन/आउट प्रबंधन", + "accountSurrender": "खाता समर्पण", + "myIntimation": "मेरा सूचितकरण", + "changePassword": "पासवर्ड बदलें", + "resetLogin": "लॉगिन स्थिति रीसेट करें", + "currentDate": "{{val, datetime}}", + "notifications": "सूचना", + "holidayList": "छुट्टी की सूची", + "information": "जानकारी", + "hpn_complete_before_31": "कृपया 31 मार्च के सभी लेनदेन 21:00 बजे से पहले पूरा करें", + "hpn_npa": "कृपया आगामी 31 मार्च 21:00 बजे से पहले ऋण एनपीए रिपोर्ट से सुझावित एनपीए स्थिति की जांच के बाद संबंधित ऋण खातों के लिए एनपीए को चिह्नित/अचिह्नित करें", + "hpn_helpdesk_contact": "किसी भी समस्या के समाधान के लिए हमें 033-4065-9546 / 4071-8135 (सुबह 9:00 से रात 9:00 बजे तक) पर संपर्क करें", + "hpn_rupay_kcc_time": "सभी रुपे केसीसी लेनदेन 19:00 बजे से पहले पूरा करें", + "hpn_rupay_kcc_atm": "कुछ आंतरिक बदलावों के कारण, माइक्रो-एटीएम के माध्यम से रुपे केसीसी संचालन बंद कर दिया गया है। सेवा कल से फिर से शुरू होगी।", + "copyright_statement": "कॉपीराइट © 2023, टाटा कंसल्टेंसी सर्विसेज। सभी अधिकार सुरक्षित", + "privacy_policy": "गोपनीयता नीति", + "create": "बनाएं", + "operation": "ऑपरेशन", + "next": "अगला", + "select": "चुनें", + "productCode": "प्रोडक्ट कोड" +} diff --git a/src/App.jsx b/src/App.jsx index 97aa563..4db0f47 100644 --- a/src/App.jsx +++ b/src/App.jsx @@ -1,13 +1,13 @@ -import { useLocation, useOutlet } from "react-router"; -import { useState } from "react"; -import Header from "./components/Header"; -import Footer from "./components/Footer"; -import { AnimatePresence } from "motion/react"; -import { motion } from "motion/react"; -import { ToastProvider } from "./contexts/Toast"; -import { useLoading } from "./hooks/useLoading"; -import LoadingBar from "./components/LoadingBar"; -import { LoadingProvider } from "./contexts/Loading"; +import { useLocation, useOutlet } from 'react-router'; +import { useState } from 'react'; +import Header from './components/Header'; +import Footer from './components/Footer'; +import { AnimatePresence } from 'motion/react'; +import { motion } from 'motion/react'; +import { ToastProvider } from './contexts/Toast'; +import { useLoading } from './hooks/useLoading'; +import LoadingBar from './components/LoadingBar'; +import { LoadingProvider } from './contexts/Loading'; const AnimatedOutlet = () => { const o = useOutlet(); diff --git a/src/components/AppTitle.jsx b/src/components/AppTitle.jsx index bdeff69..bd0af78 100644 --- a/src/components/AppTitle.jsx +++ b/src/components/AppTitle.jsx @@ -3,19 +3,18 @@ import DarkModeToggle from './DarkModeToggle'; import LanguageSelector from './LanguageSelector'; import { useTranslation } from 'react-i18next'; - function AppTitle() { const { t } = useTranslation(); return ( -
-
- IPKS Logo -

{t('appName')}

-
-
- - -
+
+
+ IPKS Logo +

{t('appName')}

+
+
+ + +
); } diff --git a/src/components/BannerInfo.jsx b/src/components/BannerInfo.jsx index 64c2772..d51ec0b 100644 --- a/src/components/BannerInfo.jsx +++ b/src/components/BannerInfo.jsx @@ -1,31 +1,30 @@ -import PropTypes from "prop-types"; -import BannerInfoElement from "./BannerInfoElement"; -import { useTranslation } from "react-i18next"; +import PropTypes from 'prop-types'; +import BannerInfoElement from './BannerInfoElement'; +import { useTranslation } from 'react-i18next'; -function BannerInfo({info}) { - const {t} = useTranslation(); +function BannerInfo({ info }) { + const { t } = useTranslation(); - const infoElements = Object.keys(info).map((key) => ( - - )) - infoElements.push( - - ); - return ( -
- {infoElements} -
- ) + const infoElements = Object.keys(info).map((key) => ( + + )); + infoElements.push( + + ); + return
{infoElements}
; } BannerInfo.propTypes = { - info: PropTypes.object.isRequired -} + info: PropTypes.object.isRequired, +}; -export default BannerInfo; \ No newline at end of file +export default BannerInfo; diff --git a/src/components/BannerInfoElement.jsx b/src/components/BannerInfoElement.jsx index d71b8a5..c0914fe 100644 --- a/src/components/BannerInfoElement.jsx +++ b/src/components/BannerInfoElement.jsx @@ -2,16 +2,16 @@ import PropTypes from 'prop-types'; function BannerInfoElement({ title, description }) { return ( -
-
{title}
-
{description}
+
+
{title}
+
{description}
); } BannerInfoElement.propTypes = { - title: PropTypes.string.isRequired, - description: PropTypes.string.isRequired + title: PropTypes.string.isRequired, + description: PropTypes.string.isRequired, }; -export default BannerInfoElement; \ No newline at end of file +export default BannerInfoElement; diff --git a/src/components/Button.jsx b/src/components/Button.jsx index 516d401..29cce93 100644 --- a/src/components/Button.jsx +++ b/src/components/Button.jsx @@ -2,24 +2,27 @@ import PropTypes from 'prop-types'; import { motion } from 'motion/react'; import clsx from 'clsx'; -function Button({text, onClick, disabled}) { - return ( - - {text} - - ) +function Button({ text, onClick, disabled }) { + return ( + + {text} + + ); } Button.propTypes = { - text: PropTypes.string.isRequired, - onClick: PropTypes.func.isRequired, - disabled: PropTypes.bool, + text: PropTypes.string.isRequired, + onClick: PropTypes.func.isRequired, + disabled: PropTypes.bool, }; export default Button; diff --git a/src/components/DarkModeToggle.jsx b/src/components/DarkModeToggle.jsx index 0f85345..2b1161a 100644 --- a/src/components/DarkModeToggle.jsx +++ b/src/components/DarkModeToggle.jsx @@ -17,7 +17,7 @@ const DarkModeToggle = () => { }, [darkMode]); const toggleDarkMode = () => { - setDarkMode(prevMode => !prevMode); + setDarkMode((prevMode) => !prevMode); }; return ( @@ -31,4 +31,4 @@ const DarkModeToggle = () => { ); }; -export default DarkModeToggle; \ No newline at end of file +export default DarkModeToggle; diff --git a/src/components/FieldError.jsx b/src/components/FieldError.jsx index af6089f..aad4c7a 100644 --- a/src/components/FieldError.jsx +++ b/src/components/FieldError.jsx @@ -1,5 +1,5 @@ -import PropTypes from "prop-types"; -import { motion } from "motion/react"; +import PropTypes from 'prop-types'; +import { motion } from 'motion/react'; function FieldError({ text }) { return ( diff --git a/src/components/FieldsWrapper.jsx b/src/components/FieldsWrapper.jsx index 25b94a4..65b54ff 100644 --- a/src/components/FieldsWrapper.jsx +++ b/src/components/FieldsWrapper.jsx @@ -1,12 +1,12 @@ -import PropTypes from "prop-types"; +import PropTypes from 'prop-types'; -function FieldsWrapper({ children, className = "" }) { +function FieldsWrapper({ children, className = '' }) { return
{children}
; -} +} FieldsWrapper.propTypes = { children: PropTypes.node, - className: PropTypes.string, + className: PropTypes.string, }; export default FieldsWrapper; diff --git a/src/components/Footer.jsx b/src/components/Footer.jsx index c65c942..fe6a383 100644 --- a/src/components/Footer.jsx +++ b/src/components/Footer.jsx @@ -10,4 +10,4 @@ function Footer() { ); } -export default Footer; \ No newline at end of file +export default Footer; diff --git a/src/components/FormBox.jsx b/src/components/FormBox.jsx index a508467..ddf413d 100644 --- a/src/components/FormBox.jsx +++ b/src/components/FormBox.jsx @@ -1,21 +1,21 @@ -import { PropTypes } from "prop-types"; -import clsx from "clsx"; +import { PropTypes } from 'prop-types'; +import clsx from 'clsx'; function FormBox({ title, children, alt = false }) { return (