feat: progress
This commit is contained in:
+222
-116
@@ -1,29 +1,38 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<coverage generated="1782247323626" clover="3.2.0">
|
||||
<project timestamp="1782247323626" name="All files">
|
||||
<metrics statements="116" coveredstatements="105" conditionals="29" coveredconditionals="27" methods="58" coveredmethods="49" elements="203" coveredelements="181" complexity="0" loc="116" ncloc="116" packages="3" files="7" classes="7"/>
|
||||
<coverage generated="1782440391724" clover="3.2.0">
|
||||
<project timestamp="1782440391724" name="All files">
|
||||
<metrics statements="207" coveredstatements="118" conditionals="48" coveredconditionals="23" methods="107" coveredmethods="19" elements="362" coveredelements="160" complexity="0" loc="207" ncloc="207" packages="4" files="11" classes="11"/>
|
||||
<package name="src">
|
||||
<metrics statements="6" coveredstatements="2" conditionals="2" coveredconditionals="1" methods="4" coveredmethods="2"/>
|
||||
<metrics statements="9" coveredstatements="4" conditionals="2" coveredconditionals="0" methods="4" coveredmethods="1"/>
|
||||
<file name="index.ts" path="/home/anton/Projects/fluent/src/index.ts">
|
||||
<metrics statements="2" coveredstatements="2" conditionals="0" coveredconditionals="0" methods="0" coveredmethods="0"/>
|
||||
<line num="4" count="1" type="stmt"/>
|
||||
<line num="5" count="1" type="stmt"/>
|
||||
</file>
|
||||
<file name="internal.ts" path="/home/anton/Projects/fluent/src/internal.ts">
|
||||
<metrics statements="6" coveredstatements="2" conditionals="2" coveredconditionals="1" methods="4" coveredmethods="2"/>
|
||||
<line num="8" count="4" type="stmt"/>
|
||||
<metrics statements="6" coveredstatements="1" conditionals="2" coveredconditionals="0" methods="4" coveredmethods="1"/>
|
||||
<line num="8" count="1" type="stmt"/>
|
||||
<line num="14" count="0" type="stmt"/>
|
||||
<line num="15" count="0" type="stmt"/>
|
||||
<line num="23" count="53" type="cond" truecount="1" falsecount="1"/>
|
||||
<line num="23" count="0" type="cond" truecount="0" falsecount="2"/>
|
||||
<line num="24" count="0" type="stmt"/>
|
||||
<line num="26" count="0" type="stmt"/>
|
||||
</file>
|
||||
<file name="registry.ts" path="/home/anton/Projects/fluent/src/registry.ts">
|
||||
<metrics statements="1" coveredstatements="1" conditionals="0" coveredconditionals="0" methods="0" coveredmethods="0"/>
|
||||
<line num="10" count="1" type="stmt"/>
|
||||
</file>
|
||||
</package>
|
||||
<package name="src.base">
|
||||
<metrics statements="7" coveredstatements="7" conditionals="0" coveredconditionals="0" methods="3" coveredmethods="3"/>
|
||||
<file name="index.ts" path="/home/anton/Projects/fluent/src/base/index.ts">
|
||||
<metrics statements="6" coveredstatements="6" conditionals="0" coveredconditionals="0" methods="2" coveredmethods="2"/>
|
||||
<line num="18" count="4" type="stmt"/>
|
||||
<line num="20" count="66" type="stmt"/>
|
||||
<line num="22" count="66" type="stmt"/>
|
||||
<line num="24" count="71" type="stmt"/>
|
||||
<line num="27" count="66" type="stmt"/>
|
||||
<line num="30" count="4" type="stmt"/>
|
||||
<line num="31" count="1" type="stmt"/>
|
||||
<line num="33" count="2" type="stmt"/>
|
||||
<line num="35" count="2" type="stmt"/>
|
||||
<line num="37" count="10" type="stmt"/>
|
||||
<line num="40" count="2" type="stmt"/>
|
||||
<line num="43" count="1" type="stmt"/>
|
||||
</file>
|
||||
<file name="mixin.ts" path="/home/anton/Projects/fluent/src/base/mixin.ts">
|
||||
<metrics statements="1" coveredstatements="1" conditionals="0" coveredconditionals="0" methods="1" coveredmethods="1"/>
|
||||
@@ -31,121 +40,218 @@
|
||||
</file>
|
||||
</package>
|
||||
<package name="src.mixin">
|
||||
<metrics statements="103" coveredstatements="96" conditionals="27" coveredconditionals="26" methods="51" coveredmethods="44"/>
|
||||
<metrics statements="159" coveredstatements="80" conditionals="36" coveredconditionals="13" methods="89" coveredmethods="9"/>
|
||||
<file name="array.ts" path="/home/anton/Projects/fluent/src/mixin/array.ts">
|
||||
<metrics statements="41" coveredstatements="40" conditionals="13" coveredconditionals="12" methods="24" coveredmethods="23"/>
|
||||
<line num="133" count="36" type="cond" truecount="2" falsecount="0"/>
|
||||
<line num="315" count="1" type="stmt"/>
|
||||
<line num="316" count="36" type="cond" truecount="2" falsecount="0"/>
|
||||
<line num="318" count="29" type="stmt"/>
|
||||
<line num="319" count="4" type="stmt"/>
|
||||
<line num="322" count="29" type="stmt"/>
|
||||
<line num="323" count="1" type="stmt"/>
|
||||
<line num="324" count="1" type="stmt"/>
|
||||
<line num="327" count="29" type="stmt"/>
|
||||
<line num="328" count="1" type="stmt"/>
|
||||
<line num="329" count="1" type="cond" truecount="1" falsecount="1"/>
|
||||
<line num="330" count="1" type="stmt"/>
|
||||
<line num="335" count="29" type="stmt"/>
|
||||
<line num="336" count="1" type="stmt"/>
|
||||
<line num="339" count="29" type="stmt"/>
|
||||
<line num="340" count="1" type="stmt"/>
|
||||
<line num="342" count="29" type="stmt"/>
|
||||
<line num="343" count="29" type="stmt"/>
|
||||
<line num="345" count="1" type="stmt"/>
|
||||
<line num="346" count="5" type="cond" truecount="2" falsecount="0"/>
|
||||
<line num="351" count="29" type="stmt"/>
|
||||
<line num="355" count="1" type="stmt"/>
|
||||
<line num="357" count="29" type="stmt"/>
|
||||
<line num="358" count="29" type="stmt"/>
|
||||
<line num="363" count="1" type="stmt"/>
|
||||
<line num="367" count="29" type="stmt"/>
|
||||
<line num="368" count="1" type="stmt"/>
|
||||
<line num="371" count="29" type="stmt"/>
|
||||
<line num="378" count="1" type="stmt"/>
|
||||
<line num="379" count="8" type="stmt"/>
|
||||
<line num="382" count="29" type="stmt"/>
|
||||
<line num="383" count="29" type="stmt"/>
|
||||
<line num="385" count="16" type="cond" truecount="1" falsecount="0"/>
|
||||
<line num="390" count="1" type="stmt"/>
|
||||
<line num="392" count="8" type="cond" truecount="2" falsecount="0"/>
|
||||
<line num="397" count="18" type="cond" truecount="1" falsecount="0"/>
|
||||
<line num="402" count="11" type="stmt"/>
|
||||
<line num="405" count="16" type="cond" truecount="1" falsecount="0"/>
|
||||
<line num="410" count="10" type="stmt"/>
|
||||
<line num="414" count="29" type="stmt"/>
|
||||
<line num="415" count="0" type="stmt"/>
|
||||
<metrics statements="41" coveredstatements="19" conditionals="13" coveredconditionals="4" methods="24" coveredmethods="3"/>
|
||||
<line num="133" count="2" type="cond" truecount="2" falsecount="0"/>
|
||||
<line num="463" count="1" type="stmt"/>
|
||||
<line num="464" count="2" type="cond" truecount="2" falsecount="0"/>
|
||||
<line num="466" count="1" type="stmt"/>
|
||||
<line num="467" count="0" type="stmt"/>
|
||||
<line num="470" count="1" type="stmt"/>
|
||||
<line num="471" count="0" type="stmt"/>
|
||||
<line num="472" count="0" type="stmt"/>
|
||||
<line num="475" count="1" type="stmt"/>
|
||||
<line num="476" count="0" type="stmt"/>
|
||||
<line num="477" count="0" type="cond" truecount="0" falsecount="2"/>
|
||||
<line num="478" count="0" type="stmt"/>
|
||||
<line num="485" count="1" type="stmt"/>
|
||||
<line num="486" count="0" type="stmt"/>
|
||||
<line num="489" count="1" type="stmt"/>
|
||||
<line num="490" count="0" type="stmt"/>
|
||||
<line num="492" count="1" type="stmt"/>
|
||||
<line num="493" count="1" type="stmt"/>
|
||||
<line num="495" count="0" type="stmt"/>
|
||||
<line num="496" count="0" type="cond" truecount="0" falsecount="2"/>
|
||||
<line num="501" count="1" type="stmt"/>
|
||||
<line num="505" count="1" type="stmt"/>
|
||||
<line num="507" count="1" type="stmt"/>
|
||||
<line num="508" count="1" type="stmt"/>
|
||||
<line num="513" count="0" type="stmt"/>
|
||||
<line num="517" count="1" type="stmt"/>
|
||||
<line num="518" count="0" type="stmt"/>
|
||||
<line num="521" count="1" type="stmt"/>
|
||||
<line num="528" count="0" type="stmt"/>
|
||||
<line num="529" count="0" type="stmt"/>
|
||||
<line num="532" count="1" type="stmt"/>
|
||||
<line num="533" count="1" type="stmt"/>
|
||||
<line num="535" count="0" type="cond" truecount="0" falsecount="1"/>
|
||||
<line num="540" count="0" type="stmt"/>
|
||||
<line num="541" count="0" type="cond" truecount="0" falsecount="2"/>
|
||||
<line num="545" count="0" type="cond" truecount="0" falsecount="1"/>
|
||||
<line num="550" count="0" type="stmt"/>
|
||||
<line num="553" count="0" type="cond" truecount="0" falsecount="1"/>
|
||||
<line num="558" count="0" type="stmt"/>
|
||||
<line num="562" count="1" type="stmt"/>
|
||||
<line num="563" count="0" type="stmt"/>
|
||||
</file>
|
||||
<file name="awaited.ts" path="/home/anton/Projects/fluent/src/mixin/awaited.ts">
|
||||
<metrics statements="26" coveredstatements="24" conditionals="7" coveredconditionals="7" methods="11" coveredmethods="9"/>
|
||||
<metrics statements="26" coveredstatements="2" conditionals="7" coveredconditionals="1" methods="11" coveredmethods="1"/>
|
||||
<line num="14" count="0" type="stmt"/>
|
||||
<line num="18" count="0" type="stmt"/>
|
||||
<line num="48" count="1" type="stmt"/>
|
||||
<line num="49" count="5" type="cond" truecount="2" falsecount="0"/>
|
||||
<line num="51" count="3" type="stmt"/>
|
||||
<line num="52" count="1" type="stmt"/>
|
||||
<line num="55" count="3" type="stmt"/>
|
||||
<line num="58" count="1" type="stmt"/>
|
||||
<line num="59" count="1" type="stmt"/>
|
||||
<line num="62" count="1" type="stmt"/>
|
||||
<line num="64" count="1" type="stmt"/>
|
||||
<line num="66" count="2" type="cond" truecount="2" falsecount="0"/>
|
||||
<line num="67" count="1" type="stmt"/>
|
||||
<line num="68" count="1" type="stmt"/>
|
||||
<line num="69" count="1" type="stmt"/>
|
||||
<line num="72" count="1" type="stmt"/>
|
||||
<line num="73" count="1" type="stmt"/>
|
||||
<line num="74" count="1" type="stmt"/>
|
||||
<line num="75" count="1" type="stmt"/>
|
||||
<line num="80" count="1" type="stmt"/>
|
||||
<line num="84" count="1" type="stmt"/>
|
||||
<line num="87" count="1" type="stmt"/>
|
||||
<line num="88" count="1" type="stmt"/>
|
||||
<line num="94" count="1" type="stmt"/>
|
||||
<line num="96" count="1" type="stmt"/>
|
||||
<line num="100" count="1" type="stmt"/>
|
||||
<line num="49" count="2" type="cond" truecount="1" falsecount="1"/>
|
||||
<line num="51" count="0" type="stmt"/>
|
||||
<line num="52" count="0" type="stmt"/>
|
||||
<line num="55" count="0" type="stmt"/>
|
||||
<line num="58" count="0" type="stmt"/>
|
||||
<line num="59" count="0" type="stmt"/>
|
||||
<line num="62" count="0" type="stmt"/>
|
||||
<line num="64" count="0" type="stmt"/>
|
||||
<line num="66" count="0" type="cond" truecount="0" falsecount="2"/>
|
||||
<line num="67" count="0" type="stmt"/>
|
||||
<line num="68" count="0" type="stmt"/>
|
||||
<line num="69" count="0" type="stmt"/>
|
||||
<line num="72" count="0" type="stmt"/>
|
||||
<line num="73" count="0" type="stmt"/>
|
||||
<line num="74" count="0" type="stmt"/>
|
||||
<line num="75" count="0" type="stmt"/>
|
||||
<line num="80" count="0" type="stmt"/>
|
||||
<line num="84" count="0" type="stmt"/>
|
||||
<line num="87" count="0" type="stmt"/>
|
||||
<line num="88" count="0" type="stmt"/>
|
||||
<line num="94" count="0" type="stmt"/>
|
||||
<line num="96" count="0" type="stmt"/>
|
||||
<line num="100" count="0" type="stmt"/>
|
||||
</file>
|
||||
<file name="base.ts" path="/home/anton/Projects/fluent/src/mixin/base.ts">
|
||||
<metrics statements="6" coveredstatements="6" conditionals="0" coveredconditionals="0" methods="3" coveredmethods="3"/>
|
||||
<line num="43" count="2" type="stmt"/>
|
||||
<line num="44" count="12" type="stmt"/>
|
||||
<line num="45" count="1" type="stmt"/>
|
||||
<line num="46" count="1" type="stmt"/>
|
||||
<line num="49" count="12" type="stmt"/>
|
||||
<line num="50" count="4" type="stmt"/>
|
||||
<metrics statements="6" coveredstatements="3" conditionals="0" coveredconditionals="0" methods="3" coveredmethods="1"/>
|
||||
<line num="47" count="1" type="stmt"/>
|
||||
<line num="48" count="2" type="stmt"/>
|
||||
<line num="49" count="0" type="stmt"/>
|
||||
<line num="50" count="0" type="stmt"/>
|
||||
<line num="53" count="2" type="stmt"/>
|
||||
<line num="54" count="0" type="stmt"/>
|
||||
</file>
|
||||
<file name="math.ts" path="/home/anton/Projects/fluent/src/mixin/math.ts">
|
||||
<metrics statements="56" coveredstatements="45" conditionals="9" coveredconditionals="5" methods="38" coveredmethods="2"/>
|
||||
<line num="104" count="1" type="stmt"/>
|
||||
<line num="106" count="1" type="stmt"/>
|
||||
<line num="107" count="2" type="cond" truecount="2" falsecount="0"/>
|
||||
<line num="108" count="1" type="stmt"/>
|
||||
<line num="109" count="1" type="stmt"/>
|
||||
<line num="110" count="1" type="stmt"/>
|
||||
<line num="111" count="1" type="stmt"/>
|
||||
<line num="112" count="1" type="stmt"/>
|
||||
<line num="113" count="1" type="stmt"/>
|
||||
<line num="114" count="1" type="stmt"/>
|
||||
<line num="115" count="1" type="stmt"/>
|
||||
<line num="116" count="0" type="cond" truecount="0" falsecount="2"/>
|
||||
<line num="117" count="0" type="stmt"/>
|
||||
<line num="118" count="0" type="stmt"/>
|
||||
<line num="121" count="1" type="stmt"/>
|
||||
<line num="125" count="0" type="stmt"/>
|
||||
<line num="128" count="1" type="stmt"/>
|
||||
<line num="129" count="1" type="stmt"/>
|
||||
<line num="130" count="1" type="stmt"/>
|
||||
<line num="131" count="1" type="stmt"/>
|
||||
<line num="133" count="1" type="stmt"/>
|
||||
<line num="134" count="1" type="stmt"/>
|
||||
<line num="135" count="1" type="stmt"/>
|
||||
<line num="137" count="1" type="stmt"/>
|
||||
<line num="138" count="0" type="stmt"/>
|
||||
<line num="139" count="1" type="stmt"/>
|
||||
<line num="140" count="0" type="stmt"/>
|
||||
<line num="141" count="1" type="stmt"/>
|
||||
<line num="142" count="0" type="stmt"/>
|
||||
<line num="143" count="1" type="stmt"/>
|
||||
<line num="144" count="0" type="stmt"/>
|
||||
<line num="146" count="1" type="stmt"/>
|
||||
<line num="147" count="0" type="stmt"/>
|
||||
<line num="149" count="1" type="stmt"/>
|
||||
<line num="150" count="1" type="stmt"/>
|
||||
<line num="151" count="1" type="stmt"/>
|
||||
<line num="152" count="1" type="stmt"/>
|
||||
<line num="153" count="1" type="stmt"/>
|
||||
<line num="154" count="1" type="stmt"/>
|
||||
<line num="155" count="1" type="stmt"/>
|
||||
<line num="157" count="1" type="stmt"/>
|
||||
<line num="158" count="1" type="stmt"/>
|
||||
<line num="159" count="1" type="stmt"/>
|
||||
<line num="160" count="1" type="stmt"/>
|
||||
<line num="161" count="1" type="stmt"/>
|
||||
<line num="162" count="1" type="stmt"/>
|
||||
<line num="164" count="1" type="stmt"/>
|
||||
<line num="165" count="1" type="stmt"/>
|
||||
<line num="167" count="1" type="stmt"/>
|
||||
<line num="168" count="1" type="stmt"/>
|
||||
<line num="169" count="1" type="stmt"/>
|
||||
<line num="170" count="0" type="stmt"/>
|
||||
<line num="171" count="0" type="stmt"/>
|
||||
<line num="173" count="1" type="cond" truecount="1" falsecount="1"/>
|
||||
<line num="175" count="7" type="stmt"/>
|
||||
<line num="177" count="1" type="stmt"/>
|
||||
</file>
|
||||
<file name="optional.ts" path="/home/anton/Projects/fluent/src/mixin/optional.ts">
|
||||
<metrics statements="30" coveredstatements="26" conditionals="7" coveredconditionals="7" methods="13" coveredmethods="9"/>
|
||||
<line num="16" count="18" type="cond" truecount="2" falsecount="0"/>
|
||||
<line num="157" count="1" type="stmt"/>
|
||||
<line num="158" count="18" type="cond" truecount="2" falsecount="0"/>
|
||||
<line num="159" count="5" type="stmt"/>
|
||||
<line num="160" count="1" type="stmt"/>
|
||||
<line num="163" count="5" type="stmt"/>
|
||||
<metrics statements="30" coveredstatements="11" conditionals="7" coveredconditionals="3" methods="13" coveredmethods="2"/>
|
||||
<line num="16" count="2" type="cond" truecount="2" falsecount="0"/>
|
||||
<line num="164" count="1" type="stmt"/>
|
||||
<line num="166" count="5" type="stmt"/>
|
||||
<line num="167" count="5" type="stmt"/>
|
||||
<line num="169" count="1" type="stmt"/>
|
||||
<line num="173" count="5" type="stmt"/>
|
||||
<line num="165" count="2" type="cond" truecount="1" falsecount="1"/>
|
||||
<line num="166" count="0" type="stmt"/>
|
||||
<line num="167" count="0" type="stmt"/>
|
||||
<line num="170" count="0" type="stmt"/>
|
||||
<line num="171" count="0" type="stmt"/>
|
||||
<line num="173" count="0" type="stmt"/>
|
||||
<line num="174" count="0" type="stmt"/>
|
||||
<line num="176" count="5" type="stmt"/>
|
||||
<line num="177" count="5" type="stmt"/>
|
||||
<line num="179" count="0" type="stmt"/>
|
||||
<line num="183" count="13" type="stmt"/>
|
||||
<line num="184" count="1" type="stmt"/>
|
||||
<line num="187" count="13" type="stmt"/>
|
||||
<line num="188" count="1" type="stmt"/>
|
||||
<line num="191" count="13" type="stmt"/>
|
||||
<line num="192" count="13" type="stmt"/>
|
||||
<line num="194" count="1" type="stmt"/>
|
||||
<line num="198" count="13" type="stmt"/>
|
||||
<line num="199" count="0" type="stmt"/>
|
||||
<line num="201" count="13" type="stmt"/>
|
||||
<line num="202" count="13" type="stmt"/>
|
||||
<line num="204" count="0" type="stmt"/>
|
||||
<line num="209" count="18" type="stmt"/>
|
||||
<line num="213" count="3" type="cond" truecount="2" falsecount="0"/>
|
||||
<line num="214" count="2" type="stmt"/>
|
||||
<line num="176" count="0" type="stmt"/>
|
||||
<line num="180" count="0" type="stmt"/>
|
||||
<line num="181" count="0" type="stmt"/>
|
||||
<line num="183" count="0" type="stmt"/>
|
||||
<line num="184" count="0" type="stmt"/>
|
||||
<line num="186" count="0" type="stmt"/>
|
||||
<line num="190" count="2" type="stmt"/>
|
||||
<line num="191" count="0" type="stmt"/>
|
||||
<line num="194" count="2" type="stmt"/>
|
||||
<line num="195" count="0" type="stmt"/>
|
||||
<line num="198" count="2" type="stmt"/>
|
||||
<line num="199" count="2" type="stmt"/>
|
||||
<line num="201" count="0" type="stmt"/>
|
||||
<line num="205" count="2" type="stmt"/>
|
||||
<line num="206" count="0" type="stmt"/>
|
||||
<line num="208" count="2" type="stmt"/>
|
||||
<line num="209" count="2" type="stmt"/>
|
||||
<line num="211" count="0" type="stmt"/>
|
||||
<line num="216" count="2" type="stmt"/>
|
||||
<line num="220" count="0" type="cond" truecount="0" falsecount="2"/>
|
||||
<line num="221" count="0" type="stmt"/>
|
||||
</file>
|
||||
</package>
|
||||
<package name="src.mixin.math">
|
||||
<metrics statements="32" coveredstatements="27" conditionals="10" coveredconditionals="10" methods="11" coveredmethods="6"/>
|
||||
<file name="swizzle.ts" path="/home/anton/Projects/fluent/src/mixin/math/swizzle.ts">
|
||||
<metrics statements="32" coveredstatements="27" conditionals="10" coveredconditionals="10" methods="11" coveredmethods="6"/>
|
||||
<line num="156" count="1" type="stmt"/>
|
||||
<line num="163" count="1" type="stmt"/>
|
||||
<line num="164" count="1" type="stmt"/>
|
||||
<line num="166" count="1" type="stmt"/>
|
||||
<line num="167" count="2097152" type="stmt"/>
|
||||
<line num="168" count="2396744" type="stmt"/>
|
||||
<line num="169" count="2396744" type="cond" truecount="2" falsecount="0"/>
|
||||
<line num="170" count="2097151" type="stmt"/>
|
||||
<line num="173" count="2097152" type="stmt"/>
|
||||
<line num="174" count="2097152" type="stmt"/>
|
||||
<line num="175" count="11487560" type="cond" truecount="2" falsecount="0"/>
|
||||
<line num="176" count="1435945" type="stmt"/>
|
||||
<line num="177" count="10051615" type="cond" truecount="2" falsecount="0"/>
|
||||
<line num="178" count="1136352" type="stmt"/>
|
||||
<line num="182" count="960800" type="stmt"/>
|
||||
<line num="183" count="6725600" type="stmt"/>
|
||||
<line num="184" count="6565468" type="stmt"/>
|
||||
<line num="186" count="960800" type="cond" truecount="4" falsecount="0"/>
|
||||
<line num="187" count="21840" type="stmt"/>
|
||||
<line num="188" count="152880" type="stmt"/>
|
||||
<line num="189" count="145632" type="stmt"/>
|
||||
<line num="190" count="21840" type="stmt"/>
|
||||
<line num="193" count="0" type="stmt"/>
|
||||
<line num="196" count="2396744" type="stmt"/>
|
||||
<line num="198" count="1" type="stmt"/>
|
||||
<line num="200" count="0" type="stmt"/>
|
||||
<line num="203" count="1" type="stmt"/>
|
||||
<line num="205" count="0" type="stmt"/>
|
||||
<line num="208" count="1" type="stmt"/>
|
||||
<line num="210" count="0" type="stmt"/>
|
||||
<line num="213" count="1" type="stmt"/>
|
||||
<line num="215" count="0" type="stmt"/>
|
||||
</file>
|
||||
</package>
|
||||
</project>
|
||||
|
||||
File diff suppressed because one or more lines are too long
+46
-31
@@ -23,30 +23,30 @@
|
||||
<div class='clearfix'>
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">90.32% </span>
|
||||
<span class="strong">50.4% </span>
|
||||
<span class="quiet">Statements</span>
|
||||
<span class='fraction'>112/124</span>
|
||||
<span class='fraction'>124/246</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">93.1% </span>
|
||||
<span class="strong">47.91% </span>
|
||||
<span class="quiet">Branches</span>
|
||||
<span class='fraction'>27/29</span>
|
||||
<span class='fraction'>23/48</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">84.48% </span>
|
||||
<span class="strong">17.75% </span>
|
||||
<span class="quiet">Functions</span>
|
||||
<span class='fraction'>49/58</span>
|
||||
<span class='fraction'>19/107</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">90.51% </span>
|
||||
<span class="strong">57% </span>
|
||||
<span class="quiet">Lines</span>
|
||||
<span class='fraction'>105/116</span>
|
||||
<span class='fraction'>118/207</span>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
<div class='status-line high'></div>
|
||||
<div class='status-line medium'></div>
|
||||
<div class="pad1">
|
||||
<table class="coverage-summary">
|
||||
<thead>
|
||||
@@ -80,17 +80,17 @@
|
||||
</thead>
|
||||
<tbody><tr>
|
||||
<td class="file low" data-value="src"><a href="src/index.html">src</a></td>
|
||||
<td data-value="33.33" class="pic low">
|
||||
<div class="chart"><div class="cover-fill" style="width: 33%"></div><div class="cover-empty" style="width: 67%"></div></div>
|
||||
<td data-value="44.44" class="pic low">
|
||||
<div class="chart"><div class="cover-fill" style="width: 44%"></div><div class="cover-empty" style="width: 56%"></div></div>
|
||||
</td>
|
||||
<td data-value="33.33" class="pct low">33.33%</td>
|
||||
<td data-value="6" class="abs low">2/6</td>
|
||||
<td data-value="50" class="pct medium">50%</td>
|
||||
<td data-value="2" class="abs medium">1/2</td>
|
||||
<td data-value="50" class="pct medium">50%</td>
|
||||
<td data-value="4" class="abs medium">2/4</td>
|
||||
<td data-value="33.33" class="pct low">33.33%</td>
|
||||
<td data-value="6" class="abs low">2/6</td>
|
||||
<td data-value="44.44" class="pct low">44.44%</td>
|
||||
<td data-value="9" class="abs low">4/9</td>
|
||||
<td data-value="0" class="pct low">0%</td>
|
||||
<td data-value="2" class="abs low">0/2</td>
|
||||
<td data-value="25" class="pct low">25%</td>
|
||||
<td data-value="4" class="abs low">1/4</td>
|
||||
<td data-value="44.44" class="pct low">44.44%</td>
|
||||
<td data-value="9" class="abs low">4/9</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
@@ -109,18 +109,33 @@
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="file high" data-value="src/mixin"><a href="src/mixin/index.html">src/mixin</a></td>
|
||||
<td data-value="92.79" class="pic high">
|
||||
<div class="chart"><div class="cover-fill" style="width: 92%"></div><div class="cover-empty" style="width: 8%"></div></div>
|
||||
<td class="file low" data-value="src/mixin"><a href="src/mixin/index.html">src/mixin</a></td>
|
||||
<td data-value="42.26" class="pic low">
|
||||
<div class="chart"><div class="cover-fill" style="width: 42%"></div><div class="cover-empty" style="width: 58%"></div></div>
|
||||
</td>
|
||||
<td data-value="92.79" class="pct high">92.79%</td>
|
||||
<td data-value="111" class="abs high">103/111</td>
|
||||
<td data-value="96.29" class="pct high">96.29%</td>
|
||||
<td data-value="27" class="abs high">26/27</td>
|
||||
<td data-value="86.27" class="pct high">86.27%</td>
|
||||
<td data-value="51" class="abs high">44/51</td>
|
||||
<td data-value="93.2" class="pct high">93.2%</td>
|
||||
<td data-value="103" class="abs high">96/103</td>
|
||||
<td data-value="42.26" class="pct low">42.26%</td>
|
||||
<td data-value="194" class="abs low">82/194</td>
|
||||
<td data-value="36.11" class="pct low">36.11%</td>
|
||||
<td data-value="36" class="abs low">13/36</td>
|
||||
<td data-value="10.11" class="pct low">10.11%</td>
|
||||
<td data-value="89" class="abs low">9/89</td>
|
||||
<td data-value="50.31" class="pct medium">50.31%</td>
|
||||
<td data-value="159" class="abs medium">80/159</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="file high" data-value="src/mixin/math"><a href="src/mixin/math/index.html">src/mixin/math</a></td>
|
||||
<td data-value="86.11" class="pic high">
|
||||
<div class="chart"><div class="cover-fill" style="width: 86%"></div><div class="cover-empty" style="width: 14%"></div></div>
|
||||
</td>
|
||||
<td data-value="86.11" class="pct high">86.11%</td>
|
||||
<td data-value="36" class="abs high">31/36</td>
|
||||
<td data-value="100" class="pct high">100%</td>
|
||||
<td data-value="10" class="abs high">10/10</td>
|
||||
<td data-value="54.54" class="pct medium">54.54%</td>
|
||||
<td data-value="11" class="abs medium">6/11</td>
|
||||
<td data-value="84.37" class="pct high">84.37%</td>
|
||||
<td data-value="32" class="abs high">27/32</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
@@ -131,7 +146,7 @@
|
||||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2026-06-23T20:42:03.618Z
|
||||
at 2026-06-26T02:19:51.712Z
|
||||
</div>
|
||||
<script src="prettify.js"></script>
|
||||
<script>
|
||||
|
||||
@@ -116,7 +116,7 @@
|
||||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2026-06-23T20:42:03.618Z
|
||||
at 2026-06-26T02:19:51.712Z
|
||||
</div>
|
||||
<script src="../../prettify.js"></script>
|
||||
<script>
|
||||
|
||||
@@ -94,7 +94,20 @@
|
||||
<a name='L29'></a><a href='#L29'>29</a>
|
||||
<a name='L30'></a><a href='#L30'>30</a>
|
||||
<a name='L31'></a><a href='#L31'>31</a>
|
||||
<a name='L32'></a><a href='#L32'>32</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
||||
<a name='L32'></a><a href='#L32'>32</a>
|
||||
<a name='L33'></a><a href='#L33'>33</a>
|
||||
<a name='L34'></a><a href='#L34'>34</a>
|
||||
<a name='L35'></a><a href='#L35'>35</a>
|
||||
<a name='L36'></a><a href='#L36'>36</a>
|
||||
<a name='L37'></a><a href='#L37'>37</a>
|
||||
<a name='L38'></a><a href='#L38'>38</a>
|
||||
<a name='L39'></a><a href='#L39'>39</a>
|
||||
<a name='L40'></a><a href='#L40'>40</a>
|
||||
<a name='L41'></a><a href='#L41'>41</a>
|
||||
<a name='L42'></a><a href='#L42'>42</a>
|
||||
<a name='L43'></a><a href='#L43'>43</a>
|
||||
<a name='L44'></a><a href='#L44'>44</a>
|
||||
<a name='L45'></a><a href='#L45'>45</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
@@ -111,19 +124,32 @@
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">4x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">66x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">66x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">71x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">66x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">4x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">2x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">2x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">10x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">2x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import type { DefaultRegistry, Methods, Registry } from "../registry";
|
||||
import type { shim } from "./mixin";
|
||||
@@ -137,14 +163,27 @@ export type Base<T> = T extends { [shim]: { value: infer U } }
|
||||
export type Fluent<
|
||||
T,
|
||||
Reg extends Registry = DefaultRegistry,
|
||||
> = Base<T> & Methods<T, Reg>;
|
||||
> = Base<T> & Methods<T, Reg> extends infer U
|
||||
? U &
|
||||
Pick<
|
||||
{
|
||||
/**
|
||||
* Immediate casts and conversions to other types.
|
||||
*/
|
||||
to: unknown;
|
||||
|
||||
[K: PropertyKey]: unknown;
|
||||
},
|
||||
keyof U
|
||||
>
|
||||
: never;
|
||||
|
||||
export function makeFluent<const Reg extends Registry>(
|
||||
registry: Reg,
|
||||
) {
|
||||
const fluent = <const T>(value: T) => {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
|
||||
const f = { value } as never as Fluent<T, Reg>;
|
||||
const f = { value } as unknown as Fluent<T, Reg>;
|
||||
|
||||
for (const mixin of registry) {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
|
||||
@@ -163,7 +202,7 @@ export function makeFluent<const Reg extends Registry>(
|
||||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2026-06-23T20:42:03.618Z
|
||||
at 2026-06-26T02:19:51.712Z
|
||||
</div>
|
||||
<script src="../../prettify.js"></script>
|
||||
<script>
|
||||
|
||||
@@ -244,7 +244,7 @@ export type Instansiate<
|
||||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2026-06-23T20:42:03.618Z
|
||||
at 2026-06-26T02:19:51.712Z
|
||||
</div>
|
||||
<script src="../../prettify.js"></script>
|
||||
<script>
|
||||
|
||||
+50
-20
@@ -23,30 +23,30 @@
|
||||
<div class='clearfix'>
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">33.33% </span>
|
||||
<span class="strong">44.44% </span>
|
||||
<span class="quiet">Statements</span>
|
||||
<span class='fraction'>2/6</span>
|
||||
<span class='fraction'>4/9</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">50% </span>
|
||||
<span class="strong">0% </span>
|
||||
<span class="quiet">Branches</span>
|
||||
<span class='fraction'>1/2</span>
|
||||
<span class='fraction'>0/2</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">50% </span>
|
||||
<span class="strong">25% </span>
|
||||
<span class="quiet">Functions</span>
|
||||
<span class='fraction'>2/4</span>
|
||||
<span class='fraction'>1/4</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">33.33% </span>
|
||||
<span class="strong">44.44% </span>
|
||||
<span class="quiet">Lines</span>
|
||||
<span class='fraction'>2/6</span>
|
||||
<span class='fraction'>4/9</span>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -79,18 +79,48 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody><tr>
|
||||
<td class="file low" data-value="internal.ts"><a href="internal.ts.html">internal.ts</a></td>
|
||||
<td data-value="33.33" class="pic low">
|
||||
<div class="chart"><div class="cover-fill" style="width: 33%"></div><div class="cover-empty" style="width: 67%"></div></div>
|
||||
<td class="file high" data-value="index.ts"><a href="index.ts.html">index.ts</a></td>
|
||||
<td data-value="100" class="pic high">
|
||||
<div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
|
||||
</td>
|
||||
<td data-value="33.33" class="pct low">33.33%</td>
|
||||
<td data-value="6" class="abs low">2/6</td>
|
||||
<td data-value="50" class="pct medium">50%</td>
|
||||
<td data-value="2" class="abs medium">1/2</td>
|
||||
<td data-value="50" class="pct medium">50%</td>
|
||||
<td data-value="4" class="abs medium">2/4</td>
|
||||
<td data-value="33.33" class="pct low">33.33%</td>
|
||||
<td data-value="6" class="abs low">2/6</td>
|
||||
<td data-value="100" class="pct high">100%</td>
|
||||
<td data-value="2" class="abs high">2/2</td>
|
||||
<td data-value="100" class="pct high">100%</td>
|
||||
<td data-value="0" class="abs high">0/0</td>
|
||||
<td data-value="100" class="pct high">100%</td>
|
||||
<td data-value="0" class="abs high">0/0</td>
|
||||
<td data-value="100" class="pct high">100%</td>
|
||||
<td data-value="2" class="abs high">2/2</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="file low" data-value="internal.ts"><a href="internal.ts.html">internal.ts</a></td>
|
||||
<td data-value="16.66" class="pic low">
|
||||
<div class="chart"><div class="cover-fill" style="width: 16%"></div><div class="cover-empty" style="width: 84%"></div></div>
|
||||
</td>
|
||||
<td data-value="16.66" class="pct low">16.66%</td>
|
||||
<td data-value="6" class="abs low">1/6</td>
|
||||
<td data-value="0" class="pct low">0%</td>
|
||||
<td data-value="2" class="abs low">0/2</td>
|
||||
<td data-value="25" class="pct low">25%</td>
|
||||
<td data-value="4" class="abs low">1/4</td>
|
||||
<td data-value="16.66" class="pct low">16.66%</td>
|
||||
<td data-value="6" class="abs low">1/6</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="file high" data-value="registry.ts"><a href="registry.ts.html">registry.ts</a></td>
|
||||
<td data-value="100" class="pic high">
|
||||
<div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
|
||||
</td>
|
||||
<td data-value="100" class="pct high">100%</td>
|
||||
<td data-value="1" class="abs high">1/1</td>
|
||||
<td data-value="100" class="pct high">100%</td>
|
||||
<td data-value="0" class="abs high">0/0</td>
|
||||
<td data-value="100" class="pct high">100%</td>
|
||||
<td data-value="0" class="abs high">0/0</td>
|
||||
<td data-value="100" class="pct high">100%</td>
|
||||
<td data-value="1" class="abs high">1/1</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
@@ -101,7 +131,7 @@
|
||||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2026-06-23T20:42:03.618Z
|
||||
at 2026-06-26T02:19:51.712Z
|
||||
</div>
|
||||
<script src="../prettify.js"></script>
|
||||
<script>
|
||||
|
||||
@@ -0,0 +1,100 @@
|
||||
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<title>Code coverage report for src/index.ts</title>
|
||||
<meta charset="utf-8" />
|
||||
<link rel="stylesheet" href="../prettify.css" />
|
||||
<link rel="stylesheet" href="../base.css" />
|
||||
<link rel="shortcut icon" type="image/x-icon" href="../favicon.png" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<style type='text/css'>
|
||||
.coverage-summary .sorter {
|
||||
background-image: url(../sort-arrow-sprite.png);
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class='wrapper'>
|
||||
<div class='pad1'>
|
||||
<h1><a href="../index.html">All files</a> / <a href="index.html">src</a> index.ts</h1>
|
||||
<div class='clearfix'>
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">100% </span>
|
||||
<span class="quiet">Statements</span>
|
||||
<span class='fraction'>2/2</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">100% </span>
|
||||
<span class="quiet">Branches</span>
|
||||
<span class='fraction'>0/0</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">100% </span>
|
||||
<span class="quiet">Functions</span>
|
||||
<span class='fraction'>0/0</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">100% </span>
|
||||
<span class="quiet">Lines</span>
|
||||
<span class='fraction'>2/2</span>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<p class="quiet">
|
||||
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||
</p>
|
||||
<template id="filterTemplate">
|
||||
<div class="quiet">
|
||||
Filter:
|
||||
<input type="search" id="fileSearch">
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
<div class='status-line high'></div>
|
||||
<pre><table class="coverage">
|
||||
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||
<a name='L2'></a><a href='#L2'>2</a>
|
||||
<a name='L3'></a><a href='#L3'>3</a>
|
||||
<a name='L4'></a><a href='#L4'>4</a>
|
||||
<a name='L5'></a><a href='#L5'>5</a>
|
||||
<a name='L6'></a><a href='#L6'>6</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import { makeFluent } from "./base";
|
||||
import { DEFAULT_REGISTRY } from "./registry";
|
||||
|
||||
export const fluent = makeFluent(DEFAULT_REGISTRY);
|
||||
export const $ = fluent;
|
||||
</pre></td></tr></table></pre>
|
||||
|
||||
<div class='push'></div><!-- for sticky footer -->
|
||||
</div><!-- /wrapper -->
|
||||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2026-06-26T02:19:51.712Z
|
||||
</div>
|
||||
<script src="../prettify.js"></script>
|
||||
<script>
|
||||
window.onload = function () {
|
||||
prettyPrint();
|
||||
};
|
||||
</script>
|
||||
<script src="../sorter.js"></script>
|
||||
<script src="../block-navigation.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -23,30 +23,30 @@
|
||||
<div class='clearfix'>
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">33.33% </span>
|
||||
<span class="strong">16.66% </span>
|
||||
<span class="quiet">Statements</span>
|
||||
<span class='fraction'>2/6</span>
|
||||
<span class='fraction'>1/6</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">50% </span>
|
||||
<span class="strong">0% </span>
|
||||
<span class="quiet">Branches</span>
|
||||
<span class='fraction'>1/2</span>
|
||||
<span class='fraction'>0/2</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">50% </span>
|
||||
<span class="strong">25% </span>
|
||||
<span class="quiet">Functions</span>
|
||||
<span class='fraction'>2/4</span>
|
||||
<span class='fraction'>1/4</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">33.33% </span>
|
||||
<span class="strong">16.66% </span>
|
||||
<span class="quiet">Lines</span>
|
||||
<span class='fraction'>2/6</span>
|
||||
<span class='fraction'>1/6</span>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -129,7 +129,7 @@
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">4x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
@@ -144,7 +144,7 @@
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">53x</span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
@@ -190,7 +190,7 @@ export interface Identity extends HKT {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
|
||||
export const never = undefined as never;
|
||||
|
||||
export type Constraint<T, U extends T> = U;
|
||||
export type MaxDepth = 20;
|
||||
|
||||
export class AssertionError extends Error {
|
||||
<span class="fstat-no" title="function not covered" > public c</span>onstructor(msg?: string) {
|
||||
@@ -199,11 +199,11 @@ export class AssertionError extends Error {
|
||||
}
|
||||
}
|
||||
|
||||
export function assert(
|
||||
export function <span class="fstat-no" title="function not covered" >assert(</span>
|
||||
condition: unknown,
|
||||
msg?: string,
|
||||
): asserts condition {
|
||||
<span class="missing-if-branch" title="if path not taken" >I</span>if (!Boolean(condition))
|
||||
<span class="cstat-no" title="statement not covered" > if (!Boolean(condition))</span>
|
||||
<span class="cstat-no" title="statement not covered" > throw new AssertionError(</span>
|
||||
["Assertion error", msg]
|
||||
.<span class="fstat-no" title="function not covered" >filter((v</span>) => <span class="cstat-no" title="statement not covered" >v !== undefined)</span>
|
||||
@@ -247,7 +247,7 @@ export interface HidePrototype {
|
||||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2026-06-23T20:42:03.618Z
|
||||
at 2026-06-26T02:19:51.712Z
|
||||
</div>
|
||||
<script src="../prettify.js"></script>
|
||||
<script>
|
||||
|
||||
+668
-167
File diff suppressed because it is too large
Load Diff
@@ -23,30 +23,30 @@
|
||||
<div class='clearfix'>
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">93.1% </span>
|
||||
<span class="strong">10.34% </span>
|
||||
<span class="quiet">Statements</span>
|
||||
<span class='fraction'>27/29</span>
|
||||
<span class='fraction'>3/29</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">100% </span>
|
||||
<span class="strong">14.28% </span>
|
||||
<span class="quiet">Branches</span>
|
||||
<span class='fraction'>7/7</span>
|
||||
<span class='fraction'>1/7</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">81.81% </span>
|
||||
<span class="strong">9.09% </span>
|
||||
<span class="quiet">Functions</span>
|
||||
<span class='fraction'>9/11</span>
|
||||
<span class='fraction'>1/11</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">92.3% </span>
|
||||
<span class="strong">7.69% </span>
|
||||
<span class="quiet">Lines</span>
|
||||
<span class='fraction'>24/26</span>
|
||||
<span class='fraction'>2/26</span>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
<div class='status-line high'></div>
|
||||
<div class='status-line low'></div>
|
||||
<pre><table class="coverage">
|
||||
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||
<a name='L2'></a><a href='#L2'>2</a>
|
||||
@@ -247,58 +247,58 @@
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">5x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">3x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">3x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">2x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
@@ -383,58 +383,58 @@ interface BaseFluent<T> {
|
||||
}
|
||||
|
||||
export const AsyncMixin = Mixin<AsyncMixin>((value, $, fluent) => {
|
||||
if (!(value instanceof Promise)) return;
|
||||
<span class="missing-if-branch" title="else path not taken" >E</span>if (!(value instanceof Promise)) return;
|
||||
|
||||
$.then = (callback: (value: unknown) => unknown) => {
|
||||
return fluent(value.then(callback));
|
||||
<span class="cstat-no" title="statement not covered" > $.<span class="fstat-no" title="function not covered" >then = (c</span>allback: (value: unknown) => unknown) => {</span>
|
||||
<span class="cstat-no" title="statement not covered" > return fluent(value.then(callback));</span>
|
||||
};
|
||||
|
||||
Object.defineProperty($, "awaited", {
|
||||
<span class="cstat-no" title="statement not covered" > Object.defineProperty($, "awaited", {</span>
|
||||
enumerable: true,
|
||||
get() {
|
||||
let v: Promise<BaseFluent<unknown>> = value.then((v) =>
|
||||
fluent(v),
|
||||
<span class="fstat-no" title="function not covered" > get() {</span>
|
||||
let v: Promise<BaseFluent<unknown>> = <span class="cstat-no" title="statement not covered" >value.<span class="fstat-no" title="function not covered" >then((v</span>) =></span>
|
||||
<span class="cstat-no" title="statement not covered" > fluent(v),</span>
|
||||
);
|
||||
|
||||
const path: PropertyKey[] = [];
|
||||
const path: PropertyKey[] = <span class="cstat-no" title="statement not covered" >[];</span>
|
||||
// eslint-disable-next-line no-empty-pattern
|
||||
const proxy = new Proxy((...[]: unknown[]) => proxy, {
|
||||
get: (_, key) => {
|
||||
if (key === "value")
|
||||
return v.then((v) => v.value);
|
||||
path.push(key);
|
||||
return proxy;
|
||||
const proxy = <span class="cstat-no" title="statement not covered" >new <span class="fstat-no" title="function not covered" >Proxy((.</span>..[]: unknown[]) => <span class="cstat-no" title="statement not covered" >proxy, {</span></span>
|
||||
<span class="fstat-no" title="function not covered" > get: (_</span>, key) => {
|
||||
<span class="cstat-no" title="statement not covered" > if (key === "value")</span>
|
||||
<span class="cstat-no" title="statement not covered" > return v.<span class="fstat-no" title="function not covered" >then((v</span>) => <span class="cstat-no" title="statement not covered" >v.value)</span>;</span>
|
||||
<span class="cstat-no" title="statement not covered" > path.push(key);</span>
|
||||
<span class="cstat-no" title="statement not covered" > return proxy;</span>
|
||||
},
|
||||
apply: (target, thisArg, args: unknown[]) => {
|
||||
v = v.then((v) => {
|
||||
let obj: unknown = v;
|
||||
for (const node of path) {
|
||||
assert(
|
||||
<span class="fstat-no" title="function not covered" > apply: (t</span>arget, thisArg, args: unknown[]) => {
|
||||
<span class="cstat-no" title="statement not covered" > v = v.<span class="fstat-no" title="function not covered" >then((v</span>) => {</span>
|
||||
let obj: unknown = <span class="cstat-no" title="statement not covered" >v;</span>
|
||||
<span class="cstat-no" title="statement not covered" > for (const node of path) {</span>
|
||||
<span class="cstat-no" title="statement not covered" > assert(</span>
|
||||
typeof obj === "object" &&
|
||||
obj !== null &&
|
||||
node in obj,
|
||||
);
|
||||
assertType<Record<PropertyKey, unknown>>(
|
||||
<span class="cstat-no" title="statement not covered" > assertType<Record<PropertyKey, unknown>>(</span>
|
||||
obj,
|
||||
);
|
||||
|
||||
obj = obj[node];
|
||||
<span class="cstat-no" title="statement not covered" > obj = obj[node];</span>
|
||||
}
|
||||
|
||||
assert(typeof obj === "function");
|
||||
assertType<
|
||||
<span class="cstat-no" title="statement not covered" > assert(typeof obj === "function");</span>
|
||||
<span class="cstat-no" title="statement not covered" > assertType<</span>
|
||||
(
|
||||
...args: unknown[]
|
||||
) => BaseFluent<unknown>
|
||||
>(obj);
|
||||
|
||||
return obj(...args);
|
||||
<span class="cstat-no" title="statement not covered" > return obj(...args);</span>
|
||||
});
|
||||
return target.apply(thisArg, args);
|
||||
<span class="cstat-no" title="statement not covered" > return target.apply(thisArg, args);</span>
|
||||
},
|
||||
});
|
||||
|
||||
return proxy;
|
||||
<span class="cstat-no" title="statement not covered" > return proxy;</span>
|
||||
},
|
||||
});
|
||||
});
|
||||
@@ -478,7 +478,7 @@ if (import.meta.vitest) {
|
||||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2026-06-23T20:42:03.618Z
|
||||
at 2026-06-26T02:19:51.712Z
|
||||
</div>
|
||||
<script src="../../prettify.js"></script>
|
||||
<script>
|
||||
|
||||
@@ -23,9 +23,9 @@
|
||||
<div class='clearfix'>
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">100% </span>
|
||||
<span class="strong">50% </span>
|
||||
<span class="quiet">Statements</span>
|
||||
<span class='fraction'>6/6</span>
|
||||
<span class='fraction'>3/6</span>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -37,16 +37,16 @@
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">100% </span>
|
||||
<span class="strong">33.33% </span>
|
||||
<span class="quiet">Functions</span>
|
||||
<span class='fraction'>3/3</span>
|
||||
<span class='fraction'>1/3</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">100% </span>
|
||||
<span class="strong">50% </span>
|
||||
<span class="quiet">Lines</span>
|
||||
<span class='fraction'>6/6</span>
|
||||
<span class='fraction'>3/6</span>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
<div class='status-line high'></div>
|
||||
<div class='status-line medium'></div>
|
||||
<pre><table class="coverage">
|
||||
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||
<a name='L2'></a><a href='#L2'>2</a>
|
||||
@@ -145,7 +145,11 @@
|
||||
<a name='L80'></a><a href='#L80'>80</a>
|
||||
<a name='L81'></a><a href='#L81'>81</a>
|
||||
<a name='L82'></a><a href='#L82'>82</a>
|
||||
<a name='L83'></a><a href='#L83'>83</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
||||
<a name='L83'></a><a href='#L83'>83</a>
|
||||
<a name='L84'></a><a href='#L84'>84</a>
|
||||
<a name='L85'></a><a href='#L85'>85</a>
|
||||
<a name='L86'></a><a href='#L86'>86</a>
|
||||
<a name='L87'></a><a href='#L87'>87</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
@@ -187,14 +191,18 @@
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">2x</span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">2x</span>
|
||||
<span class="cline-any cline-yes">12x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">12x</span>
|
||||
<span class="cline-any cline-yes">4x</span>
|
||||
<span class="cline-any cline-no"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
@@ -239,13 +247,15 @@ export interface Base extends Mixin.HKT {
|
||||
* modifying the value.
|
||||
* @param callback The interospective callback
|
||||
* @see `transform` to modify
|
||||
* @from {@link Base `Base`}
|
||||
* @example
|
||||
* ```ts
|
||||
* let x;
|
||||
* const value = $(10).tap(v => { x = ++v }).value;
|
||||
*
|
||||
* expect(x).toBe(11);
|
||||
* expect(value).toBe(10);
|
||||
* @from {@link Base `Base`}
|
||||
* ```
|
||||
*/
|
||||
tap(
|
||||
callback: (value: Readonly<T>) => void,
|
||||
@@ -255,12 +265,14 @@ export interface Base extends Mixin.HKT {
|
||||
* `callback` using the outputted return value as a new value.
|
||||
* A.K.A., _transform_ the current value using a callback
|
||||
* @param callback The transformative callback
|
||||
* @from {@link Base `Base`}
|
||||
* @example
|
||||
* ```ts
|
||||
* const value = $("Hello")
|
||||
* .transform(v => v.toUpperCase())
|
||||
* .value;
|
||||
* expect(value).toBe("HELLO");
|
||||
* @from {@link Base `Base`}
|
||||
* ```
|
||||
*/
|
||||
transform<U>(
|
||||
callback: (value: T) => U,
|
||||
@@ -270,13 +282,13 @@ export interface Base extends Mixin.HKT {
|
||||
}
|
||||
|
||||
export const Base = Mixin<Base>((value, $, fluent) => {
|
||||
$.tap = (callback: (value: unknown) => void) => {
|
||||
callback(value);
|
||||
return fluent(value);
|
||||
$.<span class="fstat-no" title="function not covered" >tap = (c</span>allback: (value: unknown) => void) => {
|
||||
<span class="cstat-no" title="statement not covered" > callback(value);</span>
|
||||
<span class="cstat-no" title="statement not covered" > return fluent(value);</span>
|
||||
};
|
||||
|
||||
$.transform = (callback: (value: unknown) => unknown) => {
|
||||
return fluent(callback(value));
|
||||
$.<span class="fstat-no" title="function not covered" >transform = (c</span>allback: (value: unknown) => unknown) => {
|
||||
<span class="cstat-no" title="statement not covered" > return fluent(callback(value));</span>
|
||||
};
|
||||
});
|
||||
|
||||
@@ -316,7 +328,7 @@ if (import.meta.vitest) {
|
||||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2026-06-23T20:42:03.618Z
|
||||
at 2026-06-26T02:19:51.712Z
|
||||
</div>
|
||||
<script src="../../prettify.js"></script>
|
||||
<script>
|
||||
|
||||
@@ -23,30 +23,30 @@
|
||||
<div class='clearfix'>
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">92.79% </span>
|
||||
<span class="strong">42.26% </span>
|
||||
<span class="quiet">Statements</span>
|
||||
<span class='fraction'>103/111</span>
|
||||
<span class='fraction'>82/194</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">96.29% </span>
|
||||
<span class="strong">36.11% </span>
|
||||
<span class="quiet">Branches</span>
|
||||
<span class='fraction'>26/27</span>
|
||||
<span class='fraction'>13/36</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">86.27% </span>
|
||||
<span class="strong">10.11% </span>
|
||||
<span class="quiet">Functions</span>
|
||||
<span class='fraction'>44/51</span>
|
||||
<span class='fraction'>9/89</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">93.2% </span>
|
||||
<span class="strong">50.31% </span>
|
||||
<span class="quiet">Lines</span>
|
||||
<span class='fraction'>96/103</span>
|
||||
<span class='fraction'>80/159</span>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
<div class='status-line high'></div>
|
||||
<div class='status-line low'></div>
|
||||
<div class="pad1">
|
||||
<table class="coverage-summary">
|
||||
<thead>
|
||||
@@ -79,63 +79,78 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody><tr>
|
||||
<td class="file high" data-value="array.ts"><a href="array.ts.html">array.ts</a></td>
|
||||
<td data-value="95.55" class="pic high">
|
||||
<div class="chart"><div class="cover-fill" style="width: 95%"></div><div class="cover-empty" style="width: 5%"></div></div>
|
||||
<td class="file low" data-value="array.ts"><a href="array.ts.html">array.ts</a></td>
|
||||
<td data-value="44.44" class="pic low">
|
||||
<div class="chart"><div class="cover-fill" style="width: 44%"></div><div class="cover-empty" style="width: 56%"></div></div>
|
||||
</td>
|
||||
<td data-value="95.55" class="pct high">95.55%</td>
|
||||
<td data-value="45" class="abs high">43/45</td>
|
||||
<td data-value="92.3" class="pct high">92.3%</td>
|
||||
<td data-value="13" class="abs high">12/13</td>
|
||||
<td data-value="95.83" class="pct high">95.83%</td>
|
||||
<td data-value="24" class="abs high">23/24</td>
|
||||
<td data-value="97.56" class="pct high">97.56%</td>
|
||||
<td data-value="41" class="abs high">40/41</td>
|
||||
<td data-value="44.44" class="pct low">44.44%</td>
|
||||
<td data-value="45" class="abs low">20/45</td>
|
||||
<td data-value="30.76" class="pct low">30.76%</td>
|
||||
<td data-value="13" class="abs low">4/13</td>
|
||||
<td data-value="12.5" class="pct low">12.5%</td>
|
||||
<td data-value="24" class="abs low">3/24</td>
|
||||
<td data-value="46.34" class="pct low">46.34%</td>
|
||||
<td data-value="41" class="abs low">19/41</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="file high" data-value="awaited.ts"><a href="awaited.ts.html">awaited.ts</a></td>
|
||||
<td data-value="93.1" class="pic high">
|
||||
<div class="chart"><div class="cover-fill" style="width: 93%"></div><div class="cover-empty" style="width: 7%"></div></div>
|
||||
<td class="file low" data-value="awaited.ts"><a href="awaited.ts.html">awaited.ts</a></td>
|
||||
<td data-value="10.34" class="pic low">
|
||||
<div class="chart"><div class="cover-fill" style="width: 10%"></div><div class="cover-empty" style="width: 90%"></div></div>
|
||||
</td>
|
||||
<td data-value="93.1" class="pct high">93.1%</td>
|
||||
<td data-value="29" class="abs high">27/29</td>
|
||||
<td data-value="100" class="pct high">100%</td>
|
||||
<td data-value="7" class="abs high">7/7</td>
|
||||
<td data-value="81.81" class="pct high">81.81%</td>
|
||||
<td data-value="11" class="abs high">9/11</td>
|
||||
<td data-value="92.3" class="pct high">92.3%</td>
|
||||
<td data-value="26" class="abs high">24/26</td>
|
||||
<td data-value="10.34" class="pct low">10.34%</td>
|
||||
<td data-value="29" class="abs low">3/29</td>
|
||||
<td data-value="14.28" class="pct low">14.28%</td>
|
||||
<td data-value="7" class="abs low">1/7</td>
|
||||
<td data-value="9.09" class="pct low">9.09%</td>
|
||||
<td data-value="11" class="abs low">1/11</td>
|
||||
<td data-value="7.69" class="pct low">7.69%</td>
|
||||
<td data-value="26" class="abs low">2/26</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="file high" data-value="base.ts"><a href="base.ts.html">base.ts</a></td>
|
||||
<td data-value="100" class="pic high">
|
||||
<div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
|
||||
<td class="file medium" data-value="base.ts"><a href="base.ts.html">base.ts</a></td>
|
||||
<td data-value="50" class="pic medium">
|
||||
<div class="chart"><div class="cover-fill" style="width: 50%"></div><div class="cover-empty" style="width: 50%"></div></div>
|
||||
</td>
|
||||
<td data-value="100" class="pct high">100%</td>
|
||||
<td data-value="6" class="abs high">6/6</td>
|
||||
<td data-value="50" class="pct medium">50%</td>
|
||||
<td data-value="6" class="abs medium">3/6</td>
|
||||
<td data-value="100" class="pct high">100%</td>
|
||||
<td data-value="0" class="abs high">0/0</td>
|
||||
<td data-value="100" class="pct high">100%</td>
|
||||
<td data-value="3" class="abs high">3/3</td>
|
||||
<td data-value="100" class="pct high">100%</td>
|
||||
<td data-value="6" class="abs high">6/6</td>
|
||||
<td data-value="33.33" class="pct low">33.33%</td>
|
||||
<td data-value="3" class="abs low">1/3</td>
|
||||
<td data-value="50" class="pct medium">50%</td>
|
||||
<td data-value="6" class="abs medium">3/6</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="file high" data-value="optional.ts"><a href="optional.ts.html">optional.ts</a></td>
|
||||
<td data-value="87.09" class="pic high">
|
||||
<div class="chart"><div class="cover-fill" style="width: 87%"></div><div class="cover-empty" style="width: 13%"></div></div>
|
||||
<td class="file medium" data-value="math.ts"><a href="math.ts.html">math.ts</a></td>
|
||||
<td data-value="54.21" class="pic medium">
|
||||
<div class="chart"><div class="cover-fill" style="width: 54%"></div><div class="cover-empty" style="width: 46%"></div></div>
|
||||
</td>
|
||||
<td data-value="87.09" class="pct high">87.09%</td>
|
||||
<td data-value="31" class="abs high">27/31</td>
|
||||
<td data-value="100" class="pct high">100%</td>
|
||||
<td data-value="7" class="abs high">7/7</td>
|
||||
<td data-value="69.23" class="pct medium">69.23%</td>
|
||||
<td data-value="13" class="abs medium">9/13</td>
|
||||
<td data-value="86.66" class="pct high">86.66%</td>
|
||||
<td data-value="30" class="abs high">26/30</td>
|
||||
<td data-value="54.21" class="pct medium">54.21%</td>
|
||||
<td data-value="83" class="abs medium">45/83</td>
|
||||
<td data-value="55.55" class="pct medium">55.55%</td>
|
||||
<td data-value="9" class="abs medium">5/9</td>
|
||||
<td data-value="5.26" class="pct low">5.26%</td>
|
||||
<td data-value="38" class="abs low">2/38</td>
|
||||
<td data-value="80.35" class="pct high">80.35%</td>
|
||||
<td data-value="56" class="abs high">45/56</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="file low" data-value="optional.ts"><a href="optional.ts.html">optional.ts</a></td>
|
||||
<td data-value="35.48" class="pic low">
|
||||
<div class="chart"><div class="cover-fill" style="width: 35%"></div><div class="cover-empty" style="width: 65%"></div></div>
|
||||
</td>
|
||||
<td data-value="35.48" class="pct low">35.48%</td>
|
||||
<td data-value="31" class="abs low">11/31</td>
|
||||
<td data-value="42.85" class="pct low">42.85%</td>
|
||||
<td data-value="7" class="abs low">3/7</td>
|
||||
<td data-value="15.38" class="pct low">15.38%</td>
|
||||
<td data-value="13" class="abs low">2/13</td>
|
||||
<td data-value="36.66" class="pct low">36.66%</td>
|
||||
<td data-value="30" class="abs low">11/30</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
@@ -146,7 +161,7 @@
|
||||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2026-06-23T20:42:03.618Z
|
||||
at 2026-06-26T02:19:51.712Z
|
||||
</div>
|
||||
<script src="../../prettify.js"></script>
|
||||
<script>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,116 @@
|
||||
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<title>Code coverage report for src/mixin/math</title>
|
||||
<meta charset="utf-8" />
|
||||
<link rel="stylesheet" href="../../../prettify.css" />
|
||||
<link rel="stylesheet" href="../../../base.css" />
|
||||
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<style type='text/css'>
|
||||
.coverage-summary .sorter {
|
||||
background-image: url(../../../sort-arrow-sprite.png);
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class='wrapper'>
|
||||
<div class='pad1'>
|
||||
<h1><a href="../../../index.html">All files</a> src/mixin/math</h1>
|
||||
<div class='clearfix'>
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">86.11% </span>
|
||||
<span class="quiet">Statements</span>
|
||||
<span class='fraction'>31/36</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">100% </span>
|
||||
<span class="quiet">Branches</span>
|
||||
<span class='fraction'>10/10</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">54.54% </span>
|
||||
<span class="quiet">Functions</span>
|
||||
<span class='fraction'>6/11</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">84.37% </span>
|
||||
<span class="quiet">Lines</span>
|
||||
<span class='fraction'>27/32</span>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<p class="quiet">
|
||||
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||
</p>
|
||||
<template id="filterTemplate">
|
||||
<div class="quiet">
|
||||
Filter:
|
||||
<input type="search" id="fileSearch">
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
<div class='status-line high'></div>
|
||||
<div class="pad1">
|
||||
<table class="coverage-summary">
|
||||
<thead>
|
||||
<tr>
|
||||
<th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
|
||||
<th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
|
||||
<th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
|
||||
<th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||
<th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
|
||||
<th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||
<th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
|
||||
<th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||
<th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
|
||||
<th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody><tr>
|
||||
<td class="file high" data-value="swizzle.ts"><a href="swizzle.ts.html">swizzle.ts</a></td>
|
||||
<td data-value="86.11" class="pic high">
|
||||
<div class="chart"><div class="cover-fill" style="width: 86%"></div><div class="cover-empty" style="width: 14%"></div></div>
|
||||
</td>
|
||||
<td data-value="86.11" class="pct high">86.11%</td>
|
||||
<td data-value="36" class="abs high">31/36</td>
|
||||
<td data-value="100" class="pct high">100%</td>
|
||||
<td data-value="10" class="abs high">10/10</td>
|
||||
<td data-value="54.54" class="pct medium">54.54%</td>
|
||||
<td data-value="11" class="abs medium">6/11</td>
|
||||
<td data-value="84.37" class="pct high">84.37%</td>
|
||||
<td data-value="32" class="abs high">27/32</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class='push'></div><!-- for sticky footer -->
|
||||
</div><!-- /wrapper -->
|
||||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2026-06-26T02:19:51.712Z
|
||||
</div>
|
||||
<script src="../../../prettify.js"></script>
|
||||
<script>
|
||||
window.onload = function () {
|
||||
prettyPrint();
|
||||
};
|
||||
</script>
|
||||
<script src="../../../sorter.js"></script>
|
||||
<script src="../../../block-navigation.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+271
-250
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,172 @@
|
||||
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<title>Code coverage report for src/registry.ts</title>
|
||||
<meta charset="utf-8" />
|
||||
<link rel="stylesheet" href="../prettify.css" />
|
||||
<link rel="stylesheet" href="../base.css" />
|
||||
<link rel="shortcut icon" type="image/x-icon" href="../favicon.png" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<style type='text/css'>
|
||||
.coverage-summary .sorter {
|
||||
background-image: url(../sort-arrow-sprite.png);
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class='wrapper'>
|
||||
<div class='pad1'>
|
||||
<h1><a href="../index.html">All files</a> / <a href="index.html">src</a> registry.ts</h1>
|
||||
<div class='clearfix'>
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">100% </span>
|
||||
<span class="quiet">Statements</span>
|
||||
<span class='fraction'>1/1</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">100% </span>
|
||||
<span class="quiet">Branches</span>
|
||||
<span class='fraction'>0/0</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">100% </span>
|
||||
<span class="quiet">Functions</span>
|
||||
<span class='fraction'>0/0</span>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='fl pad1y space-right2'>
|
||||
<span class="strong">100% </span>
|
||||
<span class="quiet">Lines</span>
|
||||
<span class='fraction'>1/1</span>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<p class="quiet">
|
||||
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
||||
</p>
|
||||
<template id="filterTemplate">
|
||||
<div class="quiet">
|
||||
Filter:
|
||||
<input type="search" id="fileSearch">
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
<div class='status-line high'></div>
|
||||
<pre><table class="coverage">
|
||||
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
||||
<a name='L2'></a><a href='#L2'>2</a>
|
||||
<a name='L3'></a><a href='#L3'>3</a>
|
||||
<a name='L4'></a><a href='#L4'>4</a>
|
||||
<a name='L5'></a><a href='#L5'>5</a>
|
||||
<a name='L6'></a><a href='#L6'>6</a>
|
||||
<a name='L7'></a><a href='#L7'>7</a>
|
||||
<a name='L8'></a><a href='#L8'>8</a>
|
||||
<a name='L9'></a><a href='#L9'>9</a>
|
||||
<a name='L10'></a><a href='#L10'>10</a>
|
||||
<a name='L11'></a><a href='#L11'>11</a>
|
||||
<a name='L12'></a><a href='#L12'>12</a>
|
||||
<a name='L13'></a><a href='#L13'>13</a>
|
||||
<a name='L14'></a><a href='#L14'>14</a>
|
||||
<a name='L15'></a><a href='#L15'>15</a>
|
||||
<a name='L16'></a><a href='#L16'>16</a>
|
||||
<a name='L17'></a><a href='#L17'>17</a>
|
||||
<a name='L18'></a><a href='#L18'>18</a>
|
||||
<a name='L19'></a><a href='#L19'>19</a>
|
||||
<a name='L20'></a><a href='#L20'>20</a>
|
||||
<a name='L21'></a><a href='#L21'>21</a>
|
||||
<a name='L22'></a><a href='#L22'>22</a>
|
||||
<a name='L23'></a><a href='#L23'>23</a>
|
||||
<a name='L24'></a><a href='#L24'>24</a>
|
||||
<a name='L25'></a><a href='#L25'>25</a>
|
||||
<a name='L26'></a><a href='#L26'>26</a>
|
||||
<a name='L27'></a><a href='#L27'>27</a>
|
||||
<a name='L28'></a><a href='#L28'>28</a>
|
||||
<a name='L29'></a><a href='#L29'>29</a>
|
||||
<a name='L30'></a><a href='#L30'>30</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-yes">1x</span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span>
|
||||
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import { Mixin, type Instansiate } from "./base/mixin";
|
||||
import { Array } from "./mixin/array";
|
||||
import { AsyncMixin as Async } from "./mixin/awaited";
|
||||
import { Base } from "./mixin/base";
|
||||
import { Math } from "./mixin/math";
|
||||
import { Optional } from "./mixin/optional";
|
||||
|
||||
export type Registry = readonly Mixin[];
|
||||
|
||||
export const DEFAULT_REGISTRY = [
|
||||
Async,
|
||||
Array,
|
||||
Base,
|
||||
Optional,
|
||||
Math,
|
||||
] as const satisfies Registry;
|
||||
export type DefaultRegistry = typeof DEFAULT_REGISTRY;
|
||||
|
||||
export type Methods<
|
||||
T,
|
||||
Reg extends Registry,
|
||||
TReg extends Registry = Reg,
|
||||
TOut extends Record<PropertyKey, unknown> = Record<never, never>,
|
||||
> = TReg extends readonly [
|
||||
infer M extends Mixin,
|
||||
...infer Rest extends Registry,
|
||||
]
|
||||
? Methods<T, Reg, Rest, TOut & Instansiate<M, T, Reg>>
|
||||
: TOut;
|
||||
</pre></td></tr></table></pre>
|
||||
|
||||
<div class='push'></div><!-- for sticky footer -->
|
||||
</div><!-- /wrapper -->
|
||||
<div class='footer quiet pad2 space-top1 center small'>
|
||||
Code coverage generated by
|
||||
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
||||
at 2026-06-26T02:19:51.712Z
|
||||
</div>
|
||||
<script src="../prettify.js"></script>
|
||||
<script>
|
||||
window.onload = function () {
|
||||
prettyPrint();
|
||||
};
|
||||
</script>
|
||||
<script src="../sorter.js"></script>
|
||||
<script src="../block-navigation.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user