diff options
author | Teddy Wing | 2023-11-14 00:31:23 +0100 |
---|---|---|
committer | Teddy Wing | 2023-11-14 00:31:23 +0100 |
commit | 0fc6f35dcdca6aeec42bac6e90134b9e5920d4e2 (patch) | |
tree | 2affa0d2925b08c2faea1b48e773530779c03c74 | |
parent | 613d96cf7cf814447fa767fa3d7dc13f2acb0b62 (diff) | |
download | swextreload-0fc6f35dcdca6aeec42bac6e90134b9e5920d4e2.tar.bz2 |
Move code from `main()` to `swextreload.Reload()`
Move everything to our library.
-rw-r--r-- | internal/swextreload.go | 99 | ||||
-rw-r--r-- | main.go | 93 |
2 files changed, 102 insertions, 90 deletions
diff --git a/internal/swextreload.go b/internal/swextreload.go index 65edbe0..5a5dab1 100644 --- a/internal/swextreload.go +++ b/internal/swextreload.go @@ -1,9 +1,108 @@ package swextreload +import ( + "context" + "log" + "time" + + "github.com/chromedp/cdproto/target" + "github.com/chromedp/chromedp" +) + // TODO func Reload( url string, extensionID string, shouldReloadTab bool, ) error { + allocatorContext, cancel := chromedp.NewRemoteAllocator( + context.Background(), + "ws://127.0.0.1:55755/devtools/browser/4536efdf-6ddf-40b6-9a16-258a1935d866", + ) + defer cancel() + + ctx, cancel := chromedp.NewContext(allocatorContext) + defer cancel() + + targets, err := chromedp.Targets(ctx) + if err != nil { + log.Fatalf("error: targets: %v", err) + } + + log.Printf("Targets: %#v", targets) + println() + + var targetID target.ID + for _, target := range targets { + if target.URL == "chrome-extension://imcibeelfmccdpnnlemllnepgbfdbkgo/background.bundle.js" { + log.Printf("Target: %#v", target) + targetID = target.TargetID + break + } + } + + targetCtx, cancel := chromedp.NewContext(ctx, chromedp.WithTargetID(targetID)) + defer cancel() + + var runtimeResp []byte + err = chromedp.Run( + targetCtx, + // chromedp.Evaluate(`chrome.runtime.reload();`, &runtimeResp), + // chromedp.Evaluate(`chrome.tabs.reload();`, &tabsResp), + // chromedp.Evaluate(`chrome.runtime.reload();`, nil), + // chromedp.EvaluateAsDevTools(`chrome.runtime.reload();`, nil), + chromedp.Evaluate(`chrome.runtime.reload();`, nil), + // chromedp.Evaluate(`chrome.tabs.reload();`, nil), + ) + if err != nil { + log.Fatalf("error: run: %v", err) + } + + // var tabsResp []byte + // err = chromedp.Run( + // targetCtx, + // // chromedp.Evaluate(`chrome.tabs.reload();`, &tabsResp), + // // chromedp.Evaluate(`chrome.tabs.reload();`, nil), + // chromedp.EvaluateAsDevTools(`chrome.tabs.reload();`, nil), + // ) + // if err != nil { + // log.Fatalf("error: run tabs: %v", err) + // } + + log.Printf("Runtime: %v", string(runtimeResp)) + // log.Printf("Tabs: %v", string(tabsResp)) + + time.Sleep(200 * time.Millisecond) + + targets, err = chromedp.Targets(ctx) + if err != nil { + log.Fatalf("error: targets2: %v", err) + } + + log.Printf("Targets: %#v", targets) + println() + + for _, target := range targets { + if target.URL == "chrome-extension://imcibeelfmccdpnnlemllnepgbfdbkgo/background.bundle.js" { + log.Printf("Target: %#v", target) + targetID = target.TargetID + break + } + } + + targetCtx, cancel = chromedp.NewContext(ctx, chromedp.WithTargetID(targetID)) + defer cancel() + + var tabsResp []byte + err = chromedp.Run( + targetCtx, + chromedp.Evaluate(`chrome.tabs.reload();`, nil), + ) + if err != nil { + log.Fatalf("error: run tabs: %v", err) + } + + log.Printf("Tabs: %v", string(tabsResp)) + + return nil } @@ -1,101 +1,14 @@ package main import ( - "context" "log" - "time" - "github.com/chromedp/cdproto/target" - "github.com/chromedp/chromedp" + swextreload "gopkg.teddywing.com/swextreload/internal" ) func main() { - allocatorContext, cancel := chromedp.NewRemoteAllocator( - context.Background(), - "ws://127.0.0.1:55755/devtools/browser/4536efdf-6ddf-40b6-9a16-258a1935d866", - ) - defer cancel() - - ctx, cancel := chromedp.NewContext(allocatorContext) - defer cancel() - - targets, err := chromedp.Targets(ctx) - if err != nil { - log.Fatalf("error: targets: %v", err) - } - - log.Printf("Targets: %#v", targets) - println() - - var targetID target.ID - for _, target := range targets { - if target.URL == "chrome-extension://imcibeelfmccdpnnlemllnepgbfdbkgo/background.bundle.js" { - log.Printf("Target: %#v", target) - targetID = target.TargetID - break - } - } - - targetCtx, cancel := chromedp.NewContext(ctx, chromedp.WithTargetID(targetID)) - defer cancel() - - var runtimeResp []byte - err = chromedp.Run( - targetCtx, - // chromedp.Evaluate(`chrome.runtime.reload();`, &runtimeResp), - // chromedp.Evaluate(`chrome.tabs.reload();`, &tabsResp), - // chromedp.Evaluate(`chrome.runtime.reload();`, nil), - // chromedp.EvaluateAsDevTools(`chrome.runtime.reload();`, nil), - chromedp.Evaluate(`chrome.runtime.reload();`, nil), - // chromedp.Evaluate(`chrome.tabs.reload();`, nil), - ) + err := swextreload.Reload("", "", true) if err != nil { - log.Fatalf("error: run: %v", err) + log.Fatal(err) } - - // var tabsResp []byte - // err = chromedp.Run( - // targetCtx, - // // chromedp.Evaluate(`chrome.tabs.reload();`, &tabsResp), - // // chromedp.Evaluate(`chrome.tabs.reload();`, nil), - // chromedp.EvaluateAsDevTools(`chrome.tabs.reload();`, nil), - // ) - // if err != nil { - // log.Fatalf("error: run tabs: %v", err) - // } - - log.Printf("Runtime: %v", string(runtimeResp)) - // log.Printf("Tabs: %v", string(tabsResp)) - - time.Sleep(200 * time.Millisecond) - - targets, err = chromedp.Targets(ctx) - if err != nil { - log.Fatalf("error: targets2: %v", err) - } - - log.Printf("Targets: %#v", targets) - println() - - for _, target := range targets { - if target.URL == "chrome-extension://imcibeelfmccdpnnlemllnepgbfdbkgo/background.bundle.js" { - log.Printf("Target: %#v", target) - targetID = target.TargetID - break - } - } - - targetCtx, cancel = chromedp.NewContext(ctx, chromedp.WithTargetID(targetID)) - defer cancel() - - var tabsResp []byte - err = chromedp.Run( - targetCtx, - chromedp.Evaluate(`chrome.tabs.reload();`, nil), - ) - if err != nil { - log.Fatalf("error: run tabs: %v", err) - } - - log.Printf("Tabs: %v", string(tabsResp)) } |