pull/3518/head
Richard Harris 5 years ago
parent f6eba05f73
commit 1ef95759cd

@ -264,7 +264,7 @@ export default class IfBlockWrapper extends Wrapper {
block.builders.init.add_block(deindent` block.builders.init.add_block(deindent`
function ${select_block_type}(changed, ctx) { function ${select_block_type}(changed, ctx) {
${this.branches.map(({ condition, snippet, block }) => condition ${this.branches.map(({ condition, snippet, block }) => condition
? `if (${snippet}) return ${block.name};` ? `if (${snippet || condition}) return ${block.name};`
: `return ${block.name};`)} : `return ${block.name};`)}
} }
`); `);
@ -340,32 +340,6 @@ export default class IfBlockWrapper extends Wrapper {
block.add_variable(current_block_type_index); block.add_variable(current_block_type_index);
block.add_variable(name); block.add_variable(name);
/* eslint-disable @typescript-eslint/indent,indent */
if (this.needs_update) {
block.builders.init.add_block(deindent`
function ${select_block_type}(changed, ctx) {
${this.branches.map(({ dependencies, condition, snippet, block }) => condition
? deindent`
${snippet && (
dependencies.length > 0
? `if ((${condition} == null) || ${dependencies.map(n => `changed.${n}`).join(' || ')}) ${condition} = !!(${snippet})`
: `if (${condition} == null) ${condition} = !!(${snippet})`
)}
if (${condition}) return ${block.name};`
: `return ${block.name};`)}
}
`);
} else {
block.builders.init.add_block(deindent`
function ${select_block_type}(changed, ctx) {
${this.branches.map(({ condition, snippet, block }) => condition
? `if (${snippet}) return ${block.name};`
: `return ${block.name};`)}
}
`);
}
/* eslint-enable @typescript-eslint/indent,indent */
/* eslint-disable @typescript-eslint/indent,indent */ /* eslint-disable @typescript-eslint/indent,indent */
block.builders.init.add_block(deindent` block.builders.init.add_block(deindent`
var ${if_block_creators} = [ var ${if_block_creators} = [
@ -388,7 +362,7 @@ export default class IfBlockWrapper extends Wrapper {
: deindent` : deindent`
function ${select_block_type}(changed, ctx) { function ${select_block_type}(changed, ctx) {
${this.branches.map(({ condition, snippet }, i) => condition ${this.branches.map(({ condition, snippet }, i) => condition
? `if (${snippet}) return ${String(i)};` ? `if (${snippet || condition}) return ${String(i)};`
: `return ${i};`)} : `return ${i};`)}
${!has_else && `return -1;`} ${!has_else && `return -1;`}
} }

Loading…
Cancel
Save