When a field path resolves to an array (e.g. labels, components, fixVersions), you can apply list operations to transform or extract values.
|
Operation |
Description |
Example |
Output |
|
.first |
First element |
smartValue(issue.fields.components.name.first) |
"API" |
|
.last |
Last element |
smartValue(issue.fields.components.name.last) |
"Auth" |
|
.get(n) |
Element at index n (0-based) |
smartValue(issue.fields.labels.get(1)) |
"urgent" |
|
.getFromEnd(n) |
Element n positions from end |
smartValue(issue.fields.labels.getFromEnd(0)) |
"urgent" |
|
.distinct |
Remove duplicates |
smartValue(issue.fields.labels.distinct) |
(unique values) |
|
.size |
Number of elements |
smartValue(issue.fields.labels.size) |
2 |
|
.sum |
Sum of numeric values |
smartValue(issue.fields.worklogs.timeSpentSeconds.sum) |
(numeric sum) |
|
.average |
Average of numeric values |
smartValue(issue.fields.worklogs.timeSpentSeconds.average) |
(average) |
|
.max |
Maximum value |
smartValue(issue.fields.worklogs.timeSpentSeconds.max) |
(max) |
|
.min |
Minimum value |
smartValue(issue.fields.worklogs.timeSpentSeconds.min) |
(min) |
|
.join(sep) |
Join elements with a separator |
smartValue(issue.fields.labels.join(" OR ")) |
"backend OR urgent" |