Skip to content

Commit 84d0f7f

Browse files
authored
Merge branch 'main' into feat/isbn-formatter
2 parents 29e0107 + 7f5fa00 commit 84d0f7f

File tree

480 files changed

+1111
-164
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

480 files changed

+1111
-164
lines changed

components.d.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,7 @@ declare module '@vue/runtime-core' {
195195
TextStatistics: typeof import('./src/tools/text-statistics/text-statistics.vue')['default']
196196
TextToBinary: typeof import('./src/tools/text-to-binary/text-to-binary.vue')['default']
197197
TextToNatoAlphabet: typeof import('./src/tools/text-to-nato-alphabet/text-to-nato-alphabet.vue')['default']
198+
TextToUnicode: typeof import('./src/tools/text-to-unicode/text-to-unicode.vue')['default']
198199
TokenDisplay: typeof import('./src/tools/otp-code-generator-and-validator/token-display.vue')['default']
199200
'TokenGenerator.tool': typeof import('./src/tools/token-generator/token-generator.tool.vue')['default']
200201
TomlToJson: typeof import('./src/tools/toml-to-json/toml-to-json.vue')['default']
@@ -211,5 +212,6 @@ declare module '@vue/runtime-core' {
211212
XmlFormatter: typeof import('./src/tools/xml-formatter/xml-formatter.vue')['default']
212213
YamlToJson: typeof import('./src/tools/yaml-to-json-converter/yaml-to-json.vue')['default']
213214
YamlToToml: typeof import('./src/tools/yaml-to-toml/yaml-to-toml.vue')['default']
215+
YamlViewer: typeof import('./src/tools/yaml-viewer/yaml-viewer.vue')['default']
214216
}
215217
}

locales/es.yaml

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
home:
2+
categories:
3+
newestTools: Nuevas herramientas
4+
favoriteTools: 'Tus herramientas favoritas'
5+
allTools: 'Todas las herramientas'
6+
subtitle: 'Herramientas practicas para desarrolladores'
7+
toggleMenu: 'Toggle menu'
8+
home: Home
9+
uiLib: 'UI Lib'
10+
support: 'Apoyar el desarrollo de IT-Tools'
11+
buyMeACoffee: 'Buy me a coffee'
12+
follow:
13+
title: 'Te gustan las it-tools?'
14+
p1: 'Danos una estrella en'
15+
githubRepository: 'Repositorio de IT-Tools en GitHub'
16+
p2: 'o síguenos en'
17+
twitterAccount: 'Cuenta de twitter de IT-Tools'
18+
thankYou: 'Muchas gracias!'
19+
nav:
20+
github: 'Repositorio en github'
21+
githubRepository: 'IT-Tools GitHub repository'
22+
twitter: 'Cuenta de Twitter'
23+
twitterAccount: 'Cuenta de twitter de IT Tools'
24+
about: 'Sobre IT-Tools'
25+
aboutLabel: 'Sobre'
26+
darkMode: 'Modo obscuro'
27+
lightMode: 'Modo claro'
28+
mode: 'Alternar modo oscuro/claro'
29+
about:
30+
content: >
31+
# Sobre IT-Tools
32+
33+
Este maravilloso sitio web, hecho con ❤ por [Corentin Thomasset](https://github.com/CorentinTh) , agrega herramientas útiles para desarrolladores y personas que trabajan en IT. Si lo encuentra útil, no dude en compartirlo con las personas que crea que también pueden encontrarlo útil y ¡no olvide marcarlo como favorito en su barra de accesos directos!
34+
35+
IT Tools es de código abierto (under the MIT license) y gratis, y siempre lo será, pero me cuesta dinero alojar y renovar el nombre de dominio. Si desea apoyar mi trabajo y animarme a agregar más herramientas, considere apoyarme a través de[sponsoring me](https://www.buymeacoffee.com/cthmsst).
36+
37+
## Tecnologías
38+
39+
IT Tools está creado en Vue.js (Vue 3) con la biblioteca de componentes Naive UI y Vercel lo aloja y lo implementa continuamente. En algunas herramientas se utilizan bibliotecas de código abierto de terceros; puede encontrar la lista completa en [package.json](https://github.com/CorentinTh/it-tools/blob/main/package.json) archivo del repositorio.
40+
41+
## ¿Encontraste un error? ¿Falta una herramienta?
42+
43+
Si necesita una herramienta que actualmente no está presente aquí y cree que puede ser útil, puede enviar una solicitud de función en el [issues section](https://github.com/CorentinTh/it-tools/issues/new/choose) en el repositorio de GitHub.
44+
45+
Y si encontró un error o algo no funciona como se esperaba, presente un reporte de error en el [issues section](https://github.com/CorentinTh/it-tools/issues/new/choose) en el repositorio de GitHub.
46+
47+
404:
48+
notFound: '404 Not Found'
49+
sorry: 'Lo sentimos, esta página no parece existir'
50+
maybe: 'Tal vez el caché esté haciendo cosas raras, ¿probamos a refrescar forzosamente?'
51+
backHome: 'Back home'
52+
favoriteButton:
53+
remove: 'Quitar de favoritos'
54+
add: 'Añadir a favoritos'
55+
toolCard:
56+
new: Nuevo
57+
search:
58+
label: Buscar
59+
tools:
60+
categories:
61+
favorite-tools: 'Tus herramientas favoritas'
62+
crypto: Crypto
63+
converter: Converter
64+
web: Web
65+
images and videos: 'Images & Videos'
66+
development: Development
67+
network: Network
68+
math: Math
69+
measurement: Measurement
70+
text: Text
71+
data: Data

locales/pt.yml

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
home:
2+
categories:
3+
newestTools: 'Novas ferramentas'
4+
favoriteTools: 'Suas ferramentas favoritas'
5+
allTools: 'Todas as ferramentas'
6+
subtitle: 'Ferraentas úteis para desenvolvedores'
7+
toggleMenu: 'Menu'
8+
home: 'Início'
9+
uiLib: 'Biblioteca de UI'
10+
support: 'Apoie o desenvolvimento do IT Tools'
11+
buyMeACoffee: 'Pague-me um café'
12+
follow:
13+
title: 'Gostou do it-tools?'
14+
p1: 'Dê uma estrela no'
15+
githubRepository: 'repositório do IT-Tools no GitHub'
16+
p2: 'ou siga nossa'
17+
twitterAccount: 'conta IT-Tools no Twitter'
18+
thankYou: 'Obrigado !'
19+
nav:
20+
github: 'Repositório no GitHub'
21+
githubRepository: 'repositório do IT-Tools no GitHub'
22+
twitter: 'Conta no Twitter'
23+
twitterAccount: 'conta do IT Tools no Twitter'
24+
about: 'Sobre o IT-Tools'
25+
aboutLabel: 'Sobre'
26+
darkMode: 'Modo Escuro'
27+
lightMode: 'Modo Claro'
28+
mode: 'Trocar modo escuro/claro'
29+
about:
30+
content: >
31+
# Sobre o IT-Tools
32+
33+
Este site maravilhoso, feito com ❤ por [Corentin Thomasset](https://github.com/CorentinTh), junta ferramentas úteis para desenvolvedores e outras pessoas que trabalham com TI. Se você achar o site útil, fique à vontade para compartilhar com quem também possa gostar e não esqueça de salvar o bookmark na sua barra de atalhos!
34+
35+
O IT Tools é código aberto (sob a licença MIT), é gratuito, e sempre será, mas custa dinheiro para hospedar e renovar o domínio. Se quiser apoiar meu trabalho e me encorajar a adicionar mais ferramentas, por favor considere [ser patrocinador](https://www.buymeacoffee.com/cthmsst).
36+
37+
## Tecnologias
38+
39+
O IT Tools é feito em Vue.js (Vue 3) com a biblioteca de componentes Naive UI e é hospedado pela Vercel. Bibliotecas de código aberto de terceiros são usadas em algumas ferramentas e você pode encontrar a lista completa no arquivo [package.json](https://github.com/CorentinTh/it-tools/blob/main/package.json) do repositório.
40+
41+
## Achou um bug? Está faltando uma ferramenta?
42+
43+
Se você precisa de uma ferramenta que ainda não existe aqui e acha que pode ser útil, seu pedido será bem vindo na [seção de issues](https://github.com/CorentinTh/it-tools/issues/new/choose) no repositório do GitHub.
44+
45+
E se você encontrar um bug ou se algo não funcionar como esperado, por favor registre um relato de bug na [seção de issues](https://github.com/CorentinTh/it-tools/issues/new/choose) no GitHub.
46+
47+
404:
48+
notFound: '404 Não Encontrado'
49+
sorry: 'Desculpe, parece que essa página não existe'
50+
maybe: 'Talvez o cache esteja fazendo bobagem, que tal tentar forçar a atualização?'
51+
backHome: 'Voltar para o início'
52+
favoriteButton:
53+
remove: 'Remover dos favoritos'
54+
add: 'Adicionar aos favoritos'
55+
toolCard:
56+
new: 'Novo'
57+
search:
58+
label: 'Pesquisar'
59+
tools:
60+
categories:
61+
favorite-tools: 'Suas ferramentas favoritas'
62+
crypto: 'Cripto'
63+
converter: 'Conversores'
64+
web: 'Web'
65+
images and videos: 'Imagens & Vídeos'
66+
development: 'Desenvolvimento'
67+
network: 'Rede'
68+
math: 'Matemática'
69+
measurement: 'Medidas'
70+
text: 'Texto'
71+
data: 'Dados'

locales/uk.yml

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
home:
2+
categories:
3+
newestTools: Найновіші інструменти
4+
favoriteTools: 'Ваші улюблені інструменти'
5+
allTools: 'Усі інструменти'
6+
subtitle: 'Зручні інструменти для розробників'
7+
toggleMenu: 'Перемикання меню'
8+
home: Головна
9+
uiLib: 'UI Бібліотека'
10+
support: 'Підтримка розробки IT Tools'
11+
buyMeACoffee: 'Купи мені каву'
12+
follow:
13+
title: 'Вам подобаються інструменти IT?'
14+
p1: 'Додайте нам зірку на'
15+
githubRepository: 'GitHub-репозиторій IT-Tools'
16+
p2: 'або слідкуйте за нами на'
17+
twitterAccount: 'Твіттер-акаунт IT-Tools'
18+
thankYou: 'Дякуємо!'
19+
nav:
20+
github: 'GitHub-репозиторій'
21+
githubRepository: 'GitHub-репозиторій IT-Tools'
22+
twitter: 'Твіттер'
23+
twitterAccount: 'Твіттер-акаунт IT-Tools'
24+
about: 'Про IT-Tools'
25+
aboutLabel: 'Про нас'
26+
darkMode: 'Темний режим'
27+
lightMode: 'Світлий режим'
28+
mode: 'Перемикання темного/світлого режиму'
29+
about:
30+
content: >
31+
# Про IT-Tools
32+
33+
Цей чудовий вебсайт, створений з ❤ [Corentin Thomasset](https://github.com/CorentinTh), агрегує корисні інструменти для розробників і людей, які працюють в сфері IT. Якщо вам це корисно, будь ласка, поділіться цим з людьми, які, на вашу думку, також можуть знайти його корисним, і не забудьте додати його до закладок у вашій панелі швидкого доступу!
34+
35+
IT Tools є відкритим програмним забезпеченням (під ліцензією MIT) і безкоштовним, і завжди буде таким, але мені коштує гроші для хостингу і продовження доменного імені. Якщо ви хочете підтримати мою роботу і підтримати мене у додаванні нових інструментів, розгляньте можливість підтримки, [спонсоруючи мене](https://www.buymeacoffee.com/cthmsst).
36+
37+
## Технології
38+
39+
IT Tools виконаний на Vue.js (Vue 3) з використанням бібліотеки компонентів Naive UI і розгортаний за допомогою Vercel. У деяких інструментах використовуються сторонні відкриті бібліотеки, повний список яких ви можете знайти в файлі [package.json](https://github.com/CorentinTh/it-tools/blob/main/package.json) репозиторію.
40+
41+
## Знайшли баг? Відсутній інструмент?
42+
43+
Якщо вам потрібен інструмент, якого наразі немає тут, і ви вважаєте, що він може бути корисним, ви можете подати запит на додавання функції в [розділі проблем](https://github.com/CorentinTh/it-tools/issues/new/choose) у репозиторії GitHub.
44+
45+
А якщо ви знайшли баг або щось не працює, як очікувалося, будь ласка, подайте звіт про баг в [розділі проблем](https://github.com/CorentinTh/it-tools/issues/new/choose) у репозиторії GitHub.
46+
47+
404:
48+
notFound: '404 Сторінка не знайдена'
49+
sorry: 'Вибачте, ця сторінка, схоже, не існує'
50+
maybe: 'Можливо, кеш робить хитрощі, спробуйте примусово оновити сторінку?'
51+
backHome: 'Повернутися на головну'
52+
favoriteButton:
53+
remove: 'Вилучити з обраних'
54+
add: 'Додати до обраних'
55+
toolCard:
56+
new: Новий
57+
search:
58+
label: Пошук
59+
tools:
60+
categories:
61+
favorite-tools: 'Ваші улюблені інструменти'
62+
crypto: Крипта
63+
converter: Конвертер
64+
web: Веб
65+
images and videos: 'Зображення та відео'
66+
development: Розробка
67+
network: Мережа
68+
math: Математика
69+
measurement: Вимірювання
70+
text: Текст
71+
data: Дані

locales/vi.yml

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
home:
2+
categories:
3+
newestTools: Công cụ mới nhất
4+
favoriteTools: 'Công cụ yêu thích của bạn'
5+
allTools: 'Tất cả công cụ'
6+
subtitle: 'Công cụ tiện ích cho nhà phát triển'
7+
toggleMenu: 'Chuyển đổi menu'
8+
home: Trang chủ
9+
uiLib: 'Thư viện UI'
10+
support: 'Hỗ trợ phát triển IT Tools'
11+
buyMeACoffee: 'Ủng hộ tác giả'
12+
follow:
13+
title: 'Bạn thích IT-tools?'
14+
p1: 'Hãy cho chúng tôi một ngôi sao trên'
15+
githubRepository: 'Kho GitHub IT-Tools'
16+
p2: 'hoặc theo dõi chúng tôi trên'
17+
twitterAccount: 'Tài khoản Twitter IT-Tools'
18+
thankYou: 'Cảm ơn bạn!'
19+
nav:
20+
github: 'Kho GitHub'
21+
githubRepository: 'Kho GitHub IT-Tools'
22+
twitter: 'Tài khoản Twitter'
23+
twitterAccount: 'Tài khoản Twitter IT Tools'
24+
about: 'Về IT-Tools'
25+
aboutLabel: 'Giới thiệu'
26+
darkMode: 'Chế độ tối'
27+
lightMode: 'Chế độ sáng'
28+
mode: 'Chuyển đổi chế độ tối/sáng'
29+
about:
30+
content: >
31+
# Về IT-Tools
32+
33+
Website tuyệt vời này, được tạo ra bằng ❤ bởi [Corentin Thomasset](https://github.com/CorentinTh), tổng hợp các công cụ hữu ích cho nhà phát triển và những người làm việc trong lĩnh vực IT. Nếu bạn thấy nó hữu ích, xin đừng ngần ngại chia sẻ cho những người mà bạn nghĩ sẽ thấy nó hữu ích và đừng quên đánh dấu nó trong thanh lối tắt của bạn!
34+
35+
IT Tools là mã nguồn mở (dưới giấy phép MIT) và miễn phí, và sẽ luôn như vậy, nhưng tôi phải trả tiền để lưu trữ và gia hạn tên miền. Nếu bạn muốn hỗ trợ công việc của tôi, và khích lệ tôi thêm nhiều công cụ hơn, hãy xem xét hỗ trợ bằng cách [tài trợ cho tôi](https://www.buymeacoffee.com/cthmsst).
36+
37+
## Công nghệ
38+
39+
IT Tools được tạo ra bằng Vue.js (Vue 3) với thư viện thành phần Naive UI và được lưu trữ và triển khai liên tục bởi Vercel. Các thư viện mã nguồn mở của bên thứ ba được sử dụng trong một số công cụ, bạn có thể tìm danh sách đầy đủ trong file [package.json](https://github.com/CorentinTh/it-tools/blob/main/package.json) của kho lưu trữ.
40+
41+
## Phát hiện lỗi? Một công cụ bị thiếu?
42+
43+
Nếu bạn cần một công cụ hiện không có ở đây, và bạn nghĩ rằng nó có thể hữu ích, bạn được chào đón để gửi một yêu cầu tính năng trong [phần vấn đề](https://github.com/CorentinTh/it-tools/issues/new/choose) trong kho GitHub.
44+
45+
Và nếu bạn phát hiện ra một lỗi, hoặc điều gì đó không hoạt động như mong đợi, xin vui lòng gửi báo cáo lỗi trong [phần vấn đề](https://github.com/CorentinTh/it-tools/issues/new/choose) trong kho GitHub.
46+
47+
404:
48+
notFound: '404 Không Tìm Thấy'
49+
sorry: 'Xin lỗi, trang này dường như không tồn tại'
50+
maybe: 'Có thể bộ nhớ đệm đang làm những điều kỳ lạ, thử làm mới cưỡng bức?'
51+
backHome: 'Quay về trang chủ'
52+
favoriteButton:
53+
remove: 'Xóa khỏi mục yêu thích'
54+
add: 'Thêm vào mục yêu thích'
55+
toolCard:
56+
new: Mới
57+
search:
58+
label: Tìm kiếm
59+
tools:
60+
categories:
61+
favorite-tools: 'Công cụ yêu thích của bạn'
62+
crypto: Crypto
63+
converter: Chuyển đổi
64+
web: Web
65+
images and videos: 'Hình ảnh & Video'
66+
development: Phát triển
67+
network: Mạng
68+
math: Toán học
69+
measurement: Đo lường
70+
text: Văn bản
71+
data: Dữ liệu

scripts/build-locales-files.mjs

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
import { existsSync, writeFileSync } from 'node:fs';
2+
import { Glob } from 'bun';
3+
import _ from 'lodash';
4+
5+
async function getPathsFromGlobs({ patterns, onlyFiles = true }) {
6+
const filePaths = [];
7+
8+
for (const pattern of patterns) {
9+
const glob = new Glob(pattern);
10+
11+
for await (const filePath of glob.scan({ onlyFiles, cwd: '.' })) {
12+
filePaths.push(filePath);
13+
}
14+
}
15+
16+
return { filePaths };
17+
}
18+
19+
function getLocaleKey({ filePath }) {
20+
const fileName = filePath.split('/').pop();
21+
return fileName.replace(/\.yml$/, '');
22+
}
23+
24+
async function createMissingLocaleFile({ localeKey }) {
25+
const fileName = `${localeKey}.yml`;
26+
27+
const { filePaths: localesDirs } = await getPathsFromGlobs({
28+
patterns: [
29+
'locales',
30+
'src/tools/*/locales',
31+
],
32+
onlyFiles: false,
33+
});
34+
35+
for (const localesDir of localesDirs) {
36+
const filePath = `${localesDir}/${fileName}`;
37+
38+
if (existsSync(filePath)) {
39+
console.log(`Locale file already exists: ${filePath}`);
40+
continue;
41+
}
42+
43+
console.log(`Creating missing locale file: ${filePath}`);
44+
writeFileSync(filePath, '', 'utf8');
45+
}
46+
}
47+
48+
const { filePaths } = await getPathsFromGlobs({
49+
patterns: [
50+
'locales/*.yml',
51+
'src/tools/*/locales/*.yml',
52+
],
53+
});
54+
55+
await Promise.all(
56+
_.chain(filePaths)
57+
.map(filePath => getLocaleKey({ filePath }))
58+
.uniq()
59+
.map(localeKey => createMissingLocaleFile({ localeKey }))
60+
.value(),
61+
);

src/modules/i18n/components/locale-selector.vue

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,9 @@ const localesLong: Record<string, string> = {
77
fr: 'Français',
88
pt: 'Português',
99
ru: 'Русский',
10+
uk: 'Українська',
1011
zh: '中文',
12+
vi: 'Tiếng Việt',
1113
};
1214
1315
const localeOptions = computed(() =>

src/tools/base64-file-converter/index.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
import { FileDigit } from '@vicons/tabler';
22
import { defineTool } from '../tool';
3+
import { translate } from '@/plugins/i18n.plugin';
34

45
export const tool = defineTool({
5-
name: 'Base64 file converter',
6+
name: translate('tools.base64-file-converter.title'),
67
path: '/base64-file-converter',
7-
description: 'Convert string, files or images into a it\'s base64 representation.',
8+
description: translate('tools.base64-file-converter.description'),
89
keywords: ['base64', 'converter', 'upload', 'image', 'file', 'conversion', 'web', 'data', 'format'],
910
component: () => import('./base64-file-converter.vue'),
1011
icon: FileDigit,
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
tools:
2+
base64-file-converter:
3+
title: Base64 file converter
4+
description: Convert string, files or images into a it\'s base64 representation.

src/tools/base64-file-converter/locales/fr.yml

Whitespace-only changes.

0 commit comments

Comments
 (0)