mirror of
				https://github.com/nonebot/nonebot2.git
				synced 2025-10-31 06:56:39 +00:00 
			
		
		
		
	✨ Feature: on_x 支持 expire_time 参数 (#1106)
Co-authored-by: Dobiichi-Origami <454470535@qq.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: yanyongyu <42488585+yanyongyu@users.noreply.github.com>
This commit is contained in:
		| @@ -1,8 +1,8 @@ | ||||
| from types import ModuleType | ||||
| from datetime import datetime | ||||
| from contextvars import ContextVar | ||||
| from collections import defaultdict | ||||
| from contextlib import AsyncExitStack | ||||
| from datetime import datetime, timedelta | ||||
| from typing import ( | ||||
|     TYPE_CHECKING, | ||||
|     Any, | ||||
| @@ -168,7 +168,7 @@ class Matcher(metaclass=MatcherMeta): | ||||
|         *, | ||||
|         plugin: Optional["Plugin"] = None, | ||||
|         module: Optional[ModuleType] = None, | ||||
|         expire_time: Optional[datetime] = None, | ||||
|         expire_time: Optional[Union[datetime, timedelta]] = None, | ||||
|         default_state: Optional[T_State] = None, | ||||
|         default_type_updater: Optional[Union[T_TypeUpdater, Dependent[str]]] = None, | ||||
|         default_permission_updater: Optional[ | ||||
| @@ -216,7 +216,11 @@ class Matcher(metaclass=MatcherMeta): | ||||
|                 if handlers | ||||
|                 else [], | ||||
|                 "temp": temp, | ||||
|                 "expire_time": expire_time, | ||||
|                 "expire_time": ( | ||||
|                     expire_time | ||||
|                     if isinstance(expire_time, datetime) | ||||
|                     else expire_time and datetime.now() + expire_time | ||||
|                 ), | ||||
|                 "priority": priority, | ||||
|                 "block": block, | ||||
|                 "_default_state": default_state or {}, | ||||
| @@ -682,7 +686,7 @@ class Matcher(metaclass=MatcherMeta): | ||||
|                 block=True, | ||||
|                 plugin=self.plugin, | ||||
|                 module=self.module, | ||||
|                 expire_time=datetime.now() + bot.config.session_expire_timeout, | ||||
|                 expire_time=bot.config.session_expire_timeout, | ||||
|                 default_state=self.state, | ||||
|                 default_type_updater=self.__class__._default_type_updater, | ||||
|                 default_permission_updater=self.__class__._default_permission_updater, | ||||
| @@ -701,7 +705,7 @@ class Matcher(metaclass=MatcherMeta): | ||||
|                 block=True, | ||||
|                 plugin=self.plugin, | ||||
|                 module=self.module, | ||||
|                 expire_time=datetime.now() + bot.config.session_expire_timeout, | ||||
|                 expire_time=bot.config.session_expire_timeout, | ||||
|                 default_state=self.state, | ||||
|                 default_type_updater=self.__class__._default_type_updater, | ||||
|                 default_permission_updater=self.__class__._default_permission_updater, | ||||
|   | ||||
		Reference in New Issue
	
	Block a user