Compare commits

...

142 Commits

Author SHA1 Message Date
手瓜一十雪
4dd7363dd3 Merge branch 'main' of https://github.com/NapNeko/NapCatQQ 2024-06-04 12:39:08 +08:00
手瓜一十雪
3d5e5ab78f release: v1.5.1 2024-06-04 12:38:54 +08:00
手瓜一十雪
73045a1b21 Merge pull request #57 from Icexbb/main
fix: 整理日志、添加颜色、使用统一的日志函数以提高日志可读性
2024-06-04 12:37:54 +08:00
手瓜一十雪
871173a7cf fix: 二维码显示 2024-06-04 12:37:35 +08:00
手瓜一十雪
0002313093 Merge branch 'main' into pr/57 2024-06-04 12:31:43 +08:00
手瓜一十雪
948cf5cca6 refactror: cpmoudle
此处非NC运行时的代码 用于打包时运行
2024-06-04 12:26:19 +08:00
手瓜一十雪
d40230879c fix: 玄学的问题 2024-06-04 12:20:42 +08:00
XBB
ab22b775f1 fix: 整理日志、添加颜色、使用统一的日志函数以提高日志可读性 2024-06-04 02:59:35 +08:00
手瓜一十雪
42c85224ba build: v1.5.1-beta1 2024-06-03 21:18:24 +08:00
手瓜一十雪
e57444a353 sync: core 2024-06-03 21:11:21 +08:00
手瓜一十雪
3c6503d495 feat: support SetSelfProfile 2024-06-03 21:02:43 +08:00
手瓜一十雪
149b518f48 release: v1.5.0 2024-06-03 17:15:43 +08:00
手瓜一十雪
74621447ff fix: 提高兼容性 2024-06-03 17:12:53 +08:00
手瓜一十雪
3280952931 fix: 提高Api兼容性 2024-06-03 17:09:23 +08:00
手瓜一十雪
9e670e2736 Merge branch 'main' of https://github.com/NapNeko/NapCatQQ 2024-06-03 16:56:28 +08:00
手瓜一十雪
9fc6347a2f fix: 进一步标准化 2024-06-03 16:56:08 +08:00
Version
ec7a15a192 chore:version change 2024-06-03 08:50:25 +00:00
手瓜一十雪
7f99982810 release: v1.4.9 2024-06-03 16:49:08 +08:00
Version
935d83aaf8 chore:version change 2024-06-02 13:01:32 +00:00
手瓜一十雪
0ff6edd546 style: lint 2024-06-02 20:49:09 +08:00
手瓜一十雪
94f629585a build: v1.4.8-beta2 2024-06-02 20:40:41 +08:00
手瓜一十雪
89c04be02f fix 2024-06-02 13:58:51 +08:00
手瓜一十雪
3151965ea8 build: 1.3.8-beta1 2024-06-02 13:45:48 +08:00
手瓜一十雪
bdf5159be1 refactor: guid 2024-06-02 13:38:33 +08:00
手瓜一十雪
0499ebbea3 release: v1.4.7 2024-06-01 15:52:06 +08:00
手瓜一十雪
d5843b7236 refactor: v1.4.6 2024-06-01 14:09:16 +08:00
手瓜一十雪
1c9c574a90 refactor: v1.4.6 2024-06-01 14:08:10 +08:00
手瓜一十雪
39acf20e48 release: v1.4.6 2024-06-01 14:05:44 +08:00
手瓜一十雪
52eb6ed5ab refactor: group call 2024-06-01 14:02:43 +08:00
手瓜一十雪
ee78d2d59d fix: type hint 2024-06-01 12:14:37 +08:00
手瓜一十雪
60dc5c4a38 refactor: re groupList 2024-06-01 12:10:50 +08:00
手瓜一十雪
50a0dc0355 refactor: GroupListGet 2024-06-01 11:38:50 +08:00
手瓜一十雪
3f681ec914 refactor:NT Event Finish 2024-05-31 23:33:23 +08:00
手瓜一十雪
0bf499f191 release: v1.4.5 2024-05-31 21:25:47 +08:00
手瓜一十雪
389695a0d6 fix: 1.4.5 2024-05-31 21:22:17 +08:00
手瓜一十雪
07f1afb312 fix 2024-05-31 21:03:00 +08:00
手瓜一十雪
ae91e61304 refactor:NTEvent 2024-05-31 21:02:39 +08:00
手瓜一十雪
6248991b01 refactor: NTEvent 2024-05-31 20:38:31 +08:00
手瓜一十雪
7f2d57ef62 refactor: event 2024-05-31 20:29:01 +08:00
手瓜一十雪
31f8f884f1 refactor: NTEvent 2024-05-31 19:09:03 +08:00
手瓜一十雪
4f4af5985a fix: type check & type output 2024-05-31 18:55:18 +08:00
手瓜一十雪
a716fdf6d4 refactor:NTEventDispatch 2024-05-31 14:07:35 +08:00
手瓜一十雪
9717f64abd refactor:NTEvent 2024-05-31 13:55:28 +08:00
手瓜一十雪
adf239183a docs: change 2024-05-31 10:12:59 +08:00
手瓜一十雪
6cf209c79c release: v1.4.4 2024-05-30 22:45:57 +08:00
手瓜一十雪
decc5fb3c0 refactor: checkDate 2024-05-30 22:41:51 +08:00
手瓜一十雪
1e0820d613 refactor: send rate 2024-05-30 22:38:02 +08:00
手瓜一十雪
70124d5177 refactor: GoCQHTTPUploadGroupFile 2024-05-30 22:32:09 +08:00
手瓜一十雪
269de65201 fix: undel 2024-05-30 20:53:58 +08:00
手瓜一十雪
1d11abbfb6 refactor: NTEvent 2024-05-30 19:40:40 +08:00
手瓜一十雪
700f308d6e feat: wrap NT-Event 2024-05-30 17:28:08 +08:00
手瓜一十雪
21b6928ca6 chore: sync core 2024-05-30 16:24:09 +08:00
手瓜一十雪
998c67a649 release: v1.4.3 2024-05-30 16:21:39 +08:00
Version
fb99e878b0 chore:version change 2024-05-30 04:36:42 +00:00
手瓜一十雪
1619adfc27 release: v1.4.2 2024-05-30 12:36:15 +08:00
手瓜一十雪
5510fb473f fix: typo 2024-05-30 12:02:47 +08:00
手瓜一十雪
be1878cb2b build: 1.4.2-fix:file list 2024-05-30 11:01:34 +08:00
手瓜一十雪
15ab121cbd fix: config 2024-05-29 14:26:45 +08:00
手瓜一十雪
aa79b0e861 fix: ocr 2024-05-29 14:18:43 +08:00
手瓜一十雪
b80e550bcd docs: 1.4.2 2024-05-29 12:14:17 +08:00
手瓜一十雪
dbc40b5814 release:1.4.1 2024-05-29 11:38:57 +08:00
Version
0d5696a644 chore:version change 2024-05-29 03:36:54 +00:00
手瓜一十雪
ceffa05802 fix 2024-05-29 11:36:04 +08:00
手瓜一十雪
d5668920b6 release: 1.4.1 2024-05-29 11:34:55 +08:00
手瓜一十雪
516f2da144 feat: en2zh 2024-05-29 10:25:13 +08:00
手瓜一十雪
33c94e1888 docs: 1.4.1 todo 2024-05-29 00:34:44 +08:00
手瓜一十雪
51ab58cd91 fix: webui 2024-05-29 00:07:05 +08:00
手瓜一十雪
aa7798d1d1 feat: wait fix 2024-05-29 00:00:48 +08:00
手瓜一十雪
9067a1fc92 refactor: info record local 2024-05-28 23:24:54 +08:00
手瓜一十雪
4024b6c564 Merge pull request #46 from po-lan/main
Update GetGroupMemberList.ts
2024-05-28 23:20:11 +08:00
po-lan
d39730928b Update GetGroupMemberList.ts
fix
2024-05-28 23:17:39 +08:00
手瓜一十雪
e1f049229c Merge pull request #45 from po-lan/main
对 get_group_member_list 增强
2024-05-28 22:49:21 +08:00
po-lan
8f2676ec19 Update main.ts 2024-05-28 22:43:41 +08:00
po-lan
32d26248dc Update main.ts 2024-05-28 22:41:40 +08:00
po-lan
16f926401b Update db.ts 2024-05-28 22:30:26 +08:00
po-lan
66d60d3599 Update main.ts 2024-05-28 22:27:12 +08:00
po-lan
5a35ab6c34 Update OB11GroupIncreaseEvent.ts 2024-05-28 22:26:02 +08:00
手瓜一十雪
ba1542bd31 Merge pull request #44 from po-lan/main
对 get_group_member_list 增强
2024-05-28 21:49:26 +08:00
po-lan
453060945a Update OB11GroupIncreaseEvent.ts 2024-05-28 21:47:05 +08:00
po-lan
c8351be461 Update config.ts 2024-05-28 21:45:36 +08:00
po-lan
9954da22a6 Update db.ts 2024-05-28 21:44:30 +08:00
手瓜一十雪
907b5611eb chore: sync core 2024-05-28 21:02:57 +08:00
手瓜一十雪
5f075de212 refactor: Info 2024-05-28 20:50:29 +08:00
手瓜一十雪
8fcf3c5079 refactor: GroupInfo 2024-05-28 20:43:16 +08:00
手瓜一十雪
07cee90c7a refactor: MemberInfo-1 2024-05-28 20:08:40 +08:00
手瓜一十雪
75ad495b98 refactor: remove some log 2024-05-28 19:32:08 +08:00
手瓜一十雪
0bb7288ad2 Merge pull request #40 from po-lan/main
对 get_group_member_list 增强
2024-05-28 19:21:25 +08:00
po-lan
ad72415532 对 get_group_member_list 增强开关 2024-05-27 17:11:26 +08:00
po-lan
0ad0353fc0 对 get_group_member_list 增强
监听每一条群聊消息准备写入数据库
2024-05-27 17:09:27 +08:00
po-lan
9fa0dcd7aa 对 get_group_member_list 增强
非管理员的Bot可以通过本地数据库获取到最近的发言时间
2024-05-27 17:07:23 +08:00
po-lan
1f2e80cd39 对 get_group_member_list 增强
一个基于LRU思想写出来的缓存结构
来降低写入数据库的次数
2024-05-27 17:05:28 +08:00
po-lan
6cb6034d43 对 get_group_member_list 增强 2024-05-27 17:01:24 +08:00
手瓜一十雪
25134c6ac6 fix: vite-env 2024-05-26 20:38:18 +08:00
手瓜一十雪
92bf42878a chore: sync core 2024-05-26 11:42:12 +08:00
手瓜一十雪
9f4582d158 docs: update 2024-05-25 19:30:48 +08:00
手瓜一十雪
68af73970e release: 1.4.0 2024-05-25 19:22:52 +08:00
手瓜一十雪
b6ed8d4975 docs: change 2024-05-25 16:55:02 +08:00
手瓜一十雪
d07d3645ce fix: typo 2024-05-25 13:42:10 +08:00
手瓜一十雪
123759ab17 fix: typo 2024-05-25 13:39:49 +08:00
手瓜一十雪
f2f1f893d8 feat: ocr image 2024-05-25 13:38:19 +08:00
手瓜一十雪
db93a8eed2 feat: /get_online_clients 2024-05-25 13:09:47 +08:00
手瓜一十雪
12ab6d4a7d fix 2024-05-25 12:48:13 +08:00
手瓜一十雪
add759e889 feat: try support get_online_clients 2024-05-25 12:02:09 +08:00
手瓜一十雪
f315f7977d feat: support card miniapp 2024-05-25 11:35:08 +08:00
手瓜一十雪
f2f6701ebd feat: support qzone.qq.com Cookies 2024-05-25 11:07:05 +08:00
手瓜一十雪
1a92794d33 chore: sync core 2024-05-24 23:25:14 +08:00
手瓜一十雪
7640deb798 feat: support mini app sign 2024-05-24 23:24:10 +08:00
手瓜一十雪
f1e8ef1cf6 fix: 紧急修复DetailInfo 2024-05-24 18:31:01 +08:00
手瓜一十雪
5e5ac0162e build: 1.3.8 2024-05-24 18:11:32 +08:00
手瓜一十雪
0c013820f0 chore: sync core 2024-05-24 13:51:40 +08:00
手瓜一十雪
4b3a9e5847 release: 1.3.8 2024-05-24 13:47:25 +08:00
手瓜一十雪
e4982256a4 fix: typo 2024-05-24 11:39:46 +08:00
手瓜一十雪
babc4927a8 feat: 注释解码 2024-05-24 11:28:43 +08:00
手瓜一十雪
6dd84cf469 build: 1.4.0-beta8 2024-05-24 11:21:34 +08:00
手瓜一十雪
a8800e3899 feat: 1.4.0-beta8 2024-05-24 11:18:32 +08:00
手瓜一十雪
5f03496046 build: 1.4.0-beta7 2024-05-24 10:45:12 +08:00
手瓜一十雪
41500c17a2 try: fix 2024-05-24 10:42:21 +08:00
手瓜一十雪
2dcfde8b9a build: 1.4.0-beta6 2024-05-23 18:23:11 +08:00
手瓜一十雪
5c3305d8fa Revert "feat: try support LiteLoader"
This reverts commit 8101d17482.
2024-05-23 18:10:18 +08:00
手瓜一十雪
0d1fe99f53 Merge pull request #32 from xihan123/main
fix: set_group_add_request reason 字段错误
2024-05-23 16:48:43 +08:00
xihan123
4c03ffeec7 fix: set_group_add_request reason 字段错误 2024-05-23 16:45:41 +08:00
手瓜一十雪
8101d17482 feat: try support LiteLoader 2024-05-23 16:30:29 +08:00
手瓜一十雪
bc7b4dcc2a build: 1.4.0-beta5 2024-05-23 15:16:35 +08:00
手瓜一十雪
3db8b9078d docs: change 2024-05-23 11:14:42 +08:00
手瓜一十雪
943dbbefd3 build: 1.4.0-beta4-兼容9.7.x换行符 2024-05-23 11:10:31 +08:00
手瓜一十雪
480abcb853 fix: HandlersClear 2024-05-23 10:23:37 +08:00
手瓜一十雪
60aaaff58e fix: UserDetail 2024-05-23 10:19:45 +08:00
手瓜一十雪
e3b889bbe8 fix: test 2024-05-22 21:44:12 +08:00
手瓜一十雪
ac5506a43b style: lint 2024-05-22 20:58:49 +08:00
手瓜一十雪
b29f533a3b feat: 1.4.0 2024-05-22 20:36:38 +08:00
手瓜一十雪
a8ee86b09e build: test 2024-05-22 20:31:16 +08:00
手瓜一十雪
0238c53302 build: 1.4.0-beta2 2024-05-22 20:19:28 +08:00
手瓜一十雪
665e3c806f build: 1.4.0 - beta2 2024-05-22 20:16:24 +08:00
手瓜一十雪
8c96838441 refactor: cjs to es 2024-05-22 20:13:18 +08:00
手瓜一十雪
4a722daec6 chore: sync core 2024-05-22 19:59:36 +08:00
手瓜一十雪
4e0cdbcb91 feat: 破坏性更新 cjs to es 2024-05-22 19:58:45 +08:00
手瓜一十雪
08976624cd feat: debug 2024-05-22 17:30:40 +08:00
手瓜一十雪
fdeba94653 chore: sync core 2024-05-22 16:11:01 +08:00
手瓜一十雪
d3b100b7e5 refactor: member info 2024-05-22 12:52:49 +08:00
手瓜一十雪
1de3e18b08 fix: remove unuse 2024-05-21 19:32:17 +08:00
手瓜一十雪
d5c3c95682 chore: sync core 2024-05-21 19:28:26 +08:00
手瓜一十雪
dabe1e29ed feat: GroupMemberDetailInfo 2024-05-21 19:27:59 +08:00
201 changed files with 3609 additions and 1360 deletions

View File

@@ -1,9 +1,10 @@
module.exports = {
'env': {
'browser': true,
'es2021': true,
'node': true
},
'ignorePatterns': ['src/core/', 'src/core.lib/'],
'ignorePatterns': ['src/core/', 'src/core.lib/','src/proto/'],
'extends': [
'eslint:recommended',
'plugin:@typescript-eslint/recommended'

2
.gitignore vendored
View File

@@ -14,4 +14,4 @@ dist/
# Build
*.db
checkVersion.sh
checkVersion.sh

View File

@@ -0,0 +1,12 @@
# v1.5.1
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
## 修复与优化
* 支持 新Api: set_self_profile 可设置个性签名
* 修复 Api: get_group_system_msg
* 整理日志、添加颜色、使用统一的日志函数以提高日志可读性
## 新增与调整
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -0,0 +1,15 @@
# v1.3.8
QQ Version: Windows 9.9.9-23873 / Linux 3.2.7-23361
## 修复与优化
* 优化打包后体积问题
* 修复QQ等级获取
* 兼容 9.7.x 版本换行符 统一为 \n
* 修复处理加群请求 字段异常情况
* 修复退群通知问题
## 新增与调整
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -0,0 +1,11 @@
# v1.3.9
QQ Version: Windows 9.9.10-23873 / Linux 3.2.7-23361
## 修复与优化
* 修复QQ等级获取与兼容性问题
## 新增与调整
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -0,0 +1,12 @@
# v1.4.0
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
## 修复与优化
## 新增与调整
* 支持空间Cookies获取
* 支持获取在线设备 API /get_online_clients
* 支持图片OCR API /.ocr_image /ocr_image
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -0,0 +1,14 @@
# v1.4.1
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
## 修复与优化
* 提高部分Api兼容性
* 优化日志膨胀问题
* 在线状态刷新问题修复
## 新增与调整
* 支持非管理群 本地记录时间数据 (建议 **备份配置 清空配置 重新配置**)
* 新增英译中接口 Api: /translate_en2zh
* 新增群文件管理相关扩展接口 Api: /get_group_file_count /get_group_file_list /set_group_file_folder /del_group_file /del_group_file_folder
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -0,0 +1,12 @@
# v1.4.2
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
## 修复与优化
* 修复获取群文件列表Api
* 修复退群通知问题
## 新增与调整
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -0,0 +1,11 @@
# v1.4.3
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
## 修复与优化
* 修复名片通知
## 新增与调整
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -0,0 +1,10 @@
# v1.4.4
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
## 更新
* **重大更新:**更新了版本号
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -0,0 +1,12 @@
# v1.4.5
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
## 修复与优化
* 紧急修复二维扫码问题
## 新增与调整
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -0,0 +1,12 @@
# v1.4.6
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
## 修复与优化
* 优化整体稳定性
## 新增与调整
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -0,0 +1,11 @@
# v1.4.7
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
## 修复与优化
* 临时扩展 Api: GoCQHTTPUploadGroupFile folder_id字段 用于选择文件夹
## 新增与调整
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -0,0 +1,12 @@
# v1.4.8
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
## 修复与优化
* 优化Guid的生成方式
* 支持临时消息获取群来源
## 新增与调整
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -0,0 +1,11 @@
# v1.4.9
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
## 修复与优化
* 修复接口调用问题 接口标准化 APIset_group_add_request
## 新增与调整
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -0,0 +1,11 @@
# v1.5.0
QQ Version: Windows 9.9.10-24108 / Linux 3.2.7-23361
## 修复与优化
* 修正各Api默认值
## 新增与调整
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -1,67 +1,67 @@
{
"name": "napcat",
"private": true,
"type": "module",
"version": "1.3.6",
"scripts": {
"watch:dev": "vite --mode development",
"watch:prod": "vite --mode production",
"build:dev": "vite build --mode development",
"build:prod": "vite build --mode production",
"build": "npm run build:dev",
"build:core": "cd ./src/core && npm run build && cd ../.. && node ./script/copy-core.cjs",
"build:webui": "cd ./src/webui && vite build",
"watch": "npm run watch:dev",
"debug-win": "powershell dist/napcat.ps1",
"lint": "eslint --fix src/**/*.{js,ts}",
"release": "npm run build:prod",
"depend": "cd dist && npm install --omit=dev"
},
"devDependencies": {
"@log4js-node/log4js-api": "^1.0.2",
"@rollup/plugin-commonjs": "^25.0.7",
"@rollup/plugin-node-resolve": "^15.2.3",
"@rollup/plugin-typescript": "^11.1.6",
"@types/cors": "^2.8.17",
"@types/express": "^4.17.21",
"@types/figlet": "^1.5.8",
"@types/fluent-ffmpeg": "^2.1.24",
"@types/node": "^20.11.30",
"@types/qrcode-terminal": "^0.12.2",
"@types/uuid": "^9.0.8",
"@types/ws": "^8.5.10",
"@typescript-eslint/eslint-plugin": "^7.4.0",
"@typescript-eslint/parser": "^7.4.0",
"eslint": "^8.57.0",
"eslint-import-resolver-typescript": "^3.6.1",
"eslint-plugin-import": "^2.29.1",
"i": "^0.3.7",
"javascript-obfuscator": "^4.1.0",
"rollup": "^4.13.2",
"rollup-plugin-dts": "^6.1.0",
"rollup-plugin-obfuscator": "^1.1.0",
"typescript": "^5.3.3",
"vite": "^5.2.6",
"vite-plugin-cp": "^4.0.8",
"vite-plugin-dts": "^3.8.2",
"vite-tsconfig-paths": "^4.3.2"
},
"dependencies": {
"@protobuf-ts/plugin": "^2.9.4",
"ajv": "^8.13.0",
"commander": "^12.0.0",
"cors": "^2.8.5",
"express": "^5.0.0-beta.2",
"fast-xml-parser": "^4.3.6",
"file-type": "^19.0.0",
"fluent-ffmpeg": "^2.1.2",
"image-size": "^1.1.1",
"json-schema-to-ts": "^3.1.0",
"log4js": "^6.9.1",
"qrcode-terminal": "^0.12.0",
"silk-wasm": "^3.3.4",
"sqlite3": "^5.1.7",
"uuid": "^9.0.1",
"ws": "^8.16.0"
}
}
{
"name": "napcat",
"private": true,
"type": "module",
"version": "1.5.1",
"scripts": {
"watch:dev": "vite --mode development",
"watch:prod": "vite --mode production",
"build:dev": "vite build --mode development",
"build:prod": "vite build --mode production",
"build": "npm run build:dev",
"build:core": "cd ./src/core && npm run build && cd ../.. && node ./script/copy-core.cjs",
"build:webui": "cd ./src/webui && vite build",
"watch": "npm run watch:dev",
"debug-win": "powershell dist/napcat.ps1",
"lint": "eslint --fix src/**/*.{js,ts}",
"release": "npm run build:prod",
"depend": "cd dist && npm install --omit=dev"
},
"devDependencies": {
"@log4js-node/log4js-api": "^1.0.2",
"@protobuf-ts/plugin": "^2.9.4",
"@rollup/plugin-node-resolve": "^15.2.3",
"@rollup/plugin-typescript": "^11.1.6",
"@types/cors": "^2.8.17",
"@types/express": "^4.17.21",
"@types/figlet": "^1.5.8",
"@types/fluent-ffmpeg": "^2.1.24",
"@types/node": "^20.11.30",
"@types/qrcode-terminal": "^0.12.2",
"@types/uuid": "^9.0.8",
"@types/ws": "^8.5.10",
"@typescript-eslint/eslint-plugin": "^7.4.0",
"@typescript-eslint/parser": "^7.4.0",
"eslint": "^8.57.0",
"eslint-import-resolver-typescript": "^3.6.1",
"eslint-plugin-import": "^2.29.1",
"i": "^0.3.7",
"javascript-obfuscator": "^4.1.0",
"rollup": "^4.13.2",
"rollup-plugin-dts": "^6.1.0",
"rollup-plugin-obfuscator": "^1.1.0",
"typescript": "^5.3.3",
"vite": "^5.2.6",
"vite-plugin-cp": "^4.0.8",
"vite-plugin-dts": "^3.8.2",
"vite-tsconfig-paths": "^4.3.2"
},
"dependencies": {
"ajv": "^8.13.0",
"chalk": "^5.3.0",
"commander": "^12.0.0",
"cors": "^2.8.5",
"express": "^5.0.0-beta.2",
"fast-xml-parser": "^4.3.6",
"file-type": "^19.0.0",
"fluent-ffmpeg": "^2.1.2",
"image-size": "^1.1.1",
"json-schema-to-ts": "^3.1.0",
"log4js": "^6.9.1",
"qrcode-terminal": "^0.12.0",
"silk-wasm": "^3.3.4",
"sqlite3": "^5.1.7",
"uuid": "^9.0.1",
"ws": "^8.16.0"
}
}

View File

@@ -15,4 +15,4 @@ for %%a in ("!RetString!") do (
set "QQPath=!pathWithoutUninstall!QQ.exe"
set ELECTRON_RUN_AS_NODE=1
echo !QQPath!
"!QQPath!" ./napcat.cjs %*
"!QQPath!" ./napcat.mjs %*

View File

@@ -37,7 +37,7 @@ if (!(Test-Path $QQpath)) {
throw "provided QQ path is invalid: $QQpath"
}
$Bootfile = Join-Path $PSScriptRoot "napcat.cjs"
$Bootfile = Join-Path $PSScriptRoot "napcat.mjs"
$env:ELECTRON_RUN_AS_NODE = 1
$commandInfo = Get-Command $QQpath -ErrorAction Stop
Start-Process powershell -ArgumentList "-noexit", "-noprofile", "-command &{& chcp 65001;& '$($commandInfo.Path)' $Bootfile $params}"

View File

@@ -14,4 +14,4 @@ for %%a in ("!RetString!") do (
set "QQPath=!pathWithoutUninstall!QQ.exe"
set ELECTRON_RUN_AS_NODE=1
echo !QQPath!
"!QQPath!" ./napcat.cjs %*
"!QQPath!" ./napcat.mjs %*

View File

@@ -37,7 +37,7 @@ if (!(Test-Path $QQpath)) {
throw "provided QQ path is invalid: $QQpath"
}
$Bootfile = Join-Path $PSScriptRoot "napcat.cjs"
$Bootfile = Join-Path $PSScriptRoot "napcat.mjs"
$env:ELECTRON_RUN_AS_NODE = 1
$commandInfo = Get-Command $QQpath -ErrorAction Stop
Start-Process powershell -ArgumentList "-noexit", "-noprofile", "-command &{& '$($commandInfo.Path)' $Bootfile $params}"

View File

@@ -18,4 +18,4 @@ if ! [ -x /opt/QQ/qq ]; then
exit 1
fi
/opt/QQ/qq "${SCRIPT_DIR}/napcat.cjs" "$@"
/opt/QQ/qq "${SCRIPT_DIR}/napcat.mjs" "$@"

View File

@@ -37,14 +37,14 @@ export abstract class HttpServerBase {
const authHeader = req.get('authorization');
if (authHeader) {
clientToken = authHeader.split('Bearer ').pop() || '';
logDebug('receive http header token', clientToken);
//logDebug('receive http header token', clientToken);
} else if (req.query.access_token) {
if (Array.isArray(req.query.access_token)) {
clientToken = req.query.access_token[0].toString();
} else {
clientToken = req.query.access_token.toString();
}
logDebug('receive http url token', clientToken);
//logDebug('receive http url token', clientToken);
}
if (serverToken && clientToken != serverToken) {

View File

@@ -1,5 +1,5 @@
import { sleep } from '@/common/utils/helper';
import { logError } from './log';
type AsyncQueueTask = (() => void) | (()=>Promise<void>);
@@ -26,7 +26,8 @@ export class AsyncQueue {
await taskRet;
}
} catch (e) {
console.error(e);
// console.error(e);
logError(e);
}
this.tasks.shift();
await sleep(100);

View File

@@ -1,6 +1,12 @@
import path from 'node:path';
import fs from 'node:fs';
import { log, logDebug, logError } from '@/common/utils/log';
import { dirname } from 'node:path';
import { fileURLToPath } from 'node:url';
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
const configDir = path.resolve(__dirname, 'config');
fs.mkdirSync(configDir, { recursive: true });

View File

@@ -0,0 +1,182 @@
import { NodeIKernelMsgListener } from '@/core';
import { NodeIQQNTWrapperSession } from '@/core/wrapper';
import { randomUUID } from 'crypto';
interface Internal_MapKey {
timeout: number,
createtime: number,
func: (...arg: any[]) => any,
}
export class ListenerClassBase {
[key: string]: string;
}
export interface ListenerIBase {
// eslint-disable-next-line @typescript-eslint/no-misused-new
new(listener: any): ListenerClassBase;
}
export class NTEventWrapper {
private ListenerMap: { [key: string]: ListenerIBase } | undefined;//ListenerName-Unique -> Listener构造函数
private WrapperSession: NodeIQQNTWrapperSession | undefined;//WrapperSession
private ListenerManger: Map<string, ListenerClassBase> = new Map<string, ListenerClassBase>(); //ListenerName-Unique -> Listener实例
private EventTask = new Map<string, Map<string, Map<string, Internal_MapKey>>>();//tasks ListenerMainName -> ListenerSubName-> uuid -> {timeout,createtime,func}
constructor() {
}
createProxyDispatch(ListenerMainName: string) {
// eslint-disable-next-line @typescript-eslint/no-this-alias
const current = this;
return new Proxy({}, {
get(target: any, prop: any, receiver: any) {
// console.log('get', prop, typeof target[prop]);
if (typeof target[prop] === 'undefined') {
// 如果方法不存在返回一个函数这个函数调用existentMethod
return (...args: any[]) => {
current.DispatcherListener.apply(current, [ListenerMainName, prop, ...args]).then();
};
}
// 如果方法存在,正常返回
return Reflect.get(target, prop, receiver);
}
});
}
init({ ListenerMap, WrapperSession }: { ListenerMap: { [key: string]: typeof ListenerClassBase }, WrapperSession: NodeIQQNTWrapperSession }) {
this.ListenerMap = ListenerMap;
this.WrapperSession = WrapperSession;
}
CreatEventFunction<T extends (...args: any) => any>(eventName: string): T | undefined {
const eventNameArr = eventName.split('/');
type eventType = {
[key: string]: () => { [key: string]: (...params: Parameters<T>) => Promise<ReturnType<T>> }
}
if (eventNameArr.length > 1) {
const serviceName = 'get' + eventNameArr[0].replace('NodeIKernel', '');
const eventName = eventNameArr[1];
//getNodeIKernelGroupListener,GroupService
//console.log('2', eventName);
const services = (this.WrapperSession as unknown as eventType)[serviceName]();
let event = services[eventName];
//重新绑定this
event = event.bind(services);
if (event) {
return event as T;
}
return undefined;
}
}
CreatListenerFunction<T>(listenerMainName: string, uniqueCode: string = ''): T {
const ListenerType = this.ListenerMap![listenerMainName];
let Listener = this.ListenerManger.get(listenerMainName + uniqueCode);
if (!Listener && ListenerType) {
Listener = new ListenerType(this.createProxyDispatch(listenerMainName));
const ServiceSubName = listenerMainName.match(/^NodeIKernel(.*?)Listener$/)![1];
const Service = 'NodeIKernel' + ServiceSubName + 'Service/addKernel' + ServiceSubName + 'Listener';
const addfunc = this.CreatEventFunction<(listener: T) => number>(Service);
addfunc!(Listener as T);
//console.log(addfunc!(Listener as T));
this.ListenerManger.set(listenerMainName + uniqueCode, Listener);
}
return Listener as T;
}
//统一回调清理事件
async DispatcherListener(ListenerMainName: string, ListenerSubName: string, ...args: any[]) {
//console.log(ListenerMainName, this.EventTask.get(ListenerMainName), ListenerSubName, this.EventTask.get(ListenerMainName)?.get(ListenerSubName));
this.EventTask.get(ListenerMainName)?.get(ListenerSubName)?.forEach((task, uuid) => {
//console.log(task.func, uuid, task.createtime, task.timeout);
if (task.createtime + task.timeout < Date.now()) {
this.EventTask.get(ListenerMainName)?.get(ListenerSubName)?.delete(uuid);
return;
}
task.func(...args);
});
}
async CallNoListenerEvent<EventType extends (...args: any[]) => Promise<any>,>(EventName = '', timeout: number = 3000, ...args: Parameters<EventType>) {
return new Promise<ReturnType<EventType>>(async (resolve, reject) => {
const EventFunc = this.CreatEventFunction<EventType>(EventName);
let complete = false;
const Timeouter = setTimeout(() => {
if (!complete) {
reject(new Error('NTEvent EventName:' + EventName + ' timeout'));
}
}, timeout);
const retData = await EventFunc!(...args);
complete = true;
resolve(retData);
});
}
async CallNormalEvent<EventType extends (...args: any[]) => Promise<any>, ListenerType extends (...args: any[]) => void>(EventName = '', ListenerName = '', waitTimes = 1, timeout: number = 3000, ...args: Parameters<EventType>) {
return new Promise<[EventRet: Awaited<ReturnType<EventType>>, ...Parameters<ListenerType>]>(async (resolve, reject) => {
const id = randomUUID();
let complete = 0;
let retData: Parameters<ListenerType> | undefined = undefined;
let retEvent: any = {};
const databack = () => {
if (complete < waitTimes) {
reject(new Error('NTEvent EventName:' + EventName + ' ListenerName:' + ListenerName + ' timeout'));
} else {
resolve([retEvent as Awaited<ReturnType<EventType>>, ...retData!]);
}
};
const Timeouter = setTimeout(databack, timeout);
const ListenerNameList = ListenerName.split('/');
const ListenerMainName = ListenerNameList[0];
const ListenerSubName = ListenerNameList[1];
const eventCallbak = {
timeout: timeout,
createtime: Date.now(),
func: (...args: any[]) => {
complete++;
//console.log('func', ...args);
retData = args as Parameters<ListenerType>;
if (complete >= waitTimes) {
clearTimeout(Timeouter);
databack();
}
}
};
if (!this.EventTask.get(ListenerMainName)) {
this.EventTask.set(ListenerMainName, new Map());
}
if (!(this.EventTask.get(ListenerMainName)?.get(ListenerSubName))) {
this.EventTask.get(ListenerMainName)?.set(ListenerSubName, new Map());
}
this.EventTask.get(ListenerMainName)?.get(ListenerSubName)?.set(id, eventCallbak);
this.CreatListenerFunction(ListenerMainName);
const EventFunc = this.CreatEventFunction<EventType>(EventName);
//console.log("测试打点", args);
retEvent = await EventFunc!(...(args as any[]));
});
}
}
export const NTEventDispatch = new NTEventWrapper();
// 示例代码 快速创建事件
// let NTEvent = new NTEventWrapper();
// let TestEvent = NTEvent.CreatEventFunction<(force: boolean) => Promise<Number>>('NodeIKernelProfileLikeService/GetTest');
// if (TestEvent) {
// TestEvent(true);
// }
// 示例代码 快速创建监听Listener类
// let NTEvent = new NTEventWrapper();
// NTEvent.CreatListenerFunction<NodeIKernelMsgListener>('NodeIKernelMsgListener', 'core')
// 调用接口
//let NTEvent = new NTEventWrapper();
//let ret = await NTEvent.CallNormalEvent<(force: boolean) => Promise<Number>, (data1: string, data2: number) => void>('NodeIKernelProfileLikeService/GetTest', 'NodeIKernelMsgListener/onAddSendMsg', 1, 3000, true);
// 注册监听 解除监听
// NTEventDispatch.RigisterListener('NodeIKernelMsgListener/onAddSendMsg','core',cb);
// NTEventDispatch.UnRigisterListener('NodeIKernelMsgListener/onAddSendMsg','core');
// let GetTest = NTEventDispatch.CreatEvent('NodeIKernelProfileLikeService/GetTest','NodeIKernelMsgListener/onAddSendMsg',Mode);
// GetTest('test');
// always模式
// NTEventDispatch.CreatEvent('NodeIKernelProfileLikeService/GetTest','NodeIKernelMsgListener/onAddSendMsg',Mode,(...args:any[])=>{ console.log(args) });

View File

@@ -0,0 +1,145 @@
import { logError, logDebug } from '@/common/utils/log';
type group_id = number;
type user_id = number;
class cacheNode<T> {
value: T;
groupId: group_id;
userId: user_id;
prev: cacheNode<T> | null;
next: cacheNode<T> | null;
timestamp: number;
constructor(groupId: group_id, userId: user_id, value: T) {
this.groupId = groupId;
this.userId = userId;
this.value = value;
this.prev = null;
this.next = null;
this.timestamp = Date.now();
}
}
type cache<T> = { [key: group_id]: { [key: user_id]: cacheNode<T> } };
class LRU<T> {
private maxAge: number;
private maxSize: number;
private currentSize: number;
private cache: cache<T>;
private head: cacheNode<T> | null = null;
private tail: cacheNode<T> | null = null;
private onFuncs: ((node: cacheNode<T>) => void)[] = [];
constructor(maxAge: number = 2e4, maxSize: number = 5e3) {
this.maxAge = maxAge;
this.maxSize = maxSize;
this.cache = Object.create(null);
this.currentSize = 0;
if (maxSize == 0) return;
setInterval(() => this.removeExpired(), this.maxAge);
}
// 移除LRU节点
private removeLRUNode(node: cacheNode<T>) {
logDebug(
'removeLRUNode',
node.groupId,
node.userId,
node.value,
this.currentSize
);
node.prev = node.next = null;
delete this.cache[node.groupId][node.userId];
this.removeNode(node);
this.onFuncs.forEach((func) => func(node));
this.currentSize--;
}
public on(func: (node: cacheNode<T>) => void) {
this.onFuncs.push(func);
}
private removeExpired() {
const now = Date.now();
let current = this.tail;
const nodesToRemove: cacheNode<T>[] = [];
let removedCount = 0;
// 收集需要删除的节点
while (current && now - current.timestamp > this.maxAge) {
nodesToRemove.push(current);
current = current.prev;
removedCount++;
if (removedCount >= 100) break;
}
// 更新链表指向
if (nodesToRemove.length > 0) {
const newTail = nodesToRemove[nodesToRemove.length - 1].prev;
if (newTail) {
newTail.next = null;
} else {
this.head = null;
}
this.tail = newTail;
}
nodesToRemove.forEach((node) => {
node.prev = node.next = null;
delete this.cache[node.groupId][node.userId];
this.currentSize--;
this.onFuncs.forEach((func) => func(node));
});
}
private addNode(node: cacheNode<T>) {
node.next = this.head;
if (this.head) this.head.prev = node;
if (!this.tail) this.tail = node;
this.head = node;
}
private removeNode(node: cacheNode<T>) {
if (node.prev) node.prev.next = node.next;
if (node.next) node.next.prev = node.prev;
if (node === this.head) this.head = node.next;
if (node === this.tail) this.tail = node.prev;
}
private moveToHead(node: cacheNode<T>) {
if (this.head === node) return;
this.removeNode(node);
this.addNode(node);
node.prev = null;
}
public set(groupId: group_id, userId: user_id, value: T) {
if (!this.cache[groupId]) {
this.cache[groupId] = Object.create(null);
}
const groupObject = this.cache[groupId];
if (groupObject[userId]) {
const node = groupObject[userId];
node.value = value;
node.timestamp = Date.now();
this.moveToHead(node);
} else {
const node = new cacheNode(groupId, userId, value);
groupObject[userId] = node;
this.currentSize++;
this.addNode(node);
if (this.currentSize > this.maxSize) {
const tail = this.tail!;
this.removeLRUNode(tail);
}
}
}
}
export default LRU;

View File

@@ -2,6 +2,7 @@ import path from 'node:path';
import fs from 'node:fs';
import os from 'node:os';
import { systemPlatform } from '@/common/utils/system';
import { logError } from '@/common/utils/log';
export const exePath = process.execPath;
@@ -49,13 +50,13 @@ if (fs.existsSync(configVersionInfoPath)) {
const _ =JSON.parse(fs.readFileSync(configVersionInfoPath).toString());
_qqVersionConfigInfo = Object.assign(_qqVersionConfigInfo, _);
} catch (e) {
console.error('Load QQ version config info failed, Use default version', e);
logError('Load QQ version config info failed, Use default version', e);
}
}
export const qqVersionConfigInfo: QQVersionConfigInfo = _qqVersionConfigInfo;
export const qqPkgInfo: QQPkgInfo = require(pkgInfoPath);
export const qqPkgInfo: QQPkgInfo = JSON.parse(fs.readFileSync(pkgInfoPath).toString());
// platform_type: 3,
// app_type: 4,
// app_version: '9.9.9-23159',

View File

@@ -24,7 +24,7 @@ export async function encodeSilk(filePath: string) {
const fileHeader = buffer.toString('hex', 0, bytesToRead);
return fileHeader;
} catch (err) {
console.error('读取文件错误:', err);
logError('读取文件错误:', err);
return;
}
}

View File

@@ -1,7 +1,11 @@
import * as os from 'os';
import path from 'node:path';
import fs from 'fs';
import { dirname } from 'node:path';
import { fileURLToPath } from 'node:url';
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
export function getModuleWithArchName(moduleName: string) {
const systemPlatform = os.platform();
const cpuArch = os.arch();
@@ -14,6 +18,6 @@ export function cpModule(moduleName: string) {
try {
fs.copyFileSync(path.join(currentDir, fileName), path.join(currentDir, `${moduleName}.node`));
} catch (e) {
console.error(e);
}
}

509
src/common/utils/db.ts Normal file
View File

@@ -0,0 +1,509 @@
import { ElementType, FileElement, PicElement, PttElement, RawMessage, VideoElement } from '../../core/src/entities';
import sqlite3 from 'sqlite3';
import { log, logDebug, logError } from '@/common/utils/log';
import { NTQQMsgApi } from '@/core';
import LRU from '@/common/utils/LRUCache';
export interface IRember {
last_sent_time: number;
join_time: number;
user_id: number;
}
type DBMsg = {
id: number,
shortId: number,
longId: string,
seq: number,
peerUid: string,
chatType: number,
}
type DBFile = {
name: string; // 文件名
path: string;
url: string;
size: number;
uuid: string;
msgId: string;
elementId: string;
element: PicElement | VideoElement | FileElement | PttElement;
elementType: ElementType.PIC | ElementType.VIDEO | ElementType.FILE | ElementType.PTT;
}
class DBUtilBase {
protected db: sqlite3.Database | undefined;
async init(dbPath: string) {
if (this.db) {
return;
}
return new Promise<void>((resolve, reject) => {
this.db = new sqlite3.Database(dbPath, sqlite3.OPEN_READWRITE | sqlite3.OPEN_CREATE, (err) => {
if (err) {
logError('Could not connect to database', err);
reject(err);
return;
}
this.createTable();
resolve();
});
});
}
protected createTable() {
throw new Error('Method not implemented.');
}
close() {
this.db?.close();
}
}
class DBUtil extends DBUtilBase {
private msgCache: Map<string | number, RawMessage> = new Map<string | number, RawMessage>();
private globalMsgShortId = -2147483640;
private groupIds: number[] = [];
private LURCache = new LRU<number>();
private LastSentCache = new (class {
private cache: { gid: number; uid: number }[] = [];
private maxSize: number;
constructor(maxSize: number = 5000) {
this.maxSize = maxSize;
}
get(gid: number, uid: number): boolean {
const exists = this.cache.some(
(entry) => entry.gid === gid && entry.uid === uid
);
if (!exists) {
this.cache.push({ gid, uid });
if (this.cache.length > this.maxSize) {
this.cache.shift();
}
}
return exists;
}
})();
constructor() {
super();
const interval = 1000 * 60 * 10; // 10分钟清理一次缓存
setInterval(() => {
logDebug('清理消息缓存');
this.msgCache.forEach((msg, key) => {
if ((Date.now() - parseInt(msg.msgTime) * 1000) > interval) {
this.msgCache.delete(key);
}
});
}, interval);
}
async init(dbPath: string) {
await super.init(dbPath);
this.globalMsgShortId = await this.getCurrentMaxShortId();
// 初始化群缓存列表
this.db!.serialize(() => {
const sql = 'SELECT * FROM sqlite_master WHERE type=\'table\'';
this.db!.all(sql, [], (err, rows: { name: string }[]) => {
if (err) return logError(err);
rows.forEach((row) => this.groupIds.push(parseInt(row.name)));
//logDebug(`已加载 ${groupIds.length} 个群`);
});
});
this.LURCache.on(async (node) => {
const { value: time, groupId, userId } = node;
logDebug('插入发言时间', userId, groupId);
await this.createGroupInfoTimeTableIfNotExist(groupId);
const method = await this.getDataSetMethod(groupId, userId);
logDebug('插入发言时间方法判断', userId, groupId, method);
const sql =
method == 'update'
? `UPDATE "${groupId}" SET last_sent_time = ? WHERE user_id = ?`
: `INSERT INTO "${groupId}" (last_sent_time, user_id) VALUES (?, ?)`;
this.db!.all(sql, [time, userId], (err) => {
if (err) {
return logError('插入/更新发言时间失败', userId, groupId);
}
logDebug('插入/更新发言时间成功', userId, groupId);
});
});
}
async getDataSetMethod(groupId: number, userId: number) {
// 缓存记录
if (this.LastSentCache.get(groupId, userId)) {
logDebug('缓存命中', userId, groupId);
return 'update';
}
// 数据库判断
return new Promise<'insert' | 'update'>((resolve, reject) => {
this.db!.all(
`SELECT * FROM "${groupId}" WHERE user_id = ?`,
[userId],
(err, rows) => {
if (err) {
logError('查询发言时间存在失败', userId, groupId, err);
return logError('插入发言时间失败', userId, groupId, err);
}
if (rows.length === 0) {
logDebug('查询发言时间不存在', userId, groupId);
return resolve('insert');
}
logDebug('查询发言时间存在', userId, groupId);
resolve('update');
}
);
});
}
async createGroupInfoTimeTableIfNotExist(groupId: number) {
const createTableSQL = (groupId: number) =>
`CREATE TABLE IF NOT EXISTS "${groupId}" (
user_id INTEGER,
last_sent_time INTEGER,
join_time INTEGER,
PRIMARY KEY (user_id)
);`;
if (this.groupIds.includes(groupId)) {
return;
}
return new Promise((resolve, reject) => {
const sql = createTableSQL(groupId);
this.db!.all(sql, (err) => {
if (err) {
reject(err);
return;
}
this.groupIds.push(groupId);
resolve(true);
});
});
}
protected createTable() {
// 消息记录
const createTableSQL = `
CREATE TABLE IF NOT EXISTS msgs (
id INTEGER PRIMARY KEY AUTOINCREMENT,
shortId INTEGER NOT NULL UNIQUE,
longId TEXT NOT NULL UNIQUE,
seq INTEGER NOT NULL,
peerUid TEXT NOT NULL,
chatType INTEGER NOT NULL
)`;
this.db!.run(createTableSQL, function (err) {
if (err) {
logError('Could not create table msgs', err.stack);
}
});
// 文件缓存
const createFileTableSQL = `
CREATE TABLE IF NOT EXISTS files (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
path TEXT NOT NULL,
url TEXT,
size INTEGER NOT NULL,
uuid TEXT,
elementType INTEGER,
element TEXT NOT NULL,
elementId TEXT NOT NULL,
msgId TEXT NOT NULL
)`;
this.db!.run(createFileTableSQL, function (err) {
if (err) {
logError('Could not create table files', err);
}
});
// 接收到的临时会话消息uid
const createTempUinTableSQL = `
CREATE TABLE IF NOT EXISTS temp_uins (
id INTEGER PRIMARY KEY AUTOINCREMENT,
uid TEXT,
uin TEXT
)`;
this.db!.run(createTempUinTableSQL, function (err) {
if (err) {
logError('Could not create table temp_uins', err);
}
});
}
private async getCurrentMaxShortId() {
return new Promise<number>((resolve, reject) => {
this.db!.get('SELECT MAX(shortId) as maxId FROM msgs', (err, row: { maxId: number }) => {
if (err) {
logDebug('Could not get max short id, Use default -2147483640', err);
return resolve(-2147483640);
}
logDebug('数据库中消息最大短id', row?.maxId);
resolve(row?.maxId ?? -2147483640);
});
});
}
private async getMsg(query: string, params: any[]) {
const stmt = this.db!.prepare(query);
return new Promise<RawMessage | null>((resolve, reject) => {
stmt.get(...params, (err: any, row: DBMsg) => {
// log("getMsg", row, err);
if (err) {
logError('Could not get msg', err, query, params);
return resolve(null);
}
if (!row) {
// logDebug('不存在数据库中的消息,不进行处理', query, params);
resolve(null);
return;
}
const msgId = row.longId;
NTQQMsgApi.getMsgsByMsgId({ peerUid: row.peerUid, chatType: row.chatType }, [msgId]).then(res => {
const msg = res.msgList[0];
if (!msg) {
resolve(null);
return;
}
msg.id = row.shortId;
resolve(msg);
}).catch(e => {
resolve(null);
});
});
});
}
async getMsgByShortId(shortId: number): Promise<RawMessage | null> {
if (this.msgCache.has(shortId)) {
return this.msgCache.get(shortId)!;
}
const getStmt = 'SELECT * FROM msgs WHERE shortId = ?';
return this.getMsg(getStmt, [shortId]);
}
async getMsgByLongId(longId: string): Promise<RawMessage | null> {
if (this.msgCache.has(longId)) {
return this.msgCache.get(longId)!;
}
return this.getMsg('SELECT * FROM msgs WHERE longId = ?', [longId]);
}
async getMsgBySeq(peerUid: string, seq: string): Promise<RawMessage | null> {
const stmt = 'SELECT * FROM msgs WHERE peerUid = ? AND seq = ?';
return this.getMsg(stmt, [peerUid, seq]);
}
async addMsg(msg: RawMessage, update = true): Promise<number> {
const existMsg = await this.getMsgByLongId(msg.msgId);
if (existMsg) {
// logDebug('消息已存在,更新数据库', msg.msgId);
if (update) this.updateMsg(msg).then();
return existMsg.id!;
}
const stmt = this.db!.prepare('INSERT INTO msgs (shortId, longId, seq, peerUid, chatType) VALUES (?, ?, ?, ?, ?)');
// const runAsync = promisify(stmt.run.bind(stmt));
const shortId = ++this.globalMsgShortId;
msg.id = shortId;
//logDebug(`记录消息到数据库, 消息长id: ${msg.msgId}, 短id: ${msg.id}`);
this.msgCache.set(shortId, msg);
this.msgCache.set(msg.msgId, msg);
stmt.run(this.globalMsgShortId, msg.msgId, msg.msgSeq.toString(), msg.peerUid, msg.chatType, (err: any) => {
if (err) {
if (err.errno === 19) {
this.getMsgByLongId(msg.msgId).then((msg: RawMessage | null) => {
if (msg) {
this.msgCache.set(shortId, msg);
this.msgCache.set(msg.msgId, msg);
// logDebug('获取消息短id成功', msg.id);
} else {
logError('db could not get msg by long id', err);
}
}).catch(e => logError('db getMsgByLongId error', e));
} else {
logError('db could not add msg', err);
}
}
});
return shortId;
}
async updateMsg(msg: RawMessage) {
const existMsg = this.msgCache.get(msg.msgId);
if (existMsg) {
Object.assign(existMsg, msg);
}
//logDebug(`更新消息, shortId:${msg.id}, seq: ${msg.msgSeq}, msgId: ${msg.msgId}`);
const stmt = this.db!.prepare('UPDATE msgs SET seq=? WHERE longId=?');
stmt.run(msg.msgSeq, msg.msgId, (err: any) => {
if (err) {
logError('updateMsg db error', err);
}
});
}
async addFileCache(file: DBFile) {
const stmt = this.db!.prepare('INSERT INTO files (name, path, url, size, uuid, elementType ,element, elementId, msgId) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)');
return new Promise((resolve, reject) => {
stmt.run(file.name, file.path, file.url, file.size, file.uuid,
file.elementType,
JSON.stringify(file.element),
file.elementId,
file.msgId,
function (err: any) {
if (err) {
logError('db could not add file', err);
reject(err);
}
resolve(null);
});
});
}
private async getFileCache(query: string, params: any[]) {
const stmt = this.db!.prepare(query);
return new Promise<DBFile | null>((resolve, reject) => {
stmt.get(...params, (err: any, row: DBFile & { element: string }) => {
if (err) {
logError('db could not get file cache', err);
reject(err);
}
if (row) {
row.element = JSON.parse(row.element);
}
resolve(row);
});
});
}
async getFileCacheByName(name: string): Promise<DBFile | null> {
return this.getFileCache('SELECT * FROM files WHERE name = ?', [name]);
}
async getFileCacheByUuid(uuid: string): Promise<DBFile | null> {
return this.getFileCache('SELECT * FROM files WHERE uuid = ?', [uuid]);
}
// todo: 是否所有的文件都有uuid语音消息有没有uuid
async updateFileCache(file: DBFile) {
const stmt = this.db!.prepare('UPDATE files SET path = ?, url = ? WHERE uuid = ?');
return new Promise((resolve, reject) => {
stmt.run(file.path, file.url, file.uuid, function (err: any) {
if (err) {
logError('db could not update file cache', err);
reject(err);
}
resolve(null);
});
});
}
// 被动收到的临时会话消息uin->uid
async getReceivedTempUinMap() {
const stmt = 'SELECT * FROM temp_uins';
return new Promise<Record<string, string>>((resolve, reject) => {
this.db!.all(stmt, (err, rows: { uin: string, uid: string }[]) => {
if (err) {
logError('db could not get temp uin map', err);
reject(err);
}
const map: Record<string, string> = {};
rows.forEach(row => {
map[row.uin] = row.uid;
});
resolve(map);
});
});
}
// 通过uin获取临时会话消息uid
async getUidByTempUin(uid: string) {
const stmt = 'SELECT * FROM temp_uins WHERE uin = ?';
return new Promise<string>((resolve, reject) => {
this.db!.get(stmt, [uid], (err, row: { uin: string, uid: string }) => {
if (err) {
logError('db could not get temp uin map', err);
reject(err);
}
resolve(row?.uid);
});
});
}
async addTempUin(uin: string, uid: string) {
const existUid = await this.getUidByTempUin(uin);
if (!existUid) {
const stmt = this.db!.prepare('INSERT INTO temp_uins (uin, uid) VALUES (?, ?)');
return new Promise((resolve, reject) => {
stmt.run(uin, uid, function (err: any) {
if (err) {
logError('db could not add temp uin', err);
reject(err);
}
resolve(null);
});
});
}
}
async getLastSentTimeAndJoinTime(
groupId: number
): Promise<IRember[]> {
logDebug('读取发言时间', groupId);
return new Promise<IRember[]>((resolve, reject) => {
this.db!.all(`SELECT * FROM "${groupId}" `, (err, rows: IRember[]) => {
if (err) {
logError('查询发言时间失败', groupId);
return resolve([]);
}
logDebug('查询发言时间成功', groupId, rows);
resolve(rows);
});
});
}
insertLastSentTime(
groupId: number,
userId: number,
time: number
) {
this.LURCache.set(groupId, userId, time);
}
async insertJoinTime(
groupId: number,
userId: number,
time: number
) {
await this.createGroupInfoTimeTableIfNotExist(groupId);
this.db!.all(
`INSERT OR REPLACE INTO "${groupId}" (user_id, last_sent_time, join_time) VALUES (?,?,?)`,
[userId, time, time],
(err) => {
if (err)
logError(err),
Promise.reject(),
logError('插入入群时间失败', userId, groupId);
}
);
}
}
export const dbUtil = new DBUtil();

View File

@@ -3,8 +3,8 @@ import fsPromise from 'fs/promises';
import crypto from 'crypto';
import util from 'util';
import path from 'node:path';
import { log } from './log';
import { dbUtil } from '@/core/utils/db';
import { log, logError } from './log';
import { dbUtil } from '@/common/utils/db';
import * as fileType from 'file-type';
import { v4 as uuidv4 } from 'uuid';
import { napCatCore } from '@/core';
@@ -262,12 +262,12 @@ export async function copyFolder(sourcePath: string, destPath: string) {
try {
await fsPromise.copyFile(srcPath, dstPath);
} catch (error) {
console.error(`无法复制文件 '${srcPath}' 到 '${dstPath}': ${error}`);
logError(`无法复制文件 '${srcPath}' 到 '${dstPath}': ${error}`);
// 这里可以决定是否要继续复制其他文件
}
}
}
} catch (error) {
console.error('复制文件夹时出错:', error);
logError('复制文件夹时出错:', error);
}
}

View File

@@ -2,6 +2,12 @@ import crypto from 'node:crypto';
import path from 'node:path';
import fs from 'fs/promises';
import { log, logDebug } from './log';
import { dirname } from 'node:path';
import { fileURLToPath } from 'node:url';
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
export function sleep(ms: number): Promise<void> {
return new Promise(resolve => setTimeout(resolve, ms));
}
@@ -132,6 +138,10 @@ export function migrateConfig(oldConfig: any) {
enable: oldConfig.enableWsReverse,
urls: oldConfig.wsReverseUrls,
},
GroupLocalTime: {
Record: false,
RecordList: []
},
debug: oldConfig.debug,
heartInterval: oldConfig.heartInterval,
messagePostFormat: oldConfig.messagePostFormat,
@@ -139,6 +149,7 @@ export function migrateConfig(oldConfig: any) {
musicSignUrl: oldConfig.musicSignUrl,
reportSelfMessage: oldConfig.reportSelfMessage,
token: oldConfig.token,
};
return newConfig;
}
@@ -147,12 +158,27 @@ export async function UpdateConfig() {
const configFiles = await fs.readdir(path.join(__dirname, 'config'));
for (const file of configFiles) {
if (file.match(/^onebot11_\d+.json$/)) {
let CurrentConfig = JSON.parse(await fs.readFile(path.join(__dirname, 'config', file), 'utf8'));
const CurrentConfig = JSON.parse(await fs.readFile(path.join(__dirname, 'config', file), 'utf8'));
if (isValidOldConfig(CurrentConfig)) {
log("正在迁移旧配置到新配置 File:", file);
let NewConfig = migrateConfig(CurrentConfig);
log('正在迁移旧配置到新配置 File:', file);
const NewConfig = migrateConfig(CurrentConfig);
await fs.writeFile(path.join(__dirname, 'config', file), JSON.stringify(NewConfig, null, 2));
}
}
}
}
export function isEqual(obj1: any, obj2: any) {
if (obj1 === obj2) return true;
if (obj1 == null || obj2 == null) return false;
if (typeof obj1 !== 'object' || typeof obj2 !== 'object') return obj1 === obj2;
const keys1 = Object.keys(obj1);
const keys2 = Object.keys(obj2);
if (keys1.length !== keys2.length) return false;
for (const key of keys1) {
if (!isEqual(obj1[key], obj2[key])) return false;
}
return true;
}

View File

@@ -2,6 +2,12 @@ import log4js, { Configuration } from 'log4js';
import { truncateString } from '@/common/utils/helper';
import path from 'node:path';
import { SelfInfo } from '@/core';
import { dirname } from 'node:path';
import { fileURLToPath } from 'node:url';
import chalk from 'chalk';
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
export enum LogLevel {
DEBUG = 'debug',
@@ -36,14 +42,14 @@ const logConfig: Configuration = {
maxLoogSize: 10485760, // 日志文件的最大大小单位字节这里设置为10MB
layout: {
type: 'pattern',
pattern: '%d{yyyy-MM-dd hh:mm:ss} [%p] - %m'
pattern: '%d{yyyy-MM-dd hh:mm:ss} [%p] %X{userInfo} | %m'
}
},
ConsoleAppender: { // 输出到控制台的appender
type: 'console',
layout: {
type: 'pattern',
pattern: '%d{yyyy-MM-dd hh:mm:ss} [%p] - %m'
pattern: `%d{yyyy-MM-dd hh:mm:ss} [%[%p%]] ${chalk.magenta('%X{userInfo}')} | %m`
}
}
},
@@ -55,7 +61,9 @@ const logConfig: Configuration = {
};
log4js.configure(logConfig);
const loggerConsole = log4js.getLogger('console');
const loggerFile = log4js.getLogger('file');
const loggerDefault = log4js.getLogger('default');
export function setLogLevel(fileLogLevel: LogLevel, consoleLogLevel: LogLevel) {
logConfig.categories.file.level = fileLogLevel;
@@ -64,12 +72,12 @@ export function setLogLevel(fileLogLevel: LogLevel, consoleLogLevel: LogLevel) {
}
export function setLogSelfInfo(selfInfo: SelfInfo) {
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-expect-error
logConfig.appenders.FileAppender.layout.pattern = logConfig.appenders.ConsoleAppender.layout.pattern =
`%d{yyyy-MM-dd hh:mm:ss} [%p] ${selfInfo.nick}(${selfInfo.uin}) %m`;
log4js.configure(logConfig);
const userInfo = `${selfInfo.nick}(${selfInfo.uin})`;
loggerConsole.addContext('userInfo', userInfo);
loggerFile.addContext('userInfo', userInfo);
loggerDefault.addContext('userInfo', userInfo);
}
setLogSelfInfo({ nick: '', uin: '', uid: '' });
let fileLogEnabled = true;
let consoleLogEnabled = true;
@@ -80,7 +88,7 @@ export function enableConsoleLog(enable: boolean) {
consoleLogEnabled = enable;
}
function formatMsg(msg: any[]){
function formatMsg(msg: any[]) {
let logMsg = '';
for (const msgItem of msg) {
// 判断是否是对象
@@ -91,15 +99,18 @@ function formatMsg(msg: any[]){
}
logMsg += msgItem + ' ';
}
return '\n' + logMsg + '\n';
return logMsg;
}
function _log(level: LogLevel, ...args: any[]){
if (consoleLogEnabled){
log4js.getLogger('console')[level](formatMsg(args));
// eslint-disable-next-line no-control-regex
const colorEscape = /\x1B[@-_][0-?]*[ -/]*[@-~]/g;
function _log(level: LogLevel, ...args: any[]) {
if (consoleLogEnabled) {
loggerConsole[level](formatMsg(args));
}
if (fileLogEnabled){
log4js.getLogger('file')[level](formatMsg(args));
if (fileLogEnabled) {
loggerFile[level](formatMsg(args).replace(colorEscape, ''));
}
}
@@ -115,3 +126,11 @@ export function logDebug(...args: any[]) {
export function logError(...args: any[]) {
_log(LogLevel.ERROR, ...args);
}
export function logWarn(...args: any[]) {
_log(LogLevel.WARN, ...args);
}
export function logFatal(...args: any[]) {
_log(LogLevel.FATAL, ...args);
}

View File

@@ -1,37 +1,44 @@
import { resolve } from "node:path";
import { spawn } from "node:child_process";
import { resolve } from 'node:path';
import { spawn } from 'node:child_process';
import { pid, ppid, exit } from 'node:process';
import { dirname } from 'node:path';
import { fileURLToPath } from 'node:url';
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
export async function rebootWithQuickLogin(uin: string) {
let batScript = resolve(__dirname, './napcat.bat');
let batUtf8Script = resolve(__dirname, './napcat-utf8.bat');
let bashScript = resolve(__dirname, './napcat.sh');
if (process.platform === 'win32') {
const subProcess = spawn(`start ${batUtf8Script} -q ${uin}`, { detached: true, windowsHide: false, env: process.env, shell: true, stdio: 'ignore' });
subProcess.unref();
// 子父进程一起送走 有点效果
spawn('cmd /c taskkill /t /f /pid ' + pid.toString(), { detached: true, shell: true, stdio: 'ignore' });
spawn('cmd /c taskkill /t /f /pid ' + ppid.toString(), { detached: true, shell: true, stdio: 'ignore' });
} else if (process.platform === 'linux') {
const subProcess = spawn(`${bashScript} -q ${uin}`, { detached: true, windowsHide: false, env: process.env, shell: true, stdio: 'ignore' });
//还没兼容
subProcess.unref();
exit(0);
}
//exit(0);
const batScript = resolve(__dirname, './napcat.bat');
const batUtf8Script = resolve(__dirname, './napcat-utf8.bat');
const bashScript = resolve(__dirname, './napcat.sh');
if (process.platform === 'win32') {
const subProcess = spawn(`start ${batUtf8Script} -q ${uin}`, { detached: true, windowsHide: false, env: process.env, shell: true, stdio: 'ignore' });
subProcess.unref();
// 子父进程一起送走 有点效果
spawn('cmd /c taskkill /t /f /pid ' + pid.toString(), { detached: true, shell: true, stdio: 'ignore' });
spawn('cmd /c taskkill /t /f /pid ' + ppid.toString(), { detached: true, shell: true, stdio: 'ignore' });
} else if (process.platform === 'linux') {
const subProcess = spawn(`${bashScript} -q ${uin}`, { detached: true, windowsHide: false, env: process.env, shell: true, stdio: 'ignore' });
//还没兼容
subProcess.unref();
exit(0);
}
//exit(0);
}
export async function rebootWithNormolLogin() {
let batScript = resolve(__dirname, './napcat.bat');
let batUtf8Script = resolve(__dirname, './napcat-utf8.bat');
let bashScript = resolve(__dirname, './napcat.sh');
if (process.platform === 'win32') {
const subProcess = spawn(`start ${batUtf8Script} `, { detached: true, windowsHide: false, env: process.env, shell: true, stdio: 'ignore' });
subProcess.unref();
// 子父进程一起送走 有点效果
spawn('cmd /c taskkill /t /f /pid ' + pid.toString(), { detached: true, shell: true, stdio: 'ignore' });
spawn('cmd /c taskkill /t /f /pid ' + ppid.toString(), { detached: true, shell: true, stdio: 'ignore' });
} else if (process.platform === 'linux') {
const subProcess = spawn(`${bashScript}`, { detached: true, windowsHide: false, env: process.env, shell: true });
subProcess.unref();
exit(0);
}
const batScript = resolve(__dirname, './napcat.bat');
const batUtf8Script = resolve(__dirname, './napcat-utf8.bat');
const bashScript = resolve(__dirname, './napcat.sh');
if (process.platform === 'win32') {
const subProcess = spawn(`start ${batUtf8Script} `, { detached: true, windowsHide: false, env: process.env, shell: true, stdio: 'ignore' });
subProcess.unref();
// 子父进程一起送走 有点效果
spawn('cmd /c taskkill /t /f /pid ' + pid.toString(), { detached: true, shell: true, stdio: 'ignore' });
spawn('cmd /c taskkill /t /f /pid ' + ppid.toString(), { detached: true, shell: true, stdio: 'ignore' });
} else if (process.platform === 'linux') {
const subProcess = spawn(`${bashScript}`, { detached: true, windowsHide: false, env: process.env, shell: true });
subProcess.unref();
exit(0);
}
}

View File

@@ -3,35 +3,54 @@ import http from 'node:http';
export class RequestUtil {
// 适用于获取服务器下发cookies时获取仅GET
static async HttpsGetCookies(url: string): Promise<Map<string, string>> {
return new Promise<Map<string, string>>((resolve, reject) => {
const protocol = url.startsWith('https://') ? https : http;
protocol.get(url, (res) => {
const cookiesHeader = res.headers['set-cookie'];
if (!cookiesHeader) {
resolve(new Map<string, string>());
} else {
const cookiesMap = new Map<string, string>();
cookiesHeader.forEach((cookieStr) => {
cookieStr.split(';').forEach((cookiePart) => {
const trimmedPart = cookiePart.trim();
if (trimmedPart.includes('=')) {
const [key, value] = trimmedPart.split('=').map(part => part.trim());
cookiesMap.set(key, decodeURIComponent(value)); // 解码cookie值
}
});
static async HttpsGetCookies(url: string): Promise<{ [key: string]: string }> {
const client = url.startsWith('https') ? https : http;
return new Promise((resolve, reject) => {
client.get(url, (res) => {
let cookies: { [key: string]: string } = {};
const handleRedirect = (res: http.IncomingMessage) => {
//console.log(res.headers.location);
if (res.statusCode === 301 || res.statusCode === 302) {
if (res.headers.location) {
const redirectUrl = new URL(res.headers.location, url);
RequestUtil.HttpsGetCookies(redirectUrl.href).then((redirectCookies) => {
// 合并重定向过程中的cookies
cookies = { ...cookies, ...redirectCookies };
resolve(cookies);
});
} else {
resolve(cookies);
}
} else {
resolve(cookies);
}
};
res.on('data', () => { }); // Necessary to consume the stream
res.on('end', () => {
handleRedirect(res);
});
if (res.headers['set-cookie']) {
//console.log(res.headers['set-cookie']);
res.headers['set-cookie'].forEach((cookie) => {
const parts = cookie.split(';')[0].split('=');
const key = parts[0];
const value = parts[1];
if (key && value && key.length > 0 && value.length > 0) {
cookies[key] = value;
}
});
resolve(cookiesMap);
}
}).on('error', (error) => {
reject(error);
}).on('error', (err) => {
reject(err);
});
});
}
// 请求和回复都是JSON data传原始内容 自动编码json
static async HttpGetJson<T>(url: string, method: string = 'GET', data?: any, headers: Record<string, string> = {}, isJsonRet: boolean = true, isArgJson: boolean = true): Promise<T> {
let option = new URL(url);
const option = new URL(url);
const protocol = url.startsWith('https://') ? https : http;
const options = {
hostname: option.hostname,

View File

@@ -1,17 +1,74 @@
import os from 'node:os';
import path from 'node:path';
import { networkInterfaces } from 'os';
import { v4 as uuidv4 } from 'uuid';
// 缓解Win7设备兼容性问题
let osName: string;
// 设备ID
let machineId: Promise<string>;
try {
osName = os.hostname();
} catch (e) {
osName = 'NapCat'; // + crypto.randomUUID().substring(0, 4);
}
const invalidMacAddresses = new Set([
'00:00:00:00:00:00',
'ff:ff:ff:ff:ff:ff',
'ac:de:48:00:11:22'
]);
function validateMacAddress(candidate: string): boolean {
// eslint-disable-next-line no-useless-escape
const tempCandidate = candidate.replace(/\-/g, ':').toLowerCase();
return !invalidMacAddresses.has(tempCandidate);
}
export async function getMachineId(): Promise<string> {
if (!machineId) {
machineId = (async () => {
const id = await getMacMachineId();
return id || uuidv4(); // fallback, generate a UUID
})();
}
return machineId;
}
export function getMac(): string {
const ifaces = networkInterfaces();
for (const name in ifaces) {
const networkInterface = ifaces[name];
if (networkInterface) {
for (const { mac } of networkInterface) {
if (validateMacAddress(mac)) {
return mac;
}
}
}
}
throw new Error('Unable to retrieve mac address (unexpected format)');
}
async function getMacMachineId(): Promise<string | undefined> {
try {
const crypto = await import('crypto');
const macAddress = getMac();
return crypto.createHash('sha256').update(macAddress, 'utf8').digest('hex');
} catch (err) {
return undefined;
}
}
const homeDir = os.homedir();
export const systemPlatform = os.platform();
export const cpuArch = os.arch();
export const systemVersion = os.release();
export const hostname = osName;
const homeDir = os.homedir();
export const downloadsPath = path.join(homeDir, 'Downloads');
export const systemName = os.type();
export const systemName = os.type();

View File

@@ -2,30 +2,30 @@
* 运行时类型转换与检查类
*/
export class TypeCheck {
static isEmpty(value: any): boolean {
return value === null || value === undefined || value === '' ||
static isEmpty(value: any): boolean {
return value === null || value === undefined || value === '' ||
(Array.isArray(value) && value.length === 0) || (typeof value === 'object' && Object.keys(value).length === 0);
}
}
}
export class TypeConvert {
static toNumber(value: any): number {
const num = Number(value);
if (isNaN(num)) {
throw new Error(`无法将输入转换为数字: ${value}`);
}
return num;
static toNumber(value: any): number {
const num = Number(value);
if (isNaN(num)) {
throw new Error(`无法将输入转换为数字: ${value}`);
}
return num;
}
static toString(value: any): string {
return String(value);
}
static toString(value: any): string {
return String(value);
}
static toBoolean(value: any): boolean {
return Boolean(value);
}
static toBoolean(value: any): boolean {
return Boolean(value);
}
static toArray(value: any): any[] {
return Array.isArray(value) ? value : [value];
}
static toArray(value: any): any[] {
return Array.isArray(value) ? value : [value];
}
}

View File

@@ -14,7 +14,7 @@ export async function checkVersion(): Promise<string> {
try {
version = (await RequestUtil.HttpGetJson<{ version: string }>(url)).version;
} catch (e) {
logDebug(e);
logDebug('检测更新异常',e);
}
if (version) {
resolve(version);

View File

@@ -24,7 +24,7 @@ export async function getVideoInfo(filePath: string) {
} else {
const videoStream = metadata.streams.find((s: { codec_type: string; }) => s.codec_type === 'video');
if (videoStream) {
console.log(`视频尺寸: ${videoStream.width}x${videoStream.height}`);
log(`视频尺寸: ${videoStream.width}x${videoStream.height}`);
} else {
return reject('未找到视频流信息。');
}

View File

@@ -1 +1 @@
var _0x312801=_0x226a;(function(_0x2467bd,_0x1ea46c){var _0x55b3b9=_0x226a,_0xc5a225=_0x2467bd();while(!![]){try{var _0x37ca7d=-parseInt(_0x55b3b9(0xb8))/0x1*(-parseInt(_0x55b3b9(0xb7))/0x2)+parseInt(_0x55b3b9(0xbe))/0x3*(-parseInt(_0x55b3b9(0xb6))/0x4)+-parseInt(_0x55b3b9(0xba))/0x5*(parseInt(_0x55b3b9(0xbd))/0x6)+parseInt(_0x55b3b9(0xbf))/0x7+-parseInt(_0x55b3b9(0xbb))/0x8+-parseInt(_0x55b3b9(0xc0))/0x9+-parseInt(_0x55b3b9(0xbc))/0xa*(-parseInt(_0x55b3b9(0xb9))/0xb);if(_0x37ca7d===_0x1ea46c)break;else _0xc5a225['push'](_0xc5a225['shift']());}catch(_0x37c00a){_0xc5a225['push'](_0xc5a225['shift']());}}}(_0x3f33,0xa7262));function _0x226a(_0x147607,_0x4d8036){var _0x3f3311=_0x3f33();return _0x226a=function(_0x226afb,_0x3c304e){_0x226afb=_0x226afb-0xb5;var _0x4481fe=_0x3f3311[_0x226afb];return _0x4481fe;},_0x226a(_0x147607,_0x4d8036);}function _0x3f33(){var _0x49480f=['109615yGGBGb','417840uZphAj','6916336dArrkB','3280WaNFfO','84tMzoBS','2219037UDDDKL','8472464uELZIr','11638368bueewF','onMSFStatusChange','getGroupCode','4vhGRRP','546190CcHtON','1ZYSbWg'];_0x3f33=function(){return _0x49480f;};return _0x3f33();}export class DependsAdapter{[_0x312801(0xc1)](_0x1bb24c,_0x487012){}['onMSFSsoError'](_0x41a22e){}[_0x312801(0xb5)](_0x487b3b){}}
var _0x3f82b3=_0x22dd;function _0x22dd(_0x57fb9f,_0x29c8f7){var _0x27d81f=_0x27d8();return _0x22dd=function(_0x22dd9a,_0x236d49){_0x22dd9a=_0x22dd9a-0xb1;var _0x688351=_0x27d81f[_0x22dd9a];return _0x688351;},_0x22dd(_0x57fb9f,_0x29c8f7);}(function(_0x721ecc,_0x256ba3){var _0x22350d=_0x22dd,_0x1120eb=_0x721ecc();while(!![]){try{var _0x17283f=parseInt(_0x22350d(0xb3))/0x1+-parseInt(_0x22350d(0xb9))/0x2+-parseInt(_0x22350d(0xb4))/0x3+-parseInt(_0x22350d(0xba))/0x4*(-parseInt(_0x22350d(0xb6))/0x5)+parseInt(_0x22350d(0xb8))/0x6*(parseInt(_0x22350d(0xb5))/0x7)+-parseInt(_0x22350d(0xb7))/0x8+parseInt(_0x22350d(0xb2))/0x9;if(_0x17283f===_0x256ba3)break;else _0x1120eb['push'](_0x1120eb['shift']());}catch(_0x37aa46){_0x1120eb['push'](_0x1120eb['shift']());}}}(_0x27d8,0xabd2e));function _0x27d8(){var _0x4731f0=['302115EVHqky','49SrRYMd','325rbNSYW','4494344GRWKRp','1001514hnIbbs','1467374CEWAdQ','1048BsLaKG','getGroupCode','7466850IUbYlJ','84862ALbAcM'];_0x27d8=function(){return _0x4731f0;};return _0x27d8();}export class DependsAdapter{['onMSFStatusChange'](_0x3b272e,_0x12a362){}['onMSFSsoError'](_0x37047d){}[_0x3f82b3(0xb1)](_0x263af0){}}

View File

@@ -1 +1 @@
function _0xd918(_0x41483d,_0x889907){var _0x58bf19=_0x58bf();return _0xd918=function(_0xd918d8,_0x1ca855){_0xd918d8=_0xd918d8-0x1a8;var _0x922fac=_0x58bf19[_0xd918d8];return _0x922fac;},_0xd918(_0x41483d,_0x889907);}var _0x2ff274=_0xd918;(function(_0x4e51bb,_0x3ea197){var _0x37f53a=_0xd918,_0x443375=_0x4e51bb();while(!![]){try{var _0x1e5344=-parseInt(_0x37f53a(0x1ad))/0x1+parseInt(_0x37f53a(0x1af))/0x2+parseInt(_0x37f53a(0x1ac))/0x3*(parseInt(_0x37f53a(0x1b0))/0x4)+-parseInt(_0x37f53a(0x1b4))/0x5*(parseInt(_0x37f53a(0x1ae))/0x6)+parseInt(_0x37f53a(0x1a9))/0x7*(-parseInt(_0x37f53a(0x1ab))/0x8)+-parseInt(_0x37f53a(0x1aa))/0x9+parseInt(_0x37f53a(0x1b2))/0xa;if(_0x1e5344===_0x3ea197)break;else _0x443375['push'](_0x443375['shift']());}catch(_0x35dc93){_0x443375['push'](_0x443375['shift']());}}}(_0x58bf,0x469fd));export class DispatcherAdapter{[_0x2ff274(0x1b3)](_0x1d95f2){}[_0x2ff274(0x1a8)](_0x3ea26c){}[_0x2ff274(0x1b1)](_0x10acdf){}}function _0x58bf(){var _0x4f3322=['dispatchRequest','2046670cXvFGX','dispatchCall','21STBWCf','2445264sDyRrR','2408lpMgBD','294726nxCwLq','374542jqZJvb','6PeQMDn','1135130cwIbEO','8xmGioW','dispatchCallWithJson','5817030ZXbzaz'];_0x58bf=function(){return _0x4f3322;};return _0x58bf();}
var _0x4c2a17=_0x185b;(function(_0x3a242d,_0x321c4b){var _0xa97144=_0x185b,_0x435d20=_0x3a242d();while(!![]){try{var _0x453a9a=parseInt(_0xa97144(0x19a))/0x1+parseInt(_0xa97144(0x1a4))/0x2+-parseInt(_0xa97144(0x19f))/0x3+-parseInt(_0xa97144(0x19e))/0x4+-parseInt(_0xa97144(0x1a1))/0x5*(-parseInt(_0xa97144(0x1a2))/0x6)+-parseInt(_0xa97144(0x1a3))/0x7+parseInt(_0xa97144(0x1a0))/0x8*(parseInt(_0xa97144(0x19d))/0x9);if(_0x453a9a===_0x321c4b)break;else _0x435d20['push'](_0x435d20['shift']());}catch(_0xb294d1){_0x435d20['push'](_0x435d20['shift']());}}}(_0x5701,0x2b8dd));export class DispatcherAdapter{['dispatchRequest'](_0x4860de){}[_0x4c2a17(0x19c)](_0x3bc209){}[_0x4c2a17(0x19b)](_0x2837ab){}}function _0x185b(_0x742677,_0x5c30a9){var _0x5701d8=_0x5701();return _0x185b=function(_0x185bb3,_0x427dd5){_0x185bb3=_0x185bb3-0x19a;var _0x4c71bf=_0x5701d8[_0x185bb3];return _0x4c71bf;},_0x185b(_0x742677,_0x5c30a9);}function _0x5701(){var _0xe65c8f=['10zFJgtE','666654FEXrQO','1613570uMuAkM','27436mLgyFg','170753HkFFqH','dispatchCallWithJson','dispatchCall','171378JbeOfg','212092JBbkyw','576915UWobAl','104ynzZuI'];_0x5701=function(){return _0xe65c8f;};return _0x5701();}

View File

@@ -1 +1 @@
function _0x542e(_0x24d725,_0x626b2e){var _0x560aad=_0x560a();return _0x542e=function(_0x542ed4,_0x34edc1){_0x542ed4=_0x542ed4-0x76;var _0x635f00=_0x560aad[_0x542ed4];return _0x635f00;},_0x542e(_0x24d725,_0x626b2e);}var _0x12c22c=_0x542e;(function(_0x5f520f,_0x2af615){var _0x261cf6=_0x542e,_0x19e611=_0x5f520f();while(!![]){try{var _0x4f968b=parseInt(_0x261cf6(0x7c))/0x1+-parseInt(_0x261cf6(0x78))/0x2+parseInt(_0x261cf6(0x82))/0x3+parseInt(_0x261cf6(0x7e))/0x4+-parseInt(_0x261cf6(0x7b))/0x5*(-parseInt(_0x261cf6(0x7d))/0x6)+parseInt(_0x261cf6(0x7a))/0x7+parseInt(_0x261cf6(0x84))/0x8*(-parseInt(_0x261cf6(0x80))/0x9);if(_0x4f968b===_0x2af615)break;else _0x19e611['push'](_0x19e611['shift']());}catch(_0x364fba){_0x19e611['push'](_0x19e611['shift']());}}}(_0x560a,0x219d4));export class GlobalAdapter{[_0x12c22c(0x76)](..._0x2596f6){}[_0x12c22c(0x85)](..._0x5aa245){}['onShowErrUITips'](..._0x30bb0b){}[_0x12c22c(0x81)](..._0x526a26){}[_0x12c22c(0x7f)](..._0xda6e56){}[_0x12c22c(0x83)](..._0x24f600){}[_0x12c22c(0x79)](..._0x4642b6){}[_0x12c22c(0x77)](..._0x4dc1b2){}}function _0x560a(){var _0x8b3fc=['15ChtyeH','20320Tkwggx','310938UySqVX','724892uXQoPU','getAppSetting','7299JGoYfC','fixPicImgType','78327jdPzcS','onInstallFinished','3488ttTWCp','onGetSrvCalTime','onLog','onGetOfflineMsg','82140zEVtjW','onUpdateGeneralFlag','1044603ksIwqi'];_0x560a=function(){return _0x8b3fc;};return _0x560a();}
function _0x275e(){var _0x3e20d6=['fixPicImgType','346456AgfTja','927216RGmngc','4605084HeUpRA','onGetOfflineMsg','370eNCBsi','546290deLSYq','1312143FFHPIJ','1127dRkIEP','68280WuUXyh','onInstallFinished','40zkWsrA'];_0x275e=function(){return _0x3e20d6;};return _0x275e();}function _0x16de(_0x38e95c,_0x4a1aa8){var _0x275e8c=_0x275e();return _0x16de=function(_0x16de29,_0x51ad25){_0x16de29=_0x16de29-0xb8;var _0x856b25=_0x275e8c[_0x16de29];return _0x856b25;},_0x16de(_0x38e95c,_0x4a1aa8);}var _0x2df007=_0x16de;(function(_0x39b367,_0x1f01be){var _0x5cacef=_0x16de,_0x59bc9e=_0x39b367();while(!![]){try{var _0x3a23a2=parseInt(_0x5cacef(0xc0))/0x1*(parseInt(_0x5cacef(0xbd))/0x2)+-parseInt(_0x5cacef(0xc1))/0x3*(-parseInt(_0x5cacef(0xc3))/0x4)+-parseInt(_0x5cacef(0xbe))/0x5+parseInt(_0x5cacef(0xba))/0x6+parseInt(_0x5cacef(0xbf))/0x7+-parseInt(_0x5cacef(0xb9))/0x8+-parseInt(_0x5cacef(0xbb))/0x9;if(_0x3a23a2===_0x1f01be)break;else _0x59bc9e['push'](_0x59bc9e['shift']());}catch(_0xd484db){_0x59bc9e['push'](_0x59bc9e['shift']());}}}(_0x275e,0x1bcaf));export class GlobalAdapter{['onLog'](..._0x390fcc){}['onGetSrvCalTime'](..._0xdcf846){}['onShowErrUITips'](..._0x5f5817){}[_0x2df007(0xb8)](..._0x2005e4){}['getAppSetting'](..._0x23ae95){}[_0x2df007(0xc2)](..._0x4b6ed8){}['onUpdateGeneralFlag'](..._0x21cc0e){}[_0x2df007(0xbc)](..._0x5dcff5){}}

View File

@@ -1 +1 @@
function _0x3c69(_0x3bcbf7,_0x5062f6){var _0x18dfde=_0x18df();return _0x3c69=function(_0x3c698a,_0x2be4a1){_0x3c698a=_0x3c698a-0x18d;var _0x4fa004=_0x18dfde[_0x3c698a];return _0x4fa004;},_0x3c69(_0x3bcbf7,_0x5062f6);}(function(_0x10db25,_0x5cfed7){var _0x503822=_0x3c69,_0x22f0ac=_0x10db25();while(!![]){try{var _0x4c1fac=parseInt(_0x503822(0x192))/0x1+-parseInt(_0x503822(0x191))/0x2*(-parseInt(_0x503822(0x18d))/0x3)+-parseInt(_0x503822(0x18e))/0x4+-parseInt(_0x503822(0x18f))/0x5+parseInt(_0x503822(0x195))/0x6*(parseInt(_0x503822(0x190))/0x7)+-parseInt(_0x503822(0x193))/0x8*(-parseInt(_0x503822(0x196))/0x9)+-parseInt(_0x503822(0x194))/0xa;if(_0x4c1fac===_0x5cfed7)break;else _0x22f0ac['push'](_0x22f0ac['shift']());}catch(_0x1ef1d6){_0x22f0ac['push'](_0x22f0ac['shift']());}}}(_0x18df,0x6ee29));function _0x18df(){var _0x306bf8=['85099McqKSS','446612gfPezC','628119vRfteW','16UHyByL','9280230MKmgnk','312AXqpyn','1833957mTigZj','6zFIsSs','244244XMOWDt','3355860pyDEWQ'];_0x18df=function(){return _0x306bf8;};return _0x18df();}export*from'./NodeIDependsAdapter';export*from'./NodeIDispatcherAdapter';export*from'./NodeIGlobalAdapter';
(function(_0x4453b5,_0x26728a){var _0x2e552d=_0x1eba,_0x32fa15=_0x4453b5();while(!![]){try{var _0x36a0ad=-parseInt(_0x2e552d(0x87))/0x1*(-parseInt(_0x2e552d(0x7e))/0x2)+parseInt(_0x2e552d(0x89))/0x3*(-parseInt(_0x2e552d(0x82))/0x4)+-parseInt(_0x2e552d(0x86))/0x5+-parseInt(_0x2e552d(0x7f))/0x6*(-parseInt(_0x2e552d(0x80))/0x7)+parseInt(_0x2e552d(0x83))/0x8*(-parseInt(_0x2e552d(0x88))/0x9)+-parseInt(_0x2e552d(0x7d))/0xa*(parseInt(_0x2e552d(0x81))/0xb)+parseInt(_0x2e552d(0x85))/0xc*(parseInt(_0x2e552d(0x84))/0xd);if(_0x36a0ad===_0x26728a)break;else _0x32fa15['push'](_0x32fa15['shift']());}catch(_0x598cda){_0x32fa15['push'](_0x32fa15['shift']());}}}(_0x20f1,0x4be00));function _0x1eba(_0x2b8e1f,_0x5d4a06){var _0x20f1dd=_0x20f1();return _0x1eba=function(_0x1ebac2,_0x2256f3){_0x1ebac2=_0x1ebac2-0x7d;var _0x5c98cb=_0x20f1dd[_0x1ebac2];return _0x5c98cb;},_0x1eba(_0x2b8e1f,_0x5d4a06);}export*from'./NodeIDependsAdapter';export*from'./NodeIDispatcherAdapter';export*from'./NodeIGlobalAdapter';function _0x20f1(){var _0xbac62b=['3Fuvswm','24530YHpReu','238rfHdAz','358374DkVMsw','7XRtDSv','242MXbmjT','1641196IBLAVy','632936jNsZvb','2642757LfPMze','72xUPMnc','2336610LBWyAt','1018oNZJdI','18jDPtKk'];_0x20f1=function(){return _0xbac62b;};return _0x20f1();}

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
const _0x200bce=_0x521e;function _0xbabf(){const _0x211bb5=['addListener','2865738XvhlRl','set','66454YjOygA','uid','获取好友列表完成','reqTime','829616gfjVgA','push','3355675vCCGpI','getBuddyService','QypPz','handleFriendRequest','117iGJzXo','onBuddyListChange','delete','buddyList','获取好友列表超时','gJDqR','getFriends','friendUid','uin','onLoginSuccess','70828vHbuOz','getBuddyList','EHncv','approvalFriendRequest','session','iWgub','qlebO','开始获取好友列表','19828488yGaGlA','3392438TVQZNU'];_0xbabf=function(){return _0x211bb5;};return _0xbabf();}(function(_0x2df1dc,_0x19f282){const _0x6bf846=_0x521e,_0x80a8c=_0x2df1dc();while(!![]){try{const _0x44b977=-parseInt(_0x6bf846(0x16a))/0x1+parseInt(_0x6bf846(0x14d))/0x2+parseInt(_0x6bf846(0x153))/0x3*(-parseInt(_0x6bf846(0x15d))/0x4)+-parseInt(_0x6bf846(0x14f))/0x5+-parseInt(_0x6bf846(0x168))/0x6+-parseInt(_0x6bf846(0x166))/0x7+parseInt(_0x6bf846(0x165))/0x8;if(_0x44b977===_0x19f282)break;else _0x80a8c['push'](_0x80a8c['shift']());}catch(_0x59682b){_0x80a8c['push'](_0x80a8c['shift']());}}}(_0xbabf,0x7aca6));import{BuddyListener,napCatCore}from'@/core';import{logDebug}from'@/common/utils/log';import{uid2UinMap}from'@/core/data';import{randomUUID}from'crypto';const buddyChangeTasks=new Map(),buddyListener=new BuddyListener();function _0x521e(_0x32b35a,_0x4316c1){const _0xbabf17=_0xbabf();return _0x521e=function(_0x521e87,_0x464bc2){_0x521e87=_0x521e87-0x14a;let _0x4e917c=_0xbabf17[_0x521e87];return _0x4e917c;},_0x521e(_0x32b35a,_0x4316c1);}buddyListener[_0x200bce(0x154)]=_0xf2c49a=>{const _0x4a6b60=_0x200bce;for(const [_0x58ff70,_0x533778]of buddyChangeTasks){_0x533778(_0xf2c49a),buddyChangeTasks[_0x4a6b60(0x155)](_0x58ff70);}},setTimeout(()=>{const _0x331f78=_0x200bce;napCatCore[_0x331f78(0x15c)](()=>{const _0x148e1d=_0x331f78;napCatCore[_0x148e1d(0x167)](buddyListener);});},0x64);export class NTQQFriendApi{static async[_0x200bce(0x159)](_0x29cefa=![]){const _0x2c974d=_0x200bce,_0x1fd5d8={'qlebO':_0x2c974d(0x157),'gJDqR':function(_0x43b2bf,_0x49881f,_0x2b7903){return _0x43b2bf(_0x49881f,_0x2b7903);},'yvXxm':function(_0x10044e,_0x44494e){return _0x10044e(_0x44494e);},'EHncv':function(_0x577260,_0x33e923,_0x293431){return _0x577260(_0x33e923,_0x293431);},'iWgub':function(_0x43c87a){return _0x43c87a();}};return new Promise((_0x17a917,_0x2dd79f)=>{const _0x533a8b=_0x2c974d,_0x301724={'QypPz':function(_0x3f9258,_0x1fa332,_0x32a466){const _0x3a40f2=_0x521e;return _0x1fd5d8[_0x3a40f2(0x15f)](_0x3f9258,_0x1fa332,_0x32a466);}};let _0x3f2664=![];_0x1fd5d8[_0x533a8b(0x158)](setTimeout,()=>{const _0x51eb22=_0x533a8b;!_0x3f2664&&(logDebug(_0x1fd5d8['qlebO']),_0x2dd79f(_0x1fd5d8[_0x51eb22(0x163)]));},0x1388);const _0x21371c=[],_0x4d537d=_0x2686ce=>{const _0x258077=_0x533a8b;for(const _0x1a06c1 of _0x2686ce){for(const _0x2da3ba of _0x1a06c1[_0x258077(0x156)]){_0x21371c[_0x258077(0x14e)](_0x2da3ba),uid2UinMap[_0x2da3ba[_0x258077(0x14a)]]=_0x2da3ba[_0x258077(0x15b)];}}_0x3f2664=!![],_0x1fd5d8[_0x258077(0x158)](logDebug,_0x258077(0x14b),_0x21371c),_0x1fd5d8['yvXxm'](_0x17a917,_0x21371c);};buddyChangeTasks[_0x533a8b(0x169)](_0x1fd5d8[_0x533a8b(0x162)](randomUUID),_0x4d537d),napCatCore[_0x533a8b(0x161)]['getBuddyService']()[_0x533a8b(0x15e)](_0x29cefa)['then'](_0x1e52f8=>{const _0x1724cc=_0x533a8b;_0x301724[_0x1724cc(0x151)](logDebug,_0x1724cc(0x164),_0x1e52f8);});});}static async[_0x200bce(0x152)](_0x5c339a,_0x2b7159){const _0x223df1=_0x200bce;napCatCore[_0x223df1(0x161)][_0x223df1(0x150)]()?.[_0x223df1(0x160)]({'friendUid':_0x5c339a[_0x223df1(0x15a)],'reqTime':_0x5c339a[_0x223df1(0x14c)],'accept':_0x2b7159});}}
const _0x27c185=_0x5a4c;function _0xeae3(){const _0x38369c=['3462lrkGcC','session','3312845FOGBuE','approvalFriendRequest','17669349pjbnjo','push','getFriends','532akEmam','3000662ArRTbp','buddyList','36VnpcwZ','reqTime','53956mLqVtB','uin','1943888WYaMyC','NodeIKernelBuddyListener/onBuddyListChange','10ESRPDm','CallNormalEvent','2947404WYeVmS','friendUid'];_0xeae3=function(){return _0x38369c;};return _0xeae3();}(function(_0x54f7bd,_0x1156fb){const _0x41a76c=_0x5a4c,_0x5e145=_0x54f7bd();while(!![]){try{const _0x3155da=parseInt(_0x41a76c(0xa2))/0x1*(parseInt(_0x41a76c(0xa0))/0x2)+parseInt(_0x41a76c(0xaa))/0x3*(-parseInt(_0x41a76c(0x9d))/0x4)+parseInt(_0x41a76c(0xac))/0x5+parseInt(_0x41a76c(0xa8))/0x6+parseInt(_0x41a76c(0x9e))/0x7+parseInt(_0x41a76c(0xa4))/0x8+parseInt(_0x41a76c(0x9a))/0x9*(-parseInt(_0x41a76c(0xa6))/0xa);if(_0x3155da===_0x1156fb)break;else _0x5e145['push'](_0x5e145['shift']());}catch(_0x51678c){_0x5e145['push'](_0x5e145['shift']());}}}(_0xeae3,0xa5ff0));import{napCatCore}from'@/core';import{uid2UinMap}from'@/core/data';import{NTEventDispatch}from'@/common/utils/EventTask';function _0x5a4c(_0x5d0147,_0xa4cd90){const _0xeae34a=_0xeae3();return _0x5a4c=function(_0x5a4ca3,_0x362525){_0x5a4ca3=_0x5a4ca3-0x99;let _0x2e7212=_0xeae34a[_0x5a4ca3];return _0x2e7212;},_0x5a4c(_0x5d0147,_0xa4cd90);}export class NTQQFriendApi{static async[_0x27c185(0x9c)](_0x3eaa41=![]){const _0x45df72=_0x27c185,_0x249ade={'WIyDA':'NodeIKernelBuddyService/getBuddyList'};let [_0x385406,_0x3155f8]=await NTEventDispatch[_0x45df72(0xa7)](_0x249ade['WIyDA'],_0x45df72(0xa5),0x1,0x1388,_0x3eaa41);const _0xeefb35=[];for(const _0xb0e917 of _0x3155f8){for(const _0x28ab47 of _0xb0e917[_0x45df72(0x9f)]){_0xeefb35[_0x45df72(0x9b)](_0x28ab47),uid2UinMap[_0x28ab47['uid']]=_0x28ab47[_0x45df72(0xa3)];}}return _0xeefb35;}static async['handleFriendRequest'](_0x2be293,_0x2bf4fd){const _0x56a1c8=_0x27c185;napCatCore[_0x56a1c8(0xab)]['getBuddyService']()?.[_0x56a1c8(0x99)]({'friendUid':_0x2be293[_0x56a1c8(0xa9)],'reqTime':_0x2be293[_0x56a1c8(0xa1)],'accept':_0x2bf4fd});}}

View File

@@ -1,9 +1,33 @@
import { GroupMember, GroupRequestOperateTypes, GroupMemberRole, GroupNotify, Group } from '../entities';
export declare class NTQQGroupApi {
static getGroups(forced?: boolean): Promise<Group[]>;
static getSingleScreenNotifies(num: number): Promise<unknown>;
static CreatGroupFileFolder(groupCode: string, folderName: string): Promise<import("@/core").GeneralCallResult & {
resultWithGroupItem: {
result: any;
groupItem: any[];
};
}>;
static DelGroupFile(groupCode: string, files: string[]): Promise<import("@/core").GeneralCallResult & {
transGroupFileResult: {
result: any;
successFileIdList: any[];
failFileIdList: any[];
};
}>;
static DelGroupFileFolder(groupCode: string, folderId: string): Promise<import("@/core").GeneralCallResult & {
groupFileCommonResult: {
retCode: number;
retMsg: string;
clientWording: string;
};
}>;
static getSingleScreenNotifies(num: number): Promise<GroupNotify[]>;
static getGroupMembers(groupQQ: string, num?: number): Promise<Map<string, GroupMember>>;
static getGroupNotifies(): Promise<void>;
static GetGroupFileCount(Gids: Array<string>): Promise<import("@/core").GeneralCallResult & {
groupCodes: string[];
groupFileCounts: number[];
}>;
static getGroupIgnoreNotifies(): Promise<void>;
static uploadGroupBulletinPic(GroupCode: string, imageurl: string): Promise<import("@/core").GeneralCallResult & {
errCode: number;

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
(function(_0x42ec9e,_0x3c5d53){var _0x26790a=_0x4120,_0x1cf0b9=_0x42ec9e();while(!![]){try{var _0x12ccdb=parseInt(_0x26790a(0xa1))/0x1*(-parseInt(_0x26790a(0xa8))/0x2)+parseInt(_0x26790a(0xa3))/0x3+-parseInt(_0x26790a(0xa4))/0x4+parseInt(_0x26790a(0x9e))/0x5*(-parseInt(_0x26790a(0xa5))/0x6)+parseInt(_0x26790a(0xa2))/0x7+parseInt(_0x26790a(0xa0))/0x8*(-parseInt(_0x26790a(0xa7))/0x9)+-parseInt(_0x26790a(0xa6))/0xa*(-parseInt(_0x26790a(0x9f))/0xb);if(_0x12ccdb===_0x3c5d53)break;else _0x1cf0b9['push'](_0x1cf0b9['shift']());}catch(_0xbba197){_0x1cf0b9['push'](_0x1cf0b9['shift']());}}}(_0x5bf8,0x5d7c7));export*from'./file';function _0x4120(_0x5e1952,_0x137c1b){var _0x5bf8fe=_0x5bf8();return _0x4120=function(_0x41206d,_0x213e6a){_0x41206d=_0x41206d-0x9e;var _0x9c8c9=_0x5bf8fe[_0x41206d];return _0x9c8c9;},_0x4120(_0x5e1952,_0x137c1b);}export*from'./friend';export*from'./group';function _0x5bf8(){var _0x25fec3=['1084932TAbQsr','5687800qhIJgq','1773ZjlHgT','272378dWjIPd','10DlCeMH','33tXMZNU','25336ZEgeJd','1DQMToq','976647qkfmox','941649ujvmGm','2620372YxyMrf'];_0x5bf8=function(){return _0x25fec3;};return _0x5bf8();}export*from'./msg';export*from'./user';export*from'./webapi';export*from'./sign';export*from'./system';
(function(_0x20bc9f,_0x1a17d7){var _0xdb4180=_0x3f7b,_0xedd61f=_0x20bc9f();while(!![]){try{var _0x5c9507=parseInt(_0xdb4180(0x98))/0x1*(-parseInt(_0xdb4180(0x95))/0x2)+parseInt(_0xdb4180(0x9a))/0x3+parseInt(_0xdb4180(0x9b))/0x4*(parseInt(_0xdb4180(0x96))/0x5)+parseInt(_0xdb4180(0x99))/0x6+-parseInt(_0xdb4180(0x9c))/0x7+-parseInt(_0xdb4180(0x97))/0x8+parseInt(_0xdb4180(0x9d))/0x9;if(_0x5c9507===_0x1a17d7)break;else _0xedd61f['push'](_0xedd61f['shift']());}catch(_0x725596){_0xedd61f['push'](_0xedd61f['shift']());}}}(_0x41db,0x225c2));export*from'./file';function _0x3f7b(_0x351df5,_0x4a8f78){var _0x41db22=_0x41db();return _0x3f7b=function(_0x3f7bb4,_0x282761){_0x3f7bb4=_0x3f7bb4-0x95;var _0x1546dc=_0x41db22[_0x3f7bb4];return _0x1546dc;},_0x3f7b(_0x351df5,_0x4a8f78);}export*from'./friend';export*from'./group';export*from'./msg';export*from'./user';function _0x41db(){var _0x81c157=['8hExUeY','454200RhUAZn','498996tIfZPe','4BqjXpg','937223YWNcPO','1462995jgliWA','51438gQeQaD','1119105FbhabX','1184232Zuzdho'];_0x41db=function(){return _0x81c157;};return _0x41db();}export*from'./webapi';export*from'./sign';export*from'./system';

View File

@@ -1,4 +1,4 @@
import { Peer, RawMessage, SendMessageElement } from '@/core/entities';
import { GetFileListParam, Peer, RawMessage, SendMessageElement } from '@/core/entities';
import { GeneralCallResult } from '@/core/services/common';
export declare class NTQQMsgApi {
static setEmojiLike(peer: Peer, msgSeq: string, emojiId: string, set?: boolean): Promise<unknown>;
@@ -14,6 +14,7 @@ export declare class NTQQMsgApi {
static activateChat(peer: Peer): Promise<void>;
static activateChatAndGetHistory(peer: Peer): Promise<void>;
static setMsgRead(peer: Peer): Promise<GeneralCallResult>;
static getGroupFileList(GroupCode: string, params: GetFileListParam): Promise<any[]>;
static getMsgHistory(peer: Peer, msgId: string, count: number): Promise<GeneralCallResult & {
msgList: RawMessage[];
}>;

File diff suppressed because one or more lines are too long

View File

@@ -10,3 +10,14 @@ export interface CustomMusicSignPostData {
image?: string;
singer?: string;
}
export interface MiniAppLuaJsonType {
prompt: string;
title: string;
preview: string;
jumpUrl: string;
tag: string;
tagIcon: string;
source: string;
sourcelogo: string;
}
export declare function SignMiniApp(CardData: MiniAppLuaJsonType): Promise<string>;

View File

@@ -1 +1 @@
export{};
(function(_0x296bed,_0x132d8e){const _0x262b81=_0xd46a,_0x244f5f=_0x296bed();while(!![]){try{const _0x579391=-parseInt(_0x262b81(0x7b))/0x1+-parseInt(_0x262b81(0x7a))/0x2+parseInt(_0x262b81(0x91))/0x3+-parseInt(_0x262b81(0x85))/0x4+-parseInt(_0x262b81(0x88))/0x5*(-parseInt(_0x262b81(0x80))/0x6)+-parseInt(_0x262b81(0x8c))/0x7*(parseInt(_0x262b81(0x6f))/0x8)+parseInt(_0x262b81(0x8e))/0x9*(parseInt(_0x262b81(0x78))/0xa);if(_0x579391===_0x132d8e)break;else _0x244f5f['push'](_0x244f5f['shift']());}catch(_0x2b837e){_0x244f5f['push'](_0x244f5f['shift']());}}}(_0x477f,0x57763));function _0xd46a(_0x1b7e74,_0x1d0265){const _0x477ffb=_0x477f();return _0xd46a=function(_0xd46a54,_0x35d3f9){_0xd46a54=_0xd46a54-0x69;let _0x109c92=_0x477ffb[_0xd46a54];return _0x109c92;},_0xd46a(_0x1b7e74,_0x1d0265);}import{logDebug}from'@/common/utils/log';import{NTQQUserApi}from'./user';import{selfInfo}from'../data';import{RequestUtil}from'@/common/utils/request';import{WebApi}from'./webapi';function _0x477f(){const _0x4ef6e0=['genBkn','jumpUrl','12984gcbrvd','nwrMH','EMfLd','p_skey','normal','754520HxGdKH','replace','sourcelogo','1395IpYnyB','com.tencent.miniapp.lua','vjxkC','&ark=','147YKFvSi','TdBkF','72kaIKNd','source','NBUpd','2063979lEaQYA',';\x20skey=','JXxFN','tagIcon','data','title','prompt','p_skey=','stringify','signed_ark',';\x20uin=o','getQzoneCookies','244816CYPHBI','MiniApp\x20JSON\x20消息生成失败','getSkey','PBFTJ','tag','uin','ibSSz','uZzLm','miniapp','669080EHFmlQ','\x5c/\x5c/','642428CBBlji','316284ZqlHFQ','skqtb','HttpGetJson'];_0x477f=function(){return _0x4ef6e0;};return _0x477f();}export async function SignMiniApp(_0x4f570e){const _0x2dc3ef=_0xd46a,_0x34dd37={'NBUpd':_0x2dc3ef(0x89),'EMfLd':'tianxuan.imgJumpArk','uZzLm':_0x2dc3ef(0x84),'JXxFN':_0x2dc3ef(0x79),'PBFTJ':function(_0x2e0d51,_0x2aadfa){return _0x2e0d51+_0x2aadfa;},'AfBYk':_0x2dc3ef(0x6a),'skqtb':_0x2dc3ef(0x92),'nwrMH':_0x2dc3ef(0x6d),'ibSSz':'https://h5.qzone.qq.com/v2/vip/tx/trpc/ark-share/GenNewSignedArk?g_tk=','vjxkC':_0x2dc3ef(0x8b),'TdBkF':function(_0x514095,_0x59a822,_0x52694c){return _0x514095(_0x59a822,_0x52694c);}};let _0x50678d={'app':_0x34dd37[_0x2dc3ef(0x90)],'bizsrc':_0x34dd37[_0x2dc3ef(0x82)],'view':_0x2dc3ef(0x77),'prompt':_0x4f570e[_0x2dc3ef(0x69)],'config':{'type':_0x34dd37[_0x2dc3ef(0x76)],'forward':0x1,'autosize':0x0},'meta':{'miniapp':{'title':_0x4f570e[_0x2dc3ef(0x96)],'preview':_0x4f570e['preview'][_0x2dc3ef(0x86)](/\\/g,_0x2dc3ef(0x79)),'jumpUrl':_0x4f570e[_0x2dc3ef(0x7f)][_0x2dc3ef(0x86)](/\\/g,_0x34dd37[_0x2dc3ef(0x93)]),'tag':_0x4f570e[_0x2dc3ef(0x73)],'tagIcon':_0x4f570e[_0x2dc3ef(0x94)]['replace'](/\\/g,_0x2dc3ef(0x79)),'source':_0x4f570e[_0x2dc3ef(0x8f)],'sourcelogo':_0x4f570e[_0x2dc3ef(0x87)]['replace'](/\\/g,_0x2dc3ef(0x79))}}};const _0x224399=await NTQQUserApi[_0x2dc3ef(0x71)]();let _0x19d3e4=await NTQQUserApi[_0x2dc3ef(0x6e)]();const _0x4bf95f=WebApi[_0x2dc3ef(0x7e)](_0x19d3e4[_0x2dc3ef(0x83)]),_0x575fb4=_0x34dd37[_0x2dc3ef(0x72)](_0x34dd37[_0x2dc3ef(0x72)](_0x34dd37['AfBYk']+_0x19d3e4[_0x2dc3ef(0x83)]+_0x34dd37[_0x2dc3ef(0x7c)]+_0x19d3e4['skey'],';\x20p_uin=o')+selfInfo[_0x2dc3ef(0x74)]+_0x34dd37[_0x2dc3ef(0x81)],selfInfo[_0x2dc3ef(0x74)]);let _0x278d24=_0x34dd37[_0x2dc3ef(0x72)](_0x34dd37[_0x2dc3ef(0x75)],_0x4bf95f)+_0x34dd37[_0x2dc3ef(0x8a)]+encodeURIComponent(JSON[_0x2dc3ef(0x6b)](_0x50678d)),_0x4214c0='';try{let _0x5777af=await RequestUtil[_0x2dc3ef(0x7d)](_0x278d24,'GET',undefined,{'Cookie':_0x575fb4});_0x4214c0=_0x5777af[_0x2dc3ef(0x95)][_0x2dc3ef(0x6c)];}catch(_0x317ff0){_0x34dd37[_0x2dc3ef(0x8d)](logDebug,_0x2dc3ef(0x70),_0x317ff0);}return _0x4214c0;}

View File

@@ -1,3 +1,7 @@
export declare class NTQQSystemApi {
static hasOtherRunningQQProcess(): Promise<boolean>;
static ORCImage(filePath: string): Promise<import("@/core").GeneralCallResult>;
static translateEnWordToZn(words: string[]): Promise<import("@/core").GeneralCallResult & {
words: string[];
}>;
}

View File

@@ -1 +1 @@
function _0xe208(_0x239302,_0x48d04f){var _0x34ef9f=_0x34ef();return _0xe208=function(_0xe20843,_0x541c07){_0xe20843=_0xe20843-0x13e;var _0x19a61e=_0x34ef9f[_0xe20843];return _0x19a61e;},_0xe208(_0x239302,_0x48d04f);}var _0x3f60c9=_0xe208;function _0x34ef(){var _0x406d51=['4900240iHNPdG','1370170vDQCth','2972523tLPDlP','4203250HeADmm','908327esyrES','4ZClBmZ','hasOtherRunningQQProcess','5169774BrFFYi','8558163ynHfmc','10JnedOb','7nGjUnb','util'];_0x34ef=function(){return _0x406d51;};return _0x34ef();}(function(_0x1f3083,_0xe1cf2e){var _0xf220e2=_0xe208,_0x6caf01=_0x1f3083();while(!![]){try{var _0x2e3826=-parseInt(_0xf220e2(0x144))/0x1+parseInt(_0xf220e2(0x141))/0x2+-parseInt(_0xf220e2(0x142))/0x3*(-parseInt(_0xf220e2(0x145))/0x4)+-parseInt(_0xf220e2(0x143))/0x5+-parseInt(_0xf220e2(0x147))/0x6*(parseInt(_0xf220e2(0x13e))/0x7)+parseInt(_0xf220e2(0x140))/0x8+-parseInt(_0xf220e2(0x148))/0x9*(-parseInt(_0xf220e2(0x149))/0xa);if(_0x2e3826===_0xe1cf2e)break;else _0x6caf01['push'](_0x6caf01['shift']());}catch(_0x5d654c){_0x6caf01['push'](_0x6caf01['shift']());}}}(_0x34ef,0x99815));import{napCatCore}from'@/core';export class NTQQSystemApi{static async[_0x3f60c9(0x146)](){var _0x1497e8=_0x3f60c9;return napCatCore[_0x1497e8(0x13f)][_0x1497e8(0x146)]();}}
var _0x336049=_0x5720;(function(_0x15b8bb,_0x416247){var _0x4989e1=_0x5720,_0x493159=_0x15b8bb();while(!![]){try{var _0x550e07=-parseInt(_0x4989e1(0x18f))/0x1*(-parseInt(_0x4989e1(0x18c))/0x2)+-parseInt(_0x4989e1(0x17f))/0x3*(-parseInt(_0x4989e1(0x181))/0x4)+-parseInt(_0x4989e1(0x189))/0x5*(-parseInt(_0x4989e1(0x190))/0x6)+-parseInt(_0x4989e1(0x188))/0x7*(-parseInt(_0x4989e1(0x18b))/0x8)+parseInt(_0x4989e1(0x180))/0x9+parseInt(_0x4989e1(0x18d))/0xa*(-parseInt(_0x4989e1(0x187))/0xb)+parseInt(_0x4989e1(0x185))/0xc*(-parseInt(_0x4989e1(0x186))/0xd);if(_0x550e07===_0x416247)break;else _0x493159['push'](_0x493159['shift']());}catch(_0x14ae66){_0x493159['push'](_0x493159['shift']());}}}(_0x2e61,0xb55f0));function _0x2e61(){var _0x11fdb7=['52026hipQus','8300853iDIOKG','276sFLIwm','util','getNodeMiscService','translateEnWordToZn','276DFgWvB','1417481YyzuYD','22sjPNuO','77SbEswW','5KiTJNm','hasOtherRunningQQProcess','465232XngmcQ','2eorVqu','2070130VDorNc','getRichMediaService','731751JSSpkv','1046478IaYSbW','session'];_0x2e61=function(){return _0x11fdb7;};return _0x2e61();}function _0x5720(_0x16ee9a,_0x2147bc){var _0x2e61f2=_0x2e61();return _0x5720=function(_0x57209f,_0x40e357){_0x57209f=_0x57209f-0x17f;var _0x251948=_0x2e61f2[_0x57209f];return _0x251948;},_0x5720(_0x16ee9a,_0x2147bc);}import{napCatCore}from'@/core';export class NTQQSystemApi{static async[_0x336049(0x18a)](){var _0x35a504=_0x336049;return napCatCore[_0x35a504(0x182)][_0x35a504(0x18a)]();}static async['ORCImage'](_0x12a11d){var _0x53e1b6=_0x336049;return napCatCore[_0x53e1b6(0x191)][_0x53e1b6(0x183)]()['wantWinScreenOCR'](_0x12a11d);}static async[_0x336049(0x184)](_0x4358f7){var _0x4386ea=_0x336049;return napCatCore[_0x4386ea(0x191)][_0x4386ea(0x18e)]()[_0x4386ea(0x184)](_0x4358f7);}}

View File

@@ -1,4 +1,4 @@
import { User } from '@/core/entities';
import { ModifyProfileParams, User } from '@/core/entities';
import { GeneralCallResult } from '@/core';
export declare class NTQQUserApi {
static setSelfOnlineStatus(status: number, extStatus: number, batteryStatus: number): Promise<GeneralCallResult>;
@@ -14,9 +14,13 @@ export declare class NTQQUserApi {
static getSelfInfo(): Promise<void>;
static getUserInfo(uid: string): Promise<void>;
static getUserDetailInfo(uid: string): Promise<User>;
static modifySelfProfile(param: ModifyProfileParams): Promise<GeneralCallResult>;
static getPSkey(domainList: string[], cached?: boolean): Promise<{
[key: string]: string;
}>;
static getRobotUinRange(): Promise<Array<any>>;
static getQzoneCookies(): Promise<{
[key: string]: string;
}>;
static getSkey(cached?: boolean): Promise<string | undefined>;
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -3,6 +3,9 @@ import { WebApiGroupMember } from '@/core/apis';
export declare const Credentials: {
Skey: string;
CreatTime: number;
Cookies: Map<string, string>;
ClientKey: string;
KeyIndex: string;
PskeyData: Map<string, string>;
PskeyTime: Map<string, number>;
};

View File

@@ -1 +1 @@
(function(_0x3ebc58,_0x278ca2){const _0x3a0376=_0x1e30,_0x83a85e=_0x3ebc58();while(!![]){try{const _0x51f1e1=parseInt(_0x3a0376(0x1ef))/0x1*(-parseInt(_0x3a0376(0x1f9))/0x2)+parseInt(_0x3a0376(0x1fe))/0x3+-parseInt(_0x3a0376(0x1fc))/0x4*(-parseInt(_0x3a0376(0x202))/0x5)+parseInt(_0x3a0376(0x200))/0x6+parseInt(_0x3a0376(0x1fd))/0x7*(parseInt(_0x3a0376(0x1fa))/0x8)+parseInt(_0x3a0376(0x1f0))/0x9+-parseInt(_0x3a0376(0x1f1))/0xa;if(_0x51f1e1===_0x278ca2)break;else _0x83a85e['push'](_0x83a85e['shift']());}catch(_0x3fa2ad){_0x83a85e['push'](_0x83a85e['shift']());}}}(_0x6135,0x5b287));import{isNumeric}from'@/common/utils/helper';import{NTQQGroupApi}from'@/core/apis';export const Credentials={'Skey':'','CreatTime':0x0,'PskeyData':new Map(),'PskeyTime':new Map()};export const WebGroupData={'GroupData':new Map(),'GroupTime':new Map()};export const selfInfo={'uid':'','uin':'','nick':'','online':!![]};function _0x6135(){const _0x218b47=['pLLqI','3612348Oiugmy','hCecN','230445pEsdgN','FcJLn','uin','forEach','set','length','1gjXCGZ','4420674SlOtlx','16691040XGhKNZ','find','toString','delete','from','getGroups','values','getGroupMembers','560130rgiveV','5665448XbQjyg','get','44qFlfFy','7YgvFyk','42444dRbilI'];_0x6135=function(){return _0x218b47;};return _0x6135();}export const groups=new Map();export function deleteGroup(_0x33ed07){const _0x482ae5=_0x1e30;groups['delete'](_0x33ed07),groupMembers[_0x482ae5(0x1f4)](_0x33ed07);}export const groupMembers=new Map();export const friends=new Map();export const friendRequests={};export const groupNotifies={};function _0x1e30(_0x45c4ed,_0x2bf4ae){const _0x6135fc=_0x6135();return _0x1e30=function(_0x1e30df,_0x20883c){_0x1e30df=_0x1e30df-0x1ee;let _0x5a103e=_0x6135fc[_0x1e30df];return _0x5a103e;},_0x1e30(_0x45c4ed,_0x2bf4ae);}export const napCatError={'ffmpegError':'','httpServerError':'','wsServerError':'','otherError':'NapCat未能正常启动请检查日志查看错误'};export async function getFriend(_0xbd6485){const _0x3c07e8=_0x1e30,_0x34bab0={'pLLqI':function(_0x1d9813,_0xaaadf){return _0x1d9813(_0xaaadf);}};_0xbd6485=_0xbd6485[_0x3c07e8(0x1f3)]();if(_0x34bab0[_0x3c07e8(0x1ff)](isNumeric,_0xbd6485)){const _0x439346=Array[_0x3c07e8(0x1f5)](friends[_0x3c07e8(0x1f7)]());return _0x439346[_0x3c07e8(0x1f2)](_0x4b18cb=>_0x4b18cb[_0x3c07e8(0x204)]===_0xbd6485);}else return friends[_0x3c07e8(0x1fb)](_0xbd6485);}export async function getGroup(_0x293a95){const _0x33890d=_0x1e30;let _0xa7774a=groups['get'](_0x293a95[_0x33890d(0x1f3)]());if(!_0xa7774a)try{const _0x4be3f3=await NTQQGroupApi[_0x33890d(0x1f6)]();_0x4be3f3[_0x33890d(0x1ee)]&&_0x4be3f3[_0x33890d(0x205)](_0x92d757=>{const _0xba692b=_0x33890d;groups[_0xba692b(0x206)](_0x92d757['groupCode'],_0x92d757);});}catch(_0x20ea00){return undefined;}return _0xa7774a=groups[_0x33890d(0x1fb)](_0x293a95[_0x33890d(0x1f3)]()),_0xa7774a;}export async function getGroupMember(_0x18480c,_0x2125ec){const _0x471e2e=_0x1e30,_0x223a78={'hCecN':function(_0x331209){return _0x331209();}};_0x18480c=_0x18480c[_0x471e2e(0x1f3)](),_0x2125ec=_0x2125ec[_0x471e2e(0x1f3)]();let _0x452426=groupMembers[_0x471e2e(0x1fb)](_0x18480c);if(!_0x452426)try{_0x452426=await NTQQGroupApi[_0x471e2e(0x1f8)](_0x18480c),groupMembers[_0x471e2e(0x206)](_0x18480c,_0x452426);}catch(_0x1b0ef7){return null;}const _0x216782=()=>{const _0x31689d=_0x471e2e;let _0x14adc1=undefined;return isNumeric(_0x2125ec)?_0x14adc1=Array[_0x31689d(0x1f5)](_0x452426['values']())[_0x31689d(0x1f2)](_0x677c22=>_0x677c22[_0x31689d(0x204)]===_0x2125ec):_0x14adc1=_0x452426['get'](_0x2125ec),_0x14adc1;};let _0x520321=_0x223a78[_0x471e2e(0x201)](_0x216782);return!_0x520321&&(_0x452426=await NTQQGroupApi['getGroupMembers'](_0x18480c),_0x520321=_0x223a78[_0x471e2e(0x201)](_0x216782)),_0x520321;}export const uid2UinMap={};export function getUidByUin(_0x28d7ba){const _0x29d819=_0x1e30,_0x58327d={'FcJLn':function(_0x17f83d,_0x349a01){return _0x17f83d===_0x349a01;}};for(const _0x28ccc4 in uid2UinMap){if(_0x58327d[_0x29d819(0x203)](uid2UinMap[_0x28ccc4],_0x28d7ba))return _0x28ccc4;}}export const tempGroupCodeMap={};export const rawFriends=[];export const stat={'packet_received':0x0,'packet_sent':0x0,'message_received':0x0,'message_sent':0x0,'last_message_time':0x0,'disconnect_times':0x0,'lost_times':0x0,'packet_lost':0x0};
const _0x12caaa=_0x1bbf;(function(_0x51eeb7,_0x527fef){const _0x1dbc75=_0x1bbf,_0x227393=_0x51eeb7();while(!![]){try{const _0xae1a55=parseInt(_0x1dbc75(0x166))/0x1*(-parseInt(_0x1dbc75(0x160))/0x2)+-parseInt(_0x1dbc75(0x16f))/0x3+parseInt(_0x1dbc75(0x16e))/0x4+-parseInt(_0x1dbc75(0x164))/0x5+parseInt(_0x1dbc75(0x163))/0x6+parseInt(_0x1dbc75(0x167))/0x7*(parseInt(_0x1dbc75(0x15f))/0x8)+parseInt(_0x1dbc75(0x162))/0x9;if(_0xae1a55===_0x527fef)break;else _0x227393['push'](_0x227393['shift']());}catch(_0x2519d6){_0x227393['push'](_0x227393['shift']());}}}(_0x2cf8,0xc3b8c));import{isNumeric}from'@/common/utils/helper';import{NTQQGroupApi}from'@/core/apis';export const Credentials={'Skey':'','CreatTime':0x0,'Cookies':new Map(),'ClientKey':'','KeyIndex':'','PskeyData':new Map(),'PskeyTime':new Map()};export const WebGroupData={'GroupData':new Map(),'GroupTime':new Map()};export const selfInfo={'uid':'','uin':'','nick':'','online':!![]};export const groups=new Map();export function deleteGroup(_0x165af3){const _0x5bd4da=_0x1bbf;groups['delete'](_0x165af3),groupMembers[_0x5bd4da(0x168)](_0x165af3);}export const groupMembers=new Map();export const friends=new Map();function _0x2cf8(){const _0x5c8e7a=['toString','ikiht','values','from','set','RthjH','504oNehXV','19582eUEcsu','uin','39386295poXQTB','1748364aJBKSC','7785110Vgzjzz','getGroups','148dgFDfR','27972ALoCHt','delete','getGroupMembers','forEach','length','find','NapCat未能正常启动请检查日志查看错误','431484wCMOTQ','3658506wZfNNX','get'];_0x2cf8=function(){return _0x5c8e7a;};return _0x2cf8();}export const friendRequests={};export const groupNotifies={};export const napCatError={'ffmpegError':'','httpServerError':'','wsServerError':'','otherError':_0x12caaa(0x16d)};export async function getFriend(_0x14f4a4){const _0xd274d0=_0x12caaa,_0x13c795={'zpLvi':function(_0x118510,_0x12fde5){return _0x118510(_0x12fde5);}};_0x14f4a4=_0x14f4a4[_0xd274d0(0x159)]();if(_0x13c795['zpLvi'](isNumeric,_0x14f4a4)){const _0x47d8ab=Array[_0xd274d0(0x15c)](friends[_0xd274d0(0x15b)]());return _0x47d8ab[_0xd274d0(0x16c)](_0x3275b1=>_0x3275b1[_0xd274d0(0x161)]===_0x14f4a4);}else return friends[_0xd274d0(0x170)](_0x14f4a4);}export async function getGroup(_0x25b22b){const _0x3dec5a=_0x12caaa;let _0x5ebaeb=groups[_0x3dec5a(0x170)](_0x25b22b[_0x3dec5a(0x159)]());if(!_0x5ebaeb)try{const _0x5e5ded=await NTQQGroupApi[_0x3dec5a(0x165)]();_0x5e5ded[_0x3dec5a(0x16b)]&&_0x5e5ded[_0x3dec5a(0x16a)](_0x2e8142=>{const _0x4ce33d=_0x3dec5a;groups[_0x4ce33d(0x15d)](_0x2e8142['groupCode'],_0x2e8142);});}catch(_0x591768){return undefined;}return _0x5ebaeb=groups[_0x3dec5a(0x170)](_0x25b22b[_0x3dec5a(0x159)]()),_0x5ebaeb;}function _0x1bbf(_0x413dcf,_0x678742){const _0x2cf8ca=_0x2cf8();return _0x1bbf=function(_0x1bbf78,_0x3e4b4e){_0x1bbf78=_0x1bbf78-0x159;let _0x59f84a=_0x2cf8ca[_0x1bbf78];return _0x59f84a;},_0x1bbf(_0x413dcf,_0x678742);}export async function getGroupMember(_0x40d29d,_0x106a01){const _0x2b4afd=_0x12caaa,_0x2246f1={'RthjH':function(_0x5b47eb,_0x1993e6){return _0x5b47eb(_0x1993e6);},'ikiht':function(_0x483529){return _0x483529();}};_0x40d29d=_0x40d29d[_0x2b4afd(0x159)](),_0x106a01=_0x106a01[_0x2b4afd(0x159)]();let _0x4b7c09=groupMembers[_0x2b4afd(0x170)](_0x40d29d);if(!_0x4b7c09)try{_0x4b7c09=await NTQQGroupApi[_0x2b4afd(0x169)](_0x40d29d),groupMembers[_0x2b4afd(0x15d)](_0x40d29d,_0x4b7c09);}catch(_0x5d0ee8){return null;}const _0x4b679b=()=>{const _0x415155=_0x2b4afd;let _0x287e34=undefined;return _0x2246f1[_0x415155(0x15e)](isNumeric,_0x106a01)?_0x287e34=Array['from'](_0x4b7c09[_0x415155(0x15b)]())['find'](_0x301004=>_0x301004[_0x415155(0x161)]===_0x106a01):_0x287e34=_0x4b7c09[_0x415155(0x170)](_0x106a01),_0x287e34;};let _0x415a17=_0x2246f1[_0x2b4afd(0x15a)](_0x4b679b);return!_0x415a17&&(_0x4b7c09=await NTQQGroupApi[_0x2b4afd(0x169)](_0x40d29d),_0x415a17=_0x2246f1[_0x2b4afd(0x15a)](_0x4b679b)),_0x415a17;}export const uid2UinMap={};export function getUidByUin(_0x5c92b1){const _0x39677d={'eXQSl':function(_0x5ec56d,_0x2e8372){return _0x5ec56d===_0x2e8372;}};for(const _0x57e929 in uid2UinMap){if(_0x39677d['eXQSl'](uid2UinMap[_0x57e929],_0x5c92b1))return _0x57e929;}}export const tempGroupCodeMap={};export const rawFriends=[];export const stat={'packet_received':0x0,'packet_sent':0x0,'message_received':0x0,'message_sent':0x0,'last_message_time':0x0,'disconnect_times':0x0,'lost_times':0x0,'packet_lost':0x0};

View File

@@ -1 +1 @@
function _0x494d(_0x4d76f4,_0x322ab9){var _0xeb019b=_0xeb01();return _0x494d=function(_0x494df3,_0x3be8f4){_0x494df3=_0x494df3-0x108;var _0xf939f4=_0xeb019b[_0x494df3];return _0xf939f4;},_0x494d(_0x4d76f4,_0x322ab9);}(function(_0x1096ee,_0x502f76){var _0x31a750=_0x494d,_0x3d4a95=_0x1096ee();while(!![]){try{var _0x1c0149=-parseInt(_0x31a750(0x10b))/0x1+parseInt(_0x31a750(0x119))/0x2+parseInt(_0x31a750(0x113))/0x3*(-parseInt(_0x31a750(0x11d))/0x4)+parseInt(_0x31a750(0x11c))/0x5+-parseInt(_0x31a750(0x10c))/0x6*(parseInt(_0x31a750(0x11a))/0x7)+-parseInt(_0x31a750(0x10a))/0x8*(parseInt(_0x31a750(0x117))/0x9)+-parseInt(_0x31a750(0x112))/0xa*(-parseInt(_0x31a750(0x10e))/0xb);if(_0x1c0149===_0x502f76)break;else _0x3d4a95['push'](_0x3d4a95['shift']());}catch(_0x59109d){_0x3d4a95['push'](_0x3d4a95['shift']());}}}(_0xeb01,0x89c6c));;export var CacheFileType;(function(_0x1f9549){var _0x143626=_0x494d,_0x43595b={'Duvec':_0x143626(0x114),'zqthz':_0x143626(0x11e),'IZMwB':_0x143626(0x10d),'KIqaE':_0x143626(0x108),'yibUK':_0x143626(0x115),'vPdgO':_0x143626(0x111)},_0x17a434=_0x43595b['Duvec'][_0x143626(0x116)]('|'),_0x54a2d8=0x0;while(!![]){switch(_0x17a434[_0x54a2d8++]){case'0':_0x1f9549[_0x1f9549[_0x43595b[_0x143626(0x10f)]]=0x2]=_0x43595b['zqthz'];continue;case'1':_0x1f9549[_0x1f9549[_0x143626(0x10d)]=0x0]=_0x43595b[_0x143626(0x109)];continue;case'2':_0x1f9549[_0x1f9549[_0x43595b['KIqaE']]=0x3]=_0x43595b[_0x143626(0x11b)];continue;case'3':_0x1f9549[_0x1f9549[_0x43595b[_0x143626(0x110)]]=0x4]=_0x43595b[_0x143626(0x110)];continue;case'4':_0x1f9549[_0x1f9549[_0x43595b[_0x143626(0x118)]]=0x1]=_0x43595b['vPdgO'];continue;}break;}}(CacheFileType||(CacheFileType={})));function _0xeb01(){var _0x9fa370=['14742aDCGKh','KIqaE','1681495lCHQMn','1831352CCQYHC','AUDIO','DOCUMENT','IZMwB','5567960pFNaKM','561245nvVGFv','1374qTyxIN','IMAGE','4906nOgtqm','zqthz','yibUK','VIDEO','35500mtzNbb','3aFFliJ','1|4|0|2|3','OTHER','split','9JfIniE','vPdgO','1684170vPYujA'];_0xeb01=function(){return _0x9fa370;};return _0xeb01();}
function _0x21a8(){var _0x58f919=['7bwUkkO','cDUOp','127640NKdPkH','30BPcYRR','AUDIO','6050bwmtSY','nSdhG','4108951kIIrpT','split','OTHER','DOCUMENT','104789fWyVGI','29984bjnNej','IMAGE','1843736DhKqob','3177THnZWd','1|3|0|2|4','245685efDevN','VIDEO','42PqUiOR'];_0x21a8=function(){return _0x58f919;};return _0x21a8();}(function(_0x28594b,_0x4d85ba){var _0x1424cd=_0x4207,_0x30e019=_0x28594b();while(!![]){try{var _0x544f6e=parseInt(_0x1424cd(0x17f))/0x1+parseInt(_0x1424cd(0x18a))/0x2+parseInt(_0x1424cd(0x187))/0x3*(parseInt(_0x1424cd(0x180))/0x4)+-parseInt(_0x1424cd(0x185))/0x5*(-parseInt(_0x1424cd(0x18b))/0x6)+-parseInt(_0x1424cd(0x188))/0x7*(parseInt(_0x1424cd(0x182))/0x8)+parseInt(_0x1424cd(0x183))/0x9*(parseInt(_0x1424cd(0x18d))/0xa)+-parseInt(_0x1424cd(0x18f))/0xb;if(_0x544f6e===_0x4d85ba)break;else _0x30e019['push'](_0x30e019['shift']());}catch(_0x5077a2){_0x30e019['push'](_0x30e019['shift']());}}}(_0x21a8,0x1f71b));;function _0x4207(_0xad57e3,_0x57c5e0){var _0x21a88a=_0x21a8();return _0x4207=function(_0x42078e,_0x5aa429){_0x42078e=_0x42078e-0x17e;var _0x5e36c2=_0x21a88a[_0x42078e];return _0x5e36c2;},_0x4207(_0xad57e3,_0x57c5e0);}export var CacheFileType;(function(_0x2b9f6d){var _0x18955e=_0x4207,_0x5c9b7f={'NGSMY':_0x18955e(0x184),'gLvUt':_0x18955e(0x18c),'KXqXX':_0x18955e(0x17e),'nSdhG':_0x18955e(0x186),'cDUOp':_0x18955e(0x191)},_0x583cec=_0x5c9b7f['NGSMY'][_0x18955e(0x190)]('|'),_0x37269a=0x0;while(!![]){switch(_0x583cec[_0x37269a++]){case'0':_0x2b9f6d[_0x2b9f6d['AUDIO']=0x2]=_0x5c9b7f['gLvUt'];continue;case'1':_0x2b9f6d[_0x2b9f6d[_0x18955e(0x181)]=0x0]=_0x18955e(0x181);continue;case'2':_0x2b9f6d[_0x2b9f6d[_0x5c9b7f['KXqXX']]=0x3]=_0x5c9b7f['KXqXX'];continue;case'3':_0x2b9f6d[_0x2b9f6d[_0x5c9b7f[_0x18955e(0x18e)]]=0x1]=_0x18955e(0x186);continue;case'4':_0x2b9f6d[_0x2b9f6d[_0x5c9b7f[_0x18955e(0x189)]]=0x4]=_0x5c9b7f[_0x18955e(0x189)];continue;}break;}}(CacheFileType||(CacheFileType={})));

View File

@@ -5,7 +5,7 @@ export declare class SendMsgElementConstructor {
static at(atUid: string, atNtUid: string, atType: AtType, atName: string): SendTextElement;
static reply(msgSeq: string, msgId: string, senderUin: string, senderUinStr: string): SendReplyElement;
static pic(picPath: string, summary?: string, subType?: 0 | 1): Promise<SendPicElement>;
static file(filePath: string, fileName?: string): Promise<SendFileElement>;
static file(filePath: string, fileName?: string, folderId?: string): Promise<SendFileElement>;
static video(filePath: string, fileName?: string, diyThumbPath?: string): Promise<SendVideoElement>;
static ptt(pttPath: string): Promise<SendPttElement>;
static face(faceId: number): SendFaceElement;
@@ -14,4 +14,5 @@ export declare class SendMsgElementConstructor {
static rps(resultId: number | null): SendFaceElement;
static ark(data: any): SendArkElement;
static markdown(content: string): SendMarkdownElement;
static miniapp(): Promise<SendArkElement>;
}

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
function _0x2807(){var _0x4ef20b=['owner','21416CUqYdz','266XXrvJN','6906SRQDUL','admin','1020SLsIQz','787310iZgKPa','52VJDNOy','356IfpTxy','2394297ZFaOgj','150648DakNdJ','lerWW','198ZhjMav','9368YnoGlx','1878kbCktK'];_0x2807=function(){return _0x4ef20b;};return _0x2807();}(function(_0x3ba2fc,_0x196bac){var _0x2bc3ed=_0x54db,_0x437ec3=_0x3ba2fc();while(!![]){try{var _0x1ae6f2=-parseInt(_0x2bc3ed(0xfa))/0x1*(-parseInt(_0x2bc3ed(0x100))/0x2)+-parseInt(_0x2bc3ed(0x105))/0x3*(parseInt(_0x2bc3ed(0xfb))/0x4)+-parseInt(_0x2bc3ed(0xf8))/0x5*(-parseInt(_0x2bc3ed(0x101))/0x6)+-parseInt(_0x2bc3ed(0x104))/0x7*(-parseInt(_0x2bc3ed(0x103))/0x8)+-parseInt(_0x2bc3ed(0xfc))/0x9+parseInt(_0x2bc3ed(0xf9))/0xa+-parseInt(_0x2bc3ed(0xff))/0xb*(-parseInt(_0x2bc3ed(0xfd))/0xc);if(_0x1ae6f2===_0x196bac)break;else _0x437ec3['push'](_0x437ec3['shift']());}catch(_0x3ef279){_0x437ec3['push'](_0x437ec3['shift']());}}}(_0x2807,0x3b4fa));export var GroupMemberRole;function _0x54db(_0x27a480,_0x521d94){var _0x28077e=_0x2807();return _0x54db=function(_0x54dbfd,_0x1f85a7){_0x54dbfd=_0x54dbfd-0xf7;var _0x3d90b3=_0x28077e[_0x54dbfd];return _0x3d90b3;},_0x54db(_0x27a480,_0x521d94);}(function(_0x181feb){var _0x173256=_0x54db,_0x2a759a={'lerWW':'normal','leCkQ':_0x173256(0xf7),'QEoRo':_0x173256(0x102)};_0x181feb[_0x181feb[_0x2a759a[_0x173256(0xfe)]]=0x2]=_0x2a759a[_0x173256(0xfe)],_0x181feb[_0x181feb['admin']=0x3]=_0x2a759a['leCkQ'],_0x181feb[_0x181feb[_0x2a759a['QEoRo']]=0x4]=_0x173256(0x102);}(GroupMemberRole||(GroupMemberRole={})));
function _0xfe4f(){var _0x22563a=['4674344BzCoGA','normal','1726923XgzrOb','930tRRaAc','108684uWMSuA','2880294kCmpnS','895588SNcOVf','10PjCGul','18boBsDG','admin','1738494rWhaLG','1126141AICXmT','7oBwZxm'];_0xfe4f=function(){return _0x22563a;};return _0xfe4f();}function _0x468d(_0x38a3a0,_0x3ed8b9){var _0xfe4fbf=_0xfe4f();return _0x468d=function(_0x468d66,_0x615a1d){_0x468d66=_0x468d66-0x1c7;var _0x10ed28=_0xfe4fbf[_0x468d66];return _0x10ed28;},_0x468d(_0x38a3a0,_0x3ed8b9);}(function(_0x3c123b,_0x23e233){var _0x44d14d=_0x468d,_0x3bc2c7=_0x3c123b();while(!![]){try{var _0x70698=parseInt(_0x44d14d(0x1ce))/0x1+parseInt(_0x44d14d(0x1cd))/0x2+parseInt(_0x44d14d(0x1cb))/0x3*(parseInt(_0x44d14d(0x1c9))/0x4)+parseInt(_0x44d14d(0x1ca))/0x5*(-parseInt(_0x44d14d(0x1c8))/0x6)+-parseInt(_0x44d14d(0x1cf))/0x7*(parseInt(_0x44d14d(0x1d0))/0x8)+-parseInt(_0x44d14d(0x1c7))/0x9*(parseInt(_0x44d14d(0x1d3))/0xa)+parseInt(_0x44d14d(0x1d2))/0xb;if(_0x70698===_0x23e233)break;else _0x3bc2c7['push'](_0x3bc2c7['shift']());}catch(_0x3b1227){_0x3bc2c7['push'](_0x3bc2c7['shift']());}}}(_0xfe4f,0xca390));export var GroupMemberRole;(function(_0x13eed0){var _0x3be934=_0x468d,_0x2818c5={'UcHmz':_0x3be934(0x1d1),'KWBFj':_0x3be934(0x1cc),'RQBHk':'owner'};_0x13eed0[_0x13eed0[_0x2818c5['UcHmz']]=0x2]='normal',_0x13eed0[_0x13eed0[_0x2818c5['KWBFj']]=0x3]=_0x2818c5['KWBFj'],_0x13eed0[_0x13eed0[_0x2818c5['RQBHk']]=0x4]=_0x2818c5['RQBHk'];}(GroupMemberRole||(GroupMemberRole={})));

View File

@@ -1 +1 @@
(function(_0x483221,_0x43ca14){var _0x5d27d8=_0x9e95,_0x41b2bc=_0x483221();while(!![]){try{var _0x25dafa=-parseInt(_0x5d27d8(0xe0))/0x1+-parseInt(_0x5d27d8(0xe2))/0x2*(-parseInt(_0x5d27d8(0xe4))/0x3)+-parseInt(_0x5d27d8(0xe3))/0x4*(-parseInt(_0x5d27d8(0xe8))/0x5)+-parseInt(_0x5d27d8(0xe9))/0x6*(parseInt(_0x5d27d8(0xe1))/0x7)+parseInt(_0x5d27d8(0xe7))/0x8*(-parseInt(_0x5d27d8(0xe6))/0x9)+parseInt(_0x5d27d8(0xe5))/0xa+-parseInt(_0x5d27d8(0xea))/0xb*(-parseInt(_0x5d27d8(0xdf))/0xc);if(_0x25dafa===_0x43ca14)break;else _0x41b2bc['push'](_0x41b2bc['shift']());}catch(_0x222f73){_0x41b2bc['push'](_0x41b2bc['shift']());}}}(_0x222a,0xb7397));export*from'./user';export*from'./group';export*from'./msg';function _0x9e95(_0x189da4,_0x2fda57){var _0x222a1b=_0x222a();return _0x9e95=function(_0x9e959c,_0x316d0b){_0x9e959c=_0x9e959c-0xdf;var _0x3af864=_0x222a1b[_0x9e959c];return _0x3af864;},_0x9e95(_0x189da4,_0x2fda57);}function _0x222a(){var _0x5f0ff9=['16hwytYu','1955105QngILm','4206tcPTFX','810139NYaiaR','276PcAraa','374245pqZHAZ','13601cbIKCi','718424GphXdX','4vCgNYX','6PtVgbD','4454410FaQwMM','3429171Ypsmhg'];_0x222a=function(){return _0x5f0ff9;};return _0x222a();}export*from'./notify';export*from'./cache';export*from'./constructor';
function _0x14bc(){var _0x4f49b1=['40684Mxiqpd','885170fQcQyB','274AUVjnY','1224nzbFan','317043yUpRIR','1156736YNRhjK','977607RkiKna','1281972Nmxudk','424UFlGox'];_0x14bc=function(){return _0x4f49b1;};return _0x14bc();}(function(_0x1e121e,_0x4f001d){var _0x1cfe2d=_0x4473,_0x5e4046=_0x1e121e();while(!![]){try{var _0x20ea89=parseInt(_0x1cfe2d(0x14a))/0x1*(-parseInt(_0x1cfe2d(0x149))/0x2)+-parseInt(_0x1cfe2d(0x14b))/0x3+parseInt(_0x1cfe2d(0x14c))/0x4+parseInt(_0x1cfe2d(0x148))/0x5+parseInt(_0x1cfe2d(0x14e))/0x6+-parseInt(_0x1cfe2d(0x147))/0x7*(parseInt(_0x1cfe2d(0x14f))/0x8)+parseInt(_0x1cfe2d(0x14d))/0x9;if(_0x20ea89===_0x4f001d)break;else _0x5e4046['push'](_0x5e4046['shift']());}catch(_0x4fa7ec){_0x5e4046['push'](_0x5e4046['shift']());}}}(_0x14bc,0x328fa));export*from'./user';export*from'./group';export*from'./msg';function _0x4473(_0x5d5188,_0x1b3cfb){var _0x14bc48=_0x14bc();return _0x4473=function(_0x4473d4,_0x1230a6){_0x4473d4=_0x4473d4-0x147;var _0x34458e=_0x14bc48[_0x4473d4];return _0x34458e;},_0x4473(_0x5d5188,_0x1b3cfb);}export*from'./notify';export*from'./cache';export*from'./constructor';

View File

@@ -13,6 +13,13 @@ export interface KickedOffLineInfo {
kickedType: number;
securityKickedType: number;
}
export interface GetFileListParam {
sortType: number;
fileCount: number;
startIndex: number;
sortOrder: number;
showOnlinedocFolder: number;
}
export declare enum ElementType {
TEXT = 1,
PIC = 2,
@@ -108,6 +115,7 @@ export interface FileElement {
fileSize: string;
picHeight?: number;
picWidth?: number;
folderId?: string;
picThumbPath?: Map<number, string>;
file10MMd5?: string;
fileSha?: string;

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
(function(_0x597755,_0x495d5b){var _0x47ee60=_0x3ba9,_0x53437c=_0x597755();while(!![]){try{var _0x1f8aa0=parseInt(_0x47ee60(0x132))/0x1+parseInt(_0x47ee60(0x11e))/0x2+-parseInt(_0x47ee60(0x126))/0x3+parseInt(_0x47ee60(0x129))/0x4+-parseInt(_0x47ee60(0x121))/0x5*(-parseInt(_0x47ee60(0x134))/0x6)+parseInt(_0x47ee60(0x11d))/0x7+-parseInt(_0x47ee60(0x12f))/0x8;if(_0x1f8aa0===_0x495d5b)break;else _0x53437c['push'](_0x53437c['shift']());}catch(_0x47c442){_0x53437c['push'](_0x53437c['shift']());}}}(_0x4f72,0x36c78));export var GroupNotifyTypes;(function(_0x42092b){var _0x146440=_0x3ba9,_0x2d617d={'WmUTX':'1|0|7|3|2|4|6|5','RshSK':'INVITED_JOIN','FiHVa':'INVITE_ME','PVhaW':_0x146440(0x124),'YYbcU':_0x146440(0x12e),'HBYIM':_0x146440(0x133),'hNtNd':'ADMIN_UNSET_OTHER','XzmFW':_0x146440(0x118),'DPknG':_0x146440(0x12b)},_0x556669=_0x2d617d['WmUTX'][_0x146440(0x136)]('|'),_0x210252=0x0;while(!![]){switch(_0x556669[_0x210252++]){case'0':_0x42092b[_0x42092b[_0x2d617d[_0x146440(0x135)]]=0x4]=_0x2d617d[_0x146440(0x135)];continue;case'1':_0x42092b[_0x42092b[_0x2d617d[_0x146440(0x12c)]]=0x1]=_0x2d617d[_0x146440(0x12c)];continue;case'2':_0x42092b[_0x42092b[_0x2d617d[_0x146440(0x130)]]=0x9]=_0x2d617d['PVhaW'];continue;case'3':_0x42092b[_0x42092b[_0x2d617d[_0x146440(0x11a)]]=0x8]=_0x2d617d[_0x146440(0x11a)];continue;case'4':_0x42092b[_0x42092b[_0x2d617d[_0x146440(0x131)]]=0xb]=_0x2d617d[_0x146440(0x131)];continue;case'5':_0x42092b[_0x42092b[_0x2d617d[_0x146440(0x12a)]]=0xd]=_0x146440(0x127);continue;case'6':_0x42092b[_0x42092b[_0x2d617d[_0x146440(0x117)]]=0xc]=_0x146440(0x118);continue;case'7':_0x42092b[_0x42092b[_0x2d617d['DPknG']]=0x7]=_0x2d617d[_0x146440(0x119)];continue;}break;}}(GroupNotifyTypes||(GroupNotifyTypes={})));function _0x3ba9(_0x363fa6,_0x4a4417){var _0x4f7201=_0x4f72();return _0x3ba9=function(_0x3ba98f,_0x4940ff){_0x3ba98f=_0x3ba98f-0x117;var _0x1598fa=_0x4f7201[_0x3ba98f];return _0x1598fa;},_0x3ba9(_0x363fa6,_0x4a4417);}export var GroupNotifyStatus;(function(_0x2c1a48){var _0x3cd212=_0x3ba9,_0x108bfa={'FFrqV':_0x3cd212(0x11c),'mmKwz':'APPROVE','MdUSB':_0x3cd212(0x122)};_0x2c1a48[_0x2c1a48[_0x3cd212(0x120)]=0x0]=_0x3cd212(0x120),_0x2c1a48[_0x2c1a48[_0x108bfa[_0x3cd212(0x123)]]=0x1]=_0x108bfa[_0x3cd212(0x123)],_0x2c1a48[_0x2c1a48[_0x108bfa[_0x3cd212(0x12d)]]=0x2]=_0x108bfa[_0x3cd212(0x12d)],_0x2c1a48[_0x2c1a48[_0x3cd212(0x122)]=0x3]=_0x108bfa[_0x3cd212(0x11f)];}(GroupNotifyStatus||(GroupNotifyStatus={})));export var GroupRequestOperateTypes;function _0x4f72(){var _0x477d17=['ADMIN_UNSET_OTHER','approve','1363320mSZoUD','hNtNd','JOIN_REQUEST','FiHVa','mmKwz','ADMIN_SET','8323784ecKLSV','PVhaW','HBYIM','163549FiTSob','MEMBER_EXIT','347946uHQutX','RshSK','split','XzmFW','ADMIN_UNSET','DPknG','YYbcU','reject','WAIT_HANDLE','2885211wbBSFD','598888Pbgtzq','MdUSB','IGNORE','20TIqfla','REJECT','FFrqV','KICK_MEMBER','pNUWl','549333IUIRPO'];_0x4f72=function(){return _0x477d17;};return _0x4f72();}(function(_0x2bd852){var _0x407584=_0x3ba9,_0x316115={'pNUWl':_0x407584(0x128),'fzYUx':_0x407584(0x11b)};_0x2bd852[_0x2bd852[_0x316115[_0x407584(0x125)]]=0x1]=_0x316115[_0x407584(0x125)],_0x2bd852[_0x2bd852[_0x407584(0x11b)]=0x2]=_0x316115['fzYUx'];}(GroupRequestOperateTypes||(GroupRequestOperateTypes={})));
(function(_0x19adaa,_0x56a38f){var _0x22c269=_0xe6a3,_0x4d1ed1=_0x19adaa();while(!![]){try{var _0x4f42a1=-parseInt(_0x22c269(0x1b5))/0x1*(parseInt(_0x22c269(0x1b4))/0x2)+parseInt(_0x22c269(0x1b0))/0x3*(parseInt(_0x22c269(0x19f))/0x4)+parseInt(_0x22c269(0x19d))/0x5*(parseInt(_0x22c269(0x195))/0x6)+parseInt(_0x22c269(0x1a4))/0x7*(-parseInt(_0x22c269(0x1b3))/0x8)+parseInt(_0x22c269(0x1a8))/0x9+-parseInt(_0x22c269(0x1ad))/0xa+parseInt(_0x22c269(0x1ae))/0xb;if(_0x4f42a1===_0x56a38f)break;else _0x4d1ed1['push'](_0x4d1ed1['shift']());}catch(_0xb738c2){_0x4d1ed1['push'](_0x4d1ed1['shift']());}}}(_0x2b6d,0x9f8e0));export var GroupNotifyTypes;function _0xe6a3(_0x4af4aa,_0x19eda9){var _0x2b6d36=_0x2b6d();return _0xe6a3=function(_0xe6a34,_0x340ef2){_0xe6a34=_0xe6a34-0x193;var _0x263a9c=_0x2b6d36[_0xe6a34];return _0x263a9c;},_0xe6a3(_0x4af4aa,_0x19eda9);}(function(_0x4847c5){var _0x4d0343=_0xe6a3,_0x174d9b={'PRoCv':'JOIN_REQUEST','curNx':_0x4d0343(0x197),'PpLhV':_0x4d0343(0x1a1),'EZAOo':_0x4d0343(0x196),'DdWWY':_0x4d0343(0x19a),'koXXq':'ADMIN_UNSET'},_0x59ba1c=_0x4d0343(0x1ab)['split']('|'),_0xecf760=0x0;while(!![]){switch(_0x59ba1c[_0xecf760++]){case'0':_0x4847c5[_0x4847c5[_0x4d0343(0x193)]=0xd]=_0x4d0343(0x193);continue;case'1':_0x4847c5[_0x4847c5[_0x174d9b[_0x4d0343(0x19e)]]=0x7]=_0x174d9b[_0x4d0343(0x19e)];continue;case'2':_0x4847c5[_0x4847c5[_0x174d9b[_0x4d0343(0x1b1)]]=0x4]=_0x174d9b[_0x4d0343(0x1b1)];continue;case'3':_0x4847c5[_0x4847c5[_0x174d9b[_0x4d0343(0x19b)]]=0x8]=_0x174d9b[_0x4d0343(0x19b)];continue;case'4':_0x4847c5[_0x4847c5[_0x174d9b[_0x4d0343(0x1af)]]=0x9]='KICK_MEMBER';continue;case'5':_0x4847c5[_0x4847c5[_0x4d0343(0x19a)]=0x1]=_0x174d9b[_0x4d0343(0x19c)];continue;case'6':_0x4847c5[_0x4847c5[_0x4d0343(0x1a9)]=0xc]=_0x174d9b['koXXq'];continue;case'7':_0x4847c5[_0x4847c5[_0x4d0343(0x1a3)]=0xb]='MEMBER_EXIT';continue;}break;}}(GroupNotifyTypes||(GroupNotifyTypes={})));export var GroupNotifyStatus;function _0x2b6d(){var _0x53a903=['approve','REJECT','APPROVE','5482062Heixji','ADMIN_UNSET','LczLZ','5|2|1|3|4|7|6|0','XWKXi','4792400ySuoEl','6268229eyujnE','EZAOo','12vLgAOJ','curNx','HdsbK','280CtpltI','675362GKDhHf','2VSJtMd','ADMIN_UNSET_OTHER','YWYwW','816npOrDS','KICK_MEMBER','INVITED_JOIN','lyfuO','JxSKa','INVITE_ME','PpLhV','DdWWY','30640CFAUGu','PRoCv','108428cimJFa','reject','ADMIN_SET','IGNORE','MEMBER_EXIT','62531OeKwRq'];_0x2b6d=function(){return _0x53a903;};return _0x2b6d();}(function(_0x11adf2){var _0xcfc64b=_0xe6a3,_0x403d8b={'LczLZ':_0xcfc64b(0x1a2),'JxSKa':'WAIT_HANDLE','HdsbK':_0xcfc64b(0x1a7),'lyfuO':_0xcfc64b(0x1a6)};_0x11adf2[_0x11adf2[_0x403d8b[_0xcfc64b(0x1aa)]]=0x0]='IGNORE',_0x11adf2[_0x11adf2[_0x403d8b['JxSKa']]=0x1]=_0x403d8b[_0xcfc64b(0x199)],_0x11adf2[_0x11adf2[_0xcfc64b(0x1a7)]=0x2]=_0x403d8b[_0xcfc64b(0x1b2)],_0x11adf2[_0x11adf2[_0x403d8b[_0xcfc64b(0x198)]]=0x3]=_0x403d8b['lyfuO'];}(GroupNotifyStatus||(GroupNotifyStatus={})));export var GroupRequestOperateTypes;(function(_0xd75311){var _0x325bbd=_0xe6a3,_0x301890={'XWKXi':_0x325bbd(0x1a5),'YWYwW':_0x325bbd(0x1a0)};_0xd75311[_0xd75311[_0x301890[_0x325bbd(0x1ac)]]=0x1]=_0x325bbd(0x1a5),_0xd75311[_0xd75311[_0x301890[_0x325bbd(0x194)]]=0x2]=_0x301890[_0x325bbd(0x194)];}(GroupRequestOperateTypes||(GroupRequestOperateTypes={})));

View File

@@ -9,6 +9,17 @@ export interface BuddyCategoryType {
categroyMbCount: number;
buddyList: User[];
}
export interface ModifyProfileParams {
nick: string;
longNick: string;
sex: Sex;
birthday: {
birthday_year: string;
birthday_month: string;
birthday_day: string;
};
location: any;
}
export interface BuddyProfileLikeReq {
friendUids: string[];
basic: number;

View File

@@ -1 +1 @@
(function(_0x4121c2,_0x3a8bee){var _0x24f3b6=_0x34b7,_0x1faed3=_0x4121c2();while(!![]){try{var _0x5e0c2d=parseInt(_0x24f3b6(0x188))/0x1+parseInt(_0x24f3b6(0x192))/0x2+-parseInt(_0x24f3b6(0x18f))/0x3*(parseInt(_0x24f3b6(0x187))/0x4)+parseInt(_0x24f3b6(0x185))/0x5+-parseInt(_0x24f3b6(0x189))/0x6*(-parseInt(_0x24f3b6(0x186))/0x7)+-parseInt(_0x24f3b6(0x18e))/0x8+parseInt(_0x24f3b6(0x18a))/0x9*(-parseInt(_0x24f3b6(0x190))/0xa);if(_0x5e0c2d===_0x3a8bee)break;else _0x1faed3['push'](_0x1faed3['shift']());}catch(_0x22b0c3){_0x1faed3['push'](_0x1faed3['shift']());}}}(_0x121a,0xe7e53));function _0x34b7(_0x5436d7,_0xb54fe1){var _0x121ac7=_0x121a();return _0x34b7=function(_0x34b7f3,_0x3bc3fc){_0x34b7f3=_0x34b7f3-0x185;var _0xd1cff6=_0x121ac7[_0x34b7f3];return _0xd1cff6;},_0x34b7(_0x5436d7,_0xb54fe1);}export var Sex;function _0x121a(){var _0x14c1fc=['745026OHeVaF','495174cVhLTD','16551QHrdYN','male','VKQTj','female','1297288AiBdRI','4328151mUPdnO','3620XlDDEF','unknown','960396tcgIpt','4199045zncOin','98OUgwUY','4vkINsT'];_0x121a=function(){return _0x14c1fc;};return _0x121a();}(function(_0x447638){var _0x5f25e4=_0x34b7,_0x25373c={'VKQTj':_0x5f25e4(0x18b),'eYdrQ':_0x5f25e4(0x18d)};_0x447638[_0x447638[_0x25373c[_0x5f25e4(0x18c)]]=0x1]=_0x5f25e4(0x18b),_0x447638[_0x447638[_0x25373c['eYdrQ']]=0x2]=_0x25373c['eYdrQ'],_0x447638[_0x447638[_0x5f25e4(0x191)]=0xff]=_0x5f25e4(0x191);}(Sex||(Sex={})));
(function(_0x425abd,_0x1e888d){var _0x176f22=_0x3a30,_0x4eb957=_0x425abd();while(!![]){try{var _0x55b3d4=-parseInt(_0x176f22(0x68))/0x1*(-parseInt(_0x176f22(0x69))/0x2)+-parseInt(_0x176f22(0x6a))/0x3+-parseInt(_0x176f22(0x67))/0x4*(-parseInt(_0x176f22(0x6e))/0x5)+parseInt(_0x176f22(0x6d))/0x6*(parseInt(_0x176f22(0x6f))/0x7)+parseInt(_0x176f22(0x65))/0x8*(-parseInt(_0x176f22(0x6c))/0x9)+parseInt(_0x176f22(0x6b))/0xa*(parseInt(_0x176f22(0x70))/0xb)+-parseInt(_0x176f22(0x71))/0xc;if(_0x55b3d4===_0x1e888d)break;else _0x4eb957['push'](_0x4eb957['shift']());}catch(_0x301dbf){_0x4eb957['push'](_0x4eb957['shift']());}}}(_0x10d9,0xc0c6b));export var Sex;function _0x10d9(){var _0x45bd45=['24TPufBz','female','61524PPefuR','30274SgfYql','2wYyaKc','2551476BRiunw','1069530XXNJIz','2371527aHKuUV','174Ewznuh','135ujiScL','364847LFBbAu','77YfwsAT','3301548qQopWo','male','zQdhj'];_0x10d9=function(){return _0x45bd45;};return _0x10d9();}function _0x3a30(_0x3ec91f,_0x599ffb){var _0x10d945=_0x10d9();return _0x3a30=function(_0x3a3089,_0x1ccb2f){_0x3a3089=_0x3a3089-0x64;var _0x28741a=_0x10d945[_0x3a3089];return _0x28741a;},_0x3a30(_0x3ec91f,_0x599ffb);}(function(_0x59140d){var _0x4927b5=_0x3a30,_0x5741d0={'zQdhj':'male','OFEli':'female','VYGsK':'unknown'};_0x59140d[_0x59140d[_0x4927b5(0x72)]=0x1]=_0x5741d0[_0x4927b5(0x64)],_0x59140d[_0x59140d[_0x5741d0['OFEli']]=0x2]=_0x4927b5(0x66),_0x59140d[_0x59140d[_0x5741d0['VYGsK']]=0xff]=_0x5741d0['VYGsK'];}(Sex||(Sex={})));

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
(function(_0x13a88e,_0x1944b1){var _0x198dbd=_0x4ffc,_0x5ca256=_0x13a88e();while(!![]){try{var _0x56daeb=parseInt(_0x198dbd(0x83))/0x1+-parseInt(_0x198dbd(0x82))/0x2*(-parseInt(_0x198dbd(0x7f))/0x3)+parseInt(_0x198dbd(0x7e))/0x4*(parseInt(_0x198dbd(0x81))/0x5)+parseInt(_0x198dbd(0x80))/0x6*(-parseInt(_0x198dbd(0x7a))/0x7)+-parseInt(_0x198dbd(0x79))/0x8+-parseInt(_0x198dbd(0x7b))/0x9+-parseInt(_0x198dbd(0x7d))/0xa*(-parseInt(_0x198dbd(0x7c))/0xb);if(_0x56daeb===_0x1944b1)break;else _0x5ca256['push'](_0x5ca256['shift']());}catch(_0xb8e0d2){_0x5ca256['push'](_0x5ca256['shift']());}}}(_0x37eb,0x1eb8b));import _0x1319bf from'./wrapper';export*from'./adapters';export*from'./apis';export*from'./entities';export*from'./listeners';function _0x37eb(){var _0x57c55b=['727617qlMurs','10zDAJgz','103468OhYigi','3951rnfBSz','6114xvnsNO','10LhPIzf','326NRtZQp','135744BMQCqH','1008384rXVXgd','1393xJgdoD','122688LmtMUL'];_0x37eb=function(){return _0x57c55b;};return _0x37eb();}export*from'./services';export*as Adapters from'./adapters';export*as APIs from'./apis';export*as Entities from'./entities';export*as Listeners from'./listeners';export*as Services from'./services';export{_0x1319bf as Wrapper};export*as WrapperInterface from'./wrapper';export*as SessionConfig from'./sessionConfig';function _0x4ffc(_0x5d1c44,_0x2e18fb){var _0x37ebf7=_0x37eb();return _0x4ffc=function(_0x4ffc1c,_0x105737){_0x4ffc1c=_0x4ffc1c-0x79;var _0x31e3fb=_0x37ebf7[_0x4ffc1c];return _0x31e3fb;},_0x4ffc(_0x5d1c44,_0x2e18fb);}export{napCatCore}from'./core';
(function(_0x319fd4,_0x36ebc7){var _0x16c645=_0x1d55,_0x598f2d=_0x319fd4();while(!![]){try{var _0x100f53=-parseInt(_0x16c645(0x9e))/0x1+parseInt(_0x16c645(0x9b))/0x2*(-parseInt(_0x16c645(0x9f))/0x3)+parseInt(_0x16c645(0x9d))/0x4+-parseInt(_0x16c645(0x9a))/0x5*(-parseInt(_0x16c645(0x98))/0x6)+-parseInt(_0x16c645(0xa1))/0x7+parseInt(_0x16c645(0x99))/0x8*(parseInt(_0x16c645(0x9c))/0x9)+parseInt(_0x16c645(0xa0))/0xa*(parseInt(_0x16c645(0x97))/0xb);if(_0x100f53===_0x36ebc7)break;else _0x598f2d['push'](_0x598f2d['shift']());}catch(_0x545faa){_0x598f2d['push'](_0x598f2d['shift']());}}}(_0xf987,0x45f64));import _0x3295a6 from'./wrapper';export*from'./adapters';export*from'./apis';export*from'./entities';export*from'./listeners';export*from'./services';export*as Adapters from'./adapters';function _0x1d55(_0x492aeb,_0x2def52){var _0xf987b4=_0xf987();return _0x1d55=function(_0x1d55bf,_0x3366cc){_0x1d55bf=_0x1d55bf-0x97;var _0x289d93=_0xf987b4[_0x1d55bf];return _0x289d93;},_0x1d55(_0x492aeb,_0x2def52);}function _0xf987(){var _0x18f69e=['3798pPzyMr','1107212bUtfwn','488277OidVGU','3ZknyDF','590NcbPFy','3117562glWUQw','123409TtdMvU','2182044MHUfbL','424iilEix','5UPtXMP','209114WOuxTa'];_0xf987=function(){return _0x18f69e;};return _0xf987();}export*as APIs from'./apis';export*as Entities from'./entities';export*as Listeners from'./listeners';export*as Services from'./services';export{_0x3295a6 as Wrapper};export*as WrapperInterface from'./wrapper';export*as SessionConfig from'./sessionConfig';export{napCatCore}from'./core';

View File

@@ -1 +1 @@
var _0x5e2e93=_0x448f;function _0x448f(_0x493fe3,_0x2158c3){var _0x4da3dc=_0x4da3();return _0x448f=function(_0x448f39,_0x23216b){_0x448f39=_0x448f39-0xd3;var _0x2e782a=_0x4da3dc[_0x448f39];return _0x2e782a;},_0x448f(_0x493fe3,_0x2158c3);}(function(_0x545901,_0x38fee5){var _0x20c67b=_0x448f,_0x63a21a=_0x545901();while(!![]){try{var _0x5cadd3=-parseInt(_0x20c67b(0xdf))/0x1*(parseInt(_0x20c67b(0xe0))/0x2)+-parseInt(_0x20c67b(0xd5))/0x3*(-parseInt(_0x20c67b(0xe3))/0x4)+parseInt(_0x20c67b(0xe9))/0x5*(-parseInt(_0x20c67b(0xd9))/0x6)+parseInt(_0x20c67b(0xdd))/0x7*(parseInt(_0x20c67b(0xd3))/0x8)+parseInt(_0x20c67b(0xe7))/0x9+-parseInt(_0x20c67b(0xe2))/0xa*(-parseInt(_0x20c67b(0xda))/0xb)+-parseInt(_0x20c67b(0xde))/0xc*(parseInt(_0x20c67b(0xe1))/0xd);if(_0x5cadd3===_0x38fee5)break;else _0x63a21a['push'](_0x63a21a['shift']());}catch(_0x1ff5ce){_0x63a21a['push'](_0x63a21a['shift']());}}}(_0x4da3,0x3bddc));function _0x4da3(){var _0xab4837=['6wiEJYi','11tXxDCE','onAddBuddyNeedVerify','onBuddyReqChange','370132ZvdxgM','154932njpEFz','23SpwXiz','32206wQeyHu','91nMtVLp','1930920ruWvgf','3284Bdtgzo','onBuddyListChange','onAddMeSettingChanged','onBlockChanged','2927817qaYWJQ','onNickUpdated','2241255PDgwLR','48odfIAn','onBuddyRemarkUpdated','1164BDeXzy','onDoubtBuddyReqChange','onDelBatchBuddyInfos','onCheckBuddySettingResult'];_0x4da3=function(){return _0xab4837;};return _0x4da3();}export class BuddyListener{[_0x5e2e93(0xdb)](_0x135116){}[_0x5e2e93(0xe5)](_0x204191){}['onAvatarUrlUpdated'](_0x44c0e9){}[_0x5e2e93(0xe6)](_0x565b23){}['onBuddyDetailInfoChange'](_0x9110f9){}['onBuddyInfoChange'](_0x370f23){}[_0x5e2e93(0xe4)](_0x5e48c9){}[_0x5e2e93(0xd4)](_0x5b2893){}[_0x5e2e93(0xdc)](_0x2d589f){}['onBuddyReqUnreadCntChange'](_0x343d8c){}[_0x5e2e93(0xd8)](_0x16b0c8){}[_0x5e2e93(0xd7)](_0x4bc251){}[_0x5e2e93(0xd6)](_0x47910f){}['onDoubtBuddyReqUnreadNumChange'](_0x52844f){}[_0x5e2e93(0xe8)](_0xf52363){}['onSmartInfos'](_0x5bb423){}['onSpacePermissionInfos'](_0x586f7b){}}
var _0x23ddb8=_0x2807;function _0x2807(_0x50bec3,_0x3a2f12){var _0x37a4a0=_0x37a4();return _0x2807=function(_0x280733,_0x4ca479){_0x280733=_0x280733-0x166;var _0x2b7184=_0x37a4a0[_0x280733];return _0x2b7184;},_0x2807(_0x50bec3,_0x3a2f12);}(function(_0x57b081,_0xcf01f0){var _0x3ea7e8=_0x2807,_0x359b72=_0x57b081();while(!![]){try{var _0x5a72db=parseInt(_0x3ea7e8(0x16d))/0x1+-parseInt(_0x3ea7e8(0x175))/0x2+-parseInt(_0x3ea7e8(0x168))/0x3*(parseInt(_0x3ea7e8(0x166))/0x4)+-parseInt(_0x3ea7e8(0x16a))/0x5+parseInt(_0x3ea7e8(0x16c))/0x6*(-parseInt(_0x3ea7e8(0x174))/0x7)+parseInt(_0x3ea7e8(0x16b))/0x8+parseInt(_0x3ea7e8(0x178))/0x9;if(_0x5a72db===_0xcf01f0)break;else _0x359b72['push'](_0x359b72['shift']());}catch(_0x25c4bb){_0x359b72['push'](_0x359b72['shift']());}}}(_0x37a4,0x56836));function _0x37a4(){var _0x44b3e3=['onSmartInfos','1981011zGKrTe','onAddBuddyNeedVerify','3052675KXxGXu','2443040qOTpUi','33204EgNaVL','181209BklYDD','onDoubtBuddyReqChange','onDelBatchBuddyInfos','onBuddyReqUnreadCntChange','onBuddyRemarkUpdated','onSpacePermissionInfos','onCheckBuddySettingResult','532IUDSdU','147526DehJlD','onNickUpdated','onBuddyInfoChange','14696892FSrlvj','4nGTPMa'];_0x37a4=function(){return _0x44b3e3;};return _0x37a4();}export class BuddyListener{[_0x23ddb8(0x169)](_0x4921b8){}['onAddMeSettingChanged'](_0x29d5ce){}['onAvatarUrlUpdated'](_0x1e1697){}['onBlockChanged'](_0x326261){}['onBuddyDetailInfoChange'](_0x263d09){}[_0x23ddb8(0x177)](_0x326756){}['onBuddyListChange'](_0x1395e7){}[_0x23ddb8(0x171)](_0x8597ba){}['onBuddyReqChange'](_0x313e76){}[_0x23ddb8(0x170)](_0x3d4ac9){}[_0x23ddb8(0x173)](_0x3f8ad8){}[_0x23ddb8(0x16f)](_0x4dac3c){}[_0x23ddb8(0x16e)](_0x33d605){}['onDoubtBuddyReqUnreadNumChange'](_0x51e2e4){}[_0x23ddb8(0x176)](_0x2004d4){}[_0x23ddb8(0x167)](_0x67b91d){}[_0x23ddb8(0x172)](_0x163501){}}

View File

@@ -1 +1 @@
var _0x2d54cf=_0x2959;(function(_0x167b23,_0x6f61fd){var _0x1cc876=_0x2959,_0x408d95=_0x167b23();while(!![]){try{var _0x5dfea5=-parseInt(_0x1cc876(0x1dc))/0x1+-parseInt(_0x1cc876(0x1e4))/0x2+parseInt(_0x1cc876(0x1e0))/0x3+parseInt(_0x1cc876(0x1df))/0x4+-parseInt(_0x1cc876(0x1e3))/0x5+-parseInt(_0x1cc876(0x1dd))/0x6+parseInt(_0x1cc876(0x1de))/0x7*(parseInt(_0x1cc876(0x1e6))/0x8);if(_0x5dfea5===_0x6f61fd)break;else _0x408d95['push'](_0x408d95['shift']());}catch(_0x3c571f){_0x408d95['push'](_0x408d95['shift']());}}}(_0x1319,0xc2e14));function _0x2959(_0xb20dd4,_0x52156a){var _0x131976=_0x1319();return _0x2959=function(_0x2959e3,_0x23de0a){_0x2959e3=_0x2959e3-0x1dc;var _0x43ae27=_0x131976[_0x2959e3];return _0x43ae27;},_0x2959(_0xb20dd4,_0x52156a);}export class KernelFileAssistantListener{[_0x2d54cf(0x1e2)](..._0x3ab31e){}['onSessionListChanged'](..._0x5e3fe4){}[_0x2d54cf(0x1e1)](..._0x58a28b){}[_0x2d54cf(0x1e5)](..._0x105507){}['onFileSearch'](..._0x49457d){}}function _0x1319(){var _0x28da1b=['1289285OCwuYk','4177734lSXatx','112fpnEqa','6279188lRgRGj','3238230FViXtW','onSessionChanged','onFileStatusChanged','1542615nIvDiJ','1012036voICmL','onFileListChanged','474568sPSKXC'];_0x1319=function(){return _0x28da1b;};return _0x1319();}
var _0x432220=_0x5630;(function(_0xb122d2,_0x46fb6a){var _0x8ddffd=_0x5630,_0x6e08d6=_0xb122d2();while(!![]){try{var _0xe651f2=parseInt(_0x8ddffd(0x10d))/0x1*(parseInt(_0x8ddffd(0x11a))/0x2)+-parseInt(_0x8ddffd(0x113))/0x3+parseInt(_0x8ddffd(0x10c))/0x4*(parseInt(_0x8ddffd(0x119))/0x5)+-parseInt(_0x8ddffd(0x114))/0x6*(parseInt(_0x8ddffd(0x118))/0x7)+-parseInt(_0x8ddffd(0x116))/0x8*(-parseInt(_0x8ddffd(0x10b))/0x9)+-parseInt(_0x8ddffd(0x10e))/0xa*(parseInt(_0x8ddffd(0x10f))/0xb)+parseInt(_0x8ddffd(0x110))/0xc*(parseInt(_0x8ddffd(0x117))/0xd);if(_0xe651f2===_0x46fb6a)break;else _0x6e08d6['push'](_0x6e08d6['shift']());}catch(_0x18ac53){_0x6e08d6['push'](_0x6e08d6['shift']());}}}(_0x5cbd,0x8a0e7));function _0x5cbd(){var _0x10d8d5=['3042964gjsjka','12gjKcjb','70SbsBmZ','1211210BFgWNP','12BXOQDj','onFileStatusChanged','onFileSearch','2102988SWouMz','66YhQlqd','onFileListChanged','51568XMiGBC','17939077EJaUxG','552503dZkVib','5RzvUww','115648yQsBhK','99XRZHir'];_0x5cbd=function(){return _0x10d8d5;};return _0x5cbd();}function _0x5630(_0x5d5623,_0x36bebd){var _0x5cbd15=_0x5cbd();return _0x5630=function(_0x5630c1,_0x26aee4){_0x5630c1=_0x5630c1-0x10b;var _0x50110c=_0x5cbd15[_0x5630c1];return _0x50110c;},_0x5630(_0x5d5623,_0x36bebd);}export class KernelFileAssistantListener{[_0x432220(0x111)](..._0x1ae1b1){}['onSessionListChanged'](..._0x1687e5){}['onSessionChanged'](..._0x4fad0f){}[_0x432220(0x115)](..._0x2cf65c){}[_0x432220(0x112)](..._0x53d0d8){}}

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
var _0x53d0e4=_0x3888;function _0x3888(_0x248fd0,_0x5426cb){var _0x474825=_0x4748();return _0x3888=function(_0x388829,_0x412e9a){_0x388829=_0x388829-0x1f1;var _0x1886b3=_0x474825[_0x388829];return _0x1886b3;},_0x3888(_0x248fd0,_0x5426cb);}function _0x4748(){var _0x41bf40=['282678SlalCz','OnConfirmUnusualDeviceFailed','59108GqGOcl','onQRCodeSessionQuickLoginFailed','7421904lloxjm','2036065dMeRIK','11707443IlCftj','onUserLoggedIn','4qMvWTc','onQRCodeSessionUserScaned','8bSwjQO','9545774dLByrK','onQQLoginNumLimited','275615uCBCEy','onQRCodeLoginPollingStarted','onQRCodeSessionFailed','820vTzfJY','onLogoutSucceed','156edYQcT','onQRCodeGetPicture','onLoginConnecting','onLogoutFailed'];_0x4748=function(){return _0x41bf40;};return _0x4748();}(function(_0x1de079,_0x413380){var _0x427085=_0x3888,_0x2227f8=_0x1de079();while(!![]){try{var _0x25221e=parseInt(_0x427085(0x206))/0x1+parseInt(_0x427085(0x1fb))/0x2*(-parseInt(_0x427085(0x1f5))/0x3)+-parseInt(_0x427085(0x201))/0x4*(-parseInt(_0x427085(0x1fe))/0x5)+parseInt(_0x427085(0x1fd))/0x6+parseInt(_0x427085(0x204))/0x7+parseInt(_0x427085(0x203))/0x8*(parseInt(_0x427085(0x1ff))/0x9)+-parseInt(_0x427085(0x1f3))/0xa*(parseInt(_0x427085(0x1f9))/0xb);if(_0x25221e===_0x413380)break;else _0x2227f8['push'](_0x2227f8['shift']());}catch(_0x4b52f7){_0x2227f8['push'](_0x2227f8['shift']());}}}(_0x4748,0xe58f5));export class LoginListener{['onLoginConnected'](..._0x255e24){}['onLoginDisConnected'](..._0x424005){}[_0x53d0e4(0x1f7)](..._0x4437a5){}[_0x53d0e4(0x1f6)](_0x1689d3){}[_0x53d0e4(0x1f1)](..._0x3c4b1b){}[_0x53d0e4(0x202)](..._0x29ef4a){}['onQRCodeLoginSucceed'](_0x13c2d0){}[_0x53d0e4(0x1f2)](..._0x1d8f62){}['onLoginFailed'](..._0x6c6359){}[_0x53d0e4(0x1f4)](..._0x2e8fee){}[_0x53d0e4(0x1f8)](..._0x646558){}[_0x53d0e4(0x200)](..._0x2b42e7){}[_0x53d0e4(0x1fc)](..._0x3b3707){}['onPasswordLoginFailed'](..._0x4c7b87){}[_0x53d0e4(0x1fa)](..._0x3a2a91){}[_0x53d0e4(0x205)](..._0x2bd96c){}['onLoginState'](..._0x1cb3bb){}}
var _0x526331=_0x48cf;function _0x4366(){var _0x31351d=['onQRCodeSessionUserScaned','2645536nwiURv','4333206PfFywY','onPasswordLoginFailed','OnConfirmUnusualDeviceFailed','3676xSpMzc','25104LqyBpc','onQRCodeLoginPollingStarted','onUserLoggedIn','7765mKaKOu','3fOhoXr','onLoginDisConnected','26956470rjzVNk','onQRCodeSessionQuickLoginFailed','onLoginFailed','onLoginConnecting','1766071BcDeaG','onQRCodeLoginSucceed','onQQLoginNumLimited','721JbzPUH','6479766xeuNsb','onLoginState','onLoginConnected'];_0x4366=function(){return _0x31351d;};return _0x4366();}function _0x48cf(_0x294bd9,_0xf7b11){var _0x4366ba=_0x4366();return _0x48cf=function(_0x48cfbc,_0x36351c){_0x48cfbc=_0x48cfbc-0x166;var _0x39acfc=_0x4366ba[_0x48cfbc];return _0x39acfc;},_0x48cf(_0x294bd9,_0xf7b11);}(function(_0x2b8fc5,_0x4f9216){var _0x599249=_0x48cf,_0x30a1ef=_0x2b8fc5();while(!![]){try{var _0x94f3c6=parseInt(_0x599249(0x173))/0x1+parseInt(_0x599249(0x17b))/0x2*(-parseInt(_0x599249(0x16d))/0x3)+parseInt(_0x599249(0x168))/0x4*(parseInt(_0x599249(0x16c))/0x5)+parseInt(_0x599249(0x17c))/0x6+parseInt(_0x599249(0x176))/0x7*(parseInt(_0x599249(0x169))/0x8)+parseInt(_0x599249(0x177))/0x9+-parseInt(_0x599249(0x16f))/0xa;if(_0x94f3c6===_0x4f9216)break;else _0x30a1ef['push'](_0x30a1ef['shift']());}catch(_0x49d9f0){_0x30a1ef['push'](_0x30a1ef['shift']());}}}(_0x4366,0xe58dc));export class LoginListener{[_0x526331(0x179)](..._0x4c3581){}[_0x526331(0x16e)](..._0x1821f6){}[_0x526331(0x172)](..._0x328165){}['onQRCodeGetPicture'](_0x1a3a16){}[_0x526331(0x16a)](..._0x528305){}[_0x526331(0x17a)](..._0x5383b2){}[_0x526331(0x174)](_0x3d820e){}['onQRCodeSessionFailed'](..._0x5b74b6){}[_0x526331(0x171)](..._0x82ffb3){}['onLogoutSucceed'](..._0x178d23){}['onLogoutFailed'](..._0xc0a9bf){}[_0x526331(0x16b)](..._0x12b31b){}[_0x526331(0x170)](..._0x367aa7){}[_0x526331(0x166)](..._0x28a95f){}[_0x526331(0x167)](..._0x129b85){}[_0x526331(0x175)](..._0x5f5a3b){}[_0x526331(0x178)](..._0x29cc69){}}

View File

@@ -1,4 +1,4 @@
import { RawMessage } from '@/core/entities';
import { ChatType, RawMessage } from '@/core/entities';
export interface OnRichMediaDownloadCompleteParams {
fileModelId: string;
msgElementId: string;
@@ -21,6 +21,24 @@ export interface OnRichMediaDownloadCompleteParams {
userTotalSpacePerDay: unknown | null;
userUsedSpacePerDay: unknown | null;
}
export interface onGroupFileInfoUpdateParamType {
retCode: number;
retMsg: string;
clientWording: string;
isEnd: boolean;
item: Array<any>;
allFileCount: string;
nextIndex: string;
reqId: string;
}
export interface TempOnRecvParams {
sessionType: number;
chatType: ChatType;
peerUid: string;
groupCode: string;
fromNick: string;
sig: string;
}
export interface IKernelMsgListener {
onAddSendMsg(msgRecord: RawMessage): void;
onBroadcastHelperDownloadComplete(broadcastHelperTransNotifyInfo: unknown): void;
@@ -37,7 +55,7 @@ export interface IKernelMsgListener {
onFirstViewGroupGuildMapping(arrayList: unknown): void;
onGrabPasswordRedBag(i2: unknown, str: unknown, i3: unknown, recvdOrder: unknown, msgRecord: unknown): void;
onGroupFileInfoAdd(groupItem: unknown): void;
onGroupFileInfoUpdate(groupFileListResult: unknown): void;
onGroupFileInfoUpdate(groupFileListResult: onGroupFileInfoUpdateParamType): void;
onGroupGuildUpdate(groupGuildNotifyInfo: unknown): void;
onGroupTransferInfoAdd(groupItem: unknown): void;
onGroupTransferInfoUpdate(groupFileListResult: unknown): void;
@@ -79,7 +97,7 @@ export interface IKernelMsgListener {
onSearchGroupFileInfoUpdate(searchGroupFileResult: unknown): void;
onSendMsgError(j2: unknown, contact: unknown, i2: unknown, str: unknown): void;
onSysMsgNotification(i2: unknown, j2: unknown, j3: unknown, arrayList: unknown): void;
onTempChatInfoUpdate(tempChatInfo: unknown): void;
onTempChatInfoUpdate(tempChatInfo: TempOnRecvParams): void;
onUnreadCntAfterFirstView(hashMap: unknown): void;
onUnreadCntUpdate(hashMap: unknown): void;
onUserChannelTabStatusChanged(z: unknown): void;
@@ -111,7 +129,7 @@ export declare class MsgListener implements IKernelMsgListener {
onFirstViewGroupGuildMapping(arrayList: unknown): void;
onGrabPasswordRedBag(i2: unknown, str: unknown, i3: unknown, recvdOrder: unknown, msgRecord: unknown): void;
onGroupFileInfoAdd(groupItem: unknown): void;
onGroupFileInfoUpdate(groupFileListResult: unknown): void;
onGroupFileInfoUpdate(groupFileListResult: onGroupFileInfoUpdateParamType): void;
onGroupGuildUpdate(groupGuildNotifyInfo: unknown): void;
onGroupTransferInfoAdd(groupItem: unknown): void;
onGroupTransferInfoUpdate(groupFileListResult: unknown): void;
@@ -153,7 +171,7 @@ export declare class MsgListener implements IKernelMsgListener {
onSearchGroupFileInfoUpdate(searchGroupFileResult: unknown): void;
onSendMsgError(j2: unknown, contact: unknown, i2: unknown, str: unknown): void;
onSysMsgNotification(i2: unknown, j2: unknown, j3: unknown, arrayList: unknown): void;
onTempChatInfoUpdate(tempChatInfo: unknown): void;
onTempChatInfoUpdate(tempChatInfo: TempOnRecvParams): void;
onUnreadCntAfterFirstView(hashMap: unknown): void;
onUnreadCntUpdate(hashMap: unknown): void;
onUserChannelTabStatusChanged(z: unknown): void;

View File

@@ -1 +1 @@
var _0x2858fb=_0x149e;function _0x2898(){var _0x4f12fa=['onMsgSecurityNotify','onRedTouchChanged','3603048RSwvIn','onRecvUDCFlag','onFeedEventUpdate','onGuildNotificationAbstractUpdate','onUserSecQualityChanged','onTempChatInfoUpdate','onUserChannelTabStatusChanged','onMsgWithRichLinkInfoUpdate','onMsgInfoListAdd','244612aGGHpF','onRichMediaDownloadComplete','onRichMediaProgerssUpdate','onSendMsgError','onGroupGuildUpdate','onMsgRecall','onNtFirstViewMsgSyncEnd','onMsgSettingUpdate','onlineStatusSmallIconDownloadPush','onMsgQRCodeStatusChanged','onEmojiDownloadComplete','onGroupTransferInfoAdd','onCustomWithdrawConfigUpdate','onRecvSysMsg','onRecvGroupGuildFlag','203067MXOKNQ','onLogLevelChanged','onMsgAbstractUpdate','onKickedOffLine','onGroupTransferInfoUpdate','2NYZuzX','onRecvMsgSvrRspTransInfo','onHitCsRelatedEmojiResult','onSysMsgNotification','onRecvS2CMsg','onInputStatusPush','4817340hCfUbo','onEmojiResourceUpdate','onFirstViewGroupGuildMapping','onRichMediaUploadComplete','onImportOldDbProgressUpdate','onBroadcastHelperDownloadComplete','onLineDev','onBroadcastHelperProgerssUpdate','onContactUnreadCntUpdate','20vkWDrS','onGuildInteractiveUpdate','onGroupFileInfoUpdate','onNtMsgSyncEnd','810TfTEua','onNtMsgSyncStart','onRecvOnlineFileMsg','110889TkRyOP','onGroupFileInfoAdd','onFileMsgCome','onUnreadCntAfterFirstView','onlineStatusBigIconDownloadPush','onDraftUpdate','7469BpvuyL','onHitRelatedEmojiResult','onMsgBoxChanged','onMsgEventListUpdate','6170544mOWlqq'];_0x2898=function(){return _0x4f12fa;};return _0x2898();}function _0x149e(_0x5a357b,_0x483adb){var _0x289839=_0x2898();return _0x149e=function(_0x149eda,_0x1c076e){_0x149eda=_0x149eda-0x144;var _0x5cdacf=_0x289839[_0x149eda];return _0x5cdacf;},_0x149e(_0x5a357b,_0x483adb);}(function(_0x221f65,_0x5d0a85){var _0x41a607=_0x149e,_0x49487b=_0x221f65();while(!![]){try{var _0x150708=parseInt(_0x41a607(0x148))/0x1*(parseInt(_0x41a607(0x15c))/0x2)+parseInt(_0x41a607(0x157))/0x3*(parseInt(_0x41a607(0x16b))/0x4)+-parseInt(_0x41a607(0x162))/0x5+-parseInt(_0x41a607(0x17f))/0x6+-parseInt(_0x41a607(0x178))/0x7+parseInt(_0x41a607(0x17c))/0x8+parseInt(_0x41a607(0x172))/0x9*(parseInt(_0x41a607(0x16f))/0xa);if(_0x150708===_0x5d0a85)break;else _0x49487b['push'](_0x49487b['shift']());}catch(_0x1cb5e9){_0x49487b['push'](_0x49487b['shift']());}}}(_0x2898,0xc0385));export class MsgListener{['onAddSendMsg'](_0x5d0e4d){}[_0x2858fb(0x167)](_0x204799){}['onBroadcastHelperProgressUpdate'](_0x5a89a2){}['onChannelFreqLimitInfoUpdate'](_0xdefa11,_0x2ae40b,_0x2b7fce){}[_0x2858fb(0x16a)](_0x258ae2){}[_0x2858fb(0x154)](_0xf71886){}[_0x2858fb(0x177)](_0x303889,_0x5f48b6,_0x43d78d){}[_0x2858fb(0x152)](_0x8acef1){}[_0x2858fb(0x163)](_0x756a19){}[_0x2858fb(0x181)](_0x3d468c){}[_0x2858fb(0x174)](_0x58b740){}['onFirstViewDirectMsgUpdate'](_0x2ccc78){}[_0x2858fb(0x164)](_0x2889fb){}['onGrabPasswordRedBag'](_0x28c2c6,_0x5df018,_0x2b054a,_0x31bc42,_0x24de34){}[_0x2858fb(0x173)](_0xc4855b){}[_0x2858fb(0x16d)](_0x5c5961){}[_0x2858fb(0x14c)](_0x1fae80){}[_0x2858fb(0x153)](_0x59c877){}[_0x2858fb(0x15b)](_0x1e691d){}[_0x2858fb(0x16c)](_0x454c04){}['onGuildMsgAbFlagChanged'](_0x132d16){}[_0x2858fb(0x182)](_0x2e92d2){}[_0x2858fb(0x15e)](_0x350db7){}['onHitEmojiKeywordResult'](_0x14f394){}[_0x2858fb(0x179)](_0x2dc21a){}[_0x2858fb(0x166)](_0x372ee2){}[_0x2858fb(0x161)](_0x45687f){}[_0x2858fb(0x15a)](_0x5c27f8){}[_0x2858fb(0x168)](_0x55505e){}[_0x2858fb(0x158)](_0x5b6a12){}[_0x2858fb(0x159)](_0x19fe0e){}[_0x2858fb(0x17a)](_0x66adef){}['onMsgDelete'](_0x19292d,_0x307c47){}[_0x2858fb(0x17b)](_0x45da85){}[_0x2858fb(0x147)](_0x580590){}['onMsgInfoListUpdate'](_0x5e7f7c){}[_0x2858fb(0x151)](_0x5d78df){}[_0x2858fb(0x14d)](_0x251d43,_0xb13e27,_0xd59f53){}[_0x2858fb(0x17d)](_0x43760d){}[_0x2858fb(0x14f)](_0x3b18c2){}[_0x2858fb(0x14e)](){}[_0x2858fb(0x16e)](){}[_0x2858fb(0x170)](){}['onReadFeedEventUpdate'](_0x424f95){}[_0x2858fb(0x156)](_0x14e8c3){}['onRecvMsg'](_0xfcdc9f){}[_0x2858fb(0x15d)](_0x461def,_0x5c1d67,_0xe6bad7,_0x5ed7e8,_0xe71919,_0x42eb9f){}[_0x2858fb(0x171)](_0x422bd0){}[_0x2858fb(0x160)](_0x5b4187){}[_0x2858fb(0x155)](_0x3aa34c){}[_0x2858fb(0x180)](_0x31f900){}[_0x2858fb(0x149)](_0x576141){}[_0x2858fb(0x14a)](_0x453f3c){}[_0x2858fb(0x165)](_0x1f0452){}['onSearchGroupFileInfoUpdate'](_0x288219){}[_0x2858fb(0x14b)](_0x319f4a,_0x155e36,_0xa3b6c5,_0xa577b0){}[_0x2858fb(0x15f)](_0x516865,_0x207065,_0x45fddd,_0x4d8d00){}[_0x2858fb(0x144)](_0x228f4f){}[_0x2858fb(0x175)](_0xd5609e){}['onUnreadCntUpdate'](_0x415bd2){}[_0x2858fb(0x145)](_0x11d029){}['onUserOnlineStatusChanged'](_0x5c82b2){}['onUserTabStatusChanged'](_0x3389d0){}[_0x2858fb(0x176)](_0x481161,_0x5edf86,_0x5f2eee){}[_0x2858fb(0x150)](_0x3e6399,_0x48247,_0x5bf46a){}[_0x2858fb(0x183)](..._0x51c9e2){}[_0x2858fb(0x146)](..._0x212a11){}[_0x2858fb(0x17e)](..._0x23cf3d){}[_0x2858fb(0x169)](..._0x1c93c3){}}
var _0x21255e=_0x30d1;(function(_0x59a79d,_0x571cd9){var _0x5a1aa6=_0x30d1,_0x33b426=_0x59a79d();while(!![]){try{var _0x2e4842=parseInt(_0x5a1aa6(0x135))/0x1*(parseInt(_0x5a1aa6(0x156))/0x2)+-parseInt(_0x5a1aa6(0x14c))/0x3+parseInt(_0x5a1aa6(0x164))/0x4*(parseInt(_0x5a1aa6(0x138))/0x5)+parseInt(_0x5a1aa6(0x169))/0x6+parseInt(_0x5a1aa6(0x146))/0x7*(parseInt(_0x5a1aa6(0x145))/0x8)+-parseInt(_0x5a1aa6(0x150))/0x9*(-parseInt(_0x5a1aa6(0x132))/0xa)+parseInt(_0x5a1aa6(0x142))/0xb*(-parseInt(_0x5a1aa6(0x15a))/0xc);if(_0x2e4842===_0x571cd9)break;else _0x33b426['push'](_0x33b426['shift']());}catch(_0x2a51bb){_0x33b426['push'](_0x33b426['shift']());}}}(_0x175c,0xcc5de));function _0x30d1(_0x3bedf3,_0x3d4d72){var _0x175c14=_0x175c();return _0x30d1=function(_0x30d15f,_0x7edf30){_0x30d15f=_0x30d15f-0x132;var _0x3ddc2f=_0x175c14[_0x30d15f];return _0x3ddc2f;},_0x30d1(_0x3bedf3,_0x3d4d72);}function _0x175c(){var _0x367472=['onGroupFileInfoUpdate','onBroadcastHelperProgressUpdate','onGroupTransferInfoUpdate','onFirstViewGroupGuildMapping','onKickedOffLine','50gCCqMl','onHitRelatedEmojiResult','onContactUnreadCntUpdate','onHitCsRelatedEmojiResult','272376SDgyzZ','onGroupFileInfoAdd','onMsgQRCodeStatusChanged','onSysMsgNotification','onMsgRecall','onRichMediaUploadComplete','onNtMsgSyncEnd','onUserTabStatusChanged','onAddSendMsg','onBroadcastHelperDownloadComplete','4340BnOsvo','onNtMsgSyncStart','onMsgInfoListAdd','onEmojiDownloadComplete','onMsgBoxChanged','1588962guQesa','onLineDev','onImportOldDbProgressUpdate','onSendMsgError','onMsgDelete','onMsgSecurityNotify','onMsgWithRichLinkInfoUpdate','onLogLevelChanged','onlineStatusSmallIconDownloadPush','onDraftUpdate','1461540FidovA','onChannelFreqLimitInfoUpdate','onCustomWithdrawConfigUpdate','37873UaOCUb','onGuildNotificationAbstractUpdate','onUserSecQualityChanged','2245YxUFwH','onGroupGuildUpdate','onRecvGroupGuildFlag','onTempChatInfoUpdate','onlineStatusBigIconDownloadPush','onGrabPasswordRedBag','onFirstViewDirectMsgUpdate','onSearchGroupFileInfoUpdate','onReadFeedEventUpdate','onRecvMsg','572TuOXFZ','onUserOnlineStatusChanged','onRichMediaDownloadComplete','8thbYdy','2827034geYcfN','onGuildMsgAbFlagChanged','onHitEmojiKeywordResult','onMsgEventListUpdate','onUnreadCntAfterFirstView','onRecvMsgSvrRspTransInfo','3325125HahkRg','onUnreadCntUpdate','onMsgAbstractUpdate','onUserChannelTabStatusChanged','63ErZRMB'];_0x175c=function(){return _0x367472;};return _0x175c();}export class MsgListener{[_0x21255e(0x162)](_0x3d50d5){}[_0x21255e(0x163)](_0x416aa9){}[_0x21255e(0x152)](_0x21aa64){}[_0x21255e(0x133)](_0x19730a,_0xb51ad6,_0x5c0c75){}[_0x21255e(0x158)](_0x126d39){}[_0x21255e(0x134)](_0x2e406b){}[_0x21255e(0x172)](_0x3698fa,_0x5a26a0,_0x382537){}[_0x21255e(0x167)](_0x499be6){}['onEmojiResourceUpdate'](_0x503324){}['onFeedEventUpdate'](_0x3070be){}['onFileMsgCome'](_0x5b298b){}[_0x21255e(0x13e)](_0x2390f5){}[_0x21255e(0x154)](_0x13953c){}[_0x21255e(0x13d)](_0x1b13f3,_0x29a0d5,_0x250a09,_0xf5c4a0,_0xeaefa7){}[_0x21255e(0x15b)](_0x1bcde2){}[_0x21255e(0x151)](_0x48465c){}[_0x21255e(0x139)](_0x6d9141){}['onGroupTransferInfoAdd'](_0x3cd6e2){}[_0x21255e(0x153)](_0x440494){}['onGuildInteractiveUpdate'](_0x3ac87b){}[_0x21255e(0x147)](_0x998c01){}[_0x21255e(0x136)](_0x4b4bab){}[_0x21255e(0x159)](_0x4c781f){}[_0x21255e(0x148)](_0x50fef1){}[_0x21255e(0x157)](_0x55eefc){}[_0x21255e(0x16b)](_0x2764ca){}['onInputStatusPush'](_0x45bef5){}[_0x21255e(0x155)](_0x35c209){}[_0x21255e(0x16a)](_0x10f1b0){}[_0x21255e(0x170)](_0x42b5c2){}[_0x21255e(0x14e)](_0x2c7e1f){}[_0x21255e(0x168)](_0x3ecb99){}[_0x21255e(0x16d)](_0x37e8ce,_0x312fdc){}[_0x21255e(0x149)](_0x253c04){}[_0x21255e(0x166)](_0x3f7ecc){}['onMsgInfoListUpdate'](_0x48ff13){}[_0x21255e(0x15c)](_0x1cafe7){}[_0x21255e(0x15e)](_0x24ed23,_0x27184c,_0x22f5e3){}[_0x21255e(0x16e)](_0x36a8e7){}['onMsgSettingUpdate'](_0x1bc59e){}['onNtFirstViewMsgSyncEnd'](){}[_0x21255e(0x160)](){}[_0x21255e(0x165)](){}[_0x21255e(0x140)](_0x4e7a93){}[_0x21255e(0x13a)](_0x2cf2b9){}[_0x21255e(0x141)](_0x2f3e29){}[_0x21255e(0x14b)](_0x3dfbcc,_0xe19862,_0x296b5a,_0x1029ef,_0x47ee94,_0x1fb5b8){}['onRecvOnlineFileMsg'](_0x25564f){}['onRecvS2CMsg'](_0x42fbb4){}['onRecvSysMsg'](_0x5aed40){}['onRecvUDCFlag'](_0x3d9f4b){}[_0x21255e(0x144)](_0x15e17d){}['onRichMediaProgerssUpdate'](_0x508fef){}[_0x21255e(0x15f)](_0x1b7e7a){}[_0x21255e(0x13f)](_0x313088){}[_0x21255e(0x16c)](_0x53db97,_0x1136ec,_0x38b6ff,_0x4b9841){}[_0x21255e(0x15d)](_0xb4e8dd,_0x195cd1,_0x216fab,_0x233eec){}[_0x21255e(0x13b)](_0x2e9974){}[_0x21255e(0x14a)](_0x49c8b7){}[_0x21255e(0x14d)](_0x4d24bf){}[_0x21255e(0x14f)](_0x35f0e5){}[_0x21255e(0x143)](_0x45dc08){}[_0x21255e(0x161)](_0x230374){}[_0x21255e(0x13c)](_0x553bcc,_0x27bd33,_0x1f1cdd){}[_0x21255e(0x171)](_0x1e52c7,_0x48a123,_0x247d63){}[_0x21255e(0x137)](..._0x4a7cca){}[_0x21255e(0x16f)](..._0xfd2679){}['onRedTouchChanged'](..._0x55bffc){}['onBroadcastHelperProgerssUpdate'](..._0x52c509){}}

View File

@@ -1 +1 @@
var _0x26cb96=_0x4b2f;(function(_0x2e111b,_0x56d2e0){var _0x258dd7=_0x4b2f,_0x50e740=_0x2e111b();while(!![]){try{var _0x4e5c7f=parseInt(_0x258dd7(0x1d0))/0x1+parseInt(_0x258dd7(0x1d7))/0x2*(-parseInt(_0x258dd7(0x1cc))/0x3)+-parseInt(_0x258dd7(0x1cf))/0x4+-parseInt(_0x258dd7(0x1d1))/0x5*(parseInt(_0x258dd7(0x1cd))/0x6)+-parseInt(_0x258dd7(0x1cb))/0x7+-parseInt(_0x258dd7(0x1d3))/0x8+-parseInt(_0x258dd7(0x1d2))/0x9*(-parseInt(_0x258dd7(0x1ce))/0xa);if(_0x4e5c7f===_0x56d2e0)break;else _0x50e740['push'](_0x50e740['shift']());}catch(_0x44e4b3){_0x50e740['push'](_0x50e740['shift']());}}}(_0x3349,0xacf85));function _0x4b2f(_0x1b7573,_0x142190){var _0x334930=_0x3349();return _0x4b2f=function(_0x4b2f97,_0x2e6988){_0x4b2f97=_0x4b2f97-0x1cb;var _0x3a02ed=_0x334930[_0x4b2f97];return _0x3a02ed;},_0x4b2f(_0x1b7573,_0x142190);}export class ProfileListener{[_0x26cb96(0x1d6)](..._0x1fb431){}[_0x26cb96(0x1d4)](_0x4fe7ab){}['onStatusUpdate'](..._0x57a2f6){}['onSelfStatusChanged'](..._0x2c7701){}[_0x26cb96(0x1d5)](..._0x524af8){}}function _0x3349(){var _0x4cf5d3=['89928DsSQwf','9214048tiErhG','onProfileDetailInfoChanged','onStrangerRemarkChanged','onProfileSimpleChanged','34084ACQMRl','1566600ZcQina','111cERRNu','6iykDXv','3070QKDabH','1213032JHXqqH','997818PvComQ','5237545NyEzET'];_0x3349=function(){return _0x4cf5d3;};return _0x3349();}
var _0x52a86e=_0x3a24;function _0x5859(){var _0x187b4a=['552951izkIIU','302KTTKop','3361407bgfOrT','onStatusUpdate','14037AEXuDX','26680760qWvTXa','onProfileSimpleChanged','9wiVvAa','onProfileDetailInfoChanged','3317202XuoRDq','143064dBKhQa','onStrangerRemarkChanged','onSelfStatusChanged','2529700rBrXpY'];_0x5859=function(){return _0x187b4a;};return _0x5859();}function _0x3a24(_0x10a6ed,_0x5373f0){var _0x585933=_0x5859();return _0x3a24=function(_0x3a24e6,_0x5f38b6){_0x3a24e6=_0x3a24e6-0x109;var _0x33def0=_0x585933[_0x3a24e6];return _0x33def0;},_0x3a24(_0x10a6ed,_0x5373f0);}(function(_0x1325fd,_0x33e1d6){var _0x198453=_0x3a24,_0x1725fc=_0x1325fd();while(!![]){try{var _0x9de9a3=-parseInt(_0x198453(0x10b))/0x1+-parseInt(_0x198453(0x10c))/0x2*(parseInt(_0x198453(0x10f))/0x3)+-parseInt(_0x198453(0x115))/0x4+-parseInt(_0x198453(0x10a))/0x5+-parseInt(_0x198453(0x114))/0x6+-parseInt(_0x198453(0x10d))/0x7+-parseInt(_0x198453(0x110))/0x8*(-parseInt(_0x198453(0x112))/0x9);if(_0x9de9a3===_0x33e1d6)break;else _0x1725fc['push'](_0x1725fc['shift']());}catch(_0xb8c588){_0x1725fc['push'](_0x1725fc['shift']());}}}(_0x5859,0x7a469));export class ProfileListener{[_0x52a86e(0x111)](..._0x1cfbf4){}[_0x52a86e(0x113)](_0x35e246){}[_0x52a86e(0x10e)](..._0x522d3c){}[_0x52a86e(0x109)](..._0x55f3aa){}[_0x52a86e(0x116)](..._0x28f2b9){}}

View File

@@ -1 +1 @@
var _0x380b2e=_0x7275;(function(_0x46856b,_0x5d45f3){var _0xea48c3=_0x7275,_0x16bf3f=_0x46856b();while(!![]){try{var _0x5ed2b9=-parseInt(_0xea48c3(0x195))/0x1*(-parseInt(_0xea48c3(0x198))/0x2)+-parseInt(_0xea48c3(0x196))/0x3+-parseInt(_0xea48c3(0x19a))/0x4*(-parseInt(_0xea48c3(0x19b))/0x5)+parseInt(_0xea48c3(0x197))/0x6+-parseInt(_0xea48c3(0x1a0))/0x7*(parseInt(_0xea48c3(0x199))/0x8)+-parseInt(_0xea48c3(0x19f))/0x9*(parseInt(_0xea48c3(0x19e))/0xa)+parseInt(_0xea48c3(0x193))/0xb*(parseInt(_0xea48c3(0x19d))/0xc);if(_0x5ed2b9===_0x5d45f3)break;else _0x16bf3f['push'](_0x16bf3f['shift']());}catch(_0x312df4){_0x16bf3f['push'](_0x16bf3f['shift']());}}}(_0x37bd,0xe7b2d));export class KernelRobotListener{[_0x380b2e(0x19c)](..._0x119c83){}['onRobotListChanged'](..._0x3fa342){}[_0x380b2e(0x194)](..._0x24d8fb){}}function _0x7275(_0x25247f,_0x7d1c0a){var _0x37bd87=_0x37bd();return _0x7275=function(_0x7275f4,_0x2adac6){_0x7275f4=_0x7275f4-0x193;var _0x467203=_0x37bd87[_0x7275f4];return _0x467203;},_0x7275(_0x25247f,_0x7d1c0a);}function _0x37bd(){var _0x31a4f8=['8870477GAyoME','onRobotProfileChanged','9233EFgZyo','809331DKVFst','3552468mYlSbP','10MwKOMB','24sIUkSQ','2369356KwWFyY','5bCOSNU','onRobotFriendListChanged','24SxCVXO','9656140PbhRqz','9xfBFib','1537592ungsWh'];_0x37bd=function(){return _0x31a4f8;};return _0x37bd();}
var _0x49d835=_0x4448;(function(_0x2b88d1,_0x165906){var _0x250d41=_0x4448,_0x325332=_0x2b88d1();while(!![]){try{var _0x1fd45a=parseInt(_0x250d41(0x67))/0x1+parseInt(_0x250d41(0x65))/0x2*(-parseInt(_0x250d41(0x66))/0x3)+-parseInt(_0x250d41(0x6a))/0x4+parseInt(_0x250d41(0x6b))/0x5*(-parseInt(_0x250d41(0x69))/0x6)+-parseInt(_0x250d41(0x6e))/0x7+parseInt(_0x250d41(0x68))/0x8*(parseInt(_0x250d41(0x6f))/0x9)+parseInt(_0x250d41(0x6d))/0xa;if(_0x1fd45a===_0x165906)break;else _0x325332['push'](_0x325332['shift']());}catch(_0x29e51e){_0x325332['push'](_0x325332['shift']());}}}(_0xa9c1,0xd5a32));export class KernelRobotListener{['onRobotFriendListChanged'](..._0x59bf7e){}[_0x49d835(0x70)](..._0x2f218c){}[_0x49d835(0x6c)](..._0x454e6d){}}function _0x4448(_0x5cdbae,_0x291bea){var _0xa9c1f9=_0xa9c1();return _0x4448=function(_0x444844,_0x47f211){_0x444844=_0x444844-0x65;var _0x421a11=_0xa9c1f9[_0x444844];return _0x421a11;},_0x4448(_0x5cdbae,_0x291bea);}function _0xa9c1(){var _0x199ed0=['12MkRDKe','200143diImGs','5313584ajUqSY','2202PwMihz','5751848kYsTuG','3715OdHEAk','onRobotProfileChanged','32992000yFegMp','5454428GBdqCG','9qPZjbR','onRobotListChanged','399318XTbeMT'];_0xa9c1=function(){return _0x199ed0;};return _0xa9c1();}

View File

@@ -1 +1 @@
var _0x5a32ff=_0x74ad;function _0x74ad(_0x15db47,_0x5f3d55){var _0x48ded2=_0x48de();return _0x74ad=function(_0x74ad61,_0x2f841a){_0x74ad61=_0x74ad61-0x160;var _0x30326b=_0x48ded2[_0x74ad61];return _0x30326b;},_0x74ad(_0x15db47,_0x5f3d55);}(function(_0x26569f,_0x3457cb){var _0x3d8d94=_0x74ad,_0x18f6ac=_0x26569f();while(!![]){try{var _0x30ea5c=-parseInt(_0x3d8d94(0x169))/0x1+-parseInt(_0x3d8d94(0x163))/0x2*(parseInt(_0x3d8d94(0x16b))/0x3)+-parseInt(_0x3d8d94(0x160))/0x4*(parseInt(_0x3d8d94(0x162))/0x5)+-parseInt(_0x3d8d94(0x16d))/0x6+parseInt(_0x3d8d94(0x166))/0x7+-parseInt(_0x3d8d94(0x16f))/0x8*(-parseInt(_0x3d8d94(0x161))/0x9)+parseInt(_0x3d8d94(0x167))/0xa;if(_0x30ea5c===_0x3457cb)break;else _0x18f6ac['push'](_0x18f6ac['shift']());}catch(_0x2facfe){_0x18f6ac['push'](_0x18f6ac['shift']());}}}(_0x48de,0x47c59));export class SessionListener{[_0x5a32ff(0x16e)](_0x591132){}[_0x5a32ff(0x16c)](_0x204426){}[_0x5a32ff(0x164)](_0x3fcd96){}[_0x5a32ff(0x168)](_0x120deb){}[_0x5a32ff(0x165)](_0x2fd2d4){}[_0x5a32ff(0x16a)](_0x516233){}}function _0x48de(){var _0x18e587=['4206MCleuy','onSessionInitComplete','onUserOnlineResult','2862622GfHEsS','10028360cxAMAG','onOpentelemetryInit','326138wUIJdw','onGetSelfTinyId','639takDjq','onGProSessionCreate','3459750csAJuA','onNTSessionCreate','4072axeXoO','472DEahzC','7569MIUHeM','8270tgntiD'];_0x48de=function(){return _0x18e587;};return _0x48de();}
function _0x137f(){var _0x5b5ac1=['onGProSessionCreate','16432196uBNnST','onGetSelfTinyId','526083jbVirj','onSessionInitComplete','29300apFeTq','onOpentelemetryInit','35DfXEFj','153lxykfk','3hdoxNU','1512360pbfAch','onNTSessionCreate','1062602KnMDAr','627930OlCDtd','6mFAnvE','998376Dopkgw'];_0x137f=function(){return _0x5b5ac1;};return _0x137f();}function _0x1dec(_0xbc24ba,_0x580a2e){var _0x137fcb=_0x137f();return _0x1dec=function(_0x1decc4,_0x3e3a43){_0x1decc4=_0x1decc4-0xb8;var _0x4250a7=_0x137fcb[_0x1decc4];return _0x4250a7;},_0x1dec(_0xbc24ba,_0x580a2e);}var _0x57fa79=_0x1dec;(function(_0x274a00,_0x4108e1){var _0x375dae=_0x1dec,_0x28c3f2=_0x274a00();while(!![]){try{var _0x15ef38=parseInt(_0x375dae(0xc2))/0x1+parseInt(_0x375dae(0xbb))/0x2*(-parseInt(_0x375dae(0xb8))/0x3)+-parseInt(_0x375dae(0xb9))/0x4+-parseInt(_0x375dae(0xbc))/0x5*(parseInt(_0x375dae(0xbd))/0x6)+-parseInt(_0x375dae(0xc6))/0x7*(parseInt(_0x375dae(0xbe))/0x8)+-parseInt(_0x375dae(0xc7))/0x9*(-parseInt(_0x375dae(0xc4))/0xa)+parseInt(_0x375dae(0xc0))/0xb;if(_0x15ef38===_0x4108e1)break;else _0x28c3f2['push'](_0x28c3f2['shift']());}catch(_0x283e4f){_0x28c3f2['push'](_0x28c3f2['shift']());}}}(_0x137f,0x6448f));export class SessionListener{[_0x57fa79(0xba)](_0x396558){}[_0x57fa79(0xbf)](_0x5d314d){}[_0x57fa79(0xc3)](_0x41451a){}[_0x57fa79(0xc5)](_0x1dc25c){}['onUserOnlineResult'](_0x5bbbfa){}[_0x57fa79(0xc1)](_0x269641){}}

View File

@@ -1 +1 @@
function _0x2e13(_0x5afad2,_0x2309b4){var _0x153d3a=_0x153d();return _0x2e13=function(_0x2e1331,_0x9d9577){_0x2e1331=_0x2e1331-0x1ab;var _0xa40500=_0x153d3a[_0x2e1331];return _0xa40500;},_0x2e13(_0x5afad2,_0x2309b4);}var _0x334134=_0x2e13;(function(_0x5e4d26,_0x20c95d){var _0x353371=_0x2e13,_0x4ecb59=_0x5e4d26();while(!![]){try{var _0x49ff82=-parseInt(_0x353371(0x1b8))/0x1*(-parseInt(_0x353371(0x1ae))/0x2)+parseInt(_0x353371(0x1ac))/0x3*(-parseInt(_0x353371(0x1b4))/0x4)+-parseInt(_0x353371(0x1b2))/0x5*(-parseInt(_0x353371(0x1ab))/0x6)+parseInt(_0x353371(0x1b9))/0x7*(parseInt(_0x353371(0x1bb))/0x8)+parseInt(_0x353371(0x1b6))/0x9+parseInt(_0x353371(0x1ad))/0xa*(-parseInt(_0x353371(0x1ba))/0xb)+parseInt(_0x353371(0x1b0))/0xc*(-parseInt(_0x353371(0x1af))/0xd);if(_0x49ff82===_0x20c95d)break;else _0x4ecb59['push'](_0x4ecb59['shift']());}catch(_0x3474fd){_0x4ecb59['push'](_0x4ecb59['shift']());}}}(_0x153d,0x5846f));export class StorageCleanListener{[_0x334134(0x1b5)](_0x5d18ab){}[_0x334134(0x1b1)](_0x992fa0){}[_0x334134(0x1b7)](_0x1eb7b9){}['onFinishScan'](_0x199f50){}[_0x334134(0x1b3)](_0x47421a){}}function _0x153d(){var _0x511b88=['onScanCacheProgressChanged','2289065lacNos','onChatCleanDone','4FUJdrq','onCleanCacheProgressChanged','5311197RxWdMX','onCleanCacheStorageChanged','6883hzvBHB','925827UPKtiz','165XxHIUf','8RJLUur','6XnavMx','322872uHbHix','20500vYoIhI','38UJQotq','91wjdCUI','1390332CRTIIM'];_0x153d=function(){return _0x511b88;};return _0x153d();}
var _0x43d177=_0x4364;(function(_0x466b15,_0x1c300e){var _0xd5d638=_0x4364,_0x1770dc=_0x466b15();while(!![]){try{var _0x1ac55a=-parseInt(_0xd5d638(0xec))/0x1*(-parseInt(_0xd5d638(0xf0))/0x2)+parseInt(_0xd5d638(0xeb))/0x3*(-parseInt(_0xd5d638(0xef))/0x4)+-parseInt(_0xd5d638(0xea))/0x5*(parseInt(_0xd5d638(0xf1))/0x6)+-parseInt(_0xd5d638(0xe9))/0x7*(parseInt(_0xd5d638(0xf2))/0x8)+-parseInt(_0xd5d638(0xe7))/0x9*(-parseInt(_0xd5d638(0xee))/0xa)+parseInt(_0xd5d638(0xe6))/0xb*(-parseInt(_0xd5d638(0xed))/0xc)+parseInt(_0xd5d638(0xe5))/0xd*(parseInt(_0xd5d638(0xe3))/0xe);if(_0x1ac55a===_0x1c300e)break;else _0x1770dc['push'](_0x1770dc['shift']());}catch(_0x497d5f){_0x1770dc['push'](_0x1770dc['shift']());}}}(_0x1d79,0x32bb2));function _0x4364(_0x2c7c68,_0x274ecf){var _0x1d79c5=_0x1d79();return _0x4364=function(_0x4364a0,_0x4c3c10){_0x4364a0=_0x4364a0-0xe2;var _0x118370=_0x1d79c5[_0x4364a0];return _0x118370;},_0x4364(_0x2c7c68,_0x274ecf);}function _0x1d79(){var _0x33aa80=['onScanCacheProgressChanged','25064uIIAZG','11qxTSxE','2718DrPcZE','onFinishScan','10073tZByaD','18500PuqmDn','1143642UyLdXX','141974DKyYUe','4519344hnFYVE','3010qbVoLc','4pRPJYb','2psJRYB','6ktsnbT','2144IjbEkA','onCleanCacheStorageChanged','8148UwQXzV'];_0x1d79=function(){return _0x33aa80;};return _0x1d79();}export class StorageCleanListener{['onCleanCacheProgressChanged'](_0x59479e){}[_0x43d177(0xe4)](_0x15a624){}[_0x43d177(0xe2)](_0x3aeee6){}[_0x43d177(0xe8)](_0x411fed){}['onChatCleanDone'](_0x581957){}}

View File

@@ -1 +1 @@
(function(_0x22508b,_0x5ebe54){var _0x3dc377=_0x2a4f,_0x18f38f=_0x22508b();while(!![]){try{var _0x95abcd=-parseInt(_0x3dc377(0x1ce))/0x1+-parseInt(_0x3dc377(0x1d5))/0x2*(parseInt(_0x3dc377(0x1d2))/0x3)+-parseInt(_0x3dc377(0x1d0))/0x4*(parseInt(_0x3dc377(0x1cf))/0x5)+parseInt(_0x3dc377(0x1d7))/0x6*(parseInt(_0x3dc377(0x1d3))/0x7)+-parseInt(_0x3dc377(0x1d1))/0x8+parseInt(_0x3dc377(0x1d6))/0x9+parseInt(_0x3dc377(0x1d4))/0xa;if(_0x95abcd===_0x5ebe54)break;else _0x18f38f['push'](_0x18f38f['shift']());}catch(_0x23879b){_0x18f38f['push'](_0x18f38f['shift']());}}}(_0x2a5a,0x2587f));export*from'./NodeIKernelSessionListener';export*from'./NodeIKernelLoginListener';export*from'./NodeIKernelMsgListener';export*from'./NodeIKernelGroupListener';export*from'./NodeIKernelBuddyListener';export*from'./NodeIKernelProfileListener';export*from'./NodeIKernelRobotListener';export*from'./NodeIKernelTicketListener';function _0x2a4f(_0x3fd26c,_0x2fca98){var _0x2a5a74=_0x2a5a();return _0x2a4f=function(_0x2a4f82,_0x18a64f){_0x2a4f82=_0x2a4f82-0x1ce;var _0x225e81=_0x2a5a74[_0x2a4f82];return _0x225e81;},_0x2a4f(_0x3fd26c,_0x2fca98);}export*from'./NodeIKernelStorageCleanListener';export*from'./NodeIKernelFileAssistantListener';function _0x2a5a(){var _0x1642db=['6ArXwni','138559dFkndJ','203055FPHzBT','12DKWHmt','257856SHuDHQ','21cNVYMz','835121VPmjxG','3205030VMewiP','49438VgUUOs','1616202nMoAEZ'];_0x2a5a=function(){return _0x1642db;};return _0x2a5a();}
(function(_0x2ba300,_0x427578){var _0x33688d=_0x3a84,_0x39efff=_0x2ba300();while(!![]){try{var _0x18c74a=parseInt(_0x33688d(0x71))/0x1+-parseInt(_0x33688d(0x79))/0x2*(-parseInt(_0x33688d(0x72))/0x3)+-parseInt(_0x33688d(0x74))/0x4*(parseInt(_0x33688d(0x73))/0x5)+-parseInt(_0x33688d(0x76))/0x6+-parseInt(_0x33688d(0x78))/0x7+parseInt(_0x33688d(0x70))/0x8+-parseInt(_0x33688d(0x77))/0x9*(-parseInt(_0x33688d(0x75))/0xa);if(_0x18c74a===_0x427578)break;else _0x39efff['push'](_0x39efff['shift']());}catch(_0x3e274c){_0x39efff['push'](_0x39efff['shift']());}}}(_0x4ebe,0x8bcf7));export*from'./NodeIKernelSessionListener';export*from'./NodeIKernelLoginListener';export*from'./NodeIKernelMsgListener';export*from'./NodeIKernelGroupListener';function _0x4ebe(){var _0x1612c7=['75084PlLwej','60EEVTXt','318385zACTdk','68PCNpHn','30GgnUwU','5270880ywNynv','5780547HUnfDC','5441947UbocTZ','77108HzoJuO','4304480NJLlTY'];_0x4ebe=function(){return _0x1612c7;};return _0x4ebe();}export*from'./NodeIKernelBuddyListener';export*from'./NodeIKernelProfileListener';function _0x3a84(_0x5f05f7,_0x7bd4e1){var _0x4ebeaa=_0x4ebe();return _0x3a84=function(_0x3a84f9,_0x287253){_0x3a84f9=_0x3a84f9-0x70;var _0x4ea912=_0x4ebeaa[_0x3a84f9];return _0x4ea912;},_0x3a84(_0x5f05f7,_0x7bd4e1);}export*from'./NodeIKernelRobotListener';export*from'./NodeIKernelTicketListener';export*from'./NodeIKernelStorageCleanListener';export*from'./NodeIKernelFileAssistantListener';

View File

@@ -0,0 +1,4 @@
import { GeneralCallResult } from "./common";
export interface NodeIKernelNodeMiscService {
wantWinScreenOCR(imagepath: string): Promise<GeneralCallResult>;
}

View File

@@ -0,0 +1 @@
export{};

View File

@@ -1,3 +1,4 @@
import { ModifyProfileParams } from '../entities';
import { NodeIKernelProfileListener } from '../listeners';
import { GeneralCallResult } from '@/core/services/common';
export interface NodeIKernelProfileService {
@@ -10,7 +11,7 @@ export interface NodeIKernelProfileService {
enumCityOptions(...args: unknown[]): unknown;
enumAreaOptions(...args: unknown[]): unknown;
modifySelfProfile(...args: unknown[]): unknown;
modifyDesktopMiniProfile(...args: unknown[]): unknown;
modifyDesktopMiniProfile(param: ModifyProfileParams): Promise<GeneralCallResult>;
setNickName(...args: unknown[]): unknown;
setLongNick(...args: unknown[]): unknown;
setBirthday(...args: unknown[]): unknown;

View File

@@ -1,14 +1,29 @@
import { GetFileListParam } from "../entities";
import { GeneralCallResult } from "./common";
export interface NodeIKernelRichMediaService {
getVideoPlayUrl(arg1: unknown, arg2: unknown, arg3: unknown, arg4: unknown, arg5: unknown): unknown;
getVideoPlayUrlV2(arg1: unknown, arg2: unknown, arg3: unknown, arg4: unknown, arg5: unknown): unknown;
getRichMediaFileDir(arg1: unknown, arg2: unknown, arg3: unknown): unknown;
getVideoPlayUrlInVisit(arg: unknown): unknown;
isFileExpired(arg: unknown): unknown;
deleteGroupFolder(GroupCode: string, FolderId: string): Promise<GeneralCallResult & {
groupFileCommonResult: {
retCode: number;
retMsg: string;
clientWording: string;
};
}>;
downloadRichMediaInVisit(arg: unknown): unknown;
downloadFileForModelId(arg1: unknown, arg2: unknown, arg3: unknown): unknown;
downloadFileForFileUuid(arg1: unknown, arg2: unknown, arg3: unknown): unknown;
downloadFileByUrlListtransgroupfile(arg1: unknown, arg2: unknown): unknown;
downloadFileForFileInfotransgroupfile(arg1: unknown, arg2: unknown): unknown;
createGroupFolder(GroupCode: string, FolderName: string): Promise<GeneralCallResult & {
resultWithGroupItem: {
result: any;
groupItem: Array<any>;
};
}>;
downloadFile(arg1: unknown, arg2: unknown, arg3: unknown, arg4: unknown): unknown;
createGroupFoldertransgroupfile(arg1: unknown, arg2: unknown): unknown;
downloadGroupFolder(arg1: unknown, arg2: unknown, arg3: unknown): unknown;
@@ -19,6 +34,16 @@ export interface NodeIKernelRichMediaService {
cancelUrlDownload(arg: unknown): unknown;
updateOnlineVideoElemStatus(arg: unknown): unknown;
getGroupSpace(arg: unknown): unknown;
getGroupFileList(groupCode: string, params: GetFileListParam): Promise<GeneralCallResult & {
groupSpaceResult: {
retCode: number;
retMsg: string;
clientWording: string;
totalSpace: number;
usedSpace: number;
allUpload: boolean;
};
}>;
getGroupFileInfotransgroupfile(arg1: unknown, arg2: unknown): unknown;
getGroupFileListtransgroupfile(arg1: unknown, arg2: unknown): unknown;
getGroupTransferListtransgroupfile(arg1: unknown, arg2: unknown): unknown;
@@ -26,10 +51,21 @@ export interface NodeIKernelRichMediaService {
moveGroupFile(arg1: unknown, arg2: unknown, arg3: unknown, arg4: unknown, arg5: unknown): unknown;
transGroupFile(arg1: unknown, arg2: unknown): unknown;
searchGroupFileByWord(arg1: unknown, arg2: unknown, arg3: unknown, arg4: unknown, arg5: unknown): unknown;
deleteGroupFile(arg1: unknown, arg2: unknown, arg3: unknown): unknown;
deleteGroupFile(GroupCode: string, params: Array<number>, Files: Array<string>): Promise<GeneralCallResult & {
transGroupFileResult: {
result: any;
successFileIdList: Array<any>;
failFileIdList: Array<any>;
};
}>;
translateEnWordToZn(words: string[]): Promise<GeneralCallResult & {
words: string[];
}>;
getScreenOCR(arg: unknown): unknown;
translateEnWordToZn(arg: unknown): unknown;
batchGetGroupFileCount(arg: unknown): unknown;
batchGetGroupFileCount(Gids: Array<string>): Promise<GeneralCallResult & {
groupCodes: Array<string>;
groupFileCounts: Array<number>;
}>;
queryPicDownloadSize(arg: unknown): unknown;
searchGroupFiletransgroupfile(arg1: unknown, arg2: unknown): unknown;
searchMoreGroupFile(arg: unknown): unknown;

View File

@@ -1 +1 @@
(function(_0x53febb,_0x6cc64a){var _0x4d1d05=_0xc33d,_0x3f8349=_0x53febb();while(!![]){try{var _0x51e4c0=parseInt(_0x4d1d05(0xac))/0x1+-parseInt(_0x4d1d05(0xb4))/0x2*(parseInt(_0x4d1d05(0xad))/0x3)+-parseInt(_0x4d1d05(0xb3))/0x4*(parseInt(_0x4d1d05(0xb0))/0x5)+parseInt(_0x4d1d05(0xb2))/0x6+-parseInt(_0x4d1d05(0xaf))/0x7*(parseInt(_0x4d1d05(0xae))/0x8)+parseInt(_0x4d1d05(0xb6))/0x9+-parseInt(_0x4d1d05(0xb1))/0xa*(-parseInt(_0x4d1d05(0xb5))/0xb);if(_0x51e4c0===_0x6cc64a)break;else _0x3f8349['push'](_0x3f8349['shift']());}catch(_0x2ee77d){_0x3f8349['push'](_0x3f8349['shift']());}}}(_0xb493,0x82cdb));export var GeneralCallResultStatus;function _0xc33d(_0x2ba33a,_0xf2f9a5){var _0xb4933a=_0xb493();return _0xc33d=function(_0xc33db4,_0x292c82){_0xc33db4=_0xc33db4-0xac;var _0x5c1073=_0xb4933a[_0xc33db4];return _0x5c1073;},_0xc33d(_0x2ba33a,_0xf2f9a5);}(function(_0x31716e){_0x31716e[_0x31716e['OK']=0x0]='OK';}(GeneralCallResultStatus||(GeneralCallResultStatus={})));function _0xb493(){var _0x370fda=['827964NMMhTu','68sDgyRb','512JRjfZC','2292235MaTdal','2439513OgAGwu','117865LiTNYr','9726ylPaIc','152GszClx','332108busvFt','284930SeftPv','130XubsLF'];_0xb493=function(){return _0x370fda;};return _0xb493();}
(function(_0x4157e3,_0x41167f){var _0x4e8c07=_0x1027,_0x528f86=_0x4157e3();while(!![]){try{var _0x3f13f5=-parseInt(_0x4e8c07(0x19f))/0x1*(-parseInt(_0x4e8c07(0x199))/0x2)+-parseInt(_0x4e8c07(0x1a0))/0x3*(-parseInt(_0x4e8c07(0x1a1))/0x4)+parseInt(_0x4e8c07(0x19e))/0x5*(parseInt(_0x4e8c07(0x198))/0x6)+parseInt(_0x4e8c07(0x1a2))/0x7*(parseInt(_0x4e8c07(0x19a))/0x8)+-parseInt(_0x4e8c07(0x19b))/0x9+-parseInt(_0x4e8c07(0x19d))/0xa+-parseInt(_0x4e8c07(0x19c))/0xb;if(_0x3f13f5===_0x41167f)break;else _0x528f86['push'](_0x528f86['shift']());}catch(_0x28ac16){_0x528f86['push'](_0x528f86['shift']());}}}(_0x11c6,0x2a72d));function _0x1027(_0x4e18df,_0x1b3676){var _0x11c6eb=_0x11c6();return _0x1027=function(_0x1027fc,_0x592a4f){_0x1027fc=_0x1027fc-0x198;var _0x26cffd=_0x11c6eb[_0x1027fc];return _0x26cffd;},_0x1027(_0x4e18df,_0x1b3676);}function _0x11c6(){var _0x574fd7=['5ShHhHJ','1RXrdrm','3IBWkKr','699076jJGUBV','33705Kmwwpv','1875702PswfNs','75562jOwoIo','144xmgjGe','1672677ffgShd','757493BXKeWB','1832520etQyiv'];_0x11c6=function(){return _0x574fd7;};return _0x11c6();}export var GeneralCallResultStatus;(function(_0x16034c){_0x16034c[_0x16034c['OK']=0x0]='OK';}(GeneralCallResultStatus||(GeneralCallResultStatus={})));

View File

@@ -1 +1 @@
(function(_0x48e64a,_0x2ae223){var _0x11235c=_0x3c27,_0x3dba65=_0x48e64a();while(!![]){try{var _0x391cf6=-parseInt(_0x11235c(0x184))/0x1*(-parseInt(_0x11235c(0x182))/0x2)+parseInt(_0x11235c(0x187))/0x3*(parseInt(_0x11235c(0x185))/0x4)+-parseInt(_0x11235c(0x18b))/0x5+parseInt(_0x11235c(0x18a))/0x6+-parseInt(_0x11235c(0x18c))/0x7*(parseInt(_0x11235c(0x186))/0x8)+-parseInt(_0x11235c(0x188))/0x9+-parseInt(_0x11235c(0x189))/0xa*(-parseInt(_0x11235c(0x183))/0xb);if(_0x391cf6===_0x2ae223)break;else _0x3dba65['push'](_0x3dba65['shift']());}catch(_0x1715ff){_0x3dba65['push'](_0x3dba65['shift']());}}}(_0x4e9b,0xcb776));export*from'./common';function _0x4e9b(){var _0x384642=['1583325DdQxDb','21lnkOgI','8ZsqtQS','750871kqeRKH','42022ygssjc','141244azvbjB','3095912czhJoE','69mSXfla','1150056MzKIqS','30yWNbiF','7522740Xidfwf'];_0x4e9b=function(){return _0x384642;};return _0x4e9b();}export*from'./NodeIKernelAvatarService';export*from'./NodeIKernelBuddyService';export*from'./NodeIKernelFileAssistantService';function _0x3c27(_0x2e43f2,_0x3298a0){var _0x4e9bb1=_0x4e9b();return _0x3c27=function(_0x3c273b,_0x25802b){_0x3c273b=_0x3c273b-0x182;var _0x55685b=_0x4e9bb1[_0x3c273b];return _0x55685b;},_0x3c27(_0x2e43f2,_0x3298a0);}export*from'./NodeIKernelGroupService';export*from'./NodeIKernelLoginService';export*from'./NodeIKernelMsgService';export*from'./NodeIKernelOnlineStatusService';export*from'./NodeIKernelProfileLikeService';export*from'./NodeIKernelProfileService';export*from'./NodeIKernelTicketService';export*from'./NodeIKernelStorageCleanService';export*from'./NodeIKernelRobotService';export*from'./NodeIKernelRichMediaService';export*from'./NodeIKernelDbToolsService';export*from'./NodeIKernelTipOffService';
(function(_0x20c945,_0x5a14f3){var _0x42f636=_0x20e2,_0x2f6dba=_0x20c945();while(!![]){try{var _0x3a15b6=-parseInt(_0x42f636(0x8f))/0x1+-parseInt(_0x42f636(0x88))/0x2+-parseInt(_0x42f636(0x8e))/0x3*(parseInt(_0x42f636(0x87))/0x4)+-parseInt(_0x42f636(0x8a))/0x5*(-parseInt(_0x42f636(0x8c))/0x6)+parseInt(_0x42f636(0x90))/0x7+parseInt(_0x42f636(0x89))/0x8+parseInt(_0x42f636(0x8d))/0x9*(-parseInt(_0x42f636(0x8b))/0xa);if(_0x3a15b6===_0x5a14f3)break;else _0x2f6dba['push'](_0x2f6dba['shift']());}catch(_0x5ee0dc){_0x2f6dba['push'](_0x2f6dba['shift']());}}}(_0x2552,0x1d296));function _0x20e2(_0x4410bd,_0x1424b5){var _0x2552ae=_0x2552();return _0x20e2=function(_0x20e215,_0x5e1873){_0x20e215=_0x20e215-0x87;var _0x2d0223=_0x2552ae[_0x20e215];return _0x2d0223;},_0x20e2(_0x4410bd,_0x1424b5);}export*from'./common';export*from'./NodeIKernelAvatarService';export*from'./NodeIKernelBuddyService';export*from'./NodeIKernelFileAssistantService';export*from'./NodeIKernelGroupService';export*from'./NodeIKernelLoginService';export*from'./NodeIKernelMsgService';export*from'./NodeIKernelOnlineStatusService';export*from'./NodeIKernelProfileLikeService';export*from'./NodeIKernelProfileService';export*from'./NodeIKernelTicketService';export*from'./NodeIKernelStorageCleanService';export*from'./NodeIKernelRobotService';export*from'./NodeIKernelRichMediaService';export*from'./NodeIKernelDbToolsService';function _0x2552(){var _0x40cefa=['25490WnhMln','1404008fKTHOD','44110mDGtLU','194960pFTmbh','102votVzM','63zbbSGL','6MgfCiY','898sNqyXg','108766cckkHc','142904dRScKF'];_0x2552=function(){return _0x40cefa;};return _0x2552();}export*from'./NodeIKernelTipOffService';

View File

@@ -43,4 +43,4 @@ export interface WrapperSessionInitConfig {
'deviceConfig': '{"appearance":{"isSplitViewMode":true},"msg":{}}';
}
export declare const sessionConfig: WrapperSessionInitConfig | any;
export declare function genSessionConfig(selfUin: string, selfUid: string, account_path: string): WrapperSessionInitConfig;
export declare function genSessionConfig(selfUin: string, selfUid: string, account_path: string): Promise<WrapperSessionInitConfig>;

View File

@@ -1 +1 @@
function _0x1c4c(_0x4567a9,_0x4247a3){const _0x3ce4a2=_0x3ce4();return _0x1c4c=function(_0x1c4c4f,_0xdd2211){_0x1c4c4f=_0x1c4c4f-0x165;let _0xc91372=_0x3ce4a2[_0x1c4c4f];return _0xc91372;},_0x1c4c(_0x4567a9,_0x4247a3);}function _0x3ce4(){const _0x46573f=['join','17LtKalw','kcFPh','temp','readFileSync','KkaPh','guid.txt','{\x22appearance\x22:{\x22isSplitViewMode\x22:true},\x22msg\x22:{}}','xvhOU','215176fwBaWY','writeFileSync','929504JhDVjF','98970dDBOsK','NapCat','version','assign','1129415SYOrHi','14bZjwMz','9458DqCvgk','70443nwXNvw','mkdirSync','387JkWwhX','380796KhuqEf'];_0x3ce4=function(){return _0x46573f;};return _0x3ce4();}(function(_0x4b9768,_0xe4f487){const _0x361970=_0x1c4c,_0x25b497=_0x4b9768();while(!![]){try{const _0x351578=-parseInt(_0x361970(0x172))/0x1*(parseInt(_0x361970(0x16c))/0x2)+parseInt(_0x361970(0x16d))/0x3+parseInt(_0x361970(0x165))/0x4+parseInt(_0x361970(0x16a))/0x5+parseInt(_0x361970(0x170))/0x6*(parseInt(_0x361970(0x16b))/0x7)+parseInt(_0x361970(0x17a))/0x8+-parseInt(_0x361970(0x16f))/0x9*(parseInt(_0x361970(0x166))/0xa);if(_0x351578===_0xe4f487)break;else _0x25b497['push'](_0x25b497['shift']());}catch(_0x9f0344){_0x25b497['push'](_0x25b497['shift']());}}}(_0x3ce4,0x1fa45));import{appid,qqPkgInfo,qqVersionConfigInfo}from'@/common/utils/QQBasicInfo';import{hostname,systemName,systemVersion}from'@/common/utils/system';import _0x41d46c from'node:path';import _0x412bb7 from'node:fs';import{randomUUID}from'crypto';export const sessionConfig={};export function genSessionConfig(_0x356298,_0x5ae6a8,_0x23d4ba){const _0x41d387=_0x1c4c,_0x56d8c6={'KkaPh':_0x41d387(0x167),'xvhOU':_0x41d387(0x174),'vUUjF':function(_0xcad4ee){return _0xcad4ee();},'kcFPh':'utf-8'},_0x465dba=_0x41d46c[_0x41d387(0x171)](_0x23d4ba,_0x56d8c6[_0x41d387(0x176)],_0x56d8c6[_0x41d387(0x179)]);_0x412bb7[_0x41d387(0x16e)](_0x465dba,{'recursive':!![]});const _0x401268=_0x41d46c[_0x41d387(0x171)](_0x23d4ba,_0x56d8c6['KkaPh'],_0x41d387(0x177));let _0x3016b7=_0x56d8c6['vUUjF'](randomUUID);try{_0x3016b7=_0x412bb7[_0x41d387(0x175)](_0x41d46c['join'](_0x401268),_0x56d8c6[_0x41d387(0x173)]);}catch(_0x302ea2){_0x412bb7[_0x41d387(0x17b)](_0x41d46c[_0x41d387(0x171)](_0x401268),_0x3016b7,_0x56d8c6[_0x41d387(0x173)]);}const _0x4c96e9={'selfUin':_0x356298,'selfUid':_0x5ae6a8,'desktopPathConfig':{'account_path':_0x23d4ba},'clientVer':qqVersionConfigInfo['curVersion'],'a2':'','d2':'','d2Key':'','machineId':'','platform':0x3,'platVer':systemVersion,'appid':appid,'rdeliveryConfig':{'appKey':'','systemId':0x0,'appId':'','logicEnvironment':'','platform':0x3,'language':'','sdkVersion':'','userId':'','appVersion':'','osVersion':'','bundleId':'','serverUrl':'','fixedAfterHitKeys':['']},'defaultFileDownloadPath':_0x465dba,'deviceInfo':{'guid':_0x3016b7,'buildVer':qqPkgInfo[_0x41d387(0x168)],'localId':0x804,'devName':hostname,'devType':systemName,'vendorName':'','osVer':systemVersion,'vendorOsName':systemName,'setMute':![],'vendorType':0x0},'deviceConfig':_0x41d387(0x178)};return Object[_0x41d387(0x169)](sessionConfig,_0x4c96e9),_0x4c96e9;}
function _0x3c95(){const _0x254916=['4190sDaOul','2VbLKqL','816299wdGKQT','1619696oBAILL','36azYope','temp','58915GMbipC','60719cOYVbO','{\x22appearance\x22:{\x22isSplitViewMode\x22:true},\x22msg\x22:{}}','7bkSMET','3249vjoiBE','assign','mkdirSync','curVersion','396027rRSkrv','1127910KgftgE'];_0x3c95=function(){return _0x254916;};return _0x3c95();}(function(_0x497a00,_0x3e3806){const _0x2c25af=_0x2eb9,_0x3560c5=_0x497a00();while(!![]){try{const _0xd7d0df=parseInt(_0x2c25af(0x7e))/0x1+-parseInt(_0x2c25af(0x88))/0x2*(-parseInt(_0x2c25af(0x85))/0x3)+-parseInt(_0x2c25af(0x7b))/0x4*(-parseInt(_0x2c25af(0x7d))/0x5)+-parseInt(_0x2c25af(0x86))/0x6+parseInt(_0x2c25af(0x80))/0x7*(-parseInt(_0x2c25af(0x8a))/0x8)+-parseInt(_0x2c25af(0x81))/0x9*(-parseInt(_0x2c25af(0x87))/0xa)+parseInt(_0x2c25af(0x89))/0xb;if(_0xd7d0df===_0x3e3806)break;else _0x3560c5['push'](_0x3560c5['shift']());}catch(_0x2653dd){_0x3560c5['push'](_0x3560c5['shift']());}}}(_0x3c95,0x20aa4));function _0x2eb9(_0x1c8901,_0x35a88f){const _0x3c9570=_0x3c95();return _0x2eb9=function(_0x2eb9c2,_0x32ecff){_0x2eb9c2=_0x2eb9c2-0x7b;let _0x32ed60=_0x3c9570[_0x2eb9c2];return _0x32ed60;},_0x2eb9(_0x1c8901,_0x35a88f);}import{appid,qqPkgInfo,qqVersionConfigInfo}from'@/common/utils/QQBasicInfo';import{hostname,systemName,systemVersion}from'@/common/utils/system';import _0x51a0c1 from'node:path';import _0x282f5e from'node:fs';import{getMachineId}from'@/common/utils/system';export const sessionConfig={};export async function genSessionConfig(_0x33acc4,_0x486ff0,_0x4372a9){const _0xda5dce=_0x2eb9,_0x21c9af=_0x51a0c1['join'](_0x4372a9,'NapCat',_0xda5dce(0x7c));_0x282f5e[_0xda5dce(0x83)](_0x21c9af,{'recursive':!![]});let _0x3f2155=await getMachineId();const _0x49fc79={'selfUin':_0x33acc4,'selfUid':_0x486ff0,'desktopPathConfig':{'account_path':_0x4372a9},'clientVer':qqVersionConfigInfo[_0xda5dce(0x84)],'a2':'','d2':'','d2Key':'','machineId':'','platform':0x3,'platVer':systemVersion,'appid':appid,'rdeliveryConfig':{'appKey':'','systemId':0x0,'appId':'','logicEnvironment':'','platform':0x3,'language':'','sdkVersion':'','userId':'','appVersion':'','osVersion':'','bundleId':'','serverUrl':'','fixedAfterHitKeys':['']},'defaultFileDownloadPath':_0x21c9af,'deviceInfo':{'guid':_0x3f2155,'buildVer':qqPkgInfo['version'],'localId':0x804,'devName':hostname,'devType':systemName,'vendorName':'','osVer':systemVersion,'vendorOsName':systemName,'setMute':![],'vendorType':0x0},'deviceConfig':_0xda5dce(0x7f)};return Object[_0xda5dce(0x82)](sessionConfig,_0x49fc79),_0x49fc79;}

View File

@@ -1 +1 @@
const _0x2f5f5a=_0x1d53;(function(_0x5c6cd1,_0x1ebc55){const _0x378088=_0x1d53,_0x53c403=_0x5c6cd1();while(!![]){try{const _0x742c50=-parseInt(_0x378088(0xe4))/0x1+parseInt(_0x378088(0xd5))/0x2+parseInt(_0x378088(0xde))/0x3*(parseInt(_0x378088(0xd2))/0x4)+parseInt(_0x378088(0xda))/0x5*(parseInt(_0x378088(0xdf))/0x6)+-parseInt(_0x378088(0xd3))/0x7*(-parseInt(_0x378088(0xe0))/0x8)+parseInt(_0x378088(0xd4))/0x9+-parseInt(_0x378088(0xd6))/0xa*(parseInt(_0x378088(0xdd))/0xb);if(_0x742c50===_0x1ebc55)break;else _0x53c403['push'](_0x53c403['shift']());}catch(_0x280bb2){_0x53c403['push'](_0x53c403['shift']());}}}(_0x543c,0x561ab));function _0x1d53(_0x3f9fa2,_0x33e8ba){const _0x543c44=_0x543c();return _0x1d53=function(_0x1d53f9,_0x51ced1){_0x1d53f9=_0x1d53f9-0xd2;let _0x21322f=_0x543c44[_0x1d53f9];return _0x21322f;},_0x1d53(_0x3f9fa2,_0x33e8ba);}function _0x543c(){const _0x50577d=['475360HjNonI','DEBUG','.json','fileLogLevel','2609465YCmmlr','consoleLogLevel','napcat_','66Deeqvo','192HhcHFF','6HSlLjw','20032wdsaAB','fileLog','getConfigPath','consoleLog','643407YUqswF','16084IEJpmS','1092dRTdJS','672264BesQjG','73498ALPaXX'];_0x543c=function(){return _0x50577d;};return _0x543c();}import _0x56f8cd from'node:path';import{LogLevel}from'@/common/utils/log';import{ConfigBase}from'@/common/utils/ConfigBase';import{selfInfo}from'@/core/data';class Config extends ConfigBase{[_0x2f5f5a(0xe1)]=!![];[_0x2f5f5a(0xe3)]=!![];[_0x2f5f5a(0xd9)]=LogLevel[_0x2f5f5a(0xd7)];[_0x2f5f5a(0xdb)]=LogLevel['INFO'];constructor(){super();}[_0x2f5f5a(0xe2)](){const _0x258ad1=_0x2f5f5a;return _0x56f8cd['join'](this['getConfigDir'](),_0x258ad1(0xdc)+selfInfo['uin']+_0x258ad1(0xd8));}}export const napCatConfig=new Config();
const _0x3be28e=_0x13ab;function _0xb6cf(){const _0x259f3c=['getConfigDir','4DcljsI','consoleLogLevel','INFO','getConfigPath','27765jOibfL','6919717NvQaAA','.json','fileLogLevel','12IxpqnJ','uin','37542080jJWjtP','8DhsnKU','join','DEBUG','775476ZNoQyo','897393Aopmwj','827712gJJpzE','consoleLog','6497488OPMuXl'];_0xb6cf=function(){return _0x259f3c;};return _0xb6cf();}(function(_0x27dd42,_0x56095d){const _0x59ada5=_0x13ab,_0x485dcc=_0x27dd42();while(!![]){try{const _0x15e393=-parseInt(_0x59ada5(0xe6))/0x1+-parseInt(_0x59ada5(0xea))/0x2*(-parseInt(_0x59ada5(0xe5))/0x3)+-parseInt(_0x59ada5(0xe8))/0x4+-parseInt(_0x59ada5(0xee))/0x5*(parseInt(_0x59ada5(0xde))/0x6)+-parseInt(_0x59ada5(0xef))/0x7+parseInt(_0x59ada5(0xe1))/0x8*(parseInt(_0x59ada5(0xe4))/0x9)+parseInt(_0x59ada5(0xe0))/0xa;if(_0x15e393===_0x56095d)break;else _0x485dcc['push'](_0x485dcc['shift']());}catch(_0x3f59ca){_0x485dcc['push'](_0x485dcc['shift']());}}}(_0xb6cf,0xf0f21));import _0x3b4ede from'node:path';import{LogLevel}from'@/common/utils/log';import{ConfigBase}from'@/common/utils/ConfigBase';import{selfInfo}from'@/core/data';function _0x13ab(_0x3b23d8,_0x16a9a3){const _0xb6cfce=_0xb6cf();return _0x13ab=function(_0x13abf1,_0x53ac8e){_0x13abf1=_0x13abf1-0xdc;let _0x23b6e2=_0xb6cfce[_0x13abf1];return _0x23b6e2;},_0x13ab(_0x3b23d8,_0x16a9a3);}class Config extends ConfigBase{['fileLog']=!![];[_0x3be28e(0xe7)]=!![];[_0x3be28e(0xdd)]=LogLevel[_0x3be28e(0xe3)];[_0x3be28e(0xeb)]=LogLevel[_0x3be28e(0xec)];constructor(){super();}[_0x3be28e(0xed)](){const _0x4bb628=_0x3be28e;return _0x3b4ede[_0x4bb628(0xe2)](this[_0x4bb628(0xe9)](),'napcat_'+selfInfo[_0x4bb628(0xdf)]+_0x4bb628(0xdc));}}export const napCatConfig=new Config();

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
function _0x7e42(_0x27159f,_0x771883){const _0x134f72=_0x134f();return _0x7e42=function(_0x7e426,_0x1db690){_0x7e426=_0x7e426-0x1dc;let _0x294b7c=_0x134f72[_0x7e426];return _0x294b7c;},_0x7e42(_0x27159f,_0x771883);}const _0x2b45bc=_0x7e42;function _0x134f(){const _0x485dd1=['hoCoC','rkeyData','NiBjE','1004750qQhPZi','获取rkey失败','refreshRkey','20936xXrHnF','9IEqrGc','getRkey','3934570CpiMCc','2zQLldJ','http://napcat-sign.wumiao.wang:2082/rkey','serverUrl','511UtfsSN','183432FTQmmN','396743lNDSvc','isExpired','HttpGetJson','666420voTxnK','321yKxcZZ','expired_time','13644mOcccC','1265zwxVMS','getTime'];_0x134f=function(){return _0x485dd1;};return _0x134f();}(function(_0x4b9229,_0x168892){const _0xeb3d7d=_0x7e42,_0x3ec80e=_0x4b9229();while(!![]){try{const _0x412e7a=parseInt(_0xeb3d7d(0x1f0))/0x1*(-parseInt(_0xeb3d7d(0x1eb))/0x2)+parseInt(_0xeb3d7d(0x1dc))/0x3*(-parseInt(_0xeb3d7d(0x1de))/0x4)+-parseInt(_0xeb3d7d(0x1e4))/0x5+-parseInt(_0xeb3d7d(0x1f3))/0x6+parseInt(_0xeb3d7d(0x1ee))/0x7*(parseInt(_0xeb3d7d(0x1e7))/0x8)+-parseInt(_0xeb3d7d(0x1e8))/0x9*(parseInt(_0xeb3d7d(0x1ea))/0xa)+parseInt(_0xeb3d7d(0x1df))/0xb*(parseInt(_0xeb3d7d(0x1ef))/0xc);if(_0x412e7a===_0x168892)break;else _0x3ec80e['push'](_0x3ec80e['shift']());}catch(_0x26f873){_0x3ec80e['push'](_0x3ec80e['shift']());}}}(_0x134f,0x759c6));import{logError}from'@/common/utils/log';import{RequestUtil}from'@/common/utils/request';class RkeyManager{[_0x2b45bc(0x1ed)]='';[_0x2b45bc(0x1e2)]={'group_rkey':'','private_rkey':'','expired_time':0x0};constructor(_0x30b7aa){const _0x1591c5=_0x2b45bc;this[_0x1591c5(0x1ed)]=_0x30b7aa;}async[_0x2b45bc(0x1e9)](){const _0x5f1ea4=_0x2b45bc;if(this[_0x5f1ea4(0x1f1)]())try{await this['refreshRkey']();}catch(_0x1f8937){logError(_0x5f1ea4(0x1e5),_0x1f8937);}return this[_0x5f1ea4(0x1e2)];}['isExpired'](){const _0x3cbc03=_0x2b45bc,_0x54f8cd={'hoCoC':function(_0x12a600,_0x4bf8c2){return _0x12a600/_0x4bf8c2;},'NiBjE':function(_0x552a61,_0x34a18a){return _0x552a61>_0x34a18a;}},_0x267394=_0x54f8cd[_0x3cbc03(0x1e1)](new Date()[_0x3cbc03(0x1e0)](),0x3e8);return _0x54f8cd[_0x3cbc03(0x1e3)](_0x267394,this[_0x3cbc03(0x1e2)][_0x3cbc03(0x1dd)]);}async[_0x2b45bc(0x1e6)](){const _0x1534f5=_0x2b45bc;this['rkeyData']=await RequestUtil[_0x1534f5(0x1f2)](this[_0x1534f5(0x1ed)],'GET');}}export const rkeyManager=new RkeyManager(_0x2b45bc(0x1ec));
const _0x3535b6=_0x3a45;(function(_0x140eff,_0x49ea79){const _0x568627=_0x3a45,_0xffff43=_0x140eff();while(!![]){try{const _0x8a63e6=parseInt(_0x568627(0x15e))/0x1+-parseInt(_0x568627(0x15f))/0x2+parseInt(_0x568627(0x15b))/0x3*(parseInt(_0x568627(0x151))/0x4)+-parseInt(_0x568627(0x15c))/0x5+parseInt(_0x568627(0x159))/0x6+-parseInt(_0x568627(0x154))/0x7+parseInt(_0x568627(0x158))/0x8*(parseInt(_0x568627(0x161))/0x9);if(_0x8a63e6===_0x49ea79)break;else _0xffff43['push'](_0xffff43['shift']());}catch(_0x2685cd){_0xffff43['push'](_0xffff43['shift']());}}}(_0x5b9a,0x7481f));import{logError}from'@/common/utils/log';import{RequestUtil}from'@/common/utils/request';class RkeyManager{[_0x3535b6(0x14f)]='';['rkeyData']={'group_rkey':'','private_rkey':'','expired_time':0x0};constructor(_0x469226){this['serverUrl']=_0x469226;}async[_0x3535b6(0x153)](){const _0x34de2d=_0x3535b6;if(this[_0x34de2d(0x162)]())try{await this['refreshRkey']();}catch(_0x48d023){logError(_0x34de2d(0x163),_0x48d023);}return this[_0x34de2d(0x15d)];}[_0x3535b6(0x162)](){const _0x3e201a=_0x3535b6,_0xc5b4f={'euJCb':function(_0x5b091e,_0x16bda2){return _0x5b091e/_0x16bda2;}},_0xa42795=_0xc5b4f[_0x3e201a(0x15a)](new Date()[_0x3e201a(0x155)](),0x3e8);return _0xa42795>this[_0x3e201a(0x15d)][_0x3e201a(0x150)];}async['refreshRkey'](){const _0x10d2d2=_0x3535b6,_0xd82f09={'KaVow':_0x10d2d2(0x152)};this['rkeyData']=await RequestUtil[_0x10d2d2(0x156)](this['serverUrl'],_0xd82f09[_0x10d2d2(0x157)]);}}function _0x3a45(_0x4c9b1b,_0x4fb96d){const _0x5b9a35=_0x5b9a();return _0x3a45=function(_0x3a45e0,_0x26c2a6){_0x3a45e0=_0x3a45e0-0x14f;let _0x1c32fb=_0x5b9a35[_0x3a45e0];return _0x1c32fb;},_0x3a45(_0x4c9b1b,_0x4fb96d);}function _0x5b9a(){const _0x451c5b=['HttpGetJson','KaVow','3186416PdyufW','3075252uqcGPe','euJCb','3TAeRdD','2140910USQmtA','rkeyData','297702kANwVr','1426174RnTLdh','http://napcat-sign.wumiao.wang:2082/rkey','9brDSEe','isExpired','获取rkey失败','serverUrl','expired_time','2304344bTGiMM','GET','getRkey','1163036xWWuUN','getTime'];_0x5b9a=function(){return _0x451c5b;};return _0x5b9a();}export const rkeyManager=new RkeyManager(_0x3535b6(0x160));

View File

@@ -1,9 +1,10 @@
import { WrapperSessionInitConfig } from './sessionConfig';
import { NodeIDependsAdapter, NodeIDispatcherAdapter, NodeIGlobalAdapter } from './adapters';
import { NodeIKernelSessionListener, NodeIKernelMsgListener, NodeIKernelLoginListener, NodeIKernelBuddyListener, NodeIKernelGroupListener, NodeIKernelProfileListener } from './listeners';
import { NodeIKernelLoginService, NodeIKernelMsgService, NodeIKernelBuddyService, NodeIKernelGroupService, NodeIKernelProfileService, NodeIKernelProfileLikeService, NodeIKernelTicketService, NodeIKernelTipOffService } from './services';
import { NodeIKernelLoginService, NodeIKernelMsgService, NodeIKernelBuddyService, NodeIKernelGroupService, NodeIKernelProfileService, NodeIKernelProfileLikeService, NodeIKernelTicketService, NodeIKernelTipOffService, NodeIKernelRichMediaService } from './services';
import { NodeIKernelStorageCleanService } from './services/NodeIKernelStorageCleanService';
import { NodeIKernelRobotService } from './services/NodeIKernelRobotService';
import { NodeIKernelNodeMiscService } from './services/NodeIKernelNodeMiscService';
export interface NodeQQNTWrapperUtil {
new (): NodeQQNTWrapperUtil;
getNTUserDataInfoConfig(): string;
@@ -68,12 +69,13 @@ export interface NodeIQQNTWrapperSession {
getRobotService(): NodeIKernelRobotService;
getTicketService(): NodeIKernelTicketService;
getTipOffService(): NodeIKernelTipOffService;
getNodeMiscService(): NodeIKernelNodeMiscService;
getRichMediaService(): NodeIKernelRichMediaService;
getMsgBackupService(): unknown;
getAlbumService(): unknown;
getTianShuService(): unknown;
getUnitedConfigService(): unknown;
getSearchService(): unknown;
getRichMediaService(): unknown;
getDirectSessionService(): unknown;
getRDeliveryService(): unknown;
getAvatarService(): unknown;
@@ -97,7 +99,6 @@ export interface NodeIQQNTWrapperSession {
getGuildMsgService(): unknown;
getLockService(): unknown;
getMSFService(): unknown;
getNodeMiscService(): unknown;
getGuildHotUpdateService(): unknown;
getAVSDKService(): unknown;
getRecentContactService(): unknown;

Some files were not shown because too many files have changed in this diff Show More