All files / module/helpers missingModule.js

16.67% Statements 1/6
0% Branches 0/2
50% Functions 1/2
16.67% Lines 1/6

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                    2x                                                      
import { ModuleBuilder } from '../ModuleBuilder'
import { ResourceProxy } from '../../api/ResourceProxy'
 
/**
 * Check if a module is registered in the store
 *
 * @param {Vuex} store
 * @param {String} moduleName
 */
export function isMissingModule (store, moduleName) {
  return Object.keys(store._modules.root._children).indexOf(moduleName) < 0
}
 
/**
 * Register a standalone module to the store.
 *
 * @param {ResourcefulApi} api
 * @param {String} moduleName
 */
export function registerMissingModule (api, moduleName) {
  let resourceProxy = api[moduleName]
  if (!resourceProxy) {
    resourceProxy = new ResourceProxy()
  }
 
  const builder = new ModuleBuilder(
    api,
    moduleName,
    resourceProxy,
    { standalone: true }
  )
 
  api.store.registerModule(
    moduleName,
    builder.build()
  )
}