Add home screen view options

Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
2023-07-11 17:08:43 +03:00
parent ca67493302
commit 2e147060c0
15 changed files with 2814 additions and 949 deletions

View File

@@ -1 +1,3 @@
export { isPermissionForPath, clearPermissions } from './permissions';
export { getSortIcon } from './sort';
export { getViewIcon, getNextView } from './view';

38
src/utilities/sort.ts Normal file
View File

@@ -0,0 +1,38 @@
import { SORT, SORT_DIRECTION } from '../types';
const getSortIcon = (sort: SORT, sortDirection: SORT_DIRECTION) => {
let sortIcon = '';
switch (sort) {
case SORT.TITLE: {
sortIcon = 'sort-alphabetical';
break;
}
case SORT.DATE_CREATED:
case SORT.DATE_MODIFIED:
case SORT.DATE_USED: {
sortIcon = 'sort-calendar';
break;
}
case SORT.TIMES_USED:
case SORT.SIZE: {
sortIcon = 'sort-numeric';
break;
}
}
switch (sortDirection) {
case SORT_DIRECTION.ASCENDING: {
sortIcon += '-ascending';
break;
}
case SORT_DIRECTION.DESCENDING: {
sortIcon += '-descending';
break;
}
}
return sortIcon;
};
export { getSortIcon };

31
src/utilities/view.ts Normal file
View File

@@ -0,0 +1,31 @@
import { VIEW } from '../types';
const getViewIcon = (view: VIEW) => {
switch (view) {
case VIEW.MASONRY: {
return 'view-dashboard';
}
case VIEW.GRID: {
return 'view-grid';
}
case VIEW.LIST: {
return 'view-list';
}
}
};
const getNextView = (view: VIEW) => {
switch (view) {
case VIEW.MASONRY: {
return VIEW.GRID;
}
case VIEW.GRID: {
return VIEW.LIST;
}
case VIEW.LIST: {
return VIEW.MASONRY;
}
}
};
export { getViewIcon, getNextView };