constants.ts 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. import { VALIDATE_STATUS, BASE_CLASS_PREFIX } from '../base/constants';
  2. import { numbers as popoverNumber, strings as POPOVER_STRINGS } from '../popover/constants';
  3. const dayItemClasses = {
  4. DAY_TODAY: `${BASE_CLASS_PREFIX}-datepicker-day-today`,
  5. DAY_IN_RANGE: `${BASE_CLASS_PREFIX}-datepicker-day-inrange`,
  6. DAY_HOVER: `${BASE_CLASS_PREFIX}-datepicker-day-inhover`,
  7. DAY_SELECTED: `${BASE_CLASS_PREFIX}-datepicker-day-selected`,
  8. DAY_SELECTED_START: `${BASE_CLASS_PREFIX}-datepicker-day-selected-start`,
  9. DAY_SELECTED_END: `${BASE_CLASS_PREFIX}-datepicker-day-selected-end`,
  10. DAY_DISABLED: `${BASE_CLASS_PREFIX}-datepicker-day-disabled`,
  11. DAY_HOVER_DAY: `${BASE_CLASS_PREFIX}-datepicker-day-hoverday`,
  12. DAY_HOVER_DAY_OFFSET: `${BASE_CLASS_PREFIX}-datepicker-day-hoverday-offset`,
  13. DAY_IN_OFFSET_RANGE: `${BASE_CLASS_PREFIX}-datepicker-day-inoffsetrange`,
  14. DAY_SELECTED_RANGE_HOVER: `${BASE_CLASS_PREFIX}-datepicker-day-selectedrange-hover`,
  15. DAY_OFFSET_RANGE_START: `${BASE_CLASS_PREFIX}-datepicker-day-offsetrange-start`,
  16. DAY_OFFSET_RANGE_END: `${BASE_CLASS_PREFIX}-datepicker-day-offsetrange-end`,
  17. DAY_SELECTED_START_AFTER_HOVER: `${BASE_CLASS_PREFIX}-datepicker-day-selected-start-afterhover`,
  18. DAY_SELECTED_END_BEFORE_HOVER: `${BASE_CLASS_PREFIX}-datepicker-day-selected-end-beforehover`,
  19. DAY_HOVER_DAY_BEFORE_RANGE: `${BASE_CLASS_PREFIX}-datepicker-day-hoverday-beforerange`,
  20. DAY_HOVER_DAY_AFTER_RANGE: `${BASE_CLASS_PREFIX}-datepicker-day-hoverday-afterrange`,
  21. DAY_HOVER_DAY_IN_RANGE: `${BASE_CLASS_PREFIX}-datepicker-day-hoverday-inrange`,
  22. DAY_HOVER_DAY_AROUND_SINGLE_SELECTED: `${BASE_CLASS_PREFIX}-datepicker-day-hoverday-around-singleselected`,
  23. } as const;
  24. const cssClasses = {
  25. PREFIX: `${BASE_CLASS_PREFIX}-datepicker`,
  26. NAVIGATION: `${BASE_CLASS_PREFIX}-datepicker-navigation`,
  27. PANEL_YAM: `${BASE_CLASS_PREFIX}-datepicker-panel-yam`,
  28. MONTH: `${BASE_CLASS_PREFIX}-datepicker-month`,
  29. WEEKDAY: `${BASE_CLASS_PREFIX}-datepicker-weekday`,
  30. WEEKS: `${BASE_CLASS_PREFIX}-datepicker-weeks`,
  31. WEEK: `${BASE_CLASS_PREFIX}-datepicker-week`,
  32. DAY: `${BASE_CLASS_PREFIX}-datepicker-day`,
  33. ...dayItemClasses,
  34. } as const;
  35. const formatToken = {
  36. FORMAT_FULL_DATE: 'yyyy-MM-dd',
  37. FORMAT_TIME_PICKER: 'HH:mm:ss',
  38. FORMAT_DATE_TIME: 'yyyy-MM-dd HH:mm:ss',
  39. FORMAT_YEAR_MONTH: 'yyyy-MM',
  40. } as const;
  41. const strings = {
  42. DEFAULT_SEPARATOR_MULTIPLE: ',',
  43. DEFAULT_SEPARATOR_RANGE: ' ~ ',
  44. SIZE_SET: ['small', 'default', 'large'],
  45. TYPE_SET: ['date', 'dateRange', 'year', 'month', 'dateTime', 'dateTimeRange'],
  46. PRESET_POSITION_SET: ['left', 'right', 'top', 'bottom'],
  47. DENSITY_SET: ['default', 'compact'],
  48. PANEL_TYPE_LEFT: 'left',
  49. PANEL_TYPE_RIGHT: 'right',
  50. STATUS: VALIDATE_STATUS,
  51. POSITION_SET: POPOVER_STRINGS.POSITION_SET,
  52. POSITION_INLINE_INPUT: 'leftTopOver',
  53. ...formatToken,
  54. } as const;
  55. const numbers = {
  56. WEEK_START_ON: 0, // Take the day of the week as the first day of the week, 0 for Sunday, 1 for Monday, and so on
  57. WEEK_HEIGHT: 36, // Date per line height 36px
  58. SPACING: popoverNumber.SPACING, // Floating distance trigger interval
  59. SPACING_INSET_INPUT: 1,
  60. } as const;
  61. export { cssClasses, strings, numbers };