diff --git a/src/generators/Generator.ts b/src/generators/Generator.ts index 2abf03879e..179a7390a5 100644 --- a/src/generators/Generator.ts +++ b/src/generators/Generator.ts @@ -300,16 +300,6 @@ export default class Generator { const dependencies: Set = new Set(expression._dependencies || []); - if (expression._dependencies) { - expression._dependencies.forEach((prop: string) => { - if (this.indirectDependencies.has(prop)) { - this.indirectDependencies.get(prop).forEach(dependency => { - dependencies.add(dependency); - }); - } - }); - } - return { dependencies: Array.from(dependencies), contexts: usedContexts, @@ -661,8 +651,7 @@ export default class Generator { walkTemplate() { const { expectedProperties, - helpers, - indirectDependencies + helpers } = this; const { html } = this.parsed; @@ -701,13 +690,6 @@ export default class Generator { dependencies.forEach(dependency => { expectedProperties.add(dependency); - - // TODO looks like this needs to happen in a subsequent pass? - if (indirectDependencies.has(dependency)) { - indirectDependencies.get(dependency).forEach(indirectDependency => { - dependencies.add(indirectDependency); - }); - } }); return Array.from(dependencies); diff --git a/src/generators/dom/visitors/Element/addBindings.ts b/src/generators/dom/visitors/Element/addBindings.ts index 633289c8a9..26d50c0bbd 100644 --- a/src/generators/dom/visitors/Element/addBindings.ts +++ b/src/generators/dom/visitors/Element/addBindings.ts @@ -96,17 +96,20 @@ export default function addBindings( binding.value ); - // TODO tidy up - let dependencies = new Set(binding.dependencies); - binding.dependencies.forEach(prop => { + // special case: if you have e.g. `` + // and `selected` is an object chosen with a