Template:Version: Difference between revisions

From Untold Dawn
Jump to navigation Jump to search
(Created page with "<noinclude>This template helps manage documentation that is version-specific. It allows you to specify which versions a page or section applies to, indicate if something is deprecated, and link to release notes. === Usage === <code><pre><nowiki> {{Version |version= <!-- Required. The main version this content applies to --> |since= <!-- Optional. The version where this feature was introduced --> |until= <!-- Optional. The last version wher...")
 
No edit summary
Line 13: Line 13:
</nowiki></pre></code></noinclude>
</nowiki></pre></code></noinclude>
<includeonly>
<includeonly>
{{#vardefine:type|{{{type|page}}}}}
<div class="version-box{{#if:{{{status|}}}| {{#ifeq:{{{status}}}|deprecated|deprecated|{{#ifeq:{{{status}}}|removed|removed}}}}}">
{{#vardefine:version|{{{version|}}}}}
<!-- Check if version provided -->
{{#vardefine:since|{{{since|}}}}}
{{#if:{{{version|}}|
{{#vardefine:until|{{{until|}}}}}
  <!-- Version is provided -->
{{#vardefine:status|{{{status|}}}}}
{{#vardefine:notes|{{{notes|}}}}}


<!-- Styling container -->
  <!-- Construct base message depending on since/until -->
<div class="version-box {{#if:{{#var:status}}|{{#var:status}}|}}">
  {{#if:{{{since|}}|
 
    <!-- 'since' is provided -->
<!-- If no version is specified, show an error to editors -->
     This {{{type|page}}}, introduced in version {{{since}}}{{#if:{{{until|}}|
{{#if:{{#var:version}}|
       , applies to versions {{{since}}} through {{{until}}} (current: {{{version}}})
  <!-- If version is provided -->
      | , applies starting from version {{{since}}} (current: {{{version}}})
 
  <!-- Construct the main sentence parts -->
  <!-- Introduced / since -->
  {{#if:{{#var:since}}|
     This {{#var:type}}, introduced in version {{#var:since}}
    {{#if:{{#var:until}}|
       , applies to versions {{#var:since}} through {{#var:until}} (current: {{#var:version}})
    | <!-- else -->
      , applies starting from version {{#var:since}} (current: {{#var:version}})
     }}
     }}
   |<!-- else no since -->
   | <!-- else no 'since' -->
     {{#if:{{#var:until}}|
     {{#if:{{{until|}}|
       This {{#var:type}} applies up to version {{#var:until}} (current: {{#var:version}})
       This {{{type|page}}} applies up to version {{{until}}} (current: {{{version}}})
    |<!-- else no until -->
      | This {{{type|page}}} applies to version {{{version}}}
      This {{#var:type}} applies to version {{#var:version}}
     }}
     }}
   }}
   }}


   <!-- Status messages -->
   <!-- Add status information if applicable -->
   {{#if:{{#var:status}}|
   {{#if:{{{status|}}|
     {{#ifeq:{{#var:status}}|deprecated|
     {{#ifeq:{{{status}}}|deprecated
       , but is now deprecated.
       | , but is now deprecated.
    |{{#ifeq:{{#var:status}}|removed|
      | {{#ifeq:{{{status}}}|removed
      , but is now removed.
        | , but is now removed.
    }}  
        | <!-- No recognized status -->
      }}
     }}
     }}
   |<!-- else no status -->
   | <!-- no status -->
     .
     .
   }}
   }}


   <!-- Notes link -->
   <!-- Add notes link if provided -->
   {{#if:{{#var:notes}}|
   {{#if:{{{notes|}}|
     See [[{{#var:notes}}]] for more details.
     See [[{{{notes}}}]] for more details.
   }}
   }}


|<!-- else no version -->
| <!-- else no version -->
   <span style="color:red;">Error: No version specified! Please provide a version parameter.</span>
   <span style="color:red;">Error: No version specified! Please provide a version parameter.</span>
}}
}}
</div>
</div>
</includeonly>
</includeonly>

Revision as of 23:24, 10 December 2024

This template helps manage documentation that is version-specific. It allows you to specify which versions a page or section applies to, indicate if something is deprecated, and link to release notes.

Usage

{{Version
|version=          <!-- Required. The main version this content applies to -->
|since=            <!-- Optional. The version where this feature was introduced -->
|until=            <!-- Optional. The last version where this feature applies -->
|status=           <!-- Optional. Can be 'deprecated' or 'removed' -->
|notes=            <!-- Optional. A page or section linking to detailed changelog/release notes -->
|type=             <!-- Optional. Defaults to 'page'. Could be 'section', 'feature', etc. -->
}}