utils.js 561 B

1234567891011121314151617181920212223242526272829303132
  1. "use strict"
  2. function oneLine(parts) {
  3. return parts
  4. .map((part, index) => {
  5. return index > 0 ? arguments[index - 1] + part : part
  6. })
  7. .join("")
  8. .trim()
  9. .split("\n")
  10. .map((line) => line.trim())
  11. .join(" ")
  12. }
  13. function splatSet(items) {
  14. const set = new Set()
  15. splatSetRec(items, set)
  16. return set
  17. }
  18. function splatSetRec(items, set) {
  19. if (items instanceof Array || items instanceof Set) {
  20. for (const item of items) splatSetRec(item, set)
  21. } else {
  22. set.add(items)
  23. }
  24. }
  25. module.exports = {
  26. oneLine,
  27. splatSet,
  28. }