Digitangular numbers A triangular number is a number that can be expressed as the sum of consecutive positive integers, starting at 1. They can also be expressed with the formula n(n + 1) / 2, where n is some positive integer.

A number's digitangular counterpart is calculated in the following way:


Split a number into an array of its digits e.g. 613 =&gt; [6 1 3]
For each number in the array, calculate the nth triangular number; [6 1 3] =&gt; [21 1 6]
Sum the resultant array; [21 1 6] =&gt; 28


Your task is, given an integer n, repeatedly calculate n's digitangular counterpart, until the result is equal to 1, then output all values that were calculated. You may output the values in any order, and with an optional inclusion of the original number at the start of the array. This is a code-golf so the shortest code wins.

Test cases

23 =&gt; 9 45 25 18 37 34 16 22 6 21 4 10 1
72 =&gt; 31 7 28 39 51 16 22 6 21 4 10 1
55 =&gt; 30 6 21 4 10 1
78 =&gt; 64 31 7 28 39 51 16 22 6 21 4 10 1
613 =&gt; 28 39 51 16 22 6 21 4 10 1
8392 =&gt; 90 45 25 18 37 34 16 22 6 21 4 10 1
11111 =&gt; 5 15 16 22 6 21 4 10 1
8592025 =&gt; 117 30 6 21 4 10 1
999999999 =&gt; 405 25 18 37 34 16 22 6 21 4 10 1
Husk, 6 bytes

U¡(ṁΣd


Try it online!

Explanation

U¡(ṁΣd
 ¡(       Iterate the following function on the input:
     d       Split the number into digits
   ṁΣ        Map each digit to its triangular number, then sum the results
U         Take the results of iteration until before the first repeated one