blob: bac2862409be5dc4e57c0074364cc3d493f61721 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
from typing import Any
from ..modifier import Modifier, modifier_name
@modifier_name("truncate")
class Truncate(Modifier):
def modify(self, value: Any, opts: list[Any]) -> Any:
if isinstance(value, str) and len(opts) > 0:
if all([x in "1234567890" for x in opts[0]]):
char_limit = int(opts[0])
if len(value) > char_limit:
return f"{value[:char_limit - 3]}..."
return value
|