fix(pnpm): correctly parse dependency paths with nested peer dependecies (#8003)
### Description
Should address the reported issues in #7993
I missed a change to the dependency path format where nested peer
dependencies are now shown e.g. if a has peer dependency b and b has
peer dependency c, then the resulting dependency path will be
`a@1.0.0(b@1.0.0(c@1.0.0))`.
Not sure when dependency path parsing got simplified, but I believe I
missed the host segment getting dropped which greatly simplifies the
format. The new parsing logic is a faithful port of the current JS
parsing code:
https://github.com/pnpm/pnpm/blob/main/packages/dependency-path/src/index.ts#L91
### Testing Instructions
Added unit test for parsing a dependency path that contains a nested
peer dependency. Existing test suite.
Closes TURBO-2848