BlobEventInit.js 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. "use strict";
  2. const conversions = require("webidl-conversions");
  3. const utils = require("./utils.js");
  4. const Blob = require("./Blob.js");
  5. const EventInit = require("./EventInit.js");
  6. exports._convertInherit = (globalObject, obj, ret, { context = "The provided value" } = {}) => {
  7. EventInit._convertInherit(globalObject, obj, ret, { context });
  8. {
  9. const key = "data";
  10. let value = obj === undefined || obj === null ? undefined : obj[key];
  11. if (value !== undefined) {
  12. value = Blob.convert(globalObject, value, { context: context + " has member 'data' that" });
  13. ret[key] = value;
  14. } else {
  15. throw new globalObject.TypeError("data is required in 'BlobEventInit'");
  16. }
  17. }
  18. {
  19. const key = "timecode";
  20. let value = obj === undefined || obj === null ? undefined : obj[key];
  21. if (value !== undefined) {
  22. value = conversions["double"](value, { context: context + " has member 'timecode' that", globals: globalObject });
  23. ret[key] = value;
  24. }
  25. }
  26. };
  27. exports.convert = (globalObject, obj, { context = "The provided value" } = {}) => {
  28. if (obj !== undefined && typeof obj !== "object" && typeof obj !== "function") {
  29. throw new globalObject.TypeError(`${context} is not an object.`);
  30. }
  31. const ret = Object.create(null);
  32. exports._convertInherit(globalObject, obj, ret, { context });
  33. return ret;
  34. };