handleUri.ts 669 B

1234567891011121314151617181920212223242526272829303132
  1. import * as vscode from "vscode"
  2. import { ClineProvider } from "../core/webview/ClineProvider"
  3. export const handleUri = async (uri: vscode.Uri) => {
  4. const path = uri.path
  5. const query = new URLSearchParams(uri.query.replace(/\+/g, "%2B"))
  6. const visibleProvider = ClineProvider.getVisibleInstance()
  7. if (!visibleProvider) {
  8. return
  9. }
  10. switch (path) {
  11. case "/glama": {
  12. const code = query.get("code")
  13. if (code) {
  14. await visibleProvider.handleGlamaCallback(code)
  15. }
  16. break
  17. }
  18. case "/openrouter": {
  19. const code = query.get("code")
  20. if (code) {
  21. await visibleProvider.handleOpenRouterCallback(code)
  22. }
  23. break
  24. }
  25. default:
  26. break
  27. }
  28. }