all repos — nirvash @ 358d4fb2af62189b913432997462a71b61090eb4

modular CMS using the quartzgun library

archetype/adapter.go (raw)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package archetype

type EditMode int

const (
	EditModeLiteralTextArea EditMode = iota
	EditModeEscapedContentEditable
)

type Adapter interface {
	Init(cfg *Config)
	Name() string
	EditMode() EditMode
	GetConfig(key string) (interface{}, error)
	SetConfig(key string, value interface{}) error
	ListPages() map[string]string
	GetPage(string) (Page, error)
	FormatPage(string) string
	FormattingHelp() string
	CreatePage(page Page) error
	EditPage(old Page, new Page) error
	DeletePage(page Page) error
	Build() string
}