util.js 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
  3. var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
  4. Object.defineProperty(exports, "__esModule", {
  5. value: true
  6. });
  7. exports.getPlaceholder = getPlaceholder;
  8. exports.getRangePlaceholder = getRangePlaceholder;
  9. exports.useIcons = useIcons;
  10. var React = _interopRequireWildcard(require("react"));
  11. var _useIcons = _interopRequireDefault(require("../select/useIcons"));
  12. function getPlaceholder(locale, picker, customizePlaceholder) {
  13. if (customizePlaceholder !== undefined) {
  14. return customizePlaceholder;
  15. }
  16. if (picker === 'year' && locale.lang.yearPlaceholder) {
  17. return locale.lang.yearPlaceholder;
  18. }
  19. if (picker === 'quarter' && locale.lang.quarterPlaceholder) {
  20. return locale.lang.quarterPlaceholder;
  21. }
  22. if (picker === 'month' && locale.lang.monthPlaceholder) {
  23. return locale.lang.monthPlaceholder;
  24. }
  25. if (picker === 'week' && locale.lang.weekPlaceholder) {
  26. return locale.lang.weekPlaceholder;
  27. }
  28. if (picker === 'time' && locale.timePickerLocale.placeholder) {
  29. return locale.timePickerLocale.placeholder;
  30. }
  31. return locale.lang.placeholder;
  32. }
  33. function getRangePlaceholder(locale, picker, customizePlaceholder) {
  34. if (customizePlaceholder !== undefined) {
  35. return customizePlaceholder;
  36. }
  37. if (picker === 'year' && locale.lang.yearPlaceholder) {
  38. return locale.lang.rangeYearPlaceholder;
  39. }
  40. if (picker === 'quarter' && locale.lang.quarterPlaceholder) {
  41. return locale.lang.rangeQuarterPlaceholder;
  42. }
  43. if (picker === 'month' && locale.lang.monthPlaceholder) {
  44. return locale.lang.rangeMonthPlaceholder;
  45. }
  46. if (picker === 'week' && locale.lang.weekPlaceholder) {
  47. return locale.lang.rangeWeekPlaceholder;
  48. }
  49. if (picker === 'time' && locale.timePickerLocale.placeholder) {
  50. return locale.timePickerLocale.rangePlaceholder;
  51. }
  52. return locale.lang.rangePlaceholder;
  53. }
  54. function useIcons(props, prefixCls) {
  55. const {
  56. allowClear = true
  57. } = props;
  58. const {
  59. clearIcon,
  60. removeIcon
  61. } = (0, _useIcons.default)(Object.assign(Object.assign({}, props), {
  62. prefixCls,
  63. componentName: 'DatePicker'
  64. }));
  65. const mergedAllowClear = React.useMemo(() => {
  66. if (allowClear === false) {
  67. return false;
  68. }
  69. const allowClearConfig = allowClear === true ? {} : allowClear;
  70. return Object.assign({
  71. clearIcon: clearIcon
  72. }, allowClearConfig);
  73. }, [allowClear, clearIcon]);
  74. return [mergedAllowClear, removeIcon];
  75. }