(...fns)
| 944 | |
| 945 | // Code via underscore's _.compose |
| 946 | function compose(...fns) { |
| 947 | let start = fns.length - 1 |
| 948 | return function(...args) { |
| 949 | let i = start |
| 950 | let result = fns[start].apply(this, args) |
| 951 | while (i--) { |
| 952 | result = fns[i].call(this, result) |
| 953 | } |
| 954 | return result |
| 955 | } |
| 956 | } |
| 957 | |
| 958 | // Code via https://developers.google.com/web/updates/2015/01/ES6-Template-Strings |
| 959 | // HTML Escape helper utility |