root 5 rokov pred
rodič
commit
2aa8d8b51b
100 zmenil súbory, kde vykonal 113 pridanie a 7170 odobranie
  1. 3 3
      .env
  2. 2 2
      app/Helper/functions.inc.php
  3. 3 2
      app/Http/Controllers/Admin/Base/IndexController.php
  4. 1 1
      app/Http/Controllers/Admin/Controller.php
  5. 6 6
      app/Widget/Tools/FileUpload.php
  6. 14 14
      app/Widget/Tools/ImgUpload.php
  7. 4 1
      module.php
  8. 3 3
      public/apidoc/api_data.js
  9. 3 3
      public/apidoc/api_data.json
  10. 1 1
      public/base/css/style.min.css
  11. 4 4
      public/base/plugins/imguploader/uploader.js
  12. 1 1
      public/base/plugins/webuploader/webuploader.css
  13. 2 2
      resources/views/admin/album/agent/index.blade.php
  14. 3 3
      resources/views/admin/album/manufacturer/edit-all.blade.php
  15. 3 3
      resources/views/admin/album/manufacturer/edit.blade.php
  16. 3 3
      resources/views/admin/album/manufacturer/furniture-platform.blade.php
  17. 3 3
      resources/views/admin/album/manufacturer/furniture-system.blade.php
  18. 3 3
      resources/views/admin/album/manufacturer/platform-edit.blade.php
  19. 3 3
      resources/views/admin/album/product/edit.blade.php
  20. 6 6
      resources/views/admin/auth/login.blade.php
  21. 14 14
      resources/views/admin/base/index/index.blade.php
  22. 3 3
      resources/views/admin/base/index/welcome.blade.php
  23. 2 2
      resources/views/admin/base/photos/index.blade.php
  24. 3 3
      resources/views/admin/base/user/edit.blade.php
  25. 19 19
      resources/views/admin/layout.blade.php
  26. 1 1
      routes/web.php
  27. 0 156
      vendor/composer/composer/doc/00-intro.md
  28. 0 266
      vendor/composer/composer/doc/01-basic-usage.md
  29. 0 153
      vendor/composer/composer/doc/02-libraries.md
  30. 0 931
      vendor/composer/composer/doc/03-cli.md
  31. 0 923
      vendor/composer/composer/doc/04-schema.md
  32. 0 713
      vendor/composer/composer/doc/05-repositories.md
  33. 0 277
      vendor/composer/composer/doc/06-config.md
  34. 0 35
      vendor/composer/composer/doc/07-community.md
  35. 0 105
      vendor/composer/composer/doc/articles/aliases.md
  36. 0 111
      vendor/composer/composer/doc/articles/autoloader-optimization.md
  37. 0 204
      vendor/composer/composer/doc/articles/custom-installers.md
  38. 0 343
      vendor/composer/composer/doc/articles/handling-private-packages-with-satis.md
  39. 0 59
      vendor/composer/composer/doc/articles/http-basic-authentication.md
  40. 0 285
      vendor/composer/composer/doc/articles/plugins.md
  41. 0 293
      vendor/composer/composer/doc/articles/scripts.md
  42. 0 309
      vendor/composer/composer/doc/articles/troubleshooting.md
  43. 0 110
      vendor/composer/composer/doc/articles/vendor-binaries.md
  44. 0 230
      vendor/composer/composer/doc/articles/versions.md
  45. 0 55
      vendor/composer/composer/doc/dev/DefaultPolicy.md
  46. 0 50
      vendor/composer/composer/doc/faqs/how-do-i-install-a-package-to-a-custom-path-for-my-framework.md
  47. 0 42
      vendor/composer/composer/doc/faqs/how-to-install-composer-programmatically.md
  48. 0 19
      vendor/composer/composer/doc/faqs/how-to-install-untrusted-packages-safely.md
  49. 0 32
      vendor/composer/composer/doc/faqs/should-i-commit-the-dependencies-in-my-vendor-directory.md
  50. 0 4
      vendor/composer/composer/doc/faqs/which-version-numbering-system-does-composer-itself-use.md
  51. 0 21
      vendor/composer/composer/doc/faqs/why-are-unbound-version-constraints-a-bad-idea.md
  52. 0 21
      vendor/composer/composer/doc/faqs/why-are-version-constraints-combining-comparisons-and-wildcards-a-bad-idea.md
  53. 0 35
      vendor/composer/composer/doc/faqs/why-can't-composer-load-repositories-recursively.md
  54. 0 22
      vendor/composer/composer/doc/fixtures/fixtures.md
  55. 0 158
      vendor/composer/composer/doc/fixtures/repo-composer-plain/packages.json
  56. 0 50
      vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/bar/baz$923363b3c22e73abb2e3fd891c8156dd4d0821a97fd3e428bc910833e3e46dbe.json
  57. 0 77
      vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/foo/bar$4baabb3303afa3e34a4d3af18fb138e5f3b79029c1f8d9ab5b477ea15776ba0a.json
  58. 0 50
      vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/gar/nix$5d210670cb46c8364c8e3fb449967b9bea558b971e5b082f330ae4f1d484c321.json
  59. 0 16
      vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/provider-active$1893a061e579543822389ecd12d791c612db0c05e22d90e9286e233cacd86ed8.json
  60. 0 22
      vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/qux/quux$c142d1a07ca354be46b613f59f1d601923a5a00ccc5fcce50a77ecdd461eb72d.json
  61. 0 9
      vendor/composer/composer/doc/fixtures/repo-composer-with-providers/packages.json
  62. 0 95
      vendor/monolog/monolog/README.md
  63. BIN
      wxApp/huace1.0/.DS_Store
  64. 0 120
      wxApp/huace1.0/app.js
  65. 0 29
      wxApp/huace1.0/app.json
  66. 0 22
      wxApp/huace1.0/app.wxss
  67. BIN
      wxApp/huace1.0/components/.DS_Store
  68. 0 21
      wxApp/huace1.0/components/tabbar/tabbar.wxml
  69. 0 49
      wxApp/huace1.0/components/tabbar/tabbar.wxss
  70. 0 12
      wxApp/huace1.0/components/title/title.wxml
  71. 0 32
      wxApp/huace1.0/components/title/title.wxss
  72. 0 16
      wxApp/huace1.0/components/title2/title.wxml
  73. 0 54
      wxApp/huace1.0/components/title2/title.wxss
  74. 0 21
      wxApp/huace1.0/components/usermsg/usermsg.wxml
  75. 0 76
      wxApp/huace1.0/components/usermsg/usermsg.wxss
  76. 0 23
      wxApp/huace1.0/components/usermsg2/usermsg.wxml
  77. 0 76
      wxApp/huace1.0/components/usermsg2/usermsg.wxss
  78. BIN
      wxApp/huace1.0/ec-canvas/.DS_Store
  79. 0 120
      wxApp/huace1.0/ec-canvas/ec-canvas.js
  80. 0 4
      wxApp/huace1.0/ec-canvas/ec-canvas.json
  81. 0 4
      wxApp/huace1.0/ec-canvas/ec-canvas.wxml
  82. 0 4
      wxApp/huace1.0/ec-canvas/ec-canvas.wxss
  83. 0 0
      wxApp/huace1.0/ec-canvas/echarts.js
  84. 0 97
      wxApp/huace1.0/ec-canvas/wx-canvas.js
  85. BIN
      wxApp/huace1.0/images/back.png
  86. BIN
      wxApp/huace1.0/images/baricon1.png
  87. BIN
      wxApp/huace1.0/images/baricon2.png
  88. BIN
      wxApp/huace1.0/images/baricon3.png
  89. BIN
      wxApp/huace1.0/images/bg.png
  90. BIN
      wxApp/huace1.0/images/bg2.png
  91. BIN
      wxApp/huace1.0/images/in.png
  92. BIN
      wxApp/huace1.0/images/leida.gif
  93. BIN
      wxApp/huace1.0/images/phone.png
  94. BIN
      wxApp/huace1.0/images/set.png
  95. BIN
      wxApp/huace1.0/images/shijian@2x.png
  96. BIN
      wxApp/huace1.0/images/time.png
  97. BIN
      wxApp/huace1.0/images/time2.png
  98. BIN
      wxApp/huace1.0/images/userimg.png
  99. BIN
      wxApp/huace1.0/img/.DS_Store
  100. BIN
      wxApp/huace1.0/img/BJ.png

+ 3 - 3
.env

xqd
@@ -1,9 +1,9 @@
 APP_ENV=local
 APP_KEY=base64:n2nhmq6W1vnd/y44Xf/7Iq480YcmUywEuuzwK8ajgRc=
-APP_DEBUG=true
+APP_DEBUG=false
 APP_LOG_LEVEL=debug
-APP_URL=https://ins/addons/furnitureWe7/public/
-CDN_URL=https://t6.9026.com/addons/furnitureWe7/public/
+APP_URL=http://local.we7new.com/addons/online_album/public/
+CDN_URL=http://local.we7new.com/addons/online_album/public/
 
 DB_CONNECTION=mysql
 DB_HOST=127.0.0.1

+ 2 - 2
app/Helper/functions.inc.php

xqd xqd
@@ -622,7 +622,7 @@ function formPost($url, $post_data=array(), $timeout=60, $userpwd = null)
  * @return string
  */
 function editor($textareaid = 'content', $getParam = array(), $options = array()) {
-    $strUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'';
+    $strUri = session()->get('is_we7')=='true'?'/addons/online_album/public':'';
     $getParam['_token']     = csrf_token();
     $getParam['elementid']  = isset($getParam['elementid'])?$getParam['elementid']:'elementid';
     $getParam['KindEditor'] = isset($getParam['KindEditor'])?$getParam['KindEditor']:true;
@@ -665,7 +665,7 @@ HTML;
 }
 
 function ueditor() {
-    $strUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'';
+    $strUri = session()->get('is_we7')=='true'?'/addons/online_album/public':'';
     $editer = <<<HTML
     <!-- 配置文件 -->
     <script type="text/javascript" src="$strUri/base/neditor-1.5.3/neditor.config.js"></script>

+ 3 - 2
app/Http/Controllers/Admin/Base/IndexController.php

xqd xqd xqd
@@ -35,6 +35,8 @@ class IndexController extends Controller
 
     function index()
     {
+
+
         if ($this->_user['is_root']) {
             $obj = new Menus();
             $menus = $obj->search(array('level'=>2,'display'=>1),$orderby=array('sort'=>'desc'),$pagesize = 100000);
@@ -50,7 +52,6 @@ class IndexController extends Controller
     }
     function welcome()
     {
-
         $userAuth = Auth::guard('admin')->user();
         if ($userAuth->is_root == 1 && !empty(request('store_id'))) {
             session()->put('store_id', request('store_id'));
@@ -316,7 +317,7 @@ class IndexController extends Controller
 //            'fur_goods'=>
 //                ['name' => '产品管理', 'path' => "#", 'ico' => 'fa fa-bar-chart-o', '_child' =>
 //                    [
-//                        ['name' => '产品列表', 'path' => '/furnitureWe7/Goods/index', 'ico' => ''],
+//                        ['name' => '产品列表', 'path' => '/online_album/Goods/index', 'ico' => ''],
 //                    ]
 //                ],
 //            'fur_user'=>

+ 1 - 1
app/Http/Controllers/Admin/Controller.php

xqd
@@ -157,7 +157,7 @@ abstract class Controller extends BaseController
             }
             $urlHtml .= '&nbsp;<a  class="btn btn-primary"  href="' . $u . '" >' . $url['title'] . '</a>';
         }
-        $u = session()->get("is_we7")=="true"?"/addons/furnitureWe7/public":"";
+        $u = session()->get("is_we7")=="true"?"/addons/online_album/public":"";
         $html ='<!DOCTYPE html>
                 <html>
                 <head>

+ 6 - 6
app/Widget/Tools/FileUpload.php

xqd xqd xqd
@@ -19,8 +19,8 @@ class FileUpload {
      */
     public function single($folder, $id, $name = "data[file]", $file = "", $option = [], $param = [])
     {
-        $strUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'';
-        $serverUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public/?route=':'/';
+        $strUri = session()->get('is_we7')=='true'?'/addons/online_album/public':'';
+        $serverUri = session()->get('is_we7')=='true'?'/addons/online_album/public/?route=':'/';
         $str_U = session()->get('is_we7')=='true'?'&':'?';
         $file_types = 'jpg|jpeg|gif|png|bmp|doc|docx|xls|xlsx|ppt|htm|html|php|txt|zip|rar|gz|bz2';
         $option['position'] = isset($option['position']) ? $option['position'] : "alioss";
@@ -118,8 +118,8 @@ EOF;
 
     public function single2($folder, $id, $name="data", $file="", $option=[]){
         $folder = urlencode($folder);
-        $strUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'';
-        $serverUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public/?route=':'/';
+        $strUri = session()->get('is_we7')=='true'?'/addons/online_album/public':'';
+        $serverUri = session()->get('is_we7')=='true'?'/addons/online_album/public/?route=':'/';
         $str_U = session()->get('is_we7')=='true'?'&':'?';
         $imgHtml =  "";
         $option['callback'] = isset($option['callback']) ? $option['callback'] : "";
@@ -180,8 +180,8 @@ EOF;
     }
 
     public function multi2($folder, $id, $name="data[image]", $files=[], $option=[]){
-        $strUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'';
-        $serverUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public/?route=':'/';
+        $strUri = session()->get('is_we7')=='true'?'/addons/online_album/public':'';
+        $serverUri = session()->get('is_we7')=='true'?'/addons/online_album/public/?route=':'/';
         $str_U = session()->get('is_we7')=='true'?'&':'?';
         $folder = urlencode($folder);
         $imgHtml =  "";

+ 14 - 14
app/Widget/Tools/ImgUpload.php

xqd xqd xqd xqd xqd xqd xqd
@@ -22,8 +22,8 @@ class ImgUpload {
      */
     public function single($id, $name = "data[image]", $file = '')
     {
-        $strUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'';
-        $serverUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public/?route=':'/';
+        $strUri = session()->get('is_we7')=='true'?'/addons/online_album/public':'';
+        $serverUri = session()->get('is_we7')=='true'?'/addons/online_album/public/?route=':'/';
         $str_U = session()->get('is_we7')=='true'?'&':'?';
         $url = U("/Base/Photos/index");
         $imgHtml = "";
@@ -101,8 +101,8 @@ EOF;
 
 
     public function single2($folder, $id, $name="data", $file="", $option=[]){
-        $strUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'';
-        $serverUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public/?route=':'/';
+        $strUri = session()->get('is_we7')=='true'?'/addons/online_album/public':'';
+        $serverUri = session()->get('is_we7')=='true'?'/addons/online_album/public/?route=':'/';
         $str_U = session()->get('is_we7')=='true'?'&':'?';
         $folder = urlencode($folder);
         $imgHtml =  "";
@@ -175,8 +175,8 @@ EOF;
 
     public function single3($text, $folder, $id, $option = [])
     {
-        $strUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'';
-        $serverUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public/?route=':'/';
+        $strUri = session()->get('is_we7')=='true'?'/addons/online_album/public':'';
+        $serverUri = session()->get('is_we7')=='true'?'/addons/online_album/public/?route=':'/';
         $str_U = session()->get('is_we7')=='true'?'&':'?';
         $folder = urlencode($folder);
         $trigger = $id . '-trigger';
@@ -334,8 +334,8 @@ EOF;
      */
     public function multi($id, $name = "data[image]", $imgs = [])
     {
-        $strUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'';
-        $serverUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public/?route=':'/';
+        $strUri = session()->get('is_we7')=='true'?'/addons/online_album/public':'';
+        $serverUri = session()->get('is_we7')=='true'?'/addons/online_album/public/?route=':'/';
         $str_U = session()->get('is_we7')=='true'?'&':'?';
         $url = U("/Base/Photos/index");
         $imgHtml = "";
@@ -417,8 +417,8 @@ EOF;
 
     public function multi2($folder, $id, $name="data[image]", $imgs=[], $option=[]){
         $folder = urlencode($folder);
-        $strUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'';
-        $serverUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public/?route=':'/';
+        $strUri = session()->get('is_we7')=='true'?'/addons/online_album/public':'';
+        $serverUri = session()->get('is_we7')=='true'?'/addons/online_album/public/?route=':'/';
         $str_U = session()->get('is_we7')=='true'?'&':'?';
         $imgHtml =  "";
         $option['callback'] = isset($option['callback']) ? $option['callback'] : "";
@@ -503,8 +503,8 @@ EOF;
      */
     public function multi3($text, $folder, $id, $option = [])
     {
-        $strUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'';
-        $serverUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public/?route=':'/';
+        $strUri = session()->get('is_we7')=='true'?'/addons/online_album/public':'';
+        $serverUri = session()->get('is_we7')=='true'?'/addons/online_album/public/?route=':'/';
         $str_U = session()->get('is_we7')=='true'?'&':'?';
         $folder = urlencode($folder);
         $trigger = $id . '-trigger';
@@ -656,8 +656,8 @@ EOF;
      */
     public function upload($text, $folder, $id, $option = [])
     {
-        $strUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'';
-        $serverUri = session()->get('is_we7')=='true'?'/addons/furnitureWe7/public/?route=':'/';
+        $strUri = session()->get('is_we7')=='true'?'/addons/online_album/public':'';
+        $serverUri = session()->get('is_we7')=='true'?'/addons/online_album/public/?route=':'/';
         $str_U = session()->get('is_we7')=='true'?'&':'?';
         $folder = urlencode($folder);
         $trigger = $id . '-trigger';

+ 4 - 1
module.php

xqd
@@ -11,7 +11,10 @@ $entry = '/public/';
 
 if (file_exists(__DIR__ . $entry)) {
     global $_W;
-
+    $path = __DIR__ . "/.env";
+    $content = file_get_contents($path);
+    $content = str_replace('http://local.album.com/', $_W['siteroot'], $content);
+    file_put_contents($path, $content);
     $wUser = [
         'uid' => $_W['user']['uid'],
         'name' => $_W['user']['name'],

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 3 - 3
public/apidoc/api_data.js


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 3 - 3
public/apidoc/api_data.json


+ 1 - 1
public/base/css/style.min.css

xqd
@@ -1,4 +1,4 @@
-@import url("/addons/furnitureWe7/public/base/fonts.useso.com/css-family=Open+Sans-300,400,600,700&lang=en.css");
+@import url("/addons/online_album/public/base/fonts.useso.com/css-family=Open+Sans-300,400,600,700&lang=en.css");
 /*@import url("/base/fonts.useso.com/css-family=Open+Sans-300,400,600,700&lang=en.css");*/
 h1,h2,h3,h4,h5,h6 {
 	font-weight:100

+ 4 - 4
public/base/plugins/imguploader/uploader.js

xqd xqd xqd
@@ -14,10 +14,10 @@ var uploadObj = [];
 function upload(obj){
 
     this.upobj = {
-        UploaderUrl : obj.UploaderUrl ? obj.UploaderUrl : "/addons/furnitureWe7/public/base/js/plugins/webuploader/webuploader.min.js",
+        UploaderUrl : obj.UploaderUrl ? obj.UploaderUrl : "/addons/online_album/public/base/js/plugins/webuploader/webuploader.min.js",
         //UploaderUrl : obj.UploaderUrl ? obj.UploaderUrl : "/base/js/plugins/webuploader/webuploader.min.js",
         //UploaderServer : obj.UploaderServer ? obj.UploaderServer :"/api/attachment/webupload?elementid=&watermark=" + obj.UploadWatermark + "&_time=" + Math.random() ,
-        UploaderServer : obj.UploaderServer ? obj.UploaderServer :"/addons/furnitureWe7/public/?route=api/attachment/webupload?elementid=&watermark=" + obj.UploadWatermark + "&_time=" + Math.random() ,
+        UploaderServer : obj.UploaderServer ? obj.UploaderServer :"/addons/online_album/public/?route=api/attachment/webupload?elementid=&watermark=" + obj.UploadWatermark + "&_time=" + Math.random() ,
         UploaderPick : obj.UploaderPick ? obj.UploaderPick : "#upload01" ,
         UploaderMax  : obj.UploaderMax ? obj.UploaderMax : 100,
         UploaderSingle  : obj.UploaderSingle ? obj.UploaderSingle : false,
@@ -59,7 +59,7 @@ upload.prototype.loadCom = function() {
         div.layout_upload ul.ullit li{float:left;width:150px;height:150px;position:relative;z-index:5;zoom:1;margin:0 10px 10px 0}\
         div.layout_upload ul.ullit li em{font-weight: 100;opacity: 1;box-shadow: none;font-size: 12px;width:15px;height:15px;cursor:pointer;font-style:normal;line-height:15px;border-radius:15px;-moz-border-radius:15px;-webkit-border-radius:15px;-o-border-radius:15px;-ms-border-radius:15px;background:#999;color:#fff;text-align:center;position:absolute;z-index:30;zoom:1;right:-7px;top:-7px}\
         div.layout_upload ul.ullit li img{width:100%;height:auto;display:block}\
-        div.layout_upload ul.ullit li .layout_upload_but{width:150px;height:150px;border: 5px #eee solid;display:block;line-height:60px;text-align:center;background:url(/addons/furnitureWe7/public/base/plugins/imguploader/img/uploadCamera.png) no-repeat center center #fefefe}\
+        div.layout_upload ul.ullit li .layout_upload_but{width:150px;height:150px;border: 5px #eee solid;display:block;line-height:60px;text-align:center;background:url(/addons/online_album/public/base/plugins/imguploader/img/uploadCamera.png) no-repeat center center #fefefe}\
         div.layout_upload ul.ullit li .layout_upload_but .webuploader-pick{height:150px; background:none;}\
         div.layout_upload ul.ullit li .rate{width:100%;height:4px;background:#9e9e9e;overflow:hidden;position:absolute;z-index:800;zoom:1;left:0;bottom:-8px;display:none}\
         div.layout_upload ul.ullit li .rate span{overflow:hidden;width:0;height:4px;background:#36c3be;display:block;transition:all 400ms ease-out 0s;-o-transition:all 400ms ease-out 0s;-moz-transition:all 400ms ease-out 0s;-webkit-transition:all 400ms ease-out 0s;transform-origin:center}\
@@ -87,7 +87,7 @@ upload.prototype.upLoader=function(){
     // 百度上传插件初始化
     var uploader = WebUploader.create({
         // swf文件路径
-        swf:'/addons/furnitureWe7/public/base/plugins/imguploader/uploader.swf',
+        swf:'/addons/online_album/public/base/plugins/imguploader/uploader.swf',
         // swf:'/base/plugins/imguploader/uploader.swf',
 
         // 文件接收服务端。

+ 1 - 1
public/base/plugins/webuploader/webuploader.css

xqd
@@ -30,7 +30,7 @@ div.layout_upload ul,div.layout_upload li{ padding: 0px; margin: 0px;list-style-
 div.layout_upload ul.ullit li{float:left;width:150px;height:150px;position:relative;z-index:5;zoom:1;margin:0 10px 10px 0}
 div.layout_upload ul.ullit li em{font-weight: 100;opacity: 1;box-shadow: none;font-size: 12px;width:15px;height:15px;cursor:pointer;font-style:normal;line-height:15px;border-radius:15px;-moz-border-radius:15px;-webkit-border-radius:15px;-o-border-radius:15px;-ms-border-radius:15px;background:#999;color:#fff;text-align:center;position:absolute;z-index:30;zoom:1;right:-7px;top:-7px}
 div.layout_upload ul.ullit li img{width:100%;height:auto;display:block}
-div.layout_upload ul.ullit li .layout_upload_but{width:150px;height:150px;border: 5px #eee solid;display:block;line-height:60px;text-align:center;background:url(/addons/furnitureWe7/public/base/plugins/imguploader/img/uploadCamera.png) no-repeat center center #fefefe}
+div.layout_upload ul.ullit li .layout_upload_but{width:150px;height:150px;border: 5px #eee solid;display:block;line-height:60px;text-align:center;background:url(/addons/online_album/public/base/plugins/imguploader/img/uploadCamera.png) no-repeat center center #fefefe}
 /*div.layout_upload ul.ullit li .layout_upload_but{width:150px;height:150px;border: 5px #eee solid;display:block;line-height:60px;text-align:center;background:url(/base/plugins/imguploader/img/uploadCamera.png) no-repeat center center #fefefe}*/
 div.layout_upload ul.ullit li .layout_upload_but .webuploader-pick{height:150px; background:none;}
 div.layout_upload ul.ullit li .rate{width:100%;height:4px;background:#9e9e9e;overflow:hidden;position:absolute;z-index:800;zoom:1;left:0;bottom:-8px;display:none}

+ 2 - 2
resources/views/admin/album/agent/index.blade.php

xqd
@@ -120,8 +120,8 @@
 		</div>
 	</div>
 </div>
-<link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/plugins/toastr/toastr.min.css" rel="stylesheet">
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/plugins/toastr/toastr.min.js"></script>
+<link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/plugins/toastr/toastr.min.css" rel="stylesheet">
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/plugins/toastr/toastr.min.js"></script>
 <script>
     toastr.options.positionClass = 'toast-bottom-center';
     var checkArr = [];

+ 3 - 3
resources/views/admin/album/manufacturer/edit-all.blade.php

xqd
@@ -1,10 +1,10 @@
 @extends('admin.layout')
 @section('header')
 
-    <link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/fileinput.css" media="all" rel="stylesheet" type="text/css" />
+    <link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/fileinput.css" media="all" rel="stylesheet" type="text/css" />
 
-    <script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/fileinput.js" type="text/javascript"></script>
-    <script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/fileinput_locale_zh.js" type="text/javascript"></script>
+    <script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/fileinput.js" type="text/javascript"></script>
+    <script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/fileinput_locale_zh.js" type="text/javascript"></script>
 
 @endsection
 @section('content')

+ 3 - 3
resources/views/admin/album/manufacturer/edit.blade.php

xqd
@@ -1,10 +1,10 @@
 @extends('admin.layout')
 @section('header')
 
-    <link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/fileinput.css" media="all" rel="stylesheet" type="text/css" />
+    <link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/fileinput.css" media="all" rel="stylesheet" type="text/css" />
 
-    <script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/fileinput.js" type="text/javascript"></script>
-    <script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/fileinput_locale_zh.js" type="text/javascript"></script>
+    <script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/fileinput.js" type="text/javascript"></script>
+    <script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/fileinput_locale_zh.js" type="text/javascript"></script>
 
 @endsection
 @section('content')

+ 3 - 3
resources/views/admin/album/manufacturer/furniture-platform.blade.php

xqd
@@ -1,10 +1,10 @@
 @extends('admin.layout')
 @section('header')
 
-    <link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/fileinput.css" media="all" rel="stylesheet" type="text/css" />
+    <link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/fileinput.css" media="all" rel="stylesheet" type="text/css" />
 
-    <script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/fileinput.js" type="text/javascript"></script>
-    <script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/fileinput_locale_zh.js" type="text/javascript"></script>
+    <script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/fileinput.js" type="text/javascript"></script>
+    <script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/fileinput_locale_zh.js" type="text/javascript"></script>
 
 @endsection
 @section('content')

+ 3 - 3
resources/views/admin/album/manufacturer/furniture-system.blade.php

xqd
@@ -1,10 +1,10 @@
 @extends('admin.layout')
 @section('header')
 
-    <link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/fileinput.css" media="all" rel="stylesheet" type="text/css" />
+    <link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/fileinput.css" media="all" rel="stylesheet" type="text/css" />
 
-    <script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/fileinput.js" type="text/javascript"></script>
-    <script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/fileinput_locale_zh.js" type="text/javascript"></script>
+    <script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/fileinput.js" type="text/javascript"></script>
+    <script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/fileinput_locale_zh.js" type="text/javascript"></script>
 
 @endsection
 @section('content')

+ 3 - 3
resources/views/admin/album/manufacturer/platform-edit.blade.php

xqd
@@ -1,10 +1,10 @@
 @extends('admin.layout')
 @section('header')
 
-    <link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/fileinput.css" media="all" rel="stylesheet" type="text/css" />
+    <link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/fileinput.css" media="all" rel="stylesheet" type="text/css" />
 
-    <script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/fileinput.js" type="text/javascript"></script>
-    <script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/fileinput_locale_zh.js" type="text/javascript"></script>
+    <script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/fileinput.js" type="text/javascript"></script>
+    <script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/fileinput_locale_zh.js" type="text/javascript"></script>
 
 @endsection
 @section('content')

+ 3 - 3
resources/views/admin/album/product/edit.blade.php

xqd
@@ -1,10 +1,10 @@
 @extends('admin.layout')
 @section('header')
 
-    <link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/fileinput.css" media="all" rel="stylesheet" type="text/css" />
+    <link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/fileinput.css" media="all" rel="stylesheet" type="text/css" />
 
-    <script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/fileinput.js" type="text/javascript"></script>
-    <script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/fileinput_locale_zh.js" type="text/javascript"></script>
+    <script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/fileinput.js" type="text/javascript"></script>
+    <script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/fileinput_locale_zh.js" type="text/javascript"></script>
 
 @endsection
 @section('content')

+ 6 - 6
resources/views/admin/auth/login.blade.php

xqd xqd
@@ -6,10 +6,10 @@
     <meta name="renderer" content="webkit">
     <title>管理后台</title>
     <meta name="keywords" content="管理后台">
-    <link href="/addons/furnitureWe7/public/base/css/bootstrap.min.css" rel="stylesheet">
-    <link href="/addons/furnitureWe7/public/base/css/font-awesome.min.css"  rel="stylesheet">
-    <link href="/addons/furnitureWe7/public/base/css/animate.min.css" rel="stylesheet">
-    <link href="/addons/furnitureWe7/public/base/css/style.min.css"  rel="stylesheet">
+    <link href="/addons/online_album/public/base/css/bootstrap.min.css" rel="stylesheet">
+    <link href="/addons/online_album/public/base/css/font-awesome.min.css"  rel="stylesheet">
+    <link href="/addons/online_album/public/base/css/animate.min.css" rel="stylesheet">
+    <link href="/addons/online_album/public/base/css/style.min.css"  rel="stylesheet">
 </head>
 
 <body class="gray-bg">
@@ -40,8 +40,8 @@
     </div>
 
 <!-- 全局js -->
-<script src="/addons/furnitureWe7/public/base/js/jquery-2.1.1.min.js" ></script>
-<script src="/addons/furnitureWe7/public/base/js/bootstrap.min.js?v=3.4.0" ></script>
+<script src="/addons/online_album/public/base/js/jquery-2.1.1.min.js" ></script>
+<script src="/addons/online_album/public/base/js/bootstrap.min.js?v=3.4.0" ></script>
 
 
 <!--统计代码,可删除-->

+ 14 - 14
resources/views/admin/base/index/index.blade.php

xqd xqd xqd
@@ -14,10 +14,10 @@
     </script>
     <![endif]-->
 
-    <link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/bootstrap.min.css?v=3.4.0" rel="stylesheet">
-    <link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/font-awesome.min.css?v=4.3.0" rel="stylesheet">
-    <link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/animate.min.css" rel="stylesheet">
-    <link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/style.min.css?v={{config("sys.version")}}" rel="stylesheet">
+    <link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/bootstrap.min.css?v=3.4.0" rel="stylesheet">
+    <link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/font-awesome.min.css?v=4.3.0" rel="stylesheet">
+    <link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/animate.min.css" rel="stylesheet">
+    <link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/style.min.css?v={{config("sys.version")}}" rel="stylesheet">
 </head>
 
 <body class="fixed-sidebar full-height-layout gray-bg">
@@ -119,14 +119,14 @@
                     <li class="J_tabCloseOther"><a>关闭其他选项卡</a></li>
                 </ul>
             </div>
-            <a href="/addons/furnitureWe7/public/?route=Admin/Auth/Login/logout" class="roll-nav roll-right J_tabExit"><i class="fa fa fa-sign-out"></i> 退出</a>
+            <a href="/addons/online_album/public/?route=Admin/Auth/Login/logout" class="roll-nav roll-right J_tabExit"><i class="fa fa fa-sign-out"></i> 退出</a>
         </div>
         <div class="row J_mainContent" id="content-main">
             <iframe class="J_iframe" name="iframe0" width="100%" height="100%" src="{{ U('Base/Index/welcome')}}"
                     frameborder="0" data-id="index_v1.html" seamless></iframe>
         </div>
         <div class="footer">
-            <div class="pull-right">&copy; 2014-2019 <a href="http://www.9026.com/" target="_blank">思维定制</a>
+            <div class="pull-right"><a href="http://www.w7.cc/" target="_blank">Powered by 微擎 v2.5.4 &copy; 2014-2018 www.w7.cc</a>
             </div>
         </div>
     </div>
@@ -153,18 +153,18 @@
 <!--右侧边栏结束-->
 </div>
 <!-- 全局js -->
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/jquery-2.1.1.min.js?v={{config("sys.version")}}"></script>
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/bootstrap.min.js?v=3.4.0"></script>
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/plugins/metisMenu/jquery.metisMenu.js?v={{config("sys.version")}}"></script>
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/plugins/slimscroll/jquery.slimscroll.min.js?v={{config("sys.version")}}"></script>
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/plugins/layer/layer.min.js?v={{config("sys.version")}}"></script>
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/jquery-2.1.1.min.js?v={{config("sys.version")}}"></script>
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/bootstrap.min.js?v=3.4.0"></script>
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/plugins/metisMenu/jquery.metisMenu.js?v={{config("sys.version")}}"></script>
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/plugins/slimscroll/jquery.slimscroll.min.js?v={{config("sys.version")}}"></script>
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/plugins/layer/layer.min.js?v={{config("sys.version")}}"></script>
 
 <!-- 自定义js -->
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/hplus.min.js?v=3.2.0"></script>
-<script type="text/javascript" src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/contabs.min.js?v={{config("sys.version")}}"></script>
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/hplus.min.js?v=3.2.0"></script>
+<script type="text/javascript" src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/contabs.min.js?v={{config("sys.version")}}"></script>
 
 <!-- 第三方插件 -->
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/plugins/pace/pace.min.js?v={{config("sys.version")}}"></script>
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/plugins/pace/pace.min.js?v={{config("sys.version")}}"></script>
 
 <script>
     $(function () {

+ 3 - 3
resources/views/admin/base/index/welcome.blade.php

xqd xqd
@@ -1,8 +1,8 @@
 @extends('admin.layout')
 
 @section('content')
-    <script type="text/javascript" src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/echarts.min.js"></script>
-    {{--<script type="text/javascript" src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/bmap.min.js"></script>--}}
+    <script type="text/javascript" src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/echarts.min.js"></script>
+    {{--<script type="text/javascript" src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/bmap.min.js"></script>--}}
     <script type="text/javascript" src="https://api.map.baidu.com/api?v=2.0&ak=5N76rPnIjhk6NXtinNK1zAkQd9la7MNH"></script>
     <style>
         .statistical {
@@ -330,7 +330,7 @@
 
 
     </script>
-    <script type="text/javascript" src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/china.js"></script>
+    <script type="text/javascript" src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/china.js"></script>
     <script type="text/javascript">
         var dataMap = "{{ $data }}";
         dataMap = JSON.parse(dataMap.replace(/&quot;/g,'\"'));

+ 2 - 2
resources/views/admin/base/photos/index.blade.php

xqd
@@ -46,8 +46,8 @@
 			color: rgba(0, 0, 0, 0.85);
 		}
 	</style>
-	<script type="text/javascript" src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/neditor-1.5.3/dialogs/image/image.js"></script>
-	<script type="text/javascript" src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/neditor-1.5.3/dialogs/internal.js"></script>
+	<script type="text/javascript" src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/neditor-1.5.3/dialogs/image/image.js"></script>
+	<script type="text/javascript" src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/neditor-1.5.3/dialogs/internal.js"></script>
 @endsection
 
 @section('content')

+ 3 - 3
resources/views/admin/base/user/edit.blade.php

xqd
@@ -145,9 +145,9 @@
         </div>
     </div>
 </div>
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/vue.js"></script>
-<link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/plugins/toastr/toastr.min.css" rel="stylesheet">
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/plugins/toastr/toastr.min.js"></script>
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/vue.js"></script>
+<link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/plugins/toastr/toastr.min.css" rel="stylesheet">
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/plugins/toastr/toastr.min.js"></script>
 <script>
     toastr.options.positionClass = 'toast-bottom-center';
     var store_id = "{{ $store['store_id'] or '0'}}";

+ 19 - 19
resources/views/admin/layout.blade.php

xqd xqd
@@ -10,25 +10,25 @@
     <!-- CSRF Token -->
     <meta name="csrf-token" content="{{ csrf_token() }}">
 
-    <link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/bootstrap.min.css?v=3.4.0.css" rel="stylesheet">
-    <link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/font-awesome.min.css?v=4.3.0.css" rel="stylesheet">
+    <link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/bootstrap.min.css?v=3.4.0.css" rel="stylesheet">
+    <link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/font-awesome.min.css?v=4.3.0.css" rel="stylesheet">
 
     <!-- Data Tables -->
-    <link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/plugins/dataTables/dataTables.bootstrap.css"rel="stylesheet">
+    <link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/plugins/dataTables/dataTables.bootstrap.css"rel="stylesheet">
 
-    <link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/animate.min.css?v={{config("sys.version")}}"  rel="stylesheet">
-    <link href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/css/style.min.css?v={{config("sys.version")}}" rel="stylesheet">
+    <link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/animate.min.css?v={{config("sys.version")}}"  rel="stylesheet">
+    <link href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/css/style.min.css?v={{config("sys.version")}}" rel="stylesheet">
 
     <!-- fine-uploader -->
-<!--     <link rel="stylesheet" href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/plugins/fine-uploader/fine-uploader-new.min.css"> -->
+<!--     <link rel="stylesheet" href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/plugins/fine-uploader/fine-uploader-new.min.css"> -->
 
     <!-- cropperjs -->
-    <link rel="stylesheet" href="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/plugins/cropperjs/cropper.min.css">
+    <link rel="stylesheet" href="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/plugins/cropperjs/cropper.min.css">
 
     <!-- 全局js -->
-    <script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/jquery-2.1.1.min.js?v={{config("sys.version")}}" ></script>
-    <script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/bootstrap.min.js?v=3.4.0" ></script>
-    <script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/layer/layer.js?v={{config("sys.version")}}"></script>
+    <script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/jquery-2.1.1.min.js?v={{config("sys.version")}}" ></script>
+    <script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/bootstrap.min.js?v=3.4.0" ></script>
+    <script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/layer/layer.js?v={{config("sys.version")}}"></script>
 
     @yield('header')
 </head>
@@ -37,21 +37,21 @@
 @yield('content')
 
 <!-- layer Date -->
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/plugins/laydate/laydate.js?v={{config("sys.version")}}" type="text/javascript" ></script>
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/plugins/laydate/laydate.js?v={{config("sys.version")}}" type="text/javascript" ></script>
 <script type="text/javascript"> !function(){ laydate.skin('molv'); }(); </script>
 
 <!-- 自定义js -->
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/content.min.js?v=1.0.0" ></script>
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/content.min.js?v=1.0.0" ></script>
 
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/jquery-ui-1.10.4.min.js"></script>
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/jquery-ui-1.10.4.min.js"></script>
 
 <!-- jQuery Validation plugin javascript-->
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/plugins/validate/jquery.validate.min.js?v={{config("sys.version")}}" ></script>
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/plugins/validate/validate_custom.js?v={{config("sys.version")}}" ></script>
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/plugins/validate/messages_zh.min.js?v={{config("sys.version")}}" ></script>
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/js/jquery.tableSort.js?v={{config("sys.version")}}" ></script>
-<!--     <script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/plugins/fine-uploader/fine-uploader.min.js"></script> -->
-<script src="{{ session()->get('is_we7')=='true'?'/addons/furnitureWe7/public':'' }}/base/plugins/cropperjs/cropper.min.js"></script>
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/plugins/validate/jquery.validate.min.js?v={{config("sys.version")}}" ></script>
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/plugins/validate/validate_custom.js?v={{config("sys.version")}}" ></script>
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/plugins/validate/messages_zh.min.js?v={{config("sys.version")}}" ></script>
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/js/jquery.tableSort.js?v={{config("sys.version")}}" ></script>
+<!--     <script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/plugins/fine-uploader/fine-uploader.min.js"></script> -->
+<script src="{{ session()->get('is_we7')=='true'?'/addons/online_album/public':'' }}/base/plugins/cropperjs/cropper.min.js"></script>
 <script>
     $.ajaxSetup({
         headers: { 'X-CSRF-TOKEN' : '{{ csrf_token() }}' }

+ 1 - 1
routes/web.php

xqd
@@ -109,7 +109,7 @@ $apiRoute = [
     'Api/V1/Album/albumGoods' => 'post',
     'Api/V1/Album/albumGoods' => 'post',
 ];*/
-Route::get('/addons/furnitureWe7/public/', [
+Route::get('/addons/online_album/public/', [
     'as' => 'attachment.download',
     'uses' => 'Web\AttachmentController@download',
 ]);

+ 0 - 156
vendor/composer/composer/doc/00-intro.md

xqd
@@ -1,156 +0,0 @@
-# Introduction
-
-Composer is a tool for dependency management in PHP. It allows you to declare
-the libraries your project depends on and it will manage (install/update) them
-for you.
-
-## Dependency management
-
-Composer is **not** a package manager in the same sense as Yum or Apt are. Yes,
-it deals with "packages" or libraries, but it manages them on a per-project
-basis, installing them in a directory (e.g. `vendor`) inside your project. By
-default it does not install anything globally. Thus, it is a dependency
-manager. It does however support a "global" project for convenience via the
-[global](03-cli.md#global) command.
-
-This idea is not new and Composer is strongly inspired by node's
-[npm](https://www.npmjs.com/) and ruby's [bundler](https://bundler.io/).
-
-Suppose:
-
-1. You have a project that depends on a number of libraries.
-1. Some of those libraries depend on other libraries.
-
-Composer:
-
-1. Enables you to declare the libraries you depend on.
-1. Finds out which versions of which packages can and need to be installed, and
-   installs them (meaning it downloads them into your project).
-
-See the [Basic usage](01-basic-usage.md) chapter for more details on declaring
-dependencies.
-
-## System Requirements
-
-Composer requires PHP 5.3.2+ to run. A few sensitive php settings and compile
-flags are also required, but when using the installer you will be warned about
-any incompatibilities.
-
-To install packages from sources instead of simple zip archives, you will need
-git, svn, fossil or hg depending on how the package is version-controlled.
-
-Composer is multi-platform and we strive to make it run equally well on Windows,
-Linux and OSX.
-
-## Installation - Linux / Unix / OSX
-
-### Downloading the Composer Executable
-
-Composer offers a convenient installer that you can execute directly from the
-commandline. Feel free to [download this file](https://getcomposer.org/installer)
-or review it on [GitHub](https://github.com/composer/getcomposer.org/blob/master/web/installer)
-if you wish to know more about the inner workings of the installer. The source
-is plain PHP.
-
-There are in short, two ways to install Composer. Locally as part of your
-project, or globally as a system wide executable.
-
-#### Locally
-
-To install Composer locally, run the installer in your project directory. See 
-[the Download page](https://getcomposer.org/download/) for instructions.
-
-The installer will check a few PHP settings and then download `composer.phar`
-to your working directory. This file is the Composer binary. It is a PHAR
-(PHP archive), which is an archive format for PHP which can be run on
-the command line, amongst other things.
-
-Now run `php composer.phar` in order to run Composer.
-
-You can install Composer to a specific directory by using the `--install-dir`
-option and additionally (re)name it as well using the `--filename` option. When
-running the installer when following
-[the Download page instructions](https://getcomposer.org/download/) add the
-following parameters:
-
-```sh
-php composer-setup.php --install-dir=bin --filename=composer
-```
-
-Now run `php bin/composer` in order to run Composer.
-
-#### Globally
-
-You can place the Composer PHAR anywhere you wish. If you put it in a directory
-that is part of your `PATH`, you can access it globally. On unixy systems you
-can even make it executable and invoke it without directly using the `php`
-interpreter.
-
-After running the installer following [the Download page instructions](https://getcomposer.org/download/)
-you can run this to move composer.phar to a directory that is in your path:
-
-```sh
-mv composer.phar /usr/local/bin/composer
-```
-
-If you like to install it only for your user and avoid requiring root permissions,
-you can use `~/.local/bin` instead which is available by default on some
-Linux distributions.
-
-> **Note:** If the above fails due to permissions, you may need to run it again
-> with sudo.
-
-> **Note:** On some versions of OSX the `/usr` directory does not exist by
-> default. If you receive the error "/usr/local/bin/composer: No such file or
-> directory" then you must create the directory manually before proceeding:
-> `mkdir -p /usr/local/bin`.
-
-> **Note:** For information on changing your PATH, please read the
-> [Wikipedia article](https://en.wikipedia.org/wiki/PATH_(variable)) and/or use Google.
-
-Now run `composer` in order to run Composer instead of `php composer.phar`.
-
-## Installation - Windows
-
-### Using the Installer
-
-This is the easiest way to get Composer set up on your machine.
-
-Download and run
-[Composer-Setup.exe](https://getcomposer.org/Composer-Setup.exe). It will
-install the latest Composer version and set up your PATH so that you can
-call `composer` from any directory in your command line.
-
-> **Note:** Close your current terminal. Test usage with a new terminal: This is
-> important since the PATH only gets loaded when the terminal starts.
-
-### Manual Installation
-
-Change to a directory on your `PATH` and run the installer following
-[the Download page instructions](https://getcomposer.org/download/)
-to download `composer.phar`.
-
-Create a new `composer.bat` file alongside `composer.phar`:
-
-```sh
-C:\bin>echo @php "%~dp0composer.phar" %*>composer.bat
-```
-
-Add the directory to your PATH environment variable if it isn't already.
-For information on changing your PATH variable, please see
-[this article](https://www.computerhope.com/issues/ch000549.htm) and/or
-use Google.
-
-Close your current terminal. Test usage with a new terminal:
-
-```sh
-C:\Users\username>composer -V
-Composer version 1.0.0 2016-01-10 20:34:53
-```
-
-## Using Composer
-
-Now that you've installed Composer, you are ready to use it! Head on over to the
-next chapter for a short and simple demonstration.
-
-[Basic usage](01-basic-usage.md) &rarr;

+ 0 - 266
vendor/composer/composer/doc/01-basic-usage.md

xqd
@@ -1,266 +0,0 @@
-# Basic usage
-
-## Introduction
-
-For our basic usage introduction, we will be installing `monolog/monolog`,
-a logging library. If you have not yet installed Composer, refer to the
-[Intro](00-intro.md) chapter.
-
-> **Note:** for the sake of simplicity, this introduction will assume you
-> have performed a [local](00-intro.md#locally) install of Composer.
-
-## `composer.json`: Project Setup
-
-To start using Composer in your project, all you need is a `composer.json`
-file. This file describes the dependencies of your project and may contain
-other metadata as well.
-
-### The `require` Key
-
-The first (and often only) thing you specify in `composer.json` is the
-[`require`](04-schema.md#require) key. You are simply telling Composer which
-packages your project depends on.
-
-```json
-{
-    "require": {
-        "monolog/monolog": "1.0.*"
-    }
-}
-```
-
-As you can see, [`require`](04-schema.md#require) takes an object that maps
-**package names** (e.g. `monolog/monolog`) to **version constraints** (e.g.
-`1.0.*`).
-
-Composer uses this information to search for the right set of files in package
-"repositories" that you register using the [`repositories`](04-schema.md#repositories)
-key, or in Packagist, the default package repository. In the above example,
-since no other repository has been registered in the `composer.json` file, it is
-assumed that the `monolog/monolog` package is registered on Packagist. (See more
-about Packagist [below](#packagist), or read more about repositories
-[here](05-repositories.md)).
-
-### Package Names
-
-The package name consists of a vendor name and the project's name. Often these
-will be identical - the vendor name only exists to prevent naming clashes. For
-example, it would allow two different people to create a library named `json`.
-One might be named `igorw/json` while the other might be `seldaek/json`.
-
-Read more about publishing packages and package naming [here](02-libraries.md).
-(Note that you can also specify "platform packages" as dependencies, allowing
-you to require certain versions of server software. See
-[platform packages](#platform-packages) below.)
-
-### Package Version Constraints
-
-In our example, we are requesting the Monolog package with the version constraint
-[`1.0.*`](https://semver.mwl.be/#?package=monolog%2Fmonolog&version=1.0.*).
-This means any version in the `1.0` development branch, or any version that is
-greater than or equal to 1.0 and less than 1.1 (`>=1.0 <1.1`).
-
-Please read [versions](articles/versions.md) for more in-depth information on
-versions, how versions relate to each other, and on version constraints.
-
-> **How does Composer download the right files?** When you specify a dependency in
-> `composer.json`, Composer first takes the name of the package that you have requested
-> and searches for it in any repositories that you have registered using the
-> [`repositories`](04-schema.md#repositories) key. If you have not registered
-> any extra repositories, or it does not find a package with that name in the
-> repositories you have specified, it falls back to Packagist (more [below](#packagist)).
->
-> When Composer finds the right package, either in Packagist or in a repo you have specified,
-> it then uses the versioning features of the package's VCS (i.e., branches and tags)
-> to attempt to find the best match for the version constraint you have specified. Be sure to read
-> about versions and package resolution in the [versions article](articles/versions.md).
-
-> **Note:** If you are trying to require a package but Composer throws an error
-> regarding package stability, the version you have specified may not meet your
-> default minimum stability requirements. By default only stable releases are taken
-> into consideration when searching for valid package versions in your VCS.
->
-> You might run into this if you are trying to require dev, alpha, beta, or RC
-> versions of a package. Read more about stability flags and the `minimum-stability`
-> key on the [schema page](04-schema.md).
-
-## Installing Dependencies
-
-To install the defined dependencies for your project, run the
-[`install`](03-cli.md#install) command.
-
-```sh
-php composer.phar install
-```
-
-When you run this command, one of two things may happen:
-
-### Installing Without `composer.lock`
-
-If you have never run the command before and there is also no `composer.lock` file present,
-Composer simply resolves all dependencies listed in your `composer.json` file and downloads
-the latest version of their files into the `vendor` directory in your project. (The `vendor`
-directory is the conventional location for all third-party code in a project). In our
-example from above, you would end up with the Monolog source files in
-`vendor/monolog/monolog/`. If Monolog listed any dependencies, those would also be in
-folders under `vendor/`.
-
-> **Tip:** If you are using git for your project, you probably want to add
-> `vendor` in your `.gitignore`. You really don't want to add all of that
-> third-party code to your versioned repository.
-
-When Composer has finished installing, it writes all of the packages and the exact versions
-of them that it downloaded to the `composer.lock` file, locking the project to those specific
-versions. You should commit the `composer.lock` file to your project repo so that all people
-working on the project are locked to the same versions of dependencies (more below).
-
-### Installing With `composer.lock`
-
-This brings us to the second scenario. If there is already a `composer.lock` file as well as a
-`composer.json` file when you run `composer install`, it means either you ran the
-`install` command before, or someone else on the project ran the `install` command and
-committed the `composer.lock` file to the project (which is good).
-
-Either way, running `install` when a `composer.lock` file is present resolves and installs
-all dependencies that you listed in `composer.json`, but Composer uses the exact versions listed
-in `composer.lock` to ensure that the package versions are consistent for everyone
-working on your project. As a result you will have all dependencies requested by your
-`composer.json` file, but they may not all be at the very latest available versions
-(some of the dependencies listed in the `composer.lock` file may have released newer versions since
-the file was created). This is by design, it ensures that your project does not break because of
-unexpected changes in dependencies.
-
-### Commit Your `composer.lock` File to Version Control
-
-Committing this file to VC is important because it will cause anyone who sets
-up the project to use the exact same
-versions of the dependencies that you are using. Your CI server, production
-machines, other developers in your team, everything and everyone runs on the
-same dependencies, which mitigates the potential for bugs affecting only some
-parts of the deployments. Even if you develop alone, in six months when
-reinstalling the project you can feel confident the dependencies installed are
-still working even if your dependencies released many new versions since then.
-(See note below about using the `update` command.)
-
-## Updating Dependencies to their Latest Versions
-
-As mentioned above, the `composer.lock` file prevents you from automatically getting
-the latest versions of your dependencies. To update to the latest versions, use the
-[`update`](03-cli.md#update) command. This will fetch the latest matching
-versions (according to your `composer.json` file) and update the lock file
-with the new versions. (This is equivalent to deleting the `composer.lock` file
-and running `install` again.)
-
-```sh
-php composer.phar update
-```
-
-> **Note:** Composer will display a Warning when executing an `install` command
-> if the `composer.lock` has not been updated since changes were made to the
-> `composer.json` that might affect dependency resolution.
-
-If you only want to install or update one dependency, you can whitelist them:
-
-```sh
-php composer.phar update monolog/monolog [...]
-```
-
-> **Note:** For libraries it is not necessary to commit the lock
-> file, see also: [Libraries - Lock file](02-libraries.md#lock-file).
-
-## Packagist
-
-[Packagist](https://packagist.org/) is the main Composer repository. A Composer
-repository is basically a package source: a place where you can get packages
-from. Packagist aims to be the central repository that everybody uses. This
-means that you can automatically `require` any package that is available there,
-without further specifying where Composer should look for the package.
-
-If you go to the [Packagist website](https://packagist.org/) (packagist.org),
-you can browse and search for packages.
-
-Any open source project using Composer is recommended to publish their packages
-on Packagist. A library does not need to be on Packagist to be used by Composer,
-but it enables discovery and adoption by other developers more quickly.
-
-## Platform packages
-
-Composer has platform packages, which are virtual packages for things that are
-installed on the system but are not actually installable by Composer. This
-includes PHP itself, PHP extensions and some system libraries.
-
-* `php` represents the PHP version of the user, allowing you to apply
-  constraints, e.g. `^7.1`. To require a 64bit version of php, you can
-  require the `php-64bit` package.
-
-* `hhvm` represents the version of the HHVM runtime and allows you to apply
-  a constraint, e.g., `^2.3`.
-
-* `ext-<name>` allows you to require PHP extensions (includes core
-  extensions). Versioning can be quite inconsistent here, so it's often
-  a good idea to set the constraint to `*`.  An example of an extension
-  package name is `ext-gd`.
-
-* `lib-<name>` allows constraints to be made on versions of libraries used by
-  PHP. The following are available: `curl`, `iconv`, `icu`, `libxml`,
-  `openssl`, `pcre`, `uuid`, `xsl`.
-
-You can use [`show --platform`](03-cli.md#show) to get a list of your locally
-available platform packages.
-
-## Autoloading
-
-For libraries that specify autoload information, Composer generates a
-`vendor/autoload.php` file. You can simply include this file and start
-using the classes that those libraries provide without any extra work:
-
-```php
-require __DIR__ . '/vendor/autoload.php';
-
-$log = new Monolog\Logger('name');
-$log->pushHandler(new Monolog\Handler\StreamHandler('app.log', Monolog\Logger::WARNING));
-$log->addWarning('Foo');
-```
-
-You can even add your own code to the autoloader by adding an
-[`autoload`](04-schema.md#autoload) field to `composer.json`.
-
-```json
-{
-    "autoload": {
-        "psr-4": {"Acme\\": "src/"}
-    }
-}
-```
-
-Composer will register a [PSR-4](http://www.php-fig.org/psr/psr-4/) autoloader
-for the `Acme` namespace.
-
-You define a mapping from namespaces to directories. The `src` directory would
-be in your project root, on the same level as `vendor` directory is. An example
-filename would be `src/Foo.php` containing an `Acme\Foo` class.
-
-After adding the [`autoload`](04-schema.md#autoload) field, you have to re-run
-[`dump-autoload`](03-cli.md#dump-autoload) to re-generate the
-`vendor/autoload.php` file.
-
-Including that file will also return the autoloader instance, so you can store
-the return value of the include call in a variable and add more namespaces.
-This can be useful for autoloading classes in a test suite, for example.
-
-```php
-$loader = require __DIR__ . '/vendor/autoload.php';
-$loader->addPsr4('Acme\\Test\\', __DIR__);
-```
-
-In addition to PSR-4 autoloading, Composer also supports PSR-0, classmap and
-files autoloading. See the [`autoload`](04-schema.md#autoload) reference for
-more information.
-
-See also the docs on [optimizing the autoloader](articles/autoloader-optimization.md).
-
-> **Note:** Composer provides its own autoloader. If you don't want to use that
-> one, you can include `vendor/composer/autoload_*.php` files, which return
-> associative arrays allowing you to configure your own autoloader.
-
-&larr; [Intro](00-intro.md)  |  [Libraries](02-libraries.md) &rarr;

+ 0 - 153
vendor/composer/composer/doc/02-libraries.md

xqd
@@ -1,153 +0,0 @@
-# Libraries
-
-This chapter will tell you how to make your library installable through
-Composer.
-
-## Every project is a package
-
-As soon as you have a `composer.json` in a directory, that directory is a
-package. When you add a [`require`](04-schema.md#require) to a project, you are
-making a package that depends on other packages. The only difference between
-your project and a library is that your project is a package without a name.
-
-In order to make that package installable you need to give it a name. You do
-this by adding the [`name`](04-schema.md#name) property in `composer.json`:
-
-```json
-{
-    "name": "acme/hello-world",
-    "require": {
-        "monolog/monolog": "1.0.*"
-    }
-}
-```
-
-In this case the project name is `acme/hello-world`, where `acme` is the vendor
-name. Supplying a vendor name is mandatory.
-
-> **Note:** If you don't know what to use as a vendor name, your GitHub
-> username is usually a good bet. While package names are case insensitive, the
-> convention is all lowercase and dashes for word separation.
-
-## Library Versioning
-
-In the vast majority of cases, you will be maintaining your library using some
-sort of version control system like git, svn, hg or fossil. In these cases,
-Composer infers versions from your VCS and you **should not** specify a version
-in your `composer.json` file. (See the [Versions article](articles/versions.md)
-to learn about how Composer uses VCS branches and tags to resolve version
-constraints.)
-
-If you are maintaining packages by hand (i.e., without a VCS), you'll need to
-specify the version explicitly by adding a `version` value in your `composer.json`
-file:
-
-```json
-{
-    "version": "1.0.0"
-}
-```
-
-> **Note:** When you add a hardcoded version to a VCS, the version will conflict
-> with tag names. Composer will not be able to determine the version number.
-
-### VCS Versioning
-
-Composer uses your VCS's branch and tag features to resolve the version
-constraints you specify in your `require` field to specific sets of files.
-When determining valid available versions, Composer looks at all of your tags
-and branches and translates their names into an internal list of options that
-it then matches against the version constraint you provided.
-
-For more on how Composer treats tags and branches and how it resolves package
-version constraints, read the [versions](articles/versions.md) article.
-
-## Lock file
-
-For your library you may commit the `composer.lock` file if you want to. This
-can help your team to always test against the same dependency versions.
-However, this lock file will not have any effect on other projects that depend
-on it. It only has an effect on the main project.
-
-If you do not want to commit the lock file and you are using git, add it to
-the `.gitignore`.
-
-## Publishing to a VCS
-
-Once you have a VCS repository (version control system, e.g. git) containing a
-`composer.json` file, your library is already composer-installable. In this
-example we will publish the `acme/hello-world` library on GitHub under
-`github.com/username/hello-world`.
-
-Now, to test installing the `acme/hello-world` package, we create a new
-project locally. We will call it `acme/blog`. This blog will depend on
-`acme/hello-world`, which in turn depends on `monolog/monolog`. We can
-accomplish this by creating a new `blog` directory somewhere, containing a
-`composer.json`:
-
-```json
-{
-    "name": "acme/blog",
-    "require": {
-        "acme/hello-world": "dev-master"
-    }
-}
-```
-
-The name is not needed in this case, since we don't want to publish the blog
-as a library. It is added here to clarify which `composer.json` is being
-described.
-
-Now we need to tell the blog app where to find the `hello-world` dependency.
-We do this by adding a package repository specification to the blog's
-`composer.json`:
-
-```json
-{
-    "name": "acme/blog",
-    "repositories": [
-        {
-            "type": "vcs",
-            "url": "https://github.com/username/hello-world"
-        }
-    ],
-    "require": {
-        "acme/hello-world": "dev-master"
-    }
-}
-```
-
-For more details on how package repositories work and what other types are
-available, see [Repositories](05-repositories.md).
-
-That's all. You can now install the dependencies by running Composer's
-[`install`](03-cli.md#install) command!
-
-**Recap:** Any git/svn/hg/fossil repository containing a `composer.json` can be
-added to your project by specifying the package repository and declaring the
-dependency in the [`require`](04-schema.md#require) field.
-
-## Publishing to packagist
-
-Alright, so now you can publish packages. But specifying the VCS repository
-every time is cumbersome. You don't want to force all your users to do that.
-
-The other thing that you may have noticed is that we did not specify a package
-repository for `monolog/monolog`. How did that work? The answer is Packagist.
-
-[Packagist](https://packagist.org/) is the main package repository for
-Composer, and it is enabled by default. Anything that is published on
-Packagist is available automatically through Composer. Since
-[Monolog is on Packagist](https://packagist.org/packages/monolog/monolog), we
-can depend on it without having to specify any additional repositories.
-
-If we wanted to share `hello-world` with the world, we would publish it on
-Packagist as well. Doing so is really easy.
-
-You simply visit [Packagist](https://packagist.org) and hit the "Submit"
-button. This will prompt you to sign up if you haven't already, and then
-allows you to submit the URL to your VCS repository, at which point Packagist
-will start crawling it. Once it is done, your package will be available to
-anyone!
-
-&larr; [Basic usage](01-basic-usage.md) |  [Command-line interface](03-cli.md) &rarr;

+ 0 - 931
vendor/composer/composer/doc/03-cli.md

xqd
@@ -1,931 +0,0 @@
-# Command-line interface / Commands
-
-You've already learned how to use the command-line interface to do some
-things. This chapter documents all the available commands.
-
-To get help from the command-line, simply call `composer` or `composer list`
-to see the complete list of commands, then `--help` combined with any of those
-can give you more information.
-
-As Composer uses [symfony/console](https://github.com/symfony/console) you can call commands by short name if it's not ambiguous.
-```sh
-composer dump
-```
-calls `composer dump-autoload`.
-
-## Global Options
-
-The following options are available with every command:
-
-* **--verbose (-v):** Increase verbosity of messages.
-* **--help (-h):** Display help information.
-* **--quiet (-q):** Do not output any message.
-* **--no-interaction (-n):** Do not ask any interactive question.
-* **--no-plugins:** Disables plugins.
-* **--working-dir (-d):** If specified, use the given directory as working directory.
-* **--profile:** Display timing and memory usage information
-* **--ansi:** Force ANSI output.
-* **--no-ansi:** Disable ANSI output.
-* **--version (-V):** Display this application version.
-
-## Process Exit Codes
-
-* **0:** OK
-* **1:** Generic/unknown error code
-* **2:** Dependency solving error code
-
-## init
-
-In the [Libraries](02-libraries.md) chapter we looked at how to create a
-`composer.json` by hand. There is also an `init` command available that makes
-it a bit easier to do this.
-
-When you run the command it will interactively ask you to fill in the fields,
-while using some smart defaults.
-
-```sh
-php composer.phar init
-```
-
-### Options
-
-* **--name:** Name of the package.
-* **--description:** Description of the package.
-* **--author:** Author name of the package.
-* **--type:** Type of package.
-* **--homepage:** Homepage of the package.
-* **--require:** Package to require with a version constraint. Should be
-  in format `foo/bar:1.0.0`.
-* **--require-dev:** Development requirements, see **--require**.
-* **--stability (-s):** Value for the `minimum-stability` field.
-* **--license (-l):** License of package.
-* **--repository:** Provide one (or more) custom repositories. They will be stored
-  in the generated composer.json, and used for auto-completion when prompting for
-  the list of requires. Every repository can be either an HTTP URL pointing
-  to a `composer` repository or a JSON string which similar to what the
-  [repositories](04-schema.md#repositories) key accepts.
-
-## install / i
-
-The `install` command reads the `composer.json` file from the current
-directory, resolves the dependencies, and installs them into `vendor`.
-
-```sh
-php composer.phar install
-```
-
-If there is a `composer.lock` file in the current directory, it will use the
-exact versions from there instead of resolving them. This ensures that
-everyone using the library will get the same versions of the dependencies.
-
-If there is no `composer.lock` file, Composer will create one after dependency
-resolution.
-
-### Options
-
-* **--prefer-source:** There are two ways of downloading a package: `source`
-  and `dist`. For stable versions Composer will use the `dist` by default.
-  The `source` is a version control repository. If `--prefer-source` is
-  enabled, Composer will install from `source` if there is one. This is
-  useful if you want to make a bugfix to a project and get a local git
-  clone of the dependency directly.
-* **--prefer-dist:** Reverse of `--prefer-source`, Composer will install
-  from `dist` if possible. This can speed up installs substantially on build
-  servers and other use cases where you typically do not run updates of the
-  vendors. It is also a way to circumvent problems with git if you do not
-  have a proper setup.
-* **--dry-run:** If you want to run through an installation without actually
-  installing a package, you can use `--dry-run`. This will simulate the
-  installation and show you what would happen.
-* **--dev:** Install packages listed in `require-dev` (this is the default behavior).
-* **--no-dev:** Skip installing packages listed in `require-dev`. The autoloader
-  generation skips the `autoload-dev` rules.
-* **--no-autoloader:** Skips autoloader generation.
-* **--no-scripts:** Skips execution of scripts defined in `composer.json`.
-* **--no-progress:** Removes the progress display that can mess with some
-  terminals or scripts which don't handle backspace characters.
-* **--no-suggest:** Skips suggested packages in the output.
-* **--optimize-autoloader (-o):** Convert PSR-0/4 autoloading to classmap to get a faster
-  autoloader. This is recommended especially for production, but can take
-  a bit of time to run so it is currently not done by default.
-* **--classmap-authoritative (-a):** Autoload classes from the classmap only.
-  Implicitly enables `--optimize-autoloader`.
-* **--apcu-autoloader:** Use APCu to cache found/not-found classes.
-* **--ignore-platform-reqs:** ignore `php`, `hhvm`, `lib-*` and `ext-*`
-  requirements and force the installation even if the local machine does not
-  fulfill these. See also the [`platform`](06-config.md#platform) config option.
-
-## update / u
-
-In order to get the latest versions of the dependencies and to update the
-`composer.lock` file, you should use the `update` command. This command is also
-aliased as `upgrade` as it does the same as `upgrade` does if you are thinking
-of `apt-get` or similar package managers.
-
-```sh
-php composer.phar update
-```
-
-This will resolve all dependencies of the project and write the exact versions
-into `composer.lock`.
-
-If you only want to update a few packages and not all, you can list them as such:
-
-```sh
-php composer.phar update vendor/package vendor/package2
-```
-
-You can also use wildcards to update a bunch of packages at once:
-
-```sh
-php composer.phar update vendor/*
-```
-
-### Options
-
-* **--prefer-source:** Install packages from `source` when available.
-* **--prefer-dist:** Install packages from `dist` when available.
-* **--dry-run:** Simulate the command without actually doing anything.
-* **--dev:** Install packages listed in `require-dev` (this is the default behavior).
-* **--no-dev:** Skip installing packages listed in `require-dev`. The autoloader generation skips the `autoload-dev` rules.
-* **--lock:** Only updates the lock file hash to suppress warning about the
-  lock file being out of date.
-* **--no-autoloader:** Skips autoloader generation.
-* **--no-scripts:** Skips execution of scripts defined in `composer.json`.
-* **--no-progress:** Removes the progress display that can mess with some
-  terminals or scripts which don't handle backspace characters.
-* **--no-suggest:** Skips suggested packages in the output.
-* **--with-dependencies:** Add also dependencies of whitelisted packages to the whitelist, except those that are root requirements.
-* **--with-all-dependencies:** Add also all dependencies of whitelisted packages to the whitelist, including those that are root requirements.
-* **--optimize-autoloader (-o):** Convert PSR-0/4 autoloading to classmap to get a faster
-  autoloader. This is recommended especially for production, but can take
-  a bit of time to run so it is currently not done by default.
-* **--classmap-authoritative (-a):** Autoload classes from the classmap only.
-  Implicitly enables `--optimize-autoloader`.
-* **--apcu-autoloader:** Use APCu to cache found/not-found classes.
-* **--ignore-platform-reqs:** ignore `php`, `hhvm`, `lib-*` and `ext-*`
-  requirements and force the installation even if the local machine does not
-  fulfill these. See also the [`platform`](06-config.md#platform) config option.
-* **--prefer-stable:** Prefer stable versions of dependencies.
-* **--prefer-lowest:** Prefer lowest versions of dependencies. Useful for testing minimal
-  versions of requirements, generally used with `--prefer-stable`.
-* **--interactive:** Interactive interface with autocompletion to select the packages to update.
-* **--root-reqs:** Restricts the update to your first degree dependencies.
-
-## require
-
-The `require` command adds new packages to the `composer.json` file from
-the current directory. If no file exists one will be created on the fly.
-
-```sh
-php composer.phar require
-```
-
-After adding/changing the requirements, the modified requirements will be
-installed or updated.
-
-If you do not want to choose requirements interactively, you can pass them
-to the command.
-
-```sh
-php composer.phar require vendor/package:2.* vendor/package2:dev-master
-```
-
-If you do not specify a package, composer will prompt you to search for a package, and given results, provide a list of  matches to require.
-
-### Options
-
-* **--dev:** Add packages to `require-dev`.
-* **--prefer-source:** Install packages from `source` when available.
-* **--prefer-dist:** Install packages from `dist` when available.
-* **--no-progress:** Removes the progress display that can mess with some
-  terminals or scripts which don't handle backspace characters.
-* **--no-suggest:** Skips suggested packages in the output.
-* **--no-update:** Disables the automatic update of the dependencies.
-* **--no-scripts:** Skips execution of scripts defined in `composer.json`.
-* **--update-no-dev:** Run the dependency update with the `--no-dev` option.
-* **--update-with-dependencies:** Also update dependencies of the newly required packages, except those that are root requirements.
-* **--update-with-all-dependencies:** Also update dependencies of the newly required packages, including those that are root requirements.
-* **--ignore-platform-reqs:** ignore `php`, `hhvm`, `lib-*` and `ext-*`
-  requirements and force the installation even if the local machine does not
-  fulfill these. See also the [`platform`](06-config.md#platform) config option.
-* **--prefer-stable:** Prefer stable versions of dependencies.
-* **--prefer-lowest:** Prefer lowest versions of dependencies. Useful for testing minimal
-  versions of requirements, generally used with `--prefer-stable`.
-* **--sort-packages:** Keep packages sorted in `composer.json`.
-* **--optimize-autoloader (-o):** Convert PSR-0/4 autoloading to classmap to
-  get a faster autoloader. This is recommended especially for production, but
-  can take a bit of time to run so it is currently not done by default.
-* **--classmap-authoritative (-a):** Autoload classes from the classmap only.
-  Implicitly enables `--optimize-autoloader`.
-* **--apcu-autoloader:** Use APCu to cache found/not-found classes.
-
-## remove
-
-The `remove` command removes packages from the `composer.json` file from
-the current directory.
-
-```sh
-php composer.phar remove vendor/package vendor/package2
-```
-
-After removing the requirements, the modified requirements will be
-uninstalled.
-
-### Options
-* **--dev:** Remove packages from `require-dev`.
-* **--no-progress:** Removes the progress display that can mess with some
-  terminals or scripts which don't handle backspace characters.
-* **--no-update:** Disables the automatic update of the dependencies.
-* **--no-scripts:** Skips execution of scripts defined in `composer.json`.
-* **--update-no-dev:** Run the dependency update with the --no-dev option.
-* **--update-with-dependencies:** Also update dependencies of the removed packages.
-* **--ignore-platform-reqs:** ignore `php`, `hhvm`, `lib-*` and `ext-*`
-  requirements and force the installation even if the local machine does not
-  fulfill these. See also the [`platform`](06-config.md#platform) config option.
-* **--optimize-autoloader (-o):** Convert PSR-0/4 autoloading to classmap to
-  get a faster autoloader. This is recommended especially for production, but
-  can take a bit of time to run so it is currently not done by default.
-* **--classmap-authoritative (-a):** Autoload classes from the classmap only.
-  Implicitly enables `--optimize-autoloader`.
-* **--apcu-autoloader:** Use APCu to cache found/not-found classes.
-
-## check-platform-reqs
-
-The check-platform-reqs command checks that your PHP and extensions versions
-match the platform requirements of the installed packages. This can be used
-to verify that a production server has all the extensions needed to run a
-project after installing it for example.
-
-## global
-
-The global command allows you to run other commands like `install`, `remove`, `require`
-or `update` as if you were running them from the [COMPOSER_HOME](#composer-home)
-directory.
-
-This is merely a helper to manage a project stored in a central location that
-can hold CLI tools or Composer plugins that you want to have available everywhere.
-
-This can be used to install CLI utilities globally. Here is an example:
-
-```sh
-php composer.phar global require friendsofphp/php-cs-fixer
-```
-
-Now the `php-cs-fixer` binary is available globally. Make sure your global
-[vendor binaries](articles/vendor-binaries.md) directory is in your `$PATH`
-environment variable, you can get its location with the following command :
-
-```sh
-php composer.phar global config bin-dir --absolute
-```
-
-If you wish to update the binary later on you can run a global update:
-
-```sh
-php composer.phar global update
-```
-
-## search
-
-The search command allows you to search through the current project's package
-repositories. Usually this will be packagist. You simply pass it the
-terms you want to search for.
-
-```sh
-php composer.phar search monolog
-```
-
-You can also search for more than one term by passing multiple arguments.
-
-### Options
-
-* **--only-name (-N):** Search only in name.
-* **--type (-t):** Search for a specific package type.
-
-## show
-
-To list all of the available packages, you can use the `show` command.
-
-```sh
-php composer.phar show
-```
-
-To filter the list you can pass a package mask using wildcards.
-
-```sh
-php composer.phar show monolog/*
-
-monolog/monolog 1.19.0 Sends your logs to files, sockets, inboxes, databases and various web services
-```
-
-If you want to see the details of a certain package, you can pass the package
-name.
-
-```sh
-php composer.phar show monolog/monolog
-
-name     : monolog/monolog
-versions : master-dev, 1.0.2, 1.0.1, 1.0.0, 1.0.0-RC1
-type     : library
-names    : monolog/monolog
-source   : [git] https://github.com/Seldaek/monolog.git 3d4e60d0cbc4b888fe5ad223d77964428b1978da
-dist     : [zip] https://github.com/Seldaek/monolog/zipball/3d4e60d0cbc4b888fe5ad223d77964428b1978da 3d4e60d0cbc4b888fe5ad223d77964428b1978da
-license  : MIT
-
-autoload
-psr-0
-Monolog : src/
-
-requires
-php >=5.3.0
-```
-
-You can even pass the package version, which will tell you the details of that
-specific version.
-
-```sh
-php composer.phar show monolog/monolog 1.0.2
-```
-
-### Options
-
-* **--all :** List all packages available in all your repositories.
-* **--installed (-i):** List the packages that are installed (this is enabled by default, and deprecated).
-* **--platform (-p):** List only platform packages (php & extensions).
-* **--available (-a):** List available packages only.
-* **--self (-s):** List the root package info.
-* **--name-only (-N):** List package names only.
-* **--path (-P):** List package paths.
-* **--tree (-t):** List your dependencies as a tree. If you pass a package name it will show the dependency tree for that package.
-* **--latest (-l):** List all installed packages including their latest version.
-* **--outdated (-o):** Implies --latest, but this lists *only* packages that have a newer version available.
-* **--minor-only (-m):** Use with --latest. Only shows packages that have minor SemVer-compatible updates.
-* **--direct (-D):** Restricts the list of packages to your direct dependencies.
-* **--strict:** Return a non-zero exit code when there are outdated packages.
-* **--format (-f):** Lets you pick between text (default) or json output format.
-
-## outdated
-
-The `outdated` command shows a list of installed packages that have updates available,
-including their current and latest versions. This is basically an alias for
-`composer show -lo`.
-
-The color coding is as such:
-
-- **green (=)**: Dependency is in the latest version and is up to date.
-- **yellow (~)**: Dependency has a new version available that includes backwards compatibility breaks according to semver, so upgrade when
-  you can but it may involve work.
-- **red (!)**: Dependency has a new version that is semver-compatible and you should upgrade it.
-
-### Options
-
-* **--all (-a):** Show all packages, not just outdated (alias for `composer show -l`).
-* **--direct (-D):** Restricts the list of packages to your direct dependencies.
-* **--strict:** Returns non-zero exit code if any package is outdated.
-* **--minor-only (-m):** Only shows packages that have minor SemVer-compatible updates.
-* **--format (-f):** Lets you pick between text (default) or json output format.
-
-## browse / home
-
-The `browse` (aliased to `home`) opens a package's repository URL or homepage
-in your browser.
-
-### Options
-
-* **--homepage (-H):** Open the homepage instead of the repository URL.
-* **--show (-s):** Only show the homepage or repository URL.
-
-## suggests
-
-Lists all packages suggested by currently installed set of packages. You can
-optionally pass one or multiple package names in the format of `vendor/package`
-to limit output to suggestions made by those packages only.
-
-Use the `--by-package` or `--by-suggestion` flags to group the output by
-the package offering the suggestions or the suggested packages respectively.
-
-Use the `--verbose (-v)` flag to display the suggesting package and the suggestion reason.
-This implies `--by-package --by-suggestion`, showing both lists.
-
-### Options
-
-* **--by-package:** Groups output by suggesting package.
-* **--by-suggestion:** Groups output by suggested package.
-* **--no-dev:** Excludes suggestions from `require-dev` packages.
-
-## depends (why)
-
-The `depends` command tells you which other packages depend on a certain
-package. As with installation `require-dev` relationships are only considered
-for the root package.
-
-```sh
-php composer.phar depends doctrine/lexer
- doctrine/annotations v1.2.7 requires doctrine/lexer (1.*)
- doctrine/common      v2.6.1 requires doctrine/lexer (1.*)
-```
-
-You can optionally specify a version constraint after the package to limit the
-search.
-
-Add the `--tree` or `-t` flag to show a recursive tree of why the package is
-depended upon, for example:
-
-```sh
-php composer.phar depends psr/log -t
-psr/log 1.0.0 Common interface for logging libraries
-|- aboutyou/app-sdk 2.6.11 (requires psr/log 1.0.*)
-|  `- __root__ (requires aboutyou/app-sdk ^2.6)
-|- monolog/monolog 1.17.2 (requires psr/log ~1.0)
-|  `- laravel/framework v5.2.16 (requires monolog/monolog ~1.11)
-|     `- __root__ (requires laravel/framework ^5.2)
-`- symfony/symfony v3.0.2 (requires psr/log ~1.0)
-   `- __root__ (requires symfony/symfony ^3.0)
-```
-
-### Options
-
-* **--recursive (-r):** Recursively resolves up to the root package.
-* **--tree (-t):** Prints the results as a nested tree, implies -r.
-
-## prohibits (why-not)
-
-The `prohibits` command tells you which packages are blocking a given package
-from being installed. Specify a version constraint to verify whether upgrades
-can be performed in your project, and if not why not. See the following
-example:
-
-```sh
-php composer.phar prohibits symfony/symfony 3.1
- laravel/framework v5.2.16 requires symfony/var-dumper (2.8.*|3.0.*)
-```
-
-Note that you can also specify platform requirements, for example to check
-whether you can upgrade your server to PHP 8.0:
-
-```sh
-php composer.phar prohibits php:8
- doctrine/cache        v1.6.0 requires php (~5.5|~7.0)
- doctrine/common       v2.6.1 requires php (~5.5|~7.0)
- doctrine/instantiator 1.0.5  requires php (>=5.3,<8.0-DEV)
-```
-
-As with `depends` you can request a recursive lookup, which will list all
-packages depending on the packages that cause the conflict.
-
-### Options
-
-* **--recursive (-r):** Recursively resolves up to the root package.
-* **--tree (-t):** Prints the results as a nested tree, implies -r.
-
-## validate
-
-You should always run the `validate` command before you commit your
-`composer.json` file, and before you tag a release. It will check if your
-`composer.json` is valid.
-
-```sh
-php composer.phar validate
-```
-
-### Options
-
-* **--no-check-all:** Do not emit a warning if requirements in `composer.json` use unbound version constraints.
-* **--no-check-lock:** Do not emit an error if `composer.lock` exists and is not up to date.
-* **--no-check-publish:** Do not emit an error if `composer.json` is unsuitable for publishing as a package on Packagist but is otherwise valid.
-* **--with-dependencies:** Also validate the composer.json of all installed dependencies.
-* **--strict:** Return a non-zero exit code for warnings as well as errors.
-
-## status
-
-If you often need to modify the code of your dependencies and they are
-installed from source, the `status` command allows you to check if you have
-local changes in any of them.
-
-```sh
-php composer.phar status
-```
-
-With the `--verbose` option you get some more information about what was
-changed:
-
-```sh
-php composer.phar status -v
-
-You have changes in the following dependencies:
-vendor/seld/jsonlint:
-    M README.mdown
-```
-
-## self-update (selfupdate)
-
-To update Composer itself to the latest version, run the `self-update`
-command. It will replace your `composer.phar` with the latest version.
-
-```sh
-php composer.phar self-update
-```
-
-If you would like to instead update to a specific release simply specify it:
-
-```sh
-php composer.phar self-update 1.0.0-alpha7
-```
-
-If you have installed Composer for your entire system (see [global installation](00-intro.md#globally)),
-you may have to run the command with `root` privileges
-
-```sh
-sudo -H composer self-update
-```
-
-### Options
-
-* **--rollback (-r):** Rollback to the last version you had installed.
-* **--clean-backups:** Delete old backups during an update. This makes the
-  current version of Composer the only backup available after the update.
-* **--no-progress:** Do not output download progress.
-* **--update-keys:** Prompt user for a key update.
-* **--stable:** Force an update to the stable channel.
-* **--preview:** Force an update to the preview channel.
-* **--snapshot:** Force an update to the snapshot channel.
-
-## config
-
-The `config` command allows you to edit composer config settings and repositories
-in either the local `composer.json` file or the global `config.json` file.
-
-Additionally it lets you edit most properties in the local `composer.json`.
-
-```sh
-php composer.phar config --list
-```
-
-### Usage
-
-`config [options] [setting-key] [setting-value1] ... [setting-valueN]`
-
-`setting-key` is a configuration option name and `setting-value1` is a
-configuration value.  For settings that can take an array of values (like
-`github-protocols`), more than one setting-value arguments are allowed.
-
-You can also edit the values of the following properties:
-
-`description`, `homepage`, `keywords`, `license`, `minimum-stability`,
-`name`, `prefer-stable`, `type` and `version`.
-
-See the [Config](06-config.md) chapter for valid configuration options.
-
-### Options
-
-* **--global (-g):** Operate on the global config file located at
-  `$COMPOSER_HOME/config.json` by default.  Without this option, this command
-  affects the local composer.json file or a file specified by `--file`.
-* **--editor (-e):** Open the local composer.json file using in a text editor as
-  defined by the `EDITOR` env variable.  With the `--global` option, this opens
-  the global config file.
-* **--auth (-a):** Affect auth config file (only used for --editor).
-* **--unset:** Remove the configuration element named by `setting-key`.
-* **--list (-l):** Show the list of current config variables.  With the `--global`
-  option this lists the global configuration only.
-* **--file="..." (-f):** Operate on a specific file instead of composer.json. Note
-  that this cannot be used in conjunction with the `--global` option.
-* **--absolute:** Returns absolute paths when fetching *-dir config values
-  instead of relative.
-
-### Modifying Repositories
-
-In addition to modifying the config section, the `config` command also supports making
-changes to the repositories section by using it the following way:
-
-```sh
-php composer.phar config repositories.foo vcs https://github.com/foo/bar
-```
-
-If your repository requires more configuration options, you can instead pass its JSON representation :
-
-```sh
-php composer.phar config repositories.foo '{"type": "vcs", "url": "http://svn.example.org/my-project/", "trunk-path": "master"}'
-```
-
-### Modifying Extra Values
-
-In addition to modifying the config section, the `config` command also supports making
-changes to the extra section by using it the following way:
-
-```sh
-php composer.phar config extra.foo.bar value
-```
-
-The dots indicate array nesting, a max depth of 3 levels is allowed though. The above
-would set `"extra": { "foo": { "bar": "value" } }`.
-
-## create-project
-
-You can use Composer to create new projects from an existing package. This is
-the equivalent of doing a git clone/svn checkout followed by a `composer install`
-of the vendors.
-
-There are several applications for this:
-
-1. You can deploy application packages.
-2. You can check out any package and start developing on patches for example.
-3. Projects with multiple developers can use this feature to bootstrap the
-   initial application for development.
-
-To create a new project using Composer you can use the `create-project` command.
-Pass it a package name, and the directory to create the project in. You can also
-provide a version as third argument, otherwise the latest version is used.
-
-If the directory does not currently exist, it will be created during installation.
-
-```sh
-php composer.phar create-project doctrine/orm path 2.2.*
-```
-
-It is also possible to run the command without params in a directory with an
-existing `composer.json` file to bootstrap a project.
-
-By default the command checks for the packages on packagist.org.
-
-### Options
-
-* **--stability (-s):** Minimum stability of package. Defaults to `stable`.
-* **--prefer-source:** Install packages from `source` when available.
-* **--prefer-dist:** Install packages from `dist` when available.
-* **--repository:** Provide a custom repository to search for the package,
-  which will be used instead of packagist. Can be either an HTTP URL pointing
-  to a `composer` repository, a path to a local `packages.json` file, or a
-  JSON string which similar to what the [repositories](04-schema.md#repositories)
-  key accepts.
-* **--dev:** Install packages listed in `require-dev`.
-* **--no-dev:** Disables installation of require-dev packages.
-* **--no-scripts:** Disables the execution of the scripts defined in the root
-  package.
-* **--no-progress:** Removes the progress display that can mess with some
-  terminals or scripts which don't handle backspace characters.
-* **--no-secure-http:** Disable the secure-http config option temporarily while
-  installing the root package. Use at your own risk. Using this flag is a bad
-  idea.
-* **--keep-vcs:** Skip the deletion of the VCS metadata for the created
-  project. This is mostly useful if you run the command in non-interactive
-  mode.
-* **--remove-vcs:** Force-remove the VCS metadata without prompting.
-* **--no-install:** Disables installation of the vendors.
-* **--ignore-platform-reqs:** ignore `php`, `hhvm`, `lib-*` and `ext-*`
-  requirements and force the installation even if the local machine does not
-  fulfill these.
-
-## dump-autoload (dumpautoload)
-
-If you need to update the autoloader because of new classes in a classmap
-package for example, you can use `dump-autoload` to do that without having to
-go through an install or update.
-
-Additionally, it can dump an optimized autoloader that converts PSR-0/4 packages
-into classmap ones for performance reasons. In large applications with many
-classes, the autoloader can take up a substantial portion of every request's
-time. Using classmaps for everything is less convenient in development, but
-using this option you can still use PSR-0/4 for convenience and classmaps for
-performance.
-
-### Options
-* **--no-scripts:** Skips the execution of all scripts defined in `composer.json` file.
-* **--optimize (-o):** Convert PSR-0/4 autoloading to classmap to get a faster
-  autoloader. This is recommended especially for production, but can take
-  a bit of time to run so it is currently not done by default.
-* **--classmap-authoritative (-a):** Autoload classes from the classmap only.
-  Implicitly enables `--optimize`.
-* **--apcu:** Use APCu to cache found/not-found classes.
-* **--no-dev:** Disables autoload-dev rules.
-
-## clear-cache (clearcache)
-
-Deletes all content from Composer's cache directories.
-
-## licenses
-
-Lists the name, version and license of every package installed. Use
-`--format=json` to get machine readable output.
-
-### Options
-
-* **--format:** Format of the output: text or json (default: "text")
-* **--no-dev:** Remove dev dependencies from the output
-
-## run-script
-
-### Options
-
-* **--timeout:** Set the script timeout in seconds, or 0 for no timeout.
-* **--dev:** Sets the dev mode.
-* **--no-dev:** Disable dev mode.
-* **--list (-l):** List user defined scripts.
-
-To run [scripts](articles/scripts.md) manually you can use this command,
-give it the script name and optionally any required arguments.
-
-## exec
-
-Executes a vendored binary/script. You can execute any command and this will
-ensure that the Composer bin-dir is pushed on your PATH before the command
-runs.
-
-### Options
-
-* **--list (-l):** List the available composer binaries.
-
-## diagnose
-
-If you think you found a bug, or something is behaving strangely, you might
-want to run the `diagnose` command to perform automated checks for many common
-problems.
-
-```sh
-php composer.phar diagnose
-```
-
-## archive
-
-This command is used to generate a zip/tar archive for a given package in a
-given version. It can also be used to archive your entire project without
-excluded/ignored files.
-
-```sh
-php composer.phar archive vendor/package 2.0.21 --format=zip
-```
-
-### Options
-
-* **--format (-f):** Format of the resulting archive: tar or zip (default:
-  "tar")
-* **--dir:** Write the archive to this directory (default: ".")
-* **--file:** Write the archive with the given file name.
-
-## help
-
-To get more information about a certain command, you can use `help`.
-
-```sh
-php composer.phar help install
-```
-
-## Command-line completion
-
-Command-line completion can be enabled by following instructions
-[on this page](https://github.com/bamarni/symfony-console-autocomplete).
-
-## Environment variables
-
-You can set a number of environment variables that override certain settings.
-Whenever possible it is recommended to specify these settings in the `config`
-section of `composer.json` instead. It is worth noting that the env vars will
-always take precedence over the values specified in `composer.json`.
-
-### COMPOSER
-
-By setting the `COMPOSER` env variable it is possible to set the filename of
-`composer.json` to something else.
-
-For example:
-
-```sh
-COMPOSER=composer-other.json php composer.phar install
-```
-
-The generated lock file will use the same name: `composer-other.lock` in this example.
-
-### COMPOSER_ROOT_VERSION
-
-By setting this var you can specify the version of the root package, if it can
-not be guessed from VCS info and is not present in `composer.json`.
-
-### COMPOSER_VENDOR_DIR
-
-By setting this var you can make Composer install the dependencies into a
-directory other than `vendor`.
-
-### COMPOSER_BIN_DIR
-
-By setting this option you can change the `bin` ([Vendor Binaries](articles/vendor-binaries.md))
-directory to something other than `vendor/bin`.
-
-### http_proxy or HTTP_PROXY
-
-If you are using Composer from behind an HTTP proxy, you can use the standard
-`http_proxy` or `HTTP_PROXY` env vars. Simply set it to the URL of your proxy.
-Many operating systems already set this variable for you.
-
-Using `http_proxy` (lowercased) or even defining both might be preferable since
-some tools like git or curl will only use the lower-cased `http_proxy` version.
-Alternatively you can also define the git proxy using
-`git config --global http.proxy <proxy url>`.
-
-If you are using Composer in a non-CLI context (i.e. integration into a CMS or
-similar use case), and need to support proxies, please provide the `CGI_HTTP_PROXY`
-environment variable instead. See [httpoxy.org](https://httpoxy.org/) for further
-details.
-
-### no_proxy or NO_PROXY
-
-If you are behind a proxy and would like to disable it for certain domains, you
-can use the `no_proxy` or `NO_PROXY` env var. Simply set it to a comma separated list of
-domains the proxy should *not* be used for.
-
-The env var accepts domains, IP addresses, and IP address blocks in CIDR
-notation. You can restrict the filter to a particular port (e.g. `:80`). You
-can also set it to `*` to ignore the proxy for all HTTP requests.
-
-### HTTP_PROXY_REQUEST_FULLURI
-
-If you use a proxy but it does not support the request_fulluri flag, then you
-should set this env var to `false` or `0` to prevent Composer from setting the
-request_fulluri option.
-
-### HTTPS_PROXY_REQUEST_FULLURI
-
-If you use a proxy but it does not support the request_fulluri flag for HTTPS
-requests, then you should set this env var to `false` or `0` to prevent Composer
-from setting the request_fulluri option.
-
-### COMPOSER_HOME
-
-The `COMPOSER_HOME` var allows you to change the Composer home directory. This
-is a hidden, global (per-user on the machine) directory that is shared between
-all projects.
-
-By default it points to `C:\Users\<user>\AppData\Roaming\Composer` on Windows
-and `/Users/<user>/.composer` on OSX. On *nix systems that follow the [XDG Base
-Directory Specifications](https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html),
-it points to `$XDG_CONFIG_HOME/composer`. On other *nix systems, it points to
-`/home/<user>/.composer`.
-
-#### COMPOSER_HOME/config.json
-
-You may put a `config.json` file into the location which `COMPOSER_HOME` points
-to. Composer will merge this configuration with your project's `composer.json`
-when you run the `install` and `update` commands.
-
-This file allows you to set [repositories](05-repositories.md) and
-[configuration](06-config.md) for the user's projects.
-
-In case global configuration matches _local_ configuration, the _local_
-configuration in the project's `composer.json` always wins.
-
-### COMPOSER_CACHE_DIR
-
-The `COMPOSER_CACHE_DIR` var allows you to change the Composer cache directory,
-which is also configurable via the [`cache-dir`](06-config.md#cache-dir) option.
-
-By default it points to `$COMPOSER_HOME/cache` on \*nix and OSX, and
-`C:\Users\<user>\AppData\Local\Composer` (or `%LOCALAPPDATA%/Composer`) on Windows.
-
-### COMPOSER_PROCESS_TIMEOUT
-
-This env var controls the time Composer waits for commands (such as git
-commands) to finish executing. The default value is 300 seconds (5 minutes).
-
-### COMPOSER_CAFILE
-
-By setting this environmental value, you can set a path to a certificate bundle
-file to be used during SSL/TLS peer verification.
-
-### COMPOSER_AUTH
-
-The `COMPOSER_AUTH` var allows you to set up authentication as an environment variable.
-The contents of the variable should be a JSON formatted object containing http-basic,
-github-oauth, bitbucket-oauth, ... objects as needed, and following the
-[spec from the config](06-config.md#gitlab-oauth).
-
-### COMPOSER_DISCARD_CHANGES
-
-This env var controls the [`discard-changes`](06-config.md#discard-changes) config option.
-
-### COMPOSER_NO_INTERACTION
-
-If set to 1, this env var will make Composer behave as if you passed the
-`--no-interaction` flag to every command. This can be set on build boxes/CI.
-
-### COMPOSER_ALLOW_SUPERUSER
-
-If set to 1, this env disables the warning about running commands as root/super user.
-It also disables automatic clearing of sudo sessions, so you should really only set this
-if you use Composer as super user at all times like in docker containers.
-
-### COMPOSER_MEMORY_LIMIT
-
-If set, the value is used as php's memory_limit.
-
-### COMPOSER_MIRROR_PATH_REPOS
-
-If set to 1, this env changes the default path repository strategy to `mirror` instead
-of `symlink`. As it is the default strategy being set it can still be overwritten by
-repository options.
-
-### COMPOSER_HTACCESS_PROTECT
-
-Defaults to `1`. If set to `0`, Composer will not create `.htaccess` files in the
-composer home, cache, and data directories.
-
-&larr; [Libraries](02-libraries.md)  |  [Schema](04-schema.md) &rarr;

+ 0 - 923
vendor/composer/composer/doc/04-schema.md

xqd
@@ -1,923 +0,0 @@
-# The composer.json Schema
-
-This chapter will explain all of the fields available in `composer.json`.
-
-## JSON schema
-
-We have a [JSON schema](http://json-schema.org) that documents the format and
-can also be used to validate your `composer.json`. In fact, it is used by the
-`validate` command. You can find it at: https://getcomposer.org/schema.json
-
-## Root Package
-
-The root package is the package defined by the `composer.json` at the root of
-your project. It is the main `composer.json` that defines your project
-requirements.
-
-Certain fields only apply when in the root package context. One example of
-this is the `config` field. Only the root package can define configuration.
-The config of dependencies is ignored. This makes the `config` field
-`root-only`.
-
-> **Note:** A package can be the root package or not, depending on the context.
-> For example, if your project depends on the `monolog` library, your project
-> is the root package. However, if you clone `monolog` from GitHub in order to
-> fix a bug in it, then `monolog` is the root package.
-
-## Properties
-
-### name
-
-The name of the package. It consists of vendor name and project name,
-separated by `/`. Examples:
-
-* monolog/monolog
-* igorw/event-source
-
-The name can contain any character, including white spaces, and it's case
-insensitive (`foo/bar` and `Foo/Bar` are considered the same package). In order
-to simplify its installation, it's recommended to define a short and lowercase
-name that doesn't include non-alphanumeric characters or white spaces.
-
-Required for published packages (libraries).
-
-### description
-
-A short description of the package. Usually this is one line long.
-
-Required for published packages (libraries).
-
-### version
-
-The version of the package. In most cases this is not required and should
-be omitted (see below).
-
-This must follow the format of `X.Y.Z` or `vX.Y.Z` with an optional suffix
-of `-dev`, `-patch` (`-p`), `-alpha` (`-a`), `-beta` (`-b`) or `-RC`.
-The patch, alpha, beta and RC suffixes can also be followed by a number.
-
-Examples:
-
-- 1.0.0
-- 1.0.2
-- 1.1.0
-- 0.2.5
-- 1.0.0-dev
-- 1.0.0-alpha3
-- 1.0.0-beta2
-- 1.0.0-RC5
-- v2.0.4-p1
-
-Optional if the package repository can infer the version from somewhere, such
-as the VCS tag name in the VCS repository. In that case it is also recommended
-to omit it.
-
-> **Note:** Packagist uses VCS repositories, so the statement above is very
-> much true for Packagist as well. Specifying the version yourself will
-> most likely end up creating problems at some point due to human error.
-
-### type
-
-The type of the package. It defaults to `library`.
-
-Package types are used for custom installation logic. If you have a package
-that needs some special logic, you can define a custom type. This could be a
-`symfony-bundle`, a `wordpress-plugin` or a `typo3-cms-extension`. These types
-will all be specific to certain projects, and they will need to provide an
-installer capable of installing packages of that type.
-
-Out of the box, Composer supports four types:
-
-- **library:** This is the default. It will simply copy the files to `vendor`.
-- **project:** This denotes a project rather than a library. For example
-  application shells like the [Symfony standard edition](https://github.com/symfony/symfony-standard),
-  CMSs like the [SilverStripe installer](https://github.com/silverstripe/silverstripe-installer)
-  or full fledged applications distributed as packages. This can for example
-  be used by IDEs to provide listings of projects to initialize when creating
-  a new workspace.
-- **metapackage:** An empty package that contains requirements and will trigger
-  their installation, but contains no files and will not write anything to the
-  filesystem. As such, it does not require a dist or source key to be
-  installable.
-- **composer-plugin:** A package of type `composer-plugin` may provide an
-  installer for other packages that have a custom type. Read more in the
-  [dedicated article](articles/custom-installers.md).
-
-Only use a custom type if you need custom logic during installation. It is
-recommended to omit this field and have it default to `library`.
-
-### keywords
-
-An array of keywords that the package is related to. These can be used for
-searching and filtering.
-
-Examples:
-
-- logging
-- events
-- database
-- redis
-- templating
-
-Optional.
-
-### homepage
-
-An URL to the website of the project.
-
-Optional.
-
-### readme
-
-A relative path to the readme document.
-
-Optional.
-
-### time
-
-Release date of the version.
-
-Must be in `YYYY-MM-DD` or `YYYY-MM-DD HH:MM:SS` format.
-
-Optional.
-
-### license
-
-The license of the package. This can be either a string or an array of strings.
-
-The recommended notation for the most common licenses is (alphabetical):
-
-- Apache-2.0
-- BSD-2-Clause
-- BSD-3-Clause
-- BSD-4-Clause
-- GPL-2.0-only / GPL-2.0-or-later
-- GPL-3.0-only / GPL-3.0-or-later
-- LGPL-2.1-only / LGPL-2.1-or-later
-- LGPL-3.0-only / LGPL-3.0-or-later
-- MIT
-
-Optional, but it is highly recommended to supply this. More identifiers are
-listed at the [SPDX Open Source License Registry](https://spdx.org/licenses/).
-
-For closed-source software, you may use `"proprietary"` as the license identifier.
-
-An Example:
-
-```json
-{
-    "license": "MIT"
-}
-```
-
-For a package, when there is a choice between licenses ("disjunctive license"),
-multiple can be specified as array.
-
-An Example for disjunctive licenses:
-
-```json
-{
-    "license": [
-       "LGPL-2.1-only",
-       "GPL-3.0-or-later"
-    ]
-}
-```
-
-Alternatively they can be separated with "or" and enclosed in parenthesis;
-
-```json
-{
-    "license": "(LGPL-2.1-only or GPL-3.0-or-later)"
-}
-```
-
-Similarly when multiple licenses need to be applied ("conjunctive license"),
-they should be separated with "and" and enclosed in parenthesis.
-
-### authors
-
-The authors of the package. This is an array of objects.
-
-Each author object can have following properties:
-
-* **name:** The author's name. Usually their real name.
-* **email:** The author's email address.
-* **homepage:** An URL to the author's website.
-* **role:** The author's role in the project (e.g. developer or translator)
-
-An example:
-
-```json
-{
-    "authors": [
-        {
-            "name": "Nils Adermann",
-            "email": "naderman@naderman.de",
-            "homepage": "http://www.naderman.de",
-            "role": "Developer"
-        },
-        {
-            "name": "Jordi Boggiano",
-            "email": "j.boggiano@seld.be",
-            "homepage": "https://seld.be",
-            "role": "Developer"
-        }
-    ]
-}
-```
-
-Optional, but highly recommended.
-
-### support
-
-Various information to get support about the project.
-
-Support information includes the following:
-
-* **email:** Email address for support.
-* **issues:** URL to the issue tracker.
-* **forum:** URL to the forum.
-* **wiki:** URL to the wiki.
-* **irc:** IRC channel for support, as irc://server/channel.
-* **source:** URL to browse or download the sources.
-* **docs:** URL to the documentation.
-* **rss:** URL to the RSS feed.
-
-An example:
-
-```json
-{
-    "support": {
-        "email": "support@example.org",
-        "irc": "irc://irc.freenode.org/composer"
-    }
-}
-```
-
-Optional.
-
-### Package links
-
-All of the following take an object which maps package names to
-versions of the package via version constraints. Read more about
-versions [here](articles/versions.md).
-
-Example:
-
-```json
-{
-    "require": {
-        "monolog/monolog": "1.0.*"
-    }
-}
-```
-
-All links are optional fields.
-
-`require` and `require-dev` additionally support stability flags ([root-only](04-schema.md#root-package)).
-These allow you to further restrict or expand the stability of a package beyond
-the scope of the [minimum-stability](#minimum-stability) setting. You can apply
-them to a constraint, or apply them to an empty constraint if you want to
-allow unstable packages of a dependency for example.
-
-Example:
-
-```json
-{
-    "require": {
-        "monolog/monolog": "1.0.*@beta",
-        "acme/foo": "@dev"
-    }
-}
-```
-
-If one of your dependencies has a dependency on an unstable package you need to
-explicitly require it as well, along with its sufficient stability flag.
-
-Example:
-
-Assuming `doctrine/doctrine-fixtures-bundle` requires `"doctrine/data-fixtures": "dev-master"`
-then inside the root composer.json you need to add the second line below to allow dev
-releases for the `doctrine/data-fixtures` package :
-
-```json
-{
-    "require": {
-        "doctrine/doctrine-fixtures-bundle": "dev-master",
-        "doctrine/data-fixtures": "@dev"
-    }
-}
-```
-
-`require` and `require-dev` additionally support explicit references (i.e.
-commit) for dev versions to make sure they are locked to a given state, even
-when you run update. These only work if you explicitly require a dev version
-and append the reference with `#<ref>`. This is also a
-[root-only](04-schema.md#root-package) feature and will be ignored in
-dependencies.
-
-Example:
-
-```json
-{
-    "require": {
-        "monolog/monolog": "dev-master#2eb0c0978d290a1c45346a1955188929cb4e5db7",
-        "acme/foo": "1.0.x-dev#abc123"
-    }
-}
-```
-
-> **Note:** This feature has severe technical limitations, as the
-> composer.json metadata will still be read from the branch name you specify
-> before the hash. You should therefore only use this as a temporary solution
-> during development to remediate transient issues, until you can switch to
-> tagged releases. The Composer team does not actively support this feature
-> and will not accept bug reports related to it.
-
-It is also possible to inline-alias a package constraint so that it matches
-a constraint that it otherwise would not. For more information [see the
-aliases article](articles/aliases.md).
-
-`require` and `require-dev` also support references to specific PHP versions
-and PHP extensions your project needs to run successfully.
-
-Example:
-
-```json
-{
-    "require" : {
-        "php" : "^5.5 || ^7.0",
-        "ext-mbstring": "*"
-    }
-}
-```
-
-> **Note:** It is important to list PHP extensions your project requires.
-> Not all PHP installations are created equal: some may miss extensions you
-> may consider as standard (such as `ext-mysqli` which is not installed by
-> default in Fedora/CentOS minimal installation systems). Failure to list
-> required PHP extensions may lead to a bad user experience: Composer will
-> install your package without any errors but it will then fail at run-time.
-> The `composer show --platform` command lists all PHP extensions available on
-> your system. You may use it to help you compile the list of extensions you
-> use and require. Alternatively you may use third party tools to analyze
-> your project for the list of extensions used.
-
-#### require
-
-Lists packages required by this package. The package will not be installed
-unless those requirements can be met.
-
-#### require-dev <span>([root-only](04-schema.md#root-package))</span>
-
-Lists packages required for developing this package, or running
-tests, etc. The dev requirements of the root package are installed by default.
-Both `install` or `update` support the `--no-dev` option that prevents dev
-dependencies from being installed.
-
-#### conflict
-
-Lists packages that conflict with this version of this package. They
-will not be allowed to be installed together with your package.
-
-Note that when specifying ranges like `<1.0 >=1.1` in a `conflict` link,
-this will state a conflict with all versions that are less than 1.0 *and* equal
-or newer than 1.1 at the same time, which is probably not what you want. You
-probably want to go for `<1.0 || >=1.1` in this case.
-
-#### replace
-
-Lists packages that are replaced by this package. This allows you to fork a
-package, publish it under a different name with its own version numbers, while
-packages requiring the original package continue to work with your fork because
-it replaces the original package.
-
-This is also useful for packages that contain sub-packages, for example the main
-symfony/symfony package contains all the Symfony Components which are also
-available as individual packages. If you require the main package it will
-automatically fulfill any requirement of one of the individual components,
-since it replaces them.
-
-Caution is advised when using replace for the sub-package purpose explained
-above. You should then typically only replace using `self.version` as a version
-constraint, to make sure the main package only replaces the sub-packages of
-that exact version, and not any other version, which would be incorrect.
-
-#### provide
-
-List of other packages that are provided by this package. This is mostly
-useful for common interfaces. A package could depend on some virtual
-`logger` package, any library that implements this logger interface would
-simply list it in `provide`.
-
-#### suggest
-
-Suggested packages that can enhance or work well with this package. These are
-informational and are displayed after the package is installed, to give
-your users a hint that they could add more packages, even though they are not
-strictly required.
-
-The format is like package links above, except that the values are free text
-and not version constraints.
-
-Example:
-
-```json
-{
-    "suggest": {
-        "monolog/monolog": "Allows more advanced logging of the application flow",
-        "ext-xml": "Needed to support XML format in class Foo"
-    }
-}
-```
-
-### autoload
-
-Autoload mapping for a PHP autoloader.
-
-[`PSR-4`](http://www.php-fig.org/psr/psr-4/) and [`PSR-0`](http://www.php-fig.org/psr/psr-0/)
-autoloading, `classmap` generation and `files` includes are supported.
-
-PSR-4 is the recommended way since it offers greater ease of use (no need
-to regenerate the autoloader when you add classes).
-
-#### PSR-4
-
-Under the `psr-4` key you define a mapping from namespaces to paths, relative to the
-package root. When autoloading a class like `Foo\\Bar\\Baz` a namespace prefix
-`Foo\\` pointing to a directory `src/` means that the autoloader will look for a
-file named `src/Bar/Baz.php` and include it if present. Note that as opposed to
-the older PSR-0 style, the prefix (`Foo\\`) is **not** present in the file path.
-
-Namespace prefixes must end in `\\` to avoid conflicts between similar prefixes.
-For example `Foo` would match classes in the `FooBar` namespace so the trailing
-backslashes solve the problem: `Foo\\` and `FooBar\\` are distinct.
-
-The PSR-4 references are all combined, during install/update, into a single
-key => value array which may be found in the generated file
-`vendor/composer/autoload_psr4.php`.
-
-Example:
-
-```json
-{
-    "autoload": {
-        "psr-4": {
-            "Monolog\\": "src/",
-            "Vendor\\Namespace\\": ""
-        }
-    }
-}
-```
-
-If you need to search for a same prefix in multiple directories,
-you can specify them as an array as such:
-
-```json
-{
-    "autoload": {
-        "psr-4": { "Monolog\\": ["src/", "lib/"] }
-    }
-}
-```
-
-If you want to have a fallback directory where any namespace will be looked for,
-you can use an empty prefix like:
-
-```json
-{
-    "autoload": {
-        "psr-4": { "": "src/" }
-    }
-}
-```
-
-#### PSR-0
-
-Under the `psr-0` key you define a mapping from namespaces to paths, relative to the
-package root. Note that this also supports the PEAR-style non-namespaced convention.
-
-Please note namespace declarations should end in `\\` to make sure the autoloader
-responds exactly. For example `Foo` would match in `FooBar` so the trailing
-backslashes solve the problem: `Foo\\` and `FooBar\\` are distinct.
-
-The PSR-0 references are all combined, during install/update, into a single key => value
-array which may be found in the generated file `vendor/composer/autoload_namespaces.php`.
-
-Example:
-
-```json
-{
-    "autoload": {
-        "psr-0": {
-            "Monolog\\": "src/",
-            "Vendor\\Namespace\\": "src/",
-            "Vendor_Namespace_": "src/"
-        }
-    }
-}
-```
-
-If you need to search for a same prefix in multiple directories,
-you can specify them as an array as such:
-
-```json
-{
-    "autoload": {
-        "psr-0": { "Monolog\\": ["src/", "lib/"] }
-    }
-}
-```
-
-The PSR-0 style is not limited to namespace declarations only but may be
-specified right down to the class level. This can be useful for libraries with
-only one class in the global namespace. If the php source file is also located
-in the root of the package, for example, it may be declared like this:
-
-```json
-{
-    "autoload": {
-        "psr-0": { "UniqueGlobalClass": "" }
-    }
-}
-```
-
-If you want to have a fallback directory where any namespace can be, you can
-use an empty prefix like:
-
-```json
-{
-    "autoload": {
-        "psr-0": { "": "src/" }
-    }
-}
-```
-
-#### Classmap
-
-The `classmap` references are all combined, during install/update, into a single
-key => value array which may be found in the generated file
-`vendor/composer/autoload_classmap.php`. This map is built by scanning for
-classes in all `.php` and `.inc` files in the given directories/files.
-
-You can use the classmap generation support to define autoloading for all libraries
-that do not follow PSR-0/4. To configure this you specify all directories or files
-to search for classes.
-
-Example:
-
-```json
-{
-    "autoload": {
-        "classmap": ["src/", "lib/", "Something.php"]
-    }
-}
-```
-
-#### Files
-
-If you want to require certain files explicitly on every request then you can use
-the `files` autoloading mechanism. This is useful if your package includes PHP functions
-that cannot be autoloaded by PHP.
-
-Example:
-
-```json
-{
-    "autoload": {
-        "files": ["src/MyLibrary/functions.php"]
-    }
-}
-```
-
-#### Exclude files from classmaps
-
-If you want to exclude some files or folders from the classmap you can use the `exclude-from-classmap` property.
-This might be useful to exclude test classes in your live environment, for example, as those will be skipped
-from the classmap even when building an optimized autoloader.
-
-The classmap generator will ignore all files in the paths configured here. The paths are absolute from the package
-root directory (i.e. composer.json location), and support `*` to match anything but a slash, and `**` to
-match anything. `**` is implicitly added to the end of the paths.
-
-Example:
-
-```json
-{
-    "autoload": {
-        "exclude-from-classmap": ["/Tests/", "/test/", "/tests/"]
-    }
-}
-```
-
-#### Optimizing the autoloader
-
-The autoloader can have quite a substantial impact on your request time
-(50-100ms per request in large frameworks using a lot of classes). See the
-[article about optimizing the autoloader](articles/autoloader-optimization.md)
-for more details on how to reduce this impact.
-
-### autoload-dev <span>([root-only](04-schema.md#root-package))</span>
-
-This section allows to define autoload rules for development purposes.
-
-Classes needed to run the test suite should not be included in the main autoload
-rules to avoid polluting the autoloader in production and when other people use
-your package as a dependency.
-
-Therefore, it is a good idea to rely on a dedicated path for your unit tests
-and to add it within the autoload-dev section.
-
-Example:
-
-```json
-{
-    "autoload": {
-        "psr-4": { "MyLibrary\\": "src/" }
-    },
-    "autoload-dev": {
-        "psr-4": { "MyLibrary\\Tests\\": "tests/" }
-    }
-}
-```
-
-### include-path
-
-> **DEPRECATED**: This is only present to support legacy projects, and all new code
-> should preferably use autoloading. As such it is a deprecated practice, but the
-> feature itself will not likely disappear from Composer.
-
-A list of paths which should get appended to PHP's `include_path`.
-
-Example:
-
-```json
-{
-    "include-path": ["lib/"]
-}
-```
-
-Optional.
-
-### target-dir
-
-> **DEPRECATED**: This is only present to support legacy PSR-0 style autoloading,
-> and all new code should preferably use PSR-4 without target-dir and projects
-> using PSR-0 with PHP namespaces are encouraged to migrate to PSR-4 instead.
-
-Defines the installation target.
-
-In case the package root is below the namespace declaration you cannot
-autoload properly. `target-dir` solves this problem.
-
-An example is Symfony. There are individual packages for the components. The
-Yaml component is under `Symfony\Component\Yaml`. The package root is that
-`Yaml` directory. To make autoloading possible, we need to make sure that it
-is not installed into `vendor/symfony/yaml`, but instead into
-`vendor/symfony/yaml/Symfony/Component/Yaml`, so that the autoloader can load
-it from `vendor/symfony/yaml`.
-
-To do that, `autoload` and `target-dir` are defined as follows:
-
-```json
-{
-    "autoload": {
-        "psr-0": { "Symfony\\Component\\Yaml\\": "" }
-    },
-    "target-dir": "Symfony/Component/Yaml"
-}
-```
-
-Optional.
-
-### minimum-stability <span>([root-only](04-schema.md#root-package))</span>
-
-This defines the default behavior for filtering packages by stability. This
-defaults to `stable`, so if you rely on a `dev` package, you should specify
-it in your file to avoid surprises.
-
-All versions of each package are checked for stability, and those that are less
-stable than the `minimum-stability` setting will be ignored when resolving
-your project dependencies. (Note that you can also specify stability requirements
-on a per-package basis using stability flags in the version constraints that you
-specify in a `require` block (see [package links](#package-links) for more details).
-
-Available options (in order of stability) are `dev`, `alpha`, `beta`, `RC`,
-and `stable`.
-
-### prefer-stable <span>([root-only](04-schema.md#root-package))</span>
-
-When this is enabled, Composer will prefer more stable packages over unstable
-ones when finding compatible stable packages is possible. If you require a
-dev version or only alphas are available for a package, those will still be
-selected granted that the minimum-stability allows for it.
-
-Use `"prefer-stable": true` to enable.
-
-### repositories <span>([root-only](04-schema.md#root-package))</span>
-
-Custom package repositories to use.
-
-By default Composer only uses the packagist repository. By specifying
-repositories you can get packages from elsewhere.
-
-Repositories are not resolved recursively. You can only add them to your main
-`composer.json`. Repository declarations of dependencies' `composer.json`s are
-ignored.
-
-The following repository types are supported:
-
-* **composer:** A Composer repository is simply a `packages.json` file served
-  via the network (HTTP, FTP, SSH), that contains a list of `composer.json`
-  objects with additional `dist` and/or `source` information. The `packages.json`
-  file is loaded using a PHP stream. You can set extra options on that stream
-  using the `options` parameter.
-* **vcs:** The version control system repository can fetch packages from git,
-  svn, fossil and hg repositories.
-* **pear:** With this you can import any pear repository into your Composer
-  project.
-* **package:** If you depend on a project that does not have any support for
-  composer whatsoever you can define the package inline using a `package`
-  repository. You basically inline the `composer.json` object.
-
-For more information on any of these, see [Repositories](05-repositories.md).
-
-Example:
-
-```json
-{
-    "repositories": [
-        {
-            "type": "composer",
-            "url": "http://packages.example.com"
-        },
-        {
-            "type": "composer",
-            "url": "https://packages.example.com",
-            "options": {
-                "ssl": {
-                    "verify_peer": "true"
-                }
-            }
-        },
-        {
-            "type": "vcs",
-            "url": "https://github.com/Seldaek/monolog"
-        },
-        {
-            "type": "pear",
-            "url": "https://pear2.php.net"
-        },
-        {
-            "type": "package",
-            "package": {
-                "name": "smarty/smarty",
-                "version": "3.1.7",
-                "dist": {
-                    "url": "https://www.smarty.net/files/Smarty-3.1.7.zip",
-                    "type": "zip"
-                },
-                "source": {
-                    "url": "https://smarty-php.googlecode.com/svn/",
-                    "type": "svn",
-                    "reference": "tags/Smarty_3_1_7/distribution/"
-                }
-            }
-        }
-    ]
-}
-```
-
-> **Note:** Order is significant here. When looking for a package, Composer
-will look from the first to the last repository, and pick the first match.
-By default Packagist is added last which means that custom repositories can
-override packages from it.
-
-Using JSON object notation is also possible. However, JSON key/value pairs
-are to be considered unordered so consistent behaviour cannot be guaranteed.
-
- ```json
-{
-    "repositories": {
-         "foo": {
-             "type": "composer",
-             "url": "http://packages.foo.com"
-         }
-    }
-}
- ```
-
-### config <span>([root-only](04-schema.md#root-package))</span>
-
-A set of configuration options. It is only used for projects. See
-[Config](06-config.md) for a description of each individual option.
-
-### scripts <span>([root-only](04-schema.md#root-package))</span>
-
-Composer allows you to hook into various parts of the installation process
-through the use of scripts.
-
-See [Scripts](articles/scripts.md) for events details and examples.
-
-### extra
-
-Arbitrary extra data for consumption by `scripts`.
-
-This can be virtually anything. To access it from within a script event
-handler, you can do:
-
-```php
-$extra = $event->getComposer()->getPackage()->getExtra();
-```
-
-Optional.
-
-### bin
-
-A set of files that should be treated as binaries and symlinked into the `bin-dir`
-(from config).
-
-See [Vendor Binaries](articles/vendor-binaries.md) for more details.
-
-Optional.
-
-### archive
-
-A set of options for creating package archives.
-
-The following options are supported:
-
-* **exclude:** Allows configuring a list of patterns for excluded paths. The
-  pattern syntax matches .gitignore files. A leading exclamation mark (!) will
-  result in any matching files to be included even if a previous pattern
-  excluded them. A leading slash will only match at the beginning of the project
-  relative path. An asterisk will not expand to a directory separator.
-
-Example:
-
-```json
-{
-    "archive": {
-        "exclude": ["/foo/bar", "baz", "/*.test", "!/foo/bar/baz"]
-    }
-}
-```
-
-The example will include `/dir/foo/bar/file`, `/foo/bar/baz`, `/file.php`,
-`/foo/my.test` but it will exclude `/foo/bar/any`, `/foo/baz`, and `/my.test`.
-
-Optional.
-
-### abandoned
-
-Indicates whether this package has been abandoned.
-
-It can be boolean or a package name/URL pointing to a recommended alternative.
-
-Examples:
-
-Use `"abandoned": true` to indicates this package is abandoned.
-Use `"abandoned": "monolog/monolog"` to indicates this package is abandoned and the
-recommended alternative is  `monolog/monolog`.
-
-Defaults to false.
-
-Optional.
-
-### non-feature-branches
-
-A list of regex patterns of branch names that are non-numeric (e.g. "latest" or something),
-that will NOT be handled as feature branches. This is an array of strings.
-
-If you have non-numeric branch names, for example like "latest", "current", "latest-stable"
-or something, that do not look like a version number, then Composer handles such branches
-as feature branches. This means it searches for parent branches, that look like a version
-or ends at special branches (like master) and the root package version number becomes the
-version of the parent branch or at least master or something.
-
-To handle non-numeric named branches as versions instead of searching for a parent branch
-with a valid version or special branch name like master, you can set patterns for branch
-names, that should be handled as dev version branches.
-
-This is really helpful when you have dependencies using "self.version", so that not dev-master,
-but the same branch is installed (in the example: latest-testing).
-
-An example:
-
-If you have a testing branch, that is heavily maintained during a testing phase and is
-deployed to your staging environment, normally `composer show -s` will give you `versions : * dev-master`.
-
-If you configure `latest-.*` as a pattern for non-feature-branches like this:
-
-```json
-{
-    "non-feature-branches": ["latest-.*"]
-}
-```
-
-Then `composer show -s` will give you `versions : * dev-latest-testing`.
-
-Optional.
-
-&larr; [Command-line interface](03-cli.md)  |  [Repositories](05-repositories.md) &rarr;

+ 0 - 713
vendor/composer/composer/doc/05-repositories.md

xqd
@@ -1,713 +0,0 @@
-# Repositories
-
-This chapter will explain the concept of packages and repositories, what kinds
-of repositories are available, and how they work.
-
-## Concepts
-
-Before we look at the different types of repositories that exist, we need to
-understand some of the basic concepts that Composer is built on.
-
-### Package
-
-Composer is a dependency manager. It installs packages locally. A package is
-essentially a directory containing something. In this case it is PHP
-code, but in theory it could be anything. And it contains a package
-description which has a name and a version. The name and the version are used
-to identify the package.
-
-In fact, internally Composer sees every version as a separate package. While
-this distinction does not matter when you are using Composer, it's quite
-important when you want to change it.
-
-In addition to the name and the version, there is useful metadata. The
-information most relevant for installation is the source definition, which
-describes where to get the package contents. The package data points to the
-contents of the package. And there are two options here: dist and source.
-
-**Dist:** The dist is a packaged version of the package data. Usually a
-released version, usually a stable release.
-
-**Source:** The source is used for development. This will usually originate
-from a source code repository, such as git. You can fetch this when you want
-to modify the downloaded package.
-
-Packages can supply either of these, or even both. Depending on certain
-factors, such as user-supplied options and stability of the package, one will
-be preferred.
-
-### Repository
-
-A repository is a package source. It's a list of packages/versions. Composer
-will look in all your repositories to find the packages your project requires.
-
-By default only the Packagist repository is registered in Composer. You can
-add more repositories to your project by declaring them in `composer.json`.
-
-Repositories are only available to the root package and the repositories
-defined in your dependencies will not be loaded. Read the
-[FAQ entry](faqs/why-can't-composer-load-repositories-recursively.md) if you
-want to learn why.
-
-## Types
-
-### Composer
-
-The main repository type is the `composer` repository. It uses a single
-`packages.json` file that contains all of the package metadata.
-
-This is also the repository type that packagist uses. To reference a
-`composer` repository, supply the path before the `packages.json` file.
-In the case of packagist, that file is located at `/packages.json`, so the URL of
-the repository would be `repo.packagist.org`. For `example.org/packages.json` the
-repository URL would be `example.org`.
-
-#### packages
-
-The only required field is `packages`. The JSON structure is as follows:
-
-```json
-{
-    "packages": {
-        "vendor/package-name": {
-            "dev-master": { @composer.json },
-            "1.0.x-dev": { @composer.json },
-            "0.0.1": { @composer.json },
-            "1.0.0": { @composer.json }
-        }
-    }
-}
-```
-
-The `@composer.json` marker would be the contents of the `composer.json` from
-that package version including as a minimum:
-
-* name
-* version
-* dist or source
-
-Here is a minimal package definition:
-
-```json
-{
-    "name": "smarty/smarty",
-    "version": "3.1.7",
-    "dist": {
-        "url": "https://www.smarty.net/files/Smarty-3.1.7.zip",
-        "type": "zip"
-    }
-}
-```
-
-It may include any of the other fields specified in the [schema](04-schema.md).
-
-#### notify-batch
-
-The `notify-batch` field allows you to specify a URL that will be called
-every time a user installs a package. The URL can be either an absolute path
-(that will use the same domain as the repository) or a fully qualified URL.
-
-An example value:
-
-```json
-{
-    "notify-batch": "/downloads/"
-}
-```
-
-For `example.org/packages.json` containing a `monolog/monolog` package, this
-would send a `POST` request to `example.org/downloads/` with following
-JSON request body:
-
-```json
-{
-    "downloads": [
-        {"name": "monolog/monolog", "version": "1.2.1.0"}
-    ]
-}
-```
-
-The version field will contain the normalized representation of the version
-number.
-
-This field is optional.
-
-#### provider-includes and providers-url
-
-The `provider-includes` field allows you to list a set of files that list
-package names provided by this repository. The hash should be a sha256 of
-the files in this case.
-
-The `providers-url` describes how provider files are found on the server. It
-is an absolute path from the repository root. It must contain the placeholders
-`%package%` and `%hash%`.
-
-An example:
-
-```json
-{
-    "provider-includes": {
-        "providers-a.json": {
-            "sha256": "f5b4bc0b354108ef08614e569c1ed01a2782e67641744864a74e788982886f4c"
-        },
-        "providers-b.json": {
-            "sha256": "b38372163fac0573053536f5b8ef11b86f804ea8b016d239e706191203f6efac"
-        }
-    },
-    "providers-url": "/p/%package%$%hash%.json"
-}
-```
-
-Those files contain lists of package names and hashes to verify the file
-integrity, for example:
-
-```json
-{
-    "providers": {
-        "acme/foo": {
-            "sha256": "38968de1305c2e17f4de33aea164515bc787c42c7e2d6e25948539a14268bb82"
-        },
-        "acme/bar": {
-            "sha256": "4dd24c930bd6e1103251306d6336ac813b563a220d9ca14f4743c032fb047233"
-        }
-    }
-}
-```
-
-The file above declares that acme/foo and acme/bar can be found in this
-repository, by loading the file referenced by `providers-url`, replacing
-`%package%` by the vendor namespaced package name and `%hash%` by the
-sha256 field. Those files themselves contain package definitions as
-described [above](#packages).
-
-These fields are optional. You probably don't need them for your own custom
-repository.
-
-#### stream options
-
-The `packages.json` file is loaded using a PHP stream. You can set extra
-options on that stream using the `options` parameter. You can set any valid
-PHP stream context option. See [Context options and
-parameters](https://php.net/manual/en/context.php) for more information.
-
-### VCS
-
-VCS stands for version control system. This includes versioning systems like
-git, svn, fossil or hg. Composer has a repository type for installing packages
-from these systems.
-
-#### Loading a package from a VCS repository
-
-There are a few use cases for this. The most common one is maintaining your
-own fork of a third party library. If you are using a certain library for your
-project and you decide to change something in the library, you will want your
-project to use the patched version. If the library is on GitHub (this is the
-case most of the time), you can simply fork it there and push your changes to
-your fork. After that you update the project's `composer.json`. All you have
-to do is add your fork as a repository and update the version constraint to
-point to your custom branch. In `composer.json`, you should prefix your custom
-branch name with `"dev-"`. For version constraint naming conventions see
-[Libraries](02-libraries.md) for more information.
-
-Example assuming you patched monolog to fix a bug in the `bugfix` branch:
-
-```json
-{
-    "repositories": [
-        {
-            "type": "vcs",
-            "url": "https://github.com/igorw/monolog"
-        }
-    ],
-    "require": {
-        "monolog/monolog": "dev-bugfix"
-    }
-}
-```
-
-When you run `php composer.phar update`, you should get your modified version
-of `monolog/monolog` instead of the one from packagist.
-
-Note that you should not rename the package unless you really intend to fork
-it in the long term, and completely move away from the original package.
-Composer will correctly pick your package over the original one since the
-custom repository has priority over packagist. If you want to rename the
-package, you should do so in the default (often master) branch and not in a
-feature branch, since the package name is taken from the default branch.
-
-Also note that the override will not work if you change the `name` property
-in your forked repository's `composer.json` file as this needs to match the
-original for the override to work.
-
-If other dependencies rely on the package you forked, it is possible to
-inline-alias it so that it matches a constraint that it otherwise would not.
-For more information [see the aliases article](articles/aliases.md).
-
-#### Using private repositories
-
-Exactly the same solution allows you to work with your private repositories at
-GitHub and BitBucket:
-
-```json
-{
-    "require": {
-        "vendor/my-private-repo": "dev-master"
-    },
-    "repositories": [
-        {
-            "type": "vcs",
-            "url":  "git@bitbucket.org:vendor/my-private-repo.git"
-        }
-    ]
-}
-```
-
-The only requirement is the installation of SSH keys for a git client.
-
-#### Git alternatives
-
-Git is not the only version control system supported by the VCS repository.
-The following are supported:
-
-* **Git:** [git-scm.com](https://git-scm.com)
-* **Subversion:** [subversion.apache.org](https://subversion.apache.org)
-* **Mercurial:** [mercurial-scm.org](https://www.mercurial-scm.org)
-* **Fossil**: [fossil-scm.org](https://www.fossil-scm.org/)
-
-To get packages from these systems you need to have their respective clients
-installed. That can be inconvenient. And for this reason there is special
-support for GitHub and BitBucket that use the APIs provided by these sites, to
-fetch the packages without having to install the version control system. The
-VCS repository provides `dist`s for them that fetch the packages as zips.
-
-* **GitHub:** [github.com](https://github.com) (Git)
-* **BitBucket:** [bitbucket.org](https://bitbucket.org) (Git and Mercurial)
-
-The VCS driver to be used is detected automatically based on the URL. However,
-should you need to specify one for whatever reason, you can use `git-bitbucket`,
-`hg-bitbucket`, `github`, `gitlab`, `perforce`, `fossil`, `git`, `svn` or `hg`
-as the repository type instead of `vcs`.
-
-If you set the `no-api` key to `true` on a github repository it will clone the
-repository as it would with any other git repository instead of using the
-GitHub API. But unlike using the `git` driver directly, Composer will still
-attempt to use github's zip files.
-
-Please note:
-* **To let Composer choose which driver to use** the repository type needs to be defined as "vcs"
-* **If you already used a private repository**, this means Composer should have cloned it in cache. If you want to install the same package with drivers, remember to launch the command `composer clearcache` followed by the command `composer update` to update composer cache and install the package from dist.
-
-#### BitBucket Driver Configuration
-
-The BitBucket driver uses OAuth to access your private repositories via the BitBucket REST APIs and you will need to create an OAuth consumer to use the driver, please refer to [Atlassian's Documentation](https://confluence.atlassian.com/bitbucket/oauth-on-bitbucket-cloud-238027431.html). You will need to fill the callback url with something to satisfy BitBucket, but the address does not need to go anywhere and is not used by Composer.
-
-After creating an OAuth consumer in the BitBucket control panel, you need to setup your auth.json file with
-the credentials like this (more info [here](https://getcomposer.org/doc/06-config.md#bitbucket-oauth)):
-```json
-{
-    "bitbucket-oauth": {
-        "bitbucket.org": {
-            "consumer-key": "myKey",
-            "consumer-secret": "mySecret"
-        }
-    }
-}
-```
-**Note that the repository endpoint needs to be https rather than git.**
-
-Alternatively if you prefer not to have your OAuth credentials on your filesystem you may export the ```bitbucket-oauth``` block above to the [COMPOSER_AUTH](https://getcomposer.org/doc/03-cli.md#composer-auth) environment variable instead.
-
-#### Subversion Options
-
-Since Subversion has no native concept of branches and tags, Composer assumes
-by default that code is located in `$url/trunk`, `$url/branches` and
-`$url/tags`. If your repository has a different layout you can change those
-values. For example if you used capitalized names you could configure the
-repository like this:
-
-```json
-{
-    "repositories": [
-        {
-            "type": "vcs",
-            "url": "http://svn.example.org/projectA/",
-            "trunk-path": "Trunk",
-            "branches-path": "Branches",
-            "tags-path": "Tags"
-        }
-    ]
-}
-```
-
-If you have no branches or tags directory you can disable them entirely by
-setting the `branches-path` or `tags-path` to `false`.
-
-If the package is in a sub-directory, e.g. `/trunk/foo/bar/composer.json` and
-`/tags/1.0/foo/bar/composer.json`, then you can make Composer access it by
-setting the `"package-path"` option to the sub-directory, in this example it
-would be `"package-path": "foo/bar/"`.
-
-If you have a private Subversion repository you can save credentials in the
-http-basic section of your config (See [Schema](04-schema.md)):
-
-```json
-{
-    "http-basic": {
-        "svn.example.org": {
-            "username": "username",
-            "password": "password"
-        }
-    }
-}
-```
-
-If your Subversion client is configured to store credentials by default these
-credentials will be saved for the current user and existing saved credentials
-for this server will be overwritten. To change this behavior by setting the
-`"svn-cache-credentials"` option in your repository configuration:
-
-```json
-{
-    "repositories": [
-        {
-            "type": "vcs",
-            "url": "http://svn.example.org/projectA/",
-            "svn-cache-credentials": false
-        }
-    ]
-}
-```
-
-### PEAR
-
-It is possible to install packages from any PEAR channel by using the `pear`
-repository. Composer will prefix all package names with `pear-{channelName}/`
-to avoid conflicts. All packages are also aliased with prefix
-`pear-{channelAlias}/`.
-
-Example using `pear2.php.net`:
-
-```json
-{
-    "repositories": [
-        {
-            "type": "pear",
-            "url": "https://pear2.php.net"
-        }
-    ],
-    "require": {
-        "pear-pear2.php.net/PEAR2_Text_Markdown": "*",
-        "pear-pear2/PEAR2_HTTP_Request": "*"
-    }
-}
-```
-
-In this case the short name of the channel is `pear2`, so the
-`PEAR2_HTTP_Request` package name becomes `pear-pear2/PEAR2_HTTP_Request`.
-
-> **Note:** The `pear` repository requires doing quite a few requests per
-> package, so this may considerably slow down the installation process.
-
-#### Custom vendor alias
-
-It is possible to alias PEAR channel packages with a custom vendor name.
-
-Example:
-
-Suppose you have a private PEAR repository and wish to use Composer to
-incorporate dependencies from a VCS. Your PEAR repository contains the
-following packages:
-
- * `BasePackage`
- * `IntermediatePackage`, which depends on `BasePackage`
- * `TopLevelPackage1` and `TopLevelPackage2` which both depend
-    on `IntermediatePackage`
-
-Without a vendor alias, Composer will use the PEAR channel name as the
-vendor portion of the package name:
-
- * `pear-pear.foobar.repo/BasePackage`
- * `pear-pear.foobar.repo/IntermediatePackage`
- * `pear-pear.foobar.repo/TopLevelPackage1`
- * `pear-pear.foobar.repo/TopLevelPackage2`
-
-Suppose at a later time you wish to migrate your PEAR packages to a
-Composer repository and naming scheme, and adopt the vendor name of `foobar`.
-Projects using your PEAR packages would not see the updated packages, since
-they have a different vendor name (`foobar/IntermediatePackage` vs
-`pear-pear.foobar.repo/IntermediatePackage`).
-
-By specifying `vendor-alias` for the PEAR repository from the start, you can
-avoid this scenario and future-proof your package names.
-
-To illustrate, the following example would get the `BasePackage`,
-`TopLevelPackage1`, and `TopLevelPackage2` packages from your PEAR repository
-and `IntermediatePackage` from a Github repository:
-
-```json
-{
-    "repositories": [
-        {
-            "type": "git",
-            "url": "https://github.com/foobar/intermediate.git"
-        },
-        {
-            "type": "pear",
-            "url": "http://pear.foobar.repo",
-            "vendor-alias": "foobar"
-        }
-    ],
-    "require": {
-        "foobar/TopLevelPackage1": "*",
-        "foobar/TopLevelPackage2": "*"
-    }
-}
-```
-
-### Package
-
-If you want to use a project that does not support Composer through any of the
-means above, you still can define the package yourself by using a `package`
-repository.
-
-Basically, you define the same information that is included in the `composer`
-repository's `packages.json`, but only for a single package. Again, the
-minimum required fields are `name`, `version`, and either of `dist` or
-`source`.
-
-Here is an example for the smarty template engine:
-
-```json
-{
-    "repositories": [
-        {
-            "type": "package",
-            "package": {
-                "name": "smarty/smarty",
-                "version": "3.1.7",
-                "dist": {
-                    "url": "https://www.smarty.net/files/Smarty-3.1.7.zip",
-                    "type": "zip"
-                },
-                "source": {
-                    "url": "http://smarty-php.googlecode.com/svn/",
-                    "type": "svn",
-                    "reference": "tags/Smarty_3_1_7/distribution/"
-                },
-                "autoload": {
-                    "classmap": ["libs/"]
-                }
-            }
-        }
-    ],
-    "require": {
-        "smarty/smarty": "3.1.*"
-    }
-}
-```
-
-Typically you would leave the source part off, as you don't really need it.
-
-> **Note**: This repository type has a few limitations and should be avoided
-> whenever possible:
->
-> - Composer will not update the package unless you change the `version` field.
-> - Composer will not update the commit references, so if you use `master` as
->   reference you will have to delete the package to force an update, and will
->   have to deal with an unstable lock file.
-
-The `"package"` key in a `package` repository may be set to an array to define multiple versions of a package:
-
-```json
-{
-    "repositories": [
-        {
-            "type": "package",
-            "package": [
-                {
-                    "name": "foo/bar",
-                    "version": "1.0.0",
-                    ...
-                },
-                {
-                    "name": "foo/bar",
-                    "version": "2.0.0",
-                    ...
-                }
-            ]
-        }
-    ]
-}
-```
-
-## Hosting your own
-
-While you will probably want to put your packages on packagist most of the
-time, there are some use cases for hosting your own repository.
-
-* **Private company packages:** If you are part of a company that uses Composer
-  for their packages internally, you might want to keep those packages private.
-
-* **Separate ecosystem:** If you have a project which has its own ecosystem,
-  and the packages aren't really reusable by the greater PHP community, you
-  might want to keep them separate to packagist. An example of this would be
-  wordpress plugins.
-
-For hosting your own packages, a native `composer` type of repository is
-recommended, which provides the best performance.
-
-There are a few tools that can help you create a `composer` repository.
-
-### Private Packagist
-
-[Private Packagist](https://packagist.com/) is a hosted or self-hosted
-application providing private package hosting as well as mirroring of
-GitHub, Packagist.org and other package repositories.
-
-Check out [Packagist.com](https://packagist.com/) for more information.
-
-### Satis
-
-Satis is a static `composer` repository generator. It is a bit like an ultra-
-lightweight, static file-based version of packagist.
-
-You give it a `composer.json` containing repositories, typically VCS and
-package repository definitions. It will fetch all the packages that are
-`require`d and dump a `packages.json` that is your `composer` repository.
-
-Check [the satis GitHub repository](https://github.com/composer/satis) and
-the [Satis article](articles/handling-private-packages-with-satis.md) for more
-information.
-
-### Artifact
-
-There are some cases, when there is no ability to have one of the previously
-mentioned repository types online, even the VCS one. Typical example could be
-cross-organisation library exchange through built artifacts. Of course, most
-of the times they are private. To simplify maintenance, one can simply use a
-repository of type `artifact` with a folder containing ZIP archives of those
-private packages:
-
-```json
-{
-    "repositories": [
-        {
-            "type": "artifact",
-            "url": "path/to/directory/with/zips/"
-        }
-    ],
-    "require": {
-        "private-vendor-one/core": "15.6.2",
-        "private-vendor-two/connectivity": "*",
-        "acme-corp/parser": "10.3.5"
-    }
-}
-```
-
-Each zip artifact is a ZIP archive with `composer.json` in root folder:
-
-```sh
-unzip -l acme-corp-parser-10.3.5.zip
-
-composer.json
-...
-```
-
-If there are two archives with different versions of a package, they are both
-imported. When an archive with a newer version is added in the artifact folder
-and you run `update`, that version will be imported as well and Composer will
-update to the latest version.
-
-### Path
-
-In addition to the artifact repository, you can use the path one, which allows
-you to depend on a local directory, either absolute or relative. This can be
-especially useful when dealing with monolithic repositories.
-
-For instance, if you have the following directory structure in your repository:
-```
-- apps
-\_ my-app
-  \_ composer.json
-- packages
-\_ my-package
-  \_ composer.json
-```
-
-Then, to add the package `my/package` as a dependency, in your
-`apps/my-app/composer.json` file, you can use the following configuration:
-
-```json
-{
-    "repositories": [
-        {
-            "type": "path",
-            "url": "../../packages/my-package"
-        }
-    ],
-    "require": {
-        "my/package": "*"
-    }
-}
-```
-
-If the package is a local VCS repository, the version may be inferred by
-the branch or tag that is currently checked out. Otherwise, the version should
-be explicitly defined in the package's `composer.json` file. If the version
-cannot be resolved by these means, it is assumed to be `dev-master`.
-
-The local package will be symlinked if possible, in which case the output in
-the console will read `Symlinked from ../../packages/my-package`. If symlinking
-is _not_ possible the package will be copied. In that case, the console will
-output `Mirrored from ../../packages/my-package`.
-
-Instead of default fallback strategy you can force to use symlink with
-`"symlink": true` or mirroring with `"symlink": false` option. Forcing
-mirroring can be useful when deploying or generating package from a
-monolithic repository.
-
-```json
-{
-    "repositories": [
-        {
-            "type": "path",
-            "url": "../../packages/my-package",
-            "options": {
-                "symlink": false
-            }
-        }
-    ]
-}
-```
-
-Leading tildes are expanded to the current user's home folder, and environment
-variables are parsed in both Windows and Linux/Mac notations. For example
-`~/git/mypackage` will automatically load the mypackage clone from
-`/home/<username>/git/mypackage`, equivalent to `$HOME/git/mypackage` or
-`%USERPROFILE%/git/mypackage`.
-
-> **Note:** Repository paths can also contain wildcards like ``*`` and ``?``.
-> For details, see the [PHP glob function](http://php.net/glob).
-
-## Disabling Packagist.org
-
-You can disable the default Packagist.org repository by adding this to your
-`composer.json`:
-
-```json
-{
-    "repositories": [
-        {
-            "packagist.org": false
-        }
-    ]
-}
-```
-
-You can disable Packagist.org globally by using the global config flag:
-
-```bash
-composer config -g repo.packagist false
-```
-
-&larr; [Schema](04-schema.md)  |  [Config](06-config.md) &rarr;

+ 0 - 277
vendor/composer/composer/doc/06-config.md

xqd
@@ -1,277 +0,0 @@
-# Config
-
-This chapter will describe the `config` section of the `composer.json`
-[schema](04-schema.md).
-
-## process-timeout
-
-Defaults to `300`. The duration processes like git clones can run before
-Composer assumes they died out. You may need to make this higher if you have a
-slow connection or huge vendors.
-
-## use-include-path
-
-Defaults to `false`. If `true`, the Composer autoloader will also look for classes
-in the PHP include path.
-
-## preferred-install
-
-Defaults to `auto` and can be any of `source`, `dist` or `auto`. This option
-allows you to set the install method Composer will prefer to use. Can
-optionally be a hash of patterns for more granular install preferences.
-
-```json
-{
-    "config": {
-        "preferred-install": {
-            "my-organization/stable-package": "dist",
-            "my-organization/*": "source",
-            "partner-organization/*": "auto",
-            "*": "dist"
-        }
-    }
-}
-```
-
-> **Note:** Order matters. More specific patterns should be earlier than
-> more relaxed patterns. When mixing the string notation with the hash
-> configuration in global and package configurations the string notation
-> is translated to a `*` package pattern.
-
-## store-auths
-
-What to do after prompting for authentication, one of: `true` (always store),
-`false` (do not store) and `"prompt"` (ask every time), defaults to `"prompt"`.
-
-## github-protocols
-
-Defaults to `["https", "ssh", "git"]`. A list of protocols to use when cloning
-from github.com, in priority order. By default `git` is present but only if [secure-http](#secure-http)
-is disabled, as the git protocol is not encrypted. If you want your origin remote
-push URLs to be using https and not ssh (`git@github.com:...`), then set the protocol
-list to be only `["https"]` and Composer will stop overwriting the push URL to an ssh
-URL.
-
-## github-oauth
-
-A list of domain names and oauth keys. For example using `{"github.com":
-"oauthtoken"}` as the value of this option will use `oauthtoken` to access
-private repositories on github and to circumvent the low IP-based rate limiting
-of their API. [Read
-more](articles/troubleshooting.md#api-rate-limit-and-oauth-tokens) on how to get
-an OAuth token for GitHub.
-
-## gitlab-oauth
-
-A list of domain names and oauth keys. For example using `{"gitlab.com":
-"oauthtoken"}` as the value of this option will use `oauthtoken` to access
-private repositories on gitlab. Please note: If the package is not hosted at 
-gitlab.com the domain names must be also specified with the 
-[`gitlab-domains`](06-config.md#gitlab-domains) option.
-
-## gitlab-token
-
-A list of domain names and private tokens. For example using `{"gitlab.com":
-"privatetoken"}` as the value of this option will use `privatetoken` to access
-private repositories on gitlab. Please note: If the package is not hosted at 
-gitlab.com the domain names must be also specified with the 
-[`gitlab-domains`](06-config.md#gitlab-domains) option.
-
-## disable-tls
-
-Defaults to `false`. If set to true all HTTPS URLs will be tried with HTTP
-instead and no network level encryption is performed. Enabling this is a
-security risk and is NOT recommended. The better way is to enable the
-php_openssl extension in php.ini.
-
-## secure-http
-
-Defaults to `true`. If set to true only HTTPS URLs are allowed to be
-downloaded via Composer. If you really absolutely need HTTP access to something
-then you can disable it, but using [Let's Encrypt](https://letsencrypt.org/) to
-get a free SSL certificate is generally a better alternative.
-
-## bitbucket-oauth
-
-A list of domain names and consumers. For example using `{"bitbucket.org":
-{"consumer-key": "myKey", "consumer-secret": "mySecret"}}`. [Read](https://confluence.atlassian.com/bitbucket/oauth-on-bitbucket-cloud-238027431.html)
-how to set up a consumer on Bitbucket.
-
-## cafile
-
-Location of Certificate Authority file on local filesystem. In PHP 5.6+ you
-should rather set this via openssl.cafile in php.ini, although PHP 5.6+ should
-be able to detect your system CA file automatically.
-
-## capath
-
-If cafile is not specified or if the certificate is not found there, the
-directory pointed to by capath is searched for a suitable certificate.
-capath must be a correctly hashed certificate directory.
-
-## http-basic
-
-A list of domain names and username/passwords to authenticate against them. For
-example using `{"example.org": {"username": "alice", "password": "foo"}}` as the
-value of this option will let Composer authenticate against example.org.
-
-> **Note:** Authentication-related config options like `http-basic` and
-> `github-oauth` can also be specified inside a `auth.json` file that goes
-> besides your `composer.json`. That way you can gitignore it and every
-> developer can place their own credentials in there.
-
-## platform
-
-Lets you fake platform packages (PHP and extensions) so that you can emulate a
-production env or define your target platform in the config. Example: `{"php":
-"7.0.3", "ext-something": "4.0.3"}`.
-
-## vendor-dir
-
-Defaults to `vendor`. You can install dependencies into a different directory if
-you want to. `$HOME` and `~` will be replaced by your home directory's path in
-vendor-dir and all `*-dir` options below.
-
-## bin-dir
-
-Defaults to `vendor/bin`. If a project includes binaries, they will be symlinked
-into this directory.
-
-## data-dir
-
-Defaults to `C:\Users\<user>\AppData\Roaming\Composer` on Windows,
-`$XDG_DATA_HOME/composer` on unix systems that follow the XDG Base Directory
-Specifications, and `$home` on other unix systems. Right now it is only
-used for storing past composer.phar files to be able to rollback to older
-versions. See also [COMPOSER_HOME](03-cli.md#composer-home).
-
-## cache-dir
-
-Defaults to `C:\Users\<user>\AppData\Local\Composer` on Windows,
-`$XDG_CACHE_HOME/composer` on unix systems that follow the XDG Base Directory
-Specifications, and `$home/cache` on other unix systems. Stores all the caches
-used by Composer. See also [COMPOSER_HOME](03-cli.md#composer-home).
-
-## cache-files-dir
-
-Defaults to `$cache-dir/files`. Stores the zip archives of packages.
-
-## cache-repo-dir
-
-Defaults to `$cache-dir/repo`. Stores repository metadata for the `composer`
-type and the VCS repos of type `svn`, `fossil`, `github` and `bitbucket`.
-
-## cache-vcs-dir
-
-Defaults to `$cache-dir/vcs`. Stores VCS clones for loading VCS repository
-metadata for the `git`/`hg` types and to speed up installs.
-
-## cache-files-ttl
-
-Defaults to `15552000` (6 months). Composer caches all dist (zip, tar, ..)
-packages that it downloads. Those are purged after six months of being unused by
-default. This option allows you to tweak this duration (in seconds) or disable
-it completely by setting it to 0.
-
-## cache-files-maxsize
-
-Defaults to `300MiB`. Composer caches all dist (zip, tar, ..) packages that it
-downloads. When the garbage collection is periodically ran, this is the maximum
-size the cache will be able to use. Older (less used) files will be removed
-first until the cache fits.
-
-## bin-compat
-
-Defaults to `auto`. Determines the compatibility of the binaries to be installed.
-If it is `auto` then Composer only installs .bat proxy files when on Windows. If
-set to `full` then both .bat files for Windows and scripts for Unix-based
-operating systems will be installed for each binary. This is mainly useful if you
-run Composer inside a linux VM but still want the .bat proxies available for use
-in the Windows host OS.
-
-## prepend-autoloader
-
-Defaults to `true`. If `false`, the Composer autoloader will not be prepended to
-existing autoloaders. This is sometimes required to fix interoperability issues
-with other autoloaders.
-
-## autoloader-suffix
-
-Defaults to `null`. String to be used as a suffix for the generated Composer
-autoloader. When null a random one will be generated.
-
-## optimize-autoloader
-
-Defaults to `false`. If `true`, always optimize when dumping the autoloader.
-
-## sort-packages
-
-Defaults to `false`. If `true`, the `require` command keeps packages sorted
-by name in `composer.json` when adding a new package.
-
-## classmap-authoritative
-
-Defaults to `false`. If `true`, the Composer autoloader will only load classes
-from the classmap. Implies `optimize-autoloader`.
-
-## apcu-autoloader
-
-Defaults to `false`. If `true`, the Composer autoloader will check for APCu and
-use it to cache found/not-found classes when the extension is enabled.
-
-## github-domains
-
-Defaults to `["github.com"]`. A list of domains to use in github mode. This is
-used for GitHub Enterprise setups.
-
-## github-expose-hostname
-
-Defaults to `true`. If `false`, the OAuth tokens created to access the
-github API will have a date instead of the machine hostname.
-
-## gitlab-domains
-
-Defaults to `["gitlab.com"]`. A list of domains of GitLab servers.
-This is used if you use the `gitlab` repository type.
-
-## notify-on-install
-
-Defaults to `true`. Composer allows repositories to define a notification URL,
-so that they get notified whenever a package from that repository is installed.
-This option allows you to disable that behaviour.
-
-## discard-changes
-
-Defaults to `false` and can be any of `true`, `false` or `"stash"`. This option
-allows you to set the default style of handling dirty updates when in
-non-interactive mode. `true` will always discard changes in vendors, while
-`"stash"` will try to stash and reapply. Use this for CI servers or deploy
-scripts if you tend to have modified vendors.
-
-## archive-format
-
-Defaults to `tar`. Composer allows you to add a default archive format when the
-workflow needs to create a dedicated archiving format.
-
-## archive-dir
-
-Defaults to `.`. Composer allows you to add a default archive directory when the
-workflow needs to create a dedicated archiving format. Or for easier development
-between modules.
-
-Example:
-
-```json
-{
-    "config": {
-        "archive-dir": "/home/user/.composer/repo"
-    }
-}
-```
-
-## htaccess-protect
-
-Defaults to `true`. If set to `false`, Composer will not create `.htaccess` files
-in the composer home, cache, and data directories.
-
-&larr; [Repositories](05-repositories.md)  |  [Community](07-community.md) &rarr;

+ 0 - 35
vendor/composer/composer/doc/07-community.md

xqd
@@ -1,35 +0,0 @@
-# Community
-
-There are many people using Composer already, and quite a few of them are
-contributing.
-
-## Contributing
-
-If you would like to contribute to Composer, please read the
-[README](https://github.com/composer/composer) and
-[CONTRIBUTING](https://github.com/composer/composer/blob/master/.github/CONTRIBUTING.md)
-documents.
-
-The most important guidelines are described as follows:
-
-> All code contributions - including those of people having commit access - must
-> go through a pull request and approved by a core developer before being
-> merged. This is to ensure proper review of all the code.
->
-> Fork the project, create a feature branch, and send us a pull request.
->
-> To ensure a consistent code base, you should make sure the code follows
-> the [PSR-2 Coding Standards](http://www.php-fig.org/psr/psr-2/).
-
-## IRC / mailing list
-
-Mailing lists for [user support](https://groups.google.com/group/composer-users) and
-[development](https://groups.google.com/group/composer-dev).
-
-IRC channels are on irc.freenode.org: [#composer](irc://irc.freenode.org/composer)
-for users and [#composer-dev](irc://irc.freenode.org/composer-dev) for development.
-
-Stack Overflow has a growing collection of
-[Composer related questions](https://stackoverflow.com/questions/tagged/composer-php).
-
-&larr; [Config](06-config.md)

+ 0 - 105
vendor/composer/composer/doc/articles/aliases.md

xqd
@@ -1,105 +0,0 @@
-<!--
-    tagline: Alias branch names to versions
--->
-
-# Aliases
-
-## Why aliases?
-
-When you are using a VCS repository, you will only get comparable versions for
-branches that look like versions, such as `2.0` or `2.0.x`. For your `master` branch, you
-will get a `dev-master` version. For your `bugfix` branch, you will get a
-`dev-bugfix` version.
-
-If your `master` branch is used to tag releases of the `1.0` development line,
-i.e. `1.0.1`, `1.0.2`, `1.0.3`, etc., any package depending on it will
-probably require version `1.0.*`.
-
-If anyone wants to require the latest `dev-master`, they have a problem: Other
-packages may require `1.0.*`, so requiring that dev version will lead to
-conflicts, since `dev-master` does not match the `1.0.*` constraint.
-
-Enter aliases.
-
-## Branch alias
-
-The `dev-master` branch is one in your main VCS repo. It is rather common that
-someone will want the latest master dev version. Thus, Composer allows you to
-alias your `dev-master` branch to a `1.0.x-dev` version. It is done by
-specifying a `branch-alias` field under `extra` in `composer.json`:
-
-```json
-{
-    "extra": {
-        "branch-alias": {
-            "dev-master": "1.0.x-dev"
-        }
-    }
-}
-```
-
-If you alias a non-comparable version (such as dev-develop) `dev-` must prefix the
-branch name. You may also alias a comparable version (i.e. start with numbers,
-and end with `.x-dev`), but only as a more specific version.
-For example, 1.x-dev could be aliased as 1.2.x-dev.
-
-The alias must be a comparable dev version, and the `branch-alias` must be present on
-the branch that it references. For `dev-master`, you need to commit it on the
-`master` branch.
-
-As a result, anyone can now require `1.0.*` and it will happily install
-`dev-master`.
-
-In order to use branch aliasing, you must own the repository of the package
-being aliased. If you want to alias a third party package without maintaining
-a fork of it, use inline aliases as described below.
-
-## Require inline alias
-
-Branch aliases are great for aliasing main development lines. But in order to
-use them you need to have control over the source repository, and you need to
-commit changes to version control.
-
-This is not really fun when you want to try a bugfix of some library that
-is a dependency of your local project.
-
-For this reason, you can alias packages in your `require` and `require-dev`
-fields. Let's say you found a bug in the `monolog/monolog` package. You cloned
-[Monolog](https://github.com/Seldaek/monolog) on GitHub and fixed the issue in
-a branch named `bugfix`. Now you want to install that version of monolog in your
-local project.
-
-You are using `symfony/monolog-bundle` which requires `monolog/monolog` version
-`1.*`. So you need your `dev-bugfix` to match that constraint.
-
-Add this to your project's root `composer.json`:
-
-```json
-{
-    "repositories": [
-        {
-            "type": "vcs",
-            "url": "https://github.com/you/monolog"
-        }
-    ],
-    "require": {
-        "symfony/monolog-bundle": "2.0",
-        "monolog/monolog": "dev-bugfix as 1.0.x-dev"
-    }
-}
-```
-
-That will fetch the `dev-bugfix` version of `monolog/monolog` from your GitHub
-and alias it to `1.0.x-dev`.
-
-> **Note:** Inline aliasing is a root-only feature. If a package with inline
-> aliases is required, the alias (right of the `as`) is used as the version
-> constraint. The part left of the `as` is discarded. As a consequence, if
-> A requires B and B requires `monolog/monolog` version `dev-bugfix as 1.0.x-dev`,
-> installing A will make B require `1.0.x-dev`, which may exist as a branch
-> alias or an actual `1.0` branch. If it does not, it must be
-> inline-aliased again in A's `composer.json`.
-
-> **Note:** Inline aliasing should be avoided, especially for published
-> packages/libraries. If you found a bug, try and get your fix merged upstream.
-> This helps to avoid issues for users of your package.

+ 0 - 111
vendor/composer/composer/doc/articles/autoloader-optimization.md

xqd
@@ -1,111 +0,0 @@
-<!--
-    tagline: How to reduce the performance impact of the autoloader
--->
-
-# Autoloader Optimization
-
-By default, the Composer autoloader runs relatively fast. However, due to the way
-PSR-4 and PSR-0 autoloading rules are set up, it needs to check the filesystem
-before resolving a classname conclusively. This slows things down quite a bit,
-but it is convenient in development environments because when you add a new class
-it can immediately be discovered/used without having to rebuild the autoloader
-configuration.
-
-The problem however is in production you generally want things to happen as fast
-as possible, as you can simply rebuild the configuration every time you deploy and
-new classes do not appear at random between deploys.
-
-For this reason, Composer offers a few strategies to optimize the autoloader.
-
-> **Note:** You **should not** enable any of these optimizations in **development** as
-> they all will cause various problems when adding/removing classes. The performance
-> gains are not worth the trouble in a development setting.
-
-## Optimization Level 1: Class map generation
-
-### How to run it?
-
-There are a few options to enable this:
-
-- Set `"optimize-autoloader": true` inside the config key of composer.json
-- Call `install` or `update` with `-o` / `--optimize-autoloader`
-- Call `dump-autoload` with `-o` / `--optimize`
-
-### What does it do?
-
-Class map generation essentially converts PSR-4/PSR-0 rules into classmap rules.
-This makes everything quite a bit faster as for known classes the class map
-returns instantly the path, and Composer can guarantee the class is in there so
-there is no filesystem check needed.
-
-On PHP 5.6+, the class map is also cached in opcache which improves the initialization
-time greatly. If you make sure opcache is enabled, then the class map should load
-almost instantly and then class loading is fast.
-
-### Trade-offs
-
-There are no real trade-offs with this method. It should always be enabled in
-production.
-
-The only issue is it does not keep track of autoload misses (i.e. when
-it can not find a given class), so those fallback to PSR-4 rules and can still
-result in slow filesystem checks. To solve this issue two Level 2 optimization
-options exist, and you can decide to enable either if you have a lot of
-class_exists checks that are done for classes that do not exist in your project.
-
-## Optimization Level 2/A: Authoritative class maps
-
-### How to run it?
-
-There are a few options to enable this:
-
-- Set `"classmap-authoritative": true` inside the config key of composer.json
-- Call `install` or `update` with `-a` / `--classmap-authoritative`
-- Call `dump-autoload` with `-a` / `--classmap-authoritative`
-
-### What does it do?
-
-Enabling this automatically enables Level 1 class map optimizations.
-
-This option is very simple, it says that if something is not found in the classmap,
-then it does not exist and the autoloader should not attempt to look on the
-filesystem according to PSR-4 rules.
-
-### Trade-offs
-
-This option makes the autoloader always return very quickly. On the flipside it
-also means that in case a class is generated at runtime for some reason, it will
-not be allowed to be autoloaded. If your project or any of your dependencies does that
-then you might experience "class not found" issues in production. Enable this with care.
-
-> Note: This can not be combined with Level 2/B optimizations. You have to choose one as
-> they address the same issue in different ways.
-
-## Optimization Level 2/B: APCu cache
-
-### How to run it?
-
-There are a few options to enable this:
-
-- Set `"apcu-autoloader": true` inside the config key of composer.json
-- Call `install` or `update` with `--apcu-autoloader`
-- Call `dump-autoload` with `--apcu`
-
-### What does it do?
-
-This option adds an APCu cache as a fallback for the class map. It will not
-automatically generate the class map though, so you should still enable Level 1
-optimizations manually if you so desire.
-
-Whether a class is found or not, that fact is always cached in APCu so it can be
-returned quickly on the next request.
-
-### Trade-offs
-
-This option requires APCu which may or may not be available to you. It also
-uses APCu memory for autoloading purposes, but it is safe to use and can not
-result in classes not being found like the authoritative class map
-optimization above.
-
-> Note: This can not be combined with Level 2/A optimizations. You have to choose one as
-> they address the same issue in different ways.

+ 0 - 204
vendor/composer/composer/doc/articles/custom-installers.md

xqd
@@ -1,204 +0,0 @@
-<!--
-    tagline: Modify the way certain types of packages are installed
--->
-
-# Setting up and using custom installers
-
-## Synopsis
-
-At times it may be necessary for a package to require additional actions during
-installation, such as installing packages outside of the default `vendor`
-library.
-
-In these cases you could consider creating a Custom Installer to handle your
-specific logic.
-
-## Calling a Custom Installer
-
-Suppose that your project already has a Custom Installer for specific modules
-then invoking that installer is a matter of defining the correct [type][1] in
-your package file.
-
-> _See the next chapter for an instruction how to create Custom Installers._
-
-Every Custom Installer defines which [type][1] string it will recognize. Once
-recognized it will completely override the default installer and only apply its
-own logic.
-
-An example use-case would be:
-
-> phpDocumentor features Templates that need to be installed outside of the
-> default /vendor folder structure. As such they have chosen to adopt the
-> `phpdocumentor-template` [type][1] and create a plugin providing the Custom
-> Installer to send these templates to the correct folder.
-
-An example composer.json of such a template package would be:
-
-```json
-{
-    "name": "phpdocumentor/template-responsive",
-    "type": "phpdocumentor-template",
-    "require": {
-        "phpdocumentor/template-installer-plugin": "*"
-    }
-}
-```
-
-> **IMPORTANT**: to make sure that the template installer is present at the
-> time the template package is installed, template packages should require
-> the plugin package.
-
-## Creating an Installer
-
-A Custom Installer is defined as a class that implements the
-[`Composer\Installer\InstallerInterface`][4] and is usually distributed in a
-Composer Plugin.
-
-A basic Installer Plugin would thus compose of three files:
-
-1. the package file: composer.json
-2. The Plugin class, e.g.: `My\Project\Composer\Plugin.php`, containing a class that implements `Composer\Plugin\PluginInterface`.
-3. The Installer class, e.g.: `My\Project\Composer\Installer.php`, containing a class that implements `Composer\Installer\InstallerInterface`.
-
-### composer.json
-
-The package file is the same as any other package file but with the following
-requirements:
-
-1. the [type][1] attribute must be `composer-plugin`.
-2. the [extra][2] attribute must contain an element `class` defining the
-   class name of the plugin (including namespace). If a package contains
-   multiple plugins this can be array of class names.
-
-Example:
-
-```json
-{
-    "name": "phpdocumentor/template-installer-plugin",
-    "type": "composer-plugin",
-    "license": "MIT",
-    "autoload": {
-        "psr-0": {"phpDocumentor\\Composer": "src/"}
-    },
-    "extra": {
-        "class": "phpDocumentor\\Composer\\TemplateInstallerPlugin"
-    },
-    "require": {
-        "composer-plugin-api": "^1.0"
-    },
-    "require-dev": {
-        "composer/composer": "^1.3"
-    }
-}
-```
-
-The example above has Composer itself in its require-dev, which allows you to use
-the Composer classes in your test suite for example.
-
-### The Plugin class
-
-The class defining the Composer plugin must implement the
-[`Composer\Plugin\PluginInterface`][3]. It can then register the Custom
-Installer in its `activate()` method.
-
-The class may be placed in any location and have any name, as long as it is
-autoloadable and matches the `extra.class` element in the package definition.
-
-Example:
-
-```php
-<?php
-
-namespace phpDocumentor\Composer;
-
-use Composer\Composer;
-use Composer\IO\IOInterface;
-use Composer\Plugin\PluginInterface;
-
-class TemplateInstallerPlugin implements PluginInterface
-{
-    public function activate(Composer $composer, IOInterface $io)
-    {
-        $installer = new TemplateInstaller($io, $composer);
-        $composer->getInstallationManager()->addInstaller($installer);
-    }
-}
-```
-
-### The Custom Installer class
-
-The class that executes the custom installation should implement the
-[`Composer\Installer\InstallerInterface`][4] (or extend another installer that
-implements that interface). It defines the [type][1] string as it will be
-recognized by packages that will use this installer in the `supports()` method.
-
-> **NOTE**: _choose your [type][1] name carefully, it is recommended to follow
-> the format: `vendor-type`_. For example: `phpdocumentor-template`.
-
-The InstallerInterface class defines the following methods (please see the
-source for the exact signature):
-
-* **supports()**, here you test whether the passed [type][1] matches the name
-  that you declared for this installer (see the example).
-* **isInstalled()**, determines whether a supported package is installed or not.
-* **install()**, here you can determine the actions that need to be executed
-  upon installation.
-* **update()**, here you define the behavior that is required when Composer is
-  invoked with the update argument.
-* **uninstall()**, here you can determine the actions that need to be executed
-  when the package needs to be removed.
-* **getInstallPath()**, this method should return the location where the
-  package is to be installed, _relative from the location of composer.json._
-
-Example:
-
-```php
-<?php
-
-namespace phpDocumentor\Composer;
-
-use Composer\Package\PackageInterface;
-use Composer\Installer\LibraryInstaller;
-
-class TemplateInstaller extends LibraryInstaller
-{
-    /**
-     * {@inheritDoc}
-     */
-    public function getInstallPath(PackageInterface $package)
-    {
-        $prefix = substr($package->getPrettyName(), 0, 23);
-        if ('phpdocumentor/template-' !== $prefix) {
-            throw new \InvalidArgumentException(
-                'Unable to install template, phpdocumentor templates '
-                .'should always start their package name with '
-                .'"phpdocumentor/template-"'
-            );
-        }
-
-        return 'data/templates/'.substr($package->getPrettyName(), 23);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function supports($packageType)
-    {
-        return 'phpdocumentor-template' === $packageType;
-    }
-}
-```
-
-The example demonstrates that it is quite simple to extend the
-[`Composer\Installer\LibraryInstaller`][5] class to strip a prefix
-(`phpdocumentor/template-`) and use the remaining part to assemble a completely
-different installation path.
-
-> _Instead of being installed in `/vendor` any package installed using this
-> Installer will be put in the `/data/templates/<stripped name>` folder._
-
-[1]: ../04-schema.md#type
-[2]: ../04-schema.md#extra
-[3]: https://github.com/composer/composer/blob/master/src/Composer/Plugin/PluginInterface.php
-[4]: https://github.com/composer/composer/blob/master/src/Composer/Installer/InstallerInterface.php
-[5]: https://github.com/composer/composer/blob/master/src/Composer/Installer/LibraryInstaller.php

+ 0 - 343
vendor/composer/composer/doc/articles/handling-private-packages-with-satis.md

xqd
@@ -1,343 +0,0 @@
-<!--
-    tagline: Hosting and installing private Composer packages
--->
-
-# Handling private packages
-
-# Private Packagist
-
-[Private Packagist](https://packagist.com) is a commercial package hosting product
-offering professional support and web based management of private and public packages,
-and granular access permissions. Private Packagist provides mirroring for packages' zip
-files which makes installs faster and independent from third party systems - e.g.
-you can deploy even if GitHub is down because your zip files are mirrored.
-
-Private Packagist is available as a hosted SaaS solution or as an on-premise self-hosted
-package, providing an easy interactive set up experience.
-
-Some of Private Packagist's revenue is used to pay for Composer and Packagist.org
-development and hosting so using it is a good way to support the maintenance of
-these open source projects financially. You can find more information about how to
-set up your own package archive on [Packagist.com](https://packagist.com).
-
-# Satis
-
-Satis on the other hand is open source but only a static `composer` repository
-generator. It is a bit like an ultra-lightweight, static file-based version of
-packagist and can be used to host the metadata of your company's private
-packages, or your own. You can get it from
-[GitHub](https://github.com/composer/satis) or install via CLI:
-
-    php composer.phar create-project composer/satis --stability=dev --keep-vcs
-
-## Setup
-
-For example let's assume you have a few packages you want to reuse across your
-company but don't really want to open-source. You would first define a Satis
-configuration: a json file with an arbitrary name that lists your curated
-[repositories](../05-repositories.md).
-
-Here is an example configuration, you see that it holds a few VCS repositories,
-but those could be any types of [repositories](../05-repositories.md). Then it
-uses `"require-all": true` which selects all versions of all packages in the
-repositories you defined.
-
-The default file Satis looks for is `satis.json` in the root of the repository.
-
-```json
-{
-  "name": "My Repository",
-  "homepage": "http://packages.example.org",
-  "repositories": [
-    { "type": "vcs", "url": "https://github.com/mycompany/privaterepo" },
-    { "type": "vcs", "url": "http://svn.example.org/private/repo" },
-    { "type": "vcs", "url": "https://github.com/mycompany/privaterepo2" }
-  ],
-  "require-all": true
-}
-```
-
-If you want to cherry pick which packages you want, you can list all the
-packages you want to have in your satis repository inside the classic composer
-`require` key, using a `"*"` constraint to make sure all versions are selected,
-or another constraint if you want really specific versions.
-
-```json
-{
-  "repositories": [
-    { "type": "vcs", "url": "https://github.com/mycompany/privaterepo" },
-    { "type": "vcs", "url": "http://svn.example.org/private/repo" },
-    { "type": "vcs", "url": "https://github.com/mycompany/privaterepo2" }
-  ],
-  "require": {
-    "company/package": "*",
-    "company/package2": "*",
-    "company/package3": "2.0.0"
-  }
-}
-```
-
-Once you've done this, you run:
-
-    php bin/satis build <configuration file> <build dir>
-
-When you ironed out that process, what you would typically do is run this
-command as a cron job on a server. It would then update all your package info
-much like Packagist does.
-
-Note that if your private packages are hosted on GitHub, your server should
-have an ssh key that gives it access to those packages, and then you should add
-the `--no-interaction` (or `-n`) flag to the command to make sure it falls back
-to ssh key authentication instead of prompting for a password. This is also a
-good trick for continuous integration servers.
-
-Set up a virtual-host that points to that `web/` directory, let's say it is
-`packages.example.org`. Alternatively, with PHP >= 5.4.0, you can use the
-built-in CLI server `php -S localhost:port -t satis-output-dir/` for a
-temporary solution.
-
-### Partial Updates
-
-You can tell Satis to selectively update only particular packages or process
-only a repository with a given URL. This cuts down the time it takes to rebuild
-the `package.json` file and is helpful if you use (custom) webhooks to trigger
-rebuilds whenever code is pushed into one of your repositories.
-
-To rebuild only particular packages, pass the package names on the command line
-like so:
-
-    php bin/satis build satis.json web/ this/package that/other-package
-
-Note that this will still need to pull and scan all of your VCS repositories
-because any VCS repository might contain (on any branch) one of the selected
-packages.
-
-If you want to scan only a single repository and update all packages found in
-it, pass the VCS repository URL as an optional argument:
-
-    php bin/satis build --repository-url https://only.my/repo.git satis.json web/
-
-## Usage
-
-In your projects all you need to add now is your own composer repository using
-the `packages.example.org` as URL, then you can require your private packages
-and everything should work smoothly. You don't need to copy all your
-repositories in every project anymore. Only that one unique repository that
-will update itself.
-
-```json
-{
-  "repositories": [ { "type": "composer", "url": "http://packages.example.org/" } ],
-  "require": {
-    "company/package": "1.2.0",
-    "company/package2": "1.5.2",
-    "company/package3": "dev-master"
-  }
-}
-```
-
-### Security
-
-To secure your private repository you can host it over SSH or SSL using a client
-certificate. In your project you can use the `options` parameter to specify the
-connection options for the server.
-
-Example using a custom repository using SSH (requires the SSH2 PECL extension):
-
-```json
-{
-  "repositories": [{
-    "type": "composer",
-    "url": "ssh2.sftp://example.org",
-    "options": {
-      "ssh2": {
-        "username": "composer",
-        "pubkey_file": "/home/composer/.ssh/id_rsa.pub",
-        "privkey_file": "/home/composer/.ssh/id_rsa"
-      }
-    }
-  }]
-}
-```
-
-> **Tip:** See [ssh2 context options] for more information.
-
-Example using SSL/TLS (HTTPS) using a client certificate:
-
-```json
-{
-  "repositories": [{
-     "type": "composer",
-     "url": "https://example.org",
-     "options": {
-       "ssl": {
-         "local_cert": "/home/composer/.ssl/composer.pem"
-       }
-     }
-  }]
-}
-```
-
-> **Tip:** See [ssl context options] for more information.
-
-Example using a custom HTTP Header field for token authentication:
-
-```json
-{
-  "repositories": [{
-    "type": "composer",
-    "url": "https://example.org",
-    "options":  {
-      "http": {
-        "header": [
-          "API-TOKEN: YOUR-API-TOKEN"
-        ]
-      }
-    }
-  }]
-}
-```
-
-### Authentication
-
-When your private repositories are password protected, you can store the
-authentication details permanently.  The first time Composer needs to
-authenticate against some domain it will prompt you for a username/password and
-then you will be asked whether you want to store it.
-
-The storage can be done either globally in the `COMPOSER_HOME/auth.json` file
-(`COMPOSER_HOME` defaults to `~/.composer` or `%APPDATA%/Composer` on Windows)
-or also in the project directory directly sitting besides your composer.json.
-
-You can also configure these by hand using the config command if you need to
-configure a production machine to be able to run non-interactive installs. For
-example to enter credentials for example.org one could type:
-
-    composer config http-basic.example.org username password
-
-That will store it in the current directory's auth.json, but if you want it
-available globally you can use the `--global` (`-g`) flag.
-
-### Downloads
-
-When GitHub, GitLab or BitBucket repositories are mirrored on your local satis, the
-build process will include the location of the downloads these platforms make
-available. This means that the repository and your setup depend on the
-availability of these services.
-
-At the same time, this implies that all code which is hosted somewhere else (on
-another service or for example in Subversion) will not have downloads available
-and thus installations usually take a lot longer.
-
-To enable your satis installation to create downloads for all (Git, Mercurial
-and Subversion) your packages, add the following to your `satis.json`:
-
-``` json
-{
-  "archive": {
-    "directory": "dist",
-    "format": "tar",
-    "prefix-url": "https://amazing.cdn.example.org",
-    "skip-dev": true
-  }
-}
-```
-
-#### Options explained
-
- * `directory`: required, the location of the dist files (inside the
-   `output-dir`)
- * `format`: optional, `zip` (default) or `tar`
- * `prefix-url`: optional, location of the downloads, homepage (from
-   `satis.json`) followed by `directory` by default
- * `skip-dev`: optional, `false` by default, when enabled (`true`) satis will
-   not create downloads for branches
- * `absolute-directory`: optional, a _local_ directory where the dist files are
-   dumped instead of `output-dir`/`directory`
- * `whitelist`: optional, if set as a list of package names, satis will only
-   dump the dist files of these packages
- * `blacklist`: optional, if set as a list of package names, satis will not
-   dump the dist files of these packages
- * `checksum`: optional, `true` by default, when disabled (`false`) satis will
-   not provide the sha1 checksum for the dist files
-
-Once enabled, all downloads (include those from GitHub and BitBucket) will be
-replaced with a _local_ version.
-
-#### prefix-url
-
-Prefixing the URL with another host is especially helpful if the downloads end
-up in a private Amazon S3 bucket or on a CDN host. A CDN would drastically
-improve download times and therefore package installation.
-
-Example: A `prefix-url` of `https://my-bucket.s3.amazonaws.com` (and
-`directory` set to `dist`) creates download URLs which look like the following:
-`https://my-bucket.s3.amazonaws.com/dist/vendor-package-version-ref.zip`.
-
-### Web outputs
-
- * `output-html`: optional, `true` by default, when disabled (`false`) satis
-   will not generate the `output-dir`/index.html page.
- * `twig-template`: optional, a path to a personalized [Twig] template for
-   the `output-dir`/index.html page.
-
-### Abandoned packages
-
-To enable your satis installation to indicate that some packages are abandoned,
-add the following to your `satis.json`:
-
-```json
-{
-  "abandoned": {
-    "company/package": true,
-    "company/package2": "company/newpackage"
-  }
-}
-```
-
-The `true` value indicates that the package is truly abandoned while the
-`"company/newpackage"` value specifies that the package is replaced by the
-`company/newpackage` package.
-
-Note that all packages set as abandoned in their own `composer.json` file will
-be marked abandoned as well.
-
-### Resolving dependencies
-
-It is possible to make satis automatically resolve and add all dependencies for
-your projects. This can be used with the Downloads functionality to have a
-complete local mirror of packages. Add the following to your `satis.json`:
-
-```json
-{
-  "require-dependencies": true,
-  "require-dev-dependencies": true
-}
-```
-
-When searching for packages, satis will attempt to resolve all the required
-packages from the listed repositories.  Therefore, if you are requiring a
-package from Packagist, you will need to define it in your `satis.json`.
-
-Dev dependencies are packaged only if the `require-dev-dependencies` parameter
-is set to true.
-
-### Other options
-
- * `providers`: optional, `false` by default, when enabled (`true`) each
-   package will be dumped into a separate include file which will be only
-   loaded by composer when the package is really required. Speeds up composer
-   handling for repositories with huge number of packages like f.i. packagist.
- * `output-dir`: optional, defines where to output the repository files if not
-   provided as an argument when calling the `build` command.
- * `config`: optional, lets you define all config options from composer, except
-   `archive-format` and `archive-dir` as the configuration is done through
-   [archive](#downloads) instead. See docs on [config schema] for more details.
- * `notify-batch`: optional, specify a URL that will be called every time a
-   user installs a package. See [notify-batch].
-
-[ssh2 context options]: https://secure.php.net/manual/en/wrappers.ssh2.php#refsect1-wrappers.ssh2-options
-[ssl context options]: https://secure.php.net/manual/en/context.ssl.php
-[Twig]: https://twig.sensiolabs.org/
-[config schema]: https://getcomposer.org/doc/04-schema.md#config
-[notify-batch]: https://getcomposer.org/doc/05-repositories.md#notify-batch

+ 0 - 59
vendor/composer/composer/doc/articles/http-basic-authentication.md

xqd
@@ -1,59 +0,0 @@
-<!--
-    tagline: Access privately hosted packages
--->
-
-# HTTP basic authentication
-
-Your [Satis or Toran Proxy](handling-private-packages-with-satis.md) server
-could be secured with http basic authentication. In order to allow your project
-to have access to these packages you will have to tell composer how to
-authenticate with your credentials.
-
-The simplest way to provide your credentials is providing your set
-of credentials inline with the repository specification such as:
-
-```json
-{
-    "repositories": [
-        {
-            "type": "composer",
-            "url": "https://extremely:secret@repo.example.org"
-        }
-    ]
-}
-```
-
-This will basically teach composer how to authenticate automatically
-when reading packages from the provided composer repository.
-
-This does not work for everybody especially when you don't want to
-hard code your credentials into your composer.json. There is a second
-way to provide these details and it is via interaction. If you don't
-provide the authentication credentials composer will prompt you upon
-connection to enter the username and password.
-
-The third way if you want to pre-configure it is via an `auth.json` file
-located in your `COMPOSER_HOME` or besides your `composer.json`.
-
-The file should contain a set of hostnames followed each with their own
-username/password pairs, for example:
-
-```json
-{
-    "http-basic": {
-        "repo.example1.org": {
-            "username": "my-username1",
-            "password": "my-secret-password1"
-        },
-        "repo.example2.org": {
-            "username": "my-username2",
-            "password": "my-secret-password2"
-        }
-    }
-}
-```
-
-The main advantage of the auth.json file is that it can be gitignored so
-that every developer in your team can place their own credentials in there,
-which makes revocation of credentials much easier than if you all share the
-same.

+ 0 - 285
vendor/composer/composer/doc/articles/plugins.md

xqd
@@ -1,285 +0,0 @@
-<!--
-    tagline: Modify and extend Composer's functionality
--->
-
-# Setting up and using plugins
-
-## Synopsis
-
-You may wish to alter or expand Composer's functionality with your own. For
-example if your environment poses special requirements on the behaviour of
-Composer which do not apply to the majority of its users or if you wish to
-accomplish something with composer in a way that is not desired by most users.
-
-In these cases you could consider creating a plugin to handle your
-specific logic.
-
-## Creating a Plugin
-
-A plugin is a regular Composer package which ships its code as part of the
-package and may also depend on further packages.
-
-### Plugin Package
-
-The package file is the same as any other package file but with the following
-requirements:
-
-1. The [type][1] attribute must be `composer-plugin`.
-2. The [extra][2] attribute must contain an element `class` defining the
-   class name of the plugin (including namespace). If a package contains
-   multiple plugins, this can be array of class names.
-3. You must require the special package called `composer-plugin-api`
-   to define which Plugin API versions your plugin is compatible with.
-
-The required version of the `composer-plugin-api` follows the same [rules][7]
-as a normal package's.
-
-The current composer plugin API version is 1.1.0.
-
-An example of a valid plugin `composer.json` file (with the autoloading
-part omitted):
-
-```json
-{
-    "name": "my/plugin-package",
-    "type": "composer-plugin",
-    "require": {
-        "composer-plugin-api": "^1.1"
-    },
-    "extra": {
-        "class": "My\\Plugin"
-    }
-}
-```
-
-### Plugin Class
-
-Every plugin has to supply a class which implements the
-[`Composer\Plugin\PluginInterface`][3]. The `activate()` method of the plugin
-is called after the plugin is loaded and receives an instance of
-[`Composer\Composer`][4] as well as an instance of
-[`Composer\IO\IOInterface`][5]. Using these two objects all configuration can
-be read and all internal objects and state can be manipulated as desired.
-
-Example:
-
-```php
-<?php
-
-namespace phpDocumentor\Composer;
-
-use Composer\Composer;
-use Composer\IO\IOInterface;
-use Composer\Plugin\PluginInterface;
-
-class TemplateInstallerPlugin implements PluginInterface
-{
-    public function activate(Composer $composer, IOInterface $io)
-    {
-        $installer = new TemplateInstaller($io, $composer);
-        $composer->getInstallationManager()->addInstaller($installer);
-    }
-}
-```
-
-## Event Handler
-
-Furthermore plugins may implement the
-[`Composer\EventDispatcher\EventSubscriberInterface`][6] in order to have its
-event handlers automatically registered with the `EventDispatcher` when the
-plugin is loaded.
-
-To register a method to an event, implement the method `getSubscribedEvents()`
-and have it return an array. The array key must be the
-[event name](https://getcomposer.org/doc/articles/scripts.md#event-names)
-and the value is the name of the method in this class to be called.
-
-```php
-public static function getSubscribedEvents()
-{
-    return array(
-        'post-autoload-dump' => 'methodToBeCalled',
-        // ^ event name ^         ^ method name ^
-    );
-}
-```
-
-By default, the priority of an event handler is set to 0. The priority can be
-changed by attaching a tuple where the first value is the method name, as
-before, and the second value is an integer representing the priority.
-Higher integers represent higher priorities. Priority 2 is called before
-priority 1, etc.
-
-```php
-public static function getSubscribedEvents()
-{
-    return array(
-        // Will be called before events with priority 0
-        'post-autoload-dump' => array('methodToBeCalled', 1)
-    );
-}
-```
-
-If multiple methods should be called, then an array of tuples can be attached
-to each event. The tuples do not need to include the priority. If it is
-omitted, it will default to 0.
-
-```php
-public static function getSubscribedEvents()
-{
-    return array(
-        'post-autoload-dump' => array(
-            array('methodToBeCalled'      ), // Priority defaults to 0
-            array('someOtherMethodName', 1), // This fires first
-        )
-    );
-}
-```
-
-Here's a complete example:
-
-```php
-<?php
-
-namespace Naderman\Composer\AWS;
-
-use Composer\Composer;
-use Composer\EventDispatcher\EventSubscriberInterface;
-use Composer\IO\IOInterface;
-use Composer\Plugin\PluginInterface;
-use Composer\Plugin\PluginEvents;
-use Composer\Plugin\PreFileDownloadEvent;
-
-class AwsPlugin implements PluginInterface, EventSubscriberInterface
-{
-    protected $composer;
-    protected $io;
-
-    public function activate(Composer $composer, IOInterface $io)
-    {
-        $this->composer = $composer;
-        $this->io = $io;
-    }
-
-    public static function getSubscribedEvents()
-    {
-        return array(
-            PluginEvents::PRE_FILE_DOWNLOAD => array(
-                array('onPreFileDownload', 0)
-            ),
-        );
-    }
-
-    public function onPreFileDownload(PreFileDownloadEvent $event)
-    {
-        $protocol = parse_url($event->getProcessedUrl(), PHP_URL_SCHEME);
-
-        if ($protocol === 's3') {
-            $awsClient = new AwsClient($this->io, $this->composer->getConfig());
-            $s3RemoteFilesystem = new S3RemoteFilesystem($this->io, $event->getRemoteFilesystem()->getOptions(), $awsClient);
-            $event->setRemoteFilesystem($s3RemoteFilesystem);
-        }
-    }
-}
-```
-
-## Plugin capabilities
-
-Composer defines a standard set of capabilities which may be implemented by plugins.
-Their goal is to make the plugin ecosystem more stable as it reduces the need to mess
-with [`Composer\Composer`][4]'s internal state, by providing explicit extension points
-for common plugin requirements.
-
-Capable Plugins classes must implement the [`Composer\Plugin\Capable`][8] interface
-and declare their capabilities in the `getCapabilities()` method.
-This method must return an array, with the _key_ as a Composer Capability class name,
-and the _value_ as the Plugin's own implementation class name of said Capability:
-
-```php
-<?php
-
-namespace My\Composer;
-
-use Composer\Composer;
-use Composer\IO\IOInterface;
-use Composer\Plugin\PluginInterface;
-use Composer\Plugin\Capable;
-
-class Plugin implements PluginInterface, Capable
-{
-    public function activate(Composer $composer, IOInterface $io)
-    {
-    }
-
-    public function getCapabilities()
-    {
-        return array(
-            'Composer\Plugin\Capability\CommandProvider' => 'My\Composer\CommandProvider',
-        );
-    }
-}
-```
-
-### Command provider
-
-The [`Composer\Plugin\Capability\CommandProvider`][9] capability allows to register
-additional commands for Composer :
-
-```php
-<?php
-
-namespace My\Composer;
-
-use Composer\Plugin\Capability\CommandProvider as CommandProviderCapability;
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
-use Composer\Command\BaseCommand;
-
-class CommandProvider implements CommandProviderCapability
-{
-    public function getCommands()
-    {
-        return array(new Command);
-    }
-}
-
-class Command extends BaseCommand
-{
-    protected function configure()
-    {
-        $this->setName('custom-plugin-command');
-    }
-
-    protected function execute(InputInterface $input, OutputInterface $output)
-    {
-        $output->writeln('Executing');
-    }
-}
-```
-
-Now the `custom-plugin-command` is available alongside Composer commands.
-
-> _Composer commands are based on the [Symfony Console Component][10]._
-
-## Using Plugins
-
-Plugin packages are automatically loaded as soon as they are installed and will
-be loaded when composer starts up if they are found in the current project's
-list of installed packages. Additionally all plugin packages installed in the
-`COMPOSER_HOME` directory using the composer global command are loaded before
-local project plugins are loaded.
-
-> You may pass the `--no-plugins` option to composer commands to disable all
-> installed plugins. This may be particularly helpful if any of the plugins
-> causes errors and you wish to update or uninstall it.
-
-[1]: ../04-schema.md#type
-[2]: ../04-schema.md#extra
-[3]: https://github.com/composer/composer/blob/master/src/Composer/Plugin/PluginInterface.php
-[4]: https://github.com/composer/composer/blob/master/src/Composer/Composer.php
-[5]: https://github.com/composer/composer/blob/master/src/Composer/IO/IOInterface.php
-[6]: https://github.com/composer/composer/blob/master/src/Composer/EventDispatcher/EventSubscriberInterface.php
-[7]: ../01-basic-usage.md#package-versions
-[8]: https://github.com/composer/composer/blob/master/src/Composer/Plugin/Capable.php
-[9]: https://github.com/composer/composer/blob/master/src/Composer/Plugin/Capability/CommandProvider.php
-[10]: https://symfony.com/doc/current/components/console.html

+ 0 - 293
vendor/composer/composer/doc/articles/scripts.md

xqd
@@ -1,293 +0,0 @@
-<!--
-    tagline: Script are callbacks that are called before/after installing packages
--->
-
-# Scripts
-
-## What is a script?
-
-A script, in Composer's terms, can either be a PHP callback (defined as a
-static method) or any command-line executable command. Scripts are useful
-for executing a package's custom code or package-specific commands during
-the Composer execution process.
-
-> **Note:** Only scripts defined in the root package's `composer.json` are
-> executed. If a dependency of the root package specifies its own scripts,
-> Composer does not execute those additional scripts.
-
-## Event names
-
-Composer fires the following named events during its execution process:
-
-### Command Events
-
-- **pre-install-cmd**: occurs before the `install` command is executed with a
-  lock file present.
-- **post-install-cmd**: occurs after the `install` command has been executed
-  with a lock file present.
-- **pre-update-cmd**: occurs before the `update` command is executed, or before
-  the `install` command is executed without a lock file present.
-- **post-update-cmd**: occurs after the `update` command has been executed, or
-  after the `install` command has been executed without a lock file present.
-- **post-status-cmd**: occurs after the `status` command has been executed.
-- **pre-archive-cmd**: occurs before the `archive` command is executed.
-- **post-archive-cmd**: occurs after the `archive` command has been executed.
-- **pre-autoload-dump**: occurs before the autoloader is dumped, either during
-  `install`/`update`, or via the `dump-autoload` command.
-- **post-autoload-dump**: occurs after the autoloader has been dumped, either
-  during `install`/`update`, or via the `dump-autoload` command.
-- **post-root-package-install**: occurs after the root package has been
-  installed, during the `create-project` command.
-- **post-create-project-cmd**: occurs after the `create-project` command has
-  been executed.
-
-### Installer Events
-
-- **pre-dependencies-solving**: occurs before the dependencies are resolved.
-- **post-dependencies-solving**: occurs after the dependencies have been resolved.
-
-### Package Events
-
-- **pre-package-install**: occurs before a package is installed.
-- **post-package-install**: occurs after a package has been installed.
-- **pre-package-update**: occurs before a package is updated.
-- **post-package-update**: occurs after a package has been updated.
-- **pre-package-uninstall**: occurs before a package is uninstalled.
-- **post-package-uninstall**: occurs after a package has been uninstalled.
-
-### Plugin Events
-
-- **init**: occurs after a Composer instance is done being initialized.
-- **command**: occurs before any Composer Command is executed on the CLI. It
-  provides you with access to the input and output objects of the program.
-- **pre-file-download**: occurs before files are downloaded and allows
-  you to manipulate the `RemoteFilesystem` object prior to downloading files
-  based on the URL to be downloaded.
-- **pre-command-run**: occurs before a command is executed and allows you to
-  manipulate the `InputInterface` object's options and arguments to tweak
-  a command's behavior.
-
-> **Note:** Composer makes no assumptions about the state of your dependencies
-> prior to `install` or `update`. Therefore, you should not specify scripts
-> that require Composer-managed dependencies in the `pre-update-cmd` or
-> `pre-install-cmd` event hooks. If you need to execute scripts prior to
-> `install` or `update` please make sure they are self-contained within your
-> root package.
-
-## Defining scripts
-
-The root JSON object in `composer.json` should have a property called
-`"scripts"`, which contains pairs of named events and each event's
-corresponding scripts. An event's scripts can be defined as either a string
-(only for a single script) or an array (for single or multiple scripts.)
-
-For any given event:
-
-- Scripts execute in the order defined when their corresponding event is fired.
-- An array of scripts wired to a single event can contain both PHP callbacks
-and command-line executable commands.
-- PHP classes containing defined callbacks must be autoloadable via Composer's
-autoload functionality.
-- Callbacks can only autoload classes from psr-0, psr-4 and classmap
-definitions. If a defined callback relies on functions defined outside of a
-class, the callback itself is responsible for loading the file containing these
-functions.
-
-Script definition example:
-
-```json
-{
-    "scripts": {
-        "post-update-cmd": "MyVendor\\MyClass::postUpdate",
-        "post-package-install": [
-            "MyVendor\\MyClass::postPackageInstall"
-        ],
-        "post-install-cmd": [
-            "MyVendor\\MyClass::warmCache",
-            "phpunit -c app/"
-        ],
-        "post-autoload-dump": [
-            "MyVendor\\MyClass::postAutoloadDump"
-        ],
-        "post-create-project-cmd": [
-            "php -r \"copy('config/local-example.php', 'config/local.php');\""
-        ]
-    }
-}
-```
-
-Using the previous definition example, here's the class `MyVendor\MyClass`
-that might be used to execute the PHP callbacks:
-
-```php
-<?php
-
-namespace MyVendor;
-
-use Composer\Script\Event;
-use Composer\Installer\PackageEvent;
-
-class MyClass
-{
-    public static function postUpdate(Event $event)
-    {
-        $composer = $event->getComposer();
-        // do stuff
-    }
-
-    public static function postAutoloadDump(Event $event)
-    {
-        $vendorDir = $event->getComposer()->getConfig()->get('vendor-dir');
-        require $vendorDir . '/autoload.php';
-
-        some_function_from_an_autoloaded_file();
-    }
-
-    public static function postPackageInstall(PackageEvent $event)
-    {
-        $installedPackage = $event->getOperation()->getPackage();
-        // do stuff
-    }
-
-    public static function warmCache(Event $event)
-    {
-        // make cache toasty
-    }
-}
-```
-
-**Note:** During a composer install or update process, a variable named
-`COMPOSER_DEV_MODE` will be added to the environment. If the command was run
-with the `--no-dev` flag, this variable will be set to 0, otherwise it will be
-set to 1.
-
-## Event classes
-
-When an event is fired, your PHP callback receives as first argument a
-`Composer\EventDispatcher\Event` object. This object has a `getName()` method
-that lets you retrieve the event name.
-
-Depending on the [script types](#event-names) you will get various event
-subclasses containing various getters with relevant data and associated
-objects:
-
-- Base class: [`Composer\EventDispatcher\Event`](https://getcomposer.org/apidoc/master/Composer/EventDispatcher/Event.html)
-- Command Events: [`Composer\Script\Event`](https://getcomposer.org/apidoc/master/Composer/Script/Event.html)
-- Installer Events: [`Composer\Installer\InstallerEvent`](https://getcomposer.org/apidoc/master/Composer/Installer/InstallerEvent.html)
-- Package Events: [`Composer\Installer\PackageEvent`](https://getcomposer.org/apidoc/master/Composer/Installer/PackageEvent.html)
-- Plugin Events:
-  - init: [`Composer\EventDispatcher\Event`](https://getcomposer.org/apidoc/master/Composer/EventDispatcher/Event.html)
-  - command: [`Composer\Plugin\CommandEvent`](https://getcomposer.org/apidoc/master/Composer/Plugin/CommandEvent.html)
-  - pre-file-download: [`Composer\Plugin\PreFileDownloadEvent`](https://getcomposer.org/apidoc/master/Composer/Plugin/PreFileDownloadEvent.html)
-
-## Running scripts manually
-
-If you would like to run the scripts for an event manually, the syntax is:
-
-```sh
-composer run-script [--dev] [--no-dev] script
-```
-
-For example `composer run-script post-install-cmd` will run any
-**post-install-cmd** scripts that have been defined.
-
-You can also give additional arguments to the script handler by appending `--`
-followed by the handler arguments. e.g.
-`composer run-script post-install-cmd -- --check` will pass`--check` along to
-the script handler. Those arguments are received as CLI arg by CLI handlers,
-and can be retrieved as an array via `$event->getArguments()` by PHP handlers.
-
-## Writing custom commands
-
-If you add custom scripts that do not fit one of the predefined event name
-above, you can either run them with run-script or also run them as native
-Composer commands. For example the handler defined below is executable by
-simply running `composer test`:
-
-```json
-{
-    "scripts": {
-        "test": "phpunit"
-    }
-}
-```
-
-Similar to the `run-script` command you can give additional arguments to scripts,
-e.g. `composer test -- --filter <pattern>` will pass `--filter <pattern>` along
-to the `phpunit` script.
-
-> **Note:** Before executing scripts, Composer's bin-dir is temporarily pushed
-> on top of the PATH environment variable so that binaries of dependencies
-> are easily accessible. In this example no matter if the `phpunit` binary is
-> actually in `vendor/bin/phpunit` or `bin/phpunit` it will be found and executed.
-
-## Referencing scripts
-
-To enable script re-use and avoid duplicates, you can call a script from another
-one by prefixing the command name with `@`:
-
-```json
-{
-    "scripts": {
-        "test": [
-            "@clearCache",
-            "phpunit"
-        ],
-        "clearCache": "rm -rf cache/*"
-    }
-}
-```
-
-## Calling Composer commands
-
-To call Composer commands, you can use `@composer` which will automatically
-resolve to whatever composer.phar is currently being used:
-
-```json
-{
-    "scripts": {
-        "test": [
-            "@composer install",
-            "phpunit"
-        ]
-    }
-}
-```
-
-One limitation of this is that you can not call multiple composer commands in
-a row like `@composer install && @composer foo`. You must split them up in a
-JSON array of commands.
-
-## Executing PHP scripts
-
-To execute PHP scripts, you can use `@php` which will automatically
-resolve to whatever php process is currently being used:
-
-```json
-{
-    "scripts": {
-        "test": [
-            "@php script.php",
-            "phpunit"
-        ]
-    }
-}
-```
-
-One limitation of this is that you can not call multiple commands in
-a row like `@php install && @php foo`. You must split them up in a
-JSON array of commands.
-
-## Custom descriptions.
-
-You can set custom script descriptions with the following in your `composer.json`:
-
-```json
-{
-    "scripts-descriptions": {
-        "test": "Run all tests!"
-    }
-}
-```
-
-> **Note:** You can only set custom descriptions of custom commands.

+ 0 - 309
vendor/composer/composer/doc/articles/troubleshooting.md

xqd
@@ -1,309 +0,0 @@
-<!--
-    tagline: Solving problems
--->
-# Troubleshooting
-
-This is a list of common pitfalls on using Composer, and how to avoid them.
-
-## General
-
-1. Before asking anyone, run [`composer diagnose`](../03-cli.md#diagnose) to check
-   for common problems. If it all checks out, proceed to the next steps.
-
-2. When facing any kind of problems using Composer, be sure to **work with the
-   latest version**. See [self-update](../03-cli.md#self-update) for details.
-
-3. Make sure you have no problems with your setup by running the installer's
-   checks via `curl -sS https://getcomposer.org/installer | php -- --check`.
-
-4. Ensure you're **installing vendors straight from your `composer.json`** via
-   `rm -rf vendor && composer update -v` when troubleshooting, excluding any
-   possible interferences with existing vendor installations or `composer.lock`
-   entries.
-
-5. Try clearing Composer's cache by running `composer clear-cache`.
-
-## Package not found
-
-1. Double-check you **don't have typos** in your `composer.json` or repository
-   branches and tag names.
-
-2. Be sure to **set the right
-   [minimum-stability](../04-schema.md#minimum-stability)**. To get started or be
-   sure this is no issue, set `minimum-stability` to "dev".
-
-3. Packages **not coming from [Packagist](https://packagist.org/)** should
-   always be **defined in the root package** (the package depending on all
-   vendors).
-
-4. Use the **same vendor and package name** throughout all branches and tags of
-   your repository, especially when maintaining a third party fork and using
-   `replace`.
-
-5. If you are updating to a recently published version of a package, be aware that
-   Packagist has a delay of up to 1 minute before new packages are visible to Composer.
-
-6. If you are updating a single package, it may depend on newer versions itself.
-   In this case add the `--with-dependencies` argument **or** add all dependencies which
-   need an update to the command.
-
-## Package not found on travis-ci.org
-
-1. Check the ["Package not found"](#package-not-found) item above.
-
-2. If the package tested is a dependency of one of its dependencies (cyclic
-   dependency), the problem might be that Composer is not able to detect the version
-   of the package properly. If it is a git clone it is generally alright and Composer
-   will detect the version of the current branch, but travis does shallow clones so
-   that process can fail when testing pull requests and feature branches in general.
-   The best solution is to define the version you are on via an environment variable
-   called COMPOSER_ROOT_VERSION. You set it to `dev-master` for example to define
-   the root package's version as `dev-master`.
-   Use: `before_script: COMPOSER_ROOT_VERSION=dev-master composer install` to export
-   the variable for the call to composer.
-
-## Package not found in a Jenkins-build
-
-1. Check the ["Package not found"](#package-not-found) item above.
-2. Reason for failing is similar to the problem which can occur on travis-ci.org: The
-   git-clone / checkout within Jenkins leaves the branch in a "detached HEAD"-state. As
-   a result, Composer is not able to identify the version of the current checked out branch
-   and may not be able to resolve a cyclic dependency. To solve this problem, you can use
-   the "Additional Behaviours" -> "Check out to specific local branch" in your Git-settings
-   for your Jenkins-job, where your "local branch" shall be the same branch as you are
-   checking out. Using this, the checkout will not be in detached state any more and cyclic
-   dependency is recognized correctly.
-
-## I have a dependency which contains a "repositories" definition in its composer.json, but it seems to be ignored.
-
-The [`repositories`](../04-schema.md#repositories) configuration property is defined as [root-only](../04-schema.md#root-package). It is not inherited. You can read more about the reasons behind this in the "[why can't
-composer load repositories recursively?](../faqs/why-can't-composer-load-repositories-recursively.md)" article.
-The simplest work-around to this limitation, is moving or duplicating the `repositories` definition into your root
-composer.json.
-
-## I have locked a dependency to a specific commit but get unexpected results.
-
-While Composer supports locking dependencies to a specific commit using the `#commit-ref` syntax, there are certain
-caveats that one should take into account. The most important one is [documented](../04-schema.md#package-links), but
-frequently overlooked:
-
-> **Note:** While this is convenient at times, it should not be how you use
-> packages in the long term because it comes with a technical limitation. The
-> composer.json metadata will still be read from the branch name you specify
-> before the hash. Because of that in some cases it will not be a practical
-> workaround, and you should always try to switch to tagged releases as soon
-> as you can.
-
-There is no simple work-around to this limitation. It is therefore strongly recommended that you do not use it.
-
-## Need to override a package version
-
-Let's say your project depends on package A, which in turn depends on a specific
-version of package B (say 0.1). But you need a different version of said package B (say 0.11).
-
-You can fix this by aliasing version 0.11 to 0.1:
-
-composer.json:
-
-```json
-{
-    "require": {
-        "A": "0.2",
-        "B": "0.11 as 0.1"
-    }
-}
-```
-
-See [aliases](aliases.md) for more information.
-
-## Memory limit errors
-
-Composer may sometimes fail on some commands with this message:
-
-`PHP Fatal error:  Allowed memory size of XXXXXX bytes exhausted <...>`
-
-In this case, the PHP `memory_limit` should be increased.
-
-> **Note:** Composer internally increases the `memory_limit` to `1.5G`.
-
-To get the current `memory_limit` value, run:
-
-```sh
-php -r "echo ini_get('memory_limit').PHP_EOL;"
-```
-
-Try increasing the limit in your `php.ini` file (ex. `/etc/php5/cli/php.ini` for
-Debian-like systems):
-
-```ini
-; Use -1 for unlimited or define an explicit value like 2G
-memory_limit = -1
-```
-
-Composer also respects a memory limit defined by the `COMPOSER_MEMORY_LIMIT` environment variable:
-
-```sh
-COMPOSER_MEMORY_LIMIT=-1 composer.phar <...>
-```
-
-Or, you can increase the limit with a command-line argument:
-
-```sh
-php -d memory_limit=-1 composer.phar <...>
-```
-
-This issue can also happen on cPanel instances, when the shell fork bomb protection is activated. For more information, see the [documentation](https://documentation.cpanel.net/display/68Docs/Shell+Fork+Bomb+Protection) of the fork bomb feature on the cPanel site.
-
-## Xdebug impact on Composer
-
-To improve performance when the xdebug extension is enabled, Composer automatically restarts PHP without it.
-You can override this behavior by using an environment variable: `COMPOSER_ALLOW_XDEBUG=1`.
-
-Composer will always show a warning if xdebug is being used, but you can override this with an environment variable:
-`COMPOSER_DISABLE_XDEBUG_WARN=1`. If you see this warning unexpectedly, then the restart process has failed:
-please report this [issue](https://github.com/composer/composer/issues).
-
-## "The system cannot find the path specified" (Windows)
-
-1. Open regedit.
-2. Search for an `AutoRun` key inside `HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor`,
-   `HKEY_CURRENT_USER\Software\Microsoft\Command Processor`
-   or `HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Command Processor`.
-3. Check if it contains any path to non-existent file, if it's the case, remove them.
-
-## API rate limit and OAuth tokens
-
-Because of GitHub's rate limits on their API it can happen that Composer prompts
-for authentication asking your username and password so it can go ahead with its work.
-
-If you would prefer not to provide your GitHub credentials to Composer you can
-manually create a token using the following procedure:
-
-1. [Create](https://github.com/settings/tokens) an OAuth token on GitHub.
-[Read more](https://github.com/blog/1509-personal-api-tokens) on this.
-
-2. Add it to the configuration running `composer config -g github-oauth.github.com <oauthtoken>`
-
-Now Composer should install/update without asking for authentication.
-
-## proc_open(): fork failed errors
-If composer shows proc_open() fork failed on some commands:
-
-`PHP Fatal error: Uncaught exception 'ErrorException' with message 'proc_open(): fork failed - Cannot allocate memory' in phar`
-
-This could be happening because the VPS runs out of memory and has no Swap space enabled.
-
-```sh
-free -m
-
-total used free shared buffers cached
-Mem: 2048 357 1690 0 0 237
--/+ buffers/cache: 119 1928
-Swap: 0 0 0
-```
-
-To enable the swap you can use for example:
-
-```sh
-/bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
-/sbin/mkswap /var/swap.1
-/sbin/swapon /var/swap.1
-```
-You can make a permanent swap file following this [tutorial](https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-14-04).
-
-## Degraded Mode
-
-Due to some intermittent issues on Travis and other systems, we introduced a
-degraded network mode which helps Composer finish successfully but disables
-a few optimizations. This is enabled automatically when an issue is first
-detected. If you see this issue sporadically you probably don't have to worry
-(a slow or overloaded network can also cause those time outs), but if it
-appears repeatedly you might want to look at the options below to identify
-and resolve it.
-
-If you have been pointed to this page, you want to check a few things:
-
-- If you are using ESET antivirus, go in "Advanced Settings" and disable "HTTP-scanner"
-  under "web access protection"
-- If you are using IPv6, try disabling it. If that solves your issues, get in touch
-  with your ISP or server host, the problem is not at the Packagist level but in the
-  routing rules between you and Packagist (i.e. the internet at large). The best way to get
-  these fixed is raise awareness to the network engineers that have the power to fix it.
-  Take a look at the next section for IPv6 workarounds.
-
-- If none of the above helped, please report the error.
-
-## Operation timed out (IPv6 issues)
-
-You may run into errors if IPv6 is not configured correctly. A common error is:
-
-```
-The "https://getcomposer.org/version" file could not be downloaded: failed to
-open stream: Operation timed out
-```
-
-We recommend you fix your IPv6 setup. If that is not possible, you can try the
-following workarounds:
-
-**Workaround Linux:**
-
-On linux, it seems that running this command helps to make ipv4 traffic have a
-higher prio than ipv6, which is a better alternative than disabling ipv6 entirely:
-
-```bash
-sudo sh -c "echo 'precedence ::ffff:0:0/96 100' >> /etc/gai.conf"
-```
-
-**Workaround Windows:**
-
-On windows the only way is to disable ipv6 entirely I am afraid (either in windows or in your home router).
-
-**Workaround Mac OS X:**
-
-Get name of your network device:
-
-```bash
-networksetup -listallnetworkservices
-```
-
-Disable IPv6 on that device (in this case "Wi-Fi"):
-
-```bash
-networksetup -setv6off Wi-Fi
-```
-
-Run composer ...
-
-You can enable IPv6 again with:
-
-```bash
-networksetup -setv6automatic Wi-Fi
-```
-
-That said, if this fixes your problem, please talk to your ISP about it to
-try and resolve the routing errors. That's the best way to get things resolved
-for everyone.
-
-## Composer hangs with SSH ControlMaster
-
-When you try to install packages from a Git repository and you use the `ControlMaster`
-setting for your SSH connection, Composer might hang endlessly and you see a `sh`
-process in the `defunct` state in your process list.
-
-The reason for this is a SSH Bug: https://bugzilla.mindrot.org/show_bug.cgi?id=1988
-
-As a workaround, open a SSH connection to your Git host before running Composer:
-
-```bash
-ssh -t git@mygitserver.tld
-composer update
-```
-
-See also https://github.com/composer/composer/issues/4180 for more information.
-
-## Zip archives are not unpacked correctly.
-
-Composer can unpack zipballs using either a system-provided `unzip` utility or PHP's
-native `ZipArchive` class. The `ZipArchive` class is preferred on Windows. On other
-OSes where ZIP files can contain permissions and symlinks, the `unzip` utility is
-preferred. You're advised to install it if you need these features.

+ 0 - 110
vendor/composer/composer/doc/articles/vendor-binaries.md

xqd
@@ -1,110 +0,0 @@
-<!--
-    tagline: Expose command-line scripts from packages
--->
-
-# Vendor binaries and the `vendor/bin` directory
-
-## What is a vendor binary?
-
-Any command line script that a Composer package would like to pass along
-to a user who installs the package should be listed as a vendor binary.
-
-If a package contains other scripts that are not needed by the package
-users (like build or compile scripts) that code should not be listed
-as a vendor binary.
-
-## How is it defined?
-
-It is defined by adding the `bin` key to a project's `composer.json`.
-It is specified as an array of files so multiple binaries can be added
-for any given project.
-
-```json
-{
-    "bin": ["bin/my-script", "bin/my-other-script"]
-}
-```
-
-## What does defining a vendor binary in composer.json do?
-
-It instructs Composer to install the package's binaries to `vendor/bin`
-for any project that **depends** on that project.
-
-This is a convenient way to expose useful scripts that would
-otherwise be hidden deep in the `vendor/` directory.
-
-## What happens when Composer is run on a composer.json that defines vendor binaries?
-
-For the binaries that a package defines directly, nothing happens.
-
-## What happens when Composer is run on a composer.json that has dependencies with vendor binaries listed?
-
-Composer looks for the binaries defined in all of the dependencies. A
-symlink is created from each dependency's binaries to `vendor/bin`.
-
-Say package `my-vendor/project-a` has binaries setup like this:
-
-```json
-{
-    "name": "my-vendor/project-a",
-    "bin": ["bin/project-a-bin"]
-}
-```
-
-Running `composer install` for this `composer.json` will not do
-anything with `bin/project-a-bin`.
-
-Say project `my-vendor/project-b` has requirements setup like this:
-
-```json
-{
-    "name": "my-vendor/project-b",
-    "require": {
-        "my-vendor/project-a": "*"
-    }
-}
-```
-
-Running `composer install` for this `composer.json` will look at
-all of project-a's binaries and install them to `vendor/bin`.
-
-In this case, Composer will make `vendor/my-vendor/project-a/bin/project-a-bin`
-available as `vendor/bin/project-a-bin`. On a Unix-like platform
-this is accomplished by creating a symlink.
-
-## What about Windows and .bat files?
-
-Packages managed entirely by Composer do not *need* to contain any
-`.bat` files for Windows compatibility. Composer handles installation
-of binaries in a special way when run in a Windows environment:
-
- * A `.bat` file is generated automatically to reference the binary
- * A Unix-style proxy file with the same name as the binary is generated
-   automatically (useful for Cygwin or Git Bash)
-
-Packages that need to support workflows that may not include Composer
-are welcome to maintain custom `.bat` files. In this case, the package
-should **not** list the `.bat` file as a binary as it is not needed.
-
-## Can vendor binaries be installed somewhere other than vendor/bin?
-
-Yes, there are two ways an alternate vendor binary location can be specified:
-
- 1. Setting the `bin-dir` configuration setting in `composer.json`
- 1. Setting the environment variable `COMPOSER_BIN_DIR`
-
-An example of the former looks like this:
-
-```json
-{
-    "config": {
-        "bin-dir": "scripts"
-    }
-}
-```
-
-Running `composer install` for this `composer.json` will result in
-all of the vendor binaries being installed in `scripts/` instead of
-`vendor/bin/`.
-
-You can set `bin-dir` to `./` to put binaries in your project root.

+ 0 - 230
vendor/composer/composer/doc/articles/versions.md

xqd
@@ -1,230 +0,0 @@
-<!--
-    tagline: Versions explained.
--->
-
-# Versions and constraints
-
-## Composer Versions vs VCS Versions
-
-Because Composer is heavily geared toward utilizing version control systems
-like git, the term "version" can be a little ambiguous. In the sense of a
-version control system, a "version" is a specific set of files that contain
-specific data. In git terminology, this is a "ref", or a specific commit,
-which may be represented by a branch HEAD or a tag. When you check out that
-version in your VCS -- for example, tag `v1.1` or commit `e35fa0d` --, you're
-asking for a single, known set of files, and you always get the same files back.
-
-In Composer, what's often referred to casually as a version -- that is,
-the string that follows the package name in a require line (e.g., `~1.1` or
-`1.2.*`) -- is actually more specifically a version constraint. Composer
-uses version constraints to figure out which refs in a VCS it should be
-checking out (or simply to verify that a given library is acceptable in
-the case of a statically-maintained library with a `version` specification
-in `composer.json`).
-
-## VCS Tags and Branches
-
-*For the following discussion, let's assume the following sample library
-repository:*
-
-```sh
-~/my-library$ git branch
-v1
-v2
-my-feature
-nother-feature
-
-~/my-library$ git tag
-v1.0
-v1.0.1
-v1.0.2
-v1.1-BETA
-v1.1-RC1
-v1.1-RC2
-v1.1
-v1.1.1
-v2.0-BETA
-v2.0-RC1
-v2.0
-v2.0.1
-v2.0.2
-```
-
-### Tags
-
-Normally, Composer deals with tags (as opposed to branches -- if you don't
-know what this means, read up on
-[version control systems](https://en.wikipedia.org/wiki/Version_control#Common_vocabulary)).
-When you write a version constraint, it may reference a specific tag (e.g.,
-`1.1`) or it may reference a valid range of tags (e.g., `>=1.1 <2.0`, or
-`~4.0`). To resolve these constraints, Composer first asks the VCS to list
-all available tags, then creates an internal list of available versions based
-on these tags. In the above example, composer's internal list includes versions
-`1.0`, `1.0.1`, `1.0.2`, the beta release of `1.1`, the first and second
-release candidates of `1.1`, the final release version `1.1`, etc.... (Note
-that Composer automatically removes the 'v' prefix in the actual tagname to
-get a valid final version number.)
-
-When Composer has a complete list of available versions from your VCS, it then
-finds the highest version that matches all version constraints in your project
-(it's possible that other packages require more specific versions of the
-library than you do, so the version it chooses may not always be the highest
-available version) and it downloads a zip archive of that tag to unpack in the
-correct location in your `vendor` directory.
-
-### Branches
-
-If you want Composer to check out a branch instead of a tag, you need to point it to the branch using the special `dev-*` prefix (or sometimes suffix; see below). If you're checking out a branch, it's assumed that you want to *work* on the branch and Composer actually clones the repo into the correct place in your `vendor` directory. For tags, it copies the right files without actually cloning the repo. (You can modify this behavior with --prefer-source and --prefer-dist, see [install options](../03-cli.md#install).)
-
-In the above example, if you wanted to check out the `my-feature` branch, you would specify `dev-my-feature` as the version constraint in your `require` clause. This would result in Composer cloning the `my-library` repository into my `vendor` directory and checking out the `my-feature` branch.
-
-When branch names look like versions, we have to clarify for composer that we're trying to check out a branch and not a tag. In the above example, we have two version branches: `v1` and `v2`. To get Composer to check out one of these branches, you must specify a version constraint that looks like this: `v1.x-dev`. The `.x` is an arbitrary string that Composer requires to tell it that we're talking about the `v1` branch and not a `v1` tag (alternatively, you can name the branch `v1.x` instead of `v1`). In the case of a branch with a version-like name (`v1`, in this case), you append `-dev` as a suffix, rather than using `dev-` as a prefix.
-
-### Minimum Stability
-
-There's one more thing that will affect which files are checked out of a library's VCS and added to your project: Composer allows you to specify stability constraints to limit which tags are considered valid. In the above example, note that the library released a beta and two release candidates for version `1.1` before the final official release. To receive these versions when running `composer install` or `composer update`, we have to explicitly tell Composer that we are ok with release candidates and beta releases (and alpha releases, if we want those). This can be done using either a project-wide `minimum-stability` value in `composer.json` or using "stability flags" in version constraints. Read more on the [schema page](../04-schema.md#minimum-stability).
-
-## Writing Version Constraints
-
-Now that you have an idea of how Composer sees versions, let's talk about how
-to specify version constraints for your project dependencies.
-
-### Exact Version Constraint
-
-You can specify the exact version of a package. This will tell Composer to
-install this version and this version only. If other dependencies require
-a different version, the solver will ultimately fail and abort any install
-or update procedures.
-
-Example: `1.0.2`
-
-### Version Range
-
-By using comparison operators you can specify ranges of valid versions. Valid
-operators are `>`, `>=`, `<`, `<=`, `!=`.
-
-You can define multiple ranges. Ranges separated by a space (<code>&nbsp;</code>)
-or comma (`,`) will be treated as a **logical AND**. A double pipe (`||`)
-will be treated as a **logical OR**. AND has higher precedence than OR.
-
-> **Note:** Be careful when using unbounded ranges as you might end up
-> unexpectedly installing versions that break backwards compatibility.
-> Consider using the [caret](#caret-version-range-) operator instead for safety.
-
-Examples:
-
-* `>=1.0`
-* `>=1.0 <2.0`
-* `>=1.0 <1.1 || >=1.2`
-
-### Hyphenated Version Range ( - )
-
-Inclusive set of versions. Partial versions on the right include are completed
-with a wildcard. For example `1.0 - 2.0` is equivalent to `>=1.0.0 <2.1` as the
-`2.0` becomes `2.0.*`. On the other hand `1.0.0 - 2.1.0` is equivalent to
-`>=1.0.0 <=2.1.0`.
-
-Example: `1.0 - 2.0`
-
-### Wildcard Version Range (.*)
-
-You can specify a pattern with a `*` wildcard. `1.0.*` is the equivalent of
-`>=1.0 <1.1`.
-
-Example: `1.0.*`
-
-## Next Significant Release Operators
-
-### Tilde Version Range (~)
-
-The `~` operator is best explained by example: `~1.2` is equivalent to
-`>=1.2 <2.0.0`, while `~1.2.3` is equivalent to `>=1.2.3 <1.3.0`. As you can see
-it is mostly useful for projects respecting [semantic
-versioning](https://semver.org/). A common usage would be to mark the minimum
-minor version you depend on, like `~1.2` (which allows anything up to, but not
-including, 2.0). Since in theory there should be no backwards compatibility
-breaks until 2.0, that works well. Another way of looking at it is that using
-`~` specifies a minimum version, but allows the last digit specified to go up.
-
-Example: `~1.2`
-
-> **Note:** Although `2.0-beta.1` is strictly before `2.0`, a version constraint
-> like `~1.2` would not install it. As said above `~1.2` only means the `.2`
-> can change but the `1.` part is fixed.
-
-> **Note:** The `~` operator has an exception on its behavior for the major
-> release number. This means for example that `~1` is the same as `~1.0` as
-> it will not allow the major number to increase trying to keep backwards
-> compatibility.
-
-### Caret Version Range (^)
-
-The `^` operator behaves very similarly but it sticks closer to semantic
-versioning, and will always allow non-breaking updates. For example `^1.2.3`
-is equivalent to `>=1.2.3 <2.0.0` as none of the releases until 2.0 should
-break backwards compatibility. For pre-1.0 versions it also acts with safety
-in mind and treats `^0.3` as `>=0.3.0 <0.4.0`.
-
-This is the recommended operator for maximum interoperability when writing
-library code.
-
-Example: `^1.2.3`
-
-## Stability Constraints
-
-If you are using a constraint that does not explicitly define a stability,
-Composer will default internally to `-dev` or `-stable`, depending on the
-operator(s) used. This happens transparently.
-
-If you wish to explicitly consider only the stable release in the comparison,
-add the suffix `-stable`.
-
-Examples:
-
- Constraint         | Internally
-------------------- | ------------------------
- `1.2.3`            | `=1.2.3.0-stable`
- `>1.2`             | `>1.2.0.0-stable`
- `>=1.2`            | `>=1.2.0.0-dev`
- `>=1.2-stable`     | `>=1.2.0.0-stable`
- `<1.3`             | `<1.3.0.0-dev`
- `<=1.3`            | `<=1.3.0.0-stable`
- `1 - 2`            | `>=1.0.0.0-dev <3.0.0.0-dev`
- `~1.3`             | `>=1.3.0.0-dev <2.0.0.0-dev`
- `1.4.*`            | `>=1.4.0.0-dev <1.5.0.0-dev`
-
-To allow various stabilities without enforcing them at the constraint level
-however, you may use [stability-flags](../04-schema.md#package-links) like
-`@<stability>` (e.g. `@dev`) to let composer know that a given package
-can be installed in a different stability than your default minimum-stability
-setting. All available stability flags are listed on the minimum-stability
-section of the [schema page](../04-schema.md#minimum-stability).
-
-## Summary
-```json
-"require": {
-    "vendor/package": "1.3.2", // exactly 1.3.2
-
-    // >, <, >=, <= | specify upper / lower bounds
-    "vendor/package": ">=1.3.2", // anything above or equal to 1.3.2
-    "vendor/package": "<1.3.2", // anything below 1.3.2
-
-    // * | wildcard
-    "vendor/package": "1.3.*", // >=1.3.0 <1.4.0
-
-    // ~ | allows last digit specified to go up
-    "vendor/package": "~1.3.2", // >=1.3.2 <1.4.0
-    "vendor/package": "~1.3", // >=1.3.0 <2.0.0
-
-    // ^ | doesn't allow breaking changes (major version fixed - following semver)
-    "vendor/package": "^1.3.2", // >=1.3.2 <2.0.0
-    "vendor/package": "^0.3.2", // >=0.3.2 <0.4.0 // except if major version is 0
-}
-```
-
-## Testing Version Constraints
-
-You can test version constraints using [semver.mwl.be](https://semver.mwl.be).
-Fill in a package name and it will autofill the default version constraint
-which Composer would add to your `composer.json` file. You can adjust the
-version constraint and the tool will highlight all releases that match.

+ 0 - 55
vendor/composer/composer/doc/dev/DefaultPolicy.md

xqd
@@ -1,55 +0,0 @@
-# Default Solver Policy
-
-A solver policy defines behaviour variables of the dependency solver. It decides
-which versions are considered newer than others, which packages should be
-preferred over others and whether operations like downgrades or uninstall are
-allowed.
-
-## Selection of preferred Packages
-
-The following describe package pool situations with user requests and the
-resulting order in which the solver will try to install them.
-
-The rules are to be applied in the order of these descriptions.
-
-### Repository priorities
-
-Packages Repo1.Av1, Repo2.Av1
-
-* priority(Repo1) >= priority(Repo2) => (Repo1.Av1, Repo2.Av1)
-* priority(Repo1) <  priority(Repo2) => (Repo2.Av1, Repo1.Av1)
-
-### Package versions
-
-Packages: Av1, Av2, Av3
-
-* Installed: Av2
-
-Request: install A
-
-* (Av3)
-
-### Virtual Packages (provides)
-
-Packages Av1, Bv1
-
-* Av1 provides Xv1
-* Bv1 provides Xv1
-
-Request: install X
-
-* priority(Av1.repo) >= priority(Bv1.repo) => (Av1, Bv1)
-* priority(Av1.repo) <  priority(Bv1.repo) => (Bv1, Av1)
-
-### Package replacements
-
-Packages: Av1, Bv2
-
-* Bv2 replaces Av1
-
-Request: install A
-
-* priority(Av1.repo) >= priority(Bv2.repo) => (Av1, Bv2)
-* priority(Av1.repo) <  priority(Bv2.repo) => (Bv2, Av1)
-
-Bv2 version is ignored, only the replacement version for A matters.

+ 0 - 50
vendor/composer/composer/doc/faqs/how-do-i-install-a-package-to-a-custom-path-for-my-framework.md

xqd
@@ -1,50 +0,0 @@
-# How do I install a package to a custom path for my framework?
-
-Each framework may have one or many different required package installation
-paths. Composer can be configured to install packages to a folder other than
-the default `vendor` folder by using
-[composer/installers](https://github.com/composer/installers).
-
-If you are a **package author** and want your package installed to a custom
-directory, simply require `composer/installers` and set the appropriate `type`.
-This is common if your package is intended for a specific framework such as
-CakePHP, Drupal or WordPress. Here is an example composer.json file for a
-WordPress theme:
-
-```json
-{
-    "name": "you/themename",
-    "type": "wordpress-theme",
-    "require": {
-        "composer/installers": "~1.0"
-    }
-}
-```
-
-Now when your theme is installed with Composer it will be placed into
-`wp-content/themes/themename/` folder. Check the
-[current supported types](https://github.com/composer/installers#current-supported-package-types)
-for your package.
-
-As a **package consumer** you can set or override the install path for a package
-that requires composer/installers by configuring the `installer-paths` extra. A
-useful example would be for a Drupal multisite setup where the package should be
-installed into your sites subdirectory. Here we are overriding the install path
-for a module that uses composer/installers:
-
-```json
-{
-    "extra": {
-        "installer-paths": {
-            "sites/example.com/modules/{$name}": ["vendor/package"]
-        }
-    }
-}
-```
-
-Now the package would be installed to your folder location, rather than the default
-composer/installers determined location.
-
-> **Note:** You cannot use this to change the path of any package. This is only
-> applicable to packages that require `composer/installers` and use a custom type
-> that it handles.

+ 0 - 42
vendor/composer/composer/doc/faqs/how-to-install-composer-programmatically.md

xqd
@@ -1,42 +0,0 @@
-# How do I install Composer programmatically?
-
-As noted on the download page, the installer script contains a
-signature which changes when the installer code changes and as such
-it should not be relied upon in the long term.
-
-An alternative is to use this script which only works with UNIX utilities:
-
-```bash
-#!/bin/sh
-
-EXPECTED_SIGNATURE="$(wget -q -O - https://composer.github.io/installer.sig)"
-php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
-ACTUAL_SIGNATURE="$(php -r "echo hash_file('SHA384', 'composer-setup.php');")"
-
-if [ "$EXPECTED_SIGNATURE" != "$ACTUAL_SIGNATURE" ]
-then
-    >&2 echo 'ERROR: Invalid installer signature'
-    rm composer-setup.php
-    exit 1
-fi
-
-php composer-setup.php --quiet
-RESULT=$?
-rm composer-setup.php
-exit $RESULT
-```
-
-The script will exit with 1 in case of failure, or 0 on success, and is quiet
-if no error occurs.
-
-Alternatively, if you want to rely on an exact copy of the installer, you can fetch
-a specific version from GitHub's history. The commit hash should be enough to
-give it uniqueness and authenticity as long as you can trust the GitHub servers.
-For example:
-
-```bash
-wget https://raw.githubusercontent.com/composer/getcomposer.org/1b137f8bf6db3e79a38a5bc45324414a6b1f9df2/web/installer -O - -q | php -- --quiet
-```
-
-You may replace the commit hash by whatever the last commit hash is on
-https://github.com/composer/getcomposer.org/commits/master

+ 0 - 19
vendor/composer/composer/doc/faqs/how-to-install-untrusted-packages-safely.md

xqd
@@ -1,19 +0,0 @@
-# How do I install untrusted packages safely? Is it safe to run Composer as superuser or root?
-
-Certain Composer commands, including `exec`, `install`, and `update` allow third party code to
-execute on your system. This is from its "plugins" and "scripts" features. Plugins and scripts have
-full access to the user account which runs Composer. For this reason, it is strongly advised to
-**avoid running Composer as super-user/root**.
-
-You can disable plugins and scripts during package installation or updates with the following
-syntax so only Composer's code, and no third party code, will execute:
-
-```sh
-composer install --no-plugins --no-scripts ...
-composer update --no-plugins --no-scripts ...
-```
-
-The `exec` command will always run third party code as the user which runs `composer`.
-
-In some cases, like in CI systems or such where you want to install untrusted dependencies, the
-safest way to do it is to run the above command.

+ 0 - 32
vendor/composer/composer/doc/faqs/should-i-commit-the-dependencies-in-my-vendor-directory.md

xqd
@@ -1,32 +0,0 @@
-# Should I commit the dependencies in my vendor directory?
-
-The general recommendation is **no**. The vendor directory (or wherever your
-dependencies are installed) should be added to `.gitignore`/`svn:ignore`/etc.
-
-The best practice is to then have all the developers use Composer to install
-the dependencies. Similarly, the build server, CI, deployment tools etc should
-be adapted to run Composer as part of their project bootstrapping.
-
-While it can be tempting to commit it in some environment, it leads to a few
-problems:
-
-- Large VCS repository size and diffs when you update code.
-- Duplication of the history of all your dependencies in your own VCS.
-- Adding dependencies installed via git to a git repo will show them as
-  submodules. This is problematic because they are not real submodules, and you
-  will run into issues.
-
-If you really feel like you must do this, you have a few options:
-
-1. Limit yourself to installing tagged releases (no dev versions), so that you
-   only get zipped installs, and avoid problems with the git "submodules".
-2. Use --prefer-dist or set `preferred-install` to `dist` in your
-   [config](../04-schema.md#config).
-3. Remove the `.git` directory of every dependency after the installation, then
-   you can add them to your git repo. You can do that with `rm -rf vendor/**/.git`
-   in ZSH or `find vendor/ -type d -name ".git" -exec rm -rf {} \;` in Bash.
-   but this means you will have to delete those dependencies from disk before
-   running composer update.
-4. Add a .gitignore rule (`/vendor/**/.git`) to ignore all the vendor `.git` folders.
-   This approach does not require that you delete dependencies from disk prior to
-   running a composer update.

+ 0 - 4
vendor/composer/composer/doc/faqs/which-version-numbering-system-does-composer-itself-use.md

xqd
@@ -1,4 +0,0 @@
-# Which version numbering system does Composer itself use?
-
-Composer uses [Semantic Versioning (aka SemVer)
-2.0.0](https://semver.org/spec/v2.0.0.html).

+ 0 - 21
vendor/composer/composer/doc/faqs/why-are-unbound-version-constraints-a-bad-idea.md

xqd
@@ -1,21 +0,0 @@
-# Why are unbound version constraints a bad idea?
-
-A version constraint without an upper bound such as `*`, `>=3.4` or
-`dev-master` will allow updates to any future version of the dependency.
-This includes major versions breaking backward compatibility.
-
-Once a release of your package is tagged, you cannot tweak its dependencies
-anymore in case a dependency breaks BC - you have to do a new release but the
-previous one stays broken.
-
-The only good alternative is to define an upper bound on your constraints,
-which you can increase in a new release after testing that your package is
-compatible with the new major version of your dependency.
-
-For example instead of using `>=3.4` you should use `~3.4` which allows all
-versions up to `3.999` but does not include `4.0` and above. The `^` operator
-works very well with libraries following [semantic versioning](https://semver.org).
-
-**Note:** As a package maintainer, you can make the life of your users easier
-by providing an [alias version](../articles/aliases.md) for your development
-branch to allow it to match bound constraints.

+ 0 - 21
vendor/composer/composer/doc/faqs/why-are-version-constraints-combining-comparisons-and-wildcards-a-bad-idea.md

xqd
@@ -1,21 +0,0 @@
-# Why are version constraints combining comparisons and wildcards a bad idea?
-
-This is a fairly common mistake people make, defining version constraints in
-their package requires like `>=2.*` or `>=1.1.*`.
-
-If you think about it and what it really means though, you will quickly
-realize that it does not make much sense. If we decompose `>=2.*`, you
-have two parts:
-
-- `>=2` which says the package should be in version 2.0.0 or above.
-- `2.*` which says the package should be between version 2.0.0 (inclusive)
-  and 3.0.0 (exclusive).
-
-As you see, both rules agree on the fact that the package must be >=2.0.0,
-but it is not possible to determine if when you wrote that you were thinking
-of a package in version 3.0.0 or not. Should it match because you asked for
-`>=2` or should it not match because you asked for a `2.*`?
-
-For this reason, Composer throws an error and says that this is invalid.
-The easy way to fix it is to think about what you really mean, and use only
-one of those rules.

+ 0 - 35
vendor/composer/composer/doc/faqs/why-can't-composer-load-repositories-recursively.md

xqd
@@ -1,35 +0,0 @@
-# Why can't Composer load repositories recursively?
-
-You may run into problems when using custom repositories because Composer does
-not load the repositories of your requirements, so you have to redefine those
-repositories in all your `composer.json` files.
-
-Before going into details as to why this is like that, you have to understand
-that the main use of custom VCS & package repositories is to temporarily try
-some things, or use a fork of a project until your pull request is merged, etc.
-You should not use them to keep track of private packages. For that you should
-rather look into [Private Packagist](https://packagist.com) which lets you
-configure all your private packages in one place, and avoids the slow-downs
-associated with inline VCS repositories.
-
-There are three ways the dependency solver could work with custom repositories:
-
-- Fetch the repositories of root package, get all the packages from the defined
-repositories, resolve requirements. This is the current state and it works well
-except for the limitation of not loading repositories recursively.
-
-- Fetch the repositories of root package, while initializing packages from the
-defined repos, initialize recursively all repos found in those packages, and
-their package's packages, etc, then resolve requirements. It could work, but it
-slows down the initialization a lot since VCS repos can each take a few seconds,
-and it could end up in a completely broken state since many versions of a package
-could define the same packages inside a package repository, but with different
-dist/source. There are many many ways this could go wrong.
-
-- Fetch the repositories of root package, then fetch the repositories of the
-first level dependencies, then fetch the repositories of their dependencies, etc,
-then resolve requirements. This sounds more efficient, but it suffers from the
-same problems as the second solution, because loading the repositories of the
-dependencies is not as easy as it sounds. You need to load all the repos of all
-the potential matches for a requirement, which again might have conflicting
-package definitions.

+ 0 - 22
vendor/composer/composer/doc/fixtures/fixtures.md

xqd
@@ -1,22 +0,0 @@
-# `Composer` type repository fixtures
-
-This directory contains some examples of what `composer` type repositories can
-look like. They serve as illustrating examples accompanying the docs, but can
-also be used as (initial) fixtures for tests.
-
-* `repo-composer-plain` is a simple, plain `packages.json` file
-* `repo-composer-with-includes` uses the `includes` mechanism
-* `repo-composer-with-providers` uses the `providers` mechanism
-
-## Sample Packages used in these fixtures
-
-All these repositories contain the following packages.
-
-* `foo/bar` versions 1.0.0, 1.0.1 and 1.1.0; dev-default and 1.0.x-dev branches.
-   On dev-default and in 1.1.0, `bar/baz` ~1.0 is required.
-* `qux/quux` only has a dev-default branch. It `replace`s `gar/nix`.
-* `gar/nix` has a 1.0.0 version and a dev-default branch. It is being replaced
-   by `qux/quux`.
-* `bar/baz` has a 1.0.0 version and 1.0.x-dev as well as dev-default branches.
-   Additionally, 1.1.x-dev is a branch alias for dev-default.
-

+ 0 - 158
vendor/composer/composer/doc/fixtures/repo-composer-plain/packages.json

xqd
@@ -1,158 +0,0 @@
-{
-    "packages": {
-        "bar/baz": {
-            "1.0.0": {
-                "name": "bar/baz",
-                "version": "1.0.0",
-                "version_normalized": "1.0.0.0",
-                "source": {
-                    "type": "hg",
-                    "url": "http://some.where/over/the/rainbow/",
-                    "reference": "35810817c14d"
-                },
-                "time": "2014-10-13 12:04:55",
-                "type": "library"
-            },
-            "1.0.x-dev": {
-                "name": "bar/baz",
-                "version": "1.0.x-dev",
-                "version_normalized": "1.0.9999999.9999999-dev",
-                "source": {
-                    "type": "hg",
-                    "url": "http://some.where/over/the/rainbow/",
-                    "reference": "ffff9aae6ed5"
-                },
-                "time": "2014-10-13 12:05:37",
-                "type": "library"
-            },
-            "dev-default": {
-                "name": "bar/baz",
-                "version": "dev-default",
-                "version_normalized": "9999999-dev",
-                "source": {
-                    "type": "hg",
-                    "url": "http://some.where/over/the/rainbow/",
-                    "reference": "f317e556f2e2"
-                },
-                "time": "2014-10-13 12:06:45",
-                "type": "library",
-                "extra": {
-                    "branch-alias": {
-                        "dev-default": "1.1.x-dev"
-                    }
-                }
-            }
-        },
-        "foo/bar": {
-            "1.0.0": {
-                "name": "foo/bar",
-                "version": "1.0.0",
-                "version_normalized": "1.0.0.0",
-                "source": {
-                    "type": "hg",
-                    "url": "http://some.where/over/the/rainbow/",
-                    "reference": "249dec95a52a"
-                },
-                "time": "2014-10-11 15:42:00",
-                "type": "library"
-            },
-            "1.0.1": {
-                "name": "foo/bar",
-                "version": "1.0.1",
-                "version_normalized": "1.0.1.0",
-                "source": {
-                    "type": "hg",
-                    "url": "http://some.where/over/the/rainbow/",
-                    "reference": "21e3328295d4"
-                },
-                "time": "2014-10-11 15:45:56",
-                "type": "library"
-            },
-            "1.0.x-dev": {
-                "name": "foo/bar",
-                "version": "1.0.x-dev",
-                "version_normalized": "1.0.9999999.9999999-dev",
-                "source": {
-                    "type": "hg",
-                    "url": "http://some.where/over/the/rainbow/",
-                    "reference": "14dc17c8e860"
-                },
-                "time": "2014-10-11 15:45:59",
-                "type": "library"
-            },
-            "1.1.0": {
-                "name": "foo/bar",
-                "version": "1.1.0",
-                "version_normalized": "1.1.0.0",
-                "source": {
-                    "type": "hg",
-                    "url": "http://some.where/over/the/rainbow/",
-                    "reference": "d2fa3e69ad5b"
-                },
-                "require": {
-                    "bar/baz": "~1.0"
-                },
-                "time": "2014-10-11 15:43:16",
-                "type": "library"
-            },
-            "dev-default": {
-                "name": "foo/bar",
-                "version": "dev-default",
-                "version_normalized": "9999999-dev",
-                "source": {
-                    "type": "hg",
-                    "url": "http://some.where/over/the/rainbow/",
-                    "reference": "8e5a5c224336"
-                },
-                "require": {
-                    "bar/baz": "~1.0"
-                },
-                "time": "2014-10-11 15:43:18",
-                "type": "library"
-            }
-        },
-        "gar/nix": {
-            "1.0.0": {
-                "name": "gar/nix",
-                "version": "1.0.0",
-                "version_normalized": "1.0.0.0",
-                "source": {
-                    "type": "hg",
-                    "url": "http://some.where/over/the/rainbow/",
-                    "reference": "44977145d64e"
-                },
-                "time": "2014-10-13 12:03:33",
-                "type": "library"
-            },
-            "dev-default": {
-                "name": "gar/nix",
-                "version": "dev-default",
-                "version_normalized": "9999999-dev",
-                "source": {
-                    "type": "hg",
-                    "url": "http://some.where/over/the/rainbow/",
-                    "reference": "51cca95a31c2"
-                },
-                "time": "2014-10-13 12:03:35",
-                "type": "library"
-            }
-        },
-        "qux/quux": {
-            "dev-default": {
-                "name": "qux/quux",
-                "version": "dev-default",
-                "version_normalized": "9999999-dev",
-                "source": {
-                    "type": "hg",
-                    "url": "http://some.where/over/the/rainbow/",
-                    "reference": "4a10a567baa5"
-                },
-                "replace": {
-                    "gar/nix": "1.0.*"
-                },
-                "time": "2014-10-11 15:48:15",
-                "type": "library"
-            }
-        }
-    }
-}

+ 0 - 50
vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/bar/baz$923363b3c22e73abb2e3fd891c8156dd4d0821a97fd3e428bc910833e3e46dbe.json

xqd
@@ -1,50 +0,0 @@
-{
-    "packages": {
-        "bar\/baz": {
-            "1.0.0": {
-                "name": "bar\/baz",
-                "version": "1.0.0",
-                "version_normalized": "1.0.0.0",
-                "source": {
-                    "type": "hg",
-                    "url": "http:\/\/some.where\/over\/the\/rainbow\/",
-                    "reference": "35810817c14d"
-                },
-                "time": "2014-10-13 12:04:55",
-                "type": "library",
-                "uid": 0
-            },
-            "1.0.x-dev": {
-                "name": "bar\/baz",
-                "version": "1.0.x-dev",
-                "version_normalized": "1.0.9999999.9999999-dev",
-                "source": {
-                    "type": "hg",
-                    "url": "http:\/\/some.where\/over\/the\/rainbow\/",
-                    "reference": "ffff9aae6ed5"
-                },
-                "time": "2014-10-13 12:05:37",
-                "type": "library",
-                "uid": 1
-            },
-            "dev-default": {
-                "name": "bar\/baz",
-                "version": "dev-default",
-                "version_normalized": "9999999-dev",
-                "source": {
-                    "type": "hg",
-                    "url": "http:\/\/some.where\/over\/the\/rainbow\/",
-                    "reference": "f317e556f2e2"
-                },
-                "time": "2014-10-13 12:06:45",
-                "type": "library",
-                "extra": {
-                    "branch-alias": {
-                        "dev-default": "1.1.x-dev"
-                    }
-                },
-                "uid": 2
-            }
-        }
-    }
-}

+ 0 - 77
vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/foo/bar$4baabb3303afa3e34a4d3af18fb138e5f3b79029c1f8d9ab5b477ea15776ba0a.json

xqd
@@ -1,77 +0,0 @@
-{
-    "packages": {
-        "foo\/bar": {
-            "1.0.0": {
-                "name": "foo\/bar",
-                "version": "1.0.0",
-                "version_normalized": "1.0.0.0",
-                "source": {
-                    "type": "hg",
-                    "url": "http:\/\/some.where\/over\/the\/rainbow\/",
-                    "reference": "249dec95a52a"
-                },
-                "time": "2014-10-11 15:42:00",
-                "type": "library",
-                "uid": 3
-            },
-            "1.0.1": {
-                "name": "foo\/bar",
-                "version": "1.0.1",
-                "version_normalized": "1.0.1.0",
-                "source": {
-                    "type": "hg",
-                    "url": "http:\/\/some.where\/over\/the\/rainbow\/",
-                    "reference": "21e3328295d4"
-                },
-                "time": "2014-10-11 15:45:56",
-                "type": "library",
-                "uid": 4
-            },
-            "1.0.x-dev": {
-                "name": "foo\/bar",
-                "version": "1.0.x-dev",
-                "version_normalized": "1.0.9999999.9999999-dev",
-                "source": {
-                    "type": "hg",
-                    "url": "http:\/\/some.where\/over\/the\/rainbow\/",
-                    "reference": "14dc17c8e860"
-                },
-                "time": "2014-10-11 15:45:59",
-                "type": "library",
-                "uid": 5
-            },
-            "1.1.0": {
-                "name": "foo\/bar",
-                "version": "1.1.0",
-                "version_normalized": "1.1.0.0",
-                "source": {
-                    "type": "hg",
-                    "url": "http:\/\/some.where\/over\/the\/rainbow\/",
-                    "reference": "d2fa3e69ad5b"
-                },
-                "require": {
-                    "bar\/baz": "~1.0"
-                },
-                "time": "2014-10-11 15:43:16",
-                "type": "library",
-                "uid": 6
-            },
-            "dev-default": {
-                "name": "foo\/bar",
-                "version": "dev-default",
-                "version_normalized": "9999999-dev",
-                "source": {
-                    "type": "hg",
-                    "url": "http:\/\/some.where\/over\/the\/rainbow\/",
-                    "reference": "8e5a5c224336"
-                },
-                "require": {
-                    "bar\/baz": "~1.0"
-                },
-                "time": "2014-10-11 15:43:18",
-                "type": "library",
-                "uid": 7
-            }
-        }
-    }
-}

+ 0 - 50
vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/gar/nix$5d210670cb46c8364c8e3fb449967b9bea558b971e5b082f330ae4f1d484c321.json

xqd
@@ -1,50 +0,0 @@
-{
-    "packages": {
-        "qux\/quux": {
-            "dev-default": {
-                "name": "qux\/quux",
-                "version": "dev-default",
-                "version_normalized": "9999999-dev",
-                "source": {
-                    "type": "hg",
-                    "url": "http:\/\/some.where\/over\/the\/rainbow\/",
-                    "reference": "4a10a567baa5"
-                },
-                "replace": {
-                    "gar\/nix": "1.0.*"
-                },
-                "time": "2014-10-11 15:48:15",
-                "type": "library",
-                "uid": 10
-            }
-        },
-        "gar\/nix": {
-            "1.0.0": {
-                "name": "gar\/nix",
-                "version": "1.0.0",
-                "version_normalized": "1.0.0.0",
-                "source": {
-                    "type": "hg",
-                    "url": "http:\/\/some.where\/over\/the\/rainbow\/",
-                    "reference": "44977145d64e"
-                },
-                "time": "2014-10-13 12:03:33",
-                "type": "library",
-                "uid": 8
-            },
-            "dev-default": {
-                "name": "gar\/nix",
-                "version": "dev-default",
-                "version_normalized": "9999999-dev",
-                "source": {
-                    "type": "hg",
-                    "url": "http:\/\/some.where\/over\/the\/rainbow\/",
-                    "reference": "51cca95a31c2"
-                },
-                "time": "2014-10-13 12:03:35",
-                "type": "library",
-                "uid": 9
-            }
-        }
-    }
-}

+ 0 - 16
vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/provider-active$1893a061e579543822389ecd12d791c612db0c05e22d90e9286e233cacd86ed8.json

xqd
@@ -1,16 +0,0 @@
-{
-    "providers": {
-        "bar\/baz": {
-            "sha256": "923363b3c22e73abb2e3fd891c8156dd4d0821a97fd3e428bc910833e3e46dbe"
-        },
-        "foo\/bar": {
-            "sha256": "4baabb3303afa3e34a4d3af18fb138e5f3b79029c1f8d9ab5b477ea15776ba0a"
-        },
-        "gar\/nix": {
-            "sha256": "5d210670cb46c8364c8e3fb449967b9bea558b971e5b082f330ae4f1d484c321"
-        },
-        "qux\/quux": {
-            "sha256": "c142d1a07ca354be46b613f59f1d601923a5a00ccc5fcce50a77ecdd461eb72d"
-        }
-    }
-}

+ 0 - 22
vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/qux/quux$c142d1a07ca354be46b613f59f1d601923a5a00ccc5fcce50a77ecdd461eb72d.json

xqd
@@ -1,22 +0,0 @@
-{
-    "packages": {
-        "qux\/quux": {
-            "dev-default": {
-                "name": "qux\/quux",
-                "version": "dev-default",
-                "version_normalized": "9999999-dev",
-                "source": {
-                    "type": "hg",
-                    "url": "http:\/\/some.where\/over\/the\/rainbow\/",
-                    "reference": "4a10a567baa5"
-                },
-                "replace": {
-                    "gar\/nix": "1.0.*"
-                },
-                "time": "2014-10-11 15:48:15",
-                "type": "library",
-                "uid": 10
-            }
-        }
-    }
-}

+ 0 - 9
vendor/composer/composer/doc/fixtures/repo-composer-with-providers/packages.json

xqd
@@ -1,9 +0,0 @@
-{
-    "packages": [],
-    "providers-url": "\/p\/%package%$%hash%.json",
-    "provider-includes": {
-        "p\/provider-active$1893a061e579543822389ecd12d791c612db0c05e22d90e9286e233cacd86ed8.json": {
-            "sha256": "1893a061e579543822389ecd12d791c612db0c05e22d90e9286e233cacd86ed8"
-        }
-    }
-}

+ 0 - 95
vendor/monolog/monolog/README.md

xqd
@@ -1,95 +0,0 @@
-# Monolog - Logging for PHP [![Build Status](https://img.shields.io/travis/Seldaek/monolog.svg)](https://travis-ci.org/Seldaek/monolog)
-
-[![Total Downloads](https://img.shields.io/packagist/dt/monolog/monolog.svg)](https://packagist.org/packages/monolog/monolog)
-[![Latest Stable Version](https://img.shields.io/packagist/v/monolog/monolog.svg)](https://packagist.org/packages/monolog/monolog)
-[![Reference Status](https://www.versioneye.com/php/monolog:monolog/reference_badge.svg)](https://www.versioneye.com/php/monolog:monolog/references)
-
-
-Monolog sends your logs to files, sockets, inboxes, databases and various
-web services. See the complete list of handlers below. Special handlers
-allow you to build advanced logging strategies.
-
-This library implements the [PSR-3](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-3-logger-interface.md)
-interface that you can type-hint against in your own libraries to keep
-a maximum of interoperability. You can also use it in your applications to
-make sure you can always use another compatible logger at a later time.
-As of 1.11.0 Monolog public APIs will also accept PSR-3 log levels.
-Internally Monolog still uses its own level scheme since it predates PSR-3.
-
-## Installation
-
-Install the latest version with
-
-```bash
-$ composer require monolog/monolog
-```
-
-## Basic Usage
-
-```php
-<?php
-
-use Monolog\Logger;
-use Monolog\Handler\StreamHandler;
-
-// create a log channel
-$log = new Logger('name');
-$log->pushHandler(new StreamHandler('path/to/your.log', Logger::WARNING));
-
-// add records to the log
-$log->addWarning('Foo');
-$log->addError('Bar');
-```
-
-## Documentation
-
-- [Usage Instructions](doc/01-usage.md)
-- [Handlers, Formatters and Processors](doc/02-handlers-formatters-processors.md)
-- [Utility classes](doc/03-utilities.md)
-- [Extending Monolog](doc/04-extending.md)
-
-## Third Party Packages
-
-Third party handlers, formatters and processors are
-[listed in the wiki](https://github.com/Seldaek/monolog/wiki/Third-Party-Packages). You
-can also add your own there if you publish one.
-
-## About
-
-### Requirements
-
-- Monolog works with PHP 5.3 or above, and is also tested to work with HHVM.
-
-### Submitting bugs and feature requests
-
-Bugs and feature request are tracked on [GitHub](https://github.com/Seldaek/monolog/issues)
-
-### Framework Integrations
-
-- Frameworks and libraries using [PSR-3](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-3-logger-interface.md)
-  can be used very easily with Monolog since it implements the interface.
-- [Symfony2](http://symfony.com) comes out of the box with Monolog.
-- [Silex](http://silex.sensiolabs.org/) comes out of the box with Monolog.
-- [Laravel 4 & 5](http://laravel.com/) come out of the box with Monolog.
-- [Lumen](http://lumen.laravel.com/) comes out of the box with Monolog.
-- [PPI](http://www.ppi.io/) comes out of the box with Monolog.
-- [CakePHP](http://cakephp.org/) is usable with Monolog via the [cakephp-monolog](https://github.com/jadb/cakephp-monolog) plugin.
-- [Slim](http://www.slimframework.com/) is usable with Monolog via the [Slim-Monolog](https://github.com/Flynsarmy/Slim-Monolog) log writer.
-- [XOOPS 2.6](http://xoops.org/) comes out of the box with Monolog.
-- [Aura.Web_Project](https://github.com/auraphp/Aura.Web_Project) comes out of the box with Monolog.
-- [Nette Framework](http://nette.org/en/) can be used with Monolog via [Kdyby/Monolog](https://github.com/Kdyby/Monolog) extension.
-- [Proton Micro Framework](https://github.com/alexbilbie/Proton) comes out of the box with Monolog.
-
-### Author
-
-Jordi Boggiano - <j.boggiano@seld.be> - <http://twitter.com/seldaek><br />
-See also the list of [contributors](https://github.com/Seldaek/monolog/contributors) which participated in this project.
-
-### License
-
-Monolog is licensed under the MIT License - see the `LICENSE` file for details
-
-### Acknowledgements
-
-This library is heavily inspired by Python's [Logbook](http://packages.python.org/Logbook/)
-library, although most concepts have been adjusted to fit to the PHP world.

BIN
wxApp/huace1.0/.DS_Store


+ 0 - 120
wxApp/huace1.0/app.js

xqd
@@ -1,120 +0,0 @@
-
-//app.js
-var siteinfo = require("siteinfo.js"),
-  _api_root = "";
-let extConfig = wx.getExtConfigSync ? wx.getExtConfigSync() : {};
-var uniacid = JSON.stringify(extConfig) != "{}" ? extConfig.uniacid : '1';
-siteinfo.uniacid = uniacid;
-siteinfo.acid = uniacid;
-wx.setStorageSync("store_id", uniacid);
-console.log('uniacid:' + uniacid);
-if (-1 != siteinfo.acid) {
-  var siteroot = siteinfo.siteroot.substr(0, siteinfo.siteroot.indexOf("app/index.php"));
-  _api_root = _api_root = siteroot + "core/web/index.php?_acid=" + siteinfo.acid + "&r=api/"
-} else _api_root = siteinfo.apiroot;
-
-App({
-  login: function () {
-    // wx.showLoading({
-    //   title: "正在登录",
-    //   mask: true,
-    // });
-    wx.login({
-      success: function (res) {
-        // wx.hideLoadi;
-        if (res.code) {
-          var code = res.code;
-          wx.getUserInfo({
-            success: function (res) {
-            },
-            fail: function (res) {
-            }
-          });
-        } else {
-          //console.log(res);
-        }
-      },
-      fail: function (res) {
-
-      }
-    });
-  },
-  request: function (object) {
-    var token = wx.getStorageSync("token");
-    var user = wx.getStorageSync("user");
-    if (token) {
-      if (!object.data) {
-        object.data = {};
-      }
-      // object.data.token = token;
-    };
-    wx.request({
-      url: object.url,
-      header: object.header || {
-        // 'content-type': 'application/x-www-form-urlencoded',
-        'Accept': 'application/json',
-        'Authorization': 'Bearer ' + token
-      },
-      data: object.data || {},
-      method: object.method || "GET",
-      dataType: object.dataType || "json",
-      success: function (res) {
-        if (res.data.status_code == 401) {
-          getApp().login();
-        } else {
-          if (object.success)
-            object.success(res);
-        };
-      },
-      fail: function (res) {
-        if (object.fail)
-          object.fail(res);
-      },
-      complete: function (res) {
-        if (object.complete)
-          object.complete(res);
-      }
-    });
-  },
-  onLaunch: function (option) {
-    var query = option.query
-    if (query!=undefined){
-      wx.setStorageSync("go", query.go)
-    }
-    // 展示本地存储能力
-    var logs = wx.getStorageSync('logs') || []
-    logs.unshift(Date.now())
-    wx.setStorageSync('logs', logs)
-
-    // 登录
-    wx.login({
-      success: res => {
-        // 发送 res.code 到后台换取 openId, sessionKey, unionId
-      }
-    })
-    // 获取用户信息
-    wx.getSetting({
-      success: res => {
-        if (res.authSetting['scope.userInfo']) {
-          // 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框
-          wx.getUserInfo({
-            success: res => {
-              // 可以将 res 发送给后台解码出 unionId
-              this.globalData.userInfo = res.userInfo
-
-              // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回
-              // 所以此处加入 callback 以防止这种情况
-              if (this.userInfoReadyCallback) {
-                this.userInfoReadyCallback(res)
-              }
-            }
-          })
-        }
-      }
-    })
-  },
-  globalData: {
-    userInfo: null
-  },
-  siteInfo:require("siteinfo.js"),
-})

+ 0 - 29
wxApp/huace1.0/app.json

xqd
@@ -1,29 +0,0 @@
-{
-  "pages": [
-    "pages/index/loading",
-    "pages/index/index",
-    "pages/boss/sell",
-    "pages/boss/home",
-    "pages/home/home",
-    "pages/set/set",
-    "pages/sell/sell",
-    "pages/main/main",
-    "pages/goodfx/goodfx",
-    "pages/aifx/aifx"
-  ],
-  "window": {
-    "backgroundTextStyle": "light",
-    "navigationBarBackgroundColor": "#fff",
-    "navigationBarTitleText": "WeChat",
-    "navigationBarTextStyle": "black",
-    "pageOrientation": "landscape",
-    "navigationStyle": "custom",
-    "resizable": true
-  },
-  "permission": {
-    "scope.userLocation": {
-      "desc": "你的位置信息将用于小程序位置接口的效果展示"
-    }
-  },
-  "sitemapLocation": "sitemap.json"
-}

+ 0 - 22
wxApp/huace1.0/app.wxss

xqd
@@ -1,22 +0,0 @@
-/**app.wxss**/
-/* .container {
-  height: 100%;
-  display: flex;
-  flex-direction: column;
-  align-items: center;
-  justify-content: space-between;
-  padding: 200rpx 0;
-  box-sizing: border-box;
-}  */
-page, .container {
-  width: 100%;
-  height: 100%;
-}
-.container {
-  box-sizing: border-box;
-  padding-top: 13vh;
-}
-.container {
-  display: flex;
-  justify-content: space-between;
-}

BIN
wxApp/huace1.0/components/.DS_Store


+ 0 - 21
wxApp/huace1.0/components/tabbar/tabbar.wxml

xqd
@@ -1,21 +0,0 @@
-<!--components/tabbar/tabbar.wxml-->
-<template name="tabbar">
-  <view class='tabbar-wrapper'>
-    <navigator url='/pages/home/home?oid={{oid}}&kn={{kusername}}&kt={{kavatar}}&kphone={{kphone}}'  open-type="redirect"  hover-class="none" class='{{navindex == 0 ? "n-active" : ""}}'>
-      <image src='/images/baricon1.png'></image>
-      <text>实时统计</text>
-    </navigator >
-    <navigator url='/pages/aifx/aifx?oid={{oid}}&kn={{kusername}}&kt={{kavatar}}&kphone={{kphone}}'  open-type="redirect"  hover-class="none" class='{{navindex == 1 ? "n-active" : ""}}'>
-      <image src='/images/baricon2.png'></image>
-      <text>AI分析</text>
-    </navigator>
-    <navigator url='/pages/goodfx/goodfx?oid={{oid}}&kn={{kusername}}&kt={{kavatar}}&kphone={{kphone}}'  open-type="redirect"  hover-class="none" class='{{navindex == 2 ? "n-active" : ""}}'>
-      <image src='/images/baricon3.png'></image>
-      <text>商品分析</text>
-    </navigator>
-    <view class='navigator' bindtap='calling'>
-      <text>客户电话</text>
-      <text class='text'>{{khphone?khphone:kphone?kphone:'未获取手机号'}}</text>
-    </view>
-  </view>
-</template>

+ 0 - 49
wxApp/huace1.0/components/tabbar/tabbar.wxss

xqd
@@ -1,49 +0,0 @@
-/* components/tabbar/tabbar.wxss */
-.tabbar-wrapper {
-  height: 87vh;
-  width: 12vw;
-}
-.tabbar-wrapper>navigator {
-  width: 100%;
-  height: 25%;
-  background: #5286FE;
-  display: flex;
-  flex-direction: column;
-  align-items: center;
-  justify-content: center;
-}
-.tabbar-wrapper .navigator {
-  width: 100%;
-  height: 25%;
-  background: #5286FE;
-  display: flex;
-  flex-direction: column;
-  align-items: center;
-  justify-content: center;
-}
-.tabbar-wrapper>.n-active {
-  background:rgba(138,173,254,0.75);
-}
-.tabbar-wrapper>navigator>image {
-  width: 25px;
-  height: 25px;
-  margin-bottom: 11px;
-}
-.tabbar-wrapper>navigator>text {
-  font-size:13px;
-  color:rgba(255,255,255,1);
-}
-.tabbar-wrapper>navigator>.text {
-  font-size:10px;
-  color:rgba(98,233,249,1);
-  margin-top: 11px;
-}
-.tabbar-wrapper .navigator text {
-  font-size:13px;
-  color:rgba(255,255,255,1);
-}
-.tabbar-wrapper .navigator .text {
-  font-size:10px;
-  color:rgba(98,233,249,1);
-  margin-top: 11px;
-}

+ 0 - 12
wxApp/huace1.0/components/title/title.wxml

xqd
@@ -1,12 +0,0 @@
-<template name="title">
-  <view class="title">
-  <navigator url='/pages/sell/sell' open-type="redirect"  hover-class="none">
-    <view class='t_left'>
-      
-        <image src='/images/back.png'></image>
-      
-      <text>{{title}}</text>
-    </view>
-    </navigator>
-  </view>
-</template>

+ 0 - 32
wxApp/huace1.0/components/title/title.wxss

xqd
@@ -1,32 +0,0 @@
-.title {
-  height: 13vh;
-  background: #fff;
-  border-bottom: 1.3vh solid #F1F4F7 ;
-  position: fixed;
-  left: 0;
-  top: 0;
-  width: 100%;
-  box-sizing: border-box;
-  padding: 0 30rpx;
-}
-.title .t_left {
-  display: flex;
-  align-items: center;
-  height: 11.7vh;
-  
-}
-
-.title .t_left >image {
-  width: 11px;
-  height: 17px;
-  margin-right: 15px;
-  margin-top: 2px;
-}
-.title .t_left>text {
-  font-size:15px;
-  font-weight:800;
-  color:rgba(51,51,51,1);
-}
-.navigator-hover {
-  background: #fff;
-}

+ 0 - 16
wxApp/huace1.0/components/title2/title.wxml

xqd
@@ -1,16 +0,0 @@
-<template name="title">
-  <view class="title">
-    <view class='t_left'>
-      <navigator open-type="navigateBack">
-        <image src='/images/back.png'></image>
-      </navigator>
-      <text>AI销售雷达</text>
-      <image src="/images/leida.gif"></image>
-    </view>
-    <view class='t_right'>
-      <view class='tab-item {{currentIndex == 0 ? "ti-active" : ""}}' data-currentTab="0" bindtap='clickTab'>客户</view>
-      <view class='tab-item {{currentIndex == 1 ? "ti-active" : ""}}' data-currentTab="1" bindtap='clickTab'>时间</view>
-      <view class='tab-item {{currentIndex == 2 ? "ti-active" : ""}}' data-currentTab="2" bindtap='clickTab'>统计</view>
-    </view>
-  </view>
-</template>

+ 0 - 54
wxApp/huace1.0/components/title2/title.wxss

xqd
@@ -1,54 +0,0 @@
-.title {
-  height: 13vh;
-  background: #fff;
-  border-bottom: 1.3vh solid #F1F4F7 ;
-  position: fixed;
-  left: 0;
-  top: 0;
-  width: 100%;
-  box-sizing: border-box;
-  padding: 0 30rpx;
-  display: flex;
-  align-items: center;
-}
-.title>.t_left {
-  display: flex;
-  align-items: center;
-  height: 11.7vh;
-  
-}
-.title>.t_left>navigator {
-  width: 10px;
-  height: 15px;
-  margin-right: 30px;
-  font-size: 0;
-}
-.title>.t_left>navigator>image {
-  width: 10px;
-  height: 15px;
-}
-.title>.t_left>text {
-  font-size:15px;
-  font-weight:800;
-  color:rgba(51,51,51,1);
-}
-.t_left>image {
-  width: 18px;
-  height: 18px;
-  margin-left: 10px;
-  margin-top: -4px;
-}
-.t_right {
-  display: flex;
-  font-size:15px;
-  font-weight:800;
-  color:#3E2115;
-  flex: 1;
-  justify-content: center;
-}
-.t_right>.tab-item:nth-child(2) {
-  margin: 0 100px;
-}
-.ti-active {
-  color: #5286FE;
-}

+ 0 - 21
wxApp/huace1.0/components/usermsg/usermsg.wxml

xqd
@@ -1,21 +0,0 @@
-<template name="usermsg">
-  <view class="usermsg-wrapper">
-    <image class='userimg' src="{{kavatar}}"></image>
-    <view class='username'>
-      <view class='text'>{{kusername?kusername:''}}</view>
-      <image src='/images/set.png'></image>
-    </view>
-    <view class='address'>
-      <view class='text'>{{khname?khname:kehuinfo.comment?kehuinfo.comment:'无备注'}}</view>
-      <view class='text'>{{khaddress?khaddress:kehuinfo.address?kehuinfo.address:'未添加地址'}}</view>
-    </view>
-    <view class='intention'>{{khjindu?khjindu:kehuinfo.tips?kehuinfo.tips:'无跟进状态'}}</view>
-    <picker bindchange="bindPickerChange" value="{{index}}" range="{{rangeArray}}">
-      <view class='intentionbi'>
-        <image src='/images/bg.png'></image>
-        <text>{{value?value:kehuinfo.purpose_level?kehuinfo.purpose_level+'%':'未设置'}}</text>
-      </view>
-    </picker>
-    <view class='intention-text'>购买意向</view>
-  </view>
-</template>

+ 0 - 76
wxApp/huace1.0/components/usermsg/usermsg.wxss

xqd
@@ -1,76 +0,0 @@
-.usermsg-wrapper {
-  width: 20vw;
-  height: 87vh;
-  background: #F9FAFC;
-  display: flex;
-  flex-direction: column;
-  align-items: center;
-  overflow: hidden;
-}
-.userimg {
-  width: 53px;
-  height: 53px;
-  margin-top: 20px;
-  margin-bottom: 10px;
-}
-.username {
-  display: flex;
-  align-items: center;
-  margin-bottom: 23px;
-}
-.username>.text {
-  font-size:14px;
-  line-height: 14px;
-  color:rgba(51,51,51,1);
-}
-.username>image {
-  width:20px;
-  height:20px;
-  margin-left: 10px;
-}
-.address>.text {
-  font-size:12px;
-  color:rgba(121,148,169,1);
-  text-align: center;
-}
-.address>.text:last-child {
-  margin-top: 12px;
-  margin-bottom: 18px;
-}
-.intention {
-  height:30px;
-  font-size:12px;
-  color:rgba(80,93,124,1);
-  line-height:16px;
-  background:rgba(82,134,254,0.18);
-  border-top: 1px dashed rgba(82,134,254,1);
-  border-bottom: 1px dashed rgba(82,134,254,1);
-  padding: 8px 15px;
-}
-.intentionbi {
-  width: 75px;
-  height: 75px;
-  margin-top: 3px;
-  position: relative;
-}
-.intentionbi>image {
-  width: 100%;
-  height: 100%;
-}
-.intentionbi>text {
-  font-size:14px;
-  color:rgba(51,51,51,1);
-  position: absolute;
-  left: 0;
-  right: 0;
-  top: 0;
-  bottom: 0;
-  margin: auto;
-  text-align: center;
-  line-height: 75px;
-}
-.intention-text {
-  font-size:12px;
-  color:rgba(121,148,169,1);
-  text-align: center;
-}

+ 0 - 23
wxApp/huace1.0/components/usermsg2/usermsg.wxml

xqd
@@ -1,23 +0,0 @@
-<template name="usermsg">
-  <view class="usermsg-wrapper">
-    <image class='userimg' src="{{kavatar}}"></image>
-    <view class='username'>
-      <view class='text'>{{kusername}}</view>
-      
-      <navigator url="/pages/set/set?oid={{oid}}&kn={{kusername}}&kt={{kavatar}}&kphone={{kphone}}"  open-type="redirect"  hover-class="none">
-        <image src='/images/set.png'></image>
-    </navigator>
-    </view>
-    <view class='address'>
-      <view class='text'>{{kehuinfo.comment?kehuinfo.comment:'备注名'}}</view>
-      <view class='text'>{{kehuinfo.address?kehuinfo.address:'四川省成都市'}}</view>
-    </view>
-    <view class='intention'>{{kehuinfo.tips?kehuinfo.tips:'客户有合作意向'}}</view>
-    
-      <view class='intentionbi'>
-        <image src='/images/bg.png'></image>
-        <text>{{kehuinfo.purpose_level?kehuinfo.purpose_level:'0'}}%</text>
-      </view>
-    <view class='intention-text'>购买意向</view>
-  </view>
-</template>

+ 0 - 76
wxApp/huace1.0/components/usermsg2/usermsg.wxss

xqd
@@ -1,76 +0,0 @@
-.usermsg-wrapper {
-  width: 20vw;
-  height: 87vh;
-  background: #F9FAFC;
-  display: flex;
-  flex-direction: column;
-  align-items: center;
-  overflow: hidden;
-}
-.userimg {
-  width: 53px;
-  height: 53px;
-  margin-top: 20px;
-  margin-bottom: 10px;
-}
-.username {
-  display: flex;
-  align-items: center;
-  margin-bottom: 23px;
-}
-.username>.text {
-  font-size:14px;
-  line-height: 14px;
-  color:rgba(51,51,51,1);
-}
-.username image {
-  width:20px;
-  height:20px;
-  margin-left: 10px;
-}
-.address>.text {
-  font-size:12px;
-  color:rgba(121,148,169,1);
-  text-align: center;
-}
-.address>.text:last-child {
-  margin-top: 12px;
-  margin-bottom: 18px;
-}
-.intention {
-  height:30px;
-  font-size:12px;
-  color:rgba(80,93,124,1);
-  line-height:16px;
-  background:rgba(82,134,254,0.18);
-  border-top: 1px dashed rgba(82,134,254,1);
-  border-bottom: 1px dashed rgba(82,134,254,1);
-  padding: 8px 15px;
-}
-.intentionbi {
-  width: 75px;
-  height: 75px;
-  margin-top: 3px;
-  position: relative;
-}
-.intentionbi>image {
-  width: 100%;
-  height: 100%;
-}
-.intentionbi>text {
-  font-size:16px;
-  color:rgba(51,51,51,1);
-  position: absolute;
-  left: 0;
-  right: 0;
-  top: 0;
-  bottom: 0;
-  margin: auto;
-  text-align: center;
-  line-height: 75px;
-}
-.intention-text {
-  font-size:12px;
-  color:rgba(121,148,169,1);
-  text-align: center;
-}

BIN
wxApp/huace1.0/ec-canvas/.DS_Store


+ 0 - 120
wxApp/huace1.0/ec-canvas/ec-canvas.js

xqd
@@ -1,120 +0,0 @@
-import WxCanvas from './wx-canvas';
-import * as echarts from './echarts';
-
-let ctx;
-
-Component({
-  properties: {
-    canvasId: {
-      type: String,
-      value: 'ec-canvas'
-    },
-
-    ec: {
-      type: Object
-    }
-  },
-
-  data: {
-
-  },
-
-  ready: function () {
-    if (!this.data.ec) {
-      console.warn('组件需绑定 ec 变量,例:<ec-canvas id="mychart-dom-bar" '
-        + 'canvas-id="mychart-bar" ec="{{ ec }}"></ec-canvas>');
-      return;
-    }
-
-    if (!this.data.ec.lazyLoad) {
-      this.init();
-    }
-  },
-
-  methods: {
-    init: function (callback) {
-      const version = wx.version.version.split('.').map(n => parseInt(n, 10));
-      const isValid = version[0] > 1 || (version[0] === 1 && version[1] > 9)
-        || (version[0] === 1 && version[1] === 9 && version[2] >= 91);
-      if (!isValid) {
-        console.error('微信基础库版本过低,需大于等于 1.9.91。'
-          + '参见:https://github.com/ecomfe/echarts-for-weixin'
-          + '#%E5%BE%AE%E4%BF%A1%E7%89%88%E6%9C%AC%E8%A6%81%E6%B1%82');
-        return;
-      }
-
-      ctx = wx.createCanvasContext(this.data.canvasId, this);
-
-      const canvas = new WxCanvas(ctx, this.data.canvasId);
-
-      echarts.setCanvasCreator(() => {
-        return canvas;
-      });
-
-      var query = wx.createSelectorQuery().in(this);
-      query.select('.ec-canvas').boundingClientRect(res => {
-        if (typeof callback === 'function') {
-          this.chart = callback(canvas, res.width, res.height);
-        }
-        else if (this.data.ec && typeof this.data.ec.onInit === 'function') {
-          this.chart = this.data.ec.onInit(canvas, res.width, res.height);
-        }
-        else {
-          this.triggerEvent('init', {
-            canvas: canvas,
-            width: res.width,
-            height: res.height
-          });
-        }
-      }).exec();
-    },
-
-    canvasToTempFilePath(opt) {
-      if (!opt.canvasId) {
-        opt.canvasId = this.data.canvasId;
-      }
-
-      ctx.draw(true, () => {
-        wx.canvasToTempFilePath(opt, this);
-      });
-    },
-
-    touchStart(e) {
-      if (this.chart && e.touches.length > 0) {
-        var touch = e.touches[0];
-        this.chart._zr.handler.dispatch('mousedown', {
-          zrX: touch.x,
-          zrY: touch.y
-        });
-        this.chart._zr.handler.dispatch('mousemove', {
-          zrX: touch.x,
-          zrY: touch.y
-        });
-      }
-    },
-
-    touchMove(e) {
-      if (this.chart && e.touches.length > 0) {
-        var touch = e.touches[0];
-        this.chart._zr.handler.dispatch('mousemove', {
-          zrX: touch.x,
-          zrY: touch.y
-        });
-      }
-    },
-
-    touchEnd(e) {
-      if (this.chart) {
-        const touch = e.changedTouches ? e.changedTouches[0] : {};
-        this.chart._zr.handler.dispatch('mouseup', {
-          zrX: touch.x,
-          zrY: touch.y
-        });
-        this.chart._zr.handler.dispatch('click', {
-          zrX: touch.x,
-          zrY: touch.y
-        });
-      }
-    }
-  }
-});

+ 0 - 4
wxApp/huace1.0/ec-canvas/ec-canvas.json

xqd
@@ -1,4 +0,0 @@
-{
-  "component": true,
-  "usingComponents": {}
-}

+ 0 - 4
wxApp/huace1.0/ec-canvas/ec-canvas.wxml

xqd
@@ -1,4 +0,0 @@
-<canvas class="ec-canvas" canvas-id="{{ canvasId }}"
-bindinit="init"
-bindtouchstart="{{ ec.disableTouch ? '' : 'touchStart' }}" bindtouchmove="{{ ec.disableTouch ? '' : 'touchMove' }}" bindtouchend="{{ ec.disableTouch ? '' : 'touchEnd' }}">
-</canvas>

+ 0 - 4
wxApp/huace1.0/ec-canvas/ec-canvas.wxss

xqd
@@ -1,4 +0,0 @@
-.ec-canvas {
-  width: 100%;
-  height: 100%;
-}

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 0 - 0
wxApp/huace1.0/ec-canvas/echarts.js


+ 0 - 97
wxApp/huace1.0/ec-canvas/wx-canvas.js

xqd
@@ -1,97 +0,0 @@
-export default class WxCanvas {
-  constructor(ctx, canvasId) {
-    this.ctx = ctx;
-    this.canvasId = canvasId;
-    this.chart = null;
-
-    // this._initCanvas(zrender, ctx);
-    this._initStyle(ctx);
-    this._initEvent();
-  }
-
-  getContext(contextType) {
-    if (contextType === '2d') {
-      return this.ctx;
-    }
-  }
-
-  // canvasToTempFilePath(opt) {
-  //   if (!opt.canvasId) {
-  //     opt.canvasId = this.canvasId;
-  //   }
-
-  //   return wx.canvasToTempFilePath(opt, this);
-  // }
-
-  setChart(chart) {
-    this.chart = chart;
-  }
-
-  attachEvent () {
-    // noop
-  }
-
-  detachEvent() {
-    // noop
-  }
-
-  _initCanvas(zrender, ctx) {
-    zrender.util.getContext = function () {
-      return ctx;
-    };
-
-    zrender.util.$override('measureText', function (text, font) {
-      ctx.font = font || '12px sans-serif';
-      return ctx.measureText(text);
-    });
-  }
-
-  _initStyle(ctx) {
-    var styles = ['fillStyle', 'strokeStyle', 'globalAlpha', 
-      'textAlign', 'textBaseAlign', 'shadow', 'lineWidth',
-      'lineCap', 'lineJoin', 'lineDash', 'miterLimit', 'fontSize'];
-
-    styles.forEach(style => {
-      Object.defineProperty(ctx, style, {
-        set: value => {
-          if (style !== 'fillStyle' && style !== 'strokeStyle' 
-            || value !== 'none' && value !== null
-          ) {
-            ctx['set' + style.charAt(0).toUpperCase() + style.slice(1)](value);
-          }
-        }
-      });
-    });
-
-    ctx.createRadialGradient = () => {
-      return ctx.createCircularGradient(arguments);
-    };
-  }
-
-  _initEvent() {
-    this.event = {};
-    const eventNames = [{
-      wxName: 'touchStart',
-      ecName: 'mousedown'
-    }, {
-      wxName: 'touchMove',
-      ecName: 'mousemove'
-    }, {
-      wxName: 'touchEnd',
-      ecName: 'mouseup'
-    }, {
-      wxName: 'touchEnd',
-      ecName: 'click'
-    }];
-
-    eventNames.forEach(name => {
-      this.event[name.wxName] = e => {
-        const touch = e.touches[0];
-        this.chart._zr.handler.dispatch(name.ecName, {
-          zrX: name.wxName === 'tap' ? touch.clientX : touch.x,
-          zrY: name.wxName === 'tap' ? touch.clientY : touch.y
-        });
-      };
-    });
-  }
-}

BIN
wxApp/huace1.0/images/back.png


BIN
wxApp/huace1.0/images/baricon1.png


BIN
wxApp/huace1.0/images/baricon2.png


BIN
wxApp/huace1.0/images/baricon3.png


BIN
wxApp/huace1.0/images/bg.png


BIN
wxApp/huace1.0/images/bg2.png


BIN
wxApp/huace1.0/images/in.png


BIN
wxApp/huace1.0/images/leida.gif


BIN
wxApp/huace1.0/images/phone.png


BIN
wxApp/huace1.0/images/set.png


BIN
wxApp/huace1.0/images/shijian@2x.png


BIN
wxApp/huace1.0/images/time.png


BIN
wxApp/huace1.0/images/time2.png


BIN
wxApp/huace1.0/images/userimg.png


BIN
wxApp/huace1.0/img/.DS_Store


BIN
wxApp/huace1.0/img/BJ.png


Niektoré súbory nie sú zobrazené, pretože je v týchto rozdielových dátach zmenené mnoho súborov