Commit 7fd07911 authored by Joel Collins's avatar Joel Collins
Browse files

Added mixin for preview-hiding modal confirmations

parent 6067f5f7
Loading
Loading
Loading
Loading
+28 −0
Original line number Diff line number Diff line
@@ -2,8 +2,36 @@ import Vue from 'vue'
import App from './App.vue'
import store from './store'

import UIkit from 'uikit';

Vue.config.productionTip = false

Vue.mixin({
  methods: {
    modalConfirm: function(modalText) {
      var self = this;

      // Stop GPU preview to show modal
      self.$root.$emit('globalTogglePreview', false)
  
      var showModal = function(resolve, reject) {
        UIkit.modal.confirm(modalText)
        .then(function() {
          resolve()
        }, function () {
          reject()
        })
        .finally(function() {
          // Reenable the GPU preview, if it was active before the modal
          console.log("Re-enabling GPU preview")
          self.$root.$emit('globalReenablePreview')
        })
      }
      return new Promise(showModal)
    }
  }
})

new Vue({
  store,
  render: h => h(App)