| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 | import typing as tfrom .filters import FILTERS as DEFAULT_FILTERS  # noqa: F401from .tests import TESTS as DEFAULT_TESTS  # noqa: F401from .utils import Cyclerfrom .utils import generate_lorem_ipsumfrom .utils import Joinerfrom .utils import Namespaceif t.TYPE_CHECKING:    import typing_extensions as te# defaults for the parser / lexerBLOCK_START_STRING = "{%"BLOCK_END_STRING = "%}"VARIABLE_START_STRING = "{{"VARIABLE_END_STRING = "}}"COMMENT_START_STRING = "{#"COMMENT_END_STRING = "#}"LINE_STATEMENT_PREFIX: t.Optional[str] = NoneLINE_COMMENT_PREFIX: t.Optional[str] = NoneTRIM_BLOCKS = FalseLSTRIP_BLOCKS = FalseNEWLINE_SEQUENCE: "te.Literal['\\n', '\\r\\n', '\\r']" = "\n"KEEP_TRAILING_NEWLINE = False# default filters, tests and namespaceDEFAULT_NAMESPACE = {    "range": range,    "dict": dict,    "lipsum": generate_lorem_ipsum,    "cycler": Cycler,    "joiner": Joiner,    "namespace": Namespace,}# default policiesDEFAULT_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,}
 |