diff --git a/packages/lucide-vue/src/createVueComponent.js b/packages/lucide-vue/src/createVueComponent.js index 5620a76..d9cd428 100644 --- a/packages/lucide-vue/src/createVueComponent.js +++ b/packages/lucide-vue/src/createVueComponent.js @@ -52,6 +52,7 @@ export default (iconName, iconNode) => ({ 'stroke-width': strokeWidth, ...data.attrs, }, + on: data?.on || {} }, iconNode.map(([tag, attrs]) => createElement(tag, { attrs })), ); diff --git a/packages/lucide-vue/tests/lucide-vue.spec.js b/packages/lucide-vue/tests/lucide-vue.spec.js index b8093e7..b244104 100644 --- a/packages/lucide-vue/tests/lucide-vue.spec.js +++ b/packages/lucide-vue/tests/lucide-vue.spec.js @@ -41,4 +41,16 @@ describe('Using lucide icon components', () => { expect(wrapper).toMatchSnapshot(); expect(wrapper.attributes('style')).toContain('position: absolute') }); + + it('should call the onClick event', () => { + const onClick = jest.fn() + const wrapper = mount(Smile, { + listeners: { + click: onClick + } + }) + + wrapper.trigger('click') + expect(onClick).toHaveBeenCalled() + }); });