index.js 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
  3. Object.defineProperty(exports, "__esModule", {
  4. value: true
  5. });
  6. exports.dividerProps = exports.default = void 0;
  7. var _vue = require("vue");
  8. var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
  9. var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
  10. var _propsUtil = require("../_util/props-util");
  11. var _type = require("../_util/type");
  12. var _useConfigInject2 = _interopRequireDefault(require("../_util/hooks/useConfigInject"));
  13. var dividerProps = function dividerProps() {
  14. return {
  15. prefixCls: String,
  16. type: {
  17. type: String,
  18. default: 'horizontal'
  19. },
  20. dashed: {
  21. type: Boolean,
  22. default: false
  23. },
  24. orientation: {
  25. type: String,
  26. default: 'center'
  27. },
  28. plain: {
  29. type: Boolean,
  30. default: false
  31. },
  32. orientationMargin: [String, Number]
  33. };
  34. };
  35. exports.dividerProps = dividerProps;
  36. var Divider = (0, _vue.defineComponent)({
  37. compatConfig: {
  38. MODE: 3
  39. },
  40. name: 'ADivider',
  41. props: dividerProps(),
  42. setup: function setup(props, _ref) {
  43. var slots = _ref.slots;
  44. var _useConfigInject = (0, _useConfigInject2.default)('divider', props),
  45. prefixClsRef = _useConfigInject.prefixCls,
  46. direction = _useConfigInject.direction;
  47. var hasCustomMarginLeft = (0, _vue.computed)(function () {
  48. return props.orientation === 'left' && props.orientationMargin != null;
  49. });
  50. var hasCustomMarginRight = (0, _vue.computed)(function () {
  51. return props.orientation === 'right' && props.orientationMargin != null;
  52. });
  53. var classString = (0, _vue.computed)(function () {
  54. var _ref2;
  55. var type = props.type,
  56. dashed = props.dashed,
  57. plain = props.plain;
  58. var prefixCls = prefixClsRef.value;
  59. return _ref2 = {}, (0, _defineProperty2.default)(_ref2, prefixCls, true), (0, _defineProperty2.default)(_ref2, "".concat(prefixCls, "-").concat(type), true), (0, _defineProperty2.default)(_ref2, "".concat(prefixCls, "-dashed"), !!dashed), (0, _defineProperty2.default)(_ref2, "".concat(prefixCls, "-plain"), !!plain), (0, _defineProperty2.default)(_ref2, "".concat(prefixCls, "-rtl"), direction.value === 'rtl'), (0, _defineProperty2.default)(_ref2, "".concat(prefixCls, "-no-default-orientation-margin-left"), hasCustomMarginLeft.value), (0, _defineProperty2.default)(_ref2, "".concat(prefixCls, "-no-default-orientation-margin-right"), hasCustomMarginRight.value), _ref2;
  60. });
  61. var innerStyle = (0, _vue.computed)(function () {
  62. var marginValue = typeof props.orientationMargin === 'number' ? "".concat(props.orientationMargin, "px") : props.orientationMargin;
  63. return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, hasCustomMarginLeft.value && {
  64. marginLeft: marginValue
  65. }), hasCustomMarginRight.value && {
  66. marginRight: marginValue
  67. });
  68. });
  69. var orientationPrefix = (0, _vue.computed)(function () {
  70. return props.orientation.length > 0 ? '-' + props.orientation : props.orientation;
  71. });
  72. return function () {
  73. var _slots$default;
  74. var children = (0, _propsUtil.flattenChildren)((_slots$default = slots.default) === null || _slots$default === void 0 ? void 0 : _slots$default.call(slots));
  75. return (0, _vue.createVNode)("div", {
  76. "class": [classString.value, children.length ? "".concat(prefixClsRef.value, "-with-text ").concat(prefixClsRef.value, "-with-text").concat(orientationPrefix.value) : ''],
  77. "role": "separator"
  78. }, [children.length ? (0, _vue.createVNode)("span", {
  79. "class": "".concat(prefixClsRef.value, "-inner-text"),
  80. "style": innerStyle.value
  81. }, [children]) : null]);
  82. };
  83. }
  84. });
  85. var _default = (0, _type.withInstall)(Divider);
  86. exports.default = _default;