import { Schema, model } from 'mongoose';

import { paginate, toJSON } from '@/shared/utils/plugins/index.js';

const taskDailySummarySchema = new Schema(
  {
    userId: {
      type: Schema.Types.ObjectId,
      ref: 'User',
      required: true,
    },
    activityDate: { type: Date, required: true },
    activities: { type: Map, of: Number, default: {} },
  },
  {
    timestamps: true,
  },
);

// add plugin that converts mongoose to json
taskDailySummarySchema.plugin(toJSON);
taskDailySummarySchema.plugin(paginate);

export const TaskDailySummary = model('TaskDailySummary', taskDailySummarySchema);
