Commit 300d3256 authored by Pierre Smeyers's avatar Pierre Smeyers
Browse files

fix: manage number default

parent 206021bc
Loading
Loading
Loading
Loading
+10 −2
Original line number Diff line number Diff line
@@ -53,7 +53,7 @@ class GlInput(BaseModel):
    description: Optional[str] = None
    type: GlInputType = GlInputType.string
    options: Optional[list[str]] = None
    default: Optional[Union[str, bool]] = None
    default: Optional[Union[str, bool, int]] = None

    def to_json(self) -> dict[str, any]:
        ret = {}
@@ -86,10 +86,18 @@ class TbcVar(BaseModel):
            # TODO: remove Markdown formatting?
            description=self.description,
            type=self.type.to_gl(),
            default=self.default if self.default else False if self.type == TbcVarType.boolean else None,
            default=self.gl_dflt,
            options=self.values
        )
    
    @property
    def gl_dflt(self):
        if self.type == TbcVarType.boolean:
            return bool(self.default) if self.default != None else False
        if self.type == TbcVarType.number:
            return int(self.default) if self.default != None else 0
        return self.default


def _get_var(tpl_desc: dict[str, any], name: str) -> Optional[TbcVar]:
    var = next(iter([TbcVar.parse_obj(var) for var in tpl_desc.get("variables", []) if var["name"] == name]), None)