node-vk-bot-api-i18n
🇪🇺 I18n middleware for node-vk-bot-api.
Install
$ npm i node-vk-bot-api-i18n -S
Tests
Before you must set TOKEN
and GROUP_ID
in process.env
.
$ npm test
Usage
const VkBot = require('node-vk-bot-api')
const Session = require('node-vk-bot-api/lib/session')
const I18n = require('node-vk-bot-api-i18n')
const path = require('path')
const bot = new VkBot({
token: process.env.TOKEN,
group_id: process.env.GROUP_ID
})
const session = new Session()
const i18n = new I18n({
locales: ['en', 'ru'],
defaultLocale: 'en',
directory: path.join(__dirname, 'locales')
})
bot.use(session.middleware())
bot.use(i18n.middleware())
bot.command('/start', (ctx) => {
ctx.reply(ctx.i18n.__('start', {
name: 'Mikhail'
}))
})
bot.startPolling()
API
Options
locales
: Languages listdefaultLocale
: Default languagedirectory
: Absolute path to locales directory
Methods
ctx.i18n.locale=
: Setter for localectx.i18n.locale
: Getter for localectx.i18n.__(key, [variables])
: Generate message from template
Locale file example
All files must be store as json.
{
"start": "Hello, %name%!",
"errors": {
"userNotFound": "User not found."
}
}
License
MIT.