File size: 439 Bytes
f3141ae
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import re
from state import Prompt


_RE_VARIABLES = re.compile(r"\{\{(\w+)\}\}")


def parse_variables(prompt: str) -> list[str]:
  return _RE_VARIABLES.findall(prompt)


def find_prompt(prompts: list[Prompt], version: int) -> Prompt:
  # We don't expect too many versions, so we'll just loop through the list to find the
  # right version.
  for prompt in prompts:
    if prompt.version == version:
      return prompt
  return Prompt()