const ledDeviceWizardUtils = (() => { // Layout positions const positionMap = { "top": { hmin: 0.15, hmax: 0.85, vmin: 0, vmax: 0.2 }, "topleft": { hmin: 0, hmax: 0.15, vmin: 0, vmax: 0.15 }, "topright": { hmin: 0.85, hmax: 1.0, vmin: 0, vmax: 0.15 }, "bottom": { hmin: 0.15, hmax: 0.85, vmin: 0.8, vmax: 1.0 }, "bottomleft": { hmin: 0, hmax: 0.15, vmin: 0.85, vmax: 1.0 }, "bottomright": { hmin: 0.85, hmax: 1.0, vmin: 0.85, vmax: 1.0 }, "left": { hmin: 0, hmax: 0.15, vmin: 0.15, vmax: 0.85 }, "lefttop": { hmin: 0, hmax: 0.15, vmin: 0, vmax: 0.5 }, "leftmiddle": { hmin: 0, hmax: 0.15, vmin: 0.25, vmax: 0.75 }, "leftbottom": { hmin: 0, hmax: 0.15, vmin: 0.5, vmax: 1.0 }, "right": { hmin: 0.85, hmax: 1.0, vmin: 0.15, vmax: 0.85 }, "righttop": { hmin: 0.85, hmax: 1.0, vmin: 0, vmax: 0.5 }, "rightmiddle": { hmin: 0.85, hmax: 1.0, vmin: 0.25, vmax: 0.75 }, "rightbottom": { hmin: 0.85, hmax: 1.0, vmin: 0.5, vmax: 1.0 }, "lightPosBottomLeft14": { hmin: 0, hmax: 0.25, vmin: 0.85, vmax: 1.0 }, "lightPosBottomLeft12": { hmin: 0.25, hmax: 0.5, vmin: 0.85, vmax: 1.0 }, "lightPosBottomLeft34": { hmin: 0.5, hmax: 0.75, vmin: 0.85, vmax: 1.0 }, "lightPosBottomLeft11": { hmin: 0.75, hmax: 1, vmin: 0.85, vmax: 1.0 }, "lightPosBottomLeft112": { hmin: 0, hmax: 0.5, vmin: 0.85, vmax: 1.0 }, "lightPosBottomLeft121": { hmin: 0.5, hmax: 1, vmin: 0.85, vmax: 1.0 }, "lightPosBottomLeftNewMid": { hmin: 0.25, hmax: 0.75, vmin: 0.85, vmax: 1.0 }, "lightPosTopLeft112": { hmin: 0, hmax: 0.5, vmin: 0, vmax: 0.15 }, "lightPosTopLeft121": { hmin: 0.5, hmax: 1, vmin: 0, vmax: 0.15 }, "lightPosTopLeftNewMid": { hmin: 0.25, hmax: 0.75, vmin: 0, vmax: 0.15 }, "lightPosEntire": { hmin: 0.0, hmax: 1.0, vmin: 0.0, vmax: 1.0 } }; return { //return editor Value eV: function (vn, defaultVal = "") { let editor = null; if (vn) { editor = conf_editor.getEditor("root.specificOptions." + vn); } if (editor === null) { return defaultVal; } else if (defaultVal !== "" && !isNaN(defaultVal) && isNaN(editor.getValue())) { return defaultVal; } else { return editor.getValue(); } }, assignLightPos: function (pos, name) { // Retrieve the corresponding position object from the positionMap const i = positionMap[pos] || positionMap["lightPosEntire"]; i.name = name; return i; }, getLayoutPositions: function () { return Object.keys(positionMap); }, getLayoutPositionsTitles: function () { let layoutPositionTitles = []; for (const layoutPosition of Object.keys(positionMap)) { layoutPositionTitles.push($.i18n('conf_leds_layout_cl_' + layoutPosition)); } return layoutPositionTitles; } }; })(); export { ledDeviceWizardUtils };