lib/ctr-nodes/index.js
function(dataMap, target) {
      //dataMap
      let staticArgs = dataMap.get('static');
      let objectArgs = dataMap.get('obj');

      //transform/matrix helpers are objs so we need to check and processes
      //them before seting static to keep source order
      if (objectArgs.size) {
        if (objectArgs.has('transform')) {
          ({staticArgs, objectArgs} = _H.helperKeys.transform(objectArgs, staticArgs));
        }else if (objectArgs.has('matrix')) {
          ({staticArgs, objectArgs} = _H.helperKeys.matrix(objectArgs, staticArgs));
        }
      }
      //check for filter, can be string/array/obj
      const filter = staticArgs.has('filter') || objectArgs.has('filter');
      if (filter) {
        ({staticArgs, objectArgs} = _H.helperKeys.filter(staticArgs, objectArgs));
      }

      //add static, as in non-obj key pairs
      if (staticArgs.size) {
        //check and process helpers if present
        staticArgs = _H.helperKeys.processHelperArgs(staticArgs, target);

        //hardcoded helper, kinds hacker tied to #396
        if (staticArgs.has('__inheritProps__')) {
          //remove
          staticArgs = staticArgs.delete('__inheritProps__');
        }

        if (type !== 'style' || self.processStyle) {
          //apply static args
          self.indexMgr.set(staticArgs, target);
        }
      }
      //deflate check due to helpers like font-size: responsive
      if (_M._queue.deflateQueue.size) {
        _M._queue.deflateNext();
      }

      /*
      If gate for the real fun;
       */
      if (objectArgs.size) {

        //infinite loop saftey catch set
        self.processedHash = objectArgs.hashCode();

        /**
         * So the gist of this funk is its a wrapper funk for the passed in args.
         * I would take a look at whats happening below in the loop to get a better
         * idea of whats going on but we are just passing the keyArgs into this funk
         * @param  {str}  key     -> Key from the objectArgs
         * @param  {str}  keyList -> the regex ref in the _H.util
         * @param  {str}  plural  -> The plural name which will then cycle through
         *                           the cylceCallFn
         * @param  {fn}  funk     -> The funk which we will invoke if it passes the
         *                           if gate
         * @param  {bln} passKey  -> If we need to pass the key to the funk
         * @return {---}          -> A whole shit load could happen but nothing
         *                           is returned directly
         */
        const keyCheck = function (key, keyType, funk, passKey = true) {
          //test from list, check out the util
          if (_H.util.regularExp.keyTest(key, keyType)) {
            //checks for use key
            const data = self.doNotUse(objectArgs.get(key), keyType);
            if (!data) { return true; }
            //send off to be processed
            if (passKey) {
              funk(key, data, target, keyType);
            }else {
              funk(data, target, keyType, key);
            }
            return true;
          }
        };

        // The gist here is to cycle though all the object keys
        // and then sub cycle the above key funks to see if
        // we have a regex match. If we have a match processes said match
        // and return true so we can bust the loop and move on
        const keyArgs = [
          //single, plural, function
          ['grid',       processGrid, false],
          ['transition', processTrans],
          ['animation',  processAnim],
          ['media',      processMedia, false],
          ['state',      processState],
          ['non',        processElm],
          ['element',    processElm],
          ['attribute',  processAttr],
          ['component',  processComp]
        ];

        const keyList = objectArgs.keys();
        //cycle through keys and inkove fns to match regex
        for (let key of keyList) {
          for (let f = 0; f < keyArgs.length; f++) {
            const keyArg = keyArgs[f];
            //add key to the front of the line
            keyArg.unshift(key);
            const fnRes = keyCheck.apply(null, keyArg);
            //remove the key from the front of the line
            keyArg.shift();
            if (fnRes) {
              //remove key
              objectArgs = objectArgs.delete(key);
              //bust loop
              f += keyArgs.length;
            }
          }
        }
      }

      /**
       * Deflate and tmpl features before moving onto the next cycle
       */
      if (_M._queue.deflateQueue.size) {
        _M._queue.deflateNext();
      }

      return {
        objectArgs,
        target
      };
    }
function(dataMap, target) {
      //dataMap
      let staticArgs = dataMap.get('static');
      let objectArgs = dataMap.get('obj');

      //transform/matrix helpers are objs so we need to check and processes
      //them before seting static to keep source order
      if (objectArgs.size) {
        if (objectArgs.has('transform')) {
          ({staticArgs, objectArgs} = _H.helperKeys.transform(objectArgs, staticArgs));
        }else if (objectArgs.has('matrix')) {
          ({staticArgs, objectArgs} = _H.helperKeys.matrix(objectArgs, staticArgs));
        }
      }
      //check for filter, can be string/array/obj
      const filter = staticArgs.has('filter') || objectArgs.has('filter');
      if (filter) {
        ({staticArgs, objectArgs} = _H.helperKeys.filter(staticArgs, objectArgs));
      }

      //add static, as in non-obj key pairs
      if (staticArgs.size) {
        //check and process helpers if present
        staticArgs = _H.helperKeys.processHelperArgs(staticArgs, target);

        //hardcoded helper, kinds hacker tied to #396
        if (staticArgs.has('__inheritProps__')) {
          //remove
          staticArgs = staticArgs.delete('__inheritProps__');
        }

        if (type !== 'style' || self.processStyle) {
          //apply static args
          self.indexMgr.set(staticArgs, target);
        }
      }
      //deflate check due to helpers like font-size: responsive
      if (_M._queue.deflateQueue.size) {
        _M._queue.deflateNext();
      }

      /*
      If gate for the real fun;
       */
      if (objectArgs.size) {

        //infinite loop saftey catch set
        self.processedHash = objectArgs.hashCode();

        /**
         * So the gist of this funk is its a wrapper funk for the passed in args.
         * I would take a look at whats happening below in the loop to get a better
         * idea of whats going on but we are just passing the keyArgs into this funk
         * @param  {str}  key     -> Key from the objectArgs
         * @param  {str}  keyList -> the regex ref in the _H.util
         * @param  {str}  plural  -> The plural name which will then cycle through
         *                           the cylceCallFn
         * @param  {fn}  funk     -> The funk which we will invoke if it passes the
         *                           if gate
         * @param  {bln} passKey  -> If we need to pass the key to the funk
         * @return {---}          -> A whole shit load could happen but nothing
         *                           is returned directly
         */
        const keyCheck = function (key, keyType, funk, passKey = true) {
          //test from list, check out the util
          if (_H.util.regularExp.keyTest(key, keyType)) {
            //checks for use key
            const data = self.doNotUse(objectArgs.get(key), keyType);
            if (!data) { return true; }
            //send off to be processed
            if (passKey) {
              funk(key, data, target, keyType);
            }else {
              funk(data, target, keyType, key);
            }
            return true;
          }
        };

        // The gist here is to cycle though all the object keys
        // and then sub cycle the above key funks to see if
        // we have a regex match. If we have a match processes said match
        // and return true so we can bust the loop and move on
        const keyArgs = [
          //single, plural, function
          ['grid',       processGrid, false],
          ['transition', processTrans],
          ['animation',  processAnim],
          ['media',      processMedia, false],
          ['state',      processState],
          ['non',        processElm],
          ['element',    processElm],
          ['attribute',  processAttr],
          ['component',  processComp]
        ];

        const keyList = objectArgs.keys();
        //cycle through keys and inkove fns to match regex
        for (let key of keyList) {
          for (let f = 0; f < keyArgs.length; f++) {
            const keyArg = keyArgs[f];
            //add key to the front of the line
            keyArg.unshift(key);
            const fnRes = keyCheck.apply(null, keyArg);
            //remove the key from the front of the line
            keyArg.shift();
            if (fnRes) {
              //remove key
              objectArgs = objectArgs.delete(key);
              //bust loop
              f += keyArgs.length;
            }
          }
        }
      }

      /**
       * Deflate and tmpl features before moving onto the next cycle
       */
      if (_M._queue.deflateQueue.size) {
        _M._queue.deflateNext();
      }

      return {
        objectArgs,
        target
      };
    }
function ( dataMap , target ) { //dataMap let staticArgs = dataMap . get ( 'static' ) ; let objectArgs = dataMap . get ( 'obj' ) ; //transform/matrix helpers are objs so we need to check and processes //them before seting static to keep source order if ( objectArgs . size ) { if ( objectArgs . has ( 'transform' ) ) { ( { staticArgs , objectArgs } = _H . helperKeys . transform ( objectArgs , staticArgs ) ) ; } else if ( objectArgs . has ( 'matrix' ) ) { ( { staticArgs , objectArgs } = _H . helperKeys . matrix ( objectArgs , staticArgs ) ) ; } } //check for filter, can be string/array/obj const filter = staticArgs . has ( 'filter' ) || objectArgs . has ( 'filter' ) ; if ( filter ) { ( { staticArgs , objectArgs } = _H . helperKeys . filter ( staticArgs , objectArgs ) ) ; } //add static, as in non-obj key pairs if ( staticArgs . size ) { //check and process helpers if present staticArgs = _H . helperKeys . processHelperArgs ( staticArgs , target ) ; //hardcoded helper, kinds hacker tied to #396 if ( staticArgs . has ( '__inheritProps__' ) ) { //remove staticArgs = staticArgs . delete ( '__inheritProps__' ) ; } if ( type !== 'style' || self . processStyle ) { //apply static args self . indexMgr . set ( staticArgs , target ) ; } } //deflate check due to helpers like font-size: responsive if ( _M . _queue . deflateQueue . size ) { _M . _queue . deflateNext ( ) ; } /*
      If gate for the real fun;
       */ if ( objectArgs . size ) { //infinite loop saftey catch set self . processedHash = objectArgs . hashCode ( ) ; /**
         * So the gist of this funk is its a wrapper funk for the passed in args.
         * I would take a look at whats happening below in the loop to get a better
         * idea of whats going on but we are just passing the keyArgs into this funk
         * @param  {str}  key     -> Key from the objectArgs
         * @param  {str}  keyList -> the regex ref in the _H.util
         * @param  {str}  plural  -> The plural name which will then cycle through
         *                           the cylceCallFn
         * @param  {fn}  funk     -> The funk which we will invoke if it passes the
         *                           if gate
         * @param  {bln} passKey  -> If we need to pass the key to the funk
         * @return {---}          -> A whole shit load could happen but nothing
         *                           is returned directly
         */ const keyCheck = function ( key , keyType , funk , passKey = true ) { //test from list, check out the util if ( _H . util . regularExp . keyTest ( key , keyType ) ) { //checks for use key const data = self . doNotUse ( objectArgs . get ( key ) , keyType ) ; if ( ! data ) { return true ; } //send off to be processed if ( passKey ) { funk ( key , data , target , keyType ) ; } else { funk ( data , target , keyType , key ) ; } return true ; } } ; // The gist here is to cycle though all the object keys // and then sub cycle the above key funks to see if // we have a regex match. If we have a match processes said match // and return true so we can bust the loop and move on const keyArgs = [ //single, plural, function [ 'grid' , processGrid , false ] , [ 'transition' , processTrans ] , [ 'animation' , processAnim ] , [ 'media' , processMedia , false ] , [ 'state' , processState ] , [ 'non' , processElm ] , [ 'element' , processElm ] , [ 'attribute' , processAttr ] , [ 'component' , processComp ] ] ; const keyList = objectArgs . keys ( ) ; //cycle through keys and inkove fns to match regex for ( let key of keyList ) { for ( let f = 0 ; f < keyArgs . length ; f ++ ) { const keyArg = keyArgs [ f ] ; //add key to the front of the line keyArg . unshift ( key ) ; const fnRes = keyCheck . apply ( null , keyArg ) ; //remove the key from the front of the line keyArg . shift ( ) ; if ( fnRes ) { //remove key objectArgs = objectArgs . delete ( key ) ; //bust loop f += keyArgs . length ; } } } } /**
       * Deflate and tmpl features before moving onto the next cycle
       */ if ( _M . _queue . deflateQueue . size ) { _M . _queue . deflateNext ( ) ; } return { objectArgs , target } ; }
The plan for this fn is to cycle through the various
components, and then merge and res of said comps
The plan for this fn is to cycle through the various components and then merge and res of said comps