[pve-devel] [PATCH widget-toolkit] ui: remove extra parenthesis from check to avoid eslint error

Matthias Heiserer m.heiserer at proxmox.com
Mon Feb 20 11:11:27 CET 2023


On 15.02.2023 16:37, Dominik Csapak wrote:
> On 2/15/23 16:22, Matthias Heiserer wrote:
>> On 15.02.2023 16:03, Dominik Csapak wrote:
>>> On 2/15/23 15:46, Stefan Sterz wrote:
>>>> with the additional parenthesis eslint throws an error due to the
>>>> "no-extra-parens" rule that avoids unnecessary parenthesis. remove
>>>> them to get rid of the error.
>>>>
>>>> Signed-off-by: Stefan Sterz <s.sterz at proxmox.com>
>>>> ---
>>>> i am personally not too happy with this eslint requirement here, but
>>>> the widget toolkit won't build otherwise.
>>>>
>>>>   src/window/DiskSmart.js | 2 +-
>>>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>>>
>>>> diff --git a/src/window/DiskSmart.js b/src/window/DiskSmart.js
>>>> index b538ea1..be52a4e 100644
>>>> --- a/src/window/DiskSmart.js
>>>> +++ b/src/window/DiskSmart.js
>>>> @@ -159,7 +159,7 @@ Ext.define('Proxmox.window.DiskSmart', {
>>>>           {
>>>>           name: 'real-value',
>>>>           // FIXME remove with next major release (PBS 3.0)
>>>> -        calculate: data => (data.normalized ?? false) ? data.raw : 
>>>> data.value,
>>>> +        calculate: data => data.normalized ?? false ? data.raw : 
>>>> data.value,
>>>>           },
>>>>           {
>>>>           name: 'real-normalized',
>>>
>>>
>>> imho the '?? false' part is unnecessary since that expression will 
>>> already be coerced to a
>>> boolean and null and undefined are falsy...
>>>
>>> so i'd be happy with
>>> ----
>>> data.normalized ? data.raw : data.value,
>> Then that's bug in my original patch, as we should only fall back to 
>> data.raw when data.normalized doesn't exist (i.e. old api version).
> 
> so if i understand correctly, you want
> 
> data.normalized === undefined || data.normalized === null ? data.raw : 
> data.value
> 
> ?
> if normalized is null/undefined return raw, otherwise value?
I reviewed the changes again and it seems I got confused somewhere along 
the way.

PBS got the new field 'raw_value', PVE the new field 'normalized'.
So if either of these is missing, it's the old API version.

// all super duper verbose:
// real-value:
// prior to the PBS patch, it would return nothing here. But that's what
// we used to display previously, so might as well keep it
return data.raw

// real-normalized
if (data.normalized === undefined) || (data.raw === undefined) {
   return data.value;
} else {
    return data.normalized;
}

But maybe can you find another mistake in my reasoning

> 
> 
>>> ----
>>>
>>> any thoughts @thomas?
>>>
>>>
>>>
>>> _______________________________________________
>>> pve-devel mailing list
>>> pve-devel at lists.proxmox.com
>>> https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
>>>
>>>
>>
> 
> 






More information about the pve-devel mailing list