11import defaults from './core.defaults' ;
2- import { mergeIf , resolveObjectKey , isArray , isFunction , valueOrDefault } from '../helpers/helpers.core' ;
2+ import { mergeIf , resolveObjectKey , isArray , isFunction , valueOrDefault , isObject } from '../helpers/helpers.core' ;
33import { _attachContext , _createResolver , _descriptors } from '../helpers/helpers.config' ;
44
55export function getIndexAxis ( type , options ) {
@@ -301,13 +301,14 @@ export default class Config {
301301
302302 /**
303303 * @param {object[] } scopes
304- * @param {function|object } context
304+ * @param {object } [context]
305+ * @param {string[] } [prefixes]
305306 */
306307 createResolver ( scopes , context , prefixes = [ '' ] ) {
307- const cached = getResolver ( this . _resolverCache , scopes , prefixes ) ;
308- return context && cached . needContext
309- ? _attachContext ( cached . resolver , isFunction ( context ) ? context ( ) : context )
310- : cached . resolver ;
308+ const { resolver } = getResolver ( this . _resolverCache , scopes , prefixes ) ;
309+ return isObject ( context )
310+ ? _attachContext ( resolver , isFunction ( context ) ? context ( ) : context )
311+ : resolver ;
311312 }
312313}
313314
@@ -323,8 +324,7 @@ function getResolver(resolverCache, scopes, prefixes) {
323324 const resolver = _createResolver ( scopes , prefixes ) ;
324325 cached = {
325326 resolver,
326- subPrefixes : prefixes . filter ( p => ! p . toLowerCase ( ) . includes ( 'hover' ) ) ,
327- needContext : needContext ( resolver , Object . getOwnPropertyNames ( resolver ) )
327+ subPrefixes : prefixes . filter ( p => ! p . toLowerCase ( ) . includes ( 'hover' ) )
328328 } ;
329329 cache . set ( cacheKey , cached ) ;
330330 }
0 commit comments