export default { name: 'toggler', props: { defaultVisible: { type: Boolean, default: () => false, }, }, data: function() { return { isVisible: this.defaultVisible, } }, render: function(createElement) { return createElement(this.$vnode.data.tag, [ this.$scopedSlots.default({ isVisible: this.isVisible, toggle: this.toggle, }), ]) }, methods: { toggle: function(e) { e.preventDefault() this.isVisible = !this.isVisible }, }, }