feat: add is full export browsing data option

This commit is contained in:
moonD4rk
2023-03-11 20:09:10 +08:00
parent fbe61a2cf4
commit 84ab4005f9
15 changed files with 125 additions and 79 deletions
+1 -1
View File
@@ -40,7 +40,7 @@ func (c *ChromiumBookmark) Parse(masterKey []byte) error {
return true
})
}
// TODO: refactor with go generics
sort.Slice(*c, func(i, j int) bool {
return (*c)[i].DateAdded.After((*c)[j].DateAdded)
})
+5 -5
View File
@@ -28,11 +28,11 @@ type Source interface {
Length() int
}
func New(sources []item.Item) *Data {
func New(items []item.Item) *Data {
bd := &Data{
sources: make(map[item.Item]Source),
}
bd.addSource(sources)
bd.addSources(items)
return bd
}
@@ -46,7 +46,7 @@ func (d *Data) Recovery(masterKey []byte) error {
}
func (d *Data) Output(dir, browserName, flag string) {
output := NewOutPutter(flag)
output := newOutPutter(flag)
for _, source := range d.sources {
if source.Length() == 0 {
@@ -72,8 +72,8 @@ func (d *Data) Output(dir, browserName, flag string) {
}
}
func (d *Data) addSource(Sources []item.Item) {
for _, source := range Sources {
func (d *Data) addSources(items []item.Item) {
for _, source := range items {
switch source {
case item.ChromiumPassword:
d.sources[source] = &password.ChromiumPassword{}
+6 -6
View File
@@ -13,13 +13,13 @@ import (
"golang.org/x/text/transform"
)
type OutPutter struct {
type outPutter struct {
json bool
csv bool
}
func NewOutPutter(flag string) *OutPutter {
o := &OutPutter{}
func newOutPutter(flag string) *outPutter {
o := &outPutter{}
if flag == "json" {
o.json = true
} else {
@@ -28,7 +28,7 @@ func NewOutPutter(flag string) *OutPutter {
return o
}
func (o *OutPutter) Write(data Source, writer io.Writer) error {
func (o *outPutter) Write(data Source, writer io.Writer) error {
switch o.json {
case true:
encoder := json.NewEncoder(writer)
@@ -45,7 +45,7 @@ func (o *OutPutter) Write(data Source, writer io.Writer) error {
}
}
func (o *OutPutter) CreateFile(dir, filename string) (*os.File, error) {
func (o *outPutter) CreateFile(dir, filename string) (*os.File, error) {
if filename == "" {
return nil, errors.New("empty filename")
}
@@ -69,7 +69,7 @@ func (o *OutPutter) CreateFile(dir, filename string) (*os.File, error) {
return file, nil
}
func (o *OutPutter) Ext() string {
func (o *outPutter) Ext() string {
if o.json {
return "json"
}
+1 -1
View File
@@ -7,7 +7,7 @@ import (
func TestNewOutPutter(t *testing.T) {
t.Parallel()
out := NewOutPutter("json")
out := newOutPutter("json")
if out == nil {
t.Error("New() returned nil")
}