;i TddlZddlmZmZmZddlmZddlmZGddZ dS)N)ListOptionalUnion)ManipulationMode)ElementceZdZdZdZdZedefdZedefdZ edefdZ de j fd e d eee fdefd Zd e deefd Zd e deefdZdS)DOMFcV||_|jxj|jz c_i|_dSN) _DOM__windoweventsloaded_DOM__on_loaded _elements)selfwindows CC:\PYTHON\MyICR_Workspace\venv\Lib\site-packages\webview/dom/dom.py__init__z DOM.__init__ s-   00ci|_dSr )rrs r __on_loadedzDOM.__on_loadeds rreturnc^|jdt|jdS)Nbodyrgetrr rs rrzDOM.bodys&~!!&'$-*H*HIIIrc^|jdt|jdS)Ndocumentrrs rrz DOM.documents&~!!*gdmZ.P.PQQQrc^|jdt|jdS)Nrrrs rrz DOM.windows&~!!(GDM8,L,LMMMrNhtmlparentc |jjjt |t r|j}nt |trd|d}nd}t |tst|}|jd|dtj |d|j d}t |j|S)Nz&var element = document.querySelector("z");zvar element = document.body;z zb; var template = document.createElement('template'); template.innerHTML = z{.trim(); var newElement = template.content.firstChild; pywebview._insertNode(newElement, element, 'z9') pywebview._getNodeId(newElement); ) r r rwait isinstancer_query_commandstr evaluate_jsjsondumpsvalue)rr!r"modeparent_commandnode_ids rcreate_elementzDOM.create_elements #((*** fg & & <#2NN  $ $ <QfQQQNN;N$$$ t99D-++- - - #'*T"2"2- - :> - - -   t}g...rselectorcp|jd|d}|rt|j|ndS)Nz3 var element = document.querySelector('z7'); pywebview._getNodeId(element); )r r(r)rr0r.s r get_elementzDOM.get_element8sN-++- 3;- - -    3:Cwt}g...tCrc`d|d}j|}fd|DS)Nz7 var elements = document.querySelectorAll('z'); nodeIds = []; for (var i = 0; i < elements.length; i++) { var nodeId = pywebview._getNodeId(elements[i]); nodeIds.push(nodeId); } nodeIds c:g|]}tj|S)rr ).0r.rs r z$DOM.get_elements..Ms%HHHG w//HHHr)r r()rr0codenode_idss` r get_elementszDOM.get_elements@sM  7?    =,,T22HHHHxHHHHr)__name__ __module__ __qualname__ _serializablerrpropertyrrrrr LastChildr'rr/rr2rr:r5rrr r s[M JgJJJXJR'RRRXRNNNNXN8rDs ((((((((((((((((''''''EIEIEIEIEIEIEIEIEIEIr