telegraf-tools

1.1.3 • Public • Published

icon

Telegraf-tools

Пакет который включает в себя множество дополнений для удобной работы с библиотекой Telegraf, данный пакет упростит работу с кодом, а так-же улучшит его функциональность.

Установка

Установка через node:

$ npm i telegraf-tools

Импортируйте модуль:

const { loadlib, createJsonBase, logger, checkFileExists, renameLib, folderLoader, multipleLoader } = require('telegraf-tools')(bot);

Список методов

Пример использования JsonBase:

const { Telegraf } = require('telegraf');
require('dotenv').config();
const bot = new Telegraf(process.env.BOT_TOKEN);
const { createJsonBase } = require('telegraf-tools');

createJsonBase()

bot.context.user = bot.context.tools.Users(() => {
    is_admin: false,
    // etc
})

bot.context.chats = bot.context.tools.JsonBase("filename", [])

// Создается файл filename.json с пустым массивом в папку database, если ее нету создает собственоручно

bot
.launch({dropPendingUpdates: true})
.then(() => console.log('Бот запущен!'))
.catch((err) => console.error(err));

Так-же вы можете упростить задачу транспартировки базы данных:

bot
.use((ctx, next) => {
    if (!ctx.from) return;
    ctx.user = ctx.users.get(ctx.from, true);
    return next();
})

методы JsonBase:

const user = ctx.users.get(ctx.from, true); // если нужно создавать пользователя true, если нет ничего не пишем

user.edit("key", "value"); // изменить параметр в базе данных пользователя

users.getArray(); // получить базу данных пользователей в виде массива

Методы:

loadlib()

Метод для загрузки локальных библиотек.

loadlib(filename: string, defaultPath?: string) => void
Параметр Тип Описание
filename string Название файла
defaultPath string Путь до файла, указывать только если файл не в корне

logger()

Метод для вывода логов в консоль с подсветкой текста разными цветами.

logger.log(text: string, extra?: object) => void
Параметр Тип Описание
text string Текст лога
extra object Объект цветов и их сочетаний

createJsonBase()

Метод для создания json-файла для хранения базы данных в папке database.

createJsonBase() => void

multipleLoader()

Метод для загрузки нескольких локальных библиотек одновременно.

multipleLoader(libs: [], defaultPath?: string) => void
Параметр Тип Описание
libs array Названия файлов
defaultPath string Путь до файлов, указывать только если файлы не в корне

checkFileExists()

Метод для проверки наличия файла по заданному пути.

checkFileExists(filePath: string) => boolean
Параметр Тип Описание
filePath string Путь до файла

renameLib()

Метод для загрузки нескольких локальных библиотек одновременно.

renameLib(oldName: string, newName: string) => void
Параметр Тип Описание
oldName string Название старой библиотеки
newName string Желаемое название

folderLoader()

Метод для загрузки всех файлов из указанной директории.

folderLoader(folderPath: string) => void
Параметр Тип Описание
folderPath string Путь к папке с библиотеками

Package Sidebar

Install

npm i telegraf-tools

Weekly Downloads

2

Version

1.1.3

License

ISC

Unpacked Size

35.8 kB

Total Files

13

Last publish

Collaborators

  • murphyy