index.js 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.extractStyle = extractStyle;
  6. var _vue = require("vue");
  7. var _cssinjs = require("../cssinjs");
  8. var antd = _interopRequireWildcard(require("../../components"));
  9. var _serverRenderer = require("vue/server-renderer");
  10. function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
  11. function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
  12. const blackList = ['ConfigProvider', 'Grid', 'Tour', 'SelectOptGroup', 'SelectOption', 'MentionsOption', 'TreeNode', 'TreeSelectNode', 'LocaleProvider'];
  13. const pickerMap = {
  14. MonthPicker: 'month',
  15. WeekPicker: 'week',
  16. QuarterPicker: 'quarter'
  17. };
  18. const compChildNameMap = {
  19. MenuDivider: 'Menu',
  20. MenuItem: 'Menu',
  21. MenuItemGroup: 'Menu',
  22. SubMenu: 'Menu',
  23. TableColumn: 'Table',
  24. TableColumnGroup: 'Table',
  25. TableSummary: 'Table',
  26. TableSummaryRow: 'Table',
  27. TableSummaryCell: 'Table',
  28. TabPane: 'Tabs',
  29. TimelineItem: 'Timeline'
  30. };
  31. const defaultNode = () => (0, _vue.createVNode)(_vue.Fragment, null, [Object.keys(antd).filter(name => !blackList.includes(name) && name[0] === name[0].toUpperCase()).map(compName => {
  32. const Comp = antd[compName];
  33. if (compName === 'Dropdown') {
  34. return (0, _vue.createVNode)(Comp, {
  35. "key": compName,
  36. "menu": {
  37. items: []
  38. }
  39. }, {
  40. default: () => [(0, _vue.createVNode)("div", null, null)]
  41. });
  42. }
  43. if (compName === 'Anchor') {
  44. return (0, _vue.createVNode)(Comp, {
  45. "key": compName,
  46. "items": []
  47. }, null);
  48. }
  49. if (compName in pickerMap) {
  50. const Comp = antd['DatePicker'];
  51. const type = pickerMap[compName];
  52. return (0, _vue.createVNode)(Comp, {
  53. "key": compName,
  54. "picker": type
  55. }, null);
  56. }
  57. if (compName in compChildNameMap) {
  58. const ParentComp = antd[compChildNameMap[compName]];
  59. return (0, _vue.createVNode)(ParentComp, null, {
  60. default: () => [(0, _vue.createVNode)(Comp, null, null)]
  61. });
  62. }
  63. if (compName === 'QRCode' || compName === 'Segmented') {
  64. return (0, _vue.createVNode)(Comp, {
  65. "key": compName,
  66. "value": ''
  67. }, {
  68. default: () => [(0, _vue.createVNode)("div", null, null)]
  69. });
  70. }
  71. return (0, _vue.createVNode)(Comp, {
  72. "key": compName
  73. }, null);
  74. })]);
  75. function extractStyle(customTheme) {
  76. const cache = (0, _cssinjs.createCache)();
  77. (0, _serverRenderer.renderToString)((0, _vue.createVNode)(_cssinjs.StyleProvider, {
  78. "cache": cache
  79. }, {
  80. default: () => [customTheme ? customTheme(defaultNode()) : defaultNode()]
  81. }));
  82. // Grab style from cache
  83. const styleText = (0, _cssinjs.extractStyle)(cache, true);
  84. return styleText;
  85. }