Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ export class IndexedDBDatabase implements LocalDatabase {
* @param key The item's key
* @returns The item's value if the key exists, `undefined` otherwise, wrapped in an RxJS `Observable`
*/
get<T = unknown>(key: string): Observable<T | undefined> {
get(key: string): Observable<unknown | undefined> {

/* Open a transaction in read-only mode */
return this.transaction('readonly').pipe(
Expand All @@ -132,12 +132,12 @@ export class IndexedDBDatabase implements LocalDatabase {
if (!this.noWrap && (typeof request.result === 'object') && (this.wrapIndex in request.result) &&
(request.result[this.wrapIndex] !== undefined) && (request.result[this.wrapIndex] !== null)) {

return (request.result[this.wrapIndex] as T);
return request.result[this.wrapIndex];

} else {

/* Cast to the wanted type */
return request.result as T;
return request.result;

}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ export abstract class LocalDatabase {

abstract readonly size: Observable<number>;

abstract get<T = unknown>(key: string): Observable<T | undefined>;
abstract get(key: string): Observable<unknown | undefined>;
abstract set(key: string, data: unknown): Observable<undefined>;
abstract delete(key: string): Observable<undefined>;
abstract clear(): Observable<undefined>;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,19 +44,19 @@ export class LocalStorageDatabase implements LocalDatabase {
* @param key The item's key
* @returns The item's value if the key exists, `undefined` otherwise, wrapped in a RxJS `Observable`
*/
get<T = unknown>(key: string): Observable<T | undefined> {
get(key: string): Observable<unknown | undefined> {

/* Get raw data */
const unparsedData = localStorage.getItem(this.prefixKey(key));

let parsedData: T | undefined;
let parsedData: unknown;

/* No need to parse if data is `null` or `undefined` */
if ((unparsedData !== undefined) && (unparsedData !== null)) {

/* Try to parse */
try {
parsedData = JSON.parse(unparsedData) as T;
parsedData = JSON.parse(unparsedData);
} catch (error) {
return throwError(error as SyntaxError);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,10 @@ export class MemoryDatabase implements LocalDatabase {
* @param key The item's key
* @returns The item's value if the key exists, `undefined` otherwise, wrapped in a RxJS `Observable`
*/
get<T = unknown>(key: string): Observable<T | undefined> {

const rawData = this.memoryStorage.get(key) as T | undefined;
get(key: string): Observable<unknown | undefined> {

/* Wrap in a RxJS `Observable` to be consistent with other storages */
return of(rawData);
return of(this.memoryStorage.get(key));

}

Expand Down
Loading