Compare commits

...

253 Commits

Author SHA1 Message Date
手瓜一十雪
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
手瓜一十雪
203d1c0cfc release: v1.3.5 2024-05-20 21:24:11 +08:00
手瓜一十雪
7edd8601be fix 2024-05-20 18:11:13 +08:00
手瓜一十雪
a4423247f4 fix 2024-05-20 18:05:00 +08:00
手瓜一十雪
4834b203a0 fix: stop express 2024-05-20 17:56:36 +08:00
手瓜一十雪
bbabb32d13 fix: 移除调试代码 2024-05-20 17:49:15 +08:00
手瓜一十雪
95112d6bdf fix: 热重载问题 2024-05-20 17:47:13 +08:00
手瓜一十雪
36cdca5a3e fix: 热重载 2024-05-20 16:58:24 +08:00
手瓜一十雪
6980a9f3fc refactor: webui config 2024-05-20 16:56:34 +08:00
手瓜一十雪
7b09479cd2 fix: 拦截错误 2024-05-20 16:26:42 +08:00
手瓜一十雪
5825fd6f36 fix: 拦截异常 2024-05-20 12:35:50 +08:00
手瓜一十雪
2d5b45dd82 feat: test 2024-05-20 12:10:48 +08:00
手瓜一十雪
52dda1d1fe refactor: SysMessage Proto 2024-05-19 22:29:02 +08:00
手瓜一十雪
420624bee4 build: 1.3.5-catch error 2024-05-19 21:48:52 +08:00
手瓜一十雪
8abde7b7d0 Revert "build: 1.3.5-re"
This reverts commit 9e5b1ba28e.
2024-05-19 21:41:57 +08:00
手瓜一十雪
9e5b1ba28e build: 1.3.5-re 2024-05-19 21:18:33 +08:00
手瓜一十雪
b9c7d3c18e build: 1.3.5-re 2024-05-19 21:04:24 +08:00
手瓜一十雪
10aeccbbe5 build: 1.3.5 2024-05-19 20:46:02 +08:00
手瓜一十雪
15d351ebc2 build: 1.3.5-re 2024-05-19 13:30:42 +08:00
手瓜一十雪
7194f31cb6 build: 1.3.5-re 2024-05-19 13:18:29 +08:00
手瓜一十雪
84b7e82446 build: 1.4.0-beta1 2024-05-19 12:36:56 +08:00
手瓜一十雪
8264423b1a fix: 上报问题 2024-05-19 12:36:40 +08:00
手瓜一十雪
37f897f3bf feat: 上报戳一戳 2024-05-19 12:35:15 +08:00
手瓜一十雪
fe3efac145 feat: 解析戳一戳 2024-05-19 12:29:40 +08:00
手瓜一十雪
9773aebefc feat: sys msg decode 2024-05-19 12:12:03 +08:00
手瓜一十雪
06f2b8c371 docs: change init 2024-05-19 11:08:42 +08:00
手瓜一十雪
e8f0bb8350 build: fix check type 2024-05-18 20:48:06 +08:00
手瓜一十雪
9bfa6b827b build: 1.3.5 2024-05-18 20:36:16 +08:00
手瓜一十雪
b21bc17a58 build: 1.3.5 2024-05-18 20:28:35 +08:00
手瓜一十雪
f4d5d417d0 build: 1.3.5 2024-05-18 20:09:33 +08:00
手瓜一十雪
91fc83621e build: 1.3.5 2024-05-18 19:46:53 +08:00
手瓜一十雪
461feca0ca Merge branch 'main' of https://github.com/NapNeko/NapCatQQ 2024-05-18 19:33:24 +08:00
手瓜一十雪
5e9afab3f7 fix: workflow 2024-05-18 18:18:08 +08:00
Version
2599ca6450 chore:version change 2024-05-18 10:15:09 +00:00
手瓜一十雪
fc99ad3a39 Merge branch 'main' of https://github.com/NapNeko/NapCatQQ 2024-05-18 18:08:29 +08:00
手瓜一十雪
10e1c3e72c build: 1.3.5-beta38 2024-05-18 18:08:18 +08:00
手瓜一十雪
af5dedd4d4 docs: change 2024-05-18 18:00:40 +08:00
手瓜一十雪
3b986c1076 build: 1.3.5-beta37 2024-05-18 17:58:09 +08:00
手瓜一十雪
72f77e8b7c feat: support get_group_system_msg 2024-05-18 17:57:42 +08:00
手瓜一十雪
e893bf676f build: 1.3.5-beta36
get_group_system_msg 未标准化
2024-05-18 17:37:10 +08:00
手瓜一十雪
80eb34f611 feat: try add get_group_system_msg 2024-05-18 16:58:46 +08:00
手瓜一十雪
5d01947552 feat: 快速操作msg默认reply模式回应 2024-05-18 16:27:53 +08:00
手瓜一十雪
d3a025ef7b build: 1.3.5-beta35 2024-05-18 14:40:46 +08:00
手瓜一十雪
c466df841e build: 1.3.5-beta34 2024-05-18 14:36:52 +08:00
手瓜一十雪
b3c6e2a0f3 feat: QuickHandle From LLOB 2024-05-18 14:35:24 +08:00
手瓜一十雪
076c9cfed7 feat: send timeout predict 2024-05-18 14:09:57 +08:00
手瓜一十雪
c3f3d12f83 build: 1.3.5-beta33 2024-05-18 13:35:57 +08:00
手瓜一十雪
44974034ec build: 1.3.5-beta32 2024-05-18 12:56:03 +08:00
手瓜一十雪
d6175acd38 feat: check action data 3 2024-05-18 12:40:41 +08:00
手瓜一十雪
62eee5f05c feat: check action data 2 2024-05-18 12:23:15 +08:00
手瓜一十雪
d4e5201913 feat: action check data 2024-05-18 11:48:38 +08:00
手瓜一十雪
f4d584765a build: 1.3.5-beta30 2024-05-17 21:58:48 +08:00
手瓜一十雪
26e224f852 fix: 热重载容错 2024-05-17 21:44:52 +08:00
手瓜一十雪
252358ed66 build: 1.3.5-beta29 2024-05-17 21:41:07 +08:00
手瓜一十雪
475afeb7c8 build: 1.3.5-beta28 2024-05-17 21:30:37 +08:00
手瓜一十雪
7cbbb846eb build: 1.3.5-beta27 2024-05-17 21:26:32 +08:00
手瓜一十雪
25f947968c fix: typo 2024-05-17 19:55:12 +08:00
手瓜一十雪
cad824dcbc refactor: powershell script 2024-05-17 19:22:36 +08:00
手瓜一十雪
e506f50b00 build: 1.3.5-beta24 2024-05-17 18:51:31 +08:00
手瓜一十雪
96ec149a98 fix: webui 2024-05-17 18:23:50 +08:00
手瓜一十雪
8c913512f6 fix: webui 2024-05-17 18:21:03 +08:00
手瓜一十雪
4cc307299d build: 1.3.5-beta23 2024-05-17 18:12:41 +08:00
手瓜一十雪
407c6b4c5f fix: webui 2024-05-17 18:11:53 +08:00
手瓜一十雪
8f87070434 build: 1.3.5-beta22 2024-05-17 17:17:49 +08:00
手瓜一十雪
4a63996ee2 docs: change 2024-05-17 17:08:01 +08:00
手瓜一十雪
0358fe7620 feat: UpdateConfig 2024-05-17 17:03:48 +08:00
手瓜一十雪
55e64395ed build: 1.3.5-beta20 2024-05-17 15:39:31 +08:00
手瓜一十雪
ff5fb18e14 chore: sync core 2024-05-16 20:47:12 +08:00
手瓜一十雪
52dd960857 build: 1.3.5-beta19 2024-05-16 20:24:49 +08:00
手瓜一十雪
430221c2de fix: check msgElement 2024-05-16 20:23:36 +08:00
手瓜一十雪
217bdf8f92 build: 1.3.5-beta17 2024-05-16 12:53:33 +08:00
手瓜一十雪
38c6c869bf docs: change 2024-05-16 12:52:45 +08:00
手瓜一十雪
84d46da67e fix: ws心跳问题 2024-05-16 12:46:27 +08:00
手瓜一十雪
eb9d6240d7 chore: move 2024-05-16 11:57:02 +08:00
linyuchen
2d44a871b0 chore: Sync core 2024-05-15 23:08:57 +08:00
手瓜一十雪
3f89f350ff fix: 移除umami 2024-05-15 22:18:05 +08:00
手瓜一十雪
1a8407a782 refactor: requests 2024-05-15 21:13:41 +08:00
手瓜一十雪
cf288a3f73 feat: 迁移配置辅助函数 2024-05-15 20:55:09 +08:00
手瓜一十雪
f1f37fb180 Merge pull request #23 from Wesley-Young/main
Refactoring onebot11/action/msg/SendMsg
2024-05-15 19:47:37 +08:00
手瓜一十雪
fb0dd079fd Merge branch 'main' into pr/23 2024-05-15 19:47:19 +08:00
手瓜一十雪
a6c584c85c Merge branch 'main' of https://github.com/Wesley-Young/NapCatQQ.Patch into pr/23 2024-05-15 19:46:46 +08:00
手瓜一十雪
77adf35a30 fix: export problem 2024-05-15 19:45:27 +08:00
linyuchen
dc6951c2a9 Merge remote-tracking branch 'origin/main' 2024-05-15 17:55:20 +08:00
linyuchen
d14ba3f0f7 feat: Cache decorator 2024-05-15 17:55:03 +08:00
Wesley F. Young
78ddf36e35 refactor: split types.ts into separate files 2024-05-15 17:02:24 +08:00
Wesley F. Young
d42734624d refactor: move checkSendMessage and handleForwardNode to separate files 2024-05-15 16:43:21 +08:00
Wesley F. Young
b5dbd9d59b refactor: rename function convertMessage2List to normalize 2024-05-15 16:33:15 +08:00
手瓜一十雪
bed3e1289b chore: sync core 2024-05-15 16:11:01 +08:00
手瓜一十雪
b11ca4e60e Merge branch 'main' into pr/23 2024-05-15 16:10:11 +08:00
Wesley F. Young
4fcf3aa2bd refactor: better type inferring; move createSendElement into another file 2024-05-15 14:53:58 +08:00
手瓜一十雪
dc39da8ca5 build: 1.3.5-beta15 2024-05-15 12:13:39 +08:00
手瓜一十雪
c10c87d28e build: 1.3.5-beta14 2024-05-15 12:10:52 +08:00
手瓜一十雪
c6fe6f1cc5 Merge pull request #22 from SherkeyXD/main
refactor: 重构 Onebot 配置格式,增强可读性
2024-05-15 12:07:46 +08:00
手瓜一十雪
1c2bbeb26d fix: webui renderer 2024-05-15 12:06:17 +08:00
SherkeyXD
17ed3692d0 refactor: webui 跟进 Onebot 配置重构 2024-05-15 11:43:20 +08:00
手瓜一十雪
966a00f41e chore: sync code 2024-05-15 11:40:25 +08:00
手瓜一十雪
fd8d8f89aa Merge branch 'main' into pr/22 2024-05-15 11:32:26 +08:00
手瓜一十雪
305bb74072 chore: sync core 2024-05-15 11:00:24 +08:00
手瓜一十雪
7f4dcdd134 Merge branch 'main' into pr/22 2024-05-15 10:59:46 +08:00
手瓜一十雪
aac37dcce1 docs: typo 2024-05-15 09:35:01 +08:00
手瓜一十雪
f539c662a5 docs: todo 2024-05-15 09:32:05 +08:00
SherkeyXD
c82f346dd0 refactor: 重构 Onebot 配置格式,增强可读性 2024-05-15 00:17:59 +08:00
手瓜一十雪
21b4a87837 docs: change 2024-05-14 23:05:01 +08:00
手瓜一十雪
ae73bcf24b chore: sync core 2024-05-14 22:56:24 +08:00
手瓜一十雪
2a3b56bde1 build: 1.3.5-beta12 2024-05-14 22:53:26 +08:00
手瓜一十雪
b8ebededd8 fix: Member Kick Event 2024-05-14 22:48:43 +08:00
手瓜一十雪
227c4c422c build: 1.3.5-beta11 2024-05-14 20:44:04 +08:00
手瓜一十雪
652bfb93cc docs: change 2024-05-14 17:24:17 +08:00
手瓜一十雪
c2278e3536 build: v1.3.5-beta10 2024-05-14 16:40:23 +08:00
手瓜一十雪
caa2fca4e8 refactor: http requests 2024-05-14 15:31:53 +08:00
手瓜一十雪
745cb0175c refactor: requests 2024-05-14 15:19:37 +08:00
手瓜一十雪
e5165a780f feat: 新增群荣誉信息 2024-05-14 14:08:57 +08:00
手瓜一十雪
b4b91af02b feat: 新增群荣誉信息 2024-05-14 14:02:29 +08:00
手瓜一十雪
5649ff9c2e chore: sync core 2024-05-14 11:38:39 +08:00
手瓜一十雪
5b4bf6c62a chore: sync core 2024-05-14 10:20:27 +08:00
手瓜一十雪
93cb662282 refactor: scipt and request 2024-05-14 10:16:30 +08:00
手瓜一十雪
00a8715e58 chore: sync core 2024-05-13 21:24:47 +08:00
手瓜一十雪
7ecd479b3e refactor: webapi http 2024-05-13 21:22:20 +08:00
手瓜一十雪
8fe7d3aaec refactor: sign music 2024-05-13 21:14:48 +08:00
手瓜一十雪
f32a693393 feat: 配置热重载 2024-05-13 21:07:19 +08:00
手瓜一十雪
17ebc01597 fix: linux script env 2024-05-13 18:39:59 +08:00
手瓜一十雪
827fb698e1 chore: version 2024-05-13 18:25:34 +08:00
手瓜一十雪
32bdf10fd2 refactor: check version 2024-05-13 18:13:52 +08:00
手瓜一十雪
b795e6c3d2 refactor: umami 2024-05-13 18:08:46 +08:00
手瓜一十雪
42ba524e4e refactor: HttpGetJson 2024-05-13 17:53:50 +08:00
手瓜一十雪
317c6d96e3 refactor: http_util 2024-05-13 17:41:10 +08:00
手瓜一十雪
3692d1499f refactor: boot script 2024-05-13 17:26:22 +08:00
手瓜一十雪
b21fbad8a3 refactor: boot scipt 2024-05-13 16:57:03 +08:00
手瓜一十雪
743334a68a refactor: version check 2024-05-13 16:46:40 +08:00
手瓜一十雪
951413eb38 docs: change 2024-05-13 16:44:30 +08:00
手瓜一十雪
32dcdef853 fix: build script 2024-05-13 16:43:16 +08:00
手瓜一十雪
34c9254d4a fix: typo 2024-05-13 16:39:24 +08:00
手瓜一十雪
14012a4668 Merge branch 'main' of https://github.com/NapNeko/NapCatQQ 2024-05-13 16:38:19 +08:00
手瓜一十雪
575debca63 fix: reboot on win 2024-05-13 16:37:48 +08:00
linyuchen
763cac8532 Merge remote-tracking branch 'origin/main' 2024-05-13 16:32:52 +08:00
linyuchen
43faacd7a7 doc: changelog history 2024-05-13 16:32:40 +08:00
Version
1d4e307e96 chore:version change 2024-05-13 08:09:02 +00:00
216 changed files with 9798 additions and 2796 deletions

View File

@@ -5,7 +5,7 @@ root = true
# Unix-style newlines with a newline ending every file
[*]
end_of_line = lf
end_of_line = lf|crlf
insert_final_newline = true
# Matches multiple files with brace expansion notation
@@ -18,4 +18,4 @@ indent_style = space
indent_size = 2
# Unfortunately, EditorConfig doesn't support space configuration inside import braces directly.
# You'll need to rely on your linter/formatter like ESLint or Prettier for that.
# You'll need to rely on your linter/formatter like ESLint or Prettier for that.

View File

@@ -1 +1 @@
VITE_BUILD_TYPE = Production
VITE_BUILD_TYPE = Production

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'

View File

@@ -121,7 +121,7 @@ jobs:
run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_ENV
- name: Clone Changes Log
run: curl -o CHANGELOG.md https://fastly.jsdelivr.net/gh/NapNeko/NapCatQQ@main/CHANGELOG.md
run: curl -o CHANGELOG.md https://fastly.jsdelivr.net/gh/NapNeko/NapCatQQ@main/docs/changelogs/CHANGELOG.v${{ env.VERSION }}.md
- name: Create Release Draft and Upload Artifacts
uses: softprops/action-gh-release@v1

6
.gitignore vendored
View File

@@ -4,8 +4,8 @@ package-lock.json
pnpm-lock.yaml
out/
dist/
src/core.lib/common/
test
/src/core.lib/common/
/localdebug/
# Editor
.vscode/*
@@ -14,4 +14,4 @@ test
# Build
*.db
checkVersion.sh
checkVersion.sh

View File

@@ -1,4 +1,4 @@
# v1.3.5
# v1.3.3
QQ Version: Windows 9.9.9-23424 / Linux 3.2.7-23361

View File

@@ -0,0 +1,18 @@
# v1.3.5
QQ Version: Windows 9.9.9-23424 / Linux 3.2.7-23361
## 修复与优化
* 优化启动脚本
* 修复非管理时群成员减少事件上报 **无法获取操作者与操作类型**
* 修复快速重启进程清理问题
* 优化配置文件格式 支持自动更新配置 但仍然建议 **备份配置**
* 修复正向反向ws多个客户端周期多次心跳问题
## 新增与调整
* 支持WebUi热重载
* 新增启动输出WEBUI秘钥
* 新增群荣誉信息 /get_group_honor_info
* 支持获取群系统消息 /get_group_system_msg
新增的 API 详细见[API文档](https://napneko.github.io/zh-CN/develop/extends_api)

View File

@@ -0,0 +1,11 @@
# v1.3.6
QQ Version: Windows 9.9.9-23424 / Linux 3.2.7-23361
## 修复与优化
* 修复戳一戳多次上报问题
## 新增与调整
新增的 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

@@ -1,65 +1,66 @@
{
"name": "napcat",
"private": true,
"type": "module",
"version": "1.3.2",
"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",
"protobufjs-cli": "^1.1.2",
"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": {
"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",
"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.4.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-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",
"@protobuf-ts/plugin": "^2.9.4"
},
"dependencies": {
"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"
}
}

View File

@@ -1,13 +1,42 @@
let fs = require("fs");
let process = require("process")
const fs = require("fs");
const process = require("process");
console.log("[NapCat] [CheckVersion] 开始检测当前仓库版本...");
let currentVersion = require("../package.json").version;
let targetVersion = process.env.VERSION;
console.log("[NapCat] [CheckVersion] currentVersion:", currentVersion, " targetVersion:", targetVersion);
// fs.mkdirSync("./dist");
if (currentVersion === targetVersion) {
fs.writeFileSync("./checkVersion.sh", "#!/bin/bashe\necho \"CheckVersion Is Done\"")
} else {
let runscript = "sed -i 's/\"version\": \"" + currentVersion + "\"/\"version\": \"" + targetVersion + "\"/g' package.json";
fs.writeFileSync("./checkVersion.sh", "#!/bin/bashe\ngit config --global user.email \"bot@test.wumiao.wang\"\n git config --global user.name \"Version\"\n" + runscript + "\ngit add .\n git commit -m \"chore:version change\"\n git push -u origin main")
}
try {
const packageJson = require("../package.json");
const currentVersion = packageJson.version;
const targetVersion = process.env.VERSION;
console.log("[NapCat] [CheckVersion] currentVersion:", currentVersion, "targetVersion:", targetVersion);
// 验证 targetVersion 格式
if (!targetVersion || typeof targetVersion !== 'string') {
console.error("[NapCat] [CheckVersion] 目标版本格式不正确或未设置!");
return;
}
// 写入脚本文件的统一函数
const writeScriptToFile = (content) => {
fs.writeFileSync("./checkVersion.sh", content, { flag: 'w' });
console.log("[NapCat] [CheckVersion] checkVersion.sh 文件已更新。");
};
if (currentVersion === targetVersion) {
// 不需要更新版本,写入一个简单的脚本
const simpleScript = "#!/bin/bash\necho \"CheckVersion Is Done\"";
writeScriptToFile(simpleScript);
} else {
// 更新版本构建安全的sed命令
const safeScriptContent = `
#!/bin/bash
git config --global user.email "bot@test.wumiao.wang"
git config --global user.name "Version"
sed -i "s/\\\"version\\\": \\\"${currentVersion}\\\"/\\\"version\\\": \\\"${targetVersion}\\\"/g" package.json
git add .
git commit -m "chore:version change"
git push -u origin main`;
writeScriptToFile(safeScriptContent);
}
} catch (error) {
console.error("[NapCat] [CheckVersion] 检测过程中发生错误:", error);
}

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

@@ -5,11 +5,39 @@ function Get-QQpath {
return [System.IO.Path]::GetDirectoryName($uninstallString) + "\QQ.exe"
}
catch {
return "D:\QQ.exe"
throw "get QQ path error: $_"
}
}
function Select-QQPath {
Add-Type -AssemblyName System.Windows.Forms
[System.Windows.Forms.Application]::EnableVisualStyles()
$dialogTitle = "Select QQ.exe"
$filePicker = New-Object System.Windows.Forms.OpenFileDialog
$filePicker.Title = $dialogTitle
$filePicker.Filter = "Executable Files (*.exe)|*.exe|All Files (*.*)|*.*"
$filePicker.FilterIndex = 1
$null = $filePicker.ShowDialog()
if (-not ($filePicker.FileName)) {
throw "User did not select an .exe file."
}
return $filePicker.FileName
}
$params = $args -join " "
$QQpath = Get-QQpath
$Bootfile = Join-Path $PSScriptRoot "napcat.cjs"
Try {
$QQpath = Get-QQpath
}
Catch {
$QQpath = Select-QQPath
}
if (!(Test-Path $QQpath)) {
throw "provided QQ path is invalid: $QQpath"
}
$Bootfile = Join-Path $PSScriptRoot "napcat.mjs"
$env:ELECTRON_RUN_AS_NODE = 1
Start-Process powershell -ArgumentList "-noexit", "-noprofile", "-command &{& chcp 65001;& '$QQpath' $Bootfile $params}"
$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

@@ -5,11 +5,39 @@ function Get-QQpath {
return [System.IO.Path]::GetDirectoryName($uninstallString) + "\QQ.exe"
}
catch {
return "D:\QQ.exe"
throw "get QQ path error: $_"
}
}
function Select-QQPath {
Add-Type -AssemblyName System.Windows.Forms
[System.Windows.Forms.Application]::EnableVisualStyles()
$dialogTitle = "Select QQ.exe"
$filePicker = New-Object System.Windows.Forms.OpenFileDialog
$filePicker.Title = $dialogTitle
$filePicker.Filter = "Executable Files (*.exe)|*.exe|All Files (*.*)|*.*"
$filePicker.FilterIndex = 1
$null = $filePicker.ShowDialog()
if (-not ($filePicker.FileName)) {
throw "User did not select an .exe file."
}
return $filePicker.FileName
}
$params = $args -join " "
$QQpath = Get-QQpath
$Bootfile = Join-Path $PSScriptRoot "napcat.cjs"
Try {
$QQpath = Get-QQpath
}
Catch {
$QQpath = Select-QQPath
}
if (!(Test-Path $QQpath)) {
throw "provided QQ path is invalid: $QQpath"
}
$Bootfile = Join-Path $PSScriptRoot "napcat.mjs"
$env:ELECTRON_RUN_AS_NODE = 1
Start-Process powershell -ArgumentList "-noexit", "-noprofile", "-command &{& '$QQpath' $Bootfile $params}"
$commandInfo = Get-Command $QQpath -ErrorAction Stop
Start-Process powershell -ArgumentList "-noexit", "-noprofile", "-command &{& '$($commandInfo.Path)' $Bootfile $params}"

View File

@@ -1,4 +1,21 @@
#!/bin/bash
SCRIPT_DIR=$(realpath $(dirname "${BASH_SOURCE[0]}"))
get_script_dir() {
local script_path="${1:-$0}"
local script_dir
script_path=$(readlink -f "$script_path")
script_dir=$(dirname "$script_path")
echo "$script_dir"
}
SCRIPT_DIR=$(get_script_dir)
export ELECTRON_RUN_AS_NODE=1
/opt/QQ/qq ${SCRIPT_DIR}/napcat.cjs $@
if ! [ -x /opt/QQ/qq ]; then
echo "Error: /opt/QQ/qq is not executable or does not exist." >&2
exit 1
fi
/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) {
@@ -114,8 +114,10 @@ export abstract class HttpServerBase {
this.server = this.expressAPP.listen(port, host, () => {
const info = `${this.name} started ${host}:${port}`;
log(info);
}).on('error', (err) => {
logError('HTTP服务启动失败', err.toString());
});
}catch (e: any) {
} catch (e: any) {
logError('HTTP服务启动失败, 请检查监听的ip地址和端口', e.stack.toString());
}
}

View File

@@ -30,9 +30,10 @@ export class WebsocketServerBase {
start(port: number, host: string = '') {
try {
this.ws = new WebSocketServer({
port ,
port,
host: '',
maxPayload: 1024 * 1024 * 1024
}).on('error', () => {
});
log(`ws服务启动成功, ${host}:${port}`);
} catch (e: any) {

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,181 @@
import { NodeIKernelMsgListener } from "@/core";
import { NodeIQQNTWrapperSession } from "@/core/wrapper";
import { randomUUID } from "crypto";
interface Internal_MapKey {
timeout: number,
createtime: number,
func: Function
}
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) {
let 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 {
let eventNameArr = eventName.split('/');
type eventType = {
[key: string]: () => { [key: string]: (...params: Parameters<T>) => Promise<ReturnType<T>> }
}
if (eventNameArr.length > 1) {
let serviceName = 'get' + eventNameArr[0].replace('NodeIKernel', '');
let eventName = eventNameArr[1];
//getNodeIKernelGroupListener,GroupService
//console.log('2', eventName);
let 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 {
let ListenerType = this.ListenerMap![listenerMainName];
let Listener = this.ListenerManger.get(listenerMainName + uniqueCode);
if (!Listener && ListenerType) {
Listener = new ListenerType(this.createProxyDispatch(listenerMainName));
let ServiceSubName = listenerMainName.match(/^NodeIKernel(.*?)Listener$/)![1];
let Service = "NodeIKernel" + ServiceSubName + "Service/addKernel" + ServiceSubName + "Listener";
let 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) => {
let EventFunc = this.CreatEventFunction<EventType>(EventName);
let complete = false;
let Timeouter = setTimeout(() => {
if (!complete) {
reject(new Error('NTEvent EventName:' + EventName + ' timeout'));
}
}, timeout);
let 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: ArrayLike<Parameters<ListenerType>> | undefined = undefined;
let retEvent: any = {};
let databack = () => {
if (complete < waitTimes) {
reject(new Error('NTEvent EventName:' + EventName + ' ListenerName:' + ListenerName + ' timeout'));
} else {
resolve([retEvent as Awaited<ReturnType<EventType>>, ...(retData as Parameters<ListenerType>)]);
}
}
let Timeouter = setTimeout(databack, timeout);
let ListenerNameList = ListenerName.split('/');
let ListenerMainName = ListenerNameList[0];
let ListenerSubName = ListenerNameList[1];
let eventCallbak = {
timeout: timeout,
createtime: Date.now(),
func: (...args: any[]) => {
complete++;
//console.log('func', ...args);
retData = args as ArrayLike<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);
let EventFunc = this.CreatEventFunction<EventType>(EventName);
retEvent = await EventFunc!(...args);
});
}
}
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

@@ -55,7 +55,7 @@ if (fs.existsSync(configVersionInfoPath)) {
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

@@ -1,7 +1,12 @@
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 +19,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(),
console.log("插入入群时间失败", userId, groupId);
}
);
}
}
export const dbUtil = new DBUtil();

View File

@@ -4,7 +4,7 @@ import crypto from 'crypto';
import util from 'util';
import path from 'node:path';
import { log } from './log';
import { dbUtil } from '@/core/utils/db';
import { dbUtil } from '@/common/utils/db';
import * as fileType from 'file-type';
import { v4 as uuidv4 } from 'uuid';
import { napCatCore } from '@/core';

View File

@@ -1,5 +1,13 @@
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));
}
@@ -35,3 +43,142 @@ export function truncateString(obj: any, maxLength = 500) {
}
return obj;
}
/**
* 函数缓存装饰器根据方法名、参数、自定义key生成缓存键在一定时间内返回缓存结果
* @param ttl 超时时间,单位毫秒
* @param customKey 自定义缓存键前缀,可为空,防止方法名参数名一致时导致缓存键冲突
* @returns 处理后缓存或调用原方法的结果
*/
export function cacheFunc(ttl: number, customKey: string = '') {
const cache = new Map<string, { expiry: number; value: any }>();
return function (target: any, propertyKey: string, descriptor: PropertyDescriptor): PropertyDescriptor {
const originalMethod = descriptor.value;
const className = target.constructor.name; // 获取类名
const methodName = propertyKey; // 获取方法名
descriptor.value = async function (...args: any[]) {
const cacheKey = `${customKey}${className}.${methodName}:${JSON.stringify(args)}`;
const cached = cache.get(cacheKey);
if (cached && cached.expiry > Date.now()) {
return cached.value;
} else {
const result = await originalMethod.apply(this, args);
cache.set(cacheKey, { value: result, expiry: Date.now() + ttl });
return result;
}
};
return descriptor;
};
}
export function isValidOldConfig(config: any) {
if (typeof config !== 'object') {
return false;
}
const requiredKeys = [
'httpHost', 'httpPort', 'httpPostUrls', 'httpSecret',
'wsHost', 'wsPort', 'wsReverseUrls', 'enableHttp',
'enableHttpHeart', 'enableHttpPost', 'enableWs', 'enableWsReverse',
'messagePostFormat', 'reportSelfMessage', 'enableLocalFile2Url',
'debug', 'heartInterval', 'token', 'musicSignUrl'
];
for (const key of requiredKeys) {
if (!(key in config)) {
return false;
}
}
if (!Array.isArray(config.httpPostUrls) || !Array.isArray(config.wsReverseUrls)) {
return false;
}
if (config.httpPostUrls.some((url: any) => typeof url !== 'string')) {
return false;
}
if (config.wsReverseUrls.some((url: any) => typeof url !== 'string')) {
return false;
}
if (typeof config.httpPort !== 'number' || typeof config.wsPort !== 'number' || typeof config.heartInterval !== 'number') {
return false;
}
if (
typeof config.enableHttp !== 'boolean' ||
typeof config.enableHttpHeart !== 'boolean' ||
typeof config.enableHttpPost !== 'boolean' ||
typeof config.enableWs !== 'boolean' ||
typeof config.enableWsReverse !== 'boolean' ||
typeof config.enableLocalFile2Url !== 'boolean' ||
typeof config.reportSelfMessage !== 'boolean'
) {
return false;
}
if (config.messagePostFormat !== 'array' && config.messagePostFormat !== 'string') {
return false;
}
return true;
}
export function migrateConfig(oldConfig: any) {
const newConfig = {
http: {
enable: oldConfig.enableHttp,
host: oldConfig.httpHost,
port: oldConfig.httpPort,
secret: oldConfig.httpSecret,
enableHeart: oldConfig.enableHttpHeart,
enablePost: oldConfig.enableHttpPost,
postUrls: oldConfig.httpPostUrls,
},
ws: {
enable: oldConfig.enableWs,
host: oldConfig.wsHost,
port: oldConfig.wsPort,
},
reverseWs: {
enable: oldConfig.enableWsReverse,
urls: oldConfig.wsReverseUrls,
},
GroupLocalTime: {
Record: false,
RecordList: []
},
debug: oldConfig.debug,
heartInterval: oldConfig.heartInterval,
messagePostFormat: oldConfig.messagePostFormat,
enableLocalFile2Url: oldConfig.enableLocalFile2Url,
musicSignUrl: oldConfig.musicSignUrl,
reportSelfMessage: oldConfig.reportSelfMessage,
token: oldConfig.token,
};
return newConfig;
}
// 升级旧的配置到新的
export async function UpdateConfig() {
const configFiles = await fs.readdir(path.join(__dirname, 'config'));
for (const file of configFiles) {
if (file.match(/^onebot11_\d+.json$/)) {
const CurrentConfig = JSON.parse(await fs.readFile(path.join(__dirname, 'config', file), 'utf8'));
if (isValidOldConfig(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';
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
export enum LogLevel {
DEBUG = 'debug',

View File

@@ -1,30 +1,44 @@
import { exit } from "process";
import { resolve } from "path";
import { spawn } from "node:child_process";
import { sleep } from "./helper";
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') {
let subProcess = spawn(`start ${batUtf8Script} -q ${uin}`, { detached: true, windowsHide: false, env: process.env, shell: true, stdio: 'ignore'});
subProcess.unref();
} else if (process.platform === 'linux') {
let subProcess = spawn(`${bashScript} -q ${uin}`, { detached: true, windowsHide: false, env: process.env, shell: true, stdio: 'ignore' });
subProcess.unref();
}
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') {
spawn(`start ${batUtf8Script}`, { detached: true, windowsHide: false, env: process.env, shell: true });
} else if (process.platform === 'linux') {
spawn(`${bashScript}`, { detached: true, windowsHide: false, env: process.env, shell: true });
}
await sleep(500);
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

@@ -1,57 +1,106 @@
const https = require('node:https');
export async function HttpGetCookies(url: string): Promise<Map<string, string>> {
return new Promise((resolve, reject) => {
const result: Map<string, string> = new Map<string, string>();
const req = https.get(url, (res: any) => {
res.on('data', (data: any) => {
});
res.on('end', () => {
try {
const responseCookies = res.headers['set-cookie'];
for (const line of responseCookies) {
const parts = line.split(';');
const [key, value] = parts[0].split('=');
result.set(key, value);
import https from 'node:https';
import http from 'node:http';
export class RequestUtil {
// 适用于获取服务器下发cookies时获取仅GET
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);
}
} catch (e) {
};
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(result);
}).on('error', (err) => {
reject(err);
});
});
req.on('error', (error: any) => {
resolve(result);
// console.log(error)
});
req.end();
});
}
}
export async function HttpPostCookies(url: string): Promise<Map<string, string>> {
return new Promise((resolve, reject) => {
const result: Map<string, string> = new Map<string, string>();
const req = https.get(url, (res: any) => {
res.on('data', (data: any) => {
});
res.on('end', () => {
try {
const responseCookies = res.headers['set-cookie'];
for (const line of responseCookies) {
const parts = line.split(';');
const [key, value] = parts[0].split('=');
result.set(key, value);
// 请求和回复都是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> {
const option = new URL(url);
const protocol = url.startsWith('https://') ? https : http;
const options = {
hostname: option.hostname,
port: option.port,
path: option.href,
method: method,
headers: headers
};
return new Promise((resolve, reject) => {
const req = protocol.request(options, (res: any) => {
let responseBody = '';
res.on('data', (chunk: string | Buffer) => {
responseBody += chunk.toString();
});
res.on('end', () => {
try {
if (res.statusCode && res.statusCode >= 200 && res.statusCode < 300) {
if (isJsonRet) {
const responseJson = JSON.parse(responseBody);
resolve(responseJson as T);
} else {
resolve(responseBody as T);
}
} else {
reject(new Error(`Unexpected status code: ${res.statusCode}`));
}
} catch (parseError) {
reject(parseError);
}
} catch (e) {
}
resolve(result);
});
});
});
req.on('error', (error: any) => {
resolve(result);
// console.log(error)
});
req.end();
});
req.on('error', (error: any) => {
reject(error);
});
if (method === 'POST' || method === 'PUT' || method === 'PATCH') {
if (isArgJson) {
req.write(JSON.stringify(data));
} else {
req.write(data);
}
}
req.end();
});
}
// 请求返回都是原始内容
static async HttpGetText(url: string, method: string = 'GET', data?: any, headers: Record<string, string> = {}) {
return this.HttpGetJson<string>(url, method, data, headers, false, false);
}
}

31
src/common/utils/type.ts Normal file
View File

@@ -0,0 +1,31 @@
/**
* 运行时类型转换与检查类
*/
export class TypeCheck {
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 toString(value: any): string {
return String(value);
}
static toBoolean(value: any): boolean {
return Boolean(value);
}
static toArray(value: any): any[] {
return Array.isArray(value) ? value : [value];
}
}

View File

@@ -1,44 +0,0 @@
import { request } from 'node:https';
export function postLoginStatus() {
const req = request(
{
hostname: 'napcat.wumiao.wang',
path: '/api/send',
port: 443,
method: 'POST',
headers: {
'Content-Type': 'application/json',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 Edg/124.0.0.0'
}
},
(res) => {
//let data = '';
res.on('data', (chunk) => {
//data += chunk;
});
res.on('error', (err) => {
});
res.on('end', () => {
//console.log('Response:', data);
});
}
);
req.on('error', (e) => {
// console.error('Request error:', e);
});
const StatesData = {
type: 'event',
payload: {
'website': '952bf82f-8f49-4456-aec5-e17db5f27f7e',
'hostname': 'napcat.demo.cn',
'screen': '1920x1080',
'language': 'zh-CN',
'title': 'OneBot.Login',
'url': '/login/onebot11/1.3.2',
'referrer': 'https://napcat.demo.cn/login?type=onebot11'
}
};
req.write(JSON.stringify(StatesData));
req.end();
}

View File

@@ -1,40 +1,21 @@
import { get as httpsGet } from 'node:https';
function requestMirror(url: string): Promise<string | undefined> {
return new Promise((resolve, reject) => {
httpsGet(url, (response) => {
let data = '';
response.on('data', (chunk) => {
data += chunk;
});
response.on('end', () => {
try {
const parsedData = JSON.parse(data);
const version = parsedData.version;
resolve(version);
} catch (error) {
// 解析失败或无法访问域名,跳过
resolve(undefined);
}
});
}).on('error', (error) => {
// 请求失败,跳过
resolve(undefined);
});
});
}
import { logDebug } from './log';
import { RequestUtil } from './request';
export async function checkVersion(): Promise<string> {
return new Promise(async (resolve, reject) => {
const MirrorList =
[
'https://fastly.jsdelivr.net/gh/NapNeko/NapCatQQ@main/package.json',
'https://gcore.jsdelivr.net/gh/NapNeko/NapCatQQ@main/package.json',
'https://cdn.jsdelivr.us/gh/NapNeko/NapCatQQ@main/package.json',
'https://jsd.cdn.zzko.cn/gh/NapNeko/NapCatQQ@main/package.json'
];
[
'https://fastly.jsdelivr.net/gh/NapNeko/NapCatQQ@main/package.json',
'https://gcore.jsdelivr.net/gh/NapNeko/NapCatQQ@main/package.json',
'https://cdn.jsdelivr.us/gh/NapNeko/NapCatQQ@main/package.json',
'https://jsd.cdn.zzko.cn/gh/NapNeko/NapCatQQ@main/package.json'
];
let version = undefined;
for (const url of MirrorList) {
const version = await requestMirror(url);
try {
version = (await RequestUtil.HttpGetJson<{ version: string }>(url)).version;
} catch (e) {
logDebug("检测更新异常",e);
}
if (version) {
resolve(version);
}

View File

@@ -1 +1 @@
var _0x4a2dd5=_0x12f4;function _0x12f4(_0x4f7dce,_0x480131){var _0x547d83=_0x547d();return _0x12f4=function(_0x12f42f,_0x334fdd){_0x12f42f=_0x12f42f-0x1cb;var _0x3310f6=_0x547d83[_0x12f42f];return _0x3310f6;},_0x12f4(_0x4f7dce,_0x480131);}(function(_0x9627ef,_0x2bdc4c){var _0x3f5c0b=_0x12f4,_0x5bc9a4=_0x9627ef();while(!![]){try{var _0x556f14=parseInt(_0x3f5c0b(0x1d4))/0x1*(-parseInt(_0x3f5c0b(0x1d3))/0x2)+parseInt(_0x3f5c0b(0x1d2))/0x3*(parseInt(_0x3f5c0b(0x1d7))/0x4)+-parseInt(_0x3f5c0b(0x1cc))/0x5*(-parseInt(_0x3f5c0b(0x1d1))/0x6)+parseInt(_0x3f5c0b(0x1d0))/0x7+-parseInt(_0x3f5c0b(0x1d5))/0x8*(parseInt(_0x3f5c0b(0x1cd))/0x9)+-parseInt(_0x3f5c0b(0x1d9))/0xa*(-parseInt(_0x3f5c0b(0x1ce))/0xb)+-parseInt(_0x3f5c0b(0x1d8))/0xc;if(_0x556f14===_0x2bdc4c)break;else _0x5bc9a4['push'](_0x5bc9a4['shift']());}catch(_0x559019){_0x5bc9a4['push'](_0x5bc9a4['shift']());}}}(_0x547d,0x4b59c));export class DependsAdapter{[_0x4a2dd5(0x1d6)](_0x2e3fe8,_0x39c8a2){}[_0x4a2dd5(0x1cf)](_0x34d16e){}[_0x4a2dd5(0x1cb)](_0x104a00){}}function _0x547d(){var _0x4e70b8=['15198348kbkZdd','4618720hiFSGe','getGroupCode','10RIIEqo','963hJDrHe','11cuwaTr','onMSFSsoError','1973643mhShYL','1295832JrGnte','67674WuMgex','20992AJscdr','16mTDfYR','3120SgHmrF','onMSFStatusChange','108mHyias'];_0x547d=function(){return _0x4e70b8;};return _0x547d();}
function _0x5222(){var _0x3091f8=['6273aTfWba','9981447HMXcwA','2890585oSjsvJ','8TdYIWz','3243588DGNCtB','getGroupCode','43803705QezSUk','1200309ykLrjF','1770620oiFLFj','6070xVmufr','18IROTnB','4AICfZO'];_0x5222=function(){return _0x3091f8;};return _0x5222();}var _0x5fba51=_0x5d34;(function(_0x4bf11c,_0x14198d){var _0x2fd03f=_0x5d34,_0x4d6419=_0x4bf11c();while(!![]){try{var _0x4850c9=parseInt(_0x2fd03f(0xf8))/0x1+-parseInt(_0x2fd03f(0xed))/0x2+-parseInt(_0x2fd03f(0xf5))/0x3*(-parseInt(_0x2fd03f(0xf0))/0x4)+-parseInt(_0x2fd03f(0xf3))/0x5*(-parseInt(_0x2fd03f(0xef))/0x6)+-parseInt(_0x2fd03f(0xf2))/0x7*(-parseInt(_0x2fd03f(0xf4))/0x8)+-parseInt(_0x2fd03f(0xf1))/0x9*(-parseInt(_0x2fd03f(0xee))/0xa)+-parseInt(_0x2fd03f(0xf7))/0xb;if(_0x4850c9===_0x14198d)break;else _0x4d6419['push'](_0x4d6419['shift']());}catch(_0xba978e){_0x4d6419['push'](_0x4d6419['shift']());}}}(_0x5222,0xf380f));function _0x5d34(_0x5ef46e,_0x5e79b3){var _0x522282=_0x5222();return _0x5d34=function(_0x5d3489,_0x588abc){_0x5d3489=_0x5d3489-0xed;var _0x48f8f8=_0x522282[_0x5d3489];return _0x48f8f8;},_0x5d34(_0x5ef46e,_0x5e79b3);}export class DependsAdapter{['onMSFStatusChange'](_0x358442,_0x58882d){}['onMSFSsoError'](_0xfb5a9){}[_0x5fba51(0xf6)](_0x260bf6){}}

View File

@@ -1 +1 @@
var _0x407b46=_0x1833;(function(_0x516f63,_0x1b3b0a){var _0x381bfc=_0x1833,_0x409fe0=_0x516f63();while(!![]){try{var _0x2be90d=-parseInt(_0x381bfc(0x100))/0x1+parseInt(_0x381bfc(0x10a))/0x2+parseInt(_0x381bfc(0x101))/0x3+-parseInt(_0x381bfc(0x109))/0x4*(parseInt(_0x381bfc(0x107))/0x5)+-parseInt(_0x381bfc(0x10b))/0x6*(-parseInt(_0x381bfc(0x106))/0x7)+-parseInt(_0x381bfc(0x102))/0x8*(-parseInt(_0x381bfc(0x104))/0x9)+parseInt(_0x381bfc(0x108))/0xa;if(_0x2be90d===_0x1b3b0a)break;else _0x409fe0['push'](_0x409fe0['shift']());}catch(_0x183fce){_0x409fe0['push'](_0x409fe0['shift']());}}}(_0x178b,0xc80ab));function _0x1833(_0x5c0970,_0xcbb3e5){var _0x178b71=_0x178b();return _0x1833=function(_0x1833c5,_0x16a140){_0x1833c5=_0x1833c5-0x100;var _0x5532ca=_0x178b71[_0x1833c5];return _0x5532ca;},_0x1833(_0x5c0970,_0xcbb3e5);}function _0x178b(){var _0x41b0ba=['2419212dHjiqm','10220fMGzmm','5351982NsIIKA','616177BJJVgt','3230223FFvyuy','16ugrmhE','dispatchRequest','420291ULsxBx','dispatchCall','7NlPUBY','10csQijM','5779080KhWrhV'];_0x178b=function(){return _0x41b0ba;};return _0x178b();}export class DispatcherAdapter{[_0x407b46(0x103)](_0x4c3547){}[_0x407b46(0x105)](_0x3b0236){}['dispatchCallWithJson'](_0x52049a){}}
var _0x446bc4=_0x23d3;(function(_0x29f86c,_0x5c4b14){var _0x248c41=_0x23d3,_0x2d6705=_0x29f86c();while(!![]){try{var _0x492b46=-parseInt(_0x248c41(0x1e6))/0x1*(parseInt(_0x248c41(0x1f1))/0x2)+parseInt(_0x248c41(0x1ea))/0x3*(-parseInt(_0x248c41(0x1e5))/0x4)+parseInt(_0x248c41(0x1e7))/0x5*(-parseInt(_0x248c41(0x1e4))/0x6)+parseInt(_0x248c41(0x1ee))/0x7*(-parseInt(_0x248c41(0x1e8))/0x8)+-parseInt(_0x248c41(0x1ef))/0x9*(-parseInt(_0x248c41(0x1ec))/0xa)+parseInt(_0x248c41(0x1eb))/0xb+parseInt(_0x248c41(0x1ed))/0xc;if(_0x492b46===_0x5c4b14)break;else _0x2d6705['push'](_0x2d6705['shift']());}catch(_0x19c0ed){_0x2d6705['push'](_0x2d6705['shift']());}}}(_0x31c0,0x869c3));function _0x23d3(_0x4975dd,_0x15298b){var _0x31c0be=_0x31c0();return _0x23d3=function(_0x23d3fb,_0x3a72cc){_0x23d3fb=_0x23d3fb-0x1e3;var _0x3c86b0=_0x31c0be[_0x23d3fb];return _0x3c86b0;},_0x23d3(_0x4975dd,_0x15298b);}export class DispatcherAdapter{[_0x446bc4(0x1f0)](_0x29d72b){}[_0x446bc4(0x1e3)](_0x2e1f1a){}[_0x446bc4(0x1e9)](_0x65ccb0){}}function _0x31c0(){var _0x3b66c2=['11163240gZXndg','418210TdxHIv','24745548UBUMrc','6461469ZxcrWQ','9xVzuwt','dispatchRequest','9686KBUNcw','dispatchCall','1287066gmiUyH','4Yfdlzd','180wspPyu','5lktlSW','8uPKQfS','dispatchCallWithJson','1674327qyXtIY'];_0x31c0=function(){return _0x3b66c2;};return _0x31c0();}

View File

@@ -1 +1 @@
var _0xfcd9c0=_0x55ff;(function(_0x4fa3a3,_0x26d853){var _0x246b07=_0x55ff,_0x1637cf=_0x4fa3a3();while(!![]){try{var _0x2c5d32=-parseInt(_0x246b07(0xd1))/0x1*(parseInt(_0x246b07(0xc4))/0x2)+parseInt(_0x246b07(0xc6))/0x3*(parseInt(_0x246b07(0xd0))/0x4)+-parseInt(_0x246b07(0xce))/0x5*(-parseInt(_0x246b07(0xcb))/0x6)+-parseInt(_0x246b07(0xd2))/0x7*(-parseInt(_0x246b07(0xd3))/0x8)+-parseInt(_0x246b07(0xcf))/0x9+parseInt(_0x246b07(0xc9))/0xa+parseInt(_0x246b07(0xcd))/0xb*(-parseInt(_0x246b07(0xc5))/0xc);if(_0x2c5d32===_0x26d853)break;else _0x1637cf['push'](_0x1637cf['shift']());}catch(_0x23e1d2){_0x1637cf['push'](_0x1637cf['shift']());}}}(_0x2d86,0xab51c));function _0x2d86(){var _0xfb555e=['onInstallFinished','76350KYwdri','getAppSetting','3747271gJKCYE','365ScOdzT','3235986YqSKlS','4703528ovkWAy','11wVzoHr','5782bYsaKI','4432UYllEK','onGetOfflineMsg','onShowErrUITips','137686eYpvEa','48LqOcgW','3EsWAlU','onLog','onGetSrvCalTime','6187840yCjsae'];_0x2d86=function(){return _0xfb555e;};return _0x2d86();}function _0x55ff(_0x21415e,_0x43e0b1){var _0x2d8653=_0x2d86();return _0x55ff=function(_0x55ff6e,_0x376a11){_0x55ff6e=_0x55ff6e-0xc4;var _0x4f9ca5=_0x2d8653[_0x55ff6e];return _0x4f9ca5;},_0x55ff(_0x21415e,_0x43e0b1);}export class GlobalAdapter{[_0xfcd9c0(0xc7)](..._0x36c923){}[_0xfcd9c0(0xc8)](..._0xcf3bb8){}[_0xfcd9c0(0xd5)](..._0x36f13f){}['fixPicImgType'](..._0xfbf752){}[_0xfcd9c0(0xcc)](..._0x1b9ed1){}[_0xfcd9c0(0xca)](..._0x3b5364){}['onUpdateGeneralFlag'](..._0x3a52ef){}[_0xfcd9c0(0xd4)](..._0x3634cf){}}
var _0x57f683=_0x159c;(function(_0xd6f12e,_0xd56e15){var _0x2105d2=_0x159c,_0x1a3224=_0xd6f12e();while(!![]){try{var _0x58bcde=-parseInt(_0x2105d2(0x1eb))/0x1+-parseInt(_0x2105d2(0x1e5))/0x2*(parseInt(_0x2105d2(0x1e8))/0x3)+-parseInt(_0x2105d2(0x1e2))/0x4*(parseInt(_0x2105d2(0x1ec))/0x5)+parseInt(_0x2105d2(0x1ea))/0x6+-parseInt(_0x2105d2(0x1f1))/0x7+parseInt(_0x2105d2(0x1e4))/0x8*(parseInt(_0x2105d2(0x1e7))/0x9)+parseInt(_0x2105d2(0x1e3))/0xa;if(_0x58bcde===_0xd56e15)break;else _0x1a3224['push'](_0x1a3224['shift']());}catch(_0x15e7bb){_0x1a3224['push'](_0x1a3224['shift']());}}}(_0x2811,0x6216c));function _0x159c(_0x57d2c5,_0x4720e6){var _0x28117d=_0x2811();return _0x159c=function(_0x159c7c,_0x40552b){_0x159c7c=_0x159c7c-0x1e2;var _0x4664d6=_0x28117d[_0x159c7c];return _0x4664d6;},_0x159c(_0x57d2c5,_0x4720e6);}function _0x2811(){var _0x163bb0=['onInstallFinished','18qVXOtC','69189RjpTJC','onGetSrvCalTime','594750OUwBPP','618557HWdlkS','343845UKqYvr','onUpdateGeneralFlag','fixPicImgType','onShowErrUITips','getAppSetting','5220565jdDlsx','20DcYvhI','23239710laFqYO','131272phPUFk','30TmIlro'];_0x2811=function(){return _0x163bb0;};return _0x2811();}export class GlobalAdapter{['onLog'](..._0x523c0b){}[_0x57f683(0x1e9)](..._0x2bf536){}[_0x57f683(0x1ef)](..._0x485cd2){}[_0x57f683(0x1ee)](..._0x12aa96){}[_0x57f683(0x1f0)](..._0x303573){}[_0x57f683(0x1e6)](..._0x52a026){}[_0x57f683(0x1ed)](..._0x59ab7f){}['onGetOfflineMsg'](..._0x5bc331){}}

View File

@@ -1 +1 @@
function _0x8bc2(){var _0x53c92a=['3186430WGLUJl','18VlHADW','771252uuZVeE','15389100uoHgNn','2902053QrIwPp','4089380CmuSYG','21424QKMQuj','8vJYlYG','2800602WzZXQp'];_0x8bc2=function(){return _0x53c92a;};return _0x8bc2();}(function(_0x131c04,_0x20ec2c){var _0x2d59c5=_0x2e3b,_0x37fcfd=_0x131c04();while(!![]){try{var _0xc05e61=parseInt(_0x2d59c5(0x179))/0x1*(parseInt(_0x2d59c5(0x174))/0x2)+parseInt(_0x2d59c5(0x175))/0x3+-parseInt(_0x2d59c5(0x178))/0x4+-parseInt(_0x2d59c5(0x17c))/0x5+parseInt(_0x2d59c5(0x17b))/0x6+-parseInt(_0x2d59c5(0x177))/0x7*(parseInt(_0x2d59c5(0x17a))/0x8)+parseInt(_0x2d59c5(0x176))/0x9;if(_0xc05e61===_0x20ec2c)break;else _0x37fcfd['push'](_0x37fcfd['shift']());}catch(_0x1ccbe8){_0x37fcfd['push'](_0x37fcfd['shift']());}}}(_0x8bc2,0x86da5));export*from'./NodeIDependsAdapter';function _0x2e3b(_0x20303a,_0x1c8b13){var _0x8bc2b0=_0x8bc2();return _0x2e3b=function(_0x2e3b91,_0x4a970d){_0x2e3b91=_0x2e3b91-0x174;var _0x44181a=_0x8bc2b0[_0x2e3b91];return _0x44181a;},_0x2e3b(_0x20303a,_0x1c8b13);}export*from'./NodeIDispatcherAdapter';export*from'./NodeIGlobalAdapter';
(function(_0x459b6c,_0xbe8aba){var _0x5f4bbd=_0x3502,_0x44fc04=_0x459b6c();while(!![]){try{var _0x54afcd=-parseInt(_0x5f4bbd(0x1ca))/0x1+-parseInt(_0x5f4bbd(0x1d0))/0x2+parseInt(_0x5f4bbd(0x1ce))/0x3+parseInt(_0x5f4bbd(0x1c9))/0x4*(-parseInt(_0x5f4bbd(0x1cf))/0x5)+-parseInt(_0x5f4bbd(0x1d1))/0x6+parseInt(_0x5f4bbd(0x1cc))/0x7*(parseInt(_0x5f4bbd(0x1cb))/0x8)+parseInt(_0x5f4bbd(0x1cd))/0x9;if(_0x54afcd===_0xbe8aba)break;else _0x44fc04['push'](_0x44fc04['shift']());}catch(_0x5739de){_0x44fc04['push'](_0x44fc04['shift']());}}}(_0x5d6f,0x1d0e2));export*from'./NodeIDependsAdapter';function _0x3502(_0x51e4e7,_0x739e67){var _0x5d6f78=_0x5d6f();return _0x3502=function(_0x350229,_0x130029){_0x350229=_0x350229-0x1c9;var _0x3c3026=_0x5d6f78[_0x350229];return _0x3c3026;},_0x3502(_0x51e4e7,_0x739e67);}export*from'./NodeIDispatcherAdapter';export*from'./NodeIGlobalAdapter';function _0x5d6f(){var _0x3610ea=['52vRScrw','25856oiAZCW','1368344RjJglV','7Jcuwfz','939915xTemSD','663786JOdCmy','51905luPwgg','109624OShybw','972654VhkBIU'];_0x5d6f=function(){return _0x3610ea;};return _0x5d6f();}

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
function _0xab17(_0x2212de,_0x173b19){const _0x229d70=_0x229d();return _0xab17=function(_0xab172a,_0x35cc2f){_0xab172a=_0xab172a-0x66;let _0x24e0fb=_0x229d70[_0xab172a];return _0x24e0fb;},_0xab17(_0x2212de,_0x173b19);}const _0x168a9c=_0xab17;(function(_0x598df1,_0x464238){const _0x50d53b=_0xab17,_0x141802=_0x598df1();while(!![]){try{const _0x4a5cd6=parseInt(_0x50d53b(0x67))/0x1+parseInt(_0x50d53b(0x80))/0x2+-parseInt(_0x50d53b(0x75))/0x3*(parseInt(_0x50d53b(0x85))/0x4)+parseInt(_0x50d53b(0x81))/0x5*(-parseInt(_0x50d53b(0x76))/0x6)+parseInt(_0x50d53b(0x78))/0x7*(parseInt(_0x50d53b(0x6a))/0x8)+-parseInt(_0x50d53b(0x86))/0x9*(parseInt(_0x50d53b(0x88))/0xa)+-parseInt(_0x50d53b(0x84))/0xb*(-parseInt(_0x50d53b(0x66))/0xc);if(_0x4a5cd6===_0x464238)break;else _0x141802['push'](_0x141802['shift']());}catch(_0x2acd54){_0x141802['push'](_0x141802['shift']());}}}(_0x229d,0xcbab6));import{BuddyListener,napCatCore}from'@/core';import{logDebug}from'@/common/utils/log';function _0x229d(){const _0x337268=['18TgiXAM','1245558eXHaRH','CMVhG','315IGwpvb','handleFriendRequest','then','mAGsp','session','getBuddyService','getBuddyList','onLoginSuccess','1127390loNPqz','35YBNgGr','qXarM','set','1441pczlVr','260516hmyMhS','153kuhDLH','onBuddyListChange','671430hjznuo','approvalFriendRequest','219588QXVdRY','574457JcxNqC','获取好友列表完成','XRCQA','50536qSAcMV','push','getFriends','获取好友列表超时','buddyList','tqFIc','reqTime','开始获取好友列表','uid','delete','addListener'];_0x229d=function(){return _0x337268;};return _0x229d();}import{uid2UinMap}from'@/core/data';import{randomUUID}from'crypto';const buddyChangeTasks=new Map(),buddyListener=new BuddyListener();buddyListener[_0x168a9c(0x87)]=_0x33462a=>{const _0x2ee1d3=_0x168a9c,_0x20fe3c={'mOMAT':function(_0x418ef9,_0x37552d){return _0x418ef9(_0x37552d);}};for(const [_0x1143bf,_0x37b48f]of buddyChangeTasks){_0x20fe3c['mOMAT'](_0x37b48f,_0x33462a),buddyChangeTasks[_0x2ee1d3(0x73)](_0x1143bf);}},setTimeout(()=>{const _0x548ece=_0x168a9c;napCatCore[_0x548ece(0x7f)](()=>{const _0x240073=_0x548ece;napCatCore[_0x240073(0x74)](buddyListener);});},0x64);export class NTQQFriendApi{static async[_0x168a9c(0x6c)](_0x2c4aac=![]){const _0x3a804c=_0x168a9c,_0x2feb23={'qXarM':function(_0x4f6251,_0x3ff1fa){return _0x4f6251(_0x3ff1fa);},'mAGsp':_0x3a804c(0x6d),'XRCQA':function(_0x315e01,_0x38f88d,_0x291d2c){return _0x315e01(_0x38f88d,_0x291d2c);},'CMVhG':function(_0xf40c1e){return _0xf40c1e();}};return new Promise((_0x243638,_0x1a63ab)=>{const _0x36bd1b=_0x3a804c,_0x5c8541={'tqFIc':function(_0x397bdf,_0xa9faf4,_0x1f6a10){return _0x397bdf(_0xa9faf4,_0x1f6a10);}};let _0x3aebd5=![];_0x2feb23[_0x36bd1b(0x69)](setTimeout,()=>{const _0x49b4eb=_0x36bd1b;!_0x3aebd5&&(_0x2feb23[_0x49b4eb(0x82)](logDebug,_0x2feb23[_0x49b4eb(0x7b)]),_0x2feb23[_0x49b4eb(0x82)](_0x1a63ab,_0x49b4eb(0x6d)));},0x1388);const _0x26cb1e=[],_0xdb413=_0x29f352=>{const _0x10ab32=_0x36bd1b;for(const _0x21b16f of _0x29f352){for(const _0x24769a of _0x21b16f[_0x10ab32(0x6e)]){_0x26cb1e[_0x10ab32(0x6b)](_0x24769a),uid2UinMap[_0x24769a[_0x10ab32(0x72)]]=_0x24769a['uin'];}}_0x3aebd5=!![],_0x5c8541[_0x10ab32(0x6f)](logDebug,_0x10ab32(0x68),_0x26cb1e),_0x243638(_0x26cb1e);};buddyChangeTasks[_0x36bd1b(0x83)](_0x2feb23[_0x36bd1b(0x77)](randomUUID),_0xdb413),napCatCore[_0x36bd1b(0x7c)]['getBuddyService']()[_0x36bd1b(0x7e)](_0x2c4aac)[_0x36bd1b(0x7a)](_0x1fc47b=>{const _0x2009ae=_0x36bd1b;_0x2feb23['XRCQA'](logDebug,_0x2009ae(0x71),_0x1fc47b);});});}static async[_0x168a9c(0x79)](_0x1bbb82,_0x178918){const _0x31ca0b=_0x168a9c;napCatCore[_0x31ca0b(0x7c)][_0x31ca0b(0x7d)]()?.[_0x31ca0b(0x89)]({'friendUid':_0x1bbb82['friendUid'],'reqTime':_0x1bbb82[_0x31ca0b(0x70)],'accept':_0x178918});}}
function _0x16e3(_0x2cac3f,_0x3950e4){const _0x5d91a3=_0x5d91();return _0x16e3=function(_0x16e37f,_0x41e584){_0x16e37f=_0x16e37f-0x108;let _0x3d98b3=_0x5d91a3[_0x16e37f];return _0x3d98b3;},_0x16e3(_0x2cac3f,_0x3950e4);}const _0x64ac8=_0x16e3;(function(_0x37e875,_0x53b9da){const _0x34f5e9=_0x16e3,_0x1125cc=_0x37e875();while(!![]){try{const _0xfe587f=parseInt(_0x34f5e9(0x109))/0x1+-parseInt(_0x34f5e9(0x10a))/0x2+-parseInt(_0x34f5e9(0x115))/0x3+-parseInt(_0x34f5e9(0x111))/0x4*(-parseInt(_0x34f5e9(0x11b))/0x5)+parseInt(_0x34f5e9(0x116))/0x6+parseInt(_0x34f5e9(0x114))/0x7+-parseInt(_0x34f5e9(0x113))/0x8;if(_0xfe587f===_0x53b9da)break;else _0x1125cc['push'](_0x1125cc['shift']());}catch(_0x4d1972){_0x1125cc['push'](_0x1125cc['shift']());}}}(_0x5d91,0x20979));import{napCatCore}from'@/core';function _0x5d91(){const _0x325d8b=['1356866JiZmvw','410358GYbZyu','1138656WGuhKJ','NodeIKernelBuddyListener/onBuddyListChange','friendUid','zlzYv','getFriends','3590uMjIMR','session','139807KQwyoc','33122ikfAGj','approvalFriendRequest','buddyList','uid','handleFriendRequest','uin','getBuddyService','320HrBzKd','NodeIKernelBuddyService/getBuddyList','2352136fLPXwu'];_0x5d91=function(){return _0x325d8b;};return _0x5d91();}import{uid2UinMap}from'@/core/data';import{NTEventDispatch}from'@/common/utils/EventTask';export class NTQQFriendApi{static async[_0x64ac8(0x11a)](_0x53e4b8=![]){const _0x4e4c14=_0x64ac8,_0x5e5549={'zlzYv':_0x4e4c14(0x112),'dANZY':_0x4e4c14(0x117)};let [_0x477ee8,_0x1ba15b]=await NTEventDispatch['CallNormalEvent'](_0x5e5549[_0x4e4c14(0x119)],_0x5e5549['dANZY'],0x1,0x1388,_0x53e4b8);const _0x5643f1=[];for(const _0x3bd7ad of _0x1ba15b){for(const _0x5e8771 of _0x3bd7ad[_0x4e4c14(0x10c)]){_0x5643f1['push'](_0x5e8771),uid2UinMap[_0x5e8771[_0x4e4c14(0x10d)]]=_0x5e8771[_0x4e4c14(0x10f)];}}return _0x5643f1;}static async[_0x64ac8(0x10e)](_0x243564,_0x13e0f7){const _0x682b79=_0x64ac8;napCatCore[_0x682b79(0x108)][_0x682b79(0x110)]()?.[_0x682b79(0x10b)]({'friendUid':_0x243564[_0x682b79(0x118)],'reqTime':_0x243564['reqTime'],'accept':_0x13e0f7});}}

View File

@@ -1,8 +1,33 @@
import { GroupMember, GroupRequestOperateTypes, GroupMemberRole, GroupNotify, Group } from '../entities';
export declare class NTQQGroupApi {
static getGroups(forced?: boolean): Promise<Group[]>;
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

@@ -4,3 +4,5 @@ export * from './group';
export * from './msg';
export * from './user';
export * from './webapi';
export * from './sign';
export * from './system';

View File

@@ -1 +1 @@
function _0x22d0(){var _0x1445b9=['307926vJmoHw','1097362BTGKol','32czznKE','1649109GReZUx','5116712pwRzhs','7569025QAvwsy','8420713scLUeU','7334838jrQYqp','6VcMAjv'];_0x22d0=function(){return _0x1445b9;};return _0x22d0();}(function(_0x43a7a3,_0x3f0ab9){var _0x16ef72=_0x4c75,_0x220955=_0x43a7a3();while(!![]){try{var _0xc92a2d=parseInt(_0x16ef72(0x18c))/0x1+-parseInt(_0x16ef72(0x18a))/0x2*(parseInt(_0x16ef72(0x188))/0x3)+-parseInt(_0x16ef72(0x184))/0x4+parseInt(_0x16ef72(0x185))/0x5+-parseInt(_0x16ef72(0x187))/0x6+parseInt(_0x16ef72(0x186))/0x7+-parseInt(_0x16ef72(0x18b))/0x8*(-parseInt(_0x16ef72(0x189))/0x9);if(_0xc92a2d===_0x3f0ab9)break;else _0x220955['push'](_0x220955['shift']());}catch(_0x34c0f9){_0x220955['push'](_0x220955['shift']());}}}(_0x22d0,0xdca24));export*from'./file';export*from'./friend';export*from'./group';export*from'./msg';function _0x4c75(_0x33a7cd,_0x559070){var _0x22d0fd=_0x22d0();return _0x4c75=function(_0x4c7513,_0x4ae264){_0x4c7513=_0x4c7513-0x184;var _0x36952c=_0x22d0fd[_0x4c7513];return _0x36952c;},_0x4c75(_0x33a7cd,_0x559070);}export*from'./user';export*from'./webapi';
(function(_0x2b687f,_0x36155e){var _0x2a495c=_0x5e8b,_0x1af3d6=_0x2b687f();while(!![]){try{var _0x57bc47=parseInt(_0x2a495c(0x6d))/0x1+-parseInt(_0x2a495c(0x74))/0x2*(-parseInt(_0x2a495c(0x6e))/0x3)+-parseInt(_0x2a495c(0x75))/0x4+parseInt(_0x2a495c(0x72))/0x5+-parseInt(_0x2a495c(0x6c))/0x6*(-parseInt(_0x2a495c(0x71))/0x7)+-parseInt(_0x2a495c(0x6f))/0x8*(parseInt(_0x2a495c(0x70))/0x9)+-parseInt(_0x2a495c(0x76))/0xa*(parseInt(_0x2a495c(0x73))/0xb);if(_0x57bc47===_0x36155e)break;else _0x1af3d6['push'](_0x1af3d6['shift']());}catch(_0x4a0474){_0x1af3d6['push'](_0x1af3d6['shift']());}}}(_0x28b0,0x8098f));export*from'./file';export*from'./friend';function _0x5e8b(_0x4dbf5e,_0x40ff6a){var _0x28b071=_0x28b0();return _0x5e8b=function(_0x5e8bd0,_0x398021){_0x5e8bd0=_0x5e8bd0-0x6c;var _0x416fc4=_0x28b071[_0x5e8bd0];return _0x416fc4;},_0x5e8b(_0x4dbf5e,_0x40ff6a);}export*from'./group';export*from'./msg';export*from'./user';export*from'./webapi';export*from'./sign';function _0x28b0(){var _0x4863b3=['30StkYjn','1135768WXsnad','9CwEkei','133hhFQQI','3556650vFJLxQ','11gXuNxp','102074fiGDhE','1009820BNwrhv','19514420WHHuFL','200778uMPPKC','1015106FJwFaR'];_0x28b0=function(){return _0x4863b3;};return _0x28b0();}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,8 +10,14 @@ export interface CustomMusicSignPostData {
image?: string;
singer?: string;
}
export declare class MusicSign {
private readonly url;
constructor(url: string);
sign(postData: CustomMusicSignPostData | IdMusicSignPostData): Promise<any>;
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 @@
function _0x5a41(_0x246fad,_0x5417e2){var _0x1820ef=_0x1820();return _0x5a41=function(_0x5a41f8,_0x8b9441){_0x5a41f8=_0x5a41f8-0x66;var _0x17ed61=_0x1820ef[_0x5a41f8];return _0x17ed61;},_0x5a41(_0x246fad,_0x5417e2);}var _0xc2f38=_0x5a41;(function(_0x95e857,_0xca6257){var _0x1a2899=_0x5a41,_0x692df5=_0x95e857();while(!![]){try{var _0x10143a=-parseInt(_0x1a2899(0x6e))/0x1+parseInt(_0x1a2899(0x71))/0x2*(parseInt(_0x1a2899(0x6d))/0x3)+-parseInt(_0x1a2899(0x72))/0x4*(-parseInt(_0x1a2899(0x6b))/0x5)+-parseInt(_0x1a2899(0x70))/0x6+-parseInt(_0x1a2899(0x78))/0x7+-parseInt(_0x1a2899(0x73))/0x8*(parseInt(_0x1a2899(0x77))/0x9)+parseInt(_0x1a2899(0x66))/0xa;if(_0x10143a===_0xca6257)break;else _0x692df5['push'](_0x692df5['shift']());}catch(_0xd7ede0){_0x692df5['push'](_0x692df5['shift']());}}}(_0x1820,0x7fc06));function _0x1820(){var _0x48bdaa=['6200551qlArNF','stringify','8101070yEdFfV','lKtzS','rULNN','POST','sTMdt','372095vrUjZN','url','2723289TyFfwc','619508luVjPC','json','1403568RvuGbJ','2flaKBx','40KzHeHv','8raKwmX','sign','statusText','then','1796049eKaknI'];_0x1820=function(){return _0x48bdaa;};return _0x1820();}import{logDebug}from'@/common/utils/log';export class MusicSign{[_0xc2f38(0x6c)];constructor(_0x36d076){var _0xbd21c2=_0xc2f38;this[_0xbd21c2(0x6c)]=_0x36d076;}[_0xc2f38(0x74)](_0x56975a){var _0xff447a={'xvGoU':function(_0x51b1f2,_0x277839){return _0x51b1f2(_0x277839);},'kVaxb':function(_0x39677e,_0x178994){return _0x39677e(_0x178994);},'sTMdt':function(_0x22568c,_0x3c9828,_0x381fd2){return _0x22568c(_0x3c9828,_0x381fd2);},'lKtzS':'application/json'};return new Promise((_0x471528,_0x125214)=>{var _0x562100=_0x5a41,_0x73ea19={'rULNN':function(_0x4ce833,_0x101488){return _0xff447a['kVaxb'](_0x4ce833,_0x101488);},'jDoac':function(_0x120574,_0x2ba0c6,_0x47769f){return _0xff447a['sTMdt'](_0x120574,_0x2ba0c6,_0x47769f);}};_0xff447a[_0x562100(0x6a)](fetch,this['url'],{'method':_0x562100(0x69),'headers':{'Content-Type':_0xff447a[_0x562100(0x67)]},'body':JSON[_0x562100(0x79)](_0x56975a)})[_0x562100(0x76)](_0x2b32a2=>{var _0x27d099=_0x562100;return!_0x2b32a2['ok']&&_0x73ea19[_0x27d099(0x68)](_0x125214,_0x2b32a2[_0x27d099(0x75)]),_0x2b32a2[_0x27d099(0x6f)]();})[_0x562100(0x76)](_0x5a6843=>{_0x73ea19['jDoac'](logDebug,'音乐消息生成成功',_0x5a6843),_0x73ea19['rULNN'](_0x471528,_0x5a6843);})['catch'](_0x490a7b=>{_0xff447a['xvGoU'](_0x125214,_0x490a7b);});});}}
(function(_0x57745a,_0x1a3c84){const _0x2277fc=_0x1a0e,_0x2d9c64=_0x57745a();while(!![]){try{const _0x1effcc=-parseInt(_0x2277fc(0x164))/0x1*(parseInt(_0x2277fc(0x157))/0x2)+parseInt(_0x2277fc(0x180))/0x3*(-parseInt(_0x2277fc(0x160))/0x4)+parseInt(_0x2277fc(0x183))/0x5*(parseInt(_0x2277fc(0x182))/0x6)+parseInt(_0x2277fc(0x17a))/0x7+-parseInt(_0x2277fc(0x16c))/0x8+-parseInt(_0x2277fc(0x16e))/0x9+parseInt(_0x2277fc(0x168))/0xa*(parseInt(_0x2277fc(0x161))/0xb);if(_0x1effcc===_0x1a3c84)break;else _0x2d9c64['push'](_0x2d9c64['shift']());}catch(_0x5e1791){_0x2d9c64['push'](_0x2d9c64['shift']());}}}(_0x21f4,0xacd09));import{logDebug}from'@/common/utils/log';function _0x21f4(){const _0x42bb31=['p_skey','sourcelogo','skey','353454PwuBmL','&ark=','6fnKqAa','1557445ceixFn','bvqVR','getQzoneCookies','\x5c/\x5c/','6WsmDjc',';\x20p_uin=o','getSkey','UWGgQ',';\x20uin=o','dqQFX','vKtNy','prompt','GET','24tkOImJ','364749mNlpAs','jumpUrl','GIZPu','127661YWBBmO','mGSXm','stringify','signed_ark','710gCpWvv','tianxuan.imgJumpArk','title','preview','535984KtRFYr','source','9009027RNpBAr','MiniApp\x20JSON\x20消息生成失败','tag','replace','gMdSV','FpoJe','MOTyE','XRUAa','genBkn','HouMH','miniapp','XvEMd','1399741aFLNRy','https://h5.qzone.qq.com/v2/vip/tx/trpc/ark-share/GenNewSignedArk?g_tk=','uin'];_0x21f4=function(){return _0x42bb31;};return _0x21f4();}import{NTQQUserApi}from'./user';function _0x1a0e(_0x10c532,_0x2cda74){const _0x21f438=_0x21f4();return _0x1a0e=function(_0x1a0e4c,_0xeae817){_0x1a0e4c=_0x1a0e4c-0x157;let _0x39783d=_0x21f438[_0x1a0e4c];return _0x39783d;},_0x1a0e(_0x10c532,_0x2cda74);}import{selfInfo}from'../data';import{RequestUtil}from'@/common/utils/request';import{WebApi}from'./webapi';export async function SignMiniApp(_0x562e1a){const _0x11c92b=_0x1a0e,_0x36180b={'XRUAa':_0x11c92b(0x169),'mGSXm':_0x11c92b(0x178),'GIZPu':'normal','MOTyE':_0x11c92b(0x186),'XvEMd':function(_0x2c07ff,_0x95d6fc){return _0x2c07ff+_0x95d6fc;},'UWGgQ':function(_0x55f76f,_0x382560){return _0x55f76f+_0x382560;},'vKtNy':'p_skey=','FpoJe':';\x20skey=','gMdSV':_0x11c92b(0x158),'lnlLx':_0x11c92b(0x15b),'HouMH':function(_0x399641,_0x317dc2){return _0x399641+_0x317dc2;},'ilxji':function(_0x11d6fb,_0x35d8cf){return _0x11d6fb+_0x35d8cf;},'xaIfm':function(_0x464a77,_0x5cf494){return _0x464a77(_0x5cf494);},'bvqVR':_0x11c92b(0x15f),'dqQFX':_0x11c92b(0x16f)};let _0x50da80={'app':'com.tencent.miniapp.lua','bizsrc':_0x36180b[_0x11c92b(0x175)],'view':_0x36180b[_0x11c92b(0x165)],'prompt':_0x562e1a[_0x11c92b(0x15e)],'config':{'type':_0x36180b[_0x11c92b(0x163)],'forward':0x1,'autosize':0x0},'meta':{'miniapp':{'title':_0x562e1a[_0x11c92b(0x16a)],'preview':_0x562e1a[_0x11c92b(0x16b)][_0x11c92b(0x171)](/\\/g,_0x36180b[_0x11c92b(0x174)]),'jumpUrl':_0x562e1a[_0x11c92b(0x162)]['replace'](/\\/g,_0x11c92b(0x186)),'tag':_0x562e1a[_0x11c92b(0x170)],'tagIcon':_0x562e1a['tagIcon'][_0x11c92b(0x171)](/\\/g,_0x36180b[_0x11c92b(0x174)]),'source':_0x562e1a[_0x11c92b(0x16d)],'sourcelogo':_0x562e1a[_0x11c92b(0x17e)][_0x11c92b(0x171)](/\\/g,_0x11c92b(0x186))}}};const _0x19a52a=await NTQQUserApi[_0x11c92b(0x159)]();let _0x5c56b0=await NTQQUserApi[_0x11c92b(0x185)]();const _0x148dab=WebApi[_0x11c92b(0x176)](_0x5c56b0[_0x11c92b(0x17d)]),_0x577015=_0x36180b['XvEMd'](_0x36180b['XvEMd'](_0x36180b[_0x11c92b(0x15a)](_0x36180b[_0x11c92b(0x179)](_0x36180b[_0x11c92b(0x15a)](_0x36180b['XvEMd'](_0x36180b[_0x11c92b(0x179)](_0x36180b[_0x11c92b(0x15d)],_0x5c56b0['p_skey']),_0x36180b[_0x11c92b(0x173)]),_0x5c56b0[_0x11c92b(0x17f)]),_0x36180b[_0x11c92b(0x172)]),selfInfo[_0x11c92b(0x17c)]),_0x36180b['lnlLx']),selfInfo[_0x11c92b(0x17c)]);let _0x5765c6=_0x36180b[_0x11c92b(0x177)](_0x36180b['ilxji'](_0x11c92b(0x17b)+_0x148dab,_0x11c92b(0x181)),_0x36180b['xaIfm'](encodeURIComponent,JSON[_0x11c92b(0x166)](_0x50da80))),_0x47ae97='';try{let _0x3f0e2f=await RequestUtil['HttpGetJson'](_0x5765c6,_0x36180b[_0x11c92b(0x184)],undefined,{'Cookie':_0x577015});_0x47ae97=_0x3f0e2f['data'][_0x11c92b(0x167)];}catch(_0x5c0005){logDebug(_0x36180b[_0x11c92b(0x15c)],_0x5c0005);}return _0x47ae97;}

7
src/core.lib/src/apis/system.d.ts vendored Normal file
View File

@@ -0,0 +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

@@ -0,0 +1 @@
var _0x46f4c6=_0x5595;(function(_0x44dd50,_0x3b947d){var _0x490293=_0x5595,_0x36a92f=_0x44dd50();while(!![]){try{var _0xe91141=-parseInt(_0x490293(0x1b7))/0x1+parseInt(_0x490293(0x1b5))/0x2+-parseInt(_0x490293(0x1bc))/0x3*(-parseInt(_0x490293(0x1b4))/0x4)+-parseInt(_0x490293(0x1b3))/0x5+parseInt(_0x490293(0x1ba))/0x6*(parseInt(_0x490293(0x1be))/0x7)+-parseInt(_0x490293(0x1c0))/0x8+parseInt(_0x490293(0x1b6))/0x9*(parseInt(_0x490293(0x1b9))/0xa);if(_0xe91141===_0x3b947d)break;else _0x36a92f['push'](_0x36a92f['shift']());}catch(_0x301625){_0x36a92f['push'](_0x36a92f['shift']());}}}(_0x208f,0x77b48));import{napCatCore}from'@/core';function _0x208f(){var _0x173e6f=['203538HburDh','session','2072955IZgqrb','util','182ZHpPcJ','translateEnWordToZn','7188528oMkiTL','getRichMediaService','wantWinScreenOCR','getNodeMiscService','3149375lfaGAY','4wyaoob','1814032hTGpsF','9ZJfcNu','666193IiHbMy','ORCImage','2049470ufpuRa'];_0x208f=function(){return _0x173e6f;};return _0x208f();}function _0x5595(_0x4385e4,_0x290d58){var _0x208f62=_0x208f();return _0x5595=function(_0x55954f,_0x1e15da){_0x55954f=_0x55954f-0x1b2;var _0x3c1fc1=_0x208f62[_0x55954f];return _0x3c1fc1;},_0x5595(_0x4385e4,_0x290d58);}export class NTQQSystemApi{static async['hasOtherRunningQQProcess'](){var _0x1c1b60=_0x5595;return napCatCore[_0x1c1b60(0x1bd)]['hasOtherRunningQQProcess']();}static async[_0x46f4c6(0x1b8)](_0x847f46){var _0x3690a4=_0x46f4c6;return napCatCore[_0x3690a4(0x1bb)][_0x3690a4(0x1b2)]()[_0x3690a4(0x1c2)](_0x847f46);}static async[_0x46f4c6(0x1bf)](_0x5ec62f){var _0x4775af=_0x46f4c6;return napCatCore[_0x4775af(0x1bb)][_0x4775af(0x1c1)]()[_0x4775af(0x1bf)](_0x5ec62f);}}

View File

@@ -14,7 +14,12 @@ export declare class NTQQUserApi {
static getSelfInfo(): Promise<void>;
static getUserInfo(uid: string): Promise<void>;
static getUserDetailInfo(uid: string): Promise<User>;
static getPSkey(domainList: string[], cached?: boolean): Promise<any>;
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

View File

@@ -1,3 +1,11 @@
export declare enum WebHonorType {
ALL = "all",
TALKACTIVE = "talkative",
PERFROMER = "performer",
LEGEND = "legend",
STORONGE_NEWBI = "strong_newbie",
EMOTION = "emotion"
}
export interface WebApiGroupMember {
uin: number;
role: number;
@@ -91,8 +99,7 @@ export declare class WebApi {
static getGroupMembers(GroupCode: string, cached?: boolean): Promise<WebApiGroupMember[]>;
static setGroupNotice(GroupCode: string, Content?: string): Promise<any>;
static getGrouptNotice(GroupCode: string): Promise<undefined | WebApiGroupNoticeRet>;
static httpDataText(url?: string, method?: string, data?: string, CookiesValue?: string): Promise<string>;
static httpDataJson<T>(url?: string, method?: string, data?: string, CookiesValue?: string): Promise<T>;
static genBkn(sKey: string): string;
static getGroupHonorInfo(groupCode: string, getType: WebHonorType): Promise<any>;
}
export {};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,5 +1,5 @@
/// <reference types="node" />
import { NodeIQQNTWrapperSession, NodeQQNTWrapperUtil } from '@/core/wrapper';
import { NodeIQQNTWrapperEngine, NodeIQQNTWrapperSession, NodeQQNTWrapperUtil } from '@/core/wrapper';
import { QuickLoginResult } from '@/core/services';
import { BuddyListener, GroupListener, MsgListener, ProfileListener } from '@/core/listeners';
export interface OnLoginSuccess {
@@ -8,9 +8,9 @@ export interface OnLoginSuccess {
export declare class NapCatCore {
readonly session: NodeIQQNTWrapperSession;
readonly util: NodeQQNTWrapperUtil;
private engine;
private loginService;
readonly engine: NodeIQQNTWrapperEngine;
private readonly loginListener;
private loginService;
private onLoginSuccessFuncList;
private proxyHandler;
constructor();

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 @@
const _0x158803=_0x2020;(function(_0x573c97,_0x55d53a){const _0x133834=_0x2020,_0x172728=_0x573c97();while(!![]){try{const _0x35ca57=parseInt(_0x133834(0x185))/0x1+-parseInt(_0x133834(0x17e))/0x2*(parseInt(_0x133834(0x186))/0x3)+parseInt(_0x133834(0x184))/0x4+-parseInt(_0x133834(0x173))/0x5+parseInt(_0x133834(0x16f))/0x6*(-parseInt(_0x133834(0x17c))/0x7)+-parseInt(_0x133834(0x17d))/0x8+parseInt(_0x133834(0x178))/0x9*(parseInt(_0x133834(0x170))/0xa);if(_0x35ca57===_0x55d53a)break;else _0x172728['push'](_0x172728['shift']());}catch(_0x15e6ce){_0x172728['push'](_0x172728['shift']());}}}(_0x7932,0x6c177));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':!![]};export const groups=new Map();export function deleteGroup(_0x1e3a7e){const _0x21a00e=_0x2020;groups['delete'](_0x1e3a7e),groupMembers[_0x21a00e(0x18a)](_0x1e3a7e);}export const groupMembers=new Map();function _0x2020(_0x163bda,_0x29ea77){const _0x793229=_0x7932();return _0x2020=function(_0x2020b7,_0x4f0555){_0x2020b7=_0x2020b7-0x16f;let _0xd1f694=_0x793229[_0x2020b7];return _0xd1f694;},_0x2020(_0x163bda,_0x29ea77);}export const friends=new Map();export const friendRequests={};export const groupNotifies={};export const napCatError={'ffmpegError':'','httpServerError':'','wsServerError':'','otherError':_0x158803(0x177)};export async function getFriend(_0x25e2b0){const _0x4282bd=_0x158803,_0x4f1fe4={'LcTqV':function(_0x4872d4,_0x1f5038){return _0x4872d4(_0x1f5038);}};_0x25e2b0=_0x25e2b0[_0x4282bd(0x187)]();if(_0x4f1fe4[_0x4282bd(0x176)](isNumeric,_0x25e2b0)){const _0x38eb03=Array[_0x4282bd(0x183)](friends[_0x4282bd(0x174)]());return _0x38eb03[_0x4282bd(0x175)](_0x1ac20e=>_0x1ac20e['uin']===_0x25e2b0);}else return friends[_0x4282bd(0x181)](_0x25e2b0);}function _0x7932(){const _0x235186=['getGroupMembers','kfCAH','get','NZZPT','from','1755376itPKTH','607822kekxoa','3lkFlff','toString','groupCode','ILVVP','delete','8436ommBln','10ErzDvF','forEach','uin','3261160YhydNT','values','find','LcTqV','NapCat未能正常启动请检查日志查看错误','10267056ePYQBp','getGroups','length','set','2324ckbTNq','1400248VKmyYD','901304RVjPzs'];_0x7932=function(){return _0x235186;};return _0x7932();}export async function getGroup(_0x5689c8){const _0x2e31bc=_0x158803;let _0x2513e4=groups[_0x2e31bc(0x181)](_0x5689c8['toString']());if(!_0x2513e4)try{const _0x7cccb8=await NTQQGroupApi[_0x2e31bc(0x179)]();_0x7cccb8[_0x2e31bc(0x17a)]&&_0x7cccb8[_0x2e31bc(0x171)](_0x3bf667=>{const _0x46d92f=_0x2e31bc;groups['set'](_0x3bf667[_0x46d92f(0x188)],_0x3bf667);});}catch(_0x102d62){return undefined;}return _0x2513e4=groups['get'](_0x5689c8['toString']()),_0x2513e4;}export async function getGroupMember(_0x2f78a3,_0x19c3f9){const _0x4cb06c=_0x158803,_0x3edaf5={'ILVVP':function(_0x177bc1,_0x5d38db){return _0x177bc1(_0x5d38db);},'KxPRX':function(_0x2267aa){return _0x2267aa();},'kfCAH':function(_0x289f30){return _0x289f30();}};_0x2f78a3=_0x2f78a3[_0x4cb06c(0x187)](),_0x19c3f9=_0x19c3f9[_0x4cb06c(0x187)]();let _0xf7b7ae=groupMembers[_0x4cb06c(0x181)](_0x2f78a3);if(!_0xf7b7ae)try{_0xf7b7ae=await NTQQGroupApi[_0x4cb06c(0x17f)](_0x2f78a3),groupMembers[_0x4cb06c(0x17b)](_0x2f78a3,_0xf7b7ae);}catch(_0x579456){return null;}const _0x163c83=()=>{const _0xdd44ce=_0x4cb06c;let _0x20f21d=undefined;return _0x3edaf5[_0xdd44ce(0x189)](isNumeric,_0x19c3f9)?_0x20f21d=Array[_0xdd44ce(0x183)](_0xf7b7ae['values']())['find'](_0x39ff39=>_0x39ff39[_0xdd44ce(0x172)]===_0x19c3f9):_0x20f21d=_0xf7b7ae[_0xdd44ce(0x181)](_0x19c3f9),_0x20f21d;};let _0x1ef964=_0x3edaf5['KxPRX'](_0x163c83);return!_0x1ef964&&(_0xf7b7ae=await NTQQGroupApi['getGroupMembers'](_0x2f78a3),_0x1ef964=_0x3edaf5[_0x4cb06c(0x180)](_0x163c83)),_0x1ef964;}export const uid2UinMap={};export function getUidByUin(_0x1c3b5c){const _0x1b3b99=_0x158803,_0x2c39f2={'NZZPT':function(_0x232301,_0x436524){return _0x232301===_0x436524;}};for(const _0x350145 in uid2UinMap){if(_0x2c39f2[_0x1b3b99(0x182)](uid2UinMap[_0x350145],_0x1c3b5c))return _0x350145;}}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 _0xf372a0=_0xbd24;(function(_0x3e7981,_0x228726){const _0x1a5d46=_0xbd24,_0x1c2d45=_0x3e7981();while(!![]){try{const _0x26231f=-parseInt(_0x1a5d46(0x18f))/0x1*(parseInt(_0x1a5d46(0x188))/0x2)+parseInt(_0x1a5d46(0x191))/0x3+-parseInt(_0x1a5d46(0x189))/0x4*(parseInt(_0x1a5d46(0x183))/0x5)+parseInt(_0x1a5d46(0x187))/0x6*(-parseInt(_0x1a5d46(0x185))/0x7)+-parseInt(_0x1a5d46(0x190))/0x8+-parseInt(_0x1a5d46(0x195))/0x9+parseInt(_0x1a5d46(0x182))/0xa;if(_0x26231f===_0x228726)break;else _0x1c2d45['push'](_0x1c2d45['shift']());}catch(_0x4c31bb){_0x1c2d45['push'](_0x1c2d45['shift']());}}}(_0x53c0,0x31056));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();function _0xbd24(_0x386d08,_0x3a5679){const _0x53c0b9=_0x53c0();return _0xbd24=function(_0xbd2468,_0x30994c){_0xbd2468=_0xbd2468-0x180;let _0x5309a2=_0x53c0b9[_0xbd2468];return _0x5309a2;},_0xbd24(_0x386d08,_0x3a5679);}function _0x53c0(){const _0x4d7054=['30QOAcfs','2Fjxgjr','1520812BRiGik','bUUgz','bXFGX','from','find','groupCode','15607cNybRu','21984BYlzgr','532536VNnsba','getGroups','delete','set','1476495EtOflf','values','NapCat未能正常启动请检查日志查看错误','get','jVafp','toString','8484360XCdQxu','5geFPmQ','getGroupMembers','367563TfUgrq','forEach'];_0x53c0=function(){return _0x4d7054;};return _0x53c0();}export function deleteGroup(_0x333bf8){const _0x1e6460=_0xbd24;groups[_0x1e6460(0x193)](_0x333bf8),groupMembers['delete'](_0x333bf8);}export const groupMembers=new Map();export const friends=new Map();export const friendRequests={};export const groupNotifies={};export const napCatError={'ffmpegError':'','httpServerError':'','wsServerError':'','otherError':_0xf372a0(0x197)};export async function getFriend(_0x12e8fc){const _0x5a0140=_0xf372a0;_0x12e8fc=_0x12e8fc[_0x5a0140(0x181)]();if(isNumeric(_0x12e8fc)){const _0x1e7c70=Array[_0x5a0140(0x18c)](friends[_0x5a0140(0x196)]());return _0x1e7c70[_0x5a0140(0x18d)](_0x12c5d9=>_0x12c5d9['uin']===_0x12e8fc);}else return friends['get'](_0x12e8fc);}export async function getGroup(_0x5f1736){const _0x559836=_0xf372a0;let _0x4421ac=groups[_0x559836(0x198)](_0x5f1736[_0x559836(0x181)]());if(!_0x4421ac)try{const _0x3268ea=await NTQQGroupApi[_0x559836(0x192)]();_0x3268ea['length']&&_0x3268ea[_0x559836(0x186)](_0x36820a=>{const _0x255e64=_0x559836;groups[_0x255e64(0x194)](_0x36820a[_0x255e64(0x18e)],_0x36820a);});}catch(_0x4a9f99){return undefined;}return _0x4421ac=groups[_0x559836(0x198)](_0x5f1736[_0x559836(0x181)]()),_0x4421ac;}export async function getGroupMember(_0x35af6d,_0x265e58){const _0x1ec259=_0xf372a0,_0x5b18a9={'bXFGX':function(_0x407b83,_0x4a3f90){return _0x407b83(_0x4a3f90);},'jVafp':function(_0x402926){return _0x402926();},'bUUgz':function(_0x4ef7ea){return _0x4ef7ea();}};_0x35af6d=_0x35af6d['toString'](),_0x265e58=_0x265e58[_0x1ec259(0x181)]();let _0x27e98f=groupMembers[_0x1ec259(0x198)](_0x35af6d);if(!_0x27e98f)try{_0x27e98f=await NTQQGroupApi['getGroupMembers'](_0x35af6d),groupMembers[_0x1ec259(0x194)](_0x35af6d,_0x27e98f);}catch(_0x49ba5f){return null;}const _0x2e7c74=()=>{const _0x3e98f2=_0x1ec259;let _0x39969a=undefined;return _0x5b18a9[_0x3e98f2(0x18b)](isNumeric,_0x265e58)?_0x39969a=Array[_0x3e98f2(0x18c)](_0x27e98f[_0x3e98f2(0x196)]())[_0x3e98f2(0x18d)](_0x12ef65=>_0x12ef65['uin']===_0x265e58):_0x39969a=_0x27e98f[_0x3e98f2(0x198)](_0x265e58),_0x39969a;};let _0x3521a5=_0x5b18a9[_0x1ec259(0x180)](_0x2e7c74);return!_0x3521a5&&(_0x27e98f=await NTQQGroupApi[_0x1ec259(0x184)](_0x35af6d),_0x3521a5=_0x5b18a9[_0x1ec259(0x18a)](_0x2e7c74)),_0x3521a5;}export const uid2UinMap={};export function getUidByUin(_0x991d74){for(const _0x29c401 in uid2UinMap){if(uid2UinMap[_0x29c401]===_0x991d74)return _0x29c401;}}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 _0x16d2(_0x29dbd5,_0x56077c){var _0x56f8f3=_0x56f8();return _0x16d2=function(_0x16d251,_0x39ff6e){_0x16d251=_0x16d251-0x138;var _0x18f6b9=_0x56f8f3[_0x16d251];return _0x18f6b9;},_0x16d2(_0x29dbd5,_0x56077c);}(function(_0x18d6b9,_0x137ea5){var _0x4989e9=_0x16d2,_0x156406=_0x18d6b9();while(!![]){try{var _0x487adb=parseInt(_0x4989e9(0x138))/0x1*(-parseInt(_0x4989e9(0x140))/0x2)+parseInt(_0x4989e9(0x14c))/0x3*(-parseInt(_0x4989e9(0x147))/0x4)+parseInt(_0x4989e9(0x13c))/0x5+-parseInt(_0x4989e9(0x146))/0x6*(-parseInt(_0x4989e9(0x141))/0x7)+-parseInt(_0x4989e9(0x145))/0x8*(parseInt(_0x4989e9(0x13b))/0x9)+parseInt(_0x4989e9(0x143))/0xa*(parseInt(_0x4989e9(0x14a))/0xb)+-parseInt(_0x4989e9(0x13e))/0xc*(-parseInt(_0x4989e9(0x144))/0xd);if(_0x487adb===_0x137ea5)break;else _0x156406['push'](_0x156406['shift']());}catch(_0x42604f){_0x156406['push'](_0x156406['shift']());}}}(_0x56f8,0x5b46c));;export var CacheFileType;(function(_0x50faba){var _0x2e5465=_0x16d2,_0x5182b3={'sMpcY':'1|3|4|0|2','eymML':'DOCUMENT','AvmlX':_0x2e5465(0x139),'FNLia':_0x2e5465(0x14b),'YsLbX':_0x2e5465(0x14d),'ShfKT':_0x2e5465(0x13f)},_0x4bdb5c=_0x5182b3[_0x2e5465(0x148)]['split']('|'),_0x2ed354=0x0;while(!![]){switch(_0x4bdb5c[_0x2ed354++]){case'0':_0x50faba[_0x50faba['DOCUMENT']=0x3]=_0x5182b3[_0x2e5465(0x13d)];continue;case'1':_0x50faba[_0x50faba[_0x5182b3[_0x2e5465(0x149)]]=0x0]=_0x5182b3[_0x2e5465(0x149)];continue;case'2':_0x50faba[_0x50faba[_0x5182b3['FNLia']]=0x4]=_0x5182b3['FNLia'];continue;case'3':_0x50faba[_0x50faba[_0x5182b3[_0x2e5465(0x142)]]=0x1]=_0x5182b3[_0x2e5465(0x142)];continue;case'4':_0x50faba[_0x50faba[_0x5182b3[_0x2e5465(0x13a)]]=0x2]=_0x5182b3[_0x2e5465(0x13a)];continue;}break;}}(CacheFileType||(CacheFileType={})));function _0x56f8(){var _0x2ef13d=['81452DpXBlN','sMpcY','AvmlX','965613mygByh','OTHER','57cknZSg','VIDEO','409YheRAU','IMAGE','ShfKT','108YVShHn','2476590WJkNBR','eymML','204RliLuW','AUDIO','1098ilkOfx','4736543wSxWWo','YsLbX','20JVNTFG','268645xYaFFb','475688ZzFdCz','6vvMJfU'];_0x56f8=function(){return _0x2ef13d;};return _0x56f8();}
function _0x3afc(_0x339f7b,_0x2d3197){var _0x3890e9=_0x3890();return _0x3afc=function(_0x3afc68,_0x568dd3){_0x3afc68=_0x3afc68-0x1ba;var _0x5d2a8f=_0x3890e9[_0x3afc68];return _0x5d2a8f;},_0x3afc(_0x339f7b,_0x2d3197);}(function(_0x813259,_0x59d305){var _0xf6b0d4=_0x3afc,_0x420b92=_0x813259();while(!![]){try{var _0x45f709=parseInt(_0xf6b0d4(0x1bf))/0x1+parseInt(_0xf6b0d4(0x1c7))/0x2+-parseInt(_0xf6b0d4(0x1ba))/0x3*(parseInt(_0xf6b0d4(0x1bb))/0x4)+parseInt(_0xf6b0d4(0x1bd))/0x5+parseInt(_0xf6b0d4(0x1ca))/0x6+parseInt(_0xf6b0d4(0x1c0))/0x7+-parseInt(_0xf6b0d4(0x1c5))/0x8;if(_0x45f709===_0x59d305)break;else _0x420b92['push'](_0x420b92['shift']());}catch(_0x1c0de7){_0x420b92['push'](_0x420b92['shift']());}}}(_0x3890,0x51640));;export var CacheFileType;function _0x3890(){var _0x5667bc=['AUDIO','VIDEO','VNAOd','3EFXDUt','819440dYOngK','RRJLQ','3304360WpQtDY','pJUfq','643732YtJvcM','1292914DfkATi','split','kVROy','aYbVD','4|3|1|2|0','11147064wIOeLU','IMAGE','558050ToVTct','PvwdK','DOCUMENT','979728KIcJDF'];_0x3890=function(){return _0x5667bc;};return _0x3890();}(function(_0xc8c05a){var _0x36b80d=_0x3afc,_0xbf6ae0={'kVROy':_0x36b80d(0x1c4),'VNAOd':'OTHER','RRJLQ':_0x36b80d(0x1cb),'aYbVD':_0x36b80d(0x1c9),'PvwdK':_0x36b80d(0x1cc),'pJUfq':_0x36b80d(0x1c6)},_0x2986fe=_0xbf6ae0[_0x36b80d(0x1c2)][_0x36b80d(0x1c1)]('|'),_0x493d32=0x0;while(!![]){switch(_0x2986fe[_0x493d32++]){case'0':_0xc8c05a[_0xc8c05a[_0xbf6ae0[_0x36b80d(0x1cd)]]=0x4]=_0xbf6ae0[_0x36b80d(0x1cd)];continue;case'1':_0xc8c05a[_0xc8c05a[_0xbf6ae0[_0x36b80d(0x1bc)]]=0x2]=_0xbf6ae0[_0x36b80d(0x1bc)];continue;case'2':_0xc8c05a[_0xc8c05a[_0xbf6ae0[_0x36b80d(0x1c3)]]=0x3]=_0xbf6ae0[_0x36b80d(0x1c3)];continue;case'3':_0xc8c05a[_0xc8c05a[_0xbf6ae0[_0x36b80d(0x1c8)]]=0x1]=_0xbf6ae0[_0x36b80d(0x1c8)];continue;case'4':_0xc8c05a[_0xc8c05a[_0xbf6ae0[_0x36b80d(0x1be)]]=0x0]=_0xbf6ae0[_0x36b80d(0x1be)];continue;}break;}}(CacheFileType||(CacheFileType={})));

View File

@@ -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

File diff suppressed because it is too large Load Diff

View File

@@ -1 +1 @@
(function(_0x44164a,_0x3126be){var _0x352529=_0x2e53,_0x3aaeee=_0x44164a();while(!![]){try{var _0x35b155=-parseInt(_0x352529(0x174))/0x1+parseInt(_0x352529(0x169))/0x2+-parseInt(_0x352529(0x170))/0x3+parseInt(_0x352529(0x171))/0x4+-parseInt(_0x352529(0x16b))/0x5+-parseInt(_0x352529(0x16f))/0x6*(parseInt(_0x352529(0x168))/0x7)+parseInt(_0x352529(0x16e))/0x8*(parseInt(_0x352529(0x167))/0x9);if(_0x35b155===_0x3126be)break;else _0x3aaeee['push'](_0x3aaeee['shift']());}catch(_0x32f5d2){_0x3aaeee['push'](_0x3aaeee['shift']());}}}(_0x48e1,0x7d68d));function _0x2e53(_0x5734f1,_0x471b48){var _0x48e17f=_0x48e1();return _0x2e53=function(_0x2e530a,_0x31e3cc){_0x2e530a=_0x2e530a-0x167;var _0x4c34d7=_0x48e17f[_0x2e530a];return _0x4c34d7;},_0x2e53(_0x5734f1,_0x471b48);}function _0x48e1(){var _0x22b627=['2342445fqUcxR','3146844oXzVgd','eKcka','normal','942491xnSDtr','36JkgrEP','38311garolA','1946564fiKdkT','hVtFE','3805595kHLCfp','deBdb','admin','3253384ZGbNfW','426ryDuCa'];_0x48e1=function(){return _0x22b627;};return _0x48e1();}export var GroupMemberRole;(function(_0x476aa){var _0x282fe6=_0x2e53,_0x106762={'eKcka':_0x282fe6(0x173),'deBdb':_0x282fe6(0x16d),'hVtFE':'owner'};_0x476aa[_0x476aa[_0x106762[_0x282fe6(0x172)]]=0x2]=_0x106762[_0x282fe6(0x172)],_0x476aa[_0x476aa[_0x106762[_0x282fe6(0x16c)]]=0x3]=_0x282fe6(0x16d),_0x476aa[_0x476aa[_0x106762[_0x282fe6(0x16a)]]=0x4]=_0x106762[_0x282fe6(0x16a)];}(GroupMemberRole||(GroupMemberRole={})));
(function(_0x2034f9,_0x19274f){var _0x3d35c6=_0x3722,_0x293d42=_0x2034f9();while(!![]){try{var _0x53324d=parseInt(_0x3d35c6(0x80))/0x1*(parseInt(_0x3d35c6(0x83))/0x2)+parseInt(_0x3d35c6(0x81))/0x3*(-parseInt(_0x3d35c6(0x8c))/0x4)+-parseInt(_0x3d35c6(0x89))/0x5+parseInt(_0x3d35c6(0x8b))/0x6+parseInt(_0x3d35c6(0x7e))/0x7*(parseInt(_0x3d35c6(0x84))/0x8)+parseInt(_0x3d35c6(0x85))/0x9*(parseInt(_0x3d35c6(0x86))/0xa)+-parseInt(_0x3d35c6(0x8a))/0xb;if(_0x53324d===_0x19274f)break;else _0x293d42['push'](_0x293d42['shift']());}catch(_0x3067f9){_0x293d42['push'](_0x293d42['shift']());}}}(_0x4bd8,0xbe31d));function _0x3722(_0x1ee33e,_0x1c8d2f){var _0x4bd832=_0x4bd8();return _0x3722=function(_0x3722de,_0xbfb13f){_0x3722de=_0x3722de-0x7e;var _0x4c7f92=_0x4bd832[_0x3722de];return _0x4c7f92;},_0x3722(_0x1ee33e,_0x1c8d2f);}function _0x4bd8(){var _0x499e08=['557916UncWRI','msPnC','566034ETvbhF','1068920QuxjKp','9DFTrey','6600010tiUMaF','admin','owner','2810670XsVxro','1191564SPXqPw','2770734abvjpP','8aFuyJZ','normal','7IZobXp','ZOLRT','2NUIJnd'];_0x4bd8=function(){return _0x499e08;};return _0x4bd8();}export var GroupMemberRole;(function(_0x1d3ac7){var _0x2e2fa0=_0x3722,_0x2ee60c={'msPnC':_0x2e2fa0(0x8d),'ZOLRT':_0x2e2fa0(0x87)};_0x1d3ac7[_0x1d3ac7[_0x2ee60c[_0x2e2fa0(0x82)]]=0x2]=_0x2ee60c[_0x2e2fa0(0x82)],_0x1d3ac7[_0x1d3ac7[_0x2ee60c[_0x2e2fa0(0x7f)]]=0x3]=_0x2ee60c[_0x2e2fa0(0x7f)],_0x1d3ac7[_0x1d3ac7[_0x2e2fa0(0x88)]=0x4]=_0x2e2fa0(0x88);}(GroupMemberRole||(GroupMemberRole={})));

View File

@@ -1 +1 @@
(function(_0xe531b7,_0x51a052){var _0x4d04bd=_0x2efd,_0x449c2b=_0xe531b7();while(!![]){try{var _0x250d75=-parseInt(_0x4d04bd(0x1bc))/0x1+parseInt(_0x4d04bd(0x1b9))/0x2+-parseInt(_0x4d04bd(0x1bd))/0x3*(parseInt(_0x4d04bd(0x1be))/0x4)+parseInt(_0x4d04bd(0x1b6))/0x5*(-parseInt(_0x4d04bd(0x1bf))/0x6)+parseInt(_0x4d04bd(0x1ba))/0x7*(-parseInt(_0x4d04bd(0x1bb))/0x8)+parseInt(_0x4d04bd(0x1b8))/0x9+parseInt(_0x4d04bd(0x1b5))/0xa*(parseInt(_0x4d04bd(0x1b7))/0xb);if(_0x250d75===_0x51a052)break;else _0x449c2b['push'](_0x449c2b['shift']());}catch(_0x368d19){_0x449c2b['push'](_0x449c2b['shift']());}}}(_0x1453,0x43771));export*from'./user';function _0x2efd(_0x3e6f75,_0x261fd0){var _0x145393=_0x1453();return _0x2efd=function(_0x2efd19,_0x2d10f1){_0x2efd19=_0x2efd19-0x1b5;var _0x3d2ac7=_0x145393[_0x2efd19];return _0x3d2ac7;},_0x2efd(_0x3e6f75,_0x261fd0);}export*from'./group';export*from'./msg';function _0x1453(){var _0x18fa2e=['99xlMxzq','3827664TeaRAp','633160yxtzHB','97482IHsqkZ','288cJpOdZ','89177hlyfKI','625542lHtcZK','4JPiIDY','6JVIktx','459590EkewcY','400715CJOplD'];_0x1453=function(){return _0x18fa2e;};return _0x1453();}export*from'./notify';export*from'./cache';export*from'./constructor';
(function(_0x31c8d5,_0x20b270){var _0x1bd470=_0x5704,_0x12e48a=_0x31c8d5();while(!![]){try{var _0x52ebf4=parseInt(_0x1bd470(0xf9))/0x1+-parseInt(_0x1bd470(0xf8))/0x2*(parseInt(_0x1bd470(0xf2))/0x3)+parseInt(_0x1bd470(0xf6))/0x4+parseInt(_0x1bd470(0xfc))/0x5*(parseInt(_0x1bd470(0xf5))/0x6)+parseInt(_0x1bd470(0xf4))/0x7+parseInt(_0x1bd470(0xf3))/0x8*(-parseInt(_0x1bd470(0xfb))/0x9)+parseInt(_0x1bd470(0xf7))/0xa*(parseInt(_0x1bd470(0xfa))/0xb);if(_0x52ebf4===_0x20b270)break;else _0x12e48a['push'](_0x12e48a['shift']());}catch(_0x5c08e6){_0x12e48a['push'](_0x12e48a['shift']());}}}(_0x153a,0xb9dbd));function _0x5704(_0x36b321,_0x596c16){var _0x153a10=_0x153a();return _0x5704=function(_0x570489,_0x2da390){_0x570489=_0x570489-0xf2;var _0x1c99e4=_0x153a10[_0x570489];return _0x1c99e4;},_0x5704(_0x36b321,_0x596c16);}export*from'./user';export*from'./group';export*from'./msg';function _0x153a(){var _0x56ca13=['44YkNSWR','9eCozhL','20zOAQno','3sCByOi','9783536BAXjdW','5570236WYZLPC','518490nctbWJ','1439224evHEdt','977770UAzBYM','2089744gePXAM','1136769hGmpbd'];_0x153a=function(){return _0x56ca13;};return _0x153a();}export*from'./notify';export*from'./cache';export*from'./constructor';

View File

@@ -4,6 +4,22 @@ export interface Peer {
peerUid: string;
guildId?: string;
}
export interface KickedOffLineInfo {
appId: number;
instanceId: number;
sameDevice: boolean;
tipsDesc: string;
tipsTitle: string;
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,

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
function _0x5272(_0x350aef,_0x3920b3){var _0x34b0fd=_0x34b0();return _0x5272=function(_0x527269,_0x7ff4d){_0x527269=_0x527269-0xd2;var _0x28e1a9=_0x34b0fd[_0x527269];return _0x28e1a9;},_0x5272(_0x350aef,_0x3920b3);}(function(_0x496da9,_0x6f223e){var _0x26ff8a=_0x5272,_0x39c89b=_0x496da9();while(!![]){try{var _0x40bfd1=parseInt(_0x26ff8a(0xf0))/0x1+parseInt(_0x26ff8a(0xe3))/0x2+-parseInt(_0x26ff8a(0xd4))/0x3+parseInt(_0x26ff8a(0xe5))/0x4*(parseInt(_0x26ff8a(0xdb))/0x5)+-parseInt(_0x26ff8a(0xe0))/0x6+parseInt(_0x26ff8a(0xe1))/0x7*(-parseInt(_0x26ff8a(0xd9))/0x8)+-parseInt(_0x26ff8a(0xd6))/0x9*(-parseInt(_0x26ff8a(0xe7))/0xa);if(_0x40bfd1===_0x6f223e)break;else _0x39c89b['push'](_0x39c89b['shift']());}catch(_0xa8d27c){_0x39c89b['push'](_0x39c89b['shift']());}}}(_0x34b0,0x5c45c));export var GroupNotifyTypes;(function(_0x71c7fa){var _0xec0c8c=_0x5272,_0x4b503d={'pMdsp':_0xec0c8c(0xd2),'KfBWP':'INVITED_JOIN','YPRBv':_0xec0c8c(0xed),'elPnr':_0xec0c8c(0xef),'GiWbJ':_0xec0c8c(0xf2),'oaJbb':'MEMBER_EXIT','roCpK':_0xec0c8c(0xda),'stzNa':'ADMIN_UNSET_OTHER'};_0x71c7fa[_0x71c7fa[_0x4b503d[_0xec0c8c(0xe8)]]=0x1]=_0xec0c8c(0xd2),_0x71c7fa[_0x71c7fa[_0x4b503d[_0xec0c8c(0xd7)]]=0x4]=_0x4b503d['KfBWP'],_0x71c7fa[_0x71c7fa[_0x4b503d['YPRBv']]=0x7]=_0x4b503d[_0xec0c8c(0xe9)],_0x71c7fa[_0x71c7fa[_0x4b503d[_0xec0c8c(0xd8)]]=0x8]=_0x4b503d[_0xec0c8c(0xd8)],_0x71c7fa[_0x71c7fa[_0x4b503d[_0xec0c8c(0xd3)]]=0x9]=_0x4b503d[_0xec0c8c(0xd3)],_0x71c7fa[_0x71c7fa[_0x4b503d[_0xec0c8c(0xe2)]]=0xb]=_0x4b503d[_0xec0c8c(0xe2)],_0x71c7fa[_0x71c7fa[_0x4b503d['roCpK']]=0xc]=_0x4b503d[_0xec0c8c(0xdf)],_0x71c7fa[_0x71c7fa[_0x4b503d[_0xec0c8c(0xee)]]=0xd]=_0x4b503d['stzNa'];}(GroupNotifyTypes||(GroupNotifyTypes={})));export var GroupNotifyStatus;(function(_0x15b1b9){var _0x174ac9=_0x5272,_0x18ff93={'ortpO':_0x174ac9(0xd5),'BWfdw':_0x174ac9(0xf1),'ZUjAw':_0x174ac9(0xde),'JeNTc':'REJECT'};_0x15b1b9[_0x15b1b9['IGNORE']=0x0]=_0x18ff93[_0x174ac9(0xea)],_0x15b1b9[_0x15b1b9[_0x18ff93[_0x174ac9(0xdd)]]=0x1]=_0x18ff93[_0x174ac9(0xdd)],_0x15b1b9[_0x15b1b9[_0x18ff93[_0x174ac9(0xe6)]]=0x2]=_0x18ff93[_0x174ac9(0xe6)],_0x15b1b9[_0x15b1b9[_0x174ac9(0xeb)]=0x3]=_0x18ff93['JeNTc'];}(GroupNotifyStatus||(GroupNotifyStatus={})));export var GroupRequestOperateTypes;(function(_0x29ec7e){var _0x151c67=_0x5272,_0x2c4f45={'TsdQk':'approve','wNrVF':_0x151c67(0xec)};_0x29ec7e[_0x29ec7e[_0x2c4f45[_0x151c67(0xe4)]]=0x1]=_0x2c4f45[_0x151c67(0xe4)],_0x29ec7e[_0x29ec7e[_0x2c4f45[_0x151c67(0xdc)]]=0x2]=_0x151c67(0xec);}(GroupRequestOperateTypes||(GroupRequestOperateTypes={})));function _0x34b0(){var _0x4c55c5=['70UtDMMi','pMdsp','YPRBv','ortpO','REJECT','reject','JOIN_REQUEST','stzNa','ADMIN_SET','737185AqXtFr','WAIT_HANDLE','KICK_MEMBER','INVITE_ME','GiWbJ','579345iYIUhp','IGNORE','717075ySNMYn','KfBWP','elPnr','3003992IrdDBc','ADMIN_UNSET','29615YEwIkQ','wNrVF','BWfdw','APPROVE','roCpK','3155958bLumJc','14tCHYMF','oaJbb','407374lCvNai','TsdQk','236ooSnNu','ZUjAw'];_0x34b0=function(){return _0x4c55c5;};return _0x34b0();}
(function(_0x11bd49,_0x4a6b55){var _0x1140aa=_0xb159,_0x5488b9=_0x11bd49();while(!![]){try{var _0x281b74=-parseInt(_0x1140aa(0xcf))/0x1*(-parseInt(_0x1140aa(0xe1))/0x2)+parseInt(_0x1140aa(0xea))/0x3*(-parseInt(_0x1140aa(0xf4))/0x4)+parseInt(_0x1140aa(0xec))/0x5+-parseInt(_0x1140aa(0xe4))/0x6+-parseInt(_0x1140aa(0xe2))/0x7+parseInt(_0x1140aa(0xdd))/0x8*(parseInt(_0x1140aa(0xeb))/0x9)+parseInt(_0x1140aa(0xd1))/0xa*(parseInt(_0x1140aa(0xd8))/0xb);if(_0x281b74===_0x4a6b55)break;else _0x5488b9['push'](_0x5488b9['shift']());}catch(_0x6300ee){_0x5488b9['push'](_0x5488b9['shift']());}}}(_0x21b9,0x291cf));export var GroupNotifyTypes;(function(_0x1213d0){var _0x1e2c99=_0xb159,_0x3c6cf9={'KBkLF':_0x1e2c99(0xdc),'ufAPI':_0x1e2c99(0xe6),'jCVFk':_0x1e2c99(0xe9),'szena':'ADMIN_SET','dqDvM':'INVITE_ME','Ecpkw':_0x1e2c99(0xd0),'dSjzj':_0x1e2c99(0xd5),'tJSjf':_0x1e2c99(0xf0)},_0x839c25='4|6|0|3|1|5|2|7'[_0x1e2c99(0xd3)]('|'),_0x55c032=0x0;while(!![]){switch(_0x839c25[_0x55c032++]){case'0':_0x1213d0[_0x1213d0['JOIN_REQUEST']=0x7]=_0x3c6cf9[_0x1e2c99(0xe0)];continue;case'1':_0x1213d0[_0x1213d0[_0x3c6cf9[_0x1e2c99(0xda)]]=0x9]=_0x3c6cf9[_0x1e2c99(0xda)];continue;case'2':_0x1213d0[_0x1213d0[_0x3c6cf9[_0x1e2c99(0xdf)]]=0xc]=_0x3c6cf9[_0x1e2c99(0xdf)];continue;case'3':_0x1213d0[_0x1213d0[_0x3c6cf9[_0x1e2c99(0xef)]]=0x8]=_0x1e2c99(0xe7);continue;case'4':_0x1213d0[_0x1213d0[_0x3c6cf9[_0x1e2c99(0xe5)]]=0x1]=_0x3c6cf9[_0x1e2c99(0xe5)];continue;case'5':_0x1213d0[_0x1213d0[_0x3c6cf9[_0x1e2c99(0xd6)]]=0xb]=_0x3c6cf9[_0x1e2c99(0xd6)];continue;case'6':_0x1213d0[_0x1213d0['INVITED_JOIN']=0x4]=_0x3c6cf9[_0x1e2c99(0xd9)];continue;case'7':_0x1213d0[_0x1213d0[_0x3c6cf9[_0x1e2c99(0xf1)]]=0xd]=_0x3c6cf9[_0x1e2c99(0xf1)];continue;}break;}}(GroupNotifyTypes||(GroupNotifyTypes={})));function _0xb159(_0x3693bf,_0xc16c38){var _0x21b991=_0x21b9();return _0xb159=function(_0xb159b1,_0x2f2f3e){_0xb159b1=_0xb159b1-0xce;var _0x2ef46a=_0x21b991[_0xb159b1];return _0x2ef46a;},_0xb159(_0x3693bf,_0xc16c38);}export var GroupNotifyStatus;(function(_0x4adee5){var _0x622076=_0xb159,_0x5efb83={'ZmiXQ':_0x622076(0xee),'rcuor':_0x622076(0xdb),'BAJDf':_0x622076(0xde),'AOCHp':_0x622076(0xe8)};_0x4adee5[_0x4adee5['IGNORE']=0x0]=_0x5efb83[_0x622076(0xf3)],_0x4adee5[_0x4adee5[_0x622076(0xdb)]=0x1]=_0x5efb83[_0x622076(0xed)],_0x4adee5[_0x4adee5[_0x5efb83[_0x622076(0xd2)]]=0x2]=_0x622076(0xde),_0x4adee5[_0x4adee5['REJECT']=0x3]=_0x5efb83[_0x622076(0xe3)];}(GroupNotifyStatus||(GroupNotifyStatus={})));export var GroupRequestOperateTypes;(function(_0x2faf71){var _0x4896a5=_0xb159,_0xdce34a={'MPvyq':_0x4896a5(0xd7),'oOdGz':_0x4896a5(0xd4)};_0x2faf71[_0x2faf71[_0xdce34a[_0x4896a5(0xce)]]=0x1]=_0x4896a5(0xd7),_0x2faf71[_0x2faf71[_0xdce34a[_0x4896a5(0xf2)]]=0x2]=_0xdce34a[_0x4896a5(0xf2)];}(GroupRequestOperateTypes||(GroupRequestOperateTypes={})));function _0x21b9(){var _0x44cbcf=['1437510HLIpru','rcuor','IGNORE','szena','ADMIN_UNSET_OTHER','tJSjf','oOdGz','ZmiXQ','4yMIRuo','MPvyq','8MnJAun','MEMBER_EXIT','1281070PsMhOV','BAJDf','split','reject','INVITED_JOIN','Ecpkw','approve','11TIHNkM','dSjzj','ufAPI','WAIT_HANDLE','JOIN_REQUEST','576824pVCRPz','APPROVE','jCVFk','KBkLF','3340pPKQVs','581245EIjuhA','AOCHp','1924284fCoUKm','dqDvM','KICK_MEMBER','ADMIN_SET','REJECT','ADMIN_UNSET','219390PfjxtG','27iqVTDB'];_0x21b9=function(){return _0x44cbcf;};return _0x21b9();}

View File

@@ -1 +1 @@
(function(_0x3280a,_0x31ff92){var _0x134a05=_0x4e1e,_0x2bb004=_0x3280a();while(!![]){try{var _0x4dad6b=-parseInt(_0x134a05(0xb5))/0x1+-parseInt(_0x134a05(0xaf))/0x2*(parseInt(_0x134a05(0xb3))/0x3)+-parseInt(_0x134a05(0xb7))/0x4*(-parseInt(_0x134a05(0xb4))/0x5)+-parseInt(_0x134a05(0xb1))/0x6*(parseInt(_0x134a05(0xb6))/0x7)+parseInt(_0x134a05(0xbb))/0x8+-parseInt(_0x134a05(0xb0))/0x9+-parseInt(_0x134a05(0xba))/0xa*(-parseInt(_0x134a05(0xbc))/0xb);if(_0x4dad6b===_0x31ff92)break;else _0x2bb004['push'](_0x2bb004['shift']());}catch(_0x2778f5){_0x2bb004['push'](_0x2bb004['shift']());}}}(_0x4304,0x62c6e));function _0x4e1e(_0x91c316,_0xf4d96){var _0x430490=_0x4304();return _0x4e1e=function(_0x4e1e5d,_0x3faaaa){_0x4e1e5d=_0x4e1e5d-0xaf;var _0x5cf116=_0x430490[_0x4e1e5d];return _0x5cf116;},_0x4e1e(_0x91c316,_0xf4d96);}function _0x4304(){var _0x350a8d=['male','18CipHad','125aMNjeo','66413NvXFfL','14PSeYPD','105100BCWNiC','MkibG','UtMHF','10134270DaVRtl','6280848utMQVo','11lPNmHf','MnbWd','228166QAMZlT','5726079GnNBZL','1991028easFoz'];_0x4304=function(){return _0x350a8d;};return _0x4304();}export var Sex;(function(_0x440107){var _0x296e4a=_0x4e1e,_0x4d5d49={'MkibG':_0x296e4a(0xb2),'MnbWd':'female','UtMHF':'unknown'};_0x440107[_0x440107[_0x4d5d49['MkibG']]=0x1]=_0x4d5d49[_0x296e4a(0xb8)],_0x440107[_0x440107[_0x4d5d49[_0x296e4a(0xbd)]]=0x2]=_0x4d5d49['MnbWd'],_0x440107[_0x440107[_0x4d5d49[_0x296e4a(0xb9)]]=0xff]=_0x4d5d49[_0x296e4a(0xb9)];}(Sex||(Sex={})));
(function(_0x3ee976,_0xa64d14){var _0xec1edf=_0x25c0,_0x2bd8fa=_0x3ee976();while(!![]){try{var _0x5705=-parseInt(_0xec1edf(0xc7))/0x1+parseInt(_0xec1edf(0xcd))/0x2+parseInt(_0xec1edf(0xce))/0x3*(-parseInt(_0xec1edf(0xc6))/0x4)+parseInt(_0xec1edf(0xc2))/0x5+-parseInt(_0xec1edf(0xcb))/0x6*(-parseInt(_0xec1edf(0xc3))/0x7)+-parseInt(_0xec1edf(0xc9))/0x8*(-parseInt(_0xec1edf(0xc5))/0x9)+-parseInt(_0xec1edf(0xcc))/0xa;if(_0x5705===_0xa64d14)break;else _0x2bd8fa['push'](_0x2bd8fa['shift']());}catch(_0x143f7d){_0x2bd8fa['push'](_0x2bd8fa['shift']());}}}(_0x2e55,0x6fb6c));export var Sex;function _0x25c0(_0x17fdd9,_0x2880bb){var _0x2e5508=_0x2e55();return _0x25c0=function(_0x25c032,_0x470880){_0x25c032=_0x25c032-0xc2;var _0x4f2ae6=_0x2e5508[_0x25c032];return _0x4f2ae6;},_0x25c0(_0x17fdd9,_0x2880bb);}function _0x2e55(){var _0x3be66c=['1260096VULntu','129HBtsVI','NFUlN','292765zAIUff','7WruVck','male','341973LBJSdT','76672ShnRlQ','127472rYNDnT','tucCh','104MsmiMj','unknown','1987314GIRmDo','1045050UDRkcl'];_0x2e55=function(){return _0x3be66c;};return _0x2e55();}(function(_0x2dd864){var _0x4790a8=_0x25c0,_0x36e2b1={'eSSAt':_0x4790a8(0xc4),'NFUlN':'female','tucCh':_0x4790a8(0xca)};_0x2dd864[_0x2dd864[_0x36e2b1['eSSAt']]=0x1]=_0x4790a8(0xc4),_0x2dd864[_0x2dd864[_0x36e2b1['NFUlN']]=0x2]=_0x36e2b1[_0x4790a8(0xcf)],_0x2dd864[_0x2dd864[_0x36e2b1[_0x4790a8(0xc8)]]=0xff]='unknown';}(Sex||(Sex={})));

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
(function(_0x1b70cb,_0x45fb83){var _0x4fa32e=_0x1c40,_0x520afa=_0x1b70cb();while(!![]){try{var _0x17f243=parseInt(_0x4fa32e(0x164))/0x1*(parseInt(_0x4fa32e(0x166))/0x2)+parseInt(_0x4fa32e(0x161))/0x3*(-parseInt(_0x4fa32e(0x15d))/0x4)+parseInt(_0x4fa32e(0x165))/0x5+parseInt(_0x4fa32e(0x160))/0x6*(parseInt(_0x4fa32e(0x15f))/0x7)+-parseInt(_0x4fa32e(0x163))/0x8+-parseInt(_0x4fa32e(0x15e))/0x9*(-parseInt(_0x4fa32e(0x167))/0xa)+-parseInt(_0x4fa32e(0x162))/0xb;if(_0x17f243===_0x45fb83)break;else _0x520afa['push'](_0x520afa['shift']());}catch(_0x377d96){_0x520afa['push'](_0x520afa['shift']());}}}(_0x10a9,0xebdf9));import _0x6adb3a from'./wrapper';export*from'./adapters';export*from'./apis';export*from'./entities';export*from'./listeners';export*from'./services';export*as Adapters from'./adapters';export*as APIs from'./apis';function _0x1c40(_0x5d9ea4,_0x4d0c51){var _0x10a9e7=_0x10a9();return _0x1c40=function(_0x1c4037,_0x4524bd){_0x1c4037=_0x1c4037-0x15d;var _0xcdc415=_0x10a9e7[_0x1c4037];return _0xcdc415;},_0x1c40(_0x5d9ea4,_0x4d0c51);}export*as Entities from'./entities';export*as Listeners from'./listeners';export*as Services from'./services';export{_0x6adb3a as Wrapper};export*as WrapperInterface from'./wrapper';function _0x10a9(){var _0x5609d3=['977583sxNCAL','16726105wbEbFh','2579432fYLtuT','23VEqxwc','8742760MIYBtM','133096SmKByg','60Ocvowi','12PcazSE','50868ecXFNE','28kyQmhE','710454wRNMbW'];_0x10a9=function(){return _0x5609d3;};return _0x10a9();}export*as SessionConfig from'./sessionConfig';export{napCatCore}from'./core';
(function(_0x37e38c,_0x46b592){var _0x1ad48d=_0x1fc3,_0x3b8733=_0x37e38c();while(!![]){try{var _0x7c7bc0=parseInt(_0x1ad48d(0x1a9))/0x1*(parseInt(_0x1ad48d(0x1a4))/0x2)+-parseInt(_0x1ad48d(0x1a1))/0x3*(parseInt(_0x1ad48d(0x1a6))/0x4)+parseInt(_0x1ad48d(0x1a8))/0x5+-parseInt(_0x1ad48d(0x1a5))/0x6+parseInt(_0x1ad48d(0x1a7))/0x7*(parseInt(_0x1ad48d(0x1a2))/0x8)+parseInt(_0x1ad48d(0x1aa))/0x9*(-parseInt(_0x1ad48d(0x1a0))/0xa)+parseInt(_0x1ad48d(0x1a3))/0xb;if(_0x7c7bc0===_0x46b592)break;else _0x3b8733['push'](_0x3b8733['shift']());}catch(_0x237e37){_0x3b8733['push'](_0x3b8733['shift']());}}}(_0x26db,0x26046));import _0x1f10ff from'./wrapper';export*from'./adapters';function _0x1fc3(_0x516520,_0x465eaa){var _0x26db91=_0x26db();return _0x1fc3=function(_0x1fc324,_0xfeb36d){_0x1fc324=_0x1fc324-0x1a0;var _0x2fc4db=_0x26db91[_0x1fc324];return _0x2fc4db;},_0x1fc3(_0x516520,_0x465eaa);}function _0x26db(){var _0x21f0d7=['45ZpGKQN','466510yoNTNh','9GNsqeC','64PjrFGv','4209821sygikX','6AkkaNJ','1841946OcaNvT','192036YXZJBv','153643jhwZcT','1007925jClIza','26701CaIPmu'];_0x26db=function(){return _0x21f0d7;};return _0x26db();}export*from'./apis';export*from'./entities';export*from'./listeners';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{_0x1f10ff as Wrapper};export*as WrapperInterface from'./wrapper';export*as SessionConfig from'./sessionConfig';export{napCatCore}from'./core';

View File

@@ -1 +1 @@
var _0x505646=_0x3d52;(function(_0x140272,_0x2fce8d){var _0x119dea=_0x3d52,_0x4b0f1a=_0x140272();while(!![]){try{var _0x52a294=parseInt(_0x119dea(0x12e))/0x1*(parseInt(_0x119dea(0x12a))/0x2)+parseInt(_0x119dea(0x11c))/0x3*(parseInt(_0x119dea(0x11b))/0x4)+parseInt(_0x119dea(0x118))/0x5*(-parseInt(_0x119dea(0x12d))/0x6)+-parseInt(_0x119dea(0x129))/0x7*(parseInt(_0x119dea(0x121))/0x8)+parseInt(_0x119dea(0x122))/0x9*(parseInt(_0x119dea(0x11a))/0xa)+-parseInt(_0x119dea(0x126))/0xb*(parseInt(_0x119dea(0x116))/0xc)+parseInt(_0x119dea(0x11f))/0xd;if(_0x52a294===_0x2fce8d)break;else _0x4b0f1a['push'](_0x4b0f1a['shift']());}catch(_0x26a136){_0x4b0f1a['push'](_0x4b0f1a['shift']());}}}(_0x2d1a,0x7ba96));function _0x3d52(_0x1744c1,_0x81411b){var _0x2d1a44=_0x2d1a();return _0x3d52=function(_0x3d5260,_0x2ea068){_0x3d5260=_0x3d5260-0x115;var _0x65cb5=_0x2d1a44[_0x3d5260];return _0x65cb5;},_0x3d52(_0x1744c1,_0x81411b);}function _0x2d1a(){var _0x22a92e=['9FJDSlf','onAddBuddyNeedVerify','onBuddyReqChange','onNickUpdated','44gICzft','onDoubtBuddyReqUnreadNumChange','onCheckBuddySettingResult','69146RvTFjC','2HRvfLF','onSpacePermissionInfos','onBuddyDetailInfoChange','114HrPAOh','187067WOAQqR','onDelBatchBuddyInfos','54624VnWncI','onDoubtBuddyReqChange','174350ypjBKL','onAvatarUrlUpdated','1455800kuQZlQ','124940oIeRYk','69ZYYthk','onBlockChanged','onSmartInfos','5751486mxIikq','onBuddyInfoChange','248hXlxeU'];_0x2d1a=function(){return _0x22a92e;};return _0x2d1a();}export class BuddyListener{[_0x505646(0x123)](_0x3f377c){}['onAddMeSettingChanged'](_0x58db3f){}[_0x505646(0x119)](_0x557640){}[_0x505646(0x11d)](_0x187eec){}[_0x505646(0x12c)](_0x916d29){}[_0x505646(0x120)](_0x4effad){}['onBuddyListChange'](_0x2afd00){}['onBuddyRemarkUpdated'](_0x5e1996){}[_0x505646(0x124)](_0x1c60fa){}['onBuddyReqUnreadCntChange'](_0x5316ee){}[_0x505646(0x128)](_0xba21b4){}[_0x505646(0x115)](_0x3d63ac){}[_0x505646(0x117)](_0x3dc115){}[_0x505646(0x127)](_0x1a83fe){}[_0x505646(0x125)](_0x4d966c){}[_0x505646(0x11e)](_0x3aaef9){}[_0x505646(0x12b)](_0x5ca3d2){}}
var _0x292e66=_0x408c;(function(_0x5d01e5,_0x5b3407){var _0x5d9314=_0x408c,_0x5cbe11=_0x5d01e5();while(!![]){try{var _0x20fbf4=-parseInt(_0x5d9314(0x16b))/0x1+parseInt(_0x5d9314(0x158))/0x2+-parseInt(_0x5d9314(0x15d))/0x3+parseInt(_0x5d9314(0x161))/0x4+-parseInt(_0x5d9314(0x155))/0x5*(parseInt(_0x5d9314(0x167))/0x6)+parseInt(_0x5d9314(0x162))/0x7*(-parseInt(_0x5d9314(0x16a))/0x8)+parseInt(_0x5d9314(0x168))/0x9;if(_0x20fbf4===_0x5b3407)break;else _0x5cbe11['push'](_0x5cbe11['shift']());}catch(_0x44361e){_0x5cbe11['push'](_0x5cbe11['shift']());}}}(_0x9247,0x6796b));export class BuddyListener{[_0x292e66(0x157)](_0x410666){}['onAddMeSettingChanged'](_0x1ee735){}[_0x292e66(0x159)](_0x41a79d){}[_0x292e66(0x15e)](_0x4da590){}[_0x292e66(0x15c)](_0x5e88a5){}['onBuddyInfoChange'](_0x63ad24){}[_0x292e66(0x15a)](_0x1f487d){}[_0x292e66(0x165)](_0x1ade44){}['onBuddyReqChange'](_0x3da30d){}[_0x292e66(0x163)](_0x3ff216){}[_0x292e66(0x160)](_0x424323){}[_0x292e66(0x164)](_0x3640c1){}[_0x292e66(0x169)](_0x435444){}[_0x292e66(0x156)](_0x47c732){}[_0x292e66(0x15b)](_0x840f06){}[_0x292e66(0x15f)](_0x33e96d){}[_0x292e66(0x166)](_0x1f9127){}}function _0x408c(_0x2b4739,_0x21388f){var _0x92478b=_0x9247();return _0x408c=function(_0x408c30,_0x2a8add){_0x408c30=_0x408c30-0x155;var _0x451a53=_0x92478b[_0x408c30];return _0x451a53;},_0x408c(_0x2b4739,_0x21388f);}function _0x9247(){var _0x4d2755=['754527KgATFb','95dbDbOu','onDoubtBuddyReqUnreadNumChange','onAddBuddyNeedVerify','1663772CIeVOt','onAvatarUrlUpdated','onBuddyListChange','onNickUpdated','onBuddyDetailInfoChange','738636qYwbLb','onBlockChanged','onSmartInfos','onCheckBuddySettingResult','1362460vDnpGk','7kAhBlU','onBuddyReqUnreadCntChange','onDelBatchBuddyInfos','onBuddyRemarkUpdated','onSpacePermissionInfos','38478XIaISJ','5825007QVYHPs','onDoubtBuddyReqChange','2182712ELxQsd'];_0x9247=function(){return _0x4d2755;};return _0x9247();}

View File

@@ -1 +1 @@
function _0x242f(_0x78fa10,_0x418086){var _0x16caf3=_0x16ca();return _0x242f=function(_0x242fb7,_0x971733){_0x242fb7=_0x242fb7-0xeb;var _0x5db70b=_0x16caf3[_0x242fb7];return _0x5db70b;},_0x242f(_0x78fa10,_0x418086);}var _0x1c47ce=_0x242f;(function(_0x2c6f6b,_0x595586){var _0x1cace0=_0x242f,_0x399f3a=_0x2c6f6b();while(!![]){try{var _0x5d6257=-parseInt(_0x1cace0(0xec))/0x1+-parseInt(_0x1cace0(0xf2))/0x2+parseInt(_0x1cace0(0xf0))/0x3+parseInt(_0x1cace0(0xeb))/0x4+parseInt(_0x1cace0(0xf3))/0x5+-parseInt(_0x1cace0(0xf1))/0x6*(parseInt(_0x1cace0(0xf6))/0x7)+parseInt(_0x1cace0(0xf7))/0x8;if(_0x5d6257===_0x595586)break;else _0x399f3a['push'](_0x399f3a['shift']());}catch(_0x231534){_0x399f3a['push'](_0x399f3a['shift']());}}}(_0x16ca,0x748b8));function _0x16ca(){var _0x47d952=['7728992YgAvHq','1963716cfZQVU','645598sdAHTY','onFileSearch','onSessionListChanged','onSessionChanged','539487tHCMaX','12ryyaaI','385774wrMSKy','1493625AeRPMd','onFileStatusChanged','onFileListChanged','2169139HPkAKH'];_0x16ca=function(){return _0x47d952;};return _0x16ca();}export class KernelFileAssistantListener{[_0x1c47ce(0xf4)](..._0x3ff262){}[_0x1c47ce(0xee)](..._0x2d9f34){}[_0x1c47ce(0xef)](..._0x1e0913){}[_0x1c47ce(0xf5)](..._0x1900d2){}[_0x1c47ce(0xed)](..._0x7b9684){}}
var _0x1adcbf=_0x1b9b;(function(_0xca21c7,_0x160d92){var _0x19ced5=_0x1b9b,_0x9aa90a=_0xca21c7();while(!![]){try{var _0x1d5774=-parseInt(_0x19ced5(0x175))/0x1*(parseInt(_0x19ced5(0x17e))/0x2)+parseInt(_0x19ced5(0x178))/0x3*(parseInt(_0x19ced5(0x177))/0x4)+parseInt(_0x19ced5(0x17b))/0x5+parseInt(_0x19ced5(0x17f))/0x6*(parseInt(_0x19ced5(0x180))/0x7)+parseInt(_0x19ced5(0x176))/0x8+parseInt(_0x19ced5(0x179))/0x9+-parseInt(_0x19ced5(0x181))/0xa*(parseInt(_0x19ced5(0x17c))/0xb);if(_0x1d5774===_0x160d92)break;else _0x9aa90a['push'](_0x9aa90a['shift']());}catch(_0x47b6d9){_0x9aa90a['push'](_0x9aa90a['shift']());}}}(_0xe79e,0x933c4));function _0xe79e(){var _0x3e245d=['6139152QawvHJ','8516wmUcin','1287mBugaw','10121778FinZwJ','onSessionListChanged','1788210TLwlms','19420753DBHaDu','onFileSearch','2042442OcBbVA','1360806qxjsRO','7HHPthi','10UDEYho','1siONvR'];_0xe79e=function(){return _0x3e245d;};return _0xe79e();}function _0x1b9b(_0x11c4ac,_0x107115){var _0xe79e5f=_0xe79e();return _0x1b9b=function(_0x1b9b32,_0xb2be5a){_0x1b9b32=_0x1b9b32-0x175;var _0x445aab=_0xe79e5f[_0x1b9b32];return _0x445aab;},_0x1b9b(_0x11c4ac,_0x107115);}export class KernelFileAssistantListener{['onFileStatusChanged'](..._0x49cc07){}[_0x1adcbf(0x17a)](..._0x2f732c){}['onSessionChanged'](..._0x50aa79){}['onFileListChanged'](..._0x261e02){}[_0x1adcbf(0x17d)](..._0x2a3c4e){}}

View File

@@ -2,7 +2,7 @@ import { Group, GroupMember, GroupNotify } from '@/core/entities';
interface IGroupListener {
onGroupListUpdate(updateType: number, groupList: Group[]): void;
onGroupExtListUpdate(...args: unknown[]): void;
onGroupSingleScreenNotifies(...args: unknown[]): void;
onGroupSingleScreenNotifies(doubt: boolean, seq: string, notifies: GroupNotify[]): void;
onGroupNotifiesUpdated(dboubt: boolean, notifies: GroupNotify[]): void;
onGroupNotifiesUnreadCountUpdated(...args: unknown[]): void;
onGroupDetailInfoChange(...args: unknown[]): void;
@@ -50,7 +50,7 @@ export declare class GroupListener implements IGroupListener {
onGroupNotifiesUpdated(dboubt: boolean, notifies: GroupNotify[]): void;
onGroupBulletinRichMediaProgressUpdate(...args: unknown[]): void;
onGroupNotifiesUnreadCountUpdated(...args: unknown[]): void;
onGroupSingleScreenNotifies(...args: unknown[]): void;
onGroupSingleScreenNotifies(doubt: boolean, seq: string, notifies: GroupNotify[]): void;
onGroupsMsgMaskResult(...args: unknown[]): void;
onGroupStatisticInfoChange(...args: unknown[]): void;
onJoinGroupNotify(...args: unknown[]): void;
@@ -82,7 +82,7 @@ export declare class DebugGroupListener implements IGroupListener {
onGroupNotifiesUpdated(...args: unknown[]): void;
onGroupBulletinRichMediaProgressUpdate(...args: unknown[]): void;
onGroupNotifiesUnreadCountUpdated(...args: unknown[]): void;
onGroupSingleScreenNotifies(...args: unknown[]): void;
onGroupSingleScreenNotifies(doubt: boolean, seq: string, notifies: GroupNotify[]): void;
onGroupsMsgMaskResult(...args: unknown[]): void;
onGroupStatisticInfoChange(...args: unknown[]): void;
onJoinGroupNotify(...args: unknown[]): void;

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
function _0x2f62(_0x400ced,_0x53f347){var _0x1b90ce=_0x1b90();return _0x2f62=function(_0x2f6246,_0x40961b){_0x2f6246=_0x2f6246-0x15d;var _0x3c2fc7=_0x1b90ce[_0x2f6246];return _0x3c2fc7;},_0x2f62(_0x400ced,_0x53f347);}var _0x472096=_0x2f62;function _0x1b90(){var _0x36a1ee=['2166170xewyJs','860065XAWyeY','onLogoutFailed','onQRCodeSessionFailed','onUserLoggedIn','260604vISAzA','onLoginConnecting','89455wtaiPU','onLoginState','4UEnQTq','onLoginDisConnected','48YIVLuj','onPasswordLoginFailed','onLoginConnected','110hAIuIh','12738lzOlTy','onQQLoginNumLimited','1372jByAxy','onQRCodeLoginSucceed','82122kaqrUA','405818pKZCfq','onLogoutSucceed','onQRCodeSessionUserScaned'];_0x1b90=function(){return _0x36a1ee;};return _0x1b90();}(function(_0x366ee2,_0x12a3aa){var _0x2fee7c=_0x2f62,_0x1f45cd=_0x366ee2();while(!![]){try{var _0x41c781=-parseInt(_0x2fee7c(0x164))/0x1+-parseInt(_0x2fee7c(0x160))/0x2+parseInt(_0x2fee7c(0x15f))/0x3*(-parseInt(_0x2fee7c(0x16c))/0x4)+-parseInt(_0x2fee7c(0x16a))/0x5+-parseInt(_0x2fee7c(0x172))/0x6*(parseInt(_0x2fee7c(0x15d))/0x7)+parseInt(_0x2fee7c(0x16e))/0x8*(-parseInt(_0x2fee7c(0x168))/0x9)+parseInt(_0x2fee7c(0x163))/0xa*(parseInt(_0x2fee7c(0x171))/0xb);if(_0x41c781===_0x12a3aa)break;else _0x1f45cd['push'](_0x1f45cd['shift']());}catch(_0x106e75){_0x1f45cd['push'](_0x1f45cd['shift']());}}}(_0x1b90,0x72477));export class LoginListener{[_0x472096(0x170)](..._0x5951ac){}[_0x472096(0x16d)](..._0x7e59b0){}[_0x472096(0x169)](..._0x3bd450){}['onQRCodeGetPicture'](_0x870a08){}['onQRCodeLoginPollingStarted'](..._0x2512bb){}[_0x472096(0x162)](..._0x34a5f3){}[_0x472096(0x15e)](_0x432748){}[_0x472096(0x166)](..._0x40723a){}['onLoginFailed'](..._0x2e3717){}[_0x472096(0x161)](..._0x57ac99){}[_0x472096(0x165)](..._0x2d25fb){}[_0x472096(0x167)](..._0x12ee99){}['onQRCodeSessionQuickLoginFailed'](..._0x36bc89){}[_0x472096(0x16f)](..._0x4e6509){}['OnConfirmUnusualDeviceFailed'](..._0x384d7c){}[_0x472096(0x173)](..._0x5b0c5c){}[_0x472096(0x16b)](..._0x2213d4){}}
var _0x2c9271=_0x2441;function _0x810d(){var _0x473b2d=['onQRCodeGetPicture','10068rgXaah','7HgAPvd','onQRCodeSessionFailed','onQRCodeLoginSucceed','onQRCodeSessionUserScaned','8657yleLIM','onLogoutFailed','onLoginState','onLoginConnected','onQRCodeLoginPollingStarted','7090ZAjOGf','308586YUcDTb','onLoginDisConnected','1kFcDHH','145QoEWJC','onQQLoginNumLimited','617538wbiYdZ','41181ZPGNke','onUserLoggedIn','2083815KKgubK','1611344GBgDjM','onQRCodeSessionQuickLoginFailed'];_0x810d=function(){return _0x473b2d;};return _0x810d();}function _0x2441(_0x57de59,_0x3c9504){var _0x810d97=_0x810d();return _0x2441=function(_0x2441c5,_0x2be93c){_0x2441c5=_0x2441c5-0xf4;var _0x172168=_0x810d97[_0x2441c5];return _0x172168;},_0x2441(_0x57de59,_0x3c9504);}(function(_0x5d2564,_0x3a6e7b){var _0x4ddbd6=_0x2441,_0x4f7c38=_0x5d2564();while(!![]){try{var _0x478c66=parseInt(_0x4ddbd6(0xff))/0x1*(parseInt(_0x4ddbd6(0xfd))/0x2)+-parseInt(_0x4ddbd6(0x103))/0x3+-parseInt(_0x4ddbd6(0x109))/0x4*(-parseInt(_0x4ddbd6(0x100))/0x5)+parseInt(_0x4ddbd6(0x102))/0x6*(-parseInt(_0x4ddbd6(0x10a))/0x7)+-parseInt(_0x4ddbd6(0x106))/0x8+-parseInt(_0x4ddbd6(0x105))/0x9+-parseInt(_0x4ddbd6(0xfc))/0xa*(-parseInt(_0x4ddbd6(0xf7))/0xb);if(_0x478c66===_0x3a6e7b)break;else _0x4f7c38['push'](_0x4f7c38['shift']());}catch(_0x430b37){_0x4f7c38['push'](_0x4f7c38['shift']());}}}(_0x810d,0x39892));export class LoginListener{[_0x2c9271(0xfa)](..._0x1f1596){}[_0x2c9271(0xfe)](..._0xd4f402){}['onLoginConnecting'](..._0x318d1f){}[_0x2c9271(0x108)](_0x45438e){}[_0x2c9271(0xfb)](..._0x42cefb){}[_0x2c9271(0xf6)](..._0x5bd745){}[_0x2c9271(0xf5)](_0x1aa59f){}[_0x2c9271(0xf4)](..._0x133a58){}['onLoginFailed'](..._0x179973){}['onLogoutSucceed'](..._0x427d4a){}[_0x2c9271(0xf8)](..._0x254160){}[_0x2c9271(0x104)](..._0x2aec2a){}[_0x2c9271(0x107)](..._0x1b9b75){}['onPasswordLoginFailed'](..._0x384c7a){}['OnConfirmUnusualDeviceFailed'](..._0x3f3b78){}[_0x2c9271(0x101)](..._0x5dfafe){}[_0x2c9271(0xf9)](..._0x31d398){}}

View File

@@ -21,6 +21,16 @@ 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 IKernelMsgListener {
onAddSendMsg(msgRecord: RawMessage): void;
onBroadcastHelperDownloadComplete(broadcastHelperTransNotifyInfo: unknown): void;
@@ -37,7 +47,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;
@@ -111,7 +121,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;

View File

@@ -1 +1 @@
var _0x532ad0=_0x42b5;(function(_0x27e107,_0x244977){var _0x315824=_0x42b5,_0x1f57df=_0x27e107();while(!![]){try{var _0x1361fc=parseInt(_0x315824(0x133))/0x1+parseInt(_0x315824(0x136))/0x2+-parseInt(_0x315824(0x143))/0x3*(-parseInt(_0x315824(0x145))/0x4)+-parseInt(_0x315824(0x14d))/0x5*(-parseInt(_0x315824(0x14c))/0x6)+parseInt(_0x315824(0x125))/0x7+parseInt(_0x315824(0x13f))/0x8+-parseInt(_0x315824(0x129))/0x9;if(_0x1361fc===_0x244977)break;else _0x1f57df['push'](_0x1f57df['shift']());}catch(_0x5a2c16){_0x1f57df['push'](_0x1f57df['shift']());}}}(_0x11fb,0x5386e));function _0x42b5(_0x24f12a,_0x42260b){var _0x11fbb4=_0x11fb();return _0x42b5=function(_0x42b52c,_0x402f03){_0x42b52c=_0x42b52c-0x11a;var _0x488bd1=_0x11fbb4[_0x42b52c];return _0x488bd1;},_0x42b5(_0x24f12a,_0x42260b);}function _0x11fb(){var _0x1d1abe=['12092391GWyniR','onSearchGroupFileInfoUpdate','onKickedOffLine','onCustomWithdrawConfigUpdate','onContactUnreadCntUpdate','onNtMsgSyncStart','onFirstViewDirectMsgUpdate','onFeedEventUpdate','onBroadcastHelperProgerssUpdate','onRichMediaUploadComplete','208177tnYpku','onImportOldDbProgressUpdate','onMsgDelete','1184800EqPuHp','onBroadcastHelperProgressUpdate','onReadFeedEventUpdate','onUnreadCntUpdate','onHitEmojiKeywordResult','onDraftUpdate','onMsgEventListUpdate','onUnreadCntAfterFirstView','onUserChannelTabStatusChanged','1039248KhIfJQ','onTempChatInfoUpdate','onEmojiResourceUpdate','onLineDev','368247FMsNuJ','onRecvMsg','4Pjrlqv','onUserOnlineStatusChanged','onLogLevelChanged','onMsgSecurityNotify','onGroupFileInfoAdd','onMsgSettingUpdate','onGuildInteractiveUpdate','602358TwCRHB','5EGewSO','onMsgInfoListUpdate','onGroupTransferInfoAdd','onGrabPasswordRedBag','onUserSecQualityChanged','onlineStatusBigIconDownloadPush','onGroupGuildUpdate','onRecvMsgSvrRspTransInfo','onRecvS2CMsg','onGuildMsgAbFlagChanged','onFirstViewGroupGuildMapping','onMsgQRCodeStatusChanged','onGroupFileInfoUpdate','onGroupTransferInfoUpdate','onMsgWithRichLinkInfoUpdate','onHitCsRelatedEmojiResult','onRecvSysMsg','onRedTouchChanged','onBroadcastHelperDownloadComplete','onSysMsgNotification','onChannelFreqLimitInfoUpdate','onRichMediaDownloadComplete','3724700vkWbhw','onMsgAbstractUpdate','onRichMediaProgerssUpdate','onMsgBoxChanged'];_0x11fb=function(){return _0x1d1abe;};return _0x11fb();}export class MsgListener{['onAddSendMsg'](_0x1d7722){}[_0x532ad0(0x121)](_0x35a6ae){}[_0x532ad0(0x137)](_0x5985c6){}[_0x532ad0(0x123)](_0x12866e,_0x4d4730,_0x5a21ff){}[_0x532ad0(0x12d)](_0x58ebf2){}[_0x532ad0(0x12c)](_0x380242){}[_0x532ad0(0x13b)](_0x1b6eaa,_0xa9b230,_0x46d5ef){}['onEmojiDownloadComplete'](_0x94843){}[_0x532ad0(0x141)](_0x544686){}[_0x532ad0(0x130)](_0x1d5268){}['onFileMsgCome'](_0x5d5041){}[_0x532ad0(0x12f)](_0x5cba19){}[_0x532ad0(0x157)](_0x26a72d){}[_0x532ad0(0x150)](_0x3d8f1e,_0xaa6ac1,_0x29d1a9,_0x5360bd,_0x470762){}[_0x532ad0(0x149)](_0x5ec763){}[_0x532ad0(0x11b)](_0x3ae61e){}[_0x532ad0(0x153)](_0x33eebc){}[_0x532ad0(0x14f)](_0x46e3b1){}[_0x532ad0(0x11c)](_0x46454d){}[_0x532ad0(0x14b)](_0x35ba8f){}[_0x532ad0(0x156)](_0x166d80){}['onGuildNotificationAbstractUpdate'](_0x4b9664){}[_0x532ad0(0x11e)](_0x3bccdb){}[_0x532ad0(0x13a)](_0xfa8e6e){}['onHitRelatedEmojiResult'](_0x39b86f){}[_0x532ad0(0x134)](_0x2a5e8b){}['onInputStatusPush'](_0x57143b){}[_0x532ad0(0x12b)](_0x4f40ff){}[_0x532ad0(0x142)](_0x33eb4a){}[_0x532ad0(0x147)](_0xe84669){}[_0x532ad0(0x126)](_0xf8a9ee){}[_0x532ad0(0x128)](_0x55a7fd){}[_0x532ad0(0x135)](_0xfd70c8,_0x56b6ba){}[_0x532ad0(0x13c)](_0x3b3298){}['onMsgInfoListAdd'](_0x279357){}[_0x532ad0(0x14e)](_0x242edb){}[_0x532ad0(0x11a)](_0x29083e){}['onMsgRecall'](_0x1ecb16,_0xf376f1,_0x2d6fba){}[_0x532ad0(0x148)](_0xed9df9){}[_0x532ad0(0x14a)](_0x4c72ec){}['onNtFirstViewMsgSyncEnd'](){}['onNtMsgSyncEnd'](){}[_0x532ad0(0x12e)](){}[_0x532ad0(0x138)](_0x209546){}['onRecvGroupGuildFlag'](_0xf37bd5){}[_0x532ad0(0x144)](_0x53ff67){}[_0x532ad0(0x154)](_0x3c41d2,_0x29e0b3,_0x52aae4,_0x58dfda,_0x2940c1,_0x16fbef){}['onRecvOnlineFileMsg'](_0x2818ea){}[_0x532ad0(0x155)](_0x81111a){}[_0x532ad0(0x11f)](_0x4ccd77){}['onRecvUDCFlag'](_0x1da039){}[_0x532ad0(0x124)](_0x1a9fb3){}[_0x532ad0(0x127)](_0x1fa6e1){}[_0x532ad0(0x132)](_0x24ffed){}[_0x532ad0(0x12a)](_0x216217){}['onSendMsgError'](_0x207686,_0x1e8e89,_0x10f811,_0x449dd5){}[_0x532ad0(0x122)](_0x4b61a3,_0xbcbba8,_0x5f4b39,_0x779f26){}[_0x532ad0(0x140)](_0x55d678){}[_0x532ad0(0x13d)](_0x2df247){}[_0x532ad0(0x139)](_0x468e39){}[_0x532ad0(0x13e)](_0x245c1c){}[_0x532ad0(0x146)](_0x2b1d77){}['onUserTabStatusChanged'](_0x3d8917){}[_0x532ad0(0x152)](_0x19901f,_0x4b2ee1,_0x16a61b){}['onlineStatusSmallIconDownloadPush'](_0x2b1877,_0x1391a8,_0x3cf3ab){}[_0x532ad0(0x151)](..._0x5b2c41){}[_0x532ad0(0x11d)](..._0x4eb457){}[_0x532ad0(0x120)](..._0x2a3775){}[_0x532ad0(0x131)](..._0x4fc839){}}
var _0x2185c5=_0x3921;function _0x3921(_0x9ad97a,_0xaf27b0){var _0x430a80=_0x430a();return _0x3921=function(_0x39218b,_0x483d16){_0x39218b=_0x39218b-0x133;var _0x157812=_0x430a80[_0x39218b];return _0x157812;},_0x3921(_0x9ad97a,_0xaf27b0);}(function(_0xf756aa,_0x49f595){var _0x46f57f=_0x3921,_0x434f22=_0xf756aa();while(!![]){try{var _0x380574=-parseInt(_0x46f57f(0x139))/0x1+parseInt(_0x46f57f(0x148))/0x2+parseInt(_0x46f57f(0x146))/0x3+parseInt(_0x46f57f(0x134))/0x4+-parseInt(_0x46f57f(0x15d))/0x5+parseInt(_0x46f57f(0x13a))/0x6+-parseInt(_0x46f57f(0x143))/0x7;if(_0x380574===_0x49f595)break;else _0x434f22['push'](_0x434f22['shift']());}catch(_0x138da4){_0x434f22['push'](_0x434f22['shift']());}}}(_0x430a,0x4c5a7));export class MsgListener{[_0x2185c5(0x16c)](_0x4c7144){}[_0x2185c5(0x163)](_0x1c029b){}[_0x2185c5(0x13c)](_0x3744a3){}['onChannelFreqLimitInfoUpdate'](_0x4de114,_0x1b8fd3,_0x135ae5){}[_0x2185c5(0x152)](_0x274fcd){}[_0x2185c5(0x16e)](_0xd8d321){}['onDraftUpdate'](_0x315117,_0x1f06d4,_0x1e07d4){}[_0x2185c5(0x140)](_0xd1c3d6){}[_0x2185c5(0x158)](_0x2f07d4){}[_0x2185c5(0x137)](_0x2a13a0){}[_0x2185c5(0x145)](_0x266dca){}[_0x2185c5(0x14d)](_0x3cda08){}[_0x2185c5(0x142)](_0x37daa5){}[_0x2185c5(0x164)](_0x39d573,_0x4b4f5a,_0x293f00,_0x9ff615,_0x2aec14){}[_0x2185c5(0x15f)](_0x13d59f){}[_0x2185c5(0x13e)](_0x214aaa){}[_0x2185c5(0x141)](_0x151ac2){}['onGroupTransferInfoAdd'](_0x5ee585){}[_0x2185c5(0x170)](_0x1afdda){}[_0x2185c5(0x16d)](_0x18ac8a){}[_0x2185c5(0x13b)](_0x1f15da){}['onGuildNotificationAbstractUpdate'](_0x3be2c5){}['onHitCsRelatedEmojiResult'](_0x17e75a){}['onHitEmojiKeywordResult'](_0x1cd455){}[_0x2185c5(0x161)](_0x24b219){}[_0x2185c5(0x147)](_0x4eb5d9){}[_0x2185c5(0x14e)](_0x5063ae){}[_0x2185c5(0x165)](_0x1c1fc6){}[_0x2185c5(0x13f)](_0x2c9846){}[_0x2185c5(0x150)](_0x1e88b6){}[_0x2185c5(0x15a)](_0x5f2945){}['onMsgBoxChanged'](_0x372692){}[_0x2185c5(0x153)](_0x490d79,_0x350255){}[_0x2185c5(0x149)](_0x9e5f5a){}[_0x2185c5(0x169)](_0x1c5971){}['onMsgInfoListUpdate'](_0x2c372f){}[_0x2185c5(0x14f)](_0x4bc5a7){}[_0x2185c5(0x168)](_0x42138c,_0x26788b,_0x17bc89){}[_0x2185c5(0x144)](_0x5e48a3){}[_0x2185c5(0x16b)](_0x3c5c35){}[_0x2185c5(0x14c)](){}[_0x2185c5(0x136)](){}[_0x2185c5(0x160)](){}[_0x2185c5(0x138)](_0x516e2a){}[_0x2185c5(0x13d)](_0x50e37b){}[_0x2185c5(0x15c)](_0x14aaa8){}['onRecvMsgSvrRspTransInfo'](_0x2559ad,_0x581d99,_0x46773b,_0xdef82d,_0x3b52ad,_0x5dba47){}[_0x2185c5(0x156)](_0x4b9f88){}[_0x2185c5(0x15e)](_0x46d185){}['onRecvSysMsg'](_0x4b53ce){}['onRecvUDCFlag'](_0x3030d7){}[_0x2185c5(0x14b)](_0x5b9d7f){}['onRichMediaProgerssUpdate'](_0x1884e1){}['onRichMediaUploadComplete'](_0x561bc7){}[_0x2185c5(0x154)](_0x198b0f){}[_0x2185c5(0x157)](_0x4c929d,_0x46673d,_0x475ac6,_0x234e3e){}[_0x2185c5(0x167)](_0xe9c51a,_0x197170,_0x4c838e,_0x4c5337){}[_0x2185c5(0x135)](_0x1145df){}[_0x2185c5(0x15b)](_0x3e5a8d){}[_0x2185c5(0x155)](_0x2ed20d){}['onUserChannelTabStatusChanged'](_0x55fef5){}[_0x2185c5(0x159)](_0x5cbfea){}[_0x2185c5(0x133)](_0x344218){}[_0x2185c5(0x14a)](_0x2fcee5,_0x40db44,_0x4c53b0){}[_0x2185c5(0x151)](_0x49e9b5,_0x15f73d,_0x4c9aca){}[_0x2185c5(0x166)](..._0x3d6630){}[_0x2185c5(0x16f)](..._0x33502e){}[_0x2185c5(0x16a)](..._0xb4171){}[_0x2185c5(0x162)](..._0x2b9a49){}}function _0x430a(){var _0x17a18e=['onKickedOffLine','onUserSecQualityChanged','onSysMsgNotification','onMsgRecall','onMsgInfoListAdd','onRedTouchChanged','onMsgSettingUpdate','onAddSendMsg','onGuildInteractiveUpdate','onCustomWithdrawConfigUpdate','onMsgWithRichLinkInfoUpdate','onGroupTransferInfoUpdate','onUserTabStatusChanged','1909468gcRSIt','onTempChatInfoUpdate','onNtMsgSyncEnd','onFeedEventUpdate','onReadFeedEventUpdate','342142OOVmNh','1089180cxasrk','onGuildMsgAbFlagChanged','onBroadcastHelperProgressUpdate','onRecvGroupGuildFlag','onGroupFileInfoUpdate','onLineDev','onEmojiDownloadComplete','onGroupGuildUpdate','onFirstViewGroupGuildMapping','6148023uKMMkg','onMsgSecurityNotify','onFileMsgCome','1850370TdeAmX','onImportOldDbProgressUpdate','1211428SczyJq','onMsgEventListUpdate','onlineStatusBigIconDownloadPush','onRichMediaDownloadComplete','onNtFirstViewMsgSyncEnd','onFirstViewDirectMsgUpdate','onInputStatusPush','onMsgQRCodeStatusChanged','onLogLevelChanged','onlineStatusSmallIconDownloadPush','onContactUnreadCntUpdate','onMsgDelete','onSearchGroupFileInfoUpdate','onUnreadCntUpdate','onRecvOnlineFileMsg','onSendMsgError','onEmojiResourceUpdate','onUserOnlineStatusChanged','onMsgAbstractUpdate','onUnreadCntAfterFirstView','onRecvMsg','1741135roVzvy','onRecvS2CMsg','onGroupFileInfoAdd','onNtMsgSyncStart','onHitRelatedEmojiResult','onBroadcastHelperProgerssUpdate','onBroadcastHelperDownloadComplete','onGrabPasswordRedBag'];_0x430a=function(){return _0x17a18e;};return _0x430a();}

View File

@@ -1 +1 @@
var _0x251038=_0x32e9;(function(_0x230a9e,_0x3d87b9){var _0x4dee39=_0x32e9,_0x2c8bbe=_0x230a9e();while(!![]){try{var _0x197e84=-parseInt(_0x4dee39(0x1d6))/0x1*(-parseInt(_0x4dee39(0x1cf))/0x2)+parseInt(_0x4dee39(0x1ce))/0x3+-parseInt(_0x4dee39(0x1cc))/0x4*(parseInt(_0x4dee39(0x1c7))/0x5)+parseInt(_0x4dee39(0x1c8))/0x6+-parseInt(_0x4dee39(0x1d5))/0x7*(parseInt(_0x4dee39(0x1c9))/0x8)+-parseInt(_0x4dee39(0x1d1))/0x9*(parseInt(_0x4dee39(0x1d4))/0xa)+-parseInt(_0x4dee39(0x1cb))/0xb*(-parseInt(_0x4dee39(0x1d2))/0xc);if(_0x197e84===_0x3d87b9)break;else _0x2c8bbe['push'](_0x2c8bbe['shift']());}catch(_0x504427){_0x2c8bbe['push'](_0x2c8bbe['shift']());}}}(_0x34e7,0xc5d2d));function _0x32e9(_0x400c42,_0x3d2349){var _0x34e77b=_0x34e7();return _0x32e9=function(_0x32e982,_0x4593dc){_0x32e982=_0x32e982-0x1c7;var _0xbb217c=_0x34e77b[_0x32e982];return _0xbb217c;},_0x32e9(_0x400c42,_0x3d2349);}function _0x34e7(){var _0x2d51f6=['5131368xrYPfD','4376VzoPkZ','onProfileSimpleChanged','6677eZRRli','5434068oeLqah','onStrangerRemarkChanged','3828573brTBek','36RkYyRp','onProfileDetailInfoChanged','9RoJyyY','28524tyJIjK','onSelfStatusChanged','14646890YQLBfp','13055DhIBaB','59966AjDEtA','5SyHAgD'];_0x34e7=function(){return _0x2d51f6;};return _0x34e7();}export class ProfileListener{[_0x251038(0x1ca)](..._0x1553d1){}[_0x251038(0x1d0)](_0xc3f91b){}['onStatusUpdate'](..._0x530924){}[_0x251038(0x1d3)](..._0x2cb1fc){}[_0x251038(0x1cd)](..._0x1d4f91){}}
var _0x3e15cf=_0x49b2;(function(_0xaf4c6f,_0x318fd3){var _0x388383=_0x49b2,_0x358be5=_0xaf4c6f();while(!![]){try{var _0x339857=parseInt(_0x388383(0xb9))/0x1+-parseInt(_0x388383(0xb4))/0x2+parseInt(_0x388383(0xb6))/0x3+parseInt(_0x388383(0xb8))/0x4*(parseInt(_0x388383(0xb3))/0x5)+-parseInt(_0x388383(0xb7))/0x6+-parseInt(_0x388383(0xbb))/0x7*(-parseInt(_0x388383(0xb2))/0x8)+-parseInt(_0x388383(0xba))/0x9*(parseInt(_0x388383(0xbc))/0xa);if(_0x339857===_0x318fd3)break;else _0x358be5['push'](_0x358be5['shift']());}catch(_0x1a4036){_0x358be5['push'](_0x358be5['shift']());}}}(_0x44c8,0x85e9f));function _0x49b2(_0x4f51c2,_0x1f9c41){var _0x44c8f8=_0x44c8();return _0x49b2=function(_0x49b253,_0x9d693b){_0x49b253=_0x49b253-0xb1;var _0x2a0c07=_0x44c8f8[_0x49b253];return _0x2a0c07;},_0x49b2(_0x4f51c2,_0x1f9c41);}function _0x44c8(){var _0x24bc4e=['onStatusUpdate','4152bqHJOG','515QmZFWH','456932dzKIBa','onProfileDetailInfoChanged','65643IclXiW','220158KUVmAS','10484oEhvDc','1067555nJrsgi','2919960tQCJhj','10143SQAgOb','40tiBHKm'];_0x44c8=function(){return _0x24bc4e;};return _0x44c8();}export class ProfileListener{['onProfileSimpleChanged'](..._0x4d695c){}[_0x3e15cf(0xb5)](_0x30d71e){}[_0x3e15cf(0xb1)](..._0x34420c){}['onSelfStatusChanged'](..._0x5b5343){}['onStrangerRemarkChanged'](..._0x412de4){}}

View File

@@ -1 +1 @@
var _0x121e78=_0x27c6;function _0x371b(){var _0x5b0fd3=['4UDjqIq','1086080yLPtLg','onRobotFriendListChanged','2723798cboUdQ','onRobotListChanged','8464236utHbYv','2568291dqWikN','10235133SaLixm','976077eWhAaw','1647736ajCmJY','28xFVxKs'];_0x371b=function(){return _0x5b0fd3;};return _0x371b();}(function(_0xcc90e1,_0xf0e62a){var _0x1cc121=_0x27c6,_0x278161=_0xcc90e1();while(!![]){try{var _0x87eda8=parseInt(_0x1cc121(0xa3))/0x1+parseInt(_0x1cc121(0x9e))/0x2+-parseInt(_0x1cc121(0xa1))/0x3+parseInt(_0x1cc121(0xa6))/0x4*(-parseInt(_0x1cc121(0xa7))/0x5)+parseInt(_0x1cc121(0xa0))/0x6+-parseInt(_0x1cc121(0xa5))/0x7*(parseInt(_0x1cc121(0xa4))/0x8)+-parseInt(_0x1cc121(0xa2))/0x9;if(_0x87eda8===_0xf0e62a)break;else _0x278161['push'](_0x278161['shift']());}catch(_0x33fb82){_0x278161['push'](_0x278161['shift']());}}}(_0x371b,0xae618));function _0x27c6(_0x27d278,_0x4b2189){var _0x371b68=_0x371b();return _0x27c6=function(_0x27c655,_0x15ce67){_0x27c655=_0x27c655-0x9d;var _0x47737b=_0x371b68[_0x27c655];return _0x47737b;},_0x27c6(_0x27d278,_0x4b2189);}export class KernelRobotListener{[_0x121e78(0x9d)](..._0x2732d1){}[_0x121e78(0x9f)](..._0x1fceff){}['onRobotProfileChanged'](..._0x307080){}}
function _0x10fa(_0x13f6e7,_0x333673){var _0x5513cf=_0x5513();return _0x10fa=function(_0x10fa40,_0x4178cb){_0x10fa40=_0x10fa40-0x135;var _0x3c8799=_0x5513cf[_0x10fa40];return _0x3c8799;},_0x10fa(_0x13f6e7,_0x333673);}function _0x5513(){var _0x45cf6f=['onRobotProfileChanged','4126JUYiUS','195852fbBwwm','843iNPqGD','7KnWWvy','663432PSJOQi','1878372fOiste','2286468ZIEfjp','60OcQdVv','230PQYQVl','200056NgicSs','25860043tKiIMk'];_0x5513=function(){return _0x45cf6f;};return _0x5513();}var _0x3ab4bf=_0x10fa;(function(_0xc4eeef,_0x1d8b45){var _0xf051ea=_0x10fa,_0x7d6c83=_0xc4eeef();while(!![]){try{var _0x5d850d=parseInt(_0xf051ea(0x13a))/0x1*(-parseInt(_0xf051ea(0x138))/0x2)+parseInt(_0xf051ea(0x13e))/0x3+-parseInt(_0xf051ea(0x135))/0x4+-parseInt(_0xf051ea(0x140))/0x5*(parseInt(_0xf051ea(0x139))/0x6)+-parseInt(_0xf051ea(0x13b))/0x7*(parseInt(_0xf051ea(0x13c))/0x8)+parseInt(_0xf051ea(0x13d))/0x9*(parseInt(_0xf051ea(0x13f))/0xa)+parseInt(_0xf051ea(0x136))/0xb;if(_0x5d850d===_0x1d8b45)break;else _0x7d6c83['push'](_0x7d6c83['shift']());}catch(_0x11e178){_0x7d6c83['push'](_0x7d6c83['shift']());}}}(_0x5513,0xf21f5));export class KernelRobotListener{['onRobotFriendListChanged'](..._0xcc622b){}['onRobotListChanged'](..._0x582263){}[_0x3ab4bf(0x137)](..._0x4e28c4){}}

View File

@@ -1 +1 @@
function _0x39a8(){var _0x4c537e=['onGProSessionCreate','376NWznIo','onGetSelfTinyId','onNTSessionCreate','302071aActse','370510LoUqVi','6746960HXICBk','1398081GvGbCY','onUserOnlineResult','7611768OiGfDN','onSessionInitComplete','1361038LLbDFv','1235064EPrTFB'];_0x39a8=function(){return _0x4c537e;};return _0x39a8();}var _0x52d870=_0x5ce5;(function(_0x5a20c8,_0x33ce0a){var _0xbeaf1d=_0x5ce5,_0x32b791=_0x5a20c8();while(!![]){try{var _0x52dad3=parseInt(_0xbeaf1d(0x179))/0x1+-parseInt(_0xbeaf1d(0x180))/0x2+parseInt(_0xbeaf1d(0x182))/0x3+-parseInt(_0xbeaf1d(0x17a))/0x4+-parseInt(_0xbeaf1d(0x181))/0x5+-parseInt(_0xbeaf1d(0x184))/0x6+-parseInt(_0xbeaf1d(0x17f))/0x7*(-parseInt(_0xbeaf1d(0x17c))/0x8);if(_0x52dad3===_0x33ce0a)break;else _0x32b791['push'](_0x32b791['shift']());}catch(_0xe7ed92){_0x32b791['push'](_0x32b791['shift']());}}}(_0x39a8,0xb572f));function _0x5ce5(_0x192502,_0x369c05){var _0x39a8fd=_0x39a8();return _0x5ce5=function(_0x5ce539,_0x1bef1f){_0x5ce539=_0x5ce539-0x178;var _0x53a358=_0x39a8fd[_0x5ce539];return _0x53a358;},_0x5ce5(_0x192502,_0x369c05);}export class SessionListener{[_0x52d870(0x17e)](_0x3125a0){}[_0x52d870(0x17b)](_0x84e309){}[_0x52d870(0x178)](_0x431585){}['onOpentelemetryInit'](_0x172a79){}[_0x52d870(0x183)](_0x5bfad0){}[_0x52d870(0x17d)](_0x5eed62){}}
function _0x5c3b(_0xc875e6,_0x3ff80d){var _0x2a94db=_0x2a94();return _0x5c3b=function(_0x5c3bf9,_0x4cd04f){_0x5c3bf9=_0x5c3bf9-0x19c;var _0x2474c8=_0x2a94db[_0x5c3bf9];return _0x2474c8;},_0x5c3b(_0xc875e6,_0x3ff80d);}var _0x21413a=_0x5c3b;(function(_0x3b7db8,_0x37ce6b){var _0x502ae4=_0x5c3b,_0x314d5b=_0x3b7db8();while(!![]){try{var _0x43a213=-parseInt(_0x502ae4(0x19f))/0x1+-parseInt(_0x502ae4(0x1a4))/0x2*(-parseInt(_0x502ae4(0x1a5))/0x3)+parseInt(_0x502ae4(0x1a2))/0x4+-parseInt(_0x502ae4(0x1ab))/0x5+-parseInt(_0x502ae4(0x19e))/0x6*(parseInt(_0x502ae4(0x1a6))/0x7)+parseInt(_0x502ae4(0x1a7))/0x8*(parseInt(_0x502ae4(0x19c))/0x9)+parseInt(_0x502ae4(0x1aa))/0xa;if(_0x43a213===_0x37ce6b)break;else _0x314d5b['push'](_0x314d5b['shift']());}catch(_0xec12a0){_0x314d5b['push'](_0x314d5b['shift']());}}}(_0x2a94,0xb2891));function _0x2a94(){var _0x452c04=['onUserOnlineResult','18497370SvBVPq','3619790aGvemY','7368651fhMRtT','onSessionInitComplete','78jgebQc','1376420zEeBjP','onOpentelemetryInit','onGetSelfTinyId','2605896jsNgPi','onNTSessionCreate','2EughAU','1413483OVGGcC','516628zemKDJ','8JISzrT','onGProSessionCreate'];_0x2a94=function(){return _0x452c04;};return _0x2a94();}export class SessionListener{[_0x21413a(0x1a3)](_0x1c693a){}[_0x21413a(0x1a8)](_0x30f47d){}[_0x21413a(0x19d)](_0x548877){}[_0x21413a(0x1a0)](_0x38c37b){}[_0x21413a(0x1a9)](_0x59f041){}[_0x21413a(0x1a1)](_0x5c89c7){}}

View File

@@ -1 +1 @@
var _0x4d4fd1=_0x4a09;function _0x5800(){var _0xa25b49=['onCleanCacheStorageChanged','onCleanCacheProgressChanged','5079666jaYHxw','34840wRFjFN','onScanCacheProgressChanged','5aDCquY','3678890plGeVj','1534260Cnxzqe','4409552VRsfsf','1393iCTKyA','27YeYxcB','onFinishScan','359622tzmEBC','onChatCleanDone','110qYqDNn','6632145ammGyB'];_0x5800=function(){return _0xa25b49;};return _0x5800();}(function(_0x1dd2a7,_0x2c2da0){var _0x41e87d=_0x4a09,_0x27f614=_0x1dd2a7();while(!![]){try{var _0x4fe0d0=-parseInt(_0x41e87d(0x12a))/0x1+-parseInt(_0x41e87d(0x12f))/0x2*(parseInt(_0x41e87d(0x12d))/0x3)+parseInt(_0x41e87d(0x12b))/0x4+-parseInt(_0x41e87d(0x128))/0x5*(parseInt(_0x41e87d(0x125))/0x6)+parseInt(_0x41e87d(0x12c))/0x7*(parseInt(_0x41e87d(0x126))/0x8)+-parseInt(_0x41e87d(0x132))/0x9+parseInt(_0x41e87d(0x129))/0xa*(parseInt(_0x41e87d(0x131))/0xb);if(_0x4fe0d0===_0x2c2da0)break;else _0x27f614['push'](_0x27f614['shift']());}catch(_0x2920f3){_0x27f614['push'](_0x27f614['shift']());}}}(_0x5800,0xde9e8));function _0x4a09(_0x2066ff,_0x4262d9){var _0x58006b=_0x5800();return _0x4a09=function(_0x4a093e,_0x446870){_0x4a093e=_0x4a093e-0x125;var _0x405ad6=_0x58006b[_0x4a093e];return _0x405ad6;},_0x4a09(_0x2066ff,_0x4262d9);}export class StorageCleanListener{[_0x4d4fd1(0x134)](_0x26fed1){}[_0x4d4fd1(0x127)](_0x650ea3){}[_0x4d4fd1(0x133)](_0x30e89c){}[_0x4d4fd1(0x12e)](_0xfe9883){}[_0x4d4fd1(0x130)](_0x380628){}}
function _0x351b(){var _0x1cd900=['onCleanCacheStorageChanged','10116701hzcPqP','1667658FiNDRc','onCleanCacheProgressChanged','1040525FmFiaq','onFinishScan','1172340JwtpQd','538168VQUeVh','6272312pzBGjb','670278PCCiQI','9gqhAaT','onScanCacheProgressChanged','6jUuAmg'];_0x351b=function(){return _0x1cd900;};return _0x351b();}var _0xc2cca6=_0x3328;function _0x3328(_0x298117,_0x353218){var _0x351bbf=_0x351b();return _0x3328=function(_0x33286f,_0x11d48d){_0x33286f=_0x33286f-0xbf;var _0x4bbdea=_0x351bbf[_0x33286f];return _0x4bbdea;},_0x3328(_0x298117,_0x353218);}(function(_0x429e1b,_0x75ee62){var _0x2f6904=_0x3328,_0x2483ff=_0x429e1b();while(!![]){try{var _0xb81fc8=-parseInt(_0x2f6904(0xbf))/0x1+-parseInt(_0x2f6904(0xca))/0x2+parseInt(_0x2f6904(0xc7))/0x3*(parseInt(_0x2f6904(0xc2))/0x4)+parseInt(_0x2f6904(0xc1))/0x5+-parseInt(_0x2f6904(0xc4))/0x6+parseInt(_0x2f6904(0xc9))/0x7+-parseInt(_0x2f6904(0xc3))/0x8*(-parseInt(_0x2f6904(0xc5))/0x9);if(_0xb81fc8===_0x75ee62)break;else _0x2483ff['push'](_0x2483ff['shift']());}catch(_0x2cc7da){_0x2483ff['push'](_0x2483ff['shift']());}}}(_0x351b,0xb650f));export class StorageCleanListener{[_0xc2cca6(0xcb)](_0x5379e8){}[_0xc2cca6(0xc6)](_0x4b50a1){}[_0xc2cca6(0xc8)](_0x1972f7){}[_0xc2cca6(0xc0)](_0x36fa86){}['onChatCleanDone'](_0x4e07f5){}}

View File

@@ -1 +1 @@
(function(_0xaad254,_0x2ded86){var _0x272df5=_0x1f65,_0x1f246a=_0xaad254();while(!![]){try{var _0x4a1c1e=parseInt(_0x272df5(0xdc))/0x1+-parseInt(_0x272df5(0xdb))/0x2*(parseInt(_0x272df5(0xdd))/0x3)+parseInt(_0x272df5(0xde))/0x4+parseInt(_0x272df5(0xd9))/0x5*(parseInt(_0x272df5(0xda))/0x6)+parseInt(_0x272df5(0xdf))/0x7+parseInt(_0x272df5(0xd7))/0x8*(-parseInt(_0x272df5(0xd8))/0x9)+-parseInt(_0x272df5(0xe0))/0xa;if(_0x4a1c1e===_0x2ded86)break;else _0x1f246a['push'](_0x1f246a['shift']());}catch(_0x5ca8f1){_0x1f246a['push'](_0x1f246a['shift']());}}}(_0x3469,0x7660f));function _0x1f65(_0x271658,_0x102e1b){var _0x346900=_0x3469();return _0x1f65=function(_0x1f655f,_0x9afbc5){_0x1f655f=_0x1f655f-0xd7;var _0x2da023=_0x346900[_0x1f655f];return _0x2da023;},_0x1f65(_0x271658,_0x102e1b);}export*from'./NodeIKernelSessionListener';export*from'./NodeIKernelLoginListener';function _0x3469(){var _0x3fc991=['349620qtSXxS','52068FvkcBz','2446264jrVXgm','2334710LdDLJu','9475660liyOkT','8ujIoPK','27315HLDbMw','2217680YEmTtu','12EYofus','86ndYoyS'];_0x3469=function(){return _0x3fc991;};return _0x3469();}export*from'./NodeIKernelMsgListener';export*from'./NodeIKernelGroupListener';export*from'./NodeIKernelBuddyListener';export*from'./NodeIKernelProfileListener';export*from'./NodeIKernelRobotListener';export*from'./NodeIKernelTicketListener';export*from'./NodeIKernelStorageCleanListener';export*from'./NodeIKernelFileAssistantListener';
(function(_0x514895,_0xd8926b){var _0x5ccff2=_0x1c15,_0x3a5f6c=_0x514895();while(!![]){try{var _0x5e61cf=-parseInt(_0x5ccff2(0x1b9))/0x1*(-parseInt(_0x5ccff2(0x1ba))/0x2)+-parseInt(_0x5ccff2(0x1bf))/0x3*(-parseInt(_0x5ccff2(0x1c0))/0x4)+-parseInt(_0x5ccff2(0x1bc))/0x5*(-parseInt(_0x5ccff2(0x1bb))/0x6)+-parseInt(_0x5ccff2(0x1be))/0x7+parseInt(_0x5ccff2(0x1c1))/0x8+parseInt(_0x5ccff2(0x1bd))/0x9+-parseInt(_0x5ccff2(0x1c2))/0xa;if(_0x5e61cf===_0xd8926b)break;else _0x3a5f6c['push'](_0x3a5f6c['shift']());}catch(_0x526209){_0x3a5f6c['push'](_0x3a5f6c['shift']());}}}(_0x2ce5,0xba61c));export*from'./NodeIKernelSessionListener';export*from'./NodeIKernelLoginListener';export*from'./NodeIKernelMsgListener';export*from'./NodeIKernelGroupListener';export*from'./NodeIKernelBuddyListener';function _0x1c15(_0x4b69a7,_0x28f6f7){var _0x2ce560=_0x2ce5();return _0x1c15=function(_0x1c15d3,_0x88aa28){_0x1c15d3=_0x1c15d3-0x1b9;var _0x5f1114=_0x2ce560[_0x1c15d3];return _0x5f1114;},_0x1c15(_0x4b69a7,_0x28f6f7);}export*from'./NodeIKernelProfileListener';export*from'./NodeIKernelRobotListener';export*from'./NodeIKernelTicketListener';function _0x2ce5(){var _0x3b17c9=['30880180TLtPUS','193cftrqV','7832edjhqz','170184UagGJf','175FbOBfx','12642345HiDgwf','5518072ArenZv','1590720wGekhm','8GFPeiQ','3408168WfGGzB'];_0x2ce5=function(){return _0x3b17c9;};return _0x2ce5();}export*from'./NodeIKernelStorageCleanListener';export*from'./NodeIKernelFileAssistantListener';

View File

@@ -2,7 +2,7 @@ export interface NodeIKernelAvatarService {
addAvatarListener(arg: unknown): unknown;
removeAvatarListener(arg: unknown): unknown;
getAvatarPath(arg1: unknown, arg2: unknown): unknown;
forceDownloadAvatar(uid: string, unknown: boolean): Promise<unknown>;
forceDownloadAvatar(uid: string, useCache: number): Promise<unknown>;
getGroupAvatarPath(arg1: unknown, arg2: unknown): unknown;
getConfGroupAvatarPath(arg: unknown): unknown;
forceDownloadGroupAvatar(arg1: unknown, arg2: unknown): unknown;

View File

@@ -45,9 +45,9 @@ export interface NodeIKernelGroupService {
createGroupWithMembers(arg: unknown): void;
quitGroup(groupCode: string): void;
destroyGroup(groupCode: string): void;
getSingleScreenNotifies(groupCode: string, ...args: unknown[]): void;
getSingleScreenNotifies(arg1: boolean, arg2: string, arg3: number): Promise<GeneralCallResult>;
clearGroupNotifies(groupCode: string): void;
getGroupNotifiesUnreadCount(groupCode: string): void;
getGroupNotifiesUnreadCount(unknown: Boolean): Promise<GeneralCallResult>;
clearGroupNotifiesUnreadCount(groupCode: string): void;
operateSysNotify(doubt: boolean, operateMsg: {
operateType: GroupRequestOperateTypes;

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,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 _0x49b2(_0x1b4f52,_0xb63e84){var _0x510301=_0x5103();return _0x49b2=function(_0x49b29a,_0x238896){_0x49b29a=_0x49b29a-0x16b;var _0x5eb128=_0x510301[_0x49b29a];return _0x5eb128;},_0x49b2(_0x1b4f52,_0xb63e84);}(function(_0x2a8627,_0xcb1f7){var _0x5600f6=_0x49b2,_0x20dc57=_0x2a8627();while(!![]){try{var _0x384218=-parseInt(_0x5600f6(0x16f))/0x1+parseInt(_0x5600f6(0x16c))/0x2*(parseInt(_0x5600f6(0x172))/0x3)+parseInt(_0x5600f6(0x171))/0x4+-parseInt(_0x5600f6(0x16b))/0x5+-parseInt(_0x5600f6(0x16d))/0x6+-parseInt(_0x5600f6(0x170))/0x7+parseInt(_0x5600f6(0x16e))/0x8;if(_0x384218===_0xcb1f7)break;else _0x20dc57['push'](_0x20dc57['shift']());}catch(_0xe44c29){_0x20dc57['push'](_0x20dc57['shift']());}}}(_0x5103,0x2bda9));export var GeneralCallResultStatus;(function(_0x3a4a8d){_0x3a4a8d[_0x3a4a8d['OK']=0x0]='OK';}(GeneralCallResultStatus||(GeneralCallResultStatus={})));function _0x5103(){var _0x1cb1b8=['2205637WtLCMJ','147788LJWKbE','766281LbrFip','763725AabgPU','2KPjllf','1457442rLfqAN','4983488JOXCCs','24942UkBuZd'];_0x5103=function(){return _0x1cb1b8;};return _0x5103();}
(function(_0x1f337c,_0x1d0312){var _0x45d537=_0x2837,_0x2110da=_0x1f337c();while(!![]){try{var _0x2cf552=-parseInt(_0x45d537(0x7e))/0x1*(parseInt(_0x45d537(0x82))/0x2)+parseInt(_0x45d537(0x7b))/0x3+-parseInt(_0x45d537(0x7a))/0x4*(parseInt(_0x45d537(0x7f))/0x5)+-parseInt(_0x45d537(0x7c))/0x6*(-parseInt(_0x45d537(0x83))/0x7)+-parseInt(_0x45d537(0x80))/0x8+-parseInt(_0x45d537(0x7d))/0x9+parseInt(_0x45d537(0x81))/0xa;if(_0x2cf552===_0x1d0312)break;else _0x2110da['push'](_0x2110da['shift']());}catch(_0x14458f){_0x2110da['push'](_0x2110da['shift']());}}}(_0x10a1,0x77633));export var GeneralCallResultStatus;(function(_0x344018){_0x344018[_0x344018['OK']=0x0]='OK';}(GeneralCallResultStatus||(GeneralCallResultStatus={})));function _0x2837(_0x25c8cd,_0xdb4932){var _0x10a1cc=_0x10a1();return _0x2837=function(_0x283785,_0x3850c4){_0x283785=_0x283785-0x7a;var _0x17ba50=_0x10a1cc[_0x283785];return _0x17ba50;},_0x2837(_0x25c8cd,_0xdb4932);}function _0x10a1(){var _0x183726=['796rgyHGw','2916276FLdCSH','3582pOzNJZ','242973SuqpkS','320043TnsrNs','1210aVGvtY','5484024qkmCbW','7373690RdrIzz','4bDoyLk','2114VegVsi'];_0x10a1=function(){return _0x183726;};return _0x10a1();}

View File

@@ -1 +1 @@
(function(_0x4f3a05,_0x289678){var _0xb829d4=_0x35ca,_0x47e609=_0x4f3a05();while(!![]){try{var _0x426647=parseInt(_0xb829d4(0x157))/0x1*(parseInt(_0xb829d4(0x153))/0x2)+-parseInt(_0xb829d4(0x155))/0x3*(-parseInt(_0xb829d4(0x14e))/0x4)+parseInt(_0xb829d4(0x152))/0x5+-parseInt(_0xb829d4(0x150))/0x6*(-parseInt(_0xb829d4(0x158))/0x7)+parseInt(_0xb829d4(0x154))/0x8*(-parseInt(_0xb829d4(0x14f))/0x9)+-parseInt(_0xb829d4(0x151))/0xa*(parseInt(_0xb829d4(0x156))/0xb)+parseInt(_0xb829d4(0x159))/0xc;if(_0x426647===_0x289678)break;else _0x47e609['push'](_0x47e609['shift']());}catch(_0x360837){_0x47e609['push'](_0x47e609['shift']());}}}(_0x2f1f,0xbf3c3));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';function _0x2f1f(){var _0x20f850=['3120445mraTkK','2NnMMbg','87800arLJSE','47202IHlpgZ','1179849TOEDgk','1293528Hqvajn','149590mHDLKG','1869888MHIJjl','156QRVtKG','963gbregz','6LfDlVp','70JzKCpD'];_0x2f1f=function(){return _0x20f850;};return _0x2f1f();}function _0x35ca(_0x9ef32a,_0x3bdd12){var _0x2f1fb4=_0x2f1f();return _0x35ca=function(_0x35ca1d,_0x451ed7){_0x35ca1d=_0x35ca1d-0x14e;var _0x1ef293=_0x2f1fb4[_0x35ca1d];return _0x1ef293;},_0x35ca(_0x9ef32a,_0x3bdd12);}export*from'./NodeIKernelRobotService';export*from'./NodeIKernelRichMediaService';export*from'./NodeIKernelDbToolsService';export*from'./NodeIKernelTipOffService';
(function(_0xf67114,_0x34decb){var _0x34dd14=_0x3d23,_0x2cd6e3=_0xf67114();while(!![]){try{var _0x4703a1=-parseInt(_0x34dd14(0x199))/0x1+parseInt(_0x34dd14(0x19c))/0x2+parseInt(_0x34dd14(0x19d))/0x3*(-parseInt(_0x34dd14(0x19b))/0x4)+parseInt(_0x34dd14(0x19f))/0x5*(-parseInt(_0x34dd14(0x1a3))/0x6)+-parseInt(_0x34dd14(0x19e))/0x7*(parseInt(_0x34dd14(0x19a))/0x8)+-parseInt(_0x34dd14(0x1a0))/0x9+parseInt(_0x34dd14(0x1a2))/0xa*(parseInt(_0x34dd14(0x1a1))/0xb);if(_0x4703a1===_0x34decb)break;else _0x2cd6e3['push'](_0x2cd6e3['shift']());}catch(_0x2f7292){_0x2cd6e3['push'](_0x2cd6e3['shift']());}}}(_0x4799,0x93054));export*from'./common';export*from'./NodeIKernelAvatarService';export*from'./NodeIKernelBuddyService';export*from'./NodeIKernelFileAssistantService';export*from'./NodeIKernelGroupService';export*from'./NodeIKernelLoginService';export*from'./NodeIKernelMsgService';function _0x4799(){var _0x464d6a=['933bzNCPT','49mSDOQe','829285qjhNTm','4789827mjwSHc','33MyTTAz','9518290FYWiqu','24Leftoo','413912etBbVM','798568JdqVqW','9672TgWWFw','1613994Ngswbi'];_0x4799=function(){return _0x464d6a;};return _0x4799();}export*from'./NodeIKernelOnlineStatusService';export*from'./NodeIKernelProfileLikeService';export*from'./NodeIKernelProfileService';export*from'./NodeIKernelTicketService';export*from'./NodeIKernelStorageCleanService';export*from'./NodeIKernelRobotService';function _0x3d23(_0xa8b9b0,_0xe300b3){var _0x479928=_0x4799();return _0x3d23=function(_0x3d23b3,_0x2f8259){_0x3d23b3=_0x3d23b3-0x199;var _0x53234f=_0x479928[_0x3d23b3];return _0x53234f;},_0x3d23(_0xa8b9b0,_0xe300b3);}export*from'./NodeIKernelRichMediaService';export*from'./NodeIKernelDbToolsService';export*from'./NodeIKernelTipOffService';

View File

@@ -1 +1 @@
(function(_0x3fc743,_0x2e734d){const _0x38ecc2=_0x5acf,_0x41164b=_0x3fc743();while(!![]){try{const _0x586c2b=parseInt(_0x38ecc2(0xcd))/0x1*(parseInt(_0x38ecc2(0xcc))/0x2)+parseInt(_0x38ecc2(0xc4))/0x3*(parseInt(_0x38ecc2(0xc6))/0x4)+parseInt(_0x38ecc2(0xd1))/0x5*(parseInt(_0x38ecc2(0xc9))/0x6)+-parseInt(_0x38ecc2(0xcf))/0x7+parseInt(_0x38ecc2(0xc3))/0x8*(parseInt(_0x38ecc2(0xc2))/0x9)+-parseInt(_0x38ecc2(0xd0))/0xa+-parseInt(_0x38ecc2(0xd2))/0xb*(-parseInt(_0x38ecc2(0xc8))/0xc);if(_0x586c2b===_0x2e734d)break;else _0x41164b['push'](_0x41164b['shift']());}catch(_0xab427){_0x41164b['push'](_0x41164b['shift']());}}}(_0x42cd,0xabd18));function _0x5acf(_0x4775d2,_0x4c2cb3){const _0x42cd82=_0x42cd();return _0x5acf=function(_0x5acfbc,_0x10402a){_0x5acfbc=_0x5acfbc-0xc1;let _0x1ff8ed=_0x42cd82[_0x5acfbc];return _0x1ff8ed;},_0x5acf(_0x4775d2,_0x4c2cb3);}import{appid,qqPkgInfo,qqVersionConfigInfo}from'@/common/utils/QQBasicInfo';import{hostname,systemName,systemVersion}from'@/common/utils/system';import _0xd98056 from'node:path';import _0xf39e9f from'node:fs';import{randomUUID}from'crypto';export const sessionConfig={};export function genSessionConfig(_0x3b34e0,_0x214f41,_0x8e9bdd){const _0x1c1ed4=_0x5acf,_0x327e7c={'hjhIZ':_0x1c1ed4(0xc1),'lyjkG':function(_0x26e3ae){return _0x26e3ae();},'NLFxp':'utf-8','flEqL':'{\x22appearance\x22:{\x22isSplitViewMode\x22:true},\x22msg\x22:{}}'},_0x389895=_0xd98056[_0x1c1ed4(0xca)](_0x8e9bdd,_0x327e7c[_0x1c1ed4(0xc7)],'temp');_0xf39e9f[_0x1c1ed4(0xd3)](_0x389895,{'recursive':!![]});const _0xb51edf=_0xd98056['join'](_0x8e9bdd,_0x327e7c[_0x1c1ed4(0xc7)],_0x1c1ed4(0xce));let _0x50a7af=_0x327e7c[_0x1c1ed4(0xc5)](randomUUID);try{_0x50a7af=_0xf39e9f['readFileSync'](_0xd98056['join'](_0xb51edf),_0x327e7c['NLFxp']);}catch(_0x4bc425){_0xf39e9f[_0x1c1ed4(0xd4)](_0xd98056[_0x1c1ed4(0xca)](_0xb51edf),_0x50a7af,_0x327e7c['NLFxp']);}const _0x35b2bc={'selfUin':_0x3b34e0,'selfUid':_0x214f41,'desktopPathConfig':{'account_path':_0x8e9bdd},'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':_0x389895,'deviceInfo':{'guid':_0x50a7af,'buildVer':qqPkgInfo['version'],'localId':0x804,'devName':hostname,'devType':systemName,'vendorName':'','osVer':systemVersion,'vendorOsName':systemName,'setMute':![],'vendorType':0x0},'deviceConfig':_0x327e7c['flEqL']};return Object[_0x1c1ed4(0xcb)](sessionConfig,_0x35b2bc),_0x35b2bc;}function _0x42cd(){const _0x5bb349=['hjhIZ','311880JAHKCb','25374qXZfLe','join','assign','28sMZJyW','8876KGHgQD','guid.txt','5623443diGffY','4851820bNwwYa','170QRvauE','451FLDLwe','mkdirSync','writeFileSync','NapCat','8361jcMRut','2688nRaYTO','346515nYCWaa','lyjkG','12bJfhNK'];_0x42cd=function(){return _0x5bb349;};return _0x42cd();}
function _0x55a9(_0xd01c41,_0x37bdd0){const _0x46de2b=_0x46de();return _0x55a9=function(_0x55a992,_0x5e9f9e){_0x55a992=_0x55a992-0x1c1;let _0x233452=_0x46de2b[_0x55a992];return _0x233452;},_0x55a9(_0xd01c41,_0x37bdd0);}(function(_0x225a6b,_0x189935){const _0x50d322=_0x55a9,_0x40052f=_0x225a6b();while(!![]){try{const _0x573b17=parseInt(_0x50d322(0x1cb))/0x1*(-parseInt(_0x50d322(0x1ca))/0x2)+-parseInt(_0x50d322(0x1c8))/0x3*(parseInt(_0x50d322(0x1c5))/0x4)+parseInt(_0x50d322(0x1c2))/0x5*(-parseInt(_0x50d322(0x1c9))/0x6)+parseInt(_0x50d322(0x1cf))/0x7*(-parseInt(_0x50d322(0x1d4))/0x8)+parseInt(_0x50d322(0x1d7))/0x9+parseInt(_0x50d322(0x1d8))/0xa+parseInt(_0x50d322(0x1ce))/0xb;if(_0x573b17===_0x189935)break;else _0x40052f['push'](_0x40052f['shift']());}catch(_0x17cdd5){_0x40052f['push'](_0x40052f['shift']());}}}(_0x46de,0xd03ee));import{appid,qqPkgInfo,qqVersionConfigInfo}from'@/common/utils/QQBasicInfo';function _0x46de(){const _0x2173d8=['temp','utf-8','22353386LnRIrZ','756qytmcc','mkdirSync','guid.txt','NapCat','zzNNf','75688YGnMUl','curVersion','jANAV','7266168uxmTrE','10241070iGanBP','join','readFileSync','1616610MUMLjf','version','gNyyV','2574476PcaANP','wjSSr','writeFileSync','3ZdQgSW','18WtUXpM','375238mlpPTO','2NqnmyW'];_0x46de=function(){return _0x2173d8;};return _0x46de();}import{hostname,systemName,systemVersion}from'@/common/utils/system';import _0x2e6ad1 from'node:path';import _0x3045eb from'node:fs';import{randomUUID}from'crypto';export const sessionConfig={};export function genSessionConfig(_0x18b50d,_0x1da33e,_0x555343){const _0x2e4c41=_0x55a9,_0x5ca599={'zzNNf':_0x2e4c41(0x1d2),'gNyyV':_0x2e4c41(0x1cc),'wjSSr':function(_0x154037){return _0x154037();},'jANAV':_0x2e4c41(0x1cd),'AcVHq':'{\x22appearance\x22:{\x22isSplitViewMode\x22:true},\x22msg\x22:{}}'},_0x5452e4=_0x2e6ad1[_0x2e4c41(0x1d9)](_0x555343,_0x5ca599['zzNNf'],_0x5ca599[_0x2e4c41(0x1c4)]);_0x3045eb[_0x2e4c41(0x1d0)](_0x5452e4,{'recursive':!![]});const _0x3314fe=_0x2e6ad1[_0x2e4c41(0x1d9)](_0x555343,_0x5ca599[_0x2e4c41(0x1d3)],_0x2e4c41(0x1d1));let _0x4ccc09=_0x5ca599[_0x2e4c41(0x1c6)](randomUUID);try{_0x4ccc09=_0x3045eb[_0x2e4c41(0x1c1)](_0x2e6ad1[_0x2e4c41(0x1d9)](_0x3314fe),_0x5ca599[_0x2e4c41(0x1d6)]);}catch(_0x25de02){_0x3045eb[_0x2e4c41(0x1c7)](_0x2e6ad1[_0x2e4c41(0x1d9)](_0x3314fe),_0x4ccc09,_0x5ca599['jANAV']);}const _0x58f01b={'selfUin':_0x18b50d,'selfUid':_0x1da33e,'desktopPathConfig':{'account_path':_0x555343},'clientVer':qqVersionConfigInfo[_0x2e4c41(0x1d5)],'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':_0x5452e4,'deviceInfo':{'guid':_0x4ccc09,'buildVer':qqPkgInfo[_0x2e4c41(0x1c3)],'localId':0x804,'devName':hostname,'devType':systemName,'vendorName':'','osVer':systemVersion,'vendorOsName':systemName,'setMute':![],'vendorType':0x0},'deviceConfig':_0x5ca599['AcVHq']};return Object['assign'](sessionConfig,_0x58f01b),_0x58f01b;}

View File

@@ -1 +1 @@
const _0x24c0fc=_0x10d5;function _0x1600(){const _0x23d132=['join','fileLog','consoleLog','.json','6168820EBoNPA','napcat_','6nDnyol','11cWTkmh','2150856wSBRQI','getConfigDir','175564nmBydH','2123856WxXIiP','4TbvIUD','359186hfEVsI','12ByPcSw','DEBUG','2953165DbWkCb','3752568rFmrDK','14JxbqKg','uin','fileLogLevel'];_0x1600=function(){return _0x23d132;};return _0x1600();}(function(_0x15f526,_0x15cdeb){const _0x391803=_0x10d5,_0xe1eccd=_0x15f526();while(!![]){try{const _0x344492=-parseInt(_0x391803(0x79))/0x1*(parseInt(_0x391803(0x7a))/0x2)+parseInt(_0x391803(0x7b))/0x3*(parseInt(_0x391803(0x77))/0x4)+parseInt(_0x391803(0x7d))/0x5*(parseInt(_0x391803(0x73))/0x6)+parseInt(_0x391803(0x7f))/0x7*(-parseInt(_0x391803(0x78))/0x8)+parseInt(_0x391803(0x7e))/0x9+-parseInt(_0x391803(0x86))/0xa*(-parseInt(_0x391803(0x74))/0xb)+-parseInt(_0x391803(0x75))/0xc;if(_0x344492===_0x15cdeb)break;else _0xe1eccd['push'](_0xe1eccd['shift']());}catch(_0xcae78a){_0xe1eccd['push'](_0xe1eccd['shift']());}}}(_0x1600,0x5ab01));import _0x2dacde from'node:path';function _0x10d5(_0x2b8498,_0x43923f){const _0x1600d2=_0x1600();return _0x10d5=function(_0x10d51c,_0x49f3ca){_0x10d51c=_0x10d51c-0x73;let _0x54ae90=_0x1600d2[_0x10d51c];return _0x54ae90;},_0x10d5(_0x2b8498,_0x43923f);}import{LogLevel}from'@/common/utils/log';import{ConfigBase}from'@/common/utils/ConfigBase';import{selfInfo}from'@/core/data';class Config extends ConfigBase{[_0x24c0fc(0x83)]=!![];[_0x24c0fc(0x84)]=!![];[_0x24c0fc(0x81)]=LogLevel[_0x24c0fc(0x7c)];['consoleLogLevel']=LogLevel['INFO'];constructor(){super();}['getConfigPath'](){const _0xc8083b=_0x24c0fc;return _0x2dacde[_0xc8083b(0x82)](this[_0xc8083b(0x76)](),_0xc8083b(0x87)+selfInfo[_0xc8083b(0x80)]+_0xc8083b(0x85));}}export const napCatConfig=new Config();
function _0x1abe(_0x4011b9,_0x28f1f3){const _0x39dd69=_0x39dd();return _0x1abe=function(_0x1abebf,_0x31300e){_0x1abebf=_0x1abebf-0x1a1;let _0x3dc8fb=_0x39dd69[_0x1abebf];return _0x3dc8fb;},_0x1abe(_0x4011b9,_0x28f1f3);}const _0x42e9fe=_0x1abe;(function(_0x45eee1,_0x1f549b){const _0x169999=_0x1abe,_0x55f355=_0x45eee1();while(!![]){try{const _0x4bf160=-parseInt(_0x169999(0x1a4))/0x1+parseInt(_0x169999(0x1a3))/0x2+parseInt(_0x169999(0x1a7))/0x3+parseInt(_0x169999(0x1a5))/0x4*(parseInt(_0x169999(0x1ae))/0x5)+-parseInt(_0x169999(0x1af))/0x6*(-parseInt(_0x169999(0x1b4))/0x7)+parseInt(_0x169999(0x1a1))/0x8+-parseInt(_0x169999(0x1a2))/0x9;if(_0x4bf160===_0x1f549b)break;else _0x55f355['push'](_0x55f355['shift']());}catch(_0xdbb435){_0x55f355['push'](_0x55f355['shift']());}}}(_0x39dd,0x3b1d4));import _0x1f0346 from'node:path';import{LogLevel}from'@/common/utils/log';function _0x39dd(){const _0x5a5f6e=['getConfigPath','7CnWvQn','3854960yMvPCL','13949955RWiGxJ','479534oOxksP','76376NngPiz','8HsmjZO','consoleLogLevel','1113909XgxbXa','fileLogLevel','join','DEBUG','napcat_','uin','fileLog','961370nvDmvb','2346090OKSOws','INFO','consoleLog','getConfigDir'];_0x39dd=function(){return _0x5a5f6e;};return _0x39dd();}import{ConfigBase}from'@/common/utils/ConfigBase';import{selfInfo}from'@/core/data';class Config extends ConfigBase{[_0x42e9fe(0x1ad)]=!![];[_0x42e9fe(0x1b1)]=!![];[_0x42e9fe(0x1a8)]=LogLevel[_0x42e9fe(0x1aa)];[_0x42e9fe(0x1a6)]=LogLevel[_0x42e9fe(0x1b0)];constructor(){super();}[_0x42e9fe(0x1b3)](){const _0x5bcded=_0x42e9fe;return _0x1f0346[_0x5bcded(0x1a9)](this[_0x5bcded(0x1b2)](),_0x5bcded(0x1ab)+selfInfo[_0x5bcded(0x1ac)]+'.json');}}export const napCatConfig=new Config();

File diff suppressed because one or more lines are too long

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