移除filesystem
This commit is contained in:
parent
eac02b95d3
commit
a86a2142bf
@ -233,7 +233,6 @@ class Addons extends AdminController
|
||||
if(!isset($header[0]) && (strpos($header[0], '200') || strpos($header[0], '304'))){
|
||||
return json(['code'=>-1,'msg'=>'获取远程文件失败']);
|
||||
}
|
||||
|
||||
//把远程文件放入本地
|
||||
|
||||
//拼接路径
|
||||
@ -269,24 +268,26 @@ class Addons extends AdminController
|
||||
}
|
||||
if (!empty($checkString)) return json(['code' => -1, 'msg' => $checkString]);
|
||||
|
||||
try {
|
||||
FileHelper::copyDir(root_path() . 'runtime' . DS . 'addons' . DS . $data['name'] . DS, root_path());
|
||||
} catch (\Exception $e) {
|
||||
return json(['code'=> -1, 'msg'=> $e->getMessage()]);
|
||||
}
|
||||
|
||||
$class = get_addons_instance($data['name']);
|
||||
try {
|
||||
// 拷贝文件
|
||||
FileHelper::copyDir(root_path() . 'runtime' . DS . 'addons' . DS . $data['name'] . DS, root_path());
|
||||
// $type判断是安装还是升级
|
||||
if($type) {
|
||||
// 执行数据库
|
||||
$sqlInstallFile = root_path(). 'addons' . DS . $data['name'] . DS . 'install.sql';
|
||||
if(file_exists($sqlInstallFile)) {
|
||||
SqlFile::dbExecute($sqlInstallFile);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
//安装菜单
|
||||
$menu = get_addons_menu($data['name']);
|
||||
//$menu = get_addons_menu($data['name']);
|
||||
$menuFile = app()->getRootPath() . 'addons' . DS . $data['name'] . DS . 'menu.php';
|
||||
if(file_exists($menuFile)){
|
||||
$menu = include $menuFile;
|
||||
} else {
|
||||
$menu = [];
|
||||
}
|
||||
if(!empty($menu)){
|
||||
if(isset($menu['is_nav']) && $menu['is_nav'] == 1){
|
||||
$pid = 0;
|
||||
@ -296,6 +297,7 @@ class Addons extends AdminController
|
||||
$menu_arr[] = $menu['menu'];
|
||||
$this->addAddonMenu($menu_arr, (int)$pid,1);
|
||||
}
|
||||
$class = get_addons_instance($data['name']);
|
||||
//执行插件安装
|
||||
$class->install();
|
||||
set_addons_info($data['name'],['status' => 1,'install' => 1]);
|
||||
@ -372,7 +374,7 @@ class Addons extends AdminController
|
||||
// 卸载插件
|
||||
$class = get_addons_instance($data['name']);
|
||||
$class->uninstall();
|
||||
$this->uninstall($data['name']);
|
||||
//$this->uninstall($data['name']);
|
||||
|
||||
// 卸载菜单
|
||||
$menu = get_addons_menu($data['name']);
|
||||
@ -382,7 +384,7 @@ class Addons extends AdminController
|
||||
}
|
||||
|
||||
try {
|
||||
// 升级安装,第二个参数为false
|
||||
// 升级安装,第二个type参数false为升级,true安装
|
||||
$res = $this->install($data,false);
|
||||
// 升级sql
|
||||
$sqlUpdateFile = root_path().'addons/'.$data['name'].'/update.sql';
|
||||
@ -393,6 +395,8 @@ class Addons extends AdminController
|
||||
if(!empty($config)) {
|
||||
set_addons_config($data['name'], $config);
|
||||
}
|
||||
// 写入版本号
|
||||
set_addons_info($data['name'],['version' =>$data['version']]);
|
||||
} catch (\Exception $e) {
|
||||
return json(['code' => -1, 'msg' => $e->getMessage()]);
|
||||
}
|
||||
|
2
app/admin/validate/addonfactory/.gitignore
vendored
Normal file
2
app/admin/validate/addonfactory/.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
*
|
||||
!.gitignore
|
@ -144,6 +144,7 @@ overflow: visible;
|
||||
var othis = layero.find('iframe').contents().find("#layuiadmin-app-form-tags")
|
||||
,pid = othis.find('input[name="pid"]').val()
|
||||
,sort = othis.find('input[name="sort"]').val()
|
||||
,appname = othis.find('select[name="appname"]').val()
|
||||
,catename = othis.find('input[name="catename"]').val()
|
||||
,ename = othis.find('input[name="ename"]').val()
|
||||
,detpl = othis.find('select[name="detpl"]').val()
|
||||
@ -155,7 +156,7 @@ overflow: visible;
|
||||
$.ajax({
|
||||
type:"post",
|
||||
url:forumTagsForm,
|
||||
data:{"id":data.id,"pid":pid,"sort":sort,"catename":catename,"ename":ename,"detpl":detpl,"icon":icon,"desc":desc},
|
||||
data:{"id":data.id,"pid":pid,"sort":sort,"appname":appname,"catename":catename,"ename":ename,"detpl":detpl,"icon":icon,"desc":desc},
|
||||
daType:"json",
|
||||
success:function (data){
|
||||
if(data.code == 0){layer.msg(data.msg,{icon:6,time:2000},function(){
|
||||
@ -181,6 +182,7 @@ overflow: visible;
|
||||
var othis = layero.find('iframe').contents().find("#layuiadmin-app-form-tags").click();
|
||||
othis.find('input[name="pid"]').val(data.pid)
|
||||
,othis.find('input[name="sort"]').val(data.sort)
|
||||
,othis.find('select[name="appname"]').val(data.appname)
|
||||
,othis.find('input[name="catename"]').val(data.catename)
|
||||
,othis.find('input[name="ename"]').val(data.ename)
|
||||
,othis.find('input[name="icon"]').val(data.icon)
|
||||
@ -202,6 +204,7 @@ overflow: visible;
|
||||
var othis = layero.find('iframe').contents().find("#layuiadmin-app-form-tags")
|
||||
,pid = othis.find('input[name="pid"]').val()
|
||||
,sort = othis.find('input[name="sort"]').val()
|
||||
,appname = othis.find('select[name="appname"]').val()
|
||||
,catename = othis.find('input[name="catename"]').val()
|
||||
,ename = othis.find('input[name="ename"]').val()
|
||||
,detpl = othis.find('select[name="detpl"]').val()
|
||||
@ -213,7 +216,7 @@ overflow: visible;
|
||||
$.ajax({
|
||||
type:"post",
|
||||
url:"{:url('Forum/tagsform')}",
|
||||
data:{pid:pid,"sort":sort,"catename":catename,"ename":ename,"detpl":detpl,"icon":icon,"desc":desc},
|
||||
data:{pid:pid,"sort":sort,"appname":appname,"catename":catename,"ename":ename,"detpl":detpl,"icon":icon,"desc":desc},
|
||||
daType:"json",
|
||||
success:function (data){
|
||||
if (data.code == 0) {
|
||||
|
@ -60,10 +60,10 @@
|
||||
}).use(['index', 'form','admin', 'iconPicker', 'xmSelect',], function(){
|
||||
var $ = layui.$
|
||||
,form = layui.form ;
|
||||
var admin = layui.admin;
|
||||
var admin = layui.admin;
|
||||
var iconPicker = layui.iconPicker;
|
||||
var xmSelect = layui.xmSelect;
|
||||
var initPid = "{$cate.pid}";
|
||||
var xmSelect = layui.xmSelect;
|
||||
var initPid = "{$cate.pid}";
|
||||
|
||||
//初始化图标选择
|
||||
iconPicker.render({
|
||||
@ -77,6 +77,7 @@
|
||||
}
|
||||
});
|
||||
|
||||
// 根据应用名动态选择应用下模板
|
||||
form.on('select(appname)', function(data){
|
||||
var appName = data.value;
|
||||
$("#tpl").children('option').remove();
|
||||
|
@ -1,6 +1,7 @@
|
||||
<?php
|
||||
namespace app\common\lib;
|
||||
|
||||
use think\File;
|
||||
use think\facade\Config;
|
||||
use think\facade\Filesystem;
|
||||
use think\exception\ValidateException;
|
||||
@ -70,7 +71,7 @@ class Uploads
|
||||
* @param string $rule 文件命名规则,默认md5,uniqid,date,sha1,为空则取文件上传名称,或者自定义如a.jpg文件名
|
||||
* @return \think\response\Json
|
||||
*/
|
||||
public function put(string $fileName, string $dirName, int $fileSize, string $fileType, string $rule = '')
|
||||
public function putFile(string $fileName, string $dirName, int $fileSize, string $fileType, string $rule = '')
|
||||
{
|
||||
if(stripos($fileName,'http') !== false) {
|
||||
$file = $fileName;
|
||||
@ -126,4 +127,77 @@ class Uploads
|
||||
return json($res);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 上传文件
|
||||
* @param string $fileName 文件名
|
||||
* @param string $dirName 目录名
|
||||
* @param int $fileSize 文件大小
|
||||
* @param string $fileType 文件类型
|
||||
* @param string $rule 文件命名规则 默认md5,uniqid,date,sha1,_self为上传文件名称作为文件名,或者自定义如a.jpg文件名
|
||||
* @return \think\response\Json
|
||||
*/
|
||||
public function put(string $fileName, string $dirName, int $fileSize, string $fileType, string $rule = '')
|
||||
{
|
||||
if(stripos($fileName,'http') !== false) {
|
||||
$file = $fileName;
|
||||
} else {
|
||||
$file = request()->file($fileName);
|
||||
}
|
||||
|
||||
//halt($file->getOriginalName());
|
||||
//$type = $file->getMime();
|
||||
$fileExt = $this->getFileInfo($fileType,'ext');
|
||||
$fileMime = $this->getFileInfo($fileType,'mime');
|
||||
|
||||
try {
|
||||
validate([$fileName=>['fileSize'=>$fileSize * 1024,'fileExt'=>$fileExt,'fileMime'=>$fileMime]])
|
||||
->check(['file'=>$file]);
|
||||
|
||||
} catch (ValidateException $e) {
|
||||
return json(['status'=>-1,'msg'=>$e->getMessage()]);
|
||||
}
|
||||
|
||||
// 解析存储位置 SYS_开头为系统位置
|
||||
$isSys = stripos($dirName, 'SYS_');
|
||||
if($isSys !== false) {
|
||||
$disk = 'sys';
|
||||
$dirName = substr($dirName,4);
|
||||
$uploadDir = Config::get('filesystem.disks.sys.url');
|
||||
$path = DIRECTORY_SEPARATOR . $disk . DIRECTORY_SEPARATOR . $dirName . DIRECTORY_SEPARATOR . date('Ymd');
|
||||
} else {
|
||||
$disk = 'public';
|
||||
$dirName = session('user_id'). DIRECTORY_SEPARATOR . $dirName;
|
||||
$uploadDir = Config::get('filesystem.disks.public.url');
|
||||
$path = DIRECTORY_SEPARATOR . 'storage' . DIRECTORY_SEPARATOR . $dirName . DIRECTORY_SEPARATOR . date('Ymd');
|
||||
}
|
||||
|
||||
$realPath = app()->getRootPath() . 'public' . $path;
|
||||
|
||||
$rules = ['md5','date','sha1','uniqid'];
|
||||
|
||||
try{
|
||||
// 解析是否自定义文件名
|
||||
if(in_array($rule, $rules)) {
|
||||
// rule命名
|
||||
$info = $file->move($realPath, $file->hashName($rule));
|
||||
} elseif(!empty($rule)) {
|
||||
// 自定义文件名
|
||||
if(stripos($rule, '_self')) {
|
||||
$info = $file->move($realPath, $file->getOriginalName());
|
||||
}
|
||||
$info = $file->move($realPath, $rule);
|
||||
} else {
|
||||
// 默认
|
||||
$info = $file->move($realPath, $file->hashName());
|
||||
}
|
||||
} catch (\Exception $e) {
|
||||
return json(['code' => -1, 'msg' => $e->getMessage()]);
|
||||
}
|
||||
// halt($info->getBasename());
|
||||
$name_path = str_replace('\\',"/", $path . '/' . $info->getBasename());
|
||||
|
||||
return json(['status'=>0,'msg'=>'上传成功','url'=> $name_path, 'location'=>$name_path]);
|
||||
}
|
||||
|
||||
}
|
@ -282,6 +282,7 @@ CREATE TABLE `tao_cate` (
|
||||
`icon` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '图标',
|
||||
`sort` int NOT NULL DEFAULT 0 COMMENT '排序',
|
||||
`status` enum('0','1') CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '1' COMMENT '状态1启用0禁用',
|
||||
`appname` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT 'index' COMMENT '所属应用',
|
||||
`type` tinyint(1) NOT NULL DEFAULT 0 COMMENT '0帖子1文章',
|
||||
`desc` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
|
||||
`is_hot` tinyint UNSIGNED NOT NULL DEFAULT 0 COMMENT '是否是热点',
|
||||
@ -295,9 +296,9 @@ CREATE TABLE `tao_cate` (
|
||||
-- ----------------------------
|
||||
-- Records of tao_cate
|
||||
-- ----------------------------
|
||||
INSERT INTO `tao_cate` VALUES (1, 0, '提问', 'ask', 'ask', 'layui-icon-help', 1, '1', 0, 'TaoLer社区提问专栏1', 0, 0, 0, 0);
|
||||
INSERT INTO `tao_cate` VALUES (2, 0, '分享', 'share', 'posts', 'layui-icon-share', 2, '1', 0, '', 0, 0, 0, 0);
|
||||
INSERT INTO `tao_cate` VALUES (3, 0, '讨论', 'talk', 'posts', 'layui-icon-dialogue', 3, '1', 0, '', 1, 0, 0, 0);
|
||||
INSERT INTO `tao_cate` VALUES (1, 0, '提问', 'ask', 'ask', 'layui-icon-help', 50, '1', 'index', 0, 'TaoLer社区提问专栏1', 0, 0, 0, 0);
|
||||
INSERT INTO `tao_cate` VALUES (2, 0, '分享', 'share', 'posts', 'layui-icon-share', 2, '1', 'index', 1, '内容分析', 0, 0, 0, 0);
|
||||
INSERT INTO `tao_cate` VALUES (3, 0, '讨论', 'talk', 'news', 'layui-icon-dialogue', 3, '1', 'index', 1, '讨论问题', 1, 0, 0, 0);
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for tao_collection
|
||||
|
@ -39,8 +39,7 @@
|
||||
"workerman/phpsocket.io": "^1.1",
|
||||
"jaeger/querylist": "^4.2",
|
||||
"symfony/var-exporter": "^5.4",
|
||||
"yzh52521/easyhttp": "^1.0",
|
||||
"topthink/think-filesystem": "1.0.1"
|
||||
"yzh52521/easyhttp": "^1.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/var-dumper": "^4.2",
|
||||
|
113
composer.lock
generated
113
composer.lock
generated
@ -4,7 +4,7 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "df0ddbd3ebf5e88c7b67ecb8c20ded00",
|
||||
"content-hash": "20e9c0c21d94d1cbf1c29c69868ebe38",
|
||||
"packages": [
|
||||
{
|
||||
"name": "bacon/bacon-qr-code",
|
||||
@ -1102,63 +1102,6 @@
|
||||
],
|
||||
"time": "2022-10-04T09:16:37+00:00"
|
||||
},
|
||||
{
|
||||
"name": "league/flysystem-cached-adapter",
|
||||
"version": "1.1.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/thephpleague/flysystem-cached-adapter.git",
|
||||
"reference": "d1925efb2207ac4be3ad0c40b8277175f99ffaff"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/thephpleague/flysystem-cached-adapter/zipball/d1925efb2207ac4be3ad0c40b8277175f99ffaff",
|
||||
"reference": "d1925efb2207ac4be3ad0c40b8277175f99ffaff",
|
||||
"shasum": "",
|
||||
"mirrors": [
|
||||
{
|
||||
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
|
||||
"preferred": true
|
||||
}
|
||||
]
|
||||
},
|
||||
"require": {
|
||||
"league/flysystem": "~1.0",
|
||||
"psr/cache": "^1.0.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"mockery/mockery": "~0.9",
|
||||
"phpspec/phpspec": "^3.4",
|
||||
"phpunit/phpunit": "^5.7",
|
||||
"predis/predis": "~1.0",
|
||||
"tedivm/stash": "~0.12"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-phpredis": "Pure C implemented extension for PHP"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"League\\Flysystem\\Cached\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "frankdejonge",
|
||||
"email": "info@frenky.net"
|
||||
}
|
||||
],
|
||||
"description": "An adapter decorator to enable meta-data caching.",
|
||||
"support": {
|
||||
"issues": "https://github.com/thephpleague/flysystem-cached-adapter/issues",
|
||||
"source": "https://github.com/thephpleague/flysystem-cached-adapter/tree/master"
|
||||
},
|
||||
"time": "2020-07-25T15:56:04+00:00"
|
||||
},
|
||||
{
|
||||
"name": "league/mime-type-detection",
|
||||
"version": "1.11.0",
|
||||
@ -2864,60 +2807,6 @@
|
||||
},
|
||||
"time": "2022-10-26T07:59:42+00:00"
|
||||
},
|
||||
{
|
||||
"name": "topthink/think-filesystem",
|
||||
"version": "v1.0.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/top-think/think-filesystem.git",
|
||||
"reference": "cfc510520db9bcd22d8d80f51d7e415a2f470af6"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/top-think/think-filesystem/zipball/cfc510520db9bcd22d8d80f51d7e415a2f470af6",
|
||||
"reference": "cfc510520db9bcd22d8d80f51d7e415a2f470af6",
|
||||
"shasum": "",
|
||||
"mirrors": [
|
||||
{
|
||||
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
|
||||
"preferred": true
|
||||
}
|
||||
]
|
||||
},
|
||||
"require": {
|
||||
"league/flysystem": "^1.1.4",
|
||||
"league/flysystem-cached-adapter": "^1.0",
|
||||
"php": ">=7.2.5",
|
||||
"topthink/framework": "^6.1"
|
||||
},
|
||||
"require-dev": {
|
||||
"mikey179/vfsstream": "^1.6",
|
||||
"mockery/mockery": "^1.2",
|
||||
"phpunit/phpunit": "^8.0"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"think\\": "src"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"Apache-2.0"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "yunwuxin",
|
||||
"email": "448901948@qq.com"
|
||||
}
|
||||
],
|
||||
"description": "The ThinkPHP6.1 Filesystem Package",
|
||||
"support": {
|
||||
"issues": "https://github.com/top-think/think-filesystem/issues",
|
||||
"source": "https://github.com/top-think/think-filesystem/tree/v1.0.1"
|
||||
},
|
||||
"time": "2022-10-26T03:50:24+00:00"
|
||||
},
|
||||
{
|
||||
"name": "topthink/think-helper",
|
||||
"version": "v3.1.6",
|
||||
|
@ -22,7 +22,7 @@ return [
|
||||
// 磁盘类型
|
||||
'type' => 'local',
|
||||
// 磁盘路径
|
||||
'root' => app()->getRootPath() . 'public/storage',
|
||||
'root' => app()->getRootPath() . 'public' . DIRECTORY_SEPARATOR . 'storage',
|
||||
// 磁盘路径对应的外部URL路径
|
||||
'url' => '/storage',
|
||||
// 可见性
|
||||
@ -30,7 +30,7 @@ return [
|
||||
],
|
||||
'sys' => [
|
||||
'type' => 'local',
|
||||
'root' => app()->getRootPath() . 'public/sys',
|
||||
'root' => app()->getRootPath() . 'public' . DIRECTORY_SEPARATOR . 'sys',
|
||||
'url' => '/sys',
|
||||
],
|
||||
// 更多的磁盘配置信息
|
||||
|
@ -16,7 +16,7 @@ return [
|
||||
// 应用名,此项不可更改
|
||||
'appname' => 'TaoLer',
|
||||
// 版本配置
|
||||
'version' => '2.0.10',
|
||||
'version' => '2.1.0',
|
||||
// 加盐
|
||||
'salt' => 'taoler',
|
||||
// 数据库备份目录
|
||||
|
3
vendor/composer/autoload_psr4.php
vendored
3
vendor/composer/autoload_psr4.php
vendored
@ -14,7 +14,7 @@ return array(
|
||||
'think\\composer\\' => array($vendorDir . '/topthink/think-installer/src'),
|
||||
'think\\captcha\\' => array($vendorDir . '/topthink/think-captcha/src'),
|
||||
'think\\app\\' => array($vendorDir . '/topthink/think-multi-app/src'),
|
||||
'think\\' => array($vendorDir . '/topthink/framework/src/think', $vendorDir . '/topthink/think-filesystem/src', $vendorDir . '/topthink/think-helper/src', $vendorDir . '/topthink/think-orm/src', $vendorDir . '/topthink/think-template/src'),
|
||||
'think\\' => array($vendorDir . '/topthink/framework/src/think', $vendorDir . '/topthink/think-helper/src', $vendorDir . '/topthink/think-orm/src', $vendorDir . '/topthink/think-template/src'),
|
||||
'taoser\\think\\' => array($vendorDir . '/taoser/think-auth/src'),
|
||||
'taoser\\' => array($vendorDir . '/taoser/think-addons/src', $vendorDir . '/taoser/think-setarr/src'),
|
||||
'phpspirit\\databackup\\' => array($vendorDir . '/lotofbadcode/phpspirit_databackup/src'),
|
||||
@ -42,7 +42,6 @@ return array(
|
||||
'PHPSocketIO\\' => array($vendorDir . '/workerman/phpsocket.io/src'),
|
||||
'PHPMailer\\PHPMailer\\' => array($vendorDir . '/phpmailer/phpmailer/src'),
|
||||
'League\\MimeTypeDetection\\' => array($vendorDir . '/league/mime-type-detection/src'),
|
||||
'League\\Flysystem\\Cached\\' => array($vendorDir . '/league/flysystem-cached-adapter/src'),
|
||||
'League\\Flysystem\\' => array($vendorDir . '/league/flysystem/src'),
|
||||
'Laravel\\SerializableClosure\\' => array($vendorDir . '/laravel/serializable-closure/src'),
|
||||
'Jaeger\\' => array($vendorDir . '/jaeger/g-http/src'),
|
||||
|
12
vendor/composer/autoload_static.php
vendored
12
vendor/composer/autoload_static.php
vendored
@ -102,7 +102,6 @@ class ComposerStaticInit1b32198725235c8d6500c87262ef30c2
|
||||
'L' =>
|
||||
array (
|
||||
'League\\MimeTypeDetection\\' => 25,
|
||||
'League\\Flysystem\\Cached\\' => 24,
|
||||
'League\\Flysystem\\' => 17,
|
||||
'Laravel\\SerializableClosure\\' => 28,
|
||||
),
|
||||
@ -182,10 +181,9 @@ class ComposerStaticInit1b32198725235c8d6500c87262ef30c2
|
||||
'think\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/topthink/framework/src/think',
|
||||
1 => __DIR__ . '/..' . '/topthink/think-filesystem/src',
|
||||
2 => __DIR__ . '/..' . '/topthink/think-helper/src',
|
||||
3 => __DIR__ . '/..' . '/topthink/think-orm/src',
|
||||
4 => __DIR__ . '/..' . '/topthink/think-template/src',
|
||||
1 => __DIR__ . '/..' . '/topthink/think-helper/src',
|
||||
2 => __DIR__ . '/..' . '/topthink/think-orm/src',
|
||||
3 => __DIR__ . '/..' . '/topthink/think-template/src',
|
||||
),
|
||||
'taoser\\think\\' =>
|
||||
array (
|
||||
@ -296,10 +294,6 @@ class ComposerStaticInit1b32198725235c8d6500c87262ef30c2
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/league/mime-type-detection/src',
|
||||
),
|
||||
'League\\Flysystem\\Cached\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/league/flysystem-cached-adapter/src',
|
||||
),
|
||||
'League\\Flysystem\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/league/flysystem/src',
|
||||
|
117
vendor/composer/installed.json
vendored
117
vendor/composer/installed.json
vendored
@ -1063,66 +1063,6 @@
|
||||
],
|
||||
"install-path": "../league/flysystem"
|
||||
},
|
||||
{
|
||||
"name": "league/flysystem-cached-adapter",
|
||||
"version": "1.1.0",
|
||||
"version_normalized": "1.1.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/thephpleague/flysystem-cached-adapter.git",
|
||||
"reference": "d1925efb2207ac4be3ad0c40b8277175f99ffaff"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/thephpleague/flysystem-cached-adapter/zipball/d1925efb2207ac4be3ad0c40b8277175f99ffaff",
|
||||
"reference": "d1925efb2207ac4be3ad0c40b8277175f99ffaff",
|
||||
"shasum": "",
|
||||
"mirrors": [
|
||||
{
|
||||
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
|
||||
"preferred": true
|
||||
}
|
||||
]
|
||||
},
|
||||
"require": {
|
||||
"league/flysystem": "~1.0",
|
||||
"psr/cache": "^1.0.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"mockery/mockery": "~0.9",
|
||||
"phpspec/phpspec": "^3.4",
|
||||
"phpunit/phpunit": "^5.7",
|
||||
"predis/predis": "~1.0",
|
||||
"tedivm/stash": "~0.12"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-phpredis": "Pure C implemented extension for PHP"
|
||||
},
|
||||
"time": "2020-07-25T15:56:04+00:00",
|
||||
"type": "library",
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"League\\Flysystem\\Cached\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "frankdejonge",
|
||||
"email": "info@frenky.net"
|
||||
}
|
||||
],
|
||||
"description": "An adapter decorator to enable meta-data caching.",
|
||||
"support": {
|
||||
"issues": "https://github.com/thephpleague/flysystem-cached-adapter/issues",
|
||||
"source": "https://github.com/thephpleague/flysystem-cached-adapter/tree/master"
|
||||
},
|
||||
"install-path": "../league/flysystem-cached-adapter"
|
||||
},
|
||||
{
|
||||
"name": "league/mime-type-detection",
|
||||
"version": "1.11.0",
|
||||
@ -2818,63 +2758,6 @@
|
||||
},
|
||||
"install-path": "../topthink/think-captcha"
|
||||
},
|
||||
{
|
||||
"name": "topthink/think-filesystem",
|
||||
"version": "v1.0.1",
|
||||
"version_normalized": "1.0.1.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/top-think/think-filesystem.git",
|
||||
"reference": "cfc510520db9bcd22d8d80f51d7e415a2f470af6"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/top-think/think-filesystem/zipball/cfc510520db9bcd22d8d80f51d7e415a2f470af6",
|
||||
"reference": "cfc510520db9bcd22d8d80f51d7e415a2f470af6",
|
||||
"shasum": "",
|
||||
"mirrors": [
|
||||
{
|
||||
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
|
||||
"preferred": true
|
||||
}
|
||||
]
|
||||
},
|
||||
"require": {
|
||||
"league/flysystem": "^1.1.4",
|
||||
"league/flysystem-cached-adapter": "^1.0",
|
||||
"php": ">=7.2.5",
|
||||
"topthink/framework": "^6.1"
|
||||
},
|
||||
"require-dev": {
|
||||
"mikey179/vfsstream": "^1.6",
|
||||
"mockery/mockery": "^1.2",
|
||||
"phpunit/phpunit": "^8.0"
|
||||
},
|
||||
"time": "2022-10-26T03:50:24+00:00",
|
||||
"type": "library",
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"think\\": "src"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"Apache-2.0"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "yunwuxin",
|
||||
"email": "448901948@qq.com"
|
||||
}
|
||||
],
|
||||
"description": "The ThinkPHP6.1 Filesystem Package",
|
||||
"support": {
|
||||
"issues": "https://github.com/top-think/think-filesystem/issues",
|
||||
"source": "https://github.com/top-think/think-filesystem/tree/v1.0.1"
|
||||
},
|
||||
"install-path": "../topthink/think-filesystem"
|
||||
},
|
||||
{
|
||||
"name": "topthink/think-helper",
|
||||
"version": "v3.1.6",
|
||||
|
22
vendor/composer/installed.php
vendored
22
vendor/composer/installed.php
vendored
@ -3,7 +3,7 @@
|
||||
'name' => 'taoser/taoler',
|
||||
'pretty_version' => 'dev-master',
|
||||
'version' => 'dev-master',
|
||||
'reference' => '24134372d0bdc16ddb7f8b3582608efc1319b59b',
|
||||
'reference' => '22c5b7c31c4425068784b5e30b6cae18549c4190',
|
||||
'type' => 'project',
|
||||
'install_path' => __DIR__ . '/../../',
|
||||
'aliases' => array(),
|
||||
@ -145,15 +145,6 @@
|
||||
'aliases' => array(),
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'league/flysystem-cached-adapter' => array(
|
||||
'pretty_version' => '1.1.0',
|
||||
'version' => '1.1.0.0',
|
||||
'reference' => 'd1925efb2207ac4be3ad0c40b8277175f99ffaff',
|
||||
'type' => 'library',
|
||||
'install_path' => __DIR__ . '/../league/flysystem-cached-adapter',
|
||||
'aliases' => array(),
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'league/mime-type-detection' => array(
|
||||
'pretty_version' => '1.11.0',
|
||||
'version' => '1.11.0.0',
|
||||
@ -367,7 +358,7 @@
|
||||
'taoser/taoler' => array(
|
||||
'pretty_version' => 'dev-master',
|
||||
'version' => 'dev-master',
|
||||
'reference' => '24134372d0bdc16ddb7f8b3582608efc1319b59b',
|
||||
'reference' => '22c5b7c31c4425068784b5e30b6cae18549c4190',
|
||||
'type' => 'project',
|
||||
'install_path' => __DIR__ . '/../../',
|
||||
'aliases' => array(),
|
||||
@ -427,15 +418,6 @@
|
||||
'aliases' => array(),
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'topthink/think-filesystem' => array(
|
||||
'pretty_version' => 'v1.0.1',
|
||||
'version' => '1.0.1.0',
|
||||
'reference' => 'cfc510520db9bcd22d8d80f51d7e415a2f470af6',
|
||||
'type' => 'library',
|
||||
'install_path' => __DIR__ . '/../topthink/think-filesystem',
|
||||
'aliases' => array(),
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'topthink/think-helper' => array(
|
||||
'pretty_version' => 'v3.1.6',
|
||||
'version' => '3.1.6.0',
|
||||
|
2
vendor/services.php
vendored
2
vendor/services.php
vendored
@ -1,5 +1,5 @@
|
||||
<?php
|
||||
// This file is automatically generated at:2022-11-15 15:58:49
|
||||
// This file is automatically generated at:2022-11-16 12:08:28
|
||||
declare (strict_types = 1);
|
||||
return array (
|
||||
0 => 'taoser\\addons\\Service',
|
||||
|
Loading…
Reference in New Issue
Block a user