config.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. var Components = require('../components.json');
  2. var path = require('path');
  3. var externals = {};
  4. Object.keys(Components).forEach(function(key) {
  5. externals[`packages/${key}/index.js`] = `element-ui/lib/${key}`;
  6. externals[`packages/${key}/style.css`] = `element-ui/lib/${key}/style.css`;
  7. });
  8. externals['main/utils/clickoutside'] = 'element-ui/lib/utils/clickoutside';
  9. externals['main/utils/popper'] = 'element-ui/lib/utils/popper';
  10. externals['main/utils/vue-popper'] = 'element-ui/lib/utils/vue-popper';
  11. externals['vue-popup'] = 'vue-popup';
  12. exports.externals = Object.assign({
  13. vue: {
  14. root: 'Vue',
  15. commonjs: 'vue',
  16. commonjs2: 'vue',
  17. amd: 'vue'
  18. }
  19. }, externals);
  20. exports.alias = {
  21. main: path.resolve(__dirname, '../src'),
  22. packages: path.resolve(__dirname, '../packages'),
  23. examples: path.resolve(__dirname, '../examples')
  24. };
  25. exports.jsexclude = /node_modules|utils\/popper\.js|utils\/date.\js/;
  26. exports.postcss = function(webapck) {
  27. return [
  28. require('postcss-salad')({
  29. browser: ['ie > 8', 'last 2 version'],
  30. features: {
  31. 'partialImport': {
  32. addDependencyTo: webapck
  33. },
  34. 'bem': {
  35. 'shortcuts': {
  36. 'component': 'b',
  37. 'modifier': 'm',
  38. 'descendent': 'e'
  39. },
  40. 'separators': {
  41. 'descendent': '__',
  42. 'modifier': '--'
  43. }
  44. }
  45. }
  46. })
  47. ];
  48. };