| 123456789101112131415161718192021222324252627282930313233343536373839 | 
							- /* eslint-disable */
 
- var array = require('./array.wxs');
 
- var object = require('./object.wxs');
 
- var PREFIX = 'van-';
 
- function join(name, mods) {
 
-   name = PREFIX + name;
 
-   mods = mods.map(function(mod) {
 
-     return name + '--' + mod;
 
-   });
 
-   mods.unshift(name);
 
-   return mods.join(' ');
 
- }
 
- function traversing(mods, conf) {
 
-   if (!conf) {
 
-     return;
 
-   }
 
-   if (typeof conf === 'string' || typeof conf === 'number') {
 
-     mods.push(conf);
 
-   } else if (array.isArray(conf)) {
 
-     conf.forEach(function(item) {
 
-       traversing(mods, item);
 
-     });
 
-   } else if (typeof conf === 'object') {
 
-     object.keys(conf).forEach(function(key) {
 
-       conf[key] && mods.push(key);
 
-     });
 
-   }
 
- }
 
- function bem(name, conf) {
 
-   var mods = [];
 
-   traversing(mods, conf);
 
-   return join(name, mods);
 
- }
 
- module.exports = bem;
 
 
  |