;ixddlZddlmZddlmZmZmZmZddlm Z m Z GddeZ GddZ dS) N)Enum)AnyDictOptionalUnion) css_to_camel escape_stringceZdZdZdZdS) DOMPropTypeN)__name__ __module__ __qualname__Style AttributeIC:\PYTHON\MyICR_Workspace\venv\Lib\site-packages\webview/dom/propsdict.pyr r s EIIIrr cPeZdZddedeeeeffdZdZ dZ dZ dZ d Z d Zd Zdd Zd ZdZdeeeeeedfffdZddZdZdZdZdeeeffdZdeeeffdZdeeeffdZdeeeffdZdeeeffdZdS) PropsDictNtypepropsc ||_||_|sdS|tjkrot jd|D}|jjd|jj dt|ddS|tj krbt jd|D}|jjd|jj d|ddSdS)Nc4i|]\}}t||Srr.0keyvalues r z&PropsDict.__init__..s&)c)c)czsE,s*;*;U)c)c)crz z+; var styles = JSON.parse('z'); for (var key in styles) { element.style[key] = styles[key]; } cNi|]"\}}t|t|#Sr)r rs rr!z&PropsDict.__init__.."s.ZZZjc5s##]5%9%9ZZZrz/; var attributes = JSON.parse('a'); for (var key in attributes) { if (key === 'data-pywebview-id') { continue; } else if (attributes[key] === null || attributes[key] === undefined) { element.removeAttribute(key); } else { element.setAttribute(key, attributes[key]); } }; ) _PropsDict__element_PropsDict__typer rjsondumpsitems_window evaluate_js_query_commandr r)selfelementrrconverted_styleconverted_attributess r__init__zPropsDict.__init__sC    F ;$ $ $"j)c)cUZU`U`UbUb)c)c)cddO N " . .0.00*7*H*H000     [* * *#':ZZEKKMMZZZ$$  N " . . 0. 0 0.B 0 0 0      + *rcT|}||SN_PropsDict__get_datagetr+rdatas r __getitem__zPropsDict.__getitem__4s!  xx}}rc|jtjkr|||idS|jtjkr|||idSdSr1r$r r_PropsDict__set_styler_PropsDict__set_attribute)r+rr s r __setitem__zPropsDict.__setitem__8sf ;++ + +   c5\ * * * * * [K1 1 1  #u . . . . .2 1rc|jtjkr||didS|jtjkr||didSdSNr9)r+rs r __delitem__zPropsDict.__delitem__>sf ;++ + +   c2Y ' ' ' ' ' [K1 1 1  #t - - - - -2 1rc2|}||vSr1r3r5s r __contains__zPropsDict.__contains__Ds  d{rcR|}|Sr1)r3keysr+r6s rrEzPropsDict.keysHs  yy{{rcR|}|Sr1)r3valuesrFs rrHzPropsDict.valuesLs  {{}}rcR|}|Sr1)r3r'rFs rr'zPropsDict.itemsPs  zz||rcV|}|||Sr1r2r+rdefaultr6s rr4z PropsDict.getT%  xxW%%%rcD|}|D]}|jtjkrdnd||<|jtjkr||dS|jtjkr||dSdSr>)r3rEr$r rr:rr;)r+r6rs rclearzPropsDict.clearXs  99;; I IC"k[->>>DDII ;++ + +   T " " " " " [K1 1 1   & & & & &2 1rc*|Sr1rBr+s rcopyzPropsDict.copycs   r other_dictc|jtjkr||dS|jtjkr||dSdSr1r9)r+rSs rupdatezPropsDict.updatefs^ ;++ + +   Z ( ( ( ( ( [K1 1 1   , , , , ,2 1rcV|}|||Sr1)r3poprKs rrWz PropsDict.poplrMrcR|}|Sr1)r3popitemrFs rrYzPropsDict.popitemps  ||~~rcH|}t|Sr1)r3strrFs r__str__zPropsDict.__str__ts  4yyrcH|}t|Sr1)r3reprrFs r__repr__zPropsDict.__repr__xs  Dzzrreturnc|jtjkr|S|jtjkr|SdSr1)r$r r_PropsDict__get_styler_PropsDict__get_attributesrQs r __get_datazPropsDict.__get_data|sN ;++ + +##%% % [K1 1 1((** *2 1rc\|jjd|jjdS)N ag; var attributes = element.attributes; var result = {}; for (var i = 0; i < attributes.length; i++) { if (attributes[i].name === 'data-pywebview-id') { continue; } result[attributes[i].name] = attributes[i].value; } result r#r(r)r*rQs r__get_attributeszPropsDict.__get_attributess;~%11 3 ^ * 3 3 3   rc |jjd|jjdt t j|ddS)Nrfz'; var values = JSON.parse('a:'); for (var key in values) { var value = values[key]; if (value === null || value === undefined) { element.removeAttribute(key); } else { element.setAttribute(key, value); } } )r#r(r)r*r r%r&)r+rs r__set_attributezPropsDict.__set_attributesd ** , ^ * , , &3DJu4E4E&F&F , , , rc\|jjd|jjdS)Nrfa; var styles = window.getComputedStyle(element); var computedStyles = {}; for (var i = 0; i < styles.length; i++) { var propertyName = styles[i]; var propertyValue = styles.getPropertyValue(propertyName); if (propertyValue !== '') { computedStyles[propertyName] = propertyValue; } } computedStyles; rgrQs r __get_stylezPropsDict.__get_styles;~%113 ^ *3 3 3    rstylectjd|D}|jjd|jjdt|ddS)Nc4i|]\}}t||Srrrs rr!z)PropsDict.__set_style..s&%_%_%_:3l3&7&7%_%_%_rrfz'; var styles = JSON.parse('z'); for (var key in styles) { var value = styles[key]; element.style[key] = value; } )r%r&r'r#r(r)r*r )r+rmr-s r __set_stylezPropsDict.__set_styles*%_%_QVQ\Q\Q^Q^%_%_%_`` **, ^ *, , &3O&D&D, , ,      rr1) rrrr rrr[rr/r7r<r@rCrErHr'r4rOrRrintfloatrUrWrYr\r_r3rcr;rbr:rrrrr s$$k$(4S>:R$$$$L/// ... &&&& ' ' '!!!-c5c5$1F+G&G!H---- &&&&+DcN++++  $sCx.       T#s(^      T#s(^    $  c3h       rr) r%enumrtypingrrrr webview.utilrr r rrrrrvs ------------44444444$ n n n n n n n n n n r