Add memes views & searching

Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
2023-07-23 20:20:11 +03:00
parent e44ee7de34
commit 04661ca356
28 changed files with 737 additions and 247 deletions

View File

@@ -0,0 +1,9 @@
const getFlashListItemHeight = (numColumns: number) => {
const A = 500;
const B = 300;
const C = 1;
const height = A - B * Math.log(numColumns + C);
return Math.max(Math.round(height), 0);
};
export { getFlashListItemHeight };

View File

@@ -50,6 +50,9 @@ const getViewIcon = (view: VIEW) => {
case VIEW.MASONRY: {
return 'view-dashboard';
}
case VIEW.GRID: {
return 'view-grid';
}
case VIEW.LIST: {
return 'view-list';
}

View File

@@ -7,6 +7,7 @@ export {
} from './color';
export { packageName, appName, fileProvider, noOp } from './constants';
export { multipleIdQuery } from './database';
export { getFlashListItemHeight } from './dimensions';
export {
allowedImageMimeTypes,
allowedGifMimeTypes,
@@ -18,7 +19,6 @@ export { getSortIcon, getViewIcon } from './icon';
export {
type StringValidationResult,
validateMemeTitle,
validateMemeDescription,
validateTagName,
validateColor,
} from './validation';

View File

@@ -26,18 +26,6 @@ const validateMemeTitle = (title: string): StringValidationResult => {
};
};
const validateMemeDescription = (
description: string,
): StringValidationResult => {
const parsedDescription = description.trim();
return {
valid: true,
raw: description,
parsed: parsedDescription,
};
};
const validateTagName = (name: string): StringValidationResult => {
const parsedName = name.trim();
@@ -79,7 +67,6 @@ const validateColor = (color: string): StringValidationResult => {
export {
type StringValidationResult,
validateMemeTitle,
validateMemeDescription,
validateTagName,
validateColor,
};