context.js 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. import * as React from 'react';
  2. /** Used for each single Panel. e.g. DatePanel */
  3. export var PanelContext = /*#__PURE__*/React.createContext(null);
  4. export function usePanelContext() {
  5. return React.useContext(PanelContext);
  6. }
  7. /**
  8. * Get shared props for the SharedPanelProps interface.
  9. */
  10. export function useInfo(props, panelType) {
  11. var prefixCls = props.prefixCls,
  12. generateConfig = props.generateConfig,
  13. locale = props.locale,
  14. disabledDate = props.disabledDate,
  15. minDate = props.minDate,
  16. maxDate = props.maxDate,
  17. cellRender = props.cellRender,
  18. hoverValue = props.hoverValue,
  19. hoverRangeValue = props.hoverRangeValue,
  20. onHover = props.onHover,
  21. values = props.values,
  22. pickerValue = props.pickerValue,
  23. onSelect = props.onSelect,
  24. prevIcon = props.prevIcon,
  25. nextIcon = props.nextIcon,
  26. superPrevIcon = props.superPrevIcon,
  27. superNextIcon = props.superNextIcon;
  28. // ========================= MISC =========================
  29. var now = generateConfig.getNow();
  30. // ========================= Info =========================
  31. var info = {
  32. now: now,
  33. values: values,
  34. pickerValue: pickerValue,
  35. prefixCls: prefixCls,
  36. disabledDate: disabledDate,
  37. minDate: minDate,
  38. maxDate: maxDate,
  39. cellRender: cellRender,
  40. hoverValue: hoverValue,
  41. hoverRangeValue: hoverRangeValue,
  42. onHover: onHover,
  43. locale: locale,
  44. generateConfig: generateConfig,
  45. onSelect: onSelect,
  46. panelType: panelType,
  47. // Icons
  48. prevIcon: prevIcon,
  49. nextIcon: nextIcon,
  50. superPrevIcon: superPrevIcon,
  51. superNextIcon: superNextIcon
  52. };
  53. return [info, now];
  54. }
  55. // ============================== Internal ==============================
  56. /**
  57. * Internal usage for RangePicker to not to show the operation arrow
  58. */
  59. export var PickerHackContext = /*#__PURE__*/React.createContext({});
  60. if (process.env.NODE_ENV !== 'production') {
  61. PickerHackContext.displayName = 'PickerHackContext';
  62. }