Moving Dictionary Entry to Core
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
from datetime import datetime
|
||||
|
||||
from beanie import Document
|
||||
from pydantic import Field, validator
|
||||
from pydantic import BaseModel, Field, validator
|
||||
|
||||
|
||||
class CrudDocument(Document):
|
||||
@@ -32,18 +32,25 @@ def text_area(*args, **kwargs):
|
||||
|
||||
|
||||
def RichtextMultiline(*args, **kwargs):
|
||||
kwargs['props'] = {
|
||||
"richtext": True,
|
||||
"multiline": True
|
||||
}
|
||||
if 'props' not in kwargs:
|
||||
kwargs['props'] = {}
|
||||
|
||||
kwargs['props']['richtext'] = True
|
||||
kwargs['props']['multiline'] = True
|
||||
|
||||
return Field(*args, **kwargs)
|
||||
|
||||
|
||||
def RichtextSingleline(*args, **kwargs):
|
||||
kwargs['props'] = {
|
||||
"richtext": True,
|
||||
"multiline": False
|
||||
}
|
||||
if 'props' not in kwargs:
|
||||
kwargs['props'] = {}
|
||||
|
||||
kwargs['props']['richtext'] = True
|
||||
kwargs['props']['multiline'] = False
|
||||
|
||||
return Field(*args, **kwargs)
|
||||
|
||||
|
||||
class DictionaryEntry(BaseModel):
|
||||
key: str
|
||||
value: str = ""
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
from typing import List, Dict
|
||||
from typing import List
|
||||
from html import unescape
|
||||
|
||||
from pydantic import BaseModel, Field, validator
|
||||
|
||||
from ..core.models import CrudDocument, RichtextMultiline, RichtextSingleline
|
||||
from ..core.models import CrudDocument, RichtextMultiline, RichtextSingleline, DictionaryEntry
|
||||
|
||||
|
||||
class PartyTemplate(BaseModel):
|
||||
@@ -30,7 +30,7 @@ class ProvisionTemplate(CrudDocument):
|
||||
name: str
|
||||
title: str = RichtextSingleline()
|
||||
label: str = ""
|
||||
body: str = RichtextMultiline(size=8)
|
||||
body: str = RichtextMultiline()
|
||||
|
||||
@validator("label", always=True)
|
||||
def generate_label(cls, v, values, **kwargs):
|
||||
@@ -53,13 +53,9 @@ class ProvisionTemplateReference(BaseModel):
|
||||
)
|
||||
|
||||
|
||||
class DictionaryEntry(BaseModel):
|
||||
key: str
|
||||
value: str = ""
|
||||
|
||||
|
||||
class ContractTemplate(CrudDocument):
|
||||
name: str
|
||||
title: str
|
||||
parties: List[PartyTemplate] = []
|
||||
provisions: List[ProvisionTemplateReference] = Field(
|
||||
default=[],
|
||||
|
||||
@@ -12,10 +12,7 @@ class ContractTemplateRead(ContractTemplate):
|
||||
|
||||
class ContractTemplateCreate(Writer):
|
||||
name: str
|
||||
|
||||
|
||||
class ContractTemplateUpdate(BaseModel):
|
||||
name: str
|
||||
title: str
|
||||
parties: List[PartyTemplate] = []
|
||||
variables: List[DictionaryEntry] = Field(
|
||||
default=[],
|
||||
@@ -25,6 +22,10 @@ class ContractTemplateUpdate(BaseModel):
|
||||
provisions: List[ProvisionTemplateReference] = []
|
||||
|
||||
|
||||
class ContractTemplateUpdate(ContractTemplateCreate):
|
||||
pass
|
||||
|
||||
|
||||
class ProvisionTemplateRead(ProvisionTemplate):
|
||||
pass
|
||||
|
||||
@@ -32,10 +33,8 @@ class ProvisionTemplateRead(ProvisionTemplate):
|
||||
class ProvisionTemplateCreate(Writer):
|
||||
name: str
|
||||
title: str = RichtextSingleline()
|
||||
body: str = RichtextMultiline(size=8)
|
||||
body: str = RichtextMultiline()
|
||||
|
||||
|
||||
class ProvisionTemplateUpdate(BaseModel):
|
||||
name: str
|
||||
title: str
|
||||
body: str
|
||||
class ProvisionTemplateUpdate(ProvisionTemplateCreate):
|
||||
pass
|
||||
|
||||
Reference in New Issue
Block a user