import EventAction from '@/action/event'
import HookManager from '@/HookManager'
import MessageBus from './MessageBus'
import DirectiveManager from './DirectiveManager'
const store = {
componentsById: {},
listeners: new MessageBus(),
initialRenderIsFinished: false,
livewireIsInBackground: false,
livewireIsOffline: false,
sessionHasExpired: false,
sessionHasExpiredCallback: undefined,
directives: DirectiveManager,
hooks: HookManager,
onErrorCallback: () => { },
components() {
return Object.keys(this.componentsById).map(key => {
return this.componentsById[key]
})
},
addComponent(component) {
return (this.componentsById[component.id] = component)
},
findComponent(id) {
return this.componentsById[id]
},
getComponentsByName(name) {
return this.components().filter(component => {
return component.name === name
})
},
hasComponent(id) {
return !!this.componentsById[id]
},
tearDownComponents() {
this.components().forEach(component => {
this.removeComponent(component)
})
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX