@surface/custom-element
Version:
Provides support of directives and data binding on custom elements.
25 lines (24 loc) • 773 B
JavaScript
import Block from "../block.js";
import LoopStatement from "../statements/loop-statement.js";
export default function loopFactory(left, operator, right, observables, factory) {
return () => {
const block = new Block();
const activator = (parent, host, scope, directives) => {
parent.insertBefore(block.start, block.end);
const context = {
block,
directives,
factory,
host,
left,
observables,
operator,
parent,
right,
scope,
};
return new LoopStatement(context);
};
return [block.end, activator];
};
}