Skip to content

Commit a077c59

Browse files
committed
work: expose isEqualNode to scripting
1 parent 93ac142 commit a077c59

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

internal/code-gen/scripting/configuration/dom_configuration.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,6 @@ func configureDOMNode(specs *WebAPIConfig) {
144144

145145
domNode.Method("hasChildNodes").Ignore()
146146
domNode.Method("normalize").Ignore()
147-
domNode.Method("isEqualNode").Ignore()
148147
domNode.Method("compareDocumentPosition").Ignore()
149148
domNode.Method("lookupPrefix").Ignore()
150149
domNode.Method("lookupNamespaceURI").Ignore()

scripting/internal/dom/node_generated.go

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ func (wrapper Node[T]) Initialize(jsClass js.Class[T]) {
2222
func (w Node[T]) installPrototype(jsClass js.Class[T]) {
2323
jsClass.CreatePrototypeMethod("getRootNode", w.getRootNode)
2424
jsClass.CreatePrototypeMethod("cloneNode", w.cloneNode)
25+
jsClass.CreatePrototypeMethod("isEqualNode", w.isEqualNode)
2526
jsClass.CreatePrototypeMethod("isSameNode", w.isSameNode)
2627
jsClass.CreatePrototypeMethod("contains", w.contains)
2728
jsClass.CreatePrototypeMethod("insertBefore", w.insertBefore)
@@ -73,6 +74,20 @@ func (w Node[T]) cloneNode(cbCtx js.CallbackContext[T]) (js.Value[T], error) {
7374
return codec.EncodeEntity(cbCtx, result)
7475
}
7576

77+
func (w Node[T]) isEqualNode(cbCtx js.CallbackContext[T]) (js.Value[T], error) {
78+
cbCtx.Logger().Debug("JS Function call: Node.isEqualNode")
79+
instance, errInst := js.As[dom.Node](cbCtx.Instance())
80+
if errInst != nil {
81+
return nil, errInst
82+
}
83+
otherNode, errArg1 := js.ConsumeArgument(cbCtx, "otherNode", codec.ZeroValue, codec.DecodeNode)
84+
if errArg1 != nil {
85+
return nil, errArg1
86+
}
87+
result := instance.IsEqualNode(otherNode)
88+
return codec.EncodeBoolean(cbCtx, result)
89+
}
90+
7691
func (w Node[T]) isSameNode(cbCtx js.CallbackContext[T]) (js.Value[T], error) {
7792
cbCtx.Logger().Debug("JS Function call: Node.isSameNode")
7893
instance, errInst := js.As[dom.Node](cbCtx.Instance())

0 commit comments

Comments
 (0)