Fixed an issue that prevented the password reset tokens from working. Added email templates for password reset success and new account creation. Added more dynamic email template support.
48 lines
1.2 KiB
Python
48 lines
1.2 KiB
Python
import typing as t
|
|
|
|
from .filters import FILTERS as DEFAULT_FILTERS # noqa: F401
|
|
from .tests import TESTS as DEFAULT_TESTS # noqa: F401
|
|
from .utils import Cycler
|
|
from .utils import generate_lorem_ipsum
|
|
from .utils import Joiner
|
|
from .utils import Namespace
|
|
|
|
if t.TYPE_CHECKING:
|
|
import typing_extensions as te
|
|
|
|
# defaults for the parser / lexer
|
|
BLOCK_START_STRING = "{%"
|
|
BLOCK_END_STRING = "%}"
|
|
VARIABLE_START_STRING = "{{"
|
|
VARIABLE_END_STRING = "}}"
|
|
COMMENT_START_STRING = "{#"
|
|
COMMENT_END_STRING = "#}"
|
|
LINE_STATEMENT_PREFIX: t.Optional[str] = None
|
|
LINE_COMMENT_PREFIX: t.Optional[str] = None
|
|
TRIM_BLOCKS = False
|
|
LSTRIP_BLOCKS = False
|
|
NEWLINE_SEQUENCE: "te.Literal['\\n', '\\r\\n', '\\r']" = "\n"
|
|
KEEP_TRAILING_NEWLINE = False
|
|
|
|
# default filters, tests and namespace
|
|
|
|
DEFAULT_NAMESPACE = {
|
|
"range": range,
|
|
"dict": dict,
|
|
"lipsum": generate_lorem_ipsum,
|
|
"cycler": Cycler,
|
|
"joiner": Joiner,
|
|
"namespace": Namespace,
|
|
}
|
|
|
|
# default policies
|
|
DEFAULT_POLICIES: t.Dict[str, t.Any] = {
|
|
"compiler.ascii_str": True,
|
|
"urlize.rel": "noopener",
|
|
"urlize.target": None,
|
|
"urlize.extra_schemes": None,
|
|
"truncate.leeway": 5,
|
|
"json.dumps_function": None,
|
|
"json.dumps_kwargs": {"sort_keys": True},
|
|
"ext.i18n.trimmed": False,
|
|
}
|