"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
/**
 * penguins-eggs
 * components: keyboard.tsx
 * author: Piero Proietti
 * email: piero.proietti@gmail.com
 * license: MIT
 */
const react_1 = tslib_1.__importDefault(require("react"));
const ink_1 = require("ink");
const title_1 = tslib_1.__importDefault(require("./elements/title"));
const steps_1 = tslib_1.__importDefault(require("./elements/steps"));
const js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
const fs_1 = tslib_1.__importDefault(require("fs"));
/**
 * modello tastiere da /usr/share/X11/xkb/rules/xorg.xml
 */
function Keyboard({ keyboardModel = '', keyboardLayout = '', keyboardVariant = '', keyboardOptions = '' }) {
    let productName = 'unknown';
    let version = 'x.x.x';
    let configRoot = '/etc/penguins-eggs.d/krill/';
    if (fs_1.default.existsSync('/etc/calamares/settings.conf')) {
        configRoot = '/etc/calamares/';
    }
    const settings = js_yaml_1.default.load(fs_1.default.readFileSync(configRoot + 'settings.conf', 'utf-8'));
    const branding = settings.branding;
    const calamares = js_yaml_1.default.load(fs_1.default.readFileSync(configRoot + 'branding/' + branding + '/branding.desc', 'utf-8'));
    productName = calamares.strings.productName;
    version = calamares.strings.version;
    /**
    * totale width=74
    * step width=15
    * finestra with=59
    */
    return (react_1.default.createElement(react_1.default.Fragment, null,
        react_1.default.createElement(title_1.default, { title: productName }),
        react_1.default.createElement(ink_1.Box, { width: 74, height: 11, borderStyle: "round", flexDirection: "column" },
            react_1.default.createElement(ink_1.Box, { flexDirection: "column" },
                react_1.default.createElement(ink_1.Box, { flexDirection: "row" },
                    react_1.default.createElement(steps_1.default, { step: 3 }),
                    react_1.default.createElement(ink_1.Box, { flexDirection: "column" },
                        react_1.default.createElement(ink_1.Box, null,
                            react_1.default.createElement(ink_1.Text, null, "Model: "),
                            react_1.default.createElement(ink_1.Text, { color: "cyan" }, keyboardModel)),
                        react_1.default.createElement(ink_1.Box, null,
                            react_1.default.createElement(ink_1.Text, null, "Layout: "),
                            react_1.default.createElement(ink_1.Text, { color: "cyan" }, keyboardLayout)),
                        react_1.default.createElement(ink_1.Box, null,
                            react_1.default.createElement(ink_1.Text, null, "Variant: "),
                            react_1.default.createElement(ink_1.Text, { color: "cyan" }, keyboardVariant)),
                        react_1.default.createElement(ink_1.Box, null,
                            react_1.default.createElement(ink_1.Text, null, "Options: "),
                            react_1.default.createElement(ink_1.Text, { color: "cyan" }, keyboardOptions))))))));
}
exports.default = Keyboard;
