All files combineParsers.ts

100% Statements 7/7
100% Branches 2/2
100% Functions 2/2
100% Lines 7/7
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16    1x     2x 2x 3x 3x 1x     1x      
import { Plugin } from "./Plugin";
 
export function combineParsers(
  ...plugins: Pick<Plugin<any, any>, "parse">[]
): Plugin<any, any>["parse"] {
  return async function parse(body: string, config: any) {
    for (let plugin of plugins) {
      const parsed = await plugin.parse(body, config);
      if (parsed) {
        return parsed;
      }
    }
    return null;
  };
}