Добавлен раздел проектов

This commit is contained in:
2026-01-03 01:06:15 +03:00
parent c0b94c48c7
commit 7d1c8c63a9
7 changed files with 56 additions and 32 deletions

View File

@@ -11,7 +11,7 @@ trim_trailing_whitespace = true
insert_final_newline = true insert_final_newline = true
# JavaScript # JavaScript
[*.js] [{*.js,*.ts}]
indent_style = space indent_style = space
indent_size = 2 indent_size = 2

View File

@@ -6,6 +6,7 @@
"name": "me-tg-bot", "name": "me-tg-bot",
"dependencies": { "dependencies": {
"@grammyjs/menu": "^1.3.1", "@grammyjs/menu": "^1.3.1",
"@grammyjs/parse-mode": "^2.2.0",
"grammy": "^1.39.2", "grammy": "^1.39.2",
}, },
"devDependencies": { "devDependencies": {
@@ -20,6 +21,8 @@
"packages": { "packages": {
"@grammyjs/menu": ["@grammyjs/menu@1.3.1", "", { "peerDependencies": { "grammy": "^1.31.0" } }, "sha512-HJslY/n76T1Ar5qDDhNtjLs+PpcrlB9aGsXu3CJHLt147DC3K3lpiRvRW/Xh9/x9hqYVw7KKbnvsQXVgzoU81Q=="], "@grammyjs/menu": ["@grammyjs/menu@1.3.1", "", { "peerDependencies": { "grammy": "^1.31.0" } }, "sha512-HJslY/n76T1Ar5qDDhNtjLs+PpcrlB9aGsXu3CJHLt147DC3K3lpiRvRW/Xh9/x9hqYVw7KKbnvsQXVgzoU81Q=="],
"@grammyjs/parse-mode": ["@grammyjs/parse-mode@2.2.0", "", { "peerDependencies": { "grammy": "^1.36.1" } }, "sha512-sI5xjXYn1ihEEf1bJx4ew2KPsX1O3jsd2V/MpA1CX2tCYlxquidr7agk4IOR5bGEK38pyNVxVBdyCiy/eMxEfQ=="],
"@grammyjs/types": ["@grammyjs/types@3.23.0", "", {}, "sha512-D3jQ4UWERPsyR3op/YFudMMIPNTU47vy7L51uO9/73tMELmjO/+LX5N36/Y0CG5IQfIsz43MxiHI5rgsK0/k+g=="], "@grammyjs/types": ["@grammyjs/types@3.23.0", "", {}, "sha512-D3jQ4UWERPsyR3op/YFudMMIPNTU47vy7L51uO9/73tMELmjO/+LX5N36/Y0CG5IQfIsz43MxiHI5rgsK0/k+g=="],
"@types/bun": ["@types/bun@1.3.5", "", { "dependencies": { "bun-types": "1.3.5" } }, "sha512-RnygCqNrd3srIPEWBd5LFeUYG7plCoH2Yw9WaZGyNmdTEei+gWaHqydbaIRkIkcbXwhBT94q78QljxN0Sk838w=="], "@types/bun": ["@types/bun@1.3.5", "", { "dependencies": { "bun-types": "1.3.5" } }, "sha512-RnygCqNrd3srIPEWBd5LFeUYG7plCoH2Yw9WaZGyNmdTEei+gWaHqydbaIRkIkcbXwhBT94q78QljxN0Sk838w=="],

View File

@@ -18,6 +18,7 @@
}, },
"dependencies": { "dependencies": {
"@grammyjs/menu": "^1.3.1", "@grammyjs/menu": "^1.3.1",
"@grammyjs/parse-mode": "^2.2.0",
"grammy": "^1.39.2" "grammy": "^1.39.2"
} }
} }

View File

@@ -1,4 +1,7 @@
import { Menu } from '@grammyjs/menu'; import { Menu } from '@grammyjs/menu';
import { fmt } from '@grammyjs/parse-mode';
import projects from './projects.json';
const menuSkills = (ctx) => { const menuSkills = (ctx) => {
ctx.reply( ctx.reply(
@@ -8,19 +11,31 @@ const menuSkills = (ctx) => {
'`C/C++`, `Python`, `JavaScript`, `TypeScript`, `Crystal`', '`C/C++`, `Python`, `JavaScript`, `TypeScript`, `Crystal`',
'\n⛑ \*Администрирование:\*', '\n⛑ \*Администрирование:\*',
'`Arch`, `Ubuntu`, `nginx`', '`Arch`, `Ubuntu`, `nginx`',
'\n>Раздел в процессе написания\\.\\.\\.', '\n> Раздел в процессе написания\\.\\.\\.',
'\n🕙 Обновлено: 2 Jan 2026', '\n🕙 Обновлено: 2 Jan 2026',
].join('\n'), ].join('\n'),
{ parse_mode: 'MarkdownV2' }, { parse_mode: 'MarkdownV2' },
); );
}; };
const menu = new Menu('main') const menuProjects = (ctx) => {
.text('💪🏻 Скиллы', menuSkills) let projectsString: string = '';
.row()
.text('👔 Не нажимай', (ctx) => { projects.forEach((p) => {
ctx.reply('Я же просил не нажимать :)'); projectsString += fmt`\\- ${p.icon} [${p.name}](${p.url})\n`;
}) });
.row();
ctx.reply(
['👔 \*Проекты*\n', projectsString, '> Раздел в процессе написания\\.\\.\\.', '\n🕙 Обновлено: 2 Jan 2026'].join('\n'),
{
parse_mode: 'MarkdownV2',
link_preview_options: {
is_disabled: true,
},
},
);
};
const menu = new Menu('main').text('💪🏻 Скиллы', menuSkills).row().text('👔 Проекты', menuProjects).row();
export { menu }; export { menu };

5
src/projects.json Normal file
View File

@@ -0,0 +1,5 @@
[
{ "icon": "🍽️", "name": "Git инстанс", "url": "https://git.a2s.su" },
{ "icon": "🔤", "name": "е с точками", "url": "https://ё.a2s.su" },
{ "icon": "🌿", "name": "Minecraft [Java Edition] Batch Launcher", "url": "https://git.a2s.su/iiiypuk/minecraft-launcher" }
]