/** * This module includes code available for both the public website and * administration interface) */ //-- vendor import '@fortawesome/fontawesome-free/css/all.min.css' import '@fortawesome/fontawesome-free/css/fontawesome.min.css' //-- aircox import App, {PlayerApp} from './app' import Builder from './appBuilder' import Sound from './sound' import {Set} from './model' import './assets/styles.scss' window.aircox = { // main application builder: new Builder(App), get app() { return this.builder.app }, // player application playerBuilder: new Builder(PlayerApp), get playerApp() { return this.playerBuilder && this.playerBuilder.app }, get player() { return this.playerBuilder.vm && this.playerBuilder.vm.$refs.player }, Set, Sound, /** * Initialize main application and player. */ init(props=null, {config=null, builder=null, initBuilder=true, initPlayer=true, hotReload=false}={}) { if(initBuilder) { builder = builder || this.builder this.builder = builder if(config || window.App) builder.config = config || window.App builder.title = document.title builder.mount({props}) if(hotReload) builder.enableHotReload(hotReload) } if(initPlayer) { let playerBuilder = this.playerBuilder playerBuilder.mount() } }, }