use-month-range-header.mjs 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import { computed } from 'vue';
  2. import { useLocale } from '../../../../hooks/use-locale/index.mjs';
  3. const useMonthRangeHeader = ({
  4. unlinkPanels,
  5. leftDate,
  6. rightDate
  7. }) => {
  8. const { t } = useLocale();
  9. const leftPrevYear = () => {
  10. leftDate.value = leftDate.value.subtract(1, "year");
  11. if (!unlinkPanels.value) {
  12. rightDate.value = rightDate.value.subtract(1, "year");
  13. }
  14. };
  15. const rightNextYear = () => {
  16. if (!unlinkPanels.value) {
  17. leftDate.value = leftDate.value.add(1, "year");
  18. }
  19. rightDate.value = rightDate.value.add(1, "year");
  20. };
  21. const leftNextYear = () => {
  22. leftDate.value = leftDate.value.add(1, "year");
  23. };
  24. const rightPrevYear = () => {
  25. rightDate.value = rightDate.value.subtract(1, "year");
  26. };
  27. const leftLabel = computed(() => {
  28. return `${leftDate.value.year()} ${t("el.datepicker.year")}`;
  29. });
  30. const rightLabel = computed(() => {
  31. return `${rightDate.value.year()} ${t("el.datepicker.year")}`;
  32. });
  33. const leftYear = computed(() => {
  34. return leftDate.value.year();
  35. });
  36. const rightYear = computed(() => {
  37. return rightDate.value.year() === leftDate.value.year() ? leftDate.value.year() + 1 : rightDate.value.year();
  38. });
  39. return {
  40. leftPrevYear,
  41. rightNextYear,
  42. leftNextYear,
  43. rightPrevYear,
  44. leftLabel,
  45. rightLabel,
  46. leftYear,
  47. rightYear
  48. };
  49. };
  50. export { useMonthRangeHeader };
  51. //# sourceMappingURL=use-month-range-header.mjs.map