Implements return types on aggregators

This commit is contained in:
Julien Fastré 2025-04-08 12:38:52 +02:00
parent ec5f4ed1d6
commit 0d0a626f50
Signed by: julienfastre
GPG Key ID: BDE2190974723FCB
100 changed files with 111 additions and 107 deletions

View File

@ -61,7 +61,7 @@ class ByActivityNumberAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return static function ($value) { return static function ($value) {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -69,7 +69,7 @@ final readonly class ByActivityTypeAggregator implements AggregatorInterface
]; ];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
return function (int|string|null $value): string { return function (int|string|null $value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -67,7 +67,7 @@ class BySocialActionAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value) { return function ($value) {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -67,7 +67,7 @@ class BySocialIssueAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -64,7 +64,7 @@ final readonly class ActivityLocationAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data): \Closure public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -44,7 +44,7 @@ final readonly class ActivityPresenceAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
return function (int|string|null $value): string { return function (int|string|null $value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -111,7 +111,7 @@ class ActivityReasonAggregator implements AggregatorInterface, ExportElementVali
]; ];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value) use ($data) { return function ($value) use ($data) {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -69,7 +69,7 @@ class ActivityTypeAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data): \Closure public function getLabels($key, array $values, $data): callable
{ {
return function (int|string|null $value): string { return function (int|string|null $value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -68,7 +68,7 @@ class ActivityUserAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, $values, $data): \Closure public function getLabels($key, $values, $data): callable
{ {
return function ($value) { return function ($value) {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -68,7 +68,7 @@ class ActivityUsersAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value) { return function ($value) {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -87,7 +87,7 @@ class ActivityUsersJobAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -87,7 +87,7 @@ class ActivityUsersScopeAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -63,7 +63,7 @@ class ByCreatorAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -67,7 +67,7 @@ class ByThirdpartyAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -87,7 +87,7 @@ class CreatorJobAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -87,7 +87,7 @@ class CreatorScopeAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -96,7 +96,7 @@ class DateAggregator implements AggregatorInterface
return ['frequency' => self::DEFAULT_CHOICE]; return ['frequency' => self::DEFAULT_CHOICE];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return static function ($value) use ($data): string { return static function ($value) use ($data): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -67,7 +67,7 @@ class LocationTypeAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -49,7 +49,7 @@ final readonly class HouseholdAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
return function (int|string|null $value): string|int { return function (int|string|null $value): string|int {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -46,7 +46,7 @@ final readonly class PersonAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
return $this->labelPersonHelper->getLabel($key, $values, 'export.aggregator.person.by_person.person'); return $this->labelPersonHelper->getLabel($key, $values, 'export.aggregator.person.by_person.person');
} }

View File

@ -52,7 +52,7 @@ final readonly class PersonsAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
if ($key !== self::PREFIX.'_pid') { if ($key !== self::PREFIX.'_pid') {
throw new \UnexpectedValueException('this key should not be handled: '.$key); throw new \UnexpectedValueException('this key should not be handled: '.$key);

View File

@ -66,7 +66,7 @@ class ByActivityTypeAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -46,7 +46,7 @@ class ByLocationAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -87,7 +87,7 @@ class ByUserJobAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -86,7 +86,7 @@ class ByUserScopeAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -67,7 +67,7 @@ final readonly class AgentAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data): \Closure public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -68,7 +68,7 @@ class CancelReasonAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data): \Closure public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -87,7 +87,7 @@ final readonly class JobAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data): \Closure public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -65,7 +65,7 @@ final readonly class LocationAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data): \Closure public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -67,7 +67,7 @@ final readonly class LocationTypeAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data): \Closure public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -60,7 +60,7 @@ class MonthYearAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data): \Closure public function getLabels($key, array $values, $data): callable
{ {
return static function ($value): string { return static function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -87,7 +87,7 @@ final readonly class ScopeAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data): \Closure public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -69,7 +69,7 @@ class UrgencyAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data): \Closure public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -96,7 +96,7 @@ class EventDateAggregator implements AggregatorInterface
return ['frequency' => self::DEFAULT_CHOICE]; return ['frequency' => self::DEFAULT_CHOICE];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return static function ($value) use ($data): string { return static function ($value) use ($data): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -69,7 +69,7 @@ class EventTypeAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data): \Closure public function getLabels($key, array $values, $data): callable
{ {
return function (int|string|null $value): string { return function (int|string|null $value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -69,7 +69,7 @@ class RoleAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data): \Closure public function getLabels($key, array $values, $data): callable
{ {
return function (int|string|null $value): string { return function (int|string|null $value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -19,7 +19,7 @@ trait ExportDataNormalizerTrait
/** /**
* @param object|list<object> $entity * @param object|list<object> $entity
*/ */
public function normalizeDoctrineEntity(object|array $entity): array|int public function normalizeDoctrineEntity(object|array|null $entity): array|int
{ {
if (is_array($entity)) { if (is_array($entity)) {
return array_values(array_filter(array_map(static fn (object $entity) => $entity->getId(), $entity), fn ($value) => null !== $value)); return array_values(array_filter(array_map(static fn (object $entity) => $entity->getId(), $entity), fn ($value) => null !== $value));

View File

@ -141,7 +141,7 @@ class SortExportElementTest extends KernelTestCase
return []; return [];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
return fn ($v) => $v; return fn ($v) => $v;
} }

View File

@ -67,7 +67,7 @@ class AdministrativeLocationAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -60,7 +60,7 @@ class ByActionNumberAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return static function ($value) { return static function ($value) {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -61,7 +61,7 @@ final readonly class ClosingDateAggregator implements AggregatorInterface
]; ];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
return function (?string $value): string { return function (?string $value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -63,7 +63,7 @@ class ClosingMotiveAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -62,7 +62,7 @@ class ConfidentialAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -100,7 +100,7 @@ class CreatorJobAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -85,7 +85,7 @@ final readonly class DurationAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return static function ($value) use ($data) { return static function ($value) use ($data) {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -62,7 +62,7 @@ class EmergencyAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -71,7 +71,7 @@ final readonly class EvaluationAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -149,7 +149,7 @@ final readonly class GeographicalUnitStatAggregator implements AggregatorInterfa
return ['date_calc' => new RollingDate(RollingDate::T_TODAY)]; return ['date_calc' => new RollingDate(RollingDate::T_TODAY)];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return match ($key) { return match ($key) {
'acp_geog_agg_unitname' => static function ($value): string { 'acp_geog_agg_unitname' => static function ($value): string {

View File

@ -62,7 +62,7 @@ class IntensityAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -94,7 +94,7 @@ final readonly class JobWorkingOnCourseAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data): \Closure public function getLabels($key, array $values, $data): callable
{ {
return function (int|string|null $jobId) { return function (int|string|null $jobId) {
if (null === $jobId || '' === $jobId) { if (null === $jobId || '' === $jobId) {

View File

@ -61,7 +61,7 @@ final readonly class OpeningDateAggregator implements AggregatorInterface
]; ];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
return function (?string $value): string { return function (?string $value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -76,7 +76,7 @@ final readonly class OriginAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -50,7 +50,7 @@ final readonly class PersonParticipatingAggregator implements AggregatorInterfac
return []; return [];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
return match ($key) { return match ($key) {
self::KEY => $this->labelPersonHelper->getLabel($key, $values, 'export.aggregator.course.by-user.header'), self::KEY => $this->labelPersonHelper->getLabel($key, $values, 'export.aggregator.course.by-user.header'),

View File

@ -117,7 +117,7 @@ final readonly class ReferrerAggregator implements AggregatorInterface, DataTran
return $data; return $data;
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -123,7 +123,7 @@ readonly class ReferrerScopeAggregator implements AggregatorInterface, DataTrans
return $data; return $data;
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value) { return function ($value) {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -83,7 +83,7 @@ final readonly class RequestorAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -67,7 +67,7 @@ final readonly class ScopeAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -94,7 +94,7 @@ final readonly class ScopeWorkingOnCourseAggregator implements AggregatorInterfa
return []; return [];
} }
public function getLabels($key, array $values, $data): \Closure public function getLabels($key, array $values, $data): callable
{ {
return function (int|string|null $scopeId) { return function (int|string|null $scopeId) {
if (null === $scopeId || '' === $scopeId) { if (null === $scopeId || '' === $scopeId) {

View File

@ -68,7 +68,7 @@ final readonly class SocialActionAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value) { return function ($value) {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -68,7 +68,7 @@ final readonly class SocialIssueAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -88,7 +88,7 @@ final readonly class StepAggregator implements AggregatorInterface
return ['on_date' => new RollingDate(RollingDate::T_TODAY)]; return ['on_date' => new RollingDate(RollingDate::T_TODAY)];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
switch ($value) { switch ($value) {

View File

@ -123,7 +123,7 @@ final readonly class UserJobAggregator implements AggregatorInterface, DataTrans
return $data; return $data;
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -54,7 +54,7 @@ final readonly class UserWorkingOnCourseAggregator implements AggregatorInterfac
return []; return [];
} }
public function getLabels($key, array $values, $data): \Closure public function getLabels($key, array $values, $data): closure
{ {
return function (int|string|null $userId) { return function (int|string|null $userId) {
if (null === $userId || '' === $userId) { if (null === $userId || '' === $userId) {

View File

@ -52,7 +52,7 @@ final readonly class ByClosingMotiveAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
return function (int|string|null $value): string { return function (int|string|null $value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -59,7 +59,7 @@ final readonly class ByDateAggregator implements AggregatorInterface
return ['frequency' => DateGroupingChoiceEnum::YEAR->value]; return ['frequency' => DateGroupingChoiceEnum::YEAR->value];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
return function (?string $value): string { return function (?string $value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -54,7 +54,7 @@ final readonly class ByStepAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
return function (?string $step): string { return function (?string $step): string {
if ('_header' === $step) { if ('_header' === $step) {

View File

@ -81,7 +81,7 @@ final class ByEndDateAggregator implements AggregatorInterface
return ['frequency' => self::DEFAULT_CHOICE]; return ['frequency' => self::DEFAULT_CHOICE];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return static function ($value): string { return static function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -81,7 +81,7 @@ final class ByMaxDateAggregator implements AggregatorInterface
return ['frequency' => self::DEFAULT_CHOICE]; return ['frequency' => self::DEFAULT_CHOICE];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return static function ($value): string { return static function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -81,7 +81,7 @@ final class ByStartDateAggregator implements AggregatorInterface
return ['frequency' => self::DEFAULT_CHOICE]; return ['frequency' => self::DEFAULT_CHOICE];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return static function ($value): string { return static function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -63,7 +63,7 @@ class EvaluationTypeAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -63,7 +63,7 @@ class HavingEndDateAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -83,7 +83,7 @@ class ChildrenNumberAggregator implements AggregatorInterface
return ['on_date' => new RollingDate(RollingDate::T_TODAY)]; return ['on_date' => new RollingDate(RollingDate::T_TODAY)];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return static function (int|string|null $value): string { return static function (int|string|null $value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -85,7 +85,7 @@ class CompositionAggregator implements AggregatorInterface
return ['on_date' => new RollingDate(RollingDate::T_TODAY)]; return ['on_date' => new RollingDate(RollingDate::T_TODAY)];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -62,7 +62,7 @@ final readonly class AdministrativeStatusAggregator implements AggregatorInterfa
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -70,7 +70,7 @@ final readonly class AgeAggregator implements AggregatorInterface, ExportElement
return ['date_age_calculation' => new RollingDate(RollingDate::T_TODAY)]; return ['date_age_calculation' => new RollingDate(RollingDate::T_TODAY)];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value) { return function ($value) {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -103,7 +103,7 @@ class ByHouseholdCompositionAggregator implements AggregatorInterface
return ['date_calc' => new RollingDate(RollingDate::T_TODAY)]; return ['date_calc' => new RollingDate(RollingDate::T_TODAY)];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value) { return function ($value) {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -58,7 +58,7 @@ final readonly class CenterAggregator implements AggregatorInterface
]; ];
} }
public function getLabels($key, array $values, $data): \Closure public function getLabels($key, array $values, $data): callable
{ {
return function (int|string|null $value) { return function (int|string|null $value) {
if (null === $value || '' === $value) { if (null === $value || '' === $value) {

View File

@ -112,7 +112,7 @@ final readonly class CountryOfBirthAggregator implements AggregatorInterface, Ex
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
$labels = []; $labels = [];

View File

@ -62,7 +62,7 @@ final readonly class EmploymentStatusAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -63,7 +63,7 @@ final readonly class GenderAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function (int|string|null $value) { return function (int|string|null $value) {
if (null === $value || '' === $value) { if (null === $value || '' === $value) {

View File

@ -127,7 +127,7 @@ final readonly class GeographicalUnitAggregator implements AggregatorInterface
return 'person_geog_agg'; return 'person_geog_agg';
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return match ($key) { return match ($key) {
'geog_unit_name' => static function ($value): string { 'geog_unit_name' => static function ($value): string {

View File

@ -94,7 +94,7 @@ final readonly class HouseholdPositionAggregator implements AggregatorInterface,
return ['date_position' => new RollingDate(RollingDate::T_TODAY)]; return ['date_position' => new RollingDate(RollingDate::T_TODAY)];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value) { return function ($value) {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -67,7 +67,7 @@ final readonly class MaritalStatusAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -109,7 +109,7 @@ final readonly class NationalityAggregator implements AggregatorInterface, Expor
]; ];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
$labels = []; $labels = [];

View File

@ -56,7 +56,7 @@ final readonly class PostalCodeAggregator implements AggregatorInterface
return ['calc_date' => new RollingDate(RollingDate::T_TODAY)]; return ['calc_date' => new RollingDate(RollingDate::T_TODAY)];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
return function (int|string|null $value): string { return function (int|string|null $value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -76,7 +76,7 @@ final readonly class ActionTypeAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return match ($key) { return match ($key) {
'action_type_aggregator' => function ($value): string { 'action_type_aggregator' => function ($value): string {

View File

@ -68,7 +68,7 @@ class CreatorAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -85,7 +85,7 @@ class CreatorJobAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -85,7 +85,7 @@ class CreatorScopeAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -66,7 +66,7 @@ class CurrentActionAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -67,7 +67,7 @@ final readonly class GoalAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -73,7 +73,7 @@ class GoalResultAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value) use ($key): string { return function ($value) use ($key): string {
if (null === $value || '' === $value) { if (null === $value || '' === $value) {

View File

@ -52,7 +52,7 @@ final readonly class HandlingThirdPartyAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, mixed $data) public function getLabels($key, array $values, mixed $data): callable
{ {
return $this->labelThirdPartyHelper->getLabel($key, $values, 'export.aggregator.course_work.by_handling_third_party.header'); return $this->labelThirdPartyHelper->getLabel($key, $values, 'export.aggregator.course_work.by_handling_third_party.header');
} }

View File

@ -80,7 +80,7 @@ final readonly class JobAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -85,7 +85,7 @@ final readonly class ReferrerAggregator implements AggregatorInterface
]; ];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -67,7 +67,7 @@ final readonly class ResultAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -80,7 +80,7 @@ final readonly class ScopeAggregator implements AggregatorInterface
return []; return [];
} }
public function getLabels($key, array $values, $data) public function getLabels($key, array $values, $data): callable
{ {
return function ($value): string { return function ($value): string {
if ('_header' === $value) { if ('_header' === $value) {

View File

@ -26,6 +26,7 @@ use Doctrine\ORM\Query;
use Doctrine\ORM\QueryBuilder; use Doctrine\ORM\QueryBuilder;
use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface; use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface;
use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\Translation\TranslatableMessage;
class CountAccompanyingCourse implements ExportInterface, GroupedExportInterface class CountAccompanyingCourse implements ExportInterface, GroupedExportInterface
{ {
@ -102,9 +103,9 @@ class CountAccompanyingCourse implements ExportInterface, GroupedExportInterface
return $query->getQuery()->getResult(Query::HYDRATE_SCALAR); return $query->getQuery()->getResult(Query::HYDRATE_SCALAR);
} }
public function getTitle(): string public function getTitle(): TranslatableMessage
{ {
return 'Count accompanying courses'; return new TranslatableMessage('Count accompanying courses');
} }
public function getType(): string public function getType(): string

View File

@ -21,6 +21,7 @@ use Doctrine\ORM\Query\Expr\Join;
use Doctrine\ORM\QueryBuilder; use Doctrine\ORM\QueryBuilder;
use Symfony\Bridge\Doctrine\Form\Type\EntityType; use Symfony\Bridge\Doctrine\Form\Type\EntityType;
use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\Translation\TranslatableMessage;
final readonly class CreatorJobFilter implements FilterInterface final readonly class CreatorJobFilter implements FilterInterface
{ {
@ -114,19 +115,19 @@ final readonly class CreatorJobFilter implements FilterInterface
return ['creator_job' => $this->denormalizeDoctrineEntity($formData['creator_job'], $this->userJobRepository)]; return ['creator_job' => $this->denormalizeDoctrineEntity($formData['creator_job'], $this->userJobRepository)];
} }
public function describeAction($data, $format = 'string'): array public function describeAction($data, $format = 'string'): TranslatableMessage
{ {
$creatorJobs = []; $creatorJobs = [];
foreach ($data['creator_job'] as $j) { foreach ($data['creator_job'] as $j) {
$creatorJobs[] = $this->translatableStringHelper->localize( $creatorJobs[] = $this->translatableStringHelper->localize(
$j->getLabel() $j->getLabel(),
); );
} }
return ['export.filter.course.creator_job.Filtered by creator job: only %jobs%', [ return new TranslatableMessage('export.filter.course.creator_job.Filtered by creator job: only %jobs%', [
'%jobs%' => implode(', ', $creatorJobs), '%jobs%' => implode(', ', $creatorJobs),
]]; ]);
} }
public function getFormDefaultData(): array public function getFormDefaultData(): array
@ -136,8 +137,8 @@ final readonly class CreatorJobFilter implements FilterInterface
]; ];
} }
public function getTitle(): string public function getTitle(): TranslatableMessage
{ {
return 'export.filter.course.creator_job.Filter by creator job'; return new TranslatableMessage('export.filter.course.creator_job.Filter by creator job');
} }
} }

View File

@ -26,7 +26,9 @@ use Chill\PersonBundle\Export\Declarations;
use Chill\ReportBundle\Entity\Report; use Chill\ReportBundle\Entity\Report;
use Chill\ReportBundle\Security\Authorization\ReportVoter; use Chill\ReportBundle\Security\Authorization\ReportVoter;
use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityManagerInterface;
use Doctrine\ORM\NativeQuery;
use Doctrine\ORM\Query; use Doctrine\ORM\Query;
use Doctrine\ORM\QueryBuilder;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType; use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\Validator\Constraints\Callback; use Symfony\Component\Validator\Constraints\Callback;
@ -34,7 +36,7 @@ use Symfony\Component\Validator\Context\ExecutionContextInterface;
use Symfony\Contracts\Translation\TranslatorInterface; use Symfony\Contracts\Translation\TranslatorInterface;
/** /**
* @template-implements ListInterface<array> * @template-implements ListInterface<QueryBuilder, array{fields: list<string>, address_date: \DateTime}>
*/ */
class ReportList implements ExportElementValidatedInterface, ListInterface class ReportList implements ExportElementValidatedInterface, ListInterface
{ {
@ -286,7 +288,7 @@ class ReportList implements ExportElementValidatedInterface, ListInterface
return [...$fields, ...\array_keys($this->slugs)]; return [...$fields, ...\array_keys($this->slugs)];
} }
public function getResult($query, $data, \Chill\MainBundle\Export\ExportGenerationContext $context): array public function getResult(QueryBuilder|NativeQuery $query, $data, \Chill\MainBundle\Export\ExportGenerationContext $context): array
{ {
return $query->getQuery()->getResult(Query::HYDRATE_SCALAR); return $query->getQuery()->getResult(Query::HYDRATE_SCALAR);
} }