concat.js 1002 B

123456789101112131415161718192021222324252627282930313233343536
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.listToUint8 = exports.concatList = exports.concat = void 0;
  4. const concat = (a, b) => {
  5. const res = new Uint8Array(a.length + b.length);
  6. res.set(a);
  7. res.set(b, a.length);
  8. return res;
  9. };
  10. exports.concat = concat;
  11. const concatList = (list) => {
  12. const length = list.length;
  13. let size = 0, offset = 0;
  14. for (let i = 0; i < length; i++)
  15. size += list[i].length;
  16. const res = new Uint8Array(size);
  17. for (let i = 0; i < length; i++) {
  18. const item = list[i];
  19. res.set(item, offset);
  20. offset += item.length;
  21. }
  22. return res;
  23. };
  24. exports.concatList = concatList;
  25. const listToUint8 = (list) => {
  26. switch (list.length) {
  27. case 0:
  28. return new Uint8Array(0);
  29. case 1:
  30. return list[0];
  31. default:
  32. return (0, exports.concatList)(list);
  33. }
  34. };
  35. exports.listToUint8 = listToUint8;
  36. //# sourceMappingURL=concat.js.map