All files / src index.js

100% Statements 16/16
69.23% Branches 9/13
100% Functions 2/2
100% Lines 16/16

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59                    7x 7x     7x                                   7x 7x 7x     7x 7x     7x 7x     7x 1x     7x 2x     7x 1x        
import FormulateSchema from './components/FormulateSchema'
import FormulateForm from './components/FormulateForm.vue'
import FormulateInput from './components/FormulateInput.vue'
 
import formEvents from './features/form-events'
import textMask from './features/text-mask'
import enforceNumber from './features/enforce-number'
 
import Formulate from '@braid/vue-formulate/src/Formulate'
 
export const components = { FormulateForm, FormulateSchema, FormulateInput }
export const features = { formEvents, textMask, enforceNumber }
 
export default function(options = {}) {
  let extended = {
    options: Formulate.merge(
      {
        features: {
          formEvents: true,
          textMask: false,
          enforceNumber: false,
        },
        override: {
          FormulateForm: true,
          FormulateInput: true,
          FormulateSchema: true,
        },
      },
      options
    ),
  }
 
  return function plugin(instance) {
    Eif (extended.options.override.FormulateForm) {
      instance.extend({ components: { FormulateForm } })
    }
 
    Eif (extended.options.override.FormulateInput) {
      instance.extend({ components: { FormulateInput } })
    }
 
    Eif (extended.options.override.FormulateSchema) {
      instance.extend({ components: { FormulateSchema } })
    }
 
    if (extended.options.features.formEvents) {
      instance.extend(formEvents)
    }
 
    if (extended.options.features.textMask) {
      instance.extend(textMask)
    }
 
    if (extended.options.features.enforceNumber) {
      instance.extend(enforceNumber)
    }
  }
}