Commit 2860a11b authored by krlwlfrt's avatar krlwlfrt
Browse files

feat: add draft of todo

parent 120f697a
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -44,6 +44,7 @@ export enum SCThingType {
  Setting = 'setting',
  SportCourse = 'sport course',
  Ticket = 'ticket',
  ToDo = 'todo',
  Tour = 'tour',
  Video = 'video',
}
+3 −1
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ import {SCPersonWithoutReferences} from './Person';
import {SCPointOfInterestWithoutReferences} from './PointOfInterest';
import {SCRoomWithoutReferences} from './Room';
import {SCSportCourseWithoutReferences} from './SportCourse';
import {SCToDoWithoutReferences} from './ToDo';

/**
 * Types that can be made a favorite (added as a favorite)
@@ -33,7 +34,8 @@ export type SCFavoriteDataTypes = SCAcademicEventWithoutReferences
  | SCPersonWithoutReferences
  | SCPointOfInterestWithoutReferences
  | SCRoomWithoutReferences
  | SCSportCourseWithoutReferences;
  | SCSportCourseWithoutReferences
  | SCToDoWithoutReferences;

/**
 * A favorite
+60 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2019 StApps
 * This program is free software: you can redistribute it and/or modify it
 * under the terms of the GNU General Public License as published by the Free
 * Software Foundation, version 3.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
 * more details.
 *
 * You should have received a copy of the GNU General Public License along with
 * this program. If not, see <https://www.gnu.org/licenses/>.
 */
import {SCThingWithCategoriesSpecificValues, SCThingWithCategoriesWithoutReferences} from '../base/ThingWithCategories';
import {SCThingType} from '../Thing';
import {SCISO8601Date} from '../types/Time';

/**
 * A "to do" without references
 */
export interface SCToDoWithoutReferences
  extends SCThingWithCategoriesWithoutReferences<string, SCThingWithCategoriesSpecificValues> {
  /**
   * Whether or not the "to do" is already done
   */
  done: boolean;

  /**
   * A date when the "to do" is due
   */
  dueDate?: SCISO8601Date;

  /**
   * Priority of the "to do"
   */
  priority: SCToDoPriority;

  /**
   * Type of the "to do"
   */
  type: SCThingType.ToDo;
}

/**
 * A "to do"
 *
 * @validatable
 */
export interface SCToDo extends SCToDoWithoutReferences {
}

/**
 * A priority of a "to do"
 */
export enum SCToDoPriority {
  LOW = 0,
  NORMAL = 2,
  HIGH = 5,
}