<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://wiki.shroudforge.net/index.php?action=history&amp;feed=atom&amp;title=Module%3ACountdown%2Fdoc</id>
	<title>Module:Countdown/doc - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.shroudforge.net/index.php?action=history&amp;feed=atom&amp;title=Module%3ACountdown%2Fdoc"/>
	<link rel="alternate" type="text/html" href="https://wiki.shroudforge.net/index.php?title=Module:Countdown/doc&amp;action=history"/>
	<updated>2026-11-05T07:27:33Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.46.2</generator>
	<entry>
		<id>https://wiki.shroudforge.net/index.php?title=Module:Countdown/doc&amp;diff=116&amp;oldid=prev</id>
		<title>Bonsaibauer: 1 revision imported: Import Star Citizen Modules</title>
		<link rel="alternate" type="text/html" href="https://wiki.shroudforge.net/index.php?title=Module:Countdown/doc&amp;diff=116&amp;oldid=prev"/>
		<updated>2026-11-04T22:22:13Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported: Import Star Citizen Modules&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw-interface=&quot;&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en-GB&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 22:22, 4 November 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;4&quot; class=&quot;diff-notice&quot; lang=&quot;en-GB&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff cache key mediawiki-mediawiki:diff:1.41:old-115:rev-116 --&gt;
&lt;/table&gt;</summary>
		<author><name>Bonsaibauer</name></author>
	</entry>
	<entry>
		<id>https://wiki.shroudforge.net/index.php?title=Module:Countdown/doc&amp;diff=115&amp;oldid=prev</id>
		<title>starcitizen&gt;Alistar Bot: Sync from Git (7721bcf) (via create-page on MediaWiki MCP Server)</title>
		<link rel="alternate" type="text/html" href="https://wiki.shroudforge.net/index.php?title=Module:Countdown/doc&amp;diff=115&amp;oldid=prev"/>
		<updated>2026-09-11T23:53:14Z</updated>

		<summary type="html">&lt;p&gt;Sync from Git (7721bcf) (via create-page on MediaWiki MCP Server)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{documentation|git=true}}&lt;br /&gt;
&lt;br /&gt;
A live countdown display, split by responsibility: the module renders the markup, the data attributes, and a no-JS fallback date; a mainpage gadget computes the actual remaining time and animates the digit stack client-side.&lt;br /&gt;
&lt;br /&gt;
Required by [[Module:Mainpage/Event]] and [[Module:Mainpage/Event/Legacy]]; not invoked from templates.&lt;br /&gt;
&lt;br /&gt;
== For module editors ==&lt;br /&gt;
&lt;br /&gt;
=== API ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;p.render(props)&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; returns &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;templatestyles&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; + markup, or raises a Lua error when &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;ends&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; is missing or either date is not readable by the content language&amp;#039;s date formatter (&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;mw.language:formatDate&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;); both current callers wrap the call in &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;pcall&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Field&lt;br /&gt;
! Type&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;starts&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| ISO 8601 string&lt;br /&gt;
| Optional. Omit for something already under way; with it the gadget can also render a &amp;quot;starts in&amp;quot; tense.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;ends&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| ISO 8601 string&lt;br /&gt;
| Required.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;label&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;string&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Overrides the gadget&amp;#039;s tense-derived label. Rarely wanted; the point is that the label follows the dates.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;class&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;string&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| Extra class on the root.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;p.main(frame)&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; is the &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;#invoke&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; entry point (reads &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;starts&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;ends&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;label&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;class&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; via [[Module:Arguments]]).&lt;br /&gt;
&lt;br /&gt;
=== Gotchas ===&lt;br /&gt;
&lt;br /&gt;
* The module deliberately does not compute remaining time: a value worked out at parse time freezes into the parser cache and can go arbitrarily stale. It emits the dates as &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;data-gadget-mainpage-countdown-start&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;-end&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; (+ &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;-label&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;) attributes for the gadget, and renders a no-JS fallback: the end date alone, or a &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;starts – ends&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; range with the start year dropped when both dates share one.&lt;br /&gt;
* An unreadable date is a hard Lua error, not a silent empty render, because a typo here has to be loud.&lt;br /&gt;
&lt;br /&gt;
=== Styles ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;class = &amp;#039;t-countdown--flat&amp;#039;&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; is the module&amp;#039;s own modifier for lying the clock down into a horizontal strip regardless of viewport (it also does this automatically below 639px). The gadget replaces the fallback with a live digit stack, adding &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;t-countdown--live&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and, for colour, one of &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;--upcoming&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;--running&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;; &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;--ended&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; carries no colour rule at all, deliberately falling back to the root&amp;#039;s &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;--color-subtle&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;.&lt;/div&gt;</summary>
		<author><name>starcitizen&gt;Alistar Bot</name></author>
	</entry>
</feed>