Skip to content

Commit b6e2544

Browse files
feat: add i18n labels file
1 parent 2da0654 commit b6e2544

File tree

1 file changed

+199
-0
lines changed

1 file changed

+199
-0
lines changed

src/shared/i18n/labels.ts

Lines changed: 199 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,199 @@
1+
// Интернационализация - Русские метки интерфейса
2+
3+
export const LABELS = {
4+
// Навигация и меню
5+
MENU: {
6+
PRINTING_3D: '3D-печать',
7+
PLASTIC_TYPES: 'Типы пластика',
8+
PRICE: 'Стоимость',
9+
DELIVERY_PAYMENT: 'Доставка и оплата',
10+
CONTACTS: 'Контакты',
11+
MENU_SECTIONS: 'Разделы меню',
12+
SOCIAL_NETWORKS: 'Социальные сети',
13+
STUDIO_NAME: 'Студия 3D-печати',
14+
},
15+
16+
// Общие
17+
COMMON: {
18+
STUDIO_NAME: 'Студия 3D-печати',
19+
DESCRIPTION: 'Печать пластиковых изделий на заказ из пластика',
20+
FULL_DESCRIPTION:
21+
'3D Printing Studio — оперативное, профессиональное и надёжное изготовление изделий на заказ методом 3D-печати пластиками.\\nСаморуков М.Л.\\nИНН 402708598897',
22+
RETURN_HOME: 'Вернуться на главную страницу',
23+
NO_DATA: 'нет данных',
24+
YES: 'Да',
25+
NO: 'Нет',
26+
EXCELLENT: 'Отлично',
27+
CLOSE: 'Закрыть',
28+
DELETE: 'Удалить',
29+
APPLY: 'Применить',
30+
RESET: 'Сбросить',
31+
PAY: 'Оплатить',
32+
},
33+
34+
// Ошибки и уведомления
35+
ERRORS: {
36+
AUTH_ERROR: '⛔ Ошибка аутентификации',
37+
UNAUTHORIZED: '⛔ Отсутствует авторизация',
38+
UNAUTHORIZED_MESSAGE: 'для нахождения на данной странице.',
39+
FILE_REQUIREMENTS_ERROR: 'Файл не соответствует требованиям',
40+
FILE_REQUIRED: 'Необходимо прикрепить файл',
41+
FILE_READ_ERROR: 'Ошибка чтения файла',
42+
INVOICE_ERROR: 'Ошибка создания счета:',
43+
},
44+
45+
// Оплата
46+
PAYMENT: {
47+
TITLE: 'Оплата',
48+
CASH_PVZ: 'Наличными в ПВЗ:',
49+
CASH_PVZ_DESC: 'Предоплата 50%, оплата остатка при получении.',
50+
BANK_CARDS: 'Оплата банковскими картами Visa, MasterCard и Maestro',
51+
BANK_CARDS_DESC: 'Предоплата 50%, оплата остатка при получении.',
52+
PAYMENT_SYSTEMS: 'Через платежные системы QIWI, WebMoney и Яндекс.Деньги',
53+
PAYMENT_SYSTEMS_DESC: 'Предоплата 50%, оплата остатка при получении.',
54+
NON_CASH: 'Безналичный расчёт по счёту',
55+
NON_CASH_DESC: 'Предоплата 100%, возможна работа по договору.',
56+
PAYMENT_STATUS: 'Статус оплаты',
57+
PAID: 'Оплачено',
58+
NOT_PAID: 'Не оплачено',
59+
},
60+
61+
// Доставка
62+
DELIVERY: {
63+
TITLE: 'Доставка',
64+
COURIER: 'Доставка курьером:',
65+
COURIER_DESC: 'по Москве день в день (в пределах МКАД) – от 650 рублей.',
66+
YANDEX_PVZ: 'Доставка ПВЗ Яндекс (C2C):',
67+
YANDEX_PVZ_DESC: 'по Москве и МО за 1-2 рабочих дня – от 99 рублей.',
68+
TRANSPORT_COMPANY: 'Доставка транспортной компанией:',
69+
TRANSPORT_COMPANY_DESC:
70+
'по Москве и МО за 1-2 рабочих дня – от 350 рублей.',
71+
POST_RUSSIA: 'Доставка в страны СНГ Почтой России (EMS):',
72+
POST_RUSSIA_DESC:
73+
'стоимость рассчитывается индивидуально, зависит от пункта назначения.',
74+
PICKUP: 'Самовывоз в Балашихе из мастерской 3D печати:',
75+
PICKUP_DESC: 'БЕСПЛАТНО',
76+
},
77+
78+
// Прайс-лист
79+
PRICELIST: {
80+
TITLE: 'Прайс-лист услуг',
81+
SERVICES: 'Услуги',
82+
AVAILABLE_PLASTICS: 'Доступные пластики',
83+
PRINTING_3D: '3D печать пластиком',
84+
PRINTING_3D_PRICE: '500₽/деталь + стоимость пластика по весу',
85+
MODELING: 'Моделирование',
86+
MODELING_PRICE: '1000₽/изделие',
87+
POST_PROCESSING: 'Постобработка',
88+
POST_PROCESSING_PRICE: '1000₽/изделие',
89+
},
90+
91+
// CRM
92+
CRM: {
93+
INTERFACE_LABEL: 'Интерфейст обработки заказов',
94+
WEBSITE: 'Сайт',
95+
SETTINGS: 'Настройки',
96+
ORDERS: 'Заказы',
97+
CONSULTATIONS: 'Консультации',
98+
FILTERS: 'Фильтры',
99+
ENTER_CRM: 'Вход в CRM',
100+
MY_ORDERS: 'Мои заказы',
101+
},
102+
103+
// Фильтры
104+
FILTERS: {
105+
DATE_CREATED: 'Дата создания',
106+
ORDER_TYPE: 'Тип заказа',
107+
STATUS: 'Статус',
108+
PHONE: 'Телефон',
109+
CONTACT: 'Контакт',
110+
MATERIAL: 'Материал',
111+
PAYMENT_STATUS: 'Статус оплаты',
112+
PRINT_ORDER: 'Печать',
113+
CONSULTATION: 'Консультация',
114+
},
115+
116+
// Формы заказа
117+
ORDER_FORM: {
118+
WRITE_US: 'Напишите нам',
119+
FILE: 'Файл',
120+
NAME: 'Имя',
121+
PHONE: 'Телефон',
122+
EMAIL: 'Email',
123+
PLASTIC_TYPE: 'Тип пластика',
124+
PRODUCT_COLOR: 'Цвет изделия',
125+
POST_PROCESSING: 'Требуется постобработка',
126+
POST_PROCESSING_LABEL: 'Постобработка',
127+
COMMENTS: 'Комментарии',
128+
ORDER_3D_PRINTING: 'Заказать 3D-печать',
129+
ORDER_CONSULTATION: 'Заказать консультацию',
130+
AUTHORIZE: 'Авторизоваться',
131+
CONSULTATION_REQUIRED: 'Требуется консультация',
132+
DRAG_FILE: 'Ператащите сюда файл (не более 10 Мб) для загрузки.',
133+
FORMATS_STL_3MF: 'Форматы: *.STL, *.3MF, *AMF',
134+
FORMATS_STL_OBJ: 'Форматы: *.STL, *.OBJ',
135+
DELETE_FILE: 'удалить файл',
136+
VIEW_FILE: 'просмотр файла',
137+
FILE_LINK: 'ссылка на файл',
138+
CALCULATE: 'Расчитать',
139+
},
140+
141+
// Карточка заказа
142+
ORDER_CARD: {
143+
ORDER: 'Заказ',
144+
CONSULTATION_REQUEST: 'Заявка на консультацию',
145+
CONTACT: 'Контакт',
146+
DATE_CREATED: 'Дата создания',
147+
PLASTIC_TYPE: 'Тип пластика',
148+
PRODUCT_COLOR: 'Цвет изделия',
149+
POST_PROCESSING: 'Постобработка',
150+
FILE: 'Файл',
151+
COMMENTS: 'Комментарии',
152+
STATUS: 'Статус',
153+
ORDER_COST: 'Стоимость заказа',
154+
PAYMENT_STATUS: 'Статус оплаты',
155+
NOT_DETERMINED: 'не определена',
156+
IN_PROGRESS: 'В работе',
157+
ORDER_TYPE_ID: 'Тип заказа - id',
158+
ADDITIONAL_WORK: 'Доп. работы',
159+
ORDER_STATUS: 'Статус заказа',
160+
},
161+
162+
// Модальные окна
163+
MODAL: {
164+
DELETE_CONFIRM: 'Точно удалить',
165+
DELETE_CANCEL: 'Хотя, не стоит удалять',
166+
ORDER_SUCCESS: 'Заказ успешно отправлен.',
167+
ORDER_SUCCESS_MESSAGE:
168+
'Представитель мастерской вам перезвонит для уточнения объема заказа.',
169+
},
170+
171+
// Авторизация
172+
AUTH: {
173+
AUTHORIZATION: 'Авторизация',
174+
LOGIN: 'Вход',
175+
LOGOUT: 'Выход',
176+
LOGIN_GOOGLE: 'Вход через Google',
177+
REGISTER: 'Зарегистрировать',
178+
REGISTERED: 'Зарегистрированно',
179+
REGISTRATION_ERROR: 'Ошибка регистрации',
180+
ADD_PHONE_OR_EMAIL: 'Добавьте номер телефона или email',
181+
AUTHORIZE_AND_ORDER: 'Авторизоваться и заказать консультацию',
182+
},
183+
184+
// Пластики
185+
PLASTICS: {
186+
SHORT_DESCRIPTION: 'Краткое описание:',
187+
APPLICATION: 'Применение:',
188+
TECH_FEATURES: 'Базовые технологические особенности:',
189+
},
190+
191+
// Email
192+
EMAIL: {
193+
SUBJECT_ORDER: 'Заказ',
194+
},
195+
} as const;
196+
197+
// Типы для TypeScript
198+
export type LabelKey = keyof typeof LABELS;
199+
export type LabelValue<K extends LabelKey> = (typeof LABELS)[K];

0 commit comments

Comments
 (0)