96f24815 by Ean Schuessler

Add transitions to compact format for toolbar/row actions

Shows screen-transition actions like editMessage, messageThread in a
'transitions' array. Filters out internal actions (formSelectColumns,
formSaveFind, screenDoc, actions).
1 parent 7ae7cfe8
...@@ -1056,7 +1056,7 @@ def convertToCompactFormat = { semanticState, targetScreenPath -> ...@@ -1056,7 +1056,7 @@ def convertToCompactFormat = { semanticState, targetScreenPath ->
1056 } 1056 }
1057 if (grids) result.grids = grids 1057 if (grids) result.grids = grids
1058 1058
1059 // Actions with parameter hints 1059 // Actions - service actions with parameter hints
1060 def actionMap = [:] 1060 def actionMap = [:]
1061 actions.findAll { it.type == "service-action" && it.service }.each { action -> 1061 actions.findAll { it.type == "service-action" && it.service }.each { action ->
1062 def actionInfo = [service: action.service] 1062 def actionInfo = [service: action.service]
...@@ -1078,6 +1078,16 @@ def convertToCompactFormat = { semanticState, targetScreenPath -> ...@@ -1078,6 +1078,16 @@ def convertToCompactFormat = { semanticState, targetScreenPath ->
1078 } 1078 }
1079 if (actionMap) result.actions = actionMap 1079 if (actionMap) result.actions = actionMap
1080 1080
1081 // Transitions - screen navigation actions (toolbar buttons, row actions)
1082 def transitionList = actions.findAll {
1083 it.type == "screen-transition" &&
1084 it.name &&
1085 !it.name.startsWith("form") && // Skip formSelectColumns, formSaveFind
1086 it.name != "actions" && // Skip generic 'actions'
1087 it.name != "screenDoc" // Skip documentation link
1088 }.collect { it.name }
1089 if (transitionList) result.transitions = transitionList
1090
1081 // Navigation - only external/important links 1091 // Navigation - only external/important links
1082 def navLinks = data?.links?.findAll { link -> 1092 def navLinks = data?.links?.findAll { link ->
1083 link.type == "navigation" && link.path && !link.path.contains("?") 1093 link.type == "navigation" && link.path && !link.path.contains("?")
......