/*

Siesta 5.1.0
Copyright(c) 2009-2018 Bryntum AB
https://bryntum.com/contact
https://bryntum.com/products/siesta/license

*/
Class('Ariadne.DomQueryFinder.Identifier.TagName', {

    isa         : Ariadne.QueryFinder.Identifier,

    does        : Ariadne.DomQueryFinder.Role.DomHelper,


    methods : {

        identify : function (target, root, maze) {
            var doc         = target.ownerDocument

            // this is a special case when target is <body> or <html> itself
            var isUnique    = (!maze.nodes.length || target == maze.nodes[ 0 ].el) && (target == doc.body || target == doc.documentElement)

            return {
                query           : this.escapeDomSelector(target.tagName.toLowerCase()),
                leading         : true,
                weight          : isUnique ? 900 : 1000
            }
        }
    }
});