sendou.ink/app/utils/sql.ts
Kalle 7342dd1667
Tournament team page (#1380)
* WIP

* Query

* Backend for team page done

* UI function made

* UI work

* Tweaks

* Fix showing players from own team

* Optimize performance

* Inactive players styling

* Stage popover
2023-05-28 15:25:46 +03:00

27 lines
698 B
TypeScript

export function errorIsSqliteUniqueConstraintFailure(error: any) {
return error?.code === "SQLITE_CONSTRAINT_UNIQUE";
}
export function parseDBJsonArray(value: any) {
const parsed = JSON.parse(value);
// If the returned array of JSON objects from DB is empty
// it will be returned as object with all values being null
// this is a workaround for that
return parsed.filter((item: any) => Object.values(item).some(Boolean));
}
export function parseDBArray(value: any) {
const parsed = JSON.parse(value);
if (!parsed || (parsed.length === 1 && parsed[0] === null)) {
return [];
}
return parsed;
}
export function booleanToInt(value: boolean) {
return value ? 1 : 0;
}