Documentation
¶
Overview ¶
Package builder ...
Package builder ...
Package builder ...
Package builder ...
Package builder ...
Package builder ...
Package builder ...
Package builder ...
Package builder ...
Package builder ...
Package builder ...
Package builder ...
Index ¶
Constants ¶
const ( Defaults string = "defaults" Externals string = "externals" Website string = "website" Menu string = "menu" InitMenu string = "init_menu" DotEnv string = "dotenv" Readme string = "readme" License string = "license" ThemeConfig string = "theme_config" IndexPage string = "index" IndexNoThemePage string = "index_notheme" )
constants representing different file names.
const ( // Blank represents the fontmatter-only template id used when generating the content file. Blank string = "blank" // Sample represents the sample-content template id used when generating the content file. Sample string = "sample" // Svelte set svelte as the language used to scaffold a new page Svelte string = "svelte" // Markdown set markdown as the language used to scaffold a new page Markdown string = "markdown" // API is a string for the 'api' folder. API string = "api" // APISingle is a string representing the api template file // to be used when creating a metadata of type 'single'. APISingle string = "api_single" // APIList is a string representing the api template file // to be used when creating a metadata of type 'list'. APIList string = "api_list" // Index is a string for the 'index' file. Index string = "index" // IndexEndpoint is a string for the 'index.ts' file. IndexEndpoint string = "indexendpoint" // Slug is a string for the 'slug' file. Slug string = "slug" // SlugEndpoint is a string for the 'slug' file. SlugEndpoint string = "slugendpoint" // Lib is a string for the 'lib' folder. Lib string = "lib" // LibSingle is a string representing the template id used // for the lib file when metadata's type is single. LibSingle string = "lib_single" // LibList is a string representing the template id used // for the lib file when metadata's type is list. LibList string = "lib_list" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Content ¶
type Content struct { ContentType string EmbeddedResources map[string]string PathToTplFile string TemplateID string TemplateData *config.TemplateData Funcs template.FuncMap }
Content define the needed configs to run a Builder.
type Director ¶
type Director struct {
// contains filtered or unexported fields
}
Director defines the order in which to execute the building steps.
func (*Director) GetContent ¶
GetContent returns the Content struct used by the Builder.
func (*Director) SetBuilder ¶
func (d *Director) SetBuilder(b IFileContentBuilder)
SetBuilder set the Builder to be used.
type IFileContentBuilder ¶
type IFileContentBuilder interface { SetEmbeddedResources(res map[string]string) SetTemplateID(string) SetTemplateData(artifact *config.TemplateData) GetContent() Content // contains filtered or unexported methods }
IFileContentBuilder declares building steps that are common to all types of builders.
func GetContentBuilder ¶
func GetContentBuilder(contentType string) IFileContentBuilder
GetContentBuilder returns an concrete implementation for iFileContentBuilder.
type MenuContentBuilder ¶
type MenuContentBuilder struct { ContentType string EmbeddedResources map[string]string PathToTplFile string TemplateID string TemplateData *config.TemplateData Funcs template.FuncMap }
MenuContentBuilder represents the builder for the menu.
func NewMenuContentBuilder ¶
func NewMenuContentBuilder() *MenuContentBuilder
NewMenuContentBuilder create a menuContentBuilder struct.
func (*MenuContentBuilder) GetContent ¶
func (b *MenuContentBuilder) GetContent() Content
GetContent returns the full Content config needed by the Builder.
func (*MenuContentBuilder) SetEmbeddedResources ¶
func (b *MenuContentBuilder) SetEmbeddedResources(res map[string]string)
SetEmbeddedResources set the map to relative embed FS.
func (*MenuContentBuilder) SetTemplateData ¶
func (b *MenuContentBuilder) SetTemplateData(artifactData *config.TemplateData)
SetTemplateData set the data used by the template.
func (*MenuContentBuilder) SetTemplateID ¶
func (b *MenuContentBuilder) SetTemplateID(id string)
SetTemplateID set the id for the template to be used.
type MetadataContentBuilder ¶
type MetadataContentBuilder struct { ContentType string EmbeddedResources map[string]string PathToTplFile string TemplateID string TemplateData *config.TemplateData Funcs template.FuncMap }
MetadataContentBuilder represents the builder for the metadata artefact.
func NewMetadataContentBuilder ¶
func NewMetadataContentBuilder() *MetadataContentBuilder
NewMetadataContentBuilder create a metadataContentBuilder struct.
func (*MetadataContentBuilder) GetContent ¶
func (b *MetadataContentBuilder) GetContent() Content
GetContent returns the full Content config needed by the Builder.
func (*MetadataContentBuilder) SetEmbeddedResources ¶
func (b *MetadataContentBuilder) SetEmbeddedResources(res map[string]string)
SetEmbeddedResources set the map to relative embed FS.
func (*MetadataContentBuilder) SetTemplateData ¶
func (b *MetadataContentBuilder) SetTemplateData(artifactData *config.TemplateData)
SetTemplateData set the data used by the template
func (*MetadataContentBuilder) SetTemplateID ¶
func (b *MetadataContentBuilder) SetTemplateID(id string)
SetTemplateID set the id for the template to be used.
type NoPContentBuilder ¶
type NoPContentBuilder struct { ContentType string EmbeddedResources map[string]string PathToTplFile string TemplateID string TemplateData *config.TemplateData Funcs template.FuncMap }
NoPContentBuilder represents the builder for the no-page artefacts (sitemap and rss).
func NewNoPageContentBuilder ¶
func NewNoPageContentBuilder() *NoPContentBuilder
NewNoPageContentBuilder create a NoPContentBuilder struct.
func (*NoPContentBuilder) GetContent ¶
func (b *NoPContentBuilder) GetContent() Content
GetContent returns the full Content config needed by the Builder.
func (*NoPContentBuilder) SetEmbeddedResources ¶
func (b *NoPContentBuilder) SetEmbeddedResources(res map[string]string)
SetEmbeddedResources set the map to relative embed FS.
func (*NoPContentBuilder) SetTemplateData ¶
func (b *NoPContentBuilder) SetTemplateData(artifactData *config.TemplateData)
SetTemplateData set the data used by the template.
func (*NoPContentBuilder) SetTemplateID ¶
func (b *NoPContentBuilder) SetTemplateID(id string)
SetTemplateID set the id for the template to be used.
type ProjectBuilder ¶
type ProjectBuilder struct { ContentType string EmbeddedResources map[string]string PathToTplFile string TemplateID string TemplateData *config.TemplateData Funcs template.FuncMap }
ProjectBuilder represents the builder for the project.
func NewProjectBuilder ¶
func NewProjectBuilder() *ProjectBuilder
NewProjectBuilder create a ProjectBuilder struct.
func (*ProjectBuilder) GetContent ¶
func (b *ProjectBuilder) GetContent() Content
GetContent returns the full Content config needed by the Builder.
func (*ProjectBuilder) SetEmbeddedResources ¶
func (b *ProjectBuilder) SetEmbeddedResources(res map[string]string)
SetEmbeddedResources set the map to relative embed FS.
func (*ProjectBuilder) SetTemplateData ¶
func (b *ProjectBuilder) SetTemplateData(artifactData *config.TemplateData)
SetTemplateData set the data used by the template.
func (*ProjectBuilder) SetTemplateID ¶
func (b *ProjectBuilder) SetTemplateID(id string)
SetTemplateID set the id for the template to be used.
type PublicPageContentBuilder ¶
type PublicPageContentBuilder struct { ContentType string EmbeddedResources map[string]string PathToTplFile string TemplateID string TemplateData *config.TemplateData Funcs template.FuncMap }
PublicPageContentBuilder represents the builder for the public page artefact.
func NewPageContentBuilder ¶
func NewPageContentBuilder() *PublicPageContentBuilder
NewPageContentBuilder create a PublicPageContentBuilder struct.
func (*PublicPageContentBuilder) GetContent ¶
func (b *PublicPageContentBuilder) GetContent() Content
GetContent returns the full Content config needed by the Builder.
func (*PublicPageContentBuilder) SetEmbeddedResources ¶
func (b *PublicPageContentBuilder) SetEmbeddedResources(res map[string]string)
SetEmbeddedResources set the map to relative embed FS.
func (*PublicPageContentBuilder) SetTemplateData ¶
func (b *PublicPageContentBuilder) SetTemplateData(artifactData *config.TemplateData)
SetTemplateData set the data used by the template.
func (*PublicPageContentBuilder) SetTemplateID ¶
func (b *PublicPageContentBuilder) SetTemplateID(id string)
SetTemplateID set the id for the template to be used.
type ResContentBuilder ¶
type ResContentBuilder struct { ContentType string EmbeddedResources map[string]string PathToTplFile string TemplateID string TemplateData *config.TemplateData Funcs template.FuncMap }
ResContentBuilder represents the builder for the content artefact.
func NewResContentBuilder ¶
func NewResContentBuilder() *ResContentBuilder
NewResContentBuilder create a ResContentBuilder struct.
func (*ResContentBuilder) GetContent ¶
func (b *ResContentBuilder) GetContent() Content
GetContent returns the full Content config needed by the Builder.
func (*ResContentBuilder) SetEmbeddedResources ¶
func (b *ResContentBuilder) SetEmbeddedResources(res map[string]string)
SetEmbeddedResources set the map to relative embed FS.
func (*ResContentBuilder) SetTemplateData ¶
func (b *ResContentBuilder) SetTemplateData(artifactData *config.TemplateData)
SetTemplateData set the data used by the template.
func (*ResContentBuilder) SetTemplateID ¶
func (b *ResContentBuilder) SetTemplateID(id string)
SetTemplateID set the id for the template to be used.
type ResourceContentBuilder ¶
type ResourceContentBuilder struct { ContentType string EmbeddedResources map[string]string PathToTplFile string TemplateID string TemplateData *config.TemplateData Funcs template.FuncMap }
ResourceContentBuilder represents the builder for the resource artefact.
func NewResourceContentBuilder ¶
func NewResourceContentBuilder() *ResourceContentBuilder
NewResourceContentBuilder create a ResourceContentBuilder struct.
func (*ResourceContentBuilder) GetContent ¶
func (b *ResourceContentBuilder) GetContent() Content
GetContent returns the full Content config needed by the Builder.
func (*ResourceContentBuilder) SetEmbeddedResources ¶
func (b *ResourceContentBuilder) SetEmbeddedResources(res map[string]string)
SetEmbeddedResources set the map to relative embed FS.
func (*ResourceContentBuilder) SetTemplateData ¶
func (b *ResourceContentBuilder) SetTemplateData(artifactData *config.TemplateData)
SetTemplateData set the data used by the template.
func (*ResourceContentBuilder) SetTemplateID ¶
func (b *ResourceContentBuilder) SetTemplateID(id string)
SetTemplateID set the id for the template to be used.
type ThemeBuilder ¶
type ThemeBuilder struct { ContentType string EmbeddedResources map[string]string PathToTplFile string TemplateID string TemplateData *config.TemplateData Funcs template.FuncMap }
ThemeBuilder represents the builder for the project.
func NewThemeBuilder ¶
func NewThemeBuilder() *ThemeBuilder
NewThemeBuilder create a ThemeBuilder struct.
func (*ThemeBuilder) GetContent ¶
func (b *ThemeBuilder) GetContent() Content
GetContent returns the full Content config needed by the Builder.
func (*ThemeBuilder) SetEmbeddedResources ¶
func (b *ThemeBuilder) SetEmbeddedResources(res map[string]string)
SetEmbeddedResources set the map to relative embed FS.
func (*ThemeBuilder) SetTemplateData ¶
func (b *ThemeBuilder) SetTemplateData(artifactData *config.TemplateData)
SetTemplateData set the data used by the template.
func (*ThemeBuilder) SetTemplateID ¶
func (b *ThemeBuilder) SetTemplateID(id string)
SetTemplateID set the id for the template to be used.