UNPKG

react-js-cron-mantine

Version:

Fork of [react-js-cron](https://github.com/xrutayisire/react-js-cron), made to work with [mantine](https://mantine.dev)

129 lines (109 loc) 5.33 kB
"use strict"; function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = Period; var _react = _interopRequireWildcard(require("react")); var _locale = require("../locale"); var _utils = require("../utils"); var _core = require("@mantine/core"); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function Period(props) { var value = props.value, setValue = props.setValue, locale = props.locale, className = props.className, disabled = props.disabled, readOnly = props.readOnly, shortcuts = props.shortcuts, allowedPeriods = props.allowedPeriods; var options = []; var newValue = [value]; if (allowedPeriods.includes('year')) { options.push({ value: 'year', label: locale.yearOption || _locale.DEFAULT_LOCALE_EN.yearOption }); } if (allowedPeriods.includes('month')) { options.push({ value: 'month', label: locale.monthOption || _locale.DEFAULT_LOCALE_EN.monthOption }); } if (allowedPeriods.includes('week')) { options.push({ value: 'week', label: locale.weekOption || _locale.DEFAULT_LOCALE_EN.weekOption }); } if (allowedPeriods.includes('day')) { options.push({ value: 'day', label: locale.dayOption || _locale.DEFAULT_LOCALE_EN.dayOption }); } if (allowedPeriods.includes('hour')) { options.push({ value: 'hour', label: locale.hourOption || _locale.DEFAULT_LOCALE_EN.hourOption }); } if (allowedPeriods.includes('minute')) { options.push({ value: 'minute', label: locale.minuteOption || _locale.DEFAULT_LOCALE_EN.minuteOption }); } if (allowedPeriods.includes('reboot') && shortcuts && (shortcuts === true || shortcuts.includes('@reboot'))) { options.push({ value: 'reboot', label: locale.rebootOption || _locale.DEFAULT_LOCALE_EN.rebootOption }); } var handleChange = (0, _react.useCallback)(function (newValue) { if (!readOnly) { setValue(newValue); } }, [setValue, readOnly]); var internalClassName = (0, _react.useMemo)(function () { var _classNames; return (0, _utils.classNames)((_classNames = { 'react-js-cron-field': true, 'react-js-cron-period': true }, _defineProperty(_classNames, "".concat(className, "-field"), !!className), _defineProperty(_classNames, "".concat(className, "-period"), !!className), _classNames)); }, [className]); var selectClassName = (0, _react.useMemo)(function () { return (0, _utils.classNames)(_defineProperty({ 'react-js-cron-select': true, 'react-js-cron-select-no-prefix': locale.prefixPeriod === '' }, "".concat(className, "-select"), !!className)); }, [className, locale.prefixPeriod]); var dropdownClassName = (0, _react.useMemo)(function () { var _classNames3; return (0, _utils.classNames)((_classNames3 = { 'react-js-cron-select-dropdown': true, 'react-js-cron-select-dropdown-period': true }, _defineProperty(_classNames3, "".concat(className, "-select-dropdown"), !!className), _defineProperty(_classNames3, "".concat(className, "-select-dropdown-period"), !!className), _classNames3)); }, [className]); return _react["default"].createElement("div", { style: { display: 'flex', alignItems: 'center' } }, _react["default"].createElement(_core.Select, { withinPortal: true, label: locale.prefixPeriod !== '' && (locale.prefixPeriod || _locale.DEFAULT_LOCALE_EN.prefixPeriod), sx: { width: '100%' }, key: JSON.stringify(locale), value: value, onChange: handleChange, data: options, disabled: disabled })); }