🤖 Auto commit for release 'develop' on 2025-11-03

This commit is contained in:
JC5
2025-11-03 04:30:12 +01:00
parent 7743d16ea1
commit 2852a36712
26 changed files with 41 additions and 38 deletions

View File

@@ -38,7 +38,6 @@ use FireflyIII\Transformers\PiggyBankTransformer;
use FireflyIII\Transformers\TransactionGroupTransformer; use FireflyIII\Transformers\TransactionGroupTransformer;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Pagination\LengthAwarePaginator; use Illuminate\Pagination\LengthAwarePaginator;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use League\Fractal\Pagination\IlluminatePaginatorAdapter; use League\Fractal\Pagination\IlluminatePaginatorAdapter;
@@ -144,8 +143,8 @@ class ListController extends Controller
'page' => $page, 'page' => $page,
'start' => $start, 'start' => $start,
'end' => $end, 'end' => $end,
'types' => $types, 'types' => $types,
] = $request->attributes->all(); ] = $request->attributes->all();
$manager = $this->getManager(); $manager = $this->getManager();
/** @var User $admin */ /** @var User $admin */

View File

@@ -75,9 +75,9 @@ class ShowController extends Controller
'limit' => $limit, 'limit' => $limit,
'offset' => $offset, 'offset' => $offset,
'page' => $page, 'page' => $page,
'start' => $start, 'start' => $start,
'end' => $end, 'end' => $end,
] = $request->attributes->all(); ] = $request->attributes->all();
// get list of available budgets. Count it and split it. // get list of available budgets. Count it and split it.
$collection = $this->abRepository->getAvailableBudgetsByDate($start, $end); $collection = $this->abRepository->getAvailableBudgetsByDate($start, $end);

View File

@@ -37,7 +37,6 @@ use FireflyIII\Transformers\RuleTransformer;
use FireflyIII\Transformers\TransactionGroupTransformer; use FireflyIII\Transformers\TransactionGroupTransformer;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Pagination\LengthAwarePaginator; use Illuminate\Pagination\LengthAwarePaginator;
use League\Fractal\Pagination\IlluminatePaginatorAdapter; use League\Fractal\Pagination\IlluminatePaginatorAdapter;
use League\Fractal\Resource\Collection as FractalCollection; use League\Fractal\Resource\Collection as FractalCollection;
@@ -141,10 +140,10 @@ class ListController extends Controller
[ [
'limit' => $limit, 'limit' => $limit,
'page' => $page, 'page' => $page,
'types' => $types, 'types' => $types,
'start' => $start, 'start' => $start,
'end' => $end, 'end' => $end,
] = $request->attributes->all(); ] = $request->attributes->all();
$manager = $this->getManager(); $manager = $this->getManager();

View File

@@ -27,7 +27,6 @@ namespace FireflyIII\Api\V1\Controllers\Models\Bill;
use FireflyIII\Api\V1\Controllers\Controller; use FireflyIII\Api\V1\Controllers\Controller;
use FireflyIII\Api\V1\Requests\DateRangeRequest; use FireflyIII\Api\V1\Requests\DateRangeRequest;
use FireflyIII\Api\V1\Requests\Generic\PaginationDateRangeRequest; use FireflyIII\Api\V1\Requests\Generic\PaginationDateRangeRequest;
use FireflyIII\Api\V1\Requests\PaginationRequest;
use FireflyIII\Models\Bill; use FireflyIII\Models\Bill;
use FireflyIII\Repositories\Bill\BillRepositoryInterface; use FireflyIII\Repositories\Bill\BillRepositoryInterface;
use FireflyIII\Support\JsonApi\Enrichments\SubscriptionEnrichment; use FireflyIII\Support\JsonApi\Enrichments\SubscriptionEnrichment;

View File

@@ -23,7 +23,6 @@ declare(strict_types=1);
namespace FireflyIII\Api\V1\Requests; namespace FireflyIII\Api\V1\Requests;
use FireflyIII\Exceptions\FireflyException;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Log;

View File

@@ -27,7 +27,6 @@ use FireflyIII\Api\V1\Requests\AggregateFormRequest;
use FireflyIII\Api\V1\Requests\DateRequest; use FireflyIII\Api\V1\Requests\DateRequest;
use FireflyIII\Api\V1\Requests\Generic\ObjectTypeApiRequest; use FireflyIII\Api\V1\Requests\Generic\ObjectTypeApiRequest;
use FireflyIII\Api\V1\Requests\Generic\QueryRequest; use FireflyIII\Api\V1\Requests\Generic\QueryRequest;
use FireflyIII\Api\V1\Requests\Models\Account\AccountTypesApiRequest;
use FireflyIII\Api\V1\Requests\PaginationRequest; use FireflyIII\Api\V1\Requests\PaginationRequest;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
use Override; use Override;

View File

@@ -53,7 +53,7 @@ class ObjectTypeApiRequest extends ApiRequest
public function rules(): array public function rules(): array
{ {
$rule = null; $rule = null;
if (Account::class === $this->objectType) { if (Account::class === $this->objectType) {
$rule = new IsValidAccountTypeList(); $rule = new IsValidAccountTypeList();
} }
@@ -66,6 +66,7 @@ class ObjectTypeApiRequest extends ApiRequest
if ('' !== $this->required) { if ('' !== $this->required) {
$rules['types'][] = $this->required; $rules['types'][] = $this->required;
} }
return $rules; return $rules;
} }
@@ -78,14 +79,20 @@ class ObjectTypeApiRequest extends ApiRequest
} }
$type = $this->convertString('types', 'all'); $type = $this->convertString('types', 'all');
$this->attributes->set('type', $type); $this->attributes->set('type', $type);
switch ($this->objectType) { switch ($this->objectType) {
default: default:
$this->attributes->set('types', []); $this->attributes->set('types', []);
// no break
case Account::class: case Account::class:
$this->attributes->set('types', $this->mapAccountTypes($type)); $this->attributes->set('types', $this->mapAccountTypes($type));
break; break;
case Transaction::class: case Transaction::class:
$this->attributes->set('types', $this->mapTransactionTypes($type)); $this->attributes->set('types', $this->mapTransactionTypes($type));
break; break;
} }
} }

View File

@@ -1,4 +1,6 @@
<?php <?php
declare(strict_types=1);
/* /*
* PaginationDateRangeRequest.php * PaginationDateRangeRequest.php
* Copyright (c) 2025 james@firefly-iii.org * Copyright (c) 2025 james@firefly-iii.org

View File

@@ -28,6 +28,7 @@ use FireflyIII\Models\Category;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Database\QueryException; use Illuminate\Database\QueryException;
use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Log;
/** /**
* Class CategoryFactory * Class CategoryFactory
*/ */

View File

@@ -38,6 +38,7 @@ use Illuminate\Database\QueryException;
use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Log;
use function Safe\json_encode; use function Safe\json_encode;
/** /**
* Class PiggyBankFactory * Class PiggyBankFactory
*/ */

View File

@@ -38,7 +38,6 @@ use FireflyIII\Notifications\Test\OwnerTestNotificationSlack;
use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Notification; use Illuminate\Support\Facades\Notification;
/** /**
* Class AdminEventHandler. * Class AdminEventHandler.
*/ */

View File

@@ -58,7 +58,6 @@ use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Mail; use Illuminate\Support\Facades\Mail;
use Illuminate\Support\Facades\Notification; use Illuminate\Support\Facades\Notification;
/** /**
* Class UserEventHandler. * Class UserEventHandler.
* *

View File

@@ -36,7 +36,6 @@ use FireflyIII\Support\Http\Api\ExchangeRateConverter;
use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Log;
/** /**
* Class AccountObserver * Class AccountObserver
*/ */

View File

@@ -30,7 +30,6 @@ use FireflyIII\Support\Facades\Amount;
use FireflyIII\Support\Http\Api\ExchangeRateConverter; use FireflyIII\Support\Http\Api\ExchangeRateConverter;
use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Log;
/** /**
* Class BillObserver * Class BillObserver
*/ */

View File

@@ -30,7 +30,6 @@ use FireflyIII\Repositories\Attachment\AttachmentRepositoryInterface;
use FireflyIII\Support\Http\Api\ExchangeRateConverter; use FireflyIII\Support\Http\Api\ExchangeRateConverter;
use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Log;
/** /**
* Class PiggyBankObserver * Class PiggyBankObserver
*/ */

View File

@@ -25,6 +25,7 @@ namespace FireflyIII\Handlers\Observer;
use FireflyIII\Models\WebhookMessage; use FireflyIII\Models\WebhookMessage;
use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Log;
/** /**
* Class WebhookMessageObserver * Class WebhookMessageObserver
*/ */

View File

@@ -25,6 +25,7 @@ namespace FireflyIII\Handlers\Observer;
use FireflyIII\Models\Webhook; use FireflyIII\Models\Webhook;
use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Log;
/** /**
* Class WebhookObserver * Class WebhookObserver
*/ */

View File

@@ -30,6 +30,7 @@ use FireflyIII\Models\TransactionJournal;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Builder as EloquentBuilder; use Illuminate\Database\Eloquent\Builder as EloquentBuilder;
use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Log;
/** /**
* Trait AttachmentCollection * Trait AttachmentCollection
*/ */

View File

@@ -28,9 +28,9 @@ use Carbon\Carbon;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Models\WebhookMessage; use FireflyIII\Models\WebhookMessage;
use JsonException; use JsonException;
use Illuminate\Support\Facades\Log;
use function Safe\json_encode; use function Safe\json_encode;
use Illuminate\Support\Facades\Log;
/** /**
* Class Sha3SignatureGenerator * Class Sha3SignatureGenerator

View File

@@ -39,7 +39,7 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* *
* @property TransactionCurrency $transactionCurrency * @property TransactionCurrency $transactionCurrency
* @property Carbon $start_date * @property Carbon $start_date
* @property Carbon|null $end_date * @property null|Carbon $end_date
*/ */
#[ObservedBy([BudgetLimitObserver::class])] #[ObservedBy([BudgetLimitObserver::class])]
class BudgetLimit extends Model class BudgetLimit extends Model

View File

@@ -72,7 +72,6 @@ class IsAllowedGroupAction implements ValidationRule
$this->validateUserGroup((int)$value, $fail); $this->validateUserGroup((int)$value, $fail);
} }
private function validateUserGroup(int $userGroupId, Closure $fail): void private function validateUserGroup(int $userGroupId, Closure $fail): void
{ {
try { try {
@@ -80,7 +79,8 @@ class IsAllowedGroupAction implements ValidationRule
} catch (FireflyException $e) { } catch (FireflyException $e) {
Log::error($e->getTraceAsString()); Log::error($e->getTraceAsString());
} }
die('here we are');
exit('here we are');
Log::debug(sprintf('validateUserGroup: %s', static::class)); Log::debug(sprintf('validateUserGroup: %s', static::class));
if (!auth()->check()) { if (!auth()->check()) {
Log::debug('validateUserGroup: user is not logged in, return NULL.'); Log::debug('validateUserGroup: user is not logged in, return NULL.');
@@ -90,7 +90,7 @@ class IsAllowedGroupAction implements ValidationRule
} }
/** @var User $user */ /** @var User $user */
$user = auth()->user(); $user = auth()->user();
if (0 !== $userGroupId) { if (0 !== $userGroupId) {
Log::debug(sprintf('validateUserGroup: user group submitted, search for memberships in group #%d.', $userGroupId)); Log::debug(sprintf('validateUserGroup: user group submitted, search for memberships in group #%d.', $userGroupId));
} }
@@ -110,7 +110,7 @@ class IsAllowedGroupAction implements ValidationRule
} }
// need to get the group from the membership: // need to get the group from the membership:
$userGroup = $this->repository->getById($userGroupId); $userGroup = $this->repository->getById($userGroupId);
if (null === $userGroup) { if (null === $userGroup) {
Log::debug(sprintf('validateUserGroup: group #%d does not exist.', $userGroupId)); Log::debug(sprintf('validateUserGroup: group #%d does not exist.', $userGroupId));
$fail('validation.belongs_user_or_user_group')->translate(); $fail('validation.belongs_user_or_user_group')->translate();

View File

@@ -45,7 +45,7 @@ class IsValidTransactionTypeList implements ValidationRule
if (!is_array($values)) { if (!is_array($values)) {
$fail('validation.invalid_transaction_type_list')->translate(); $fail('validation.invalid_transaction_type_list')->translate();
} }
$keys = array_keys($this->transactionTypes); $keys = array_keys($this->transactionTypes);
foreach ($values as $entry) { foreach ($values as $entry) {
$entry = (string)$entry; $entry = (string)$entry;
if (!in_array($entry, $keys, true)) { if (!in_array($entry, $keys, true)) {

View File

@@ -70,7 +70,7 @@ trait TransactionFilter
$return = []; $return = [];
$parts = explode(',', $type); $parts = explode(',', $type);
foreach ($parts as $part) { foreach ($parts as $part) {
if(array_key_exists($part, $this->transactionTypes)) { if (array_key_exists($part, $this->transactionTypes)) {
$return = array_merge($return, $this->transactionTypes[$part]); $return = array_merge($return, $this->transactionTypes[$part]);
} }
} }

View File

@@ -25,7 +25,6 @@ declare(strict_types=1);
namespace FireflyIII\Support\Http\Api; namespace FireflyIII\Support\Http\Api;
use FireflyIII\Enums\UserRoleEnum; use FireflyIII\Enums\UserRoleEnum;
use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Models\UserGroup; use FireflyIII\Models\UserGroup;
use FireflyIII\Repositories\UserGroup\UserGroupRepositoryInterface; use FireflyIII\Repositories\UserGroup\UserGroupRepositoryInterface;
use FireflyIII\User; use FireflyIII\User;

View File

@@ -78,8 +78,8 @@ return [
'running_balance_column' => env('USE_RUNNING_BALANCE', false), 'running_balance_column' => env('USE_RUNNING_BALANCE', false),
// see cer.php for exchange rates feature flag. // see cer.php for exchange rates feature flag.
], ],
'version' => 'develop/2025-11-02', 'version' => 'develop/2025-11-03',
'build_time' => 1762056298, 'build_time' => 1762140500,
'api_version' => '2.1.0', // field is no longer used. 'api_version' => '2.1.0', // field is no longer used.
'db_version' => 28, // field is no longer used. 'db_version' => 28, // field is no longer used.

18
package-lock.json generated
View File

@@ -3173,9 +3173,9 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/@types/node": { "node_modules/@types/node": {
"version": "24.9.2", "version": "24.10.0",
"resolved": "https://registry.npmjs.org/@types/node/-/node-24.9.2.tgz", "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.0.tgz",
"integrity": "sha512-uWN8YqxXxqFMX2RqGOrumsKeti4LlmIMIyV0lgut4jx7KQBcBiW6vkDtIBvHnHIquwNfJhk8v2OtmO8zXWHfPA==", "integrity": "sha512-qzQZRBqkFsYyaSWXuEHc2WR9c0a0CXwiE5FWUvn7ZM+vdy1uZLfCunD38UzhuB7YN/J11ndbDBcTmOdxJo9Q7A==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
@@ -4521,9 +4521,9 @@
} }
}, },
"node_modules/caniuse-lite": { "node_modules/caniuse-lite": {
"version": "1.0.30001752", "version": "1.0.30001753",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001752.tgz", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001753.tgz",
"integrity": "sha512-vKUk7beoukxE47P5gcVNKkDRzXdVofotshHwfR9vmpeFKxmI5PBpgOMC18LUJUA/DvJ70Y7RveasIBraqsyO/g==", "integrity": "sha512-Bj5H35MD/ebaOV4iDLqPEtiliTN29qkGtEHCwawWn4cYm+bPJM2NsaP30vtZcnERClMzp52J4+aw2UNbK4o+zw==",
"dev": true, "dev": true,
"funding": [ "funding": [
{ {
@@ -5820,9 +5820,9 @@
} }
}, },
"node_modules/envinfo": { "node_modules/envinfo": {
"version": "7.19.0", "version": "7.20.0",
"resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.19.0.tgz", "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.20.0.tgz",
"integrity": "sha512-DoSM9VyG6O3vqBf+p3Gjgr/Q52HYBBtO3v+4koAxt1MnWr+zEnxE+nke/yXS4lt2P4SYCHQ4V3f1i88LQVOpAw==", "integrity": "sha512-+zUomDcLXsVkQ37vUqWBvQwLaLlj8eZPSi61llaEFAVBY5mhcXdaSw1pSJVl4yTYD5g/gEfpNl28YYk4IPvrrg==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"bin": { "bin": {