Skip to content

Commit e2d690c

Browse files
committed
Application localization
1 parent c7f40b4 commit e2d690c

File tree

4 files changed

+42
-0
lines changed

4 files changed

+42
-0
lines changed

languages/main.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,13 @@
11
const en = require("./en")
22
const hu = require("./hu")
33

4+
const languages = {
5+
en,
6+
hu,
7+
}
8+
49
module.exports = {
510
en,
611
hu,
12+
languages,
713
}

lib/localization.js

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
const { languages } = require("@levminer/languages")
2+
const electron = require("electron")
3+
4+
/**
5+
* Localization
6+
*/
7+
module.exports = {
8+
/**
9+
* Localize the page
10+
* @param {renderer} rendererName
11+
*/
12+
localize: (renderer) => {
13+
const res = electron.ipcRenderer.sendSync("lang").lang_code
14+
let loc_id = 0
15+
16+
document.addEventListener("DOMContentLoaded", () => {
17+
document.querySelectorAll("[data-loc]").forEach(translateElements)
18+
})
19+
20+
const translateElements = (element) => {
21+
element.textContent = languages[res][renderer][loc_id]
22+
23+
loc_id++
24+
}
25+
},
26+
}

lib/main.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ const typedef = require("./typedef")
77
const convert = require("./convert")
88
const time = require("./time")
99
const password = require("./password/index")
10+
const localization = require("./localization")
1011

1112
// ? export modules
1213
module.exports = {
@@ -19,4 +20,5 @@ module.exports = {
1920
convert,
2021
time,
2122
password,
23+
localization,
2224
}

main.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1526,6 +1526,14 @@ ipc.on("loggerError", (event, data) => {
15261526
logger.rendererError(data.id, data.message, data.error)
15271527
})
15281528

1529+
/**
1530+
* Send lang code
1531+
*/
1532+
ipc.on("lang", (event) => {
1533+
const lang_code = app.getLocale().slice(0, 2)
1534+
event.returnValue = { lang_code }
1535+
})
1536+
15291537
/**
15301538
* Logger path
15311539
*/

0 commit comments

Comments
 (0)