From daaad80a0e9c40d2a922e5b97029e24bca76a077 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Sat, 9 Dec 2017 10:30:16 -0500 Subject: [PATCH] remove some unused code --- src/generators/dom/index.ts | 1 - src/generators/dom/interfaces.ts | 23 - src/generators/dom/visit.ts | 18 - .../dom/visitors/Element/Element.ts | 361 --------------- .../dom/visitors/Element/meta/Window.ts | 190 -------- src/generators/dom/visitors/IfBlock.ts | 419 ------------------ src/generators/dom/visitors/MustacheTag.ts | 29 -- src/generators/dom/visitors/RawMustacheTag.ts | 91 ---- src/generators/dom/visitors/index.ts | 14 - 9 files changed, 1146 deletions(-) delete mode 100644 src/generators/dom/interfaces.ts delete mode 100644 src/generators/dom/visit.ts delete mode 100644 src/generators/dom/visitors/Element/Element.ts delete mode 100644 src/generators/dom/visitors/Element/meta/Window.ts delete mode 100644 src/generators/dom/visitors/IfBlock.ts delete mode 100644 src/generators/dom/visitors/MustacheTag.ts delete mode 100644 src/generators/dom/visitors/RawMustacheTag.ts delete mode 100644 src/generators/dom/visitors/index.ts diff --git a/src/generators/dom/index.ts b/src/generators/dom/index.ts index 5fec3a41ee..d9998c063f 100644 --- a/src/generators/dom/index.ts +++ b/src/generators/dom/index.ts @@ -8,7 +8,6 @@ import { stringify, escape } from '../../utils/stringify'; import CodeBuilder from '../../utils/CodeBuilder'; import globalWhitelist from '../../utils/globalWhitelist'; import reservedNames from '../../utils/reservedNames'; -import visit from './visit'; import shared from './shared'; import Generator from '../Generator'; import Stylesheet from '../../css/Stylesheet'; diff --git a/src/generators/dom/interfaces.ts b/src/generators/dom/interfaces.ts deleted file mode 100644 index a925fb1b91..0000000000 --- a/src/generators/dom/interfaces.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { DomGenerator } from './index'; -import Block from './Block'; -import { Node } from '../../interfaces'; - -export interface State { - namespace: string; - parentNode: string; - parentNodes: string; - parentNodeName?: string; - inEachBlock?: boolean; - allUsedContexts?: string[]; - usesComponent?: boolean; - selectBindingDependencies?: string[]; -} - -export type Visitor = ( - generator: DomGenerator, - block: Block, - state: State, - node: Node, - elementStack: Node[], - componentStack: Node[] -) => void; \ No newline at end of file diff --git a/src/generators/dom/visit.ts b/src/generators/dom/visit.ts deleted file mode 100644 index 97b09ea6cb..0000000000 --- a/src/generators/dom/visit.ts +++ /dev/null @@ -1,18 +0,0 @@ -import visitors from './visitors/index'; -import { DomGenerator } from './index'; -import Block from './Block'; -import { Node } from '../../interfaces'; -import { State } from './interfaces'; - -export default function visit( - generator: DomGenerator, - block: Block, - state: State, - node: Node, - elementStack: Node[], - componentStack: Node[] -) { - throw new Error('do not use visit') - const visitor = visitors[node.type]; - visitor(generator, block, state, node, elementStack, componentStack); -} diff --git a/src/generators/dom/visitors/Element/Element.ts b/src/generators/dom/visitors/Element/Element.ts deleted file mode 100644 index 7e4367b0f5..0000000000 --- a/src/generators/dom/visitors/Element/Element.ts +++ /dev/null @@ -1,361 +0,0 @@ -import deindent from '../../../../utils/deindent'; -import visit from '../../visit'; -import visitSlot from '../Slot'; -import visitComponent from '../Component'; -import visitWindow from './meta/Window'; -import visitAttribute from './Attribute'; -import addBindings from './addBindings'; -import flattenReference from '../../../../utils/flattenReference'; -import validCalleeObjects from '../../../../utils/validCalleeObjects'; -import * as namespaces from '../../../../utils/namespaces'; -import getStaticAttributeValue from '../../../../utils/getStaticAttributeValue'; -import isVoidElementName from '../../../../utils/isVoidElementName'; -import addTransitions from './addTransitions'; -import { DomGenerator } from '../../index'; -import Block from '../../Block'; -import { Node } from '../../../../interfaces'; -import { State } from '../../interfaces'; -import reservedNames from '../../../../utils/reservedNames'; -import { stringify } from '../../../../utils/stringify'; - -const meta: Record = { - ':Window': visitWindow, -}; - -export default function visitElement( - generator: DomGenerator, - block: Block, - state: State, - node: Node, - elementStack: Node[], - componentStack: Node[] -) { - if (node.name in meta) { - return meta[node.name](generator, block, node); - } - - if (node.name === 'slot') { - if (generator.customElement) { - const slotName = getStaticAttributeValue(node, 'name') || 'default'; - generator.slots.add(slotName); - } else { - return visitSlot(generator, block, state, node, elementStack, componentStack); - } - } - - const childState = node._state; - const name = childState.parentNode; - - const slot = node.attributes.find((attribute: Node) => attribute.name === 'slot'); - const parentNode = node.slotted ? - `${componentStack[componentStack.length - 1].var}._slotted.${slot.value[0].data}` : // TODO this looks bonkers - state.parentNode; - - block.addVariable(name); - block.builders.create.addLine( - `${name} = ${getRenderStatement( - generator, - childState.namespace, - node.name - )};` - ); - - if (generator.hydratable) { - block.builders.claim.addBlock(deindent` - ${name} = ${getClaimStatement(generator, childState.namespace, state.parentNodes, node)}; - var ${childState.parentNodes} = @children(${name}); - `); - } - - if (parentNode) { - block.builders.mount.addLine( - `@appendNode(${name}, ${parentNode});` - ); - } else { - block.builders.mount.addLine(`@insertNode(${name}, #target, anchor);`); - - // TODO we eventually need to consider what happens to elements - // that belong to the same outgroup as an outroing element... - block.builders.unmount.addLine(`@detachNode(${name});`); - } - - // add CSS encapsulation attribute - if (node._needsCssAttribute && !generator.customElement) { - generator.needsEncapsulateHelper = true; - block.builders.hydrate.addLine( - `@encapsulateStyles(${name});` - ); - - if (node._cssRefAttribute) { - block.builders.hydrate.addLine( - `@setAttribute(${name}, "svelte-ref-${node._cssRefAttribute}", "");` - ) - } - } - - if (node.name === 'textarea') { - // this is an egregious hack, but it's the easiest way to get