diff options
| author | Terry Truong <terry06890@gmail.com> | 2022-10-18 18:39:17 +1100 |
|---|---|---|
| committer | Terry Truong <terry06890@gmail.com> | 2022-10-18 18:39:17 +1100 |
| commit | fd1579191203c770f7c3b3dec53f8fdbeab3f971 (patch) | |
| tree | b762968c522444711315860bb4eed809c6c4f49d /src/lib.ts | |
| parent | 610995001f7f58110e4ff73b68df005a7280a79e (diff) | |
Keep track of date ranges where server has no more results
- In TimeLine.vue, separate idToEvent and idToPos, to avoid sending event-req
while a previous one is still waiting on a server response
- In histDate, add cmp() method
Diffstat (limited to 'src/lib.ts')
| -rw-r--r-- | src/lib.ts | 18 |
1 files changed, 11 insertions, 7 deletions
@@ -89,6 +89,15 @@ export class HistDate { return Math.floor(this.year / scale) == Math.floor(other.year / scale); } } + cmp(other: HistDate, scale=DAY_SCALE){ + if (this.isEarlier(other)){ + return -1; + } else if (!this.equals(other)){ + return 1; + } else { + return 0; + } + } isEarlier(other: HistDate, scale=DAY_SCALE){ const yearlyScale = scale != DAY_SCALE && scale != MONTH_SCALE; const thisYear = yearlyScale ? Math.floor(this.year / scale) : this.year; @@ -324,13 +333,8 @@ export class HistEvent { } } export function cmpHistEvent(event: HistEvent, event2: HistEvent){ - if (event.start.isEarlier(event2.start)){ - return -1; - } else if (!event.start.equals(event2.start)){ - return 1; - } else { - return event.id - event2.id; - } + let cmp = event.start.cmp(event2.start); + return cmp != 0 ? cmp : event.id - event2.id;; } // For server requests |
