from __future__ import annotations from typing import Annotated from fastapi import Path TOKEN_URLSAFE_PATTERN = r"^[A-Za-z0-9_-]+$" TOKEN_MIN_LENGTH = 32 TOKEN_MAX_LENGTH = 128 UpdateSlugPath = Annotated[ str, Path( min_length=TOKEN_MIN_LENGTH, max_length=TOKEN_MAX_LENGTH, pattern=TOKEN_URLSAFE_PATTERN, description="Private update URL value.", ), ] ManagementSlugPath = Annotated[ str, Path( min_length=TOKEN_MIN_LENGTH, max_length=TOKEN_MAX_LENGTH, pattern=TOKEN_URLSAFE_PATTERN, description="Private dashboard URL value.", ), ]