first commit

This commit is contained in:
debu-2 2026-10-02 11:22:40 +05:30
commit efa5080897
127 changed files with 18610 additions and 0 deletions

View file

@ -0,0 +1,32 @@
import re
TEMPLATE_NAME_PATTERN = re.compile(r"^[A-Z0-9_]{3,40}$")
DLT_TEMPLATE_ID_PATTERN = re.compile(r"^\d{12,25}$")
VARIABLE_TOKEN = "{#var#}"
def normalize_template_name(value: str) -> str:
return value.strip().upper().replace(" ", "_")
def validate_template_name(value: str) -> str:
name = normalize_template_name(value)
if not TEMPLATE_NAME_PATTERN.match(name):
raise ValueError("Template name must be 3–40 uppercase letters, numbers, or underscores")
return name
def validate_template_text(value: str) -> str:
text = value.strip()
if len(text) < 10:
raise ValueError("Template must be at least 10 characters")
if len(text) > 1000:
raise ValueError("Template must be 1000 characters or fewer")
return text
def validate_dlt_template_id(value: str) -> str:
template_id = value.strip()
if not DLT_TEMPLATE_ID_PATTERN.match(template_id):
raise ValueError("DLT Template ID must be 12–25 digits")
return template_id