diff --git a/src/compiler/compile/render_dom/wrappers/Element/index.ts b/src/compiler/compile/render_dom/wrappers/Element/index.ts index 09b9f4aaa6..eeb537b9db 100644 --- a/src/compiler/compile/render_dom/wrappers/Element/index.ts +++ b/src/compiler/compile/render_dom/wrappers/Element/index.ts @@ -709,20 +709,20 @@ export default class ElementWrapper extends Wrapper { `); binding_group.events.forEach(name => { - if (name.startsWith('elementresize')) { + const resizeListenerFunctions = { + "elementresize": "add_iframe_resize_listener", + "elementresizeobservecontentrect": "add_content_rect_observer", + "elementresizeobservecontentbox": "add_content_box_observer", + "elementresizeobserveborderbox": "add_border_box_observer", + "elementresizeobservedevicepixelcontentbox": "add_device_pixel_content_box_observer", + }; + + if (name in resizeListenerFunctions) { const resize_listener = block.get_unique_name(`${this.var.name}_resize_listener`); block.add_variable(resize_listener); - const functionName = ({ - "elementresize": "add_iframe_resize_listener", - "elementresizeobservecontentrect": "add_content_rect_observer", - "elementresizeobservecontentbox": "add_content_box_observer", - "elementresizeobserveborderbox": "add_border_box_observer", - "elementresizeobservedevicepixelcontentbox": "add_device_pixel_content_box_observer", - })[name]; - block.chunks.mount.push( - b`${resize_listener} = @${functionName}(${this.var}, ${callee}.bind(${this.var}));` + b`${resize_listener} = @${resizeListenerFunctions[name]}(${this.var}, ${callee}.bind(${this.var}));` ); block.chunks.destroy.push(