better linting (#72)

Improve linting and fix linting errors

Signed-off-by: Philip Molares <philip.molares@udo.edu>
Signed-off-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
This commit is contained in:
Philip Molares 2020-05-27 15:43:28 +02:00 committed by GitHub
parent efb6513205
commit eba59ae622
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
70 changed files with 2413 additions and 1867 deletions

View file

@ -1,61 +1,61 @@
import {HistoryEntry} from "../components/landing/pages/history/history";
import moment from "moment";
import {HistoryToolbarState} from "../components/landing/pages/history/history-toolbar/history-toolbar";
import {SortModeEnum} from "../components/sort-button/sort-button";
import { HistoryEntry } from '../components/landing/pages/history/history'
import moment from 'moment'
import { HistoryToolbarState } from '../components/landing/pages/history/history-toolbar/history-toolbar'
import { SortModeEnum } from '../components/sort-button/sort-button'
export function sortAndFilterEntries(entries: HistoryEntry[], viewState: HistoryToolbarState): HistoryEntry[] {
return sortEntries(filterByKeywordSearch(filterBySelectedTags(entries, viewState.selectedTags), viewState.keywordSearch), viewState);
export function sortAndFilterEntries (entries: HistoryEntry[], viewState: HistoryToolbarState): HistoryEntry[] {
return sortEntries(filterByKeywordSearch(filterBySelectedTags(entries, viewState.selectedTags), viewState.keywordSearch), viewState)
}
function filterBySelectedTags(entries: HistoryEntry[], selectedTags: string[]): HistoryEntry[] {
return entries.filter(entry => {
return (selectedTags.length === 0 || arrayCommonCheck(entry.tags, selectedTags))
}
function filterBySelectedTags (entries: HistoryEntry[], selectedTags: string[]): HistoryEntry[] {
return entries.filter(entry => {
return (selectedTags.length === 0 || arrayCommonCheck(entry.tags, selectedTags))
}
)
}
function arrayCommonCheck<T> (array1: T[], array2: T[]): boolean {
const foundElement = array1.find((element1) =>
array2.find((element2) =>
element2 === element1
)
)
return !!foundElement
}
function arrayCommonCheck<T>(array1: T[], array2: T[]): boolean {
const foundElement = array1.find((element1) =>
array2.find((element2) =>
element2 === element1
)
)
return !!foundElement;
function filterByKeywordSearch (entries: HistoryEntry[], keywords: string): HistoryEntry[] {
const searchTerm = keywords.toLowerCase()
return entries.filter(entry => entry.title.toLowerCase().indexOf(searchTerm) !== -1)
}
function filterByKeywordSearch(entries: HistoryEntry[], keywords: string): HistoryEntry[] {
const searchTerm = keywords.toLowerCase();
return entries.filter(entry => entry.title.toLowerCase().indexOf(searchTerm) !== -1);
function sortEntries (entries: HistoryEntry[], viewState: HistoryToolbarState): HistoryEntry[] {
return entries.sort((firstEntry, secondEntry) => {
if (firstEntry.pinned && !secondEntry.pinned) {
return -1
}
if (!firstEntry.pinned && secondEntry.pinned) {
return 1
}
if (viewState.titleSortDirection !== SortModeEnum.no) {
return firstEntry.title.localeCompare(secondEntry.title) * viewState.titleSortDirection
}
if (viewState.lastVisitedSortDirection !== SortModeEnum.no) {
if (firstEntry.lastVisited > secondEntry.lastVisited) {
return 1 * viewState.lastVisitedSortDirection
}
if (firstEntry.lastVisited < secondEntry.lastVisited) {
return -1 * viewState.lastVisitedSortDirection
}
}
return 0
})
}
function sortEntries(entries: HistoryEntry[], viewState: HistoryToolbarState): HistoryEntry[] {
return entries.sort((firstEntry, secondEntry) => {
if (firstEntry.pinned && !secondEntry.pinned) {
return -1;
}
if (!firstEntry.pinned && secondEntry.pinned) {
return 1;
}
if (viewState.titleSortDirection !== SortModeEnum.no) {
return firstEntry.title.localeCompare(secondEntry.title) * viewState.titleSortDirection;
}
if (viewState.lastVisitedSortDirection !== SortModeEnum.no) {
if (firstEntry.lastVisited > secondEntry.lastVisited) {
return 1 * viewState.lastVisitedSortDirection;
}
if (firstEntry.lastVisited < secondEntry.lastVisited) {
return -1 * viewState.lastVisitedSortDirection;
}
}
return 0;
})
}
export function formatHistoryDate(date: Date) {
return moment(date).format("llll")
export function formatHistoryDate (date: Date): string {
return moment(date).format('llll')
}
export interface OldHistoryEntry {
@ -66,23 +66,23 @@ export interface OldHistoryEntry {
pinned: boolean;
}
export function loadHistoryFromLocalStore(): HistoryEntry[] {
const historyJsonString = window.localStorage.getItem("history");
if (!historyJsonString) {
// if localStorage["history"] is empty we check the old localStorage["notehistory"]
// and convert it to the new format
const oldHistoryJsonString = window.localStorage.getItem("notehistory")
const oldHistory = !!oldHistoryJsonString ? JSON.parse(JSON.parse(oldHistoryJsonString)) : [];
return oldHistory.map((entry: OldHistoryEntry) => {
return {
id: entry.id,
title: entry.text,
lastVisited: moment(entry.time).toDate(),
tags: entry.tags,
pinned: entry.pinned,
}
})
} else {
return JSON.parse(historyJsonString)
}
}
export function loadHistoryFromLocalStore (): HistoryEntry[] {
const historyJsonString = window.localStorage.getItem('history')
if (!historyJsonString) {
// if localStorage["history"] is empty we check the old localStorage["notehistory"]
// and convert it to the new format
const oldHistoryJsonString = window.localStorage.getItem('notehistory')
const oldHistory = oldHistoryJsonString ? JSON.parse(JSON.parse(oldHistoryJsonString)) as OldHistoryEntry[] : []
return oldHistory.map((entry: OldHistoryEntry) => {
return {
id: entry.id,
title: entry.text,
lastVisited: moment(entry.time).toDate(),
tags: entry.tags,
pinned: entry.pinned
}
})
} else {
return JSON.parse(historyJsonString) as HistoryEntry[]
}
}