element-plus
Version:
A Component Library for Vue 3
1 lines • 908 B
Source Map (JSON)
{"version":3,"file":"index.mjs","sources":["../../../../../packages/directives/resize/index.ts"],"sourcesContent":["import {\n addResizeListener,\n removeResizeListener,\n} from '@element-plus/utils/resize-event'\n\nimport type { ObjectDirective, DirectiveBinding } from 'vue'\n\ndeclare interface ResizeEl extends HTMLElement {\n _handleResize?: () => void\n}\n\nconst Resize: ObjectDirective = {\n beforeMount(el: ResizeEl, binding: DirectiveBinding) {\n el._handleResize = () => {\n el && binding.value?.(el)\n }\n addResizeListener(el, el._handleResize)\n },\n beforeUnmount(el: ResizeEl) {\n removeResizeListener(el, el._handleResize)\n },\n}\n\nexport default Resize\n"],"names":[],"mappings":";;MAWM,SAA0B;AAAA,EAC9B,YAAY,IAAc,SAA2B;AACnD,OAAG,gBAAgB,MAAM;AAb7B;AAcM,2BAAc,UAAR,iCAAgB;AAAA;AAExB,sBAAkB,IAAI,GAAG;AAAA;AAAA,EAE3B,cAAc,IAAc;AAC1B,yBAAqB,IAAI,GAAG;AAAA;AAAA;;;;"}