PickerTrigger.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
  3. Object.defineProperty(exports, "__esModule", {
  4. value: true
  5. });
  6. exports.default = void 0;
  7. var _vue = require("vue");
  8. var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
  9. var _vcTrigger = _interopRequireDefault(require("../vc-trigger"));
  10. var _classNames2 = _interopRequireDefault(require("../_util/classNames"));
  11. var _useMergeProps2 = _interopRequireDefault(require("./hooks/useMergeProps"));
  12. var BUILT_IN_PLACEMENTS = {
  13. bottomLeft: {
  14. points: ['tl', 'bl'],
  15. offset: [0, 4],
  16. overflow: {
  17. adjustX: 1,
  18. adjustY: 1
  19. }
  20. },
  21. bottomRight: {
  22. points: ['tr', 'br'],
  23. offset: [0, 4],
  24. overflow: {
  25. adjustX: 1,
  26. adjustY: 1
  27. }
  28. },
  29. topLeft: {
  30. points: ['bl', 'tl'],
  31. offset: [0, -4],
  32. overflow: {
  33. adjustX: 0,
  34. adjustY: 1
  35. }
  36. },
  37. topRight: {
  38. points: ['br', 'tr'],
  39. offset: [0, -4],
  40. overflow: {
  41. adjustX: 0,
  42. adjustY: 1
  43. }
  44. }
  45. };
  46. function PickerTrigger(props, _ref) {
  47. var _classNames;
  48. var slots = _ref.slots;
  49. var _useMergeProps = (0, _useMergeProps2.default)(props),
  50. prefixCls = _useMergeProps.prefixCls,
  51. popupStyle = _useMergeProps.popupStyle,
  52. visible = _useMergeProps.visible,
  53. dropdownClassName = _useMergeProps.dropdownClassName,
  54. dropdownAlign = _useMergeProps.dropdownAlign,
  55. transitionName = _useMergeProps.transitionName,
  56. getPopupContainer = _useMergeProps.getPopupContainer,
  57. range = _useMergeProps.range,
  58. popupPlacement = _useMergeProps.popupPlacement,
  59. direction = _useMergeProps.direction;
  60. var dropdownPrefixCls = "".concat(prefixCls, "-dropdown");
  61. var getPopupPlacement = function getPopupPlacement() {
  62. if (popupPlacement !== undefined) {
  63. return popupPlacement;
  64. }
  65. return direction === 'rtl' ? 'bottomRight' : 'bottomLeft';
  66. };
  67. return (0, _vue.createVNode)(_vcTrigger.default, {
  68. "showAction": [],
  69. "hideAction": [],
  70. "popupPlacement": getPopupPlacement(),
  71. "builtinPlacements": BUILT_IN_PLACEMENTS,
  72. "prefixCls": dropdownPrefixCls,
  73. "popupTransitionName": transitionName,
  74. "popupAlign": dropdownAlign,
  75. "popupVisible": visible,
  76. "popupClassName": (0, _classNames2.default)(dropdownClassName, (_classNames = {}, (0, _defineProperty2.default)(_classNames, "".concat(dropdownPrefixCls, "-range"), range), (0, _defineProperty2.default)(_classNames, "".concat(dropdownPrefixCls, "-rtl"), direction === 'rtl'), _classNames)),
  77. "popupStyle": popupStyle,
  78. "getPopupContainer": getPopupContainer,
  79. "tryPopPortal": true
  80. }, {
  81. default: slots.default,
  82. popup: slots.popupElement
  83. });
  84. }
  85. var _default = PickerTrigger;
  86. exports.default = _default;