simplify component

pull/12644/head
Rich Harris 2 years ago
parent 7dc674525e
commit da84ca4180

@ -163,7 +163,7 @@ export default function element(parser) {
fragment: create_fragment(true),
parent: null,
metadata: {
expression: create_expression_metadata()
// unpopulated at first, differs between types
}
});

@ -1540,7 +1540,7 @@ const common_visitors = {
node.name.includes('.') ? node.name.slice(0, node.name.indexOf('.')) : node.name
);
node.metadata.expression.has_state = binding !== null && binding.kind !== 'normal';
node.metadata.dynamic = binding !== null && binding.kind !== 'normal';
},
RenderTag(node, context) {
context.next({ ...context.state, render_tag: node });

@ -3127,7 +3127,7 @@ export const template_visitors = {
}
},
Component(node, context) {
if (node.metadata.expression.has_state) {
if (node.metadata.dynamic) {
// Handle dynamic references to what seems like static inline components
const component = serialize_inline_component(node, '$$component', context, b.id('$$anchor'));
context.state.init.push(

@ -233,8 +233,7 @@ export function serialize_inline_component(node, expression, context) {
}
const dynamic =
node.type === 'SvelteComponent' ||
(node.type === 'Component' && node.metadata.expression.has_state);
node.type === 'SvelteComponent' || (node.type === 'Component' && node.metadata.dynamic);
if (custom_css_props.length > 0) {
context.state.template.push(

@ -274,7 +274,7 @@ interface BaseElement extends BaseNode {
export interface Component extends BaseElement {
type: 'Component';
metadata: {
expression: ExpressionMetadata;
dynamic: boolean;
};
}

Loading…
Cancel
Save