diff --git a/index.js b/index.js index f2768e99fd..2ffa0ae04e 100644 --- a/index.js +++ b/index.js @@ -1,13 +1,25 @@ -// this file is not used if use https://github.com/ant-design/babel-plugin-antd +/* eslint no-console:0 */ -import warn from 'rc-util/lib/warn'; -import * as antd from './components'; +function camelCase(name) { + return name.charAt(0).toUpperCase() + + name.slice(1).replace(/-(\w)/g, (m, n) => n.toUpperCase()); +} -const req = require.context('./components', true, /^\.\/[^_][\w-]+\/style\/index\.tsx?$/); +var req = require.context('./components', true, /^\.\/[^_][\w-]+\/(style\/)?index\.tsx?$/); -req.keys().forEach(req); +req.keys().forEach((mod) => { + var v = req(mod); + if (v && v.default) { + v = v.default; + } + var match = mod.match(/^\.\/([^_][\w-]+)\/index\.tsx?$/); + if (match && match[1]) { + exports[camelCase(match[1])] = v; + } +}); -warn('You are using prebuilt antd, ' + - 'please use https://github.com/ant-design/babel-plugin-antd to reduce app bundle size.'); -export default antd; +if (typeof console !== 'undefined' && console.warn) { + console.warn('you are using prebuild antd,\ +please use https://github.com/ant-design/babel-plugin-antd to reduce app bundle size.'); +}