From 5c2e945db28bdeb38cafb345dd12c5088a7cd779 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Sun, 18 Nov 2018 09:26:25 -0500 Subject: [PATCH] remove some more unused code --- src/compile/Component.ts | 19 +----------------- src/compile/nodes/EachBlock.ts | 7 ------- src/compile/nodes/shared/Expression.ts | 11 +---------- src/compile/render-dom/wrappers/Document.ts | 2 +- src/compile/render-dom/wrappers/Window.ts | 4 ++-- src/compile/wrapModule.ts | 22 +++------------------ src/interfaces.ts | 5 ----- 7 files changed, 8 insertions(+), 62 deletions(-) diff --git a/src/compile/Component.ts b/src/compile/Component.ts index 8dcdd77a50..d796d8eb81 100644 --- a/src/compile/Component.ts +++ b/src/compile/Component.ts @@ -116,16 +116,7 @@ export default class Component { properties: Map; - defaultExport: Node; imports: Node[]; - shorthandImports: ShorthandImport[]; - helpers: Set; - components: Set; - events: Set; - methods: Set; - animations: Set; - transitions: Set; - actions: Set; namespace: string; hasComponents: boolean; javascript: string; @@ -172,14 +163,6 @@ export default class Component { this.options = options; this.imports = []; - this.shorthandImports = []; - this.helpers = new Set(); - this.components = new Set(); - this.events = new Set(); - this.methods = new Set(); - this.animations = new Set(); - this.transitions = new Set(); - this.actions = new Set(); this.declarations = []; this.exports = []; @@ -300,7 +283,7 @@ export default class Component { const sharedPath = options.shared || 'svelte/internal.js'; - const module = wrapModule(result, format, name, options, banner, sharedPath, importedHelpers, this.imports, this.shorthandImports, this.source); + const module = wrapModule(result, format, name, options, banner, sharedPath, importedHelpers, this.imports, this.source); const parts = module.split('✂]'); const finalChunk = parts.pop(); diff --git a/src/compile/nodes/EachBlock.ts b/src/compile/nodes/EachBlock.ts index afc4f8655a..7017aee22a 100644 --- a/src/compile/nodes/EachBlock.ts +++ b/src/compile/nodes/EachBlock.ts @@ -36,13 +36,6 @@ export default class EachBlock extends Node { unpackDestructuring(this.contexts, info.context, ''); this.contexts.forEach(context => { - if (component.helpers.has(context.key.name)) { - component.warn(context.key, { - code: `each-context-clash`, - message: `Context clashes with a helper. Rename one or the other to eliminate any ambiguity` - }); - } - this.scope.add(context.key.name, this.expression.dependencies); }); diff --git a/src/compile/nodes/shared/Expression.ts b/src/compile/nodes/shared/Expression.ts index facc33ad25..de1b3db32d 100644 --- a/src/compile/nodes/shared/Expression.ts +++ b/src/compile/nodes/shared/Expression.ts @@ -82,7 +82,7 @@ export default class Expression { const dependencies = new Set(); const contextual_dependencies = new Set(); - const { code, helpers } = component; + const { code } = component; let { map, scope: currentScope } = createScopes(info); @@ -114,15 +114,6 @@ export default class Expression { return; } - if (component.helpers.has(name)) { - let object = node; - while (object.type === 'MemberExpression') object = object.object; - - const alias = component.templateVars.get(`helpers-${name}`); - if (alias !== name) code.overwrite(object.start, object.end, alias); - return; - } - expression.usesContext = true; if (!isSynthetic && !isEventHandler) { diff --git a/src/compile/render-dom/wrappers/Document.ts b/src/compile/render-dom/wrappers/Document.ts index b707c63ab4..b13ec808ce 100644 --- a/src/compile/render-dom/wrappers/Document.ts +++ b/src/compile/render-dom/wrappers/Document.ts @@ -20,7 +20,7 @@ export default class DocumentWrapper extends Wrapper { // TODO verify that it's a valid callee (i.e. built-in or declared method) component.addSourcemapLocations(handler.expression); - const isCustomEvent = component.events.has(handler.name); + const isCustomEvent = false; // TODO!!! let usesState = handler.dependencies.size > 0; diff --git a/src/compile/render-dom/wrappers/Window.ts b/src/compile/render-dom/wrappers/Window.ts index 5b1c775ea8..bef7c03936 100644 --- a/src/compile/render-dom/wrappers/Window.ts +++ b/src/compile/render-dom/wrappers/Window.ts @@ -43,7 +43,7 @@ export default class WindowWrapper extends Wrapper { // TODO verify that it's a valid callee (i.e. built-in or declared method) component.addSourcemapLocations(handler.expression); - const isCustomEvent = component.events.has(handler.name); + const isCustomEvent = false; // TODO!!! let usesState = handler.expression.dependencies.size > 0; @@ -58,7 +58,7 @@ export default class WindowWrapper extends Wrapper { block.addVariable(handler_name); block.builders.hydrate.addBlock(deindent` - ${handler_name} = %events-${handler.name}.call(#component, window, function(event) { + ${handler_name} = ctx.${handler.name}.call(#component, window, function(event) { (${handler_body})(event); }); `); diff --git a/src/compile/wrapModule.ts b/src/compile/wrapModule.ts index 0ae5a6edf8..f61657b461 100644 --- a/src/compile/wrapModule.ts +++ b/src/compile/wrapModule.ts @@ -1,6 +1,6 @@ import deindent from '../utils/deindent'; import list from '../utils/list'; -import { CompileOptions, ModuleFormat, Node, ShorthandImport } from '../interfaces'; +import { CompileOptions, ModuleFormat, Node } from '../interfaces'; interface Dependency { name: string; @@ -19,10 +19,9 @@ export default function wrapModule( sharedPath: string, helpers: { name: string, alias: string }[], imports: Node[], - shorthandImports: ShorthandImport[], source: string ): string { - if (format === 'es') return es(code, name, options, banner, sharedPath, helpers, imports, shorthandImports, source); + if (format === 'es') return es(code, name, options, banner, sharedPath, helpers, imports, source); const dependencies = imports.map((declaration, i) => { const defaultImport = declaration.specifiers.find( @@ -59,16 +58,7 @@ export default function wrapModule( } return { name, statements, source: declaration.source.value }; - }) - .concat( - shorthandImports.map(({ name, source }) => ({ - name, - statements: [ - `${name} = (${name} && ${name}.__esModule) ? ${name}["default"] : ${name};`, - ], - source, - })) - ); + }); if (format === 'amd') return amd(code, name, options, banner, dependencies); if (format === 'cjs') return cjs(code, name, options, banner, sharedPath, helpers, dependencies); @@ -87,7 +77,6 @@ function es( sharedPath: string, helpers: { name: string, alias: string }[], imports: Node[], - shorthandImports: ShorthandImport[], source: string ) { const importHelpers = helpers.length > 0 && ( @@ -100,15 +89,10 @@ function es( .join('\n') ); - const shorthandImportBlock = shorthandImports.length > 0 && ( - shorthandImports.map(({ name, source }) => `import ${name} from ${JSON.stringify(source)};`).join('\n') - ); - return deindent` ${banner} ${importHelpers} ${importBlock} - ${shorthandImportBlock} ${code} export default ${name};`; diff --git a/src/interfaces.ts b/src/interfaces.ts index b637a727bb..eb26ba55c8 100644 --- a/src/interfaces.ts +++ b/src/interfaces.ts @@ -68,11 +68,6 @@ export interface CompileOptions { nestedTransitions?: boolean; } -export interface ShorthandImport { - name: string; - source: string; -}; - export interface Visitor { enter: (node: Node) => void; leave?: (node: Node) => void;