Code coverage report for src/resolvers.js

Statements: 100% (36 / 36)      Branches: 100% (0 / 0)      Functions: 100% (0 / 0)      Lines: 100% (36 / 36)      Ignored: none     

All files » src/ » resolvers.js
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    13 13 13 13 13   13 13   13 13   13     13 13 13 13 13 13 13 13 13 13 13     13   13 13 13 13   13 13   13 13   13 13     13     13 13   13
'use strict'
 
import {
	leftCurryTwice,
	identity,
	compose,
	partial,
 
	resolveDeps,
	invoke,
 
	instanciate,
	singletonify,
 
	generateMask
} from './utils'
 
import {
	VALUE,
	PROVIDER,
	CONSTRUCTOR,
	SINGLETON,
	FUNCTION,
	INSTANCE,
	PERSISTENT,
	TRANSIENT,
	LAZY,
	EAGER
} from './options'
	
var resolvers = {}
 
resolvers[ generateMask([VALUE]) ] = compose(leftCurryTwice, resolveDeps)(identity)
resolvers[ generateMask([FUNCTION]) ] = compose(leftCurryTwice, resolveDeps)(partial)
resolvers[ generateMask([CONSTRUCTOR]) ] = compose(leftCurryTwice, resolveDeps)(instanciate)
resolvers[ generateMask([PROVIDER]) ] = compose(leftCurryTwice, resolveDeps)(invoke)
 
resolvers[ generateMask([TRANSIENT, SINGLETON, PROVIDER]) ] = singletonify(invoke)
resolvers[ generateMask([TRANSIENT, CONSTRUCTOR, SINGLETON]) ] = singletonify(instanciate)
 
resolvers[ generateMask([LAZY, SINGLETON, PROVIDER]) ] = singletonify(invoke, true)
resolvers[ generateMask([LAZY, SINGLETON, CONSTRUCTOR]) ] = singletonify(instanciate, true)
 
resolvers[ generateMask([EAGER, SINGLETON, PROVIDER])] = singletonify(invoke, true)
resolvers[ generateMask([EAGER, SINGLETON, CONSTRUCTOR]) ] = singletonify(instanciate, true)
 
// aliases
resolvers[ generateMask([INSTANCE]) ] = resolvers[ generateMask([VALUE]) ]
 
// backward compatibility
resolvers[ generateMask([PERSISTENT, SINGLETON, PROVIDER]) ] = resolvers[ generateMask([LAZY, SINGLETON, PROVIDER]) ]
resolvers[ generateMask([PERSISTENT, CONSTRUCTOR, SINGLETON]) ] = resolvers[ generateMask([LAZY, CONSTRUCTOR, SINGLETON]) ]
 
export default resolvers