'use strict'; var Settings = (function () { let self = {}; self.configureInputs = function() { var inputs = []; $('[data-setting!=""][data-setting]').each(function() { inputs.push($(this)); }); return Promise.mapSeries(inputs, function (input, ii) { var settingName = input.data('setting'); var inputUnit = input.data('unit'); if (globalSettings.showProfileParameters) { if (FC.isBatteryProfileParameter(settingName)) { input.css("background-color","#fef2d5"); } if (FC.isControlProfileParameter(settingName)) { input.css("background-color","#d5ebfe"); } } return mspHelper.getSetting(settingName).then(function (s) { // Check if the input declares a parent // to be hidden in case of the setting not being available. // Otherwise, default to hiding its parent var parent = input.parents('.setting-container:first'); if (parent.length == 0) { parent = input.parent(); } if (!s) { // Setting doesn't exist. input.val(null); parent.remove(); return; } parent.show(); input.prop('title', 'CLI: ' + input.data('setting')); if (input.prop('tagName') == 'SELECT' || s.setting.table) { if (input.attr('type') == 'checkbox') { input.prop('checked', s.value > 0); } else { input.empty(); for (var ii = s.setting.min; ii <= s.setting.max; ii++) { var name = (s.setting.table ? s.setting.table.values[ii] : null); if (name) { var localizedName = chrome.i18n.getMessage(name); if (localizedName) { name = localizedName; } } else { // Fallback to the number itself name = ii; } var option = $('