ebook

package
v0.10.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 23, 2019 License: MIT Imports: 11 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AskForISBN added in v0.9.0

func AskForISBN() (string, error)

AskForISBN when not found in epub

func CleanCategory added in v0.9.0

func CleanCategory(category string) (string, error)

func CleanDescription added in v0.9.0

func CleanDescription(desc string) string

func CleanLanguage added in v0.9.0

func CleanLanguage(language string) string

func CleanType added in v0.9.0

func CleanType(typ string) (string, error)

Types

type Author added in v0.10.0

type Author struct {
	Name string `json:"name" xml:"name"`
	Role string `json:"role" xml:"role"`
}

type ISBN added in v0.10.0

type ISBN struct {
	ISBN10   string
	ISBN13   string
	Location string
	Context  []string
}

func CleanISBN

func CleanISBN(full string) ([]ISBN, error)

CleanISBN from a string

func (ISBN) Info added in v0.10.0

func (i ISBN) Info() string

func (ISBN) String added in v0.10.0

func (i ISBN) String() string

type ISBNs added in v0.10.0

type ISBNs []ISBN

func (*ISBNs) Add added in v0.10.0

func (is *ISBNs) Add(i ISBN)

func (*ISBNs) HasISBN13 added in v0.10.0

func (is *ISBNs) HasISBN13(isbn string) (bool, int)

type Metadata

type Metadata struct {
	BookTitle     string   `json:"title" xml:"title"`
	ImageURL      string   `json:"image_url" xml:"image_url"`
	NumPages      string   `json:"num_pages" xml:"num_pages"`
	Authors       []Author `json:"authors" xml:"authors>author"`
	ISBN          string   `json:"isbn" xml:"isbn13"`
	Format        string   `json:"format" xml:"format"`
	OriginalYear  string   `json:"year" xml:"work>original_publication_year"`
	EditionYear   string   `json:"edition_year" xml:"publication_year"`
	EditionInfo   string   `json:"edition_information" xml:"edition_information"`
	Description   string   `json:"description" xml:"description"`
	Series        Series   `json:"series" xml:"series_works>series_work"`
	AverageRating string   `json:"average_rating" xml:"average_rating"`
	Tags          Tags     `json:"tags" xml:"popular_shelves>shelf"`
	Category      string   `json:"category"`
	Type          string   `json:"type"`
	Genre         string   `json:"genre"`
	Language      string   `json:"language" xml:"language_code"`
	Publisher     string   `json:"publisher" xml:"publisher"`
}

Metadata contains all of the known book metadata.

func (*Metadata) Author added in v0.10.0

func (i *Metadata) Author() string

Author returns Metadata's main author.

func (*Metadata) Clean added in v0.10.0

func (i *Metadata) Clean()

Clean cleans up the Metadata

func (*Metadata) MainSeries added in v0.10.0

func (i *Metadata) MainSeries() SingleSeries

MainSeries return the main Series of Metadata.

func (*Metadata) Source added in v0.10.0

func (i *Metadata) Source() string

Source returns a representation of Metadata

func (*Metadata) String added in v0.10.0

func (i *Metadata) String() string

String returns a representation of Metadata

func (*Metadata) Title added in v0.10.0

func (i *Metadata) Title() string

Title returns Metadata's main title.

type Series

type Series []SingleSeries

Series can track a series and the position of an epub.

func (*Series) AddFromString added in v0.9.0

func (s *Series) AddFromString(candidate string) (bool, error)

AddFromString a series, checking for correct form.

func (*Series) Has added in v0.9.0

func (s *Series) Has(seriesName string) (hasSeries bool, index int, position string)

Has checks if epub is part of a series

func (*Series) HasAny added in v0.9.0

func (s *Series) HasAny() bool

HasAny checks if epub is part of any series

func (Series) String added in v0.9.0

func (s Series) String() string

String outputs a series info.

type SingleSeries

type SingleSeries struct {
	Name     string `json:"name" xml:"series>title"`
	Position string `json:"index" xml:"user_position"`
}

SingleSeries holds the name and index of a series a Book is part of.

func (SingleSeries) String added in v0.9.0

func (s SingleSeries) String() string

String outputs a single series info.

type Tag

type Tag struct {
	Name string `json:"name" xml:"name,attr"`
}

Tag holds the name of a tag.

type Tags

type Tags []Tag

Tags can track a book's Tags

func (*Tags) Add added in v0.9.0

func (t *Tags) Add(tags ...Tag) (added bool)

Add Tags to the list

func (*Tags) AddFromNames added in v0.9.0

func (t *Tags) AddFromNames(tags ...string) bool

AddFromNames Tags to the list, from []string

func (*Tags) Clean added in v0.9.0

func (t *Tags) Clean()

Clean a list of tags.

func (*Tags) Has added in v0.9.0

func (t *Tags) Has(o Tag) (isIn bool, index int)

Has finds out if a Tag is already in list.

func (*Tags) HasAny added in v0.9.0

func (t *Tags) HasAny() bool

HasAny checks if epub is part of any series

func (*Tags) Remove added in v0.9.0

func (t *Tags) Remove(tags ...Tag) (removed bool)

Remove Tags from the list

func (*Tags) RemoveFromNames added in v0.9.0

func (t *Tags) RemoveFromNames(tags ...string) bool

RemoveFromNames Tags to the list, from []string

func (*Tags) String added in v0.9.0

func (t *Tags) String() string

String give a string representation of Tags.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL