pass options.target down to each create_fragment

pull/5870/head
Ivan Hofer 6 years ago
parent 2b4358b6ae
commit d255b8d5ea

@ -288,7 +288,7 @@ export default function dom(
const has_create_fragment = component.compile_options.dev || block.has_content();
if (has_create_fragment) {
body.push(b`
function create_fragment(#ctx) {
function create_fragment(root, #ctx) {
${block.get_contents()}
}
`);

@ -191,6 +191,7 @@ export default class InlineComponentWrapper extends Wrapper {
// will complain that options.target is missing. This would
// work better if components had separate public and private
// APIs
component_opts.properties.push(p`root`);
component_opts.properties.push(p`$$inline: true`);
}

@ -149,7 +149,7 @@ export function init(component, options, instance, create_fragment, not_equal, p
run_all($$.before_update);
// `false` as a special case of no DOM component
$$.fragment = create_fragment ? create_fragment($$.ctx) : false;
$$.fragment = create_fragment ? create_fragment(options.target || options.root, $$.ctx) : false;
if (options.target) {
if (options.hydrate) {

@ -110,17 +110,17 @@ function init_hydrate(target: NodeEx) {
const anchor = j < lis.length ? lis[j] : null;
target.insertBefore(toMove[i], anchor);
}
let appendStylesTo: Element;
}
export function append_styles(
{ target },
{ target, root },
styleSheetId: string,
styles: string,
styleId: string = `svelte-${styleSheetId}-style`
) {
if (target) appendStylesTo = get_root_for_node(target);
const appendStylesTo = get_root_for_node(target || root);
if (!appendStylesTo.querySelector('#' + styleId)) {
if (!appendStylesTo?.querySelector('#' + styleId)) {
const style = element('style');
style.id = styleId;
style.textContent = styles;
@ -129,12 +129,14 @@ export function append_styles(
}
function get_root_for_node(node: Node) {
if (!node) return document.head;
const root = (node.getRootNode ? node.getRootNode() : node.ownerDocument); // check for getRootNode because IE is still supported
return ((root as ShadowRoot).host ? root : (root as Document).head) as Element;
}
export function append_empty_stylesheet() {
return appendStylesTo.appendChild(element('style') as HTMLStyleElement);
export function append_empty_stylesheet(node: Node) {
return get_root_for_node(node).appendChild(element('style') as HTMLStyleElement);
}
export function append(target: NodeEx, node: NodeEx) {

@ -31,7 +31,7 @@ export function create_rule(node: Element & ElementCSSInlineStyle, a: number, b:
const name = `__svelte_${hash(rule)}_${uid}`;
const doc = node.ownerDocument as ExtendedDoc;
active_docs.add(doc);
const stylesheet = doc.__svelte_stylesheet || (doc.__svelte_stylesheet = append_empty_stylesheet().sheet as CSSStyleSheet);
const stylesheet = doc.__svelte_stylesheet || (doc.__svelte_stylesheet = append_empty_stylesheet(node).sheet as CSSStyleSheet);
const current_rules = doc.__svelte_rules || (doc.__svelte_rules = {});
if (!current_rules[name]) {

@ -11,7 +11,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let button;
let foo_action;
let mounted;
@ -48,7 +48,7 @@ function handleFoo(bar) {
}
function foo(node, callback) {
} // code goes here
function instance($$self, $$props, $$invalidate) {

@ -11,7 +11,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let a;
let link_action;
let mounted;

@ -9,7 +9,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let mounted;
let dispose;
add_render_callback(/*onlinestatuschanged*/ ctx[1]);

@ -10,7 +10,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let details;
let mounted;
let dispose;

@ -11,7 +11,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let div;
let div_resize_listener;

@ -13,7 +13,7 @@ import {
space
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let input0;
let t;
let input1;

@ -15,7 +15,7 @@ import {
text
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let p;
let t0;
let t1;

@ -20,7 +20,7 @@ import {
const file = undefined;
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let p;
let t0;
let t1;

@ -18,7 +18,7 @@ function add_css(options) {
append_styles(options, "1a7i8ec", "p.svelte-1a7i8ec{color:red}");
}
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let p;
let t;

@ -11,7 +11,7 @@ import {
transition_out
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let nested;
let current;
nested = new /*Nested*/ ctx[0]({ props: { foo: [1, 2, 3] } });

@ -11,7 +11,7 @@ import {
transition_out
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let nested;
let current;
nested = new /*Nested*/ ctx[0]({ props: { foo: "bar" } });

@ -11,7 +11,7 @@ import {
transition_out
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let nested;
let current;
nested = new /*Nested*/ ctx[0]({ props: { foo: "bar" } });

@ -19,7 +19,7 @@ import {
import Foo from "./Foo.svelte";
import Bar from "./Bar.svelte";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let foo;
let t0;
let bar;

@ -11,7 +11,7 @@ import {
transition_out
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let nested;
let current;
nested = new /*Nested*/ ctx[0]({ props: { foo: "bar" } });

@ -15,7 +15,7 @@ import {
import { writable } from "svelte/store";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let h1;
let t;

@ -17,7 +17,7 @@ import {
import { writable } from "svelte/store";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let h1;
let t0;
let t1;

@ -15,7 +15,7 @@ function add_css(options) {
append_styles(options, "1slhpfn", "@media(min-width: 1px){div.svelte-1slhpfn{color:red}}");
}
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let div;
return {

@ -10,7 +10,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let div;
return {

@ -11,7 +11,7 @@ import {
space
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let div0;
let t;
let div1;

@ -18,7 +18,7 @@ import {
const file = undefined;
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let h1;
let t0;
let t1;

@ -84,7 +84,7 @@ function create_each_block(ctx) {
return block;
}
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let t0;
let p;
let t1;

@ -78,7 +78,7 @@ function create_each_block(ctx) {
return block;
}
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let t0;
let p;
let t1;

@ -10,7 +10,7 @@ import {
const file = undefined;
function create_fragment(ctx) {
function create_fragment(root, ctx) {
const block = {
c: function create() {
{

@ -63,7 +63,7 @@ function create_each_block(ctx) {
return block;
}
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let each_1_anchor;
let each_value = things;
validate_each_argument(each_value);

@ -44,7 +44,7 @@ function create_each_block(ctx) {
};
}
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let each_1_anchor;
let each_value = /*createElement*/ ctx[0];
let each_blocks = [];

@ -18,7 +18,7 @@ import {
const file = undefined;
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let p;
let t0_value = Math.max(0, /*foo*/ ctx[0]) + "";
let t0;

@ -10,7 +10,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let input;
let mounted;
let dispose;

@ -13,7 +13,7 @@ import {
import LazyLoad from "./LazyLoad.svelte";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let lazyload;
let current;
lazyload = new LazyLoad({ props: { load: func } });

@ -44,7 +44,7 @@ function create_each_block(ctx) {
};
}
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let each_1_anchor;
let each_value = [/*a*/ ctx[0], /*b*/ ctx[1], /*c*/ ctx[2], /*d*/ ctx[3], /*e*/ ctx[4]];
let each_blocks = [];

@ -81,7 +81,7 @@ function create_each_block(ctx) {
};
}
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let t0;
let p;
let t1;

@ -64,7 +64,7 @@ function create_each_block(key_1, ctx) {
};
}
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let each_blocks = [];
let each_1_lookup = new Map();
let each_1_anchor;

@ -49,7 +49,7 @@ function create_each_block(key_1, ctx) {
};
}
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let each_blocks = [];
let each_1_lookup = new Map();
let each_1_anchor;

@ -16,7 +16,7 @@ import {
text
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let p0;
let button0;
let t1;

@ -11,7 +11,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let a;
let mounted;
let dispose;

@ -15,7 +15,7 @@ import {
stop_propagation
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let div1;
let div0;
let t1;
@ -76,11 +76,11 @@ function create_fragment(ctx) {
}
function handleTouchstart() {
} // ...
function handleClick() {
} // ...
class Component extends SvelteComponent {

@ -10,7 +10,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let meta0;
let meta1;

@ -9,7 +9,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let b;
return {

@ -9,7 +9,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let b;
return {

@ -14,7 +14,7 @@ import {
space
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let img;
let img_src_value;
let t;

@ -28,7 +28,7 @@ function create_if_block(ctx) {
};
}
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let show_if = /*item*/ ctx[0].divider && /*item*/ ctx[0].divider.includes(1);
let if_block_anchor;
let if_block = show_if && create_if_block(ctx);

@ -45,7 +45,7 @@ function create_if_block(ctx) {
};
}
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let if_block_anchor;
function select_block_type(ctx, dirty) {

@ -27,7 +27,7 @@ function create_if_block(ctx) {
};
}
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let if_block_anchor;
let if_block = /*foo*/ ctx[0] && create_if_block(ctx);
@ -43,7 +43,7 @@ function create_fragment(ctx) {
p(ctx, [dirty]) {
if (/*foo*/ ctx[0]) {
if (if_block) {
} else {
if_block = create_if_block(ctx);
if_block.c();

@ -10,7 +10,7 @@ import {
text
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let t0;
let t1;
let t2_value = import.meta.url + "";

@ -10,7 +10,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let button;
let mounted;
let dispose;

@ -10,7 +10,7 @@ import {
set_style
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let div;
return {

@ -10,7 +10,7 @@ import {
set_style
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let div;
return {

@ -10,7 +10,7 @@ import {
set_style
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let div;
return {

@ -11,7 +11,7 @@ import {
space
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let div0;
let t;
let div1;

@ -10,7 +10,7 @@ import {
set_style
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let div;
return {

@ -11,7 +11,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let input;
let mounted;
let dispose;

@ -15,7 +15,7 @@ import {
space
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let form;
let input;
let t0;

@ -14,7 +14,7 @@ import {
to_number
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let input;
let mounted;
let dispose;

@ -14,7 +14,7 @@ import {
text
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let input;
let t0;
let h1;

@ -11,7 +11,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let input;
let mounted;
let dispose;

@ -14,7 +14,7 @@ import {
text
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let button;
let t1;
let p;

@ -12,7 +12,7 @@ import {
text
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let p;
let t0;
let t1;

@ -14,7 +14,7 @@ import {
text
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let button;
let t1;
let p;

@ -14,7 +14,7 @@ import {
text
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let button;
let t1;
let p;

@ -14,7 +14,7 @@ import {
text
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let button;
let t1;
let p;

@ -10,7 +10,7 @@ import {
set_input_type
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let input;
return {

@ -18,7 +18,7 @@ import {
const { console: console_1 } = globals;
const file = undefined;
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let div;
const block = {

@ -14,7 +14,7 @@ import {
time_ranges_to_array
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let audio;
let audio_updating = false;
let audio_animationframe;

@ -16,7 +16,7 @@ import {
import Imported from "Imported.svelte";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let imported;
let t;
let nonimported;

@ -9,7 +9,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let h1;
return {

@ -17,7 +17,7 @@ import {
transition_out
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let t0_value = /*a*/ ctx[0].normal + "";
let t0;
let t1_value = /*b*/ ctx[1]?.optional + "";

@ -15,7 +15,7 @@ import {
import { reactiveStoreVal, unreactiveExport } from "./store";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let div0;
let t0;
let div1;

@ -11,7 +11,7 @@ import {
select_option
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let select;
let option0;
let option1;

@ -13,7 +13,7 @@ import {
space
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let img0;
let img0_src_value;
let t;

@ -11,7 +11,7 @@ import {
text
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let svg;
let title;
let t;

@ -1,7 +1,7 @@
/* generated by Svelte vX.Y.Z */
import { SvelteComponent, init, noop, safe_not_equal } from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let title_value;
document.title = title_value = "a " + /*custom*/ ctx[0] + " title";

@ -80,7 +80,7 @@ function create_if_block_1(ctx) {
};
}
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let if_block_anchor;
let if_block = /*x*/ ctx[0] && create_if_block(ctx);
@ -117,7 +117,7 @@ function create_fragment(ctx) {
}
function foo() {
}
function instance($$self, $$props, $$invalidate) {

@ -46,7 +46,7 @@ function create_if_block(ctx) {
};
}
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let if_block_anchor;
let current;
let if_block = /*num*/ ctx[0] < 5 && create_if_block(ctx);

@ -13,7 +13,7 @@ import {
text
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let div0;
let p0;
let t1;

@ -14,7 +14,7 @@ import {
import { onMount } from "svelte";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let p;
let t;

@ -101,7 +101,7 @@ function create_if_block(ctx) {
};
}
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let div;
let t0;
let p0;
@ -158,7 +158,7 @@ function create_fragment(ctx) {
p(ctx, [dirty]) {
if (/*a*/ ctx[0]) {
if (if_block0) {
} else {
if_block0 = create_if_block_4(ctx);
if_block0.c();
@ -171,7 +171,7 @@ function create_fragment(ctx) {
if (/*b*/ ctx[1]) {
if (if_block1) {
} else {
if_block1 = create_if_block_3(ctx);
if_block1.c();
@ -184,7 +184,7 @@ function create_fragment(ctx) {
if (/*c*/ ctx[2]) {
if (if_block2) {
} else {
if_block2 = create_if_block_2(ctx);
if_block2.c();
@ -197,7 +197,7 @@ function create_fragment(ctx) {
if (/*d*/ ctx[3]) {
if (if_block3) {
} else {
if_block3 = create_if_block_1(ctx);
if_block3.c();
@ -210,7 +210,7 @@ function create_fragment(ctx) {
if (/*e*/ ctx[4]) {
if (if_block4) {
} else {
if_block4 = create_if_block(ctx);
if_block4.c();

@ -9,7 +9,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let div;
return {

@ -14,7 +14,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let video;
let video_updating = false;
let video_animationframe;

@ -9,7 +9,7 @@ import {
safe_not_equal
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let mounted;
let dispose;
add_render_callback(/*onlinestatuschanged*/ ctx[1]);

@ -14,7 +14,7 @@ import {
text
} from "svelte/internal";
function create_fragment(ctx) {
function create_fragment(root, ctx) {
let scrolling = false;
let clear_scrolling = () => {

Loading…
Cancel
Save