diff --git a/package-lock.json b/package-lock.json index cd0f660..004c395 100644 --- a/package-lock.json +++ b/package-lock.json @@ -31,6 +31,7 @@ }, "devDependencies": { "@eslint/js": "^9.17.0", + "@types/draft-js": "^0.11.18", "@types/react": "^18.3.17", "@types/react-dom": "^18.3.5", "@types/swiper": "^5.4.3", @@ -1815,6 +1816,17 @@ "integrity": "sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==", "license": "MIT" }, + "node_modules/@types/draft-js": { + "version": "0.11.18", + "resolved": "https://registry.npmjs.org/@types/draft-js/-/draft-js-0.11.18.tgz", + "integrity": "sha512-lP6yJ+EKv5tcG1dflWgDKeezdwBa8wJ7KkiNrrHqXuXhl/VGes1SKjEfKHDZqOz19KQbrAhFvNhDPWwnQXYZGQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/react": "*", + "immutable": "~3.7.4" + } + }, "node_modules/@types/estree": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", @@ -3296,6 +3308,16 @@ "node": ">= 4" } }, + "node_modules/immutable": { + "version": "3.7.6", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-3.7.6.tgz", + "integrity": "sha512-AizQPcaofEtO11RZhPPHBOJRdo/20MKQF9mBLnVkBoyHi1/zXK8fzVdnEpSV9gxqtnh6Qomfp3F0xT5qP/vThw==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", diff --git a/package.json b/package.json index 18cf539..bdbf5d3 100644 --- a/package.json +++ b/package.json @@ -33,6 +33,7 @@ }, "devDependencies": { "@eslint/js": "^9.17.0", + "@types/draft-js": "^0.11.18", "@types/react": "^18.3.17", "@types/react-dom": "^18.3.5", "@types/swiper": "^5.4.3", diff --git a/src/config/Pages.ts b/src/config/Pages.ts index debb072..f52051f 100644 --- a/src/config/Pages.ts +++ b/src/config/Pages.ts @@ -9,6 +9,7 @@ export const Pages = { mine: "/services", other: "/other-service", detail: "/services/detail/", + add: "/services/add", }, transactions: "/transactions", receipts: { diff --git a/src/langs/fa.json b/src/langs/fa.json index db70e0b..a9c0869 100644 --- a/src/langs/fa.json +++ b/src/langs/fa.json @@ -69,7 +69,8 @@ "logout": "خروج" }, "submenu": { - "services_list": "لیست سرویس ها" + "services_list": "لیست سرویس ها", + "add_service": "افزودن سرویس" }, "header": { "search": "جستجو" @@ -118,8 +119,13 @@ "enter_title_comment": "عنوان نظر خود را وارد کنید", "your_comment": "نظر شما", "write_your_comment": "نظر خود را راجع به این سرویس بنویسید", - "users_comments": "نظرات کاربران" + "users_comments": "نظرات کاربران", + "add_service": "افزودن سرویس", + "service_name": "نام سرویس", + "description_short": "توضیح کوتاه سرویس", + "company_developed": "شرکت توسعه دهنده" }, + "select": "انتخاب", "footer": { "home": "صفحه اصلی", "other_services": "سایر سرویس ها", diff --git a/src/pages/service/AddService.tsx b/src/pages/service/AddService.tsx new file mode 100644 index 0000000..01a9256 --- /dev/null +++ b/src/pages/service/AddService.tsx @@ -0,0 +1,67 @@ +import { FC } from 'react' +import { useTranslation } from 'react-i18next' +import Input from '../../components/Input' +import Select from '../../components/Select' + +const AddService: FC = () => { + + const { t } = useTranslation('global') + + + return ( +
+
+
+ {t('service.add_service')} +
+ +
+ +
+ +
+ +
+ + +
+ +
+ + +