chore: Convert == to === and != to !== where possible. (#5599)

This commit is contained in:
Neil Fraser
2021-10-15 09:17:04 -07:00
committed by GitHub
parent 7ac1e27cd6
commit c929b3015b
183 changed files with 1409 additions and 1409 deletions

View File

@@ -201,7 +201,7 @@ Blockly.Blocks['lists_create_with'] = {
// Disconnect any children that don't belong.
for (var i = 0; i < this.itemCount_; i++) {
var connection = this.getInput('ADD' + i).connection.targetConnection;
if (connection && connections.indexOf(connection) == -1) {
if (connection && connections.indexOf(connection) === -1) {
connection.disconnect();
}
}
@@ -245,7 +245,7 @@ Blockly.Blocks['lists_create_with'] = {
if (!this.getInput('ADD' + i)) {
var input = this.appendValueInput('ADD' + i)
.setAlign(Blockly.ALIGN_RIGHT);
if (i == 0) {
if (i === 0) {
input.appendField(Blockly.Msg['LISTS_CREATE_WITH_INPUT_WITH']);
}
}
@@ -341,7 +341,7 @@ Blockly.Blocks['lists_getIndex'] = {
this.setHelpUrl(Blockly.Msg['LISTS_GET_INDEX_HELPURL']);
this.setStyle('list_blocks');
var modeMenu = new Blockly.FieldDropdown(MODE, function(value) {
var isStatement = (value == 'REMOVE');
var isStatement = (value === 'REMOVE');
this.getSourceBlock().updateStatement_(isStatement);
});
this.appendValueInput('VALUE')
@@ -405,8 +405,8 @@ Blockly.Blocks['lists_getIndex'] = {
tooltip = Blockly.Msg['LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM'];
break;
}
if (where == 'FROM_START' || where == 'FROM_END') {
var msg = (where == 'FROM_START') ?
if (where === 'FROM_START' || where === 'FROM_END') {
var msg = (where === 'FROM_START') ?
Blockly.Msg['LISTS_INDEX_FROM_START_TOOLTIP'] :
Blockly.Msg['LISTS_INDEX_FROM_END_TOOLTIP'];
tooltip += ' ' + msg.replace('%1',
@@ -425,7 +425,7 @@ Blockly.Blocks['lists_getIndex'] = {
var container = Blockly.utils.xml.createElement('mutation');
var isStatement = !this.outputConnection;
container.setAttribute('statement', isStatement);
var isAt = this.getInput('AT').type == Blockly.INPUT_VALUE;
var isAt = this.getInput('AT').type === Blockly.INPUT_VALUE;
container.setAttribute('at', isAt);
return container;
},
@@ -437,9 +437,9 @@ Blockly.Blocks['lists_getIndex'] = {
domToMutation: function(xmlElement) {
// Note: Until January 2013 this block did not have mutations,
// so 'statement' defaults to false and 'at' defaults to true.
var isStatement = (xmlElement.getAttribute('statement') == 'true');
var isStatement = (xmlElement.getAttribute('statement') === 'true');
this.updateStatement_(isStatement);
var isAt = (xmlElement.getAttribute('at') != 'false');
var isAt = (xmlElement.getAttribute('at') !== 'false');
this.updateAt_(isAt);
},
@@ -457,7 +457,7 @@ Blockly.Blocks['lists_getIndex'] = {
*/
updateStatement_: function(newStatement) {
var oldStatement = !this.outputConnection;
if (newStatement != oldStatement) {
if (newStatement !== oldStatement) {
this.unplug(true, true);
if (newStatement) {
this.setOutput(false);
@@ -491,9 +491,9 @@ Blockly.Blocks['lists_getIndex'] = {
this.appendDummyInput('AT');
}
var menu = new Blockly.FieldDropdown(this.WHERE_OPTIONS, function(value) {
var newAt = (value == 'FROM_START') || (value == 'FROM_END');
var newAt = (value === 'FROM_START') || (value === 'FROM_END');
// The 'isAt' variable is available due to this function being a closure.
if (newAt != isAt) {
if (newAt !== isAt) {
var block = this.getSourceBlock();
block.updateAt_(newAt);
// This menu has been destroyed and replaced. Update the replacement.
@@ -578,7 +578,7 @@ Blockly.Blocks['lists_setIndex'] = {
tooltip = Blockly.Msg['LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM'];
break;
}
if (where == 'FROM_START' || where == 'FROM_END') {
if (where === 'FROM_START' || where === 'FROM_END') {
tooltip += ' ' + Blockly.Msg['LISTS_INDEX_FROM_START_TOOLTIP']
.replace('%1',
thisBlock.workspace.options.oneBasedIndex ? '#1' : '#0');
@@ -593,7 +593,7 @@ Blockly.Blocks['lists_setIndex'] = {
*/
mutationToDom: function() {
var container = Blockly.utils.xml.createElement('mutation');
var isAt = this.getInput('AT').type == Blockly.INPUT_VALUE;
var isAt = this.getInput('AT').type === Blockly.INPUT_VALUE;
container.setAttribute('at', isAt);
return container;
},
@@ -605,7 +605,7 @@ Blockly.Blocks['lists_setIndex'] = {
domToMutation: function(xmlElement) {
// Note: Until January 2013 this block did not have mutations,
// so 'at' defaults to true.
var isAt = (xmlElement.getAttribute('at') != 'false');
var isAt = (xmlElement.getAttribute('at') !== 'false');
this.updateAt_(isAt);
},
@@ -635,9 +635,9 @@ Blockly.Blocks['lists_setIndex'] = {
this.appendDummyInput('AT');
}
var menu = new Blockly.FieldDropdown(this.WHERE_OPTIONS, function(value) {
var newAt = (value == 'FROM_START') || (value == 'FROM_END');
var newAt = (value === 'FROM_START') || (value === 'FROM_END');
// The 'isAt' variable is available due to this function being a closure.
if (newAt != isAt) {
if (newAt !== isAt) {
var block = this.getSourceBlock();
block.updateAt_(newAt);
// This menu has been destroyed and replaced. Update the replacement.
@@ -697,9 +697,9 @@ Blockly.Blocks['lists_getSublist'] = {
*/
mutationToDom: function() {
var container = Blockly.utils.xml.createElement('mutation');
var isAt1 = this.getInput('AT1').type == Blockly.INPUT_VALUE;
var isAt1 = this.getInput('AT1').type === Blockly.INPUT_VALUE;
container.setAttribute('at1', isAt1);
var isAt2 = this.getInput('AT2').type == Blockly.INPUT_VALUE;
var isAt2 = this.getInput('AT2').type === Blockly.INPUT_VALUE;
container.setAttribute('at2', isAt2);
return container;
},
@@ -709,8 +709,8 @@ Blockly.Blocks['lists_getSublist'] = {
* @this {Blockly.Block}
*/
domToMutation: function(xmlElement) {
var isAt1 = (xmlElement.getAttribute('at1') == 'true');
var isAt2 = (xmlElement.getAttribute('at2') == 'true');
var isAt1 = (xmlElement.getAttribute('at1') === 'true');
var isAt2 = (xmlElement.getAttribute('at2') === 'true');
this.updateAt_(1, isAt1);
this.updateAt_(2, isAt2);
},
@@ -745,10 +745,10 @@ Blockly.Blocks['lists_getSublist'] = {
}
var menu = new Blockly.FieldDropdown(this['WHERE_OPTIONS_' + n],
function(value) {
var newAt = (value == 'FROM_START') || (value == 'FROM_END');
var newAt = (value === 'FROM_START') || (value === 'FROM_END');
// The 'isAt' variable is available due to this function being a
// closure.
if (newAt != isAt) {
if (newAt !== isAt) {
var block = this.getSourceBlock();
block.updateAt_(n, newAt);
// This menu has been destroyed and replaced.
@@ -759,7 +759,7 @@ Blockly.Blocks['lists_getSublist'] = {
});
this.getInput('AT' + n)
.appendField(menu, 'WHERE' + n);
if (n == 1) {
if (n === 1) {
this.moveInputBefore('AT1', 'AT2');
if (this.getInput('ORDINAL1')) {
this.moveInputBefore('ORDINAL1', 'AT2');
@@ -839,9 +839,9 @@ Blockly.Blocks['lists_split'] = {
this.setOutput(true, 'Array');
this.setTooltip(function() {
var mode = thisBlock.getFieldValue('MODE');
if (mode == 'SPLIT') {
if (mode === 'SPLIT') {
return Blockly.Msg['LISTS_SPLIT_TOOLTIP_SPLIT'];
} else if (mode == 'JOIN') {
} else if (mode === 'JOIN') {
return Blockly.Msg['LISTS_SPLIT_TOOLTIP_JOIN'];
}
throw Error('Unknown mode: ' + mode);
@@ -855,7 +855,7 @@ Blockly.Blocks['lists_split'] = {
*/
updateType_: function(newMode) {
var mode = this.getFieldValue('MODE');
if (mode != newMode) {
if (mode !== newMode) {
var inputConnection = this.getInput('INPUT').connection;
inputConnection.setShadowDom(null);
var inputBlock = inputConnection.targetBlock();
@@ -868,7 +868,7 @@ Blockly.Blocks['lists_split'] = {
}
}
}
if (newMode == 'SPLIT') {
if (newMode === 'SPLIT') {
this.outputConnection.setCheck('Array');
this.getInput('INPUT').setCheck('String');
} else {

View File

@@ -635,7 +635,7 @@ Blockly.Constants.Logic.LOGIC_TERNARY_ONCHANGE_MIXIN = {
// Disconnect blocks that existed prior to this change if they don't match.
if ((blockA || blockB) && parentConnection) {
for (var i = 0; i < 2; i++) {
var block = (i == 1) ? blockA : blockB;
var block = (i === 1) ? blockA : blockB;
if (block &&
!block.workspace.connectionChecker.doTypeChecks(
block.outputConnection, parentConnection)) {

View File

@@ -254,7 +254,7 @@ Blockly.Constants.Loops.CUSTOM_CONTEXT_MENU_CREATE_VARIABLES_GET_MIXIN = {
}
var variable = this.getField('VAR').getVariable();
var varName = variable.name;
if (!this.isCollapsed() && varName != null) {
if (!this.isCollapsed() && varName !== null) {
var option = {enabled: true};
option.text =
Blockly.Msg['VARIABLES_SET_CREATE_GET'].replace('%1', varName);
@@ -310,7 +310,7 @@ Blockly.Constants.Loops.CONTROL_FLOW_IN_LOOP_CHECK_MIXIN = {
// Is the block nested in a loop?
do {
if (Blockly.Constants.Loops.CONTROL_FLOW_IN_LOOP_CHECK_MIXIN.LOOP_TYPES
.indexOf(block.type) != -1) {
.indexOf(block.type) !== -1) {
return block;
}
block = block.getSurroundParent();
@@ -329,7 +329,7 @@ Blockly.Constants.Loops.CONTROL_FLOW_IN_LOOP_CHECK_MIXIN = {
// * It's at the start of a drag.
// * It's not a move event.
if (!this.workspace.isDragging || this.workspace.isDragging() ||
e.type != Blockly.Events.BLOCK_MOVE) {
e.type !== Blockly.Events.BLOCK_MOVE) {
return;
}
var enabled = Blockly.Constants.Loops.CONTROL_FLOW_IN_LOOP_CHECK_MIXIN

View File

@@ -451,7 +451,7 @@ Blockly.Constants.Math.IS_DIVISIBLEBY_MUTATOR_MIXIN = {
*/
mutationToDom: function() {
var container = Blockly.utils.xml.createElement('mutation');
var divisorInput = (this.getFieldValue('PROPERTY') == 'DIVISIBLE_BY');
var divisorInput = (this.getFieldValue('PROPERTY') === 'DIVISIBLE_BY');
container.setAttribute('divisor_input', divisorInput);
return container;
},
@@ -462,7 +462,7 @@ Blockly.Constants.Math.IS_DIVISIBLEBY_MUTATOR_MIXIN = {
* @this {Blockly.Block}
*/
domToMutation: function(xmlElement) {
var divisorInput = (xmlElement.getAttribute('divisor_input') == 'true');
var divisorInput = (xmlElement.getAttribute('divisor_input') === 'true');
this.updateShape_(divisorInput);
},
@@ -500,7 +500,7 @@ Blockly.Constants.Math.IS_DIVISIBLEBY_MUTATOR_MIXIN = {
*/
Blockly.Constants.Math.IS_DIVISIBLE_MUTATOR_EXTENSION = function() {
this.getField('PROPERTY').setValidator(function(option) {
var divisorInput = (option == 'DIVISIBLE_BY');
var divisorInput = (option === 'DIVISIBLE_BY');
this.getSourceBlock().updateShape_(divisorInput);
});
};
@@ -530,7 +530,7 @@ Blockly.Constants.Math.LIST_MODES_MUTATOR_MIXIN = {
* @this {Blockly.Block}
*/
updateType_: function(newOp) {
if (newOp == 'MODE') {
if (newOp === 'MODE') {
this.outputConnection.setCheck('Array');
} else {
this.outputConnection.setCheck('Number');

View File

@@ -132,13 +132,13 @@ Blockly.Blocks['procedures_defnoreturn'] = {
this.arguments_ = [];
this.argumentVarModels_ = [];
for (var i = 0, childNode; (childNode = xmlElement.childNodes[i]); i++) {
if (childNode.nodeName.toLowerCase() == 'arg') {
if (childNode.nodeName.toLowerCase() === 'arg') {
var varName = childNode.getAttribute('name');
var varId = childNode.getAttribute('varid') || childNode.getAttribute('varId');
this.arguments_.push(varName);
var variable = Blockly.Variables.getOrCreateVariablePackage(
this.workspace, varId, varName, '');
if (variable != null) {
if (variable !== null) {
this.argumentVarModels_.push(variable);
} else {
console.log('Failed to create a variable with name ' + varName + ', ignoring.');
@@ -242,7 +242,7 @@ Blockly.Blocks['procedures_defnoreturn'] = {
var containerBlock = Blockly.Xml.domToBlock(containerBlockNode, workspace);
if (this.type == 'procedures_defreturn') {
if (this.type === 'procedures_defreturn') {
containerBlock.setFieldValue(this.hasStatements_, 'STATEMENTS');
} else {
containerBlock.removeInput('STATEMENT_INPUT');
@@ -279,8 +279,8 @@ Blockly.Blocks['procedures_defnoreturn'] = {
// Show/hide the statement input.
var hasStatements = containerBlock.getFieldValue('STATEMENTS');
if (hasStatements !== null) {
hasStatements = hasStatements == 'TRUE';
if (this.hasStatements_ != hasStatements) {
hasStatements = hasStatements === 'TRUE';
if (this.hasStatements_ !== hasStatements) {
if (hasStatements) {
this.setStatements_(true);
// Restore the stack, if one was saved.
@@ -339,7 +339,7 @@ Blockly.Blocks['procedures_defnoreturn'] = {
*/
renameVarById: function(oldId, newId) {
var oldVariable = this.workspace.getVariableById(oldId);
if (oldVariable.type != '') {
if (oldVariable.type !== '') {
// Procedure arguments always have the empty type.
return;
}
@@ -348,7 +348,7 @@ Blockly.Blocks['procedures_defnoreturn'] = {
var change = false;
for (var i = 0; i < this.argumentVarModels_.length; i++) {
if (this.argumentVarModels_[i].getId() == oldId) {
if (this.argumentVarModels_[i].getId() === oldId) {
this.arguments_[i] = newVar.name;
this.argumentVarModels_[i] = newVar;
change = true;
@@ -371,7 +371,7 @@ Blockly.Blocks['procedures_defnoreturn'] = {
var newName = variable.name;
var change = false;
for (var i = 0; i < this.argumentVarModels_.length; i++) {
if (this.argumentVarModels_[i].getId() == variable.getId()) {
if (this.argumentVarModels_[i].getId() === variable.getId()) {
var oldName = this.arguments_[i];
this.arguments_[i] = newName;
change = true;
@@ -395,7 +395,7 @@ Blockly.Blocks['procedures_defnoreturn'] = {
if (this.mutator && this.mutator.isVisible()) {
var blocks = this.mutator.workspace_.getAllBlocks(false);
for (var i = 0, block; (block = blocks[i]); i++) {
if (block.type == 'procedures_mutatorarg' &&
if (block.type === 'procedures_mutatorarg' &&
Blockly.Names.equals(oldName, block.getFieldValue('NAME'))) {
block.setFieldValue(newName, 'NAME');
}
@@ -586,12 +586,12 @@ Blockly.Blocks['procedures_mutatorarg'] = {
var blocks = workspace.getAllBlocks(false);
var caselessName = varName.toLowerCase();
for (var i = 0; i < blocks.length; i++) {
if (blocks[i].id == this.getSourceBlock().id) {
if (blocks[i].id === this.getSourceBlock().id) {
continue;
}
// Other blocks values may not be set yet when this is loaded.
var otherVar = blocks[i].getFieldValue('NAME');
if (otherVar && otherVar.toLowerCase() == caselessName) {
if (otherVar && otherVar.toLowerCase() === caselessName) {
return null;
}
}
@@ -603,7 +603,7 @@ Blockly.Blocks['procedures_mutatorarg'] = {
}
var model = outerWs.getVariable(varName, '');
if (model && model.name != varName) {
if (model && model.name !== varName) {
// Rename the variable (case change)
outerWs.renameVariableById(model.getId(), varName);
}
@@ -631,7 +631,7 @@ Blockly.Blocks['procedures_mutatorarg'] = {
}
for (var i = 0; i < this.createdVariables_.length; i++) {
var model = this.createdVariables_[i];
if (model.name != newText) {
if (model.name !== newText) {
outerWs.deleteVariableById(model.getId());
}
}
@@ -716,12 +716,12 @@ Blockly.Blocks['procedures_callnoreturn'] = {
}
// Test arguments (arrays of strings) for changes. '\n' is not a valid
// argument name character, so it is a valid delimiter here.
if (paramNames.join('\n') == this.arguments_.join('\n')) {
if (paramNames.join('\n') === this.arguments_.join('\n')) {
// No change.
this.quarkIds_ = paramIds;
return;
}
if (paramIds.length != paramNames.length) {
if (paramIds.length !== paramNames.length) {
throw RangeError('paramNames and paramIds must be the same length.');
}
this.setCollapsed(false);
@@ -740,7 +740,7 @@ Blockly.Blocks['procedures_callnoreturn'] = {
var connection = input.connection.targetConnection;
this.quarkConnections_[this.quarkIds_[i]] = connection;
if (mutatorOpen && connection &&
paramIds.indexOf(this.quarkIds_[i]) == -1) {
paramIds.indexOf(this.quarkIds_[i]) === -1) {
// This connection should no longer be attached to this block.
connection.disconnect();
connection.getSourceBlock().bumpNeighbours();
@@ -853,7 +853,7 @@ Blockly.Blocks['procedures_callnoreturn'] = {
var args = [];
var paramIds = [];
for (var i = 0, childNode; (childNode = xmlElement.childNodes[i]); i++) {
if (childNode.nodeName.toLowerCase() == 'arg') {
if (childNode.nodeName.toLowerCase() === 'arg') {
args.push(childNode.getAttribute('name'));
paramIds.push(childNode.getAttribute('paramId'));
}
@@ -919,15 +919,15 @@ Blockly.Blocks['procedures_callnoreturn'] = {
// Events not generated by user. Skip handling.
return;
}
if (event.type == Blockly.Events.BLOCK_CREATE &&
event.ids.indexOf(this.id) != -1) {
if (event.type === Blockly.Events.BLOCK_CREATE &&
event.ids.indexOf(this.id) !== -1) {
// Look for the case where a procedure call was created (usually through
// paste) and there is no matching definition. In this case, create
// an empty definition block with the correct signature.
var name = this.getProcedureCall();
var def = Blockly.Procedures.getDefinition(name, this.workspace);
if (def && (def.type != this.defType_ ||
JSON.stringify(def.getVars()) != JSON.stringify(this.arguments_))) {
if (def && (def.type !== this.defType_ ||
JSON.stringify(def.getVars()) !== JSON.stringify(this.arguments_))) {
// The signatures don't match.
def = null;
}
@@ -968,7 +968,7 @@ Blockly.Blocks['procedures_callnoreturn'] = {
Blockly.Xml.domToWorkspace(xml, this.workspace);
Blockly.Events.setGroup(false);
}
} else if (event.type == Blockly.Events.BLOCK_DELETE) {
} else if (event.type === Blockly.Events.BLOCK_DELETE) {
// Look for the case where a procedure definition has been deleted,
// leaving this block (a procedure call) orphaned. In this case, delete
// the orphan.
@@ -979,10 +979,10 @@ Blockly.Blocks['procedures_callnoreturn'] = {
this.dispose(true);
Blockly.Events.setGroup(false);
}
} else if (event.type == Blockly.Events.CHANGE && event.element == 'disabled') {
} else if (event.type === Blockly.Events.CHANGE && event.element === 'disabled') {
var name = this.getProcedureCall();
var def = Blockly.Procedures.getDefinition(name, this.workspace);
if (def && def.id == event.blockId) {
if (def && def.id === event.blockId) {
// in most cases the old group should be ''
var oldGroup = Blockly.Events.getGroup();
if (oldGroup) {
@@ -1102,7 +1102,7 @@ Blockly.Blocks['procedures_ifreturn'] = {
*/
domToMutation: function(xmlElement) {
var value = xmlElement.getAttribute('value');
this.hasReturnValue_ = (value == 1);
this.hasReturnValue_ = (value === '1');
if (!this.hasReturnValue_) {
this.removeInput('VALUE');
this.appendDummyInput('VALUE')
@@ -1129,7 +1129,7 @@ Blockly.Blocks['procedures_ifreturn'] = {
// Is the block nested in a procedure?
var block = this;
do {
if (this.FUNCTION_TYPES.indexOf(block.type) != -1) {
if (this.FUNCTION_TYPES.indexOf(block.type) !== -1) {
legal = true;
break;
}
@@ -1137,12 +1137,12 @@ Blockly.Blocks['procedures_ifreturn'] = {
} while (block);
if (legal) {
// If needed, toggle whether this block has a return value.
if (block.type == 'procedures_defnoreturn' && this.hasReturnValue_) {
if (block.type === 'procedures_defnoreturn' && this.hasReturnValue_) {
this.removeInput('VALUE');
this.appendDummyInput('VALUE')
.appendField(Blockly.Msg['PROCEDURES_DEFRETURN_RETURN']);
this.hasReturnValue_ = false;
} else if (block.type == 'procedures_defreturn' &&
} else if (block.type === 'procedures_defreturn' &&
!this.hasReturnValue_) {
this.removeInput('VALUE');
this.appendValueInput('VALUE')

View File

@@ -266,9 +266,9 @@ Blockly.Blocks['text_getSubstring'] = {
*/
mutationToDom: function() {
var container = Blockly.utils.xml.createElement('mutation');
var isAt1 = this.getInput('AT1').type == Blockly.INPUT_VALUE;
var isAt1 = this.getInput('AT1').type === Blockly.INPUT_VALUE;
container.setAttribute('at1', isAt1);
var isAt2 = this.getInput('AT2').type == Blockly.INPUT_VALUE;
var isAt2 = this.getInput('AT2').type === Blockly.INPUT_VALUE;
container.setAttribute('at2', isAt2);
return container;
},
@@ -279,8 +279,8 @@ Blockly.Blocks['text_getSubstring'] = {
* @this {Blockly.Block}
*/
domToMutation: function(xmlElement) {
var isAt1 = (xmlElement.getAttribute('at1') == 'true');
var isAt2 = (xmlElement.getAttribute('at2') == 'true');
var isAt1 = (xmlElement.getAttribute('at1') === 'true');
var isAt2 = (xmlElement.getAttribute('at2') === 'true');
this.updateAt_(1, isAt1);
this.updateAt_(2, isAt2);
},
@@ -314,17 +314,17 @@ Blockly.Blocks['text_getSubstring'] = {
this.appendDummyInput('AT' + n);
}
// Move tail, if present, to end of block.
if (n == 2 && Blockly.Msg['TEXT_GET_SUBSTRING_TAIL']) {
if (n === 2 && Blockly.Msg['TEXT_GET_SUBSTRING_TAIL']) {
this.removeInput('TAIL', true);
this.appendDummyInput('TAIL')
.appendField(Blockly.Msg['TEXT_GET_SUBSTRING_TAIL']);
}
var menu = new Blockly.FieldDropdown(this['WHERE_OPTIONS_' + n],
function(value) {
var newAt = (value == 'FROM_START') || (value == 'FROM_END');
var newAt = (value === 'FROM_START') || (value === 'FROM_END');
// The 'isAt' variable is available due to this function being a
// closure.
if (newAt != isAt) {
if (newAt !== isAt) {
var block = this.getSourceBlock();
block.updateAt_(n, newAt);
// This menu has been destroyed and replaced.
@@ -337,7 +337,7 @@ Blockly.Blocks['text_getSubstring'] = {
this.getInput('AT' + n)
.appendField(menu, 'WHERE' + n);
if (n == 1) {
if (n === 1) {
this.moveInputBefore('AT1', 'AT2');
if (this.getInput('ORDINAL1')) {
this.moveInputBefore('ORDINAL1', 'AT2');
@@ -432,7 +432,7 @@ Blockly.Blocks['text_prompt_ext'] = {
.appendField(dropdown, 'TYPE');
this.setOutput(true, 'String');
this.setTooltip(function() {
return (thisBlock.getFieldValue('TYPE') == 'TEXT') ?
return (thisBlock.getFieldValue('TYPE') === 'TEXT') ?
Blockly.Msg['TEXT_PROMPT_TOOLTIP_TEXT'] :
Blockly.Msg['TEXT_PROMPT_TOOLTIP_NUMBER'];
});
@@ -444,7 +444,7 @@ Blockly.Blocks['text_prompt_ext'] = {
* @this {Blockly.Block}
*/
updateType_: function(newOp) {
this.outputConnection.setCheck(newOp == 'NUMBER' ? 'Number' : 'String');
this.outputConnection.setCheck(newOp === 'NUMBER' ? 'Number' : 'String');
},
/**
* Create XML to represent the output type.
@@ -500,7 +500,7 @@ Blockly.Blocks['text_prompt'] = {
.appendField(this.newQuote_(false));
this.setOutput(true, 'String');
this.setTooltip(function() {
return (thisBlock.getFieldValue('TYPE') == 'TEXT') ?
return (thisBlock.getFieldValue('TYPE') === 'TEXT') ?
Blockly.Msg['TEXT_PROMPT_TOOLTIP_TEXT'] :
Blockly.Msg['TEXT_PROMPT_TOOLTIP_NUMBER'];
});
@@ -643,7 +643,7 @@ Blockly.Constants.Text.QUOTE_IMAGE_MIXIN = {
quoteField_: function(fieldName) {
for (var i = 0, input; (input = this.inputList[i]); i++) {
for (var j = 0, field; (field = input.fieldRow[j]); j++) {
if (fieldName == field.name) {
if (fieldName === field.name) {
input.insertFieldAt(j, this.newQuote_(true));
input.insertFieldAt(j + 2, this.newQuote_(false));
return;
@@ -763,7 +763,7 @@ Blockly.Constants.Text.TEXT_JOIN_MUTATOR_MIXIN = {
// Disconnect any children that don't belong.
for (var i = 0; i < this.itemCount_; i++) {
var connection = this.getInput('ADD' + i).connection.targetConnection;
if (connection && connections.indexOf(connection) == -1) {
if (connection && connections.indexOf(connection) === -1) {
connection.disconnect();
}
}
@@ -808,7 +808,7 @@ Blockly.Constants.Text.TEXT_JOIN_MUTATOR_MIXIN = {
if (!this.getInput('ADD' + i)) {
var input = this.appendValueInput('ADD' + i)
.setAlign(Blockly.ALIGN_RIGHT);
if (i == 0) {
if (i === 0) {
input.appendField(Blockly.Msg['TEXT_JOIN_TITLE_CREATEWITH']);
}
}
@@ -880,7 +880,7 @@ Blockly.Constants.Text.TEXT_CHARAT_MUTATOR_MIXIN = {
domToMutation: function(xmlElement) {
// Note: Until January 2013 this block did not have mutations,
// so 'at' defaults to true.
var isAt = (xmlElement.getAttribute('at') != 'false');
var isAt = (xmlElement.getAttribute('at') !== 'false');
this.updateAt_(isAt);
},
@@ -924,8 +924,8 @@ Blockly.Constants.Text.TEXT_CHARAT_MUTATOR_MIXIN = {
Blockly.Constants.Text.TEXT_CHARAT_EXTENSION = function() {
var dropdown = this.getField('WHERE');
dropdown.setValidator(function(value) {
var newAt = (value == 'FROM_START') || (value == 'FROM_END');
if (newAt != this.isAt_) {
var newAt = (value === 'FROM_START') || (value === 'FROM_END');
if (newAt !== this.isAt_) {
var block = this.getSourceBlock();
block.updateAt_(newAt);
}
@@ -936,8 +936,8 @@ Blockly.Constants.Text.TEXT_CHARAT_EXTENSION = function() {
this.setTooltip(function() {
var where = thisBlock.getFieldValue('WHERE');
var tooltip = Blockly.Msg['TEXT_CHARAT_TOOLTIP'];
if (where == 'FROM_START' || where == 'FROM_END') {
var msg = (where == 'FROM_START') ?
if (where === 'FROM_START' || where === 'FROM_END') {
var msg = (where === 'FROM_START') ?
Blockly.Msg['LISTS_INDEX_FROM_START_TOOLTIP'] :
Blockly.Msg['LISTS_INDEX_FROM_END_TOOLTIP'];
if (msg) {

View File

@@ -89,7 +89,7 @@ Blockly.Constants.Variables.CUSTOM_CONTEXT_MENU_VARIABLE_GETTER_SETTER_MIXIN = {
customContextMenu: function(options) {
if (!this.isInFlyout) {
// Getter blocks have the option to create a setter block, and vice versa.
if (this.type == 'variables_get') {
if (this.type === 'variables_get') {
var opposite_type = 'variables_set';
var contextMenuMsg = Blockly.Msg['VARIABLES_GET_CREATE_SET'];
} else {
@@ -110,7 +110,7 @@ Blockly.Constants.Variables.CUSTOM_CONTEXT_MENU_VARIABLE_GETTER_SETTER_MIXIN = {
options.push(option);
// Getter blocks have the option to rename or delete that variable.
} else {
if (this.type == 'variables_get' || this.type == 'variables_get_reporter') {
if (this.type === 'variables_get' || this.type === 'variables_get_reporter') {
var renameOption = {
text: Blockly.Msg.RENAME_VARIABLE,
enabled: true,

View File

@@ -90,7 +90,7 @@ Blockly.Constants.VariablesDynamic.CUSTOM_CONTEXT_MENU_VARIABLE_GETTER_SETTER_MI
var id = this.getFieldValue('VAR');
var variableModel = this.workspace.getVariableById(id);
var varType = variableModel.type;
if (this.type == 'variables_get_dynamic') {
if (this.type === 'variables_get_dynamic') {
opposite_type = 'variables_set_dynamic';
contextMenuMsg = Blockly.Msg['VARIABLES_GET_CREATE_SET'];
} else {
@@ -111,8 +111,8 @@ Blockly.Constants.VariablesDynamic.CUSTOM_CONTEXT_MENU_VARIABLE_GETTER_SETTER_MI
option.callback = Blockly.ContextMenu.callbackFactory(this, xmlBlock);
options.push(option);
} else {
if (this.type == 'variables_get_dynamic' ||
this.type == 'variables_get_reporter_dynamic') {
if (this.type === 'variables_get_dynamic' ||
this.type === 'variables_get_reporter_dynamic') {
var renameOption = {
text: Blockly.Msg.RENAME_VARIABLE,
enabled: true,
@@ -138,7 +138,7 @@ Blockly.Constants.VariablesDynamic.CUSTOM_CONTEXT_MENU_VARIABLE_GETTER_SETTER_MI
onchange: function(_e) {
var id = this.getFieldValue('VAR');
var variableModel = Blockly.Variables.getVariable(this.workspace, id);
if (this.type == 'variables_get_dynamic') {
if (this.type === 'variables_get_dynamic') {
this.outputConnection.setCheck(variableModel.type);
} else {
this.getInput('VALUE').connection.setCheck(variableModel.type);