UNPKG

@shinyongjun/react-datepicker

Version:
38 lines 1.62 kB
"use strict"; 'use client'; Object.defineProperty(exports, "__esModule", { value: true }); var jsx_runtime_1 = require("react/jsx-runtime"); var core_1 = require("../../constants/core"); var datetime_1 = require("../../utils/datetime"); function ControllerArrow(_a) { var viewDate = _a.viewDate, viewType = _a.viewType, direction = _a.direction, setViewDate = _a.setViewDate; var getViewDateUnit = function (type) { if (type === 'year') return Number(viewDate.split('-')[0]); else if (type === 'month') return Number(viewDate.split('-')[1]); else return Number(viewDate.split('-')[2]); }; var handleControl = function (action) { var isExtra = action.startsWith('extra'); var unit = viewType === 'month' && !isExtra ? 'month' : 'year'; var deltas = { month: 1, year: 1, decade: 10, century: 100, }; var delta = deltas[viewType]; if (viewType !== 'month' && isExtra) { delta *= 10; } if (action === 'extraPrev' || action === 'prev') { delta *= -1; } setViewDate((0, datetime_1.setViewDateByType)(viewDate, getViewDateUnit(unit) + delta, unit)); }; return ((0, jsx_runtime_1.jsx)("button", { type: "button", className: "".concat(core_1.NAME_SPACE, "__controller-arrow ").concat(core_1.NAME_SPACE, "__controller-").concat(direction), onClick: function () { return handleControl(direction); }, children: "Next" })); } exports.default = ControllerArrow; //# sourceMappingURL=Arrow.js.map