From d6a8b94d9f071925140dca8e4ee857b380b578b5 Mon Sep 17 00:00:00 2001 From: Richard Harris Date: Tue, 18 Jun 2019 22:43:13 -0400 Subject: [PATCH] tidy up --- src/compiler/compile/render-dom/wrappers/EachBlock.ts | 2 +- src/compiler/compile/render-dom/wrappers/IfBlock.ts | 4 ++-- .../render-dom/wrappers/InlineComponent/index.ts | 6 +++--- src/compiler/compile/render-dom/wrappers/Slot.ts | 2 +- src/runtime/internal/await-block.ts | 2 +- src/runtime/internal/keyed-each.ts | 2 +- src/runtime/internal/transitions.ts | 10 ++++++---- test/js/samples/component-static-array/expected.js | 2 +- test/js/samples/component-static-immutable/expected.js | 2 +- .../js/samples/component-static-immutable2/expected.js | 2 +- test/js/samples/component-static/expected.js | 2 +- test/js/samples/dynamic-import/expected.js | 2 +- test/js/samples/non-imported-component/expected.js | 4 ++-- test/js/samples/transition-repeated-outro/expected.js | 2 +- 14 files changed, 23 insertions(+), 21 deletions(-) diff --git a/src/compiler/compile/render-dom/wrappers/EachBlock.ts b/src/compiler/compile/render-dom/wrappers/EachBlock.ts index 71e42c70e0..c26b58c356 100644 --- a/src/compiler/compile/render-dom/wrappers/EachBlock.ts +++ b/src/compiler/compile/render-dom/wrappers/EachBlock.ts @@ -459,7 +459,7 @@ export default class EachBlockWrapper extends Wrapper { const out = block.get_unique_name('out'); block.builders.init.add_block(deindent` - const ${out} = i => @transition_out(${iterations}[i], 1, 1, () => { + const ${out} = i => @transition_out(${iterations}[i], 1, () => { ${iterations}[i] = null; }); `); diff --git a/src/compiler/compile/render-dom/wrappers/IfBlock.ts b/src/compiler/compile/render-dom/wrappers/IfBlock.ts index 8c18a6bfb0..aa0a7aef99 100644 --- a/src/compiler/compile/render-dom/wrappers/IfBlock.ts +++ b/src/compiler/compile/render-dom/wrappers/IfBlock.ts @@ -326,7 +326,7 @@ export default class IfBlockWrapper extends Wrapper { const destroy_old_block = deindent` @group_outros(); - @transition_out(${if_blocks}[${previous_block_index}], 1, 1, () => { + @transition_out(${if_blocks}[${previous_block_index}], 1, () => { ${if_blocks}[${previous_block_index}] = null; }); @check_outros(); @@ -439,7 +439,7 @@ export default class IfBlockWrapper extends Wrapper { ${enter} } else if (${name}) { @group_outros(); - @transition_out(${name}, 1, 1, () => { + @transition_out(${name}, 1, () => { ${name} = null; }); @check_outros(); diff --git a/src/compiler/compile/render-dom/wrappers/InlineComponent/index.ts b/src/compiler/compile/render-dom/wrappers/InlineComponent/index.ts index b5c29cf0ac..8d5c751add 100644 --- a/src/compiler/compile/render-dom/wrappers/InlineComponent/index.ts +++ b/src/compiler/compile/render-dom/wrappers/InlineComponent/index.ts @@ -423,7 +423,7 @@ export default class InlineComponentWrapper extends Wrapper { if (${name}) { @group_outros(); const old_component = ${name}; - @transition_out(old_component.$$.fragment, 1, 1, () => { + @transition_out(old_component.$$.fragment, 1, () => { @destroy_component(old_component); }); @check_outros(); @@ -457,7 +457,7 @@ export default class InlineComponentWrapper extends Wrapper { } block.builders.outro.add_line( - `if (${name}) @transition_out(${name}.$$.fragment, 0, #local);` + `if (${name}) @transition_out(${name}.$$.fragment, #local);` ); block.builders.destroy.add_line(`if (${name}) @destroy_component(${name}, ${parent_node ? '' : 'detaching'});`); @@ -504,7 +504,7 @@ export default class InlineComponentWrapper extends Wrapper { `); block.builders.outro.add_line( - `@transition_out(${name}.$$.fragment, 0, #local);` + `@transition_out(${name}.$$.fragment, #local);` ); } } diff --git a/src/compiler/compile/render-dom/wrappers/Slot.ts b/src/compiler/compile/render-dom/wrappers/Slot.ts index cef9e98778..3376a797b8 100644 --- a/src/compiler/compile/render-dom/wrappers/Slot.ts +++ b/src/compiler/compile/render-dom/wrappers/Slot.ts @@ -146,7 +146,7 @@ export default class SlotWrapper extends Wrapper { ); block.builders.outro.add_line( - `@transition_out(${slot}, 0, #local);` + `@transition_out(${slot}, #local);` ); let update_conditions = [...this.dependencies].map(name => `changed.${name}`).join(' || '); diff --git a/src/runtime/internal/await-block.ts b/src/runtime/internal/await-block.ts index 52627b2eee..a3313497ff 100644 --- a/src/runtime/internal/await-block.ts +++ b/src/runtime/internal/await-block.ts @@ -18,7 +18,7 @@ export function handle_promise(promise, info) { info.blocks.forEach((block, i) => { if (i !== index && block) { group_outros(); - transition_out(block, 1, 1, () => { + transition_out(block, 1, () => { info.blocks[i] = null; }); check_outros(); diff --git a/src/runtime/internal/keyed-each.ts b/src/runtime/internal/keyed-each.ts index 0bbfa09de9..33a5f4d1a6 100644 --- a/src/runtime/internal/keyed-each.ts +++ b/src/runtime/internal/keyed-each.ts @@ -6,7 +6,7 @@ export function destroy_block(block, lookup) { } export function outro_and_destroy_block(block, lookup) { - transition_out(block, 1, 1, () => { + transition_out(block, 1, () => { destroy_block(block, lookup); }); } diff --git a/src/runtime/internal/transitions.ts b/src/runtime/internal/transitions.ts index 0932ed45ad..bbb24ba9ee 100644 --- a/src/runtime/internal/transitions.ts +++ b/src/runtime/internal/transitions.ts @@ -46,15 +46,17 @@ export function transition_in(block, local?: 0 | 1) { } } -export function transition_out(block, detaching: 0 | 1, local: 0 | 1, callback) { +export function transition_out(block, local: 0 | 1, callback) { if (block && block.o) { if (outroing.has(block)) return; - outroing.add(block); + outros.callbacks.push(() => { outroing.delete(block); - if (detaching) block.d(detaching); - if (callback) callback(); + if (callback) { + block.d(1); + callback(); + } }); block.o(local); diff --git a/test/js/samples/component-static-array/expected.js b/test/js/samples/component-static-array/expected.js index 7f92ebe479..6997f431dd 100644 --- a/test/js/samples/component-static-array/expected.js +++ b/test/js/samples/component-static-array/expected.js @@ -35,7 +35,7 @@ function create_fragment(ctx) { }, o(local) { - transition_out(nested.$$.fragment, 0, local); + transition_out(nested.$$.fragment, local); current = false; }, diff --git a/test/js/samples/component-static-immutable/expected.js b/test/js/samples/component-static-immutable/expected.js index 30706bad4e..4b33d537ca 100644 --- a/test/js/samples/component-static-immutable/expected.js +++ b/test/js/samples/component-static-immutable/expected.js @@ -35,7 +35,7 @@ function create_fragment(ctx) { }, o(local) { - transition_out(nested.$$.fragment, 0, local); + transition_out(nested.$$.fragment, local); current = false; }, diff --git a/test/js/samples/component-static-immutable2/expected.js b/test/js/samples/component-static-immutable2/expected.js index 30706bad4e..4b33d537ca 100644 --- a/test/js/samples/component-static-immutable2/expected.js +++ b/test/js/samples/component-static-immutable2/expected.js @@ -35,7 +35,7 @@ function create_fragment(ctx) { }, o(local) { - transition_out(nested.$$.fragment, 0, local); + transition_out(nested.$$.fragment, local); current = false; }, diff --git a/test/js/samples/component-static/expected.js b/test/js/samples/component-static/expected.js index d26aa47e30..5a031a32a4 100644 --- a/test/js/samples/component-static/expected.js +++ b/test/js/samples/component-static/expected.js @@ -35,7 +35,7 @@ function create_fragment(ctx) { }, o(local) { - transition_out(nested.$$.fragment, 0, local); + transition_out(nested.$$.fragment, local); current = false; }, diff --git a/test/js/samples/dynamic-import/expected.js b/test/js/samples/dynamic-import/expected.js index 9892f63734..9a6a67bcd9 100644 --- a/test/js/samples/dynamic-import/expected.js +++ b/test/js/samples/dynamic-import/expected.js @@ -36,7 +36,7 @@ function create_fragment(ctx) { }, o(local) { - transition_out(lazyload.$$.fragment, 0, local); + transition_out(lazyload.$$.fragment, local); current = false; }, diff --git a/test/js/samples/non-imported-component/expected.js b/test/js/samples/non-imported-component/expected.js index b990d3b76d..42a21aa496 100644 --- a/test/js/samples/non-imported-component/expected.js +++ b/test/js/samples/non-imported-component/expected.js @@ -47,8 +47,8 @@ function create_fragment(ctx) { }, o(local) { - transition_out(imported.$$.fragment, 0, local); - transition_out(nonimported.$$.fragment, 0, local); + transition_out(imported.$$.fragment, local); + transition_out(nonimported.$$.fragment, local); current = false; }, diff --git a/test/js/samples/transition-repeated-outro/expected.js b/test/js/samples/transition-repeated-outro/expected.js index 8543d0029b..959bd47201 100644 --- a/test/js/samples/transition-repeated-outro/expected.js +++ b/test/js/samples/transition-repeated-outro/expected.js @@ -81,7 +81,7 @@ function create_fragment(ctx) { } } else if (if_block) { group_outros(); - transition_out(if_block, 1, 1, () => { + transition_out(if_block, 1, () => { if_block = null; }); check_outros();