ErisPulse 2.3.3__py3-none-any.whl → 2.3.3.dev0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. ErisPulse/Core/Bases/adapter.py +1 -13
  2. ErisPulse/Core/__init__.py +8 -16
  3. ErisPulse/Core/lifecycle.py +1 -6
  4. ErisPulse/__init__.py +5 -10
  5. {erispulse-2.3.3.dist-info → erispulse-2.3.3.dev0.dist-info}/METADATA +1 -1
  6. erispulse-2.3.3.dev0.dist-info/RECORD +35 -0
  7. ErisPulse/Core/Bases/__init__.pyi +0 -14
  8. ErisPulse/Core/Bases/adapter.pyi +0 -140
  9. ErisPulse/Core/Bases/module.pyi +0 -52
  10. ErisPulse/Core/Event/__init__.pyi +0 -26
  11. ErisPulse/Core/Event/base.pyi +0 -62
  12. ErisPulse/Core/Event/command.pyi +0 -113
  13. ErisPulse/Core/Event/exceptions.pyi +0 -43
  14. ErisPulse/Core/Event/message.pyi +0 -93
  15. ErisPulse/Core/Event/meta.pyi +0 -92
  16. ErisPulse/Core/Event/notice.pyi +0 -108
  17. ErisPulse/Core/Event/request.pyi +0 -76
  18. ErisPulse/Core/Event/wrapper.pyi +0 -404
  19. ErisPulse/Core/__init__.pyi +0 -17
  20. ErisPulse/Core/_self_config.pyi +0 -72
  21. ErisPulse/Core/adapter.pyi +0 -229
  22. ErisPulse/Core/config.pyi +0 -70
  23. ErisPulse/Core/exceptions.pyi +0 -60
  24. ErisPulse/Core/lifecycle.pyi +0 -92
  25. ErisPulse/Core/logger.pyi +0 -168
  26. ErisPulse/Core/module.pyi +0 -178
  27. ErisPulse/Core/router.pyi +0 -120
  28. ErisPulse/Core/storage.pyi +0 -273
  29. ErisPulse/Core/ux.pyi +0 -94
  30. ErisPulse/__init__.pyi +0 -310
  31. ErisPulse/__main__.pyi +0 -24
  32. ErisPulse/sdk_protocol.py +0 -150
  33. ErisPulse/sdk_protocol.pyi +0 -100
  34. ErisPulse/utils/__init__.pyi +0 -16
  35. ErisPulse/utils/cli.pyi +0 -145
  36. ErisPulse/utils/console.pyi +0 -20
  37. ErisPulse/utils/package_manager.pyi +0 -224
  38. ErisPulse/utils/reload_handler.pyi +0 -64
  39. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Bases/__init__.pyi +0 -14
  40. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Bases/adapter.pyi +0 -140
  41. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Bases/module.pyi +0 -52
  42. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/__init__.pyi +0 -26
  43. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/base.pyi +0 -62
  44. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/command.pyi +0 -113
  45. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/exceptions.pyi +0 -43
  46. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/message.pyi +0 -93
  47. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/meta.pyi +0 -92
  48. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/notice.pyi +0 -108
  49. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/request.pyi +0 -76
  50. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/Event/wrapper.pyi +0 -404
  51. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/__init__.pyi +0 -17
  52. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/_self_config.pyi +0 -72
  53. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/adapter.pyi +0 -229
  54. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/config.pyi +0 -70
  55. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/exceptions.pyi +0 -60
  56. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/lifecycle.pyi +0 -92
  57. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/logger.pyi +0 -168
  58. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/module.pyi +0 -178
  59. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/router.pyi +0 -120
  60. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/storage.pyi +0 -273
  61. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/Core/ux.pyi +0 -94
  62. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/__init__.pyi +0 -310
  63. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/__main__.pyi +0 -24
  64. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/sdk_protocol.pyi +0 -100
  65. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/utils/__init__.pyi +0 -16
  66. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/utils/cli.pyi +0 -145
  67. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/utils/console.pyi +0 -20
  68. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/utils/package_manager.pyi +0 -224
  69. erispulse-2.3.3.data/data/ErisPulse-stubs/ErisPulse/utils/reload_handler.pyi +0 -64
  70. erispulse-2.3.3.dist-info/RECORD +0 -98
  71. {erispulse-2.3.3.dist-info → erispulse-2.3.3.dev0.dist-info}/WHEEL +0 -0
  72. {erispulse-2.3.3.dist-info → erispulse-2.3.3.dev0.dist-info}/entry_points.txt +0 -0
  73. {erispulse-2.3.3.dist-info → erispulse-2.3.3.dev0.dist-info}/licenses/LICENSE +0 -0
@@ -72,19 +72,7 @@ class SendDSL:
72
72
  >>> adapter.Send.To("123").Using("bot1").Text("Hello") # 支持乱序
73
73
  """
74
74
  return self.__class__(self._adapter, self._target_type, self._target_id, account_id)
75
-
76
- def Account(self, account_id: Union[str, int]) -> 'SendDSL':
77
- """
78
- 设置发送账号
79
-
80
- :param _account_id: 发送账号
81
- :return: SendDSL实例
82
-
83
- :example:
84
- >>> adapter.Send.Account("bot1").To("123").Text("Hello")
85
- >>> adapter.Send.To("123").Account("bot1").Text("Hello") # 支持乱序
86
- """
87
- return self.__class__(self._adapter, self._target_type, self._target_id, account_id)
75
+
88
76
 
89
77
  class BaseAdapter:
90
78
  """
@@ -1,11 +1,11 @@
1
- from .lifecycle import lifecycle, LifecycleManager
2
- from .adapter import adapter, AdapterManager
1
+ from .lifecycle import lifecycle
2
+ from .adapter import adapter
3
3
  from .Bases import BaseAdapter, BaseModule, SendDSL
4
- from .storage import storage, StorageManager
5
- from .logger import logger, Logger, LoggerChild
6
- from .module import module, ModuleManager
7
- from .router import router, RouterManager
8
- from .config import config, ConfigManager
4
+ from .storage import storage
5
+ from .logger import logger
6
+ from .module import module
7
+ from .router import router
8
+ from .config import config
9
9
  from .ux import ux, UXManager
10
10
  from . import exceptions
11
11
  from . import Event
@@ -21,26 +21,21 @@ __all__ = [
21
21
 
22
22
  # 适配器相关
23
23
  'adapter', # 适配器管理器
24
- 'AdapterManager', # 适配器管理器类
25
24
  'AdapterFather', # 适配器基类
26
25
  'BaseAdapter', # 适配器基类别名
27
26
  'SendDSL', # DSL发送接口基类
28
27
 
29
28
  # 模块相关
30
29
  'module', # 模块管理器
31
- 'ModuleManager', # 模块管理器类
32
30
  'BaseModule', # 模块基类
33
31
 
34
32
  # 存储和配置相关
35
33
  'storage', # 存储管理器
36
- 'StorageManager', # 存储管理器类
37
34
  'config', # 配置管理器
38
- 'ConfigManager', # 配置管理器类
39
35
  'env', # 配置管理器别名
40
36
 
41
37
  # 路由相关
42
38
  'router', # 路由管理器
43
- 'RouterManager', # 路由管理器类
44
39
  'adapter_server', # 路由管理器别名
45
40
 
46
41
  # UX
@@ -49,9 +44,6 @@ __all__ = [
49
44
 
50
45
  # 基础设施
51
46
  'logger', # 日志管理器
52
- 'Logger', # 日志管理器类
53
- 'LoggerChild', # 日志子管理器类
54
47
  'exceptions', # 异常处理模块
55
- 'lifecycle', # 生命周期管理器
56
- 'LifecycleManager', # 生命周期管理器类
48
+ 'lifecycle' # 生命周期管理器
57
49
  ]
@@ -164,9 +164,4 @@ class LifecycleManager:
164
164
  except Exception as e:
165
165
  logger.error(f"生命周期事件处理器执行错误 {event}: {e}")
166
166
 
167
- lifecycle = LifecycleManager()
168
-
169
- __all__ = [
170
- "LifecycleManager",
171
- "lifecycle"
172
- ]
167
+ lifecycle = LifecycleManager()
ErisPulse/__init__.py CHANGED
@@ -17,13 +17,9 @@ import importlib
17
17
  import asyncio
18
18
  import inspect
19
19
  import importlib.metadata
20
- from typing import Dict, List, Tuple, Type, Any, TYPE_CHECKING
20
+ from typing import Dict, List, Tuple, Type, Any
21
21
  from pathlib import Path
22
22
 
23
- # 类型检查时导入 Protocol,避免运行时循环导入
24
- if TYPE_CHECKING:
25
- from .sdk_protocol import SDKProtocol
26
-
27
23
  # BaseModules: SDK核心模块
28
24
  # 事件处理模块
29
25
  from .Core import Event
@@ -41,7 +37,7 @@ from .Core import router, adapter_server
41
37
  from .Core import ux, UXManager
42
38
 
43
39
  # SDK统一对外接口
44
- sdk: 'SDKProtocol' = types.ModuleType('sdk') # type: ignore[assignment]
40
+ sdk = types.ModuleType('sdk')
45
41
 
46
42
  try:
47
43
  __version__ = importlib.metadata.version('ErisPulse')
@@ -1186,7 +1182,7 @@ async def restart() -> bool:
1186
1182
  logger.info("[Reload] 重新加载完成")
1187
1183
  return True
1188
1184
 
1189
- async def run(keep_running: bool = True) -> None:
1185
+ async def run() -> None:
1190
1186
  """
1191
1187
  无头模式运行ErisPulse
1192
1188
 
@@ -1201,9 +1197,8 @@ async def run(keep_running: bool = True) -> None:
1201
1197
 
1202
1198
  await adapter.startup()
1203
1199
 
1204
- if keep_running:
1205
- # 保持程序运行
1206
- await asyncio.Event().wait()
1200
+ # 保持程序运行
1201
+ await asyncio.Event().wait()
1207
1202
  except Exception as e:
1208
1203
  logger.error(e)
1209
1204
  finally:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ErisPulse
3
- Version: 2.3.3
3
+ Version: 2.3.3.dev0
4
4
  Summary: ErisPulse 是一个模块化、可扩展的异步 Python SDK 框架,主要用于构建高效、可维护的机器人应用程序。
5
5
  Author-email: "艾莉丝·格雷拉特(WSu2059)" <wsu2059@qq.com>
6
6
  License: MIT License
@@ -0,0 +1,35 @@
1
+ ErisPulse/__init__.py,sha256=u5b96KfFq57kB4I51t_YAU_aLVTftG4rLkAqFmmYwVA,50327
2
+ ErisPulse/__main__.py,sha256=AGA-Y6zBIRJYmfTU4hc1R_ykkpAUFalGXxftaBxRf6U,361
3
+ ErisPulse/Core/__init__.py,sha256=9RNwUq9Hbe3r6nA8QBvq2pvMJN4QiBfo71N0u_ywiwI,1398
4
+ ErisPulse/Core/_self_config.py,sha256=ReoVy2hYZxG7hPRHXUWRjLClC4nWZ2RG8VWdD-PAM7g,3549
5
+ ErisPulse/Core/adapter.py,sha256=9wpaE9B6LixlGTJ0p341wYe4AE3SVuczToMOWd7UkL4,19707
6
+ ErisPulse/Core/config.py,sha256=cV0R2eUWNECIogYLFbhNu1pYl8HStPG-DNbCe3lkY4E,5873
7
+ ErisPulse/Core/exceptions.py,sha256=tTOOs57SD8aSp4HXomuXtVYgHJCJtfP3AS4JIIq1LPk,3920
8
+ ErisPulse/Core/lifecycle.py,sha256=oPKxg0hBadSgAn9X_weGo6KeCZ9SUV5A_Se-18qWglM,5547
9
+ ErisPulse/Core/logger.py,sha256=nktXT-6cxF50NYsUErMsf8J79brzXg2faaJ4Agt2Gro,12599
10
+ ErisPulse/Core/module.py,sha256=13rI03GwEzVd66hIhZnZNybiA9wj7ITzQILi1-nCjhQ,12944
11
+ ErisPulse/Core/router.py,sha256=rtvUjbRHVeTTgWBBG-yxK91oEjs5Tw3ReryqCI-rMYc,12411
12
+ ErisPulse/Core/storage.py,sha256=WbREN-GTpzPls8Vx3t8F2U_lzmCKEsI4OcecWWmvaSk,25238
13
+ ErisPulse/Core/ux.py,sha256=jWC_v8e0Khe1LAg5ksKCVyEgmO2MJGIfmtOAPTorD90,29589
14
+ ErisPulse/Core/Bases/__init__.py,sha256=hHKsI2zQfBdahnEuHlMgzOX2_ygRDOVN8-VqTIrcxP4,230
15
+ ErisPulse/Core/Bases/adapter.py,sha256=aCupQdc8M5Ds7m5dZMCmtoyC-0Zqh5K_6F3uKle8WXE,6490
16
+ ErisPulse/Core/Bases/module.py,sha256=TtzZQ4x4u09S6yDibsIHa9srlGLFPXCHdn2WxZ3nmdo,1154
17
+ ErisPulse/Core/Event/__init__.py,sha256=JgvhhCM3RoeGE5egssyuHRdDfchF6Bt83XdSRmcToZc,1528
18
+ ErisPulse/Core/Event/base.py,sha256=bnTKdCTA0MRaFU8lheHm_ithiS2egZgU0oKSSajwCaM,4192
19
+ ErisPulse/Core/Event/command.py,sha256=mihGTv4kTkpncw6fE2n-GlTK66S3Y3kYx8mKzngbXto,19754
20
+ ErisPulse/Core/Event/exceptions.py,sha256=iGcuPaC7F4cZeujcvBdZb9bzQGnHBdb9CcPKoB760Bo,711
21
+ ErisPulse/Core/Event/message.py,sha256=wxg_GJsI1ZvPrV9611xELLxnlk2bcxMJH7EBEkoWwgE,4024
22
+ ErisPulse/Core/Event/meta.py,sha256=0cs0Cg5r58kll3P4lNtnVWAKLQiL6MoXPkbkk6_IEko,3660
23
+ ErisPulse/Core/Event/notice.py,sha256=tU28tc3Ig-FMB2EJUDO2Z9ewfJjzEPh2O2J4lU7GYDk,4557
24
+ ErisPulse/Core/Event/request.py,sha256=rYjFjRJccNRZ6bkY89ig8Q2YntnoytUfg-_PGntJxXg,2956
25
+ ErisPulse/Core/Event/wrapper.py,sha256=lKzsP67VFyPDLpqqGoDfDm8uWcnxOAYL-Z36yHeAOrU,16547
26
+ ErisPulse/utils/__init__.py,sha256=_4cDUbJyNebH-VXDUTnfdZKv8Y1MPYgsl-fOM0ZFNuw,299
27
+ ErisPulse/utils/cli.py,sha256=JMI3pOz_DrHj2sSscqhKzFUxGaRfa9Bs8jbvyqkZsy0,41234
28
+ ErisPulse/utils/console.py,sha256=IIo8kVTy0ikEp1H4V6BsokaQp_ISfBFuxlhQcRnk2vs,1145
29
+ ErisPulse/utils/package_manager.py,sha256=uv9Q24Qxa2bbotxLrSvhF-lX6vEmK-4KPCIwPe6ZyGc,32698
30
+ ErisPulse/utils/reload_handler.py,sha256=ToBE9EiXY8ZNNL8jntdsc2Dpy-Wgh73Jd3aBpedKAtg,3369
31
+ erispulse-2.3.3.dev0.dist-info/METADATA,sha256=esnXr889Sz96Hgonf_E9yWUx01aPGht7gfslVMQhViw,7435
32
+ erispulse-2.3.3.dev0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
33
+ erispulse-2.3.3.dev0.dist-info/entry_points.txt,sha256=NiOwT6-XQ7KIH1r6J8odjRO-uaKHfr_Vz_UIG96EWXg,187
34
+ erispulse-2.3.3.dev0.dist-info/licenses/LICENSE,sha256=tJjKWuY4OPWNgriiixWLvmFb8Pf8p_-4NMq_zZN3gWg,1858
35
+ erispulse-2.3.3.dev0.dist-info/RECORD,,
@@ -1,14 +0,0 @@
1
- # type: ignore
2
- #
3
- # Auto-generated type stub for __init__.py
4
- # DO NOT EDIT MANUALLY - Generated by generate-type-stubs.py
5
- #
6
-
7
- """
8
- ErisPulse 基础模块
9
-
10
- 提供核心基类定义,包括适配器和模块基类
11
- """
12
-
13
- from .adapter import SendDSL, BaseAdapter
14
- from .module import BaseModule
@@ -1,140 +0,0 @@
1
- # type: ignore
2
- #
3
- # Auto-generated type stub for adapter.py
4
- # DO NOT EDIT MANUALLY - Generated by generate-type-stubs.py
5
- #
6
-
7
- """
8
- ErisPulse 适配器基础模块
9
-
10
- 提供适配器和消息发送DSL的基类实现
11
-
12
- {!--< tips >!--}
13
- 1. 用于实现与不同平台的交互接口
14
- 2. 提供统一的消息发送DSL风格接口
15
- {!--< /tips >!--}
16
- """
17
-
18
- import asyncio
19
- from typing import Any, Optional, Union, Awaitable
20
-
21
- class SendDSL:
22
- """
23
- 消息发送DSL基类
24
-
25
- 用于实现 Send.To(...).Func(...) 风格的链式调用接口
26
-
27
- {!--< tips >!--}
28
- 1. 子类应实现具体的消息发送方法(如Text, Image等)
29
- 2. 通过__getattr__实现动态方法调用
30
- {!--< /tips >!--}
31
- """
32
- def __init__(self: None, adapter: BaseAdapter, target_type: Optional[str] = ..., target_id: Optional[str] = ..., account_id: Optional[str] = ...) -> ...:
33
- """
34
- 初始化DSL发送器
35
-
36
- :param adapter: 所属适配器实例
37
- :param target_type: 目标类型(可选)
38
- :param target_id: 目标ID(可选)
39
- :param _account_id: 发送账号(可选)
40
- """
41
- ...
42
- def To(self: object, target_type: str = ..., target_id: Union[(str, int)] = ...) -> SendDSL:
43
- """
44
- 设置消息目标
45
-
46
- :param target_type: 目标类型(可选)
47
- :param target_id: 目标ID(可选)
48
- :return: SendDSL实例
49
-
50
- :example:
51
- >>> adapter.Send.To("user", "123").Text("Hello")
52
- >>> adapter.Send.To("123").Text("Hello") # 简化形式
53
- """
54
- ...
55
- def Using(self: object, account_id: Union[(str, int)]) -> SendDSL:
56
- """
57
- 设置发送账号
58
-
59
- :param _account_id: 发送账号
60
- :return: SendDSL实例
61
-
62
- :example:
63
- >>> adapter.Send.Using("bot1").To("123").Text("Hello")
64
- >>> adapter.Send.To("123").Using("bot1").Text("Hello") # 支持乱序
65
- """
66
- ...
67
- def Account(self: object, account_id: Union[(str, int)]) -> SendDSL:
68
- """
69
- 设置发送账号
70
-
71
- :param _account_id: 发送账号
72
- :return: SendDSL实例
73
-
74
- :example:
75
- >>> adapter.Send.Account("bot1").To("123").Text("Hello")
76
- >>> adapter.Send.To("123").Account("bot1").Text("Hello") # 支持乱序
77
- """
78
- ...
79
-
80
- class BaseAdapter:
81
- """
82
- 适配器基类
83
-
84
- 提供与外部平台交互的标准接口,子类必须实现必要方法
85
-
86
- {!--< tips >!--}
87
- 1. 必须实现call_api, start和shutdown方法
88
- 2. 可以自定义Send类实现平台特定的消息发送逻辑
89
- 3. 通过on装饰器注册事件处理器
90
- 4. 支持OneBot12协议的事件处理
91
- {!--< /tips >!--}
92
- """
93
- def __init__(self: None) -> ...:
94
- ...
95
- async def call_api(self: object, endpoint: str, **params: Any) -> Any:
96
- """
97
- 调用平台API的抽象方法
98
-
99
- :param endpoint: API端点
100
- :param params: API参数
101
- :return: API调用结果
102
- :raises NotImplementedError: 必须由子类实现
103
- """
104
- ...
105
- async def start(self: object) -> None:
106
- """
107
- 启动适配器的抽象方法
108
-
109
- :raises NotImplementedError: 必须由子类实现
110
- """
111
- ...
112
- async def shutdown(self: object) -> None:
113
- """
114
- 关闭适配器的抽象方法
115
-
116
- :raises NotImplementedError: 必须由子类实现
117
- """
118
- ...
119
- async def emit(self: object) -> None:
120
- ...
121
- def send(self: object, target_type: str, target_id: str, message: Any, **kwargs: Any) -> asyncio.Task:
122
- """
123
- 发送消息的便捷方法,返回一个 asyncio Task
124
-
125
- :param target_type: 目标类型
126
- :param target_id: 目标ID
127
- :param message: 消息内容
128
- :param kwargs: 其他参数
129
- - method: 发送方法名(默认为"Text")
130
- :return: asyncio.Task 对象,用户可以自主决定是否等待
131
-
132
- :raises AttributeError: 当发送方法不存在时抛出
133
-
134
- :example:
135
- >>> task = adapter.send("user", "123", "Hello")
136
- >>> # 用户可以选择等待: result = await task
137
- >>> # 或者不等待让其在后台执行
138
- >>> await adapter.send("group", "456", "Hello", method="Markdown") # 直接等待
139
- """
140
- ...
@@ -1,52 +0,0 @@
1
- # type: ignore
2
- #
3
- # Auto-generated type stub for module.py
4
- # DO NOT EDIT MANUALLY - Generated by generate-type-stubs.py
5
- #
6
-
7
- """
8
- ErisPulse 模块基础模块
9
-
10
- 提供模块基类定义和标准接口
11
- """
12
-
13
- class BaseModule:
14
- """
15
- 模块基类
16
-
17
- 提供模块加载和卸载的标准接口
18
- """
19
- def should_eager_load() -> bool:
20
- """
21
- 模块是否应该在启动时加载
22
- 默认为False(即懒加载)
23
-
24
- :return: 是否应该在启动时加载
25
- """
26
- ...
27
- async def on_load(self: object, event: dict) -> bool:
28
- """
29
- 当模块被加载时调用
30
-
31
- :param event: 事件内容
32
- :return: 处理结果
33
-
34
- {!--< tips >!--}
35
- 其中,event事件内容为:
36
- `{ "module_name": "模块名" }`
37
- {!--< /tips >!--}
38
- """
39
- ...
40
- async def on_unload(self: object, event: dict) -> bool:
41
- """
42
- 当模块被卸载时调用
43
-
44
- :param event: 事件内容
45
- :return: 处理结果
46
-
47
- {!--< tips >!--}
48
- 其中,event事件内容为:
49
- `{ "module_name": "模块名" }`
50
- {!--< /tips >!--}
51
- """
52
- ...
@@ -1,26 +0,0 @@
1
- # type: ignore
2
- #
3
- # Auto-generated type stub for __init__.py
4
- # DO NOT EDIT MANUALLY - Generated by generate-type-stubs.py
5
- #
6
-
7
- """
8
- ErisPulse 事件处理模块
9
-
10
- 提供统一的事件处理接口,支持命令、消息、通知、请求和元事件处理
11
-
12
- {!--< tips >!--}
13
- 1. 所有事件处理都基于OneBot12标准事件格式
14
- 2. 通过装饰器方式注册事件处理器
15
- 3. 支持优先级和条件过滤
16
- {!--< /tips >!--}
17
- """
18
-
19
- from .command import command
20
- from .message import message
21
- from .notice import notice
22
- from .request import request
23
- from .meta import meta
24
- from .wrapper import Event
25
- from . import exceptions
26
- from .. import config
@@ -1,62 +0,0 @@
1
- # type: ignore
2
- #
3
- # Auto-generated type stub for base.py
4
- # DO NOT EDIT MANUALLY - Generated by generate-type-stubs.py
5
- #
6
-
7
- """
8
- ErisPulse 事件处理基础模块
9
-
10
- 提供事件处理的核心功能,包括事件注册和处理
11
-
12
- {!--< tips >!--}
13
- 1. 所有事件处理都基于OneBot12标准事件格式
14
- 2. 通过适配器系统进行事件分发和接收
15
- {!--< /tips >!--}
16
- """
17
-
18
- from .. import adapter, logger
19
- from typing import Callable, Any, Dict, List
20
- import asyncio
21
- from .wrapper import Event
22
-
23
- class BaseEventHandler:
24
- """
25
- 基础事件处理器
26
-
27
- 提供事件处理的基本功能,包括处理器注册和注销
28
- """
29
- def __init__(self: None, event_type: str, module_name: str = ...) -> ...:
30
- """
31
- 初始化事件处理器
32
-
33
- :param event_type: 事件类型
34
- :param module_name: 模块名称
35
- """
36
- ...
37
- def register(self: object, handler: Callable, priority: int = ..., condition: Callable = ...) -> ...:
38
- """
39
- 注册事件处理器
40
-
41
- :param handler: 事件处理器函数
42
- :param priority: 处理器优先级,数值越小优先级越高
43
- :param condition: 处理器条件函数,返回True时才会执行处理器
44
- """
45
- ...
46
- def unregister(self: object, handler: Callable) -> bool:
47
- """
48
- 注销事件处理器
49
-
50
- :param handler: 要注销的事件处理器
51
- :return: 是否成功注销
52
- """
53
- ...
54
- def __call__(self: object, priority: int = ..., condition: Callable = ...) -> ...:
55
- """
56
- 装饰器方式注册事件处理器
57
-
58
- :param priority: 处理器优先级
59
- :param condition: 处理器条件函数
60
- :return: 装饰器函数
61
- """
62
- ...
@@ -1,113 +0,0 @@
1
- # type: ignore
2
- #
3
- # Auto-generated type stub for command.py
4
- # DO NOT EDIT MANUALLY - Generated by generate-type-stubs.py
5
- #
6
-
7
- """
8
- ErisPulse 命令处理模块
9
-
10
- 提供基于装饰器的命令注册和处理功能
11
-
12
- {!--< tips >!--}
13
- 1. 支持命令别名和命令组
14
- 2. 支持命令权限控制
15
- 3. 支持命令帮助系统
16
- 4. 支持等待用户回复交互
17
- {!--< /tips >!--}
18
- """
19
-
20
- from .base import BaseEventHandler
21
- from .. import adapter, config, logger
22
- from typing import Callable, Union, List, Dict, Any, Optional, Awaitable
23
- import asyncio
24
-
25
- class CommandHandler:
26
- """
27
- 命令处理器
28
-
29
- 提供命令注册、处理和管理功能
30
- """
31
- def __init__(self: None) -> ...:
32
- ...
33
- def __call__(self: object, name: Union[(str, List[str])] = ..., aliases: List[str] = ..., group: str = ..., priority: int = ..., permission: Callable = ..., help: str = ..., usage: str = ..., hidden: bool = ...) -> ...:
34
- """
35
- 命令装饰器
36
-
37
- :param name: 命令名称,可以是字符串或字符串列表
38
- :param aliases: 命令别名列表
39
- :param group: 命令组名称
40
- :param priority: 处理器优先级
41
- :param permission: 权限检查函数,返回True时允许执行命令
42
- :param help: 命令帮助信息
43
- :param usage: 命令使用方法
44
- :param hidden: 是否在帮助中隐藏命令
45
- :return: 装饰器函数
46
- """
47
- ...
48
- def unregister(self: object, handler: Callable) -> bool:
49
- """
50
- 注销命令处理器
51
-
52
- :param handler: 要注销的命令处理器
53
- :return: 是否成功注销
54
- """
55
- ...
56
- async def wait_reply(self: object, event: Dict[(str, Any)], prompt: str = ..., timeout: float = ..., callback: Callable[([Dict[(str, Any)]], Awaitable[Any])] = ..., validator: Callable[([Dict[(str, Any)]], bool)] = ...) -> Optional[Dict[(str, Any)]]:
57
- """
58
- 等待用户回复
59
-
60
- :param event: 原始事件数据
61
- :param prompt: 提示消息,如果提供会发送给用户
62
- :param timeout: 等待超时时间(秒)
63
- :param callback: 回调函数,当收到回复时执行
64
- :param validator: 验证函数,用于验证回复是否有效
65
- :return: 用户回复的事件数据,如果超时则返回None
66
- """
67
- ...
68
- async def _check_pending_reply(self: object, event: Dict[(str, Any)]) -> ...:
69
- """
70
- 检查是否是等待回复的消息
71
-
72
- :param event: 消息事件数据
73
- """
74
- ...
75
- def get_command(self: object, name: str) -> Optional[Dict]:
76
- """
77
- 获取命令信息
78
-
79
- :param name: 命令名称
80
- :return: 命令信息字典,如果不存在则返回None
81
- """
82
- ...
83
- def get_commands(self: object) -> Dict[(str, Dict)]:
84
- """
85
- 获取所有命令
86
-
87
- :return: 命令信息字典
88
- """
89
- ...
90
- def get_group_commands(self: object, group: str) -> List[str]:
91
- """
92
- 获取命令组中的命令
93
-
94
- :param group: 命令组名称
95
- :return: 命令名称列表
96
- """
97
- ...
98
- def get_visible_commands(self: object) -> Dict[(str, Dict)]:
99
- """
100
- 获取所有可见命令(非隐藏命令)
101
-
102
- :return: 可见命令信息字典
103
- """
104
- ...
105
- def help(self: object, command_name: str = ..., show_hidden: bool = ...) -> str:
106
- """
107
- 生成帮助信息
108
-
109
- :param command_name: 命令名称,如果为None则生成所有命令的帮助
110
- :param show_hidden: 是否显示隐藏命令
111
- :return: 帮助信息字符串
112
- """
113
- ...
@@ -1,43 +0,0 @@
1
- # type: ignore
2
- #
3
- # Auto-generated type stub for exceptions.py
4
- # DO NOT EDIT MANUALLY - Generated by generate-type-stubs.py
5
- #
6
-
7
- """
8
- ErisPulse 事件系统异常处理模块
9
-
10
- 提供事件系统中可能发生的各种异常类型定义
11
- """
12
-
13
- class EventException(Exception):
14
- """
15
- 事件系统基础异常
16
-
17
- 所有事件系统相关异常的基类
18
- """
19
- ...
20
-
21
- class CommandException(EventException):
22
- """
23
- 命令处理异常
24
-
25
- 当命令处理过程中发生错误时抛出
26
- """
27
- ...
28
-
29
- class EventHandlerException(EventException):
30
- """
31
- 事件处理器异常
32
-
33
- 当事件处理器执行过程中发生错误时抛出
34
- """
35
- ...
36
-
37
- class EventNotFoundException(EventException):
38
- """
39
- 事件未找到异常
40
-
41
- 当尝试获取不存在的事件处理器时抛出
42
- """
43
- ...