Sindbad~EG File Manager
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _joi = _interopRequireDefault(require("joi"));
var _mongoose = _interopRequireDefault(require("mongoose"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
// validation.js
// Validate MongoDB ObjectId
var objectId = function objectId(value, helpers) {
if (!_mongoose["default"].Types.ObjectId.isValid(value)) {
return helpers.error("any.invalid");
}
return value;
};
// Define the Joi schema
var purchaseSchema = _joi["default"].object({
date: _joi["default"].date().required(),
order_status: _joi["default"].string().valid("received", "pending", "order").required(),
payment_status: _joi["default"].string().valid("paid", "unpaid").optional(),
// 'required: false' is equivalent to 'optional()'
grand_total: _joi["default"].number().required(),
paid: _joi["default"].number().optional(),
due: _joi["default"].number().optional(),
note: _joi["default"].string().optional(),
supplier: _joi["default"].string().custom(objectId).required()
}).unknown();
var _default = exports["default"] = purchaseSchema;
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists