Merge branch 'pro' into wfs-msg-top
# Conflicts: # resources/assets/js/pages/manage/components/DialogWrapper.vue # resources/assets/sass/components/user-select.scss # resources/assets/sass/pages/components/dialog-wrapper.scss
111
CHANGELOG.md
@ -2,6 +2,72 @@
|
||||
|
||||
All notable changes to this project will be documented in this file.
|
||||
|
||||
## [0.33.58]
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- 修复已知问题
|
||||
|
||||
### Performance
|
||||
|
||||
- 优化会话列表
|
||||
|
||||
## [0.33.54]
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- 撤回消息不删除消息的情况
|
||||
|
||||
### Performance
|
||||
|
||||
- 优化录音load效果
|
||||
- 优化消息列表
|
||||
- 优化应用图标
|
||||
- 升级okr容器
|
||||
- 优化用户选择器
|
||||
- 优化对话列表接口数据
|
||||
- 优化未读消息提示动画
|
||||
- 优化消息更新机制
|
||||
- 优化缓存
|
||||
- 优化用户选择器
|
||||
|
||||
## [0.33.41]
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- 更新导致的小问题
|
||||
- 更新导致的小问题
|
||||
- 版本验证有问题,先干掉
|
||||
|
||||
### Performance
|
||||
|
||||
- 优化任务修改
|
||||
|
||||
## [0.33.34]
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- Android 无法回删输入框内的@(mention)内容
|
||||
- Android 长按重复事件
|
||||
- 合并修复
|
||||
|
||||
### Performance
|
||||
|
||||
- 优化发送消息时闪现2条一样的情况
|
||||
- 优化消息首页加载效果
|
||||
- 优化Android长按事件
|
||||
- 优化输入框自动高度
|
||||
- 点击消息页面会发生跳动的问题
|
||||
- 优化待办列表
|
||||
- 调整任务过多提示范围
|
||||
- 优化消息阅读规则
|
||||
- Okr版本升级
|
||||
- 1.数据库迁移文件修复 2.转发样式优化
|
||||
- 兼容okr1.1版本
|
||||
- 兼容okr1.1版本
|
||||
- 整体数据库索引和字段类型优化
|
||||
- 项目列表数据库查询优化
|
||||
|
||||
## [0.32.65]
|
||||
|
||||
### Bug Fixes
|
||||
@ -41,6 +107,7 @@ All notable changes to this project will be documented in this file.
|
||||
- 优化清除缓存数据
|
||||
- 优化阅读消息列表机制
|
||||
- 优化项目页面任务加载速度
|
||||
- 代码优化
|
||||
|
||||
## [0.32.35]
|
||||
|
||||
@ -48,15 +115,41 @@ All notable changes to this project will be documented in this file.
|
||||
|
||||
- 修复重复SSE请求的问题
|
||||
- 部分pad设备横版和竖屏反过来
|
||||
- 用户选择组件,单选时不需要显示项目
|
||||
- 文件主题修复
|
||||
- 修复客户端版本更新按钮的显示问题
|
||||
- 标注取值bug修复
|
||||
- 项目权限 - 100%
|
||||
- 修复安装项目报错
|
||||
|
||||
### Features
|
||||
|
||||
- 新增以下为新消息提示
|
||||
- Okr结果分析 - 部门负责人也可以看
|
||||
- Okr1.1 兼容开发
|
||||
- 未读消息优化
|
||||
- 翻译
|
||||
- 添加投票功能 - 100%
|
||||
- 样式调优
|
||||
- 添加投票功能 30%
|
||||
- 接龙功能 - 100%
|
||||
- 添加接龙
|
||||
- 1.任务移动功能优化,2.导航样式优化
|
||||
- 新增压缩下载完成后系统机器人提醒
|
||||
- 添加一个 @我的 消息标签
|
||||
- 转发消息 - 添加单选模式
|
||||
- 转发消息 - 添加来源显示
|
||||
- 翻译
|
||||
- 首页改版 - 100%
|
||||
- 新增项目任务创建权限功能 - 90%
|
||||
- 更换calendar
|
||||
- 首页改版
|
||||
|
||||
### Performance
|
||||
|
||||
- 优化消息阅读逻辑
|
||||
- 微应用优化
|
||||
- 微应用优化
|
||||
- 优化未读消息机制
|
||||
- 优化重连时消息列表跳回第一页的情况
|
||||
- 优化未读消息机制
|
||||
@ -67,10 +160,24 @@ All notable changes to this project will be documented in this file.
|
||||
- 优化通过消息设置待办功能
|
||||
- 优化扫一扫登录功能
|
||||
- 优化头像
|
||||
- 兼容okr1.1版本
|
||||
- 兼容okr1.1版本
|
||||
- 兼容okr1.1版本
|
||||
- 接龙和投票的样式优化
|
||||
- 逻辑强化
|
||||
- 未读消息优化
|
||||
- 搜索消息时按esc取消搜索
|
||||
- 接龙优化
|
||||
- 接龙优化
|
||||
- 移动设备优化消息输入框菜单
|
||||
- 优化消息输入框@所有人暗黑样式
|
||||
- 优化@人名换行的情况
|
||||
- 样式优化
|
||||
- 优化导出任务统计
|
||||
- 样式调优
|
||||
- 客户端下载按钮,仪表盘不显示
|
||||
- 未读消息优化
|
||||
- 细节优化
|
||||
|
||||
## [0.32.17]
|
||||
|
||||
@ -81,6 +188,10 @@ All notable changes to this project will be documented in this file.
|
||||
- 修复打包下载问题
|
||||
- 修复统一打包下载命名
|
||||
|
||||
### Features
|
||||
|
||||
- 添加项目权限功能 - 30%
|
||||
|
||||
### Performance
|
||||
|
||||
- 审批版本更新
|
||||
|
||||
@ -52,13 +52,41 @@ class DialogController extends AbstractController
|
||||
//
|
||||
$timerange = TimeRange::parse(Request::input());
|
||||
//
|
||||
$data = (new WebSocketDialog)->getDialogList($user->userid, $timerange->updated, $timerange->deleted);
|
||||
$data = WebSocketDialog::getDialogList($user->userid, $timerange->updated, $timerange->deleted);
|
||||
//
|
||||
return Base::retSuccess('success', $data);
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/search 02. 搜索会话
|
||||
* @api {get} api/dialog/unread 02. 未读对话列表
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
* @apiGroup dialog
|
||||
* @apiName lists
|
||||
*
|
||||
* @apiParam {String} before_at 在这个时间之前未读的数据
|
||||
*
|
||||
* @apiSuccess {Number} ret 返回状态码(1正确、0错误)
|
||||
* @apiSuccess {String} msg 返回信息(错误描述)
|
||||
* @apiSuccess {Object} data 返回数据
|
||||
*/
|
||||
public function unread()
|
||||
{
|
||||
$user = User::auth();
|
||||
//
|
||||
$beforeAt = Request::input('before_at');
|
||||
if (empty($beforeAt)) {
|
||||
return Base::retError('参数错误');
|
||||
}
|
||||
//
|
||||
$data = WebSocketDialog::getDialogUnread($user->userid, Carbon::parse($beforeAt));
|
||||
//
|
||||
return Base::retSuccess('success', $data);
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/search 03. 搜索会话
|
||||
*
|
||||
* @apiDescription 根据消息关键词搜索相关会话,需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -135,7 +163,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/search/tag 02. 搜索标注会话
|
||||
* @api {get} api/dialog/search/tag 04. 搜索标注会话
|
||||
*
|
||||
* @apiDescription 根据消息关键词搜索相关会话,需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -166,7 +194,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/one 03. 获取单个会话信息
|
||||
* @api {get} api/dialog/one 05. 获取单个会话信息
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -191,13 +219,14 @@ class DialogController extends AbstractController
|
||||
->where('u.userid', $user->userid)
|
||||
->first();
|
||||
if (empty($item)) {
|
||||
WebSocketDialogMsgRead::forceRead($dialog_id, $user->userid);
|
||||
return Base::retError('会话不存在或已被删除', ['dialog_id' => $dialog_id], -4003);
|
||||
}
|
||||
return Base::retSuccess('success', $item->formatData($user->userid));
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/user 04. 获取会话成员
|
||||
* @api {get} api/dialog/user 06. 获取会话成员
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -242,14 +271,14 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/todo 05. 获取会话待办
|
||||
* @api {get} api/dialog/todo 07. 获取会话待办
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
* @apiGroup dialog
|
||||
* @apiName todo
|
||||
*
|
||||
* @apiParam {Number} dialog_id 会话ID
|
||||
* @apiParam {Number} [dialog_id] 会话ID
|
||||
*
|
||||
* @apiSuccess {Number} ret 返回状态码(1正确、0错误)
|
||||
* @apiSuccess {String} msg 返回信息(错误描述)
|
||||
@ -261,14 +290,18 @@ class DialogController extends AbstractController
|
||||
//
|
||||
$dialog_id = intval(Request::input('dialog_id'));
|
||||
//
|
||||
WebSocketDialog::checkDialog($dialog_id);
|
||||
$builder = WebSocketDialogMsgTodo::whereUserid($user->userid)->whereDoneAt(null);
|
||||
if ($dialog_id > 0) {
|
||||
WebSocketDialog::checkDialog($dialog_id);
|
||||
$builder->whereDialogId($dialog_id);
|
||||
}
|
||||
//
|
||||
$list = WebSocketDialogMsgTodo::whereDialogId($dialog_id)->whereUserid($user->userid)->whereDoneAt(null)->orderByDesc('id')->take(50)->get();
|
||||
$list = $builder->orderByDesc('id')->take(50)->get();
|
||||
return Base::retSuccess("success", $list);
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/top 06. 会话置顶
|
||||
* @api {get} api/dialog/top 08. 会话置顶
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -298,7 +331,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/tel 07. 获取对方联系电话
|
||||
* @api {get} api/dialog/tel 09. 获取对方联系电话
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -348,7 +381,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/open/user 08. 打开会话
|
||||
* @api {get} api/dialog/open/user 10. 打开会话
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -379,7 +412,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/list 09. 获取消息列表
|
||||
* @api {get} api/dialog/msg/list 11. 获取消息列表
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -515,7 +548,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/search 10. 搜索消息位置
|
||||
* @api {get} api/dialog/msg/search 12. 搜索消息位置
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -552,7 +585,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/one 11. 获取单条消息
|
||||
* @api {get} api/dialog/msg/one 13. 获取单条消息
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -581,7 +614,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/read 12. 已读聊天消息
|
||||
* @api {get} api/dialog/msg/read 14. 已读聊天消息
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -632,7 +665,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/unread 13. 获取未读消息数据
|
||||
* @api {get} api/dialog/msg/unread 15. 获取未读消息数据
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -673,7 +706,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {post} api/dialog/msg/stream 14. 通知成员监听消息
|
||||
* @api {post} api/dialog/msg/stream 16. 通知成员监听消息
|
||||
*
|
||||
* @apiDescription 通知指定会员EventSource监听流动消息
|
||||
* @apiVersion 1.0.0
|
||||
@ -712,7 +745,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {post} api/dialog/msg/sendtext 15. 发送消息
|
||||
* @api {post} api/dialog/msg/sendtext 17. 发送消息
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -824,7 +857,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {post} api/dialog/msg/sendrecord 16. 发送语音
|
||||
* @api {post} api/dialog/msg/sendrecord 18. 发送语音
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -871,7 +904,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {post} api/dialog/msg/sendfile 17. 文件上传
|
||||
* @api {post} api/dialog/msg/sendfile 19. 文件上传
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -902,7 +935,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {post} api/dialog/msg/sendfiles 18. 群发文件上传
|
||||
* @api {post} api/dialog/msg/sendfiles 20. 群发文件上传
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -957,7 +990,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/sendfileid 19. 通过文件ID发送文件
|
||||
* @api {get} api/dialog/msg/sendfileid 21. 通过文件ID发送文件
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1027,7 +1060,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {post} api/dialog/msg/sendanon 20. 发送匿名消息
|
||||
* @api {post} api/dialog/msg/sendanon 22. 发送匿名消息
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1080,7 +1113,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/readlist 21. 获取消息阅读情况
|
||||
* @api {get} api/dialog/msg/readlist 23. 获取消息阅读情况
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1109,7 +1142,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/detail 22. 消息详情
|
||||
* @api {get} api/dialog/msg/detail 24. 消息详情
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1157,7 +1190,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/download 23. 文件下载
|
||||
* @api {get} api/dialog/msg/download 25. 文件下载
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1198,7 +1231,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/withdraw 24. 聊天消息撤回
|
||||
* @api {get} api/dialog/msg/withdraw 26. 聊天消息撤回
|
||||
*
|
||||
* @apiDescription 消息撤回限制24小时内,需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1224,7 +1257,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/mark 25. 消息标记操作
|
||||
* @api {get} api/dialog/msg/mark 27. 消息标记操作
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1291,7 +1324,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/silence 26. 消息免打扰
|
||||
* @api {get} api/dialog/msg/silence 28. 消息免打扰
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1354,7 +1387,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/forward 27. 转发消息给
|
||||
* @api {get} api/dialog/msg/forward 29. 转发消息给
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1395,7 +1428,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/emoji 28. emoji回复
|
||||
* @api {get} api/dialog/msg/emoji 30. emoji回复
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1430,7 +1463,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/tag 29. 标注/取消标注
|
||||
* @api {get} api/dialog/msg/tag 31. 标注/取消标注
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1459,7 +1492,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/todo 30. 设待办/取消待办
|
||||
* @api {get} api/dialog/msg/todo 32. 设待办/取消待办
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1502,7 +1535,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/todolist 31. 获取消息待办情况
|
||||
* @api {get} api/dialog/msg/todolist 33. 获取消息待办情况
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1532,7 +1565,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/done 32. 完成待办
|
||||
* @api {get} api/dialog/msg/done 34. 完成待办
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1579,7 +1612,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/color 33. 设置颜色
|
||||
* @api {get} api/dialog/msg/color 35. 设置颜色
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1620,7 +1653,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/group/add 34. 新增群组
|
||||
* @api {get} api/dialog/group/add 36. 新增群组
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1682,7 +1715,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/group/edit 35. 修改群组
|
||||
* @api {get} api/dialog/group/edit 37. 修改群组
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1709,6 +1742,7 @@ class DialogController extends AbstractController
|
||||
$user->checkAdmin();
|
||||
$dialog = WebSocketDialog::find($dialog_id);
|
||||
if (empty($dialog)) {
|
||||
WebSocketDialogMsgRead::forceRead($dialog_id, $user->userid);
|
||||
return Base::retError('对话不存在或已被删除', ['dialog_id' => $dialog_id], -4003);
|
||||
}
|
||||
} else {
|
||||
@ -1743,7 +1777,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/group/adduser 36. 添加群成员
|
||||
* @api {get} api/dialog/group/adduser 38. 添加群成员
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* - 有群主时:只有群主可以邀请
|
||||
@ -1779,7 +1813,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/group/deluser 37. 移出(退出)群成员
|
||||
* @api {get} api/dialog/group/deluser 39. 移出(退出)群成员
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* - 只有群主、邀请人可以踢人
|
||||
@ -1823,7 +1857,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/group/transfer 38. 转让群组
|
||||
* @api {get} api/dialog/group/transfer 40. 转让群组
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* - 只有群主且是个人类型群可以解散
|
||||
@ -1833,6 +1867,8 @@ class DialogController extends AbstractController
|
||||
*
|
||||
* @apiParam {Number} dialog_id 会话ID
|
||||
* @apiParam {Number} userid 新的群主
|
||||
* @apiParam {String} check_owner 转让验证 yes-需要验证 no-不需要验证
|
||||
* @apiParam {String} key 密钥(APP_KEY)
|
||||
*
|
||||
* @apiSuccess {Number} ret 返回状态码(1正确、0错误)
|
||||
* @apiSuccess {String} msg 返回信息(错误描述)
|
||||
@ -1840,21 +1876,24 @@ class DialogController extends AbstractController
|
||||
*/
|
||||
public function group__transfer()
|
||||
{
|
||||
$user = User::auth();
|
||||
if (!Base::is_internal_ip(Base::getIp()) || Request::input("key") !== env('APP_KEY')) {
|
||||
$user = User::auth();
|
||||
}
|
||||
//
|
||||
$dialog_id = intval(Request::input('dialog_id'));
|
||||
$userid = intval(Request::input('userid'));
|
||||
$check_owner = trim(Request::input('check_owner', 'yes')) === 'yes';
|
||||
//
|
||||
if ($userid === $user->userid) {
|
||||
if ($check_owner && $userid === $user?->userid) {
|
||||
return Base::retError('你已经是群主');
|
||||
}
|
||||
if (!User::whereUserid($userid)->exists()) {
|
||||
return Base::retError('请选择有效的新群主');
|
||||
}
|
||||
//
|
||||
$dialog = WebSocketDialog::checkDialog($dialog_id, true);
|
||||
$dialog = WebSocketDialog::checkDialog($dialog_id, $check_owner);
|
||||
//
|
||||
$dialog->checkGroup('user');
|
||||
$dialog->checkGroup($check_owner ? 'user' : null);
|
||||
$dialog->owner_id = $userid;
|
||||
if ($dialog->save()) {
|
||||
$dialog->joinGroup($userid, 0);
|
||||
@ -1867,7 +1906,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/group/disband 39. 解散群组
|
||||
* @api {get} api/dialog/group/disband 41. 解散群组
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* - 只有群主且是个人类型群可以解散
|
||||
@ -1895,7 +1934,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/group/searchuser 40. 搜索个人群(仅限管理员)
|
||||
* @api {get} api/dialog/group/searchuser 42. 搜索个人群(仅限管理员)
|
||||
*
|
||||
* @apiDescription 需要token身份,用于创建部门搜索个人群组
|
||||
* @apiVersion 1.0.0
|
||||
@ -1924,7 +1963,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {post} api/dialog/okr/add 41. 创建OKR评论会话
|
||||
* @api {post} api/dialog/okr/add 43. 创建OKR评论会话
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1963,7 +2002,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {post} api/dialog/okr/push 42. 推送OKR相关信息
|
||||
* @api {post} api/dialog/okr/push 44. 推送OKR相关信息
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -1980,7 +2019,7 @@ class DialogController extends AbstractController
|
||||
*/
|
||||
public function okr__push()
|
||||
{
|
||||
if (Request::input("key") !== env('APP_KEY')) {
|
||||
if (!Base::is_internal_ip(Base::getIp()) || Request::input("key") !== env('APP_KEY')) {
|
||||
User::auth();
|
||||
}
|
||||
$text = trim(Request::input('text'));
|
||||
@ -1999,7 +2038,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {post} api/dialog/msg/wordchain 44. 发送接龙消息
|
||||
* @api {post} api/dialog/msg/wordchain 45. 发送接龙消息
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -2062,7 +2101,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {post} api/dialog/msg/vote 45. 发起投票
|
||||
* @api {post} api/dialog/msg/vote 46. 发起投票
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -2173,7 +2212,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/msg/top 46. 置顶/取消置顶
|
||||
* @api {get} api/dialog/msg/top 47. 置顶/取消置顶
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -2202,7 +2241,7 @@ class DialogController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/dialog/toplist 47. 获取置顶列表
|
||||
* @api {get} api/dialog/toplist 48. 获取置顶列表
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
|
||||
@ -480,8 +480,6 @@ class FileController extends AbstractController
|
||||
$only_update_at = Request::input('only_update_at', 'no');
|
||||
$history_id = intval(Request::input('history_id'));
|
||||
//
|
||||
Base::checkClientVersion('0.31.75');
|
||||
//
|
||||
if (Base::isNumber($id)) {
|
||||
$user = User::auth();
|
||||
$file = File::permissionFind(intval($id), $user, $down == 'yes' ? 1 : 0);
|
||||
|
||||
@ -2483,7 +2483,7 @@ class ProjectController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/project/permission 43. 获取项目权限设置
|
||||
* @api {get} api/project/permission 44. 获取项目权限设置
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
@ -2509,7 +2509,7 @@ class ProjectController extends AbstractController
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {get} api/project/permission/update 44. 项目权限设置
|
||||
* @api {get} api/project/permission/update 45. 项目权限设置
|
||||
*
|
||||
* @apiDescription 需要token身份
|
||||
* @apiVersion 1.0.0
|
||||
|
||||
@ -1971,7 +1971,7 @@ class UsersController extends AbstractController
|
||||
'name' => Doo::translate('文件'),
|
||||
];
|
||||
}
|
||||
$dialogList = (new WebSocketDialog)->getDialogList($user->userid);
|
||||
$dialogList = WebSocketDialog::getDialogList($user->userid);
|
||||
foreach ($dialogList['data'] as $dialog) {
|
||||
if ($dialog['avatar']) {
|
||||
$avatar = url($dialog['avatar']);
|
||||
|
||||
@ -10,6 +10,7 @@ use Cache;
|
||||
use Carbon\Carbon;
|
||||
use Hhxsv5\LaravelS\Swoole\Task\Task;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
/**
|
||||
* App\Models\WebSocketDialog
|
||||
@ -76,7 +77,7 @@ class WebSocketDialog extends AbstractModel
|
||||
* @param $deleted
|
||||
* @return array
|
||||
*/
|
||||
public function getDialogList($userid, $updated = "", $deleted = "")
|
||||
public static function getDialogList($userid, $updated = "", $deleted = "")
|
||||
{
|
||||
$builder = WebSocketDialog::select(['web_socket_dialogs.*', 'u.top_at', 'u.mark_unread', 'u.silence', 'u.color', 'u.updated_at as user_at'])
|
||||
->join('web_socket_dialog_users as u', 'web_socket_dialogs.id', '=', 'u.dialog_id')
|
||||
@ -99,6 +100,34 @@ class WebSocketDialog extends AbstractModel
|
||||
return $data;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取未读对话列表
|
||||
* @param $userid
|
||||
* @param $beforeAt
|
||||
* @param $take
|
||||
* @return WebSocketDialog[]
|
||||
*/
|
||||
public static function getDialogUnread($userid, $beforeAt, $take = 20)
|
||||
{
|
||||
DB::statement("SET SQL_MODE=''");
|
||||
$list = WebSocketDialog::select(['web_socket_dialogs.*', 'u.top_at', 'u.mark_unread', 'u.silence', 'u.color', 'u.updated_at as user_at'])
|
||||
->join('web_socket_dialog_users as u', 'web_socket_dialogs.id', '=', 'u.dialog_id')
|
||||
->join('web_socket_dialog_msg_reads as r', 'web_socket_dialogs.id', '=', 'r.dialog_id')
|
||||
->where('r.userid', $userid)
|
||||
->where('r.silence', 0)
|
||||
->where('r.read_at')
|
||||
->where('web_socket_dialogs.last_at', '>', $beforeAt)
|
||||
->groupBy('web_socket_dialogs.id')
|
||||
->take(min(100, $take))
|
||||
->get();
|
||||
$list->transform(function (WebSocketDialog $item) use ($userid) {
|
||||
return $item->formatData($userid);
|
||||
});
|
||||
//
|
||||
return $list;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 格式化对话
|
||||
* @param int $userid 会员ID
|
||||
@ -192,10 +221,26 @@ class WebSocketDialog extends AbstractModel
|
||||
if ($hasData === true) {
|
||||
$msgBuilder = WebSocketDialogMsg::whereDialogId($this->id);
|
||||
$this->has_tag = $msgBuilder->clone()->where('tag', '>', 0)->exists();
|
||||
$this->has_todo = $msgBuilder->clone()->where('todo', '>', 0)->exists();
|
||||
$this->has_image = $msgBuilder->clone()->whereMtype('image')->exists();
|
||||
$this->has_file = $msgBuilder->clone()->whereMtype('file')->exists();
|
||||
$this->has_link = $msgBuilder->clone()->whereLink(1)->exists();
|
||||
$this->has_todo = $msgBuilder->clone()->where('todo', '>', 0)->exists();
|
||||
Cache::forever("Dialog::tag:" . $this->id, Base::array2json([
|
||||
'has_tag' => $this->has_tag,
|
||||
'has_todo' => $this->has_todo,
|
||||
'has_image' => $this->has_image,
|
||||
'has_file' => $this->has_file,
|
||||
'has_link' => $this->has_link,
|
||||
]));
|
||||
} else {
|
||||
$tagData = Base::json2array(Cache::get("Dialog::tag:" . $this->id));
|
||||
if ($tagData) {
|
||||
$this->has_tag = !!$tagData['has_tag'];
|
||||
$this->has_todo = !!$tagData['has_todo'];
|
||||
$this->has_image = !!$tagData['has_image'];
|
||||
$this->has_file = !!$tagData['has_file'];
|
||||
$this->has_link = !!$tagData['has_link'];
|
||||
}
|
||||
}
|
||||
return $this;
|
||||
}
|
||||
@ -504,6 +549,7 @@ class WebSocketDialog extends AbstractModel
|
||||
return $dialog;
|
||||
}
|
||||
if (!WebSocketDialogUser::whereDialogId($dialog->id)->whereUserid($userid)->exists()) {
|
||||
WebSocketDialogMsgRead::forceRead($dialog_id, $userid);
|
||||
throw new ApiException('不在成员列表内', ['dialog_id' => $dialog_id], -4003);
|
||||
}
|
||||
return $dialog;
|
||||
|
||||
@ -396,6 +396,7 @@ class WebSocketDialogMsg extends AbstractModel
|
||||
'id' => $this->id,
|
||||
'top' => $this->top,
|
||||
'top_at' => $this->top_at,
|
||||
'dialog_id' => $this->dialog_id
|
||||
];
|
||||
//
|
||||
$data = [
|
||||
@ -410,9 +411,22 @@ class WebSocketDialogMsg extends AbstractModel
|
||||
]
|
||||
], $sender);
|
||||
if (Base::isSuccess($res)) {
|
||||
$data['add'] = $res['data'];
|
||||
$dialog = WebSocketDialog::find($this->dialog_id);
|
||||
$resData['tops'] = WebSocketDialogMsg::whereDialogId($dialog->id)->whereNotNull('top_at')->orderByDesc('top_at')->take(50)->get();
|
||||
if ($this->top) {
|
||||
$oldTops = self::whereDialogId($this->dialog_id)->where('id', '!=', $this->id)->where('top', '>', 0)->get();
|
||||
foreach($oldTops as $oldTop){
|
||||
$oldTop->top = 0;
|
||||
$oldTop->top_at = null;
|
||||
$oldTop->save();
|
||||
$dialog->pushMsg('update', [
|
||||
'id' => $oldTop->id,
|
||||
'top' => $oldTop->top,
|
||||
'top_at' => $oldTop->top_at,
|
||||
]);
|
||||
}
|
||||
}
|
||||
$data['add'] = $res['data'];
|
||||
$resData['tops'] = self::whereDialogId($dialog->id)->whereNotNull('top_at')->orderByDesc('top_at')->take(50)->get();
|
||||
$dialog->pushMsg('update', $resData);
|
||||
} else {
|
||||
$this->top = $before;
|
||||
|
||||
@ -47,6 +47,20 @@ class WebSocketDialogMsgRead extends AbstractModel
|
||||
return $this->hasOne(WebSocketDialogMsg::class, 'id', 'msg_id');
|
||||
}
|
||||
|
||||
/**
|
||||
* 强制标记成阅读
|
||||
* @param $dialogId
|
||||
* @param $userId
|
||||
* @return void
|
||||
*/
|
||||
public static function forceRead($dialogId, $userId)
|
||||
{
|
||||
self::whereDialogId($dialogId)
|
||||
->whereUserid($userId)
|
||||
->whereNull('read_at')
|
||||
->update(['read_at' => Carbon::now()]);
|
||||
}
|
||||
|
||||
/**
|
||||
* 仅标记成阅读
|
||||
* @param $list
|
||||
|
||||
@ -177,7 +177,7 @@ services:
|
||||
|
||||
okr:
|
||||
container_name: "dootask-okr-${APP_ID}"
|
||||
image: "kuaifan/doookr:0.0.23"
|
||||
image: "kuaifan/doookr:0.0.25"
|
||||
environment:
|
||||
TZ: "${TIMEZONE:-PRC}"
|
||||
DOO_TASK_URL: "http://${APP_IPPR}.3"
|
||||
|
||||
14
electron/build.js
vendored
@ -262,8 +262,8 @@ function startBuild(data) {
|
||||
econfig.build.nsis.artifactName = appName + "-v${version}-${os}-${arch}.${ext}";
|
||||
// changelog
|
||||
econfig.build.releaseInfo.releaseNotes = changeLog()
|
||||
if (release) {
|
||||
econfig.build.releaseInfo.releaseNotes = econfig.build.releaseInfo.releaseNotes.replace(`## [${config.version}]`, `## [${config.version}-Release]`)
|
||||
if (!release) {
|
||||
econfig.build.releaseInfo.releaseNotes = econfig.build.releaseInfo.releaseNotes.replace(`## [${config.version}]`, `## [${config.version}-Silence]`)
|
||||
}
|
||||
// darwin notarize
|
||||
if (notarize && APPLEID && APPLEIDPASS) {
|
||||
@ -323,7 +323,7 @@ if (["dev"].includes(argv[2])) {
|
||||
configure: {
|
||||
platform: '',
|
||||
publish: false,
|
||||
release: false,
|
||||
release: true,
|
||||
notarize: false,
|
||||
}
|
||||
}, false, false)
|
||||
@ -334,7 +334,7 @@ if (["dev"].includes(argv[2])) {
|
||||
data.configure = {
|
||||
platform,
|
||||
publish: true,
|
||||
release: false,
|
||||
release: true,
|
||||
notarize: false,
|
||||
}
|
||||
startBuild(data)
|
||||
@ -375,11 +375,11 @@ if (["dev"].includes(argv[2])) {
|
||||
name: 'release',
|
||||
message: "选择是否弹出升级提示框",
|
||||
choices: [{
|
||||
name: "No",
|
||||
value: false
|
||||
}, {
|
||||
name: "Yes",
|
||||
value: true
|
||||
}, {
|
||||
name: "No",
|
||||
value: false
|
||||
}]
|
||||
},
|
||||
{
|
||||
|
||||
2
electron/package.json
Normal file → Executable file
@ -32,7 +32,7 @@
|
||||
"@electron-forge/maker-squirrel": "^7.2.0",
|
||||
"@electron-forge/maker-zip": "^7.2.0",
|
||||
"dotenv": "^16.3.1",
|
||||
"electron": "^28.0.0",
|
||||
"electron": "^28.1.0",
|
||||
"electron-builder": "^24.9.1",
|
||||
"electron-notarize": "^1.2.2",
|
||||
"form-data": "^4.0.0",
|
||||
|
||||
@ -1363,7 +1363,8 @@ AI机器人
|
||||
我是文心一言,英文名是ERNIE Bot。我能够与人对话互动,回答问题,协助创作,高效便捷地帮助人们获取信息、知识和灵感。
|
||||
我是达摩院自主研发的超大规模语言模型,能够回答问题、创作文字,还能表达观点、撰写代码。
|
||||
机器人暂未开启
|
||||
创建一个全新的会议视频会议,与会者可以在实时中进行面对面的视听交流。通过视频会议平台,参与者可以分享屏幕、共享文档,并与其他与会人员进行讨论和协。
|
||||
创建一个全新的会议视频会议,与会者可以在实时中进行面对面的视听交流。
|
||||
通过视频会议平台,参与者可以分享屏幕、共享文档,并与其他与会人员进行讨论和协。
|
||||
加入视频会议,参与已经创建的会议,在会议过程中与其他参会人员进行远程实时视听交流和协作。
|
||||
新会议
|
||||
新建会议
|
||||
@ -1480,3 +1481,15 @@ APP推送
|
||||
已发送
|
||||
选择群组发起投票
|
||||
以下为新消息
|
||||
|
||||
|
||||
@我
|
||||
签到打卡
|
||||
在线会议
|
||||
群接龙
|
||||
群投票
|
||||
LDAP
|
||||
License Key
|
||||
你确定要打包下载【(*)】文件夹吗?
|
||||
正在打包,请留意系统消息
|
||||
发起,参与接龙目前共(*)人
|
||||
|
||||
@ -18632,5 +18632,830 @@
|
||||
"de": "Ist die nachricht eingeschaltet, wird der knopf Senden über der tastatur durch zeilenwechsel ersetzt",
|
||||
"fr": "Une fois activé, le bouton envoyer sur le clavier lors de l’envoi du message est remplacé par un saut de ligne",
|
||||
"id": "Jika diaktifkan, tombol pengirim di keyboard saat mengirim pesan diganti dengan baris ganti"
|
||||
},
|
||||
{
|
||||
"key": "不能重复投票",
|
||||
"zh": "",
|
||||
"zh-CHT": "不能重複投票",
|
||||
"en": "No double voting",
|
||||
"ko": "중복 투표가 안 된다.",
|
||||
"ja": "二重投票はできません",
|
||||
"de": "Stimmen sie nicht doppelt ab.",
|
||||
"fr": "Pas de double vote",
|
||||
"id": "Tidak bisa memilih ulang"
|
||||
},
|
||||
{
|
||||
"key": "请等待打包完成",
|
||||
"zh": "",
|
||||
"zh-CHT": "請等待打包完成",
|
||||
"en": "Please wait for packing to complete",
|
||||
"ko": "패키지가 끝날 때까지 기다려 주세요",
|
||||
"ja": "梱包が完了するまでお待ちいただけます。",
|
||||
"de": "Bitte warten sie, bis ihr koffer fertig ist",
|
||||
"fr": "Veuillez attendre que l’emballage soit terminé",
|
||||
"id": "Tunggu sampai paket selesai"
|
||||
},
|
||||
{
|
||||
"key": "选择一个项目查看更多任务",
|
||||
"zh": "",
|
||||
"zh-CHT": "選擇一個項目查看更多任務",
|
||||
"en": "Select a project to view more tasks",
|
||||
"ko": "더 많은 작업을 보려면 항목을 선택하십시오",
|
||||
"ja": "1つのプロジェクトを選んでより多くのタスクを見ます",
|
||||
"de": "Wählen sie ein projekt, um weitere aufgaben wahrzunehmen",
|
||||
"fr": "Sélectionnez un projet pour voir plus de tâches",
|
||||
"id": "Pilih satu item untuk melihat lebih banyak tugas"
|
||||
},
|
||||
{
|
||||
"key": "首页",
|
||||
"zh": "",
|
||||
"zh-CHT": "首頁",
|
||||
"en": "Home page",
|
||||
"ko": "첫 페이지",
|
||||
"ja": "トップページです",
|
||||
"de": "Die titelseite.",
|
||||
"fr": "La page de couverture",
|
||||
"id": "Halaman depan"
|
||||
},
|
||||
{
|
||||
"key": "无相关数据",
|
||||
"zh": "",
|
||||
"zh-CHT": "無相關數據",
|
||||
"en": "No relevant data",
|
||||
"ko": "관련 데이터 없음",
|
||||
"ja": "データはありません",
|
||||
"de": "Es liegen keine daten vor.",
|
||||
"fr": "Aucune donnée disponible",
|
||||
"id": "Tidak ada data yang relevan"
|
||||
},
|
||||
{
|
||||
"key": "权限设置",
|
||||
"zh": "",
|
||||
"zh-CHT": "權限設置",
|
||||
"en": "Permission setting",
|
||||
"ko": "권한 설정",
|
||||
"ja": "権限設定です",
|
||||
"de": "Berechtigungen festlegen",
|
||||
"fr": "Paramètres des droits",
|
||||
"id": "Pengaturan hak akses"
|
||||
},
|
||||
{
|
||||
"key": "任务列权限",
|
||||
"zh": "",
|
||||
"zh-CHT": "任務列權限",
|
||||
"en": "Task bar permission",
|
||||
"ko": "작업 칸 권한",
|
||||
"ja": "任務列権限",
|
||||
"de": "Aufgabenliste zugriff auf",
|
||||
"fr": "Autorisations de colonne de tâche",
|
||||
"id": "Izin kolom tugas"
|
||||
},
|
||||
{
|
||||
"key": "添加列",
|
||||
"zh": "",
|
||||
"zh-CHT": "添加列",
|
||||
"en": "Add column",
|
||||
"ko": "칸 추가",
|
||||
"ja": "列を追加します",
|
||||
"de": "Geben sie zu.",
|
||||
"fr": "Ajouter une colonne",
|
||||
"id": "Tambahkan kolom"
|
||||
},
|
||||
{
|
||||
"key": "修改列",
|
||||
"zh": "",
|
||||
"zh-CHT": "修改列",
|
||||
"en": "Modified column",
|
||||
"ko": "칸 수정하기",
|
||||
"ja": "修正列です",
|
||||
"de": "Ich repariere sie.",
|
||||
"fr": "Modifier une colonne",
|
||||
"id": "Merevisi kolom"
|
||||
},
|
||||
{
|
||||
"key": "删除列",
|
||||
"zh": "",
|
||||
"zh-CHT": "刪除列",
|
||||
"en": "Delete column",
|
||||
"ko": "칸 삭제",
|
||||
"ja": "列を削除します",
|
||||
"de": "Spalte löschen",
|
||||
"fr": "Supprimer une colonne",
|
||||
"id": "Hapus kolom"
|
||||
},
|
||||
{
|
||||
"key": "排序列",
|
||||
"zh": "",
|
||||
"zh-CHT": "排序列",
|
||||
"en": "Sequencing",
|
||||
"ko": "서열을 정하다",
|
||||
"ja": "序列をつけます。",
|
||||
"de": "Reihen aufstellen.",
|
||||
"fr": "Séquence de rangées",
|
||||
"id": "Urutan"
|
||||
},
|
||||
{
|
||||
"key": "任务权限",
|
||||
"zh": "",
|
||||
"zh-CHT": "任務權限",
|
||||
"en": "Task authority",
|
||||
"ko": "작업 권한",
|
||||
"ja": "任務権限です",
|
||||
"de": "Auftrag autorisiert.",
|
||||
"fr": "Autorisations de tâches",
|
||||
"id": "Hak akses tugas"
|
||||
},
|
||||
{
|
||||
"key": "修改任务",
|
||||
"zh": "",
|
||||
"zh-CHT": "修改任務",
|
||||
"en": "Modify task",
|
||||
"ko": "작업 변경",
|
||||
"ja": "タスクを修正します",
|
||||
"de": "Die mission ändern.",
|
||||
"fr": "Modifier une tâche",
|
||||
"id": "Memodifikasi tugas"
|
||||
},
|
||||
{
|
||||
"key": "修改状态",
|
||||
"zh": "",
|
||||
"zh-CHT": "修改狀態",
|
||||
"en": "Modified state",
|
||||
"ko": "상태 수정",
|
||||
"ja": "状態を修正します",
|
||||
"de": "Ändern.",
|
||||
"fr": "Modifier le statut",
|
||||
"id": "Memodifikasi status"
|
||||
},
|
||||
{
|
||||
"key": "任务协助人",
|
||||
"zh": "",
|
||||
"zh-CHT": "任務協助人",
|
||||
"en": "Mission helper",
|
||||
"ko": "임무 협조자",
|
||||
"ja": "任務協力者です",
|
||||
"de": "Entbindungen für die mission",
|
||||
"fr": "Collaboration en mission",
|
||||
"id": "Kolaborasi tugas"
|
||||
},
|
||||
{
|
||||
"key": "搜索项目名称",
|
||||
"zh": "",
|
||||
"zh-CHT": "搜索項目名稱",
|
||||
"en": "Search project name",
|
||||
"ko": "검색 항목 이름",
|
||||
"ja": "項目名を検索します",
|
||||
"de": "Name des suchprojekts:",
|
||||
"fr": "Recherche par nom d’article",
|
||||
"id": "Cari nama item"
|
||||
},
|
||||
{
|
||||
"key": "服务器版本过低,请升级服务器。",
|
||||
"zh": "",
|
||||
"zh-CHT": "服務器版本過低,請升級服務器。",
|
||||
"en": "The server version is too early. Please upgrade the server.",
|
||||
"ko": "서버 버전이 낮습니다. 서버를 업그레이드하십시오.",
|
||||
"ja": "サーバーのバージョンが低いので、サーバーのアップグレードをお願いします。",
|
||||
"de": "Server sind zu niedrig. Bitte aktualisiert den server.",
|
||||
"fr": "La version du serveur est trop basse. Veuillez mettre à jour le serveur.",
|
||||
"id": "Versi server di bawah rendah, silahkan upgrade server."
|
||||
},
|
||||
{
|
||||
"key": "不显示原发送者信息",
|
||||
"zh": "",
|
||||
"zh-CHT": "不顯示原發送者信息",
|
||||
"en": "The original sender information is not displayed",
|
||||
"ko": "원래 보낸 사람 메시지 안 보이기",
|
||||
"ja": "元送信者情報は表示されません。",
|
||||
"de": "Kein original absender anzeigen",
|
||||
"fr": "Ne pas afficher les informations de l’expéditeur original",
|
||||
"id": "Tidak menunjukkan pesan asli"
|
||||
},
|
||||
{
|
||||
"key": "转发给:",
|
||||
"zh": "",
|
||||
"zh-CHT": "轉發給:",
|
||||
"en": "Forward to:",
|
||||
"ko": "다음으로 전달:",
|
||||
"ja": "転送します:",
|
||||
"de": "Und an scotty.",
|
||||
"fr": "Envoyer à:",
|
||||
"id": "Teruskan ke:"
|
||||
},
|
||||
{
|
||||
"key": "留言",
|
||||
"zh": "",
|
||||
"zh-CHT": "留言",
|
||||
"en": "Leave a message",
|
||||
"ko": "메시지",
|
||||
"ja": "伝言です",
|
||||
"de": "Nachricht für mich.",
|
||||
"fr": "Le message",
|
||||
"id": "Tinggalkan pesan"
|
||||
},
|
||||
{
|
||||
"key": "多选",
|
||||
"zh": "",
|
||||
"zh-CHT": "多選",
|
||||
"en": "Multiple choice",
|
||||
"ko": "선",
|
||||
"ja": "複数回答です",
|
||||
"de": "Kommt an die reihe.",
|
||||
"fr": "DuoXuan",
|
||||
"id": "DuoXuan"
|
||||
},
|
||||
{
|
||||
"key": "@我的",
|
||||
"zh": "",
|
||||
"zh-CHT": "@我的",
|
||||
"en": "@ My",
|
||||
"ko": "@ 나의",
|
||||
"ja": "@私のです",
|
||||
"de": "Mich hat er mich nie verraten.",
|
||||
"fr": "@ mon",
|
||||
"id": "My"
|
||||
},
|
||||
{
|
||||
"key": "移动前",
|
||||
"zh": "",
|
||||
"zh-CHT": "移動前",
|
||||
"en": "Premove",
|
||||
"ko": "이동 전",
|
||||
"ja": "移動前です",
|
||||
"de": "Vor der bewegung",
|
||||
"fr": "Avant de déménager",
|
||||
"id": "Sebelum pindah"
|
||||
},
|
||||
{
|
||||
"key": "移动后",
|
||||
"zh": "",
|
||||
"zh-CHT": "移動後",
|
||||
"en": "Post move",
|
||||
"ko": "이동 후",
|
||||
"ja": "移動後です",
|
||||
"de": "Vorwärts und dann vorwärts.",
|
||||
"fr": "Après le déménagement",
|
||||
"id": "Setelah pindah"
|
||||
},
|
||||
{
|
||||
"key": "状态",
|
||||
"zh": "",
|
||||
"zh-CHT": "狀態",
|
||||
"en": "Status",
|
||||
"ko": "상태",
|
||||
"ja": "状態です",
|
||||
"de": "Versetzen.",
|
||||
"fr": "L’état",
|
||||
"id": "Keadaan"
|
||||
},
|
||||
{
|
||||
"key": "协助人",
|
||||
"zh": "",
|
||||
"zh-CHT": "協助人",
|
||||
"en": "Assist",
|
||||
"ko": "조력자",
|
||||
"ja": "協力者です",
|
||||
"de": "Vorm helfen.",
|
||||
"fr": "Confraternité",
|
||||
"id": "Kolaborasi"
|
||||
},
|
||||
{
|
||||
"key": "未变更移动项",
|
||||
"zh": "",
|
||||
"zh-CHT": "未變更移動項",
|
||||
"en": "The move item is not changed",
|
||||
"ko": "이동 항목이 변경되지 않았습니다",
|
||||
"ja": "移働項変更ありません",
|
||||
"de": "Der zeiger wird unverändert gelassen",
|
||||
"fr": "Article mobile non modifié",
|
||||
"id": "Tidak mengubah item mobile"
|
||||
},
|
||||
{
|
||||
"key": "接龙",
|
||||
"zh": "",
|
||||
"zh-CHT": "接龍",
|
||||
"en": "Solitaire",
|
||||
"ko": "다이 크",
|
||||
"ja": "しりとりです",
|
||||
"de": "Schnappt euch den drachen!",
|
||||
"fr": "Mines",
|
||||
"id": "JieLong"
|
||||
},
|
||||
{
|
||||
"key": "参与接龙",
|
||||
"zh": "",
|
||||
"zh-CHT": "參與接龍",
|
||||
"en": "Participate in the solitaire",
|
||||
"ko": "릴레이 작업에 참여하다.",
|
||||
"ja": "しりとりに参加します",
|
||||
"de": "Ich übernehme die verantwortung.",
|
||||
"fr": "Participez à solitaire",
|
||||
"id": "Berpartisipasi dalam tangkapan"
|
||||
},
|
||||
{
|
||||
"key": "发起接龙",
|
||||
"zh": "",
|
||||
"zh-CHT": "發起接龍",
|
||||
"en": "Initiate a solitaire",
|
||||
"ko": "릴레이 작전을 개시하다.",
|
||||
"ja": "しりとりをします",
|
||||
"de": "Ergreift den rückzug.",
|
||||
"fr": "Initier le solitaire",
|
||||
"id": "Memulai relay"
|
||||
},
|
||||
{
|
||||
"key": "由",
|
||||
"zh": "",
|
||||
"zh-CHT": "由",
|
||||
"en": "By",
|
||||
"ko": "가",
|
||||
"ja": "由ります",
|
||||
"de": "Von",
|
||||
"fr": "Par",
|
||||
"id": "Oleh"
|
||||
},
|
||||
{
|
||||
"key": "发起接龙,参与接龙目前共(*)人",
|
||||
"zh": "",
|
||||
"zh-CHT": "發起接龍,參與接龍目前共(*)人",
|
||||
"en": "Initiate the relay, and participate in the relay currently a total of (*) people",
|
||||
"ko": "련계를 발기하고 련계에 참여하여 현재 총 (*) 사람",
|
||||
"ja": "しりとりを開始し,参加した人(*)がいます",
|
||||
"de": "So wird eine entführung durchgeführt, die zu einer entführung führt (*)",
|
||||
"fr": "Solitaire initié, solitaire participant actuellement au total (*) personnes",
|
||||
"id": "Pencangkokkan pada naga dan ambil bagian dalam reproduksinya (*) manusia"
|
||||
},
|
||||
{
|
||||
"key": "请输入接龙主题",
|
||||
"zh": "",
|
||||
"zh-CHT": "請輸入接龍主題",
|
||||
"en": "Please enter a theme",
|
||||
"ko": "드래곤 연결 테마를 입력하십시오",
|
||||
"ja": "しりとりテーマ入力お願いします。",
|
||||
"de": "Geben sie das leitmotiv ein",
|
||||
"fr": "Veuillez entrer le sujet solitaire",
|
||||
"id": "Silahkan masukkan tema relay"
|
||||
},
|
||||
{
|
||||
"key": "请输入接龙内容",
|
||||
"zh": "",
|
||||
"zh-CHT": "請輸入接龍內容",
|
||||
"en": "Please enter the connection content",
|
||||
"ko": "연결 내용을 입력해 주세요",
|
||||
"ja": "しりとりの入力をお願いします。",
|
||||
"de": "Geben sie den leittext ein",
|
||||
"fr": "Veuillez entrer le contenu solitaire",
|
||||
"id": "Silakan masukkan isi naga"
|
||||
},
|
||||
{
|
||||
"key": "可填写接龙格式",
|
||||
"zh": "",
|
||||
"zh-CHT": "可填寫接龍格式",
|
||||
"en": "You can fill in the relay format",
|
||||
"ko": "연결 형식으로 기입하실 수 있습니다",
|
||||
"ja": "しりとりフォーム記入可能です",
|
||||
"de": "Sie können das zuchtformat ausfüllen",
|
||||
"fr": "Format solitaire remplissable",
|
||||
"id": "Isi format relay"
|
||||
},
|
||||
{
|
||||
"key": "重复内容将不再计入接龙结果",
|
||||
"zh": "",
|
||||
"zh-CHT": "重複內容將不再計入接龍結果",
|
||||
"en": "Duplicates will no longer be counted in the results",
|
||||
"ko": "중복된 내용은 연결 결과에 더 이상 계산에 넣지 않는다",
|
||||
"ja": "重複した内容はしりとり結果にはカウントしません。",
|
||||
"de": "Wiederholung wird nicht länger als bestandsfolge berücksichtigt",
|
||||
"fr": "Les doublons ne compteront plus pour les résultats solitaire",
|
||||
"id": "Konten yang diulang tidak akan lagi dikaji ke relay"
|
||||
},
|
||||
{
|
||||
"key": "返回编辑",
|
||||
"zh": "",
|
||||
"zh-CHT": "返回編輯",
|
||||
"en": "Back to edit",
|
||||
"ko": "편집기로 돌아가기",
|
||||
"ja": "編集に戻ります",
|
||||
"de": "Korrektur chefredakteur",
|
||||
"fr": "Retour aux éditeurs",
|
||||
"id": "Kembali mengedit"
|
||||
},
|
||||
{
|
||||
"key": "继续发送",
|
||||
"zh": "",
|
||||
"zh-CHT": "繼續發送",
|
||||
"en": "Continue to send",
|
||||
"ko": "계속 보내기",
|
||||
"ja": "送り続けます",
|
||||
"de": "Sende weiter.",
|
||||
"fr": "Continuer à envoyer",
|
||||
"id": "Terus mengirim"
|
||||
},
|
||||
{
|
||||
"key": "例",
|
||||
"zh": "",
|
||||
"zh-CHT": "例",
|
||||
"en": "Case",
|
||||
"ko": "예",
|
||||
"ja": "例です",
|
||||
"de": ".",
|
||||
"fr": "Dans le cas de",
|
||||
"id": "Contoh"
|
||||
},
|
||||
{
|
||||
"key": "接龙结果",
|
||||
"zh": "",
|
||||
"zh-CHT": "接龍結果",
|
||||
"en": "Relay result",
|
||||
"ko": "연결 결과",
|
||||
"ja": "しりとりの結果です",
|
||||
"de": "Holt sie euch!",
|
||||
"fr": "Résultats pour solitaire",
|
||||
"id": "Hasil tangkapan"
|
||||
},
|
||||
{
|
||||
"key": "选择群组发起接龙",
|
||||
"zh": "",
|
||||
"zh-CHT": "選擇羣組發起接龍",
|
||||
"en": "Select a group to initiate a relay",
|
||||
"ko": "줄을 시작할 그룹을 선택합니다",
|
||||
"ja": "グループを選択してしりとりを開始します",
|
||||
"de": "Scharniere wählen, um den griff zu ergreifen",
|
||||
"fr": "Sélectionnez un groupe pour initier solitaire",
|
||||
"id": "Pilih kelompok untuk mengasosiasikan naga"
|
||||
},
|
||||
{
|
||||
"key": "来自",
|
||||
"zh": "",
|
||||
"zh-CHT": "來自",
|
||||
"en": "Be from",
|
||||
"ko": "온",
|
||||
"ja": "来ます",
|
||||
"de": "Definitiv eine quelle.",
|
||||
"fr": "En provenance de",
|
||||
"id": "Dari"
|
||||
},
|
||||
{
|
||||
"key": "发起投票",
|
||||
"zh": "",
|
||||
"zh-CHT": "發起投票",
|
||||
"en": "Call a vote",
|
||||
"ko": "투표를 발기하다",
|
||||
"ja": "投票を発議します",
|
||||
"de": "Lasst die abstimmung einleiten.",
|
||||
"fr": "Lancer un vote",
|
||||
"id": "Suara awal"
|
||||
},
|
||||
{
|
||||
"key": "投票结果",
|
||||
"zh": "",
|
||||
"zh-CHT": "投票結果",
|
||||
"en": "Voting result",
|
||||
"ko": "투표 결과",
|
||||
"ja": "投票結果です",
|
||||
"de": "Die abstimmung kam.",
|
||||
"fr": "Résultats des votes",
|
||||
"id": "Hasil suara"
|
||||
},
|
||||
{
|
||||
"key": "发起",
|
||||
"zh": "",
|
||||
"zh-CHT": "發起",
|
||||
"en": "Initiate",
|
||||
"ko": "시작",
|
||||
"ja": "発起します",
|
||||
"de": "Einleitung?",
|
||||
"fr": "Le lancement",
|
||||
"id": "Memulai"
|
||||
},
|
||||
{
|
||||
"key": "请输入投票主题",
|
||||
"zh": "",
|
||||
"zh-CHT": "請輸入投票主題",
|
||||
"en": "Please enter the voting topic",
|
||||
"ko": "투표 제목을 입력하세요",
|
||||
"ja": "投票テーマの入力をお願いします",
|
||||
"de": "Geben sie das stimmthema ein",
|
||||
"fr": "Veuillez entrer un sujet de vote",
|
||||
"id": "Silahkan masukkan tema pemungutan suara"
|
||||
},
|
||||
{
|
||||
"key": "请输入选项内容",
|
||||
"zh": "",
|
||||
"zh-CHT": "請輸入選項內容",
|
||||
"en": "Please enter the options",
|
||||
"ko": "옵션 내용을 입력해 주세요",
|
||||
"ja": "オプションの入力をお願いします。",
|
||||
"de": "Bitte geben sie den eintrag zur freien wahl ein",
|
||||
"fr": "Veuillez entrer le contenu des options",
|
||||
"id": "Silahkan masukkan konten pilihan"
|
||||
},
|
||||
{
|
||||
"key": "允许多选",
|
||||
"zh": "",
|
||||
"zh-CHT": "允許多選",
|
||||
"en": "Multiple choice allowed",
|
||||
"ko": "다중 선택 사용",
|
||||
"ja": "複数回答を許可します",
|
||||
"de": "Eine auswahl ist erlaubt.",
|
||||
"fr": "Permet la sélection multiple",
|
||||
"id": "Izinkan pilihan ganda"
|
||||
},
|
||||
{
|
||||
"key": "匿名投票",
|
||||
"zh": "",
|
||||
"zh-CHT": "匿名投票",
|
||||
"en": "Anonymous voting",
|
||||
"ko": "익명 투표",
|
||||
"ja": "とくめい投票です",
|
||||
"de": "Anonyme stimmen.",
|
||||
"fr": "Un vote anonyme",
|
||||
"id": "Suara anonim"
|
||||
},
|
||||
{
|
||||
"key": "投票",
|
||||
"zh": "",
|
||||
"zh-CHT": "投票",
|
||||
"en": "Vote",
|
||||
"ko": "투표",
|
||||
"ja": "投票します",
|
||||
"de": "Wir stimmen ab.",
|
||||
"fr": "Le vote",
|
||||
"id": "Suara."
|
||||
},
|
||||
{
|
||||
"key": "匿名",
|
||||
"zh": "",
|
||||
"zh-CHT": "匿名",
|
||||
"en": "Anonymity",
|
||||
"ko": "익명",
|
||||
"ja": "匿名です",
|
||||
"de": "Anonym.",
|
||||
"fr": "L’anonymat",
|
||||
"id": "Tak diketahui"
|
||||
},
|
||||
{
|
||||
"key": "实名",
|
||||
"zh": "",
|
||||
"zh-CHT": "實名",
|
||||
"en": "Real name",
|
||||
"ko": "실명",
|
||||
"ja": "実名です",
|
||||
"de": "Wiedersehen!",
|
||||
"fr": "Sous son vrai nom",
|
||||
"id": "Itu nama asli"
|
||||
},
|
||||
{
|
||||
"key": "单选",
|
||||
"zh": "",
|
||||
"zh-CHT": "單選",
|
||||
"en": "Single-choice",
|
||||
"ko": "라디오",
|
||||
"ja": "ラジオです",
|
||||
"de": "Entscheidung.",
|
||||
"fr": "Et",
|
||||
"id": "ChanXuan"
|
||||
},
|
||||
{
|
||||
"key": "请选择后投票",
|
||||
"zh": "",
|
||||
"zh-CHT": "請選擇後投票",
|
||||
"en": "Please select and vote",
|
||||
"ko": "선택하시고 투표해 주세요",
|
||||
"ja": "選んで投票をお願いします。",
|
||||
"de": "Bitte wählen sie nach der abstimmung aus",
|
||||
"fr": "Veuillez sélectionner pour voter",
|
||||
"id": "Silahkan pilih setelah suara anda"
|
||||
},
|
||||
{
|
||||
"key": "立即投票",
|
||||
"zh": "",
|
||||
"zh-CHT": "立即投票",
|
||||
"en": "Immediate vote",
|
||||
"ko": "바로 투표",
|
||||
"ja": "即時投票です",
|
||||
"de": "Stimmen sie sofort ab!",
|
||||
"fr": "Votez dès maintenant",
|
||||
"id": "Pilih sekarang"
|
||||
},
|
||||
{
|
||||
"key": "票",
|
||||
"zh": "",
|
||||
"zh-CHT": "票",
|
||||
"en": "Ticket",
|
||||
"ko": "표",
|
||||
"ja": "チケットです",
|
||||
"de": ".",
|
||||
"fr": "Voix",
|
||||
"id": "Tiket"
|
||||
},
|
||||
{
|
||||
"key": "再次发送",
|
||||
"zh": "",
|
||||
"zh-CHT": "再次發送",
|
||||
"en": "Resend",
|
||||
"ko": "다시 보내기",
|
||||
"ja": "再送します",
|
||||
"de": "Senden sie es nochmal.",
|
||||
"fr": "Envoyer à nouveau",
|
||||
"id": "Kirim lagi"
|
||||
},
|
||||
{
|
||||
"key": "再次发送投票?",
|
||||
"zh": "",
|
||||
"zh-CHT": "再次發送投票?",
|
||||
"en": "Send the vote again?",
|
||||
"ko": "투표 다시 보낼까?",
|
||||
"ja": "投票の再送ですか?",
|
||||
"de": "Noch eine abstimmung?",
|
||||
"fr": "Envoyer à nouveau le sondage?",
|
||||
"id": "Mengirim suara lagi?"
|
||||
},
|
||||
{
|
||||
"key": "结束投票",
|
||||
"zh": "",
|
||||
"zh-CHT": "結束投票",
|
||||
"en": "Close the ballot",
|
||||
"ko": "투표를 마치다",
|
||||
"ja": "投票を締め括ります",
|
||||
"de": "Die abstimmung ist beendet.",
|
||||
"fr": "Clôture des votes",
|
||||
"id": "Pemungutan suara berakhir"
|
||||
},
|
||||
{
|
||||
"key": "确定结束投票?",
|
||||
"zh": "",
|
||||
"zh-CHT": "確定結束投票?",
|
||||
"en": "Are you sure to close the vote?",
|
||||
"ko": "투표 끝 확정?",
|
||||
"ja": "投票終了確定ですか?",
|
||||
"de": "Sorgen sie dafür, dass die abstimmung abgeschlossen ist?",
|
||||
"fr": "Sûr de clôturer le vote?",
|
||||
"id": "Yakin pemungutan suara berakhir?"
|
||||
},
|
||||
{
|
||||
"key": "已发送",
|
||||
"zh": "",
|
||||
"zh-CHT": "已發送",
|
||||
"en": "Has been sent",
|
||||
"ko": "보냈음",
|
||||
"ja": "発送しました",
|
||||
"de": "Gesendet",
|
||||
"fr": "A été envoyé",
|
||||
"id": "Telah mengirim"
|
||||
},
|
||||
{
|
||||
"key": "选择群组发起投票",
|
||||
"zh": "",
|
||||
"zh-CHT": "選擇羣組發起投票",
|
||||
"en": "Select a group to initiate voting",
|
||||
"ko": "투표를 발기할 그룹을 선택합니다",
|
||||
"ja": "グループを選んで投票します",
|
||||
"de": "Gruppen werden zur wahl gewählt",
|
||||
"fr": "Choisir un groupe pour lancer un sondage",
|
||||
"id": "Pilih grup untuk memulai voting"
|
||||
},
|
||||
{
|
||||
"key": "@我",
|
||||
"zh": "",
|
||||
"zh-CHT": "@我",
|
||||
"en": "@ Me",
|
||||
"ko": "@나",
|
||||
"ja": "@私です",
|
||||
"de": "(englischer song)",
|
||||
"fr": "@ je",
|
||||
"id": "@ aku punya"
|
||||
},
|
||||
{
|
||||
"key": "签到打卡",
|
||||
"zh": "",
|
||||
"zh-CHT": "簽到打卡",
|
||||
"en": "Sign in and punch in",
|
||||
"ko": "출근 카드를 찍다",
|
||||
"ja": "タイムカードを押します。",
|
||||
"de": "Trag 'ne karte ein",
|
||||
"fr": "Connexion et pointage",
|
||||
"id": "Log masuk"
|
||||
},
|
||||
{
|
||||
"key": "在线会议",
|
||||
"zh": "",
|
||||
"zh-CHT": "在線會議",
|
||||
"en": "Online conference",
|
||||
"ko": "온라인 회의",
|
||||
"ja": "オンライン会議です",
|
||||
"de": "Bei denen ich online bin.",
|
||||
"fr": "Conférence en ligne",
|
||||
"id": "Pertemuan online"
|
||||
},
|
||||
{
|
||||
"key": "群接龙",
|
||||
"zh": "",
|
||||
"zh-CHT": "羣接龍",
|
||||
"en": "Solitaire",
|
||||
"ko": "뭇사람이 꼬리를 잇다.",
|
||||
"ja": "しりとりです",
|
||||
"de": "Ich war in der schlange.",
|
||||
"fr": "Groupe solitaire",
|
||||
"id": "Kelompok relay"
|
||||
},
|
||||
{
|
||||
"key": "群投票",
|
||||
"zh": "",
|
||||
"zh-CHT": "羣投票",
|
||||
"en": "Group voting",
|
||||
"ko": "집단 투표",
|
||||
"ja": "グループ投票です",
|
||||
"de": "Wahlmännerstimmen.",
|
||||
"fr": "Vote en groupe",
|
||||
"id": "Kelompok suara"
|
||||
},
|
||||
{
|
||||
"key": "LDAP",
|
||||
"zh": "",
|
||||
"zh-CHT": "LDAP",
|
||||
"en": "LDAP",
|
||||
"ko": "Ldap",
|
||||
"ja": "LDAPです",
|
||||
"de": "LDAP",
|
||||
"fr": "LDAP",
|
||||
"id": "LDAP"
|
||||
},
|
||||
{
|
||||
"key": "你确定要打包下载【Bigw】文件夹吗?",
|
||||
"zh": "",
|
||||
"zh-CHT": "你確定要打包下載【Bigw】文件夾嗎?",
|
||||
"en": "Are you sure you want to package and download the [Bigw] folder?",
|
||||
"ko": "정말 [bigw] 폴더를 포장하시겠습니까?",
|
||||
"ja": "【Bigw】フォルダをダウンロードしますか?",
|
||||
"de": "Möchten sie ganz sicher ihre koffer packen und den ordner \"Bigw\" runterladen?",
|
||||
"fr": "Êtes-vous sûr de vouloir emballer le dossier download [Bigw]?",
|
||||
"id": "Kau yakin ingin berkemas untuk download?"
|
||||
},
|
||||
{
|
||||
"key": "正在打包,请留意系统消息",
|
||||
"zh": "",
|
||||
"zh-CHT": "正在打包,請留意系統消息",
|
||||
"en": "Packing, please pay attention to the system message",
|
||||
"ko": "압축하고 있습니다. 시스템 메시지를 확인하십시오",
|
||||
"ja": "パッケージ化中ですので、システムメッセージにご注意ください。",
|
||||
"de": "Bereits am packen, geben sie eine nachricht nach system ab",
|
||||
"fr": "Emballage en cours, gardez un oeil sur les messages du système",
|
||||
"id": "Paket sedang dikemas"
|
||||
},
|
||||
{
|
||||
"key": "创建一个全新的会议视频会议,与会者可以在实时中进行面对面的视听交流。",
|
||||
"zh": "",
|
||||
"zh-CHT": "創建一個全新的會議視頻會議,與會者可以在實時中進行面對面的視聽交流。",
|
||||
"en": "Create a new conference video conferencing where attendees can meet face-to-face in real time.",
|
||||
"ko": "실시간 시청각 대면 대화가 가능한 새로운 화상 회의를 만듭니다.",
|
||||
"ja": "参加者同士がリアルタイムで対面でコミュニケーションできる、まったく新しいビデオ会議を作ります。",
|
||||
"de": "Erstellen sie eine neue video-konferenz, bei der die teilnehmer direkten audio-kontakt in echtzeit haben.",
|
||||
"fr": "Créez une nouvelle vidéoconférence de conférence où les participants peuvent communiquer en face à face en temps réel.",
|
||||
"id": "Buatlah konferensi video konferensi yang sama sekali baru di mana peserta dapat bertemu langsung dan saling bertatap muka secara langsung."
|
||||
},
|
||||
{
|
||||
"key": "通过视频会议平台,参与者可以分享屏幕、共享文档,并与其他与会人员进行讨论和协。",
|
||||
"zh": "",
|
||||
"zh-CHT": "通過視頻會議平臺,參與者可以分享屏幕、共享文檔,並與其他與會人員進行討論和協。",
|
||||
"en": "Through the video conferencing platform, participants can share screens, share documents, and discuss and collaborate with other participants.",
|
||||
"ko": "화상 회의 플랫폼을 통해 참가자들은 화면을 공유하고 문서를 공유하며 다른 참가자들과 토론하고 협력할 수 있다.",
|
||||
"ja": "ビデオ会議のプラットフォームを通じて、参加者はスクリーンを共有したり、文書を共有したり、他の参加者と議論を和協することができます。",
|
||||
"de": "Auf der videokonferenz können die teilnehmer bildschirm-teile teilen, dokumente teilen und mit den anderen teilnehmern erörtern und diskutieren.",
|
||||
"fr": "La plateforme de visioconférence permet aux participants de partager des écrans, de partager des documents, de discuter et de s’associer avec les autres participants.",
|
||||
"id": "Melalui platform konferensi video, peserta dapat berbagi layar, berbagi dokumen, dan berunding dengan peserta lain."
|
||||
},
|
||||
{
|
||||
"key": "你确定要打包下载【(*)】文件夹吗?",
|
||||
"zh": "",
|
||||
"zh-CHT": "你確定要打包下載【(*)】文件夾嗎?",
|
||||
"en": "Are you sure you want to pack and download the [(*)] folder?",
|
||||
"ko": "[(*)] 폴더를 압축하시겠습니까?",
|
||||
"ja": "【(*)】フォルダをダウンロードすることは確かですか?",
|
||||
"de": "Sollen sie ganz sicher ihre koffer packen und den ordner runterladen?",
|
||||
"fr": "Êtes-vous sûr de vouloir emballer le dossier de téléchargement [(*)]?",
|
||||
"id": "Apakah anda yakin ingin mengemasi folder [*]?"
|
||||
},
|
||||
{
|
||||
"key": "发起,参与接龙目前共(*)人",
|
||||
"zh": "",
|
||||
"zh-CHT": "發起,參與接龍目前共(*)人",
|
||||
"en": "Initiated, participating in the relay is currently a total of (*) people",
|
||||
"ko": "련계를 발기, 참여하여 현재 총 (*) 사람",
|
||||
"ja": "しりとりに参加しました(*)",
|
||||
"de": "Einleitung der entführung, die zur zeit durchgeführt wird",
|
||||
"fr": "Initié, participant solitaire actuellement au total (*) personnes",
|
||||
"id": "Inisiasi, partisipasi dalam naga saat ini (*) orang"
|
||||
},
|
||||
{
|
||||
"key": "License Key",
|
||||
"zh": "",
|
||||
"zh-CHT": "License Key",
|
||||
"en": "License Key",
|
||||
"ko": "라이선스 key",
|
||||
"ja": "ライセンスキーです",
|
||||
"de": "License Key",
|
||||
"fr": "License Key",
|
||||
"id": "License Key"
|
||||
}
|
||||
]
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "DooTask",
|
||||
"version": "0.32.65",
|
||||
"version": "0.33.58",
|
||||
"description": "DooTask is task management system.",
|
||||
"scripts": {
|
||||
"start": "./cmd dev",
|
||||
@ -47,7 +47,7 @@
|
||||
"photoswipe": "^5.2.8",
|
||||
"postcss": "^8.4.5",
|
||||
"quill": "^1.3.7",
|
||||
"quill-mention-hi": "^3.1.0-1",
|
||||
"quill-mention-hi": "^3.1.0-4",
|
||||
"resolve-url-loader": "^4.0.0",
|
||||
"sass": "~1.32.13",
|
||||
"sass-loader": "^12.6.0",
|
||||
|
||||
52
public/docs/assets/main.bundle.js
vendored
@ -1,22 +1,36 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<title>Loading...</title>
|
||||
<title>APP接口</title>
|
||||
<meta name="description" content="APP接口文档">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link href="vendor/bootstrap.min.css" rel="stylesheet" media="screen">
|
||||
<link href="vendor/prism.css" rel="stylesheet" />
|
||||
<link href="css/style.css" rel="stylesheet" media="screen, print">
|
||||
<link href="img/favicon.ico" rel="icon" type="image/x-icon">
|
||||
<script src="vendor/polyfill.js"></script>
|
||||
<link href="assets/bootstrap.min.css?v=1703484888256" rel="stylesheet" media="screen">
|
||||
<link href="assets/prism.css?v=1703484888256" rel="stylesheet" />
|
||||
<link href="assets/prism-toolbar.css?v=1703484888256" rel="stylesheet" />
|
||||
<link href="assets/prism-diff-highlight.css?v=1703484888256" rel="stylesheet" />
|
||||
<link href="assets/main.css?v=1703484888256" rel="stylesheet" media="screen, print">
|
||||
<link href="assets/favicon.ico?v=1703484888256" rel="icon" type="image/x-icon">
|
||||
<link href="assets/apple-touch-icon.png?v=1703484888256" rel="apple-touch-icon" sizes="180x180">
|
||||
<link href="assets/favicon-32x32.png?v=1703484888256" rel="icon" type="image/png" sizes="32x32">
|
||||
<link href="assets/favicon-16x16.png?v=1703484888256" rel="icon" type="image/png" sizes="16x16">
|
||||
</head>
|
||||
|
||||
<body class="container-fluid">
|
||||
|
||||
<!-- SIDENAV -->
|
||||
<script id="template-sidenav" type="text/x-handlebars-template">
|
||||
<nav id="scrollingNav">
|
||||
<nav id="scrollingNav" class="col-sm-3 col-lg-2 sidebar-offcanvas">
|
||||
<div class="nav-toggle visible-xs">
|
||||
<button type="button" class="btn btn-link" data-toggle="offcanvas">
|
||||
<span class="sr-only">{{__ "Toggle navigation"}}</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="sidenav-search">
|
||||
<input class="form-control search" type="text" placeholder="{{__ "Filter..."}}">
|
||||
<input class="form-control search" data-action='filter-search' type="text" placeholder="{{__ "Filter..."}}">
|
||||
<span class="search-reset">x</span>
|
||||
</div>
|
||||
<ul class="sidenav nav nav-list list">
|
||||
@ -39,6 +53,7 @@
|
||||
</nav>
|
||||
</script>
|
||||
|
||||
<!-- PROJECT -->
|
||||
<script id="template-project" type="text/x-handlebars-template">
|
||||
<div class="pull-left">
|
||||
<h1>{{name}}</h1>
|
||||
@ -70,7 +85,7 @@
|
||||
|
||||
<script id="template-header" type="text/x-handlebars-template">
|
||||
{{#if content}}
|
||||
<div id="api-_" class="show-api-article show-api-_-article">{{{content}}}</div>
|
||||
<div id="api-_header" class="show-api-article show-api-_-article">{{{content}}}</div>
|
||||
{{/if}}
|
||||
</script>
|
||||
|
||||
@ -83,8 +98,10 @@
|
||||
<script id="template-generator" type="text/x-handlebars-template">
|
||||
{{#if template.withGenerator}}
|
||||
{{#if generator}}
|
||||
<div class="content">
|
||||
{{__ "Generated with"}} <a href="{{{generator.url}}}">{{{generator.name}}}</a> {{{generator.version}}} - {{{generator.time}}}
|
||||
<div>
|
||||
<p class="text-muted">
|
||||
{{__ "Generated with"}} <a href="{{{generator.url}}}">{{{generator.name}}}</a> {{{generator.version}}} - {{{generator.time}}}
|
||||
</p>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
@ -92,7 +109,7 @@
|
||||
|
||||
<script id="template-sections" type="text/x-handlebars-template">
|
||||
<section id="api-{{group}}" class="show-api-group show-api-{{group}}-group {{#if aloneDisplay}} hide{{/if}}">
|
||||
<h1>{{underscoreToSpace title}}</h1>
|
||||
<h1 class="color-primary font-weight-bold">{{underscoreToSpace title}}</h1>
|
||||
{{#if description}}
|
||||
<p>{{{nl2br description}}}</p>
|
||||
{{/if}}
|
||||
@ -107,7 +124,7 @@
|
||||
<script id="template-article" type="text/x-handlebars-template">
|
||||
<article id="api-{{article.group}}-{{article.name}}-{{article.version}}" {{#if hidden}}class="hide"{{/if}} data-group="{{article.group}}" data-name="{{article.name}}" data-version="{{article.version}}">
|
||||
<div class="pull-left">
|
||||
<h1>{{underscoreToSpace article.groupTitle}}{{#if article.title}} - {{article.title}}{{/if}}</h1>
|
||||
<h1><span class="color-primary">{{underscoreToSpace article.groupTitle}}</span>{{#if article.title}} <span class="text-muted">|</span> {{article.title}}{{/if}}</h1>
|
||||
</div>
|
||||
{{#if template.withCompare}}
|
||||
<div class="pull-right">
|
||||
@ -137,8 +154,13 @@
|
||||
{{#if article.description}}
|
||||
<p>{{{nl2br article.description}}}</p>
|
||||
{{/if}}
|
||||
<span class="type type__{{toLowerCase article.type}}">{{toLowerCase article.type}}</span>
|
||||
<pre data-type="{{toLowerCase article.type}}"><code class="language-http">{{article.url}}</code></pre>
|
||||
<span class="method meth-{{toLowerCase article.type}}">{{article.type}}</span>
|
||||
<pre
|
||||
data-type="{{toLowerCase article.type}}"
|
||||
data-prismjs-copy="{{__ "Copy"}}"
|
||||
data-prismjs-copy-error="{{__ "Press Ctrl+C to copy"}}"
|
||||
data-prismjs-copy-success="{{__ "copied!"}}"
|
||||
><code class="language-http">{{article.url}}</code></pre>
|
||||
|
||||
{{#if article.permission}}
|
||||
<p>
|
||||
@ -155,26 +177,33 @@
|
||||
{{/if}}
|
||||
|
||||
{{!-- CODE EXAMPLES IN TABS --}}
|
||||
{{#if_gt article.examples.length compare=0}}
|
||||
<ul class="nav nav-tabs nav-tabs-examples">
|
||||
{{#ifCond article.examples.length '>' 0}}
|
||||
<ul class="nav nav-tabs nav-tabs-examples" role="tablist">
|
||||
{{#each article.examples}}
|
||||
<li{{#if_eq @index compare=0}} class="active"{{/if_eq}}>
|
||||
<a href="#examples-{{../id}}-{{@index}}">{{title}}</a>
|
||||
<li{{#ifCond @index '==' 0}} class="active"{{/ifCond}}>
|
||||
<a href="#examples-{{../id}}-{{@index}}" role="tab" data-toggle="tab">{{title}}</a>
|
||||
</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
|
||||
<div class="tab-content">
|
||||
{{#each article.examples}}
|
||||
<div class="tab-pane{{#if_eq @index compare=0}} active{{/if_eq}}" id="examples-{{../id}}-{{@index}}">
|
||||
<pre data-type="{{type}}"><code class="language-{{type}}">{{content}}</code></pre>
|
||||
<div class="tab-pane{{#ifCond @index '==' 0}} active{{/ifCond}}" id="examples-{{../id}}-{{@index}}">
|
||||
<pre
|
||||
data-type="{{type}}"
|
||||
data-prismjs-copy="{{__ "Copy"}}"
|
||||
data-prismjs-copy-error="{{__ "Press Ctrl+C to copy"}}"
|
||||
data-prismjs-copy-success="{{__ "copied!"}}"
|
||||
><code class="language-{{type}}">{{content}}</code></pre>
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
{{/if_gt}}
|
||||
{{/ifCond}}
|
||||
|
||||
{{subTemplate "article-param-block" params=article.header _hasType=_hasTypeInHeaderFields section="header"}}
|
||||
{{subTemplate "article-param-block" params=article.parameter _hasType=_hasTypeInParameterFields section="parameter"}}
|
||||
{{subTemplate "article-query-block" params=article.query _hasType=_hasTypeInParameterFields section="query"}}
|
||||
{{subTemplate "article-body-block" params=article.body _hasType=_hasTypeInParameterFields section="body"}}
|
||||
{{subTemplate "article-param-block" params=article.success _hasType=_hasTypeInSuccessFields section="success"}}
|
||||
{{subTemplate "article-param-block" params=article.error _col1="Name" _hasType=_hasTypeInErrorFields section="error"}}
|
||||
|
||||
@ -182,6 +211,104 @@
|
||||
</article>
|
||||
</script>
|
||||
|
||||
<script id="template-article-query-block" type="text/x-handlebars-template">
|
||||
{{#if article.query}}
|
||||
<h2>{{__ "Query Parameter(s)"}}</h2>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="width: 30%">{{#if ../_col1}}{{__ ../_col1}}{{else}}{{__ "Field"}}{{/if}}</th>
|
||||
{{#unless this.Type compare=null}}
|
||||
<th style="width: 10%">{{__ "Type"}}</th>
|
||||
{{/unless}}
|
||||
<th style="width: {{#if ../_hasType}}60%{{else}}70%{{/if}}">{{__ "Description"}}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{#each params}}
|
||||
<tr>
|
||||
<td class="code">
|
||||
{{{nestObject this}}}
|
||||
{{#if this.optional}}
|
||||
<span class="label optional">{{__ "optional"}}</span>
|
||||
{{else}}
|
||||
{{#if ../template.showRequiredLabels}}
|
||||
<span class="label required">{{__ "required"}}</span>
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
</td>
|
||||
{{#unless this.Type compare=null}}
|
||||
<td class="code">{{this.type}}</td>
|
||||
{{/unless}}
|
||||
<td>{{{nl2br this.description}}}
|
||||
{{#if defaultValue}}<p class="default-value">{{__ "Default value:"}} <code>{{{defaultValue}}}</code></p>{{/if}}
|
||||
{{#if size}}<p class="type-size">{{__ "Size range:"}} <code>{{{size}}}</code></p>{{/if}}
|
||||
{{#if allowedValues}}<p class="type-size">{{__ "Allowed values:"}}
|
||||
{{#each allowedValues}}
|
||||
<code>{{{this}}}</code>{{#unless @last}}, {{/unless}}
|
||||
{{/each}}
|
||||
</p>
|
||||
{{/if}}
|
||||
</td>
|
||||
</tr>
|
||||
{{/each}}
|
||||
</tbody>
|
||||
</table>
|
||||
{{/if}}
|
||||
</script>
|
||||
|
||||
<script id="template-article-body-block" type="text/x-handlebars-template">
|
||||
{{#if article.body}}
|
||||
<h2>{{__ "Request Body"}}</h2>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="width: 30%">{{#if ../_col1}}{{__ ../_col1}}{{else}}{{__ "Field"}}{{/if}}</th>
|
||||
{{#unless this.Type compare=null}}
|
||||
<th style="width: 10%">{{__ "Type"}}</th>
|
||||
{{/unless}}
|
||||
<th style="width: {{#if ../_hasType}}60%{{else}}70%{{/if}}">{{__ "Description"}}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{#each params}}
|
||||
<tr>
|
||||
<td class="code">
|
||||
{{{nestObject this}}}
|
||||
{{#if this.optional}}
|
||||
<span class="label optional">{{__ "optional"}}</span>
|
||||
{{else}}
|
||||
{{#if ../template.showRequiredLabels}}
|
||||
<span class="label required">{{__ "required"}}</span>
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
</td>
|
||||
{{#unless this.Type compare=null}}
|
||||
<td class="code">{{this.type}}</td>
|
||||
{{/unless}}
|
||||
<td>
|
||||
{{{nl2br this.description}}}
|
||||
{{#if defaultValue}}
|
||||
<p class="default-value">{{__ "Default value:"}} <code>{{{defaultValue}}}</code></p>
|
||||
{{/if}}
|
||||
{{#if size}}
|
||||
<p class="type-size">{{__ "Size range:"}} <code>{{{size}}}</code></p>
|
||||
{{/if}}
|
||||
{{#if allowedValues}}
|
||||
<p class="type-size">{{__ "Allowed values:"}}
|
||||
{{#each allowedValues}}
|
||||
<code>{{{this}}}</code>{{#unless @last}}, {{/unless}}
|
||||
{{/each}}
|
||||
</p>
|
||||
{{/if}}
|
||||
</td>
|
||||
</tr>
|
||||
{{/each}}
|
||||
</tbody>
|
||||
</table>
|
||||
{{/if}}
|
||||
</script>
|
||||
|
||||
<script id="template-article-param-block" type="text/x-handlebars-template">
|
||||
{{#if params}}
|
||||
{{#each params.fields}}
|
||||
@ -197,9 +324,17 @@
|
||||
<tbody>
|
||||
{{#each this}}
|
||||
<tr>
|
||||
<td class="code">{{{splitFill field "." " "}}}{{#if optional}} <span class="label label-optional">{{__ "optional"}}</span>{{/if}}</td>
|
||||
<td class="code">
|
||||
{{{nestObject this}}}
|
||||
{{#if optional}}
|
||||
<span class="label optional">{{__ "optional"}}</span>
|
||||
{{else}}
|
||||
{{#if ../../template.showRequiredLabels}}
|
||||
<span class="label required">{{__ "required"}}</span>
|
||||
{{/if}}
|
||||
{{/if}}</td>
|
||||
{{#if ../../_hasType}}
|
||||
<td>
|
||||
<td class="code">
|
||||
{{{type}}}
|
||||
</td>
|
||||
{{/if}}
|
||||
@ -219,51 +354,62 @@
|
||||
</tbody>
|
||||
</table>
|
||||
{{/each}}
|
||||
{{#if_gt params.examples.length compare=0}}
|
||||
<ul class="nav nav-tabs nav-tabs-examples">
|
||||
{{#ifCond params.examples.length '>' 0}}
|
||||
<ul class="nav nav-tabs nav-tabs-examples" role="tablist">
|
||||
{{#each params.examples}}
|
||||
<li{{#if_eq @index compare=0}} class="active"{{/if_eq}}>
|
||||
<a href="#{{../section}}-examples-{{../id}}-{{@index}}">{{title}}</a>
|
||||
<li{{#ifCond @index '==' 0}} class="active"{{/ifCond}}>
|
||||
<a href="#{{../section}}-examples-{{../id}}-{{@index}}" role="tab" data-toggle="tab">{{title}}</a>
|
||||
</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
|
||||
<div class="tab-content">
|
||||
{{#each params.examples}}
|
||||
<div class="tab-pane{{#if_eq @index compare=0}} active{{/if_eq}}" id="{{../section}}-examples-{{../id}}-{{@index}}">
|
||||
<pre data-type="{{type}}"><code class="language-{{type}}">{{reformat content type}}</code></pre>
|
||||
<div class="tab-pane{{#ifCond @index '==' 0}} active{{/ifCond}}" id="{{../section}}-examples-{{../id}}-{{@index}}">
|
||||
<pre
|
||||
data-type="{{type}}"
|
||||
data-prismjs-copy="{{__ "Copy"}}"
|
||||
data-prismjs-copy-error="{{__ "Press Ctrl+C to copy"}}"
|
||||
data-prismjs-copy-success="{{__ "copied!"}}"
|
||||
><code class="language-{{type}}">{{reformat content type}}</code></pre>
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
{{/if_gt}}
|
||||
{{/ifCond}}
|
||||
{{/if}}
|
||||
</script>
|
||||
|
||||
<script id="template-article-sample-request" type="text/x-handlebars-template">
|
||||
{{#if article.sampleRequest}}
|
||||
<h2>{{__ "Send a Sample Request"}}</h2>
|
||||
{{#if article.sampleRequest}}
|
||||
<div class="well">
|
||||
<h3>{{__ "Send a Sample Request"}}</h3>
|
||||
<form class="form-horizontal">
|
||||
<fieldset>
|
||||
<div class="form-group">
|
||||
<label class="col-md-3 control-label" for="{{../id}}-sample-request-url"></label>
|
||||
<div class="input-group">
|
||||
<input id="{{../id}}-sample-request-url" type="text" class="form-control sample-request-url" value="{{article.sampleRequest.0.url}}" />
|
||||
<span class="input-group-addon">{{__ "url"}}</span>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-md-3 control-label" for="{{../id}}-sample-request-url">URL</label>
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon">{{__ "url"}}</span>
|
||||
<input id="{{../id}}-sample-request-url" type="url" class="form-control sample-request-url" value="{{article.sampleRequest.0.url}}" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{#if article.header}}
|
||||
{{#if article.header.fields}}
|
||||
<h3>{{__ "Headers"}}</h3>
|
||||
{{#each article.header.fields}}
|
||||
<h4><input type="checkbox" data-sample-request-header-group-id="sample-request-header-{{@index}}" name="{{../id}}-sample-request-header" value="{{@index}}" class="sample-request-header sample-request-switch" checked />{{__ @key}}</h4>
|
||||
<div class="{{../id}}-sample-request-header-fields">
|
||||
{{#each this}}
|
||||
<div class="form-group">
|
||||
<label class="col-md-3 control-label" for="sample-request-header-field-{{field}}">{{field}}</label>
|
||||
<div class="input-group">
|
||||
<input type="text" placeholder="{{field}}" value="{{defaultValue}}" id="sample-request-header-field-{{field}}" class="form-control sample-request-header" data-sample-request-header-name="{{field}}" data-sample-request-header-group="sample-request-header-{{@../index}}">
|
||||
<span class="input-group-addon">{{{type}}}</span>
|
||||
<input type="text" id="sample-request-header-field-{{field}}"
|
||||
class="form-control sample-request-input"
|
||||
value="{{#if defaultValue}}{{ defaultValue }}{{/if}}"
|
||||
placeholder="{{#if defaultValue}}{{ defaultValue }}{{else}}{{field}}{{/if}}"
|
||||
data-family="header"
|
||||
data-name="{{field}}"
|
||||
data-group="{{@../index}}">
|
||||
</div>
|
||||
</div>
|
||||
{{/each}}
|
||||
@ -276,29 +422,54 @@
|
||||
{{#if article.parameter.fields}}
|
||||
<h3>{{__ "Parameters"}}</h3>
|
||||
{{#each article.parameter.fields}}
|
||||
<h4><input type="checkbox" data-sample-request-param-group-id="sample-request-param-{{@index}}" name="{{../id}}-sample-request-param" value="{{@index}}" class="sample-request-param sample-request-switch" checked/>{{__ @key}}
|
||||
<div class="col-md-3">
|
||||
<select name="{{../id}}-sample-header-content-type" class="{{../id}}-sample-request-param-select sample-header-content-type sample-header-content-type-switch">
|
||||
<option value="undefined" selected>ajax-auto</option>
|
||||
<option value="body-json" >body/json</option>
|
||||
<option value="body-form-data" >body/form-data</option>
|
||||
<option value="auto" selected>ajax-auto</option>
|
||||
<option value="json" >json</option>
|
||||
<option value="form-data" >form-data</option>
|
||||
</select>
|
||||
</h4>
|
||||
</div>
|
||||
|
||||
<div class="{{../id}}-sample-request-param-body {{../id}}-sample-header-content-type-body hide">
|
||||
<div class="form-group">
|
||||
<div class="input-group">
|
||||
<textarea id="sample-request-body-json" class="form-control sample-request-body" data-sample-request-body-group="sample-request-param-{{@./index}}" rows="6" style="OVERFLOW: visible" {{#if optional}}data-sample-request-param-optional="true"{{/if}}></textarea>
|
||||
<div class="input-group-addon">json</div>
|
||||
<textarea id="sample-request-body-json" class="form-control sample-request-body" data-sample-request-body-group="sample-request-param-{{@./index}}" rows="6" style="OVERFLOW: visible" {{#if optional}}data-sample-request-param-optional="true"{{/if}}></textarea>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="{{../id}}-sample-request-param-fields {{../id}}-sample-header-content-type-fields">
|
||||
{{#each this}}
|
||||
<div class="form-group">
|
||||
{{#ifNotObject type}}
|
||||
<label class="col-md-3 control-label" for="sample-request-param-field-{{field}}">{{field}}</label>
|
||||
<div class="input-group">
|
||||
<input id="sample-request-param-field-{{field}}" type="{{setInputType type}}" placeholder="{{field}}" class="form-control sample-request-param" data-sample-request-param-name="{{field}}" data-sample-request-param-group="sample-request-param-{{@../index}}" {{#if optional}}data-sample-request-param-optional="true"{{/if}}>
|
||||
<div class="input-group-addon">{{{type}}}</div>
|
||||
{{#if allowedValues}}
|
||||
<div class="input-group-addon sample-request-select">
|
||||
<select class="form-control" data-name="{{dot2bracket this}}" data-family="query" data-group="{{@../index}}" {{#if optional}}data-optional="true"{{/if}}>
|
||||
<option value="" class="empty"><{{__ "No value"}}></option>
|
||||
{{#each allowedValues}}
|
||||
<option {{#ifCond ../defaultValue '===' this}} selected {{/ifCond}}value="{{{removeDblQuotes this}}}">{{{removeDblQuotes this}}}</option>
|
||||
{{/each}}
|
||||
</select>
|
||||
</div>
|
||||
<input class="invisible">
|
||||
{{else}}
|
||||
<div class="sample-request-input-{{type}}-container"><div>
|
||||
<input id="sample-request-param-field-{{field}}"
|
||||
class="{{#ifCond type '!==' 'Boolean'}}form-control{{/ifCond}} sample-request-param"
|
||||
type="{{setInputType type}}"
|
||||
value="{{#if defaultValue}}{{ defaultValue }}{{/if}}"
|
||||
placeholder="{{#if defaultValue}}{{ defaultValue }}{{/if}}"
|
||||
data-name="{{dot2bracket this}}"
|
||||
data-family="query"
|
||||
data-group="{{@../index}}"
|
||||
{{#if optional}}data-optional="true"{{/if}}>
|
||||
</div></div>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/ifNotObject}}
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
@ -306,27 +477,135 @@
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
|
||||
{{#if article.query}}
|
||||
<h3>{{__ "Query Parameters"}}</h3>
|
||||
<div class="{{../id}}-sample-request-param-fields {{../id}}-sample-header-content-type-fields">
|
||||
{{#each article.query}}
|
||||
<div class="form-group">
|
||||
{{#ifNotObject type}}
|
||||
<label class="col-md-3 control-label" for="sample-request-param-field-{{field}}">{{field}}{{#if optional}} ({{__ "optional"}}){{/if}}</label>
|
||||
<div class="input-group col-md-6">
|
||||
<div class="input-group-addon">{{{type}}}</div>
|
||||
{{#if allowedValues}}
|
||||
<div class="input-group-addon sample-request-select">
|
||||
<select class="form-control" data-name="{{dot2bracket this}}" data-family="query" data-group="{{@../index}}" {{#if optional}}data-optional="true"{{/if}}>
|
||||
<option value="" class="empty"><{{__ "No value"}}></option>
|
||||
{{#each allowedValues}}
|
||||
<option {{#ifCond ../defaultValue '===' this}} selected {{/ifCond}}value="{{{removeDblQuotes this}}}">{{{removeDblQuotes this}}}</option>
|
||||
{{/each}}
|
||||
</select>
|
||||
</div>
|
||||
<input class="invisible">
|
||||
{{else}}
|
||||
<div class="sample-request-input-{{type}}-container"><div>
|
||||
<input id="sample-request-param-field-{{field}}"
|
||||
class="{{#ifCond type '!==' 'Boolean'}}form-control{{/ifCond}} sample-request-input"
|
||||
type="{{setInputType type}}"
|
||||
value="{{#if defaultValue}}{{ defaultValue }}{{/if}}"
|
||||
placeholder="{{#if defaultValue}}{{ defaultValue }}{{/if}}"
|
||||
data-name="{{dot2bracket this}}"
|
||||
data-family="query"
|
||||
data-group="{{@../index}}"
|
||||
{{#if optional}}data-optional="true"{{/if}}>
|
||||
</div></div>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/ifNotObject}}
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if article.body}}
|
||||
<h3>{{__ "Body"}}</h3>
|
||||
|
||||
<div class="col-md-3">
|
||||
<label for="body-content-type-{{this.id}}">{{__ "Content-Type"}}</label>
|
||||
<select id="body-content-type-{{this.id}}" data-id="{{this.id}}" class="sample-request-content-type-switch form-control">
|
||||
<option value="body-json" selected>json</option>
|
||||
<option value="body-form-data">form-data</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-md-9" id="sample-request-body-json-input-{{this.id}}">
|
||||
<div class="form-group">
|
||||
<div class="controls pull-right">
|
||||
<button class="btn btn-primary sample-request-send" data-sample-request-type="{{article.type}}">{{__ "Send"}}</button>
|
||||
<div class="input-group">
|
||||
<div class="input-group-addon">json</div>
|
||||
<textarea class="form-control sample-request-input" rows="6"
|
||||
data-family="body-json"
|
||||
data-name={{"body"}}
|
||||
data-content-type="json"
|
||||
{{#if optional}}data-optional="true"{{/if}}>{{body2json article.body}}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group sample-request-response" style="display: none;">
|
||||
</div>
|
||||
|
||||
<div hidden class="col-md-9" id="sample-request-body-form-input-{{this.id}}">
|
||||
{{#each article.body}}
|
||||
<div class="form-group">
|
||||
{{#ifNotObject type}}
|
||||
<label class="col-md-3 control-label" for="sample-request-param-field-{{field}}">{{field}}</label>
|
||||
<div class="input-group">
|
||||
<div class="input-group-addon">{{{type}}}</div>
|
||||
{{#if allowedValues}}
|
||||
<div class="input-group-addon sample-request-select">
|
||||
<select class="form-control" data-name="{{dot2bracket this}}" data-family="body" data-group="{{@../index}}" {{#if optional}}data-optional="true"{{/if}}>
|
||||
<option value="" class="empty"><{{__ "No value"}}></option>
|
||||
{{#each allowedValues}}
|
||||
<option {{#ifCond ../defaultValue '===' this}} selected {{/ifCond}}value="{{{removeDblQuotes this}}}">{{{removeDblQuotes this}}}</option>
|
||||
{{/each}}
|
||||
</select>
|
||||
</div>
|
||||
<input class="invisible">
|
||||
{{else}}
|
||||
<div class="sample-request-input-{{type}}-container"><div>
|
||||
<input id="sample-request-param-field-{{field}}"
|
||||
class="{{#ifCond type '!==' 'Boolean'}}form-control{{/ifCond}} sample-request-input"
|
||||
type="{{setInputType type}}"
|
||||
value="{{#ifCond type '!==' 'Boolean'}}{{#if defaultValue}}{{ defaultValue }}{{/if}}{{/ifCond}}"
|
||||
{{#if checked}}checked{{/if}}
|
||||
placeholder="{{#if defaultValue}}{{ defaultValue }}{{/if}}"
|
||||
data-family="body"
|
||||
data-name="{{dot2bracket this}}"
|
||||
data-content-type="form"
|
||||
{{#if optional}}data-optional="true"{{/if}}>
|
||||
</div></div>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/ifNotObject}}
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
<div class="form-group">
|
||||
<div class="controls pull-right">
|
||||
<button class="btn btn-primary bg-primary sample-request-send" data-type="{{article.type}}">{{__ "Send"}}</button>
|
||||
<button class="btn btn-danger bg-red sample-request-clear" data-type="{{article.type}}">{{__ "Reset"}}</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group sample-request-response" hidden>
|
||||
<h3>
|
||||
{{__ "Response"}}
|
||||
<button class="btn btn-default btn-xs pull-right sample-request-clear">X</button>
|
||||
</h3>
|
||||
<pre data-type="json"><code class="language-json sample-request-response-json"></code></pre>
|
||||
<pre
|
||||
data-type="json"
|
||||
data-prismjs-copy="{{__ "Copy"}}"
|
||||
data-prismjs-copy-error="{{__ "Press Ctrl+C to copy"}}"
|
||||
data-prismjs-copy-success="{{__ "copied!"}}"
|
||||
><code class="language-json sample-request-response-json"></code></pre>
|
||||
</div>
|
||||
</fieldset>
|
||||
</form>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/if}}
|
||||
</script>
|
||||
|
||||
<script id="template-compare-article" type="text/x-handlebars-template">
|
||||
<article id="api-{{article.group}}-{{article.name}}-{{article.version}}" {{#if hidden}}class="hide"{{/if}} data-group="{{article.group}}" data-name="{{article.name}}" data-version="{{article.version}}" data-compare-version="{{compare.version}}">
|
||||
<div class="pull-left">
|
||||
<h1>{{underscoreToSpace article.group}} - {{{showDiff article.title compare.title}}}</h1>
|
||||
<h1>{{underscoreToSpace article.groupTitle}} | {{{showDiff article.title compare.title}}}</h1>
|
||||
</div>
|
||||
|
||||
<div class="pull-right">
|
||||
@ -356,27 +635,34 @@
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
|
||||
<pre data-type="{{toLowerCase article.type}}"><code class="language-html">{{{showDiff article.url compare.url}}}</code></pre>
|
||||
<span class="method meth-{{toLowerCase compare.type}}">{{compare.type}}</span>
|
||||
<pre
|
||||
data-type="{{toLowerCase article.type}}"
|
||||
data-prismjs-copy="{{__ "Copy"}}"
|
||||
data-prismjs-copy-error="{{__ "Press Ctrl+C to copy"}}"
|
||||
data-prismjs-copy-success="{{__ "copied!"}}"
|
||||
class="language-html"
|
||||
>{{{showDiff article.url compare.url}}}</pre>
|
||||
|
||||
{{subTemplate "article-compare-permission" article=article compare=compare}}
|
||||
|
||||
<ul class="nav nav-tabs nav-tabs-examples">
|
||||
<ul class="nav nav-tabs nav-tabs-examples" role="tablist">
|
||||
{{#each_compare_title article.examples compare.examples}}
|
||||
{{#if typeSame}}
|
||||
<li{{#if_eq index compare=0}} class="active"{{/if_eq}}>
|
||||
<a href="#compare-examples-{{../../article.id}}-{{index}}">{{{showDiff source.title compare.title}}}</a>
|
||||
<li{{#ifCond index '==' 0}} class="active"{{/ifCond}}>
|
||||
<a href="#compare-examples-{{../article.id}}-{{index}}" role="tab" data-toggle="tab">{{{showDiff source.title compare.title}}}</a>
|
||||
</li>
|
||||
{{/if}}
|
||||
|
||||
{{#if typeIns}}
|
||||
<li{{#if_eq index compare=0}} class="active"{{/if_eq}}>
|
||||
<a href="#compare-examples-{{../../article.id}}-{{index}}"><ins>{{{source.title}}}</ins></a>
|
||||
<li{{#ifCond index '==' 0}} class="active"{{/ifCond}}>
|
||||
<a href="#compare-examples-{{../article.id}}-{{index}}"><ins>{{{source.title}}}</ins></a>
|
||||
</li>
|
||||
{{/if}}
|
||||
|
||||
{{#if typeDel}}
|
||||
<li{{#if_eq index compare=0}} class="active"{{/if_eq}}>
|
||||
<a href="#compare-examples-{{../../article.id}}-{{index}}"><del>{{{compare.title}}}</del></a>
|
||||
<li{{#ifCond index '==' 0}} class="active"{{/ifCond}}>
|
||||
<a href="#compare-examples-{{../article.id}}-{{index}}"><del>{{{compare.title}}}</del></a>
|
||||
</li>
|
||||
{{/if}}
|
||||
{{/each_compare_title}}
|
||||
@ -386,27 +672,45 @@
|
||||
{{#each_compare_title article.examples compare.examples}}
|
||||
|
||||
{{#if typeSame}}
|
||||
<div class="tab-pane{{#if_eq index compare=0}} active{{/if_eq}}" id="compare-examples-{{../../article.id}}-{{index}}">
|
||||
<pre data-type="{{source.type}}"><code class="language-{{source.type}}">{{{showDiff source.content compare.content}}}</code></pre>
|
||||
<div class="tab-pane{{#ifCond index '==' 0}} active{{/ifCond}}" id="compare-examples-{{../article.id}}-{{index}}">
|
||||
<pre
|
||||
data-type="{{source.type}}"
|
||||
data-prismjs-copy="{{__ "Copy"}}"
|
||||
data-prismjs-copy-error="{{__ "Press Ctrl+C to copy"}}"
|
||||
data-prismjs-copy-success="{{__ "copied!"}}"
|
||||
><code class="language-diff-{{source.type}} diff-highlight">{{{showDiff source.content compare.content "code"}}}</code></pre>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if typeIns}}
|
||||
<div class="tab-pane{{#if_eq index compare=0}} active{{/if_eq}}" id="compare-examples-{{../../article.id}}-{{index}}">
|
||||
<pre data-type="{{source.type}}"><code class="language-{{source.type}}">{{{source.content}}}</code></pre>
|
||||
<div class="tab-pane{{#ifCond index '==' 0}} active{{/ifCond}}" id="compare-examples-{{../article.id}}-{{index}}">
|
||||
<pre
|
||||
data-type="{{source.type}}"
|
||||
data-prismjs-copy="{{__ "Copy"}}"
|
||||
data-prismjs-copy-error="{{__ "Press Ctrl+C to copy"}}"
|
||||
data-prismjs-copy-success="{{__ "copied!"}}"
|
||||
><code class="language-{{source.type}}">{{{source.content}}}</code></pre>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if typeDel}}
|
||||
<div class="tab-pane{{#if_eq index compare=0}} active{{/if_eq}}" id="compare-examples-{{../../article.id}}-{{index}}">
|
||||
<pre data-type="{{compare.type}}"><code class="language-{{source.type}}">{{{compare.content}}}</code></pre>
|
||||
<div class="tab-pane{{#ifCond index '==' 0}} active{{/ifCond}}" id="compare-examples-{{../article.id}}-{{index}}">
|
||||
<pre
|
||||
data-type="{{compare.type}}"
|
||||
data-prismjs-copy="{{__ "Copy"}}"
|
||||
data-prismjs-copy-error="{{__ "Press Ctrl+C to copy"}}"
|
||||
data-prismjs-copy-success="{{__ "copied!"}}"
|
||||
><code class="language-{{source.type}}">{{{compare.content}}}</code></pre>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{/each_compare_title}}
|
||||
</div>
|
||||
|
||||
{{subTemplate "article-compare-param-block" source=article.header compare=compare.header _hasType=_hasTypeInHeaderFields section="header"}}
|
||||
{{subTemplate "article-compare-param-block" source=article.parameter compare=compare.parameter _hasType=_hasTypeInParameterFields section="parameter"}}
|
||||
{{subTemplate "article-compare-query-block" source=article.query compare=compare.query _hasType=_hasTypeInParameterFields section="query"}}
|
||||
{{subTemplate "article-compare-body-block" source=article.body compare=compare.body _hasType=_hasTypeInParameterFields section="body"}}
|
||||
{{subTemplate "article-compare-param-block" source=article.success compare=compare.success _hasType=_hasTypeInSuccessFields section="success"}}
|
||||
{{subTemplate "article-compare-param-block" source=article.error compare=compare.error _col1="Name" _hasType=_hasTypeInErrorFields section="error"}}
|
||||
|
||||
@ -531,23 +835,23 @@
|
||||
{{/each_compare_keys}}
|
||||
|
||||
{{#if source.examples}}
|
||||
<ul class="nav nav-tabs nav-tabs-examples">
|
||||
<ul class="nav nav-tabs nav-tabs-examples" role="tablist">
|
||||
{{#each_compare_title source.examples compare.examples}}
|
||||
{{#if typeSame}}
|
||||
<li{{#if_eq index compare=0}} class="active"{{/if_eq}}>
|
||||
<a href="#{{../../section}}-compare-examples-{{../../article.id}}-{{index}}">{{{showDiff source.title compare.title}}}</a>
|
||||
<li{{#ifCond index '==' 0}} class="active"{{/ifCond}}>
|
||||
<a href="#{{../section}}-compare-examples-{{../article.id}}-{{index}}" role="tab" data-toggle="tab">{{{showDiff source.title compare.title}}}</a>
|
||||
</li>
|
||||
{{/if}}
|
||||
|
||||
{{#if typeIns}}
|
||||
<li{{#if_eq index compare=0}} class="active"{{/if_eq}}>
|
||||
<a href="#{{../../section}}-compare-examples-{{../../article.id}}-{{index}}"><ins>{{{source.title}}}</ins></a>
|
||||
<li{{#ifCond index '==' 0}} class="active"{{/ifCond}}>
|
||||
<a href="#{{../section}}-compare-examples-{{../article.id}}-{{index}}"><ins>{{{source.title}}}</ins></a>
|
||||
</li>
|
||||
{{/if}}
|
||||
|
||||
{{#if typeDel}}
|
||||
<li{{#if_eq index compare=0}} class="active"{{/if_eq}}>
|
||||
<a href="#{{../../section}}-compare-examples-{{../../article.id}}-{{index}}"><del>{{{compare.title}}}</del></a>
|
||||
<li{{#ifCond index '==' 0}} class="active"{{/ifCond}}>
|
||||
<a href="#{{../section}}-compare-examples-{{../article.id}}-{{index}}"><del>{{{compare.title}}}</del></a>
|
||||
</li>
|
||||
{{/if}}
|
||||
{{/each_compare_title}}
|
||||
@ -557,20 +861,35 @@
|
||||
{{#each_compare_title source.examples compare.examples}}
|
||||
|
||||
{{#if typeSame}}
|
||||
<div class="tab-pane{{#if_eq index compare=0}} active{{/if_eq}}" id="{{../../section}}-compare-examples-{{../../article.id}}-{{index}}">
|
||||
<pre data-type="{{source.type}}"><code class="language-{{source.type}}">{{{showDiff source.content compare.content}}}</code></pre>
|
||||
<div class="tab-pane{{#ifCond index '==' 0}} active{{/ifCond}}" id="{{../section}}-compare-examples-{{../article.id}}-{{index}}">
|
||||
<pre
|
||||
data-type="{{source.type}}"
|
||||
data-prismjs-copy="{{__ "Copy"}}"
|
||||
data-prismjs-copy-error="{{__ "Press Ctrl+C to copy"}}"
|
||||
data-prismjs-copy-success="{{__ "copied!"}}"
|
||||
><code class="language-diff-{{source.type}} diff-highlight">{{{showDiff source.content compare.content "code"}}}</code></pre>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if typeIns}}
|
||||
<div class="tab-pane{{#if_eq index compare=0}} active{{/if_eq}}" id="{{../../section}}-compare-examples-{{../../article.id}}-{{index}}">
|
||||
<pre data-type="{{source.type}}"><code class="language-{{source.type}}">{{{source.content}}}</code></pre>
|
||||
<div class="tab-pane{{#ifCond index '==' 0}} active{{/ifCond}}" id="{{../section}}-compare-examples-{{../article.id}}-{{index}}">
|
||||
<pre
|
||||
data-type="{{source.type}}"
|
||||
data-prismjs-copy="{{__ "Copy"}}"
|
||||
data-prismjs-copy-error="{{__ "Press Ctrl+C to copy"}}"
|
||||
data-prismjs-copy-success="{{__ "copied!"}}"
|
||||
><code class="language-{{source.type}}">{{{source.content}}}</code></pre>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if typeDel}}
|
||||
<div class="tab-pane{{#if_eq index compare=0}} active{{/if_eq}}" id="{{../../section}}-compare-examples-{{../../article.id}}-{{index}}">
|
||||
<pre data-type="{{compare.type}}"><code class="language-{{source.type}}">{{{compare.content}}}</code></pre>
|
||||
<div class="tab-pane{{#ifCond index '==' 0}} active{{/ifCond}}" id="{{../section}}-compare-examples-{{../article.id}}-{{index}}">
|
||||
<pre
|
||||
data-type="{{compare.type}}"
|
||||
data-prismjs-copy="{{__ "Copy"}}"
|
||||
data-prismjs-copy-error="{{__ "Press Ctrl+C to copy"}}"
|
||||
data-prismjs-copy-success="{{__ "copied!"}}"
|
||||
><code class="language-{{source.type}}">{{{compare.content}}}</code></pre>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{/each_compare_title}}
|
||||
@ -579,13 +898,49 @@
|
||||
{{/if}}
|
||||
</script>
|
||||
|
||||
<script id="template-article-compare-query-block" type="text/x-handlebars-template">
|
||||
{{#if article.query}}
|
||||
<h2>{{__ "Query Parameter(s)"}}</h2>
|
||||
<table class="table table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="width: 30%">{{#if ../_col1}}{{__ ../_col1}}{{else}}{{__ "Field"}}{{/if}}</th>
|
||||
{{#unless this.Type compare=null}}
|
||||
<th style="width: 10%">{{__ "Type"}}</th>
|
||||
{{/unless}}
|
||||
<th style="width: {{#if ../_hasType}}60%{{else}}70%{{/if}}">{{__ "Description"}}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
{{subTemplate "article-compare-param-block-body" source=source compare=compare _hasType=this.type}}
|
||||
</table>
|
||||
{{/if}}
|
||||
</script>
|
||||
|
||||
<script id="template-article-compare-body-block" type="text/x-handlebars-template">
|
||||
{{#if article.body}}
|
||||
<h2>{{__ "Request Body"}}</h2>
|
||||
<table class="table table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="width: 30%">{{#if ../_col1}}{{__ ../_col1}}{{else}}{{__ "Field"}}{{/if}}</th>
|
||||
{{#unless this.Type compare=null}}
|
||||
<th style="width: 10%">{{__ "Type"}}</th>
|
||||
{{/unless}}
|
||||
<th style="width: {{#if ../_hasType}}60%{{else}}70%{{/if}}">{{__ "Description"}}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
{{subTemplate "article-compare-param-block-body" source=source compare=compare _hasType=this.type}}
|
||||
</table>
|
||||
{{/if}}
|
||||
</script>
|
||||
|
||||
<script id="template-article-compare-param-block-body" type="text/x-handlebars-template">
|
||||
<tbody>
|
||||
{{#each_compare_field source compare}}
|
||||
{{#if typeSame}}
|
||||
<tr>
|
||||
<td class="code">
|
||||
{{{splitFill source.field "." " "}}}
|
||||
{{{nestObject source}}}
|
||||
{{#if source.optional}}
|
||||
{{#if compare.optional}} <span class="label label-optional">{{__ "optional"}}</span>
|
||||
{{else}} <span class="label label-optional label-ins">{{__ "optional"}}</span>
|
||||
@ -618,7 +973,7 @@
|
||||
{{#if typeIns}}
|
||||
<tr class="ins">
|
||||
<td class="code">
|
||||
{{{splitFill source.field "." " "}}}
|
||||
{{{nestObject source}}}
|
||||
{{#if source.optional}} <span class="label label-optional label-ins">{{__ "optional"}}</span>{{/if}}
|
||||
</td>
|
||||
|
||||
@ -638,7 +993,7 @@
|
||||
{{#if typeDel}}
|
||||
<tr class="del">
|
||||
<td class="code">
|
||||
{{{splitFill compare.field "." " "}}}
|
||||
{{{nestObject compare}}}
|
||||
{{#if compare.optional}} <span class="label label-optional label-del">{{__ "optional"}}</span>{{/if}}
|
||||
</td>
|
||||
|
||||
@ -660,9 +1015,9 @@
|
||||
</script>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div id="sidenav" class="span2"></div>
|
||||
<div id="content">
|
||||
<div class="row row-offcanvas row-offcanvas-left">
|
||||
<div id="sidenav" class="col-sm-3 col-lg-2"></div>
|
||||
<div id="content" class="col-sm-9 col-lg-10">
|
||||
<div id="project"></div>
|
||||
<div id="header"></div>
|
||||
<div id="sections"></div>
|
||||
@ -687,6 +1042,6 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script data-main="main.js" src="vendor/require.min.js"></script>
|
||||
<script src="assets/main.bundle.js?v=1703484888256"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@ -1 +1 @@
|
||||
import{n}from"./app.7b9537da.js";var r=function(){var e=this,t=e.$createElement;return e._self._c,e._m(0)},a=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"page-404"},[s("div",{staticClass:"flex-center position-ref full-height"},[s("div",{staticClass:"code"},[e._v("404")]),s("div",{staticClass:"message"},[e._v("Not Found")])])])}];const i={},_={};var o=n(i,r,a,!1,c,"7d7154a8",null,null);function c(e){for(let t in _)this[t]=_[t]}var v=function(){return o.exports}();export{v as default};
|
||||
import{n}from"./app.7d416d31.js";var r=function(){var e=this,t=e.$createElement;return e._self._c,e._m(0)},a=[function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"page-404"},[s("div",{staticClass:"flex-center position-ref full-height"},[s("div",{staticClass:"code"},[e._v("404")]),s("div",{staticClass:"message"},[e._v("Not Found")])])])}];const i={},_={};var o=n(i,r,a,!1,c,"7d7154a8",null,null);function c(e){for(let t in _)this[t]=_[t]}var v=function(){return o.exports}();export{v as default};
|
||||
@ -1 +1 @@
|
||||
import{m as h,n as l}from"./app.7b9537da.js";const d={name:"AceEditor",props:{value:{default:""},options:{type:Object,default:()=>({})},theme:{type:String,default:"auto"},ext:{type:String,default:"txt"},height:{type:Number||null,default:null},width:{type:Number||null,default:null},wrap:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1}},render(e){return e("div",{class:"no-dark-content"})},data:()=>({code:"",editor:null,cursorPosition:{row:0,column:0},supportedModes:{Apache_Conf:["^htaccess|^htgroups|^htpasswd|^conf|htaccess|htgroups|htpasswd"],BatchFile:["bat|cmd"],C_Cpp:["cpp|c|cc|cxx|h|hh|hpp|ino"],CSharp:["cs"],CSS:["css"],Dockerfile:["^Dockerfile"],golang:["go|golang"],HTML:["html|htm|xhtml|vue|we|wpy"],Java:["java"],JavaScript:["js|jsm|jsx"],JSON:["json"],JSP:["jsp"],LESS:["less"],Lua:["lua"],Makefile:["^Makefile|^GNUmakefile|^makefile|^OCamlMakefile|make"],Markdown:["md|markdown"],MySQL:["mysql"],Nginx:["nginx|conf"],INI:["ini|conf|cfg|prefs"],ObjectiveC:["m|mm"],Perl:["pl|pm"],Perl6:["p6|pl6|pm6"],pgSQL:["pgsql"],PHP_Laravel_blade:["blade.php"],PHP:["php|inc|phtml|shtml|php3|php4|php5|phps|phpt|aw|ctp|module"],Powershell:["ps1"],Python:["py"],R:["r"],Ruby:["rb|ru|gemspec|rake|^Guardfile|^Rakefile|^Gemfile"],Rust:["rs"],SASS:["sass"],SCSS:["scss"],SH:["sh|bash|^.bashrc"],SQL:["sql"],SQLServer:["sqlserver"],Swift:["swift"],Text:["txt"],Typescript:["ts|typescript|str"],VBScript:["vbs|vb"],Verilog:["v|vh|sv|svh"],XML:["xml|rdf|rss|wsdl|xslt|atom|mathml|mml|xul|xbl|xaml|plist"],YAML:["yaml|yml"],Compress:["tar|zip|7z|rar|gz|arj|z"],images:["icon|jpg|jpeg|webp|png|bmp|gif|tif|emf"]}}),mounted(){$A.loadScriptS(["js/ace/ace.js","js/ace/mode-json.js"]).then(e=>{this.setSize(this.$el,{height:this.height,width:this.width}),this.editor=window.ace.edit(this.$el,{wrap:this.wrap,showPrintMargin:!1,readOnly:this.readOnly,keyboardHandler:"vscode"}),this.editor.session.setMode(`ace/mode/${this.getFileMode()}`),this.$emit("mounted",this.editor),this.editor.session.$worker&&this.editor.session.$worker.addEventListener("annotate",this.workerMessage,!1),this.setValue(this.value),this.editor.setOptions(this.options),this.editTheme&&this.editor.setTheme(`ace/theme/${this.editTheme}`),this.editor.commands.addCommand({name:"\u4FDD\u5B58\u6587\u4EF6",bindKey:{win:"Ctrl-S",mac:"Command-S"},exec:()=>{this.$emit("saveData")},readOnly:!1}),this.editor.getSession().on("change",()=>{this.code=this.editor.getValue(),this.$emit("input",this.code)})})},methods:{workerMessage({data:e}){this.cursorPosition=this.editor.selection.getCursor();const[t]=e;t&&t.type==="error"?this.$emit("validationFailed",t):this.$emit("change",this.editor.getValue())},setSize(e,{width:t=this.width,height:s=this.height}){e.style.width=t&&typeof t=="number"?`${t}px`:"100%",e.style.height=s&&typeof s=="number"?`${s}px`:"100%",this.$nextTick(()=>this.editor&&this.editor.resize())},setValue(e){typeof e=="string"&&this.editor&&(this.editor.setValue(e),this.editor.clearSelection())},getFileMode(){var e=this.ext||"text";for(var t in this.supportedModes)for(var s=this.supportedModes[t],r=s[0].split("|"),a=t.toLowerCase(),i=0;i<r.length;i++)if(e==r[i])return a;return"text"}},computed:{...h(["themeIsDark"]),editTheme(){return this.theme=="auto"?this.themeIsDark?"dracula-dark":"chrome":this.theme}},watch:{options(e){e&&typeof e=="object"&&this.editor&&this.editor.setOptions(e)},editTheme(e){e&&typeof e=="string"&&this.editor&&this.editor.setTheme(`ace/theme/${e}`)},ext(e){e&&typeof e=="string"&&this.editor&&this.editor.session.setMode(`ace/mode/${this.getFileMode()}`)},width(e){this.setSize(this.el,{width:e})},height(e){this.setSize(this.el,{height:e})},readOnly(e){typeof e=="boolean"&&this.editor&&this.editor.setReadOnly(e)},value(e){if(!this.editor||e==this.code)return;this.setValue(e);const{row:t,column:s}=this.cursorPosition;this.editor.selection.moveCursorTo(t,s)}},beforeDestroy(){this.editor&&(this.editor.session.$worker&&this.editor.session.$worker.removeEventListener("message",this.workerMessage,!1),this.editor.destroy(),this.editor.container.remove())}};let n,p;const o={};var c=l(d,n,p,!1,m,null,null,null);function m(e){for(let t in o)this[t]=o[t]}var f=function(){return c.exports}();export{f as default};
|
||||
import{m as h,n as l}from"./app.7d416d31.js";const d={name:"AceEditor",props:{value:{default:""},options:{type:Object,default:()=>({})},theme:{type:String,default:"auto"},ext:{type:String,default:"txt"},height:{type:Number||null,default:null},width:{type:Number||null,default:null},wrap:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1}},render(e){return e("div",{class:"no-dark-content"})},data:()=>({code:"",editor:null,cursorPosition:{row:0,column:0},supportedModes:{Apache_Conf:["^htaccess|^htgroups|^htpasswd|^conf|htaccess|htgroups|htpasswd"],BatchFile:["bat|cmd"],C_Cpp:["cpp|c|cc|cxx|h|hh|hpp|ino"],CSharp:["cs"],CSS:["css"],Dockerfile:["^Dockerfile"],golang:["go|golang"],HTML:["html|htm|xhtml|vue|we|wpy"],Java:["java"],JavaScript:["js|jsm|jsx"],JSON:["json"],JSP:["jsp"],LESS:["less"],Lua:["lua"],Makefile:["^Makefile|^GNUmakefile|^makefile|^OCamlMakefile|make"],Markdown:["md|markdown"],MySQL:["mysql"],Nginx:["nginx|conf"],INI:["ini|conf|cfg|prefs"],ObjectiveC:["m|mm"],Perl:["pl|pm"],Perl6:["p6|pl6|pm6"],pgSQL:["pgsql"],PHP_Laravel_blade:["blade.php"],PHP:["php|inc|phtml|shtml|php3|php4|php5|phps|phpt|aw|ctp|module"],Powershell:["ps1"],Python:["py"],R:["r"],Ruby:["rb|ru|gemspec|rake|^Guardfile|^Rakefile|^Gemfile"],Rust:["rs"],SASS:["sass"],SCSS:["scss"],SH:["sh|bash|^.bashrc"],SQL:["sql"],SQLServer:["sqlserver"],Swift:["swift"],Text:["txt"],Typescript:["ts|typescript|str"],VBScript:["vbs|vb"],Verilog:["v|vh|sv|svh"],XML:["xml|rdf|rss|wsdl|xslt|atom|mathml|mml|xul|xbl|xaml|plist"],YAML:["yaml|yml"],Compress:["tar|zip|7z|rar|gz|arj|z"],images:["icon|jpg|jpeg|webp|png|bmp|gif|tif|emf"]}}),mounted(){$A.loadScriptS(["js/ace/ace.js","js/ace/mode-json.js"]).then(e=>{this.setSize(this.$el,{height:this.height,width:this.width}),this.editor=window.ace.edit(this.$el,{wrap:this.wrap,showPrintMargin:!1,readOnly:this.readOnly,keyboardHandler:"vscode"}),this.editor.session.setMode(`ace/mode/${this.getFileMode()}`),this.$emit("mounted",this.editor),this.editor.session.$worker&&this.editor.session.$worker.addEventListener("annotate",this.workerMessage,!1),this.setValue(this.value),this.editor.setOptions(this.options),this.editTheme&&this.editor.setTheme(`ace/theme/${this.editTheme}`),this.editor.commands.addCommand({name:"\u4FDD\u5B58\u6587\u4EF6",bindKey:{win:"Ctrl-S",mac:"Command-S"},exec:()=>{this.$emit("saveData")},readOnly:!1}),this.editor.getSession().on("change",()=>{this.code=this.editor.getValue(),this.$emit("input",this.code)})})},methods:{workerMessage({data:e}){this.cursorPosition=this.editor.selection.getCursor();const[t]=e;t&&t.type==="error"?this.$emit("validationFailed",t):this.$emit("change",this.editor.getValue())},setSize(e,{width:t=this.width,height:s=this.height}){e.style.width=t&&typeof t=="number"?`${t}px`:"100%",e.style.height=s&&typeof s=="number"?`${s}px`:"100%",this.$nextTick(()=>this.editor&&this.editor.resize())},setValue(e){typeof e=="string"&&this.editor&&(this.editor.setValue(e),this.editor.clearSelection())},getFileMode(){var e=this.ext||"text";for(var t in this.supportedModes)for(var s=this.supportedModes[t],r=s[0].split("|"),a=t.toLowerCase(),i=0;i<r.length;i++)if(e==r[i])return a;return"text"}},computed:{...h(["themeIsDark"]),editTheme(){return this.theme=="auto"?this.themeIsDark?"dracula-dark":"chrome":this.theme}},watch:{options(e){e&&typeof e=="object"&&this.editor&&this.editor.setOptions(e)},editTheme(e){e&&typeof e=="string"&&this.editor&&this.editor.setTheme(`ace/theme/${e}`)},ext(e){e&&typeof e=="string"&&this.editor&&this.editor.session.setMode(`ace/mode/${this.getFileMode()}`)},width(e){this.setSize(this.el,{width:e})},height(e){this.setSize(this.el,{height:e})},readOnly(e){typeof e=="boolean"&&this.editor&&this.editor.setReadOnly(e)},value(e){if(!this.editor||e==this.code)return;this.setValue(e);const{row:t,column:s}=this.cursorPosition;this.editor.selection.moveCursorTo(t,s)}},beforeDestroy(){this.editor&&(this.editor.session.$worker&&this.editor.session.$worker.removeEventListener("message",this.workerMessage,!1),this.editor.destroy(),this.editor.container.remove())}};let n,p;const o={};var c=l(d,n,p,!1,m,null,null,null);function m(e){for(let t in o)this[t]=o[t]}var f=function(){return c.exports}();export{f as default};
|
||||
@ -1 +1 @@
|
||||
import{n}from"./app.7b9537da.js";var l=function(){var t=this,o=t.$createElement,e=t._self._c||o;return e("Modal",{attrs:{title:t.$L("\u5BFC\u51FA\u5BA1\u6279\u6570\u636E"),"mask-closable":!1},model:{value:t.show,callback:function(a){t.show=a},expression:"show"}},[e("Form",{ref:"exportTask",attrs:{model:t.formData,"label-width":"auto"},nativeOn:{submit:function(a){a.preventDefault()}}},[e("FormItem",{attrs:{label:t.$L("\u5BA1\u6279\u7C7B\u578B")}},[e("Select",{on:{"on-open-change":t.getProcName},model:{value:t.formData.proc_def_name,callback:function(a){t.$set(t.formData,"proc_def_name",a)},expression:"formData.proc_def_name"}},t._l(t.procList,function(a,s){return e("Option",{key:s,attrs:{value:a.name}},[t._v(t._s(a.name))])}),1)],1),e("FormItem",{attrs:{label:t.$L("\u65F6\u95F4\u8303\u56F4")}},[e("DatePicker",{staticStyle:{width:"100%"},attrs:{type:"daterange",format:"yyyy/MM/dd",placeholder:t.$L("\u8BF7\u9009\u62E9\u65F6\u95F4")},model:{value:t.formData.date,callback:function(a){t.$set(t.formData,"date",a)},expression:"formData.date"}}),e("div",{staticClass:"form-tip checkin-export-quick-select"},[e("span",[t._v(t._s(t.$L("\u5FEB\u6377\u9009\u62E9"))+":")]),e("em",{on:{click:function(a){t.formData.date=t.dateShortcuts("prev")}}},[t._v(t._s(t.$L("\u4E0A\u4E2A\u6708")))]),e("em",{on:{click:function(a){t.formData.date=t.dateShortcuts("this")}}},[t._v(t._s(t.$L("\u8FD9\u4E2A\u6708")))])])],1),e("FormItem",{attrs:{prop:"type",label:t.$L("\u5BFC\u51FA\u7C7B\u578B")}},[e("RadioGroup",{model:{value:t.formData.is_finished,callback:function(a){t.$set(t.formData,"is_finished",a)},expression:"formData.is_finished"}},[e("Radio",{attrs:{label:"0"}},[t._v(t._s(t.$L("\u672A\u5B8C\u6210")))]),e("Radio",{attrs:{label:"1"}},[t._v(t._s(t.$L("\u5DF2\u5B8C\u6210")))])],1)],1)],1),e("div",{staticClass:"adaption",attrs:{slot:"footer"},slot:"footer"},[e("Button",{attrs:{type:"default"},on:{click:function(a){t.show=!1}}},[t._v(t._s(t.$L("\u53D6\u6D88")))]),e("Button",{attrs:{type:"primary",loading:t.loadIng>0},on:{click:t.onExport}},[t._v(t._s(t.$L("\u5BFC\u51FA")))])],1)],1)},i=[];const c={name:"ApproveExport",props:{value:{type:Boolean,default:!1}},data(){return{show:this.value,loadIng:0,formData:{proc_def_name:"",date:[],is_finished:"1"},procList:[]}},watch:{value(t){this.show=t},show(t){this.value!==t&&this.$emit("input",t)}},methods:{dateShortcuts(t){if(t==="prev")return[$A.getSpecifyDate("\u4E0A\u4E2A\u6708"),$A.getSpecifyDate("\u4E0A\u4E2A\u6708\u7ED3\u675F")];if(t==="this")return[$A.getSpecifyDate("\u672C\u6708"),$A.getSpecifyDate("\u672C\u6708\u7ED3\u675F")]},getProcName(){this.loadIng++,this.$store.dispatch("call",{url:"approve/procdef/all",method:"post"}).then(({data:t})=>{this.procList=t.rows}).catch(({msg:t})=>{$A.modalError(t)}).finally(t=>{this.loadIng--})},onExport(){this.loadIng>0||(this.loadIng++,this.$store.dispatch("call",{url:"approve/export",data:this.formData}).then(({data:t})=>{this.show=!1,this.$store.dispatch("downUrl",{url:t.url})}).catch(({msg:t})=>{$A.modalError(t)}).finally(t=>{this.loadIng--}))}}},r={};var p=n(c,l,i,!1,d,null,null,null);function d(t){for(let o in r)this[o]=r[o]}var _=function(){return p.exports}();export{_ as A};
|
||||
import{n}from"./app.7d416d31.js";var l=function(){var t=this,o=t.$createElement,e=t._self._c||o;return e("Modal",{attrs:{title:t.$L("\u5BFC\u51FA\u5BA1\u6279\u6570\u636E"),"mask-closable":!1},model:{value:t.show,callback:function(a){t.show=a},expression:"show"}},[e("Form",{ref:"exportTask",attrs:{model:t.formData,"label-width":"auto"},nativeOn:{submit:function(a){a.preventDefault()}}},[e("FormItem",{attrs:{label:t.$L("\u5BA1\u6279\u7C7B\u578B")}},[e("Select",{on:{"on-open-change":t.getProcName},model:{value:t.formData.proc_def_name,callback:function(a){t.$set(t.formData,"proc_def_name",a)},expression:"formData.proc_def_name"}},t._l(t.procList,function(a,s){return e("Option",{key:s,attrs:{value:a.name}},[t._v(t._s(a.name))])}),1)],1),e("FormItem",{attrs:{label:t.$L("\u65F6\u95F4\u8303\u56F4")}},[e("DatePicker",{staticStyle:{width:"100%"},attrs:{type:"daterange",format:"yyyy/MM/dd",placeholder:t.$L("\u8BF7\u9009\u62E9\u65F6\u95F4")},model:{value:t.formData.date,callback:function(a){t.$set(t.formData,"date",a)},expression:"formData.date"}}),e("div",{staticClass:"form-tip checkin-export-quick-select"},[e("span",[t._v(t._s(t.$L("\u5FEB\u6377\u9009\u62E9"))+":")]),e("em",{on:{click:function(a){t.formData.date=t.dateShortcuts("prev")}}},[t._v(t._s(t.$L("\u4E0A\u4E2A\u6708")))]),e("em",{on:{click:function(a){t.formData.date=t.dateShortcuts("this")}}},[t._v(t._s(t.$L("\u8FD9\u4E2A\u6708")))])])],1),e("FormItem",{attrs:{prop:"type",label:t.$L("\u5BFC\u51FA\u7C7B\u578B")}},[e("RadioGroup",{model:{value:t.formData.is_finished,callback:function(a){t.$set(t.formData,"is_finished",a)},expression:"formData.is_finished"}},[e("Radio",{attrs:{label:"0"}},[t._v(t._s(t.$L("\u672A\u5B8C\u6210")))]),e("Radio",{attrs:{label:"1"}},[t._v(t._s(t.$L("\u5DF2\u5B8C\u6210")))])],1)],1)],1),e("div",{staticClass:"adaption",attrs:{slot:"footer"},slot:"footer"},[e("Button",{attrs:{type:"default"},on:{click:function(a){t.show=!1}}},[t._v(t._s(t.$L("\u53D6\u6D88")))]),e("Button",{attrs:{type:"primary",loading:t.loadIng>0},on:{click:t.onExport}},[t._v(t._s(t.$L("\u5BFC\u51FA")))])],1)],1)},i=[];const c={name:"ApproveExport",props:{value:{type:Boolean,default:!1}},data(){return{show:this.value,loadIng:0,formData:{proc_def_name:"",date:[],is_finished:"1"},procList:[]}},watch:{value(t){this.show=t},show(t){this.value!==t&&this.$emit("input",t)}},methods:{dateShortcuts(t){if(t==="prev")return[$A.getSpecifyDate("\u4E0A\u4E2A\u6708"),$A.getSpecifyDate("\u4E0A\u4E2A\u6708\u7ED3\u675F")];if(t==="this")return[$A.getSpecifyDate("\u672C\u6708"),$A.getSpecifyDate("\u672C\u6708\u7ED3\u675F")]},getProcName(){this.loadIng++,this.$store.dispatch("call",{url:"approve/procdef/all",method:"post"}).then(({data:t})=>{this.procList=t.rows}).catch(({msg:t})=>{$A.modalError(t)}).finally(t=>{this.loadIng--})},onExport(){this.loadIng>0||(this.loadIng++,this.$store.dispatch("call",{url:"approve/export",data:this.formData}).then(({data:t})=>{this.show=!1,this.$store.dispatch("downUrl",{url:t.url})}).catch(({msg:t})=>{$A.modalError(t)}).finally(t=>{this.loadIng--}))}}},r={};var p=n(c,l,i,!1,d,null,null,null);function d(t){for(let o in r)this[o]=r[o]}var _=function(){return p.exports}();export{_ as A};
|
||||
1
public/js/build/CheckinExport.84781a52.js
vendored
1
public/js/build/CheckinExport.e0afa15a.js
vendored
Normal file
@ -1 +1 @@
|
||||
import{m as o,n as l,l as s}from"./app.7b9537da.js";import{I as d}from"./IFrame.1636beca.js";var u=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"drawio-content"},[a("IFrame",{ref:"frame",staticClass:"drawio-iframe",attrs:{src:e.url},on:{"on-message":e.onMessage}}),e.loadIng?a("div",{staticClass:"drawio-loading"},[a("Loading")],1):e._e()],1)},m=[];const c={name:"Drawio",components:{IFrame:d},props:{value:{type:Object,default:function(){return{}}},title:{type:String,default:""},readOnly:{type:Boolean,default:!1}},data(){return{loadIng:!0,url:null,bakData:""}},created(){let e=s;switch(s){case"zh-CHT":e="zh-tw";break}let t=this.readOnly?1:0,a=this.readOnly?0:1,r=this.themeIsDark?"dark":"kennedy",n=`?title=${this.title?encodeURIComponent(this.title):""}&chrome=${a}&lightbox=${t}&ui=${r}&lang=${e}&offline=1&pwa=0&embed=1&noLangIcon=1&noExitBtn=1&noSaveBtn=1&saveAndExit=0&spin=1&proto=json`;this.$Electron?this.url=$A.originUrl(`drawio/webapp/index.html${n}`):this.url=$A.apiUrl(`../drawio/webapp/${n}`)},mounted(){window.addEventListener("message",this.handleMessage)},beforeDestroy(){window.removeEventListener("message",this.handleMessage)},watch:{value:{handler(e){this.bakData!=$A.jsonStringify(e)&&(this.bakData=$A.jsonStringify(e),this.updateContent())},deep:!0}},computed:{...o(["themeIsDark"])},methods:{formatZoom(e){return e+"%"},updateContent(){this.$refs.frame.postMessage(JSON.stringify({action:"load",autosave:1,xml:this.value.xml}))},onMessage(e){switch(e.event){case"init":this.loadIng=!1,this.updateContent();break;case"load":typeof this.value.xml=="undefined"&&this.$refs.frame.postMessage(JSON.stringify({action:"template"}));break;case"autosave":const t={xml:e.xml};this.bakData=$A.jsonStringify(t),this.$emit("input",t);break;case"save":this.$emit("saveData");break}}}},i={};var h=l(c,u,m,!1,f,"6b690a27",null,null);function f(e){for(let t in i)this[t]=i[t]}var _=function(){return h.exports}();export{_ as default};
|
||||
import{m as o,n as l,l as s}from"./app.7d416d31.js";import{I as d}from"./IFrame.eb1e20bb.js";var u=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"drawio-content"},[a("IFrame",{ref:"frame",staticClass:"drawio-iframe",attrs:{src:e.url},on:{"on-message":e.onMessage}}),e.loadIng?a("div",{staticClass:"drawio-loading"},[a("Loading")],1):e._e()],1)},m=[];const c={name:"Drawio",components:{IFrame:d},props:{value:{type:Object,default:function(){return{}}},title:{type:String,default:""},readOnly:{type:Boolean,default:!1}},data(){return{loadIng:!0,url:null,bakData:""}},created(){let e=s;switch(s){case"zh-CHT":e="zh-tw";break}let t=this.readOnly?1:0,a=this.readOnly?0:1,r=this.themeIsDark?"dark":"kennedy",n=`?title=${this.title?encodeURIComponent(this.title):""}&chrome=${a}&lightbox=${t}&ui=${r}&lang=${e}&offline=1&pwa=0&embed=1&noLangIcon=1&noExitBtn=1&noSaveBtn=1&saveAndExit=0&spin=1&proto=json`;this.$Electron?this.url=$A.originUrl(`drawio/webapp/index.html${n}`):this.url=$A.apiUrl(`../drawio/webapp/${n}`)},mounted(){window.addEventListener("message",this.handleMessage)},beforeDestroy(){window.removeEventListener("message",this.handleMessage)},watch:{value:{handler(e){this.bakData!=$A.jsonStringify(e)&&(this.bakData=$A.jsonStringify(e),this.updateContent())},deep:!0}},computed:{...o(["themeIsDark"])},methods:{formatZoom(e){return e+"%"},updateContent(){this.$refs.frame.postMessage(JSON.stringify({action:"load",autosave:1,xml:this.value.xml}))},onMessage(e){switch(e.event){case"init":this.loadIng=!1,this.updateContent();break;case"load":typeof this.value.xml=="undefined"&&this.$refs.frame.postMessage(JSON.stringify({action:"template"}));break;case"autosave":const t={xml:e.xml};this.bakData=$A.jsonStringify(t),this.$emit("input",t);break;case"save":this.$emit("saveData");break}}}},i={};var h=l(c,u,m,!1,f,"6b690a27",null,null);function f(e){for(let t in i)this[t]=i[t]}var _=function(){return h.exports}();export{_ as default};
|
||||
@ -1 +1 @@
|
||||
import{n as r,_ as n}from"./app.7b9537da.js";import{I as a}from"./IFrame.1636beca.js";var l=function(){var e=this,i=e.$createElement,t=e._self._c||i;return t("div",{staticClass:"file-preview"},[e.isPreview?t("IFrame",{staticClass:"preview-iframe",attrs:{src:e.previewUrl},on:{"on-load":e.onFrameLoad}}):e.contentDetail?[t("div",{directives:[{name:"show",rawName:"v-show",value:e.headerShow&&!["word","excel","ppt"].includes(e.file.type),expression:"headerShow && !['word', 'excel', 'ppt'].includes(file.type)"}],staticClass:"edit-header"},[t("div",{staticClass:"header-title"},[t("div",{staticClass:"title-name"},[e._v(e._s(e.$A.getFileName(e.file)))]),t("Tag",{attrs:{color:"default"}},[e._v(e._s(e.$L("\u53EA\u8BFB")))]),t("div",{staticClass:"refresh"},[e.contentLoad?t("Loading"):t("Icon",{attrs:{type:"ios-refresh"},on:{click:e.getContent}})],1)],1)]),t("div",{staticClass:"content-body"},[e.file.type=="document"?[e.contentDetail.type=="md"?t("MDPreview",{attrs:{initialValue:e.contentDetail.content}}):t("TEditor",{attrs:{value:e.contentDetail.content,height:"100%",readOnly:""}})]:e.file.type=="drawio"?t("Drawio",{ref:"myFlow",attrs:{value:e.contentDetail,title:e.file.name,readOnly:""}}):e.file.type=="mind"?t("Minder",{ref:"myMind",attrs:{value:e.contentDetail,readOnly:""}}):["code","txt"].includes(e.file.type)?t("AceEditor",{attrs:{value:e.contentDetail.content,ext:e.file.ext,readOnly:""}}):["word","excel","ppt"].includes(e.file.type)?t("OnlyOffice",{attrs:{value:e.contentDetail,code:e.code,historyId:e.historyId,documentKey:e.documentKey,readOnly:""}}):e._e()],2)]:e._e(),e.contentLoad?t("div",{staticClass:"content-load"},[t("Loading")],1):e._e()],2)},s=[];const d=()=>n(()=>import("./preview.59685de6.js"),["js/build/preview.59685de6.js","js/build/app.7b9537da.js","js/build/app.9141377f.css"]),c=()=>n(()=>import("./TEditor.a6422506.js"),["js/build/TEditor.a6422506.js","js/build/app.7b9537da.js","js/build/app.9141377f.css","js/build/ImgUpload.0ea1891a.js"]),u=()=>n(()=>import("./AceEditor.85fce2b7.js"),["js/build/AceEditor.85fce2b7.js","js/build/app.7b9537da.js","js/build/app.9141377f.css"]),_=()=>n(()=>import("./OnlyOffice.f07263f2.js"),["js/build/OnlyOffice.f07263f2.js","js/build/OnlyOffice.97177ac3.css","js/build/app.7b9537da.js","js/build/app.9141377f.css","js/build/IFrame.1636beca.js"]),h=()=>n(()=>import("./Drawio.394b2772.js"),["js/build/Drawio.394b2772.js","js/build/Drawio.fc5c6326.css","js/build/app.7b9537da.js","js/build/app.9141377f.css","js/build/IFrame.1636beca.js"]),p=()=>n(()=>import("./Minder.221613f7.js"),["js/build/Minder.221613f7.js","js/build/Minder.3ba64342.css","js/build/IFrame.1636beca.js","js/build/app.7b9537da.js","js/build/app.9141377f.css"]),v={name:"FilePreview",components:{IFrame:a,AceEditor:u,TEditor:c,MDPreview:d,OnlyOffice:_,Drawio:h,Minder:p},props:{code:{type:String,default:""},historyId:{type:Number,default:0},file:{type:Object,default:()=>({})},headerShow:{type:Boolean,default:!0}},data(){return{loadContent:0,contentDetail:null,loadPreview:!0}},watch:{"file.id":{handler(e){e&&(this.contentDetail=null,this.getContent())},immediate:!0,deep:!0}},computed:{contentLoad(){return this.loadContent>0||this.previewLoad},isPreview(){return this.contentDetail&&this.contentDetail.preview===!0},previewLoad(){return this.isPreview&&this.loadPreview===!0},previewUrl(){if(this.isPreview){const{name:e,key:i}=this.contentDetail;return $A.apiUrl(`../online/preview/${e}?key=${i}`)}return""}},methods:{onFrameLoad(){this.loadPreview=!1},getContent(){if(["word","excel","ppt"].includes(this.file.type)){this.contentDetail=$A.cloneJSON(this.file);return}setTimeout(e=>{this.loadContent++},600),this.$store.dispatch("call",{url:"file/content",data:{id:this.code||this.file.id,history_id:this.historyId}}).then(({data:e})=>{this.contentDetail=e.content}).catch(({msg:e})=>{$A.modalError(e)}).finally(e=>{this.loadContent--})},documentKey(){return new Promise(e=>{this.$store.dispatch("call",{url:"file/content",data:{id:this.code||this.file.id,only_update_at:"yes"}}).then(({data:i})=>{e(`${i.id}-${$A.Time(i.update_at)}`)}).catch(()=>{e(0)})})},exportMenu(e){switch(this.file.type){case"mind":this.$refs.myMind.exportHandle(e,this.file.name);break}}}},o={};var f=r(v,l,s,!1,m,null,null,null);function m(e){for(let i in o)this[i]=o[i]}var D=function(){return f.exports}();export{D as default};
|
||||
import{n as r,_ as n}from"./app.7d416d31.js";import{I as a}from"./IFrame.eb1e20bb.js";var l=function(){var e=this,i=e.$createElement,t=e._self._c||i;return t("div",{staticClass:"file-preview"},[e.isPreview?t("IFrame",{staticClass:"preview-iframe",attrs:{src:e.previewUrl},on:{"on-load":e.onFrameLoad}}):e.contentDetail?[t("div",{directives:[{name:"show",rawName:"v-show",value:e.headerShow&&!["word","excel","ppt"].includes(e.file.type),expression:"headerShow && !['word', 'excel', 'ppt'].includes(file.type)"}],staticClass:"edit-header"},[t("div",{staticClass:"header-title"},[t("div",{staticClass:"title-name"},[e._v(e._s(e.$A.getFileName(e.file)))]),t("Tag",{attrs:{color:"default"}},[e._v(e._s(e.$L("\u53EA\u8BFB")))]),t("div",{staticClass:"refresh"},[e.contentLoad?t("Loading"):t("Icon",{attrs:{type:"ios-refresh"},on:{click:e.getContent}})],1)],1)]),t("div",{staticClass:"content-body"},[e.file.type=="document"?[e.contentDetail.type=="md"?t("MDPreview",{attrs:{initialValue:e.contentDetail.content}}):t("TEditor",{attrs:{value:e.contentDetail.content,height:"100%",readOnly:""}})]:e.file.type=="drawio"?t("Drawio",{ref:"myFlow",attrs:{value:e.contentDetail,title:e.file.name,readOnly:""}}):e.file.type=="mind"?t("Minder",{ref:"myMind",attrs:{value:e.contentDetail,readOnly:""}}):["code","txt"].includes(e.file.type)?t("AceEditor",{attrs:{value:e.contentDetail.content,ext:e.file.ext,readOnly:""}}):["word","excel","ppt"].includes(e.file.type)?t("OnlyOffice",{attrs:{value:e.contentDetail,code:e.code,historyId:e.historyId,documentKey:e.documentKey,readOnly:""}}):e._e()],2)]:e._e(),e.contentLoad?t("div",{staticClass:"content-load"},[t("Loading")],1):e._e()],2)},s=[];const d=()=>n(()=>import("./preview.17f61613.js"),["js/build/preview.17f61613.js","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css"]),c=()=>n(()=>import("./TEditor.3f7afdfb.js"),["js/build/TEditor.3f7afdfb.js","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css","js/build/ImgUpload.24b2ef1e.js"]),u=()=>n(()=>import("./AceEditor.8b42aa0d.js"),["js/build/AceEditor.8b42aa0d.js","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css"]),_=()=>n(()=>import("./OnlyOffice.4c0823f3.js"),["js/build/OnlyOffice.4c0823f3.js","js/build/OnlyOffice.d095e45d.css","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css","js/build/IFrame.eb1e20bb.js"]),h=()=>n(()=>import("./Drawio.9adade4e.js"),["js/build/Drawio.9adade4e.js","js/build/Drawio.fc5c6326.css","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css","js/build/IFrame.eb1e20bb.js"]),p=()=>n(()=>import("./Minder.7a74b4ef.js"),["js/build/Minder.7a74b4ef.js","js/build/Minder.3ba64342.css","js/build/IFrame.eb1e20bb.js","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css"]),v={name:"FilePreview",components:{IFrame:a,AceEditor:u,TEditor:c,MDPreview:d,OnlyOffice:_,Drawio:h,Minder:p},props:{code:{type:String,default:""},historyId:{type:Number,default:0},file:{type:Object,default:()=>({})},headerShow:{type:Boolean,default:!0}},data(){return{loadContent:0,contentDetail:null,loadPreview:!0}},watch:{"file.id":{handler(e){e&&(this.contentDetail=null,this.getContent())},immediate:!0,deep:!0}},computed:{contentLoad(){return this.loadContent>0||this.previewLoad},isPreview(){return this.contentDetail&&this.contentDetail.preview===!0},previewLoad(){return this.isPreview&&this.loadPreview===!0},previewUrl(){if(this.isPreview){const{name:e,key:i}=this.contentDetail;return $A.apiUrl(`../online/preview/${e}?key=${i}`)}return""}},methods:{onFrameLoad(){this.loadPreview=!1},getContent(){if(["word","excel","ppt"].includes(this.file.type)){this.contentDetail=$A.cloneJSON(this.file);return}setTimeout(e=>{this.loadContent++},600),this.$store.dispatch("call",{url:"file/content",data:{id:this.code||this.file.id,history_id:this.historyId}}).then(({data:e})=>{this.contentDetail=e.content}).catch(({msg:e})=>{$A.modalError(e)}).finally(e=>{this.loadContent--})},documentKey(){return new Promise((e,i)=>{this.$store.dispatch("call",{url:"file/content",data:{id:this.code||this.file.id,only_update_at:"yes"}}).then(({data:t})=>{e(`${t.id}-${$A.Time(t.update_at)}`)}).catch(t=>{i(t)})})},exportMenu(e){switch(this.file.type){case"mind":this.$refs.myMind.exportHandle(e,this.file.name);break}}}},o={};var f=r(v,l,s,!1,m,null,null,null);function m(e){for(let i in o)this[i]=o[i]}var D=function(){return f.exports}();export{D as default};
|
||||
@ -1 +1 @@
|
||||
import{n}from"./app.7b9537da.js";var i=function(){var e=this,s=e.$createElement,r=e._self._c||s;return r("iframe",{directives:[{name:"show",rawName:"v-show",value:e.src,expression:"src"}],ref:"iframe",attrs:{src:e.src}})},a=[];const o={name:"IFrame",props:{src:{type:String,default:""}},mounted(){this.$refs.iframe.addEventListener("load",this.handleLoad),window.addEventListener("message",this.handleMessage)},beforeDestroy(){this.$refs.iframe.removeEventListener("load",this.handleLoad),window.removeEventListener("message",this.handleMessage)},methods:{handleLoad(){this.$emit("on-load")},handleMessage({data:e,source:s}){var r;s===((r=this.$refs.iframe)==null?void 0:r.contentWindow)&&(e=$A.jsonParse(e),e.source==="fileView"&&e.action==="picture"&&this.$store.dispatch("previewImage",{index:e.params.index,list:e.params.array}),this.$emit("on-message",e))},postMessage(e,s="*"){this.$refs.iframe&&this.$refs.iframe.contentWindow.postMessage(e,s)}}},t={};var m=n(o,i,a,!1,c,null,null,null);function c(e){for(let s in t)this[s]=t[s]}var l=function(){return m.exports}();export{l as I};
|
||||
import{n}from"./app.7d416d31.js";var i=function(){var e=this,s=e.$createElement,r=e._self._c||s;return r("iframe",{directives:[{name:"show",rawName:"v-show",value:e.src,expression:"src"}],ref:"iframe",attrs:{src:e.src}})},a=[];const o={name:"IFrame",props:{src:{type:String,default:""}},mounted(){this.$refs.iframe.addEventListener("load",this.handleLoad),window.addEventListener("message",this.handleMessage)},beforeDestroy(){this.$refs.iframe.removeEventListener("load",this.handleLoad),window.removeEventListener("message",this.handleMessage)},methods:{handleLoad(){this.$emit("on-load")},handleMessage({data:e,source:s}){var r;s===((r=this.$refs.iframe)==null?void 0:r.contentWindow)&&(e=$A.jsonParse(e),e.source==="fileView"&&e.action==="picture"&&this.$store.dispatch("previewImage",{index:e.params.index,list:e.params.array}),this.$emit("on-message",e))},postMessage(e,s="*"){this.$refs.iframe&&this.$refs.iframe.contentWindow.postMessage(e,s)}}},t={};var m=n(o,i,a,!1,c,null,null,null);function c(e){for(let s in t)this[s]=t[s]}var l=function(){return m.exports}();export{l as I};
|
||||
1
public/js/build/MeetingManager.04349bc7.js
vendored
1
public/js/build/MeetingManager.3fcd7984.js
vendored
Normal file
1
public/js/build/MicroApps.3165b11f.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
import{u as s,m as i,V as p,s as r,U as o,i as l,d as h,l as d,E as u,n as m}from"./app.7d416d31.js";import{D as c}from"./DialogWrapper.8f2d3b49.js";var f=function(){var a=this,t=a.$createElement,e=a._self._c||t;return e("div",{staticClass:"page-microapp"},[a.showSpin?e("transition",{attrs:{name:"microapp-load"}},[e("div",{staticClass:"microapp-load"},[e("Loading")],1)]):a._e(),a.url&&!a.loading?e("micro-app",{attrs:{name:a.name,url:a.url,inline:"","keep-alive":"",disableSandbox:"",data:a.appData},on:{created:a.handleCreate,beforemount:a.handleBeforeMount,mounted:a.handleMount,unmount:a.handleUnmount,error:a.handleError,datachange:a.handleDataChange}}):a._e()],1)},g=[];const v={name:"MicroApps",props:{name:{type:String,default:"micro-app"},url:{type:String,default:""},path:{type:String,default:""},datas:{type:Object,default:()=>{}}},data(){return{showSpin:!1,loading:!1,appData:{}}},mounted(){this.showSpin=!0,this.appData=this.getAppData},watch:{loading(a){a&&(this.showSpin=!0)},path(a){this.appData={path:a}},datas:{handler(a){this.appData=a},deep:!0},$route:{handler(a){(a.name=="manage-apps"||a.name=="single-apps")&&(this.appData={path:a.hash||a.fullPath})},immediate:!0},userToken(a){this.appData=this.getAppData,a?this.loading=!1:(s({destroy:!0}),this.loading=!0)}},computed:{...i(["userInfo","themeMode"]),getAppData(){return{type:"init",url:this.url,vues:{Vue:p,store:r,components:{DialogWrapper:c,UserSelect:o,DatePicker:l.exports.DatePicker}},theme:this.themeMode,languages:{languageList:h,languageType:d},userInfo:this.userInfo,path:this.path,electron:this.$Electron}}},methods:{handleCreate(a){window.eventCenterForAppNameVite=new u(a.detail.name),this.appData=this.getAppData,this.showSpin=!window["eventCenterForAppNameViteLoad-"+a.detail.name]},handleBeforeMount(a){window["eventCenterForAppNameViteLoad-"+a.detail.name]=1},handleMount(a){this.datas&&(this.appData=this.datas),this.path&&(this.appData.path=this.path),this.showSpin=!1},handleUnmount(a){window.dispatchEvent(new Event("apps-unmount"))},handleError(a){},handleDataChange(a){}}},n={};var D=m(v,f,g,!1,_,null,null,null);function _(a){for(let t in n)this[t]=n[t]}var A=function(){return D.exports}();export{A as M};
|
||||
1
public/js/build/MicroApps.8d5df57c.js
vendored
@ -1 +0,0 @@
|
||||
import{u as i,m as r,V as s,s as p,i as o,d as l,l as h,E as d,n as u}from"./app.7b9537da.js";import{D as m}from"./DialogWrapper.43cbe6f6.js";import{U as c}from"./UserSelect.ee0927b8.js";var f=function(){var a=this,e=a.$createElement,t=a._self._c||e;return t("div",{staticClass:"page-microapp"},[a.showSpin?t("transition",{attrs:{name:"microapp-load"}},[t("div",{staticClass:"microapp-load"},[t("Loading")],1)]):a._e(),a.url&&!a.loading?t("micro-app",{attrs:{name:a.name,url:a.url,inline:"","keep-alive":"",disableSandbox:"",data:a.appData},on:{created:a.handleCreate,beforemount:a.handleBeforeMount,mounted:a.handleMount,unmount:a.handleUnmount,error:a.handleError,datachange:a.handleDataChange}}):a._e()],1)},g=[];const v={name:"MicroApps",props:{name:{type:String,default:"micro-app"},url:{type:String,default:""},path:{type:String,default:""},datas:{type:Object,default:()=>{}}},data(){return{showSpin:!1,loading:!1,appUrl:"",appData:{}}},deactivated(){},mounted(){this.showSpin=!0,this.appData=this.getAppData},watch:{loading(a){a&&(this.showSpin=!0)},url(a){this.loading=!0,this.$nextTick(()=>{this.loading=!1;let e=$A.apiUrl(a);e.indexOf("http")==-1&&(e=window.location.origin+e),this.appUrl={}.VITE_OKR_WEB_URL||e})},path(a){this.appData={path:a}},datas:{handler(a){this.appData=a},deep:!0},$route:{handler(a){a.name=="manage-apps"&&(this.appData={path:a.hash||a.fullPath})},immediate:!0},userToken(a){this.appData=this.getAppData,a?this.loading=!1:(i({destroy:!0}),this.loading=!0)}},computed:{...r(["userInfo","themeMode"]),getAppData(){return{type:"init",url:this.url,vues:{Vue:s,store:p,components:{DialogWrapper:m,UserSelect:c,DatePicker:o.exports.DatePicker}},theme:this.themeMode,languages:{languageList:l,languageType:h},userInfo:this.userInfo,path:this.path}}},methods:{handleCreate(a){window.eventCenterForAppNameVite=new d(a.detail.name),this.appData=this.getAppData,this.showSpin=!window["eventCenterForAppNameViteLoad-"+a.detail.name]},handleBeforeMount(a){window["eventCenterForAppNameViteLoad-"+a.detail.name]=1},handleMount(a){this.datas&&(this.appData=this.datas),this.path&&(this.appData.path=this.path),this.showSpin=!1},handleUnmount(a){window.dispatchEvent(new Event("apps-unmount"))},handleError(a){console.error("\u5B50\u5E94\u7528\u52A0\u8F7D\u51FA\u9519\u4E86",a.detail.error)},handleDataChange(a){}}},n={};var _=u(v,f,g,!1,w,null,null,null);function w(a){for(let e in n)this[e]=n[e]}var C=function(){return _.exports}();export{C as M};
|
||||
1
public/js/build/OnlyOffice.4c0823f3.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
import{m as c,n as f,l as a}from"./app.7d416d31.js";import{I as h}from"./IFrame.eb1e20bb.js";var u=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"component-only-office"},[e.$A.isDesktop()?[e.loadError?i("Alert",{staticClass:"load-error",attrs:{type:"error","show-icon":""}},[e._v(e._s(e.$L("\u7EC4\u4EF6\u52A0\u8F7D\u5931\u8D25\uFF01")))]):e._e(),i("div",{staticClass:"placeholder",attrs:{id:e.id}})]:i("IFrame",{staticClass:"preview-iframe",attrs:{src:e.previewUrl},on:{"on-load":e.onFrameLoad}}),e.loading?i("div",{staticClass:"office-loading"},[i("Loading")],1):e._e()],2)},m=[];const p={name:"OnlyOffice",components:{IFrame:h},props:{id:{type:String,default:()=>"office_"+Math.round(Math.random()*1e4)},code:{type:String,default:""},historyId:{type:Number,default:0},value:{type:[Object,Array],default:function(){return{}}},readOnly:{type:Boolean,default:!1},documentKey:Function},data(){return{loading:!1,loadError:!1,docEditor:null}},beforeDestroy(){this.docEditor!==null&&(this.docEditor.destroyEditor(),this.docEditor=null)},computed:{...c(["userInfo","themeIsDark"]),fileType(){return this.getType(this.value.type)},fileName(){return this.value.name},fileUrl(){let e=this.code||this.value.id,t;return $A.leftExists(e,"msgFile_")?t=`dialog/msg/download/?msg_id=${$A.leftDelete(e,"msgFile_")}&token=${this.userToken}`:$A.leftExists(e,"taskFile_")?t=`project/task/filedown/?file_id=${$A.leftDelete(e,"taskFile_")}&token=${this.userToken}`:(t=`file/content/?id=${e}&token=${this.userToken}`,this.historyId>0&&(t+=`&history_id=${this.historyId}`)),t},previewUrl(){return $A.apiUrl(this.fileUrl)+"&down=preview"}},watch:{"value.id":{handler(e){!e||!$A.isDesktop()||(this.loading=!0,this.loadError=!1,$A.loadScript($A.apiUrl("../office/web-apps/apps/api/documents/api.js")).then(t=>{if(!this.documentKey){this.handleClose();return}const i=this.documentKey();i&&i.then?i.then(this.loadFile).catch(({msg:n})=>{$A.modalError({content:n})}):this.loadFile()}).catch(t=>{this.loadError=!0}).finally(t=>{this.loading=!1}))},immediate:!0},previewUrl:{handler(){$A.isDesktop()||(this.loading=!0)},immediate:!0}},methods:{onFrameLoad(){this.loading=!1},getType(e){switch(e){case"word":return"docx";case"excel":return"xlsx";case"ppt":return"pptx"}return e},loadFile(e=""){this.docEditor!==null&&(this.docEditor.destroyEditor(),this.docEditor=null);let t=a;switch(a){case"zh-CHT":t="zh-TW";break}let i=this.code||this.value.id,n=$A.strExists(this.fileName,".")?this.fileName:this.fileName+"."+this.fileType,l=`${this.fileType}-${e||i}`;this.historyId>0&&(l+=`-${this.historyId}`);const r={document:{fileType:this.fileType,title:n,key:l,url:`http://nginx/api/${this.fileUrl}`},editorConfig:{mode:"edit",lang:t,user:{id:String(this.userInfo.userid),name:this.userInfo.nickname},customization:{uiTheme:this.themeIsDark?"theme-dark":"theme-classic-light",forcesave:!0,help:!1},callbackUrl:`http://nginx/api/file/content/office?id=${i}&dootask-token=${this.userToken}`},events:{onDocumentReady:this.onDocumentReady}};/\/hideenOfficeTitle\//.test(window.navigator.userAgent)&&(r.document.title=" "),(async g=>{if((this.readOnly||this.historyId>0)&&(r.editorConfig.mode="view",r.editorConfig.callbackUrl=null,!r.editorConfig.user.id)){let o=await $A.IDBInt("officeViewer");o||(o=$A.randNum(1e3,99999),await $A.IDBSet("officeViewer",o)),r.editorConfig.user.id="viewer_"+o,r.editorConfig.user.name="Viewer_"+o}this.$nextTick(()=>{this.$store.dispatch("call",{url:"file/office/token",data:{config:r}}).then(({data:o})=>{if(r.token=o.token,this.docEditor=new DocsAPI.DocEditor(this.id,r),this.readOnly){var s=$("iframe[name='frameEditor']")[0];s==null||s.addEventListener("load",function(){s.contentWindow.postMessage("disableDownload","*")})}}).catch(({msg:o})=>{if(o.indexOf("404 not found")!==-1){$A.modalInfo({language:!1,title:"\u7248\u672C\u8FC7\u4F4E",content:"\u670D\u52A1\u5668\u7248\u672C\u8FC7\u4F4E\uFF0C\u8BF7\u5347\u7EA7\u670D\u52A1\u5668\u3002"});return}$A.modalError({content:o})})})})()},onDocumentReady(){this.$emit("on-document-ready",this.docEditor)}}},d={};var _=f(p,u,m,!1,y,"dcc24366",null,null);function y(e){for(let t in d)this[t]=d[t]}var w=function(){return _.exports}();export{w as default};
|
||||
@ -1 +1 @@
|
||||
.component-only-office[data-v-4d311d30]{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center}.component-only-office .placeholder[data-v-4d311d30]{flex:1;width:100%;height:100%}.component-only-office .office-loading[data-v-4d311d30]{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;z-index:2}.component-only-office .load-error{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1;padding:8px;display:flex;align-items:center}.component-only-office .load-error .ivu-alert-icon{position:static;margin-right:8px;margin-left:4px}
|
||||
.component-only-office[data-v-dcc24366]{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center}.component-only-office .placeholder[data-v-dcc24366]{flex:1;width:100%;height:100%}.component-only-office .office-loading[data-v-dcc24366]{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;z-index:2}.component-only-office .load-error{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1;padding:8px;display:flex;align-items:center}.component-only-office .load-error .ivu-alert-icon{position:static;margin-right:8px;margin-left:4px}
|
||||
1
public/js/build/OnlyOffice.f07263f2.js
vendored
@ -1 +0,0 @@
|
||||
import{m as f,n as c,l}from"./app.7b9537da.js";import{I as h}from"./IFrame.1636beca.js";var u=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"component-only-office"},[e.$A.isDesktop()?[e.loadError?i("Alert",{staticClass:"load-error",attrs:{type:"error","show-icon":""}},[e._v(e._s(e.$L("\u7EC4\u4EF6\u52A0\u8F7D\u5931\u8D25\uFF01")))]):e._e(),i("div",{staticClass:"placeholder",attrs:{id:e.id}})]:i("IFrame",{staticClass:"preview-iframe",attrs:{src:e.previewUrl},on:{"on-load":e.onFrameLoad}}),e.loading?i("div",{staticClass:"office-loading"},[i("Loading")],1):e._e()],2)},m=[];const p={name:"OnlyOffice",components:{IFrame:h},props:{id:{type:String,default:()=>"office_"+Math.round(Math.random()*1e4)},code:{type:String,default:""},historyId:{type:Number,default:0},value:{type:[Object,Array],default:function(){return{}}},readOnly:{type:Boolean,default:!1},documentKey:Function},data(){return{loading:!1,loadError:!1,docEditor:null}},beforeDestroy(){this.docEditor!==null&&(this.docEditor.destroyEditor(),this.docEditor=null)},computed:{...f(["userInfo","themeIsDark"]),fileType(){return this.getType(this.value.type)},fileName(){return this.value.name},fileUrl(){let e=this.code||this.value.id,t;return $A.leftExists(e,"msgFile_")?t=`dialog/msg/download/?msg_id=${$A.leftDelete(e,"msgFile_")}&token=${this.userToken}`:$A.leftExists(e,"taskFile_")?t=`project/task/filedown/?file_id=${$A.leftDelete(e,"taskFile_")}&token=${this.userToken}`:(t=`file/content/?id=${e}&token=${this.userToken}`,this.historyId>0&&(t+=`&history_id=${this.historyId}`)),t},previewUrl(){return $A.apiUrl(this.fileUrl)+"&down=preview"}},watch:{"value.id":{handler(e){!e||!$A.isDesktop()||(this.loading=!0,this.loadError=!1,$A.loadScript($A.apiUrl("../office/web-apps/apps/api/documents/api.js")).then(t=>{if(!this.documentKey){this.handleClose();return}const i=this.documentKey();i&&i.then?i.then(this.loadFile):this.loadFile()}).catch(t=>{this.loadError=!0}).finally(t=>{this.loading=!1}))},immediate:!0},previewUrl:{handler(){$A.isDesktop()||(this.loading=!0)},immediate:!0}},methods:{onFrameLoad(){this.loading=!1},getType(e){switch(e){case"word":return"docx";case"excel":return"xlsx";case"ppt":return"pptx"}return e},loadFile(e=""){this.docEditor!==null&&(this.docEditor.destroyEditor(),this.docEditor=null);let t=l;switch(l){case"zh-CHT":t="zh-TW";break}let i=this.code||this.value.id,d=$A.strExists(this.fileName,".")?this.fileName:this.fileName+"."+this.fileType,n=`${this.fileType}-${e||i}`;this.historyId>0&&(n+=`-${this.historyId}`);const o={document:{fileType:this.fileType,title:d,key:n,url:`http://nginx/api/${this.fileUrl}`},editorConfig:{mode:"edit",lang:t,user:{id:String(this.userInfo.userid),name:this.userInfo.nickname},customization:{uiTheme:this.themeIsDark?"theme-dark":"theme-classic-light",forcesave:!0,help:!1},callbackUrl:`http://nginx/api/file/content/office?id=${i}&dootask-token=${this.userToken}`},events:{onDocumentReady:this.onDocumentReady}};/\/hideenOfficeTitle\//.test(window.navigator.userAgent)&&(o.document.title=" "),(async g=>{if((this.readOnly||this.historyId>0)&&(o.editorConfig.mode="view",o.editorConfig.callbackUrl=null,!o.editorConfig.user.id)){let s=await $A.IDBInt("officeViewer");s||(s=$A.randNum(1e3,99999),await $A.IDBSet("officeViewer",s)),o.editorConfig.user.id="viewer_"+s,o.editorConfig.user.name="Viewer_"+s}this.$nextTick(()=>{this.$store.dispatch("call",{url:"file/office/token",data:{config:o}}).then(({data:s})=>{if(o.token=s.token,this.docEditor=new DocsAPI.DocEditor(this.id,o),this.readOnly){var r=$("iframe[name='frameEditor']")[0];r==null||r.addEventListener("load",function(){r.contentWindow.postMessage("disableDownload","*")})}}).catch(({msg:s})=>{$A.modalError({content:s})})})})()},onDocumentReady(){this.$emit("on-document-ready",this.docEditor)}}},a={};var _=c(p,u,m,!1,y,"4d311d30",null,null);function y(e){for(let t in a)this[t]=a[t]}var w=function(){return _.exports}();export{w as default};
|
||||
@ -1 +1 @@
|
||||
import{m as i,n as l}from"./app.7b9537da.js";var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"report-detail"},[a("div",{staticClass:"report-title"},[t._v(" "+t._s(t.data.title)+" "),t.loadIng>0?a("Icon",{staticClass:"icon-loading",attrs:{type:"ios-loading"}}):t._e()],1),t.formLabelWidth==="auto"?a("div",{staticClass:"report-detail-context"},[a("Form",{staticClass:"report-form auto-form",attrs:{"label-width":"auto",inline:""}},[a("FormItem",{attrs:{label:t.$L("\u6C47\u62A5\u4EBA")}},[a("UserAvatar",{attrs:{userid:t.data.userid,size:28}})],1),a("FormItem",{attrs:{label:t.$L("\u63D0\u4EA4\u65F6\u95F4")}},[t._v(" "+t._s(t.data.created_at)+" ")]),a("FormItem",{attrs:{label:t.$L("\u6C47\u62A5\u5BF9\u8C61")}},[t.data.receives_user.length===0?[t._v("-")]:t._l(t.data.receives_user,function(r,s){return a("UserAvatar",{key:s,attrs:{userid:r.userid,size:28}})})],2)],1),a("Form",{staticClass:"report-form auto-form",attrs:{"label-width":"auto"}},[a("FormItem",{attrs:{label:t.$L("\u6C47\u62A5\u5185\u5BB9")}},[a("div",{staticClass:"report-content",domProps:{innerHTML:t._s(t.data.content)}})])],1)],1):a("div",{staticClass:"report-detail-context"},[a("Form",{staticClass:"report-form",attrs:{labelPosition:t.formLabelPosition,labelWidth:t.formLabelWidth}},[t.formLabelWidth!=="auto"?[a("FormItem",{attrs:{label:t.$L("\u6C47\u62A5\u4EBA")}},[a("UserAvatar",{attrs:{userid:t.data.userid,size:28}})],1),a("FormItem",{attrs:{label:t.$L("\u63D0\u4EA4\u65F6\u95F4")}},[t._v(" "+t._s(t.data.created_at)+" ")]),a("FormItem",{attrs:{label:t.$L("\u6C47\u62A5\u5BF9\u8C61")}},[t.data.receives_user.length===0?[t._v("-")]:t._l(t.data.receives_user,function(r,s){return a("UserAvatar",{key:s,attrs:{userid:r.userid,size:28}})})],2)]:t._e(),a("FormItem",{attrs:{label:t.$L("\u6C47\u62A5\u5185\u5BB9")}},[a("div",{staticClass:"report-content",domProps:{innerHTML:t._s(t.data.content)}})])],2)],1)])},d=[];const c={name:"ReportDetail",props:{data:{default:{}}},data(){return{loadIng:0}},computed:{...i(["formLabelPosition","formLabelWidth"])},watch:{"data.id":{handler(t){t>0&&this.sendRead()},immediate:!0}},methods:{sendRead(){this.loadIng++,this.$store.dispatch("call",{url:"report/read",data:{ids:[this.data.id]}}).then(()=>{}).catch(()=>{}).finally(t=>{this.loadIng--})}}},o={};var m=l(c,n,d,!1,u,null,null,null);function u(t){for(let e in o)this[e]=o[e]}var v=function(){return m.exports}();export{v as R};
|
||||
import{m as i,n as l}from"./app.7d416d31.js";var n=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"report-detail"},[a("div",{staticClass:"report-title"},[t._v(" "+t._s(t.data.title)+" "),t.loadIng>0?a("Icon",{staticClass:"icon-loading",attrs:{type:"ios-loading"}}):t._e()],1),t.formLabelWidth==="auto"?a("div",{staticClass:"report-detail-context"},[a("Form",{staticClass:"report-form auto-form",attrs:{"label-width":"auto",inline:""}},[a("FormItem",{attrs:{label:t.$L("\u6C47\u62A5\u4EBA")}},[a("UserAvatar",{attrs:{userid:t.data.userid,size:28}})],1),a("FormItem",{attrs:{label:t.$L("\u63D0\u4EA4\u65F6\u95F4")}},[t._v(" "+t._s(t.data.created_at)+" ")]),a("FormItem",{attrs:{label:t.$L("\u6C47\u62A5\u5BF9\u8C61")}},[t.data.receives_user.length===0?[t._v("-")]:t._l(t.data.receives_user,function(r,s){return a("UserAvatar",{key:s,attrs:{userid:r.userid,size:28}})})],2)],1),a("Form",{staticClass:"report-form auto-form",attrs:{"label-width":"auto"}},[a("FormItem",{attrs:{label:t.$L("\u6C47\u62A5\u5185\u5BB9")}},[a("div",{staticClass:"report-content",domProps:{innerHTML:t._s(t.data.content)}})])],1)],1):a("div",{staticClass:"report-detail-context"},[a("Form",{staticClass:"report-form",attrs:{labelPosition:t.formLabelPosition,labelWidth:t.formLabelWidth}},[t.formLabelWidth!=="auto"?[a("FormItem",{attrs:{label:t.$L("\u6C47\u62A5\u4EBA")}},[a("UserAvatar",{attrs:{userid:t.data.userid,size:28}})],1),a("FormItem",{attrs:{label:t.$L("\u63D0\u4EA4\u65F6\u95F4")}},[t._v(" "+t._s(t.data.created_at)+" ")]),a("FormItem",{attrs:{label:t.$L("\u6C47\u62A5\u5BF9\u8C61")}},[t.data.receives_user.length===0?[t._v("-")]:t._l(t.data.receives_user,function(r,s){return a("UserAvatar",{key:s,attrs:{userid:r.userid,size:28}})})],2)]:t._e(),a("FormItem",{attrs:{label:t.$L("\u6C47\u62A5\u5185\u5BB9")}},[a("div",{staticClass:"report-content",domProps:{innerHTML:t._s(t.data.content)}})])],2)],1)])},d=[];const c={name:"ReportDetail",props:{data:{default:{}}},data(){return{loadIng:0}},computed:{...i(["formLabelPosition","formLabelWidth"])},watch:{"data.id":{handler(t){t>0&&this.sendRead()},immediate:!0}},methods:{sendRead(){this.loadIng++,this.$store.dispatch("call",{url:"report/read",data:{ids:[this.data.id]}}).then(()=>{}).catch(()=>{}).finally(t=>{this.loadIng--})}}},o={};var m=l(c,n,d,!1,u,null,null,null);function u(t){for(let e in o)this[e]=o[e]}var v=function(){return m.exports}();export{v as R};
|
||||
1
public/js/build/ReportEdit.27417818.js
vendored
Normal file
1
public/js/build/ReportEdit.a0bfbdcf.js
vendored
1
public/js/build/TaskDetail.1fec1499.js
vendored
1
public/js/build/TaskDetail.479e3063.js
vendored
Normal file
1
public/js/build/TaskMenu.4b5d8a72.js
vendored
@ -1 +0,0 @@
|
||||
import{m as i,b as n,n as l}from"./app.7b9537da.js";var r=function(){var t=this,s=t.$createElement,e=t._self._c||s;return e("div",{staticClass:"task-menu-icon",on:{click:t.handleClick}},[t.loadIng?e("div",{staticClass:"loading"},[e("Loading")],1):[t.task.complete_at?e("Icon",{staticClass:"completed",attrs:{type:t.completedIcon}}):e("Icon",{staticClass:"uncomplete",attrs:{type:t.icon}})]],2)},d=[];const c={name:"TaskMenu",props:{task:{type:Object,default:()=>({})},loadStatus:{type:Boolean,default:!1},colorShow:{type:Boolean,default:!0},updateBefore:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},size:{type:String,default:"small"},icon:{type:String,default:"md-radio-button-off"},completedIcon:{type:String,default:"md-checkmark-circle"}},computed:{...i(["loads","taskFlows"]),...n(["isLoad"]),loadIng(){return this.loadStatus?!0:this.isLoad(`task-${this.task.id}`)}},methods:{handleClick(t){this.$store.state.taskOperation={event:t,task:this.task,loadStatus:this.loadStatus,colorShow:this.colorShow,updateBefore:this.updateBefore,disabled:this.disabled,size:this.size,onUpdate:s=>{this.$emit("on-update",s)}}},updateTask(t){if(this.loadIng)return;Object.keys(t).forEach(e=>this.$set(this.task,e,t[e]));const s=Object.assign(t,{task_id:this.task.id});this.$store.dispatch("taskUpdate",s).then(({data:e,msg:o})=>{$A.messageSuccess(o),this.$store.dispatch("saveTaskBrowse",s.task_id),this.$emit("on-update",e)}).catch(({msg:e})=>{$A.modalError(e),this.$store.dispatch("getTaskOne",s.task_id).catch(()=>{})})}}},a={};var u=l(c,r,d,!1,p,null,null,null);function p(t){for(let s in a)this[s]=a[s]}var m=function(){return u.exports}();export{m as T};
|
||||
1
public/js/build/UserSelect.ee0927b8.js
vendored
22
public/js/build/add-project.a5c9a747.svg
Normal file
@ -0,0 +1,22 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:#87D068;}
|
||||
.st1{fill:#FFFFFF;}
|
||||
</style>
|
||||
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
|
||||
<g>
|
||||
<g>
|
||||
<path class="st1" d="M35.7,20.1c0-0.8-0.4-1.5-1.1-1.9l-8.9-5.1c-1-0.6-2.2-0.6-3.1,0l-9.1,5.2c-0.6,0.4-1,1-1,1.8s0.4,1.4,1,1.8
|
||||
l9.1,5.2c0.5,0.3,1,0.4,1.6,0.4c0.5,0,1.1-0.1,1.6-0.4l8.9-5.1C35.3,21.6,35.7,20.9,35.7,20.1z"/>
|
||||
<path class="st1" d="M24,29.7c-0.4,0-0.8-0.1-1.2-0.3l-9-5.1c-0.4-0.2-0.9-0.1-1.2,0.3c-0.2,0.4-0.1,0.9,0.3,1.2l9,5.1
|
||||
c0.6,0.4,1.3,0.6,2,0.6c0,0,0,0,0,0c0.5,0,0.9-0.4,0.9-0.9C24.9,30.1,24.5,29.7,24,29.7z"/>
|
||||
<path class="st1" d="M24,33.5c-0.6,0-1.3-0.2-1.8-0.5l-8.4-4.8c-0.4-0.2-0.9-0.1-1.2,0.3c-0.2,0.4-0.1,0.9,0.3,1.2l8.4,4.8
|
||||
c0.8,0.5,1.7,0.7,2.6,0.7c0,0,0,0,0,0c0.5,0,0.9-0.4,0.9-0.9C24.9,33.9,24.5,33.5,24,33.5z"/>
|
||||
<path class="st1" d="M34.8,30h-2.6v-2.6c0-0.5-0.4-0.9-0.9-0.9c-0.5,0-0.9,0.4-0.9,0.9V30h-2.6c-0.5,0-0.9,0.4-0.9,0.9
|
||||
s0.4,0.9,0.9,0.9h2.6v2.6c0,0.5,0.4,0.9,0.9,0.9c0.5,0,0.9-0.4,0.9-0.9v-2.6h2.6c0.5,0,0.9-0.4,0.9-0.9S35.3,30,34.8,30z"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.4 KiB |
29
public/js/build/add-task.45a04438.svg
Normal file
@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:#87D068;}
|
||||
.st1{fill:#FFFFFF;}
|
||||
</style>
|
||||
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
|
||||
<g>
|
||||
<g>
|
||||
<circle class="st1" cx="19.7" cy="26.6" r="0.9"/>
|
||||
<g>
|
||||
<path class="st1" d="M29,26.9c0.5,0,0.9,0.4,0.9,0.9l0,2.6l2.6,0c0.5,0,0.9,0.4,0.9,0.9c0,0.5-0.4,0.9-0.9,0.9l-2.6,0l0,2.6
|
||||
c0,0.5-0.4,0.9-0.9,0.9c-0.5,0-0.9-0.4-0.9-0.9l0-2.6l-2.6,0c-0.5,0-0.9-0.4-0.9-0.9c0-0.5,0.4-0.9,0.9-0.9l2.6,0l0-2.6
|
||||
C28.1,27.3,28.5,26.9,29,26.9"/>
|
||||
</g>
|
||||
<g>
|
||||
<path class="st1" d="M26.6,34.8l0-1.2l-1.2,0c0,0,0,0,0,0c-0.6,0-1.2-0.2-1.6-0.7c-0.4-0.4-0.7-1-0.7-1.6c0-0.6,0.2-1.2,0.7-1.6
|
||||
c0.4-0.4,1-0.7,1.6-0.7l1.2,0l0-1.2c0-1.3,1-2.3,2.3-2.3c0,0,0,0,0,0c1.3,0,2.3,1,2.3,2.3l0,1.2l1.2,0c0,0,0,0,0,0
|
||||
c0.3,0,0.6,0.1,0.9,0.2V14.7c0-1.3-1.1-2.3-2.3-2.3H17c-1.3,0-2.3,1.1-2.3,2.3v18.7c0,1.3,1,2.3,2.3,2.3h9.8
|
||||
C26.7,35.4,26.6,35.1,26.6,34.8z M19.7,29.3c-1.4,0-2.6-1.2-2.6-2.6s1.2-2.6,2.6-2.6s2.6,1.2,2.6,2.6S21.1,29.3,19.7,29.3z
|
||||
M22.6,17.9l-2.9,2.9c-0.2,0.2-0.4,0.3-0.6,0.3s-0.4-0.1-0.6-0.3l-1.2-1.2c-0.3-0.3-0.3-0.9,0-1.2s0.9-0.3,1.2,0l0.5,0.5l2.3-2.3
|
||||
c0.3-0.3,0.9-0.3,1.2,0S23,17.6,22.6,17.9z M24.9,17.6h4.7c0.5,0,0.9,0.4,0.9,0.9s-0.4,0.9-0.9,0.9h-4.7c-0.5,0-0.9-0.4-0.9-0.9
|
||||
S24.4,17.6,24.9,17.6z"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.6 KiB |
27
public/js/build/all-user.1d203f3c.svg
Normal file
@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:#F57775;}
|
||||
.st1{fill:#FFFFFF;}
|
||||
</style>
|
||||
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
|
||||
<g>
|
||||
<g>
|
||||
<path class="st1" d="M21.5,24.5c-3.3,0-6-2.7-6-6s2.7-6,6-6s6,2.7,6,6C27.6,21.8,24.9,24.5,21.5,24.5z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path class="st1" d="M28.8,35.5H14.3c-1.1,0-2-0.9-2-2v-4.1c0-1.7,1.4-3.1,3.1-3.1h12.2c1.7,0,3.1,1.4,3.1,3.1v4.1
|
||||
C30.7,34.6,29.9,35.5,28.8,35.5z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path class="st1" d="M29.6,22.5c-0.3,0-0.5-0.1-0.7-0.3c-0.2-0.3-0.2-0.7,0-1c0.6-0.8,0.9-1.7,0.9-2.7s-0.3-1.9-0.9-2.7
|
||||
c-0.2-0.3-0.2-0.7,0-1s0.6-0.4,0.9-0.3c1.7,0.6,2.9,2.2,2.9,4s-1.2,3.4-2.9,4C29.8,22.5,29.7,22.5,29.6,22.5z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path class="st1" d="M34,34.7h-0.7c-0.3,0-0.5-0.1-0.7-0.3s-0.2-0.5-0.1-0.7c0-0.1,0-0.1,0-0.1v-4c0-0.4-0.2-0.7-0.3-0.9
|
||||
c-0.2-0.2-0.2-0.6-0.1-0.9c0.1-0.3,0.4-0.5,0.7-0.5H33c1.4,0,2.6,1.2,2.6,2.6V33C35.7,34,34.9,34.7,34,34.7z"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.3 KiB |
1
public/js/build/app-push.d5e56edc.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25679"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#9D95E5" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25679)"><g><path d="M35.6226,12.187076C35.9089,12.366451,36.0526,12.70563,35.9824,13.03611L32.5574,33.5856C32.4912,34.000299999999996,32.1282,34.3018,31.7084,34.290800000000004C31.599,34.289100000000005,31.4912,34.2646,31.3918,34.2188L25.333399999999997,31.7437L22.095599999999997,35.6866C21.9377,35.8896,21.69045,36.0025,21.43364,35.9888C21.33001,35.990700000000004,21.22712,35.9711,21.131439999999998,35.9313C20.96605,35.8728,20.82448,35.7615,20.72851,35.6147C20.62727,35.4715,20.57206,35.300799999999995,20.57021,35.1254L20.57021,30.4629L32.125699999999995,16.28835L17.821640000000002,28.6641L12.540347,26.4912C12.225567,26.3831,12.0117595,26.09,12.0050232,25.7573C11.9677587,25.428800000000003,12.140421,25.112299999999998,12.436736,24.9658L34.7016,12.115123C34.833200000000005,12.040216,34.981899999999996,12.000561138,35.1333,12C35.3072,12.0294109,35.4735,12.092995,35.6226,12.187076Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></svg>
|
||||
|
After Width: | Height: | Size: 1.3 KiB |
6
public/js/build/app.9141377f.css
vendored
6
public/js/build/app.c3e7b3d4.css
vendored
Normal file
1
public/js/build/application.71e14442.js
vendored
1
public/js/build/application.d1dfa10a.js
vendored
Normal file
1
public/js/build/approve.c0c85d70.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25613"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#F57775" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25613)"><g><g><path d="M32.753299999999996,26.9593L30.357,26.9593C29.1345,26.957700000000003,28.1438,25.967100000000002,28.142200000000003,24.744500000000002C28.139499999999998,24.1851,28.3448,23.6446,28.7182,23.228099999999998C31.2206,20.597839999999998,31.1498,16.44632,28.5592,13.9029C25.9685,11.359486,21.816380000000002,11.365081,19.23258,13.91547C16.648789999999998,16.46586,16.58916,20.61755,19.09864,23.2411C19.45887,23.6577,19.65585,24.1909,19.65307,24.7416C19.65997,25.8988,18.7744,26.8659,17.62114,26.9608L15.40058,26.9608C14.07758,26.9608,13.00396661,28.0311,13,29.3541L13,31.5142C13,32.024,13.413276,32.4373,13.923077,32.4373L34.227900000000005,32.4373C34.737700000000004,32.4373,35.150999999999996,32.024,35.150999999999996,31.5142L35.150999999999996,29.3541C35.145399999999995,28.0327,34.0747,26.9633,32.753299999999996,26.9593Z" fill="#FFFFFF" fill-opacity="1"/></g><g><path d="M34.2308,35.999994833374025L13.923077,35.999994833374025C13.413276,35.999994833374025,13.000000054161,35.58672483337402,13.000000054161,35.07692183337402C13.000000054161,34.56712083337403,13.413276,34.15384483337402,13.923077,34.15384483337402L34.227900000000005,34.15384483337402C34.737700000000004,34.15384483337402,35.150999999999996,34.56712083337403,35.150999999999996,35.07692183337402C35.150999999999996,35.58672483337402,34.737700000000004,35.999994833374025,34.227900000000005,35.999994833374025L34.2308,35.999994833374025Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></g></svg>
|
||||
|
After Width: | Height: | Size: 1.8 KiB |
1
public/js/build/apps.262556ef.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
import{M as i}from"./MicroApps.3165b11f.js";import{n as s}from"./app.7d416d31.js";import"./DialogWrapper.8f2d3b49.js";import"./longpress.c69d0833.js";import"./index.bf62123c.js";import"./ImgUpload.24b2ef1e.js";import"./details.849800ac.js";import"./tip.5e3797d0.js";var n=function(){var t=this,e=t.$createElement,r=t._self._c||e;return r("div",{staticClass:"electron-single-micro-apps"},[!t.loading&&t.$route.name=="single-apps"?r("MicroApps",{attrs:{url:t.appUrl,path:t.path}}):t._e()],1)},p=[];const o={components:{MicroApps:i},data(){return{loading:!1,appUrl:"",path:""}},deactivated(){this.loading=!0},watch:{$route:{handler(t){this.loading=!0,t.name=="single-apps"?this.$nextTick(()=>{this.loading=!1,this.appUrl={}.VITE_OKR_WEB_URL||$A.apiUrl("../apps/okr"),this.path=this.$route.query.path||""}):this.appUrl=""},immediate:!0}}},a={};var l=s(o,n,p,!1,c,null,null,null);function c(t){for(let e in a)this[e]=a[e]}var U=function(){return l.exports}();export{U as default};
|
||||
1
public/js/build/apps.33dca586.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
import{M as n}from"./MicroApps.3165b11f.js";import{n as p}from"./app.7d416d31.js";import"./DialogWrapper.8f2d3b49.js";import"./longpress.c69d0833.js";import"./index.bf62123c.js";import"./ImgUpload.24b2ef1e.js";import"./details.849800ac.js";import"./tip.5e3797d0.js";var i=function(){var t=this,a=t.$createElement,e=t._self._c||a;return!t.loading&&t.$route.name=="manage-apps"?e("MicroApps",{attrs:{url:t.appUrl,path:t.path}}):t._e()},o=[];const s={components:{MicroApps:n},data(){return{loading:!1,appUrl:"",path:""}},deactivated(){this.loading=!0},watch:{$route:{handler(t){this.loading=!0,t.name=="manage-apps"?this.$nextTick(()=>{this.loading=!1,this.appUrl={}.VITE_OKR_WEB_URL||$A.apiUrl("../apps/okr"),this.path=this.$route.query.path||""}):this.appUrl=""},immediate:!0}}},r={};var l=p(s,i,o,!1,m,null,null,null);function m(t){for(let a in r)this[a]=r[a]}var U=function(){return l.exports}();export{U as default};
|
||||
1
public/js/build/apps.d06d8e17.js
vendored
@ -1 +0,0 @@
|
||||
import{M as p}from"./MicroApps.8d5df57c.js";import{n as i}from"./app.7b9537da.js";import"./DialogWrapper.43cbe6f6.js";import"./longpress.43ca7fd9.js";import"./index.9b5108ee.js";import"./UserSelect.ee0927b8.js";import"./ImgUpload.0ea1891a.js";import"./details.7499a239.js";import"./tip.1e66110a.js";var n=function(){var t=this,r=t.$createElement,e=t._self._c||r;return!t.loading&&t.$route.name=="manage-apps"?e("MicroApps",{attrs:{url:t.appUrl,path:t.path}}):t._e()},o=[];const s={components:{MicroApps:p},data(){return{loading:!1,appUrl:"",path:""}},deactivated(){this.loading=!0},watch:{$route:{handler(t){this.loading=!0,t.name=="manage-apps"?this.$nextTick(()=>{this.loading=!1,this.appUrl={}.VITE_OKR_WEB_URL||$A.apiUrl("../apps/okr"),this.path=this.$route.query.path||""}):this.appUrl=""},immediate:!0}}},a={};var l=i(s,n,o,!1,m,null,null,null);function m(t){for(let r in a)this[r]=a[r]}var $=function(){return l.exports}();export{$ as default};
|
||||
@ -1 +1 @@
|
||||
import t from"./bn.min.d4b8f1ba.js";import"./app.7b9537da.js";/*! OpenPGP.js v5.7.0-1 - 2023-06-10 - this is LGPL licensed code, see LICENSE/our website https://openpgpjs.org/ for more information. */class i{constructor(e){if(e===void 0)throw Error("Invalid BigInteger input");this.value=new t(e)}clone(){const e=new i(null);return this.value.copy(e.value),e}iinc(){return this.value.iadd(new t(1)),this}inc(){return this.clone().iinc()}idec(){return this.value.isub(new t(1)),this}dec(){return this.clone().idec()}iadd(e){return this.value.iadd(e.value),this}add(e){return this.clone().iadd(e)}isub(e){return this.value.isub(e.value),this}sub(e){return this.clone().isub(e)}imul(e){return this.value.imul(e.value),this}mul(e){return this.clone().imul(e)}imod(e){return this.value=this.value.umod(e.value),this}mod(e){return this.clone().imod(e)}modExp(e,r){const n=r.isEven()?t.red(r.value):t.mont(r.value),u=this.clone();return u.value=u.value.toRed(n).redPow(e.value).fromRed(),u}modInv(e){if(!this.gcd(e).isOne())throw Error("Inverse does not exist");return new i(this.value.invm(e.value))}gcd(e){return new i(this.value.gcd(e.value))}ileftShift(e){return this.value.ishln(e.value.toNumber()),this}leftShift(e){return this.clone().ileftShift(e)}irightShift(e){return this.value.ishrn(e.value.toNumber()),this}rightShift(e){return this.clone().irightShift(e)}equal(e){return this.value.eq(e.value)}lt(e){return this.value.lt(e.value)}lte(e){return this.value.lte(e.value)}gt(e){return this.value.gt(e.value)}gte(e){return this.value.gte(e.value)}isZero(){return this.value.isZero()}isOne(){return this.value.eq(new t(1))}isNegative(){return this.value.isNeg()}isEven(){return this.value.isEven()}abs(){const e=this.clone();return e.value=e.value.abs(),e}toString(){return this.value.toString()}toNumber(){return this.value.toNumber()}getBit(e){return this.value.testn(e)?1:0}bitLength(){return this.value.bitLength()}byteLength(){return this.value.byteLength()}toUint8Array(e="be",r){return this.value.toArrayLike(Uint8Array,e,r)}}export{i as default};
|
||||
import t from"./bn.min.05c9158e.js";import"./app.7d416d31.js";/*! OpenPGP.js v5.7.0-1 - 2023-06-10 - this is LGPL licensed code, see LICENSE/our website https://openpgpjs.org/ for more information. */class i{constructor(e){if(e===void 0)throw Error("Invalid BigInteger input");this.value=new t(e)}clone(){const e=new i(null);return this.value.copy(e.value),e}iinc(){return this.value.iadd(new t(1)),this}inc(){return this.clone().iinc()}idec(){return this.value.isub(new t(1)),this}dec(){return this.clone().idec()}iadd(e){return this.value.iadd(e.value),this}add(e){return this.clone().iadd(e)}isub(e){return this.value.isub(e.value),this}sub(e){return this.clone().isub(e)}imul(e){return this.value.imul(e.value),this}mul(e){return this.clone().imul(e)}imod(e){return this.value=this.value.umod(e.value),this}mod(e){return this.clone().imod(e)}modExp(e,r){const n=r.isEven()?t.red(r.value):t.mont(r.value),u=this.clone();return u.value=u.value.toRed(n).redPow(e.value).fromRed(),u}modInv(e){if(!this.gcd(e).isOne())throw Error("Inverse does not exist");return new i(this.value.invm(e.value))}gcd(e){return new i(this.value.gcd(e.value))}ileftShift(e){return this.value.ishln(e.value.toNumber()),this}leftShift(e){return this.clone().ileftShift(e)}irightShift(e){return this.value.ishrn(e.value.toNumber()),this}rightShift(e){return this.clone().irightShift(e)}equal(e){return this.value.eq(e.value)}lt(e){return this.value.lt(e.value)}lte(e){return this.value.lte(e.value)}gt(e){return this.value.gt(e.value)}gte(e){return this.value.gte(e.value)}isZero(){return this.value.isZero()}isOne(){return this.value.eq(new t(1))}isNegative(){return this.value.isNeg()}isEven(){return this.value.isEven()}abs(){const e=this.clone();return e.value=e.value.abs(),e}toString(){return this.value.toString()}toNumber(){return this.value.toNumber()}getBit(e){return this.value.testn(e)?1:0}bitLength(){return this.value.bitLength()}byteLength(){return this.value.byteLength()}toUint8Array(e="be",r){return this.value.toArrayLike(Uint8Array,e,r)}}export{i as default};
|
||||
19
public/js/build/calendar.972f5520.svg
Normal file
@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:#FFAA64;}
|
||||
.st1{fill:#FFFFFF;}
|
||||
</style>
|
||||
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
|
||||
<path class="st1" d="M32.5,14.5h-4.3v-1c0-0.4-0.3-0.8-0.8-0.8s-0.8,0.3-0.8,0.8v1h-5.3v-1c0-0.4-0.3-0.8-0.8-0.8s-0.8,0.3-0.8,0.8
|
||||
v1h-4.3c-1.5,0-2.8,1.2-2.8,2.8v15.3c0,1.5,1.2,2.8,2.8,2.8h17c1.5,0,2.8-1.2,2.8-2.8V17.2C35.2,15.7,34,14.5,32.5,14.5z M15.5,16
|
||||
h4.3v1c0,0.4,0.3,0.8,0.8,0.8s0.8-0.3,0.8-0.8v-1h5.3v1c0,0.4,0.3,0.8,0.8,0.8s0.8-0.3,0.8-0.8v-1h4.3c0.7,0,1.2,0.6,1.2,1.2v2.9
|
||||
H14.2v-2.9C14.2,16.5,14.8,16,15.5,16z M18.3,28.1L18.3,28.1c0.6,0,1.1,0.5,1.1,1.1c0,0.6-0.5,1-1,1c-0.6,0-1.1-0.5-1.1-1
|
||||
C17.3,28.5,17.8,28.1,18.3,28.1z M17.3,25.1c0-0.6,0.5-1,1-1h0c0.6,0,1,0.5,1,1s-0.5,1-1,1C17.8,26.2,17.3,25.7,17.3,25.1z M24,28.1
|
||||
L24,28.1c0.6,0,1.1,0.5,1.1,1.1c0,0.6-0.5,1-1,1c-0.6,0-1.1-0.5-1.1-1C23,28.5,23.4,28.1,24,28.1z M23,25.1c0-0.6,0.5-1,1-1h0
|
||||
c0.6,0,1,0.5,1,1s-0.5,1-1,1C23.4,26.2,23,25.7,23,25.1z M29.7,28.1L29.7,28.1c0.6,0,1.1,0.5,1.1,1.1c0,0.6-0.5,1-1,1
|
||||
c-0.6,0-1.1-0.5-1.1-1C28.6,28.5,29.1,28.1,29.7,28.1z M28.6,25.1c0-0.6,0.5-1,1-1h0c0.6,0,1,0.5,1,1s-0.5,1-1,1
|
||||
C29.1,26.2,28.6,25.7,28.6,25.1z"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.5 KiB |
1
public/js/build/dashboard.a5de3743.js
vendored
1
public/js/build/dashboard.c50369c8.js
vendored
Normal file
@ -1 +1 @@
|
||||
import{m as r,n}from"./app.7b9537da.js";var o=function(){var t=this,s=t.$createElement,e=t._self._c||s;return e("div",{staticClass:"setting-item submit"},[t.configLoad>0?e("Loading"):e("Form",{ref:"formDatum",attrs:{model:t.formDatum,rules:t.ruleDatum,labelPosition:t.formLabelPosition,labelWidth:t.formLabelWidth},nativeOn:{submit:function(i){i.preventDefault()}}},[t.isLdap?e("Alert",{attrs:{type:"warning"}},[t._v(t._s(t.$L("LDAP \u7528\u6237\u7981\u6B62\u4FEE\u6539\u90AE\u7BB1\u5730\u5740")))]):t._e(),e("FormItem",{attrs:{label:t.$L("\u65B0\u90AE\u7BB1\u5730\u5740"),prop:"newEmail"}},[t.isRegVerify==1?e("Input",{class:t.count>0?"setting-send-input":"setting-input",attrs:{search:"","enter-button":t.$L(t.sendBtnText),disabled:t.isLdap,placeholder:t.$L("\u8F93\u5165\u65B0\u90AE\u7BB1\u5730\u5740")},on:{"on-search":t.sendEmailCode},model:{value:t.formDatum.newEmail,callback:function(i){t.$set(t.formDatum,"newEmail",i)},expression:"formDatum.newEmail"}}):e("Input",{staticClass:"setting-input",attrs:{disabled:t.isLdap,placeholder:t.$L("\u8F93\u5165\u65B0\u90AE\u7BB1\u5730\u5740")},model:{value:t.formDatum.newEmail,callback:function(i){t.$set(t.formDatum,"newEmail",i)},expression:"formDatum.newEmail"}})],1),t.isRegVerify==1?e("FormItem",{attrs:{label:t.$L("\u9A8C\u8BC1\u7801"),prop:"code"}},[e("Input",{attrs:{placeholder:t.$L("\u8F93\u5165\u90AE\u7BB1\u9A8C\u8BC1\u7801")},model:{value:t.formDatum.code,callback:function(i){t.$set(t.formDatum,"code",i)},expression:"formDatum.code"}})],1):t._e()],1),e("div",{staticClass:"setting-footer"},[e("Button",{attrs:{loading:t.loadIng>0,type:"primary",disabled:t.isLdap},on:{click:t.submitForm}},[t._v(t._s(t.$L("\u63D0\u4EA4")))]),e("Button",{staticStyle:{"margin-left":"8px"},attrs:{loading:t.loadIng>0},on:{click:t.resetForm}},[t._v(t._s(t.$L("\u91CD\u7F6E")))])],1)],1)},l=[];const m={data(){return{loadIng:0,configLoad:0,formDatum:{newEmail:"",code:""},ruleDatum:{newEmail:[{validator:(t,s,e)=>{s.trim()===""?e(new Error(this.$L("\u8BF7\u8F93\u5165\u65B0\u90AE\u7BB1\u5730\u5740\uFF01"))):$A.isEmail(s.trim())?e():e(new Error(this.$L("\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u90AE\u7BB1\u5730\u5740\uFF01")))},required:!0,trigger:"change"}]},count:0,isSendButtonShow:!0,isRegVerify:0,sendBtnText:this.$L("\u53D1\u9001\u9A8C\u8BC1\u7801")}},mounted(){this.getRegVerify()},computed:{...r(["formLabelPosition","formLabelWidth"]),isLdap(){return this.$store.state.userInfo.identity.includes("ldap")}},methods:{sendEmailCode(){this.$store.dispatch("call",{url:"users/email/send",data:{type:2,email:this.formDatum.newEmail},spinner:!0}).then(t=>{this.isSendButtonShow=!1,this.count=120,this.sendBtnText=this.count+" \u79D2";let s=setInterval(()=>{this.count--,this.sendBtnText=this.count+" \u79D2",this.count<=0&&(this.sendBtnText=this.$L("\u53D1\u9001\u9A8C\u8BC1\u7801"),clearInterval(s))},1e3)}).catch(({msg:t})=>{$A.messageError(t)})},submitForm(){this.$refs.formDatum.validate(t=>{t&&(this.loadIng++,this.$store.dispatch("call",{url:"users/email/edit",data:this.formDatum}).then(({data:s})=>{this.count=0,this.sendBtnText=this.$L("\u53D1\u9001\u9A8C\u8BC1\u7801"),$A.messageSuccess("\u4FEE\u6539\u6210\u529F"),this.$store.dispatch("saveUserInfo",s),this.$refs.formDatum.resetFields(),this.isSendButtonShow=!0}).catch(({msg:s})=>{$A.modalError(s)}).finally(s=>{this.loadIng--}))})},resetForm(){this.$refs.formDatum.resetFields()},getRegVerify(){this.configLoad++,this.$store.dispatch("call",{url:"system/setting/email"}).then(({data:t})=>{this.isRegVerify=t.reg_verify==="open"}).finally(t=>{this.configLoad--})}}},a={};var u=n(m,o,l,!1,d,null,null,null);function d(t){for(let s in a)this[s]=a[s]}var f=function(){return u.exports}();export{f as default};
|
||||
import{m as r,n}from"./app.7d416d31.js";var o=function(){var t=this,s=t.$createElement,e=t._self._c||s;return e("div",{staticClass:"setting-item submit"},[t.configLoad>0?e("Loading"):e("Form",{ref:"formDatum",attrs:{model:t.formDatum,rules:t.ruleDatum,labelPosition:t.formLabelPosition,labelWidth:t.formLabelWidth},nativeOn:{submit:function(i){i.preventDefault()}}},[t.isLdap?e("Alert",{attrs:{type:"warning"}},[t._v(t._s(t.$L("LDAP \u7528\u6237\u7981\u6B62\u4FEE\u6539\u90AE\u7BB1\u5730\u5740")))]):t._e(),e("FormItem",{attrs:{label:t.$L("\u65B0\u90AE\u7BB1\u5730\u5740"),prop:"newEmail"}},[t.isRegVerify==1?e("Input",{class:t.count>0?"setting-send-input":"setting-input",attrs:{search:"","enter-button":t.$L(t.sendBtnText),disabled:t.isLdap,placeholder:t.$L("\u8F93\u5165\u65B0\u90AE\u7BB1\u5730\u5740")},on:{"on-search":t.sendEmailCode},model:{value:t.formDatum.newEmail,callback:function(i){t.$set(t.formDatum,"newEmail",i)},expression:"formDatum.newEmail"}}):e("Input",{staticClass:"setting-input",attrs:{disabled:t.isLdap,placeholder:t.$L("\u8F93\u5165\u65B0\u90AE\u7BB1\u5730\u5740")},model:{value:t.formDatum.newEmail,callback:function(i){t.$set(t.formDatum,"newEmail",i)},expression:"formDatum.newEmail"}})],1),t.isRegVerify==1?e("FormItem",{attrs:{label:t.$L("\u9A8C\u8BC1\u7801"),prop:"code"}},[e("Input",{attrs:{placeholder:t.$L("\u8F93\u5165\u90AE\u7BB1\u9A8C\u8BC1\u7801")},model:{value:t.formDatum.code,callback:function(i){t.$set(t.formDatum,"code",i)},expression:"formDatum.code"}})],1):t._e()],1),e("div",{staticClass:"setting-footer"},[e("Button",{attrs:{loading:t.loadIng>0,type:"primary",disabled:t.isLdap},on:{click:t.submitForm}},[t._v(t._s(t.$L("\u63D0\u4EA4")))]),e("Button",{staticStyle:{"margin-left":"8px"},attrs:{loading:t.loadIng>0},on:{click:t.resetForm}},[t._v(t._s(t.$L("\u91CD\u7F6E")))])],1)],1)},l=[];const m={data(){return{loadIng:0,configLoad:0,formDatum:{newEmail:"",code:""},ruleDatum:{newEmail:[{validator:(t,s,e)=>{s.trim()===""?e(new Error(this.$L("\u8BF7\u8F93\u5165\u65B0\u90AE\u7BB1\u5730\u5740\uFF01"))):$A.isEmail(s.trim())?e():e(new Error(this.$L("\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u90AE\u7BB1\u5730\u5740\uFF01")))},required:!0,trigger:"change"}]},count:0,isSendButtonShow:!0,isRegVerify:0,sendBtnText:this.$L("\u53D1\u9001\u9A8C\u8BC1\u7801")}},mounted(){this.getRegVerify()},computed:{...r(["formLabelPosition","formLabelWidth"]),isLdap(){return this.$store.state.userInfo.identity.includes("ldap")}},methods:{sendEmailCode(){this.$store.dispatch("call",{url:"users/email/send",data:{type:2,email:this.formDatum.newEmail},spinner:!0}).then(t=>{this.isSendButtonShow=!1,this.count=120,this.sendBtnText=this.count+" \u79D2";let s=setInterval(()=>{this.count--,this.sendBtnText=this.count+" \u79D2",this.count<=0&&(this.sendBtnText=this.$L("\u53D1\u9001\u9A8C\u8BC1\u7801"),clearInterval(s))},1e3)}).catch(({msg:t})=>{$A.messageError(t)})},submitForm(){this.$refs.formDatum.validate(t=>{t&&(this.loadIng++,this.$store.dispatch("call",{url:"users/email/edit",data:this.formDatum}).then(({data:s})=>{this.count=0,this.sendBtnText=this.$L("\u53D1\u9001\u9A8C\u8BC1\u7801"),$A.messageSuccess("\u4FEE\u6539\u6210\u529F"),this.$store.dispatch("saveUserInfo",s),this.$refs.formDatum.resetFields(),this.isSendButtonShow=!0}).catch(({msg:s})=>{$A.modalError(s)}).finally(s=>{this.loadIng--}))})},resetForm(){this.$refs.formDatum.resetFields()},getRegVerify(){this.configLoad++,this.$store.dispatch("call",{url:"system/setting/email"}).then(({data:t})=>{this.isRegVerify=t.reg_verify==="open"}).finally(t=>{this.configLoad--})}}},a={};var u=n(m,o,l,!1,d,null,null,null);function d(t){for(let s in a)this[s]=a[s]}var f=function(){return u.exports}();export{f as default};
|
||||
17
public/js/build/file.aa23b4ce.svg
Normal file
@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:#FFAA64;}
|
||||
.st1{fill:#FFFFFF;}
|
||||
</style>
|
||||
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
|
||||
<g>
|
||||
<g>
|
||||
<path class="st1" d="M28.7,18.4h3.8c0.5,0,0.8-0.6,0.4-1l-4.7-4.7c-0.4-0.4-1-0.1-1,0.4V17C27.3,17.8,27.9,18.4,28.7,18.4z"/>
|
||||
<path class="st1" d="M28.7,20.2c-1.8,0-3.2-1.4-3.2-3.2v-4c0-0.3-0.3-0.6-0.6-0.6H17c-1.3,0-2.3,1.1-2.3,2.3v18.7
|
||||
c0,1.3,1,2.3,2.3,2.3h14c1.3,0,2.3-1,2.3-2.3V20.7c0-0.3-0.3-0.6-0.6-0.6H28.7z"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 890 B |
@ -1 +1 @@
|
||||
import n from"./FileContent.a5e61dfc.js";import l from"./FilePreview.5bf0b93c.js";import{n as s}from"./app.7b9537da.js";import"./IFrame.1636beca.js";var a=function(){var e=this,i=e.$createElement,t=e._self._c||i;return t("div",{staticClass:"single-file"},[t("PageTitle",{attrs:{title:e.pageName}}),e.loadIng>0?t("Loading"):e.fileInfo?[e.isPreview?t("FilePreview",{attrs:{code:e.code,file:e.fileInfo,historyId:e.historyId,headerShow:!e.$isEEUiApp}}):t("FileContent",{attrs:{file:e.fileInfo},model:{value:e.fileShow,callback:function(r){e.fileShow=r},expression:"fileShow"}})]:e._e()],2)},f=[];const u={components:{FilePreview:l,FileContent:n},data(){return{loadIng:0,code:null,fileShow:!0,fileInfo:null}},mounted(){},computed:{historyId(){return this.$route.query?$A.runNum(this.$route.query.history_id):0},isPreview(){return this.windowPortrait||this.code||this.historyId>0||this.fileInfo&&this.fileInfo.permission===0},pageName(){let e=this.fileInfo?this.fileInfo.name:"";return this.$route.query&&this.$route.query.history_at&&(e+=` [${this.$route.query.history_at}]`),e}},watch:{$route:{handler(){this.getInfo()},immediate:!0}},methods:{getInfo(){let{codeOrFileId:e}=this.$route.params,i={id:e};if(/^\d+$/.test(e))this.code=null;else if(e)this.code=e;else return;setTimeout(t=>{this.loadIng++},600),this.$store.dispatch("call",{url:"file/one",data:i}).then(({data:t})=>{this.fileInfo=t}).catch(({msg:t})=>{$A.modalError({content:t,onOk:()=>{window.close()}})}).finally(t=>{this.loadIng--})}}},o={};var h=s(u,a,f,!1,d,"b8037598",null,null);function d(e){for(let i in o)this[i]=o[i]}var I=function(){return h.exports}();export{I as default};
|
||||
import n from"./FileContent.b2ac0c47.js";import l from"./FilePreview.f39ec715.js";import{n as s}from"./app.7d416d31.js";import"./IFrame.eb1e20bb.js";var a=function(){var e=this,i=e.$createElement,t=e._self._c||i;return t("div",{staticClass:"single-file"},[t("PageTitle",{attrs:{title:e.pageName}}),e.loadIng>0?t("Loading"):e.fileInfo?[e.isPreview?t("FilePreview",{attrs:{code:e.code,file:e.fileInfo,historyId:e.historyId,headerShow:!e.$isEEUiApp}}):t("FileContent",{attrs:{file:e.fileInfo},model:{value:e.fileShow,callback:function(r){e.fileShow=r},expression:"fileShow"}})]:e._e()],2)},f=[];const u={components:{FilePreview:l,FileContent:n},data(){return{loadIng:0,code:null,fileShow:!0,fileInfo:null}},mounted(){},computed:{historyId(){return this.$route.query?$A.runNum(this.$route.query.history_id):0},isPreview(){return this.windowPortrait||this.code||this.historyId>0||this.fileInfo&&this.fileInfo.permission===0},pageName(){let e=this.fileInfo?this.fileInfo.name:"";return this.$route.query&&this.$route.query.history_at&&(e+=` [${this.$route.query.history_at}]`),e}},watch:{$route:{handler(){this.getInfo()},immediate:!0}},methods:{getInfo(){let{codeOrFileId:e}=this.$route.params,i={id:e};if(/^\d+$/.test(e))this.code=null;else if(e)this.code=e;else return;setTimeout(t=>{this.loadIng++},600),this.$store.dispatch("call",{url:"file/one",data:i}).then(({data:t})=>{this.fileInfo=t}).catch(({msg:t})=>{$A.modalError({content:t,onOk:()=>{window.close()}})}).finally(t=>{this.loadIng--})}}},o={};var h=s(u,a,f,!1,d,"b8037598",null,null);function d(e){for(let i in o)this[i]=o[i]}var I=function(){return h.exports}();export{I as default};
|
||||
@ -1 +1 @@
|
||||
import{m as a,n as r,_ as s}from"./app.7b9537da.js";import{I as l}from"./IFrame.1636beca.js";var c=function(){var t=this,i=t.$createElement,e=t._self._c||i;return e("div",{staticClass:"single-file-msg"},[e("PageTitle",{attrs:{title:t.title}}),t.loadIng>0?e("Loading"):t.isWait?t._e():[t.isType("md")?e("MDPreview",{attrs:{initialValue:t.msgDetail.content.content}}):t.isType("text")?e("TEditor",{attrs:{value:t.msgDetail.content.content,height:"100%",readOnly:""}}):t.isType("drawio")?e("Drawio",{attrs:{title:t.msgDetail.msg.name,readOnly:""},model:{value:t.msgDetail.content,callback:function(n){t.$set(t.msgDetail,"content",n)},expression:"msgDetail.content"}}):t.isType("mind")?e("Minder",{attrs:{value:t.msgDetail.content,readOnly:""}}):t.isType("code")?[t.isLongText(t.msgDetail.msg.name)?e("div",{staticClass:"view-code",domProps:{innerHTML:t._s(t.$A.formatTextMsg(t.msgDetail.content.content,t.userId))}}):e("AceEditor",{staticClass:"view-editor",attrs:{ext:t.msgDetail.msg.ext,readOnly:""},model:{value:t.msgDetail.content.content,callback:function(n){t.$set(t.msgDetail.content,"content",n)},expression:"msgDetail.content.content"}})]:t.isType("office")?e("OnlyOffice",{attrs:{code:t.officeCode,documentKey:t.documentKey,readOnly:""},model:{value:t.officeContent,callback:function(n){t.officeContent=n},expression:"officeContent"}}):t.isType("preview")?e("IFrame",{staticClass:"preview-iframe",attrs:{src:t.previewUrl}}):e("div",{staticClass:"no-support"},[t._v(t._s(t.$L("\u4E0D\u652F\u6301\u5355\u72EC\u67E5\u770B\u6B64\u6D88\u606F")))])]],2)},m=[];const d=()=>s(()=>import("./preview.59685de6.js"),["js/build/preview.59685de6.js","js/build/app.7b9537da.js","js/build/app.9141377f.css"]),_=()=>s(()=>import("./TEditor.a6422506.js"),["js/build/TEditor.a6422506.js","js/build/app.7b9537da.js","js/build/app.9141377f.css","js/build/ImgUpload.0ea1891a.js"]),u=()=>s(()=>import("./AceEditor.85fce2b7.js"),["js/build/AceEditor.85fce2b7.js","js/build/app.7b9537da.js","js/build/app.9141377f.css"]),g=()=>s(()=>import("./OnlyOffice.f07263f2.js"),["js/build/OnlyOffice.f07263f2.js","js/build/OnlyOffice.97177ac3.css","js/build/app.7b9537da.js","js/build/app.9141377f.css","js/build/IFrame.1636beca.js"]),f=()=>s(()=>import("./Drawio.394b2772.js"),["js/build/Drawio.394b2772.js","js/build/Drawio.fc5c6326.css","js/build/app.7b9537da.js","js/build/app.9141377f.css","js/build/IFrame.1636beca.js"]),p=()=>s(()=>import("./Minder.221613f7.js"),["js/build/Minder.221613f7.js","js/build/Minder.3ba64342.css","js/build/IFrame.1636beca.js","js/build/app.7b9537da.js","js/build/app.9141377f.css"]),v={components:{IFrame:l,AceEditor:u,TEditor:_,MDPreview:d,OnlyOffice:g,Drawio:f,Minder:p},data(){return{loadIng:0,isWait:!1,msgDetail:{}}},mounted(){},watch:{$route:{handler(){this.getInfo()},immediate:!0}},computed:{...a(["userId"]),msgId(){const{msgId:t}=this.$route.params;return parseInt(/^\d+$/.test(t)?t:0)},title(){const{msg:t}=this.msgDetail;return t&&t.name?t.name:"Loading..."},isType(){const{msgDetail:t}=this;return function(i){return t.type=="file"&&t.file_mode==i}},officeContent(){return{id:this.msgDetail.id||0,type:this.msgDetail.msg.ext,name:this.title}},officeCode(){return"msgFile_"+this.msgDetail.id},previewUrl(){const{name:t,key:i}=this.msgDetail.content;return $A.apiUrl(`../online/preview/${t}?key=${i}`)}},methods:{getInfo(){this.msgId<=0||(setTimeout(t=>{this.loadIng++},600),this.isWait=!0,this.$store.dispatch("call",{url:"dialog/msg/detail",data:{msg_id:this.msgId}}).then(({data:t})=>{this.msgDetail=t}).catch(({msg:t})=>{$A.modalError({content:t,onOk:()=>{this.$Electron&&window.close()}})}).finally(t=>{this.loadIng--,this.isWait=!1}))},documentKey(){return new Promise(t=>{this.$store.dispatch("call",{url:"dialog/msg/detail",data:{msg_id:this.msgId,only_update_at:"yes"}}).then(({data:i})=>{t(`${i.id}-${$A.Time(i.update_at)}`)}).catch(()=>{t(0)})})},isLongText(t){return/^LongText-/.test(t)}}},o={};var h=r(v,c,m,!1,D,null,null,null);function D(t){for(let i in o)this[i]=o[i]}var I=function(){return h.exports}();export{I as default};
|
||||
import{m as a,n as r,_ as s}from"./app.7d416d31.js";import{I as l}from"./IFrame.eb1e20bb.js";var c=function(){var t=this,i=t.$createElement,e=t._self._c||i;return e("div",{staticClass:"single-file-msg"},[e("PageTitle",{attrs:{title:t.title}}),t.loadIng>0?e("Loading"):t.isWait?t._e():[t.isType("md")?e("MDPreview",{attrs:{initialValue:t.msgDetail.content.content}}):t.isType("text")?e("TEditor",{attrs:{value:t.msgDetail.content.content,height:"100%",readOnly:""}}):t.isType("drawio")?e("Drawio",{attrs:{title:t.msgDetail.msg.name,readOnly:""},model:{value:t.msgDetail.content,callback:function(n){t.$set(t.msgDetail,"content",n)},expression:"msgDetail.content"}}):t.isType("mind")?e("Minder",{attrs:{value:t.msgDetail.content,readOnly:""}}):t.isType("code")?[t.isLongText(t.msgDetail.msg.name)?e("div",{staticClass:"view-code",domProps:{innerHTML:t._s(t.$A.formatTextMsg(t.msgDetail.content.content,t.userId))}}):e("AceEditor",{staticClass:"view-editor",attrs:{ext:t.msgDetail.msg.ext,readOnly:""},model:{value:t.msgDetail.content.content,callback:function(n){t.$set(t.msgDetail.content,"content",n)},expression:"msgDetail.content.content"}})]:t.isType("office")?e("OnlyOffice",{attrs:{code:t.officeCode,documentKey:t.documentKey,readOnly:""},model:{value:t.officeContent,callback:function(n){t.officeContent=n},expression:"officeContent"}}):t.isType("preview")?e("IFrame",{staticClass:"preview-iframe",attrs:{src:t.previewUrl}}):e("div",{staticClass:"no-support"},[t._v(t._s(t.$L("\u4E0D\u652F\u6301\u5355\u72EC\u67E5\u770B\u6B64\u6D88\u606F")))])]],2)},m=[];const d=()=>s(()=>import("./preview.17f61613.js"),["js/build/preview.17f61613.js","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css"]),_=()=>s(()=>import("./TEditor.3f7afdfb.js"),["js/build/TEditor.3f7afdfb.js","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css","js/build/ImgUpload.24b2ef1e.js"]),u=()=>s(()=>import("./AceEditor.8b42aa0d.js"),["js/build/AceEditor.8b42aa0d.js","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css"]),g=()=>s(()=>import("./OnlyOffice.4c0823f3.js"),["js/build/OnlyOffice.4c0823f3.js","js/build/OnlyOffice.d095e45d.css","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css","js/build/IFrame.eb1e20bb.js"]),f=()=>s(()=>import("./Drawio.9adade4e.js"),["js/build/Drawio.9adade4e.js","js/build/Drawio.fc5c6326.css","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css","js/build/IFrame.eb1e20bb.js"]),p=()=>s(()=>import("./Minder.7a74b4ef.js"),["js/build/Minder.7a74b4ef.js","js/build/Minder.3ba64342.css","js/build/IFrame.eb1e20bb.js","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css"]),v={components:{IFrame:l,AceEditor:u,TEditor:_,MDPreview:d,OnlyOffice:g,Drawio:f,Minder:p},data(){return{loadIng:0,isWait:!1,msgDetail:{}}},mounted(){},watch:{$route:{handler(){this.getInfo()},immediate:!0}},computed:{...a(["userId"]),msgId(){const{msgId:t}=this.$route.params;return parseInt(/^\d+$/.test(t)?t:0)},title(){const{msg:t}=this.msgDetail;return t&&t.name?t.name:"Loading..."},isType(){const{msgDetail:t}=this;return function(i){return t.type=="file"&&t.file_mode==i}},officeContent(){return{id:this.msgDetail.id||0,type:this.msgDetail.msg.ext,name:this.title}},officeCode(){return"msgFile_"+this.msgDetail.id},previewUrl(){const{name:t,key:i}=this.msgDetail.content;return $A.apiUrl(`../online/preview/${t}?key=${i}`)}},methods:{getInfo(){this.msgId<=0||(setTimeout(t=>{this.loadIng++},600),this.isWait=!0,this.$store.dispatch("call",{url:"dialog/msg/detail",data:{msg_id:this.msgId}}).then(({data:t})=>{this.msgDetail=t}).catch(({msg:t})=>{$A.modalError({content:t,onOk:()=>{this.$Electron&&window.close()}})}).finally(t=>{this.loadIng--,this.isWait=!1}))},documentKey(){return new Promise((t,i)=>{this.$store.dispatch("call",{url:"dialog/msg/detail",data:{msg_id:this.msgId,only_update_at:"yes"}}).then(({data:e})=>{t(`${e.id}-${$A.Time(e.update_at)}`)}).catch(e=>{i(e)})})},isLongText(t){return/^LongText-/.test(t)}}},o={};var h=r(v,c,m,!1,D,null,null,null);function D(t){for(let i in o)this[i]=o[i]}var I=function(){return h.exports}();export{I as default};
|
||||
1
public/js/build/fileTask.22f02fba.js
vendored
@ -1 +0,0 @@
|
||||
import{n as o,_ as n}from"./app.7b9537da.js";import{I as r}from"./IFrame.1636beca.js";var s=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"single-file-task"},[i("PageTitle",{attrs:{title:e.title}}),e.loadIng>0?i("Loading"):e.isWait?e._e():[e.isType("md")?i("MDPreview",{attrs:{initialValue:e.fileDetail.content.content}}):e.isType("text")?i("TEditor",{attrs:{value:e.fileDetail.content.content,height:"100%",readOnly:""}}):e.isType("drawio")?i("Drawio",{attrs:{title:e.fileDetail.name,readOnly:""},model:{value:e.fileDetail.content,callback:function(l){e.$set(e.fileDetail,"content",l)},expression:"fileDetail.content"}}):e.isType("mind")?i("Minder",{attrs:{value:e.fileDetail.content,readOnly:""}}):e.isType("code")?i("AceEditor",{staticClass:"view-editor",attrs:{ext:e.fileDetail.ext,readOnly:""},model:{value:e.fileDetail.content.content,callback:function(l){e.$set(e.fileDetail.content,"content",l)},expression:"fileDetail.content.content"}}):e.isType("office")?i("OnlyOffice",{attrs:{code:e.officeCode,documentKey:e.documentKey,readOnly:""},model:{value:e.officeContent,callback:function(l){e.officeContent=l},expression:"officeContent"}}):e.isType("preview")?i("IFrame",{staticClass:"preview-iframe",attrs:{src:e.previewUrl}}):i("div",{staticClass:"no-support"},[e._v(e._s(e.$L("\u4E0D\u652F\u6301\u5355\u72EC\u67E5\u770B\u6B64\u6D88\u606F")))])]],2)},c=[];const d=()=>n(()=>import("./preview.59685de6.js"),["js/build/preview.59685de6.js","js/build/app.7b9537da.js","js/build/app.9141377f.css"]),f=()=>n(()=>import("./TEditor.a6422506.js"),["js/build/TEditor.a6422506.js","js/build/app.7b9537da.js","js/build/app.9141377f.css","js/build/ImgUpload.0ea1891a.js"]),_=()=>n(()=>import("./AceEditor.85fce2b7.js"),["js/build/AceEditor.85fce2b7.js","js/build/app.7b9537da.js","js/build/app.9141377f.css"]),u=()=>n(()=>import("./OnlyOffice.f07263f2.js"),["js/build/OnlyOffice.f07263f2.js","js/build/OnlyOffice.97177ac3.css","js/build/app.7b9537da.js","js/build/app.9141377f.css","js/build/IFrame.1636beca.js"]),p=()=>n(()=>import("./Drawio.394b2772.js"),["js/build/Drawio.394b2772.js","js/build/Drawio.fc5c6326.css","js/build/app.7b9537da.js","js/build/app.9141377f.css","js/build/IFrame.1636beca.js"]),m=()=>n(()=>import("./Minder.221613f7.js"),["js/build/Minder.221613f7.js","js/build/Minder.3ba64342.css","js/build/IFrame.1636beca.js","js/build/app.7b9537da.js","js/build/app.9141377f.css"]),v={components:{IFrame:r,AceEditor:_,TEditor:f,MDPreview:d,OnlyOffice:u,Drawio:p,Minder:m},data(){return{loadIng:0,isWait:!1,fileDetail:{}}},mounted(){},watch:{$route:{handler(){this.getInfo()},immediate:!0}},computed:{fileId(){const{fileId:e}=this.$route.params;return parseInt(/^\d+$/.test(e)?e:0)},title(){const{name:e}=this.fileDetail;return e||"Loading..."},isType(){const{fileDetail:e}=this;return function(t){return e.file_mode==t}},officeContent(){return{id:this.fileDetail.id||0,type:this.fileDetail.ext,name:this.title}},officeCode(){return"taskFile_"+this.fileDetail.id},previewUrl(){const{name:e,key:t}=this.fileDetail.content;return $A.apiUrl(`../online/preview/${e}?key=${t}`)}},methods:{getInfo(){this.fileId<=0||(setTimeout(e=>{this.loadIng++},600),this.isWait=!0,this.$store.dispatch("call",{url:"project/task/filedetail",data:{file_id:this.fileId}}).then(({data:e})=>{this.fileDetail=e}).catch(({msg:e})=>{$A.modalError({content:e,onOk:()=>{this.$Electron&&window.close()}})}).finally(e=>{this.loadIng--,this.isWait=!1}))},documentKey(){return new Promise(e=>{this.$store.dispatch("call",{url:"project/task/filedetail",data:{file_id:this.fileId,only_update_at:"yes"}}).then(({data:t})=>{e(`${t.id}-${$A.Time(t.update_at)}`)}).catch(()=>{e(0)})})}}},a={};var h=o(v,s,c,!1,D,null,null,null);function D(e){for(let t in a)this[t]=a[t]}var T=function(){return h.exports}();export{T as default};
|
||||
1
public/js/build/fileTask.f0f227c9.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
import{n as a,_ as n}from"./app.7d416d31.js";import{I as r}from"./IFrame.eb1e20bb.js";var s=function(){var e=this,i=e.$createElement,t=e._self._c||i;return t("div",{staticClass:"single-file-task"},[t("PageTitle",{attrs:{title:e.title}}),e.loadIng>0?t("Loading"):e.isWait?e._e():[e.isType("md")?t("MDPreview",{attrs:{initialValue:e.fileDetail.content.content}}):e.isType("text")?t("TEditor",{attrs:{value:e.fileDetail.content.content,height:"100%",readOnly:""}}):e.isType("drawio")?t("Drawio",{attrs:{title:e.fileDetail.name,readOnly:""},model:{value:e.fileDetail.content,callback:function(l){e.$set(e.fileDetail,"content",l)},expression:"fileDetail.content"}}):e.isType("mind")?t("Minder",{attrs:{value:e.fileDetail.content,readOnly:""}}):e.isType("code")?t("AceEditor",{staticClass:"view-editor",attrs:{ext:e.fileDetail.ext,readOnly:""},model:{value:e.fileDetail.content.content,callback:function(l){e.$set(e.fileDetail.content,"content",l)},expression:"fileDetail.content.content"}}):e.isType("office")?t("OnlyOffice",{attrs:{code:e.officeCode,documentKey:e.documentKey,readOnly:""},model:{value:e.officeContent,callback:function(l){e.officeContent=l},expression:"officeContent"}}):e.isType("preview")?t("IFrame",{staticClass:"preview-iframe",attrs:{src:e.previewUrl}}):t("div",{staticClass:"no-support"},[e._v(e._s(e.$L("\u4E0D\u652F\u6301\u5355\u72EC\u67E5\u770B\u6B64\u6D88\u606F")))])]],2)},c=[];const d=()=>n(()=>import("./preview.17f61613.js"),["js/build/preview.17f61613.js","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css"]),f=()=>n(()=>import("./TEditor.3f7afdfb.js"),["js/build/TEditor.3f7afdfb.js","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css","js/build/ImgUpload.24b2ef1e.js"]),_=()=>n(()=>import("./AceEditor.8b42aa0d.js"),["js/build/AceEditor.8b42aa0d.js","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css"]),u=()=>n(()=>import("./OnlyOffice.4c0823f3.js"),["js/build/OnlyOffice.4c0823f3.js","js/build/OnlyOffice.d095e45d.css","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css","js/build/IFrame.eb1e20bb.js"]),p=()=>n(()=>import("./Drawio.9adade4e.js"),["js/build/Drawio.9adade4e.js","js/build/Drawio.fc5c6326.css","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css","js/build/IFrame.eb1e20bb.js"]),m=()=>n(()=>import("./Minder.7a74b4ef.js"),["js/build/Minder.7a74b4ef.js","js/build/Minder.3ba64342.css","js/build/IFrame.eb1e20bb.js","js/build/app.7d416d31.js","js/build/app.c3e7b3d4.css"]),v={components:{IFrame:r,AceEditor:_,TEditor:f,MDPreview:d,OnlyOffice:u,Drawio:p,Minder:m},data(){return{loadIng:0,isWait:!1,fileDetail:{}}},mounted(){},watch:{$route:{handler(){this.getInfo()},immediate:!0}},computed:{fileId(){const{fileId:e}=this.$route.params;return parseInt(/^\d+$/.test(e)?e:0)},title(){const{name:e}=this.fileDetail;return e||"Loading..."},isType(){const{fileDetail:e}=this;return function(i){return e.file_mode==i}},officeContent(){return{id:this.fileDetail.id||0,type:this.fileDetail.ext,name:this.title}},officeCode(){return"taskFile_"+this.fileDetail.id},previewUrl(){const{name:e,key:i}=this.fileDetail.content;return $A.apiUrl(`../online/preview/${e}?key=${i}`)}},methods:{getInfo(){this.fileId<=0||(setTimeout(e=>{this.loadIng++},600),this.isWait=!0,this.$store.dispatch("call",{url:"project/task/filedetail",data:{file_id:this.fileId}}).then(({data:e})=>{this.fileDetail=e}).catch(({msg:e})=>{$A.modalError({content:e,onOk:()=>{this.$Electron&&window.close()}})}).finally(e=>{this.loadIng--,this.isWait=!1}))},documentKey(){return new Promise((e,i)=>{this.$store.dispatch("call",{url:"project/task/filedetail",data:{file_id:this.fileId,only_update_at:"yes"}}).then(({data:t})=>{e(`${t.id}-${$A.Time(t.update_at)}`)}).catch(t=>{i(t)})})}}},o={};var h=a(v,s,c,!1,D,null,null,null);function D(e){for(let i in o)this[i]=o[i]}var T=function(){return h.exports}();export{T as default};
|
||||
@ -1 +1 @@
|
||||
import{n as r,l as i}from"./app.7b9537da.js";var s=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div")},a=[];const h={data(){return{}},computed:{isSoftware(){return this.$Electron||this.$isEEUiApp}},mounted(){/^https*:/i.test(window.location.protocol)&&(this.$router.mode==="hash"?$A.stringLength(window.location.pathname)>2&&(window.location.href=`${window.location.origin}/#${window.location.pathname}${window.location.search}`):this.$router.mode==="history"&&$A.strExists(window.location.href,"/#/")&&(window.location.href=window.location.href.replace("/#/","/")))},activated(){this.start()},methods:{start(){if(this.isSoftware){this.goNext();return}this.$store.dispatch("showSpinner",1e3),this.$store.dispatch("needHome").then(t=>{this.goIndex()}).catch(t=>{this.goNext()}).finally(t=>{this.$store.dispatch("hiddenSpinner")})},goIndex(){i==="zh"||i==="zh-CHT"?window.location.href=$A.apiUrl("../site/zh/index.html"):window.location.href=$A.apiUrl("../site/en/index.html")},goNext(){this.userId>0?this.goForward({name:"manage-dashboard"},!0):this.goForward({name:"login"},!0)}}},o={};var l=r(h,s,a,!1,d,null,null,null);function d(t){for(let e in o)this[e]=o[e]}var w=function(){return l.exports}();export{w as default};
|
||||
import{n as r,l as i}from"./app.7d416d31.js";var s=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div")},a=[];const h={data(){return{}},computed:{isSoftware(){return this.$Electron||this.$isEEUiApp}},mounted(){/^https*:/i.test(window.location.protocol)&&(this.$router.mode==="hash"?$A.stringLength(window.location.pathname)>2&&(window.location.href=`${window.location.origin}/#${window.location.pathname}${window.location.search}`):this.$router.mode==="history"&&$A.strExists(window.location.href,"/#/")&&(window.location.href=window.location.href.replace("/#/","/")))},activated(){this.start()},methods:{start(){if(this.isSoftware){this.goNext();return}this.$store.dispatch("showSpinner",1e3),this.$store.dispatch("needHome").then(t=>{this.goIndex()}).catch(t=>{this.goNext()}).finally(t=>{this.$store.dispatch("hiddenSpinner")})},goIndex(){i==="zh"||i==="zh-CHT"?window.location.href=$A.apiUrl("../site/zh/index.html"):window.location.href=$A.apiUrl("../site/en/index.html")},goNext(){this.userId>0?this.goForward({name:"manage-dashboard"},!0):this.goForward({name:"login"},!0)}}},o={};var l=r(h,s,a,!1,d,null,null,null);function d(t){for(let e in o)this[e]=o[e]}var w=function(){return l.exports}();export{w as default};
|
||||
@ -1 +1 @@
|
||||
import{n as i}from"./app.7b9537da.js";var r=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",{staticClass:"setting-item submit"},[a("Form",{ref:"formData",attrs:{model:t.formData,rules:t.ruleData,"label-width":"auto"},nativeOn:{submit:function(e){e.preventDefault()}}},[t.$Electron?[a("FormItem",{attrs:{label:t.$L("\u622A\u56FE\u5FEB\u6377\u952E"),prop:"screenshot_key"}},[a("div",{staticClass:"input-box"},[t._v(" "+t._s(t.mateName)),a("div",{staticClass:"input-box-push"},[t._v("+")]),t._v("Shift"),a("div",{staticClass:"input-box-push"},[t._v("+")]),a("Input",{staticClass:"input-box-key",attrs:{maxlength:2},model:{value:t.formData.screenshot_key,callback:function(e){t.$set(t.formData,"screenshot_key",e)},expression:"formData.screenshot_key"}})],1)]),a("FormItem",{attrs:{label:t.$L("\u65B0\u5EFA\u9879\u76EE")}},[a("div",{staticClass:"input-box"},[t._v(" "+t._s(t.mateName)),a("div",{staticClass:"input-box-push"},[t._v("+")]),t._v("B ")])]),a("FormItem",{attrs:{label:t.$L("\u65B0\u5EFA\u4EFB\u52A1")}},[a("div",{staticClass:"input-box"},[t._v(" "+t._s(t.mateName)),a("div",{staticClass:"input-box-push"},[t._v("+")]),t._v("N (K) ")])]),a("FormItem",{attrs:{label:t.$L("\u65B0\u4F1A\u8BAE")}},[a("div",{staticClass:"input-box"},[t._v(" "+t._s(t.mateName)),a("div",{staticClass:"input-box-push"},[t._v("+")]),t._v("J ")])]),a("FormItem",{attrs:{label:t.$L("\u8BBE\u7F6E")}},[a("div",{staticClass:"input-box"},[t._v(" "+t._s(t.mateName)),a("div",{staticClass:"input-box-push"},[t._v("+")]),t._v(", ")])])]:t._e(),t.$isEEUiApp?a("FormItem",{attrs:{label:t.$L("\u53D1\u9001\u6309\u94AE")}},[a("RadioGroup",{model:{value:t.formData.send_button_app,callback:function(e){t.$set(t.formData,"send_button_app",e)},expression:"formData.send_button_app"}},[a("Radio",{attrs:{label:"button"}},[t._v(t._s(t.$L("\u5F00\u542F")))]),a("Radio",{attrs:{label:"enter"}},[t._v(t._s(t.$L("\u5173\u95ED")))])],1),a("div",{staticClass:"form-tip"},[t._v(t._s(t.$L("\u5F00\u542F\u540E\uFF0C\u53D1\u9001\u6D88\u606F\u65F6\u952E\u76D8\u4E0A\u7684\u53D1\u9001\u6309\u94AE\u4F1A\u88AB\u66FF\u6362\u6210\u6362\u884C")))])],1):t.$Electron?a("FormItem",{attrs:{label:t.$L("\u53D1\u9001\u6309\u94AE")}},[a("RadioGroup",{attrs:{vertical:""},model:{value:t.formData.send_button_desktop,callback:function(e){t.$set(t.formData,"send_button_desktop",e)},expression:"formData.send_button_desktop"}},[a("Radio",{attrs:{label:"enter"}},[t._v("Enter "+t._s(t.$L("\u53D1\u9001")))]),a("Radio",{staticClass:"input-box",attrs:{label:"button"}},[t._v(" "+t._s(t.mateName)),a("div",{staticClass:"input-box-push"},[t._v("+")]),t._v("Enter "+t._s(t.$L("\u53D1\u9001"))+" ")])],1)],1):t._e()],2),a("div",{staticClass:"setting-footer"},[a("Button",{attrs:{loading:t.loadIng>0,type:"primary"},on:{click:t.submitForm}},[t._v(t._s(t.$L("\u4FDD\u5B58")))]),a("Button",{staticStyle:{"margin-left":"8px"},attrs:{loading:t.loadIng>0},on:{click:t.resetForm}},[t._v(t._s(t.$L("\u91CD\u7F6E")))])],1)],1)},n=[];const _={data(){return{loadIng:0,mateName:/macintosh|mac os x/i.test(navigator.userAgent)?"Command":"Ctrl",formData:{screenshot_key:"",send_button_app:"",send_button_desktop:""},ruleData:{screenshot_key:[{validator:(t,s,a)=>{s=s.trim(),s=s.substring(s.length-1),s&&!/^[A-Za-z0-9]?$/.test(s)?a(new Error(this.$L("\u53EA\u80FD\u8F93\u5165\u5B57\u6BCD\u6216\u6570\u5B57"))):a(),this.$nextTick(e=>{this.$set(this.formData,t.field,s.toUpperCase())})},trigger:"change"}]}}},mounted(){this.initData()},methods:{initData(){this.formData=$A.cloneJSON(this.$store.state.cacheKeyboard),this.formData_bak=$A.cloneJSON(this.formData)},submitForm(){this.$refs.formData.validate(t=>{t&&this.$store.dispatch("handleKeyboard",this.formData).then(s=>{this.$Electron&&$A.bindScreenshotKey(s),$A.messageSuccess("\u4FDD\u5B58\u6210\u529F")})})},resetForm(){this.formData=$A.cloneJSON(this.formData_bak)}}},o={};var l=i(_,r,n,!1,m,"3f2987a4",null,null);function m(t){for(let s in o)this[s]=o[s]}var u=function(){return l.exports}();export{u as default};
|
||||
import{n as i}from"./app.7d416d31.js";var r=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",{staticClass:"setting-item submit"},[a("Form",{ref:"formData",attrs:{model:t.formData,rules:t.ruleData,"label-width":"auto"},nativeOn:{submit:function(e){e.preventDefault()}}},[t.$Electron?[a("FormItem",{attrs:{label:t.$L("\u622A\u56FE\u5FEB\u6377\u952E"),prop:"screenshot_key"}},[a("div",{staticClass:"input-box"},[t._v(" "+t._s(t.mateName)),a("div",{staticClass:"input-box-push"},[t._v("+")]),t._v("Shift"),a("div",{staticClass:"input-box-push"},[t._v("+")]),a("Input",{staticClass:"input-box-key",attrs:{maxlength:2},model:{value:t.formData.screenshot_key,callback:function(e){t.$set(t.formData,"screenshot_key",e)},expression:"formData.screenshot_key"}})],1)]),a("FormItem",{attrs:{label:t.$L("\u65B0\u5EFA\u9879\u76EE")}},[a("div",{staticClass:"input-box"},[t._v(" "+t._s(t.mateName)),a("div",{staticClass:"input-box-push"},[t._v("+")]),t._v("B ")])]),a("FormItem",{attrs:{label:t.$L("\u65B0\u5EFA\u4EFB\u52A1")}},[a("div",{staticClass:"input-box"},[t._v(" "+t._s(t.mateName)),a("div",{staticClass:"input-box-push"},[t._v("+")]),t._v("N (K) ")])]),a("FormItem",{attrs:{label:t.$L("\u65B0\u4F1A\u8BAE")}},[a("div",{staticClass:"input-box"},[t._v(" "+t._s(t.mateName)),a("div",{staticClass:"input-box-push"},[t._v("+")]),t._v("J ")])]),a("FormItem",{attrs:{label:t.$L("\u8BBE\u7F6E")}},[a("div",{staticClass:"input-box"},[t._v(" "+t._s(t.mateName)),a("div",{staticClass:"input-box-push"},[t._v("+")]),t._v(", ")])])]:t._e(),t.$isEEUiApp?a("FormItem",{attrs:{label:t.$L("\u53D1\u9001\u6309\u94AE")}},[a("RadioGroup",{model:{value:t.formData.send_button_app,callback:function(e){t.$set(t.formData,"send_button_app",e)},expression:"formData.send_button_app"}},[a("Radio",{attrs:{label:"button"}},[t._v(t._s(t.$L("\u5F00\u542F")))]),a("Radio",{attrs:{label:"enter"}},[t._v(t._s(t.$L("\u5173\u95ED")))])],1),a("div",{staticClass:"form-tip"},[t._v(t._s(t.$L("\u5F00\u542F\u540E\uFF0C\u53D1\u9001\u6D88\u606F\u65F6\u952E\u76D8\u4E0A\u7684\u53D1\u9001\u6309\u94AE\u4F1A\u88AB\u66FF\u6362\u6210\u6362\u884C")))])],1):t.$Electron?a("FormItem",{attrs:{label:t.$L("\u53D1\u9001\u6309\u94AE")}},[a("RadioGroup",{attrs:{vertical:""},model:{value:t.formData.send_button_desktop,callback:function(e){t.$set(t.formData,"send_button_desktop",e)},expression:"formData.send_button_desktop"}},[a("Radio",{attrs:{label:"enter"}},[t._v("Enter "+t._s(t.$L("\u53D1\u9001")))]),a("Radio",{staticClass:"input-box",attrs:{label:"button"}},[t._v(" "+t._s(t.mateName)),a("div",{staticClass:"input-box-push"},[t._v("+")]),t._v("Enter "+t._s(t.$L("\u53D1\u9001"))+" ")])],1)],1):t._e()],2),a("div",{staticClass:"setting-footer"},[a("Button",{attrs:{loading:t.loadIng>0,type:"primary"},on:{click:t.submitForm}},[t._v(t._s(t.$L("\u4FDD\u5B58")))]),a("Button",{staticStyle:{"margin-left":"8px"},attrs:{loading:t.loadIng>0},on:{click:t.resetForm}},[t._v(t._s(t.$L("\u91CD\u7F6E")))])],1)],1)},n=[];const _={data(){return{loadIng:0,mateName:/macintosh|mac os x/i.test(navigator.userAgent)?"Command":"Ctrl",formData:{screenshot_key:"",send_button_app:"",send_button_desktop:""},ruleData:{screenshot_key:[{validator:(t,s,a)=>{s=s.trim(),s=s.substring(s.length-1),s&&!/^[A-Za-z0-9]?$/.test(s)?a(new Error(this.$L("\u53EA\u80FD\u8F93\u5165\u5B57\u6BCD\u6216\u6570\u5B57"))):a(),this.$nextTick(e=>{this.$set(this.formData,t.field,s.toUpperCase())})},trigger:"change"}]}}},mounted(){this.initData()},methods:{initData(){this.formData=$A.cloneJSON(this.$store.state.cacheKeyboard),this.formData_bak=$A.cloneJSON(this.formData)},submitForm(){this.$refs.formData.validate(t=>{t&&this.$store.dispatch("handleKeyboard",this.formData).then(s=>{this.$Electron&&$A.bindScreenshotKey(s),$A.messageSuccess("\u4FDD\u5B58\u6210\u529F")})})},resetForm(){this.formData=$A.cloneJSON(this.formData_bak)}}},o={};var l=i(_,r,n,!1,m,"3f2987a4",null,null);function m(t){for(let s in o)this[s]=o[s]}var u=function(){return l.exports}();export{u as default};
|
||||
@ -1 +1 @@
|
||||
import{d as s,m as l,l as i,q as m,n as u}from"./app.7b9537da.js";var f=function(){var t=this,o=t.$createElement,a=t._self._c||o;return a("div",{staticClass:"setting-item submit"},[a("Form",{ref:"formData",attrs:{model:t.formData,rules:t.ruleData,labelPosition:t.formLabelPosition,labelWidth:t.formLabelWidth},nativeOn:{submit:function(e){e.preventDefault()}}},[a("FormItem",{attrs:{label:t.$L("\u9009\u62E9\u8BED\u8A00"),prop:"language"}},[a("Select",{attrs:{placeholder:t.$L("\u9009\u9879\u8BED\u8A00")},model:{value:t.formData.language,callback:function(e){t.$set(t.formData,"language",e)},expression:"formData.language"}},t._l(t.languageList,function(e,n){return a("Option",{key:n,attrs:{value:n}},[t._v(t._s(e))])}),1)],1)],1),a("div",{staticClass:"setting-footer"},[a("Button",{attrs:{loading:t.loadIng>0,type:"primary"},on:{click:t.submitForm}},[t._v(t._s(t.$L("\u63D0\u4EA4")))]),a("Button",{staticStyle:{"margin-left":"8px"},attrs:{loading:t.loadIng>0},on:{click:t.resetForm}},[t._v(t._s(t.$L("\u91CD\u7F6E")))])],1)],1)},g=[];const c={data(){return{loadIng:0,languageList:s,formData:{language:""},ruleData:{}}},mounted(){this.initData()},computed:{...l(["formLabelPosition","formLabelWidth"])},methods:{initData(){this.$set(this.formData,"language",i),this.formData_bak=$A.cloneJSON(this.formData)},submitForm(){this.$refs.formData.validate(t=>{t&&m(this.formData.language)})},resetForm(){this.formData=$A.cloneJSON(this.formData_bak)}}},r={};var _=u(c,f,g,!1,d,null,null,null);function d(t){for(let o in r)this[o]=r[o]}var p=function(){return _.exports}();export{p as default};
|
||||
import{d as s,m as l,l as i,q as m,n as u}from"./app.7d416d31.js";var f=function(){var t=this,o=t.$createElement,a=t._self._c||o;return a("div",{staticClass:"setting-item submit"},[a("Form",{ref:"formData",attrs:{model:t.formData,rules:t.ruleData,labelPosition:t.formLabelPosition,labelWidth:t.formLabelWidth},nativeOn:{submit:function(e){e.preventDefault()}}},[a("FormItem",{attrs:{label:t.$L("\u9009\u62E9\u8BED\u8A00"),prop:"language"}},[a("Select",{attrs:{placeholder:t.$L("\u9009\u9879\u8BED\u8A00")},model:{value:t.formData.language,callback:function(e){t.$set(t.formData,"language",e)},expression:"formData.language"}},t._l(t.languageList,function(e,n){return a("Option",{key:n,attrs:{value:n}},[t._v(t._s(e))])}),1)],1)],1),a("div",{staticClass:"setting-footer"},[a("Button",{attrs:{loading:t.loadIng>0,type:"primary"},on:{click:t.submitForm}},[t._v(t._s(t.$L("\u63D0\u4EA4")))]),a("Button",{staticStyle:{"margin-left":"8px"},attrs:{loading:t.loadIng>0},on:{click:t.resetForm}},[t._v(t._s(t.$L("\u91CD\u7F6E")))])],1)],1)},g=[];const c={data(){return{loadIng:0,languageList:s,formData:{language:""},ruleData:{}}},mounted(){this.initData()},computed:{...l(["formLabelPosition","formLabelWidth"])},methods:{initData(){this.$set(this.formData,"language",i),this.formData_bak=$A.cloneJSON(this.formData)},submitForm(){this.$refs.formData.validate(t=>{t&&m(this.formData.language)})},resetForm(){this.formData=$A.cloneJSON(this.formData_bak)}}},r={};var _=u(c,f,g,!1,d,null,null,null);function d(t){for(let o in r)this[o]=r[o]}var p=function(){return _.exports}();export{p as default};
|
||||
1
public/js/build/ldap.6937bf6c.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25667"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#FFC835" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25667)"><g><path d="M33.400099999999995,12C34.0625,12,34.599599999999995,12.537033,34.599599999999995,13.1995L34.599599999999995,34.799099999999996C34.6004,35.4621,34.0631,36,33.400099999999995,36L16.59993,36C14.61174,36,13,34.3883,13,32.400099999999995L13,15.59993C13,13.61174,14.61174,12,16.59993,12L33.400099999999995,12ZM32.1991,31.1991L16.59993,31.1991C15.953240000000001,31.2215,15.440570000000001,31.7523,15.440570000000001,32.3994C15.440570000000001,33.0464,15.953240000000001,33.577200000000005,16.59993,33.599599999999995L32.1991,33.599599999999995L32.1991,31.1991ZM23.799799999999998,22.799799999999998C21.8116,22.799799999999998,20.19986,24.4115,20.19986,26.3997L27.3997,26.3997C27.3997,24.4115,25.788,22.799799999999998,23.799799999999998,22.799799999999998ZM23.799799999999998,16.799419999999998C22.47406,16.799419999999998,21.39935,17.87413,21.39935,19.19986C21.39935,20.525579999999998,22.47406,21.60029,23.799799999999998,21.60029C25.125500000000002,21.60029,26.200200000000002,20.525579999999998,26.200200000000002,19.19986C26.1994,17.87446,25.1252,16.80022,23.799799999999998,16.799419999999998Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></svg>
|
||||
|
After Width: | Height: | Size: 1.5 KiB |
1
public/js/build/license.2d98adda.css
vendored
@ -1 +0,0 @@
|
||||
.license-box[data-v-2888f6cc]{padding-top:6px}.license-box>ul>li[data-v-2888f6cc]{list-style:none;font-size:14px;line-height:22px;padding-bottom:6px;display:flex}.license-box>ul>li.warning[data-v-2888f6cc]{font-weight:500;color:#ed4014}.license-box>ul>li>em[data-v-2888f6cc]{flex-shrink:0;font-style:normal;opacity:.8}.license-box>ul>li>span[data-v-2888f6cc]{padding-left:6px}.license-box>ul>li .information[data-v-2888f6cc]{display:flex;align-items:center;justify-content:center;margin-left:6px}
|
||||
1
public/js/build/license.7bfedaa1.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
import{m as n,n as r}from"./app.7d416d31.js";var l=function(){var a,t=this,e=t.$createElement,o=t._self._c||e;return o("div",{staticClass:"setting-item submit"},[o("Form",{ref:"formData",attrs:{model:t.formData,labelPosition:t.formLabelPosition,labelWidth:t.formLabelWidth},nativeOn:{submit:function(s){s.preventDefault()}}},[o("FormItem",{attrs:{label:"License",prop:"license"}},[o("Input",{attrs:{type:"textarea",autosize:{minRows:2,maxRows:5},placeholder:t.$L("\u8BF7\u8F93\u5165License...")},model:{value:t.formData.license,callback:function(s){t.$set(t.formData,"license",s)},expression:"formData.license"}})],1),o("FormItem",[o("div",{staticClass:"license-box"},[t.formData.info.sn?o("ul",[o("li",[o("em",[t._v("SN:")]),o("span",[t._v(t._s(t.formData.info.sn))]),o("ETooltip",{attrs:{"max-width":"auto",placement:"right"}},[o("div",{attrs:{slot:"content"},slot:"content"},[t._v(t._s(t.$L("\u5F53\u524D\u73AF\u5883"))+": "+t._s(t.formData.doo_sn))]),o("Icon",{staticClass:"information",attrs:{type:"ios-information-circle-outline"}})],1)],1),o("li",[o("em",[t._v("IP:")]),o("span",[t._v(t._s(t.infoJoin(t.formData.info.ip)))])]),o("li",[o("em",[t._v(t._s(t.$L("\u57DF\u540D"))+":")]),o("span",[t._v(t._s(t.infoJoin(t.formData.info.domain)))])]),o("li",[o("em",[t._v("MAC:")]),o("span",[t._v(t._s(t.infoJoin(t.formData.info.mac)))]),o("ETooltip",{attrs:{"max-width":"auto",placement:"right"}},[o("div",{attrs:{slot:"content"},slot:"content"},[t._v(t._s(t.$L("\u5F53\u524D\u73AF\u5883"))+": "+t._s(t.infoJoin(t.formData.macs,"-")))]),o("Icon",{staticClass:"information",attrs:{type:"ios-information-circle-outline"}})],1)],1),o("li",[o("em",[t._v(t._s(t.$L("\u4F7F\u7528\u4EBA\u6570"))+":")]),o("span",[t._v(t._s(t.formData.info.people||t.$L("\u65E0\u9650\u5236"))+" ("+t._s(t.$L("\u5DF2\u4F7F\u7528"))+": "+t._s(t.formData.user_count)+")")]),o("ETooltip",{attrs:{"max-width":"auto",placement:"right"}},[o("div",{attrs:{slot:"content"},slot:"content"},[t._v(t._s(t.$L("\u9650\u5236\u6CE8\u518C\u4EBA\u6570")))]),o("Icon",{staticClass:"information",attrs:{type:"ios-information-circle-outline"}})],1)],1),o("li",[o("em",[t._v(t._s(t.$L("\u521B\u5EFA\u65F6\u95F4"))+":")]),o("span",[t._v(t._s(t.formData.info.created_at))])]),o("li",[o("em",[t._v(t._s(t.$L("\u5230\u671F\u65F6\u95F4"))+":")]),o("span",[t._v(t._s(t.formData.info.expired_at||t.$L("\u6C38\u4E45")))]),t.formData.info.expired_at?o("ETooltip",{attrs:{"max-width":"auto",placement:"right"}},[o("div",{attrs:{slot:"content"},slot:"content"},[t._v(t._s(t.$L("\u5230\u671F\u540E\u9650\u5236\u6CE8\u518C\u5E10\u53F7")))]),o("Icon",{staticClass:"information",attrs:{type:"ios-information-circle-outline"}})],1):t._e()],1)]):o("ul",[o("li",[t._v(" "+t._s(t.$L("\u52A0\u8F7D\u4E2D..."))+" ")])])])]),((a=t.formData.error)===null||a===void 0?void 0:a.length)>0?o("FormItem",{attrs:{label:t.$L("\u5F53\u524D\u73AF\u5883")}},[o("div",{staticClass:"license-box"},[o("ul",[o("li",[o("em",[t._v("SN:")]),o("span",[t._v(t._s(t.formData.doo_sn))])]),o("li",[o("em",[t._v("MAC:")]),o("span",[t._v(t._s(t.infoJoin(t.formData.macs)))])]),t._l(t.formData.error,function(s){return o("li",{staticClass:"warning"},[t._v(t._s(s))])})],2)])]):t._e()],1),o("div",{staticClass:"setting-footer"},[o("Button",{attrs:{loading:t.loadIng>0,type:"primary"},on:{click:t.submitForm}},[t._v(t._s(t.$L("\u63D0\u4EA4")))]),o("Button",{staticStyle:{"margin-left":"8px"},attrs:{loading:t.loadIng>0},on:{click:t.resetForm}},[t._v(t._s(t.$L("\u91CD\u7F6E")))])],1)],1)},m=[];const _={data(){return{loadIng:0,formData:{license:"",info:{},macs:[],doo_sn:"",user_count:0,error:[]}}},mounted(){this.systemSetting()},computed:{...n(["userInfo","formLabelPosition","formLabelWidth"])},methods:{submitForm(){this.$refs.formData.validate(a=>{a&&this.systemSetting(!0)})},resetForm(){this.formData=$A.cloneJSON(this.formData_bak)},systemSetting(a){this.loadIng++,this.$store.dispatch("call",{url:"system/license",data:Object.assign(this.formData,{type:a?"save":"get"}),method:"post"}).then(({data:t})=>{a&&$A.messageSuccess("\u4FEE\u6539\u6210\u529F"),this.formData=t,this.formData_bak=$A.cloneJSON(this.formData)}).catch(({msg:t})=>{a&&$A.modalError(t)}).finally(t=>{this.loadIng--})},infoJoin(a,t=null){return $A.isArray(a)&&(a=a.join(",")),a||(t===null?this.$L("\u65E0\u9650\u5236"):t)}}},i={};var c=r(_,l,m,!1,f,"0f9d4138",null,null);function f(a){for(let t in i)this[t]=i[t]}var v=function(){return c.exports}();export{v as default};
|
||||
1
public/js/build/license.c7d9ffba.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
.license-box[data-v-0f9d4138]{padding-top:6px}.license-box>ul>li[data-v-0f9d4138]{list-style:none;font-size:14px;line-height:22px;padding-bottom:6px;display:flex}.license-box>ul>li.warning[data-v-0f9d4138]{font-weight:500;color:#ed4014}.license-box>ul>li>em[data-v-0f9d4138]{flex-shrink:0;font-style:normal;opacity:.8}.license-box>ul>li>span[data-v-0f9d4138]{padding-left:6px}.license-box>ul>li .information[data-v-0f9d4138]{display:flex;align-items:center;justify-content:center;margin-left:6px}
|
||||
1
public/js/build/license.cf8aaecf.js
vendored
@ -1 +0,0 @@
|
||||
import{m as e,n}from"./app.7b9537da.js";var r=function(){var t=this,a=t.$createElement,o=t._self._c||a;return o("div",{staticClass:"setting-item submit"},[o("Form",{ref:"formData",attrs:{model:t.formData,labelPosition:t.formLabelPosition,labelWidth:t.formLabelWidth},nativeOn:{submit:function(s){s.preventDefault()}}},[o("FormItem",{attrs:{label:"License",prop:"license"}},[o("Input",{attrs:{type:"textarea",autosize:{minRows:2,maxRows:5},placeholder:t.$L("\u8BF7\u8F93\u5165License...")},model:{value:t.formData.license,callback:function(s){t.$set(t.formData,"license",s)},expression:"formData.license"}})],1),o("FormItem",{attrs:{label:t.$L("\u8BE6\u7EC6\u4FE1\u606F")}},[o("div",{staticClass:"license-box"},[t.formData.info.sn?o("ul",[o("li",[o("em",[t._v("SN:")]),o("span",[t._v(t._s(t.formData.info.sn))]),o("ETooltip",{attrs:{"max-width":"auto",placement:"right"}},[o("div",{attrs:{slot:"content"},slot:"content"},[t._v(t._s(t.$L("\u5F53\u524D\u73AF\u5883"))+": "+t._s(t.formData.doo_sn))]),o("Icon",{staticClass:"information",attrs:{type:"ios-information-circle-outline"}})],1)],1),o("li",[o("em",[t._v("IP:")]),o("span",[t._v(t._s(t.infoJoin(t.formData.info.ip)))])]),o("li",[o("em",[t._v(t._s(t.$L("\u57DF\u540D"))+":")]),o("span",[t._v(t._s(t.infoJoin(t.formData.info.domain)))])]),o("li",[o("em",[t._v("MAC:")]),o("span",[t._v(t._s(t.infoJoin(t.formData.info.mac)))]),o("ETooltip",{attrs:{"max-width":"auto",placement:"right"}},[o("div",{attrs:{slot:"content"},slot:"content"},[t._v(t._s(t.$L("\u5F53\u524D\u73AF\u5883"))+": "+t._s(t.infoJoin(t.formData.macs,"-")))]),o("Icon",{staticClass:"information",attrs:{type:"ios-information-circle-outline"}})],1)],1),o("li",[o("em",[t._v(t._s(t.$L("\u4F7F\u7528\u4EBA\u6570"))+":")]),o("span",[t._v(t._s(t.formData.info.people||t.$L("\u65E0\u9650\u5236"))+" ("+t._s(t.$L("\u5DF2\u4F7F\u7528"))+": "+t._s(t.formData.user_count)+")")]),o("ETooltip",{attrs:{"max-width":"auto",placement:"right"}},[o("div",{attrs:{slot:"content"},slot:"content"},[t._v(t._s(t.$L("\u9650\u5236\u6CE8\u518C\u4EBA\u6570")))]),o("Icon",{staticClass:"information",attrs:{type:"ios-information-circle-outline"}})],1)],1),o("li",[o("em",[t._v(t._s(t.$L("\u521B\u5EFA\u65F6\u95F4"))+":")]),o("span",[t._v(t._s(t.formData.info.created_at))])]),o("li",[o("em",[t._v(t._s(t.$L("\u5230\u671F\u65F6\u95F4"))+":")]),o("span",[t._v(t._s(t.formData.info.expired_at||t.$L("\u6C38\u4E45")))]),t.formData.info.expired_at?o("ETooltip",{attrs:{"max-width":"auto",placement:"right"}},[o("div",{attrs:{slot:"content"},slot:"content"},[t._v(t._s(t.$L("\u5230\u671F\u540E\u9650\u5236\u6CE8\u518C\u5E10\u53F7")))]),o("Icon",{staticClass:"information",attrs:{type:"ios-information-circle-outline"}})],1):t._e()],1),t._l(t.formData.error,function(s){return o("li",{staticClass:"warning"},[t._v(t._s(s))])})],2):o("ul",[o("li",[t._v(" "+t._s(t.$L("\u52A0\u8F7D\u4E2D..."))+" ")])])])])],1),o("div",{staticClass:"setting-footer"},[o("Button",{attrs:{loading:t.loadIng>0,type:"primary"},on:{click:t.submitForm}},[t._v(t._s(t.$L("\u63D0\u4EA4")))]),o("Button",{staticStyle:{"margin-left":"8px"},attrs:{loading:t.loadIng>0},on:{click:t.resetForm}},[t._v(t._s(t.$L("\u91CD\u7F6E")))])],1)],1)},l=[];const m={data(){return{loadIng:0,formData:{license:"",info:{},macs:[],doo_sn:"",user_count:0,error:[]}}},mounted(){this.systemSetting()},computed:{...e(["userInfo","formLabelPosition","formLabelWidth"])},methods:{submitForm(){this.$refs.formData.validate(t=>{t&&this.systemSetting(!0)})},resetForm(){this.formData=$A.cloneJSON(this.formData_bak)},systemSetting(t){this.loadIng++,this.$store.dispatch("call",{url:"system/license",data:Object.assign(this.formData,{type:t?"save":"get"}),method:"post"}).then(({data:a})=>{t&&$A.messageSuccess("\u4FEE\u6539\u6210\u529F"),this.formData=a,this.formData_bak=$A.cloneJSON(this.formData)}).catch(({msg:a})=>{t&&$A.modalError(a)}).finally(a=>{this.loadIng--})},infoJoin(t,a=null){return $A.isArray(t)&&(t=t.join(",")),t||(a===null?this.$L("\u65E0\u9650\u5236"):a)}}},i={};var c=n(m,r,l,!1,_,"2888f6cc",null,null);function _(t){for(let a in i)this[a]=i[a]}var u=function(){return c.exports}();export{u as default};
|
||||
1
public/js/build/longpress.43ca7fd9.js
vendored
@ -1 +0,0 @@
|
||||
const c="ontouchend"in document,a={bind:function(e,_){let r=500,s=_.value;if($A.isJson(_.value)&&(r=_.value.delay||500,s=_.value.callback),typeof s!="function")throw"callback must be a function";if(e.__longpressContextmenu__=t=>{t.preventDefault(),t.stopPropagation(),s(t,e)},e.addEventListener("contextmenu",e.__longpressContextmenu__),!c)return;let n=null,o=!1;e.__longpressStart__=t=>{t.type==="click"&&t.button!==0||(o=!1,n===null&&(n=setTimeout(()=>{o=!0,s(t.touches[0],e)},r)))},e.__longpressCancel__=t=>{n!==null&&(clearTimeout(n),n=null)},e.__longpressClick__=t=>{o&&(t.preventDefault(),t.stopPropagation()),e.__longpressCancel__(t)},e.addEventListener("touchstart",e.__longpressStart__),e.addEventListener("click",e.__longpressClick__),e.addEventListener("touchmove",e.__longpressCancel__),e.addEventListener("touchend",e.__longpressCancel__),e.addEventListener("touchcancel",e.__longpressCancel__)},unbind(e){e.removeEventListener("contextmenu",e.__longpressContextmenu__),delete e.__longpressContextmenu__,c&&(e.removeEventListener("touchstart",e.__longpressStart__),e.removeEventListener("click",e.__longpressClick__),e.removeEventListener("touchmove",e.__longpressCancel__),e.removeEventListener("touchend",e.__longpressCancel__),e.removeEventListener("touchcancel",e.__longpressCancel__),delete e.__longpressStart__,delete e.__longpressClick__,delete e.__longpressCancel__)}};export{a as l};
|
||||
1
public/js/build/longpress.c69d0833.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
const r=$A.isIos()&&"ontouchend"in document,a={bind:function(e,_){let c=500,s=_.value;if($A.isJson(_.value)&&(c=_.value.delay||500,s=_.value.callback),typeof s!="function")throw"callback must be a function";if(e.__longpressContextmenu__=n=>{n.preventDefault(),n.stopPropagation(),r||s(n,e)},e.addEventListener("contextmenu",e.__longpressContextmenu__),!r)return;let t=null,o=!1;e.__longpressStart__=n=>{n.type==="click"&&n.button!==0||(o=!1,t===null&&(t=setTimeout(()=>{o=!0,s(n.touches[0],e)},c)))},e.__longpressCancel__=n=>{t!==null&&(clearTimeout(t),t=null)},e.__longpressClick__=n=>{o&&(n.preventDefault(),n.stopPropagation()),e.__longpressCancel__(n)},e.addEventListener("touchstart",e.__longpressStart__),e.addEventListener("click",e.__longpressClick__),e.addEventListener("touchmove",e.__longpressCancel__),e.addEventListener("touchend",e.__longpressCancel__),e.addEventListener("touchcancel",e.__longpressCancel__)},unbind(e){e.removeEventListener("contextmenu",e.__longpressContextmenu__),delete e.__longpressContextmenu__,r&&(e.removeEventListener("touchstart",e.__longpressStart__),e.removeEventListener("click",e.__longpressClick__),e.removeEventListener("touchmove",e.__longpressCancel__),e.removeEventListener("touchend",e.__longpressCancel__),e.removeEventListener("touchcancel",e.__longpressCancel__),delete e.__longpressStart__,delete e.__longpressClick__,delete e.__longpressCancel__)}};export{a as l};
|
||||
1
public/js/build/mail.8f60e67c.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25401"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#F57775" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25401)"><g><path d="M36,19.35553L36,31.6471C36,32.8166,35.0519,33.764700000000005,33.882400000000004,33.764700000000005L14.11765,33.764700000000005C12.948108,33.764700000000005,12.00000549316,32.8166,12.00000549316,31.6471L12.00000549316,19.35553L20.804470000000002,26.8202C22.6481,28.3834,25.3519,28.3834,27.1955,26.8202L36,19.35553ZM33.882400000000004,14.000000646254C34.1404,14.000286291,34.3963,14.0471559,34.6376,14.138353C34.984700000000004,14.270521,35.2905,14.492136,35.5242,14.780706C35.6509,14.935896,35.7549,15.10818,35.8334,15.29247C35.925200000000004,15.50988,35.9816,15.74565,35.9958,15.99341L36,16.11765L36,16.823529999999998L25.3744,25.8871C24.6211,26.5295,23.5233,26.5644,22.730800000000002,25.9711L22.625700000000002,25.886400000000002L12.00000517004,16.823529999999998L12.00000517004,16.11765C11.9982451,15.318200000000001,12.448325,14.586376,13.16259,14.227294C13.45869,14.0776132,13.78587,13.999747961,14.11765,14.000000646254L33.882400000000004,14.000000646254Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></svg>
|
||||
|
After Width: | Height: | Size: 1.4 KiB |
1
public/js/build/manage.670b439a.js
vendored
Normal file
1
public/js/build/manage.69105d07.js
vendored
1
public/js/build/meeting-create.41663ea5.svg
Normal file
@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" viewBox="0 0 48 48"><defs><clipPath id="master_svg0_3054_25658"><rect x="12" y="12" width="24" height="24" rx="0"/></clipPath></defs><g><rect x="0" y="0" width="48" height="48" rx="12" fill="#72A1F7" fill-opacity="1"/><g clip-path="url(#master_svg0_3054_25658)"><g><path d="M33.1767,19.46395L30.5723,21.34133L30.5723,19.01332C30.5723,17.34516,29.217,15.99442094,27.5489,16L15.01332,16C13.34911,15.999999801611,12,17.34911,12,19.01332L12,29.5822C12,31.2464,13.34911,32.595600000000005,15.01332,32.595600000000005L27.5489,32.595600000000005C29.217,32.6011,30.5723,31.2504,30.5723,29.5822L30.5723,27.2542L33.182500000000005,29.1259C33.7237,29.5146,34.436800000000005,29.5683,35.0302,29.2651C35.623599999999996,28.9619,35.9979,28.3525,36,27.6861L36,20.907980000000002C36.0011,20.23879,35.626599999999996,19.62559,35.0308,19.32086C34.4351,19.01614,33.7187,19.07142,33.1767,19.46395Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></svg>
|
||||
|
After Width: | Height: | Size: 1.0 KiB |
20
public/js/build/meeting-join.ebeac42f.svg
Normal file
@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 26.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:#53CBAE;}
|
||||
.st1{fill:#FFFFFF;}
|
||||
</style>
|
||||
<path class="st0" d="M36,48H12C5.4,48,0,42.6,0,36V12C0,5.4,5.4,0,12,0h24c6.6,0,12,5.4,12,12v24C48,42.6,42.6,48,36,48z"/>
|
||||
<g>
|
||||
<g>
|
||||
<path class="st1" d="M35.8,18.3l-2.6,2.2c-0.3,0.3-0.5,0.6-0.5,1v4.8c0,0.4,0.2,0.8,0.5,1l2.6,2.2c0.9,0.8,2.2,0.1,2.2-1v-9.3
|
||||
C38,18.2,36.6,17.6,35.8,18.3z"/>
|
||||
<path class="st1" d="M28.8,14.6H12c-1.1,0-2,0.9-2,2v14.8c0,1.1,0.9,2,2,2h16.8c1.1,0,2-0.9,2-2V16.6
|
||||
C30.8,15.5,29.9,14.6,28.8,14.6z M23.4,24.7h-2.2V27c0,0.4-0.3,0.7-0.7,0.7c-0.4,0-0.7-0.3-0.7-0.7v-2.2h-2.2
|
||||
c-0.4,0-0.7-0.3-0.7-0.7s0.3-0.7,0.7-0.7h2.2V21c0-0.4,0.3-0.7,0.7-0.7c0.4,0,0.7,0.3,0.7,0.7v2.2h2.2c0.4,0,0.7,0.3,0.7,0.7
|
||||
S23.8,24.7,23.4,24.7z"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
1
public/js/build/meeting.84c0d424.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
import{M as i}from"./MeetingManager.3fcd7984.js";import{n as o}from"./app.7d416d31.js";var s=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[n("MeetingManager")],1)},a=[];const m={components:{MeetingManager:i},mounted(){this.$store.dispatch("showMeetingWindow",{type:"join",meetingid:this.$route.params.meetingId,meetingSharekey:this.$route.params.sharekey,meetingdisabled:!0})}},r={};var _=o(m,s,a,!1,c,null,null,null);function c(t){for(let e in r)this[e]=r[e]}var d=function(){return _.exports}();export{d as default};
|
||||
1
public/js/build/meeting.af5ce779.js
vendored
@ -1 +0,0 @@
|
||||
import{M as i}from"./MeetingManager.04349bc7.js";import{n as o}from"./app.7b9537da.js";import"./UserSelect.ee0927b8.js";var s=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[n("MeetingManager")],1)},a=[];const m={components:{MeetingManager:i},mounted(){this.$store.dispatch("showMeetingWindow",{type:"join",meetingid:this.$route.params.meetingId,meetingSharekey:this.$route.params.sharekey,meetingdisabled:!0})}},r={};var _=o(m,s,a,!1,c,null,null,null);function c(t){for(let e in r)this[e]=r[e]}var d=function(){return _.exports}();export{d as default};
|
||||
1
public/js/build/messenger.0e5e0c6d.js
vendored
1
public/js/build/messenger.43c57f25.js
vendored
Normal file
1
public/js/build/okr-analyze.90c08797.svg
Normal file
|
After Width: | Height: | Size: 6.0 KiB |