happy-dom 7.7.1 → 7.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of happy-dom might be problematic. Click here for more details.

Files changed (109) hide show
  1. package/README.md +62 -27
  2. package/lib/async-task-manager/AsyncTaskManager.d.ts +3 -8
  3. package/lib/async-task-manager/AsyncTaskManager.js +21 -24
  4. package/lib/async-task-manager/AsyncTaskManager.js.map +1 -1
  5. package/lib/cookie/Cookie.d.ts +53 -0
  6. package/lib/cookie/Cookie.js +146 -0
  7. package/lib/cookie/Cookie.js.map +1 -0
  8. package/lib/cookie/CookieJar.d.ts +30 -0
  9. package/lib/cookie/CookieJar.js +84 -0
  10. package/lib/cookie/CookieJar.js.map +1 -0
  11. package/lib/event/IEventListener.d.ts +1 -1
  12. package/lib/exception/DOMExceptionNameEnum.d.ts +4 -1
  13. package/lib/exception/DOMExceptionNameEnum.js +3 -0
  14. package/lib/exception/DOMExceptionNameEnum.js.map +1 -1
  15. package/lib/fetch/FetchHandler.d.ts +3 -2
  16. package/lib/fetch/FetchHandler.js +31 -3
  17. package/lib/fetch/FetchHandler.js.map +1 -1
  18. package/lib/fetch/RequestInfo.d.ts +5 -0
  19. package/lib/fetch/RequestInfo.js +3 -0
  20. package/lib/fetch/RequestInfo.js.map +1 -0
  21. package/lib/fetch/ResourceFetchHandler.d.ts +2 -2
  22. package/lib/fetch/ResourceFetchHandler.js +9 -8
  23. package/lib/fetch/ResourceFetchHandler.js.map +1 -1
  24. package/lib/index.d.ts +1 -2
  25. package/lib/index.js +3 -4
  26. package/lib/index.js.map +1 -1
  27. package/lib/location/Location.d.ts +2 -1
  28. package/lib/location/Location.js +4 -7
  29. package/lib/location/Location.js.map +1 -1
  30. package/lib/location/RelativeURL.d.ts +3 -1
  31. package/lib/location/RelativeURL.js +2 -11
  32. package/lib/location/RelativeURL.js.map +1 -1
  33. package/lib/nodes/document/Document.d.ts +14 -3
  34. package/lib/nodes/document/Document.js +21 -6
  35. package/lib/nodes/document/Document.js.map +1 -1
  36. package/lib/nodes/document/IDocument.d.ts +2 -0
  37. package/lib/nodes/html-link-element/HTMLLinkElement.js +5 -2
  38. package/lib/nodes/html-link-element/HTMLLinkElement.js.map +1 -1
  39. package/lib/nodes/html-script-element/HTMLScriptElement.js +1 -1
  40. package/lib/nodes/html-script-element/HTMLScriptElement.js.map +1 -1
  41. package/lib/nodes/html-script-element/ScriptUtility.js +4 -0
  42. package/lib/nodes/html-script-element/ScriptUtility.js.map +1 -1
  43. package/lib/window/IHappyDOMSettings.d.ts +9 -0
  44. package/lib/window/IHappyDOMSettings.js +3 -0
  45. package/lib/window/IHappyDOMSettings.js.map +1 -0
  46. package/lib/window/IWindow.d.ts +15 -6
  47. package/lib/window/Window.d.ts +18 -3
  48. package/lib/window/Window.js +26 -4
  49. package/lib/window/Window.js.map +1 -1
  50. package/lib/xml-http-request/XMLHttpRequest.d.ts +196 -0
  51. package/lib/xml-http-request/XMLHttpRequest.js +777 -0
  52. package/lib/xml-http-request/XMLHttpRequest.js.map +1 -0
  53. package/lib/xml-http-request/XMLHttpRequestCertificate.d.ts +5 -0
  54. package/lib/xml-http-request/XMLHttpRequestCertificate.js +55 -0
  55. package/lib/xml-http-request/XMLHttpRequestCertificate.js.map +1 -0
  56. package/lib/xml-http-request/XMLHttpRequestEventTarget.d.ts +15 -0
  57. package/lib/xml-http-request/XMLHttpRequestEventTarget.js +23 -0
  58. package/lib/xml-http-request/XMLHttpRequestEventTarget.js.map +1 -0
  59. package/lib/xml-http-request/XMLHttpRequestReadyStateEnum.d.ts +8 -0
  60. package/lib/xml-http-request/XMLHttpRequestReadyStateEnum.js +12 -0
  61. package/lib/xml-http-request/XMLHttpRequestReadyStateEnum.js.map +1 -0
  62. package/lib/xml-http-request/XMLHttpRequestUpload.d.ts +6 -0
  63. package/lib/xml-http-request/XMLHttpRequestUpload.js +13 -0
  64. package/lib/xml-http-request/XMLHttpRequestUpload.js.map +1 -0
  65. package/lib/xml-http-request/XMLHttpResponseTypeEnum.d.ts +8 -0
  66. package/lib/xml-http-request/XMLHttpResponseTypeEnum.js +12 -0
  67. package/lib/xml-http-request/XMLHttpResponseTypeEnum.js.map +1 -0
  68. package/lib/xml-http-request/utilities/XMLHttpRequestSyncRequestScriptBuilder.d.ts +15 -0
  69. package/lib/xml-http-request/utilities/XMLHttpRequestSyncRequestScriptBuilder.js +55 -0
  70. package/lib/xml-http-request/utilities/XMLHttpRequestSyncRequestScriptBuilder.js.map +1 -0
  71. package/lib/xml-http-request/utilities/XMLHttpRequestURLUtility.d.ts +35 -0
  72. package/lib/xml-http-request/utilities/XMLHttpRequestURLUtility.js +62 -0
  73. package/lib/xml-http-request/utilities/XMLHttpRequestURLUtility.js.map +1 -0
  74. package/package.json +2 -2
  75. package/src/async-task-manager/AsyncTaskManager.ts +24 -26
  76. package/src/cookie/Cookie.ts +158 -0
  77. package/src/cookie/CookieJar.ts +82 -0
  78. package/src/event/IEventListener.ts +1 -1
  79. package/src/exception/DOMExceptionNameEnum.ts +4 -1
  80. package/src/fetch/FetchHandler.ts +40 -4
  81. package/src/fetch/RequestInfo.ts +6 -0
  82. package/src/fetch/ResourceFetchHandler.ts +10 -8
  83. package/src/index.ts +1 -2
  84. package/src/location/Location.ts +3 -3
  85. package/src/location/RelativeURL.ts +3 -14
  86. package/src/nodes/document/Document.ts +24 -6
  87. package/src/nodes/document/IDocument.ts +2 -0
  88. package/src/nodes/html-link-element/HTMLLinkElement.ts +7 -2
  89. package/src/nodes/html-script-element/HTMLScriptElement.ts +1 -1
  90. package/src/nodes/html-script-element/ScriptUtility.ts +8 -0
  91. package/src/window/IHappyDOMSettings.ts +9 -0
  92. package/src/window/IWindow.ts +15 -6
  93. package/src/window/Window.ts +36 -5
  94. package/src/xml-http-request/XMLHttpRequest.ts +998 -0
  95. package/src/xml-http-request/XMLHttpRequestCertificate.ts +52 -0
  96. package/src/xml-http-request/XMLHttpRequestEventTarget.ts +17 -0
  97. package/src/xml-http-request/XMLHttpRequestReadyStateEnum.ts +9 -0
  98. package/src/xml-http-request/XMLHttpRequestUpload.ts +6 -0
  99. package/src/xml-http-request/XMLHttpResponseTypeEnum.ts +9 -0
  100. package/src/xml-http-request/utilities/XMLHttpRequestSyncRequestScriptBuilder.ts +53 -0
  101. package/src/xml-http-request/utilities/XMLHttpRequestURLUtility.ts +64 -0
  102. package/lib/cookie/CookieUtility.d.ts +0 -15
  103. package/lib/cookie/CookieUtility.js +0 -83
  104. package/lib/cookie/CookieUtility.js.map +0 -1
  105. package/lib/location/URL.d.ts +0 -53
  106. package/lib/location/URL.js +0 -96
  107. package/lib/location/URL.js.map +0 -1
  108. package/src/cookie/CookieUtility.ts +0 -87
  109. package/src/location/URL.ts +0 -102
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XMLHttpRequest.js","sourceRoot":"","sources":["../../src/xml-http-request/XMLHttpRequest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ declare const _default: {
2
+ cert: string;
3
+ key: string;
4
+ };
5
+ export default _default;
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ // SSL certificate generated for Happy DOM to be able to perform HTTPS requests
4
+ exports.default = {
5
+ cert: `-----BEGIN CERTIFICATE-----
6
+ MIIDYzCCAkugAwIBAgIUJRKB/H66hpet1VfUlm0CiXqePA4wDQYJKoZIhvcNAQEL
7
+ BQAwQTELMAkGA1UEBhMCU0UxDjAMBgNVBAgMBVNrYW5lMQ4wDAYDVQQHDAVNYWxt
8
+ bzESMBAGA1UECgwJSGFwcHkgRE9NMB4XDTIyMTAxMTIyMDM0OVoXDTMyMTAwODIy
9
+ MDM0OVowQTELMAkGA1UEBhMCU0UxDjAMBgNVBAgMBVNrYW5lMQ4wDAYDVQQHDAVN
10
+ YWxtbzESMBAGA1UECgwJSGFwcHkgRE9NMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
11
+ MIIBCgKCAQEAqerQSQEg/SxVxRiwlItithr5e5EMZo1nsqt/xOxagbmpW3IEmt0j
12
+ bpbH7iEF4DDEo7KAOwUCOwVWeFxRoag8lG2ax48wrgjlCna45XDn0Xeg1ARajL04
13
+ gs46HZ0VrzIloVGfln0zgt/Vum5BNqs9Oc5fQoBmoP3cAn3dn4ZVcP0AKthtcyPl
14
+ q2DuNRN0PV0D2RtMSiAy9l1Ko6N5x+sAeClDyOL+sTDLngZBVeZyOKt9Id15S8Zt
15
+ XtA6VMgHnnF3jChn7pag77rsd/y5iANAVNZYqRl+Eg7xaDcsvbgH46UBOrBcB39Q
16
+ tTh5Mtjoxep5e3ZDFG+kQ1HUE+iz5O5n0wIDAQABo1MwUTAdBgNVHQ4EFgQU69s9
17
+ YSobG/m2SN4L/7zTaF7iDbwwHwYDVR0jBBgwFoAU69s9YSobG/m2SN4L/7zTaF7i
18
+ DbwwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAi/WUXx2oal8L
19
+ YnPlIuKfh49n/K18wXSYG//oFYwxfVxqpYH8hUiXVm/GUcXCxS++hUkaKLqXmH9q
20
+ MKJiCrZr3vS+2nsBKopkICu/TLdROl0sAI9lByfnEbfSAzjxe1IWJdK8NdY0y5m5
21
+ 9pEr/URVIAp/CxrneyASb4q0Jg5To3FR7vYc+2X6wZn0MundKMg6Dp9/A37jiF3l
22
+ Tt/EJp299YZcsUzh+LnRuggRjnoOVu1aLcLFlaUiwZfy9m8mLG6B/mdW/qNzNMh9
23
+ Oqvg1zfGdpz/4D/2UUUBn6pq1vbsoAaF3OesoA3mfDcegDf/H9woJlpT0Wql+e68
24
+ Y3FblSokcA==
25
+ -----END CERTIFICATE-----`,
26
+ key: `-----BEGIN PRIVATE KEY-----
27
+ MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCp6tBJASD9LFXF
28
+ GLCUi2K2Gvl7kQxmjWeyq3/E7FqBualbcgSa3SNulsfuIQXgMMSjsoA7BQI7BVZ4
29
+ XFGhqDyUbZrHjzCuCOUKdrjlcOfRd6DUBFqMvTiCzjodnRWvMiWhUZ+WfTOC39W6
30
+ bkE2qz05zl9CgGag/dwCfd2fhlVw/QAq2G1zI+WrYO41E3Q9XQPZG0xKIDL2XUqj
31
+ o3nH6wB4KUPI4v6xMMueBkFV5nI4q30h3XlLxm1e0DpUyAeecXeMKGfulqDvuux3
32
+ /LmIA0BU1lipGX4SDvFoNyy9uAfjpQE6sFwHf1C1OHky2OjF6nl7dkMUb6RDUdQT
33
+ 6LPk7mfTAgMBAAECggEAKkwTkTjAt4UjzK56tl+EMQTB+ep/hb/JgoaChci4Nva6
34
+ m9LkJpDJ0yuhlTuPNOGu8XjrxsVWas7HWarRf0Zb3i7yip6wZYI9Ub+AA015x4DZ
35
+ /i0fRU2NFbK0cM67qSL4jxG8gj+kZP3HPGNZxHwX/53JxMolwgmvjMc8NgvAlSFd
36
+ NnV9h4xtbhUh1NGS5zmP3iU2rwnE8JrIEzwy6axLom7nekAgkdcbAr0UoBs8gcgH
37
+ aYNhU4Gz3tGcZZ0IXAfT/bJIH1Ko8AGv4pssWc3BXcmmNdm/+kzvHIxEIV7Qegmo
38
+ XG1ZyZCyD/0b4/3e8ySDBEDqwR+HeyTW2isWG2agAQKBgQDp44aTwr3dkIXY30xv
39
+ FPfUOipg/B49dWnffYJ9MWc1FT9ijNPAngWSk0EIiEQIazICcUBI4Yji6/KeyqLJ
40
+ GdLpDi1CkKqtyh73mjELinYp3EUQgEa77aQogGa2+nMOVfu+O5CtloUrv/A18jX3
41
+ +VEyaEASK0fWmnSI0OdlxQHIAQKBgQC5+xOls2F3MlKASvWRLlnW1wHqlDTtVoYg
42
+ 5Nh8syZH4Ci2UH8tON3A5/7SWNM0t1cgV6Cw4zW8Z2spgIT/W0iYYrQ4hHL1xdCu
43
+ +CxL1km4Gy8Uwpsd+KdFahFqF/XTmLzW0HXLxWSK0fTwmdV0SFrKF3MXfTCU2AeZ
44
+ jJoMFb6P0wKBgQC3Odw6s0vkYAzLGhuZxfZkVvDOK5RRF0NKpttr0iEFL9EJFkPo
45
+ 2KKK8jr3QTDy229BBJGUxsJi6u6VwS8HlehpVQbV59kd7oKV/EBBx0XMg1fDlopT
46
+ PNbmN7i/zbIG4AsoOyebJZjL7kBzMn1e9vzKHWtcEHXlw/hZGja8vjooAQKBgAeg
47
+ xK2HLfg1mCyq5meN/yFQsENu0LzrT5UJzddPgcJw7zqLEqxIKNBAs7Ls8by3yFsL
48
+ PQwERa/0jfCl1M6kb9XQNpQa2pw6ANUsWKTDpUJn2wZ+9N3F1RaDwzMWyH5lRVmK
49
+ M0qoTfdjpSg5Jwgd75taWt4bxGJWeflSSv8z5R0BAoGAWL8c527AbeBvx2tOYKkD
50
+ 2TFranvANNcoMrbeviZSkkGvMNDP3p8b6juJwXOIeWNr8q4vFgCzLmq6d1/9gYm2
51
+ 3XJwwyD0LKlqzkBrrKU47qrnmMosUrIRlrAzd3HbShOptxc6Iz2apSaUDKGKXkaw
52
+ gl5OpEjeliU7Mus0BVS858g=
53
+ -----END PRIVATE KEY-----`
54
+ };
55
+ //# sourceMappingURL=XMLHttpRequestCertificate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XMLHttpRequestCertificate.js","sourceRoot":"","sources":["../../src/xml-http-request/XMLHttpRequestCertificate.ts"],"names":[],"mappings":";;AAAA,+EAA+E;AAC/E,kBAAe;IACd,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;0BAoBmB;IACzB,GAAG,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;0BA2BoB;CACzB,CAAC"}
@@ -0,0 +1,15 @@
1
+ import ProgressEvent from '../event/events/ProgressEvent';
2
+ import EventTarget from '../event/EventTarget';
3
+ export declare type ProgressEventListener = (event: ProgressEvent) => void;
4
+ /**
5
+ * References: https://xhr.spec.whatwg.org/#xmlhttprequesteventtarget.
6
+ */
7
+ export default class XMLHttpRequestEventTarget extends EventTarget {
8
+ onloadstart: ProgressEventListener | null;
9
+ onprogress: ProgressEventListener | null;
10
+ onabort: (event: ProgressEvent) => void | null;
11
+ onerror: ProgressEventListener | null;
12
+ onload: ProgressEventListener | null;
13
+ ontimeout: ProgressEventListener | null;
14
+ onloadend: ProgressEventListener | null;
15
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const EventTarget_1 = __importDefault(require("../event/EventTarget"));
7
+ /**
8
+ * References: https://xhr.spec.whatwg.org/#xmlhttprequesteventtarget.
9
+ */
10
+ class XMLHttpRequestEventTarget extends EventTarget_1.default {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.onloadstart = null;
14
+ this.onprogress = null;
15
+ this.onabort = null;
16
+ this.onerror = null;
17
+ this.onload = null;
18
+ this.ontimeout = null;
19
+ this.onloadend = null;
20
+ }
21
+ }
22
+ exports.default = XMLHttpRequestEventTarget;
23
+ //# sourceMappingURL=XMLHttpRequestEventTarget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XMLHttpRequestEventTarget.js","sourceRoot":"","sources":["../../src/xml-http-request/XMLHttpRequestEventTarget.ts"],"names":[],"mappings":";;;;;AACA,uEAA+C;AAI/C;;GAEG;AACH,MAAqB,yBAA0B,SAAQ,qBAAW;IAAlE;;QACQ,gBAAW,GAAiC,IAAI,CAAC;QACjD,eAAU,GAAiC,IAAI,CAAC;QAChD,YAAO,GAA0C,IAAI,CAAC;QACtD,YAAO,GAAiC,IAAI,CAAC;QAC7C,WAAM,GAAiC,IAAI,CAAC;QAC5C,cAAS,GAAiC,IAAI,CAAC;QAC/C,cAAS,GAAiC,IAAI,CAAC;IACvD,CAAC;CAAA;AARD,4CAQC"}
@@ -0,0 +1,8 @@
1
+ declare enum XMLHttpRequestReadyStateEnum {
2
+ unsent = 0,
3
+ opened = 1,
4
+ headersRecieved = 2,
5
+ loading = 3,
6
+ done = 4
7
+ }
8
+ export default XMLHttpRequestReadyStateEnum;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var XMLHttpRequestReadyStateEnum;
4
+ (function (XMLHttpRequestReadyStateEnum) {
5
+ XMLHttpRequestReadyStateEnum[XMLHttpRequestReadyStateEnum["unsent"] = 0] = "unsent";
6
+ XMLHttpRequestReadyStateEnum[XMLHttpRequestReadyStateEnum["opened"] = 1] = "opened";
7
+ XMLHttpRequestReadyStateEnum[XMLHttpRequestReadyStateEnum["headersRecieved"] = 2] = "headersRecieved";
8
+ XMLHttpRequestReadyStateEnum[XMLHttpRequestReadyStateEnum["loading"] = 3] = "loading";
9
+ XMLHttpRequestReadyStateEnum[XMLHttpRequestReadyStateEnum["done"] = 4] = "done";
10
+ })(XMLHttpRequestReadyStateEnum || (XMLHttpRequestReadyStateEnum = {}));
11
+ exports.default = XMLHttpRequestReadyStateEnum;
12
+ //# sourceMappingURL=XMLHttpRequestReadyStateEnum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XMLHttpRequestReadyStateEnum.js","sourceRoot":"","sources":["../../src/xml-http-request/XMLHttpRequestReadyStateEnum.ts"],"names":[],"mappings":";;AAAA,IAAK,4BAMJ;AAND,WAAK,4BAA4B;IAChC,mFAAU,CAAA;IACV,mFAAU,CAAA;IACV,qGAAmB,CAAA;IACnB,qFAAW,CAAA;IACX,+EAAQ,CAAA;AACT,CAAC,EANI,4BAA4B,KAA5B,4BAA4B,QAMhC;AAED,kBAAe,4BAA4B,CAAC"}
@@ -0,0 +1,6 @@
1
+ import XMLHttpRequestEventTarget from './XMLHttpRequestEventTarget';
2
+ /**
3
+ * References: https://xhr.spec.whatwg.org/#xmlhttprequestupload.
4
+ */
5
+ export default class XMLHttpRequestUpload extends XMLHttpRequestEventTarget {
6
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const XMLHttpRequestEventTarget_1 = __importDefault(require("./XMLHttpRequestEventTarget"));
7
+ /**
8
+ * References: https://xhr.spec.whatwg.org/#xmlhttprequestupload.
9
+ */
10
+ class XMLHttpRequestUpload extends XMLHttpRequestEventTarget_1.default {
11
+ }
12
+ exports.default = XMLHttpRequestUpload;
13
+ //# sourceMappingURL=XMLHttpRequestUpload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XMLHttpRequestUpload.js","sourceRoot":"","sources":["../../src/xml-http-request/XMLHttpRequestUpload.ts"],"names":[],"mappings":";;;;;AAAA,4FAAoE;AAEpE;;GAEG;AACH,MAAqB,oBAAqB,SAAQ,mCAAyB;CAAG;AAA9E,uCAA8E"}
@@ -0,0 +1,8 @@
1
+ declare enum XMLHttpResponseTypeEnum {
2
+ arraybuffer = "arraybuffer",
3
+ blob = "blob",
4
+ document = "document",
5
+ json = "json",
6
+ text = "text"
7
+ }
8
+ export default XMLHttpResponseTypeEnum;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var XMLHttpResponseTypeEnum;
4
+ (function (XMLHttpResponseTypeEnum) {
5
+ XMLHttpResponseTypeEnum["arraybuffer"] = "arraybuffer";
6
+ XMLHttpResponseTypeEnum["blob"] = "blob";
7
+ XMLHttpResponseTypeEnum["document"] = "document";
8
+ XMLHttpResponseTypeEnum["json"] = "json";
9
+ XMLHttpResponseTypeEnum["text"] = "text";
10
+ })(XMLHttpResponseTypeEnum || (XMLHttpResponseTypeEnum = {}));
11
+ exports.default = XMLHttpResponseTypeEnum;
12
+ //# sourceMappingURL=XMLHttpResponseTypeEnum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XMLHttpResponseTypeEnum.js","sourceRoot":"","sources":["../../src/xml-http-request/XMLHttpResponseTypeEnum.ts"],"names":[],"mappings":";;AAAA,IAAK,uBAMJ;AAND,WAAK,uBAAuB;IAC3B,sDAA2B,CAAA;IAC3B,wCAAa,CAAA;IACb,gDAAqB,CAAA;IACrB,wCAAa,CAAA;IACb,wCAAa,CAAA;AACd,CAAC,EANI,uBAAuB,KAAvB,uBAAuB,QAM3B;AAED,kBAAe,uBAAuB,CAAC"}
@@ -0,0 +1,15 @@
1
+ /// <reference types="node" />
2
+ import HTTPS from 'https';
3
+ /**
4
+ * Synchroneous XMLHttpRequest script builder.
5
+ */
6
+ export default class XMLHttpRequestSyncRequestScriptBuilder {
7
+ /**
8
+ * Sends a synchronous request.
9
+ *
10
+ * @param options Options.
11
+ * @param ssl SSL.
12
+ * @param data Data.
13
+ */
14
+ static getScript(options: HTTPS.RequestOptions, ssl: boolean, data?: string): string;
15
+ }
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /**
4
+ * Synchroneous XMLHttpRequest script builder.
5
+ */
6
+ class XMLHttpRequestSyncRequestScriptBuilder {
7
+ /**
8
+ * Sends a synchronous request.
9
+ *
10
+ * @param options Options.
11
+ * @param ssl SSL.
12
+ * @param data Data.
13
+ */
14
+ static getScript(options, ssl, data) {
15
+ // Synchronous
16
+ // Note: console.log === stdout
17
+ // The async request the other Node process executes
18
+ return `
19
+ const HTTP = require('http');
20
+ const HTTPS = require('https');
21
+ const sendRequest = HTTP${ssl ? 'S' : ''}.request;
22
+ const options = ${JSON.stringify(options)};
23
+ const request = sendRequest(options, (response) => {
24
+ let responseText = '';
25
+ let responseData = Buffer.alloc(0);
26
+ response.setEncoding('utf8');
27
+ response.on('data', (chunk) => {
28
+ responseText += chunk;
29
+ responseData = Buffer.concat([responseData, Buffer.from(chunk)]);
30
+ });
31
+ response.on('end', () => {
32
+ console.log(JSON.stringify({
33
+ error: null,
34
+ data: {
35
+ statusCode: response.statusCode,
36
+ statusMessage: response.statusMessage,
37
+ headers: response.headers,
38
+ text: responseText,
39
+ data: responseData.toString('base64')
40
+ }
41
+ }));
42
+ });
43
+ response.on('error', (error) => {
44
+ console.log(JSON.stringify({ error: error.toString(), data: null }));
45
+ });
46
+ });
47
+ request.write(\`${JSON.stringify(data ?? '')
48
+ .slice(1, -1)
49
+ .replace(/'/g, "\\'")}\`);
50
+ request.end();
51
+ `;
52
+ }
53
+ }
54
+ exports.default = XMLHttpRequestSyncRequestScriptBuilder;
55
+ //# sourceMappingURL=XMLHttpRequestSyncRequestScriptBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XMLHttpRequestSyncRequestScriptBuilder.js","sourceRoot":"","sources":["../../../src/xml-http-request/utilities/XMLHttpRequestSyncRequestScriptBuilder.ts"],"names":[],"mappings":";;AAEA;;GAEG;AACH,MAAqB,sCAAsC;IAC1D;;;;;;OAMG;IACI,MAAM,CAAC,SAAS,CAAC,OAA6B,EAAE,GAAY,EAAE,IAAa;QACjF,cAAc;QACd,+BAA+B;QAC/B,oDAAoD;QACpD,OAAO;;;0CAGiC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;kCACtB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;kCAyBvB,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC;aAClD,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aACZ,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;;aAEjB,CAAC;IACb,CAAC;CACD;AA/CD,yDA+CC"}
@@ -0,0 +1,35 @@
1
+ /// <reference types="node" />
2
+ import { URL } from 'url';
3
+ /**
4
+ * URL utility.
5
+ */
6
+ export default class XMLHttpRequestURLUtility {
7
+ /**
8
+ * Returns "true" if SSL.
9
+ *
10
+ * @param url URL.
11
+ * @returns "true" if SSL.
12
+ */
13
+ static isSSL(url: URL): boolean;
14
+ /**
15
+ * Returns "true" if SSL.
16
+ *
17
+ * @param url URL.
18
+ * @returns "true" if SSL.
19
+ */
20
+ static isLocal(url: URL): boolean;
21
+ /**
22
+ * Returns "true" if protocol is valid.
23
+ *
24
+ * @param url URL.
25
+ * @returns "true" if valid.
26
+ */
27
+ static isSupportedProtocol(url: URL): boolean;
28
+ /**
29
+ * Returns host.
30
+ *
31
+ * @param url URL.
32
+ * @returns Host.
33
+ */
34
+ static getHost(url: URL): string;
35
+ }
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /**
4
+ * URL utility.
5
+ */
6
+ class XMLHttpRequestURLUtility {
7
+ /**
8
+ * Returns "true" if SSL.
9
+ *
10
+ * @param url URL.
11
+ * @returns "true" if SSL.
12
+ */
13
+ static isSSL(url) {
14
+ return url.protocol === 'https:';
15
+ }
16
+ /**
17
+ * Returns "true" if SSL.
18
+ *
19
+ * @param url URL.
20
+ * @returns "true" if SSL.
21
+ */
22
+ static isLocal(url) {
23
+ return url.protocol === 'file:';
24
+ }
25
+ /**
26
+ * Returns "true" if protocol is valid.
27
+ *
28
+ * @param url URL.
29
+ * @returns "true" if valid.
30
+ */
31
+ static isSupportedProtocol(url) {
32
+ switch (url.protocol) {
33
+ case 'https:':
34
+ case 'http:':
35
+ case 'file:':
36
+ case undefined:
37
+ case '':
38
+ return true;
39
+ }
40
+ return false;
41
+ }
42
+ /**
43
+ * Returns host.
44
+ *
45
+ * @param url URL.
46
+ * @returns Host.
47
+ */
48
+ static getHost(url) {
49
+ switch (url.protocol) {
50
+ case 'http:':
51
+ case 'https:':
52
+ return url.hostname;
53
+ case undefined:
54
+ case '':
55
+ return 'localhost';
56
+ default:
57
+ return null;
58
+ }
59
+ }
60
+ }
61
+ exports.default = XMLHttpRequestURLUtility;
62
+ //# sourceMappingURL=XMLHttpRequestURLUtility.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XMLHttpRequestURLUtility.js","sourceRoot":"","sources":["../../../src/xml-http-request/utilities/XMLHttpRequestURLUtility.ts"],"names":[],"mappings":";;AAEA;;GAEG;AACH,MAAqB,wBAAwB;IAC5C;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,GAAQ;QAC3B,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC;IAClC,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,OAAO,CAAC,GAAQ;QAC7B,OAAO,GAAG,CAAC,QAAQ,KAAK,OAAO,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,mBAAmB,CAAC,GAAQ;QACzC,QAAQ,GAAG,CAAC,QAAQ,EAAE;YACrB,KAAK,QAAQ,CAAC;YACd,KAAK,OAAO,CAAC;YACb,KAAK,OAAO,CAAC;YACb,KAAK,SAAS,CAAC;YACf,KAAK,EAAE;gBACN,OAAO,IAAI,CAAC;SACb;QAED,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,OAAO,CAAC,GAAQ;QAC7B,QAAQ,GAAG,CAAC,QAAQ,EAAE;YACrB,KAAK,OAAO,CAAC;YACb,KAAK,QAAQ;gBACZ,OAAO,GAAG,CAAC,QAAQ,CAAC;YACrB,KAAK,SAAS,CAAC;YACf,KAAK,EAAE;gBACN,OAAO,WAAW,CAAC;YACpB;gBACC,OAAO,IAAI,CAAC;SACb;IACF,CAAC;CACD;AA1DD,2CA0DC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "happy-dom",
3
- "version": "7.7.1",
3
+ "version": "7.8.0",
4
4
  "license": "MIT",
5
5
  "homepage": "https://github.com/capricorn86/happy-dom",
6
6
  "repository": "https://github.com/capricorn86/happy-dom",
@@ -75,5 +75,5 @@
75
75
  "ts-jest": "^27.1.3",
76
76
  "typescript": "^4.6.2"
77
77
  },
78
- "gitHead": "f9e61f10ae1a1d9e1d05d6a2f1b4896dc9e2434a"
78
+ "gitHead": "75d996d3778531592ea945c2d245b25ad0e87190"
79
79
  }
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export default class AsyncTaskManager {
5
5
  private static taskID = 0;
6
- private runningTasks: number[] = [];
6
+ private runningTasks: { [k: string]: () => void } = {};
7
7
  private runningTimers: NodeJS.Timeout[] = [];
8
8
  private queue: { resolve: () => void; reject: (error: Error) => void }[] = [];
9
9
 
@@ -24,21 +24,27 @@ export default class AsyncTaskManager {
24
24
  }
25
25
 
26
26
  /**
27
- * Cancels all tasks.
27
+ * Ends all tasks.
28
28
  *
29
29
  * @param [error] Error.
30
30
  */
31
31
  public cancelAll(error?: Error): void {
32
- for (const timerID of this.runningTimers) {
33
- global.clearTimeout(timerID);
34
- }
35
-
32
+ const runningTimers = this.runningTimers;
33
+ const runningTasks = this.runningTasks;
36
34
  const promises = this.queue;
37
35
 
38
- this.runningTasks = [];
36
+ this.runningTasks = {};
39
37
  this.runningTimers = [];
40
38
  this.queue = [];
41
39
 
40
+ for (const timer of runningTimers) {
41
+ global.clearTimeout(timer);
42
+ }
43
+
44
+ for (const key of Object.keys(runningTasks)) {
45
+ runningTasks[key]();
46
+ }
47
+
42
48
  for (const promise of promises) {
43
49
  if (error) {
44
50
  promise.reject(error);
@@ -67,7 +73,7 @@ export default class AsyncTaskManager {
67
73
  if (index !== -1) {
68
74
  this.runningTimers.splice(index, 1);
69
75
  }
70
- if (!this.runningTasks.length && !this.runningTimers.length) {
76
+ if (!Object.keys(this.runningTasks).length && !this.runningTimers.length) {
71
77
  this.cancelAll();
72
78
  }
73
79
  }
@@ -75,11 +81,12 @@ export default class AsyncTaskManager {
75
81
  /**
76
82
  * Starts an async task.
77
83
  *
84
+ * @param abortHandler Abort handler.
78
85
  * @returns Task ID.
79
86
  */
80
- public startTask(): number {
87
+ public startTask(abortHandler?: () => void): number {
81
88
  const taskID = this.newTaskID();
82
- this.runningTasks.push(taskID);
89
+ this.runningTasks[taskID] = abortHandler ? abortHandler : () => {};
83
90
  return taskID;
84
91
  }
85
92
 
@@ -89,12 +96,12 @@ export default class AsyncTaskManager {
89
96
  * @param taskID Task ID.
90
97
  */
91
98
  public endTask(taskID: number): void {
92
- const index = this.runningTasks.indexOf(taskID);
93
- if (index !== -1) {
94
- this.runningTasks.splice(index, 1);
95
- }
96
- if (!this.runningTasks.length && !this.runningTimers.length) {
97
- this.cancelAll();
99
+ if (this.runningTasks[taskID]) {
100
+ delete this.runningTasks[taskID];
101
+
102
+ if (!Object.keys(this.runningTasks).length && !this.runningTimers.length) {
103
+ this.cancelAll();
104
+ }
98
105
  }
99
106
  }
100
107
 
@@ -104,16 +111,7 @@ export default class AsyncTaskManager {
104
111
  * @returns Count.
105
112
  */
106
113
  public getTaskCount(): number {
107
- return this.runningTasks.length;
108
- }
109
-
110
- /**
111
- * Returns the amount of running timers.
112
- *
113
- * @returns Count.
114
- */
115
- public getTimerCount(): number {
116
- return this.runningTimers.length;
114
+ return Object.keys(this.runningTasks).length;
117
115
  }
118
116
 
119
117
  /**