user() !== null; } /** * @return array */ public function rules(): array { return [ 'cart_id' => [ 'required_without:direct_item', Rule::prohibitedIf(fn (): bool => $this->has('direct_item')), 'integer', 'exists:carritos,id', ], 'direct_item' => [ 'required_without:cart_id', Rule::prohibitedIf(fn (): bool => $this->has('cart_id')), 'array', ], 'direct_item.catalog_item_id' => [ 'required_with:direct_item', 'integer', ], 'direct_item.variant_id' => [ 'nullable', 'integer', ], 'direct_item.cantidad' => [ 'required_with:direct_item', 'integer', 'min:1', ], 'dni' => ['prohibited'], 'telefono' => ['prohibited'], 'nombre_apellido' => ['prohibited'], 'email' => ['prohibited'], ]; } }