all lists on lists.proxmox.com
 help / color / mirror / Atom feed
From: Thomas Lamprecht <t.lamprecht@proxmox.com>
To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>,
	Matthias Heiserer <m.heiserer@proxmox.com>
Subject: Re: [pve-devel] [PATCH widget-toolkit] ui: SMART: show SMART data in correct columns
Date: Tue, 7 Feb 2023 16:07:24 +0100	[thread overview]
Message-ID: <72aac4fa-0ddd-fa02-c027-9eb35e6f71bb@proxmox.com> (raw)
In-Reply-To: <20230201115223.103313-1-m.heiserer@proxmox.com>

Am 01/02/2023 um 12:52 schrieb Matthias Heiserer:
> Signed-off-by: Matthias Heiserer <m.heiserer@proxmox.com>
> ---
> 
> Sorry for the long delay!
> v1: https://lists.proxmox.com/pipermail/pve-devel/2022-July/053599.html
> Changes from v1:
> use Field.calculate as suggested by Dominik
> 
>  src/window/DiskSmart.js | 25 ++++++++++++++++++++++---
>  1 file changed, 22 insertions(+), 3 deletions(-)
> 
> diff --git a/src/window/DiskSmart.js b/src/window/DiskSmart.js
> index 3c8040b..490020d 100644
> --- a/src/window/DiskSmart.js
> +++ b/src/window/DiskSmart.js
> @@ -38,12 +38,12 @@ Ext.define('Proxmox.window.DiskSmart', {
>  		},
>  		{
>  		    text: gettext('Value'),
> -		    dataIndex: 'raw',
> +		    dataIndex: 'real-value',
>  		    renderer: Ext.String.htmlEncode,
>  		},
>  		{
>  		    text: gettext('Normalized'),
> -		    dataIndex: 'value',
> +		    dataIndex: 'real-normalized',
>  		    width: 60,
>  		},
>  		{
> @@ -154,7 +154,26 @@ Ext.define('Proxmox.window.DiskSmart', {
>      Ext.define('pmx-smart-attribute', {
>  	extend: 'Ext.data.Model',
>  	fields: [
> -	    { name: 'id', type: 'number' }, 'name', 'value', 'worst', 'threshold', 'flags', 'fail', 'raw',
> +	    { name: 'id', type: 'number' }, 'name', 'value', 'worst', 'threshold', 'flags', 'fail',
> +	    'raw', 'normalized',
> +	    {
> +		name: 'real-value',
> +		calculate: function(data) {
> +		    if (data.normalized === undefined) {
> +			return data.value; // FIXME remove with next major release (PBS 3.0)
> +		    }
> +		    return data.raw;
> +		},

Couldn't we use a simple arrow fn? adding 1 instead of 6 line is quite the win
code readability and maintenance wise (it adds up quick ^^). E.g., something like:

calculate: data => data.normalized ? data.raw : data.value,

or if we want to lessen depending on JS's truthiness a bit (didn't recheck what the
API returns here for normalized):

calculate: data => (data.normalized ?? false) ? data.raw : data.value,

> +	    },
> +	    {
> +		name: 'real-normalized',
> +		calculate: function(data) {
> +		    if (data.normalized === undefined) {
> +			return data.raw; // FIXME remove with next major release (PBS 3.0)
> +		    }
> +		    return data.normalized;

same here w.r.t. arrow fn line "bloat" reduction, e.g.:

calculate: data => data.normalized ?? data.raw,

> +		},
> +	    },
>  	],
>  	idProperty: 'name',
>      });





  reply	other threads:[~2023-02-07 15:07 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-01 11:52 Matthias Heiserer
2023-02-07 15:07 ` Thomas Lamprecht [this message]
2023-02-08 10:29   ` Matthias Heiserer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=72aac4fa-0ddd-fa02-c027-9eb35e6f71bb@proxmox.com \
    --to=t.lamprecht@proxmox.com \
    --cc=m.heiserer@proxmox.com \
    --cc=pve-devel@lists.proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal