HashChangeEventInit.js 1.3 KB

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