rkljw 6 months ago
parent
commit
1fae1ef1a3
5 changed files with 1540 additions and 18 deletions
  1. 22 0
      .env.lock
  2. 62 18
      app/JsonRpc/AdService.php
  3. 6 0
      app/JsonRpc/AdServiceInterface.php
  4. 1 0
      runtime/logs/hyperf.log
  5. 1449 0
      vendor/composer/installed.php

+ 22 - 0
.env.lock

@@ -0,0 +1,22 @@
+APP_NAME=ad_producer
+APP_ENV=dev
+HOST = http://101.254.114.211:13306/
+DB_DRIVER=mysql
+DB_HOST=101.254.114.211
+DB_PORT=13306
+DB_DATABASE=hyperf
+DB_USERNAME=root
+DB_PASSWORD=xKmapDpKCxMMSkbe
+DB_CHARSET=utf8mb4
+DB_COLLATION=utf8mb4_unicode_ci
+DB_PREFIX=
+
+REDIS_HOST=101.254.114.211
+REDIS_AUTH=YPWWnFnNebc7427B
+REDIS_PORT=26739
+REDIS_DB=0
+
+AMQP_HOST=103.105.201.2
+AMQP_PORT=5673
+AMQP_USER=rabbitmq
+AMQP_PASSWORD=H8eDTAk6LY7EjJ8y

+ 62 - 18
app/JsonRpc/AdService.php

@@ -55,19 +55,24 @@ class AdService implements AdServiceInterface
         return Result::success($adInfo->toArray());
     }
 
+    /**
+     * @param array $data
+     * @return array
+     */
     public function getAdList(array $data): array
     {
-        $where = [
-            ['ad.name','like','%'.$data['keyWord'].'%'],
-        ];
         if(isset($data['pid'])){
-            $where[]=   ['ad.pid','=',$data['pid']];
+            $where[] =   ['ad.pid','=',$data['pid']];
         }
         $rep = Ad::where($where)
             ->leftJoin("ad_place","ad.pid","ad_place.id")
-            ->select("ad.*","ad_place.name as place_name","ad_place.typeid")
-            ->limit($data['pageSize'])->orderBy("id","asc")->offset(($data['page']-1)*$data['pageSize'])->get();
-        $count =  Ad::where($where)->count();
+            ->leftJoin("website","website.id","ad_place.website_id")
+            ->select("ad.*","ad_place.name as place_name","ad_place.typeid","website.website_name")
+            ->limit($data['pageSize'])->orderBy("ad.id","desc")->offset(($data['page']-1)*$data['pageSize'])->get();
+        $count =  Ad::where($where)
+            ->leftJoin("ad_place","ad.pid","ad_place.id")
+            ->leftJoin("website","website.id","ad_place.website_id")
+            ->count();
         $data = [
             'rows'=>$rep->toArray(),
             'count'=>$count
@@ -122,24 +127,37 @@ class AdService implements AdServiceInterface
         return Result::success($result);
     }
 
+    /**
+     * 广告位列表
+     * @param array $data
+     * @return array
+     */
     public function getAdPlaceList(array $data): array
     {
-        $where = [
-            ['name','like','%'.$data['keyWord'].'%'],
-        ];
-        if(isset($data['website_id'])){
-            $where[]=   ['website_id','=',$data['website_id']];
+
+        $where = [];
+        if(isset($data['name'])  && $data['name']){
+            array_push($where,['ad_place.name','like','%'.$data['name'].'%']);
         }
-        $rep = AdPlace::where($where)->limit($data['pageSize'])->orderBy("id","desc")->offset(($data['page']-1)*$data['pageSize'])->get();
+        if(isset($data['website_id'])  && $data['website_id']){
+            array_push($where,['ad_place.website_id','=',$data['website_id']]);
+        }
+        $rep = AdPlace::where($where)
+            ->leftJoin("ad_size","ad_place.ad_size_id","ad_size.id")
+            ->limit($data['pageSize'])
+            ->orderBy("id","desc")
+            ->offset(($data['page']-1)*$data['pageSize'])
+            ->select("ad_place.*","ad_size.width","ad_size.height")
+            ->get();
         $count =  AdPlace::where($where)->count();
-        $data = [
+        $reponse = [
             'rows'=>$rep->toArray(),
             'count'=>$count
         ];
         if(empty($rep->toArray())){
             return Result::error("没有数据");
         }
-        return Result::success($data);
+        return Result::success($reponse);
     }
 
     public function createAdPlace(array $data): array
@@ -153,6 +171,17 @@ class AdService implements AdServiceInterface
         }
     }
 
+    /**
+     * 'name' => 'required', //广告位名称
+     * 'website_id' => 'required',//关联的网站id
+     * 'price' => 'required',//价格
+     * 'thumb'=>'required', //广告示意图
+     * 'typeid'=>'required', //广告类型
+     * 'ad_size_id'=>'required', //广告位大小
+     * 'status'=>'required', //状态
+     * @param array $data
+     * @return array
+     */
     public function updateAdPlace(array $data): array
     {
         $where = [
@@ -166,11 +195,9 @@ class AdService implements AdServiceInterface
             'thumb'=>$data['thumb']??'',
             'introduce'=>$data['introduce']??'',
             'code'=>$data['code']??'',
-            'width'=>empty($data['width'])?0:$data['width'],
-            'height'=>empty($data['height'])?0:$data['height'],
             'price'=>$data['price']??0,
+            'ad_size_id'=>$data['ad_size_id']??0,
         ];
-        var_dump($Insdata);
         $result = AdPlace::where($where)->update($Insdata);
         if($result){
             return Result::success($result);
@@ -179,6 +206,11 @@ class AdService implements AdServiceInterface
         }
     }
 
+    /**
+     * 删除广告位
+     * @param array $data
+     * @return array
+     */
     public function delAdPlace(array $data): array
     {
         $adList = Ad::where(['pid'=>$data['id']])->get();
@@ -191,5 +223,17 @@ class AdService implements AdServiceInterface
         }
         return Result::success($result);
     }
+    /**
+     * @param int $id
+     * @return array
+     */
+    public function getAdPlaceInfo(int $id): array
+    {
+        $adInfo = AdPlace::query()->find($id);
+        if (empty($adInfo)) {
+            return Result::error("没有数据",0);
+        }
+        return Result::success($adInfo->toArray());
+    }
 
 }

+ 6 - 0
app/JsonRpc/AdServiceInterface.php

@@ -57,4 +57,10 @@ interface AdServiceInterface
      */
     public function delAdPlace(array $data);
 
+    /**
+     * @param int $id
+     * @return array
+     */
+    public function getAdPlaceInfo(int $id);
+
 }

+ 1 - 0
runtime/logs/hyperf.log

@@ -0,0 +1 @@
+[2024-11-25 06:06:17] sql.INFO: [159.17] select * from `ad_place` where `ad_place`.`id` = '15' limit 1 [] []

+ 1449 - 0
vendor/composer/installed.php

@@ -0,0 +1,1449 @@
+<?php return array(
+    'root' => array(
+        'name' => 'hyperf/hyperf-skeleton',
+        'pretty_version' => 'dev-master',
+        'version' => 'dev-master',
+        'reference' => '01cc917d116b2cec842dba83ec577cca5476876c',
+        'type' => 'project',
+        'install_path' => __DIR__ . '/../../',
+        'aliases' => array(),
+        'dev' => true,
+    ),
+    'versions' => array(
+        'carbonphp/carbon-doctrine-types' => array(
+            'pretty_version' => '3.2.0',
+            'version' => '3.2.0.0',
+            'reference' => '18ba5ddfec8976260ead6e866180bd5d2f71aa1d',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../carbonphp/carbon-doctrine-types',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'clue/ndjson-react' => array(
+            'pretty_version' => 'v1.3.0',
+            'version' => '1.3.0.0',
+            'reference' => '392dc165fce93b5bb5c637b67e59619223c931b0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../clue/ndjson-react',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'composer/pcre' => array(
+            'pretty_version' => '3.1.4',
+            'version' => '3.1.4.0',
+            'reference' => '04229f163664973f68f38f6f73d917799168ef24',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/./pcre',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'composer/semver' => array(
+            'pretty_version' => '3.4.0',
+            'version' => '3.4.0.0',
+            'reference' => '35e8d0af4486141bc745f23a29cc2091eb624a32',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/./semver',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'composer/xdebug-handler' => array(
+            'pretty_version' => '3.0.5',
+            'version' => '3.0.5.0',
+            'reference' => '6c1925561632e83d60a44492e0b344cf48ab85ef',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/./xdebug-handler',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'cordoval/hamcrest-php' => array(
+            'dev_requirement' => true,
+            'replaced' => array(
+                0 => '*',
+            ),
+        ),
+        'davedevelopment/hamcrest-php' => array(
+            'dev_requirement' => true,
+            'replaced' => array(
+                0 => '*',
+            ),
+        ),
+        'doctrine/annotations' => array(
+            'pretty_version' => '2.0.1',
+            'version' => '2.0.1.0',
+            'reference' => 'e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../doctrine/annotations',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'doctrine/inflector' => array(
+            'pretty_version' => '2.0.10',
+            'version' => '2.0.10.0',
+            'reference' => '5817d0659c5b50c9b950feb9af7b9668e2c436bc',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../doctrine/inflector',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'doctrine/instantiator' => array(
+            'pretty_version' => '1.5.0',
+            'version' => '1.5.0.0',
+            'reference' => '0a0fa9780f5d4e507415a065172d26a98d02047b',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../doctrine/instantiator',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'doctrine/lexer' => array(
+            'pretty_version' => '3.0.1',
+            'version' => '3.0.1.0',
+            'reference' => '31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../doctrine/lexer',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'evenement/evenement' => array(
+            'pretty_version' => 'v3.0.2',
+            'version' => '3.0.2.0',
+            'reference' => '0a16b0d71ab13284339abb99d9d2bd813640efbc',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../evenement/evenement',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'fidry/cpu-core-counter' => array(
+            'pretty_version' => '1.1.0',
+            'version' => '1.1.0.0',
+            'reference' => 'f92996c4d5c1a696a6a970e20f7c4216200fcc42',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../fidry/cpu-core-counter',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'fig/http-message-util' => array(
+            'pretty_version' => '1.1.5',
+            'version' => '1.1.5.0',
+            'reference' => '9d94dc0154230ac39e5bf89398b324a86f63f765',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../fig/http-message-util',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'friendsofphp/php-cs-fixer' => array(
+            'pretty_version' => 'v3.58.1',
+            'version' => '3.58.1.0',
+            'reference' => '04e9424025677a86914b9a4944dbbf4060bb0aff',
+            'type' => 'application',
+            'install_path' => __DIR__ . '/../friendsofphp/php-cs-fixer',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'graham-campbell/result-type' => array(
+            'pretty_version' => 'v1.1.2',
+            'version' => '1.1.2.0',
+            'reference' => 'fbd48bce38f73f8a4ec8583362e732e4095e5862',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../graham-campbell/result-type',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'guzzlehttp/guzzle' => array(
+            'pretty_version' => '7.8.1',
+            'version' => '7.8.1.0',
+            'reference' => '41042bc7ab002487b876a0683fc8dce04ddce104',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../guzzlehttp/guzzle',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'guzzlehttp/promises' => array(
+            'pretty_version' => '2.0.2',
+            'version' => '2.0.2.0',
+            'reference' => 'bbff78d96034045e58e13dedd6ad91b5d1253223',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../guzzlehttp/promises',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'guzzlehttp/psr7' => array(
+            'pretty_version' => '2.6.2',
+            'version' => '2.6.2.0',
+            'reference' => '45b30f99ac27b5ca93cb4831afe16285f57b8221',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../guzzlehttp/psr7',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hamcrest/hamcrest-php' => array(
+            'pretty_version' => 'v2.0.1',
+            'version' => '2.0.1.0',
+            'reference' => '8c3d0a3f6af734494ad8f6fbbee0ba92422859f3',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hamcrest/hamcrest-php',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'hyperf/cache' => array(
+            'pretty_version' => 'v3.1.23',
+            'version' => '3.1.23.0',
+            'reference' => '7783e220b984b26409d621da49b853340f788a6d',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/cache',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/code-parser' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '820e8e6680f0d04e4187a3037a2a3eaf7141913d',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/code-parser',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/codec' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '198c364ad8eadda13f1a0decdbb9221ac9c4c260',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/codec',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/collection' => array(
+            'pretty_version' => 'v3.1.23.2',
+            'version' => '3.1.23.2',
+            'reference' => '8d10ca88228ee47c9cee578ac3699e795f468ada',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/collection',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/command' => array(
+            'pretty_version' => 'v3.1.24',
+            'version' => '3.1.24.0',
+            'reference' => 'b1ca85876f35f85fe3f52b0cc75bcc3da418769d',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/command',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/conditionable' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '2c1555891d136904b890ba6d812d9ff50ca13ae3',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/conditionable',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/config' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '5a92774d6db6bc02fc511c005c01f99d922aa292',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/config',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/config-center' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => 'a47acc3279ca173fa393b81175b6807859cd144e',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/config-center',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/config-nacos' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => 'e66bd614a5bc789f6ca28152a206218f77bc8dd2',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/config-nacos',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/constants' => array(
+            'pretty_version' => 'v3.1.16',
+            'version' => '3.1.16.0',
+            'reference' => '55d46901660e4540195145d0e4066296cf0dc130',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/constants',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/consul' => array(
+            'pretty_version' => 'v3.1.22',
+            'version' => '3.1.22.0',
+            'reference' => '6e5e6936513c76812d6c1a066530543b15aec5e8',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/consul',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/context' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => 'ad913fd50eb5f738c038e172c120bc6956c0da69',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/context',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/contract' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '9950abe963cc6b30c6d3506fa5b3adbd58cb1945',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/contract',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/coordinator' => array(
+            'pretty_version' => 'v3.1.21',
+            'version' => '3.1.21.0',
+            'reference' => 'caf5a70f96b7f22950e1caa3ba74f72c8382493c',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/coordinator',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/coroutine' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '8f4c573a9457646db3e629dacabe064eebaf8cc1',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/coroutine',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/database' => array(
+            'pretty_version' => 'v3.1.24',
+            'version' => '3.1.24.0',
+            'reference' => '9897c211ada78b0603f4249466f0c1b3e2d6d938',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/database',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/db-connection' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => 'bfe44b0365a555fb4b947df37b662fce26b905c0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/db-connection',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/devtool' => array(
+            'pretty_version' => 'v3.1.19',
+            'version' => '3.1.19.0',
+            'reference' => 'cdce9f26c3a18d5d0302acdf83d26d4686223476',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/devtool',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'hyperf/di' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '681120f158739bde07dc5c761e11be56e8d07109',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/di',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/dispatcher' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '6a6f0f149081291664ff14bf34aecf2c01f89328',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/dispatcher',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/engine' => array(
+            'pretty_version' => 'v2.11.0',
+            'version' => '2.11.0.0',
+            'reference' => '26e0b65fc2a63a00266e7124e221c6f3fb2c8e95',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/engine',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/engine-contract' => array(
+            'pretty_version' => 'v1.10.1',
+            'version' => '1.10.1.0',
+            'reference' => '2714a8ba6d6b916e5bd373ff680df9569a4c9eef',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/engine-contract',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/event' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '8d008682c028e958197589e90232bb2a1d3c77d9',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/event',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/exception-handler' => array(
+            'pretty_version' => 'v3.1.22',
+            'version' => '3.1.22.0',
+            'reference' => '6eefe07081ffaa0d6534273caa96722c606da6a8',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/exception-handler',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/framework' => array(
+            'pretty_version' => 'v3.1.23',
+            'version' => '3.1.23.0',
+            'reference' => 'c40d529fafc197c67a64e9ca918498d417d4102c',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/framework',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/guzzle' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '1281abe876925b8ef64a7372d53701fdb9a519cf',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/guzzle',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/http-message' => array(
+            'pretty_version' => 'v3.1.19',
+            'version' => '3.1.19.0',
+            'reference' => 'f96e372203bd6109bc1f6c15ee8eee3a76c8f92e',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/http-message',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/http-server' => array(
+            'pretty_version' => 'v3.1.17',
+            'version' => '3.1.17.0',
+            'reference' => 'd2c633123dd8e7d5b2bcd1b24b7047fe3adc6424',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/http-server',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/hyperf-skeleton' => array(
+            'pretty_version' => 'dev-master',
+            'version' => 'dev-master',
+            'reference' => '01cc917d116b2cec842dba83ec577cca5476876c',
+            'type' => 'project',
+            'install_path' => __DIR__ . '/../../',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/json-rpc' => array(
+            'pretty_version' => 'v3.1.23',
+            'version' => '3.1.23.0',
+            'reference' => '234a3d8f9873a3d391cf9229fc5033638c5c9a93',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/json-rpc',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/load-balancer' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => 'f4bfecb7e6ef7c7cca008c90510a9e2c7f0c8f5a',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/load-balancer',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/logger' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '014f511449f84f6dea0cf368531ac07f31408496',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/logger',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/macroable' => array(
+            'pretty_version' => 'v3.1.23',
+            'version' => '3.1.23.0',
+            'reference' => '5f555c40bfec6aaab46f1bb1cac9ef556fbfbe72',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/macroable',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/memory' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '1ad9df27b0817e74bb31b000735072c75fb41943',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/memory',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/model-listener' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => 'a65804ea8cac4e383d275a1fff7f79cd6f387da6',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/model-listener',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/nacos' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => 'b0dbfdf67f12740faab73a9496269f230c7459be',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/nacos',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/pipeline' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => 'ad4dbaeea2dc1166bb02e3ac5572f4eb773315a8',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/pipeline',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/pool' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '34d907adf5bb2727160bfcdeafe0e98cab00d6c7',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/pool',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/process' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '2d45d4002a64f23406e3c36d3edf5da42147156b',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/process',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/redis' => array(
+            'pretty_version' => 'v3.1.18',
+            'version' => '3.1.18.0',
+            'reference' => '85bea22b580bc32dd1d8e8750936b1d386e8deca',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/redis',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/rpc' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => 'f5b0109aec760272357270662ad0914c4848b8c0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/rpc',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/rpc-server' => array(
+            'pretty_version' => 'v3.1.20',
+            'version' => '3.1.20.0',
+            'reference' => '9c820dc51893c6443c01fd0f2f534fc4bcc8a4f1',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/rpc-server',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/serializer' => array(
+            'pretty_version' => 'v3.1.23',
+            'version' => '3.1.23.0',
+            'reference' => 'd9b4f012565c90176c7cc117043c5907ea3795bb',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/serializer',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/server' => array(
+            'pretty_version' => 'v3.1.23',
+            'version' => '3.1.23.0',
+            'reference' => '56c34b808df8f1e85991c26ee47c17025a29581c',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/server',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/service-governance' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => 'e2d11bc91cc0ac5c32bf0ffa3a8c95ef3987b06a',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/service-governance',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/service-governance-consul' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => 'fba1aa56a3298559ff290de9640e6eb5cfcf9ce4',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/service-governance-consul',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/service-governance-nacos' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '8f27ed823c17f55c88aa81ff31003f8995fa87cf',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/service-governance-nacos',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/stdlib' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '636fdc1f15d9357b4747fa649874725f2276b118',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/stdlib',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/stringable' => array(
+            'pretty_version' => 'v3.1.24',
+            'version' => '3.1.24.0',
+            'reference' => 'ee6b1788489ddb0c06c8f12ed5ccfa70dfa7efbc',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/stringable',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/support' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '3fb5c6c5a4f795cb0304a032f6f5b85f62a5f872',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/support',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/tappable' => array(
+            'pretty_version' => 'v3.1.15',
+            'version' => '3.1.15.0',
+            'reference' => '69f22bbc8ecb5b930cc95a49ae9bf0ca0efbfdf1',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/tappable',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/testing' => array(
+            'pretty_version' => 'v3.1.21',
+            'version' => '3.1.21.0',
+            'reference' => '923e862f9ccd5947baac4d4d1e09383c8ac75dc8',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/testing',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'hyperf/utils' => array(
+            'pretty_version' => 'v3.1.0',
+            'version' => '3.1.0.0',
+            'reference' => '10522904195eb5af9090bbd072589fb387c91041',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/utils',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'hyperf/watcher' => array(
+            'pretty_version' => 'v3.1.27',
+            'version' => '3.1.27.0',
+            'reference' => '804dc0a796a10b0bdcda69fca390715dfbe905c9',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../hyperf/watcher',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'jetbrains/phpstorm-attributes' => array(
+            'pretty_version' => '1.1',
+            'version' => '1.1.0.0',
+            'reference' => '22fb28d679deceedba8366dbae65cc8ebfc17e26',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../jetbrains/phpstorm-attributes',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'kodova/hamcrest-php' => array(
+            'dev_requirement' => true,
+            'replaced' => array(
+                0 => '*',
+            ),
+        ),
+        'laminas/laminas-mime' => array(
+            'pretty_version' => '2.12.0',
+            'version' => '2.12.0.0',
+            'reference' => '08cc544778829b7d68d27a097885bd6e7130135e',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../laminas/laminas-mime',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'laminas/laminas-stdlib' => array(
+            'pretty_version' => '3.19.0',
+            'version' => '3.19.0.0',
+            'reference' => '6a192dd0882b514e45506f533b833b623b78fff3',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../laminas/laminas-stdlib',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'markrogoyski/math-php' => array(
+            'pretty_version' => 'v2.10.0',
+            'version' => '2.10.0.0',
+            'reference' => 'e587bfe3aadddfba0f3a40f49d2ed91132f30c5a',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../markrogoyski/math-php',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'mockery/mockery' => array(
+            'pretty_version' => '1.6.12',
+            'version' => '1.6.12.0',
+            'reference' => '1f4efdd7d3beafe9807b08156dfcb176d18f1699',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../mockery/mockery',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'monolog/monolog' => array(
+            'pretty_version' => '3.6.0',
+            'version' => '3.6.0.0',
+            'reference' => '4b18b21a5527a3d5ffdac2fd35d3ab25a9597654',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../monolog/monolog',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'myclabs/deep-copy' => array(
+            'pretty_version' => '1.11.1',
+            'version' => '1.11.1.0',
+            'reference' => '7284c22080590fb39f2ffa3e9057f10a4ddd0e0c',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../myclabs/deep-copy',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'nesbot/carbon' => array(
+            'pretty_version' => '2.72.5',
+            'version' => '2.72.5.0',
+            'reference' => 'afd46589c216118ecd48ff2b95d77596af1e57ed',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../nesbot/carbon',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'nikic/fast-route' => array(
+            'pretty_version' => 'v1.3.0',
+            'version' => '1.3.0.0',
+            'reference' => '181d480e08d9476e61381e04a71b34dc0432e812',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../nikic/fast-route',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'nikic/php-parser' => array(
+            'pretty_version' => 'v4.19.1',
+            'version' => '4.19.1.0',
+            'reference' => '4e1b88d21c69391150ace211e9eaf05810858d0b',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../nikic/php-parser',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'phar-io/manifest' => array(
+            'pretty_version' => '2.0.4',
+            'version' => '2.0.4.0',
+            'reference' => '54750ef60c58e43759730615a392c31c80e23176',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../phar-io/manifest',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'phar-io/version' => array(
+            'pretty_version' => '3.2.1',
+            'version' => '3.2.1.0',
+            'reference' => '4f7fd7836c6f332bb2933569e566a0d6c4cbed74',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../phar-io/version',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'php-di/phpdoc-reader' => array(
+            'pretty_version' => '2.2.1',
+            'version' => '2.2.1.0',
+            'reference' => '66daff34cbd2627740ffec9469ffbac9f8c8185c',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../php-di/phpdoc-reader',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'phpoption/phpoption' => array(
+            'pretty_version' => '1.9.2',
+            'version' => '1.9.2.0',
+            'reference' => '80735db690fe4fc5c76dfa7f9b770634285fa820',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../phpoption/phpoption',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'phpstan/phpstan' => array(
+            'pretty_version' => '1.11.3',
+            'version' => '1.11.3.0',
+            'reference' => 'e64220a05c1209fc856d58e789c3b7a32c0bb9a5',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../phpstan/phpstan',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'phpunit/php-code-coverage' => array(
+            'pretty_version' => '10.1.14',
+            'version' => '10.1.14.0',
+            'reference' => 'e3f51450ebffe8e0efdf7346ae966a656f7d5e5b',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../phpunit/php-code-coverage',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'phpunit/php-file-iterator' => array(
+            'pretty_version' => '4.1.0',
+            'version' => '4.1.0.0',
+            'reference' => 'a95037b6d9e608ba092da1b23931e537cadc3c3c',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../phpunit/php-file-iterator',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'phpunit/php-invoker' => array(
+            'pretty_version' => '4.0.0',
+            'version' => '4.0.0.0',
+            'reference' => 'f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../phpunit/php-invoker',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'phpunit/php-text-template' => array(
+            'pretty_version' => '3.0.1',
+            'version' => '3.0.1.0',
+            'reference' => '0c7b06ff49e3d5072f057eb1fa59258bf287a748',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../phpunit/php-text-template',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'phpunit/php-timer' => array(
+            'pretty_version' => '6.0.0',
+            'version' => '6.0.0.0',
+            'reference' => 'e2a2d67966e740530f4a3343fe2e030ffdc1161d',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../phpunit/php-timer',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'phpunit/phpunit' => array(
+            'pretty_version' => '10.5.20',
+            'version' => '10.5.20.0',
+            'reference' => '547d314dc24ec1e177720d45c6263fb226cc2ae3',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../phpunit/phpunit',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'psr/cache' => array(
+            'pretty_version' => '3.0.0',
+            'version' => '3.0.0.0',
+            'reference' => 'aa5030cfa5405eccfdcb1083ce040c2cb8d253bf',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../psr/cache',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'psr/clock' => array(
+            'pretty_version' => '1.0.0',
+            'version' => '1.0.0.0',
+            'reference' => 'e41a24703d4560fd0acb709162f73b8adfc3aa0d',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../psr/clock',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'psr/clock-implementation' => array(
+            'dev_requirement' => false,
+            'provided' => array(
+                0 => '1.0',
+            ),
+        ),
+        'psr/container' => array(
+            'pretty_version' => '2.0.2',
+            'version' => '2.0.2.0',
+            'reference' => 'c71ecc56dfe541dbd90c5360474fbc405f8d5963',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../psr/container',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'psr/event-dispatcher' => array(
+            'pretty_version' => '1.0.0',
+            'version' => '1.0.0.0',
+            'reference' => 'dbefd12671e8a14ec7f180cab83036ed26714bb0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../psr/event-dispatcher',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'psr/event-dispatcher-implementation' => array(
+            'dev_requirement' => true,
+            'provided' => array(
+                0 => '1.0',
+            ),
+        ),
+        'psr/http-client' => array(
+            'pretty_version' => '1.0.3',
+            'version' => '1.0.3.0',
+            'reference' => 'bb5906edc1c324c9a05aa0873d40117941e5fa90',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../psr/http-client',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'psr/http-client-implementation' => array(
+            'dev_requirement' => false,
+            'provided' => array(
+                0 => '1.0',
+            ),
+        ),
+        'psr/http-factory' => array(
+            'pretty_version' => '1.1.0',
+            'version' => '1.1.0.0',
+            'reference' => '2b4765fddfe3b508ac62f829e852b1501d3f6e8a',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../psr/http-factory',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'psr/http-factory-implementation' => array(
+            'dev_requirement' => false,
+            'provided' => array(
+                0 => '1.0',
+            ),
+        ),
+        'psr/http-message' => array(
+            'pretty_version' => '2.0',
+            'version' => '2.0.0.0',
+            'reference' => '402d35bcb92c70c026d1a6a9883f06b2ead23d71',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../psr/http-message',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'psr/http-message-implementation' => array(
+            'dev_requirement' => false,
+            'provided' => array(
+                0 => '1.0',
+            ),
+        ),
+        'psr/http-server-handler' => array(
+            'pretty_version' => '1.0.2',
+            'version' => '1.0.2.0',
+            'reference' => '84c4fb66179be4caaf8e97bd239203245302e7d4',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../psr/http-server-handler',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'psr/http-server-middleware' => array(
+            'pretty_version' => '1.0.2',
+            'version' => '1.0.2.0',
+            'reference' => 'c1481f747daaa6a0782775cd6a8c26a1bf4a3829',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../psr/http-server-middleware',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'psr/log' => array(
+            'pretty_version' => '3.0.0',
+            'version' => '3.0.0.0',
+            'reference' => 'fe5ea303b0887d5caefd3d431c3e61ad47037001',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../psr/log',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'psr/log-implementation' => array(
+            'dev_requirement' => false,
+            'provided' => array(
+                0 => '3.0.0',
+                1 => '1.0|2.0|3.0',
+            ),
+        ),
+        'psr/simple-cache' => array(
+            'pretty_version' => '3.0.0',
+            'version' => '3.0.0.0',
+            'reference' => '764e0b3939f5ca87cb904f570ef9be2d78a07865',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../psr/simple-cache',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'ralouphie/getallheaders' => array(
+            'pretty_version' => '3.0.3',
+            'version' => '3.0.3.0',
+            'reference' => '120b605dfeb996808c31b6477290a714d356e822',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../ralouphie/getallheaders',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'react/cache' => array(
+            'pretty_version' => 'v1.2.0',
+            'version' => '1.2.0.0',
+            'reference' => 'd47c472b64aa5608225f47965a484b75c7817d5b',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../react/cache',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'react/child-process' => array(
+            'pretty_version' => 'v0.6.5',
+            'version' => '0.6.5.0',
+            'reference' => 'e71eb1aa55f057c7a4a0d08d06b0b0a484bead43',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../react/child-process',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'react/dns' => array(
+            'pretty_version' => 'v1.12.0',
+            'version' => '1.12.0.0',
+            'reference' => 'c134600642fa615b46b41237ef243daa65bb64ec',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../react/dns',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'react/event-loop' => array(
+            'pretty_version' => 'v1.5.0',
+            'version' => '1.5.0.0',
+            'reference' => 'bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../react/event-loop',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'react/promise' => array(
+            'pretty_version' => 'v3.2.0',
+            'version' => '3.2.0.0',
+            'reference' => '8a164643313c71354582dc850b42b33fa12a4b63',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../react/promise',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'react/socket' => array(
+            'pretty_version' => 'v1.15.0',
+            'version' => '1.15.0.0',
+            'reference' => '216d3aec0b87f04a40ca04f481e6af01bdd1d038',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../react/socket',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'react/stream' => array(
+            'pretty_version' => 'v1.3.0',
+            'version' => '1.3.0.0',
+            'reference' => '6fbc9672905c7d5a885f2da2fc696f65840f4a66',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../react/stream',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'sebastian/cli-parser' => array(
+            'pretty_version' => '2.0.1',
+            'version' => '2.0.1.0',
+            'reference' => 'c34583b87e7b7a8055bf6c450c2c77ce32a24084',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../sebastian/cli-parser',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'sebastian/code-unit' => array(
+            'pretty_version' => '2.0.0',
+            'version' => '2.0.0.0',
+            'reference' => 'a81fee9eef0b7a76af11d121767abc44c104e503',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../sebastian/code-unit',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'sebastian/code-unit-reverse-lookup' => array(
+            'pretty_version' => '3.0.0',
+            'version' => '3.0.0.0',
+            'reference' => '5e3a687f7d8ae33fb362c5c0743794bbb2420a1d',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../sebastian/code-unit-reverse-lookup',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'sebastian/comparator' => array(
+            'pretty_version' => '5.0.1',
+            'version' => '5.0.1.0',
+            'reference' => '2db5010a484d53ebf536087a70b4a5423c102372',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../sebastian/comparator',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'sebastian/complexity' => array(
+            'pretty_version' => '3.2.0',
+            'version' => '3.2.0.0',
+            'reference' => '68ff824baeae169ec9f2137158ee529584553799',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../sebastian/complexity',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'sebastian/diff' => array(
+            'pretty_version' => '5.1.1',
+            'version' => '5.1.1.0',
+            'reference' => 'c41e007b4b62af48218231d6c2275e4c9b975b2e',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../sebastian/diff',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'sebastian/environment' => array(
+            'pretty_version' => '6.1.0',
+            'version' => '6.1.0.0',
+            'reference' => '8074dbcd93529b357029f5cc5058fd3e43666984',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../sebastian/environment',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'sebastian/exporter' => array(
+            'pretty_version' => '5.1.2',
+            'version' => '5.1.2.0',
+            'reference' => '955288482d97c19a372d3f31006ab3f37da47adf',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../sebastian/exporter',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'sebastian/global-state' => array(
+            'pretty_version' => '6.0.2',
+            'version' => '6.0.2.0',
+            'reference' => '987bafff24ecc4c9ac418cab1145b96dd6e9cbd9',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../sebastian/global-state',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'sebastian/lines-of-code' => array(
+            'pretty_version' => '2.0.2',
+            'version' => '2.0.2.0',
+            'reference' => '856e7f6a75a84e339195d48c556f23be2ebf75d0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../sebastian/lines-of-code',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'sebastian/object-enumerator' => array(
+            'pretty_version' => '5.0.0',
+            'version' => '5.0.0.0',
+            'reference' => '202d0e344a580d7f7d04b3fafce6933e59dae906',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../sebastian/object-enumerator',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'sebastian/object-reflector' => array(
+            'pretty_version' => '3.0.0',
+            'version' => '3.0.0.0',
+            'reference' => '24ed13d98130f0e7122df55d06c5c4942a577957',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../sebastian/object-reflector',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'sebastian/recursion-context' => array(
+            'pretty_version' => '5.0.0',
+            'version' => '5.0.0.0',
+            'reference' => '05909fb5bc7df4c52992396d0116aed689f93712',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../sebastian/recursion-context',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'sebastian/type' => array(
+            'pretty_version' => '4.0.0',
+            'version' => '4.0.0.0',
+            'reference' => '462699a16464c3944eefc02ebdd77882bd3925bf',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../sebastian/type',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'sebastian/version' => array(
+            'pretty_version' => '4.0.1',
+            'version' => '4.0.1.0',
+            'reference' => 'c51fa83a5d8f43f1402e3f32a005e6262244ef17',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../sebastian/version',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'swoole/ide-helper' => array(
+            'pretty_version' => '5.1.2',
+            'version' => '5.1.2.0',
+            'reference' => '33ec7af9111b76d06a70dd31191cc74793551112',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../swoole/ide-helper',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'swow/psr7-plus' => array(
+            'pretty_version' => 'v1.1.2',
+            'version' => '1.1.2.0',
+            'reference' => '7acc4924be907d2ff64edee5a2bd116620e56364',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../swow/psr7-plus',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'symfony/console' => array(
+            'pretty_version' => 'v6.4.8',
+            'version' => '6.4.8.0',
+            'reference' => 'be5854cee0e8c7b110f00d695d11debdfa1a2a91',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/console',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'symfony/deprecation-contracts' => array(
+            'pretty_version' => 'v3.5.0',
+            'version' => '3.5.0.0',
+            'reference' => '0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/deprecation-contracts',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'symfony/event-dispatcher' => array(
+            'pretty_version' => 'v6.4.8',
+            'version' => '6.4.8.0',
+            'reference' => '8d7507f02b06e06815e56bb39aa0128e3806208b',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/event-dispatcher',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'symfony/event-dispatcher-contracts' => array(
+            'pretty_version' => 'v3.5.0',
+            'version' => '3.5.0.0',
+            'reference' => '8f93aec25d41b72493c6ddff14e916177c9efc50',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/event-dispatcher-contracts',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'symfony/event-dispatcher-implementation' => array(
+            'dev_requirement' => true,
+            'provided' => array(
+                0 => '2.0|3.0',
+            ),
+        ),
+        'symfony/filesystem' => array(
+            'pretty_version' => 'v6.4.8',
+            'version' => '6.4.8.0',
+            'reference' => '4d37529150e7081c51b3c5d5718c55a04a9503f3',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/filesystem',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'symfony/finder' => array(
+            'pretty_version' => 'v6.4.8',
+            'version' => '6.4.8.0',
+            'reference' => '3ef977a43883215d560a2cecb82ec8e62131471c',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/finder',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'symfony/http-foundation' => array(
+            'pretty_version' => 'v6.4.8',
+            'version' => '6.4.8.0',
+            'reference' => '27de8cc95e11db7a50b027e71caaab9024545947',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/http-foundation',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'symfony/options-resolver' => array(
+            'pretty_version' => 'v6.4.8',
+            'version' => '6.4.8.0',
+            'reference' => '22ab9e9101ab18de37839074f8a1197f55590c1b',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/options-resolver',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'symfony/polyfill-ctype' => array(
+            'pretty_version' => 'v1.29.0',
+            'version' => '1.29.0.0',
+            'reference' => 'ef4d7e442ca910c4764bce785146269b30cb5fc4',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/polyfill-ctype',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'symfony/polyfill-intl-grapheme' => array(
+            'pretty_version' => 'v1.29.0',
+            'version' => '1.29.0.0',
+            'reference' => '32a9da87d7b3245e09ac426c83d334ae9f06f80f',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/polyfill-intl-grapheme',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'symfony/polyfill-intl-normalizer' => array(
+            'pretty_version' => 'v1.29.0',
+            'version' => '1.29.0.0',
+            'reference' => 'bc45c394692b948b4d383a08d7753968bed9a83d',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/polyfill-intl-normalizer',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'symfony/polyfill-mbstring' => array(
+            'pretty_version' => 'v1.29.0',
+            'version' => '1.29.0.0',
+            'reference' => '9773676c8a1bb1f8d4340a62efe641cf76eda7ec',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/polyfill-mbstring',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'symfony/polyfill-php80' => array(
+            'pretty_version' => 'v1.29.0',
+            'version' => '1.29.0.0',
+            'reference' => '87b68208d5c1188808dd7839ee1e6c8ec3b02f1b',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/polyfill-php80',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'symfony/polyfill-php81' => array(
+            'pretty_version' => 'v1.29.0',
+            'version' => '1.29.0.0',
+            'reference' => 'c565ad1e63f30e7477fc40738343c62b40bc672d',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/polyfill-php81',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'symfony/polyfill-php83' => array(
+            'pretty_version' => 'v1.29.0',
+            'version' => '1.29.0.0',
+            'reference' => '86fcae159633351e5fd145d1c47de6c528f8caff',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/polyfill-php83',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'symfony/process' => array(
+            'pretty_version' => 'v6.4.8',
+            'version' => '6.4.8.0',
+            'reference' => '8d92dd79149f29e89ee0f480254db595f6a6a2c5',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/process',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'symfony/service-contracts' => array(
+            'pretty_version' => 'v3.5.0',
+            'version' => '3.5.0.0',
+            'reference' => 'bd1d9e59a81d8fa4acdcea3f617c581f7475a80f',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/service-contracts',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'symfony/stopwatch' => array(
+            'pretty_version' => 'v6.4.8',
+            'version' => '6.4.8.0',
+            'reference' => '63e069eb616049632cde9674c46957819454b8aa',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/stopwatch',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'symfony/string' => array(
+            'pretty_version' => 'v6.4.8',
+            'version' => '6.4.8.0',
+            'reference' => 'a147c0f826c4a1f3afb763ab8e009e37c877a44d',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/string',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'symfony/translation' => array(
+            'pretty_version' => 'v6.4.8',
+            'version' => '6.4.8.0',
+            'reference' => 'a002933b13989fc4bd0b58e04bf7eec5210e438a',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/translation',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'symfony/translation-contracts' => array(
+            'pretty_version' => 'v3.5.0',
+            'version' => '3.5.0.0',
+            'reference' => 'b9d2189887bb6b2e0367a9fc7136c5239ab9b05a',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../symfony/translation-contracts',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+        'symfony/translation-implementation' => array(
+            'dev_requirement' => false,
+            'provided' => array(
+                0 => '2.3|3.0',
+            ),
+        ),
+        'theseer/tokenizer' => array(
+            'pretty_version' => '1.2.3',
+            'version' => '1.2.3.0',
+            'reference' => '737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../theseer/tokenizer',
+            'aliases' => array(),
+            'dev_requirement' => true,
+        ),
+        'vlucas/phpdotenv' => array(
+            'pretty_version' => 'v5.6.0',
+            'version' => '5.6.0.0',
+            'reference' => '2cf9fb6054c2bb1d59d1f3817706ecdb9d2934c4',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../vlucas/phpdotenv',
+            'aliases' => array(),
+            'dev_requirement' => false,
+        ),
+    ),
+);