Commit Graph

218 Commits

Author SHA1 Message Date
Pierre Tachoire
78e2f70cfb dom: refacto HTMLCollection to extract matching 2023-11-20 14:57:41 +01:00
Pierre Tachoire
0b17d79baa dom: add HTMLCollectionIterator 2023-11-20 10:50:20 +01:00
Pierre Tachoire
4a15456418 dom: declare document.createElementsNS 2023-11-20 10:39:40 +01:00
Pierre Tachoire
18bfaf8b55 dom: create elementToNode helper 2023-11-17 15:11:00 +01:00
Pierre Tachoire
3ca6a4a74e dom: fix bug in collection get_next 2023-11-16 17:32:31 +01:00
Pierre Tachoire
9b923c550b dom: remove unreachable from html collection 2023-11-16 17:32:30 +01:00
Pierre Tachoire
3909fc01a7 dom: improve code style 2023-11-16 17:32:30 +01:00
Pierre Tachoire
a136e812ae dom: add collection get_next comment 2023-11-16 17:32:30 +01:00
Pierre Tachoire
2129361fa0 dom: is_wildcard is never changed 2023-11-16 17:32:29 +01:00
Pierre Tachoire
ba32e1baff dom: collection: use nullable value instead fo undefined 2023-11-16 12:31:26 +01:00
Pierre Tachoire
24d3854138 dom: saner returns for html collection 2023-11-15 17:06:42 +01:00
Pierre Tachoire
f02769b2dd dom: use allocator with HTMLCollection getters 2023-11-15 16:09:09 +01:00
Pierre Tachoire
9bb200a46f dom: rename HTMLCollection._next() into get_next()
We don't want expose the function to the JS API.
2023-11-15 16:09:08 +01:00
Pierre Tachoire
84934cca13 dom: add HTMLCollection unit tests 2023-11-15 16:09:06 +01:00
Pierre Tachoire
055bde96e4 dom: speedup HTMLCollection.item() w/ an internal state 2023-11-15 16:09:04 +01:00
Pierre Tachoire
5f05cffff9 dom: remove optional node type 2023-11-15 16:09:03 +01:00
Pierre Tachoire
8c1d1e491c dom: refacto HTMLCollection next 2023-11-15 16:09:01 +01:00
Pierre Tachoire
1fe49adba2 dom: add comment about buffer with fixed length
The buffer is used for upper case string transformation.
2023-11-15 16:09:00 +01:00
Pierre Tachoire
09d032f6f8 dom: implement HTMLCollection.namedItem() 2023-11-15 16:08:58 +01:00
Pierre Tachoire
3a188c4568 dom: compare tagname in case insensitive way 2023-11-15 16:08:57 +01:00
Pierre Tachoire
062a1a4010 dom: implement HTMLCollection
We can't simply use the libdom dom_document_get_elements_by_tag_name
because it follows an old version of the specifications and returns a
NodeList.
Since
190700b7c1
the spec changed in favor of returning an HTMLCollection.

So I'm trying to re-implement the HTMLCollection in zig.
2023-11-15 16:08:55 +01:00
Pierre Tachoire
2e40837f0d dom: add HTMLCollection 2023-11-15 16:08:52 +01:00
Pierre Tachoire
cff27ecbd2 document: remove constructor comparison from test
Now the tag's constructor can be HTMLElement, so previous basic test
is invalid.
2023-10-19 15:16:26 +02:00
Francis Bouvier
7f9ee308bd Merge pull request #51 from Browsercore/wpt
WPT tests
2023-10-18 16:49:11 +02:00
Pierre Tachoire
34d5f2800e document: re-dispatch tests between node document and html document 2023-10-18 14:11:31 +02:00
Pierre Tachoire
9dda08b8a9 dom: document: re-dispatch document function according to spec 2023-10-17 18:18:38 +02:00
Pierre Tachoire
2a4d2be7db dom/document: fix get_body 2023-10-17 14:30:11 +02:00
Francis Bouvier
ac76f95916 Format test.html for easier manipulation
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-10-12 14:15:08 +02:00
Pierre Tachoire
6370b2d7a7 dom: add document.createElement and document.getElementById 2023-10-11 14:48:31 +02:00
Francis Bouvier
3ad5233b18 Forgot to commit files on b8aa291e1e
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-10-10 16:49:09 +02:00
Francis Bouvier
76dd8f3c31 Merge pull request #54 from Browsercore/text
text: properties and methods
2023-10-10 07:55:10 +02:00
Francis Bouvier
b8aa291e1e Iterfaces generation refacto
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-10-09 17:31:42 +02:00
Francis Bouvier
b05e08e6a8 text: add splitText method
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-10-09 16:27:40 +02:00
Francis Bouvier
de8f586223 text: add wholeText getter
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-10-09 16:06:14 +02:00
Francis Bouvier
6955285ed5 characterdata: add substringData method
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-10-09 14:42:18 +02:00
Francis Bouvier
8438393aff characterdata: add replaceData method
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-10-09 14:37:45 +02:00
Francis Bouvier
7951498ab5 characterdata: add insertData method
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-10-09 14:34:37 +02:00
Francis Bouvier
be716e591d characterdata: add deleteData method
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-10-09 14:29:37 +02:00
Francis Bouvier
7c1eca3b74 characterdata: add appendData method
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-10-09 14:24:15 +02:00
Francis Bouvier
7406b6d06c characterdata: add previouselementSibling getter
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-10-02 17:29:27 +02:00
Francis Bouvier
202ee1646d characterdata: add nextElementSibling getter
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-10-02 17:25:32 +02:00
Francis Bouvier
51f1271496 characterdata: add length getter
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-28 19:48:42 +02:00
Francis Bouvier
9c8d1082a3 characterdata: add data getter and setter
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-28 19:36:18 +02:00
Francis Bouvier
70e3e00042 Small fix
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-10-02 12:33:24 +02:00
Francis Bouvier
4de6ad02f5 node: move arg check in API declaration for nodeLookupPrefix method
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-29 13:42:39 +02:00
Francis Bouvier
bbcd9d8dcf Use orelse
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-29 13:39:41 +02:00
Francis Bouvier
e59309e392 Replace panic by std.log.err for NOT IMPLEMENTED
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-29 13:38:07 +02:00
Francis Bouvier
09ddfd2a09 node: add lookupNamespaceURI method (NOT TESTED)
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-28 18:22:39 +02:00
Francis Bouvier
8c0279bd1b node: add lookupPrefix method (NOT TESTED)
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-28 18:17:04 +02:00
Francis Bouvier
24dc25391e node: add isSameNode method
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-28 17:49:07 +02:00