Improved schemas in the project

This commit is contained in:
Alexander Cerutti
2019-12-05 23:55:28 +01:00
parent 2e94307723
commit 356e68378a
2 changed files with 4 additions and 4 deletions

View File

@@ -15,7 +15,7 @@ const genericDebug = debug("passkit:generic");
const transitType = Symbol("transitType"); const transitType = Symbol("transitType");
const passProps = Symbol("_props"); const passProps = Symbol("_props");
const propsSchemaMap = new Map([ const propsSchemaMap = new Map<string, schema.Schema>([
["barcodes", "barcode"], ["barcodes", "barcode"],
["barcode", "barcode"], ["barcode", "barcode"],
["beacons", "beaconsDict"], ["beacons", "beaconsDict"],
@@ -634,10 +634,10 @@ function barcodesFromUncompleteData(message: string): schema.Barcode[] {
} }
function processRelevancySet<T>(key: string, data: T[]): T[] { function processRelevancySet<T>(key: string, data: T[]): T[] {
return getValidInArray(`${key}Dict`, data); return getValidInArray(`${key}Dict` as schema.Schema, data);
} }
function getValidInArray<T>(schemaName: string, contents: T[]): T[] { function getValidInArray<T>(schemaName: schema.Schema, contents: T[]): T[] {
return contents.filter(current => Object.keys(current).length && schema.isValid(current, schemaName)); return contents.filter(current => Object.keys(current).length && schema.isValid(current, schemaName));
} }

View File

@@ -455,7 +455,7 @@ const schemas = {
personalizationDict personalizationDict
}; };
type Schema = keyof typeof schemas; export type Schema = keyof typeof schemas;
function resolveSchemaName(name: Schema) { function resolveSchemaName(name: Schema) {
return schemas[name] || undefined; return schemas[name] || undefined;