@iobroker/create-adapter
Version:
Command line utility to create customized ioBroker adapters
43 lines • 1.3 kB
JavaScript
;
const questions_1 = require("../../src/lib/core/questions");
function generateSetting(settings) {
if (settings.inputType === "select") {
return {
type: "select",
label: settings.label || settings.key,
options: settings.options.map(o => ({ label: o.text, value: o.value })),
newLine: true,
xs: 12,
sm: 12,
md: 6,
lg: 4,
xl: 4,
};
}
return {
type: settings.inputType,
label: settings.label || settings.key,
newLine: true,
xs: 12,
sm: 12,
md: 6,
lg: 4,
xl: 4,
};
}
module.exports = (answers => {
const isAdapter = answers.features.indexOf("adapter") > -1;
const useJsonConfig = answers.adminUi === "json";
if (!isAdapter || !useJsonConfig) {
return;
}
const adapterSettings = answers.adapterSettings ?? (0, questions_1.getDefaultAnswer)("adapterSettings");
const items = adapterSettings.reduce((old, setting) => ({ ...old, [setting.key]: generateSetting(setting) }), {});
const config = {
i18n: true,
type: "panel",
items,
};
return JSON.stringify(config, null, 4);
});
//# sourceMappingURL=jsonConfig.json.js.map