Browse Source

Improve data source encoding

pull/7138/head
Thomas Kaul 3 weeks ago
parent
commit
f7e90f3c1c
  1. 23
      apps/api/src/helper/data-source.helper.ts

23
apps/api/src/helper/data-source.helper.ts

@ -1,4 +1,21 @@
import { DataSource } from '@prisma/client';
import { createHash } from 'node:crypto';
const decodedDataSourceMap: Record<string, DataSource> = Object.values(
DataSource
).reduce((map, dataSource) => {
map[encodeDataSource(dataSource)] = dataSource;
return map;
}, {});
export function encodeDataSource(aDataSource: DataSource) {
if (!aDataSource) {
return undefined;
}
return createHash('sha256').update(aDataSource).digest('hex').slice(0, 8);
}
export function getMaskedGhostfolioDataSource({
dataSource,
@ -11,3 +28,9 @@ export function getMaskedGhostfolioDataSource({
? DataSource.GHOSTFOLIO
: dataSource;
}
export function decodeDataSource(encodedDataSource: string) {
return encodedDataSource
? decodedDataSourceMap[encodedDataSource]
: undefined;
}

Loading…
Cancel
Save