{{ 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 }} {{ $header = default (printf "Tab %v" ( add $.Ordinal 1)) (.Get "header") }} {{ end }} {{ $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 }} {{ $tab = merge $tab (dict "content" $.Inner ) }} {{ end }} {{ with .Parent }} {{- $.Parent.Scratch.SetInMap "tabs" (printf "%02v" $.Ordinal) $tab -}} {{ end }}