mirror of
https://github.com/charmbracelet/glow.git
synced 2026-08-24 00:54:17 +02:00
Fetch and render news markdown
This commit is contained in:
parent
e5663a5912
commit
9bee37ee93
4 changed files with 19 additions and 12 deletions
2
go.mod
2
go.mod
|
|
@ -4,7 +4,7 @@ go 1.13
|
|||
|
||||
require (
|
||||
github.com/charmbracelet/boba v0.6.3
|
||||
github.com/charmbracelet/charm v0.4.2-0.20200522154917-0a1ba5ae4e28
|
||||
github.com/charmbracelet/charm v0.4.2-0.20200522192006-ce78aabf4b25
|
||||
github.com/charmbracelet/glamour v0.2.0
|
||||
github.com/charmbracelet/tea v0.3.0
|
||||
github.com/charmbracelet/teaparty v0.0.0-20200504225426-da64445a0e0d
|
||||
|
|
|
|||
4
go.sum
4
go.sum
|
|
@ -18,8 +18,8 @@ github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghf
|
|||
github.com/charmbracelet/boba v0.6.1/go.mod h1:xqhji08CbPctzbvCi/GzmNvIFOhnWJnkl9N8T65gnK0=
|
||||
github.com/charmbracelet/boba v0.6.3 h1:3YisdYQ35tieYXbfpf8acdVN6d1DJHGKZc5kDJNkjg0=
|
||||
github.com/charmbracelet/boba v0.6.3/go.mod h1:9TUvThAOqjXWYZGOrZ4qyluTrmodxb8SqNR81BJluOU=
|
||||
github.com/charmbracelet/charm v0.4.2-0.20200522154917-0a1ba5ae4e28 h1:qwEm+kLHiDuqZPMZIEDjYRdXYKfn7B9ZRBPI/ERTMrA=
|
||||
github.com/charmbracelet/charm v0.4.2-0.20200522154917-0a1ba5ae4e28/go.mod h1:xZgRIZCddA0IAmbsR4zk4HHCj4Z1PLvQcqcZqtk0Pzo=
|
||||
github.com/charmbracelet/charm v0.4.2-0.20200522192006-ce78aabf4b25 h1:ZQUYsUAskkhwkMOq1I7NlrfDwHtCwi5HspFa5O+Z4ug=
|
||||
github.com/charmbracelet/charm v0.4.2-0.20200522192006-ce78aabf4b25/go.mod h1:xZgRIZCddA0IAmbsR4zk4HHCj4Z1PLvQcqcZqtk0Pzo=
|
||||
github.com/charmbracelet/glamour v0.2.0 h1:mTgaiNiumpqTZp3qVM6DH9UB0NlbY17wejoMf1kM8Pg=
|
||||
github.com/charmbracelet/glamour v0.2.0/go.mod h1:UA27Kwj3QHialP74iU6C+Gpc8Y7IOAKupeKMLLBURWM=
|
||||
github.com/charmbracelet/tea v0.2.0/go.mod h1:lADjwO2mMub9qvXSCA9vAkabVWO0HeUrv4uO/lG3C+k=
|
||||
|
|
|
|||
21
ui/stash.go
21
ui/stash.go
|
|
@ -40,7 +40,7 @@ type stashErrMsg error
|
|||
type stashSpinnerTickMsg struct{}
|
||||
type gotStashMsg []*charm.Markdown
|
||||
type gotNewsMsg []*charm.Markdown
|
||||
type gotStashedItemMsg *markdown
|
||||
type fetchedMarkdownMsg *markdown
|
||||
type deletedStashedItemMsg int
|
||||
|
||||
// MODEL
|
||||
|
|
@ -273,8 +273,9 @@ func stashUpdate(msg boba.Msg, m stashModel) (stashModel, boba.Cmd) {
|
|||
// that comes back in the main update function.
|
||||
m.state = stashStateLoadingDocument
|
||||
doc := m.documents[m.markdownIndex()]
|
||||
|
||||
cmds = append(cmds,
|
||||
loadStashedItem(m.cc, doc.ID, doc.markdownType),
|
||||
loadMarkdown(m.cc, doc.ID, doc.markdownType),
|
||||
spinner.Tick(m.spinner),
|
||||
)
|
||||
|
||||
|
|
@ -627,14 +628,22 @@ func loadNews(m stashModel) boba.Cmd {
|
|||
}
|
||||
}
|
||||
|
||||
func loadStashedItem(cc *charm.Client, id int, t markdownType) boba.Cmd {
|
||||
func loadMarkdown(cc *charm.Client, id int, t markdownType) boba.Cmd {
|
||||
return func() boba.Msg {
|
||||
md, err := cc.GetStashMarkdown(id)
|
||||
var (
|
||||
md *charm.Markdown
|
||||
err error
|
||||
)
|
||||
if t == userMarkdown {
|
||||
md, err = cc.GetStashMarkdown(id)
|
||||
} else {
|
||||
md, err = cc.GetNewsMarkdown(id)
|
||||
}
|
||||
if err != nil {
|
||||
return stashErrMsg(err)
|
||||
}
|
||||
return gotStashedItemMsg(&markdown{
|
||||
markdownType: t,
|
||||
return fetchedMarkdownMsg(&markdown{
|
||||
markdownType: userMarkdown,
|
||||
Markdown: md,
|
||||
})
|
||||
}
|
||||
|
|
|
|||
4
ui/ui.go
4
ui/ui.go
|
|
@ -232,9 +232,7 @@ func update(msg boba.Msg, mdl boba.Model) (boba.Model, boba.Cmd) {
|
|||
m.pager.cc = msg
|
||||
cmds = append(cmds, cmd)
|
||||
|
||||
case gotStashedItemMsg:
|
||||
// Loaded markdown document from the server. We'll render it before
|
||||
// loading it into the pager.
|
||||
case fetchedMarkdownMsg:
|
||||
m.pager.currentDocument = msg
|
||||
cmds = append(cmds, renderWithGlamour(m.pager, msg.Body))
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue