import Validator from './validator';
import makeMixin from './mixin';
import makeDirective from './directive';
import ErrorBag from './errorBag';
import Rules from './rules';
import { assign } from './utils';
import defaultOptions from './config';
import mapFields from './helpers';

// eslint-disable-next-line
const install = (Vue, options) => {
  const config = assign({}, defaultOptions, options);
  if (config.dictionary) {
    Validator.updateDictionary(config.dictionary);
  }

  Validator.setLocale(config.locale);
  Validator.setStrictMode(config.strict);

  Vue.mixin(makeMixin(Vue, config));
  Vue.directive('validate', makeDirective(config));
};

export default {
  install,
  mapFields,
  Validator,
  ErrorBag,
  Rules,
  version: '__VERSION__'
};

@@ -183,16 +183,22 @@
 %7B assign
+, warn
  %7D from 
@@ -204,24 +204,24 @@
  './utils';%0A
-
 import defau
@@ -287,35 +287,17 @@
 ';%0A%0A
-// eslint-disable-next-line
+let Vue;%0A
 %0Acon
@@ -310,16 +310,17 @@
 tall = (
+_
 Vue, opt
@@ -330,16 +330,141 @@
 s) =%3E %7B%0A
+  if (Vue) %7B%0A    warn('already installed, Vue.use(VeeValidate) should only be called once.');%0A    return;%0A  %7D%0A%0A  Vue = _Vue;%0A
   const 

handle installation similair to Vuex