happy-dom 8.8.0 → 9.0.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 (364) hide show
  1. package/README.md +2 -2
  2. package/lib/cookie/CookieJar.js +1 -1
  3. package/lib/cookie/CookieJar.js.map +1 -1
  4. package/lib/dom-token-list/DOMTokenList.js +24 -20
  5. package/lib/dom-token-list/DOMTokenList.js.map +1 -1
  6. package/lib/event/EventTarget.js +6 -3
  7. package/lib/event/EventTarget.js.map +1 -1
  8. package/lib/exception/DOMExceptionNameEnum.d.ts +5 -1
  9. package/lib/exception/DOMExceptionNameEnum.js +4 -0
  10. package/lib/exception/DOMExceptionNameEnum.js.map +1 -1
  11. package/lib/fetch/AbortController.d.ts +19 -0
  12. package/lib/fetch/AbortController.js +30 -0
  13. package/lib/fetch/AbortController.js.map +1 -0
  14. package/lib/fetch/AbortSignal.d.ts +25 -0
  15. package/lib/fetch/AbortSignal.js +51 -0
  16. package/lib/fetch/AbortSignal.js.map +1 -0
  17. package/lib/fetch/Fetch.d.ts +117 -0
  18. package/lib/fetch/Fetch.js +530 -0
  19. package/lib/fetch/Fetch.js.map +1 -0
  20. package/lib/fetch/Headers.d.ts +81 -3
  21. package/lib/fetch/Headers.js +139 -24
  22. package/lib/fetch/Headers.js.map +1 -1
  23. package/lib/fetch/Request.d.ts +56 -32
  24. package/lib/fetch/Request.js +165 -110
  25. package/lib/fetch/Request.js.map +1 -1
  26. package/lib/fetch/{ResourceFetchHandler.d.ts → ResourceFetch.d.ts} +1 -1
  27. package/lib/fetch/{ResourceFetchHandler.js → ResourceFetch.js} +5 -5
  28. package/lib/fetch/ResourceFetch.js.map +1 -0
  29. package/lib/fetch/Response.d.ts +60 -26
  30. package/lib/fetch/Response.js +196 -104
  31. package/lib/fetch/Response.js.map +1 -1
  32. package/lib/fetch/data-uri/DataURIParser.d.ts +20 -0
  33. package/lib/fetch/data-uri/DataURIParser.js +60 -0
  34. package/lib/fetch/data-uri/DataURIParser.js.map +1 -0
  35. package/lib/fetch/multipart/MultipartFormDataParser.d.ts +40 -0
  36. package/lib/fetch/multipart/MultipartFormDataParser.js +81 -0
  37. package/lib/fetch/multipart/MultipartFormDataParser.js.map +1 -0
  38. package/lib/fetch/multipart/MultipartReader.d.ts +49 -0
  39. package/lib/fetch/multipart/MultipartReader.js +178 -0
  40. package/lib/fetch/multipart/MultipartReader.js.map +1 -0
  41. package/lib/fetch/types/IHeaders.d.ts +71 -0
  42. package/lib/fetch/{IHeaders.js.map → types/IHeaders.js.map} +1 -1
  43. package/lib/fetch/types/IHeadersInit.js.map +1 -0
  44. package/lib/fetch/types/IRequest.d.ts +60 -0
  45. package/lib/fetch/{IRequest.js.map → types/IRequest.js.map} +1 -1
  46. package/lib/fetch/types/IRequestBody.d.ts +7 -0
  47. package/lib/fetch/{IBody.js → types/IRequestBody.js} +1 -1
  48. package/lib/fetch/types/IRequestBody.js.map +1 -0
  49. package/lib/fetch/types/IRequestCredentials.d.ts +2 -0
  50. package/lib/fetch/types/IRequestCredentials.js +3 -0
  51. package/lib/fetch/types/IRequestCredentials.js.map +1 -0
  52. package/lib/fetch/{RequestInfo.d.ts → types/IRequestInfo.d.ts} +2 -2
  53. package/lib/fetch/types/IRequestInfo.js +3 -0
  54. package/lib/fetch/types/IRequestInfo.js.map +1 -0
  55. package/lib/fetch/types/IRequestInit.d.ts +21 -0
  56. package/lib/fetch/types/IRequestInit.js.map +1 -0
  57. package/lib/fetch/types/IRequestRedirect.d.ts +2 -0
  58. package/lib/fetch/types/IRequestRedirect.js +3 -0
  59. package/lib/fetch/types/IRequestRedirect.js.map +1 -0
  60. package/lib/fetch/types/IRequestReferrerPolicy.d.ts +2 -0
  61. package/lib/fetch/types/IRequestReferrerPolicy.js +3 -0
  62. package/lib/fetch/types/IRequestReferrerPolicy.js.map +1 -0
  63. package/lib/fetch/types/IResponse.d.ts +27 -0
  64. package/lib/fetch/{IResponse.js.map → types/IResponse.js.map} +1 -1
  65. package/lib/fetch/types/IResponseBody.d.ts +7 -0
  66. package/lib/fetch/types/IResponseBody.js +3 -0
  67. package/lib/fetch/types/IResponseBody.js.map +1 -0
  68. package/lib/fetch/types/IResponseInit.d.ts +9 -0
  69. package/lib/fetch/types/IResponseInit.js.map +1 -0
  70. package/lib/fetch/utilities/FetchBodyUtility.d.ts +44 -0
  71. package/lib/fetch/utilities/FetchBodyUtility.js +156 -0
  72. package/lib/fetch/utilities/FetchBodyUtility.js.map +1 -0
  73. package/lib/fetch/utilities/FetchCORSUtility.d.ts +12 -0
  74. package/lib/fetch/utilities/FetchCORSUtility.js +20 -0
  75. package/lib/fetch/utilities/FetchCORSUtility.js.map +1 -0
  76. package/lib/fetch/utilities/FetchRequestHeaderUtility.d.ts +12 -0
  77. package/lib/fetch/utilities/FetchRequestHeaderUtility.js +45 -0
  78. package/lib/fetch/utilities/FetchRequestHeaderUtility.js.map +1 -0
  79. package/lib/fetch/utilities/FetchRequestReferrerUtility.d.ts +55 -0
  80. package/lib/fetch/utilities/FetchRequestReferrerUtility.js +194 -0
  81. package/lib/fetch/utilities/FetchRequestReferrerUtility.js.map +1 -0
  82. package/lib/fetch/utilities/FetchRequestValidationUtility.d.ts +38 -0
  83. package/lib/fetch/utilities/FetchRequestValidationUtility.js +70 -0
  84. package/lib/fetch/utilities/FetchRequestValidationUtility.js.map +1 -0
  85. package/lib/file/Blob.d.ts +2 -2
  86. package/lib/file/Blob.js +1 -1
  87. package/lib/file/Blob.js.map +1 -1
  88. package/lib/file/File.d.ts +2 -1
  89. package/lib/file/File.js.map +1 -1
  90. package/lib/form-data/FormData.d.ts +98 -0
  91. package/lib/form-data/FormData.js +212 -0
  92. package/lib/form-data/FormData.js.map +1 -0
  93. package/lib/index.d.ts +14 -1
  94. package/lib/index.js +20 -2
  95. package/lib/index.js.map +1 -1
  96. package/lib/nodes/document/Document.d.ts +5 -17
  97. package/lib/nodes/document/Document.js +11 -54
  98. package/lib/nodes/document/Document.js.map +1 -1
  99. package/lib/nodes/document/IDocument.d.ts +1 -1
  100. package/lib/nodes/document-fragment/DocumentFragment.d.ts +3 -14
  101. package/lib/nodes/document-fragment/DocumentFragment.js +7 -51
  102. package/lib/nodes/document-fragment/DocumentFragment.js.map +1 -1
  103. package/lib/nodes/document-fragment/IDocumentFragment.d.ts +2 -1
  104. package/lib/nodes/element/Element.d.ts +8 -8
  105. package/lib/nodes/element/Element.js +28 -45
  106. package/lib/nodes/element/Element.js.map +1 -1
  107. package/lib/nodes/element/ElementUtility.d.ts +32 -0
  108. package/lib/nodes/element/ElementUtility.js +105 -0
  109. package/lib/nodes/element/ElementUtility.js.map +1 -0
  110. package/lib/nodes/element/HTMLCollection.d.ts +26 -3
  111. package/lib/nodes/element/HTMLCollection.js +51 -0
  112. package/lib/nodes/element/HTMLCollection.js.map +1 -1
  113. package/lib/nodes/element/IHTMLCollection.d.ts +9 -2
  114. package/lib/nodes/html-anchor-element/HTMLAnchorElement.js +24 -24
  115. package/lib/nodes/html-anchor-element/HTMLAnchorElement.js.map +1 -1
  116. package/lib/nodes/html-audio-element/Audio.d.ts +15 -0
  117. package/lib/nodes/html-audio-element/Audio.js +27 -0
  118. package/lib/nodes/html-audio-element/Audio.js.map +1 -0
  119. package/lib/nodes/html-base-element/HTMLBaseElement.js +4 -4
  120. package/lib/nodes/html-base-element/HTMLBaseElement.js.map +1 -1
  121. package/lib/nodes/html-button-element/HTMLButtonElement.d.ts +79 -3
  122. package/lib/nodes/html-button-element/HTMLButtonElement.js +158 -10
  123. package/lib/nodes/html-button-element/HTMLButtonElement.js.map +1 -1
  124. package/lib/nodes/html-button-element/IHTMLButtonElement.d.ts +28 -2
  125. package/lib/nodes/html-dialog-element/HTMLDialogElement.js +3 -3
  126. package/lib/nodes/html-dialog-element/HTMLDialogElement.js.map +1 -1
  127. package/lib/nodes/html-element/HTMLElement.js +12 -12
  128. package/lib/nodes/html-element/HTMLElement.js.map +1 -1
  129. package/lib/nodes/html-form-element/HTMLFormControlsCollection.d.ts +32 -0
  130. package/lib/nodes/html-form-element/HTMLFormControlsCollection.js +58 -0
  131. package/lib/nodes/html-form-element/HTMLFormControlsCollection.js.map +1 -0
  132. package/lib/nodes/html-form-element/HTMLFormElement.d.ts +37 -17
  133. package/lib/nodes/html-form-element/HTMLFormElement.js +128 -37
  134. package/lib/nodes/html-form-element/HTMLFormElement.js.map +1 -1
  135. package/lib/nodes/html-form-element/IHTMLFormControlsCollection.d.ts +25 -0
  136. package/lib/nodes/html-form-element/IHTMLFormControlsCollection.js +3 -0
  137. package/lib/nodes/html-form-element/IHTMLFormControlsCollection.js.map +1 -0
  138. package/lib/nodes/html-form-element/IHTMLFormElement.d.ts +16 -6
  139. package/lib/nodes/html-form-element/IRadioNodeList.d.ts +15 -0
  140. package/lib/nodes/html-form-element/IRadioNodeList.js +3 -0
  141. package/lib/nodes/html-form-element/IRadioNodeList.js.map +1 -0
  142. package/lib/nodes/html-form-element/RadioNodeList.d.ts +16 -0
  143. package/lib/nodes/html-form-element/RadioNodeList.js +28 -0
  144. package/lib/nodes/html-form-element/RadioNodeList.js.map +1 -0
  145. package/lib/nodes/html-image-element/HTMLImageElement.js +19 -19
  146. package/lib/nodes/html-image-element/HTMLImageElement.js.map +1 -1
  147. package/lib/nodes/html-input-element/HTMLInputElement.d.ts +43 -19
  148. package/lib/nodes/html-input-element/HTMLInputElement.js +206 -111
  149. package/lib/nodes/html-input-element/HTMLInputElement.js.map +1 -1
  150. package/lib/nodes/html-input-element/IHTMLInputElement.d.ts +14 -1
  151. package/lib/nodes/html-label-element/HTMLLabelElement.js +3 -7
  152. package/lib/nodes/html-label-element/HTMLLabelElement.js.map +1 -1
  153. package/lib/nodes/html-link-element/HTMLLinkElement.js +21 -21
  154. package/lib/nodes/html-link-element/HTMLLinkElement.js.map +1 -1
  155. package/lib/nodes/html-media-element/HTMLMediaElement.js +21 -21
  156. package/lib/nodes/html-media-element/HTMLMediaElement.js.map +1 -1
  157. package/lib/nodes/html-meta-element/HTMLMetaElement.js +8 -8
  158. package/lib/nodes/html-meta-element/HTMLMetaElement.js.map +1 -1
  159. package/lib/nodes/html-opt-group-element/HTMLOptGroupElement.js +6 -6
  160. package/lib/nodes/html-opt-group-element/HTMLOptGroupElement.js.map +1 -1
  161. package/lib/nodes/html-option-element/HTMLOptionElement.d.ts +3 -4
  162. package/lib/nodes/html-option-element/HTMLOptionElement.js +26 -29
  163. package/lib/nodes/html-option-element/HTMLOptionElement.js.map +1 -1
  164. package/lib/nodes/html-script-element/HTMLScriptElement.js +16 -16
  165. package/lib/nodes/html-script-element/HTMLScriptElement.js.map +1 -1
  166. package/lib/nodes/html-script-element/ScriptUtility.js +5 -5
  167. package/lib/nodes/html-script-element/ScriptUtility.js.map +1 -1
  168. package/lib/nodes/{html-option-element → html-select-element}/HTMLOptionsCollection.d.ts +5 -6
  169. package/lib/nodes/{html-option-element → html-select-element}/HTMLOptionsCollection.js.map +1 -1
  170. package/lib/nodes/html-select-element/HTMLSelectElement.d.ts +42 -41
  171. package/lib/nodes/html-select-element/HTMLSelectElement.js +134 -138
  172. package/lib/nodes/html-select-element/HTMLSelectElement.js.map +1 -1
  173. package/lib/nodes/{html-option-element → html-select-element}/IHTMLOptionsCollection.d.ts +4 -5
  174. package/lib/nodes/html-select-element/IHTMLOptionsCollection.js.map +1 -0
  175. package/lib/nodes/html-select-element/IHTMLSelectElement.d.ts +22 -2
  176. package/lib/nodes/html-slot-element/HTMLSlotElement.js +2 -2
  177. package/lib/nodes/html-slot-element/HTMLSlotElement.js.map +1 -1
  178. package/lib/nodes/html-style-element/HTMLStyleElement.js +7 -7
  179. package/lib/nodes/html-style-element/HTMLStyleElement.js.map +1 -1
  180. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.d.ts +55 -2
  181. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.js +150 -40
  182. package/lib/nodes/html-text-area-element/HTMLTextAreaElement.js.map +1 -1
  183. package/lib/nodes/html-text-area-element/IHTMLTextAreaElement.d.ts +16 -0
  184. package/lib/nodes/node/Node.d.ts +12 -1
  185. package/lib/nodes/node/Node.js +50 -4
  186. package/lib/nodes/node/Node.js.map +1 -1
  187. package/lib/nodes/node/NodeList.d.ts +2 -3
  188. package/lib/nodes/node/NodeList.js.map +1 -1
  189. package/lib/nodes/parent-node/IParentNode.d.ts +4 -4
  190. package/lib/nodes/parent-node/ParentNodeUtility.d.ts +3 -3
  191. package/lib/nodes/parent-node/ParentNodeUtility.js +13 -11
  192. package/lib/nodes/parent-node/ParentNodeUtility.js.map +1 -1
  193. package/lib/nodes/text/Text.d.ts +13 -0
  194. package/lib/nodes/text/Text.js +30 -0
  195. package/lib/nodes/text/Text.js.map +1 -1
  196. package/lib/query-selector/QuerySelector.js +2 -2
  197. package/lib/query-selector/QuerySelector.js.map +1 -1
  198. package/lib/query-selector/SelectorItem.js +2 -0
  199. package/lib/query-selector/SelectorItem.js.map +1 -1
  200. package/lib/validity-state/ValidityState.d.ts +87 -0
  201. package/lib/validity-state/ValidityState.js +171 -0
  202. package/lib/validity-state/ValidityState.js.map +1 -0
  203. package/lib/window/GlobalWindow.d.ts +0 -8
  204. package/lib/window/GlobalWindow.js +0 -2
  205. package/lib/window/GlobalWindow.js.map +1 -1
  206. package/lib/window/INodeJSGlobal.d.ts +71 -0
  207. package/lib/window/INodeJSGlobal.js +2 -0
  208. package/lib/window/INodeJSGlobal.js.map +1 -0
  209. package/lib/window/IWindow.d.ts +30 -10
  210. package/lib/window/Window.d.ts +37 -20
  211. package/lib/window/Window.js +22 -10
  212. package/lib/window/Window.js.map +1 -1
  213. package/lib/xml-http-request/XMLHttpRequest.js +20 -12
  214. package/lib/xml-http-request/XMLHttpRequest.js.map +1 -1
  215. package/lib/xml-parser/XMLParser.js +1 -1
  216. package/lib/xml-parser/XMLParser.js.map +1 -1
  217. package/package.json +2 -3
  218. package/src/cookie/CookieJar.ts +1 -1
  219. package/src/dom-token-list/DOMTokenList.ts +24 -20
  220. package/src/event/EventTarget.ts +7 -3
  221. package/src/exception/DOMExceptionNameEnum.ts +5 -1
  222. package/src/fetch/AbortController.ts +26 -0
  223. package/src/fetch/AbortSignal.ts +44 -0
  224. package/src/fetch/Fetch.ts +666 -0
  225. package/src/fetch/Headers.ts +151 -3
  226. package/src/fetch/Request.ts +226 -94
  227. package/src/fetch/{ResourceFetchHandler.ts → ResourceFetch.ts} +3 -3
  228. package/src/fetch/Response.ts +252 -89
  229. package/src/fetch/data-uri/DataURIParser.ts +66 -0
  230. package/src/fetch/multipart/MultipartFormDataParser.ts +113 -0
  231. package/src/fetch/multipart/MultipartReader.ts +217 -0
  232. package/src/fetch/types/IHeaders.ts +80 -0
  233. package/src/fetch/types/IRequest.ts +65 -0
  234. package/src/fetch/types/IRequestBody.ts +15 -0
  235. package/src/fetch/types/IRequestCredentials.ts +2 -0
  236. package/src/fetch/types/IRequestInfo.ts +6 -0
  237. package/src/fetch/types/IRequestInit.ts +21 -0
  238. package/src/fetch/types/IRequestRedirect.ts +3 -0
  239. package/src/fetch/types/IRequestReferrerPolicy.ts +11 -0
  240. package/src/fetch/types/IResponse.ts +27 -0
  241. package/src/fetch/types/IResponseBody.ts +15 -0
  242. package/src/fetch/types/IResponseInit.ts +10 -0
  243. package/src/fetch/utilities/FetchBodyUtility.ts +175 -0
  244. package/src/fetch/utilities/FetchCORSUtility.ts +18 -0
  245. package/src/fetch/utilities/FetchRequestHeaderUtility.ts +47 -0
  246. package/src/fetch/utilities/FetchRequestReferrerUtility.ts +241 -0
  247. package/src/fetch/utilities/FetchRequestValidationUtility.ts +82 -0
  248. package/src/file/Blob.ts +2 -2
  249. package/src/file/File.ts +5 -1
  250. package/src/form-data/FormData.ts +237 -0
  251. package/src/index.ts +27 -1
  252. package/src/nodes/document/Document.ts +23 -64
  253. package/src/nodes/document/IDocument.ts +1 -1
  254. package/src/nodes/document-fragment/DocumentFragment.ts +9 -59
  255. package/src/nodes/document-fragment/IDocumentFragment.ts +2 -1
  256. package/src/nodes/element/Element.ts +43 -56
  257. package/src/nodes/element/ElementUtility.ts +137 -0
  258. package/src/nodes/element/HTMLCollection.ts +60 -3
  259. package/src/nodes/element/IHTMLCollection.ts +10 -2
  260. package/src/nodes/html-anchor-element/HTMLAnchorElement.ts +24 -24
  261. package/src/nodes/html-audio-element/Audio.ts +22 -0
  262. package/src/nodes/html-base-element/HTMLBaseElement.ts +4 -4
  263. package/src/nodes/html-button-element/HTMLButtonElement.ts +184 -10
  264. package/src/nodes/html-button-element/IHTMLButtonElement.ts +31 -2
  265. package/src/nodes/html-dialog-element/HTMLDialogElement.ts +3 -3
  266. package/src/nodes/html-element/HTMLElement.ts +12 -12
  267. package/src/nodes/html-form-element/HTMLFormControlsCollection.ts +76 -0
  268. package/src/nodes/html-form-element/HTMLFormElement.ts +147 -41
  269. package/src/nodes/html-form-element/IHTMLFormControlsCollection.ts +45 -0
  270. package/src/nodes/html-form-element/IHTMLFormElement.ts +17 -6
  271. package/src/nodes/html-form-element/IRadioNodeList.ts +16 -0
  272. package/src/nodes/html-form-element/RadioNodeList.ts +24 -0
  273. package/src/nodes/html-image-element/HTMLImageElement.ts +19 -19
  274. package/src/nodes/html-input-element/HTMLInputElement.ts +232 -113
  275. package/src/nodes/html-input-element/IHTMLInputElement.ts +20 -1
  276. package/src/nodes/html-label-element/HTMLLabelElement.ts +3 -7
  277. package/src/nodes/html-link-element/HTMLLinkElement.ts +21 -21
  278. package/src/nodes/html-media-element/HTMLMediaElement.ts +21 -21
  279. package/src/nodes/html-meta-element/HTMLMetaElement.ts +8 -8
  280. package/src/nodes/html-opt-group-element/HTMLOptGroupElement.ts +6 -6
  281. package/src/nodes/html-option-element/HTMLOptionElement.ts +29 -30
  282. package/src/nodes/html-script-element/HTMLScriptElement.ts +16 -16
  283. package/src/nodes/html-script-element/ScriptUtility.ts +5 -5
  284. package/src/nodes/{html-option-element → html-select-element}/HTMLOptionsCollection.ts +5 -9
  285. package/src/nodes/html-select-element/HTMLSelectElement.ts +159 -170
  286. package/src/nodes/{html-option-element → html-select-element}/IHTMLOptionsCollection.ts +4 -8
  287. package/src/nodes/html-select-element/IHTMLSelectElement.ts +25 -2
  288. package/src/nodes/html-slot-element/HTMLSlotElement.ts +2 -2
  289. package/src/nodes/html-style-element/HTMLStyleElement.ts +7 -7
  290. package/src/nodes/html-text-area-element/HTMLTextAreaElement.ts +174 -41
  291. package/src/nodes/html-text-area-element/IHTMLTextAreaElement.ts +18 -0
  292. package/src/nodes/node/Node.ts +61 -6
  293. package/src/nodes/node/NodeList.ts +2 -3
  294. package/src/nodes/parent-node/IParentNode.ts +7 -4
  295. package/src/nodes/parent-node/ParentNodeUtility.ts +25 -15
  296. package/src/nodes/text/Text.ts +38 -0
  297. package/src/query-selector/QuerySelector.ts +2 -2
  298. package/src/query-selector/SelectorItem.ts +3 -0
  299. package/src/validity-state/ValidityState.ts +211 -0
  300. package/src/window/GlobalWindow.ts +0 -2
  301. package/src/window/INodeJSGlobal.ts +70 -0
  302. package/src/window/IWindow.ts +32 -10
  303. package/src/window/Window.ts +43 -21
  304. package/src/xml-http-request/XMLHttpRequest.ts +27 -26
  305. package/src/xml-parser/XMLParser.ts +1 -1
  306. package/lib/fetch/FetchHandler.d.ts +0 -18
  307. package/lib/fetch/FetchHandler.js +0 -83
  308. package/lib/fetch/FetchHandler.js.map +0 -1
  309. package/lib/fetch/IAbortSignal.d.ts +0 -16
  310. package/lib/fetch/IAbortSignal.js +0 -4
  311. package/lib/fetch/IAbortSignal.js.map +0 -1
  312. package/lib/fetch/IBody.d.ts +0 -17
  313. package/lib/fetch/IBody.js.map +0 -1
  314. package/lib/fetch/IHeaders.d.ts +0 -18
  315. package/lib/fetch/IHeadersInit.js.map +0 -1
  316. package/lib/fetch/IRequest.d.ts +0 -18
  317. package/lib/fetch/IRequestInit.d.ts +0 -16
  318. package/lib/fetch/IRequestInit.js.map +0 -1
  319. package/lib/fetch/IResponse.d.ts +0 -20
  320. package/lib/fetch/IResponseInit.d.ts +0 -9
  321. package/lib/fetch/IResponseInit.js.map +0 -1
  322. package/lib/fetch/RequestInfo.js +0 -3
  323. package/lib/fetch/RequestInfo.js.map +0 -1
  324. package/lib/fetch/ResourceFetchHandler.js.map +0 -1
  325. package/lib/form-data/IFormData.d.ts +0 -32
  326. package/lib/form-data/IFormData.js +0 -3
  327. package/lib/form-data/IFormData.js.map +0 -1
  328. package/lib/location/RelativeURL.d.ts +0 -15
  329. package/lib/location/RelativeURL.js +0 -19
  330. package/lib/location/RelativeURL.js.map +0 -1
  331. package/lib/nodes/element/HTMLCollectionFactory.d.ts +0 -21
  332. package/lib/nodes/element/HTMLCollectionFactory.js +0 -31
  333. package/lib/nodes/element/HTMLCollectionFactory.js.map +0 -1
  334. package/lib/nodes/html-option-element/IHTMLOptionsCollection.js.map +0 -1
  335. package/lib/nodes/node/NodeListFactory.d.ts +0 -21
  336. package/lib/nodes/node/NodeListFactory.js +0 -31
  337. package/lib/nodes/node/NodeListFactory.js.map +0 -1
  338. package/lib/nodes/validity-state/ValidityState.d.ts +0 -52
  339. package/lib/nodes/validity-state/ValidityState.js +0 -81
  340. package/lib/nodes/validity-state/ValidityState.js.map +0 -1
  341. package/src/fetch/FetchHandler.ts +0 -90
  342. package/src/fetch/IAbortSignal.ts +0 -34
  343. package/src/fetch/IBody.ts +0 -18
  344. package/src/fetch/IHeaders.ts +0 -18
  345. package/src/fetch/IRequest.ts +0 -59
  346. package/src/fetch/IRequestInit.ts +0 -41
  347. package/src/fetch/IResponse.ts +0 -22
  348. package/src/fetch/IResponseInit.ts +0 -10
  349. package/src/fetch/RequestInfo.ts +0 -6
  350. package/src/form-data/IFormData.ts +0 -33
  351. package/src/location/RelativeURL.ts +0 -17
  352. package/src/nodes/element/HTMLCollectionFactory.ts +0 -31
  353. package/src/nodes/node/NodeListFactory.ts +0 -31
  354. package/src/nodes/validity-state/ValidityState.ts +0 -84
  355. /package/lib/fetch/{IHeaders.js → types/IHeaders.js} +0 -0
  356. /package/lib/fetch/{IHeadersInit.d.ts → types/IHeadersInit.d.ts} +0 -0
  357. /package/lib/fetch/{IHeadersInit.js → types/IHeadersInit.js} +0 -0
  358. /package/lib/fetch/{IRequest.js → types/IRequest.js} +0 -0
  359. /package/lib/fetch/{IRequestInit.js → types/IRequestInit.js} +0 -0
  360. /package/lib/fetch/{IResponse.js → types/IResponse.js} +0 -0
  361. /package/lib/fetch/{IResponseInit.js → types/IResponseInit.js} +0 -0
  362. /package/lib/nodes/{html-option-element → html-select-element}/HTMLOptionsCollection.js +0 -0
  363. /package/lib/nodes/{html-option-element → html-select-element}/IHTMLOptionsCollection.js +0 -0
  364. /package/src/fetch/{IHeadersInit.ts → types/IHeadersInit.ts} +0 -0
@@ -17,7 +17,7 @@ class HTMLOptGroupElement extends HTMLElement_1.default {
17
17
  * @returns Label.
18
18
  */
19
19
  get label() {
20
- return this.getAttributeNS(null, 'label') || '';
20
+ return this.getAttribute('label') || '';
21
21
  }
22
22
  /**
23
23
  * Sets label.
@@ -26,10 +26,10 @@ class HTMLOptGroupElement extends HTMLElement_1.default {
26
26
  */
27
27
  set label(label) {
28
28
  if (!label) {
29
- this.removeAttributeNS(null, 'label');
29
+ this.removeAttribute('label');
30
30
  }
31
31
  else {
32
- this.setAttributeNS(null, 'label', label);
32
+ this.setAttribute('label', label);
33
33
  }
34
34
  }
35
35
  /**
@@ -38,7 +38,7 @@ class HTMLOptGroupElement extends HTMLElement_1.default {
38
38
  * @returns Disabled.
39
39
  */
40
40
  get disabled() {
41
- return this.getAttributeNS(null, 'disabled') !== null;
41
+ return this.getAttribute('disabled') !== null;
42
42
  }
43
43
  /**
44
44
  * Sets disabled.
@@ -47,10 +47,10 @@ class HTMLOptGroupElement extends HTMLElement_1.default {
47
47
  */
48
48
  set disabled(disabled) {
49
49
  if (!disabled) {
50
- this.removeAttributeNS(null, 'disabled');
50
+ this.removeAttribute('disabled');
51
51
  }
52
52
  else {
53
- this.setAttributeNS(null, 'disabled', '');
53
+ this.setAttribute('disabled', '');
54
54
  }
55
55
  }
56
56
  }
@@ -1 +1 @@
1
- {"version":3,"file":"HTMLOptGroupElement.js","sourceRoot":"","sources":["../../../src/nodes/html-opt-group-element/HTMLOptGroupElement.ts"],"names":[],"mappings":";;;;;AAAA,8EAAsD;AAGtD;;;;;GAKG;AACH,MAAqB,mBAAoB,SAAQ,qBAAW;IAC3D;;;;OAIG;IACH,IAAW,KAAK;QACf,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;IACjD,CAAC;IAED;;;;OAIG;IACH,IAAW,KAAK,CAAC,KAAa;QAC7B,IAAI,CAAC,KAAK,EAAE;YACX,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SACtC;aAAM;YACN,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;SAC1C;IACF,CAAC;IAED;;;;OAIG;IACH,IAAW,QAAQ;QAClB,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC;IACvD,CAAC;IAED;;;;OAIG;IACH,IAAW,QAAQ,CAAC,QAAiB;QACpC,IAAI,CAAC,QAAQ,EAAE;YACd,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;SACzC;aAAM;YACN,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC;SAC1C;IACF,CAAC;CACD;AA5CD,sCA4CC"}
1
+ {"version":3,"file":"HTMLOptGroupElement.js","sourceRoot":"","sources":["../../../src/nodes/html-opt-group-element/HTMLOptGroupElement.ts"],"names":[],"mappings":";;;;;AAAA,8EAAsD;AAGtD;;;;;GAKG;AACH,MAAqB,mBAAoB,SAAQ,qBAAW;IAC3D;;;;OAIG;IACH,IAAW,KAAK;QACf,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACH,IAAW,KAAK,CAAC,KAAa;QAC7B,IAAI,CAAC,KAAK,EAAE;YACX,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;SAC9B;aAAM;YACN,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SAClC;IACF,CAAC;IAED;;;;OAIG;IACH,IAAW,QAAQ;QAClB,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;IAC/C,CAAC;IAED;;;;OAIG;IACH,IAAW,QAAQ,CAAC,QAAiB;QACpC,IAAI,CAAC,QAAQ,EAAE;YACd,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;SACjC;aAAM;YACN,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;SAClC;IACF,CAAC;CACD;AA5CD,sCA4CC"}
@@ -1,6 +1,7 @@
1
1
  import IAttr from '../attr/IAttr';
2
2
  import HTMLElement from '../html-element/HTMLElement';
3
3
  import IHTMLFormElement from '../html-form-element/IHTMLFormElement';
4
+ import INode from '../node/INode';
4
5
  import IHTMLOptionElement from './IHTMLOptionElement';
5
6
  /**
6
7
  * HTML Option Element.
@@ -81,9 +82,7 @@ export default class HTMLOptionElement extends HTMLElement implements IHTMLOptio
81
82
  */
82
83
  removeAttributeNode(attribute: IAttr): IAttr;
83
84
  /**
84
- * Returns select element.
85
- *
86
- * @returns Select element.
85
+ * @override
87
86
  */
88
- private _getSelectElement;
87
+ _connectToNode(parentNode?: INode): void;
89
88
  }
@@ -46,11 +46,7 @@ class HTMLOptionElement extends HTMLElement_1.default {
46
46
  * @returns Form.
47
47
  */
48
48
  get form() {
49
- let parent = this.parentNode;
50
- while (parent && parent.tagName !== 'FORM') {
51
- parent = parent.parentNode;
52
- }
53
- return parent;
49
+ return this._formNode;
54
50
  }
55
51
  /**
56
52
  * Returns selected.
@@ -66,11 +62,11 @@ class HTMLOptionElement extends HTMLElement_1.default {
66
62
  * @param selected Selected.
67
63
  */
68
64
  set selected(selected) {
69
- const selectElement = this._getSelectElement();
65
+ const selectNode = this._selectNode;
70
66
  this._dirtyness = true;
71
67
  this._selectedness = Boolean(selected);
72
- if (selectElement) {
73
- selectElement._resetOptionSelectednes(this._selectedness ? this : null);
68
+ if (selectNode) {
69
+ selectNode._updateOptionItems(this._selectedness ? this : null);
74
70
  }
75
71
  }
76
72
  /**
@@ -79,7 +75,7 @@ class HTMLOptionElement extends HTMLElement_1.default {
79
75
  * @returns Disabled.
80
76
  */
81
77
  get disabled() {
82
- return this.getAttributeNS(null, 'disabled') !== null;
78
+ return this.getAttribute('disabled') !== null;
83
79
  }
84
80
  /**
85
81
  * Sets disabled.
@@ -88,10 +84,10 @@ class HTMLOptionElement extends HTMLElement_1.default {
88
84
  */
89
85
  set disabled(disabled) {
90
86
  if (!disabled) {
91
- this.removeAttributeNS(null, 'disabled');
87
+ this.removeAttribute('disabled');
92
88
  }
93
89
  else {
94
- this.setAttributeNS(null, 'disabled', '');
90
+ this.setAttribute('disabled', '');
95
91
  }
96
92
  }
97
93
  /**
@@ -100,7 +96,7 @@ class HTMLOptionElement extends HTMLElement_1.default {
100
96
  * @returns Value.
101
97
  */
102
98
  get value() {
103
- return this.getAttributeNS(null, 'value') || this.textContent;
99
+ return this.getAttribute('value') || this.textContent;
104
100
  }
105
101
  /**
106
102
  * Sets value.
@@ -108,7 +104,7 @@ class HTMLOptionElement extends HTMLElement_1.default {
108
104
  * @param value Value.
109
105
  */
110
106
  set value(value) {
111
- this.setAttributeNS(null, 'value', value);
107
+ this.setAttribute('value', value);
112
108
  }
113
109
  /**
114
110
  * @override
@@ -118,10 +114,10 @@ class HTMLOptionElement extends HTMLElement_1.default {
118
114
  if (!this._dirtyness &&
119
115
  attribute.name === 'selected' &&
120
116
  replacedAttribute?.value !== attribute.value) {
121
- const selectElement = this._getSelectElement();
117
+ const selectNode = this._selectNode;
122
118
  this._selectedness = true;
123
- if (selectElement) {
124
- selectElement._resetOptionSelectednes(this);
119
+ if (selectNode) {
120
+ selectNode._updateOptionItems(this);
125
121
  }
126
122
  }
127
123
  return replacedAttribute;
@@ -132,26 +128,27 @@ class HTMLOptionElement extends HTMLElement_1.default {
132
128
  removeAttributeNode(attribute) {
133
129
  super.removeAttributeNode(attribute);
134
130
  if (!this._dirtyness && attribute.name === 'selected') {
135
- const selectElement = this._getSelectElement();
131
+ const selectNode = this._selectNode;
136
132
  this._selectedness = false;
137
- if (selectElement) {
138
- selectElement._resetOptionSelectednes();
133
+ if (selectNode) {
134
+ selectNode._updateOptionItems();
139
135
  }
140
136
  }
141
137
  return attribute;
142
138
  }
143
139
  /**
144
- * Returns select element.
145
- *
146
- * @returns Select element.
140
+ * @override
147
141
  */
148
- _getSelectElement() {
149
- const parentNode = this.parentNode;
150
- if (parentNode?.tagName === 'SELECT') {
151
- return parentNode;
152
- }
153
- if (parentNode?.parentNode?.tagName === 'SELECT') {
154
- return parentNode.parentNode;
142
+ _connectToNode(parentNode = null) {
143
+ const oldSelectNode = this._selectNode;
144
+ super._connectToNode(parentNode);
145
+ if (oldSelectNode !== this._selectNode) {
146
+ if (oldSelectNode) {
147
+ oldSelectNode._updateOptionItems();
148
+ }
149
+ if (this._selectNode) {
150
+ this._selectNode._updateOptionItems();
151
+ }
155
152
  }
156
153
  }
157
154
  }
@@ -1 +1 @@
1
- {"version":3,"file":"HTMLOptionElement.js","sourceRoot":"","sources":["../../../src/nodes/html-option-element/HTMLOptionElement.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HTMLOptionElement.js","sourceRoot":"","sources":["../../../src/nodes/html-option-element/HTMLOptionElement.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@ class HTMLScriptElement extends HTMLElement_1.default {
24
24
  * @returns Type.
25
25
  */
26
26
  get type() {
27
- return this.getAttributeNS(null, 'type') || '';
27
+ return this.getAttribute('type') || '';
28
28
  }
29
29
  /**
30
30
  * Sets type.
@@ -32,7 +32,7 @@ class HTMLScriptElement extends HTMLElement_1.default {
32
32
  * @param type Type.
33
33
  */
34
34
  set type(type) {
35
- this.setAttributeNS(null, 'type', type);
35
+ this.setAttribute('type', type);
36
36
  }
37
37
  /**
38
38
  * Returns source.
@@ -40,7 +40,7 @@ class HTMLScriptElement extends HTMLElement_1.default {
40
40
  * @returns Source.
41
41
  */
42
42
  get src() {
43
- return this.getAttributeNS(null, 'src') || '';
43
+ return this.getAttribute('src') || '';
44
44
  }
45
45
  /**
46
46
  * Sets source.
@@ -48,7 +48,7 @@ class HTMLScriptElement extends HTMLElement_1.default {
48
48
  * @param source Source.
49
49
  */
50
50
  set src(src) {
51
- this.setAttributeNS(null, 'src', src);
51
+ this.setAttribute('src', src);
52
52
  }
53
53
  /**
54
54
  * Returns charset.
@@ -56,7 +56,7 @@ class HTMLScriptElement extends HTMLElement_1.default {
56
56
  * @returns Charset.
57
57
  */
58
58
  get charset() {
59
- return this.getAttributeNS(null, 'charset') || '';
59
+ return this.getAttribute('charset') || '';
60
60
  }
61
61
  /**
62
62
  * Sets charset.
@@ -64,7 +64,7 @@ class HTMLScriptElement extends HTMLElement_1.default {
64
64
  * @param charset Charset.
65
65
  */
66
66
  set charset(charset) {
67
- this.setAttributeNS(null, 'charset', charset);
67
+ this.setAttribute('charset', charset);
68
68
  }
69
69
  /**
70
70
  * Returns lang.
@@ -72,7 +72,7 @@ class HTMLScriptElement extends HTMLElement_1.default {
72
72
  * @returns Lang.
73
73
  */
74
74
  get lang() {
75
- return this.getAttributeNS(null, 'lang') || '';
75
+ return this.getAttribute('lang') || '';
76
76
  }
77
77
  /**
78
78
  * Sets lang.
@@ -80,7 +80,7 @@ class HTMLScriptElement extends HTMLElement_1.default {
80
80
  * @param lang Lang.
81
81
  */
82
82
  set lang(lang) {
83
- this.setAttributeNS(null, 'lang', lang);
83
+ this.setAttribute('lang', lang);
84
84
  }
85
85
  /**
86
86
  * Returns async.
@@ -88,7 +88,7 @@ class HTMLScriptElement extends HTMLElement_1.default {
88
88
  * @returns Async.
89
89
  */
90
90
  get async() {
91
- return this.getAttributeNS(null, 'async') !== null;
91
+ return this.getAttribute('async') !== null;
92
92
  }
93
93
  /**
94
94
  * Sets async.
@@ -97,10 +97,10 @@ class HTMLScriptElement extends HTMLElement_1.default {
97
97
  */
98
98
  set async(async) {
99
99
  if (!async) {
100
- this.removeAttributeNS(null, 'async');
100
+ this.removeAttribute('async');
101
101
  }
102
102
  else {
103
- this.setAttributeNS(null, 'async', '');
103
+ this.setAttribute('async', '');
104
104
  }
105
105
  }
106
106
  /**
@@ -109,7 +109,7 @@ class HTMLScriptElement extends HTMLElement_1.default {
109
109
  * @returns Defer.
110
110
  */
111
111
  get defer() {
112
- return this.getAttributeNS(null, 'defer') !== null;
112
+ return this.getAttribute('defer') !== null;
113
113
  }
114
114
  /**
115
115
  * Sets defer.
@@ -118,10 +118,10 @@ class HTMLScriptElement extends HTMLElement_1.default {
118
118
  */
119
119
  set defer(defer) {
120
120
  if (!defer) {
121
- this.removeAttributeNS(null, 'defer');
121
+ this.removeAttribute('defer');
122
122
  }
123
123
  else {
124
- this.setAttributeNS(null, 'defer', '');
124
+ this.setAttribute('defer', '');
125
125
  }
126
126
  }
127
127
  /**
@@ -172,13 +172,13 @@ class HTMLScriptElement extends HTMLElement_1.default {
172
172
  const isParentConnected = parentNode ? parentNode.isConnected : false;
173
173
  super._connectToNode(parentNode);
174
174
  if (isParentConnected && isConnected !== isParentConnected && this._evaluateScript) {
175
- const src = this.getAttributeNS(null, 'src');
175
+ const src = this.getAttribute('src');
176
176
  if (src !== null) {
177
177
  ScriptUtility_1.default.loadExternalScript(this);
178
178
  }
179
179
  else if (!this.ownerDocument.defaultView.happyDOM.settings.disableJavaScriptEvaluation) {
180
180
  const textContent = this.textContent;
181
- const type = this.getAttributeNS(null, 'type');
181
+ const type = this.getAttribute('type');
182
182
  if (textContent &&
183
183
  (type === null ||
184
184
  type === 'application/x-ecmascript' ||
@@ -1 +1 @@
1
- {"version":3,"file":"HTMLScriptElement.js","sourceRoot":"","sources":["../../../src/nodes/html-script-element/HTMLScriptElement.ts"],"names":[],"mappings":";;;;;AACA,8EAAsD;AAEtD,oEAA4C;AAK5C;;;;;GAKG;AACH,MAAqB,iBAAkB,SAAQ,qBAAW;IAA1D;;QACQ,YAAO,GAAgC,IAAI,CAAC;QAC5C,WAAM,GAA2B,IAAI,CAAC;QACtC,oBAAe,GAAG,IAAI,CAAC;IAiM/B,CAAC;IA/LA;;;;OAIG;IACH,IAAW,IAAI;QACd,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;IAChD,CAAC;IAED;;;;OAIG;IACH,IAAW,IAAI,CAAC,IAAY;QAC3B,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACH,IAAW,GAAG;QACb,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;IAC/C,CAAC;IAED;;;;OAIG;IACH,IAAW,GAAG,CAAC,GAAW;QACzB,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IACvC,CAAC;IAED;;;;OAIG;IACH,IAAW,OAAO;QACjB,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC;IACnD,CAAC;IAED;;;;OAIG;IACH,IAAW,OAAO,CAAC,OAAe;QACjC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED;;;;OAIG;IACH,IAAW,IAAI;QACd,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;IAChD,CAAC;IAED;;;;OAIG;IACH,IAAW,IAAI,CAAC,IAAY;QAC3B,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACH,IAAW,KAAK;QACf,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACH,IAAW,KAAK,CAAC,KAAc;QAC9B,IAAI,CAAC,KAAK,EAAE;YACX,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SACtC;aAAM;YACN,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;SACvC;IACF,CAAC;IAED;;;;OAIG;IACH,IAAW,KAAK;QACf,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACH,IAAW,KAAK,CAAC,KAAc;QAC9B,IAAI,CAAC,KAAK,EAAE;YACX,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SACtC;aAAM;YACN,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;SACvC;IACF,CAAC;IAED;;;;OAIG;IACH,IAAW,IAAI;QACd,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACH,IAAW,IAAI,CAAC,IAAY;QAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IACzB,CAAC;IAED;;;;;;OAMG;IACI,gBAAgB,CAAC,SAAgB;QACvC,MAAM,iBAAiB,GAAG,KAAK,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAE5D,IAAI,SAAS,CAAC,IAAI,KAAK,KAAK,IAAI,SAAS,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE;YAC7E,uBAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;SACvC;QAED,OAAO,iBAAiB,CAAC;IAC1B,CAAC;IAED;;;;;;OAMG;IACI,SAAS,CAAC,IAAI,GAAG,KAAK;QAC5B,OAA2B,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IAED;;OAEG;IACa,cAAc,CAAC,aAAoB,IAAI;QACtD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACrC,MAAM,iBAAiB,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC;QAEtE,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAEjC,IAAI,iBAAiB,IAAI,WAAW,KAAK,iBAAiB,IAAI,IAAI,CAAC,eAAe,EAAE;YACnF,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAE7C,IAAI,GAAG,KAAK,IAAI,EAAE;gBACjB,uBAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;aACvC;iBAAM,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,2BAA2B,EAAE;gBACzF,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;gBACrC,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC/C,IACC,WAAW;oBACX,CAAC,IAAI,KAAK,IAAI;wBACb,IAAI,KAAK,0BAA0B;wBACnC,IAAI,KAAK,0BAA0B;wBACnC,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,EACnC;oBACD,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;iBACjD;aACD;SACD;IACF,CAAC;CACD;AApMD,oCAoMC"}
1
+ {"version":3,"file":"HTMLScriptElement.js","sourceRoot":"","sources":["../../../src/nodes/html-script-element/HTMLScriptElement.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const Event_1 = __importDefault(require("../../event/Event"));
7
7
  const ErrorEvent_1 = __importDefault(require("../../event/events/ErrorEvent"));
8
- const ResourceFetchHandler_1 = __importDefault(require("../../fetch/ResourceFetchHandler"));
8
+ const ResourceFetch_1 = __importDefault(require("../../fetch/ResourceFetch"));
9
9
  /**
10
10
  * Helper class for getting the URL relative to a Location object.
11
11
  */
@@ -18,8 +18,8 @@ class ScriptUtility {
18
18
  * @param element
19
19
  */
20
20
  static async loadExternalScript(element) {
21
- const src = element.getAttributeNS(null, 'src');
22
- const async = element.getAttributeNS(null, 'async') !== null;
21
+ const src = element.getAttribute('src');
22
+ const async = element.getAttribute('async') !== null;
23
23
  if (element.ownerDocument.defaultView.happyDOM.settings.disableJavaScriptFileLoading ||
24
24
  element.ownerDocument.defaultView.happyDOM.settings.disableJavaScriptEvaluation) {
25
25
  return;
@@ -28,7 +28,7 @@ class ScriptUtility {
28
28
  let code = null;
29
29
  element.ownerDocument._readyStateManager.startTask();
30
30
  try {
31
- code = await ResourceFetchHandler_1.default.fetch(element.ownerDocument, src);
31
+ code = await ResourceFetch_1.default.fetch(element.ownerDocument, src);
32
32
  }
33
33
  catch (error) {
34
34
  element.dispatchEvent(new ErrorEvent_1.default('error', {
@@ -53,7 +53,7 @@ class ScriptUtility {
53
53
  else {
54
54
  let code = null;
55
55
  try {
56
- code = ResourceFetchHandler_1.default.fetchSync(element.ownerDocument, src);
56
+ code = ResourceFetch_1.default.fetchSync(element.ownerDocument, src);
57
57
  }
58
58
  catch (error) {
59
59
  element.dispatchEvent(new ErrorEvent_1.default('error', {
@@ -1 +1 @@
1
- {"version":3,"file":"ScriptUtility.js","sourceRoot":"","sources":["../../../src/nodes/html-script-element/ScriptUtility.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ScriptUtility.js","sourceRoot":"","sources":["../../../src/nodes/html-script-element/ScriptUtility.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import HTMLCollection from '../element/HTMLCollection';
2
- import IHTMLOptGroupElement from '../html-opt-group-element/IHTMLOptGroupElement';
3
- import IHTMLSelectElement from '../html-select-element/IHTMLSelectElement';
4
- import IHTMLOptionElement from './IHTMLOptionElement';
2
+ import IHTMLSelectElement from './IHTMLSelectElement';
3
+ import IHTMLOptionElement from '../html-option-element/IHTMLOptionElement';
5
4
  import IHTMLOptionsCollection from './IHTMLOptionsCollection';
6
5
  /**
7
6
  * HTML Options Collection.
@@ -9,7 +8,7 @@ import IHTMLOptionsCollection from './IHTMLOptionsCollection';
9
8
  * Reference:
10
9
  * https://developer.mozilla.org/en-US/docs/Web/API/HTMLOptionsCollection.
11
10
  */
12
- export default class HTMLOptionsCollection extends HTMLCollection implements IHTMLOptionsCollection {
11
+ export default class HTMLOptionsCollection extends HTMLCollection<IHTMLOptionElement, IHTMLOptionElement> implements IHTMLOptionsCollection {
13
12
  private _selectElement;
14
13
  /**
15
14
  *
@@ -33,13 +32,13 @@ export default class HTMLOptionsCollection extends HTMLCollection implements IHT
33
32
  *
34
33
  * @param index Index.
35
34
  */
36
- item(index: number): IHTMLOptionElement | IHTMLOptGroupElement;
35
+ item(index: number): IHTMLOptionElement;
37
36
  /**
38
37
  *
39
38
  * @param element
40
39
  * @param before
41
40
  */
42
- add(element: IHTMLOptionElement | IHTMLOptGroupElement, before?: number | IHTMLOptionElement | IHTMLOptGroupElement): void;
41
+ add(element: IHTMLOptionElement, before?: number | IHTMLOptionElement): void;
43
42
  /**
44
43
  * Removes indexed element from collection.
45
44
  *
@@ -1 +1 @@
1
- {"version":3,"file":"HTMLOptionsCollection.js","sourceRoot":"","sources":["../../../src/nodes/html-option-element/HTMLOptionsCollection.ts"],"names":[],"mappings":";;;;;AAAA,gFAAwD;AACxD,+EAAuD;AAMvD;;;;;GAKG;AACH,MAAqB,qBACpB,SAAQ,wBAAc;IAKtB;;;OAGG;IACH,YAAY,aAAiC;QAC5C,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACH,IAAW,aAAa;QACvB,OAAO,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;IAC1C,CAAC;IAED;;;;OAIG;IACH,IAAW,aAAa,CAAC,aAAqB;QAC7C,IAAI,CAAC,cAAc,CAAC,aAAa,GAAG,aAAa,CAAC;IACnD,CAAC;IAED;;;;OAIG;IACI,IAAI,CAAC,KAAa;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAED;;;;OAIG;IACI,GAAG,CACT,OAAkD,EAClD,MAA2D;QAE3D,IAAI,CAAC,MAAM,IAAI,MAAM,KAAK,CAAC,EAAE;YAC5B,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACzC,OAAO;SACP;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE;YAClC,IAAI,MAAM,GAAG,CAAC,EAAE;gBACf,OAAO;aACP;YAED,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAS,MAAM,CAAC,CAAC,CAAC;YAChE,OAAO;SACP;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAEnC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YACjB,MAAM,IAAI,sBAAY,CACrB,8HAA8H,CAC9H,CAAC;SACF;QAED,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACxD,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,KAAa;QAC1B,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE;YAChB,IAAI,CAAC,cAAc,CAAC,WAAW,CAAqB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;SACjE;IACF,CAAC;CACD;AAvFD,wCAuFC"}
1
+ {"version":3,"file":"HTMLOptionsCollection.js","sourceRoot":"","sources":["../../../src/nodes/html-select-element/HTMLOptionsCollection.ts"],"names":[],"mappings":";;;;;AAAA,gFAAwD;AACxD,+EAAuD;AAKvD;;;;;GAKG;AACH,MAAqB,qBACpB,SAAQ,wBAAsD;IAK9D;;;OAGG;IACH,YAAY,aAAiC;QAC5C,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACH,IAAW,aAAa;QACvB,OAAO,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;IAC1C,CAAC;IAED;;;;OAIG;IACH,IAAW,aAAa,CAAC,aAAqB;QAC7C,IAAI,CAAC,cAAc,CAAC,aAAa,GAAG,aAAa,CAAC;IACnD,CAAC;IAED;;;;OAIG;IACI,IAAI,CAAC,KAAa;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAED;;;;OAIG;IACI,GAAG,CAAC,OAA2B,EAAE,MAAoC;QAC3E,IAAI,CAAC,MAAM,IAAI,MAAM,KAAK,CAAC,EAAE;YAC5B,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACzC,OAAO;SACP;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE;YAClC,IAAI,MAAM,GAAG,CAAC,EAAE;gBACf,OAAO;aACP;YAED,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAS,MAAM,CAAC,CAAC,CAAC;YAChE,OAAO;SACP;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAEnC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YACjB,MAAM,IAAI,sBAAY,CACrB,8HAA8H,CAC9H,CAAC;SACF;QAED,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACxD,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,KAAa;QAC1B,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE;YAChB,IAAI,CAAC,cAAc,CAAC,WAAW,CAAqB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;SACjE;IACF,CAAC;CACD;AApFD,wCAoFC"}
@@ -1,14 +1,13 @@
1
1
  import HTMLElement from '../html-element/HTMLElement';
2
2
  import IHTMLFormElement from '../html-form-element/IHTMLFormElement';
3
- import ValidityState from '../validity-state/ValidityState';
4
3
  import IHTMLLabelElement from '../html-label-element/IHTMLLabelElement';
5
4
  import INodeList from '../node/INodeList';
6
5
  import IHTMLSelectElement from './IHTMLSelectElement';
7
6
  import Event from '../../event/Event';
8
7
  import IHTMLOptionElement from '../html-option-element/IHTMLOptionElement';
9
- import IHTMLOptGroupElement from '../html-opt-group-element/IHTMLOptGroupElement';
10
- import IHTMLOptionsCollection from '../html-option-element/IHTMLOptionsCollection';
8
+ import IHTMLOptionsCollection from './IHTMLOptionsCollection';
11
9
  import INode from '../node/INode';
10
+ import IAttr from '../attr/IAttr';
12
11
  /**
13
12
  * HTML Select Element.
14
13
  *
@@ -16,8 +15,11 @@ import INode from '../node/INode';
16
15
  * https://developer.mozilla.org/en-US/docs/Web/API/HTMLSelectElement.
17
16
  */
18
17
  export default class HTMLSelectElement extends HTMLElement implements IHTMLSelectElement {
19
- labels: INodeList<IHTMLLabelElement>;
18
+ readonly length = 0;
20
19
  readonly options: IHTMLOptionsCollection;
20
+ readonly validationMessage = "";
21
+ readonly validity: any;
22
+ _selectNode: INode;
21
23
  onchange: (event: Event) => void | null;
22
24
  oninput: (event: Event) => void | null;
23
25
  /**
@@ -68,18 +70,6 @@ export default class HTMLSelectElement extends HTMLElement implements IHTMLSelec
68
70
  * @param autofocus Autofocus.
69
71
  */
70
72
  set autofocus(autofocus: boolean);
71
- /**
72
- * Returns length.
73
- *
74
- * @returns length.
75
- */
76
- get length(): number;
77
- /**
78
- * Sets length.
79
- *
80
- * @param length Length.
81
- */
82
- set length(length: number);
83
73
  /**
84
74
  * Returns required.
85
75
  *
@@ -123,17 +113,17 @@ export default class HTMLSelectElement extends HTMLElement implements IHTMLSelec
123
113
  */
124
114
  set selectedIndex(selectedIndex: number);
125
115
  /**
126
- * Returns the parent form element.
116
+ * Returns the associated label elements.
127
117
  *
128
- * @returns Form.
118
+ * @returns Label elements.
129
119
  */
130
- get form(): IHTMLFormElement;
120
+ get labels(): INodeList<IHTMLLabelElement>;
131
121
  /**
132
- * Returns validity state.
122
+ * Returns the parent form element.
133
123
  *
134
- * @returns Validity state.
124
+ * @returns Form.
135
125
  */
136
- get validity(): ValidityState;
126
+ get form(): IHTMLFormElement;
137
127
  /**
138
128
  * Returns "true" if it will validate.
139
129
  *
@@ -145,14 +135,14 @@ export default class HTMLSelectElement extends HTMLElement implements IHTMLSelec
145
135
  *
146
136
  * @param index Index.
147
137
  */
148
- item(index: number): IHTMLOptionElement | IHTMLOptGroupElement;
138
+ item(index: number): IHTMLOptionElement;
149
139
  /**
150
140
  * Adds new option to options collection.
151
141
  *
152
- * @param element HTMLOptionElement or HTMLOptGroupElement to add.
142
+ * @param element HTMLOptionElement to add.
153
143
  * @param before HTMLOptionElement or index number.
154
144
  */
155
- add(element: IHTMLOptionElement | IHTMLOptGroupElement, before?: number | IHTMLOptionElement | IHTMLOptGroupElement): void;
145
+ add(element: IHTMLOptionElement, before?: number | IHTMLOptionElement): void;
156
146
  /**
157
147
  * Removes indexed element from collection or the select element.
158
148
  *
@@ -160,38 +150,49 @@ export default class HTMLSelectElement extends HTMLElement implements IHTMLSelec
160
150
  */
161
151
  remove(index?: number): void;
162
152
  /**
163
- * @override
153
+ * Sets validation message.
154
+ *
155
+ * @param message Message.
164
156
  */
165
- appendChild(node: INode): INode;
157
+ setCustomValidity(message: string): void;
166
158
  /**
167
- * @override
159
+ * Checks validity.
160
+ *
161
+ * @returns "true" if the field is valid.
168
162
  */
169
- insertBefore(newNode: INode, referenceNode: INode | null): INode;
163
+ checkValidity(): boolean;
170
164
  /**
171
- * @override
165
+ * Reports validity.
166
+ *
167
+ * @returns "true" if the field is valid.
172
168
  */
173
- removeChild(node: INode): INode;
169
+ reportValidity(): boolean;
174
170
  /**
175
- * Resets the option selectedness.
171
+ * Updates option item.
176
172
  *
177
173
  * Based on:
178
174
  * https://github.com/jsdom/jsdom/blob/master/lib/jsdom/living/nodes/HTMLSelectElement-impl.js
179
175
  *
180
- * @param [newOption] Optional new option element to be selected.
181
176
  * @see https://html.spec.whatwg.org/multipage/form-elements.html#selectedness-setting-algorithm
177
+ * @param [selectedOption] Selected option.
178
+ */
179
+ _updateOptionItems(selectedOption?: IHTMLOptionElement): void;
180
+ /**
181
+ * @override
182
182
  */
183
- _resetOptionSelectednes(newOption?: IHTMLOptionElement): void;
183
+ setAttributeNode(attribute: IAttr): IAttr;
184
+ /**
185
+ * @override
186
+ */
187
+ removeAttributeNode(attribute: IAttr): IAttr;
188
+ /**
189
+ * @override
190
+ */
191
+ _connectToNode(parentNode?: INode): void;
184
192
  /**
185
193
  * Returns display size.
186
194
  *
187
195
  * @returns Display size.
188
196
  */
189
197
  protected _getDisplaySize(): number;
190
- /**
191
- * Updates index properties.
192
- *
193
- * @param previousLength Length before the update.
194
- * @param newLength Length after the update.
195
- */
196
- protected _updateIndexProperties(previousLength: number, newLength: number): void;
197
198
  }