[go: nahoru, domu]

[CodeMirror]: Re-implement formatting logic for CSS

This change re-implements some removed code from this CL: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3395675

Issue:
- Formatting code was removed to remove dependencies on CodeMirror5
    - Caused regression in formatting regarding workspace syncing (pictures in linked issue)

Changes:
- Add new cssStreamParser method onto CodeMirror6 which retrieves a legacy CSS stream parser
- Re-add CodeMirrorUtils.ts to provide createCssTokenizer function
- Re-add code deleted from regressing CL for CSSProperty.ts

We initially removed the dependency on CodeMirror5 here to improve launch times. This change should not regress that as CodeMirror6 should already be imported before any code here can execute.  Additionally, the extra import of the CSSStreamParser should be minor enough to ignore.

Change-Id: I642da3de1c1788d5258b12d069534179efa2fd65

Bug: 1309588
Change-Id: I642da3de1c1788d5258b12d069534179efa2fd65
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3551896
Reviewed-by: Changhao Han <changhaohan@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Michael Liao <michael.liao@microsoft.com>
16 files changed
tree: 84861f2438a6da9429ad7e1e6bf4f35db5ab9a83
  1. .vscode/
  2. build_overrides/
  3. config/
  4. docs/
  5. extension-api/
  6. front_end/
  7. inspector_overlay/
  8. node_modules/
  9. scripts/
  10. test/
  11. third_party/
  12. v8/
  13. .clang-format
  14. .editorconfig
  15. .eslintignore
  16. .eslintrc.js
  17. .gitattributes
  18. .gitignore
  19. .gn
  20. .mailmap
  21. .npmignore
  22. .npmrc
  23. .style.yapf
  24. .stylelintignore
  25. .stylelintrc.json
  26. ARCHITECTURE.md
  27. AUTHORS
  28. BUILD.gn
  29. DEPS
  30. LICENSE
  31. OWNERS
  32. package-lock.json
  33. package.json
  34. PRESUBMIT.py
  35. README.md
  36. tsconfig.json
  37. WATCHLISTS
README.md

Chrome DevTools frontend

npm package

The client-side of the Chrome DevTools, including all JS & CSS to run the DevTools webapp.

Source code

The frontend is available on chromium.googlesource.com.

Design guidelines

Please be aware that DevTools follows additional development guidelines.

Issue triage

The issue triage guidelines can be found in docs/triage_guidelines.md.

Workflows

Instructions to set up, use, and maintain a DevTools frontend checkout can be found in docs/workflows.md.

Additional references

Source mirrors

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.

Getting in touch