@redpanda-data/docs-extensions-and-macros 5.0.4 → 5.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,576 @@
1
+ {{!-- Cloud-only wrapper start --}}
2
+ {{#if cloudOnly}}
3
+ ifdef::env-cloud[]
4
+ {{/if}}
5
+ {{!-- Self-hosted-only wrapper start --}}
6
+ {{#if selfHostedOnly}}
7
+ ifndef::env-cloud[]
8
+ {{/if}}
9
+ = {{commandPath}}
10
+ :description: {{{wrapDescriptionPassthrough shortDesc}}}
11
+ {{#if pageAliases}}
12
+ :page-aliases: {{{pageAliases}}}
13
+ {{/if}}
14
+ {{#if pagePlatforms}}
15
+ :page-platforms: {{pagePlatforms}}
16
+ {{/if}}
17
+ {{#if deprecated}}
18
+ :page-deprecated: true
19
+ {{/if}}
20
+
21
+ // This content is autogenerated. Do not edit manually. To customize content, see the writer's guide: https://github.com/redpanda-data/docs-extensions-and-macros/blob/main/docs-data/RPK_OVERRIDES_GUIDE.adoc
22
+ {{#each pageAttributes}}
23
+ :{{@key}}: {{this}}
24
+ {{/each}}
25
+
26
+ // tag::single-source[]
27
+ {{!-- Deprecation notice --}}
28
+ {{#if deprecated}}
29
+ [CAUTION]
30
+ ====
31
+ This command is deprecated{{#if deprecatedInVersion}} as of {{deprecatedInVersion}}{{/if}}{{#if removedInVersion}} and will be removed in {{removedInVersion}}{{/if}}.{{#if replacement}} {{{replacement}}}{{/if}}{{#if deprecatedMessage}} {{{deprecatedMessage}}}{{/if}}
32
+ ====
33
+
34
+ {{/if}}
35
+ {{!-- Admonitions after header --}}
36
+ {{#if admonitions.afterHeader}}
37
+ {{{admonitions.afterHeader}}}
38
+
39
+ {{/if}}
40
+ {{!-- Cloud-only content after header --}}
41
+ {{#if cloudContent.afterHeader}}
42
+ ifdef::env-cloud[]
43
+ {{{cloudContent.afterHeader}}}
44
+ endif::[]
45
+
46
+ {{/if}}
47
+ {{!-- Self-hosted content after header --}}
48
+ {{#if selfHostedContent.afterHeader}}
49
+ ifndef::env-cloud[]
50
+ {{{selfHostedContent.afterHeader}}}
51
+ endif::[]
52
+
53
+ {{/if}}
54
+ {{!-- Includes after header --}}
55
+ {{#each includes.afterHeader}}
56
+ include::{{{this}}}[]
57
+
58
+ {{/each}}
59
+ {{!-- Custom sections positioned after header --}}
60
+ {{#each customSectionsByPosition.after_header}}
61
+ {{> content-item this commandPath=../commandPath}}
62
+ {{/each}}
63
+ {{#if (eq descriptionScope "self-hosted")}}
64
+ ifndef::env-cloud[]
65
+ {{{description}}}
66
+ endif::[]
67
+ {{else if (eq descriptionScope "cloud-only")}}
68
+ ifdef::env-cloud[]
69
+ {{{description}}}
70
+ endif::[]
71
+ {{else}}
72
+ {{{description}}}
73
+ {{/if}}
74
+
75
+ {{#if isLinuxOnly}}
76
+ NOTE: This command is only available on Linux.
77
+
78
+ {{/if}}
79
+ {{#if isDarwinOnly}}
80
+ NOTE: This command is only available on macOS.
81
+
82
+ {{/if}}
83
+ {{#if introducedInVersion}}
84
+ NOTE: This command was introduced in{{#if pluginName}} {{pluginName}}{{/if}} version {{introducedInVersion}}.
85
+
86
+ {{/if}}
87
+ {{#if minVersion}}
88
+ NOTE: This command requires rpk version {{minVersion}} or later.
89
+
90
+ {{/if}}
91
+ {{!-- Admonitions after description --}}
92
+ {{#if admonitions.afterDescription}}
93
+ {{{admonitions.afterDescription}}}
94
+
95
+ {{/if}}
96
+ {{!-- Cloud-only content after description --}}
97
+ {{#if cloudContent.afterDescription}}
98
+ ifdef::env-cloud[]
99
+ {{{cloudContent.afterDescription}}}
100
+ endif::[]
101
+
102
+ {{/if}}
103
+ {{!-- Self-hosted content after description --}}
104
+ {{#if selfHostedContent.afterDescription}}
105
+ ifndef::env-cloud[]
106
+ {{{selfHostedContent.afterDescription}}}
107
+ endif::[]
108
+
109
+ {{/if}}
110
+ {{!-- Includes after description --}}
111
+ {{#each includes.afterDescription}}
112
+ include::{{{this}}}[]
113
+
114
+ {{/each}}
115
+ {{!-- Custom sections positioned after description --}}
116
+ {{#each customSectionsByPosition.after_description}}
117
+ {{> content-item this commandPath=../commandPath}}
118
+ {{/each}}
119
+ {{!-- Prerequisites section --}}
120
+ {{#if hasPrerequisites}}
121
+ == Prerequisites
122
+
123
+ {{#each prerequisites}}
124
+ * {{{this}}}
125
+ {{/each}}
126
+
127
+ {{/if}}
128
+ {{#if usage}}
129
+ == Usage
130
+
131
+ [,bash]
132
+ ----
133
+ {{{usage}}}
134
+ ----
135
+ {{/if}}
136
+
137
+ {{!-- Admonitions after usage --}}
138
+ {{#if admonitions.afterUsage}}
139
+ {{{admonitions.afterUsage}}}
140
+
141
+ {{/if}}
142
+ {{!-- Cloud-only content after usage --}}
143
+ {{#if cloudContent.afterUsage}}
144
+ ifdef::env-cloud[]
145
+ {{{cloudContent.afterUsage}}}
146
+ endif::[]
147
+
148
+ {{/if}}
149
+ {{!-- Self-hosted content after usage --}}
150
+ {{#if selfHostedContent.afterUsage}}
151
+ ifndef::env-cloud[]
152
+ {{{selfHostedContent.afterUsage}}}
153
+ endif::[]
154
+
155
+ {{/if}}
156
+ {{!-- Includes after usage --}}
157
+ {{#each includes.afterUsage}}
158
+ include::{{{this}}}[]
159
+
160
+ {{/each}}
161
+ {{!-- Custom sections positioned after usage --}}
162
+ {{#each customSectionsByPosition.after_usage}}
163
+ {{> content-item this commandPath=../commandPath}}
164
+ {{/each}}
165
+
166
+ {{!-- All sections from rpk source appear as subsections (===) under Usage --}}
167
+ {{#if (lookup sections "COMMON FILES")}}
168
+ === Common files
169
+
170
+ {{{lookup sections "COMMON FILES"}}}
171
+
172
+ {{/if}}
173
+ {{#if (lookup sections "BARE-METAL")}}
174
+ === Bare-metal
175
+
176
+ {{{lookup sections "BARE-METAL"}}}
177
+
178
+ {{/if}}
179
+ {{#if sections.KUBERNETES}}
180
+ === Kubernetes
181
+
182
+ {{{sections.KUBERNETES}}}
183
+
184
+ {{/if}}
185
+ {{#if (lookup sections "EXTRA REQUESTS FOR PARTITIONS")}}
186
+ === Extra requests for partitions
187
+
188
+ {{{lookup sections "EXTRA REQUESTS FOR PARTITIONS"}}}
189
+
190
+ {{/if}}
191
+ {{#if sections.FORMAT}}
192
+ === Format
193
+
194
+ {{{sections.FORMAT}}}
195
+
196
+ {{/if}}
197
+ {{#if sections.COLORS}}
198
+ === Colors
199
+
200
+ {{{sections.COLORS}}}
201
+
202
+ {{/if}}
203
+ {{#if sections.MODIFIERS}}
204
+ === Modifiers
205
+
206
+ {{{sections.MODIFIERS}}}
207
+
208
+ {{/if}}
209
+ {{#if (lookup sections "RAW MODE")}}
210
+ === Raw mode
211
+
212
+ {{{lookup sections "RAW MODE"}}}
213
+
214
+ {{/if}}
215
+ {{#if sections.PRINCIPALS}}
216
+ === Principals
217
+
218
+ {{{sections.PRINCIPALS}}}
219
+
220
+ {{/if}}
221
+ {{#if sections.ROLES}}
222
+ === Roles
223
+
224
+ {{{sections.ROLES}}}
225
+
226
+ {{/if}}
227
+ {{#if sections.HOSTS}}
228
+ === Hosts
229
+
230
+ {{{sections.HOSTS}}}
231
+
232
+ {{/if}}
233
+ {{#if sections.RESOURCES}}
234
+ === Resources
235
+
236
+ {{{sections.RESOURCES}}}
237
+
238
+ {{/if}}
239
+ {{#if sections.OPERATIONS}}
240
+ === Operations
241
+
242
+ {{{sections.OPERATIONS}}}
243
+
244
+ {{/if}}
245
+ {{#if sections.PERMISSIONS}}
246
+ === Permissions
247
+
248
+ {{{sections.PERMISSIONS}}}
249
+
250
+ {{/if}}
251
+ {{#if sections.MANAGEMENT}}
252
+ === Management
253
+
254
+ {{{sections.MANAGEMENT}}}
255
+
256
+ {{/if}}
257
+ {{#if sections.NUMBERS}}
258
+ === Numbers
259
+
260
+ {{{sections.NUMBERS}}}
261
+
262
+ {{/if}}
263
+ {{#if sections.TEXT}}
264
+ === Text
265
+
266
+ {{{sections.TEXT}}}
267
+
268
+ {{/if}}
269
+ {{#if sections.HEADERS}}
270
+ === Headers
271
+
272
+ {{{sections.HEADERS}}}
273
+
274
+ {{/if}}
275
+ {{#if sections.ATTRIBUTES}}
276
+ === Attributes
277
+
278
+ {{{sections.ATTRIBUTES}}}
279
+
280
+ {{/if}}
281
+ {{#if sections.OFFSETS}}
282
+ === Offsets
283
+
284
+ {{{sections.OFFSETS}}}
285
+
286
+ {{/if}}
287
+ {{#if sections.VALUES}}
288
+ === Values
289
+
290
+ {{{sections.VALUES}}}
291
+
292
+ {{/if}}
293
+ {{#if (lookup sections "SCHEMA-REGISTRY")}}
294
+ === Schema registry
295
+
296
+ {{{lookup sections "SCHEMA-REGISTRY"}}}
297
+
298
+ {{/if}}
299
+ {{#if sections.TOMBSTONES}}
300
+ === Tombstones
301
+
302
+ {{{sections.TOMBSTONES}}}
303
+
304
+ {{/if}}
305
+ {{!-- Unknown sections also as subsections --}}
306
+ {{#if hasUnknownSections}}
307
+ {{#each unknownSections}}
308
+ === {{{sectionTitle name}}}
309
+
310
+ {{{content}}}
311
+
312
+ {{/each}}
313
+ {{/if}}
314
+ {{#if sections.MISC}}
315
+ === Miscellaneous
316
+
317
+ {{{sections.MISC}}}
318
+
319
+ {{/if}}
320
+ {{#if sections.NOTES}}
321
+ === Notes
322
+
323
+ {{{sections.NOTES}}}
324
+ {{/if}}
325
+
326
+ {{#if aliases.length}}
327
+ == Aliases
328
+
329
+ [,bash]
330
+ ----
331
+ {{#each aliases}}
332
+ {{this}}
333
+ {{/each}}
334
+ ----
335
+ {{#if aliasNotes}}
336
+
337
+ NOTE: {{{aliasNotes}}}
338
+ {{/if}}
339
+ {{/if}}
340
+
341
+ {{!-- Admonitions after aliases --}}
342
+ {{#if admonitions.afterAliases}}
343
+ {{{admonitions.afterAliases}}}
344
+
345
+ {{/if}}
346
+ {{!-- Cloud-only content after aliases --}}
347
+ {{#if cloudContent.afterAliases}}
348
+ ifdef::env-cloud[]
349
+ {{{cloudContent.afterAliases}}}
350
+ endif::[]
351
+
352
+ {{/if}}
353
+ {{!-- Self-hosted content after aliases --}}
354
+ {{#if selfHostedContent.afterAliases}}
355
+ ifndef::env-cloud[]
356
+ {{{selfHostedContent.afterAliases}}}
357
+ endif::[]
358
+
359
+ {{/if}}
360
+ {{!-- Includes after aliases --}}
361
+ {{#each includes.afterAliases}}
362
+ include::{{{this}}}[]
363
+
364
+ {{/each}}
365
+ {{!-- Custom sections positioned after aliases --}}
366
+ {{#each customSectionsByPosition.after_aliases}}
367
+ {{> content-item this commandPath=../commandPath}}
368
+ {{/each}}
369
+ {{!-- Examples section at level 2, after aliases --}}
370
+ {{#if sections.EXAMPLES}}
371
+ == Examples
372
+
373
+ This section provides examples of how to use `{{commandPath}}`.
374
+
375
+ {{{sections.EXAMPLES}}}
376
+
377
+ {{/if}}
378
+ {{!-- Subcommands table - before flags --}}
379
+ {{#if hasSubcommands}}
380
+ == Subcommands
381
+
382
+ [cols="1,2a"]
383
+ |===
384
+ |Command |Description
385
+
386
+ {{#each subcommands}}
387
+ |xref:{{xrefPath}}[`{{fullPath}}`]
388
+ |{{{shortDesc}}}
389
+
390
+ {{/each}}
391
+ |===
392
+
393
+ {{/if}}
394
+ {{#if flags.length}}
395
+ == Flags
396
+
397
+ [cols="1m,1a,2a"]
398
+ |===
399
+ |Value |Type |Description
400
+
401
+ {{#each flags}}
402
+ {{#if cloudOnly}}
403
+ ifdef::env-cloud[]
404
+ {{/if}}
405
+ {{#if selfHostedOnly}}
406
+ ifndef::env-cloud[]
407
+ {{/if}}
408
+ |{{name}} |{{type}} |{{#if deprecated}}*[Deprecated{{#if deprecatedMessage}}: {{deprecatedMessage}}{{/if}}]* {{/if}}{{{escapePipes description}}}{{#if validValues}} Valid values: {{#each validValues}}`{{this}}`{{#unless @last}}, {{/unless}}{{/each}}.{{/if}}{{#if introducedInVersion}} _(New in {{introducedInVersion}})_{{/if}}
409
+ {{#if cloudOnly}}
410
+ endif::[]
411
+ {{/if}}
412
+ {{#if selfHostedOnly}}
413
+ endif::[]
414
+ {{/if}}
415
+ {{/each}}
416
+ |===
417
+ {{/if}}
418
+
419
+ {{#if globalFlags.length}}
420
+ == Global flags
421
+
422
+ [cols="1m,1a,2a"]
423
+ |===
424
+ |Value |Type |Description
425
+
426
+ {{#each globalFlags}}
427
+ |{{#if shorthand}}-{{shorthand}}, {{/if}}--{{name}} |{{type}} |{{{escapePipes description}}}
428
+ {{/each}}
429
+ |===
430
+ {{/if}}
431
+
432
+ {{!-- Admonitions after flags --}}
433
+ {{#if admonitions.afterFlags}}
434
+ {{{admonitions.afterFlags}}}
435
+
436
+ {{/if}}
437
+ {{!-- Cloud-only content after flags --}}
438
+ {{#if cloudContent.afterFlags}}
439
+ ifdef::env-cloud[]
440
+ {{{cloudContent.afterFlags}}}
441
+ endif::[]
442
+
443
+ {{/if}}
444
+ {{!-- Self-hosted content after flags --}}
445
+ {{#if selfHostedContent.afterFlags}}
446
+ ifndef::env-cloud[]
447
+ {{{selfHostedContent.afterFlags}}}
448
+ endif::[]
449
+
450
+ {{/if}}
451
+ {{!-- Includes after flags --}}
452
+ {{#each includes.afterFlags}}
453
+ include::{{{this}}}[]
454
+
455
+ {{/each}}
456
+ {{!-- Custom sections positioned after flags --}}
457
+ {{#each customSectionsByPosition.after_flags}}
458
+ {{> content-item this commandPath=../commandPath}}
459
+ {{/each}}
460
+ {{!-- Admonitions after examples --}}
461
+ {{#if admonitions.afterExamples}}
462
+ {{{admonitions.afterExamples}}}
463
+
464
+ {{/if}}
465
+ {{!-- Cloud-only content after examples --}}
466
+ {{#if cloudContent.afterExamples}}
467
+ ifdef::env-cloud[]
468
+ {{{cloudContent.afterExamples}}}
469
+ endif::[]
470
+
471
+ {{/if}}
472
+ {{!-- Self-hosted content after examples --}}
473
+ {{#if selfHostedContent.afterExamples}}
474
+ ifndef::env-cloud[]
475
+ {{{selfHostedContent.afterExamples}}}
476
+ endif::[]
477
+
478
+ {{/if}}
479
+ {{!-- Includes after examples --}}
480
+ {{#each includes.afterExamples}}
481
+ include::{{{this}}}[]
482
+
483
+ {{/each}}
484
+ {{!-- Custom sections positioned after examples --}}
485
+ {{#each customSectionsByPosition.after_examples}}
486
+ {{> content-item this commandPath=../commandPath}}
487
+ {{/each}}
488
+ {{!-- Admonitions before see also --}}
489
+ {{#if admonitions.beforeSeeAlso}}
490
+ {{{admonitions.beforeSeeAlso}}}
491
+
492
+ {{/if}}
493
+ {{!-- Cloud-only content before see also --}}
494
+ {{#if cloudContent.beforeSeeAlso}}
495
+ ifdef::env-cloud[]
496
+ {{{cloudContent.beforeSeeAlso}}}
497
+ endif::[]
498
+
499
+ {{/if}}
500
+ {{!-- Self-hosted content before see also --}}
501
+ {{#if selfHostedContent.beforeSeeAlso}}
502
+ ifndef::env-cloud[]
503
+ {{{selfHostedContent.beforeSeeAlso}}}
504
+ endif::[]
505
+
506
+ {{/if}}
507
+ {{!-- Includes before see also --}}
508
+ {{#each includes.beforeSeeAlso}}
509
+ include::{{{this}}}[]
510
+
511
+ {{/each}}
512
+ {{!-- Custom sections positioned before see also --}}
513
+ {{#each customSectionsByPosition.before_see_also}}
514
+ {{> content-item this commandPath=../commandPath}}
515
+ {{/each}}
516
+ {{!-- Suggested reading section for additional links --}}
517
+ {{#if hasSeeAlso}}
518
+
519
+ == Suggested reading
520
+
521
+ {{#each seeAlso}}
522
+ {{#if (isObject this)}}
523
+ {{#if cloudOnly}}
524
+ ifdef::env-cloud[]
525
+ * {{{content}}}
526
+ endif::[]
527
+ {{else if selfHostedOnly}}
528
+ ifndef::env-cloud[]
529
+ * {{{content}}}
530
+ endif::[]
531
+ {{else}}
532
+ * {{{content}}}
533
+ {{/if}}
534
+ {{else}}
535
+ * {{{this}}}
536
+ {{/if}}
537
+ {{/each}}
538
+
539
+ {{/if}}
540
+ {{!-- Admonitions at end --}}
541
+ {{#if admonitions.end}}
542
+
543
+ {{{admonitions.end}}}
544
+ {{/if}}
545
+ {{!-- Cloud-only content at end --}}
546
+ {{#if cloudContent.end}}
547
+
548
+ ifdef::env-cloud[]
549
+ {{{cloudContent.end}}}
550
+ endif::[]
551
+ {{/if}}
552
+ {{!-- Self-hosted content at end --}}
553
+ {{#if selfHostedContent.end}}
554
+
555
+ ifndef::env-cloud[]
556
+ {{{selfHostedContent.end}}}
557
+ endif::[]
558
+ {{/if}}
559
+ {{!-- Includes at end --}}
560
+ {{#each includes.end}}
561
+
562
+ include::{{{this}}}[]
563
+ {{/each}}
564
+ {{!-- Custom sections positioned at end --}}
565
+ {{#each customSectionsByPosition.end}}
566
+ {{> content-item this commandPath=../commandPath}}
567
+ {{/each}}
568
+ // end::single-source[]
569
+ {{!-- Self-hosted-only wrapper end --}}
570
+ {{#if selfHostedOnly}}
571
+ endif::[]
572
+ {{/if}}
573
+ {{!-- Cloud-only wrapper end --}}
574
+ {{#if cloudOnly}}
575
+ endif::[]
576
+ {{/if}}
@@ -0,0 +1,106 @@
1
+ {{!-- Render a content item based on its type --}}
2
+ {{~#if (eq type "example")~}}
3
+ {{!-- Single structured example --}}
4
+ {{#if description}}
5
+ {{{description}}}.
6
+
7
+ {{/if}}
8
+ [,{{#if language}}{{language}}{{else}}bash{{/if}}{{#if attributes}}{{#each attributes}}{{#if @first}},{{/if}}{{@key}}="{{this}}"{{/each}}{{/if}}]
9
+ ----
10
+ {{{code}}}
11
+ ----
12
+ {{#if output}}
13
+
14
+ Output:
15
+
16
+ [.no-wrap,{{#if outputLanguage}}{{outputLanguage}}{{else}}bash{{/if}}]
17
+ ----
18
+ {{{output}}}
19
+ ----
20
+ {{/if}}
21
+
22
+ {{~else if (eq type "examples")~}}
23
+ {{!-- Examples section at level 2 (==) --}}
24
+ == {{#if title}}{{title}}{{else}}Examples{{/if}}
25
+
26
+ This section provides examples of how to use `{{commandPath}}`.
27
+
28
+ {{#each items}}
29
+ {{#if description}}
30
+ {{{description}}}.
31
+
32
+ {{/if}}
33
+ [,{{#if language}}{{language}}{{else}}bash{{/if}}{{#if attributes}}{{#each attributes}}{{#if @first}},{{/if}}{{@key}}="{{this}}"{{/each}}{{/if}}]
34
+ ----
35
+ {{{code}}}
36
+ ----
37
+ {{#if output}}
38
+
39
+ Output:
40
+
41
+ [.no-wrap,{{#if outputLanguage}}{{outputLanguage}}{{else}}bash{{/if}}]
42
+ ----
43
+ {{{output}}}
44
+ ----
45
+ {{/if}}
46
+
47
+ {{/each}}
48
+ {{~else if (eq type "section")~}}
49
+ {{!-- Custom section with optional subsections --}}
50
+ {{#if title}}
51
+ {{!-- Determine heading level (default to 2 for ==) --}}
52
+ {{#if headingLevel}}{{#repeat headingLevel}}={{/repeat}} {{title}}{{else}}== {{title}}{{/if}}
53
+
54
+ {{#if (eq title "Examples")}}
55
+ This section provides examples of how to use `{{commandPath}}`.
56
+
57
+ {{/if}}
58
+ {{/if}}
59
+ {{#if subsections}}
60
+ {{!-- Render subsections recursively --}}
61
+ {{!-- Parent section defaults to level 2 (==), so subsections start at level 3 (===) --}}
62
+ {{#each subsections}}
63
+ {{> subsection this headingLevel=(add (default ../headingLevel 2) 1)}}
64
+ {{/each}}
65
+ {{else}}
66
+ {{!-- No subsections, render content directly --}}
67
+ {{{content}}}
68
+
69
+ {{/if}}
70
+ {{~else if (eq type "cloud-only")~}}
71
+ {{!-- Cloud-only content (already wrapped by generator) --}}
72
+ {{{content}}}
73
+
74
+ {{~else if (eq type "self-hosted")~}}
75
+ {{!-- Self-hosted content (already wrapped by generator) --}}
76
+ {{{content}}}
77
+
78
+ {{~else if (eq type "note")~}}
79
+ {{!-- Note admonition --}}
80
+ {{{content}}}
81
+
82
+ {{~else if (eq type "warning")~}}
83
+ {{!-- Warning admonition --}}
84
+ {{{content}}}
85
+
86
+ {{~else if (eq type "tip")~}}
87
+ {{!-- Tip admonition --}}
88
+ {{{content}}}
89
+
90
+ {{~else if (eq type "caution")~}}
91
+ {{!-- Caution admonition --}}
92
+ {{{content}}}
93
+
94
+ {{~else if (eq type "important")~}}
95
+ {{!-- Important admonition --}}
96
+ {{{content}}}
97
+
98
+ {{~else~}}
99
+ {{!-- Fallback for unknown types - render as-is --}}
100
+ {{#if title}}
101
+ == {{title}}
102
+
103
+ {{/if}}
104
+ {{{content}}}
105
+
106
+ {{~/if~}}
@@ -0,0 +1,37 @@
1
+ {{!-- Recursively render a subsection --}}
2
+ {{!-- Default to === for first level subsections, increase for nested --}}
3
+ {{#if headingLevel}}{{#repeat headingLevel}}={{/repeat}} {{title}}{{else}}=== {{title}}{{/if}}
4
+
5
+ {{#if content}}
6
+ {{{content}}}
7
+
8
+ {{/if}}
9
+ {{#if items}}
10
+ {{!-- Render items as examples --}}
11
+ {{#each items}}
12
+ {{#if description}}
13
+ {{{description}}}
14
+
15
+ {{/if}}
16
+ [,{{#if language}}{{language}}{{else}}bash{{/if}}]
17
+ ----
18
+ {{{code}}}
19
+ ----
20
+ {{#if output}}
21
+
22
+ Output:
23
+
24
+ [.no-wrap,{{#if outputLanguage}}{{outputLanguage}}{{else}}bash{{/if}}]
25
+ ----
26
+ {{{output}}}
27
+ ----
28
+ {{/if}}
29
+
30
+ {{/each}}
31
+ {{/if}}
32
+ {{#if subsections}}
33
+ {{!-- Recursively render nested subsections with increased heading level --}}
34
+ {{#each subsections}}
35
+ {{> subsection this headingLevel=(add ../headingLevel 1)}}
36
+ {{/each}}
37
+ {{/if}}