Repositorio del curso CCOM4030 el semestre B91 del proyecto Artesanías con el Instituto de Cultura

createBlob.js 1.2KB

123456789101112131415161718192021222324252627282930313233
  1. // Abstracts constructing a Blob object, so it also works in older
  2. // browsers that don't support the native Blob constructor. (i.e.
  3. // old QtWebKit versions, at least).
  4. // Abstracts constructing a Blob object, so it also works in older
  5. // browsers that don't support the native Blob constructor. (i.e.
  6. // old QtWebKit versions, at least).
  7. function createBlob(parts, properties) {
  8. /* global BlobBuilder,MSBlobBuilder,MozBlobBuilder,WebKitBlobBuilder */
  9. parts = parts || [];
  10. properties = properties || {};
  11. try {
  12. return new Blob(parts, properties);
  13. } catch (e) {
  14. if (e.name !== 'TypeError') {
  15. throw e;
  16. }
  17. var Builder =
  18. typeof BlobBuilder !== 'undefined'
  19. ? BlobBuilder
  20. : typeof MSBlobBuilder !== 'undefined'
  21. ? MSBlobBuilder
  22. : typeof MozBlobBuilder !== 'undefined'
  23. ? MozBlobBuilder
  24. : WebKitBlobBuilder;
  25. var builder = new Builder();
  26. for (var i = 0; i < parts.length; i += 1) {
  27. builder.append(parts[i]);
  28. }
  29. return builder.getBlob(properties.type);
  30. }
  31. }
  32. export default createBlob;