fix rabbitai bot suggestions
This commit is contained in:
@@ -27,7 +27,7 @@ http {
|
|||||||
index index.html;
|
index index.html;
|
||||||
absolute_redirect off;
|
absolute_redirect off;
|
||||||
|
|
||||||
location ~ ^/(en|ar|be|da|de|es|fr|id|it|nl|pt|ru|tr|vi|zh|zh-TW)(/.*)?$ {
|
location ~ ^/(en|ar|be|da|de|es|fr|id|it|ko|nl|pt|ru|sv|tr|vi|zh|zh-TW)(/.*)?$ {
|
||||||
try_files $uri $uri/ $uri.html /$1/index.html /index.html;
|
try_files $uri $uri/ $uri.html /$1/index.html /index.html;
|
||||||
expires 5m;
|
expires 5m;
|
||||||
add_header Cache-Control "public, must-revalidate";
|
add_header Cache-Control "public, must-revalidate";
|
||||||
@@ -35,7 +35,7 @@ http {
|
|||||||
add_header Cross-Origin-Opener-Policy "same-origin" always;
|
add_header Cross-Origin-Opener-Policy "same-origin" always;
|
||||||
}
|
}
|
||||||
|
|
||||||
location ~ ^/(.+?)/(en|ar|be|da|de|es|fr|id|it|nl|pt|ru|tr|vi|zh|zh-TW)(/.*)?$ {
|
location ~ ^/(.+?)/(en|ar|be|da|de|es|fr|id|it|ko|nl|pt|ru|sv|tr|vi|zh|zh-TW)(/.*)?$ {
|
||||||
try_files $uri $uri/ $uri.html /$1/$2/index.html /$1/index.html /index.html;
|
try_files $uri $uri/ $uri.html /$1/$2/index.html /$1/index.html /index.html;
|
||||||
expires 5m;
|
expires 5m;
|
||||||
add_header Cache-Control "public, must-revalidate";
|
add_header Cache-Control "public, must-revalidate";
|
||||||
|
|||||||
@@ -182,7 +182,7 @@
|
|||||||
},
|
},
|
||||||
"areFilesSecure": {
|
"areFilesSecure": {
|
||||||
"question": "Мои файлы в безопасности? Где они обрабатываются?",
|
"question": "Мои файлы в безопасности? Где они обрабатываются?",
|
||||||
"answer": "Your files are as secure as possible because they never leave your computer. All processing happens directly in your web browser (client-side). We never upload your files to a server, so you maintain complete privacy and control over your documents."
|
"answer": "Ваши файлы максимально защищены, потому что они никогда не покидают ваш компьютер. Вся обработка происходит прямо в вашем браузере (на стороне клиента). Мы никогда не загружаем ваши файлы на сервер, поэтому вы полностью сохраняете конфиденциальность и контроль над своими документами."
|
||||||
},
|
},
|
||||||
"platforms": {
|
"platforms": {
|
||||||
"question": "BentoPDF работает на Mac, Windows, и на смартфонах?",
|
"question": "BentoPDF работает на Mac, Windows, и на смартфонах?",
|
||||||
@@ -289,7 +289,7 @@
|
|||||||
},
|
},
|
||||||
"free": {
|
"free": {
|
||||||
"title": "Полностью бесплатный",
|
"title": "Полностью бесплатный",
|
||||||
"description": "Никаких пробных периодов, никаких подписок, никаких скрытых платежей и никаких \"премиум\"-функций, за которые надо доплатить. Мы верим, что мощные инструменты для работы с PDFдолжны быть достоянием общественности, а не центром генерации выручки."
|
"description": "Никаких пробных периодов, никаких подписок, никаких скрытых платежей и никаких \"премиум\"-функций, за которые надо доплатить. Мы верим, что мощные инструменты для работы с PDF должны быть достоянием общественности, а не центром генерации выручки."
|
||||||
},
|
},
|
||||||
"noAccount": {
|
"noAccount": {
|
||||||
"title": "Не нужна учетная запись",
|
"title": "Не нужна учетная запись",
|
||||||
@@ -297,7 +297,7 @@
|
|||||||
},
|
},
|
||||||
"openSource": {
|
"openSource": {
|
||||||
"title": "Дух открытого кода",
|
"title": "Дух открытого кода",
|
||||||
"description": "Создано попринципам прозрачности. Мы опираемся на замечательные библиотеки с открытым исходным кодом, такие как PDF-lib и PDF.js, и верим в то, что, действуя сообща, мы можем создать мощнве инструменты, доступные всем."
|
"description": "Создано по принципам прозрачности. Мы опираемся на замечательные библиотеки с открытым исходным кодом, такие как PDF-lib и PDF.js, и верим в то, что, действуя сообща, мы можем создать мощные инструменты, доступные всем."
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"cta": {
|
"cta": {
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"compressPdf": {
|
"compressPdf": {
|
||||||
"name": "Сжатие PDF",
|
"name": "Сжатие PDF",
|
||||||
"subtitle": "Уменьшить размер PDF-файла.",
|
"subtitle": "Уменьшить размер PDF-файла.",
|
||||||
"algorithmLabel": "Алгорим сжатия",
|
"algorithmLabel": "Алгоритм сжатия",
|
||||||
"condense": "Condense (рекомендуется)",
|
"condense": "Condense (рекомендуется)",
|
||||||
"photon": "Photon (для PDF с большим числом изображений)",
|
"photon": "Photon (для PDF с большим числом изображений)",
|
||||||
"condenseInfo": "Condense использует усовершенствованное сжатие: удаляет лишнее, оптимизирует изображения и шрифты. Лучший выбор для большинства PDF.",
|
"condenseInfo": "Condense использует усовершенствованное сжатие: удаляет лишнее, оптимизирует изображения и шрифты. Лучший выбор для большинства PDF.",
|
||||||
@@ -153,7 +153,7 @@
|
|||||||
"subtitle": "Заполнить форму прямо в браузере. Поддерживает формы XFA."
|
"subtitle": "Заполнить форму прямо в браузере. Поддерживает формы XFA."
|
||||||
},
|
},
|
||||||
"createPdfForm": {
|
"createPdfForm": {
|
||||||
"name": "Сохдание PDF-форм",
|
"name": "Создание PDF-форм",
|
||||||
"subtitle": "Создать заполняемую PDF-форму с перетаскиваемыми текстовыми полями."
|
"subtitle": "Создать заполняемую PDF-форму с перетаскиваемыми текстовыми полями."
|
||||||
},
|
},
|
||||||
"removeBlankPages": {
|
"removeBlankPages": {
|
||||||
@@ -397,7 +397,7 @@
|
|||||||
"subtitle": "Переупорядочить страницы для двухсторонней печати разворотов. Сложите распечатанные листы и прошейте, чтобы сделать буклет.",
|
"subtitle": "Переупорядочить страницы для двухсторонней печати разворотов. Сложите распечатанные листы и прошейте, чтобы сделать буклет.",
|
||||||
"howItWorks": "Как это работает:",
|
"howItWorks": "Как это работает:",
|
||||||
"step1": "Загрузите PDF-файл.",
|
"step1": "Загрузите PDF-файл.",
|
||||||
"step2": "Страницы буду переупорядочены для печати в формате буклета.",
|
"step2": "Страницы будут переупорядочены для печати в формате буклета.",
|
||||||
"step3": "Распечатайте с двух сторон, сложите и прошейте.",
|
"step3": "Распечатайте с двух сторон, сложите и прошейте.",
|
||||||
"paperSize": "Размер бумаги",
|
"paperSize": "Размер бумаги",
|
||||||
"orientation": "Ориентация",
|
"orientation": "Ориентация",
|
||||||
@@ -515,7 +515,7 @@
|
|||||||
"subtitle": "Извлечь таблицы из документа в формате Excel (XLSX)."
|
"subtitle": "Извлечь таблицы из документа в формате Excel (XLSX)."
|
||||||
},
|
},
|
||||||
"pdfToText": {
|
"pdfToText": {
|
||||||
"name": "PDF в Text",
|
"name": "PDF в текст",
|
||||||
"subtitle": "Извлечь текст из документа в текстовом формате (.txt). Поддерживает несколько файлов.",
|
"subtitle": "Извлечь текст из документа в текстовом формате (.txt). Поддерживает несколько файлов.",
|
||||||
"note": "Данный инструмент работает ТОЛЬКО с PDF-файлами, созданными электронно. Для отсканированных документов или PDF-файлов, основывающихся на изображениях, используйте инструмент «Распознавание текста в PDF».",
|
"note": "Данный инструмент работает ТОЛЬКО с PDF-файлами, созданными электронно. Для отсканированных документов или PDF-файлов, основывающихся на изображениях, используйте инструмент «Распознавание текста в PDF».",
|
||||||
"convertButton": "Извлечь текст"
|
"convertButton": "Извлечь текст"
|
||||||
@@ -528,7 +528,7 @@
|
|||||||
"uploadCert": "Загрузить сертификат (.pfx, .p12)",
|
"uploadCert": "Загрузить сертификат (.pfx, .p12)",
|
||||||
"certPassword": "Пароль от сертификата",
|
"certPassword": "Пароль от сертификата",
|
||||||
"certPasswordPlaceholder": "Введите Пароль от сертификата",
|
"certPasswordPlaceholder": "Введите Пароль от сертификата",
|
||||||
"certInfo": "Сведениф о сертификате",
|
"certInfo": "Сведения о сертификате",
|
||||||
"certSubject": "Субъект",
|
"certSubject": "Субъект",
|
||||||
"certIssuer": "Издатель",
|
"certIssuer": "Издатель",
|
||||||
"certValidity": "Срок действия",
|
"certValidity": "Срок действия",
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ export const getLanguageFromUrl = (): SupportedLanguage => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const langMatch = path.match(
|
const langMatch = path.match(
|
||||||
/^\/(en|ar|fr|es|de|zh|zh-TW|vi|tr|id|it|pt|nl|be|da|ko|ru)(?:\/|$)/
|
/^\/(en|ar|fr|es|de|zh|zh-TW|vi|tr|id|it|pt|nl|be|da|ko|sv|ru)(?:\/|$)/
|
||||||
);
|
);
|
||||||
if (
|
if (
|
||||||
langMatch &&
|
langMatch &&
|
||||||
@@ -134,7 +134,7 @@ export const changeLanguage = (lang: SupportedLanguage): void => {
|
|||||||
|
|
||||||
let pagePathWithoutLang = relativePath;
|
let pagePathWithoutLang = relativePath;
|
||||||
const langPrefixMatch = relativePath.match(
|
const langPrefixMatch = relativePath.match(
|
||||||
/^\/(en|ar|fr|es|de|zh|zh-TW|vi|tr|id|it|pt|nl|be|da|ko|ru)(\/.*)?$/
|
/^\/(en|ar|fr|es|de|zh|zh-TW|vi|tr|id|it|pt|nl|be|da|ko|sv|ru)(\/.*)?$/
|
||||||
);
|
);
|
||||||
if (langPrefixMatch) {
|
if (langPrefixMatch) {
|
||||||
pagePathWithoutLang = langPrefixMatch[2] || '/';
|
pagePathWithoutLang = langPrefixMatch[2] || '/';
|
||||||
@@ -227,7 +227,7 @@ export const rewriteLinks = (): void => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const langPrefixRegex = new RegExp(
|
const langPrefixRegex = new RegExp(
|
||||||
`^(${basePath.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')})?/?(en|ar|fr|es|de|zh|zh-TW|vi|tr|id|it|pt|nl|be|da|ko|ru)(/|$)`
|
`^(${basePath.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')})?/?(en|ar|fr|es|de|zh|zh-TW|vi|tr|id|it|pt|nl|be|da|ko|sv|ru)(/|$)`
|
||||||
);
|
);
|
||||||
if (langPrefixRegex.test(href)) {
|
if (langPrefixRegex.test(href)) {
|
||||||
return;
|
return;
|
||||||
|
|||||||
Reference in New Issue
Block a user