Todos los artículos

Laravel Prompts agrega una entrada de área de texto de varias líneas, se lanzó Laravel 11.3

Julian Beaujardin
Julian Beaujardin Reference: Laravel News April 9th, 2024

Esta semana, el equipo de Laravel lanzó la versión 11.3, que incluye texto de varias líneas en los mensajes de Laravel, un método Session:hasAny(), un método Context::pull() y más.

Mensajes de texto de varias líneas

Joe Tannenbaum contribuyó con una función de área de texto para los mensajes de Laravel que acepta texto de varias líneas de un usuario.

La función textarea() incluye un argumento de validación opcional, así como un argumento obligatorio para asegurarse de que el área de texto esté completa:

use function Laravel\Prompts\textarea;

$story = textarea(
    label: 'Tell me a story.',
    placeholder: 'This is a story about...',
    required: true,
    hint: 'This will be displayed on your profile.'
);

// Validation
$story = textarea(
    label: 'Tell me a story.',
    validate: fn (string $value) => match (true) {
        strlen($value) < 250 => 'The story must be at least 250 characters.',
        strlen($value) > 10000 => 'The story must not exceed 10,000 characters.',
        default => null
    }
);

Consulte la función textarea() documentación para obtener detalles de uso y la [Solicitud de extracción #88](https://github.com/laravel /prompts/pull/88) en el repositorio laravel/prompts para la implementación.

Nueva sesión tiene el método Any()

Mahmoud Mohamed Ramadan contribuyó con un método hasAny() para las sesiones, lo cual es una buena mejora al verificar si hay algún valor en la sesión:

// Before
if (session()->has('first_name') || session()->has('last_name')) {
    // do something...
}

// Using the new hasAny() method
if (session()->hasAny(['first_name', 'last_name'])) {
    // do something...
}

Método de extracción de contexto

@renegeuze contribuyó con un método pull() y pullHidden() al servicio Context, que extrae los datos contextuales y los elimina inmediatamente del contexto.

$foo = Context::pull('foo');
$bar = Context::pullHidden('foo');

Un caso de uso de ejemplo para esta característica podría ser capturar el contexto para el registro de la base de datos y extraerlo porque el contexto adicional ya no es necesario.

Notas de la Versión

Puede ver la lista completa de nuevas funciones y actualizaciones a continuación y la diferencia entre 11.2.0 y 11.3.0 en GitHub. Las siguientes notas de la versión provienen directamente del registro de cambios