pull/4923/head
pushkine 5 years ago
parent 059eec43e5
commit 1157cee42a

@ -44,14 +44,6 @@ export function bind(component, name, callback) {
} }
} }
export function create_component(block) {
block && block.c();
}
export function claim_component(block, parent_nodes) {
block && block.l(parent_nodes);
}
export function mount_component(component, target, anchor) { export function mount_component(component, target, anchor) {
const { fragment, on_mount, on_destroy, after_update } = component.$$; const { fragment, on_mount, on_destroy, after_update } = component.$$;
@ -139,7 +131,7 @@ export function init(component, options, instance, create_fragment, not_equal, p
$$.update(); $$.update();
ready = true; ready = true;
$$.before_update.forEach(v => v()); for (let i = 0, { before_update } = $$; i < before_update.length; i++) before_update[i]();
// `false` as a special case of no DOM component // `false` as a special case of no DOM component
$$.fragment = create_fragment ? create_fragment($$.ctx) : false; $$.fragment = create_fragment ? create_fragment($$.ctx) : false;

@ -1,3 +1,5 @@
import { has_prop } from "./utils";
export function append(target: Node, node: Node) { export function append(target: Node, node: Node) {
target.appendChild(node); target.appendChild(node);
} }
@ -27,7 +29,7 @@ export function element_is<K extends keyof HTMLElementTagNameMap>(name: K, is: s
export function object_without_properties<T, K extends string[]>(obj: T, excluded: K) { export function object_without_properties<T, K extends string[]>(obj: T, excluded: K) {
const target = {} as Pick<T, Exclude<keyof T, keyof K>>; const target = {} as Pick<T, Exclude<keyof T, keyof K>>;
let key; let key;
for (key in obj) if (!~excluded.indexOf(key)) target[key] = obj[key]; for (key in obj) if (has_prop(obj, key) && !~excluded.indexOf(key)) target[key] = obj[key];
return target; return target;
} }

@ -4,17 +4,16 @@ export function get_spread_update(levels, updates) {
const to_null_out = {}; const to_null_out = {};
const accounted_for = { $$scope: 1 }; const accounted_for = { $$scope: 1 };
let i = levels.length; let i = levels.length,
key,
n;
while (i--) { while (i--) {
const o = levels[i]; if (n = updates[i]) {
const n = updates[i]; for (key in levels[i]) {
if (n) {
for (const key in o) {
if (!(key in n)) to_null_out[key] = 1; if (!(key in n)) to_null_out[key] = 1;
} }
for (const key in n) { for (key in n) {
if (!accounted_for[key]) { if (!accounted_for[key]) {
update[key] = n[key]; update[key] = n[key];
accounted_for[key] = 1; accounted_for[key] = 1;
@ -23,13 +22,13 @@ export function get_spread_update(levels, updates) {
levels[i] = n; levels[i] = n;
} else { } else {
for (const key in o) { for (key in levels[i]) {
accounted_for[key] = 1; accounted_for[key] = 1;
} }
} }
} }
for (const key in to_null_out) { for ( key in to_null_out) {
if (!(key in update)) update[key] = undefined; if (!(key in update)) update[key] = undefined;
} }

@ -101,7 +101,7 @@ export function create_ssr_component(fn) {
const html = $$render(result, props, {}, options); const html = $$render(result, props, {}, options);
on_destroy.forEach(v => v()); for (let i = 0; i < on_destroy.length; i++) on_destroy[i]();
return { return {
html, html,

@ -33,3 +33,5 @@ export function set_store_value(store, ret, value = ret) {
store.set(value); store.set(value);
return ret; return ret;
} }
export const has_prop = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop);
Loading…
Cancel
Save