+
{{ .InnerDeindent | strings.TrimSpace | .Page.RenderString }}
diff --git a/_vendor/github.com/chef/chef-docs-theme/layouts/shortcodes/accordion-list.html b/_vendor/github.com/chef/chef-docs-theme/layouts/shortcodes/accordion-list.html
index f4549d7397..383abd8b2e 100644
--- a/_vendor/github.com/chef/chef-docs-theme/layouts/shortcodes/accordion-list.html
+++ b/_vendor/github.com/chef/chef-docs-theme/layouts/shortcodes/accordion-list.html
@@ -1,4 +1,27 @@
+{{- /*
+Accordion List Shortcode
+
+https://get.foundation/sites/docs/accordion.html
+
+Usage:
+{{< accordion-list id="my-accordion" data-multi-expand="true" data-allow-all-closed="true" >}}
+ {{< accordion-item accordion-title="Item 1" accordion-title-link="item1" is-active="true" >}}
+ Content for item 1
+ {{< /accordion-item >}}
+ {{< accordion-item accordion-title="Item 2" accordion-title-link="item2" >}}
+ Content for item 2
+ {{< /accordion-item >}}
+{{< /accordion-list >}}
+
+Options:
+ - id: Optional: Unique identifier for the accordion. This allows deep linking and history updates. https://get.foundation/sites/docs/accordion.html#accordion-and-urls
+ - data-multi-expand: Allow multiple items to be expanded (default: false)
+ - data-allow-all-closed: Allow all items to be closed (default: false)
+
+*/ -}}
+
diff --git a/_vendor/github.com/chef/chef-docs-theme/layouts/shortcodes/foundation_tabs.html b/_vendor/github.com/chef/chef-docs-theme/layouts/shortcodes/foundation_tabs.html
index 460ddf5102..14afd149d7 100644
--- a/_vendor/github.com/chef/chef-docs-theme/layouts/shortcodes/foundation_tabs.html
+++ b/_vendor/github.com/chef/chef-docs-theme/layouts/shortcodes/foundation_tabs.html
@@ -1,3 +1,3 @@
-
+
diff --git a/_vendor/github.com/chef/chef-docs-theme/layouts/shortcodes/readfile.html b/_vendor/github.com/chef/chef-docs-theme/layouts/shortcodes/readfile.html
index 9aeb224850..dacf223c23 100644
--- a/_vendor/github.com/chef/chef-docs-theme/layouts/shortcodes/readfile.html
+++ b/_vendor/github.com/chef/chef-docs-theme/layouts/shortcodes/readfile.html
@@ -1,10 +1,10 @@
-{{/* This shortcode accepts three parameters: */}}
-{{/* file: the path to a file. This is an absolute path from the project root. This is required. */}}
-{{/* html: whether this is HTML or not. This is optional. Allowed values are "true" or "false". */}}
-{{/* hightlight: the Chroma highlight language. This is optional. See https://gohugo.io/content-management/syntax-highlighting/ */}}
-{{/* If the highlight value is different from the file suffix it will try to convert the file text to the highlight file type. */}}
-{{/* This only works when converting between the following types: YAML, JSON, TOML, and XML. See https://gohugo.io/functions/transform/remarshal/ */}}
-{{/* If html isn't set to true and a highlight style isn't declared, it converts the file from Markdown to HTML. */}}
+{{- /* This shortcode accepts three parameters:
+ file: the path to a file. This is an absolute path from the project root. This is required.
+ html: whether this is HTML or not. This is optional. Allowed values are "true" or "false". Default is false.
+ highlight: the Chroma highlight language. This is optional. See https://gohugo.io/content-management/syntax-highlighting/
+ remarshal: convert the file text to a different file type.
+ This only works when converting between the following types: YAML, JSON, TOML, and XML. See https://gohugo.io/functions/transform/remarshal/
+ If html, highlight, or remarshal aren't set, it adds a Markdown file to a page and converts it to HTML. */ -}}
{{- $file := .Get "file" -}}
{{- if fileExists $file -}}
@@ -12,12 +12,10 @@
{{- if eq (.Get "html") "true" -}}
{{- $fileText | safeHTML -}}
{{- else if (.Get "highlight") -}}
- {{ $highlight := .Get "highlight" }}
- {{- if hasSuffix $file $highlight -}}
- {{- highlight $fileText $highlight "" -}}
- {{- else -}}
- {{- highlight (transform.Remarshal $highlight $fileText) $highlight "" -}}
- {{- end -}}
+ {{- highlight $fileText (.Get "highlight") "" -}}
+ {{- else if (.Get "remarshal") -}}
+ {{- $highlight := .Get "remarshal" -}}
+ {{- highlight (transform.Remarshal $highlight $fileText) $highlight "" -}}
{{- else -}}
{{ $fileText | markdownify }}
{{- end -}}
diff --git a/_vendor/modules.txt b/_vendor/modules.txt
index ad464ba250..6f79e04ca6 100644
--- a/_vendor/modules.txt
+++ b/_vendor/modules.txt
@@ -16,7 +16,7 @@
# github.com/chef/compliance-remediation-2022/docs-chef-io v0.0.0-20250722151854-d8ff5d004f5a
# github.com/chef/license-service/docs-chef-io v0.0.0-20250120051510-ae1de80f4621
# github.com/chef/samples v0.0.0-20250424163637-3393187e624c
-# github.com/chef/chef-docs-theme v0.0.0-20250723211808-abbcbdfde6fe
+# github.com/chef/chef-docs-theme v0.0.0-20250730214645-a9e9a891bf29
# github.com/FortAwesome/Font-Awesome v0.0.0-20240108205627-a1232e345536
# github.com/cowboy/jquery-hashchange v0.0.0-20100902193700-0310f3847f90
# github.com/twitter/hogan.js v3.0.2+incompatible
diff --git a/content/style/shortcodes.md b/content/style/shortcodes.md
index 9212073a37..816928e302 100644
--- a/content/style/shortcodes.md
+++ b/content/style/shortcodes.md
@@ -16,49 +16,106 @@ This page describes shortcodes that we use in Chef documentation.
[Shortcodes](https://gohugo.io/content-management/shortcodes/) add short snippets of Hugo code, Markdown, or HTML to a page.
For example, the `readfile` shortcode can add a text file to a page, the `note` shortcode puts text inside an HTML div, and the [automate_cli_commands shortcode](https://github.com/chef/automate/blob/main/components/docs-chef-io/layouts/shortcodes/automate/automate_cli_commands.html) reads through YAML files and outputs formatted text from those files.
-## Notices
+## Accordion list
-Note, warning, and danger notice boxes have a different color than the surrounding text so they can be spotted within a document.
-If you must use a note or warning, bracket the text of the note or warning in a **note**, **warning**, or **danger** shortcode.
+The accordion shortcodes create a [Foundation Framework Accordion](https://get.foundation/sites/docs/accordion.html).
-See the [notices guidelines]({{< relref "notices" >}}) for usage recommendations.
+To add an accordion, wrap the `accordion-list` shortcode around as many `accordion-item` shortcodes as you want.
-### Notes
+The following example creates a basic accordion list with a single list item:
-Add a note using the note shortcode:
+```markdown
+{{* accordion-list */>}}
+{{* accordion-item accordion-title="List item description" */>}}
+Hello, world.
+{{* /accordion-item */>}}
+{{* /accordion-list */>}}
+```
-```md
-{{* note */>}}
+### Parameters
-This is the text of a note.
+#### accordion-list parameters
-{{* /note */>}}
-```
+The `accordion-list` shortcode has the following parameters:
-### Warnings
+`data-multi-expand`
+: Whether more than one list item can be displayed at the same time.
-Add a warning using the warning shortcode.
+ Default value: `false`
-```md
-{{* warning */>}}
+`data-allow-all-closed`
+: Whether all list items can be closed at the same time.
-This is text in a warning.
+ Default value: `false`
-{{* /warning */>}}
-```
+`id`
+: A unique ID on the page. This adds [deep linking](https://get.foundation/sites/docs/accordion.html#deep-linking) to the list. Required if `accordion-title-link` is used in the `accordion-item`.
-### Danger
+#### accordion-item parameters
-Add a danger notice using the danger shortcode.
+The `accordion-item` shortcode has the following parameters:
-```md
-{{* danger */>}}
+`accordion-title`
+: The accordion item title.
-This is text in a warning.
+`accordion-title-link`
+: A link to the accordion list item. This adds [deep linking](https://get.foundation/sites/docs/accordion.html#deep-linking) to the list item. Required if `id` is used in `accordion-list`.
-{{* /danger */>}}
+`is-active`
+: Whether the list item is active by default.
+
+ Default value: `false`
+
+### Examples
+
+The following example creates and accordion with two list items, the second is active by default, all items can be displayed at the same time, and both can be closed at the same time.
+
+```markdown
+{{* accordion-list data-multi-expand="true" data-allow-all-closed="true" */>}}
+{{* accordion-item accordion-title="List item description" */>}}
+Hello, world.
+{{* /accordion-item */>}}
+{{* accordion-item accordion-title="Active item" is-active="true" */>}}
+This is active by default
+{{* /accordion-item */>}}
+{{* /accordion-list */>}}
```
+Which looks like this:
+
+{{< accordion-list data-multi-expand="true" data-allow-all-closed="true" >}}
+{{< accordion-item accordion-title="List item description" >}}
+Hello, world.
+{{< /accordion-item >}}
+{{< accordion-item accordion-title="Active item" is-active="true" >}}
+This is active by default
+{{< /accordion-item >}}
+{{< /accordion-list >}}
+
+The following creates an accordion list with deep linking and the first item is active.
+
+```markdown
+{{* accordion-list id="my-accordion" data-multi-expand="true" data-allow-all-closed="true" */>}}
+ {{* accordion-item accordion-title="Item 1" accordion-title-link="accordion-list-deep-linking-item1" is-active="true" */>}}
+ Content for item 1
+ {{* /accordion-item */>}}
+ {{* accordion-item accordion-title="Item 2" accordion-title-link="accordion-list-deep-linking-item2" */>}}
+ Content for item 2
+ {{* /accordion-item */>}}
+{{* /accordion-list */>}}
+```
+
+Which produces this:
+
+{{< accordion-list id="my-accordion" data-multi-expand="true" data-allow-all-closed="true" >}}
+ {{< accordion-item accordion-title="Item 1" accordion-title-link="accordion-list-deep-linking-item1" is-active="true" >}}
+ Content for item 1
+ {{< /accordion-item >}}
+ {{< accordion-item accordion-title="Item 2" accordion-title-link="accordion-list-deep-linking-item2" >}}
+ Content for item 2
+ {{< /accordion-item >}}
+{{< /accordion-list >}}
+
## `figure` shortcode
Use the figure shortcode to add images to a page.
@@ -284,91 +341,106 @@ and `panel-id`/`panel-link` values must be unique HTML IDs on the page.
-## Accordion list
+## `highlight` shortcode
-The Accordion shortcodes create a [Foundation Framework Accordion](https://get.foundation/sites/docs/accordion.html).
+You can add code examples using the `highlight` shortcode.
-To add an accordion, wrap the `accordion-list` shortcode around as many `accordion-item` shortcodes as you want.
+For example, this:
-The following example creates an accordion list with a single list item:
+
-```markdown
-{{* accordion-list */>}}
-{{* accordion-item accordion-title="List item description" */>}}
-Hello, world.
-{{* /accordion-item */>}}
-{{* /accordion-list */>}}
-```
+ {{* highlight ruby */>}}
+ puts 'Hello, world!'
+ {{* /highlight */>}}
-### Parameters
+
-The `accordion-list` shortcode has the following parameters:
+produces:
-`data-multi-expand`
-: Whether more than one list item can be displayed at the same time.
+{{< highlight ruby >}}
+puts 'Hello, world!'
+{{< / highlight >}}
- Default value: `false`
+## `icons` shortcode
-`data-allow-all-closed`
-: Whether all list items can be closed at the same time.
+The `icons` shortcode renders [Google Material Symbols](https://fonts.google.com/icons) into a page.
- Default value: `false`
+It accepts the following parameters:
-The `accordion-item` shortcode has the following parameters:
+`icon`
+: The Material Symbols icon name.
-`accordion-title`
-: The accordion item title.
+`class`
+: Add the icon class.
-`is-active`
-: Whether the list item is active by default.
+ Required value: `material-symbols-outlined`
- Default value: `false`
+ Optional value: `icon-filled`. This renders the filled version of the icon.
### Examples
-The following example creates and accordion with two list items, the second is active by default, all items can be displayed at the same time, and both can be closed at the same time.
+To add an icon, define the class and icon name. For example, this adds [Material Symbols description icon](https://fonts.google.com/icons?selected=Material+Symbols+Outlined:description:FILL@0;wght@400;GRAD@0;opsz@24&icon.query=description&icon.size=24&icon.color=%231f1f1f&icon.set=Material+Symbols&icon.style=Outlined):
-```markdown
-{{* accordion-list data-multi-expand="true" data-allow-all-closed="true" */>}}
-{{* accordion-item accordion-title="List item description" */>}}
-Hello, world.
-{{* /accordion-item */>}}
-{{* accordion-item accordion-title="Active item" is-active="true" */>}}
-This is active by default
-{{* /accordion-item */>}}
-{{* /accordion-list */>}}
+```md
+Download {{* icons class="material-symbols-outlined" icon="description" */>}} the file.
```
Which looks like this:
-{{< accordion-list data-multi-expand="true" data-allow-all-closed="true" >}}
-{{< accordion-item accordion-title="List item description" >}}
-Hello, world.
-{{< /accordion-item >}}
-{{< accordion-item accordion-title="Active item" is-active="true" >}}
-This is active by default
-{{< /accordion-item >}}
-{{< /accordion-list >}}
+Download {{< icons class="material-symbols-outlined" icon="description" >}} the file.
-## `highlight` shortcode
+You can add the [filled description icon](https://fonts.google.com/icons?selected=Material+Symbols+Outlined:description:FILL@1;wght@400;GRAD@0;opsz@24&icon.size=24&icon.color=%231f1f1f&icon.set=Material+Symbols) by adding the `icon-filled` class:
-You can add code examples using the `highlight` shortcode.
+```md
+Download {{* icons class="material-symbols-outlined icon-filled" icon="description" */>}} the file.
+```
-For example, this:
+Which looks like this:
-
+Download {{< icons class="material-symbols-outlined icon-filled" icon="description" >}} the file.
- {{* highlight ruby */>}}
- puts 'Hello, world!'
- {{* /highlight */>}}
+## Notices
-
+Note, warning, and danger notice boxes have a different color than the surrounding text so they can be spotted within a document.
+If you must use a note or warning, bracket the text of the note or warning in a **note**, **warning**, or **danger** shortcode.
-produces:
+See the [notices guidelines]({{< relref "notices" >}}) for usage recommendations.
-{{< highlight ruby >}}
-puts 'Hello, world!'
-{{< / highlight >}}
+### Notes
+
+Add a note using the note shortcode:
+
+```md
+{{* note */>}}
+
+This is the text of a note.
+
+{{* /note */>}}
+```
+
+### Warnings
+
+Add a warning using the warning shortcode.
+
+```md
+{{* warning */>}}
+
+This is text in a warning.
+
+{{* /warning */>}}
+```
+
+### Danger
+
+Add a danger notice using the danger shortcode.
+
+```md
+{{* danger */>}}
+
+This is text in a warning.
+
+{{* /danger */>}}
+```
## `readfile` shortcode
@@ -400,6 +472,12 @@ or:
See the [full list of highlighting languages and aliases](https://gohugo.io/content-management/syntax-highlighting/#list-of-chroma-highlighting-languages) that Hugo accepts.
+It also converts between JSON, YAML, TOML, and XML data types using the `remarshal` option. For example:
+
+```md
+{{* readfile file="data/test/test.json" remarshal="yaml" */>}}
+```
+
## `relref` shortcode
We recommend using Hugo's built-in [relref shortcode](https://gohugo.io/content-management/shortcodes/#ref-and-relref) for making relative links to other pages in Chef's documentation.
@@ -423,44 +501,6 @@ To format links to headings:
{{< /note >}}
-## `icons` shortcode
-
-The `icons` shortcode renders [Google Material Symbols](https://fonts.google.com/icons) into a page.
-
-It accepts the following parameters:
-
-`icon`
-: The Material Symbols icon name.
-
-`class`
-: Add the icon class.
-
- Required value: `material-symbols-outlined`
-
- Optional value: `icon-filled`. This renders the filled version of the icon.
-
-### Examples
-
-To add an icon, define the class and icon name. For example, this adds [Material Symbols description icon](https://fonts.google.com/icons?selected=Material+Symbols+Outlined:description:FILL@0;wght@400;GRAD@0;opsz@24&icon.query=description&icon.size=24&icon.color=%231f1f1f&icon.set=Material+Symbols&icon.style=Outlined):
-
-```md
-Download {{* icons class="material-symbols-outlined" icon="description" */>}} the file.
-```
-
-Which looks like this:
-
-Download {{< icons class="material-symbols-outlined" icon="description" >}} the file.
-
-You can add the [filled description icon](https://fonts.google.com/icons?selected=Material+Symbols+Outlined:description:FILL@1;wght@400;GRAD@0;opsz@24&icon.size=24&icon.color=%231f1f1f&icon.set=Material+Symbols) by adding the `icon-filled` class:
-
-```md
-Download {{* icons class="material-symbols-outlined icon-filled" icon="description" */>}} the file.
-```
-
-Which looks like this:
-
-Download {{< icons class="material-symbols-outlined icon-filled" icon="description" >}} the file.
-
## Create a new shortcode
You can create shortcodes in Markdown or HTML format in [`layouts/shortcodes`](https://github.com/chef/chef-web-docs/tree/main/layouts/shortcodes) or in the [chef/chef-docs-theme repository `layouts/shortcodes` directory](https://github.com/chef/chef-docs-theme/tree/main/layouts/shortcodes).
diff --git a/content/style/test.md b/content/style/test.md
index a6feae6b60..56041f79ba 100644
--- a/content/style/test.md
+++ b/content/style/test.md
@@ -71,76 +71,6 @@ culpa qui officia deserunt mollit anim id est laborum.
-## `readfile` shortcode
-
-Use the `readfile` shortcode to add file text to a page. This could be Markdown text or a code sample.
-
-### Markdown
-
-It's default is to add a Markdown file to a page:
-
-```md
-{{* readfile file="path/to/markdown.md" */>}}
-```
-
-### Code highlighting
-
-It handles code highlighting. See the [Hugo documentation](https://gohugo.io/content-management/syntax-highlighting/#list-of-chroma-highlighting-languages) for a full list of syntaxes that it can highlight.
-
-You can add a JSON file like this:
-
-```md
-{{* readfile file="data/test/test.json" highlight="json" */>}}
-```
-
-which produces this:
-
-{{< readfile file="data/test/test.json" highlight="json" >}}
-
-It also converts data between XML, JSON, YAML, and TOML if the highlight value is different from the file type. For example:
-
-```md
-{{* readfile file="data/test/test.json" highlight="yaml" */>}}
-```
-
-Which produces this:
-
-{{< readfile file="data/test/test.json" highlight="yaml" >}}
-
-It converts the data to alphabetical order, there's no way to change this behavior.
-
-### Ordered list
-
-If adding file text to an ordered list, you have to format and indent it correctly or it won't display data correctly. Note the three spaces and Markdown shortcode style.
-
-```md
-1. A data file:
-
- {{%/* readfile file="data/test/test.json" highlight="json" */%}}
-
-1. The same data file:
-
- {{%/* readfile file="data/test/test.json" highlight="json" */%}}
-```
-
-Which produces the following:
-
-1. A data file:
-
- {{% readfile file="data/test/test.json" highlight="json" %}}
-
-1. The same data file:
-
- {{% readfile file="data/test/test.json" highlight="json" %}}
-
-### HTML
-
-You can use `html="true"` to add an HTML file:
-
-```md
-{{* readfile file="path/to/html_file.html" html="true" */>}}
-```
-
## Lists
Markdown doesn't have strict rules about how to process lists. These are things to keep in
@@ -474,110 +404,6 @@ Checklists are an unordered list with a checkbox.
- [ ] This is a checklist item
- [x] This is a selected checklist item
-### Tab panels
-
-
-
-{{< foundation_tabs tabs-id="ruby-python-go-panel" >}}
- {{< foundation_tab active="true" panel-link="ruby-panel" tab-text="Ruby">}}
- {{< foundation_tab panel-link="python-panel" tab-text="Python" >}}
- {{< foundation_tab panel-link="golang-panel" tab-text="Go" >}}
- {{< foundation_tab panel-link="note-panel" tab-text="Notes" >}}
-{{< /foundation_tabs >}}
-
-{{< foundation_tabs_panels tabs-id="ruby-python-go-panel" >}}
- {{< foundation_tabs_panel active="true" panel-id="ruby-panel" >}}
- ```ruby
- puts 'Hello, world!'
- ```
- {{< /foundation_tabs_panel >}}
-
- {{< foundation_tabs_panel panel-id="python-panel" >}}
- ```python
- print('Hello, world!')
- ```
- {{< /foundation_tabs_panel >}}
- {{< foundation_tabs_panel panel-id="golang-panel" >}}
- ```go
- package main
-
- import "fmt"
-
- func main() {
- fmt.Println("Hello, world!")
- }
- ```
- {{< /foundation_tabs_panel >}}
- {{< foundation_tabs_panel panel-id="note-panel" >}}
- This tests how notes function in a panel.
-
- {{< note >}}
-
- Some words in a note.
-
- ```ruby
- puts 'Hello, world!'
- ```
-
- {{< /note >}}
- {{< /foundation_tabs_panel >}}
-{{< /foundation_tabs_panels >}}
-
-
-
-### Accordions
-
-Basic two item accordion:
-
-{{< accordion-list data-multi-expand="true" data-allow-all-closed="true" >}}
-{{< accordion-item accordion-title="List item description" >}}
-Hello, world.
-{{< /accordion-item >}}
-{{< accordion-item accordion-title="Active item" is-active="true" >}}
-This is active by default
-{{< /accordion-item >}}
-{{< /accordion-list >}}
-
-Accordion in an ordered list:
-
-
-
-These are procedures:
-
-1. Do this.
-
-1. Do that:
-
- {{< accordion-list data-multi-expand="true" data-allow-all-closed="true" >}}
- {{< accordion-item accordion-title="Active item" is-active="true" >}}
- This is active by default
-
- ```json
- {
- "This": "is a sample json",
- "for": "markdown and Hugo testing."
- }
- ```
- {{< /accordion-item >}}
- {{< /accordion-list >}}
-
-Accordion in an unordered list:
-
-This is a list:
-
-- Some text
-
- {{< accordion-list data-multi-expand="true" data-allow-all-closed="true" >}}
- {{< accordion-item accordion-title="List item description" >}}
- Hello, world.
- {{< /accordion-item >}}
- {{< accordion-item accordion-title="Active item" is-active="true" >}}
- This is active by default
- {{< /accordion-item >}}
- {{< /accordion-list >}}
-
-
-
## Code
### Code blocks
@@ -776,30 +602,107 @@ A blockquote offsets text visually, but without the visual prominence of
> ```
>
-### Admonitions
+## Buttons
-Admonitions (notes, warnings, etc) use Hugo shortcodes.
+To create a link that looks like a button, just add the `button` class to a link tag.
-{{< note >}}
-Notes catch the reader's attention without a sense of urgency.
+```html
+Link To Button Heading
+```
-You can have multiple paragraphs and block-level elements inside an admonition.
+
+Link To Button Heading
-| Or | a | table |
-|----|----|----|
-|Like| this | one |
+Disabled button:
-{{< /note >}}
+Link To Button Heading
+
-{{< warning >}}
-Warnings point out something that could cause harm if ignored.
-{{< /warning >}}
+## Shortcodes
-{{< danger >}}
-The reader should proceed with caution. Ignoring this could break their deployment.
-{{< /danger >}}
+### `readfile` shortcode
+
+Use the `readfile` shortcode to add file text to a page. This could be Markdown text or a code sample.
+
+#### Markdown file
+
+It's default is to add a Markdown file to a page:
+
+```md
+{{* readfile file="path/to/markdown.md" */>}}
+```
+
+#### Code highlighting
-## `icons` shortcode
+It handles code highlighting. See the [Hugo documentation](https://gohugo.io/content-management/syntax-highlighting/#list-of-chroma-highlighting-languages) for a full list of syntaxes that it can highlight.
+
+You can add a JSON file like this:
+
+```md
+{{* readfile file="data/test/test.json" highlight="json" */>}}
+```
+
+which produces this:
+
+{{< readfile file="data/test/test.json" highlight="json" >}}
+
+And adding it to a list:
+
+1. List item.
+
+ {{% readfile file="data/test/test.json" highlight="json" %}}
+
+1. Next item.
+
+It also converts data between XML, JSON, YAML, and TOML if the highlight value is different from the file type. For example:
+
+```md
+{{* readfile file="data/test/test.json" remarshal="yaml" */>}}
+```
+
+Which produces this:
+
+{{< readfile file="data/test/test.json" remarshal="yaml" >}}
+
+It converts the data to alphabetical order, there's no way to change this behavior.
+
+#### Ordered list
+
+If adding file text to an ordered list, you have to format and indent it correctly or it won't display data correctly. Note the three spaces and Markdown shortcode style.
+
+```md
+1. A data file:
+
+ {{%/* readfile file="data/test/test.json" highlight="json" */%}}
+
+1. The same data file in YAML format:
+
+ {{%/* readfile file="data/test/test.json" remarshal="toml" */%}}
+```
+
+Which produces the following:
+
+1. A data file:
+
+ {{% readfile file="data/test/test.json" highlight="json" %}}
+
+1. The same data file in YAML format:
+
+ {{% readfile file="data/test/test.json" remarshal="toml" %}}
+
+#### HTML
+
+You can use `html="true"` to add an HTML file:
+
+```md
+{{* readfile file="path/to/html_file.html" html="true" */>}}
+```
+
+### `fontawesome` shortcode
+
+{{< readfile file="content/style/reusable/md/fontawesome_shortcode.md" >}}
+
+### `icons` shortcode
The icons shortcode adds a [Google Material Symbols icon](https://fonts.google.com/icons) to a page:
@@ -829,52 +732,158 @@ Icons in a list:
1. This is an icon {{< icons class="material-symbols-outlined icon-filled" icon="description" >}} in a list item.
1. Next list item.
-## Buttons
+### Foundation tabs and panels
-To create a link that looks like a button, just add the `button` class to a link tag.
+The following is based on [Foundation's tabs](https://get.foundation/sites/docs/tabs.html)
-```html
-Link To Button Heading
+
+
+{{< foundation_tabs tabs-id="other-ruby-python-go-panel" >}}
+ {{< foundation_tab active="true" panel-link="other-ruby-panel" tab-text="Ruby">}}
+ {{< foundation_tab panel-link="other-python-panel" tab-text="Python" >}}
+ {{< foundation_tab panel-link="other-golang-panel" tab-text="Go" >}}
+ {{< foundation_tab panel-link="other-lorem-panel" tab-text="Sit voluptate amet est fugiat cillum veniam qui quis non non veniam consequat." >}}
+ {{< foundation_tab panel-link="other-other-lorem-panel" tab-text="Cupidatat pariatur qui cillum cupidatat fugiat ad ipsum aliquip cupidatat." >}}
+ {{< foundation_tab panel-link="other-other-other-lorem-panel" tab-text="Do et sint duis reprehenderit qui dolore ut incididunt fugiat labore Lorem quis voluptate." >}}
+ {{< foundation_tab panel-link="other-more-panel" tab-text="More" >}}
+ {{< foundation_tab panel-link="other-other-more-panel" tab-text="Other More" >}}
+{{< /foundation_tabs >}}
+
+{{< foundation_tabs_panels tabs-id="other-ruby-python-go-panel" >}}
+
+{{< foundation_tabs_panel active="true" panel-id="other-ruby-panel" >}}
+
+```ruby
+puts 'Hello, world!'
```
-
-Link To Button Heading
+{{< /foundation_tabs_panel >}}
-Disabled button:
+{{< foundation_tabs_panel panel-id="other-python-panel" >}}
-Link To Button Heading
-
+```python
+print('Hello, world!')
+```
-## Recommend
+{{< /foundation_tabs_panel >}}
-Recommend shortcode blocks used in the style guide.
+{{< foundation_tabs_panel panel-id="other-golang-panel" >}}
-{{< recommend not >}}
-You should back up the server.
-{{< /recommend >}}
+```go
+package main
-{{< recommend >}}
-Back up the server.
-{{< /recommend >}}
+import "fmt"
-Recommend inside a list:
+func main() {
+ fmt.Println("Hello, world!")
+}
+```
-- item 1
-- item 2
+{{< /foundation_tabs_panel >}}
- {{< recommend not >}}
- You should back up the server.
- {{< /recommend >}}
+{{< foundation_tabs_panel panel-id="other-lorem-panel" >}}
- - subitem 1
+Tempor minim cillum quis enim incididunt do exercitation sunt cupidatat exercitation esse elit eu.
+Elit exercitation sunt culpa anim laborum sunt elit aliqua consectetur. Officia commodo adipisicing occaecat excepteur exercitation amet exercitation officia eu qui non. Aute qui laboris aute amet minim elit magna tempor adipisicing ut eiusmod commodo occaecat sint. Exercitation occaecat pariatur elit ipsum proident incididunt reprehenderit.
- {{< recommend >}}
- Back up the server.
- {{< /recommend >}}
+{{< /foundation_tabs_panel >}}
+{{< foundation_tabs_panel panel-id="other-other-lorem-panel" >}}
+
+Ea cupidatat quis fugiat minim irure esse incididunt cillum. Adipisicing qui laboris anim nostrud deserunt ad voluptate. Excepteur dolore duis commodo aute irure consequat. Aute ullamco consequat esse sit tempor aliquip pariatur exercitation. Laboris aliquip deserunt aliquip enim consequat anim veniam fugiat magna proident. Dolore minim do ea ex qui culpa et. Laborum nisi irure cupidatat quis adipisicing.
+
+{{< /foundation_tabs_panel >}}
+{{< foundation_tabs_panel panel-id="other-other-other-lorem-panel" >}}
+
+Magna ex mollit Lorem ea proident fugiat culpa qui ut eu id aliqua. Cupidatat culpa dolore in commodo officia fugiat reprehenderit et fugiat consequat nostrud culpa enim cupidatat. Dolor quis consectetur veniam dolore esse proident esse quis sint culpa anim aute.
-## Notices
+Irure est sunt cupidatat laboris. Proident irure ad Lorem enim laboris minim et exercitation commodo Lorem dolor officia. Et non consectetur occaecat labore nulla. Est ut voluptate nulla occaecat do esse magna ea.
-### Notes
+{{< /foundation_tabs_panel >}}
+{{< foundation_tabs_panel panel-id="other-more-panel" >}}
+
+Just testing to see what a lot of tabs would look like.
+
+{{< /foundation_tabs_panel >}}
+{{< foundation_tabs_panel panel-id="other-other-more-panel" >}}
+
+Looks alright.
+
+{{< /foundation_tabs_panel >}}
+{{< /foundation_tabs_panels >}}
+
+### Foundation accordion list
+
+The Accordion shortcodes create a [Foundation Framework Accordion](https://get.foundation/sites/docs/accordion.html).
+
+{{< accordion-list data-multi-expand="true" data-allow-all-closed="true" >}}
+{{< accordion-item accordion-title="List item description" >}}
+Hello, world.
+{{< /accordion-item >}}
+{{< accordion-item accordion-title="Active item" is-active="true" >}}
+This is active by default
+{{< /accordion-item >}}
+{{< /accordion-list >}}
+
+This tests [deep linking](https://get.foundation/sites/docs/accordion.html#accordion-and-urls) by setting an ID:
+
+{{< accordion-list data-multi-expand="true" data-allow-all-closed="true" id="test-deep-link" >}}
+{{< accordion-item accordion-title="List item description" accordion-title-link="test-deep-link-title-1" >}}
+This test deep linking.
+{{< /accordion-item >}}
+{{< accordion-item accordion-title="Active item" is-active="true" accordion-title-link="test-deep-link-title-2">}}
+This test deep linking and is active by default.
+{{< /accordion-item >}}
+{{< /accordion-list >}}
+
+Accordion in an ordered list:
+
+
+
+These are procedures:
+
+1. Do this.
+
+1. Do that:
+
+ {{< accordion-list data-multi-expand="true" data-allow-all-closed="true" >}}
+ {{< accordion-item accordion-title="Active item" is-active="true" >}}
+ This is active by default
+
+ ```json
+ {
+ "This": "is a sample json",
+ "for": "markdown and Hugo testing."
+ }
+ ```
+ {{< /accordion-item >}}
+ {{< /accordion-list >}}
+
+Accordion in an unordered list:
+
+This is a list:
+
+- Some text
+
+ {{< accordion-list data-multi-expand="true" data-allow-all-closed="true" >}}
+ {{< accordion-item accordion-title="List item description" >}}
+ Hello, world.
+ {{< /accordion-item >}}
+ {{< accordion-item accordion-title="Active item" is-active="true" >}}
+ This is active by default
+ {{< /accordion-item >}}
+ {{< /accordion-list >}}
+
+
+
+### highlight shortcode
+
+{{< highlight ruby >}}
+puts 'Hello, world!'
+{{< / highlight >}}
+
+### Notices
+
+#### Notes
{{< note >}}
@@ -882,7 +891,7 @@ This is the text of a note.
{{< /note >}}
-### Warnings
+#### Warnings
{{< warning >}}
@@ -890,7 +899,7 @@ This is text in a warning.
{{< /warning >}}
-### Danger
+#### Danger
{{< danger >}}
@@ -898,7 +907,7 @@ This is text in a danger notice.
{{< /danger >}}
-### Beta
+#### Beta
{{< beta >}}
@@ -919,3 +928,30 @@ The first line in multiple paragraphs gets bumped below the Beta div.
Id minim deserunt et ullamco quis minim consectetur esse esse reprehenderit. Commodo exercitation consequat laboris laborum aliquip cillum veniam. Et ad dolor quis deserunt duis excepteur voluptate exercitation officia dolore minim consectetur elit.
{{< /beta >}}
+
+#### Recommend
+
+Recommend shortcode blocks used in the style guide.
+
+{{< recommend not >}}
+You should back up the server.
+{{< /recommend >}}
+
+{{< recommend >}}
+Back up the server.
+{{< /recommend >}}
+
+Recommend inside a list:
+
+- item 1
+- item 2
+
+ {{< recommend not >}}
+ You should back up the server.
+ {{< /recommend >}}
+
+ - subitem 1
+
+ {{< recommend >}}
+ Back up the server.
+ {{< /recommend >}}
diff --git a/go.mod b/go.mod
index d2acd6ec43..c4050d93d4 100644
--- a/go.mod
+++ b/go.mod
@@ -4,7 +4,7 @@ go 1.24.2
require (
github.com/chef/automate/components/docs-chef-io v0.0.0-20250617123043-e9e3b2463824 // indirect
- github.com/chef/chef-docs-theme v0.0.0-20250723211808-abbcbdfde6fe // indirect
+ github.com/chef/chef-docs-theme v0.0.0-20250730214645-a9e9a891bf29 // indirect
github.com/chef/chef-server/docs-chef-io v0.0.0-20250414141619-a0fb7ff68e94 // indirect
github.com/chef/chef-workstation/docs-chef-io v0.0.0-20250718131033-13973a5c0863 // indirect
github.com/chef/compliance-profiles/docs-chef-io v0.0.0-20250722110428-aefe0c6afb6a // indirect
diff --git a/go.sum b/go.sum
index 25ccc9f3ee..70f5563a58 100644
--- a/go.sum
+++ b/go.sum
@@ -1,7 +1,7 @@
github.com/chef/automate/components/docs-chef-io v0.0.0-20250617123043-e9e3b2463824 h1:K1jZj4ISjLOgvpGm42YrpdRHwbZQX5juZOXbwj5N+78=
github.com/chef/automate/components/docs-chef-io v0.0.0-20250617123043-e9e3b2463824/go.mod h1:juvLC7Rt33YOCgJ5nnfl4rWZRAbSwqjTbWmcAoA0LtU=
-github.com/chef/chef-docs-theme v0.0.0-20250723211808-abbcbdfde6fe h1:Tofl36GyAWlpaCeEMwECPLagUobBeT4Drl8ceS1AxbA=
-github.com/chef/chef-docs-theme v0.0.0-20250723211808-abbcbdfde6fe/go.mod h1:+Jpnv+LXE6dXu2xDcMzMc0RxRGuCPAoFxq5tJ/X6QpQ=
+github.com/chef/chef-docs-theme v0.0.0-20250730214645-a9e9a891bf29 h1:TJ4+n4ddinBHnUFlwEbr2yRb0gdVzZzBxjBe9LXUWao=
+github.com/chef/chef-docs-theme v0.0.0-20250730214645-a9e9a891bf29/go.mod h1:+Jpnv+LXE6dXu2xDcMzMc0RxRGuCPAoFxq5tJ/X6QpQ=
github.com/chef/chef-server/docs-chef-io v0.0.0-20250414141619-a0fb7ff68e94 h1:YpF+MQ2CQ0V/sOtGrTCxa+Lpd5J9iR6ADDkrdSMqtw0=
github.com/chef/chef-server/docs-chef-io v0.0.0-20250414141619-a0fb7ff68e94/go.mod h1:gMSa25GUHmLimA0gjvRd3hs1buOBqkKPrdHzHvaJauY=
github.com/chef/chef-workstation/docs-chef-io v0.0.0-20250718131033-13973a5c0863 h1:NgaLqTscmj0Ykj7tlTwMw8DDXPt7y/AynYvipPYL8oY=