Welcome to mirror list, hosted at ThFree Co, Russian Federation.

tab.html « shortcodes « layouts - github.com/google/docsy.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 8ec7e09d5ed9d661a5cdb4e57414096448b5d7d5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
{{- /* Make sure that we are enclosed within a tabpane shortcode block */ -}}
{{ with $.Parent -}}
{{ if ne $.Parent.Name "tabpane" -}}
    {{ errorf "shortcode 'tab' must be used within a 'tabpane' block" -}}
  {{ end -}}
{{ end -}}

{{ $header := "Tab" -}}
{{ if and (not .IsNamedParams) (.Get 0) -}}
  {{ $header = (.Get 0) -}}
{{ else -}}
  {{/* Prefill header if not given as named or unnamed parameter */ -}}
  {{ $header = default (printf "Tab %v" ( add $.Ordinal 1)) (.Get "header") -}}
{{ end -}}

{{/* store all tab info in dict tab */ -}}
{{ $tab := dict "header" $header -}}
{{ with $.Get "lang" -}}
  {{ $tab = merge $tab (dict "language" ($.Get "lang")) -}}
{{ end -}}
{{ with $.Get "highlight" -}}
  {{ $tab = merge $tab (dict "highlight" ($.Get "highlight")) -}}
{{ end -}}
{{ with $.Get "text" -}}
  {{ if ne ( printf "%T" . ) "bool" -}}
  {{ errorf "shortcode tab: parameter 'text' must be either true or false" -}}
  {{ end -}}
  {{ $tab = merge $tab (dict "text" ($.Get "text")) -}}
{{ end -}}
{{ with $.Get "right" -}}
  {{ if ne ( printf "%T" . ) "bool" -}}
  {{ errorf "shortcode tab: parameter 'right' must be either true or false" -}}
  {{ end -}}
  {{ $tab = merge $tab (dict "rightpush" ($.Get "right")) -}}
{{ end -}}
{{ with $.Get "disabled" -}}
  {{ if ne ( printf "%T" . ) "bool" -}}
  {{ errorf "shortcode tab: parameter 'disabled' must be either true or false" -}}
  {{ end -}}
  {{ $tab = merge $tab (dict "disabled" ($.Get "disabled")) -}}
{{ end -}}

{{ with $.Inner -}}
  {{/* Trim any leading and trailing newlines from .Inner, this avoids
       spurious lines during syntax highlighting */ -}}
  {{ $tab = merge $tab (dict "content" $.Inner) -}}
{{ end -}}

{{/* add dict tab to parent's scratchpad */ -}}
{{ with .Parent -}}
  {{ $.Parent.Scratch.SetInMap "tabs" (printf "%02v" $.Ordinal) $tab -}}
{{ end -}}