File: D:/HostingSpaces/Neopoints/momsecurity.be/vendor/komma/kms/src/Core/Attributes/Currency.php
<?php
/** TODO MOVE TO SHOP BOILERPLATE BECAUSE THIS ATTRIBUTE DEPENDS ON THE VAT SERVICE AND ON SHOP TRANSLATIONS */
namespace Komma\KMS\Core\Attributes;
use Komma\KMS\Core\Attributes\Interfaces\HasLabelInterface;
use Komma\KMS\Core\Attributes\Traits\ExplanationTrait;
use Komma\KMS\Core\Attributes\Traits\LabelTrait;
use Komma\KMS\Core\Attributes\Traits\PlaceholderTextTrait;
use Komma\KMS\Core\Attributes\Traits\ReadOnlyTrait;
/**
* Class TextField
* @package App\Kms\Core\Attributes
*/
class Currency extends Attribute implements HasLabelInterface
{
use LabelTrait;
use PlaceholderTextTrait;
use ReadOnlyTrait;
use ExplanationTrait;
/** The minimum allowed value */
private int $min;
/** The maximum allowed value */
private int $max;
/** The legal number intervals */
private float $step;
/**
* @return string
* @throws \Throwable
*/
public function render(): string
{
return view('KMS::attributes.currency', [
'attribute' => $this
])->render();
}
/**
* @return int
*/
public function getMin(): ?int
{
return $this->min;
}
/**
* @param int $min
* @return Currency
*/
public function setMin(int $min):Currency
{
$this->min = $min;
return $this;
}
/**
* @return int
*/
public function getMax(): ?int
{
return $this->max;
}
/**
* @param int $max
* @return Currency
*/
public function setMax(int $max):Currency
{
$this->max = $max;
return $this;
}
/**
* @return float
*/
public function getStep(): ?float
{
return $this->step;
}
/**
* @param float $step
* @return Currency
*/
public function setStep(float $step):Currency
{
$this->step = $step;
return $this;
}
/**
* Get value overwrite
* because the value may not be an empty string but should be 0 then
*
* @return string
*/
public function getValue(): string
{
$value = $this->value;
if(empty($value)) $value = '';
return $value;
}
}