diff --git a/src/internal/SvelteComponent.js b/src/internal/SvelteComponent.js index 63f739eb69..a39b6f819f 100644 --- a/src/internal/SvelteComponent.js +++ b/src/internal/SvelteComponent.js @@ -36,7 +36,7 @@ export class SvelteComponent { this.$$fragment = this.$$create_fragment(this, this.$$.get_state()); if (options.target) { - intro.enabled = false; + intro.enabled = !!options.intro; this.$$mount(options.target); flush(); intro.enabled = true; @@ -91,7 +91,7 @@ export class SvelteComponent { $$mount(target, anchor) { this.$$fragment.c(); - this.$$fragment.m(target, anchor); + this.$$fragment[this.$$fragment.i ? 'i' : 'm'](target, anchor); this.$$.inject_refs(this.$$refs); const ondestroy = this.$$onmount.map(fn => fn()).filter(Boolean); diff --git a/test/runtime/samples/transition-js-args/_config.js b/test/runtime/samples/transition-js-args/_config.js index d7ea1240b7..d65ffb6641 100644 --- a/test/runtime/samples/transition-js-args/_config.js +++ b/test/runtime/samples/transition-js-args/_config.js @@ -5,6 +5,7 @@ export default { test(assert, component, target, window, raf) { const div = target.querySelector('div'); + assert.equal(div.foo, 0); assert.equal(div.oof, 1); diff --git a/test/runtime/samples/transition-js-await-block/_config.js b/test/runtime/samples/transition-js-await-block/_config.js index d66ed54d5e..11235a139f 100644 --- a/test/runtime/samples/transition-js-await-block/_config.js +++ b/test/runtime/samples/transition-js-await-block/_config.js @@ -11,8 +11,9 @@ export default { promise }, + intro: true, + test(assert, component, target, window, raf) { - component.visible = true; let p = target.querySelector('p'); assert.equal(p.className, 'pending'); diff --git a/test/runtime/samples/transition-js-context/_config.js b/test/runtime/samples/transition-js-context/_config.js index c5b3f1460a..58a3c56ae9 100644 --- a/test/runtime/samples/transition-js-context/_config.js +++ b/test/runtime/samples/transition-js-context/_config.js @@ -1,4 +1,6 @@ export default { + intro: true, + test(assert, component, target, window, raf) { const div = target.querySelector('div'); assert.equal(div.foo, 42); diff --git a/test/runtime/samples/transition-js-deferred/_config.js b/test/runtime/samples/transition-js-deferred/_config.js index cff8978645..1cf044e424 100644 --- a/test/runtime/samples/transition-js-deferred/_config.js +++ b/test/runtime/samples/transition-js-deferred/_config.js @@ -1,6 +1,4 @@ export default { - skipIntroByDefault: true, - test(assert, component, target, window, raf) { component.visible = true; diff --git a/test/runtime/samples/transition-js-each-block-intro/_config.js b/test/runtime/samples/transition-js-each-block-intro/_config.js index 61bba87413..8e87d2a571 100644 --- a/test/runtime/samples/transition-js-each-block-intro/_config.js +++ b/test/runtime/samples/transition-js-each-block-intro/_config.js @@ -1,8 +1,10 @@ export default { props: { - things: [ 'a', 'b', 'c' ] + things: ['a', 'b', 'c'] }, + intro: true, + test(assert, component, target, window, raf) { let divs = target.querySelectorAll('div'); assert.equal(divs[0].foo, 0); @@ -14,7 +16,7 @@ export default { assert.equal(divs[1].foo, 0.5); assert.equal(divs[2].foo, 0.5); - component.things = [ 'a', 'b', 'c', 'd' ]; + component.things = ['a', 'b', 'c', 'd']; divs = target.querySelectorAll('div'); assert.equal(divs[0].foo, 0.5); assert.equal(divs[1].foo, 0.5); diff --git a/test/runtime/samples/transition-js-each-block-keyed-intro-outro/_config.js b/test/runtime/samples/transition-js-each-block-keyed-intro-outro/_config.js index 417a19fc72..6c495cfc56 100644 --- a/test/runtime/samples/transition-js-each-block-keyed-intro-outro/_config.js +++ b/test/runtime/samples/transition-js-each-block-keyed-intro-outro/_config.js @@ -7,35 +7,37 @@ export default { ] }, - test ( assert, component, target, window, raf ) { - const divs = target.querySelectorAll( 'div' ); + intro: true, + + test(assert, component, target, window, raf) { + const divs = target.querySelectorAll('div'); divs[0].i = 0; // for debugging divs[1].i = 1; divs[2].i = 2; - assert.equal( divs[0].foo, 0 ); - assert.equal( divs[1].foo, 0 ); - assert.equal( divs[2].foo, 0 ); + assert.equal(divs[0].foo, 0); + assert.equal(divs[1].foo, 0); + assert.equal(divs[2].foo, 0); - raf.tick( 100 ); - assert.equal( divs[0].foo, 1 ); - assert.equal( divs[1].foo, 1 ); - assert.equal( divs[2].foo, 1 ); + raf.tick(100); + assert.equal(divs[0].foo, 1); + assert.equal(divs[1].foo, 1); + assert.equal(divs[2].foo, 1); component.things = [ { name: 'a' }, { name: 'c' } ]; - const divs2 = target.querySelectorAll( 'div' ); - assert.strictEqual( divs[0], divs2[0] ); - assert.strictEqual( divs[1], divs2[1] ); - assert.strictEqual( divs[2], divs2[2] ); + const divs2 = target.querySelectorAll('div'); + assert.strictEqual(divs[0], divs2[0]); + assert.strictEqual(divs[1], divs2[1]); + assert.strictEqual(divs[2], divs2[2]); - raf.tick( 150 ); - assert.equal( divs[0].foo, 1 ); - assert.equal( divs[1].foo, 0.5 ); - assert.equal( divs[2].foo, 1 ); + raf.tick(150); + assert.equal(divs[0].foo, 1); + assert.equal(divs[1].foo, 0.5); + assert.equal(divs[2].foo, 1); component.things = [ { name: 'a' }, @@ -43,19 +45,19 @@ export default { { name: 'c' } ]; - raf.tick( 175 ); - assert.equal( divs[0].foo, 1 ); - assert.equal( divs[1].foo, 0.75 ); - assert.equal( divs[2].foo, 1 ); + raf.tick(175); + assert.equal(divs[0].foo, 1); + assert.equal(divs[1].foo, 0.75); + assert.equal(divs[2].foo, 1); - raf.tick( 225 ); - const divs3 = target.querySelectorAll( 'div' ); - assert.strictEqual( divs[0], divs3[0] ); - assert.strictEqual( divs[1], divs3[1] ); - assert.strictEqual( divs[2], divs3[2] ); + raf.tick(225); + const divs3 = target.querySelectorAll('div'); + assert.strictEqual(divs[0], divs3[0]); + assert.strictEqual(divs[1], divs3[1]); + assert.strictEqual(divs[2], divs3[2]); - assert.equal( divs[0].foo, 1 ); - assert.equal( divs[1].foo, 1 ); - assert.equal( divs[2].foo, 1 ); + assert.equal(divs[0].foo, 1); + assert.equal(divs[1].foo, 1); + assert.equal(divs[2].foo, 1); } }; \ No newline at end of file diff --git a/test/runtime/samples/transition-js-each-block-keyed-intro/_config.js b/test/runtime/samples/transition-js-each-block-keyed-intro/_config.js index d582b20479..6ed2bd79df 100644 --- a/test/runtime/samples/transition-js-each-block-keyed-intro/_config.js +++ b/test/runtime/samples/transition-js-each-block-keyed-intro/_config.js @@ -7,6 +7,8 @@ export default { ] }, + intro: true, + test(assert, component, target, window, raf) { let divs = target.querySelectorAll('div'); assert.equal(divs[0].foo, 0); diff --git a/test/runtime/samples/transition-js-if-block-in-each-block-bidi/_config.js b/test/runtime/samples/transition-js-if-block-in-each-block-bidi/_config.js index f2b045503f..a1727c4b1c 100644 --- a/test/runtime/samples/transition-js-if-block-in-each-block-bidi/_config.js +++ b/test/runtime/samples/transition-js-if-block-in-each-block-bidi/_config.js @@ -11,6 +11,8 @@ export default {