Codebase Layout

The codebase of the plugin is structured the following way:

  • docs/: contains the documentation you’re reading right now
  • java/: contains the Java-based jQA-Plugin
    • src/main/: implementation of the jQA-Plugin
      • o.j.p.t.api: TypeScriptScope and all Descriptor interfaces
      • o.j.p.t.impl
        • filesystem: custom Implementation of the file resolver
        • mapper: MapStruct-based mappers and resolvers for POJO-to-Descriptor Mappings (contains main logic of the plugin)
        • model: POJOs that model the JSON output of the LCE tool
    • src/test/: integration tests for the jQA-Plugin
      • use the regenerate-test-data.sh under src/test/resources to generate test reports with the current TypeScript LCE implementation
  • typescript/: contains the implementation and tests for the TypeScript LCE tool
    • src/: implementation of the LCE tool
      • core/: code for the LCE framework and all core language features
      • react/: code for the React Extension
      • directories for future extensions
      • main.ts: contains entry point of the tool that parses the CLI arguments and initializes the extensions
    • test/: tests for the LCE tool