allow vendord
All checks were successful
Build, Push and Deploy / build-and-push (push) Successful in 3m3s
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 16s
Build, Push and Deploy / deploy-staging (push) Successful in 32s
Build, Push and Deploy / deploy-production (push) Has been skipped
Build, Push and Deploy / cleanup (push) Successful in 1s

This commit is contained in:
2026-03-30 14:54:57 +07:00
parent 66aed7c4e8
commit b5e3a778ce
21316 changed files with 2777892 additions and 13 deletions

View File

@@ -0,0 +1,12 @@
<?php
namespace Maatwebsite\Excel\Middleware;
abstract class CellMiddleware
{
/**
* @param mixed $value
* @return mixed
*/
abstract public function __invoke($value, callable $next);
}

View File

@@ -0,0 +1,17 @@
<?php
namespace Maatwebsite\Excel\Middleware;
class ConvertEmptyCellValuesToNull extends CellMiddleware
{
/**
* @param mixed $value
* @return mixed
*/
public function __invoke($value, callable $next)
{
return $next(
$value === '' ? null : $value
);
}
}

View File

@@ -0,0 +1,22 @@
<?php
namespace Maatwebsite\Excel\Middleware;
class TrimCellValue extends CellMiddleware
{
/**
* @param mixed $value
* @return mixed
*/
public function __invoke($value, callable $next)
{
if (!is_string($value)) {
return $next($value);
}
// Remove whitespace, BOM and zero width spaces.
$cleaned = preg_replace('~^[\s\x{FEFF}\x{200B}]+|[\s\x{FEFF}\x{200B}]+$~u', '', $value) ?? trim($value);
return $next($cleaned);
}
}