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 ¶ added in v0.7.0
type Director struct {
// contains filtered or unexported fields
}
Director defines the order in which to execute the building steps.
func (*Director) GetContent ¶ added in v0.7.0
GetContent returns the Content struct used by the Builder.
func (*Director) SetBuilder ¶ added in v0.7.0
func (d *Director) SetBuilder(b IFileContentBuilder)
SetBuilder set the Builder to be used.
type IFileContentBuilder ¶ added in v0.7.0
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 ¶ added in v0.7.0
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 ¶ added in v0.7.0
func (b *MenuContentBuilder) GetContent() Content
GetContent returns the full Content config needed by the Builder.
func (*MenuContentBuilder) SetEmbeddedResources ¶ added in v0.7.0
func (b *MenuContentBuilder) SetEmbeddedResources(res map[string]string)
SetEmbeddedResources set the map to relative embed FS.
func (*MenuContentBuilder) SetTemplateData ¶ added in v0.7.0
func (b *MenuContentBuilder) SetTemplateData(artifactData *config.TemplateData)
SetTemplateData set the data used by the template.
func (*MenuContentBuilder) SetTemplateID ¶ added in v0.7.0
func (b *MenuContentBuilder) SetTemplateID(id string)
SetTemplateID set the id for the template to be used.
type MetadataContentBuilder ¶ added in v0.7.0
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 ¶ added in v0.7.0
func (b *MetadataContentBuilder) GetContent() Content
GetContent returns the full Content config needed by the Builder.
func (*MetadataContentBuilder) SetEmbeddedResources ¶ added in v0.7.0
func (b *MetadataContentBuilder) SetEmbeddedResources(res map[string]string)
SetEmbeddedResources set the map to relative embed FS.
func (*MetadataContentBuilder) SetTemplateData ¶ added in v0.7.0
func (b *MetadataContentBuilder) SetTemplateData(artifactData *config.TemplateData)
SetTemplateData set the data used by the template
func (*MetadataContentBuilder) SetTemplateID ¶ added in v0.7.0
func (b *MetadataContentBuilder) SetTemplateID(id string)
SetTemplateID set the id for the template to be used.
type NoPContentBuilder ¶ added in v0.7.0
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 ¶ added in v0.7.0
func (b *NoPContentBuilder) GetContent() Content
GetContent returns the full Content config needed by the Builder.
func (*NoPContentBuilder) SetEmbeddedResources ¶ added in v0.7.0
func (b *NoPContentBuilder) SetEmbeddedResources(res map[string]string)
SetEmbeddedResources set the map to relative embed FS.
func (*NoPContentBuilder) SetTemplateData ¶ added in v0.7.0
func (b *NoPContentBuilder) SetTemplateData(artifactData *config.TemplateData)
SetTemplateData set the data used by the template.
func (*NoPContentBuilder) SetTemplateID ¶ added in v0.7.0
func (b *NoPContentBuilder) SetTemplateID(id string)
SetTemplateID set the id for the template to be used.
type ProjectBuilder ¶ added in v0.7.0
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 ¶ added in v0.7.0
func (b *ProjectBuilder) GetContent() Content
GetContent returns the full Content config needed by the Builder.
func (*ProjectBuilder) SetEmbeddedResources ¶ added in v0.7.0
func (b *ProjectBuilder) SetEmbeddedResources(res map[string]string)
SetEmbeddedResources set the map to relative embed FS.
func (*ProjectBuilder) SetTemplateData ¶ added in v0.7.0
func (b *ProjectBuilder) SetTemplateData(artifactData *config.TemplateData)
SetTemplateData set the data used by the template.
func (*ProjectBuilder) SetTemplateID ¶ added in v0.7.0
func (b *ProjectBuilder) SetTemplateID(id string)
SetTemplateID set the id for the template to be used.
type PublicPageContentBuilder ¶ added in v0.7.0
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 ¶ added in v0.7.0
func (b *PublicPageContentBuilder) GetContent() Content
GetContent returns the full Content config needed by the Builder.
func (*PublicPageContentBuilder) SetEmbeddedResources ¶ added in v0.7.0
func (b *PublicPageContentBuilder) SetEmbeddedResources(res map[string]string)
SetEmbeddedResources set the map to relative embed FS.
func (*PublicPageContentBuilder) SetTemplateData ¶ added in v0.7.0
func (b *PublicPageContentBuilder) SetTemplateData(artifactData *config.TemplateData)
SetTemplateData set the data used by the template.
func (*PublicPageContentBuilder) SetTemplateID ¶ added in v0.7.0
func (b *PublicPageContentBuilder) SetTemplateID(id string)
SetTemplateID set the id for the template to be used.
type ResContentBuilder ¶ added in v0.7.0
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 ¶ added in v0.7.0
func (b *ResContentBuilder) GetContent() Content
GetContent returns the full Content config needed by the Builder.
func (*ResContentBuilder) SetEmbeddedResources ¶ added in v0.7.0
func (b *ResContentBuilder) SetEmbeddedResources(res map[string]string)
SetEmbeddedResources set the map to relative embed FS.
func (*ResContentBuilder) SetTemplateData ¶ added in v0.7.0
func (b *ResContentBuilder) SetTemplateData(artifactData *config.TemplateData)
SetTemplateData set the data used by the template.
func (*ResContentBuilder) SetTemplateID ¶ added in v0.7.0
func (b *ResContentBuilder) SetTemplateID(id string)
SetTemplateID set the id for the template to be used.
type ResourceContentBuilder ¶ added in v0.7.0
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 ¶ added in v0.7.0
func (b *ResourceContentBuilder) GetContent() Content
GetContent returns the full Content config needed by the Builder.
func (*ResourceContentBuilder) SetEmbeddedResources ¶ added in v0.7.0
func (b *ResourceContentBuilder) SetEmbeddedResources(res map[string]string)
SetEmbeddedResources set the map to relative embed FS.
func (*ResourceContentBuilder) SetTemplateData ¶ added in v0.7.0
func (b *ResourceContentBuilder) SetTemplateData(artifactData *config.TemplateData)
SetTemplateData set the data used by the template.
func (*ResourceContentBuilder) SetTemplateID ¶ added in v0.7.0
func (b *ResourceContentBuilder) SetTemplateID(id string)
SetTemplateID set the id for the template to be used.
type ThemeBuilder ¶ added in v0.8.0
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 ¶ added in v0.8.0
func NewThemeBuilder() *ThemeBuilder
NewThemeBuilder create a ThemeBuilder struct.
func (*ThemeBuilder) GetContent ¶ added in v0.8.0
func (b *ThemeBuilder) GetContent() Content
GetContent returns the full Content config needed by the Builder.
func (*ThemeBuilder) SetEmbeddedResources ¶ added in v0.8.0
func (b *ThemeBuilder) SetEmbeddedResources(res map[string]string)
SetEmbeddedResources set the map to relative embed FS.
func (*ThemeBuilder) SetTemplateData ¶ added in v0.8.0
func (b *ThemeBuilder) SetTemplateData(artifactData *config.TemplateData)
SetTemplateData set the data used by the template.
func (*ThemeBuilder) SetTemplateID ¶ added in v0.8.0
func (b *ThemeBuilder) SetTemplateID(id string)
SetTemplateID set the id for the template to be used.