{{ $id := delimit (shuffle (seq 1 9)) "" }}

{{ if .Get "language" }}
<div class="collapsable-code">
  <input id="{{ .Get "id" | default $id }}" type="checkbox" {{ if ( eq ( .Get "isCollapsed" ) "true" ) -}} checked
    {{- end }} />
  <label for="{{ .Get "id" | default $id }}">
    <span class="collapsable-code__language">{{ .Get "language" }}</span>
    {{ if .Get "title" }}<span class="collapsable-code__title">{{ .Get "title" | markdownify }}</span>{{ end }}
    <span class="collapsable-code__toggle" data-label-expand="{{ .Get "expand" | default "△" }}"
      data-label-collapse="{{ .Get "collapse" | default "▽" }}"></span>
  </label>
  <pre {{ if .Get "language" }}class="language-{{ .Get "language" }}" {{ end }}><code>{{ .Inner | string }}</code></pre>
</div>
{{ else }}
{{ errorf "If you want to use the \"collapsable code\" shortcode, you need to pass a mandatory \"language\" param. The issue occured in %q (%q)" .Page.File .Page.Permalink }}
{{ end }}