compact.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.default = void 0;
  6. var _compactItem = require("../../style/compact-item");
  7. var _compactItemVertical = require("../../style/compact-item-vertical");
  8. var _internal = require("../../theme/internal");
  9. var _token = require("./token");
  10. const genButtonCompactStyle = token => {
  11. const {
  12. componentCls,
  13. colorPrimaryHover,
  14. lineWidth,
  15. calc
  16. } = token;
  17. const insetOffset = calc(lineWidth).mul(-1).equal();
  18. const getCompactBorderStyle = vertical => {
  19. const selector = `${componentCls}-compact${vertical ? '-vertical' : ''}-item${componentCls}-primary:not([disabled])`;
  20. return {
  21. [`${selector} + ${selector}::before`]: {
  22. position: 'absolute',
  23. top: vertical ? insetOffset : 0,
  24. insetInlineStart: vertical ? 0 : insetOffset,
  25. backgroundColor: colorPrimaryHover,
  26. content: '""',
  27. width: vertical ? '100%' : lineWidth,
  28. height: vertical ? lineWidth : '100%'
  29. }
  30. };
  31. };
  32. // Special styles for Primary Button
  33. return Object.assign(Object.assign({}, getCompactBorderStyle()), getCompactBorderStyle(true));
  34. };
  35. // ============================== Export ==============================
  36. var _default = exports.default = (0, _internal.genSubStyleComponent)(['Button', 'compact'], token => {
  37. const buttonToken = (0, _token.prepareToken)(token);
  38. return [
  39. // Space Compact
  40. (0, _compactItem.genCompactItemStyle)(buttonToken), (0, _compactItemVertical.genCompactItemVerticalStyle)(buttonToken), genButtonCompactStyle(buttonToken)];
  41. }, _token.prepareComponentToken);