Fixed following code smells reported by SonarQube:

1) Immediately return this expression instead of assigning it to the temporary variable.
 2) Extract this nested ternary operation into an independent statement.
 3) Expected a `for-of` loop instead of a `for` loop with this simple iteration.
This commit is contained in:
Akshay Joshi
2022-01-18 14:49:54 +05:30
parent e3807ec3d6
commit 9f836f5433
62 changed files with 367 additions and 319 deletions

View File

@@ -277,7 +277,7 @@ export default function DataGridView({
/>;
}
};
colInfo.Cell.displayName = 'Cell',
colInfo.Cell.displayName = 'Cell';
colInfo.Cell.propTypes = {
row: PropTypes.object.isRequired,
};
@@ -316,7 +316,7 @@ export default function DataGridView({
);
}
};
colInfo.Cell.displayName = 'Cell',
colInfo.Cell.displayName = 'Cell';
colInfo.Cell.propTypes = {
row: PropTypes.object.isRequired,
};
@@ -381,7 +381,7 @@ export default function DataGridView({
/>;
},
};
colInfo.Cell.displayName = 'Cell',
colInfo.Cell.displayName = 'Cell';
colInfo.Cell.propTypes = {
row: PropTypes.object.isRequired,
value: PropTypes.any,

View File

@@ -101,14 +101,18 @@ export function getFieldMetaData(field, schema, value, viewHelperProps, onlyMode
}
let {visible, disabled, readonly, editable} = field;
let verInLimit;
let verInLimit = (_.isUndefined(viewHelperProps.serverInfo) ? true :
((_.isUndefined(field.server_type) ? true :
if (_.isUndefined(viewHelperProps.serverInfo)) {
verInLimit= true;
} else {
verInLimit = ((_.isUndefined(field.server_type) ? true :
(viewHelperProps.serverInfo.type in field.server_type)) &&
(_.isUndefined(field.min_version) ? true :
(viewHelperProps.serverInfo.version >= field.min_version)) &&
(_.isUndefined(field.max_version) ? true :
(viewHelperProps.serverInfo.version <= field.max_version))));
(viewHelperProps.serverInfo.version <= field.max_version)));
}
retData.readonly = viewHelperProps.inCatalog || (viewHelperProps.mode == 'properties');
if(!retData.readonly) {

View File

@@ -36,9 +36,6 @@ define([
this.pgResizeTimeout = null;
/** Calculations based on https://getbootstrap.com/docs/4.1/layout/grid/#grid-options **/
if (w < 480) {
elAttr = 'xs';
}
if (w >= 480) {
elAttr = 'sm';
}
@@ -104,9 +101,9 @@ define([
* with undefined keyCode. The undefined keyCode matches the undefined key
* of alertify and triggers the button
*/
for(let i=0; i<this.__internal.buttons.length; i++) {
if(_.isUndefined(this.__internal.buttons[i]['key'])) {
this.__internal.buttons[i]['key'] = null;
for(let btn_val of this.__internal.buttons) {
if(_.isUndefined(btn_val['key'])) {
btn_val['key'] = null;
}
}
let self = this;
@@ -288,8 +285,8 @@ define([
if(ev.which === 13 || ev.which === 27) {
let suppressForClasses = ['select2-selection', 'select2-search__field'];
let $el = $(ev.target);
for(let i=0; i<suppressForClasses.length; i++){
if($el.hasClass(suppressForClasses[i])){
for(let class_val of suppressForClasses){
if($el.hasClass(class_val)){
ev.preventDefault();
ev.stopImmediatePropagation();
ev.stopPropagation();

View File

@@ -14,14 +14,13 @@ import axios from 'axios';
/* Get the axios instance to call back end APIs.
Do not import axios directly, instead use this */
export default function getApiInstance(headers={}) {
const api = axios.create({
return axios.create({
headers: {
'Content-type': 'application/json',
[pgAdmin.csrf_token_header]: pgAdmin.csrf_token,
...headers,
}
});
return api;
}
export function parseApiError(error) {

View File

@@ -1128,6 +1128,14 @@ define([
},
});
let placeholder = pgAdmin.enable_binary_path_browsing ? gettext('Select binary path...') : gettext('Enter binary path...'),
browse_btn_visible = pgAdmin.enable_binary_path_browsing ? true : false;
if (pgAdmin.server_mode === 'False') {
placeholder = gettext('Select binary path...');
browse_btn_visible = true;
}
this.gridColumns = [{
name: 'isDefault',
label: gettext('Set as default'),
@@ -1161,10 +1169,10 @@ define([
cell: Backgrid.Extension.SelectFileCell,
dialog_type: 'select_folder',
dialog_title: gettext('Select Folder'),
placeholder: pgAdmin.server_mode === 'False' ? gettext('Select binary path...') : pgAdmin.enable_binary_path_browsing ? gettext('Select binary path...') : gettext('Enter binary path...'),
placeholder: placeholder,
browse_btn_label: gettext('Select path'),
check_btn_label: gettext('Validate utilities'),
browse_btn_visible: pgAdmin.server_mode === 'False' ? true : pgAdmin.enable_binary_path_browsing ? true : false
browse_btn_visible: browse_btn_visible
}];
var BinPathCollection = this.BinPathCollection = new (Backbone.Collection.extend({
@@ -1224,8 +1232,7 @@ define([
// Check if unique columns provided are also in model attributes.
if (uniqueCol.length > _.intersection(columns, uniqueCol).length) {
var errorMsg = 'Developer: Unique columns [ ' + _.difference(uniqueCol, columns) + ' ] not found in collection model [ ' + columns + ' ].';
throw errorMsg;
throw new Error('Developer: Unique columns [ ' + _.difference(uniqueCol, columns) + ' ] not found in collection model [ ' + columns + ' ].');
}
var collection = self.collection = self.model.get(self.field.get('name'));
@@ -2061,13 +2068,16 @@ define([
// here?
if (s.type == 'group') {
var visible = true;
ver_in_limit = (_.isUndefined(server_info) ? true :
((_.isUndefined(s.server_type) ? true :
if (_.isUndefined(server_info)) {
ver_in_limit = true;
} else {
ver_in_limit = ((_.isUndefined(s.server_type) ? true :
(server_info.type in s.server_type)) &&
(_.isUndefined(s.min_version) ? true :
(server_info.version >= s.min_version)) &&
(_.isUndefined(s.max_version) ? true :
(server_info.version <= s.max_version))));
(server_info.version <= s.max_version)));
}
if (s.mode && _.isObject(s.mode))
visible = (_.indexOf(s.mode, mode) > -1);
@@ -2097,13 +2107,16 @@ define([
// Generate the empty group list (if not exists)
groups[group] = (groups[group] || []);
ver_in_limit = (_.isUndefined(server_info) ? true :
((_.isUndefined(s.server_type) ? true :
if (_.isUndefined(server_info)) {
ver_in_limit = true;
} else {
ver_in_limit = ((_.isUndefined(s.server_type) ? true :
(server_info.type in s.server_type)) &&
(_.isUndefined(s.min_version) ? true :
(server_info.version >= s.min_version)) &&
(_.isUndefined(s.max_version) ? true :
(server_info.version <= s.max_version))));
(server_info.version <= s.max_version)));
}
var disabled = (
!ver_in_limit || in_catalog
@@ -3434,10 +3447,10 @@ define([
keyPathAccessor: function(obj, path) {
var res = obj;
path = path.split('.');
for (var i = 0; i < path.length; i++) {
for (let path_val of path) {
if (_.isNull(res)) return null;
if (_.isEmpty(path[i])) continue;
if (!_.isUndefined(res[path[i]])) res = res[path[i]];
if (_.isEmpty(path_val)) continue;
if (!_.isUndefined(res[path_val])) res = res[path_val];
}
return res;
},

View File

@@ -1040,8 +1040,8 @@ define([
if(select2_opts.first_empty) {
optionValues.unshift(this.defaults.opt);
}
for (var i = 0; i < optionValues.length; i++) {
var opt = optionValues[i];
for (let option_val of optionValues) {
var opt = option_val;
if (_.isArray(opt)) {
@@ -1331,7 +1331,6 @@ define([
}, 10);
}
}, 10);
return;
},
});
@@ -1759,12 +1758,16 @@ define([
*/
fromRaw: function(rawData) {
if (rawData == null) return '';
var m = this.modelInUnixOffset ? moment(rawData) :
this.modelInUnixTimestamp ? moment.unix(rawData) :
this.modelInUTC ?
moment.utc(rawData, this.modelFormat, this.modelLang) :
moment(rawData, this.modelFormat, this.modelLang);
var m = null;
if (this.modelInUnixOffset) {
m = moment(rawData);
} else if (this.modelInUnixTimestamp) {
m = moment.unix(rawData);
} else if (this.modelInUTC) {
m = moment.utc(rawData, this.modelFormat, this.modelLang);
} else {
m = moment(rawData, this.modelFormat, this.modelLang);
}
if (this.displayInUnixOffset) return +m;
@@ -1789,12 +1792,16 @@ define([
@return {string}
*/
toRaw: function(formattedData) {
var m = this.displayInUnixOffset ? moment(+formattedData) :
this.displayInUnixTimestamp ? moment.unix(+formattedData) :
this.displayInUTC ?
moment.utc(formattedData, this.displayFormat, this.displayLang) :
moment(formattedData, this.displayFormat, this.displayLang);
var m = null;
if (this.displayInUnixOffset) {
m = moment(+formattedData);
} else if (this.displayInUnixTimestamp) {
m = moment.unix(+formattedData);
} else if (this.displayInUTC) {
m = moment.utc(formattedData, this.displayFormat, this.displayLang);
} else {
m = moment(formattedData, this.displayFormat, this.displayLang);
}
if (!m || !m.isValid()) return (this.allowEmpty && formattedData === '') ? null : undefined;

View File

@@ -10,7 +10,7 @@
define(['jquery', 'underscore'],
function ($, _) {
var check_node_visibility = function (pgBrowser, node_type) {
return function (pgBrowser, node_type) {
if(_.isUndefined(node_type) || _.isNull(node_type)) {
return true;
}
@@ -39,6 +39,4 @@ define(['jquery', 'underscore'],
return true;
}
};
return check_node_visibility;
});

View File

@@ -123,12 +123,11 @@
}
CodeMirror.registerHelper('fold', 'sql', function(cm, start) {
var fromToPos = pgadminKeywordRangeFinder(cm, start, [
return pgadminKeywordRangeFinder(cm, start, [
{start: 'BEGIN', end:'END;'},
{start: 'IF', end:'END IF'},
{start: 'LOOP', end:'END LOOP'},
{start: 'CASE', end:'END CASE'},
]);
return fromToPos;
});
});

View File

@@ -632,13 +632,17 @@ const customReactSelectStyles = (theme, readonly)=>({
color: 'inherit',
}),
option: (provided, state)=>{
let bgColor = 'inherit';
if (state.isFocused) {
bgColor = theme.palette.grey[400];
} else if (state.isSelected) {
bgColor = theme.palette.primary.light;
}
return {
...provided,
padding: '0.5rem',
color: 'inherit',
backgroundColor: state.isFocused ?
theme.palette.grey[400] : (state.isSelected ?
theme.palette.primary.light : 'inherit'),
backgroundColor: bgColor,
};
},
multiValue: (provided)=>({

View File

@@ -185,9 +185,8 @@ export default function PgTable({ columns, data, isSelectRow, ...props }) {
.filter((column) => {
if (column.isVisible === undefined || columns.isVisible === true) {
return false;
} else{
return true;
}
return true;
}
)
.map((column) => column.accessor)

View File

@@ -12,7 +12,7 @@ define([
'sources/selection/range_selection_helper',
], function ($, RangeSelectionHelper) {
var ActiveCellCapture = function () {
return function () {
var KEY_RIGHT = 39;
var KEY_LEFT = 37;
var KEY_UP = 38;
@@ -200,6 +200,4 @@ define([
}
}
};
return ActiveCellCapture;
});

View File

@@ -10,7 +10,7 @@
import Notify from '../helpers/Notifier';
define(['sources/gettext'], function (gettext) {
var clipboard = {
return {
copyTextToClipboard: function (text) {
var textArea = document.createElement('textarea');
@@ -92,5 +92,4 @@ define(['sources/gettext'], function (gettext) {
return window.parent.window.clipboardData || '';
},
};
return clipboard;
});

View File

@@ -12,7 +12,7 @@ define([
'sources/selection/range_selection_helper',
'slickgrid',
], function ($, RangeSelectionHelper) {
var ColumnSelector = function () {
return function () {
var Slick = window.Slick,
gridEventBus = new Slick.EventHandler(),
onBeforeColumnSelectAll = new Slick.Event(),
@@ -161,5 +161,4 @@ define([
'toggleColumnHeaderForCopyHeader': toggleColumnHeaderForCopyHeader,
});
};
return ColumnSelector;
});

View File

@@ -14,7 +14,7 @@ define(['jquery',
'sources/selection/range_selection_helper',
'sources/url_for',
], function ($, gettext, ColumnSelector, RowSelector, RangeSelectionHelper, url_for) {
var GridSelector = function (columnDefinitions) {
return function (columnDefinitions) {
var Slick = window.Slick,
rowSelector = new RowSelector(columnDefinitions),
columnSelector = new ColumnSelector(columnDefinitions),
@@ -89,6 +89,4 @@ define(['jquery',
'onGridColumnSelectAll': onGridColumnSelectAll,
});
};
return GridSelector;
});

View File

@@ -13,7 +13,7 @@ define([
'sources/selection/column_selector',
'slickgrid',
], function ($, RangeSelectionHelper, ColumnSelector) {
var RowSelector = function () {
return function () {
var Slick = window.Slick;
var gridEventBus = new Slick.EventHandler();
@@ -107,6 +107,4 @@ define([
'getColumnDefinitions': getColumnDefinitions,
});
};
return RowSelector;
});

View File

@@ -59,11 +59,10 @@ define(
function getPrimaryKeysForSelectedRows(self, selectedRows) {
var dataView = self.grid.getData();
var stagedRows = getRowPrimaryKeyValuesToStage(selectedRows, _.keys(self.keys), dataView, self.client_primary_key);
return stagedRows;
return getRowPrimaryKeyValuesToStage(selectedRows, _.keys(self.keys), dataView, self.client_primary_key);
}
var setStagedRows = function () {
return function () {
var self = this;
function setStagedRows(rowsToStage) {
@@ -103,6 +102,5 @@ define(
setStagedRows({});
}
};
return setStagedRows;
}
);

View File

@@ -14,7 +14,7 @@ define([
'sources/window',
'slickgrid',
], function ($, _, RangeSelectionHelper, pgWindow) {
var XCellSelectionModel = function (options) {
return function (options) {
var KEY_ARROW_RIGHT = 39;
var KEY_ARROW_LEFT = 37;
@@ -65,8 +65,8 @@ define([
function removeInvalidRanges(ranges) {
var result = [];
for (var i = 0; i < ranges.length; i++) {
var r = ranges[i];
for (let range_val of ranges) {
var r = range_val;
if (_grid.canCellBeSelected(r.fromRow, r.fromCell) && _grid.canCellBeSelected(r.toRow, r.toCell)) {
result.push(r);
}
@@ -90,8 +90,8 @@ define([
function setSelectedRows(rows) {
_ranges = [];
for(var i = 0 ; i < rows.length ; i++) {
_ranges.push(RangeSelectionHelper.rangeForRow(_grid, rows[i]));
for(let row_val of rows) {
_ranges.push(RangeSelectionHelper.rangeForRow(_grid, row_val));
}
}
@@ -237,5 +237,4 @@ define([
'onSelectedRangesChanged': new Slick.Event(),
});
};
return XCellSelectionModel;
});

View File

@@ -9,7 +9,7 @@
define([],
function () {
var sizePrettify = function (rawSize) {
return function (rawSize) {
var size = Math.abs(rawSize),
limit = 10 * 1024,
limit2 = limit - 1,
@@ -28,6 +28,4 @@ define([],
return Math.round(size) + ' ' + sizeUnits[cnt];
}
};
return sizePrettify;
});

View File

@@ -95,8 +95,8 @@
if (window.Slick.Data && data instanceof window.Slick.Data.DataView) {
data = data.getItems();
}
for (var i = 0; i < data.length; i++) {
texts.push(data[i][columnDef.field]);
for (let data_val of data) {
texts.push(data_val[columnDef.field]);
}
var template = getMaxTextTemplate(texts, columnDef, colIndex, data, rowEl);
var width = getTemplateWidth(rowEl, template);

View File

@@ -231,11 +231,10 @@ class ExecuteQuery {
}
static prepareAnalyzeSql(sqlStatement, analyzeSql) {
let sqlStatementWithAnalyze = {
return {
sql: sqlStatement,
explain_plan: analyzeSql,
};
return sqlStatementWithAnalyze;
}
onExecuteHTTPError(httpMessage) {

View File

@@ -133,6 +133,5 @@ export default function filterDialogModel(response) {
},
});
let model = new FilterCollectionModel();
return model;
return new FilterCollectionModel();
}

View File

@@ -428,8 +428,7 @@ function itemToTable(item, columns, ignoredColumnIndex) {
}
function generateInfoContent(infoList) {
let infoContent = infoList.join('<br>');
return infoContent;
return infoList.join('<br>');
}
module.exports = GeometryViewer;

View File

@@ -210,9 +210,7 @@ export default function macroModel(transId) {
// Render subNode grid
var subNodeGrid = grid.render().$el;
var $dialog = gridBody.append(subNodeGrid);
return $dialog;
return gridBody.append(subNodeGrid);
},
}),
columns: ['key_label', 'name', 'sql'],
@@ -223,6 +221,5 @@ export default function macroModel(transId) {
},
});
let model = new MacroCollectionModel();
return model;
return new MacroCollectionModel();
}

View File

@@ -65,7 +65,7 @@ let queryToolActions = {
},
explain: function (sqlEditorController) {
// let explainQuery = `EXPLAIN (FORMAT JSON, ANALYZE OFF, VERBOSE ${verbose}, COSTS ${costEnabled}, BUFFERS OFF, TIMING OFF) `;
/* let explainQuery = `EXPLAIN (FORMAT JSON, ANALYZE OFF, VERBOSE ${verbose}, COSTS ${costEnabled}, BUFFERS OFF, TIMING OFF) `; */
const explainObject = {
format: 'json',
analyze: false,

View File

@@ -231,7 +231,10 @@ export class Tree {
children(item) {
const model = this.tree.getModel();
return item ? (item.children !== null ? item.children : []) : model.root.children;
if (item) {
return (item.children !== null ? item.children : []);
}
return model.root.children;
}
itemFrom(domElem) {

View File

@@ -306,14 +306,14 @@ _.extend(NumberFormatter.prototype, {
var rawData = '';
var thousands = formattedData.split(this.orderSeparator);
for (var i = 0; i < thousands.length; i++) {
rawData += thousands[i];
for (let thousand_val of thousands) {
rawData += thousand_val;
}
var decimalParts = rawData.split(this.decimalSeparator);
rawData = '';
for (var j = 0; j < decimalParts.length; j++) {
rawData = rawData + decimalParts[j] + '.';
for (let decimal_val of decimalParts) {
rawData = rawData + decimal_val + '.';
}
if (rawData[rawData.length - 1] === '.') {
@@ -456,7 +456,10 @@ _.extend(DatetimeFormatter.prototype, {
data = data.trim();
var parts = data.split(this.ISO_SPLITTER_RE) || [];
date = this.DATE_RE.test(parts[0]) ? parts[0] : '';
time = date && parts[1] ? parts[1] : this.TIME_RE.test(parts[0]) ? parts[0] : '';
time = this.TIME_RE.test(parts[0]) ? parts[0] : '';
if (date && parts[1]) {
time = parts[1];
}
}
var YYYYMMDD = this.DATE_RE.exec(date) || [];
@@ -613,7 +616,10 @@ _.extend(SelectFormatter.prototype, {
@return {Array.<*>}
*/
fromRaw: function (rawValue, model) {
return _.isArray(rawValue) ? rawValue : rawValue != null ? [rawValue] : [];
if (_.isArray(rawValue)) {
return rawValue;
}
return rawValue != null ? [rawValue] : [];
}
});
@@ -1447,11 +1453,11 @@ var SelectCellEditor = Backgrid.SelectCellEditor = CellEditor.extend({
_renderOptions: function (nvps, selectedValues) {
var options = '';
for (var i = 0; i < nvps.length; i++) {
for (let nvps_val of nvps) {
options = options + this.template({
text: nvps[i][0],
value: nvps[i][1],
selected: _.indexOf(selectedValues, nvps[i][1]) > -1
text: nvps_val[0],
value: nvps_val[1],
selected: _.indexOf(selectedValues, nvps_val[1]) > -1
});
}
return options;
@@ -1478,8 +1484,8 @@ var SelectCellEditor = Backgrid.SelectCellEditor = CellEditor.extend({
var optgroupName = null;
var optgroup = null;
for (var i = 0; i < optionValues.length; i++) {
optionValue = optionValues[i];
for (let option_val of optionValues) {
optionValue = option_val;
if (_.isArray(optionValue)) {
optionText = optionValue[0];
@@ -1629,11 +1635,11 @@ var SelectCell = Backgrid.SelectCell = Cell.extend({
try {
if (!_.isArray(optionValues) || _.isEmpty(optionValues)) throw new TypeError;
for (var k = 0; k < rawData.length; k++) {
var rawDatum = rawData[k];
for (let raw_val of rawData) {
var rawDatum = raw_val;
for (var i = 0; i < optionValues.length; i++) {
var optionValue = optionValues[i];
for (let opt_val of optionValues) {
var optionValue = opt_val;
if (_.isArray(optionValue)) {
var optionText = optionValue[0];
@@ -1644,8 +1650,8 @@ var SelectCell = Backgrid.SelectCell = Cell.extend({
else if (_.isObject(optionValue)) {
var optionGroupValues = optionValue.values;
for (var j = 0; j < optionGroupValues.length; j++) {
var optionGroupValue = optionGroupValues[j];
for (let opt_grp_val of optionGroupValues) {
var optionGroupValue = opt_grp_val;
if (optionGroupValue[1] == rawDatum) {
selectedText.push(optionGroupValue[0]);
}
@@ -1993,8 +1999,8 @@ var Row = Backgrid.Row = Backbone.View.extend({
this.$el.empty();
var fragment = document.createDocumentFragment();
for (var i = 0; i < this.cells.length; i++) {
fragment.appendChild(this.cells[i].render().el);
for (let cell_val of this.cells) {
fragment.appendChild(cell_val.render().el);
}
this.el.appendChild(fragment);
@@ -2010,8 +2016,8 @@ var Row = Backgrid.Row = Backbone.View.extend({
@chainable
*/
remove: function () {
for (var i = 0; i < this.cells.length; i++) {
var cell = this.cells[i];
for (let cell_val of this.cells) {
var cell = cell_val;
cell.remove.apply(cell, arguments);
}
return Backbone.View.prototype.remove.apply(this, arguments);
@@ -2374,12 +2380,10 @@ var Body = Backgrid.Body = Backbone.View.extend({
this.row = options.row || this.row || Row;
this.rows = this.collection.map(function (model) {
var row = new this.row({
return new this.row({
columns: this.columns,
model: model
});
return row;
}, this);
this.emptyText = options.emptyText;
@@ -2527,17 +2531,15 @@ var Body = Backgrid.Body = Backbone.View.extend({
instance as its sole parameter when done.
*/
refresh: function () {
for (var i = 0; i < this.rows.length; i++) {
this.rows[i].remove();
for (let row_val of this.rows) {
row_val.remove();
}
this.rows = this.collection.map(function (model) {
var row = new this.row({
return new this.row({
columns: this.columns,
model: model
});
return row;
}, this);
this._unshiftEmptyRowMayBe();
@@ -2557,8 +2559,8 @@ var Body = Backgrid.Body = Backbone.View.extend({
this.$el.empty();
var fragment = document.createDocumentFragment();
for (var i = 0; i < this.rows.length; i++) {
var row = this.rows[i];
for (let row_val of this.rows) {
var row = row_val;
fragment.appendChild(row.render().el);
}
@@ -2575,8 +2577,8 @@ var Body = Backgrid.Body = Backbone.View.extend({
@chainable
*/
remove: function () {
for (var i = 0; i < this.rows.length; i++) {
var row = this.rows[i];
for (let row_val of this.rows) {
var row = row_val;
row.remove.apply(row, arguments);
}
return Backbone.View.prototype.remove.apply(this, arguments);