libdot: externs: start forking some Chrome MV3 extension APIs

The closure compiler externs for Chrome extensions do not support MV3
and Promise-based APIs.  It's difficult updating them to support the
different modes since the APIs themselves are quite complicated with
all the different optional ways they may be used.  But we want to use
the new Promise APIs now and not wait more years.

Start a space to hold forked APIs.  These take the closure compiler
settings, delete all callback settings, and change the returns to
Promises.  We have to delete the decls from closure's copy as it
doesn't allow redefining existing APIs.

Bug: b/40874862
Change-Id: If990cc85f2cb71a8e783f913e2b35085621c98ac
Reviewed-on: https://chromium-review.googlesource.com/c/apps/libapps/+/7475467
Reviewed-by: Joel Hockey <joelhockey@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
2 files changed
tree: 46ec0bbf5d0b6e274252642e12a83481f918f4e3
  1. hterm/
  2. kokoro/
  3. libdot/
  4. nassh/
  5. ssh_client/
  6. terminal/
  7. wasi-js-bindings/
  8. wassh/
  9. .clang-format
  10. .gitignore
  11. .markdownlintrc
  12. .pylintrc
  13. CPPLINT.cfg
  14. DIR_METADATA
  15. Dockerfile
  16. eslint.config.js
  17. HACK.md
  18. LICENSE
  19. METADATA
  20. navbar.md
  21. OWNERS
  22. package.json
  23. PRESUBMIT.cfg
  24. pyproject.toml
  25. README.md
  26. unblocked_terms.txt
README.md

Hello

This repository contains the libdot JavaScript library and some web applications that make use of it.

The official copy of this repository is hosted at https://chromium.googlesource.com/apps/libapps.

There is also a mirror on github at https://github.com/libapps/libapps-mirror. A few subprojects are also extracted out into their own git repo and mirrored. Keep in mind that these mirrors may occasionally be behind the official repository.

All changes must go through the Gerrit code review server on https://chromium-review.googlesource.com. Github pull requests cannot be accepted. Please see the HACK.md document in this directory for the details.

Top level directories

  • libdot/ is a small set of JS libraries initially developed as part of hterm, now available as shared code.

  • hterm/ is a JS library that provides a terminal emulator. It is reasonably fast, reasonably correct, and reasonably portable across browsers.

  • nassh/ is the Chrome Secure Shell extension that combines hterm with a build of OpenSSH to provide a PuTTY-like app for Chrome users.

  • ssh_client/ is the WASM port of OpenSSH.

  • terminal/ is the ChromeOS Terminal application.

  • wassh/ is the JS part of the WASM OpenSSH port.

  • wasi-js-bindings/ provides JS bindings for WASI which is used by the WASM port.