1from datetime import timedelta
2
3from plain.paginator import Paginator
4from plain.urls import absolute_url, reverse, reverse_absolute
5from plain.utils import timezone
6
7
8def _asset(url_path: str) -> str:
9 # An explicit callable we can control, but also delay the import of asset.urls->views->templates
10 # for circular import reasons
11 from plain.assets.urls import get_asset_url
12
13 return get_asset_url(url_path)
14
15
16default_globals = {
17 "asset": _asset,
18 "url": reverse, # Alias for reverse
19 "reverse": reverse,
20 "reverse_absolute": reverse_absolute,
21 "absolute_url": absolute_url,
22 "Paginator": Paginator,
23 "now": timezone.now,
24 "timedelta": timedelta,
25 "localtime": timezone.localtime,
26}