['required', 'string', 'max:16', 'regex:/^[A-Z0-9]{1,16}$/', Rule::unique('currencies', 'code')], 'name' => ['required', 'string', 'max:64'], 'decimal_places' => ['sometimes', 'integer', 'min:0', 'max:12'], 'is_enabled' => ['sometimes', 'boolean'], 'is_bettable' => ['sometimes', 'boolean'], ]; } protected function prepareForValidation(): void { if ($this->has('code')) { $this->merge([ 'code' => strtoupper(substr(trim((string) $this->input('code')), 0, 16)), ]); } } }