-- ChatTranslateDictionary_Vocab14.lua
--
-- Vierzehntes, letztes Zusatzmodul: Geräteeigenschaften und IT-Verben.
-- Enthaelt NUR Woerter, die in keinem vorherigen Modul vorkommen.

CT_Dictionary = CT_Dictionary or {}
CT_Dictionary.words = CT_Dictionary.words or {}

local vocab14 = {
    { en = "outdated", de = "veraltet" },
    { en = "cutting-edge", de = "hochmodern" },
    { en = "user-friendly", de = "benutzerfreundlich" },
    { en = "lightweight", de = "leichtgewichtig" },
    { en = "bulky", de = "klobig" },
    { en = "compact", de = "kompakt" },
    { en = "portable", de = "tragbar" },
    { en = "wireless", de = "kabellos" },
    { en = "handheld", de = "handlich" },
    { en = "customizable", de = "anpassbar" },
    { en = "reusable", de = "wiederverwendbar" },
    { en = "disposable", de = "Einweg-" },
    { en = "biodegradable", de = "biologisch abbaubar" },
    { en = "waterproof", de = "wasserdicht" },
    { en = "shockproof", de = "stoßfest" },
    { en = "airtight", de = "luftdicht" },
    { en = "soundproof", de = "schalldicht" },
    { en = "fireproof", de = "feuerfest" },
    { en = "rustproof", de = "rostfrei" },
    { en = "windproof", de = "windundurchlässig" },
    { en = "to unpack", de = "auspacken" },
    { en = "to assemble", de = "zusammenbauen" },
    { en = "to disassemble", de = "zerlegen" },
    { en = "to install", de = "installieren" },
    { en = "to uninstall", de = "deinstallieren" },
    { en = "to configure", de = "konfigurieren" },
    { en = "to calibrate", de = "kalibrieren" },
    { en = "to troubleshoot", de = "Fehler beheben" },
    { en = "to refill", de = "nachfüllen" },
    { en = "to recharge", de = "aufladen" },
    { en = "draft version", de = "Entwurfsversion" },
    { en = "final version", de = "endgültige Version" },
    { en = "revision", de = "Überarbeitung" },
    { en = "restore", de = "wiederherstellen" },
    { en = "sync", de = "synchronisieren" },
    { en = "merge (files)", de = "zusammenführen" },
    { en = "overwrite", de = "überschreiben" },
}

for _, entry in ipairs(vocab14) do
    table.insert(CT_Dictionary.words, entry)
end

local function BuildIndex(sourceTable, destIndex)
    for _, entry in ipairs(sourceTable) do
        for srcLang, srcText in pairs(entry) do
            local key = srcText:lower()
            for tgtLang, tgtText in pairs(entry) do
                if tgtLang ~= srcLang then
                    destIndex[tgtLang] = destIndex[tgtLang] or {}
                    destIndex[tgtLang][key] = tgtText
                end
            end
        end
    end
end

CT_Dictionary.wordIndex = CT_Dictionary.wordIndex or {}
BuildIndex(CT_Dictionary.words, CT_Dictionary.wordIndex)