From d915db00a12c19f0940eaa5699f84727e826d307 Mon Sep 17 00:00:00 2001 From: Mathias Picker Date: Sun, 1 Jan 2023 14:43:20 +0100 Subject: [PATCH] correctly update expected ouput resulting from #7938 --- .../svelte-element-svg.solo/expected.js | 113 ++++++++++++++++++ .../svelte-element-svg.solo/input.svelte | 7 ++ 2 files changed, 120 insertions(+) create mode 100644 test/js/samples/svelte-element-svg.solo/expected.js create mode 100644 test/js/samples/svelte-element-svg.solo/input.svelte diff --git a/test/js/samples/svelte-element-svg.solo/expected.js b/test/js/samples/svelte-element-svg.solo/expected.js new file mode 100644 index 0000000000..7db210219b --- /dev/null +++ b/test/js/samples/svelte-element-svg.solo/expected.js @@ -0,0 +1,113 @@ +/* generated by Svelte vX.Y.Z */ +import { + SvelteComponent, + append, + assign, + detach, + empty, + get_spread_update, + init, + insert, + noop, + safe_not_equal, + set_svg_attributes, + svg_element +} from "svelte/internal"; + +function create_dynamic_element(ctx) { + let svelte_element1; + let svelte_element0; + let svelte_element0_levels = [{ xmlns: "http://www.w3.org/2000/svg" }]; + let svelte_element0_data = {}; + + for (let i = 0; i < svelte_element0_levels.length; i += 1) { + svelte_element0_data = assign(svelte_element0_data, svelte_element0_levels[i]); + } + + let svelte_element1_levels = [{ xmlns: "http://www.w3.org/2000/svg" }]; + let svelte_element1_data = {}; + + for (let i = 0; i < svelte_element1_levels.length; i += 1) { + svelte_element1_data = assign(svelte_element1_data, svelte_element1_levels[i]); + } + + return { + c() { + svelte_element1 = svg_element(/*tag*/ ctx[0].svg); + svelte_element0 = svg_element(/*tag*/ ctx[0].path); + set_svg_attributes(svelte_element0, svelte_element0_data); + set_svg_attributes(svelte_element1, svelte_element1_data); + }, + m(target, anchor) { + insert(target, svelte_element1, anchor); + append(svelte_element1, svelte_element0); + }, + p(ctx, dirty) { + svelte_element0_data = get_spread_update(svelte_element0_levels, [{ xmlns: "http://www.w3.org/2000/svg" }]); + set_svg_attributes(svelte_element0, svelte_element0_data); + svelte_element1_data = get_spread_update(svelte_element1_levels, [{ xmlns: "http://www.w3.org/2000/svg" }]); + set_svg_attributes(svelte_element1, svelte_element1_data); + }, + d(detaching) { + if (detaching) detach(svelte_element1); + } + }; +} + +function create_fragment(ctx) { + let previous_tag = /*tag*/ ctx[0].svg; + let svelte_element_anchor; + let svelte_element = /*tag*/ ctx[0].svg && create_dynamic_element(ctx); + + return { + c() { + if (svelte_element) svelte_element.c(); + svelte_element_anchor = empty(); + }, + m(target, anchor) { + if (svelte_element) svelte_element.m(target, anchor); + insert(target, svelte_element_anchor, anchor); + }, + p(ctx, [dirty]) { + if (/*tag*/ ctx[0].svg) { + if (!previous_tag) { + svelte_element = create_dynamic_element(ctx); + svelte_element.c(); + svelte_element.m(svelte_element_anchor.parentNode, svelte_element_anchor); + } else if (safe_not_equal(previous_tag, /*tag*/ ctx[0].svg)) { + svelte_element.d(1); + svelte_element = create_dynamic_element(ctx); + svelte_element.c(); + svelte_element.m(svelte_element_anchor.parentNode, svelte_element_anchor); + } else { + svelte_element.p(ctx, dirty); + } + } else if (previous_tag) { + svelte_element.d(1); + svelte_element = null; + } + + previous_tag = /*tag*/ ctx[0].svg; + }, + i: noop, + o: noop, + d(detaching) { + if (detaching) detach(svelte_element_anchor); + if (svelte_element) svelte_element.d(detaching); + } + }; +} + +function instance($$self) { + const tag = { svg: 'svg', path: 'path' }; + return [tag]; +} + +class Component extends SvelteComponent { + constructor(options) { + super(); + init(this, options, instance, create_fragment, safe_not_equal, {}); + } +} + +export default Component; \ No newline at end of file diff --git a/test/js/samples/svelte-element-svg.solo/input.svelte b/test/js/samples/svelte-element-svg.solo/input.svelte new file mode 100644 index 0000000000..111c0183c6 --- /dev/null +++ b/test/js/samples/svelte-element-svg.solo/input.svelte @@ -0,0 +1,7 @@ + + + + +