[BE] Implement initial code analytic's treemap with #edits in commits

Discovery issue: https://gitlab.com/gitlab-org/gitlab-ee/issues/12683

Iteration 1 Generate analytics' mapping for files and directories for the given group, project and path, indicating total number of edits in given duration, per file or directory in the top level.

TODOS

  • This iteration creates a route for code analytics, that accepts timeframe, project_id, group_id, path as params for a pre-selected group and project and returns a hashmap representation as follows on show:
{[
 {entity: "", entity_type: "directory/file", edits: 10},
 {entity: "", entity_type: "directory/file", edits: 10},
 ...
 ]}

Each of the entity-ies will be represented as a square of size edits and clickable if entity_type is directory.

Edited by Aakriti Gupta