append multiple elements to array in do block with for loop

You could fold iteration over the slots into the for domain. For example:

for:
	Index -> CountWidget:WidgetsCount
	TeamWidget := WidgetsTeam[Index]
	Slot : array:
		canvas_slot:
			...
		canvas_slot:
			...
do Slot
3 Likes