@vpmedia/phaser 1.82.0 → 1.84.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +2 -2
  3. package/eslint.config.js +5 -3
  4. package/package.json +23 -22
  5. package/pnpm-workspace.yaml +2 -0
  6. package/coverage/clover.xml +0 -1092
  7. package/coverage/coverage-final.json +0 -19
  8. package/coverage/lcov-report/base.css +0 -224
  9. package/coverage/lcov-report/block-navigation.js +0 -87
  10. package/coverage/lcov-report/core/const.js.html +0 -901
  11. package/coverage/lcov-report/core/index.html +0 -116
  12. package/coverage/lcov-report/favicon.png +0 -0
  13. package/coverage/lcov-report/geom/circle.js.html +0 -1003
  14. package/coverage/lcov-report/geom/ellipse.js.html +0 -388
  15. package/coverage/lcov-report/geom/index.html +0 -221
  16. package/coverage/lcov-report/geom/line.js.html +0 -1102
  17. package/coverage/lcov-report/geom/matrix.js.html +0 -751
  18. package/coverage/lcov-report/geom/point.js.html +0 -1027
  19. package/coverage/lcov-report/geom/polygon.js.html +0 -604
  20. package/coverage/lcov-report/geom/rectangle.js.html +0 -1774
  21. package/coverage/lcov-report/geom/rounded_rectangle.js.html +0 -226
  22. package/coverage/lcov-report/geom/util/circle.js.html +0 -436
  23. package/coverage/lcov-report/geom/util/ellipse.js.html +0 -139
  24. package/coverage/lcov-report/geom/util/index.html +0 -221
  25. package/coverage/lcov-report/geom/util/line.js.html +0 -475
  26. package/coverage/lcov-report/geom/util/matrix.js.html +0 -223
  27. package/coverage/lcov-report/geom/util/point.js.html +0 -961
  28. package/coverage/lcov-report/geom/util/polygon.js.html +0 -124
  29. package/coverage/lcov-report/geom/util/rectangle.js.html +0 -784
  30. package/coverage/lcov-report/geom/util/rounded_rectangle.js.html +0 -136
  31. package/coverage/lcov-report/index.html +0 -161
  32. package/coverage/lcov-report/prettify.css +0 -1
  33. package/coverage/lcov-report/prettify.js +0 -2
  34. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  35. package/coverage/lcov-report/sorter.js +0 -196
  36. package/coverage/lcov-report/util/index.html +0 -116
  37. package/coverage/lcov-report/util/math.js.html +0 -958
  38. package/coverage/lcov.info +0 -2179
@@ -1,958 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for util/math.js</title>
7
- <meta charset="utf-8" />
8
- <link rel="stylesheet" href="../prettify.css" />
9
- <link rel="stylesheet" href="../base.css" />
10
- <link rel="shortcut icon" type="image/x-icon" href="../favicon.png" />
11
- <meta name="viewport" content="width=device-width, initial-scale=1" />
12
- <style type='text/css'>
13
- .coverage-summary .sorter {
14
- background-image: url(../sort-arrow-sprite.png);
15
- }
16
- </style>
17
- </head>
18
-
19
- <body>
20
- <div class='wrapper'>
21
- <div class='pad1'>
22
- <h1><a href="../index.html">All files</a> / <a href="index.html">util</a> math.js</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">58.51% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>55/94</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">44.44% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>16/36</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">57.14% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>12/21</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">59.13% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>55/93</span>
50
- </div>
51
-
52
-
53
- </div>
54
- <p class="quiet">
55
- 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.
56
- </p>
57
- <template id="filterTemplate">
58
- <div class="quiet">
59
- Filter:
60
- <input type="search" id="fileSearch">
61
- </div>
62
- </template>
63
- </div>
64
- <div class='status-line medium'></div>
65
- <pre><table class="coverage">
66
- <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
- <a name='L2'></a><a href='#L2'>2</a>
68
- <a name='L3'></a><a href='#L3'>3</a>
69
- <a name='L4'></a><a href='#L4'>4</a>
70
- <a name='L5'></a><a href='#L5'>5</a>
71
- <a name='L6'></a><a href='#L6'>6</a>
72
- <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a>
74
- <a name='L9'></a><a href='#L9'>9</a>
75
- <a name='L10'></a><a href='#L10'>10</a>
76
- <a name='L11'></a><a href='#L11'>11</a>
77
- <a name='L12'></a><a href='#L12'>12</a>
78
- <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a>
80
- <a name='L15'></a><a href='#L15'>15</a>
81
- <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a>
85
- <a name='L20'></a><a href='#L20'>20</a>
86
- <a name='L21'></a><a href='#L21'>21</a>
87
- <a name='L22'></a><a href='#L22'>22</a>
88
- <a name='L23'></a><a href='#L23'>23</a>
89
- <a name='L24'></a><a href='#L24'>24</a>
90
- <a name='L25'></a><a href='#L25'>25</a>
91
- <a name='L26'></a><a href='#L26'>26</a>
92
- <a name='L27'></a><a href='#L27'>27</a>
93
- <a name='L28'></a><a href='#L28'>28</a>
94
- <a name='L29'></a><a href='#L29'>29</a>
95
- <a name='L30'></a><a href='#L30'>30</a>
96
- <a name='L31'></a><a href='#L31'>31</a>
97
- <a name='L32'></a><a href='#L32'>32</a>
98
- <a name='L33'></a><a href='#L33'>33</a>
99
- <a name='L34'></a><a href='#L34'>34</a>
100
- <a name='L35'></a><a href='#L35'>35</a>
101
- <a name='L36'></a><a href='#L36'>36</a>
102
- <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a>
104
- <a name='L39'></a><a href='#L39'>39</a>
105
- <a name='L40'></a><a href='#L40'>40</a>
106
- <a name='L41'></a><a href='#L41'>41</a>
107
- <a name='L42'></a><a href='#L42'>42</a>
108
- <a name='L43'></a><a href='#L43'>43</a>
109
- <a name='L44'></a><a href='#L44'>44</a>
110
- <a name='L45'></a><a href='#L45'>45</a>
111
- <a name='L46'></a><a href='#L46'>46</a>
112
- <a name='L47'></a><a href='#L47'>47</a>
113
- <a name='L48'></a><a href='#L48'>48</a>
114
- <a name='L49'></a><a href='#L49'>49</a>
115
- <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a>
117
- <a name='L52'></a><a href='#L52'>52</a>
118
- <a name='L53'></a><a href='#L53'>53</a>
119
- <a name='L54'></a><a href='#L54'>54</a>
120
- <a name='L55'></a><a href='#L55'>55</a>
121
- <a name='L56'></a><a href='#L56'>56</a>
122
- <a name='L57'></a><a href='#L57'>57</a>
123
- <a name='L58'></a><a href='#L58'>58</a>
124
- <a name='L59'></a><a href='#L59'>59</a>
125
- <a name='L60'></a><a href='#L60'>60</a>
126
- <a name='L61'></a><a href='#L61'>61</a>
127
- <a name='L62'></a><a href='#L62'>62</a>
128
- <a name='L63'></a><a href='#L63'>63</a>
129
- <a name='L64'></a><a href='#L64'>64</a>
130
- <a name='L65'></a><a href='#L65'>65</a>
131
- <a name='L66'></a><a href='#L66'>66</a>
132
- <a name='L67'></a><a href='#L67'>67</a>
133
- <a name='L68'></a><a href='#L68'>68</a>
134
- <a name='L69'></a><a href='#L69'>69</a>
135
- <a name='L70'></a><a href='#L70'>70</a>
136
- <a name='L71'></a><a href='#L71'>71</a>
137
- <a name='L72'></a><a href='#L72'>72</a>
138
- <a name='L73'></a><a href='#L73'>73</a>
139
- <a name='L74'></a><a href='#L74'>74</a>
140
- <a name='L75'></a><a href='#L75'>75</a>
141
- <a name='L76'></a><a href='#L76'>76</a>
142
- <a name='L77'></a><a href='#L77'>77</a>
143
- <a name='L78'></a><a href='#L78'>78</a>
144
- <a name='L79'></a><a href='#L79'>79</a>
145
- <a name='L80'></a><a href='#L80'>80</a>
146
- <a name='L81'></a><a href='#L81'>81</a>
147
- <a name='L82'></a><a href='#L82'>82</a>
148
- <a name='L83'></a><a href='#L83'>83</a>
149
- <a name='L84'></a><a href='#L84'>84</a>
150
- <a name='L85'></a><a href='#L85'>85</a>
151
- <a name='L86'></a><a href='#L86'>86</a>
152
- <a name='L87'></a><a href='#L87'>87</a>
153
- <a name='L88'></a><a href='#L88'>88</a>
154
- <a name='L89'></a><a href='#L89'>89</a>
155
- <a name='L90'></a><a href='#L90'>90</a>
156
- <a name='L91'></a><a href='#L91'>91</a>
157
- <a name='L92'></a><a href='#L92'>92</a>
158
- <a name='L93'></a><a href='#L93'>93</a>
159
- <a name='L94'></a><a href='#L94'>94</a>
160
- <a name='L95'></a><a href='#L95'>95</a>
161
- <a name='L96'></a><a href='#L96'>96</a>
162
- <a name='L97'></a><a href='#L97'>97</a>
163
- <a name='L98'></a><a href='#L98'>98</a>
164
- <a name='L99'></a><a href='#L99'>99</a>
165
- <a name='L100'></a><a href='#L100'>100</a>
166
- <a name='L101'></a><a href='#L101'>101</a>
167
- <a name='L102'></a><a href='#L102'>102</a>
168
- <a name='L103'></a><a href='#L103'>103</a>
169
- <a name='L104'></a><a href='#L104'>104</a>
170
- <a name='L105'></a><a href='#L105'>105</a>
171
- <a name='L106'></a><a href='#L106'>106</a>
172
- <a name='L107'></a><a href='#L107'>107</a>
173
- <a name='L108'></a><a href='#L108'>108</a>
174
- <a name='L109'></a><a href='#L109'>109</a>
175
- <a name='L110'></a><a href='#L110'>110</a>
176
- <a name='L111'></a><a href='#L111'>111</a>
177
- <a name='L112'></a><a href='#L112'>112</a>
178
- <a name='L113'></a><a href='#L113'>113</a>
179
- <a name='L114'></a><a href='#L114'>114</a>
180
- <a name='L115'></a><a href='#L115'>115</a>
181
- <a name='L116'></a><a href='#L116'>116</a>
182
- <a name='L117'></a><a href='#L117'>117</a>
183
- <a name='L118'></a><a href='#L118'>118</a>
184
- <a name='L119'></a><a href='#L119'>119</a>
185
- <a name='L120'></a><a href='#L120'>120</a>
186
- <a name='L121'></a><a href='#L121'>121</a>
187
- <a name='L122'></a><a href='#L122'>122</a>
188
- <a name='L123'></a><a href='#L123'>123</a>
189
- <a name='L124'></a><a href='#L124'>124</a>
190
- <a name='L125'></a><a href='#L125'>125</a>
191
- <a name='L126'></a><a href='#L126'>126</a>
192
- <a name='L127'></a><a href='#L127'>127</a>
193
- <a name='L128'></a><a href='#L128'>128</a>
194
- <a name='L129'></a><a href='#L129'>129</a>
195
- <a name='L130'></a><a href='#L130'>130</a>
196
- <a name='L131'></a><a href='#L131'>131</a>
197
- <a name='L132'></a><a href='#L132'>132</a>
198
- <a name='L133'></a><a href='#L133'>133</a>
199
- <a name='L134'></a><a href='#L134'>134</a>
200
- <a name='L135'></a><a href='#L135'>135</a>
201
- <a name='L136'></a><a href='#L136'>136</a>
202
- <a name='L137'></a><a href='#L137'>137</a>
203
- <a name='L138'></a><a href='#L138'>138</a>
204
- <a name='L139'></a><a href='#L139'>139</a>
205
- <a name='L140'></a><a href='#L140'>140</a>
206
- <a name='L141'></a><a href='#L141'>141</a>
207
- <a name='L142'></a><a href='#L142'>142</a>
208
- <a name='L143'></a><a href='#L143'>143</a>
209
- <a name='L144'></a><a href='#L144'>144</a>
210
- <a name='L145'></a><a href='#L145'>145</a>
211
- <a name='L146'></a><a href='#L146'>146</a>
212
- <a name='L147'></a><a href='#L147'>147</a>
213
- <a name='L148'></a><a href='#L148'>148</a>
214
- <a name='L149'></a><a href='#L149'>149</a>
215
- <a name='L150'></a><a href='#L150'>150</a>
216
- <a name='L151'></a><a href='#L151'>151</a>
217
- <a name='L152'></a><a href='#L152'>152</a>
218
- <a name='L153'></a><a href='#L153'>153</a>
219
- <a name='L154'></a><a href='#L154'>154</a>
220
- <a name='L155'></a><a href='#L155'>155</a>
221
- <a name='L156'></a><a href='#L156'>156</a>
222
- <a name='L157'></a><a href='#L157'>157</a>
223
- <a name='L158'></a><a href='#L158'>158</a>
224
- <a name='L159'></a><a href='#L159'>159</a>
225
- <a name='L160'></a><a href='#L160'>160</a>
226
- <a name='L161'></a><a href='#L161'>161</a>
227
- <a name='L162'></a><a href='#L162'>162</a>
228
- <a name='L163'></a><a href='#L163'>163</a>
229
- <a name='L164'></a><a href='#L164'>164</a>
230
- <a name='L165'></a><a href='#L165'>165</a>
231
- <a name='L166'></a><a href='#L166'>166</a>
232
- <a name='L167'></a><a href='#L167'>167</a>
233
- <a name='L168'></a><a href='#L168'>168</a>
234
- <a name='L169'></a><a href='#L169'>169</a>
235
- <a name='L170'></a><a href='#L170'>170</a>
236
- <a name='L171'></a><a href='#L171'>171</a>
237
- <a name='L172'></a><a href='#L172'>172</a>
238
- <a name='L173'></a><a href='#L173'>173</a>
239
- <a name='L174'></a><a href='#L174'>174</a>
240
- <a name='L175'></a><a href='#L175'>175</a>
241
- <a name='L176'></a><a href='#L176'>176</a>
242
- <a name='L177'></a><a href='#L177'>177</a>
243
- <a name='L178'></a><a href='#L178'>178</a>
244
- <a name='L179'></a><a href='#L179'>179</a>
245
- <a name='L180'></a><a href='#L180'>180</a>
246
- <a name='L181'></a><a href='#L181'>181</a>
247
- <a name='L182'></a><a href='#L182'>182</a>
248
- <a name='L183'></a><a href='#L183'>183</a>
249
- <a name='L184'></a><a href='#L184'>184</a>
250
- <a name='L185'></a><a href='#L185'>185</a>
251
- <a name='L186'></a><a href='#L186'>186</a>
252
- <a name='L187'></a><a href='#L187'>187</a>
253
- <a name='L188'></a><a href='#L188'>188</a>
254
- <a name='L189'></a><a href='#L189'>189</a>
255
- <a name='L190'></a><a href='#L190'>190</a>
256
- <a name='L191'></a><a href='#L191'>191</a>
257
- <a name='L192'></a><a href='#L192'>192</a>
258
- <a name='L193'></a><a href='#L193'>193</a>
259
- <a name='L194'></a><a href='#L194'>194</a>
260
- <a name='L195'></a><a href='#L195'>195</a>
261
- <a name='L196'></a><a href='#L196'>196</a>
262
- <a name='L197'></a><a href='#L197'>197</a>
263
- <a name='L198'></a><a href='#L198'>198</a>
264
- <a name='L199'></a><a href='#L199'>199</a>
265
- <a name='L200'></a><a href='#L200'>200</a>
266
- <a name='L201'></a><a href='#L201'>201</a>
267
- <a name='L202'></a><a href='#L202'>202</a>
268
- <a name='L203'></a><a href='#L203'>203</a>
269
- <a name='L204'></a><a href='#L204'>204</a>
270
- <a name='L205'></a><a href='#L205'>205</a>
271
- <a name='L206'></a><a href='#L206'>206</a>
272
- <a name='L207'></a><a href='#L207'>207</a>
273
- <a name='L208'></a><a href='#L208'>208</a>
274
- <a name='L209'></a><a href='#L209'>209</a>
275
- <a name='L210'></a><a href='#L210'>210</a>
276
- <a name='L211'></a><a href='#L211'>211</a>
277
- <a name='L212'></a><a href='#L212'>212</a>
278
- <a name='L213'></a><a href='#L213'>213</a>
279
- <a name='L214'></a><a href='#L214'>214</a>
280
- <a name='L215'></a><a href='#L215'>215</a>
281
- <a name='L216'></a><a href='#L216'>216</a>
282
- <a name='L217'></a><a href='#L217'>217</a>
283
- <a name='L218'></a><a href='#L218'>218</a>
284
- <a name='L219'></a><a href='#L219'>219</a>
285
- <a name='L220'></a><a href='#L220'>220</a>
286
- <a name='L221'></a><a href='#L221'>221</a>
287
- <a name='L222'></a><a href='#L222'>222</a>
288
- <a name='L223'></a><a href='#L223'>223</a>
289
- <a name='L224'></a><a href='#L224'>224</a>
290
- <a name='L225'></a><a href='#L225'>225</a>
291
- <a name='L226'></a><a href='#L226'>226</a>
292
- <a name='L227'></a><a href='#L227'>227</a>
293
- <a name='L228'></a><a href='#L228'>228</a>
294
- <a name='L229'></a><a href='#L229'>229</a>
295
- <a name='L230'></a><a href='#L230'>230</a>
296
- <a name='L231'></a><a href='#L231'>231</a>
297
- <a name='L232'></a><a href='#L232'>232</a>
298
- <a name='L233'></a><a href='#L233'>233</a>
299
- <a name='L234'></a><a href='#L234'>234</a>
300
- <a name='L235'></a><a href='#L235'>235</a>
301
- <a name='L236'></a><a href='#L236'>236</a>
302
- <a name='L237'></a><a href='#L237'>237</a>
303
- <a name='L238'></a><a href='#L238'>238</a>
304
- <a name='L239'></a><a href='#L239'>239</a>
305
- <a name='L240'></a><a href='#L240'>240</a>
306
- <a name='L241'></a><a href='#L241'>241</a>
307
- <a name='L242'></a><a href='#L242'>242</a>
308
- <a name='L243'></a><a href='#L243'>243</a>
309
- <a name='L244'></a><a href='#L244'>244</a>
310
- <a name='L245'></a><a href='#L245'>245</a>
311
- <a name='L246'></a><a href='#L246'>246</a>
312
- <a name='L247'></a><a href='#L247'>247</a>
313
- <a name='L248'></a><a href='#L248'>248</a>
314
- <a name='L249'></a><a href='#L249'>249</a>
315
- <a name='L250'></a><a href='#L250'>250</a>
316
- <a name='L251'></a><a href='#L251'>251</a>
317
- <a name='L252'></a><a href='#L252'>252</a>
318
- <a name='L253'></a><a href='#L253'>253</a>
319
- <a name='L254'></a><a href='#L254'>254</a>
320
- <a name='L255'></a><a href='#L255'>255</a>
321
- <a name='L256'></a><a href='#L256'>256</a>
322
- <a name='L257'></a><a href='#L257'>257</a>
323
- <a name='L258'></a><a href='#L258'>258</a>
324
- <a name='L259'></a><a href='#L259'>259</a>
325
- <a name='L260'></a><a href='#L260'>260</a>
326
- <a name='L261'></a><a href='#L261'>261</a>
327
- <a name='L262'></a><a href='#L262'>262</a>
328
- <a name='L263'></a><a href='#L263'>263</a>
329
- <a name='L264'></a><a href='#L264'>264</a>
330
- <a name='L265'></a><a href='#L265'>265</a>
331
- <a name='L266'></a><a href='#L266'>266</a>
332
- <a name='L267'></a><a href='#L267'>267</a>
333
- <a name='L268'></a><a href='#L268'>268</a>
334
- <a name='L269'></a><a href='#L269'>269</a>
335
- <a name='L270'></a><a href='#L270'>270</a>
336
- <a name='L271'></a><a href='#L271'>271</a>
337
- <a name='L272'></a><a href='#L272'>272</a>
338
- <a name='L273'></a><a href='#L273'>273</a>
339
- <a name='L274'></a><a href='#L274'>274</a>
340
- <a name='L275'></a><a href='#L275'>275</a>
341
- <a name='L276'></a><a href='#L276'>276</a>
342
- <a name='L277'></a><a href='#L277'>277</a>
343
- <a name='L278'></a><a href='#L278'>278</a>
344
- <a name='L279'></a><a href='#L279'>279</a>
345
- <a name='L280'></a><a href='#L280'>280</a>
346
- <a name='L281'></a><a href='#L281'>281</a>
347
- <a name='L282'></a><a href='#L282'>282</a>
348
- <a name='L283'></a><a href='#L283'>283</a>
349
- <a name='L284'></a><a href='#L284'>284</a>
350
- <a name='L285'></a><a href='#L285'>285</a>
351
- <a name='L286'></a><a href='#L286'>286</a>
352
- <a name='L287'></a><a href='#L287'>287</a>
353
- <a name='L288'></a><a href='#L288'>288</a>
354
- <a name='L289'></a><a href='#L289'>289</a>
355
- <a name='L290'></a><a href='#L290'>290</a>
356
- <a name='L291'></a><a href='#L291'>291</a>
357
- <a name='L292'></a><a href='#L292'>292</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">5x</span>
358
- <span class="cline-any cline-yes">5x</span>
359
- <span class="cline-any cline-yes">5x</span>
360
- <span class="cline-any cline-neutral">&nbsp;</span>
361
- <span class="cline-any cline-neutral">&nbsp;</span>
362
- <span class="cline-any cline-neutral">&nbsp;</span>
363
- <span class="cline-any cline-neutral">&nbsp;</span>
364
- <span class="cline-any cline-neutral">&nbsp;</span>
365
- <span class="cline-any cline-neutral">&nbsp;</span>
366
- <span class="cline-any cline-yes">5x</span>
367
- <span class="cline-any cline-no">&nbsp;</span>
368
- <span class="cline-any cline-neutral">&nbsp;</span>
369
- <span class="cline-any cline-neutral">&nbsp;</span>
370
- <span class="cline-any cline-neutral">&nbsp;</span>
371
- <span class="cline-any cline-neutral">&nbsp;</span>
372
- <span class="cline-any cline-neutral">&nbsp;</span>
373
- <span class="cline-any cline-neutral">&nbsp;</span>
374
- <span class="cline-any cline-neutral">&nbsp;</span>
375
- <span class="cline-any cline-yes">5x</span>
376
- <span class="cline-any cline-no">&nbsp;</span>
377
- <span class="cline-any cline-neutral">&nbsp;</span>
378
- <span class="cline-any cline-neutral">&nbsp;</span>
379
- <span class="cline-any cline-neutral">&nbsp;</span>
380
- <span class="cline-any cline-neutral">&nbsp;</span>
381
- <span class="cline-any cline-neutral">&nbsp;</span>
382
- <span class="cline-any cline-neutral">&nbsp;</span>
383
- <span class="cline-any cline-neutral">&nbsp;</span>
384
- <span class="cline-any cline-yes">5x</span>
385
- <span class="cline-any cline-neutral">&nbsp;</span>
386
- <span class="cline-any cline-yes">2x</span>
387
- <span class="cline-any cline-no">&nbsp;</span>
388
- <span class="cline-any cline-neutral">&nbsp;</span>
389
- <span class="cline-any cline-yes">2x</span>
390
- <span class="cline-any cline-yes">2x</span>
391
- <span class="cline-any cline-yes">4x</span>
392
- <span class="cline-any cline-neutral">&nbsp;</span>
393
- <span class="cline-any cline-yes">2x</span>
394
- <span class="cline-any cline-neutral">&nbsp;</span>
395
- <span class="cline-any cline-neutral">&nbsp;</span>
396
- <span class="cline-any cline-neutral">&nbsp;</span>
397
- <span class="cline-any cline-neutral">&nbsp;</span>
398
- <span class="cline-any cline-neutral">&nbsp;</span>
399
- <span class="cline-any cline-neutral">&nbsp;</span>
400
- <span class="cline-any cline-neutral">&nbsp;</span>
401
- <span class="cline-any cline-neutral">&nbsp;</span>
402
- <span class="cline-any cline-yes">5x</span>
403
- <span class="cline-any cline-yes">2x</span>
404
- <span class="cline-any cline-neutral">&nbsp;</span>
405
- <span class="cline-any cline-neutral">&nbsp;</span>
406
- <span class="cline-any cline-neutral">&nbsp;</span>
407
- <span class="cline-any cline-neutral">&nbsp;</span>
408
- <span class="cline-any cline-neutral">&nbsp;</span>
409
- <span class="cline-any cline-neutral">&nbsp;</span>
410
- <span class="cline-any cline-neutral">&nbsp;</span>
411
- <span class="cline-any cline-yes">5x</span>
412
- <span class="cline-any cline-yes">3x</span>
413
- <span class="cline-any cline-neutral">&nbsp;</span>
414
- <span class="cline-any cline-neutral">&nbsp;</span>
415
- <span class="cline-any cline-neutral">&nbsp;</span>
416
- <span class="cline-any cline-neutral">&nbsp;</span>
417
- <span class="cline-any cline-neutral">&nbsp;</span>
418
- <span class="cline-any cline-neutral">&nbsp;</span>
419
- <span class="cline-any cline-neutral">&nbsp;</span>
420
- <span class="cline-any cline-yes">5x</span>
421
- <span class="cline-any cline-yes">2x</span>
422
- <span class="cline-any cline-neutral">&nbsp;</span>
423
- <span class="cline-any cline-neutral">&nbsp;</span>
424
- <span class="cline-any cline-neutral">&nbsp;</span>
425
- <span class="cline-any cline-neutral">&nbsp;</span>
426
- <span class="cline-any cline-neutral">&nbsp;</span>
427
- <span class="cline-any cline-neutral">&nbsp;</span>
428
- <span class="cline-any cline-neutral">&nbsp;</span>
429
- <span class="cline-any cline-neutral">&nbsp;</span>
430
- <span class="cline-any cline-yes">5x</span>
431
- <span class="cline-any cline-yes">1x</span>
432
- <span class="cline-any cline-neutral">&nbsp;</span>
433
- <span class="cline-any cline-neutral">&nbsp;</span>
434
- <span class="cline-any cline-neutral">&nbsp;</span>
435
- <span class="cline-any cline-neutral">&nbsp;</span>
436
- <span class="cline-any cline-neutral">&nbsp;</span>
437
- <span class="cline-any cline-neutral">&nbsp;</span>
438
- <span class="cline-any cline-neutral">&nbsp;</span>
439
- <span class="cline-any cline-neutral">&nbsp;</span>
440
- <span class="cline-any cline-neutral">&nbsp;</span>
441
- <span class="cline-any cline-yes">5x</span>
442
- <span class="cline-any cline-yes">2x</span>
443
- <span class="cline-any cline-no">&nbsp;</span>
444
- <span class="cline-any cline-neutral">&nbsp;</span>
445
- <span class="cline-any cline-yes">2x</span>
446
- <span class="cline-any cline-yes">2x</span>
447
- <span class="cline-any cline-yes">2x</span>
448
- <span class="cline-any cline-neutral">&nbsp;</span>
449
- <span class="cline-any cline-neutral">&nbsp;</span>
450
- <span class="cline-any cline-neutral">&nbsp;</span>
451
- <span class="cline-any cline-neutral">&nbsp;</span>
452
- <span class="cline-any cline-neutral">&nbsp;</span>
453
- <span class="cline-any cline-neutral">&nbsp;</span>
454
- <span class="cline-any cline-neutral">&nbsp;</span>
455
- <span class="cline-any cline-neutral">&nbsp;</span>
456
- <span class="cline-any cline-neutral">&nbsp;</span>
457
- <span class="cline-any cline-yes">5x</span>
458
- <span class="cline-any cline-yes">3x</span>
459
- <span class="cline-any cline-yes">3x</span>
460
- <span class="cline-any cline-no">&nbsp;</span>
461
- <span class="cline-any cline-neutral">&nbsp;</span>
462
- <span class="cline-any cline-yes">3x</span>
463
- <span class="cline-any cline-yes">3x</span>
464
- <span class="cline-any cline-yes">1x</span>
465
- <span class="cline-any cline-neutral">&nbsp;</span>
466
- <span class="cline-any cline-yes">3x</span>
467
- <span class="cline-any cline-neutral">&nbsp;</span>
468
- <span class="cline-any cline-neutral">&nbsp;</span>
469
- <span class="cline-any cline-neutral">&nbsp;</span>
470
- <span class="cline-any cline-neutral">&nbsp;</span>
471
- <span class="cline-any cline-neutral">&nbsp;</span>
472
- <span class="cline-any cline-neutral">&nbsp;</span>
473
- <span class="cline-any cline-neutral">&nbsp;</span>
474
- <span class="cline-any cline-neutral">&nbsp;</span>
475
- <span class="cline-any cline-neutral">&nbsp;</span>
476
- <span class="cline-any cline-yes">5x</span>
477
- <span class="cline-any cline-yes">4x</span>
478
- <span class="cline-any cline-neutral">&nbsp;</span>
479
- <span class="cline-any cline-neutral">&nbsp;</span>
480
- <span class="cline-any cline-neutral">&nbsp;</span>
481
- <span class="cline-any cline-neutral">&nbsp;</span>
482
- <span class="cline-any cline-neutral">&nbsp;</span>
483
- <span class="cline-any cline-neutral">&nbsp;</span>
484
- <span class="cline-any cline-neutral">&nbsp;</span>
485
- <span class="cline-any cline-neutral">&nbsp;</span>
486
- <span class="cline-any cline-yes">5x</span>
487
- <span class="cline-any cline-yes">2x</span>
488
- <span class="cline-any cline-neutral">&nbsp;</span>
489
- <span class="cline-any cline-neutral">&nbsp;</span>
490
- <span class="cline-any cline-neutral">&nbsp;</span>
491
- <span class="cline-any cline-neutral">&nbsp;</span>
492
- <span class="cline-any cline-neutral">&nbsp;</span>
493
- <span class="cline-any cline-neutral">&nbsp;</span>
494
- <span class="cline-any cline-neutral">&nbsp;</span>
495
- <span class="cline-any cline-neutral">&nbsp;</span>
496
- <span class="cline-any cline-yes">5x</span>
497
- <span class="cline-any cline-yes">2x</span>
498
- <span class="cline-any cline-yes">2x</span>
499
- <span class="cline-any cline-yes">2x</span>
500
- <span class="cline-any cline-yes">2x</span>
501
- <span class="cline-any cline-yes">1x</span>
502
- <span class="cline-any cline-neutral">&nbsp;</span>
503
- <span class="cline-any cline-yes">1x</span>
504
- <span class="cline-any cline-no">&nbsp;</span>
505
- <span class="cline-any cline-neutral">&nbsp;</span>
506
- <span class="cline-any cline-yes">1x</span>
507
- <span class="cline-any cline-neutral">&nbsp;</span>
508
- <span class="cline-any cline-neutral">&nbsp;</span>
509
- <span class="cline-any cline-neutral">&nbsp;</span>
510
- <span class="cline-any cline-neutral">&nbsp;</span>
511
- <span class="cline-any cline-neutral">&nbsp;</span>
512
- <span class="cline-any cline-neutral">&nbsp;</span>
513
- <span class="cline-any cline-neutral">&nbsp;</span>
514
- <span class="cline-any cline-neutral">&nbsp;</span>
515
- <span class="cline-any cline-neutral">&nbsp;</span>
516
- <span class="cline-any cline-neutral">&nbsp;</span>
517
- <span class="cline-any cline-yes">5x</span>
518
- <span class="cline-any cline-yes">5x</span>
519
- <span class="cline-any cline-yes">5x</span>
520
- <span class="cline-any cline-yes">5x</span>
521
- <span class="cline-any cline-neutral">&nbsp;</span>
522
- <span class="cline-any cline-neutral">&nbsp;</span>
523
- <span class="cline-any cline-neutral">&nbsp;</span>
524
- <span class="cline-any cline-neutral">&nbsp;</span>
525
- <span class="cline-any cline-neutral">&nbsp;</span>
526
- <span class="cline-any cline-neutral">&nbsp;</span>
527
- <span class="cline-any cline-neutral">&nbsp;</span>
528
- <span class="cline-any cline-neutral">&nbsp;</span>
529
- <span class="cline-any cline-neutral">&nbsp;</span>
530
- <span class="cline-any cline-yes">5x</span>
531
- <span class="cline-any cline-yes">2x</span>
532
- <span class="cline-any cline-neutral">&nbsp;</span>
533
- <span class="cline-any cline-neutral">&nbsp;</span>
534
- <span class="cline-any cline-neutral">&nbsp;</span>
535
- <span class="cline-any cline-neutral">&nbsp;</span>
536
- <span class="cline-any cline-neutral">&nbsp;</span>
537
- <span class="cline-any cline-neutral">&nbsp;</span>
538
- <span class="cline-any cline-neutral">&nbsp;</span>
539
- <span class="cline-any cline-neutral">&nbsp;</span>
540
- <span class="cline-any cline-neutral">&nbsp;</span>
541
- <span class="cline-any cline-neutral">&nbsp;</span>
542
- <span class="cline-any cline-yes">5x</span>
543
- <span class="cline-any cline-no">&nbsp;</span>
544
- <span class="cline-any cline-neutral">&nbsp;</span>
545
- <span class="cline-any cline-neutral">&nbsp;</span>
546
- <span class="cline-any cline-neutral">&nbsp;</span>
547
- <span class="cline-any cline-neutral">&nbsp;</span>
548
- <span class="cline-any cline-neutral">&nbsp;</span>
549
- <span class="cline-any cline-neutral">&nbsp;</span>
550
- <span class="cline-any cline-neutral">&nbsp;</span>
551
- <span class="cline-any cline-neutral">&nbsp;</span>
552
- <span class="cline-any cline-neutral">&nbsp;</span>
553
- <span class="cline-any cline-yes">5x</span>
554
- <span class="cline-any cline-no">&nbsp;</span>
555
- <span class="cline-any cline-neutral">&nbsp;</span>
556
- <span class="cline-any cline-neutral">&nbsp;</span>
557
- <span class="cline-any cline-neutral">&nbsp;</span>
558
- <span class="cline-any cline-neutral">&nbsp;</span>
559
- <span class="cline-any cline-neutral">&nbsp;</span>
560
- <span class="cline-any cline-neutral">&nbsp;</span>
561
- <span class="cline-any cline-neutral">&nbsp;</span>
562
- <span class="cline-any cline-yes">5x</span>
563
- <span class="cline-any cline-neutral">&nbsp;</span>
564
- <span class="cline-any cline-no">&nbsp;</span>
565
- <span class="cline-any cline-no">&nbsp;</span>
566
- <span class="cline-any cline-no">&nbsp;</span>
567
- <span class="cline-any cline-no">&nbsp;</span>
568
- <span class="cline-any cline-no">&nbsp;</span>
569
- <span class="cline-any cline-no">&nbsp;</span>
570
- <span class="cline-any cline-neutral">&nbsp;</span>
571
- <span class="cline-any cline-neutral">&nbsp;</span>
572
- <span class="cline-any cline-neutral">&nbsp;</span>
573
- <span class="cline-any cline-neutral">&nbsp;</span>
574
- <span class="cline-any cline-neutral">&nbsp;</span>
575
- <span class="cline-any cline-neutral">&nbsp;</span>
576
- <span class="cline-any cline-neutral">&nbsp;</span>
577
- <span class="cline-any cline-neutral">&nbsp;</span>
578
- <span class="cline-any cline-yes">5x</span>
579
- <span class="cline-any cline-no">&nbsp;</span>
580
- <span class="cline-any cline-no">&nbsp;</span>
581
- <span class="cline-any cline-no">&nbsp;</span>
582
- <span class="cline-any cline-no">&nbsp;</span>
583
- <span class="cline-any cline-no">&nbsp;</span>
584
- <span class="cline-any cline-no">&nbsp;</span>
585
- <span class="cline-any cline-neutral">&nbsp;</span>
586
- <span class="cline-any cline-neutral">&nbsp;</span>
587
- <span class="cline-any cline-neutral">&nbsp;</span>
588
- <span class="cline-any cline-neutral">&nbsp;</span>
589
- <span class="cline-any cline-neutral">&nbsp;</span>
590
- <span class="cline-any cline-neutral">&nbsp;</span>
591
- <span class="cline-any cline-neutral">&nbsp;</span>
592
- <span class="cline-any cline-neutral">&nbsp;</span>
593
- <span class="cline-any cline-yes">5x</span>
594
- <span class="cline-any cline-no">&nbsp;</span>
595
- <span class="cline-any cline-neutral">&nbsp;</span>
596
- <span class="cline-any cline-no">&nbsp;</span>
597
- <span class="cline-any cline-neutral">&nbsp;</span>
598
- <span class="cline-any cline-neutral">&nbsp;</span>
599
- <span class="cline-any cline-neutral">&nbsp;</span>
600
- <span class="cline-any cline-neutral">&nbsp;</span>
601
- <span class="cline-any cline-neutral">&nbsp;</span>
602
- <span class="cline-any cline-neutral">&nbsp;</span>
603
- <span class="cline-any cline-neutral">&nbsp;</span>
604
- <span class="cline-any cline-neutral">&nbsp;</span>
605
- <span class="cline-any cline-neutral">&nbsp;</span>
606
- <span class="cline-any cline-neutral">&nbsp;</span>
607
- <span class="cline-any cline-no">&nbsp;</span>
608
- <span class="cline-any cline-neutral">&nbsp;</span>
609
- <span class="cline-any cline-neutral">&nbsp;</span>
610
- <span class="cline-any cline-neutral">&nbsp;</span>
611
- <span class="cline-any cline-neutral">&nbsp;</span>
612
- <span class="cline-any cline-neutral">&nbsp;</span>
613
- <span class="cline-any cline-neutral">&nbsp;</span>
614
- <span class="cline-any cline-neutral">&nbsp;</span>
615
- <span class="cline-any cline-neutral">&nbsp;</span>
616
- <span class="cline-any cline-neutral">&nbsp;</span>
617
- <span class="cline-any cline-neutral">&nbsp;</span>
618
- <span class="cline-any cline-neutral">&nbsp;</span>
619
- <span class="cline-any cline-neutral">&nbsp;</span>
620
- <span class="cline-any cline-neutral">&nbsp;</span>
621
- <span class="cline-any cline-neutral">&nbsp;</span>
622
- <span class="cline-any cline-neutral">&nbsp;</span>
623
- <span class="cline-any cline-neutral">&nbsp;</span>
624
- <span class="cline-any cline-neutral">&nbsp;</span>
625
- <span class="cline-any cline-yes">5x</span>
626
- <span class="cline-any cline-no">&nbsp;</span>
627
- <span class="cline-any cline-no">&nbsp;</span>
628
- <span class="cline-any cline-no">&nbsp;</span>
629
- <span class="cline-any cline-neutral">&nbsp;</span>
630
- <span class="cline-any cline-neutral">&nbsp;</span>
631
- <span class="cline-any cline-no">&nbsp;</span>
632
- <span class="cline-any cline-no">&nbsp;</span>
633
- <span class="cline-any cline-neutral">&nbsp;</span>
634
- <span class="cline-any cline-no">&nbsp;</span>
635
- <span class="cline-any cline-neutral">&nbsp;</span>
636
- <span class="cline-any cline-neutral">&nbsp;</span>
637
- <span class="cline-any cline-no">&nbsp;</span>
638
- <span class="cline-any cline-no">&nbsp;</span>
639
- <span class="cline-any cline-no">&nbsp;</span>
640
- <span class="cline-any cline-no">&nbsp;</span>
641
- <span class="cline-any cline-no">&nbsp;</span>
642
- <span class="cline-any cline-neutral">&nbsp;</span>
643
- <span class="cline-any cline-no">&nbsp;</span>
644
- <span class="cline-any cline-no">&nbsp;</span>
645
- <span class="cline-any cline-no">&nbsp;</span>
646
- <span class="cline-any cline-no">&nbsp;</span>
647
- <span class="cline-any cline-neutral">&nbsp;</span>
648
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">export const DEG_TO_RAD = Math.PI / 180;
649
- export const RAD_TO_DEG = 180 / Math.PI;
650
- export const PI_2 = Math.PI * 2;
651
- &nbsp;
652
- /**
653
- * TBD.
654
- * @param {number} hex - TBD.
655
- * @returns {number[]} TBD.
656
- */
657
- export const hex2rgb = <span class="fstat-no" title="function not covered" >(h</span>ex) =&gt; {
658
- <span class="cstat-no" title="statement not covered" > return [((hex &gt;&gt; 16) &amp; 0xff) / 255, ((hex &gt;&gt; 8) &amp; 0xff) / 255, (hex &amp; 0xff) / 255];</span>
659
- };
660
- &nbsp;
661
- /**
662
- * TBD.
663
- * @param {number} rgb - TBD.
664
- * @returns {number} TBD.
665
- */
666
- export const rgb2hex = <span class="fstat-no" title="function not covered" >(r</span>gb) =&gt; {
667
- <span class="cstat-no" title="statement not covered" > return ((rgb[0] * 255) &lt;&lt; 16) + ((rgb[1] * 255) &lt;&lt; 8) + rgb[2] * 255;</span>
668
- };
669
- &nbsp;
670
- /**
671
- * TBD.
672
- * @param {number} value - TBD.
673
- * @returns {number} TBD.
674
- */
675
- export const getNextPowerOfTwo = (value) =&gt; {
676
- // see: https://en.wikipedia.org/wiki/Power_of_two#Fast_algorithm_to_check_if_a_positive_number_is_a_power_of_two
677
- <span class="missing-if-branch" title="if path not taken" >I</span>if (value &gt; 0 &amp;&amp; (value &amp; (value - 1)) === 0) {
678
- <span class="cstat-no" title="statement not covered" > return value;</span>
679
- }
680
- let result = 1;
681
- while (result &lt; value) {
682
- result &lt;&lt;= 1;
683
- }
684
- return result;
685
- };
686
- &nbsp;
687
- /**
688
- * TBD.
689
- * @param {number} width - TBD.
690
- * @param {number} height - TBD.
691
- * @returns {boolean} TBD.
692
- */
693
- export const isPowerOfTwo = (width, height) =&gt; {
694
- return width &gt; 0 &amp;&amp; (width &amp; (width - 1)) === 0 &amp;&amp; height &gt; 0 &amp;&amp; (height &amp; (height - 1)) === 0;
695
- };
696
- &nbsp;
697
- /**
698
- * TBD.
699
- * @param {number} degrees - TBD.
700
- * @returns {number} TBD.
701
- */
702
- export const degToRad = (degrees) =&gt; {
703
- return degrees * DEG_TO_RAD;
704
- };
705
- &nbsp;
706
- /**
707
- * TBD.
708
- * @param {number} radians - TBD.
709
- * @returns {number} TBD.
710
- */
711
- export const radToDeg = (radians) =&gt; {
712
- return radians * RAD_TO_DEG;
713
- };
714
- &nbsp;
715
- /**
716
- * TBD.
717
- * @param {number} min - TBD.
718
- * @param {number} max - TBD.
719
- * @returns {number} TBD.
720
- */
721
- export const between = (min, max) =&gt; {
722
- return Math.floor(Math.random() * (max - min + 1) + min);
723
- };
724
- &nbsp;
725
- /**
726
- * TBD.
727
- * @param {number} input - TBD.
728
- * @param {number} gap - TBD.
729
- * @param {number} start - TBD.
730
- * @returns {number} TBD.
731
- */
732
- export const snapToCeil = (input, gap = <span class="branch-0 cbranch-no" title="branch not covered" >0,</span> start = 0) =&gt; {
733
- <span class="missing-if-branch" title="if path not taken" >I</span>if (gap === 0) {
734
- <span class="cstat-no" title="statement not covered" > return input;</span>
735
- }
736
- input -= start;
737
- input = gap * Math.ceil(input / gap);
738
- return start + input;
739
- };
740
- &nbsp;
741
- /**
742
- * TBD.
743
- * @param {number} value - TBD.
744
- * @param {number} min - TBD.
745
- * @param {number} max - TBD.
746
- * @returns {number} TBD.
747
- */
748
- export const wrap = (value, min, max) =&gt; {
749
- const range = max - min;
750
- <span class="missing-if-branch" title="if path not taken" >I</span>if (range &lt;= 0) {
751
- <span class="cstat-no" title="statement not covered" > return 0;</span>
752
- }
753
- let result = (value - min) % range;
754
- if (result &lt; 0) {
755
- result += range;
756
- }
757
- return result + min;
758
- };
759
- &nbsp;
760
- /**
761
- * TBD.
762
- * @param {number} p0 - TBD.
763
- * @param {number} p1 - TBD.
764
- * @param {number} t - TBD.
765
- * @returns {number} TBD.
766
- */
767
- export const linear = (p0, p1, t) =&gt; {
768
- return (p1 - p0) * t + p0;
769
- };
770
- &nbsp;
771
- /**
772
- * TBD.
773
- * @param {number} a - TBD.
774
- * @param {number} b - TBD.
775
- * @returns {number} TBD.
776
- */
777
- export const difference = (a, b) =&gt; {
778
- return Math.abs(a - b);
779
- };
780
- &nbsp;
781
- /**
782
- * TBD.
783
- * @param {number[]} v - TBD.
784
- * @param {number} k - TBD.
785
- * @returns {number} TBD.
786
- */
787
- export const linearInterpolation = (v, k) =&gt; {
788
- const m = v.length - 1;
789
- const f = m * k;
790
- const i = Math.floor(f);
791
- if (k &lt; 0) {
792
- return linear(v[0], v[1], f);
793
- }
794
- <span class="missing-if-branch" title="if path not taken" >I</span>if (k &gt; 1) {
795
- <span class="cstat-no" title="statement not covered" > return linear(v[m], v[m - 1], m - f);</span>
796
- }
797
- return linear(v[i], v[i + 1 &gt; m ? <span class="branch-0 cbranch-no" title="branch not covered" >m </span>: i + 1], f - i);
798
- };
799
- &nbsp;
800
- /**
801
- * TBD.
802
- * @param {number} x1 - TBD.
803
- * @param {number} y1 - TBD.
804
- * @param {number} x2 - TBD.
805
- * @param {number} y2 - TBD.
806
- * @returns {number} TBD.
807
- */
808
- export const distance = (x1, y1, x2, y2) =&gt; {
809
- const dx = x1 - x2;
810
- const dy = y1 - y2;
811
- return Math.sqrt(dx * dx + dy * dy);
812
- };
813
- &nbsp;
814
- /**
815
- * TBD.
816
- * @param {number} a - TBD.
817
- * @param {number} b - TBD.
818
- * @param {number} tolerance - TBD.
819
- * @returns {boolean} TBD.
820
- */
821
- export const within = (a, b, tolerance) =&gt; {
822
- return Math.abs(a - b) &lt;= tolerance;
823
- };
824
- &nbsp;
825
- /**
826
- * TBD.
827
- * @param {number} a - TBD.
828
- * @param {number} r - TBD.
829
- * @param {number} g - TBD.
830
- * @param {number} b - TBD.
831
- * @returns {number} TBD.
832
- */
833
- export const getColor32 = <span class="fstat-no" title="function not covered" >(a</span>, r, g, b) =&gt; {
834
- <span class="cstat-no" title="statement not covered" > return (a &lt;&lt; 24) | (r &lt;&lt; 16) | (g &lt;&lt; 8) | b;</span>
835
- };
836
- &nbsp;
837
- /**
838
- * TBD.
839
- * @param {number} r - TBD.
840
- * @param {number} g - TBD.
841
- * @param {number} b - TBD.
842
- * @returns {number} TBD.
843
- */
844
- export const getColor = <span class="fstat-no" title="function not covered" >(r</span>, g, b) =&gt; {
845
- <span class="cstat-no" title="statement not covered" > return (r &lt;&lt; 16) | (g &lt;&lt; 8) | b;</span>
846
- };
847
- &nbsp;
848
- /**
849
- * TBD.
850
- * @param {string} value - TBD.
851
- * @param {object} out - TBD.
852
- */
853
- export const hexToColor = <span class="fstat-no" title="function not covered" >(v</span>alue, out) =&gt; {
854
- // Expand shorthand form (e.g. "03F") to full form (e.g. "0033FF")
855
- <span class="cstat-no" title="statement not covered" > value = value.replace(/^(?:#|0x)?([a-f\d])([a-f\d])([a-f\d])$/i, <span class="fstat-no" title="function not covered" >(m</span>, r, g, b) =&gt; <span class="cstat-no" title="statement not covered" >r + r + g + g + b + b)</span>;</span>
856
- const result = <span class="cstat-no" title="statement not covered" >/^(?:#|0x)?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(value);</span>
857
- <span class="cstat-no" title="statement not covered" > if (result) {</span>
858
- <span class="cstat-no" title="statement not covered" > out.r = Number.parseInt(result[1], 16);</span>
859
- <span class="cstat-no" title="statement not covered" > out.g = Number.parseInt(result[2], 16);</span>
860
- <span class="cstat-no" title="statement not covered" > out.b = Number.parseInt(result[3], 16);</span>
861
- }
862
- };
863
- &nbsp;
864
- /**
865
- * TBD.
866
- * @param {string} value - TBD.
867
- * @param {object} out - TBD.
868
- */
869
- export const webToColor = <span class="fstat-no" title="function not covered" >(v</span>alue, out) =&gt; {
870
- const result = <span class="cstat-no" title="statement not covered" >/^rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d+(?:\.\d+)?))?\s*\)$/.exec(value);</span>
871
- <span class="cstat-no" title="statement not covered" > if (result) {</span>
872
- <span class="cstat-no" title="statement not covered" > out.r = Number.parseInt(result[1], 10);</span>
873
- <span class="cstat-no" title="statement not covered" > out.g = Number.parseInt(result[2], 10);</span>
874
- <span class="cstat-no" title="statement not covered" > out.b = Number.parseInt(result[3], 10);</span>
875
- <span class="cstat-no" title="statement not covered" > out.a = result[4] !== undefined ? Number.parseFloat(result[4]) : 1;</span>
876
- }
877
- };
878
- &nbsp;
879
- /**
880
- * TBD.
881
- * @param {number} color - TBD.
882
- * @returns {object} TBD.
883
- */
884
- export const getRGB = <span class="fstat-no" title="function not covered" >(c</span>olor) =&gt; {
885
- <span class="cstat-no" title="statement not covered" > if (color &gt; 16777215) {</span>
886
- // The color value has an alpha component
887
- <span class="cstat-no" title="statement not covered" > return {</span>
888
- alpha: color &gt;&gt;&gt; 24,
889
- red: (color &gt;&gt; 16) &amp; 0xff,
890
- green: (color &gt;&gt; 8) &amp; 0xff,
891
- blue: color &amp; 0xff,
892
- a: color &gt;&gt;&gt; 24,
893
- r: (color &gt;&gt; 16) &amp; 0xff,
894
- g: (color &gt;&gt; 8) &amp; 0xff,
895
- b: color &amp; 0xff,
896
- };
897
- }
898
- <span class="cstat-no" title="statement not covered" > return {</span>
899
- alpha: 255,
900
- red: (color &gt;&gt; 16) &amp; 0xff,
901
- green: (color &gt;&gt; 8) &amp; 0xff,
902
- blue: color &amp; 0xff,
903
- a: 255,
904
- r: (color &gt;&gt; 16) &amp; 0xff,
905
- g: (color &gt;&gt; 8) &amp; 0xff,
906
- b: color &amp; 0xff,
907
- };
908
- };
909
- &nbsp;
910
- /**
911
- * TBD.
912
- * @param {string|number} value - TBD.
913
- * @param {object} out - TBD.
914
- * @returns {object} TBD.
915
- */
916
- export const valueToColor = <span class="fstat-no" title="function not covered" >(v</span>alue, out) =&gt; {
917
- <span class="cstat-no" title="statement not covered" > if (typeof value === 'string') {</span>
918
- <span class="cstat-no" title="statement not covered" > if (value.indexOf('rgb') === 0) {</span>
919
- <span class="cstat-no" title="statement not covered" > webToColor(value, out);</span>
920
- } else {
921
- // `hexToColor` does not support alpha; match `createColor`.
922
- <span class="cstat-no" title="statement not covered" > out.a = 1;</span>
923
- <span class="cstat-no" title="statement not covered" > hexToColor(value, out);</span>
924
- }
925
- } else <span class="cstat-no" title="statement not covered" >if (typeof value === 'number') {</span>
926
- // `getRGB` does not take optional object to modify;
927
- // alpha is also adjusted to match `createColor`.
928
- const tempColor = <span class="cstat-no" title="statement not covered" >getRGB(value);</span>
929
- <span class="cstat-no" title="statement not covered" > out.r = tempColor.r;</span>
930
- <span class="cstat-no" title="statement not covered" > out.g = tempColor.g;</span>
931
- <span class="cstat-no" title="statement not covered" > out.b = tempColor.b;</span>
932
- <span class="cstat-no" title="statement not covered" > out.a = tempColor.a / 255;</span>
933
- }
934
- <span class="cstat-no" title="statement not covered" > out.rgba = `rgba(${out.r.toString()},${out.g.toString()},${out.b.toString()},${out.a.toString()})`;</span>
935
- <span class="cstat-no" title="statement not covered" > out.color = getColor(out.r, out.g, out.b);</span>
936
- <span class="cstat-no" title="statement not covered" > out.color32 = getColor32(out.a * 255, out.r, out.g, out.b);</span>
937
- <span class="cstat-no" title="statement not covered" > return out;</span>
938
- };
939
- &nbsp;</pre></td></tr></table></pre>
940
-
941
- <div class='push'></div><!-- for sticky footer -->
942
- </div><!-- /wrapper -->
943
- <div class='footer quiet pad2 space-top1 center small'>
944
- Code coverage generated by
945
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
946
- at 2024-12-03T13:26:14.758Z
947
- </div>
948
- <script src="../prettify.js"></script>
949
- <script>
950
- window.onload = function () {
951
- prettyPrint();
952
- };
953
- </script>
954
- <script src="../sorter.js"></script>
955
- <script src="../block-navigation.js"></script>
956
- </body>
957
- </html>
958
-