react-native-navigation的迁移库

Main.ts 1.1KB

1234567891011121314151617181920212223242526272829
  1. import * as fs from 'fs';
  2. import { ReflectionsReader } from './ReflectionsReader';
  3. import { ClassParser } from './ClassParser';
  4. import { MarkdownWriter } from './MarkdownWriter';
  5. import { ReflectionKind } from 'typedoc';
  6. import { EnumParser } from './EnumParser';
  7. const INPUT_DIR = `${__dirname}/../../lib/src`;
  8. const OUTPUT_DIR = `${__dirname}/../../docs/api`;
  9. const TEMPLATES_DIR = `${__dirname}/templates`;
  10. const TSCONFIG_PATH = `${__dirname}/../../tsconfig.json`;
  11. const SOURCE_LINK_PREFIX = `https://github.com/wix/react-native-navigation/blob/v2/lib/src`;
  12. class Main {
  13. public run() {
  14. const classParser = new ClassParser(SOURCE_LINK_PREFIX);
  15. const markdownWriter = new MarkdownWriter(TEMPLATES_DIR, OUTPUT_DIR);
  16. const reflections = new ReflectionsReader(TSCONFIG_PATH).read(INPUT_DIR);
  17. const parsedClasses = classParser.parseClasses(reflections.classReflections);
  18. const parsedEnums = new EnumParser().parse(reflections.enumReflections);
  19. markdownWriter.writeClasses(parsedClasses);
  20. markdownWriter.writeEnums(parsedEnums);
  21. markdownWriter.writeMenu(parsedClasses, parsedEnums);
  22. }
  23. }
  24. new Main().run();