useAnimateConfig.js 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. import _typeof from "@babel/runtime/helpers/esm/typeof";
  2. import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
  3. import warning from "rc-util/es/warning";
  4. export default function useAnimateConfig() {
  5. var animated = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
  6. inkBar: true,
  7. tabPane: false
  8. };
  9. var mergedAnimated;
  10. if (animated === false) {
  11. mergedAnimated = {
  12. inkBar: false,
  13. tabPane: false
  14. };
  15. } else if (animated === true) {
  16. mergedAnimated = {
  17. inkBar: true,
  18. tabPane: false
  19. };
  20. } else {
  21. mergedAnimated = _objectSpread({
  22. inkBar: true
  23. }, _typeof(animated) === 'object' ? animated : {});
  24. }
  25. // Enable tabPane animation if provide motion
  26. if (mergedAnimated.tabPaneMotion && mergedAnimated.tabPane === undefined) {
  27. mergedAnimated.tabPane = true;
  28. }
  29. if (!mergedAnimated.tabPaneMotion && mergedAnimated.tabPane) {
  30. if (process.env.NODE_ENV !== 'production') {
  31. warning(false, '`animated.tabPane` is true but `animated.tabPaneMotion` is not provided. Motion will not work.');
  32. }
  33. mergedAnimated.tabPane = false;
  34. }
  35. return mergedAnimated;
  36. }