<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://battery.knowledge-graph.eu/w/index.php?action=history&amp;feed=atom&amp;title=Item%3AOSW6df03625b42e4b44bd9f2dfa77387887</id>
	<title>Item:OSW6df03625b42e4b44bd9f2dfa77387887 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://battery.knowledge-graph.eu/w/index.php?action=history&amp;feed=atom&amp;title=Item%3AOSW6df03625b42e4b44bd9f2dfa77387887"/>
	<link rel="alternate" type="text/html" href="https://battery.knowledge-graph.eu/w/index.php?title=Item:OSW6df03625b42e4b44bd9f2dfa77387887&amp;action=history"/>
	<updated>2026-05-11T20:02:51Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.5</generator>
	<entry>
		<id>https://battery.knowledge-graph.eu/w/index.php?title=Item:OSW6df03625b42e4b44bd9f2dfa77387887&amp;diff=61&amp;oldid=prev</id>
		<title>Maintenance script: Install package: OSW Docs - Core</title>
		<link rel="alternate" type="text/html" href="https://battery.knowledge-graph.eu/w/index.php?title=Item:OSW6df03625b42e4b44bd9f2dfa77387887&amp;diff=61&amp;oldid=prev"/>
		<updated>2023-12-15T05:13:58Z</updated>

		<summary type="html">&lt;p&gt;Install package: OSW Docs - Core&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Helpers ==&lt;br /&gt;
&lt;br /&gt;
=== Compare operator ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
// register compare operator &lt;br /&gt;
// e.g. {{#when &amp;lt;operand1&amp;gt; &amp;#039;eq&amp;#039; &amp;lt;operand2&amp;gt;}} {{/when}}&lt;br /&gt;
// {{#when var1 &amp;#039;eq&amp;#039; var2}}equal{{else when var1 &amp;#039;gt&amp;#039; var2}}gt{{else}}lt{{/when}}&lt;br /&gt;
Handlebars.registerHelper(&amp;quot;when&amp;quot;, (operand_1, operator, operand_2, options) =&amp;gt; {&lt;br /&gt;
	let operators = {&lt;br /&gt;
		&amp;#039;eq&amp;#039;: (l, r) =&amp;gt; l == r,&lt;br /&gt;
		&amp;#039;==&amp;#039;: (l, r) =&amp;gt; l == r,&lt;br /&gt;
		&amp;#039;===&amp;#039;: (l, r) =&amp;gt; l === r,&lt;br /&gt;
		&amp;#039;noteq&amp;#039;: (l, r) =&amp;gt; l != r,&lt;br /&gt;
		&amp;#039;!=&amp;#039;: (l, r) =&amp;gt; l != r,&lt;br /&gt;
		&amp;#039;!==&amp;#039;: (l, r) =&amp;gt; l !== r,&lt;br /&gt;
		&amp;#039;gt&amp;#039;: (l, r) =&amp;gt; (+l) &amp;gt; (+r),&lt;br /&gt;
		&amp;#039;&amp;gt;&amp;#039;: (l, r) =&amp;gt; (+l) &amp;gt; (+r),&lt;br /&gt;
		&amp;#039;gteq&amp;#039;: (l, r) =&amp;gt; ((+l) &amp;gt; (+r)) || (l == r),&lt;br /&gt;
		&amp;#039;&amp;gt;=&amp;#039;: (l, r) =&amp;gt; ((+l) &amp;gt; (+r)) || (l == r),&lt;br /&gt;
		&amp;#039;lt&amp;#039;: (l, r) =&amp;gt; (+l) &amp;lt; (+r),&lt;br /&gt;
		&amp;#039;&amp;lt;&amp;#039;: (l, r) =&amp;gt; (+l) &amp;lt; (+r),&lt;br /&gt;
		&amp;#039;lteq&amp;#039;: (l, r) =&amp;gt; ((+l) &amp;lt; (+r)) || (l == r),&lt;br /&gt;
		&amp;#039;&amp;lt;=&amp;#039;: (l, r) =&amp;gt; ((+l) &amp;lt; (+r)) || (l == r),&lt;br /&gt;
		&amp;#039;or&amp;#039;: (l, r) =&amp;gt; l || r,&lt;br /&gt;
		&amp;#039;||&amp;#039;: (l, r) =&amp;gt; l || r,&lt;br /&gt;
		&amp;#039;and&amp;#039;: (l, r) =&amp;gt; l &amp;amp;&amp;amp; r,&lt;br /&gt;
		&amp;#039;&amp;amp;&amp;amp;&amp;#039;: (l, r) =&amp;gt; l &amp;amp;&amp;amp; r,&lt;br /&gt;
		&amp;#039;mod&amp;#039;: (l, r) =&amp;gt; (l % r) === 0,&lt;br /&gt;
		&amp;#039;%&amp;#039;: (l, r) =&amp;gt; (l % r) === 0&lt;br /&gt;
	};&lt;br /&gt;
	let result = operators[operator](operand_1, operand_2);&lt;br /&gt;
	if (result) return options.fn(this);&lt;br /&gt;
	return options.inverse(this);&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Replace operator ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
// register replace operator &lt;br /&gt;
// e. g. {{#replace &amp;lt;find&amp;gt; &amp;lt;replace&amp;gt;}}{{string}}{{/replace}}&lt;br /&gt;
Handlebars.registerHelper(&amp;#039;replace&amp;#039;, function( find, replace, options) {&lt;br /&gt;
	let string = options.fn(this);&lt;br /&gt;
	return string.replaceAll( find, replace );&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Split operator     ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
// register split operator 	&lt;br /&gt;
// {{#split &amp;lt;find&amp;gt; &amp;lt;index&amp;gt;}}&amp;lt;string&amp;gt;{{/split}}&lt;br /&gt;
// e. g. {{#split &amp;quot;/&amp;quot; -1}}https://test.com/target{{/split}} =&amp;gt; target&lt;br /&gt;
Handlebars.registerHelper(&amp;#039;split&amp;#039;, function( find, index, options) {&lt;br /&gt;
	let string = options.fn(this);&lt;br /&gt;
	let result = string.split( find );&lt;br /&gt;
  	if (index &amp;lt; 0) return result[result.length + index];&lt;br /&gt;
    else return result[index];&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Split interator ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
// register split interator&lt;br /&gt;
// {{#each_split &amp;lt;string&amp;gt; &amp;lt;find&amp;gt;}}...{{/each_split}}&lt;br /&gt;
// e. g. {{#each_split &amp;quot;https://test.com/target&amp;quot; &amp;quot;/&amp;quot;}}{{.}},{{/each_split}} =&amp;gt; https:,,test.com,target, &lt;br /&gt;
Handlebars.registerHelper(&amp;#039;each_split&amp;#039;, function( string, find, options) {&lt;br /&gt;
  	let data = string.split(find);&lt;br /&gt;
  	let result = &amp;#039;&amp;#039;;&lt;br /&gt;
	data.forEach((item) =&amp;gt; {&lt;br /&gt;
		result += options.fn(item);&lt;br /&gt;
	});&lt;br /&gt;
	return result;&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Substring operator ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
// register substring operator&lt;br /&gt;
// {{#substring start end}}&amp;lt;string&amp;gt;{{/substring}}&lt;br /&gt;
// e. g. {{#substring 0 4}}My-test-string{{/substring}} =&amp;gt; My-t&lt;br /&gt;
// e. g. {{#substring -2 &amp;quot;&amp;quot;}}My-test-string{{/substring}} =&amp;gt; ng&lt;br /&gt;
// e. g. {{#substring 0 -2}}My-test-string{{/substring}} =&amp;gt; My-test-stri&lt;br /&gt;
Handlebars.registerHelper(&amp;#039;substring&amp;#039;, function( start, end, options) {&lt;br /&gt;
	let string = options.fn(this);&lt;br /&gt;
	let result = &amp;quot;&amp;quot;;&lt;br /&gt;
  	if (end === &amp;quot;&amp;quot;) result = string.slice( start);&lt;br /&gt;
  	else result = string.slice( start, end );&lt;br /&gt;
	return result;&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
</feed>