Sindbad~EG File Manager

Current Path : /home/infinitibizsol/.trash/node_modules.8/.cache/esm/
Upload File :
Current File : /home/infinitibizsol/.trash/node_modules.8/.cache/esm/cd342b36ed259791.js

let db,AppError,catchAsync,successResponse;_ed2‍.x([["default",()=>_ed2‍.o]]);_ed2‍.w("../../model/index",[["default",["db"],function(v){db=v}]]);_ed2‍.w("../../utils/apiError",[["default",["AppError"],function(v){AppError=v}]]);_ed2‍.w("../../utils/catchAsync",[["default",["catchAsync"],function(v){catchAsync=v}]]);_ed2‍.w("../../utils/responseFormat",[["successResponse",["successResponse"],function(v){successResponse=v}]]);



const validateDuplicateEntry = async (query) => {
  let document = await db.SocialMedia.findOne(query);
  if (document) return true;
  return false;
};
const index = catchAsync(async (req, res, next) => {
  const query = req.query;
  query.user_id = query.contact_id ? undefined : req.user._id;
  let allData = await db.SocialMedia.find(query);
  return successResponse(res, allData);
});

const add = catchAsync(async (req, res, next) => {
  let { contact_id } = req.body;
  let user_id = contact_id ? undefined : req.user._id;
  req.body.user_id = user_id;
  const isDuplicate = await validateDuplicateEntry({ contact_id, user_id });
  if (isDuplicate) {
    return next(new AppError("Duplicate entry is not allowed.", 404));
  }
  const socialMedia = new db.SocialMedia(req.body);
  await socialMedia.save();
  return successResponse(res, socialMedia, "socialMedia saved successfully.");
});

const edit = catchAsync(async (req, res, next) => {
  const socialMedia_id = req.params.id;
  const result = await db.SocialMedia.findByIdAndUpdate(
    { _id: socialMedia_id },
    {
      $set: req.body,
    },
    {
      new: true,
    }
  );
  if (!result) {
    return next(new AppError("No data found.", 404));
  }
  return successResponse(res, result, "Social Media updated successfully.");
});

const view = catchAsync(async (req, res, next) => {
  let socialMedia = await db.SocialMedia.findOne({ _id: req.params.id });
  if (!socialMedia) {
    return next(new AppError("No data found.", 404));
  }
  return successResponse(res, socialMedia);
});

const deleteData = catchAsync(async (req, res, next) => {
  const socialMedia_id = req.params.id;
  const lead = await db.SocialMedia.findByIdAndDelete({
    _id: socialMedia_id,
  });

  if (!lead) {
    return next(new AppError("No data found.", 404));
  }
  return successResponse(
    res,
    lead,
    "social-media and related data deleted successfully."
  );
});

_ed2‍.d({ index, add, edit, view, deleteData });

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists