feat: support extension for chromium

This commit is contained in:
ᴍᴏᴏɴD4ʀᴋ
2022-04-29 23:59:37 +08:00
parent d6cb101512
commit 26de1075ee
11 changed files with 139 additions and 29 deletions
-1
View File
@@ -40,7 +40,6 @@ func PickBrowser(name, profile string) ([]Browser, error) {
func pickChromium(name, profile string) []Browser {
var browsers []Browser
name = strings.ToLower(name)
// TODO: add support for 「all」 flag and set profilePath
if name == "all" {
for _, v := range chromiumList {
if !fileutil.FolderExists(filepath.Clean(v.profilePath)) {
+13 -14
View File
@@ -1,7 +1,6 @@
package chromium
import (
"io/ioutil"
"os"
"path/filepath"
"strings"
@@ -63,21 +62,21 @@ func (c *chromium) BrowsingData() (*browingdata.Data, error) {
func (c *chromium) copyItemToLocal() error {
for i, path := range c.itemPaths {
if fileutil.FolderExists(path) {
if err := fileutil.CopyDir(path, i.String(), "lock"); err != nil {
return err
filename := i.String()
var err error
switch {
case fileutil.FolderExists(path):
if i == item.ChromiumLocalStorage {
err = fileutil.CopyDir(path, filename, "lock")
}
} else {
var filename = i.String()
// TODO: Handle read file error
d, err := ioutil.ReadFile(path)
if err != nil {
return err
}
err = ioutil.WriteFile(filename, d, 0777)
if err != nil {
return err
if i == item.ChromiumExtension {
err = fileutil.CopyDirContains(path, filename, "manifest.json")
}
default:
err = fileutil.CopyFile(path, filename)
}
if err != nil {
return err
}
}
return nil
+2 -10
View File
@@ -4,7 +4,6 @@ import (
"errors"
"fmt"
"io/fs"
"io/ioutil"
"path/filepath"
"hack-browser-data/internal/browingdata"
@@ -58,15 +57,8 @@ func (f *firefox) getMultiItemPath(profilePath string, items []item.Item) (map[s
func (f *firefox) copyItemToLocal() error {
for i, path := range f.itemPaths {
// var dstFilename = item.TempName()
var filename = i.String()
// TODO: Handle read file error
d, err := ioutil.ReadFile(path)
if err != nil {
return err
}
err = ioutil.WriteFile(filename, d, 0777)
if err != nil {
filename := i.String()
if err := fileutil.CopyFile(path, filename); err != nil {
return err
}
}