n8n-nodes-zalo-nnt
Version:
Unofficial Zalo integration for n8n - Send messages, manage groups, user operations with QR login. No API key required, works via browser simulation.
118 lines • 4.05 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.validateThreadId = validateThreadId;
exports.validateReminderId = validateReminderId;
exports.validateTitle = validateTitle;
exports.validateStartTime = validateStartTime;
exports.validateRepeatMode = validateRepeatMode;
exports.validatePage = validatePage;
exports.validateCount = validateCount;
exports.validateCreateReminder = validateCreateReminder;
exports.validateEditReminder = validateEditReminder;
exports.validateGetListReminder = validateGetListReminder;
exports.validateRemoveReminder = validateRemoveReminder;
function validateThreadId(threadId) {
if (!threadId || typeof threadId !== 'string') {
throw new Error('Thread ID là bắt buộc và phải là chuỗi');
}
const trimmed = threadId.trim();
if (trimmed.length === 0) {
throw new Error('Thread ID không được để trống');
}
return trimmed;
}
function validateReminderId(reminderId) {
if (!reminderId || typeof reminderId !== 'string') {
throw new Error('Reminder ID là bắt buộc và phải là chuỗi');
}
const trimmed = reminderId.trim();
if (trimmed.length === 0) {
throw new Error('Reminder ID không được để trống');
}
return trimmed;
}
function validateTitle(title) {
if (!title || typeof title !== 'string') {
throw new Error('Tiêu đề là bắt buộc và phải là chuỗi');
}
const trimmed = title.trim();
if (trimmed.length === 0) {
throw new Error('Tiêu đề không được để trống');
}
if (trimmed.length > 200) {
throw new Error('Tiêu đề không được vượt quá 200 ký tự');
}
return trimmed;
}
function validateStartTime(startTime) {
if (startTime === undefined || startTime === null || startTime === '') {
return undefined;
}
const timestamp = typeof startTime === 'number' ? startTime : new Date(startTime).getTime();
if (isNaN(timestamp)) {
throw new Error('Thời gian bắt đầu không hợp lệ');
}
return timestamp;
}
function validateRepeatMode(repeat) {
if (repeat === undefined || repeat === null || repeat === '') {
return undefined;
}
const mode = Number(repeat);
if (isNaN(mode) || ![0, 1, 2, 3].includes(mode)) {
throw new Error('Chế độ lặp lại không hợp lệ. Phải là 0 (Không), 1 (Hàng ngày), 2 (Hàng tuần), hoặc 3 (Hàng tháng)');
}
return mode;
}
function validatePage(page) {
const num = Number(page);
if (isNaN(num) || num < 1) {
throw new Error('Số trang phải là số nguyên dương (>= 1)');
}
return Math.floor(num);
}
function validateCount(count) {
const num = Number(count);
if (isNaN(num)) {
throw new Error('Số lượng phải là số hợp lệ');
}
if (num < 1 || num > 100) {
throw new Error('Số lượng phải từ 1 đến 100');
}
return Math.floor(num);
}
function validateCreateReminder(input) {
validateThreadId(input.threadId);
validateTitle(input.title);
if (input.startTime !== undefined) {
validateStartTime(input.startTime);
}
if (input.repeat !== undefined) {
validateRepeatMode(input.repeat);
}
}
function validateEditReminder(input) {
validateThreadId(input.threadId);
validateReminderId(input.reminderId);
validateTitle(input.title);
if (input.startTime !== undefined) {
validateStartTime(input.startTime);
}
if (input.repeat !== undefined) {
validateRepeatMode(input.repeat);
}
}
function validateGetListReminder(input) {
validateThreadId(input.threadId);
if (input.page !== undefined) {
validatePage(input.page);
}
if (input.count !== undefined) {
validateCount(input.count);
}
}
function validateRemoveReminder(input) {
validateThreadId(input.threadId);
validateReminderId(input.reminderId);
}
//# sourceMappingURL=validator.js.map