File size: 1,116 Bytes
5d0a311
e5fc5ba
 
 
5d0a311
 
 
 
 
e5fc5ba
 
5d0a311
 
 
 
 
 
 
e5fc5ba
5d0a311
8c97d69
5d0a311
e5fc5ba
 
 
 
 
 
8c97d69
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
from typing import Tuple
from modules.m_active_voice import ActiveVoice
from modules.m_htmlrender import HtmlRender
        
class Connector:
    def __init__(
        self
    ) -> None:

        self.avoice = ActiveVoice()
        self.html = HtmlRender()

    def active2passive(
        self,
        sentence: str
    ) -> Tuple[str,str]:

        try:
            data = self.avoice.to_pasive(sentence)
        except Exception as e:
            return self.html.error(str(e)), str(e)

        subj        = self.html.budget(data['subj'], 'subject', 'primary')
        tobe        = self.html.budget(data['tobe'],'to be','warning')
        participle  = self.html.budget(data['participle'],'participle','danger')
        agent       = self.html.budget(data['agent'],'agent','success')
        compl       = self.html.budget(data['compl'],'compl.','dark')
        
        string_format = f"{data['subj']} {data['tobe']} {data['participle']} {data['agent']} {data['compl']}"
        html_format = self.html.output(f"{subj} {tobe} {participle} {agent} {compl}")
        
        return html_format, string_format