Due to incorrect castings previously the code would crash when the module doesn't contain an routing module with the following error:
```
Cannot read property 'properties' of undefined
```
Closes#21397
All TypeScript files have been updated to pass the new eslint-based linting checks. eslint compatible disabling comments have also been added in place of the previous tslint comments.
At the moment users can have various casing and seperatirs in paths, we should not always dasherize the name when resolving modules.
As for example when providing something like:
```
/module/SubModule/feature
```
It won't be able to resolve the modules properly as `sub-module` does't exist.
This PR also updates the test for underscore as previously it was not properly testing this usercase, since the formatter was used on name and not th path.
Fixes#13714
Recursively go through parents of the component and parents of the module name.
Fixes#7662.
Also shows tried directories on failure so the user has more informations.