All files / src/tools/auth0 schema.ts

100% Statements 9/9
100% Branches 2/2
100% Functions 2/2
100% Lines 9/9

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 341x   1x   29x 29x         1x   29x 3x   29x         1x                          
import handlers from './handlers';
 
const typesSchema = Object.entries(handlers).reduce(
  (map: { [key: string]: Object }, [name, obj]) => {
    map[name] = obj.schema; //eslint-disable-line
    return map;
  },
  {}
);
 
const excludeSchema = Object.entries(handlers).reduce(
  (map: { [key: string]: Object }, [name, obj]) => {
    if (obj.excludeSchema) {
      map[name] = obj.excludeSchema;
    }
    return map;
  },
  {}
);
 
export default {
  type: 'object',
  $schema: 'http://json-schema.org/draft-07/schema#',
  properties: {
    ...typesSchema,
    exclude: {
      type: 'object',
      properties: { ...excludeSchema },
      default: {},
    },
  },
  additionalProperties: false,
};