feat: Support page inclusion macro

Also generalize the ac_tag_parser a bit and support <ri:* /> tags as
well
This commit is contained in:
Manuel Rüger
2023-03-31 16:25:54 +02:00
parent 943a356508
commit 1285947ab3
4 changed files with 31 additions and 14 deletions

View File

@@ -261,6 +261,18 @@ func templates(api *confluence.API) (*template.Template, error) {
`</ac:structured-macro>{{printf "\n"}}`,
),
/* https://confluence.atlassian.com/conf59/include-page-macro-792499125.html */
`ac:include`: text(
`<ac:structured-macro ac:name="include">{{printf "\n"}}`,
`<ac:parameter ac:name="">{{printf "\n"}}`,
`<ac:link>{{printf "\n"}}`,
`<ri:page ri:content-title="{{ .Page }}" {{if .Space }}ri:space-key="{{ .Space }}"{{end}}/>{{printf "\n"}}`,
`</ac:link>{{printf "\n"}}`,
`</ac:parameter>{{printf "\n"}}`,
`</ac:structured-macro>{{printf "\n"}}`,
),
// TODO(seletskiy): more templates here
} {
templates, err = templates.New(name).Parse(body)