[source-map] Restructure 'scopes' proposal decoding
This CL prepares 'SourceMapScopesInfo' and 'SourceMap' to support
index source map support for the 'scopes' proposal.
We split the existing 'SourceMapScopesInfo.parseFromMap' function into
'decodeScopes' and a dedicated test helper. 'SourceMapScopesInfo' no
longer parses anything, but instead just receives already decoded
scopes and ranges.
We also add two methods so OriginalScopes and GeneratedRanges can
be added to an existing SourceMapScopesInfo after the fact. We'll
make use of these two methods for multiple things:
1) Accumulate all the scopes info in an index source map into a
single SourceMapScopesInfo object
2) Convert bloomberg pasta function ranges into OriginalScopes
and add them to a SourceMap's SourceMapScopesInfo.
3) Allow an extension API to incrementally add OriginalScope
trees to a SourceMap's SourceMapScopesInfo.
R=kimanh@chromium.org
Bug: 390337576
Change-Id: Ifb911f4daded05f58a470cfed8759cf44e86425b
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6185441
Commit-Queue: Simon Zünd <szuend@chromium.org>
Reviewed-by: Kim-Anh Tran <kimanh@chromium.org>
The client-side of the Chrome DevTools, including all TypeScript & CSS to run the DevTools webapp.
The frontend is available on chromium.googlesource.com. Check out the Chromium DevTools documentation for instructions to set up, use, and maintain a DevTools front-end checkout, as well as design guidelines, and architectural documentation.
DevTools frontend repository is mirrored on GitHub.
DevTools frontend is also available on NPM as the chrome-devtools-frontend package. It's not currently available via CJS or ES modules, so consuming this package in other tools may require some effort.
The version number of the npm package (e.g. 1.0.373466) refers to the Chromium commit position of latest frontend git commit. It's incremented with every Chromium commit, however the package is updated roughly daily.
There are a few options to keep an eye on the latest and greatest of DevTools development:
Follow What's new in DevTools.
Follow Umar's Dev Tips.
Follow these individual Twitter accounts: @umaar, @malyw, @kdzwinel, @addyosmani, @paul_irish, @samccone, @mathias, @mattzeunert, @PrashantPalikhe, @ziyunfei, and @bmeurer.
Follow to g/devtools-reviews@chromium.org mailing list for all reviews of pending code, and view the log, or follow @DevToolsCommits on Twitter.
Checkout all open DevTools tickets on crbug.com
Use Chrome Canary and poke around the experiments.