Skip to content

Commit c4cd094

Browse files
committed
git init 🤓
0 parents  commit c4cd094

File tree

6 files changed

+704
-0
lines changed

6 files changed

+704
-0
lines changed

‎composer.json‎

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
{
2+
"name": "iinmass/laravel-package-checker",
3+
"description": "A powerful tool for managing package dependencies in Laravel projects. Get insights into package versions, installation status, and sizes.",
4+
"type": "library",
5+
"autoload": {
6+
"psr-4": {
7+
"Iinmass\\LaravelPackageChecker\\": "src/"
8+
}
9+
},
10+
"extra": {
11+
"laravel": {
12+
"providers": [
13+
"Iinmass\\LaravelPackageChecker\\Providers\\PackageCheckerServiceProvider"
14+
]
15+
}
16+
},
17+
"version": "1.0",
18+
"authors": [
19+
{
20+
"name": "iinmass",
21+
"email": "inmass.idbel@gmail.com",
22+
"role": "Developer"
23+
}
24+
],
25+
"minimum-stability": "stable",
26+
"require": {
27+
"php": "^8.0",
28+
"illuminate/support": "^9.0|^10.0",
29+
"laravel/framework": "9.*|10.*",
30+
"guzzlehttp/guzzle": "^7.0"
31+
},
32+
"require-dev": {
33+
"phpunit/phpunit": "^9.0",
34+
"vimeo/psalm": "^4.30"
35+
}
36+
}
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
<?php
2+
3+
namespace Iinmass\LaravelPackageChecker\Http\Controllers;
4+
5+
use Illuminate\Routing\Controller as BaseController;
6+
use Iinmass\LaravelPackageChecker\Http\Services\PackageCheckerService;
7+
8+
class PackageCheckerController extends BaseController
9+
{
10+
private $packageCheckerService;
11+
12+
public function __construct()
13+
{
14+
$this->packageCheckerService = new PackageCheckerService();
15+
}
16+
public function listPackages()
17+
{
18+
$installedPackages = $this->packageCheckerService->getInstalledPackages();
19+
return view('package-checker::list', compact('installedPackages'));
20+
}
21+
22+
public function getPackageSize()
23+
{
24+
$name = request('name');
25+
$requirements = request('requirements') ?? [];
26+
if (!$name) {
27+
return response()->json(['error' => 'Invalid request']);
28+
}
29+
$packageSize = $this->packageCheckerService->getPackageSize($name, $requirements);
30+
return response()->json($packageSize);
31+
}
32+
33+
public function getVendorSize()
34+
{
35+
$vendorSize = $this->packageCheckerService->getAllPackageSizes();
36+
$headOfResponse = [];
37+
$index = 0;
38+
foreach ($vendorSize as $package) {
39+
$headOfResponse[] = [
40+
'id' => 'ID_' . $index,
41+
'name' => '',
42+
'color' => '#' . substr(md5(rand()), 0, 6)
43+
];
44+
$index++;
45+
}
46+
$vendorSize = collect($vendorSize)->map(function ($item, $key) {
47+
return [
48+
'name' => $item['name'],
49+
'parent' => 'ID_' . $key,
50+
'value' => (int)$item['size'],
51+
];
52+
});
53+
$vendorSize = array_merge($headOfResponse, $vendorSize->toArray());
54+
return response()->json($vendorSize);
55+
}
56+
}

0 commit comments

Comments
 (0)