@ -151,7 +151,6 @@ export function first_child(node, is_text = false) {
var first = get _first _child ( node ) ;
var first = get _first _child ( node ) ;
// TODO prevent user comments with the empty string when preserveComments is true
// TODO prevent user comments with the empty string when preserveComments is true
// TODO RENDERER: can we find another way to not have an `isComment` on the renderer?
if ( is _comment ( first ) && get _node _value ( first ) === '' ) return get _next _sibling ( first ) ;
if ( is _comment ( first ) && get _node _value ( first ) === '' ) return get _next _sibling ( first ) ;
return first ;
return first ;
@ -642,8 +641,6 @@ export function remove_attribute(element, name) {
* @ returns { boolean }
* @ returns { boolean }
* /
* /
export function has _attribute ( element , name ) {
export function has _attribute ( element , name ) {
// TODO RENDERER: could be worth removing and just using get?
if ( renderer ) return renderer . hasAttribute ( element , name ) ;
if ( renderer ) return renderer . hasAttribute ( element , name ) ;
return element . hasAttribute ( name ) ;
return element . hasAttribute ( name ) ;
}
}
@ -792,42 +789,17 @@ export function class_list_toggle(element, name, force) {
element . classList . toggle ( name , force ) ;
element . classList . toggle ( name , force ) ;
}
}
/ * *
* @ param { Element } element
* @ param { string } selector
* /
export function query _selector ( element , selector ) {
if ( renderer ) {
// TODO RENDERER: just used with css inject which doesn't make sense with custom renderers
throw new Error ( 'querySelector is not supported with custom renderers' ) ;
}
return element . querySelector ( selector ) ;
}
/ * *
/ * *
* @ param { Element | DocumentFragment } element
* @ param { Element | DocumentFragment } element
* @ param { string } selector
* @ param { string } selector
* /
* /
export function query _selector _all ( element , selector ) {
export function query _selector _all ( element , selector ) {
if ( renderer ) {
if ( renderer ) {
// TODO RENDERER: just used with css inject which doesn't make sense with custom renderers
throw new Error ( 'querySelectorAll is not supported with custom renderers' ) ;
throw new Error ( 'querySelectorAll is not supported with custom renderers' ) ;
}
}
return element . querySelectorAll ( selector ) ;
return element . querySelectorAll ( selector ) ;
}
}
/ * *
* @ param { Node } node
* @ returns { Node }
* /
export function get _root _node ( node ) {
if ( renderer ) {
// TODO RENDERER: just used with css inject which doesn't make sense with custom renderers
throw new Error ( 'getRootNode is not supported with custom renderers' ) ;
}
return node . getRootNode ( ) ;
}
/ * *
/ * *
* @ param { HTMLElement } element
* @ param { HTMLElement } element
* /
* /