<#ftl output_format="JSON"> <#-- newApplication: The macro for generating view and template metadata for a new Application --> <#macro newApplication request recipeObjectId applicationInfo groupUuids defaultGroups adminGroups="" readerGroups="" replaceable=true triggers="" contentUuids="" pmFolderUuids=""> { <#-- recipe section --> "version": 2, "objectType": "APPLICATION", "replaceable": ${replaceable?c}, "recipeObjectId": "${recipeObjectId}", "templateForCreate": "ix/v2/createApplication_v2.ftlx", "selectedObjectIndex": 0, "isVisible": true, <#if triggers?has_content> "triggers": ${triggers}, <#-- the set of new and reused objects --> "objects": [ { "objectStatus": "NEW", "templateObjectId": "${recipeObjectId}-0", "objectIndex": 0, <#-- bindings section --> "uuid": "${applicationInfo.uuid}", "versionUuids": ["${applicationInfo.uuid}"], <#if adminGroups?has_content> "administratorGroups": ${adminGroups}, <#if readerGroups?has_content> "readerGroups": ${readerGroups}, <#if contentUuids?has_content> "contentUuids": ${contentUuids}, <#if groupUuids?has_content> "groupUuids": [ <#list groupUuids as groupUuid> "${groupUuid}" <#if groupUuid?has_next> , ], "defaultObjects": [ <#list defaultGroups as defaultGroupsKey, defaultGroupsUuid> { "objectKey": "${defaultGroupsKey}", "objectType": "group", "objectUuid": "${defaultGroupsUuid}" } <#if defaultGroupsKey?has_next> , ], <#if pmFolderUuids?has_content> "pmFolderUuids": ${pmFolderUuids}, <#-- i18n section --> "name": "${applicationInfo.name?json_string}", "prefix": "${applicationInfo.prefix}", "url": "${applicationInfo.url?json_string}", "description": "${applicationInfo.description?json_string}" } ] }