linkmore-design
Version:
๐ ๐lm็ปไปถๅบใ๐
263 lines (257 loc) โข 10.7 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.convertCron = convertCron;
exports.convertResult = convertResult;
exports.monthOption = exports.minuteOption = exports.hourOption = exports.everyDay = exports.defaultCron = exports.dayOfTheWeekOption = exports.dayOfTheWeekData = exports.dayOfTheMonthOption = void 0;
var _i18n = _interopRequireDefault(require("cronstrue/i18n"));
function getDayOfTheMonthOption() {
const days = [];
for (let i = 1; i < 32; i += 1) {
days.push({
key: i.toString(),
label: i.toString().concat('ๅท')
});
}
return days;
}
function getHourOption() {
const hours = [];
for (let i = 0; i < 24; i += 1) {
hours.push({
key: i.toString(),
label: i.toString()
});
}
return hours;
}
function getMinuteOption() {
const hours = [];
for (let i = 0; i < 60; i += 1) {
hours.push({
key: i.toString(),
label: i.toString()
});
}
return hours;
}
const defaultCron = '* * * * *';
exports.defaultCron = defaultCron;
const everyDay = '0 0 0 * * ?';
exports.everyDay = everyDay;
const dayOfTheMonthOption = getDayOfTheMonthOption();
/* eslint-disable */
exports.dayOfTheMonthOption = dayOfTheMonthOption;
function convertCron(exp) {
if (!exp) return;
if (exp === everyDay || exp === defaultCron) return 'ๆฏๅคฉ';
const convertExpZH = _i18n.default.toString(exp, {
locale: 'zh_CN'
});
return convertExpZH.replace(/^ๆฏ\D+,\s*/, '');
}
const dayOfTheWeekData = [{
key: 'MON',
label: 'ๆๆไธ'
}, {
key: 'TUE',
label: 'ๆๆไบ'
}, {
key: 'WED',
label: 'ๆๆไธ'
}, {
key: 'THU',
label: 'ๆๆๅ'
}, {
key: 'FRI',
label: 'ๆๆไบ'
}, {
key: 'SAT',
label: 'ๆๆๅ
ญ'
}, {
key: 'SUN',
label: 'ๆๆๅคฉ'
}];
exports.dayOfTheWeekData = dayOfTheWeekData;
const dayOfTheWeekOption = [{
key: '1',
label: 'ๆๆไธ'
}, {
key: '2',
label: 'ๆๆไบ'
}, {
key: '3',
label: 'ๆๆไธ'
}, {
key: '4',
label: 'ๆๆๅ'
}, {
key: '5',
label: 'ๆๆไบ'
}, {
key: '6',
label: 'ๆๆๅ
ญ'
}, {
key: '7',
label: 'ๆๆๅคฉ'
}];
exports.dayOfTheWeekOption = dayOfTheWeekOption;
const monthOption = [{
key: '1',
label: 'ไธๆ'
}, {
key: '2',
label: 'ไบๆ'
}, {
key: '3',
label: 'ไธๆ'
}, {
key: '4',
label: 'ๅๆ'
}, {
key: '5',
label: 'ไบๆ'
}, {
key: '6',
label: 'ๅ
ญๆ'
}, {
key: '7',
label: 'ไธๆ'
}, {
key: '8',
label: 'ๅ
ซๆ'
}, {
key: '9',
label: 'ไนๆ'
}, {
key: '10',
label: 'ๅๆ'
}, {
key: '11',
label: 'ๅไธๆ'
}, {
key: '12',
label: 'ๅไบๆ'
}];
exports.monthOption = monthOption;
const hourOption = getHourOption();
exports.hourOption = hourOption;
const minuteOption = getMinuteOption();
exports.minuteOption = minuteOption;
function convertResult(expression) {
const defaultSecond = '0 ';
const defaultMinute = '0 * ';
const defaultHour = '0 * * ';
const questionMark = '?';
const asterisk = '*';
const space = ' ';
if (!expression) return null;
let result = '';
const splitCron = expression.split(' ');
const minute = splitCron[0];
const hour = splitCron[1];
const day = splitCron[2];
const month = splitCron[3];
const week = splitCron[4];
const minuteSame = result.concat(defaultSecond).concat(minute).concat(space);
const hourSame = result.concat(defaultMinute).concat(hour).concat(space);
const daySame = result.concat(defaultHour).concat(day).concat(space);
const weekSame = result.concat(defaultHour).concat(questionMark).concat(space);
if (minute !== asterisk && hour === asterisk && day !== asterisk && week === asterisk && month === asterisk) {
result = minuteSame.concat(asterisk).concat(space).concat(day).concat(space).concat(asterisk).concat(space).concat(asterisk);
}
// cron error ไธๆฏๆๅๆถๆๅฎๆๆๅ ๅๅ ๆๅๆฐ
if (minute !== asterisk && hour === asterisk && day !== asterisk && week !== asterisk && month === asterisk) {
result = minuteSame.concat(asterisk).concat(space).concat(day).concat(space).concat(asterisk).concat(space).concat(week);
}
// cron error ไธๆฏๆๅๆถๆๅฎๆๆๅ ๅๅ ๆๅๆฐ
if (minute !== asterisk && hour === asterisk && day !== asterisk && week !== asterisk && month !== asterisk) {
result = minuteSame.concat(asterisk).concat(space).concat(day).concat(space).concat(month).concat(space).concat(week);
}
if (minute !== asterisk && hour === asterisk && day === asterisk && week !== asterisk && month !== asterisk) {
result = minuteSame.concat(asterisk).concat(space).concat(questionMark).concat(space).concat(month).concat(space).concat(week);
}
if (minute !== asterisk && hour === asterisk && day === asterisk && week !== asterisk && month === asterisk) {
result = minuteSame.concat(asterisk).concat(space).concat(questionMark).concat(space).concat(asterisk).concat(space).concat(week);
}
if (minute !== asterisk && hour === asterisk && day === asterisk && week === asterisk && month !== asterisk) {
result = minuteSame.concat(asterisk).concat(space).concat(asterisk).concat(space).concat(month).concat(space).concat(questionMark);
}
if (minute !== asterisk && hour === asterisk && day === asterisk && week === asterisk && month === asterisk) {
result = minuteSame.concat(asterisk).concat(space).concat(asterisk).concat(space).concat(asterisk).concat(space).concat(questionMark);
}
if (minute !== asterisk && hour !== asterisk && day === asterisk && week === asterisk && month === asterisk) {
result = minuteSame.concat(hour).concat(space).concat(asterisk).concat(space).concat(asterisk).concat(space).concat(questionMark);
}
if (minute !== asterisk && hour !== asterisk && day === asterisk && week === asterisk && month !== asterisk) {
result = minuteSame.concat(hour).concat(space).concat(asterisk).concat(space).concat(month).concat(space).concat(questionMark);
}
if (minute !== asterisk && hour !== asterisk && day === asterisk && week !== asterisk && month === asterisk) {
result = minuteSame.concat(hour).concat(space).concat(questionMark).concat(space).concat(asterisk).concat(space).concat(week);
}
if (minute !== asterisk && hour !== asterisk && day === asterisk && week !== asterisk && month !== asterisk) {
result = minuteSame.concat(hour).concat(space).concat(questionMark).concat(space).concat(month).concat(space).concat(week);
}
if (minute !== asterisk && hour !== asterisk && day !== asterisk && week === asterisk && month === asterisk) {
result = minuteSame.concat(hour).concat(space).concat(day).concat(space).concat(asterisk).concat(space).concat(questionMark);
}
if (minute !== asterisk && hour !== asterisk && day !== asterisk && week === asterisk && month !== asterisk) {
result = minuteSame.concat(hour).concat(space).concat(day).concat(space).concat(month).concat(space).concat(questionMark);
}
// cron error ไธๆฏๆๅๆถๆๅฎๆๆๅ ๅๅ ๆๅๆฐ
if (minute !== asterisk && hour !== asterisk && day !== asterisk && week !== asterisk && month === asterisk) {
result = minuteSame.concat(hour).concat(space).concat(day).concat(space).concat(asterisk).concat(space).concat(week);
}
// cron error ไธๆฏๆๅๆถๆๅฎๆๆๅ ๅๅ ๆๅๆฐ
if (minute !== asterisk && hour !== asterisk && day !== asterisk && week !== asterisk && month !== asterisk) {
result = minuteSame.concat(hour).concat(space).concat(day).concat(space).concat(month).concat(space).concat(week);
}
if (minute === asterisk && hour !== asterisk && day === asterisk && week !== asterisk && month !== asterisk) {
result = hourSame.concat(questionMark).concat(space).concat(month).concat(space).concat(week);
}
if (minute === asterisk && hour !== asterisk && day === asterisk && week === asterisk && month !== asterisk) {
result = hourSame.concat(questionMark).concat(space).concat(month).concat(space).concat(asterisk);
}
if (minute === asterisk && hour !== asterisk && day === asterisk && week === asterisk && month === asterisk) {
result = hourSame.concat(asterisk).concat(space).concat(asterisk).concat(space).concat(questionMark);
}
if (minute === asterisk && hour !== asterisk && day === asterisk && week !== asterisk && month === asterisk) {
result = hourSame.concat(questionMark).concat(space).concat(asterisk).concat(space).concat(week);
}
if (minute === asterisk && hour !== asterisk && day !== asterisk && week === asterisk && month !== asterisk) {
result = hourSame.concat(day).concat(space).concat(month).concat(space).concat(questionMark);
}
if (minute === asterisk && hour !== asterisk && day !== asterisk && week === asterisk && month === asterisk) {
result = hourSame.concat(day).concat(space).concat(asterisk).concat(space).concat(questionMark);
}
if (minute === asterisk && hour !== asterisk && day !== asterisk && week !== asterisk && month === asterisk) {
result = hourSame.concat(day).concat(space).concat(asterisk).concat(space).concat(week);
}
if (minute === asterisk && hour !== asterisk && day !== asterisk && week !== asterisk && month !== asterisk) {
result = hourSame.concat(day).concat(space).concat(month).concat(space).concat(week);
}
if (minute === asterisk && hour === asterisk && day !== asterisk && week !== asterisk && month !== asterisk) {
result = daySame.concat(month).concat(space).concat(week);
}
if (minute === asterisk && hour === asterisk && day !== asterisk && week !== asterisk && month === asterisk) {
result = daySame.concat(asterisk).concat(space).concat(week);
}
if (minute === asterisk && hour === asterisk && day !== asterisk && week === asterisk && month !== asterisk) {
result = daySame.concat(month).concat(space).concat(questionMark);
}
if (minute === asterisk && hour === asterisk && day !== asterisk && week === asterisk && month === asterisk) {
result = daySame.concat(asterisk).concat(space).concat(questionMark);
}
if (minute === asterisk && hour === asterisk && day === asterisk && week !== asterisk && month !== asterisk) {
result = weekSame.concat(month).concat(space).concat(week);
}
if (minute === asterisk && hour === asterisk && day === asterisk && week !== asterisk && month === asterisk) {
result = daySame.concat(questionMark).concat(space).concat(week);
}
if (minute === asterisk && hour === asterisk && day === asterisk && week === asterisk && month !== asterisk) {
result = weekSame.concat(month).concat(space).concat(asterisk);
}
return result;
}