%PDF- %PDF-
Direktori : /home/forge/api-takeaseat.eco-n-tech.co.uk/vendor/laravel/nova/src/Metrics/ |
Current File : //home/forge/api-takeaseat.eco-n-tech.co.uk/vendor/laravel/nova/src/Metrics/ValueResult.php |
<?php namespace Laravel\Nova\Metrics; use JsonSerializable; class ValueResult implements JsonSerializable { /** * The value of the result. * * @var mixed */ public $value; /** * The previous value. * * @var mixed */ public $previous; /** * The previous value label. * * @var string */ public $previousLabel; /** * The metric value prefix. * * @var string */ public $prefix; /** * The metric value suffix. * * @var string */ public $suffix; /** * Whether to run inflection on the suffix. * * @var bool */ public $suffixInflection = true; /** * The metric value formatting. * * @var string */ public $format; /** * Determines whether a value of 0 counts as "No Current Data". * * @var bool */ public $zeroResult = false; /** * Create a new value result instance. * * @param mixed $value * @return void */ public function __construct($value) { $this->value = $value; } /** * Set the previous value for the metric. * * @param mixed $previous * @param string $label * @return $this */ public function previous($previous, $label = null) { $this->previous = $previous; $this->previousLabel = $label; return $this; } /** * Indicate that the metric represents a dollar value. * * @param string $symbol * @return $this */ public function dollars($symbol = '$') { return $this->currency($symbol); } /** * Indicate that the metric represents a currency value. * * @param string $symbol * @return $this */ public function currency($symbol = '$') { return $this->prefix($symbol); } /** * Set the metric value prefix. * * @param string $prefix * @return $this */ public function prefix($prefix) { $this->prefix = $prefix; return $this; } /** * Set the metric value suffix. * * @param string $suffix * @return $this */ public function suffix($suffix) { $this->suffix = $suffix; return $this; } /** * Don't apply suffix inflections. * * @return $this */ public function withoutSuffixInflection() { $this->suffixInflection = false; return $this; } /** * Set the metric value formatting. * * @param string $format * @return $this */ public function format($format) { $this->format = $format; return $this; } /** * Sets the zeroResult value. * * @param bool $zeroResult * @return $this */ public function allowZeroResult($zeroResult = true) { $this->zeroResult = $zeroResult; return $this; } /** * Prepare the metric result for JSON serialization. * * @return array */ public function jsonSerialize() { return [ 'value' => $this->value, 'previous' => $this->previous, 'previousLabel' => $this->previousLabel, 'prefix' => $this->prefix, 'suffix' => $this->suffix, 'suffixInflection' => $this->suffixInflection, 'format' => $this->format, 'zeroResult' => $this->zeroResult, ]; } }