<#macro buildNode childs> spa
<#if childs?? && childs?size gt 0> io
<#list childs as child> List
<option value="${child.model.id}" label="<#list 1..depth as i> </#list>${(child.model.typeName)?if_exists}"> select
<#list 1..depth as i> </#list>${(child.model.typeName)?if_exists} model
</option> im
<#assign depth = depth + 1 /> img
<@buildNode childs=child.childs /> build
<#assign depth = depth - 1 /> ab
</#list>
</#if>
</#macro>
<#assign depth = 1 />
<select name="model.typeId">
<#list typeList as typeDomain>
<option value="${typeDomain.model.id}" label="${(typeDomain.model.typeName)?if_exists}">
${(typeDomain.model.typeName)?if_exists}
</option>
<@buildNode childs=typeDomain.childs />
</#list>
</select>