Changed interface to consts

(cherry picked from commit 238f4f28a31944f98feddedf5fa24714c4328ebc)

upstream PR is https://framagit.org/framasoft/mobilizon/-/merge_requests/1236
This commit is contained in:
Luca Eichler 2021-08-22 18:33:29 +02:00 committed by 778a69cd
parent 03b2e1f634
commit 19561da63d
2 changed files with 14 additions and 24 deletions

View file

@ -1,19 +1,13 @@
import { EventSortField, SortDirection } from "./enums";
export interface ISorting {
title: string;
orderBy: EventSortField;
direction: SortDirection;
}
export const SORTING_UPCOMING = {
title: "Upcoming Events",
orderBy: EventSortField.BEGINS_ON,
direction: SortDirection.ASC,
};
export class SortingUpcoming implements ISorting {
title = "Upcoming Events";
orderBy = EventSortField.BEGINS_ON;
direction = SortDirection.ASC;
}
export class SortingCreated implements ISorting {
title = "Recently created Events";
orderBy = EventSortField.INSERTED_AT;
direction = SortDirection.DESC;
}
export const SORTING_CREATED = {
title: "Recently created Events",
orderBy: EventSortField.INSERTED_AT,
direction: SortDirection.DESC,
};

View file

@ -278,11 +278,7 @@ import RouteName from "../router/name";
import { IEvent } from "../types/event.model";
import DateComponent from "../components/Event/DateCalendarIcon.vue";
import { CONFIG } from "../graphql/config";
import {
ISorting,
SortingCreated,
SortingUpcoming,
} from "../types/sorting.model";
import { SORTING_UPCOMING, SORTING_CREATED } from "../types/sorting.model";
import { IConfig } from "../types/config.model";
import { IFollowedGroupEvent } from "../types/followedGroupEvent.model";
import Subtitle from "../components/Utils/Subtitle.vue";
@ -461,12 +457,12 @@ export default class Home extends Vue {
);
}
get sorting(): ISorting {
get sorting() {
switch (this.config?.instanceHomepageSorting) {
case InstanceHomepageSorting.UPCOMING:
return new SortingUpcoming();
return SORTING_UPCOMING;
default:
return new SortingCreated();
return SORTING_CREATED;
}
}