mirror of https://github.com/sveltejs/svelte
parent
9b2a7e17ad
commit
e974fdc40b
@ -1,10 +0,0 @@
|
|||||||
import { Node } from '../../../interfaces';
|
|
||||||
import Generator from '../../Generator';
|
|
||||||
|
|
||||||
export default function isChildOfComponent(node: Node, generator: Generator) {
|
|
||||||
while (node = node.parent) {
|
|
||||||
if (node.type !== 'Element') continue;
|
|
||||||
if (node.name === ':Self' || node.name === ':Component' || generator.components.has(node.name)) return true; // TODO extract this out into a helper
|
|
||||||
if (/-/.test(node.name)) return false;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,20 +0,0 @@
|
|||||||
import { Node, Visitor } from '../../../interfaces';
|
|
||||||
|
|
||||||
export default function walkHtml(html: Node, visitors: Record<string, Visitor>) {
|
|
||||||
function visit(node: Node) {
|
|
||||||
const visitor = visitors[node.type];
|
|
||||||
if (!visitor) throw new Error(`Not implemented: ${node.type}`);
|
|
||||||
|
|
||||||
if (visitor.enter) visitor.enter(node);
|
|
||||||
|
|
||||||
if (node.children) {
|
|
||||||
node.children.forEach((child: Node) => {
|
|
||||||
visit(child);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
if (visitor.leave) visitor.leave(node);
|
|
||||||
}
|
|
||||||
|
|
||||||
visit(html);
|
|
||||||
}
|
|
@ -1,6 +1,6 @@
|
|||||||
import deindent from '../../../utils/deindent';
|
import deindent from '../utils/deindent';
|
||||||
import list from '../../../utils/list';
|
import list from '../utils/list';
|
||||||
import { CompileOptions, ModuleFormat, Node } from '../../../interfaces';
|
import { CompileOptions, ModuleFormat, Node } from '../interfaces';
|
||||||
|
|
||||||
interface Dependency {
|
interface Dependency {
|
||||||
name: string;
|
name: string;
|
Loading…
Reference in new issue