From 6cbb54c74bbf4f4e427b1e6963f0c2301e833031 Mon Sep 17 00:00:00 2001 From: Nurmuhammet Allanov Date: Tue, 3 Jun 2025 13:43:57 +0500 Subject: [PATCH] wip --- app/Contracts/Paymentable.php | 8 + app/Helpers/helpers.php | 44 +- app/Http/Controllers/AlertController.php | 2 + .../Api/FetchLoanHistoryController.php | 2 + app/Http/Controllers/ApiTesterController.php | 4 +- .../FetchCardHistoryController.php | 2 + .../FetchLoanRemainingController.php | 2 + .../Controllers/BaseAppEnumController.php | 2 + .../Branch/Controllers/BranchController.php | 2 + .../Actions/RetryNovaCardOrderPayment.php | 4 +- .../Repositories/DateHelperRepository.php | 10 + .../Controllers/LoanOrderController.php | 75 +- .../Requests/LoanOrderUpdateRequest.php | 405 +++++++++++ app/Nova/Actions/CheckOnlinePaymentStatus.php | 16 +- .../Actions/DownloadCardBalance.php | 64 +- .../Order/Card/CardBalance/CardBalance.php | 40 +- .../Actions/DownloadCardTransaction.php | 12 +- .../AzatApiClientInfoAllResponse.php | 6 +- .../Card/CardTransaction/CardTransaction.php | 42 +- .../Actions/DownloadCardRequisite.php | 7 +- composer.json | 2 +- composer.lock | 667 +++++++++--------- lang/tk.json | 4 +- lang/vendor/nova/tk.json | 2 +- 24 files changed, 950 insertions(+), 474 deletions(-) create mode 100644 app/Contracts/Paymentable.php create mode 100644 app/Modules/LoanOrder/Controllers/Requests/LoanOrderUpdateRequest.php diff --git a/app/Contracts/Paymentable.php b/app/Contracts/Paymentable.php new file mode 100644 index 0000000..e0b4d23 --- /dev/null +++ b/app/Contracts/Paymentable.php @@ -0,0 +1,8 @@ + $arguments + */ return new class($arguments) { + /** + * Internal data storage. + * + * @var array + */ private array $data = []; + /** + * Constructor that sets properties. + * + * @param array $props + */ public function __construct(array $props) { foreach ($props as $key => $value) { @@ -310,17 +329,36 @@ function emptyClass(...$arguments): object } } - public function __get($key) + /** + * Magic getter. + * + * @param string $key + * @return mixed|null + */ + public function __get(string $key): mixed { return $this->data[$key] ?? null; } - public function __set($key, $value) + /** + * Magic setter. + * + * @param string $key + * @param mixed $value + * @return void + */ + public function __set(string $key, mixed $value): void { $this->data[$key] = $value; } - public function __isset($key): bool + /** + * Magic isset. + * + * @param string $key + * @return bool + */ + public function __isset(string $key): bool { return isset($this->data[$key]); } diff --git a/app/Http/Controllers/AlertController.php b/app/Http/Controllers/AlertController.php index 9c75d42..d21509f 100644 --- a/app/Http/Controllers/AlertController.php +++ b/app/Http/Controllers/AlertController.php @@ -10,6 +10,8 @@ class AlertController extends Controller { /** * Get alerts for user + * + * `Alert`-lar, dine api dereje gosulyar, `mobile app`-lar dine `GET` edip alyp gorkezip bilyarler `app`-a girende. */ public function index(): JsonResponse { diff --git a/app/Http/Controllers/Api/FetchLoanHistoryController.php b/app/Http/Controllers/Api/FetchLoanHistoryController.php index 4d11ee1..bef84ef 100644 --- a/app/Http/Controllers/Api/FetchLoanHistoryController.php +++ b/app/Http/Controllers/Api/FetchLoanHistoryController.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers\Api; use App\Http\Controllers\Controller; +use Dedoc\Scramble\Attributes\ExcludeRouteFromDocs; use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; @@ -11,6 +12,7 @@ class FetchLoanHistoryController extends Controller /** * Fetch loan history */ + #[ExcludeRouteFromDocs] public function index(Request $request): JsonResponse { $request->validate([ diff --git a/app/Http/Controllers/ApiTesterController.php b/app/Http/Controllers/ApiTesterController.php index fda685e..aef2aaa 100644 --- a/app/Http/Controllers/ApiTesterController.php +++ b/app/Http/Controllers/ApiTesterController.php @@ -3,12 +3,10 @@ namespace App\Http\Controllers; use Illuminate\Http\Request; -use Illuminate\Support\Facades\Blade; -use Mpdf\Mpdf; class ApiTesterController extends Controller { - public function index(Request $request) + public function index(Request $request): mixed { $curl = curl_init(); diff --git a/app/Http/Controllers/FetchCardHistoryController.php b/app/Http/Controllers/FetchCardHistoryController.php index 5f27a7a..3aef8e7 100644 --- a/app/Http/Controllers/FetchCardHistoryController.php +++ b/app/Http/Controllers/FetchCardHistoryController.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers; use App\Repos\System\Settings\Legal\PassportRepo; +use Dedoc\Scramble\Attributes\ExcludeRouteFromDocs; use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; use Illuminate\Validation\Rule; @@ -14,6 +15,7 @@ class FetchCardHistoryController extends Controller * * @param Request $request */ + #[ExcludeRouteFromDocs] public function index(Request $request): JsonResponse { $request->validate([ diff --git a/app/Http/Controllers/FetchLoanRemainingController.php b/app/Http/Controllers/FetchLoanRemainingController.php index 798589b..e2ba2a8 100644 --- a/app/Http/Controllers/FetchLoanRemainingController.php +++ b/app/Http/Controllers/FetchLoanRemainingController.php @@ -4,6 +4,7 @@ namespace App\Http\Controllers; use App\Modules\LoanRemainingOrder\Actions\FetchRemainingLoanFromBilling; use App\Repos\System\Settings\Legal\PassportRepo; +use Dedoc\Scramble\Attributes\ExcludeRouteFromDocs; use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; use Illuminate\Validation\Rule; @@ -15,6 +16,7 @@ class FetchLoanRemainingController extends Controller * * @param Request $request */ + #[ExcludeRouteFromDocs] public function index(Request $request): JsonResponse { $request->validate([ diff --git a/app/Modules/BaseAppEnum/Controllers/BaseAppEnumController.php b/app/Modules/BaseAppEnum/Controllers/BaseAppEnumController.php index 30b9e33..c38f8e5 100644 --- a/app/Modules/BaseAppEnum/Controllers/BaseAppEnumController.php +++ b/app/Modules/BaseAppEnum/Controllers/BaseAppEnumController.php @@ -14,6 +14,8 @@ class BaseAppEnumController extends Controller /** * Base app enums * + * `System` -daky esasy bolup biljek `Maglumatlar`, köplenç `Select` -larda ulanylýar. + * * @return array */ public function index(): array diff --git a/app/Modules/Branch/Controllers/BranchController.php b/app/Modules/Branch/Controllers/BranchController.php index 5e89677..c953d30 100644 --- a/app/Modules/Branch/Controllers/BranchController.php +++ b/app/Modules/Branch/Controllers/BranchController.php @@ -11,6 +11,8 @@ class BranchController extends Controller { /** * LIST branches + * + * Bank şahamçalary. http://online.tbbank.gov.tm/work-place/resources/branches */ public function index(Request $request): JsonResponse { diff --git a/app/Modules/CardOrder/Nova/Actions/RetryNovaCardOrderPayment.php b/app/Modules/CardOrder/Nova/Actions/RetryNovaCardOrderPayment.php index a25c44b..54d3fa5 100644 --- a/app/Modules/CardOrder/Nova/Actions/RetryNovaCardOrderPayment.php +++ b/app/Modules/CardOrder/Nova/Actions/RetryNovaCardOrderPayment.php @@ -34,7 +34,9 @@ class RetryNovaCardOrderPayment extends Action */ public function authorizedToRun(Request $request, $model) { - $this->authorizedToRunAction = ! $model->paid && $model->status === OrderRepo::PENDING; + /** @var \App\Models\Order\Card\CardOrder */ + $cardOrder = $model; + $this->authorizedToRunAction = ! $cardOrder->paid && $cardOrder->status === OrderRepo::PENDING; return $this->authorizedToRunAction; } diff --git a/app/Modules/DateHelper/Repositories/DateHelperRepository.php b/app/Modules/DateHelper/Repositories/DateHelperRepository.php index e1032ad..5144faf 100644 --- a/app/Modules/DateHelper/Repositories/DateHelperRepository.php +++ b/app/Modules/DateHelper/Repositories/DateHelperRepository.php @@ -20,6 +20,11 @@ class DateHelperRepository return $month; } + /** + * Static numbers for months + * + * @return array + */ public static function staticNumberMonths(): array { return [ @@ -58,6 +63,11 @@ class DateHelperRepository return $years; } + /** + * Static numbers for years + * + * @return array + */ public static function staticNumberYears(): array { return [ diff --git a/app/Modules/LoanOrder/Controllers/LoanOrderController.php b/app/Modules/LoanOrder/Controllers/LoanOrderController.php index 04efd0d..0dc37a9 100644 --- a/app/Modules/LoanOrder/Controllers/LoanOrderController.php +++ b/app/Modules/LoanOrder/Controllers/LoanOrderController.php @@ -9,15 +9,20 @@ use App\Modules\LoanOrder\Controllers\Requests\LoanOrderStoreRequest; use App\Modules\LoanOrder\Controllers\Resources\LoanOrderIndexResource; use App\Modules\LoanOrder\Controllers\Resources\LoanOrderShowResource; use App\Repos\Order\OrderRepo; +use Dedoc\Scramble\Attributes\Group; +use Illuminate\Database\Eloquent\Model; use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; use Illuminate\Support\Facades\Log; use Illuminate\Support\Str; +#[Group('Sargytlar - Karz - Karz sargytlary Mobile')] class LoanOrderController extends Controller { /** * LIST* Loan orders. + * + * `Karz sargytlary list`-leri list gornushde gelyar. https://online.tbbank.gov.tm/work-place/resources/loan-order-mobiles dan `Label` gorup bilyan. `BaseAppEnum` dan gerek yerlerini match edishene gora alyan. */ public function index(Request $request): JsonResponse { @@ -31,38 +36,51 @@ class LoanOrderController extends Controller /** * SAVE* Loan order. + * + * `Karz sargytlary save`. Example bar, online panelkadan gorup hem bilersin. Update store daky yaly, yone oz ugratyan zadyn update bolyar, eger ugratmasaň, üýtgemez. */ - public function store(LoanOrderStoreRequest $request): JsonResponse + public function store(LoanOrderStoreRequest $request, LoanOrder $loanOrder): JsonResponse { - Log::channel('form_logs')->info('loan-order-store-request', $request->all()); + Log::channel('form_logs')->info('loan-order-update-request', $request->all()); $data = $request->validated(); $months = DateHelperRepository::monthsAsNumber(); $years = DateHelperRepository::yearsUntil(); - $data['card_month'] = indexByValue($request->card_month, $months); - $data['card_year'] = indexByValue($request->card_year, $years); + if ($request->filled('card_month')) { + $data['card_month'] = indexByValue($request->card_month, $months); + } - $data['guarantor_card_month'] = indexByValue($request->guarantor_card_month, $months); - $data['guarantor_card_year'] = indexByValue($request->guarantor_card_year, $years); + if ($request->filled('card_year')) { + $data['card_year'] = indexByValue($request->card_year, $years); + } - $data['guarantor_2_card_month'] = indexByValue($request->guarantor_2_card_month, $months); - $data['guarantor_2_card_year'] = indexByValue($request->guarantor_2_card_year, $years); + if ($request->filled('guarantor_card_month')) { + $data['guarantor_card_month'] = indexByValue($request->guarantor_card_month, $months); + } - LoanOrder::forceCreate([ - ...$data, - ...[ - 'user_id' => auth()->id(), - 'status' => OrderRepo::PENDING, - 'source' => OrderRepo::MOBILE_DEVICE, - ], - ...$this->uploadedFiles($request), - ]); + if ($request->filled('guarantor_card_year')) { + $data['guarantor_card_year'] = indexByValue($request->guarantor_card_year, $years); + } + + if ($request->filled('guarantor_2_card_month')) { + $data['guarantor_2_card_month'] = indexByValue($request->guarantor_2_card_month, $months); + } + + if ($request->filled('guarantor_2_card_year')) { + $data['guarantor_2_card_year'] = indexByValue($request->guarantor_2_card_year, $years); + } + + $data += $this->uploadedFiles($request); + + Model::unguarded(function () use ($loanOrder, $data) { + $loanOrder->update($data); + }); return response()->json([ - 'message' => __('Successfully created'), - ], 201); + 'message' => __('Successfully updates'), + ]); } /** @@ -72,16 +90,21 @@ class LoanOrderController extends Controller */ public function uploadedFiles(Request $request): array { - return [ - 'passport_one' => Str::after($request->file('passport_one')->store('public'), 'public/'), - 'passport_two' => Str::after($request->file('passport_two')->store('public'), 'public/'), - 'passport_three' => Str::after($request->file('passport_three')->store('public'), 'public/'), - 'passport_four' => Str::after($request->file('passport_four')->store('public'), 'public/'), - ]; + $files = []; + + foreach (['passport_one', 'passport_two', 'passport_three', 'passport_four'] as $field) { + if ($request->hasFile($field)) { + $files[$field] = Str::after($request->file($field)->store('public'), 'public/'); + } + } + + return $files; } /** * SHOW* Loan order + * + * `Karz sargytlary show by id`. ID ugradyp alyan route -da. Base App Enum-lardan peydalan. Panelkadan gor. */ public function show(LoanOrder $loanOrder): JsonResponse { @@ -94,6 +117,8 @@ class LoanOrderController extends Controller /** * Update the specified resource in storage. + * + * `Karz sargytlary update`. ID ugradyp `route`-da update edip bilyan. Base App Enum-lardan peydalan. Panelkadan gor. */ public function update(Request $request): void { diff --git a/app/Modules/LoanOrder/Controllers/Requests/LoanOrderUpdateRequest.php b/app/Modules/LoanOrder/Controllers/Requests/LoanOrderUpdateRequest.php new file mode 100644 index 0000000..921aafc --- /dev/null +++ b/app/Modules/LoanOrder/Controllers/Requests/LoanOrderUpdateRequest.php @@ -0,0 +1,405 @@ +|string> + */ + public function rules(): array + { + return [ + /** + * Loan type id (https://online.tbbank.gov.tm/api/loan-types) + */ + 'loan_type' => ['sometimes', 'integer', Rule::exists('loan_types', 'id')], + + /** + * Loan amount + * + * @example 20000 + */ + 'loan_amount' => ['sometimes', 'integer', 'max:40000'], + + /** + * Region (https://online.tbbank.gov.tm/api/base-app-enums) + */ + 'region' => ['sometimes', 'string', Rule::in(array_keys(RegionRepo::values()))], + + /** + * Branch id (https://online.tbbank.gov.tm/api/branches) + */ + 'branch_id' => ['sometimes', 'integer', Rule::exists('branches', 'id')], + + /** + * Customer name + * + * @example Mahmyt + */ + 'customer_name' => ['sometimes', 'string', 'max:255'], + + /** + * Customer surname + * + * @example Allaberdiyev + */ + 'customer_surname' => ['sometimes', 'string', 'max:255'], + + /** + * Customer patronic name + * + * @example Öwezowiç + */ + 'customer_patronic_name' => ['nullable', 'string', 'max:255'], + + /** + * Date of birth + * + * @example 2000 + */ + 'born_at' => ['sometimes', 'before_or_equal:today'], + + /** + * Education (https://online.tbbank.gov.tm/api/base-app-enums) + */ + 'education' => ['sometimes', 'string', Rule::in(array_keys(EducationRepo::values()))], + + /** + * Marriage status (https://online.tbbank.gov.tm/api/base-app-enums) + */ + 'marriage_status' => ['sometimes', 'string', Rule::in(array_keys(MarriageRepo::values()))], + + /** + * Passport address + * + * @example Kemine 100/190 + */ + 'passport_address' => ['sometimes', 'string', 'max:255'], + + /** + * Real address + * + * @example Kemine 100/200 + */ + 'real_address' => ['sometimes', 'string', 'max:255'], + + /** + * Passport serie + */ + 'passport_serie' => ['sometimes', 'string', Rule::in(PassportRepo::values())], + + /** + * Passport number + * + * @example 100999 + */ + 'passport_id' => ['sometimes', 'numeric', 'digits:6'], + + /** + * Passport date of issue + * + * @example 2024-01-10 + */ + 'passport_given_at' => ['sometimes', 'date', 'before_or_equal:today'], + + /** + * Passport given by + * + * @example Ashgabat shaher polisiya tarapyndan + */ + 'passport_given_by' => ['sometimes', 'string', 'max:255'], + + /** + * Born place + * + * @example Ashgabat shaher + */ + 'born_place' => ['sometimes', 'string', 'max:255'], + + /** + * Email + * + * @example mahmyt1206@gmail.com + */ + 'email' => ['nullable', 'email', 'max:255'], + + /** + * Phone number + * + * @example 65999990 + */ + 'phone' => ['sometimes', 'integer', 'between:61000000, 71999999'], + + /** + * Phone number (additional) + * + * @example 61126667 + */ + 'phone_additional' => ['nullable', 'integer', 'between:61000000, 71999999'], + + /** + * Phone number (home) + * + * @example 92-92-92 + */ + 'phone_home' => ['sometimes', 'string', 'max:255'], + + /** + * Card number + * + * @example 4434345434423442 + */ + 'card_number' => ['sometimes', 'digits:16'], + + /** + * Name on card + * + * @example 'Mahmyt Allaberdiyev' + */ + 'card_name' => ['sometimes', 'string', 'max:255'], + + /** + * Card expiration month + * + * @example 06 + */ + 'card_month' => ['required'], + + /** + * Card expiration year + * + * @example 2040 + */ + 'card_year' => ['required'], + + /** + * Card number + * + * @example 4434345434423442 + */ + 'loan_card_number' => ['nullable', 'digits:16'], + + /** + * Name on card + * + * @example 'Mahmyt Allaberdiyev' + */ + 'loan_card_name' => ['nullable', 'string', 'max:255'], + + /** + * Card expiration month + * + * @example 06 + */ + 'loan_card_month' => ['nullable'], + + /** + * Card expiration year + * + * @example 2040 + */ + 'loan_card_year' => ['nullable'], + + /** + * Region (https://online.tbbank.gov.tm/api/base-app-enums) + */ + 'work_region' => ['sometimes', 'string', Rule::in(array_keys(RegionRepo::values()))], + + /** + * Provinces (https://online.tbbank.gov.tm/api/provinces) + */ + 'work_province_id' => ['sometimes', 'integer', Rule::exists('provinces', 'id')], + + /** + * Work company name + * + * @example WebUglam HJ + */ + 'work_company' => ['sometimes', 'string', 'max:255'], + + /** + * HR department number + * + * @example 707012 + */ + 'work_company_accountant_number' => ['sometimes', 'string', 'max:255'], + + /** + * Work position + * + * @example Bugalter + */ + 'work_position' => ['sometimes', 'string', 'max:255'], + + /** + * Salary + * + * @example 40000 + */ + 'work_salary' => ['sometimes', 'numeric', 'max_digits:8'], + + /** + * Work start date + * + * @example 2024-01-16 + */ + 'work_started_at' => ['sometimes', 'date', 'before_or_equal:today'], + + /** + * Passport (sahypa 1) + */ + 'passport_one' => ['sometimes', 'file', 'max:2048', 'mimes:jpg,png,jpeg'], + + /** + * Pasport (2-3-nji sahypa) + */ + 'passport_two' => ['sometimes', 'file', 'max:2048', 'mimes:jpg,png,jpeg'], + + /** + * Pasport (8-9 sahypa) + */ + 'passport_three' => ['sometimes', 'file', 'max:2048', 'mimes:jpg,png,jpeg'], + + /** + * Pasport (32-nji sahypa) + */ + 'passport_four' => ['sometimes', 'file', 'max:2048', 'mimes:jpg,png,jpeg'], + + /** + * Guarantor name + * + * @example Mahmyt + */ + 'guarantor_name' => ['sometimes', 'string', 'max:255'], + + /** + * Guarantor surname + * + * @example Allaberdiev + */ + 'guarantor_surname' => ['sometimes', 'string', 'max:255'], + + /** + * Guarantor surname + * + * @example Owezowic + */ + 'guarantor_patronic_name' => ['sometimes', 'string', 'max:255'], + + /** + * Guarantor card number + * + * @example 4323344234423443 + */ + 'guarantor_card_number' => ['sometimes', 'string', 'digits:16'], + + /** + * Guarantor name on card + * + * @example Mahmyt Allaberdiyev + */ + 'guarantor_card_name' => ['sometimes', 'string', 'max:255'], + + /** + * Guarantor Card month + * + * @example 06 + */ + 'guarantor_card_month' => ['sometimes', 'string'], + + /** + * Guarantor Card year + * + * @example 2040 + */ + 'guarantor_card_year' => ['sometimes', 'string'], + + /** + * Guarantor Passport serie + * + * @example I-AS + */ + 'guarantor_passport_serie' => ['sometimes', 'string', Rule::in(PassportRepo::values())], + + /** + * Guarantor Passport number + * + * @example 100999 + */ + 'guarantor_passport_id' => ['sometimes', 'numeric', 'digits:6'], + + /** + * 2. Guarantor name + * + * @example Mahmyt + */ + 'guarantor_2_name' => [Rule::requiredIf($this->input('loan_amount') > 20000), 'string', 'max:255'], + + /** + * 2. Guarantor surname + * + * @example Allaberdiev + */ + 'guarantor_2_surname' => [Rule::requiredIf($this->input('loan_amount') > 20000), 'string', 'max:255'], + + /** + * 2. Guarantor patronic name + * + * @example Owezowich + */ + 'guarantor_2_patronic_name' => ['nullable', 'string', 'max:255'], + + /** + * 2. Guarantor card number + * + * @example 4323344234423443 + */ + 'guarantor_2_card_number' => [Rule::requiredIf($this->input('loan_amount') > 20000), 'string', 'digits:16'], + + /** + * 2. Guarantor name on card + * + * @example Mahmyt Allaberdiyev + */ + 'guarantor_2_card_name' => [Rule::requiredIf($this->input('loan_amount') > 20000), 'string'], + + /** + * 2. Guarantor Card month + * + * @example 06 + */ + 'guarantor_2_card_month' => [Rule::requiredIf($this->input('loan_amount') > 20000), 'string'], + + /** + * 2. Guarantor Card year + * + * @example 2040 + */ + 'guarantor_2_card_year' => [Rule::requiredIf($this->input('loan_amount') > 20000), 'string'], + + /** + * Guarantor Passport serie + * + * @example I-AS + */ + 'guarantor_2_passport_serie' => [Rule::requiredIf($this->input('loan_amount') > 20000), 'string', Rule::in(PassportRepo::values())], + + /** + * Guarantor Passport number + * + * @example 100999 + */ + 'guarantor_2_passport_id' => [Rule::requiredIf($this->input('loan_amount') > 20000), 'numeric', 'digits:6'], + ]; + } +} diff --git a/app/Nova/Actions/CheckOnlinePaymentStatus.php b/app/Nova/Actions/CheckOnlinePaymentStatus.php index f7ffd78..31e3b36 100644 --- a/app/Nova/Actions/CheckOnlinePaymentStatus.php +++ b/app/Nova/Actions/CheckOnlinePaymentStatus.php @@ -28,11 +28,12 @@ class CheckOnlinePaymentStatus extends Action * Perform the action on the given models. * * @param \Laravel\Nova\Fields\ActionFields $fields - * @param \Illuminate\Support\Collection $models + * @param \Illuminate\Support\Collection $models * @return mixed */ public function handle(ActionFields $fields, Collection $models) { + /** @var \App\Models\Order\Card\CardOrder */ $item = $models->first(); $onlinePaymentResource = OnlinePaymentHistory::query() @@ -58,7 +59,14 @@ class CheckOnlinePaymentStatus extends Action $username = $item->branch->billing_username; $password = $item->branch->billing_password; - if (($username == '' || $password == '') || (is_null($username) || is_null($password))) { + if (is_null($username) || is_null($password)) { + return Action::modal('modal-response', [ + 'title' => 'HALKBANK API', + 'body' => 'Ulanyjy ady bilen açar sözi gabat gelmedi', + ]); + } + + if ($username == '' || $password == '') { return Action::modal('modal-response', [ 'title' => 'HALKBANK API', 'body' => 'Ulanyjy ady bilen açar sözi gabat gelmedi', @@ -82,9 +90,9 @@ class CheckOnlinePaymentStatus extends Action * Get the fields available on the action. * * @param \Laravel\Nova\Http\Requests\NovaRequest $request - * @return array + * @return array */ - public function fields(NovaRequest $request) + public function fields(NovaRequest $request): array { return []; } diff --git a/app/Nova/Resources/Order/Card/CardBalance/Actions/DownloadCardBalance.php b/app/Nova/Resources/Order/Card/CardBalance/Actions/DownloadCardBalance.php index a5a3b80..decc41a 100644 --- a/app/Nova/Resources/Order/Card/CardBalance/Actions/DownloadCardBalance.php +++ b/app/Nova/Resources/Order/Card/CardBalance/Actions/DownloadCardBalance.php @@ -2,21 +2,15 @@ namespace App\Nova\Resources\Order\Card\CardBalance\Actions; -use App\Nova\Resources\Order\Card\CardTransaction\Actions\DownloadCardTransaction; -use Carbon\Carbon; use Illuminate\Bus\Queueable; use Illuminate\Queue\InteractsWithQueue; use Illuminate\Support\Collection; use Illuminate\Support\Facades\Blade; -use Illuminate\Support\Facades\File; use Illuminate\Support\Str; use Laravel\Nova\Actions\Action; use Laravel\Nova\Actions\ActionResponse; use Laravel\Nova\Fields\ActionFields; -use Laravel\Nova\Fields\Date; use Laravel\Nova\Http\Requests\NovaRequest; -use Markwalet\NovaModalResponse\ModalResponse; -use Mpdf\Mpdf; class DownloadCardBalance extends Action { @@ -34,7 +28,7 @@ class DownloadCardBalance extends Action * Perform the action on the given models. * * @param \Laravel\Nova\Fields\ActionFields $fields - * @param \Illuminate\Support\Collection $models + * @param \Illuminate\Support\Collection $models * @return mixed */ public function handle(ActionFields $fields, Collection $models) @@ -49,20 +43,24 @@ class DownloadCardBalance extends Action return ActionResponse::danger($data->message); } - return Action::modal('modal-response', [ - 'title' => __('Card balance'), - 'html' => Blade::render( - file_get_contents(app_path('Nova/Resources/Order/Card/CardBalance/Views/card-balance.blade.php')), - ['data' => $data] - ) + info([ + 'data' => $data, ]); + + // return Action::modal('modal-response', [ + // 'title' => __('Card balance'), + // 'html' => Blade::render( + // file_get_contents(app_path('Nova/Resources/Order/Card/CardBalance/Views/card-balance.blade.php')), + // ['data' => $data] + // ), + // ]); } /** * Get the fields available on the action. * * @param \Laravel\Nova\Http\Requests\NovaRequest $request - * @return array + * @return array */ public function fields(NovaRequest $request) { @@ -72,20 +70,38 @@ class DownloadCardBalance extends Action /** * Fetch api * - * @param \App\Models\Order\Card\Requisite\CardRequisite $model + * @param \App\Models\Order\Card\CardBalance\CardBalance $model */ - public function fetchApi($model) + public function fetchApi($model): object { $date = today()->format('d.m.Y'); - $response = DownloadCardTransaction::make()->fetchApi( - passport_serie: $model->passport_serie, - passport_id: $model->passport_id, - card_number_masked: Str::mask($model->card_number, '*', 6, 6), - card_expire_date: $model->card_month.'/'.substr($model->card_year, 2), - start_date: $date, - end_date: $date, - ); + $curl = curl_init(); + curl_setopt_array($curl, [ + CURLOPT_URL => 'http://10.3.158.102:9999/api/clientinfo/all', + CURLOPT_RETURNTRANSFER => true, + CURLOPT_ENCODING => '', + CURLOPT_MAXREDIRS => 10, + CURLOPT_TIMEOUT => 0, + CURLOPT_FOLLOWLOCATION => true, + CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, + CURLOPT_CUSTOMREQUEST => 'POST', + CURLOPT_POSTFIELDS => sprintf( + '{ "idSeria": "%s", "idNo": "%s", "cardMaskNumber": "%s", "expDate": "%s" }', + $model->passport_serie, + $model->passport_id, + Str::mask($model->card_number, '*', 6, 6), + $model->card_month.'/'.substr($model->card_year, 2) + ), + CURLOPT_HTTPHEADER => [ + 'Authorization: Basic dGJ1c2VyOlFBWndzeDEyMw==', + 'Content-Type: application/json', + ], + ]); + + $response = curl_exec($curl); + + curl_close($curl); return Str::isJson($response) ? json_decode($response) diff --git a/app/Nova/Resources/Order/Card/CardBalance/CardBalance.php b/app/Nova/Resources/Order/Card/CardBalance/CardBalance.php index 4929535..7f56649 100644 --- a/app/Nova/Resources/Order/Card/CardBalance/CardBalance.php +++ b/app/Nova/Resources/Order/Card/CardBalance/CardBalance.php @@ -7,7 +7,6 @@ use App\Nova\Resource; use App\Nova\Resources\Order\Card\CardBalance\Actions\DownloadCardBalance; use App\Repos\System\Settings\Legal\PassportRepo; use Illuminate\Database\Eloquent\Builder; -use Illuminate\Http\Request; use Laravel\Nova\Fields\Hidden; use Laravel\Nova\Fields\ID; use Laravel\Nova\Fields\Select; @@ -33,7 +32,7 @@ class CardBalance extends Resource /** * The columns that should be searched. * - * @var array + * @var array */ public static $search = [ 'unique_id', @@ -81,7 +80,7 @@ class CardBalance extends Resource * Get the fields displayed by the resource. * * @param \Laravel\Nova\Http\Requests\NovaRequest $request - * @return array + * @return array */ public function fields(NovaRequest $request): array { @@ -124,44 +123,11 @@ class CardBalance extends Resource ]; } - /** - * Get the cards available for the request. - * - * @param \Laravel\Nova\Http\Requests\NovaRequest $request - * @return array - */ - public function cards(NovaRequest $request) - { - return []; - } - - /** - * Get the filters available for the resource. - * - * @param \Laravel\Nova\Http\Requests\NovaRequest $request - * @return array - */ - public function filters(NovaRequest $request) - { - return []; - } - - /** - * Get the lenses available for the resource. - * - * @param \Laravel\Nova\Http\Requests\NovaRequest $request - * @return array - */ - public function lenses(NovaRequest $request) - { - return []; - } - /** * Get the actions available for the resource. * * @param \Laravel\Nova\Http\Requests\NovaRequest $request - * @return array + * @return array */ public function actions(NovaRequest $request) { diff --git a/app/Nova/Resources/Order/Card/CardTransaction/Actions/DownloadCardTransaction.php b/app/Nova/Resources/Order/Card/CardTransaction/Actions/DownloadCardTransaction.php index 06e5126..37e5674 100644 --- a/app/Nova/Resources/Order/Card/CardTransaction/Actions/DownloadCardTransaction.php +++ b/app/Nova/Resources/Order/Card/CardTransaction/Actions/DownloadCardTransaction.php @@ -32,7 +32,7 @@ class DownloadCardTransaction extends Action * Perform the action on the given models. * * @param \Laravel\Nova\Fields\ActionFields $fields - * @param \Illuminate\Support\Collection $models + * @param \Illuminate\Support\Collection $models * @return mixed */ public function handle(ActionFields $fields, Collection $models) @@ -77,17 +77,19 @@ class DownloadCardTransaction extends Action * Get the fields available on the action. * * @param \Laravel\Nova\Http\Requests\NovaRequest $request - * @return array + * @return array */ public function fields(NovaRequest $request): array { return [ Date::make(__('Start date'), 'start_date') ->default(date('Y-m-d', strtotime('-6 months'))) + ->fullWidth() ->rules('required'), Date::make(__('End date'), 'end_date') ->default(date('Y-m-d')) + ->fullWidth() ->rules('required'), ]; } @@ -101,6 +103,8 @@ class DownloadCardTransaction extends Action * @param string $card_expire_date * @param string $start_date * @param string $end_date + * + * @return string */ public function fetchApi( string $passport_serie, @@ -140,7 +144,7 @@ class DownloadCardTransaction extends Action * @param ResponseTypes\AzatApiClientInfoAllResponse $data * @param string $fileDest */ - public function generateFile($data, $fileDest) + public function generateFile($data, $fileDest): void { $mpdf = new Mpdf; @@ -159,7 +163,7 @@ class DownloadCardTransaction extends Action /** * @param ResponseTypes\AzatApiClientInfoAllResponse $data */ - public function getExtraVariables($data) + public function getExtraVariables($data): object { if (count($data->transactions) < 1) { return emptyClass(basdakyGalyndy: 0, ahyrkyGalyndy: 0, girdeji: 0, cykdajy: 0); diff --git a/app/Nova/Resources/Order/Card/CardTransaction/Actions/ResponseTypes/AzatApiClientInfoAllResponse.php b/app/Nova/Resources/Order/Card/CardTransaction/Actions/ResponseTypes/AzatApiClientInfoAllResponse.php index e31c9c6..7d5cf76 100644 --- a/app/Nova/Resources/Order/Card/CardTransaction/Actions/ResponseTypes/AzatApiClientInfoAllResponse.php +++ b/app/Nova/Resources/Order/Card/CardTransaction/Actions/ResponseTypes/AzatApiClientInfoAllResponse.php @@ -38,14 +38,14 @@ class AzatApiClientInfoAllResponse public string $phone; - public string $errCode; + public int $errCode; - public int $message; + public string $message; public string $messageRu; public string $messageEn; - /** array */ + /** @var array */ public array $transactions; } diff --git a/app/Nova/Resources/Order/Card/CardTransaction/CardTransaction.php b/app/Nova/Resources/Order/Card/CardTransaction/CardTransaction.php index a4b5d25..b603266 100644 --- a/app/Nova/Resources/Order/Card/CardTransaction/CardTransaction.php +++ b/app/Nova/Resources/Order/Card/CardTransaction/CardTransaction.php @@ -7,7 +7,6 @@ use App\Nova\Resource; use App\Nova\Resources\Order\Card\CardTransaction\Actions\DownloadCardTransaction; use App\Repos\System\Settings\Legal\PassportRepo; use Illuminate\Database\Eloquent\Builder; -use Illuminate\Http\Request; use Laravel\Nova\Fields\Hidden; use Laravel\Nova\Fields\ID; use Laravel\Nova\Fields\Select; @@ -33,7 +32,7 @@ class CardTransaction extends Resource /** * The columns that should be searched. * - * @var array + * @var array */ public static $search = [ 'unique_id', @@ -81,7 +80,7 @@ class CardTransaction extends Resource * Get the fields displayed by the resource. * * @param \Laravel\Nova\Http\Requests\NovaRequest $request - * @return array + * @return array */ public function fields(NovaRequest $request): array { @@ -124,46 +123,13 @@ class CardTransaction extends Resource ]; } - /** - * Get the cards available for the request. - * - * @param \Laravel\Nova\Http\Requests\NovaRequest $request - * @return array - */ - public function cards(NovaRequest $request) - { - return []; - } - - /** - * Get the filters available for the resource. - * - * @param \Laravel\Nova\Http\Requests\NovaRequest $request - * @return array - */ - public function filters(NovaRequest $request) - { - return []; - } - - /** - * Get the lenses available for the resource. - * - * @param \Laravel\Nova\Http\Requests\NovaRequest $request - * @return array - */ - public function lenses(NovaRequest $request) - { - return []; - } - /** * Get the actions available for the resource. * * @param \Laravel\Nova\Http\Requests\NovaRequest $request - * @return array + * @return array */ - public function actions(NovaRequest $request) + public function actions(NovaRequest $request): array { return [ DownloadCardTransaction::make() diff --git a/app/Nova/Resources/Order/Card/Requisite/Actions/DownloadCardRequisite.php b/app/Nova/Resources/Order/Card/Requisite/Actions/DownloadCardRequisite.php index 7d4c81c..b7648f3 100644 --- a/app/Nova/Resources/Order/Card/Requisite/Actions/DownloadCardRequisite.php +++ b/app/Nova/Resources/Order/Card/Requisite/Actions/DownloadCardRequisite.php @@ -22,7 +22,7 @@ class DownloadCardRequisite extends Action * Perform the action on the given models. * * @param \Laravel\Nova\Fields\ActionFields $fields - * @param \Illuminate\Support\Collection $models + * @param \Illuminate\Support\Collection $models * @return mixed */ public function handle(ActionFields $fields, Collection $models) @@ -49,7 +49,7 @@ class DownloadCardRequisite extends Action * Get the fields available on the action. * * @param \Laravel\Nova\Http\Requests\NovaRequest $request - * @return array + * @return array */ public function fields(NovaRequest $request) { @@ -60,6 +60,7 @@ class DownloadCardRequisite extends Action * Fetch api * * @param \App\Models\Order\Card\Requisite\CardRequisite $model + * @return object */ public function fetchApi($model) { @@ -84,6 +85,8 @@ class DownloadCardRequisite extends Action * * @param \App\Models\Order\Card\Requisite\CardRequisite $model * @param \App\Nova\Resources\Order\Card\CardTransaction\Actions\ResponseTypes\AzatApiClientInfoAllResponse $data + * + * @return string */ public function generateFile($model, $data) { diff --git a/composer.json b/composer.json index 6012eea..0d70c6a 100644 --- a/composer.json +++ b/composer.json @@ -9,7 +9,7 @@ "license": "MIT", "require": { "php": "^8.1", - "dedoc/scramble": "^0.11.11", + "dedoc/scramble": "^0.12", "denniseilander/pulse-about-application": "^0.1.1", "digital-creative/column-toggler": "^0.2.3", "digital-creative/icon-action-toolbar": "^0.1.2", diff --git a/composer.lock b/composer.lock index c18d5c1..d6bf330 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "d22b828bf01fdfbf3cafac9bd1d57ac0", + "content-hash": "fb82525a4cddcc8a43a38e7eae303afc", "packages": [ { "name": "adoy/fastcgi-client", @@ -236,16 +236,16 @@ }, { "name": "composer/ca-bundle", - "version": "1.5.6", + "version": "1.5.7", "source": { "type": "git", "url": "https://github.com/composer/ca-bundle.git", - "reference": "f65c239c970e7f072f067ab78646e9f0b2935175" + "reference": "d665d22c417056996c59019579f1967dfe5c1e82" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/ca-bundle/zipball/f65c239c970e7f072f067ab78646e9f0b2935175", - "reference": "f65c239c970e7f072f067ab78646e9f0b2935175", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/d665d22c417056996c59019579f1967dfe5c1e82", + "reference": "d665d22c417056996c59019579f1967dfe5c1e82", "shasum": "" }, "require": { @@ -292,7 +292,7 @@ "support": { "irc": "irc://irc.freenode.org/composer", "issues": "https://github.com/composer/ca-bundle/issues", - "source": "https://github.com/composer/ca-bundle/tree/1.5.6" + "source": "https://github.com/composer/ca-bundle/tree/1.5.7" }, "funding": [ { @@ -308,7 +308,7 @@ "type": "tidelift" } ], - "time": "2025-03-06T14:30:56+00:00" + "time": "2025-05-26T15:08:54+00:00" }, { "name": "composer/semver", @@ -393,20 +393,20 @@ }, { "name": "dedoc/scramble", - "version": "v0.11.33", + "version": "v0.12.20", "source": { "type": "git", "url": "https://github.com/dedoc/scramble.git", - "reference": "3c44e2ec517045590cb36b165967283fd5798edc" + "reference": "283bc6a8790ffaa5ea14d2cbdba83a42b414f7f5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dedoc/scramble/zipball/3c44e2ec517045590cb36b165967283fd5798edc", - "reference": "3c44e2ec517045590cb36b165967283fd5798edc", + "url": "https://api.github.com/repos/dedoc/scramble/zipball/283bc6a8790ffaa5ea14d2cbdba83a42b414f7f5", + "reference": "283bc6a8790ffaa5ea14d2cbdba83a42b414f7f5", "shasum": "" }, "require": { - "illuminate/contracts": "^10.0|^11.0", + "illuminate/contracts": "^10.0|^11.0|^12.0", "myclabs/deep-copy": "^1.12", "nikic/php-parser": "^5.0", "php": "^8.1", @@ -414,12 +414,16 @@ "spatie/laravel-package-tools": "^1.9.2" }, "require-dev": { + "larastan/larastan": "^3.3", "laravel/pint": "^v1.1.0", "nunomaduro/collision": "^7.0|^8.0", - "orchestra/testbench": "^8.0|^9.0", - "pestphp/pest": "^2.34", - "pestphp/pest-plugin-laravel": "^2.3", - "phpunit/phpunit": "^10.5", + "orchestra/testbench": "^8.0|^9.0|^10.0", + "pestphp/pest": "^2.34|^3.7", + "pestphp/pest-plugin-laravel": "^2.3|^3.1", + "phpstan/extension-installer": "^1.4", + "phpstan/phpstan-deprecation-rules": "^2.0", + "phpstan/phpstan-phpunit": "^2.0", + "phpunit/phpunit": "^10.5|^11.5.3", "spatie/laravel-permission": "^6.10", "spatie/pest-plugin-snapshots": "^2.1" }, @@ -457,7 +461,7 @@ ], "support": { "issues": "https://github.com/dedoc/scramble/issues", - "source": "https://github.com/dedoc/scramble/tree/v0.11.33" + "source": "https://github.com/dedoc/scramble/tree/v0.12.20" }, "funding": [ { @@ -465,7 +469,7 @@ "type": "github" } ], - "time": "2025-01-08T07:53:14+00:00" + "time": "2025-05-28T13:13:29+00:00" }, { "name": "denniseilander/pulse-about-application", @@ -931,26 +935,29 @@ }, { "name": "doctrine/deprecations", - "version": "1.1.4", + "version": "1.1.5", "source": { "type": "git", "url": "https://github.com/doctrine/deprecations.git", - "reference": "31610dbb31faa98e6b5447b62340826f54fbc4e9" + "reference": "459c2f5dd3d6a4633d3b5f46ee2b1c40f57d3f38" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/deprecations/zipball/31610dbb31faa98e6b5447b62340826f54fbc4e9", - "reference": "31610dbb31faa98e6b5447b62340826f54fbc4e9", + "url": "https://api.github.com/repos/doctrine/deprecations/zipball/459c2f5dd3d6a4633d3b5f46ee2b1c40f57d3f38", + "reference": "459c2f5dd3d6a4633d3b5f46ee2b1c40f57d3f38", "shasum": "" }, "require": { "php": "^7.1 || ^8.0" }, + "conflict": { + "phpunit/phpunit": "<=7.5 || >=13" + }, "require-dev": { - "doctrine/coding-standard": "^9 || ^12", - "phpstan/phpstan": "1.4.10 || 2.0.3", + "doctrine/coding-standard": "^9 || ^12 || ^13", + "phpstan/phpstan": "1.4.10 || 2.1.11", "phpstan/phpstan-phpunit": "^1.0 || ^2", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.6 || ^10.5 || ^11.5 || ^12", "psr/log": "^1 || ^2 || ^3" }, "suggest": { @@ -970,9 +977,9 @@ "homepage": "https://www.doctrine-project.org/", "support": { "issues": "https://github.com/doctrine/deprecations/issues", - "source": "https://github.com/doctrine/deprecations/tree/1.1.4" + "source": "https://github.com/doctrine/deprecations/tree/1.1.5" }, - "time": "2024-12-07T21:18:45+00:00" + "time": "2025-04-07T20:06:18+00:00" }, { "name": "doctrine/event-manager", @@ -1860,16 +1867,16 @@ }, { "name": "guzzlehttp/guzzle", - "version": "7.9.2", + "version": "7.9.3", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "d281ed313b989f213357e3be1a179f02196ac99b" + "reference": "7b2f29fe81dc4da0ca0ea7d42107a0845946ea77" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/d281ed313b989f213357e3be1a179f02196ac99b", - "reference": "d281ed313b989f213357e3be1a179f02196ac99b", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/7b2f29fe81dc4da0ca0ea7d42107a0845946ea77", + "reference": "7b2f29fe81dc4da0ca0ea7d42107a0845946ea77", "shasum": "" }, "require": { @@ -1966,7 +1973,7 @@ ], "support": { "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.9.2" + "source": "https://github.com/guzzle/guzzle/tree/7.9.3" }, "funding": [ { @@ -1982,20 +1989,20 @@ "type": "tidelift" } ], - "time": "2024-07-24T11:22:20+00:00" + "time": "2025-03-27T13:37:11+00:00" }, { "name": "guzzlehttp/promises", - "version": "2.0.4", + "version": "2.2.0", "source": { "type": "git", "url": "https://github.com/guzzle/promises.git", - "reference": "f9c436286ab2892c7db7be8c8da4ef61ccf7b455" + "reference": "7c69f28996b0a6920945dd20b3857e499d9ca96c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/f9c436286ab2892c7db7be8c8da4ef61ccf7b455", - "reference": "f9c436286ab2892c7db7be8c8da4ef61ccf7b455", + "url": "https://api.github.com/repos/guzzle/promises/zipball/7c69f28996b0a6920945dd20b3857e499d9ca96c", + "reference": "7c69f28996b0a6920945dd20b3857e499d9ca96c", "shasum": "" }, "require": { @@ -2049,7 +2056,7 @@ ], "support": { "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/2.0.4" + "source": "https://github.com/guzzle/promises/tree/2.2.0" }, "funding": [ { @@ -2065,20 +2072,20 @@ "type": "tidelift" } ], - "time": "2024-10-17T10:06:22+00:00" + "time": "2025-03-27T13:27:01+00:00" }, { "name": "guzzlehttp/psr7", - "version": "2.7.0", + "version": "2.7.1", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201" + "reference": "c2270caaabe631b3b44c85f99e5a04bbb8060d16" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/a70f5c95fb43bc83f07c9c948baa0dc1829bf201", - "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/c2270caaabe631b3b44c85f99e5a04bbb8060d16", + "reference": "c2270caaabe631b3b44c85f99e5a04bbb8060d16", "shasum": "" }, "require": { @@ -2165,7 +2172,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.7.0" + "source": "https://github.com/guzzle/psr7/tree/2.7.1" }, "funding": [ { @@ -2181,7 +2188,7 @@ "type": "tidelift" } ], - "time": "2024-07-18T11:15:46+00:00" + "time": "2025-03-27T12:30:47+00:00" }, { "name": "guzzlehttp/uri-template", @@ -2742,16 +2749,16 @@ }, { "name": "laravel/pint", - "version": "v1.21.2", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/laravel/pint.git", - "reference": "370772e7d9e9da087678a0edf2b11b6960e40558" + "reference": "941d1927c5ca420c22710e98420287169c7bcaf7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/pint/zipball/370772e7d9e9da087678a0edf2b11b6960e40558", - "reference": "370772e7d9e9da087678a0edf2b11b6960e40558", + "url": "https://api.github.com/repos/laravel/pint/zipball/941d1927c5ca420c22710e98420287169c7bcaf7", + "reference": "941d1927c5ca420c22710e98420287169c7bcaf7", "shasum": "" }, "require": { @@ -2762,12 +2769,12 @@ "php": "^8.2.0" }, "require-dev": { - "friendsofphp/php-cs-fixer": "^3.72.0", - "illuminate/view": "^11.44.2", - "larastan/larastan": "^3.2.0", + "friendsofphp/php-cs-fixer": "^3.75.0", + "illuminate/view": "^11.44.7", + "larastan/larastan": "^3.4.0", "laravel-zero/framework": "^11.36.1", "mockery/mockery": "^1.6.12", - "nunomaduro/termwind": "^2.3", + "nunomaduro/termwind": "^2.3.1", "pestphp/pest": "^2.36.0" }, "bin": [ @@ -2804,7 +2811,7 @@ "issues": "https://github.com/laravel/pint/issues", "source": "https://github.com/laravel/pint" }, - "time": "2025-03-14T22:31:42+00:00" + "time": "2025-05-08T08:38:12+00:00" }, { "name": "laravel/prompts", @@ -2866,16 +2873,16 @@ }, { "name": "laravel/pulse", - "version": "v1.4.0", + "version": "v1.4.2", "source": { "type": "git", "url": "https://github.com/laravel/pulse.git", - "reference": "62099ede70df2272544f0c0657eda0c73d25a6b2" + "reference": "73c349777e09893a68d747bb6ae87e54eb5e5aec" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/pulse/zipball/62099ede70df2272544f0c0657eda0c73d25a6b2", - "reference": "62099ede70df2272544f0c0657eda0c73d25a6b2", + "url": "https://api.github.com/repos/laravel/pulse/zipball/73c349777e09893a68d747bb6ae87e54eb5e5aec", + "reference": "73c349777e09893a68d747bb6ae87e54eb5e5aec", "shasum": "" }, "require": { @@ -2908,7 +2915,7 @@ "orchestra/testbench": "^8.23.1|^9.0|^10.0", "pestphp/pest": "^2.0", "pestphp/pest-plugin-laravel": "^2.2", - "phpstan/phpstan": "^1.11", + "phpstan/phpstan": "^1.12.21", "predis/predis": "^1.0|^2.0" }, "type": "library", @@ -2949,7 +2956,7 @@ "issues": "https://github.com/laravel/pulse/issues", "source": "https://github.com/laravel/pulse" }, - "time": "2025-02-11T13:36:44+00:00" + "time": "2025-05-19T13:12:28+00:00" }, { "name": "laravel/sanctum", @@ -3209,16 +3216,16 @@ }, { "name": "league/commonmark", - "version": "2.6.1", + "version": "2.7.0", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "d990688c91cedfb69753ffc2512727ec646df2ad" + "reference": "6fbb36d44824ed4091adbcf4c7d4a3923cdb3405" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/d990688c91cedfb69753ffc2512727ec646df2ad", - "reference": "d990688c91cedfb69753ffc2512727ec646df2ad", + "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/6fbb36d44824ed4091adbcf4c7d4a3923cdb3405", + "reference": "6fbb36d44824ed4091adbcf4c7d4a3923cdb3405", "shasum": "" }, "require": { @@ -3255,7 +3262,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.7-dev" + "dev-main": "2.8-dev" } }, "autoload": { @@ -3312,7 +3319,7 @@ "type": "tidelift" } ], - "time": "2024-12-29T14:10:59+00:00" + "time": "2025-05-05T12:20:28+00:00" }, { "name": "league/config", @@ -3586,16 +3593,16 @@ }, { "name": "livewire/livewire", - "version": "v3.6.2", + "version": "v3.6.3", "source": { "type": "git", "url": "https://github.com/livewire/livewire.git", - "reference": "8f8914731f5eb43b6bb145d87c8d5a9edfc89313" + "reference": "56aa1bb63a46e06181c56fa64717a7287e19115e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/livewire/livewire/zipball/8f8914731f5eb43b6bb145d87c8d5a9edfc89313", - "reference": "8f8914731f5eb43b6bb145d87c8d5a9edfc89313", + "url": "https://api.github.com/repos/livewire/livewire/zipball/56aa1bb63a46e06181c56fa64717a7287e19115e", + "reference": "56aa1bb63a46e06181c56fa64717a7287e19115e", "shasum": "" }, "require": { @@ -3650,7 +3657,7 @@ "description": "A front-end framework for Laravel.", "support": { "issues": "https://github.com/livewire/livewire/issues", - "source": "https://github.com/livewire/livewire/tree/v3.6.2" + "source": "https://github.com/livewire/livewire/tree/v3.6.3" }, "funding": [ { @@ -3658,7 +3665,7 @@ "type": "github" } ], - "time": "2025-03-12T20:24:15+00:00" + "time": "2025-04-12T22:26:52+00:00" }, { "name": "maantje/pulse-php-fpm", @@ -3844,16 +3851,16 @@ }, { "name": "maxmind-db/reader", - "version": "v1.12.0", + "version": "v1.12.1", "source": { "type": "git", "url": "https://github.com/maxmind/MaxMind-DB-Reader-php.git", - "reference": "5b2d7a721dedfaef9dc20822c5fe7d26f9f8eb90" + "reference": "815939e006b7e68062b540ec9e86aaa8be2b6ce4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/maxmind/MaxMind-DB-Reader-php/zipball/5b2d7a721dedfaef9dc20822c5fe7d26f9f8eb90", - "reference": "5b2d7a721dedfaef9dc20822c5fe7d26f9f8eb90", + "url": "https://api.github.com/repos/maxmind/MaxMind-DB-Reader-php/zipball/815939e006b7e68062b540ec9e86aaa8be2b6ce4", + "reference": "815939e006b7e68062b540ec9e86aaa8be2b6ce4", "shasum": "" }, "require": { @@ -3901,9 +3908,9 @@ ], "support": { "issues": "https://github.com/maxmind/MaxMind-DB-Reader-php/issues", - "source": "https://github.com/maxmind/MaxMind-DB-Reader-php/tree/v1.12.0" + "source": "https://github.com/maxmind/MaxMind-DB-Reader-php/tree/v1.12.1" }, - "time": "2024-11-14T22:43:47+00:00" + "time": "2025-05-05T20:56:32+00:00" }, { "name": "maxmind/web-service-common", @@ -3958,16 +3965,16 @@ }, { "name": "monolog/monolog", - "version": "3.8.1", + "version": "3.9.0", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "aef6ee73a77a66e404dd6540934a9ef1b3c855b4" + "reference": "10d85740180ecba7896c87e06a166e0c95a0e3b6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/aef6ee73a77a66e404dd6540934a9ef1b3c855b4", - "reference": "aef6ee73a77a66e404dd6540934a9ef1b3c855b4", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/10d85740180ecba7896c87e06a166e0c95a0e3b6", + "reference": "10d85740180ecba7896c87e06a166e0c95a0e3b6", "shasum": "" }, "require": { @@ -4045,7 +4052,7 @@ ], "support": { "issues": "https://github.com/Seldaek/monolog/issues", - "source": "https://github.com/Seldaek/monolog/tree/3.8.1" + "source": "https://github.com/Seldaek/monolog/tree/3.9.0" }, "funding": [ { @@ -4057,7 +4064,7 @@ "type": "tidelift" } ], - "time": "2024-12-05T17:15:07+00:00" + "time": "2025-03-24T10:02:05+00:00" }, { "name": "morrislaptop/laravel-pulse-4xx", @@ -4308,16 +4315,16 @@ }, { "name": "myclabs/deep-copy", - "version": "1.13.0", + "version": "1.13.1", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "024473a478be9df5fdaca2c793f2232fe788e414" + "reference": "1720ddd719e16cf0db4eb1c6eca108031636d46c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/024473a478be9df5fdaca2c793f2232fe788e414", - "reference": "024473a478be9df5fdaca2c793f2232fe788e414", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/1720ddd719e16cf0db4eb1c6eca108031636d46c", + "reference": "1720ddd719e16cf0db4eb1c6eca108031636d46c", "shasum": "" }, "require": { @@ -4356,7 +4363,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.13.0" + "source": "https://github.com/myclabs/DeepCopy/tree/1.13.1" }, "funding": [ { @@ -4364,7 +4371,7 @@ "type": "tidelift" } ], - "time": "2025-02-12T12:17:51+00:00" + "time": "2025-04-29T12:36:36+00:00" }, { "name": "nesbot/carbon", @@ -4537,16 +4544,16 @@ }, { "name": "nette/utils", - "version": "v4.0.5", + "version": "v4.0.6", "source": { "type": "git", "url": "https://github.com/nette/utils.git", - "reference": "736c567e257dbe0fcf6ce81b4d6dbe05c6899f96" + "reference": "ce708655043c7050eb050df361c5e313cf708309" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nette/utils/zipball/736c567e257dbe0fcf6ce81b4d6dbe05c6899f96", - "reference": "736c567e257dbe0fcf6ce81b4d6dbe05c6899f96", + "url": "https://api.github.com/repos/nette/utils/zipball/ce708655043c7050eb050df361c5e313cf708309", + "reference": "ce708655043c7050eb050df361c5e313cf708309", "shasum": "" }, "require": { @@ -4617,9 +4624,9 @@ ], "support": { "issues": "https://github.com/nette/utils/issues", - "source": "https://github.com/nette/utils/tree/v4.0.5" + "source": "https://github.com/nette/utils/tree/v4.0.6" }, - "time": "2024-08-07T15:39:19+00:00" + "time": "2025-03-30T21:06:30+00:00" }, { "name": "nikic/php-parser", @@ -4903,16 +4910,16 @@ }, { "name": "openspout/openspout", - "version": "v4.29.1", + "version": "v4.30.0", "source": { "type": "git", "url": "https://github.com/openspout/openspout.git", - "reference": "ec83106bc3922fe94c9d37976ba6b7259511c4c5" + "reference": "df9b0f4d229c37c3caa5a9252a6ad8a94efb0fb5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/openspout/openspout/zipball/ec83106bc3922fe94c9d37976ba6b7259511c4c5", - "reference": "ec83106bc3922fe94c9d37976ba6b7259511c4c5", + "url": "https://api.github.com/repos/openspout/openspout/zipball/df9b0f4d229c37c3caa5a9252a6ad8a94efb0fb5", + "reference": "df9b0f4d229c37c3caa5a9252a6ad8a94efb0fb5", "shasum": "" }, "require": { @@ -4926,13 +4933,13 @@ }, "require-dev": { "ext-zlib": "*", - "friendsofphp/php-cs-fixer": "^3.71.0", + "friendsofphp/php-cs-fixer": "^3.75.0", "infection/infection": "^0.29.14", - "phpbench/phpbench": "^1.4.0", - "phpstan/phpstan": "^2.1.8", - "phpstan/phpstan-phpunit": "^2.0.4", - "phpstan/phpstan-strict-rules": "^2.0.3", - "phpunit/phpunit": "^12.0.7" + "phpbench/phpbench": "^1.4.1", + "phpstan/phpstan": "^2.1.16", + "phpstan/phpstan-phpunit": "^2.0.6", + "phpstan/phpstan-strict-rules": "^2.0.4", + "phpunit/phpunit": "^12.1.5" }, "suggest": { "ext-iconv": "To handle non UTF-8 CSV files (if \"php-mbstring\" is not already installed or is too limited)", @@ -4980,7 +4987,7 @@ ], "support": { "issues": "https://github.com/openspout/openspout/issues", - "source": "https://github.com/openspout/openspout/tree/v4.29.1" + "source": "https://github.com/openspout/openspout/tree/v4.30.0" }, "funding": [ { @@ -4992,7 +4999,7 @@ "type": "github" } ], - "time": "2025-03-11T14:40:46+00:00" + "time": "2025-05-20T12:33:06+00:00" }, { "name": "outl1ne/nova-detached-filters", @@ -6576,16 +6583,16 @@ }, { "name": "spatie/image", - "version": "3.8.0", + "version": "3.8.3", "source": { "type": "git", "url": "https://github.com/spatie/image.git", - "reference": "06cf293f66c833704935ba18e16c784d7e8433a7" + "reference": "54a7331a4d1ba7712603dd058522613506d2dfe0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/image/zipball/06cf293f66c833704935ba18e16c784d7e8433a7", - "reference": "06cf293f66c833704935ba18e16c784d7e8433a7", + "url": "https://api.github.com/repos/spatie/image/zipball/54a7331a4d1ba7712603dd058522613506d2dfe0", + "reference": "54a7331a4d1ba7712603dd058522613506d2dfe0", "shasum": "" }, "require": { @@ -6633,7 +6640,7 @@ "spatie" ], "support": { - "source": "https://github.com/spatie/image/tree/3.8.0" + "source": "https://github.com/spatie/image/tree/3.8.3" }, "funding": [ { @@ -6645,7 +6652,7 @@ "type": "github" } ], - "time": "2025-01-17T10:19:44+00:00" + "time": "2025-04-25T08:04:51+00:00" }, { "name": "spatie/image-optimizer", @@ -6803,16 +6810,16 @@ }, { "name": "spatie/laravel-medialibrary", - "version": "11.12.8", + "version": "11.13.0", "source": { "type": "git", "url": "https://github.com/spatie/laravel-medialibrary.git", - "reference": "98d6d26e56d9ea01f757a4307ef03cb4ae563e0d" + "reference": "e2324b2f138ec41181089a7dcf28489be93ede53" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-medialibrary/zipball/98d6d26e56d9ea01f757a4307ef03cb4ae563e0d", - "reference": "98d6d26e56d9ea01f757a4307ef03cb4ae563e0d", + "url": "https://api.github.com/repos/spatie/laravel-medialibrary/zipball/e2324b2f138ec41181089a7dcf28489be93ede53", + "reference": "e2324b2f138ec41181089a7dcf28489be93ede53", "shasum": "" }, "require": { @@ -6896,7 +6903,7 @@ ], "support": { "issues": "https://github.com/spatie/laravel-medialibrary/issues", - "source": "https://github.com/spatie/laravel-medialibrary/tree/11.12.8" + "source": "https://github.com/spatie/laravel-medialibrary/tree/11.13.0" }, "funding": [ { @@ -6908,20 +6915,20 @@ "type": "github" } ], - "time": "2025-03-21T09:15:22+00:00" + "time": "2025-05-22T12:25:27+00:00" }, { "name": "spatie/laravel-package-tools", - "version": "1.91.1", + "version": "1.92.4", "source": { "type": "git", "url": "https://github.com/spatie/laravel-package-tools.git", - "reference": "b0b509b9b01d77caa431ce9af3a706bc678e09c9" + "reference": "d20b1969f836d210459b78683d85c9cd5c5f508c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-package-tools/zipball/b0b509b9b01d77caa431ce9af3a706bc678e09c9", - "reference": "b0b509b9b01d77caa431ce9af3a706bc678e09c9", + "url": "https://api.github.com/repos/spatie/laravel-package-tools/zipball/d20b1969f836d210459b78683d85c9cd5c5f508c", + "reference": "d20b1969f836d210459b78683d85c9cd5c5f508c", "shasum": "" }, "require": { @@ -6932,6 +6939,7 @@ "mockery/mockery": "^1.5", "orchestra/testbench": "^7.7|^8.0|^9.0|^10.0", "pestphp/pest": "^1.23|^2.1|^3.1", + "phpunit/php-code-coverage": "^9.0|^10.0|^11.0", "phpunit/phpunit": "^9.5.24|^10.5|^11.5", "spatie/pest-plugin-test-time": "^1.1|^2.2" }, @@ -6960,7 +6968,7 @@ ], "support": { "issues": "https://github.com/spatie/laravel-package-tools/issues", - "source": "https://github.com/spatie/laravel-package-tools/tree/1.91.1" + "source": "https://github.com/spatie/laravel-package-tools/tree/1.92.4" }, "funding": [ { @@ -6968,20 +6976,20 @@ "type": "github" } ], - "time": "2025-03-21T09:50:49+00:00" + "time": "2025-04-11T15:27:14+00:00" }, { "name": "spatie/laravel-permission", - "version": "6.16.0", + "version": "6.18.0", "source": { "type": "git", "url": "https://github.com/spatie/laravel-permission.git", - "reference": "4fa03c06509e037a4d42c131d0f181e3e4bbd483" + "reference": "3c05f04d12275dfbe462c8b4aae3290e586c2dde" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-permission/zipball/4fa03c06509e037a4d42c131d0f181e3e4bbd483", - "reference": "4fa03c06509e037a4d42c131d0f181e3e4bbd483", + "url": "https://api.github.com/repos/spatie/laravel-permission/zipball/3c05f04d12275dfbe462c8b4aae3290e586c2dde", + "reference": "3c05f04d12275dfbe462c8b4aae3290e586c2dde", "shasum": "" }, "require": { @@ -7043,7 +7051,7 @@ ], "support": { "issues": "https://github.com/spatie/laravel-permission/issues", - "source": "https://github.com/spatie/laravel-permission/tree/6.16.0" + "source": "https://github.com/spatie/laravel-permission/tree/6.18.0" }, "funding": [ { @@ -7051,7 +7059,7 @@ "type": "github" } ], - "time": "2025-02-28T20:29:57+00:00" + "time": "2025-05-14T03:32:23+00:00" }, { "name": "spatie/laravel-signal-aware-command", @@ -7705,16 +7713,16 @@ }, { "name": "symfony/console", - "version": "v6.4.17", + "version": "v6.4.22", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "799445db3f15768ecc382ac5699e6da0520a0a04" + "reference": "7d29659bc3c9d8e9a34e2c3414ef9e9e003e6cf3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/799445db3f15768ecc382ac5699e6da0520a0a04", - "reference": "799445db3f15768ecc382ac5699e6da0520a0a04", + "url": "https://api.github.com/repos/symfony/console/zipball/7d29659bc3c9d8e9a34e2c3414ef9e9e003e6cf3", + "reference": "7d29659bc3c9d8e9a34e2c3414ef9e9e003e6cf3", "shasum": "" }, "require": { @@ -7779,7 +7787,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v6.4.17" + "source": "https://github.com/symfony/console/tree/v6.4.22" }, "funding": [ { @@ -7795,11 +7803,11 @@ "type": "tidelift" } ], - "time": "2024-12-07T12:07:30+00:00" + "time": "2025-05-07T07:05:04+00:00" }, { "name": "symfony/css-selector", - "version": "v7.2.0", + "version": "v7.3.0", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", @@ -7844,7 +7852,7 @@ "description": "Converts CSS selectors to XPath expressions", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/css-selector/tree/v7.2.0" + "source": "https://github.com/symfony/css-selector/tree/v7.3.0" }, "funding": [ { @@ -7864,16 +7872,16 @@ }, { "name": "symfony/deprecation-contracts", - "version": "v3.5.1", + "version": "v3.6.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6" + "reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6", - "reference": "74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/63afe740e99a13ba87ec199bb07bbdee937a5b62", + "reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62", "shasum": "" }, "require": { @@ -7886,7 +7894,7 @@ "name": "symfony/contracts" }, "branch-alias": { - "dev-main": "3.5-dev" + "dev-main": "3.6-dev" } }, "autoload": { @@ -7911,7 +7919,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.5.1" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.6.0" }, "funding": [ { @@ -7927,20 +7935,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-09-25T14:21:43+00:00" }, { "name": "symfony/error-handler", - "version": "v6.4.19", + "version": "v6.4.22", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "3d4e55cd2b8f1979a65eba9ab749d6466c316f71" + "reference": "ce765a2d28b3cce61de1fb916e207767a73171d1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/3d4e55cd2b8f1979a65eba9ab749d6466c316f71", - "reference": "3d4e55cd2b8f1979a65eba9ab749d6466c316f71", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/ce765a2d28b3cce61de1fb916e207767a73171d1", + "reference": "ce765a2d28b3cce61de1fb916e207767a73171d1", "shasum": "" }, "require": { @@ -7986,7 +7994,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v6.4.19" + "source": "https://github.com/symfony/error-handler/tree/v6.4.22" }, "funding": [ { @@ -8002,20 +8010,20 @@ "type": "tidelift" } ], - "time": "2025-02-02T20:16:33+00:00" + "time": "2025-05-28T12:00:15+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v7.2.0", + "version": "v7.3.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "910c5db85a5356d0fea57680defec4e99eb9c8c1" + "reference": "497f73ac996a598c92409b44ac43b6690c4f666d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/910c5db85a5356d0fea57680defec4e99eb9c8c1", - "reference": "910c5db85a5356d0fea57680defec4e99eb9c8c1", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/497f73ac996a598c92409b44ac43b6690c4f666d", + "reference": "497f73ac996a598c92409b44ac43b6690c4f666d", "shasum": "" }, "require": { @@ -8066,7 +8074,7 @@ "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v7.2.0" + "source": "https://github.com/symfony/event-dispatcher/tree/v7.3.0" }, "funding": [ { @@ -8082,20 +8090,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:21:43+00:00" + "time": "2025-04-22T09:11:45+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v3.5.1", + "version": "v3.6.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "7642f5e970b672283b7823222ae8ef8bbc160b9f" + "reference": "59eb412e93815df44f05f342958efa9f46b1e586" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/7642f5e970b672283b7823222ae8ef8bbc160b9f", - "reference": "7642f5e970b672283b7823222ae8ef8bbc160b9f", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/59eb412e93815df44f05f342958efa9f46b1e586", + "reference": "59eb412e93815df44f05f342958efa9f46b1e586", "shasum": "" }, "require": { @@ -8109,7 +8117,7 @@ "name": "symfony/contracts" }, "branch-alias": { - "dev-main": "3.5-dev" + "dev-main": "3.6-dev" } }, "autoload": { @@ -8142,7 +8150,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.5.1" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.6.0" }, "funding": [ { @@ -8158,11 +8166,11 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-09-25T14:21:43+00:00" }, { "name": "symfony/filesystem", - "version": "v7.2.0", + "version": "v7.3.0", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", @@ -8208,7 +8216,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v7.2.0" + "source": "https://github.com/symfony/filesystem/tree/v7.3.0" }, "funding": [ { @@ -8292,16 +8300,16 @@ }, { "name": "symfony/http-foundation", - "version": "v6.4.18", + "version": "v6.4.22", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "d0492d6217e5ab48f51fca76f64cf8e78919d0db" + "reference": "6b7c97fe1ddac8df3cc9ba6410c8abc683e148ae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/d0492d6217e5ab48f51fca76f64cf8e78919d0db", - "reference": "d0492d6217e5ab48f51fca76f64cf8e78919d0db", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/6b7c97fe1ddac8df3cc9ba6410c8abc683e148ae", + "reference": "6b7c97fe1ddac8df3cc9ba6410c8abc683e148ae", "shasum": "" }, "require": { @@ -8349,7 +8357,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v6.4.18" + "source": "https://github.com/symfony/http-foundation/tree/v6.4.22" }, "funding": [ { @@ -8365,20 +8373,20 @@ "type": "tidelift" } ], - "time": "2025-01-09T15:48:56+00:00" + "time": "2025-05-11T15:36:20+00:00" }, { "name": "symfony/http-kernel", - "version": "v6.4.19", + "version": "v6.4.22", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "88f2c9f7feff86bb7b9105c5151bc2c1404cd64c" + "reference": "15c105b839a7cfa1bc0989c091bfb6477f23b673" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/88f2c9f7feff86bb7b9105c5151bc2c1404cd64c", - "reference": "88f2c9f7feff86bb7b9105c5151bc2c1404cd64c", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/15c105b839a7cfa1bc0989c091bfb6477f23b673", + "reference": "15c105b839a7cfa1bc0989c091bfb6477f23b673", "shasum": "" }, "require": { @@ -8463,7 +8471,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v6.4.19" + "source": "https://github.com/symfony/http-kernel/tree/v6.4.22" }, "funding": [ { @@ -8479,20 +8487,20 @@ "type": "tidelift" } ], - "time": "2025-02-26T10:51:37+00:00" + "time": "2025-05-29T07:23:40+00:00" }, { "name": "symfony/mailer", - "version": "v6.4.18", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/mailer.git", - "reference": "e93a6ae2767d7f7578c2b7961d9d8e27580b2b11" + "reference": "ada2809ccd4ec27aba9fc344e3efdaec624c6438" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mailer/zipball/e93a6ae2767d7f7578c2b7961d9d8e27580b2b11", - "reference": "e93a6ae2767d7f7578c2b7961d9d8e27580b2b11", + "url": "https://api.github.com/repos/symfony/mailer/zipball/ada2809ccd4ec27aba9fc344e3efdaec624c6438", + "reference": "ada2809ccd4ec27aba9fc344e3efdaec624c6438", "shasum": "" }, "require": { @@ -8543,7 +8551,7 @@ "description": "Helps sending emails", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/mailer/tree/v6.4.18" + "source": "https://github.com/symfony/mailer/tree/v6.4.21" }, "funding": [ { @@ -8559,20 +8567,20 @@ "type": "tidelift" } ], - "time": "2025-01-24T15:27:15+00:00" + "time": "2025-04-26T23:47:35+00:00" }, { "name": "symfony/mime", - "version": "v6.4.19", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "ac537b6c55ccc2c749f3c979edfa9ec14aaed4f3" + "reference": "fec8aa5231f3904754955fad33c2db50594d22d1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/ac537b6c55ccc2c749f3c979edfa9ec14aaed4f3", - "reference": "ac537b6c55ccc2c749f3c979edfa9ec14aaed4f3", + "url": "https://api.github.com/repos/symfony/mime/zipball/fec8aa5231f3904754955fad33c2db50594d22d1", + "reference": "fec8aa5231f3904754955fad33c2db50594d22d1", "shasum": "" }, "require": { @@ -8628,7 +8636,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v6.4.19" + "source": "https://github.com/symfony/mime/tree/v6.4.21" }, "funding": [ { @@ -8644,11 +8652,11 @@ "type": "tidelift" } ], - "time": "2025-02-17T21:23:52+00:00" + "time": "2025-04-27T13:27:38+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", @@ -8707,7 +8715,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.32.0" }, "funding": [ { @@ -8727,7 +8735,7 @@ }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", @@ -8785,7 +8793,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.32.0" }, "funding": [ { @@ -8805,16 +8813,16 @@ }, { "name": "symfony/polyfill-intl-icu", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-icu.git", - "reference": "d80a05e9904d2c2b9b95929f3e4b5d3a8f418d78" + "reference": "763d2a91fea5681509ca01acbc1c5e450d127811" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/d80a05e9904d2c2b9b95929f3e4b5d3a8f418d78", - "reference": "d80a05e9904d2c2b9b95929f3e4b5d3a8f418d78", + "url": "https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/763d2a91fea5681509ca01acbc1c5e450d127811", + "reference": "763d2a91fea5681509ca01acbc1c5e450d127811", "shasum": "" }, "require": { @@ -8869,7 +8877,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-icu/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-intl-icu/tree/v1.32.0" }, "funding": [ { @@ -8885,20 +8893,20 @@ "type": "tidelift" } ], - "time": "2024-09-09T11:45:10+00:00" + "time": "2024-12-21T18:38:29+00:00" }, { "name": "symfony/polyfill-intl-idn", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-idn.git", - "reference": "c36586dcf89a12315939e00ec9b4474adcb1d773" + "reference": "9614ac4d8061dc257ecc64cba1b140873dce8ad3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/c36586dcf89a12315939e00ec9b4474adcb1d773", - "reference": "c36586dcf89a12315939e00ec9b4474adcb1d773", + "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/9614ac4d8061dc257ecc64cba1b140873dce8ad3", + "reference": "9614ac4d8061dc257ecc64cba1b140873dce8ad3", "shasum": "" }, "require": { @@ -8952,7 +8960,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.32.0" }, "funding": [ { @@ -8968,11 +8976,11 @@ "type": "tidelift" } ], - "time": "2024-09-09T11:45:10+00:00" + "time": "2024-09-10T14:38:51+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", @@ -9033,7 +9041,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.32.0" }, "funding": [ { @@ -9053,19 +9061,20 @@ }, { "name": "symfony/polyfill-mbstring", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341" + "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/85181ba99b2345b0ef10ce42ecac37612d9fd341", - "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/6d857f4d76bd4b343eac26d6b539585d2bc56493", + "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493", "shasum": "" }, "require": { + "ext-iconv": "*", "php": ">=7.2" }, "provide": { @@ -9113,7 +9122,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.32.0" }, "funding": [ { @@ -9129,20 +9138,20 @@ "type": "tidelift" } ], - "time": "2024-09-09T11:45:10+00:00" + "time": "2024-12-23T08:48:59+00:00" }, { "name": "symfony/polyfill-php80", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8" + "reference": "0cc9dd0f17f61d8131e7df6b84bd344899fe2608" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", - "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/0cc9dd0f17f61d8131e7df6b84bd344899fe2608", + "reference": "0cc9dd0f17f61d8131e7df6b84bd344899fe2608", "shasum": "" }, "require": { @@ -9193,7 +9202,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.32.0" }, "funding": [ { @@ -9209,11 +9218,11 @@ "type": "tidelift" } ], - "time": "2024-09-09T11:45:10+00:00" + "time": "2025-01-02T08:10:11+00:00" }, { "name": "symfony/polyfill-php83", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php83.git", @@ -9269,7 +9278,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php83/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-php83/tree/v1.32.0" }, "funding": [ { @@ -9289,7 +9298,7 @@ }, { "name": "symfony/polyfill-uuid", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-uuid.git", @@ -9348,7 +9357,7 @@ "uuid" ], "support": { - "source": "https://github.com/symfony/polyfill-uuid/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-uuid/tree/v1.32.0" }, "funding": [ { @@ -9368,16 +9377,16 @@ }, { "name": "symfony/process", - "version": "v6.4.19", + "version": "v6.4.20", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "7a1c12e87b08ec9c97abdd188c9b3f5a40e37fc3" + "reference": "e2a61c16af36c9a07e5c9906498b73e091949a20" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/7a1c12e87b08ec9c97abdd188c9b3f5a40e37fc3", - "reference": "7a1c12e87b08ec9c97abdd188c9b3f5a40e37fc3", + "url": "https://api.github.com/repos/symfony/process/zipball/e2a61c16af36c9a07e5c9906498b73e091949a20", + "reference": "e2a61c16af36c9a07e5c9906498b73e091949a20", "shasum": "" }, "require": { @@ -9409,7 +9418,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v6.4.19" + "source": "https://github.com/symfony/process/tree/v6.4.20" }, "funding": [ { @@ -9425,20 +9434,20 @@ "type": "tidelift" } ], - "time": "2025-02-04T13:35:48+00:00" + "time": "2025-03-10T17:11:00+00:00" }, { "name": "symfony/routing", - "version": "v6.4.18", + "version": "v6.4.22", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "e9bfc94953019089acdfb9be51c1b9142c4afa68" + "reference": "1f5234e8457164a3a0038a4c0a4ba27876a9c670" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/e9bfc94953019089acdfb9be51c1b9142c4afa68", - "reference": "e9bfc94953019089acdfb9be51c1b9142c4afa68", + "url": "https://api.github.com/repos/symfony/routing/zipball/1f5234e8457164a3a0038a4c0a4ba27876a9c670", + "reference": "1f5234e8457164a3a0038a4c0a4ba27876a9c670", "shasum": "" }, "require": { @@ -9492,7 +9501,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v6.4.18" + "source": "https://github.com/symfony/routing/tree/v6.4.22" }, "funding": [ { @@ -9508,20 +9517,20 @@ "type": "tidelift" } ], - "time": "2025-01-09T08:51:02+00:00" + "time": "2025-04-27T16:08:38+00:00" }, { "name": "symfony/service-contracts", - "version": "v3.5.1", + "version": "v3.6.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "e53260aabf78fb3d63f8d79d69ece59f80d5eda0" + "reference": "f021b05a130d35510bd6b25fe9053c2a8a15d5d4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/e53260aabf78fb3d63f8d79d69ece59f80d5eda0", - "reference": "e53260aabf78fb3d63f8d79d69ece59f80d5eda0", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/f021b05a130d35510bd6b25fe9053c2a8a15d5d4", + "reference": "f021b05a130d35510bd6b25fe9053c2a8a15d5d4", "shasum": "" }, "require": { @@ -9539,7 +9548,7 @@ "name": "symfony/contracts" }, "branch-alias": { - "dev-main": "3.5-dev" + "dev-main": "3.6-dev" } }, "autoload": { @@ -9575,7 +9584,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.5.1" + "source": "https://github.com/symfony/service-contracts/tree/v3.6.0" }, "funding": [ { @@ -9591,20 +9600,20 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2025-04-25T09:37:31+00:00" }, { "name": "symfony/string", - "version": "v7.2.0", + "version": "v7.3.0", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "446e0d146f991dde3e73f45f2c97a9faad773c82" + "reference": "f3570b8c61ca887a9e2938e85cb6458515d2b125" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/446e0d146f991dde3e73f45f2c97a9faad773c82", - "reference": "446e0d146f991dde3e73f45f2c97a9faad773c82", + "url": "https://api.github.com/repos/symfony/string/zipball/f3570b8c61ca887a9e2938e85cb6458515d2b125", + "reference": "f3570b8c61ca887a9e2938e85cb6458515d2b125", "shasum": "" }, "require": { @@ -9662,7 +9671,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v7.2.0" + "source": "https://github.com/symfony/string/tree/v7.3.0" }, "funding": [ { @@ -9678,20 +9687,20 @@ "type": "tidelift" } ], - "time": "2024-11-13T13:31:26+00:00" + "time": "2025-04-20T20:19:01+00:00" }, { "name": "symfony/translation", - "version": "v6.4.19", + "version": "v6.4.22", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "3b9bf9f33997c064885a7bfc126c14b9daa0e00e" + "reference": "7e3b3b7146c6fab36ddff304a8041174bf6e17ad" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/3b9bf9f33997c064885a7bfc126c14b9daa0e00e", - "reference": "3b9bf9f33997c064885a7bfc126c14b9daa0e00e", + "url": "https://api.github.com/repos/symfony/translation/zipball/7e3b3b7146c6fab36ddff304a8041174bf6e17ad", + "reference": "7e3b3b7146c6fab36ddff304a8041174bf6e17ad", "shasum": "" }, "require": { @@ -9757,7 +9766,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v6.4.19" + "source": "https://github.com/symfony/translation/tree/v6.4.22" }, "funding": [ { @@ -9773,20 +9782,20 @@ "type": "tidelift" } ], - "time": "2025-02-13T10:18:43+00:00" + "time": "2025-05-29T07:06:44+00:00" }, { "name": "symfony/translation-contracts", - "version": "v3.5.1", + "version": "v3.6.0", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "4667ff3bd513750603a09c8dedbea942487fb07c" + "reference": "df210c7a2573f1913b2d17cc95f90f53a73d8f7d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/4667ff3bd513750603a09c8dedbea942487fb07c", - "reference": "4667ff3bd513750603a09c8dedbea942487fb07c", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/df210c7a2573f1913b2d17cc95f90f53a73d8f7d", + "reference": "df210c7a2573f1913b2d17cc95f90f53a73d8f7d", "shasum": "" }, "require": { @@ -9799,7 +9808,7 @@ "name": "symfony/contracts" }, "branch-alias": { - "dev-main": "3.5-dev" + "dev-main": "3.6-dev" } }, "autoload": { @@ -9835,7 +9844,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/translation-contracts/tree/v3.5.1" + "source": "https://github.com/symfony/translation-contracts/tree/v3.6.0" }, "funding": [ { @@ -9851,7 +9860,7 @@ "type": "tidelift" } ], - "time": "2024-09-25T14:20:29+00:00" + "time": "2024-09-27T08:32:26+00:00" }, { "name": "symfony/uid", @@ -9929,16 +9938,16 @@ }, { "name": "symfony/var-dumper", - "version": "v6.4.18", + "version": "v6.4.21", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "4ad10cf8b020e77ba665305bb7804389884b4837" + "reference": "22560f80c0c5cd58cc0bcaf73455ffd81eb380d5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/4ad10cf8b020e77ba665305bb7804389884b4837", - "reference": "4ad10cf8b020e77ba665305bb7804389884b4837", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/22560f80c0c5cd58cc0bcaf73455ffd81eb380d5", + "reference": "22560f80c0c5cd58cc0bcaf73455ffd81eb380d5", "shasum": "" }, "require": { @@ -9994,7 +10003,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v6.4.18" + "source": "https://github.com/symfony/var-dumper/tree/v6.4.21" }, "funding": [ { @@ -10010,7 +10019,7 @@ "type": "tidelift" } ], - "time": "2025-01-17T11:26:11+00:00" + "time": "2025-04-09T07:34:50+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", @@ -10183,16 +10192,16 @@ }, { "name": "vlucas/phpdotenv", - "version": "v5.6.1", + "version": "v5.6.2", "source": { "type": "git", "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "a59a13791077fe3d44f90e7133eb68e7d22eaff2" + "reference": "24ac4c74f91ee2c193fa1aaa5c249cb0822809af" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/a59a13791077fe3d44f90e7133eb68e7d22eaff2", - "reference": "a59a13791077fe3d44f90e7133eb68e7d22eaff2", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/24ac4c74f91ee2c193fa1aaa5c249cb0822809af", + "reference": "24ac4c74f91ee2c193fa1aaa5c249cb0822809af", "shasum": "" }, "require": { @@ -10251,7 +10260,7 @@ ], "support": { "issues": "https://github.com/vlucas/phpdotenv/issues", - "source": "https://github.com/vlucas/phpdotenv/tree/v5.6.1" + "source": "https://github.com/vlucas/phpdotenv/tree/v5.6.2" }, "funding": [ { @@ -10263,7 +10272,7 @@ "type": "tidelift" } ], - "time": "2024-07-20T21:52:34+00:00" + "time": "2025-04-30T23:37:27+00:00" }, { "name": "voku/portable-ascii", @@ -10809,20 +10818,20 @@ }, { "name": "hamcrest/hamcrest-php", - "version": "v2.0.1", + "version": "v2.1.1", "source": { "type": "git", "url": "https://github.com/hamcrest/hamcrest-php.git", - "reference": "8c3d0a3f6af734494ad8f6fbbee0ba92422859f3" + "reference": "f8b1c0173b22fa6ec77a81fe63e5b01eba7e6487" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/8c3d0a3f6af734494ad8f6fbbee0ba92422859f3", - "reference": "8c3d0a3f6af734494ad8f6fbbee0ba92422859f3", + "url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/f8b1c0173b22fa6ec77a81fe63e5b01eba7e6487", + "reference": "f8b1c0173b22fa6ec77a81fe63e5b01eba7e6487", "shasum": "" }, "require": { - "php": "^5.3|^7.0|^8.0" + "php": "^7.4|^8.0" }, "replace": { "cordoval/hamcrest-php": "*", @@ -10830,8 +10839,8 @@ "kodova/hamcrest-php": "*" }, "require-dev": { - "phpunit/php-file-iterator": "^1.4 || ^2.0", - "phpunit/phpunit": "^4.8.36 || ^5.7 || ^6.5 || ^7.0" + "phpunit/php-file-iterator": "^1.4 || ^2.0 || ^3.0", + "phpunit/phpunit": "^4.8.36 || ^5.7 || ^6.5 || ^7.0 || ^8.0 || ^9.0" }, "type": "library", "extra": { @@ -10854,9 +10863,9 @@ ], "support": { "issues": "https://github.com/hamcrest/hamcrest-php/issues", - "source": "https://github.com/hamcrest/hamcrest-php/tree/v2.0.1" + "source": "https://github.com/hamcrest/hamcrest-php/tree/v2.1.1" }, - "time": "2020-07-09T08:09:16+00:00" + "time": "2025-04-30T06:54:44+00:00" }, { "name": "iamcal/sql-parser", @@ -10901,16 +10910,16 @@ }, { "name": "larastan/larastan", - "version": "v2.10.0", + "version": "v2.11.0", "source": { "type": "git", "url": "https://github.com/larastan/larastan.git", - "reference": "05519d721277604487a3ca71bdee87739d8d8716" + "reference": "484dabe3d75c7573b08c6a946d40b26211374396" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/larastan/larastan/zipball/05519d721277604487a3ca71bdee87739d8d8716", - "reference": "05519d721277604487a3ca71bdee87739d8d8716", + "url": "https://api.github.com/repos/larastan/larastan/zipball/484dabe3d75c7573b08c6a946d40b26211374396", + "reference": "484dabe3d75c7573b08c6a946d40b26211374396", "shasum": "" }, "require": { @@ -10927,7 +10936,7 @@ "phpstan/phpstan": "^1.12.17" }, "require-dev": { - "doctrine/coding-standard": "^12.0", + "doctrine/coding-standard": "^13", "laravel/framework": "^9.52.20 || ^10.48.28 || ^11.41.3", "mockery/mockery": "^1.5.1", "nikic/php-parser": "^4.19.1", @@ -10963,10 +10972,6 @@ { "name": "Can Vural", "email": "can9119@gmail.com" - }, - { - "name": "Nuno Maduro", - "email": "enunomaduro@gmail.com" } ], "description": "Larastan - Discover bugs in your code without running it. A phpstan/phpstan extension for Laravel", @@ -10982,7 +10987,7 @@ ], "support": { "issues": "https://github.com/larastan/larastan/issues", - "source": "https://github.com/larastan/larastan/tree/v2.10.0" + "source": "https://github.com/larastan/larastan/tree/v2.11.0" }, "funding": [ { @@ -10990,7 +10995,7 @@ "type": "github" } ], - "time": "2025-03-14T21:52:58+00:00" + "time": "2025-04-21T20:12:00+00:00" }, { "name": "laravel-lang/actions", @@ -11837,16 +11842,16 @@ }, { "name": "laravel/sail", - "version": "v1.41.0", + "version": "v1.43.1", "source": { "type": "git", "url": "https://github.com/laravel/sail.git", - "reference": "fe1a4ada0abb5e4bd99eb4e4b0d87906c00cdeec" + "reference": "3e7d899232a8c5e3ea4fc6dee7525ad583887e72" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/sail/zipball/fe1a4ada0abb5e4bd99eb4e4b0d87906c00cdeec", - "reference": "fe1a4ada0abb5e4bd99eb4e4b0d87906c00cdeec", + "url": "https://api.github.com/repos/laravel/sail/zipball/3e7d899232a8c5e3ea4fc6dee7525ad583887e72", + "reference": "3e7d899232a8c5e3ea4fc6dee7525ad583887e72", "shasum": "" }, "require": { @@ -11896,7 +11901,7 @@ "issues": "https://github.com/laravel/sail/issues", "source": "https://github.com/laravel/sail" }, - "time": "2025-01-24T15:45:36+00:00" + "time": "2025-05-19T13:19:21+00:00" }, { "name": "mockery/mockery", @@ -12197,16 +12202,16 @@ }, { "name": "phpstan/phpstan", - "version": "1.12.23", + "version": "1.12.27", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "29201e7a743a6ab36f91394eab51889a82631428" + "reference": "3a6e423c076ab39dfedc307e2ac627ef579db162" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/29201e7a743a6ab36f91394eab51889a82631428", - "reference": "29201e7a743a6ab36f91394eab51889a82631428", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/3a6e423c076ab39dfedc307e2ac627ef579db162", + "reference": "3a6e423c076ab39dfedc307e2ac627ef579db162", "shasum": "" }, "require": { @@ -12251,7 +12256,7 @@ "type": "github" } ], - "time": "2025-03-23T14:57:32+00:00" + "time": "2025-05-21T20:51:45+00:00" }, { "name": "phpunit/php-code-coverage", @@ -12576,16 +12581,16 @@ }, { "name": "phpunit/phpunit", - "version": "10.5.45", + "version": "10.5.46", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "bd68a781d8e30348bc297449f5234b3458267ae8" + "reference": "8080be387a5be380dda48c6f41cee4a13aadab3d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/bd68a781d8e30348bc297449f5234b3458267ae8", - "reference": "bd68a781d8e30348bc297449f5234b3458267ae8", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/8080be387a5be380dda48c6f41cee4a13aadab3d", + "reference": "8080be387a5be380dda48c6f41cee4a13aadab3d", "shasum": "" }, "require": { @@ -12595,7 +12600,7 @@ "ext-mbstring": "*", "ext-xml": "*", "ext-xmlwriter": "*", - "myclabs/deep-copy": "^1.12.1", + "myclabs/deep-copy": "^1.13.1", "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=8.1", @@ -12657,7 +12662,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.45" + "source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.46" }, "funding": [ { @@ -12668,12 +12673,20 @@ "url": "https://github.com/sebastianbergmann", "type": "github" }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, { "url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit", "type": "tidelift" } ], - "time": "2025-02-06T16:08:12+00:00" + "time": "2025-05-02T06:46:24+00:00" }, { "name": "sebastian/cli-parser", @@ -13593,16 +13606,16 @@ }, { "name": "spatie/backtrace", - "version": "1.7.1", + "version": "1.7.4", "source": { "type": "git", "url": "https://github.com/spatie/backtrace.git", - "reference": "0f2477c520e3729de58e061b8192f161c99f770b" + "reference": "cd37a49fce7137359ac30ecc44ef3e16404cccbe" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/backtrace/zipball/0f2477c520e3729de58e061b8192f161c99f770b", - "reference": "0f2477c520e3729de58e061b8192f161c99f770b", + "url": "https://api.github.com/repos/spatie/backtrace/zipball/cd37a49fce7137359ac30ecc44ef3e16404cccbe", + "reference": "cd37a49fce7137359ac30ecc44ef3e16404cccbe", "shasum": "" }, "require": { @@ -13640,7 +13653,7 @@ "spatie" ], "support": { - "source": "https://github.com/spatie/backtrace/tree/1.7.1" + "source": "https://github.com/spatie/backtrace/tree/1.7.4" }, "funding": [ { @@ -13652,7 +13665,7 @@ "type": "other" } ], - "time": "2024-12-02T13:28:15+00:00" + "time": "2025-05-08T15:41:09+00:00" }, { "name": "spatie/error-solutions", @@ -13973,7 +13986,7 @@ }, { "name": "symfony/polyfill-php81", - "version": "v1.31.0", + "version": "v1.32.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php81.git", @@ -14029,7 +14042,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-php81/tree/v1.32.0" }, "funding": [ { @@ -14049,16 +14062,16 @@ }, { "name": "symfony/yaml", - "version": "v7.2.3", + "version": "v7.3.0", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "ac238f173df0c9c1120f862d0f599e17535a87ec" + "reference": "cea40a48279d58dc3efee8112634cb90141156c2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/ac238f173df0c9c1120f862d0f599e17535a87ec", - "reference": "ac238f173df0c9c1120f862d0f599e17535a87ec", + "url": "https://api.github.com/repos/symfony/yaml/zipball/cea40a48279d58dc3efee8112634cb90141156c2", + "reference": "cea40a48279d58dc3efee8112634cb90141156c2", "shasum": "" }, "require": { @@ -14101,7 +14114,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v7.2.3" + "source": "https://github.com/symfony/yaml/tree/v7.3.0" }, "funding": [ { @@ -14117,7 +14130,7 @@ "type": "tidelift" } ], - "time": "2025-01-07T12:55:42+00:00" + "time": "2025-04-04T10:10:33+00:00" }, { "name": "theseer/tokenizer", diff --git a/lang/tk.json b/lang/tk.json index f3a2961..e4bc728 100644 --- a/lang/tk.json +++ b/lang/tk.json @@ -348,5 +348,7 @@ "Card balance": "Kart galyndysy", "Card balances": "Kart galyndylary", "Card holder name": "Kartyň eýesiniň ady", - "Money Balance": "Galyndy" + "Money Balance": "Galyndy", + "Start date": "Başlangyç sene", + "End date": "Ahyrky sene" } diff --git a/lang/vendor/nova/tk.json b/lang/vendor/nova/tk.json index f9dc155..68ceec6 100644 --- a/lang/vendor/nova/tk.json +++ b/lang/vendor/nova/tk.json @@ -46,7 +46,7 @@ "Are you sure you want to remove this item?": "Bu elementi aýyrmak isleýändigiňize ynanýarsyňyzmy?", "Are you sure you want to restore the selected resources?": "Saýlanan çeşmeleri dikeltmek isleýändigiňize ynanýarsyňyzmy?", "Are you sure you want to restore this resource?": "Bu resursy dikeltmek isleýändigiňize ynanýarsyňyzmy?", - "Are you sure you want to run this action?": "Bu çäräni geçirmek isleýändigiňize ynanýarsyňyzmy?", + "Are you sure you want to run this action?": "Ýerine ýetirmek üçin \"dowam et\" düwmä basyň.", "Are you sure you want to stop impersonating?": "Özüňi görkezmekden ýüz öwürmek isleýärsiňmi?", "Argentina": "Argentina", "Armenia": "Ermenistan",