diff --git a/pytrustnfe/xml/__init__.py b/pytrustnfe/xml/__init__.py index 360c919..ff1a6f3 100644 --- a/pytrustnfe/xml/__init__.py +++ b/pytrustnfe/xml/__init__.py @@ -16,7 +16,20 @@ def recursively_empty(e): return all((recursively_empty(c) for c in e.iterchildren())) +def recursively_normalize(vals): + for item in vals: + if type(vals[item]) is str: + vals[item] = vals[item].strip() + elif type(vals[item]) is dict: + recursively_normalize(vals[item]) + elif type(vals[item]) is list: + for a in vals[item]: + recursively_normalize(a) + return vals + + def render_xml(path, template_name, remove_empty, **nfe): + nfe = recursively_normalize(nfe) env = Environment( loader=FileSystemLoader(path), extensions=['jinja2.ext.with_'])