0
0
mirror of https://github.com/sveltejs/svelte.git synced 2024-12-01 01:11:24 +01:00
svelte/test/js/samples/if-block-simple/expected.js
2017-09-17 13:01:47 -04:00

83 lines
1.7 KiB
JavaScript

/* generated by Svelte vX.Y.Z */
import { appendNode, assign, createComment, createElement, createText, detachNode, init, insertNode, noop, proto } from "svelte/shared.js";
function create_main_fragment(state, component) {
var if_block_anchor;
var if_block = (state.foo) && create_if_block(state, component);
return {
create: function() {
if (if_block) if_block.create();
if_block_anchor = createComment();
},
mount: function(target, anchor) {
if (if_block) if_block.mount(target, anchor);
insertNode(if_block_anchor, target, anchor);
},
update: function(changed, state) {
if (state.foo) {
if (!if_block) {
if_block = create_if_block(state, component);
if_block.create();
if_block.mount(if_block_anchor.parentNode, if_block_anchor);
}
} else if (if_block) {
if_block.unmount();
if_block.destroy();
if_block = null;
}
},
unmount: function() {
if (if_block) if_block.unmount();
detachNode(if_block_anchor);
},
destroy: function() {
if (if_block) if_block.destroy();
}
};
}
// (1:0) {{#if foo}}
function create_if_block(state, component) {
var p, text;
return {
create: function() {
p = createElement("p");
text = createText("foo!");
},
mount: function(target, anchor) {
insertNode(p, target, anchor);
appendNode(text, p);
},
unmount: function() {
detachNode(p);
},
destroy: noop
};
}
function SvelteComponent(options) {
init(this, options);
this._state = options.data || {};
this._fragment = create_main_fragment(this._state, this);
if (options.target) {
this._fragment.create();
this._fragment.mount(options.target, options.anchor || null);
}
}
assign(SvelteComponent.prototype, proto);
export default SvelteComponent;