service.json 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497
  1. {
  2. "page": {
  3. "notFound": "Запись обслуживания не найдена",
  4. "updated": "Запись обслуживания обновлена",
  5. "failedUpdate": "Не удалось обновить запись обслуживания",
  6. "deleteTitle": "Удалить запись обслуживания",
  7. "deleteDescription": "Это безвозвратно удалит запись обслуживания и все связанные данные. Это действие необратимо.",
  8. "deleted": "Запись обслуживания удалена",
  9. "failedDelete": "Не удалось удалить",
  10. "datesExpiredTitle": "Даты счёта истекли",
  11. "datesExpiredDescription": "Дата счёта или срок оплаты истёк. Хотите обновить даты перед продолжением?",
  12. "datesExpiredUpdate": "Обновить даты и продолжить",
  13. "datesExpiredProceed": "Продолжить без изменений",
  14. "datesExpiredUseToday": "Обновить до сегодняшней даты",
  15. "datesExpiredCustomize": "Выбрать даты вручную",
  16. "datesExpiredBack": "Назад",
  17. "datesExpiredSetToday": "Установить на сегодня",
  18. "customFieldsInvalid": "Заполните все обязательные пользовательские поля",
  19. "customFieldsSaveFailed": "Не удалось сохранить пользовательские поля",
  20. "problems": {
  21. "title": "Заказу нужно название, прежде чем его можно сохранить.",
  22. "negative": "Количество, часы, цены и затраты не могут быть отрицательными.",
  23. "partName": "У каждой детали с ценой должно быть название.",
  24. "laborDescription": "У каждой строки работ с часами или ставкой должно быть описание."
  25. }
  26. },
  27. "header": {
  28. "tabs": {
  29. "details": "Детали",
  30. "images": "Изображения",
  31. "video": "Видео",
  32. "documents": "Документы",
  33. "statusReports": "Отчёты о состоянии"
  34. },
  35. "save": "Сохранить",
  36. "pdf": "PDF",
  37. "email": "Эл. почта",
  38. "share": "Поделиться",
  39. "notify": "Уведомить",
  40. "delete": "Удалить",
  41. "unpaid": "Не оплачено",
  42. "unsavedChanges": "Несохранённые изменения",
  43. "saved": "Сохранено",
  44. "joinCall": "Присоединиться к видеозвонку",
  45. "moreActions": "Другие действия",
  46. "designMenu": "Дизайн счёта",
  47. "designMenuLoading": "Проверяем, с каким дизайном печатается этот счёт...",
  48. "designMenuExplain": "Ушёл клиенту {date}, поэтому печатается с тем дизайном, с которым был отправлен. Выбор другого меняет только внешний вид. То, что написано в счёте, останется как при отправке, а прежний вид не сохраняется.",
  49. "designSentWith": "Дизайн на момент отправки",
  50. "designFollow": "Как текущий по умолчанию",
  51. "designFollowNamed": "Как текущий по умолчанию ({name})",
  52. "designDefaultName": "текущий дизайн по умолчанию",
  53. "designPickConfirmTitle": "Перевести этот счёт на {name}?",
  54. "designPickConfirmBody": "Меняется только внешний вид. Данные сервиса, клиент, условия оплаты и суммы останутся ровно такими, какими были отправлены. Нынешний дизайн не сохраняется, поэтому отменить это не получится.",
  55. "designPickConfirm": "Изменить дизайн",
  56. "designPickDone": "Счёт теперь печатается с дизайном {name}",
  57. "designPickFailed": "Не удалось изменить дизайн"
  58. },
  59. "basicInfo": {
  60. "title": "Основная информация",
  61. "invoiceDetails": "Детали счёта",
  62. "customerInfo": "Клиент и транспорт",
  63. "paid": "Оплачено",
  64. "markPaid": "Отметить как оплачено",
  65. "markUnpaid": "Отметить как неоплачено",
  66. "vehicle": "Транспортное средство",
  67. "open": "Открыть",
  68. "customer": "Клиент",
  69. "titleLabel": "Название *",
  70. "titlePlaceholder": "Замена масла",
  71. "date": "Дата",
  72. "type": "Тип",
  73. "mileage": "Пробег",
  74. "mileageMarine": "Моточасы",
  75. "status": "Статус",
  76. "technician": "Механик",
  77. "invoiceNumber": "Номер счёта",
  78. "invoiceDate": "Дата счёта",
  79. "invoiceDueDate": "Срок оплаты",
  80. "typeOptions": {
  81. "maintenance": "Техобслуживание",
  82. "repair": "Ремонт",
  83. "upgrade": "Модернизация",
  84. "inspection": "Осмотр"
  85. },
  86. "statusOptions": {
  87. "pending": "Ожидает",
  88. "in_progress": "В работе",
  89. "waiting_parts": "Ожидание запчастей",
  90. "completed": "Завершено"
  91. },
  92. "searchVehicles": "Поиск транспортных средств...",
  93. "noVehicleFound": "Транспортное средство не найдено.",
  94. "techPicker": {
  95. "placeholder": "Выберите или введите имя...",
  96. "searchPlaceholder": "Поиск или ввод имени...",
  97. "useCustom": "Использовать \"{search}\"",
  98. "typePrompt": "Введите имя...",
  99. "boardTechnicians": "Механики доски",
  100. "teamMembers": "Участники команды"
  101. },
  102. "design": "Дизайн счёта",
  103. "designDefault": "По умолчанию для мастерской",
  104. "designFollowing": "По умолчанию ({name})",
  105. "designPinned": "Этот счёт дошёл до клиента {date}, поэтому сохраняет дизайн, с которым ушёл. Выбор здесь сработает только после разблокировки и повторной отправки. Владелец может изменить дизайн сейчас через Дизайн счёта в меню ⋮ наверху.",
  106. "designSaved": "Дизайн счёта обновлён",
  107. "designSavedPinned": "Сохранено. Этот счёт сохранит дизайн, с которым был отправлен, пока его не разблокируют и не отправят снова.",
  108. "designFollowingRule": "По умолчанию ({name}, {rule})",
  109. "designRule": {
  110. "parts_sale": "Продажа только запчастей"
  111. },
  112. "designSaveFailed": "Не удалось изменить дизайн счёта"
  113. },
  114. "parts": {
  115. "title": "Запчасти",
  116. "fromInventory": "Со склада",
  117. "addPart": "Добавить запчасть",
  118. "partNumber": "Арт. №",
  119. "name": "Название",
  120. "qty": "Кол-во",
  121. "unitCost": "Себестоимость",
  122. "unitCostHint": "Закупочная цена (внутренняя — клиенту не показывается)",
  123. "markupPercent": "Наценка %",
  124. "markupPercentHint": "Наценка к себестоимости (внутренняя — клиенту не показывается)",
  125. "applyMarkup": "Применить {percent}%",
  126. "applyMarkupHint": "Повторно применить наценку {percent}% к себестоимости в каждой строке",
  127. "unitPrice": "Цена за ед.",
  128. "total": "Итого",
  129. "namePlaceholder": "Название *",
  130. "subtotal": "Подитог запчастей: {amount}",
  131. "inventoryTitle": "Выбор запчасти со склада",
  132. "searchInventory": "Поиск на складе...",
  133. "inStock": "{quantity} в наличии",
  134. "noInventory": "Запчасти на складе не найдены.",
  135. "scanBarcode": "Сканировать",
  136. "scanTitle": "Сканировать штрихкод",
  137. "partFound": "\"{name}\" добавлено из склада",
  138. "partNotFound": "Деталь для штрихкода \"{barcode}\" не найдена",
  139. "deleteRow": "Удалить строку",
  140. "outOfStock": "Нет в наличии",
  141. "onBackorder": "Под заказ ({count})",
  142. "nameMissingHint": "Строки без названия детали не сохраняются."
  143. },
  144. "labor": {
  145. "title": "Работа",
  146. "addLabor": "Добавить работу",
  147. "fromPresets": "Из шаблонов",
  148. "description": "Описание",
  149. "hours": "Часы",
  150. "rate": "Ставка ({currency}/ч)",
  151. "total": "Итого",
  152. "descriptionPlaceholder": "Описание *",
  153. "subtotal": "Подитог работ: {amount}",
  154. "addService": "Добавить услугу",
  155. "addFinding": "Наблюдение",
  156. "newObservation": "Новое наблюдение",
  157. "addExisting": "Показать существующие ({count})",
  158. "qty": "Кол-во",
  159. "qtyOrHours": "Услуга / Часы",
  160. "hourlyTag": "н/ч",
  161. "serviceTag": "усл.",
  162. "switchToHourlyHint": "Почасовая: оценка по нормо-часам (часы × ставка/час). Нажмите для изменения.",
  163. "switchToServiceHint": "Услуга: фиксированная цена за единицу. Нажмите для изменения.",
  164. "deleteRow": "Удалить строку",
  165. "descriptionMissingHint": "Строки без описания не сохраняются."
  166. },
  167. "totals": {
  168. "title": "Итоги",
  169. "parts": "Запчасти",
  170. "labor": "Работа",
  171. "subtotal": "Подитог",
  172. "subtotalInclTax": "Подитог (с НДС)",
  173. "discount": "Скидка",
  174. "discountNone": "Нет",
  175. "discountPercentage": "Процент",
  176. "discountFixed": "Фиксированная",
  177. "tax": "Налог",
  178. "taxIncluded": "Налог (вкл.)",
  179. "total": "Итого",
  180. "inclusiveModeHint": "Цены позиций вводятся с НДС. Итоги показывают разбивку: без НДС + НДС.",
  181. "partsCost": "Себестоимость запчастей (внутр.)"
  182. },
  183. "notes": {
  184. "title": "Заметки",
  185. "public": "Публичные",
  186. "internal": "Внутренние",
  187. "publicPlaceholder": "Заметки, видимые на счёте...",
  188. "internalPlaceholder": "Внутренние заметки (не показываются на счёте)...",
  189. "publicHelper": "Отображаются на счёте и в общих документах",
  190. "internalHelper": "Видно только вашей команде",
  191. "aiWrite": "ИИ-генерация",
  192. "aiGenerated": "ИИ-заметки успешно сгенерированы",
  193. "aiGenerateFailed": "Не удалось сгенерировать ИИ-заметки",
  194. "aiDialogTitle": "ИИ-генерация",
  195. "aiDialogDescription": "ИИ проанализирует запчасти и работы в этой записи обслуживания и создаст профессиональное описание. Результат будет записан в текущий выбранный тип заметки.",
  196. "aiGenerate": "Сгенерировать",
  197. "aiOverwriteDescription": "Текущая заметка уже содержит текст. Вы можете заменить его или добавить сгенерированный ИИ текст ниже.",
  198. "aiOverwriteReplace": "Заменить",
  199. "aiOverwriteAppend": "Добавить",
  200. "aiOverwriteCancel": "Отмена",
  201. "aiDontShowAgain": "Больше не показывать"
  202. },
  203. "invoice": {
  204. "title": "Итоги по счёту",
  205. "parts": "Запчасти",
  206. "labor": "Работа",
  207. "subtotal": "Подитог",
  208. "subtotalInclTax": "Подитог (с НДС)",
  209. "discount": "Скидка",
  210. "tax": "Налог ({rate}%)",
  211. "taxIncluded": "Налог (вкл., {rate}%)",
  212. "total": "Итого",
  213. "paid": "Оплачено",
  214. "balanceDue": "К оплате",
  215. "paidBadge": "ОПЛАЧЕНО",
  216. "entityLabel": "Счёт",
  217. "emailSubject": "Подтверждение оплаты",
  218. "statusEmailSubject": "Обновление статуса обслуживания",
  219. "markCompletedTitle": "Отметить этот счёт как завершённый?",
  220. "markCompletedDescription": "Он уже отправлен клиенту, но всё ещё помечен как незавершённый, поэтому останется на доске работ.",
  221. "markCompletedConfirm": "Отметить завершённым",
  222. "lockedFieldsetLabel": "Счёт заблокирован, редактирование отключено"
  223. },
  224. "payments": {
  225. "title": "Платежи",
  226. "markUnpaid": "Отметить как неоплаченный",
  227. "markPaid": "Отметить как оплаченный",
  228. "recordPayment": "Записать платёж",
  229. "totalPaid": "Всего оплачено",
  230. "amount": "Сумма",
  231. "date": "Дата",
  232. "method": "Способ",
  233. "note": "Примечание",
  234. "notePlaceholder": "Необязательное примечание",
  235. "savePayment": "Сохранить платёж",
  236. "methodOptions": {
  237. "cash": "Наличные",
  238. "card": "Карта",
  239. "transfer": "Перевод",
  240. "other": "Другое"
  241. },
  242. "recorded": "Платёж записан",
  243. "markedPaid": "Отмечено как оплаченный",
  244. "markedUnpaid": "Отмечено как неоплаченный",
  245. "deleted": "Платёж удалён",
  246. "failedRecord": "Не удалось записать платёж",
  247. "failedStatus": "Не удалось обновить статус оплаты",
  248. "failedDelete": "Не удалось удалить платёж",
  249. "deleteTitle": "Удалить платёж",
  250. "deleteDescription": "Эта запись платежа будет удалена.",
  251. "failedPdf": "Не удалось сгенерировать PDF-счёт"
  252. },
  253. "attachments": {
  254. "deleteTitle": "Удалить вложение",
  255. "deleteDescription": "Это вложение будет безвозвратно удалено. Это действие необратимо.",
  256. "deleted": "Вложение удалено",
  257. "failedDelete": "Не удалось удалить",
  258. "images": "Изображения ({count})",
  259. "videos": "Видео ({count})",
  260. "diagnostics": "Диагностические отчёты ({count})",
  261. "documents": "Документы ({count})",
  262. "download": "Скачать",
  263. "close": "Закрыть"
  264. },
  265. "share": {
  266. "title": "Поделиться счётом",
  267. "description": "Создайте публичную ссылку, по которой любой сможет просмотреть и скачать этот счёт без входа в систему.",
  268. "notifyTitle": "Уведомить {name}",
  269. "email": "Эл. почта",
  270. "noEmail": "(эл. почта не указана)",
  271. "sms": "SMS",
  272. "noPhone": "(телефон не указан)",
  273. "sendNotification": "Отправить уведомление",
  274. "revokeLink": "Отозвать ссылку",
  275. "generateLink": "Создать публичную ссылку",
  276. "emailSent": "Письмо отправлено",
  277. "failedEmail": "Не удалось отправить письмо",
  278. "smsSent": "SMS отправлено",
  279. "failedSms": "Не удалось отправить SMS",
  280. "copyLink": "Копировать ссылку"
  281. },
  282. "sidebar": {
  283. "vehicle": "Транспортное средство",
  284. "customer": "Клиент",
  285. "vin": "VIN: {vin}",
  286. "mileageAtService": "Пробег при обслуживании: {mileage} {unit}",
  287. "engineHoursAtService": "Моточасы при обслуживании: {mileage} {unit}",
  288. "sharedLink": {
  289. "title": "Общая ссылка",
  290. "sharedOn": "Опубликовано {date}",
  291. "notViewed": "Ещё не просмотрено",
  292. "viewedTimes": "Просмотрено {count, plural, one {# раз} few {# раза} other {# раз}}",
  293. "lastViewed": "Последний раз {date}",
  294. "copyLink": "Копировать ссылку",
  295. "linkCopied": "Ссылка скопирована"
  296. }
  297. },
  298. "images": {
  299. "title": "Фотографии обслуживания",
  300. "dropzone": "Перетащите изображения сюда или нажмите для выбора",
  301. "uploading": "Загрузка...",
  302. "formats": "JPG, PNG, WebP — макс. 10МБ каждое",
  303. "uploadingImages": "Загрузка изображений...",
  304. "limitReached": "Лимит изображений достигнут ({count}/{max})",
  305. "upgradePrompt": "Обновите тариф для загрузки дополнительных изображений.",
  306. "onlyAllowed": "Допускаются только изображения JPG, PNG и WebP. {names} пропущены.",
  307. "onlyUploading": "Загружается только {count} изображений для соблюдения лимита.",
  308. "uploadingCount": "Загрузка изображений: {count}...",
  309. "uploadedCount": "Загружено изображений: {count}",
  310. "uploadFailed": "Загрузка не удалась",
  311. "deleted": "Изображение удалено",
  312. "failedDelete": "Не удалось удалить изображение",
  313. "failedUpdate": "Не удалось обновить",
  314. "description": "Описание...",
  315. "invoice": "Счёт"
  316. },
  317. "videos": {
  318. "title": "Видео обслуживания",
  319. "dropzone": "Перетащите видео сюда или нажмите для выбора",
  320. "uploading": "Загрузка...",
  321. "formats": "MP4, WebM, MOV — макс. 10МБ каждое",
  322. "uploadingVideos": "Загрузка видео...",
  323. "uploadingCount": "Загрузка видео: {count}...",
  324. "uploadedCount": "Загружено видео: {count}",
  325. "uploadFailed": "Загрузка не удалась",
  326. "deleted": "Видео удалено",
  327. "failedDelete": "Не удалось удалить видео",
  328. "failedUpdate": "Не удалось обновить",
  329. "invoice": "Счёт"
  330. },
  331. "documents": {
  332. "diagnosticTitle": "Диагностические отчёты",
  333. "documentsTitle": "Документы",
  334. "dropzone": "Перетащите файлы сюда или нажмите для выбора",
  335. "uploading": "Загрузка...",
  336. "diagnosticFormats": "PDF, CSV, TXT — макс. 10МБ каждый",
  337. "documentFormats": "PDF, DOCX, XLSX, CSV, TXT — макс. 10МБ каждый",
  338. "uploadingReports": "Загрузка отчётов...",
  339. "uploadingDocuments": "Загрузка документов...",
  340. "diagnosticLimitReached": "Лимит диагностических отчётов достигнут ({count}/{max})",
  341. "documentLimitReached": "Лимит документов достигнут ({count}/{max})",
  342. "upgradePrompt": "Обновите тариф для загрузки дополнительных файлов.",
  343. "diagnosticLabel": "Диагностический отчёт",
  344. "documentLabel": "Документ",
  345. "limitReachedToast": "Лимит {label} достигнут ({count}/{max}). Обновите тариф для увеличения.",
  346. "onlyUploading": "Загружается только {count} файлов для соблюдения лимита.",
  347. "uploadingCount": "Загрузка файлов: {count}...",
  348. "uploadedCount": "Загружено файлов: {count}",
  349. "uploadFailed": "Загрузка не удалась",
  350. "deleted": "Файл удалён",
  351. "failedDelete": "Не удалось удалить файл",
  352. "failedUpdate": "Не удалось обновить",
  353. "invoice": "Счёт"
  354. },
  355. "schedule": {
  356. "title": "Расписание",
  357. "date": "Дата",
  358. "startTime": "Время начала",
  359. "endTime": "Время окончания",
  360. "technician": "Механик",
  361. "selectTechnician": "Выберите механика...",
  362. "searchOrCreate": "Поиск или создание механика...",
  363. "createTechnician": "Создать \"{name}\"",
  364. "creating": "Создание...",
  365. "failedCreate": "Не удалось создать механика",
  366. "addNew": "+ Добавить нового",
  367. "add": "Добавить",
  368. "newTechPlaceholder": "Имя механика...",
  369. "assign": "Назначить на доску",
  370. "assigned": "Назначено на доску работ",
  371. "failedAssign": "Не удалось назначить",
  372. "endBeforeStart": "Время окончания должно быть позже времени начала",
  373. "failedUpdate": "Не удалось обновить время в расписании",
  374. "splitCreated": "Работа занимает несколько дней — создано продолжение на следующий день",
  375. "customTechnicians": "Свои",
  376. "readMore": "Подробнее",
  377. "setDefaults": "Настройки по умолчанию",
  378. "workBay": "Пост",
  379. "selectWorkBay": "Выберите пост…",
  380. "noWorkBay": "Без поста",
  381. "noTechnician": "Без механика",
  382. "technicians": "Механики",
  383. "otherTeamMembers": "Другие участники",
  384. "makeTechnician": "Сделает механиком",
  385. "addSomeoneNew": "Добавить человека",
  386. "notOnBoard": "Ещё не на доске",
  387. "putOnBoard": "Добавить на доску",
  388. "slotTaken": "{count, plural, one {Это время уже занято} other {На это время приходится # пересечений}}",
  389. "anotherJob": "другая работа",
  390. "clashTechnician": "техник занят",
  391. "clashBay": "пост занят",
  392. "clashBoth": "заняты оба",
  393. "bookedAnyway": "Всё равно сохранено. Измените время или выберите ближайшее свободное.",
  394. "pickNextAvailable": "Выбрать ближайшее свободное время",
  395. "findingSlot": "Поиск времени…",
  396. "slotPicked": "Назначено на ближайшее свободное время",
  397. "noSlotFound": "В ближайшие недели свободного времени не найдено"
  398. },
  399. "notifications": {
  400. "title": "Уведомления клиента",
  401. "viaSms": "через SMS",
  402. "viaEmail": "по эл. почте",
  403. "justNow": "Только что",
  404. "minutesAgo": "{count}м назад",
  405. "hoursAgo": "{count}ч назад",
  406. "daysAgo": "{count}д назад"
  407. },
  408. "table": {
  409. "warranty": "Гарантия"
  410. },
  411. "warranty": {
  412. "title": "Гарантия",
  413. "months": "Срок (месяцев)",
  414. "notes": "Условия гарантии",
  415. "notesPlaceholder": "напр. 12-месячная гарантия на все запчасти и работу...",
  416. "expiresAt": "Истекает",
  417. "presets": {
  418. "3months": "3 мес",
  419. "6months": "6 мес",
  420. "12months": "12 мес",
  421. "24months": "24 мес"
  422. },
  423. "status": {
  424. "active": "Активна",
  425. "expiring": "Истекает",
  426. "expired": "Истекла",
  427. "none": "Нет"
  428. },
  429. "statementLabel": "Что клиенту сообщается о гарантии",
  430. "statement": {
  431. "none": "Не указано",
  432. "included": "Предоставляется",
  433. "not_included": "Не предоставляется"
  434. },
  435. "noneHint": "В этом документе о гарантии ничего не печатается.",
  436. "mileageWithUnit": "Лимит пробега ({unit})",
  437. "notIncludedNotes": "Заявление для клиента",
  438. "notIncludedPlaceholder": "напр. Мастерская не даёт гарантию на запчасти, предоставленные клиентом.",
  439. "printedHint": "Печатается под гарантией в документе.",
  440. "notIncludedHint": "Оставьте пустым, и в документе будет указано, что законные права не затрагиваются.",
  441. "summaryMonths": "{count} мес."
  442. },
  443. "concerns": {
  444. "title": "Обращения клиента",
  445. "hint": "Почему клиент обратился, своими словами. Отдельная строка для каждого названного пункта.",
  446. "add": "Добавить ещё",
  447. "placeholder": "При торможении сзади слышен шум",
  448. "remove": "Удалить этот пункт",
  449. "notAnswered": "По этому пункту пока ничего не найдено",
  450. "answered": "Найдено по этому пункту: {count}"
  451. },
  452. "videoCall": {
  453. "title": "Видеозвонок",
  454. "none": "У этого заказ-наряда нет видеозвонка.",
  455. "needsSchedule": "Сначала укажите время начала. Встреча следует расписанию.",
  456. "add": "Добавить встречу {provider}",
  457. "addedHere": "добавлен из этого заказ-наряда",
  458. "fromCalendar": "из события календаря",
  459. "join": "Присоединиться",
  460. "copy": "Копировать ссылку",
  461. "copied": "Ссылка скопирована",
  462. "remove": "Удалить",
  463. "removeTitle": "Удалить видеозвонок?",
  464. "removeDescription": "Встреча удаляется у провайдера. Те, у кого уже есть ссылка, больше не смогут присоединиться.",
  465. "created": "Встреча создана. Ссылка на заказ-наряде.",
  466. "removed": "Встреча удалена",
  467. "failed": "Что-то пошло не так",
  468. "shareHint": "Клиент получает эту ссылку, только когда вы её отправите.",
  469. "shareHintNoChannel": "Клиент получает эту ссылку, только когда вы её отправите. Канал сообщений не настроен, поэтому скопируйте её в сообщение сами.",
  470. "send": {
  471. "button": "Отправить клиенту",
  472. "title": "Отправить ссылку на видеозвонок",
  473. "description": "Отправить ссылку для подключения клиенту {name}.",
  474. "messageLabel": "Примечание (необязательно)",
  475. "messagePlaceholder": "Что клиенту стоит знать до звонка...",
  476. "linkAlwaysIncluded": "Ссылка для подключения всегда добавляется под вашим примечанием.",
  477. "sms": "SMS",
  478. "email": "Эл. почта",
  479. "telegram": "Telegram",
  480. "noPhone": "(нет телефона)",
  481. "noEmail": "(нет эл. почты)",
  482. "noTelegram": "(чат не привязан)",
  483. "notAvailable": "(не настроено)",
  484. "cancel": "Отмена",
  485. "send": "Отправить",
  486. "sent": "Ссылка на видеозвонок отправлена",
  487. "partlySent": "Отправлено через {sent}; не отправлено через {failed}",
  488. "failed": "Не удалось отправить ссылку"
  489. },
  490. "notify": {
  491. "invitation": "Здравствуйте, {name}! Видеозвонок по поводу {vehicle} состоится {when}. Подключайтесь здесь: {url}",
  492. "invitationNoTime": "Здравствуйте, {name}! Вот ссылка на видеозвонок по поводу {vehicle}: {url}",
  493. "joinLine": "Подключиться к видеозвонку: {url}",
  494. "emailSubject": "Видеозвонок по поводу вашего {vehicle}"
  495. }
  496. }
  497. }