import { storiesOf } from '@storybook/vue'
import { defineComponent, ref } from '@vue/composition-api'
import { useEmitter } from '../index'
import md from '../docs/emitter.md'
const Count = defineComponent({
template: `
EXAMPLE
message: {{message}}
isSubed: {{isSub}}
`,
setup() {
const { on, off, emit, isSubed } = useEmitter()
const message = ref("")
const isSub = ref(false)
const run = function (data) {
message.value = data
}
const messageOn = function(){
on("message", run)
isSub.value = isSubed("message", run)
}
const messageOff = function(){
if(!isSubed("message", run)) return
off("message", run)
isSub.value = isSubed("message", run)
}
const messageEmit = function(msg){
emit("message", msg)
}
return {
isSub, message, messageEmit, messageOn, messageOff
}
}
})
storiesOf('Communication|useEmitter', module)
.add('emitter', () => Count, {
readme: {
sidebar: md
}
})