From ba6bc462ae6879a35926d5b3ac608c9e95ccc932 Mon Sep 17 00:00:00 2001 From: Simon Holthausen Date: Fri, 12 May 2023 17:36:05 +0200 Subject: [PATCH] Lint and format src/compiler/compile/nodes/Animation.js --- src/compiler/compile/nodes/Animation.js | 83 ++++++++++++------------- 1 file changed, 39 insertions(+), 44 deletions(-) diff --git a/src/compiler/compile/nodes/Animation.js b/src/compiler/compile/nodes/Animation.js index 3449f06e90..08d07a923a 100644 --- a/src/compiler/compile/nodes/Animation.js +++ b/src/compiler/compile/nodes/Animation.js @@ -4,48 +4,43 @@ import compiler_errors from '../compiler_errors.js'; /** @extends Node */ export default class Animation extends Node { - - /** @type {'Animation'} */ - type; - - /** @type {string} */ - name; - - /** @type {import('./shared/Expression.js').default} */ - expression; - - /** - * @param {import('../Component.js').default} component * - * @param {import('./Element.js').default} parent * - * @param {import('./shared/TemplateScope.js').default} scope * - * @param {import('../../interfaces.js').TemplateNode} info undefined - */ - constructor(component, parent, scope, info) { - super(component, parent, scope, info); - component.warn_if_undefined(info.name, info, scope); - this.name = info.name; - component.add_reference(/** @type {any} */ (this), info.name.split('.')[0]); - if (parent.animation) { - component.error(this, compiler_errors.duplicate_animation); - return; - } - const block = parent.parent; - if (!block || block.type !== 'EachBlock') { - // TODO can we relax the 'immediate child' rule? - component.error(this, compiler_errors.invalid_animation_immediate); - return; - } - if (!block.key) { - component.error(this, compiler_errors.invalid_animation_key); - return; - } - ( /** @type {import('./EachBlock.js').default} */(block)).has_animation = true; - this.expression = info.expression - ? new Expression(component, this, scope, info.expression, true) - : null; - } + /** @type {'Animation'} */ + type; + + /** @type {string} */ + name; + + /** @type {import('./shared/Expression.js').default} */ + expression; + + /** + * @param {import('../Component.js').default} component * + * @param {import('./Element.js').default} parent * + * @param {import('./shared/TemplateScope.js').default} scope * + * @param {import('../../interfaces.js').TemplateNode} info undefined + */ + constructor(component, parent, scope, info) { + super(component, parent, scope, info); + component.warn_if_undefined(info.name, info, scope); + this.name = info.name; + component.add_reference(/** @type {any} */ (this), info.name.split('.')[0]); + if (parent.animation) { + component.error(this, compiler_errors.duplicate_animation); + return; + } + const block = parent.parent; + if (!block || block.type !== 'EachBlock') { + // TODO can we relax the 'immediate child' rule? + component.error(this, compiler_errors.invalid_animation_immediate); + return; + } + if (!block.key) { + component.error(this, compiler_errors.invalid_animation_key); + return; + } + /** @type {import('./EachBlock.js').default} */ (block).has_animation = true; + this.expression = info.expression + ? new Expression(component, this, scope, info.expression, true) + : null; + } } - - - -