mirror of
https://github.com/Insality/druid
synced 2025-06-27 18:37:45 +02:00
66 lines
1.5 KiB
Lua
66 lines
1.5 KiB
Lua
local druid = require("druid.druid")
|
|
|
|
local M = {}
|
|
|
|
local en = {
|
|
main_page = "Main page",
|
|
texts_page = "Text page",
|
|
button_page = "Button page",
|
|
scroll_page = "Scroll page",
|
|
slider_page = "Slider page",
|
|
input_page = "Input page",
|
|
grid_page = "Grid page",
|
|
infinity_page = "Infinity scroll",
|
|
ui_section_button = "Button",
|
|
ui_section_text = "Text",
|
|
ui_section_timer = "Timer",
|
|
ui_section_progress = "Progress",
|
|
ui_section_slider = "Slider",
|
|
ui_section_radio = "Radio",
|
|
ui_section_checkbox = "Checkbox",
|
|
ui_text_example = "Translated",
|
|
ui_text_change_lang = "Change lang",
|
|
}
|
|
|
|
local ru = {
|
|
main_page = "Основное",
|
|
texts_page = "Текст",
|
|
button_page = "Кнопки",
|
|
scroll_page = "Скролл",
|
|
slider_page = "Слайдеры",
|
|
input_page = "Текст. ввод",
|
|
grid_page = "Сетка",
|
|
infinity_page = "Беск. скролл",
|
|
ui_section_button = "Кнопка",
|
|
ui_section_text = "Текст",
|
|
ui_section_timer = "Таймер",
|
|
ui_section_progress = "Прогресс",
|
|
ui_section_slider = "Слайдер",
|
|
ui_section_radio = "Выбор",
|
|
ui_section_checkbox = "Мн. выбор",
|
|
ui_text_example = "Переведен",
|
|
ui_text_change_lang = "Сменить язык",
|
|
}
|
|
|
|
|
|
local data = en
|
|
|
|
|
|
function M.get_locale(lang_id, ...)
|
|
local localized_text = data[lang_id] or lang_id
|
|
|
|
if #{...} > 0 then
|
|
localized_text = string.format(localized_text, ...)
|
|
end
|
|
|
|
return localized_text
|
|
end
|
|
|
|
|
|
function M.toggle_locale()
|
|
data = data == en and ru or en
|
|
druid.on_language_change()
|
|
end
|
|
|
|
return M
|