ouider 0.0.8 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/dom/dom.cjs CHANGED
@@ -1,3 +1,3 @@
1
- 'use strict';var v=Object.defineProperty;var i=(t,e)=>v(t,"name",{value:e,configurable:true});function y(t){let e="";for(let n=0;n<t.length;n++){let r=t.charCodeAt(n).toString(16);r=r.length===1?"0"+r:r,e+=r;}return e}i(y,"stringToHex");var u=new Map,l=new WeakMap,E=0,f=new Map;function T(t,e,n){let o=n?u.get(n):document;if(!s(o))return null;let r=o.querySelector(t);return r?a(r,e,1):null}i(T,"query");function N(t,e,n){let o=n?u.get(n):document;return s(o)?[...o.querySelectorAll(t)].map(d=>a(d,e,1)).filter(d=>d!==null):[]}i(N,"queryAll");function S(t){let e=u.get(t);if(!s(e))return [];let n=[],o=document.createTreeWalker(e),r=o.firstChild();for(;r;)r.parentNode===e&&n.push(r),r=o.nextSibling();return n.map(c=>a(c,["attributes"],0)).filter(c=>c!==null)}i(S,"childNodes");function O(t){switch(t.nodeType){case Node.TEXT_NODE:return "Text";case Node.ELEMENT_NODE:return "Element";case Node.ATTRIBUTE_NODE:return "Attribute";case Node.COMMENT_NODE:return "Comment";default:return "Unknown"}}i(O,"nodeType");function g(t){return [...t.attributes].map(e=>({name:e.name,value:e.value}))}i(g,"elementAttributes");function a(t,e,n=1){if(!t)return null;let o={uid:_(t),tag:s(t)?t.tagName.toLocaleLowerCase():"",type:O(t),isArray:false,objType:typeof t},r=e?new Set([...e,"attributes","classes"]):new Set(["attributes","classes"]);return s(t)&&r.forEach(c=>{switch(c){case "attributes":o.attributes=g(t);break;case "children":n>0&&(o.children=[...t.children].map(d=>a(d,e,n-1)).filter(d=>d!==null));break;case "classes":o.classes=[...t.classList];break;case "style":o.style=t?.style.cssText;break}}),o.type==="Text"&&(o.textContent=t.textContent),o}i(a,"htmlElementToONode");function C(t,e){let c=new Set(["svg","path","circle","rect","line","polyline","polygon","ellipse","g","defs","marker","clipPath","mask","text","tspan"]).has(t)?document.createElementNS("http://www.w3.org/2000/svg",t):document.createElement(t);for(let d in e)c.setAttribute(d,e[d]);return a(c)}i(C,"createElement");function x(t){let e=document.createComment(t);return a(e)}i(x,"createComment");function _(t,e){if(l.has(t))return l.get(t);let n=e??y(`${E++}`.padStart(16,"0"));u.set(n,t);try{l.set(t,n);}catch(o){console.error(o);}return n}i(_,"putInRegistry");function A(t){let e=t;if(!(typeof t=="string"&&(e=u.get(t),!e))&&l.has(e)){let n=l.get(e);u.delete(n),l.delete(e);return}}i(A,"removeFromRegistry");function I(t,e){let n=u.get(t),o=u.get(e);!n||!o||n.appendChild(o);}i(I,"appendChild");function s(t){return t===document||t?.nodeType===Node.ELEMENT_NODE}i(s,"isElementNode");function L(t,e){let n=u.get(t);s(n)&&(n.innerText=e);}i(L,"setInnerText");function M(t,e){let n=u.get(t);!n||s(n)||(n.textContent=e);}i(M,"setContentText");function j(t){let e=u.get(t);return !e||s(e)?"":e.textContent}i(j,"getContentText");function k(t,...e){let n=u.get(t);s(n)&&n.classList.remove(...e);}i(k,"removeClass");function D(t,...e){let n=u.get(t);s(n)&&n.classList.add(...e);}i(D,"addClass");function P(t){let e=u.get(t);return s(e)?e.innerText:""}i(P,"getInnerText");function U(t,e,n){let o=u.get(t);s(o)&&o.style.setProperty(e,n);}i(U,"setStyle");function R(t,e,n){let o=u.get(t);if(s(o))return o.setAttribute(e,n),g(o)}i(R,"setAttribute");function V(t,e){let n=u.get(t);return s(n)?(n.removeAttribute(e),g(n)):[]}i(V,"removeAttribute");function q(t,e){let n=u.get(t);return s(n)?n.getAttribute(e)??"":""}i(q,"getAttribte");function B(t){let e=u.get(t);return s(e)?e.getAttributeNames():[]}i(B,"getAttribteNames");function H(t,e){let n=u.get(t);return n?a(n.cloneNode(e)):null}i(H,"cloneNode");function W(t){u.get(t)?.remove();}i(W,"removeNode");function G(t,e){let n=u.get(t),o=u.get(e);o&&n?.removeChild(o);}i(G,"removeChild");function J(t,e){let n=u.get(t),o=u.get(e);n.replaceWith(o);}i(J,"replaceWith");function F(t,e){let n=u.get(t),o=u.get(e);o&&n.after(o);}i(F,"insertAfter");function X(t,e,n){let o=u.get(t),r=u.get(e),c=u.get(n);!s(o)||!c||!r||o.insertBefore(c,r);}i(X,"insertBefore");function $(t,e){let n=u.get(t);s(n)&&(n.value=e);}i($,"setInputValue");function Y(t){let e=u.get(t);return s(e)?e.value:""}i(Y,"inputValue");function z(t,e,n){let o=u.get(t);if(o&&"addEventListener"in o){let r=i(c=>{let d=c?.target;p(e,n,{target:d?a(d):null,e:c});},"cb");f.set(e,r),o.addEventListener(n,r);}}i(z,"attachEventListener");function K(t,e,n){let o=u.get(t);if(!s(o))return;let r=f.get(e);r&&(f.delete(e),o.removeEventListener(n,r));}i(K,"dettachEventListener");function Q(t){let e=document.createElement("style");return e.innerHTML=t,document.head.appendChild(e),a(e)}i(Q,"injectComponentStyles");function Z(t){let e=u.get(t);document.head.removeChild(e);}i(Z,"rejectComponentStyles");function tt(t,e,n){let o=u.get(t),r=u.get(e),c=u.get(n);!s(o)||!r||!c||o.replaceChild(r,c);}i(tt,"replaceChildNode");function et(t){let e=u.get(t);return e?a(e.parentNode):null}i(et,"parentNode");function nt(t){let e=u.get(t);return e?a(e.nextSibling):null}i(nt,"nextSibling");function ot(t){let e=String.fromCharCode(...t);return btoa(e)}i(ot,"arrayBufferToBase64");async function it(t,e,n){let o=await fetch(t,e);switch(n){case "text":return await o.text();case "base64":return ot(await o.bytes());default:return await o.json()}}i(it,"httpFetch");function rt(t,e){let n=u.get(t);s(n)&&(n.innerHTML=e);}i(rt,"setInnerHTML");function ut(t){let e=u.get(t);return s(e)?e.innerHTML:""}i(ut,"getInnerHTML");function ct(t,e,...n){let o=u.get(t);if(!o)return null;let r=m(o,e);if(!r)return null;let[c,d]=r;return c.apply(d,n)}i(ct,"invokeObjectMethod");function st(t,e){let n=u.get(t);if(!n)return null;let o=m(n,e);return o?o[0]:null}i(st,"getObjectProperty");function m(t,e){let n=e.split("."),o=t,r=t;for(let c=0;c<n.length;c++){let d=n[c];if(!(d in o))return null;r=o,o=o[d];}return [o,r]}i(m,"getAdvanceObjectProperty");function dt(t,e,n){let o=e.split("."),r=t;for(let d=0;d<o.length-1;d++){let h=o[d];if(!(h in r))return;r=r[h];}let c=o[o.length-1];r[c]=n;}i(dt,"setAdvanceObjectProperty");function at(t,e,n){let o=u.get(t);o&&dt(o,e,n);}i(at,"setObjectProperty");var w=new Map;function p(t,...e){NativeOUID?.invoke(t,"__ouid_web_event__",JSON.stringify(e));}i(p,"emit");function lt(t,e){w.has(t)||(w.set(t,[]),window[t]=(n,o,r)=>{w.get(t)?.forEach(c=>c(n,o,r));}),w.get(t).push(e);}i(lt,"subscribe");function wt(t){A(t);}i(wt,"releaseNode");function _t(){return window.location.pathname}i(_t,"locationPath");function ft(t,e){window.history.pushState(t,"",e);}i(ft,"historyPushState");function gt(){window.dispatchEvent(new PopStateEvent("popstate",{state:window.history.state}));}i(gt,"dispatchPopStateEvent");function pt(t,e,n,o){let r=u.get(t);if(r&&"dispatchEvent"in r){let c=n?new window[n](e,o):new CustomEvent(e,o);r.dispatchEvent(c);}}i(pt,"dispatchEvent");function b(t,e){return {tag:e.split(/\s/)[0],uid:e,objType:typeof t,isArray:Array.isArray(t)}}i(b,"asOObject");function ht(t){let e=u.get(t);return e?b(e,t):null}i(ht,"getOObject");function mt(t){let e=window[t];if(!e)return null;let n=_(e,t);return b(e,n)}i(mt,"acquireObject");function bt(t,e){return setTimeout(i(()=>{p(t);},"cb"),e)}i(bt,"addSetTimeout");function vt(t,e){return setInterval(i(()=>{p(t);},"cb"),e)}i(vt,"addSetInterval");function yt(t){clearTimeout(t);}i(yt,"removeSetTimeout");function Et(t){clearInterval(t);}i(Et,"removeSetInterval");function Nt(){__WEB_OUID_EMULATION__&&(globalThis.__OUI_PUR_JS_CONTEXT__=true,window.NativeOUID=window.NativeOUID??{invoke:i((e,n,o)=>{window[`${n}`](e,o);},"invoke")},window.WebOUID=window.WebOUID??{invoke:i(async(e,n,o)=>{window.__native_message__(e,n,o);},"invoke")});let t=new MutationObserver(function(e){e.forEach(n=>{n.removedNodes.forEach(o=>{o.nodeType;});});});_(document,"document"),_(window,"window"),window._ouid_query=T,window._ouid_queryAll=N,window._ouid_createElement=C,window._ouid_createComment=x,window._ouid_invokeObjectMethod=ct,window._ouid_getObjectProperty=st,window._ouid_setObjectProperty=at,window._ouid_appendChild=I,window._ouid_addClass=D,window._ouid_removeClass=k,window._ouid_setInnerHTML=rt,window._ouid_getInnerHTML=ut,window._ouid_setInnerText=L,window._ouid_getInnerText=P,window._ouid_setContentText=M,window._ouid_getContentText=j,window._ouid_setAttribute=R,window._ouid_removeAttribute=V,window._ouid_getAttribte=q,window._ouid_getAttribteNames=B,window._ouid_childNodes=S,window._ouid_cloneNode=H,window._ouid_removeNode=W,window._ouid_removeChild=G,window._ouid_replaceChildNode=tt,window._ouid_replaceNode=J,window._ouid_insertAfter=F,window._ouid_insertBefore=X,window._ouid_setInputValue=$,window._ouid_inputValue=Y,window._ouid_attachEventListener=z,window._ouid_dettachEventListener=K,window._ouid_injectComponentStyles=Q,window._ouid_rejectComponentStyles=Z,window._ouid_locationPath=_t,window._ouid_historyPushState=ft,window._ouid_dispatchPopStateEvent=gt,window._ouid_parentNode=et,window._ouid_releaseNode=wt,window._ouid_getOObject=ht,window._ouid_acquireObject=mt,window._ouid_dispatchEvent=pt,window._ouid_setTimeout=bt,window._ouid_clearTimeout=yt,window._ouid_dsetInterval=vt,window._ouid_clearInterval=Et,window._ouid_setStyle=U,window._ouid_nextSibling=nt,window._ouid_fetch=it,window._ouid_alert=alert,window._ouid_prompt=prompt,t.observe(document.body,{childList:true,subtree:true}),lt("__native_message__",async(e,n,o)=>{let r=window[n];if(!r){NativeOUID?.invoke(e,"__ouid_native_event_error__",JSON.stringify({message:"No function match the given name: ("+n+")"}));return}let c=await r(...JSON.parse(o));NativeOUID?.invoke(e,"__ouid_native_event_success__",JSON.stringify([{status:"success",data:c}]));});}i(Nt,"initDOM");
2
- exports.ELEMENT_REGISTRY=u;exports.emit=p;exports.initDOM=Nt;exports.stringToHex=y;//# sourceMappingURL=dom.cjs.map
1
+ 'use strict';var C=Object.defineProperty,D=Object.defineProperties;var k=Object.getOwnPropertyDescriptors;var O=Object.getOwnPropertySymbols;var M=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;var S=(t,e,n)=>e in t?C(t,e,{enumerable:true,configurable:true,writable:true,value:n}):t[e]=n,v=(t,e)=>{for(var n in e||(e={}))M.call(e,n)&&S(t,n,e[n]);if(O)for(var n of O(e))X.call(e,n)&&S(t,n,e[n]);return t},I=(t,e)=>D(t,k(e)),i=(t,e)=>C(t,"name",{value:e,configurable:true});function L(t){let e="";for(let n=0;n<t.length;n++){let r=t.charCodeAt(n).toString(16);r=r.length===1?"0"+r:r,e+=r;}return e}i(L,"stringToHex");var c=new Map,h=new WeakMap,Y=0,m=new Map;function U(t,e,n){let o=n?c.get(n):document;if(!d(o))return null;let r=o.querySelector(t);return r?_(r,e,1):null}i(U,"query");function W(t,e,n){let o=n?c.get(n):document;return d(o)?[...o.querySelectorAll(t)].map(a=>_(a,e,1)).filter(a=>a!==null):[]}i(W,"queryAll");function V(t){let e=c.get(t);if(!d(e))return [];let n=[],o=document.createTreeWalker(e),r=o.firstChild();for(;r;)r.parentNode===e&&n.push(r),r=o.nextSibling();return n.map(s=>_(s,["attributes"],0)).filter(s=>s!==null)}i(V,"childNodes");function R(t){switch(t.nodeType){case Node.TEXT_NODE:return "Text";case Node.ELEMENT_NODE:return "Element";case Node.ATTRIBUTE_NODE:return "Attribute";case Node.COMMENT_NODE:return "Comment";default:return "Unknown"}}i(R,"nodeType");function b(t){return [...t.attributes].map(e=>({name:e.name,value:e.value}))}i(b,"elementAttributes");function _(t,e,n=1){if(!t)return null;let o={uid:w(t),tag:d(t)?t.tagName.toLocaleLowerCase():"",type:R(t),isArray:false,objType:typeof t},r=e?new Set([...e,"attributes","classes"]):new Set(["attributes","classes"]);return d(t)&&r.forEach(s=>{switch(s){case "attributes":o.attributes=b(t);break;case "children":n>0&&(o.children=[...t.children].map(a=>_(a,e,n-1)).filter(a=>a!==null));break;case "classes":o.classes=[...t.classList];break;case "style":o.style=t==null?void 0:t.style.cssText;break}}),o.type==="Text"&&(o.textContent=t.textContent),o}i(_,"htmlElementToONode");function F(t,e){let s=new Set(["svg","path","circle","rect","line","polyline","polygon","ellipse","g","defs","marker","clipPath","mask","text","tspan"]).has(t)?document.createElementNS("http://www.w3.org/2000/svg",t):document.createElement(t);for(let a in e)s.setAttribute(a,e[a]);return _(s)}i(F,"createElement");function B(t){let e=document.createComment(t);return _(e)}i(B,"createComment");function w(t,e){if(h.has(t))return h.get(t);let n=e!=null?e:L(`${Y++}`.padStart(16,"0"));c.set(n,t);try{h.set(t,n);}catch(o){console.error(o);}return n}i(w,"putInRegistry");function H(t){if(typeof t=="string"){let e=c.get(t);e instanceof Node?j(e):c.delete(t);return}j(t);}i(H,"removeFromRegistry");function j(t){let e=[t];for(;e.length;){let n=e.pop();K(n);let o=h.get(n);o&&(c.delete(o),h.delete(n));let r=n.childNodes;for(let s=0;s<r.length;s++)e.push(r[s]);}}i(j,"cleanupRegistryForNode");function K(t){for(let[e,n]of m){let o=n.target;(o===t||o instanceof Node&&t.contains(o))&&(o.removeEventListener(n.type,n.handler),m.delete(e));}}i(K,"cleanupDomListenersForNode");function q(t,e){let n=c.get(t),o=c.get(e);!n||!o||n.appendChild(o);}i(q,"appendChild");function d(t){return t===document||(t==null?void 0:t.nodeType)===Node.ELEMENT_NODE}i(d,"isElementNode");function G(t,e){let n=c.get(t);d(n)&&(n.innerText=e);}i(G,"setInnerText");function J(t,e){let n=c.get(t);!n||d(n)||(n.textContent=e);}i(J,"setContentText");function Z(t){let e=c.get(t);return !e||d(e)?"":e.textContent}i(Z,"getContentText");function $(t,...e){let n=c.get(t);d(n)&&n.classList.remove(...e);}i($,"removeClass");function z(t,...e){let n=c.get(t);d(n)&&n.classList.add(...e);}i(z,"addClass");function Q(t){let e=c.get(t);return d(e)?e.innerText:""}i(Q,"getInnerText");function tt(t,e,n){let o=c.get(t);d(o)&&o.style.setProperty(e,n);}i(tt,"setStyle");function et(t,e,n){let o=c.get(t);if(d(o))return o.setAttribute(e,n),b(o)}i(et,"setAttribute");function nt(t,e){let n=c.get(t);return d(n)?(n.removeAttribute(e),b(n)):[]}i(nt,"removeAttribute");function ot(t,e){var o;let n=c.get(t);return d(n)&&(o=n.getAttribute(e))!=null?o:""}i(ot,"getAttribte");function it(t){let e=c.get(t);return d(e)?e.getAttributeNames():[]}i(it,"getAttribteNames");function rt(t,e){let n=c.get(t);return n?_(n.cloneNode(e)):null}i(rt,"cloneNode");function st(t){let e=c.get(t);e==null||e.remove();}i(st,"removeNode");function ct(t,e){let n=c.get(t),o=c.get(e);o&&(n==null||n.removeChild(o));}i(ct,"removeChild");function at(t,e){let n=c.get(t),o=c.get(e);n.replaceWith(o);}i(at,"replaceWith");function ut(t,e){let n=c.get(t),o=c.get(e);o&&n.after(o);}i(ut,"insertAfter");function dt(t,e,n){let o=c.get(t),r=c.get(e),s=c.get(n);!d(o)||!s||!r||o.insertBefore(s,r);}i(dt,"insertBefore");function lt(t,e){let n=c.get(t);d(n)&&(n.value=e);}i(lt,"setInputValue");function ft(t){let e=c.get(t);return d(e)?e.value:""}i(ft,"inputValue");function _t(t,e){e&&(e.preventDefault&&t.preventDefault(),e.stopImmediatePropagation&&"stopImmediatePropagation"in t?t.stopImmediatePropagation():e.stopPropagation&&t.stopPropagation());}i(_t,"applyControl");function wt(t,e){let n=t.offsetX,o=t.offsetY;if((n==null||o==null)&&e&&e.getBoundingClientRect){let s=e.getBoundingClientRect();n=t.clientX-s.left,o=t.clientY-s.top;}return {offsetX:n,offsetY:o}}i(wt,"computeOffsets");function pt(t){var a,u,l,p;let e={type:t.type,timeStamp:t.timeStamp,bubbles:t.bubbles,cancelable:t.cancelable,composed:t.composed},n={altKey:(a=t.altKey)!=null?a:false,ctrlKey:(u=t.ctrlKey)!=null?u:false,metaKey:(l=t.metaKey)!=null?l:false,shiftKey:(p=t.shiftKey)!=null?p:false};if(t instanceof MouseEvent){let{offsetX:g,offsetY:f}=wt(t,t.target);Object.assign(e,{x:t.x,y:t.y,clientX:t.clientX,clientY:t.clientY,pageX:t.pageX,pageY:t.pageY,screenX:t.screenX,screenY:t.screenY,movementX:t.movementX,movementY:t.movementY,button:t.button,buttons:t.buttons,offsetX:g,offsetY:f});}if(typeof PointerEvent!="undefined"&&t instanceof PointerEvent&&Object.assign(e,{pointerId:t.pointerId,width:t.width,height:t.height,pressure:t.pressure,tangentialPressure:t.tangentialPressure,tiltX:t.tiltX,tiltY:t.tiltY,twist:t.twist,pointerType:t.pointerType,isPrimary:t.isPrimary}),typeof WheelEvent!="undefined"&&t instanceof WheelEvent&&Object.assign(e,{deltaX:t.deltaX,deltaY:t.deltaY,deltaZ:t.deltaZ,deltaMode:t.deltaMode}),t instanceof KeyboardEvent&&Object.assign(e,{key:t.key,code:t.code,repeat:t.repeat,location:t.location,isComposing:t.isComposing}),t instanceof InputEvent&&Object.assign(e,{data:t.data,inputType:t.inputType,isComposing:t.isComposing}),t instanceof FocusEvent&&Object.assign(e,{}),typeof TouchEvent!="undefined"&&t instanceof TouchEvent){let g=i(f=>({identifier:f.identifier,clientX:f.clientX,clientY:f.clientY,pageX:f.pageX,pageY:f.pageY,screenX:f.screenX,screenY:f.screenY,radiusX:f.radiusX,radiusY:f.radiusY,rotationAngle:f.rotationAngle,force:f.force}),"mapTouch");Object.assign(e,{touches:Array.from(t.touches).map(g),changedTouches:Array.from(t.changedTouches).map(g),targetTouches:Array.from(t.targetTouches).map(g)});}typeof PopStateEvent!="undefined"&&t instanceof PopStateEvent&&Object.assign(e,{state:t.state});let o=t.target instanceof Node?_(t.target):null,r=t.currentTarget instanceof Node?_(t.currentTarget):null,s=t.relatedTarget instanceof Node?_(t.relatedTarget):null;return I(v(v({},e),n),{target:o,currentTarget:r,relatedTarget:s,__eventClass__:t.constructor?t.constructor.name:"Event"})}i(pt,"serializeEvent");function gt(t,e,n,o,r){let s=c.get(t);if(!s||typeof s.addEventListener!="function")return;let a=i(u=>{let l=pt(u);r&&_t(u,{preventDefault:r.alwaysPreventDefault,stopImmediatePropagation:r.alwaysStopImmediatePropagation,stopPropagation:r.alwaysStopPropagation}),T(e,n,l);},"handler");m.set(e,{target:s,type:n,handler:a,options:o}),s.addEventListener(n,a,o);}i(gt,"attachEventListener");function ht(t,e){let n=m.get(e);n&&(m.delete(e),n.target.removeEventListener(n.type,n.handler));}i(ht,"dettachEventListener");function mt(t){let e=document.createElement("style");return e.innerHTML=t,document.head.appendChild(e),_(e)}i(mt,"injectComponentStyles");function yt(t){let e=c.get(t);document.head.removeChild(e);}i(yt,"rejectComponentStyles");function vt(t,e,n){let o=c.get(t),r=c.get(e),s=c.get(n);!d(o)||!r||!s||o.replaceChild(r,s);}i(vt,"replaceChildNode");function bt(t){let e=c.get(t);return e?_(e.parentNode):null}i(bt,"parentNode");function Et(t){let e=c.get(t);return e?_(e.nextSibling):null}i(Et,"nextSibling");function Tt(t){let e="";for(let n=0;n<t.length;n++)e+=String.fromCharCode(t[n]);return btoa(e)}i(Tt,"arrayBufferToBase64");async function Nt(t,e,n){let o=await fetch(t,e);switch(n){case "text":return await o.text();case "base64":return Tt(await o.bytes());default:return await o.json()}}i(Nt,"httpFetch");function Ot(t,e){let n=c.get(t);d(n)&&(n.innerHTML=e);}i(Ot,"setInnerHTML");function St(t){let e=c.get(t);return d(e)?e.innerHTML:""}i(St,"getInnerHTML");function Ct(t,e,...n){let o=c.get(t);if(!o)return null;let r=E(o,e);if(!r)return null;let[s,a]=r;return s.apply(a,n.map(u=>{var l;return u&&typeof u=="object"&&u.__ref__&&(l=c.get(u.__ref__))!=null?l:u}))}i(Ct,"invokeObjectMethod");function It(t,e,...n){let o=c.get(t);if(!o)return null;let r=E(o,e);if(!r)return null;let[s,a]=r,u=s.apply(a,n.map(l=>{var p;return l&&typeof l=="object"&&l.__ref__&&(p=c.get(l.__ref__))!=null?p:l}));return u&&{uid:w(u),objType:typeof u,isArray:false,tag:"unknown"}}i(It,"invokeObjectMethodAndHold");function jt(t,e){let n=c.get(t);if(!n)return null;let o=E(n,e);return o?o[0]:null}i(jt,"getObjectProperty");function E(t,e){let n=e.split("."),o=t,r=t;for(let s=0;s<n.length;s++){let a=n[s];if(!(a in o))return null;r=o,o=o[a];}return [o,r]}i(E,"getAdvanceObjectProperty");function At(t,e,n){var a;let o=e.split("."),r=t;for(let u=0;u<o.length-1;u++){let l=o[u];if(!(l in r))return;r=r[l];}let s=o[o.length-1];r[s]=typeof n=="object"&&n.__ref__&&(a=c.get(n.__ref__))!=null?a:n;}i(At,"setAdvanceObjectProperty");function Pt(t,e,n){let o=c.get(t);o&&At(o,e,n);}i(Pt,"setObjectProperty");var y=new Map;function T(t,...e){NativeOUID==null||NativeOUID.invoke(t,"__ouid_web_event__",JSON.stringify(e));}i(T,"emit");function xt(t,e){y.has(t)||(y.set(t,[]),window[t]=(n,o,r)=>{var s;(s=y.get(t))==null||s.forEach(a=>a(n,o,r));}),y.get(t).push(e);}i(xt,"subscribe");function Dt(t){H(t);}i(Dt,"releaseNode");function kt(){return window.location.pathname}i(kt,"locationPath");function Mt(t,e){window.history.pushState(t,"",e);}i(Mt,"historyPushState");function Xt(){window.dispatchEvent(new PopStateEvent("popstate",{state:window.history.state}));}i(Xt,"dispatchPopStateEvent");function Lt(t,e,n,o){let r=c.get(t);if(r&&"dispatchEvent"in r){let s=n?new window[n](e,o):new CustomEvent(e,o);r.dispatchEvent(s);}}i(Lt,"dispatchEvent");function N(t,e){return {tag:e.split(/\s/)[0],uid:e,objType:typeof t,isArray:Array.isArray(t)}}i(N,"asOObject");function Yt(t){let e=c.get(t);return e?N(e,t):null}i(Yt,"getOObject");function Ut(t){let e=window[t];if(!e)return null;let n=w(e,t);return N(e,n)}i(Ut,"acquireObject");function Wt(t,...e){let n=window[t];if(!n)return null;let o=new n(...e),r=w(o);return N(o,r)}i(Wt,"newObject");function Vt(t,e){return setTimeout(i(()=>{T(t);},"cb"),e)}i(Vt,"addSetTimeout");function Rt(t,e){return setInterval(i(()=>{T(t);},"cb"),e)}i(Rt,"addSetInterval");function Ft(t){clearTimeout(t);}i(Ft,"removeSetTimeout");function Bt(t){clearInterval(t);}i(Bt,"removeSetInterval");var P,x,A=(x=(P=globalThis.UNIFIED_ENV)!=null?P:window.UNIFIED_ENV)!=null?x:window.WebOUID&&window.WebOUID.UNIFIED_ENV;function Kt(){var t,e;if(__WEB_OUID_EMULATION__||A){globalThis.__OUI_PUR_JS_CONTEXT__=true,window.NativeOUID=Object.assign((t=window.NativeOUID)!=null?t:{},{invoke:i((o,r,s)=>{window[`${r}`](o,s);},"invoke")}),window.WebOUID=Object.assign((e=window.WebOUID)!=null?e:{},{invoke:i(async(o,r,s)=>{window.__native_message__(o,r,s);},"invoke")});let n=window;n.__ouid_native_promises={},window.WebOUID.nativeCall=(o,r,s)=>new Promise((a,u)=>{n.__ouid_native_promises[o]={resolve:a,reject:u},n.WebOUID._callNativeFunction_(o,r,s);}),n.__ouid_native_callback__=(o,r,s)=>{n.__ouid_native_promises&&n.__ouid_native_promises[o]&&(r?n.__ouid_native_promises[o].resolve(s):n.__ouid_native_promises[o].reject(s),delete n.__ouid_native_promises[o]);};}w(document,"document"),w(window,"window"),window._ouid_query=U,window._ouid_queryAll=W,window._ouid_createElement=F,window._ouid_createComment=B,window._ouid_invokeObjectMethod=Ct,window._ouid_invokeObjectMethodAndHold=It,window._ouid_getObjectProperty=jt,window._ouid_setObjectProperty=Pt,window._ouid_appendChild=q,window._ouid_addClass=z,window._ouid_removeClass=$,window._ouid_setInnerHTML=Ot,window._ouid_getInnerHTML=St,window._ouid_setInnerText=G,window._ouid_getInnerText=Q,window._ouid_setContentText=J,window._ouid_getContentText=Z,window._ouid_setAttribute=et,window._ouid_removeAttribute=nt,window._ouid_getAttribte=ot,window._ouid_getAttribteNames=it,window._ouid_childNodes=V,window._ouid_cloneNode=rt,window._ouid_removeNode=st,window._ouid_removeChild=ct,window._ouid_replaceChildNode=vt,window._ouid_replaceNode=at,window._ouid_insertAfter=ut,window._ouid_insertBefore=dt,window._ouid_setInputValue=lt,window._ouid_inputValue=ft,window._ouid_attachEventListener=gt,window._ouid_dettachEventListener=ht,window._ouid_injectComponentStyles=mt,window._ouid_rejectComponentStyles=yt,window._ouid_locationPath=kt,window._ouid_historyPushState=Mt,window._ouid_dispatchPopStateEvent=Xt,window._ouid_parentNode=bt,window._ouid_releaseNode=Dt,window._ouid_getOObject=Yt,window._ouid_acquireObject=Ut,window._ouid_newObject=Wt,window._ouid_dispatchEvent=Lt,window._ouid_setTimeout=Vt,window._ouid_clearTimeout=Ft,window._ouid_dsetInterval=Rt,window._ouid_clearInterval=Bt,window._ouid_setStyle=tt,window._ouid_nextSibling=Et,window._ouid_fetch=Nt,window._ouid_alert=alert,window._ouid_prompt=prompt,xt("__native_message__",async(n,o,r)=>{let s=window[o];if(!s){if(A)try{try{let u=await window.WebOUID.nativeCall(n,o,r);NativeOUID==null||NativeOUID.invoke(n,"__ouid_native_event_success__",u);}catch(u){NativeOUID==null||NativeOUID.invoke(n,"__ouid_native_event_error__",u);}}catch(u){}NativeOUID==null||NativeOUID.invoke(n,"__ouid_native_event_error__",JSON.stringify([{message:"No function match the given name: ("+o+")"}]));return}let a=await s(...JSON.parse(r));NativeOUID==null||NativeOUID.invoke(n,"__ouid_native_event_success__",JSON.stringify([{status:"success",data:a}]));});}i(Kt,"initDOM");
2
+ exports.ELEMENT_REGISTRY=c;exports.emit=T;exports.initDOM=Kt;exports.stringToHex=L;//# sourceMappingURL=dom.cjs.map
3
3
  //# sourceMappingURL=dom.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/dom/dom.ts"],"names":["stringToHex","str","hexString","i","length","hex","charCodeAt","toString","ELEMENT_REGISTRY","Map","storedElementMap","WeakMap","OBJECT_INDEX","DOM_EVENT_LISTENER","query","selector","filter","nodeId","doc","get","document","isElementNode","element","querySelector","htmlElementToONode","queryAll","querySelectorAll","map","e","childNodes","node","children","treeWalker","createTreeWalker","tmp","firstChild","parentNode","push","nextSibling","c","nodeType","Node","TEXT_NODE","ELEMENT_NODE","ATTRIBUTE_NODE","COMMENT_NODE","elementAttributes","attributes","attr","name","value","recursiveLevel","uid","putInRegistry","tag","tagName","toLocaleLowerCase","type","isArray","objType","fullFilter","Set","forEach","f","classes","classList","style","cssText","textContent","createElement","props","el","has","createElementNS","k","setAttribute","createComment","data","elementId","id","padStart","set","error","console","removeFromRegistry","n","delete","appendChild","childId","child","setInnerText","text","innerText","setContentText","getContentText","removeClass","tokens","remove","addClass","add","getInnerText","setStyle","key","setProperty","removeAttribute","getAttribte","getAttribute","getAttribteNames","getAttributeNames","cloneNode","subtree","removeNode","removeChild","replaceWith","toReplaceId","toReplace","insertAfter","toInsertId","toInsert","after","insertBefore","setInputValue","inputValue","attachEventListener","cbId","eventName","cb","__name","target","emit","addEventListener","dettachEventListener","removeEventListener","injectComponentStyles","css","styleEl","innerHTML","head","rejectComponentStyles","styleId","replaceChildNode","parentId","parent","replaceChild","arrayBufferToBase64","buffer","binary","String","fromCharCode","btoa","httpFetch","url","encodeAs","result","fetch","bytes","json","setInnerHTML","html","getInnerHTML","invokeObjectMethod","fn","args","getAdvanceObjectProperty","method","apply","getObjectProperty","obj","path","els","split","current","setAdvanceObjectProperty","setObjectProperty","listeners","NativeOUID","invoke","JSON","stringify","subscribe","event","callback","window","fnName","argsJson","releaseNode","locationPath","location","pathname","historyPushState","history","pushState","dispatchPopStateEvent","dispatchEvent","PopStateEvent","state","eventClass","initDict","CustomEvent","asOObject","Array","getOObject","acquireObject","objId","addSetTimeout","delay","setTimeout","addSetInterval","setInterval","removeSetTimeout","timerId","clearTimeout","removeSetInterval","clearInterval","initDOM","__WEB_OUID_EMULATION__","globalThis","__OUI_PUR_JS_CONTEXT__","WebOUID","observer","MutationObserver","mutations","mutation","removedNodes","_ouid_query","_ouid_queryAll","_ouid_createElement","_ouid_createComment","_ouid_invokeObjectMethod","_ouid_getObjectProperty","_ouid_setObjectProperty","_ouid_appendChild","_ouid_addClass","_ouid_removeClass","_ouid_setInnerHTML","_ouid_getInnerHTML","_ouid_setInnerText","_ouid_getInnerText","_ouid_setContentText","_ouid_getContentText","_ouid_setAttribute","_ouid_removeAttribute","_ouid_getAttribte","_ouid_getAttribteNames","_ouid_childNodes","_ouid_cloneNode","_ouid_removeNode","_ouid_removeChild","_ouid_replaceChildNode","_ouid_replaceNode","_ouid_insertAfter","_ouid_insertBefore","_ouid_setInputValue","_ouid_inputValue","_ouid_attachEventListener","_ouid_dettachEventListener","_ouid_injectComponentStyles","_ouid_rejectComponentStyles","_ouid_locationPath","_ouid_historyPushState","_ouid_dispatchPopStateEvent","_ouid_parentNode","_ouid_releaseNode","_ouid_getOObject","_ouid_acquireObject","_ouid_dispatchEvent","_ouid_setTimeout","_ouid_clearTimeout","_ouid_dsetInterval","_ouid_clearInterval","_ouid_setStyle","_ouid_nextSibling","_ouid_fetch","_ouid_alert","alert","_ouid_prompt","prompt","observe","body","childList","parse","status"],"mappings":"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","file":"dom.cjs","sourcesContent":["export function stringToHex(str: string): string {\n\tlet hexString = '';\n\tfor (let i = 0; i < str.length; i++) {\n\t\tconst charCode = str.charCodeAt(i);\n\t\tlet hex = charCode.toString(16);\n\t\thex = hex.length === 1 ? '0' + hex : hex;\n\t\thexString += hex;\n\t}\n\treturn hexString;\n}\n\ntype OObject = { uid: string, objType: string, tag: string, isArray: boolean }\nexport type ONode = OObject & { textContent?: string | null, type: 'Element' | 'Text' | 'Comment' | 'Attribute' | 'Unknown', attributes?: { name: string, value: string }[], children?: ONode[], classes?: string[], style?: string }\nexport const ELEMENT_REGISTRY = new Map<string, any>()\nconst storedElementMap = new WeakMap<Node, string>()\nlet OBJECT_INDEX = 0\nconst DOM_EVENT_LISTENER = new Map<string, any>()\n/**\n * Query a dom element and store it in ELEMENT_REGISTRY for usage in js engine\n * @param selector \n */\nfunction query<T extends 'children' | 'classes' | 'style' | 'attributes'>(selector: string, filter?: T[], nodeId?: string): ONode | null {\n\tconst doc = nodeId ? ELEMENT_REGISTRY.get(nodeId) : document\n\tif (!isElementNode(doc)) {\n\t\treturn null\n\t}\n\tconst element = doc.querySelector(selector)\n\tif (!element) {\n\t\treturn null\n\t}\n\treturn htmlElementToONode(element, filter, 1)\n}\nfunction queryAll<T extends 'children' | 'classes' | 'style' | 'attributes'>(selector: string, filter?: T[], nodeId?: string): ONode[] {\n\tconst doc = nodeId ? ELEMENT_REGISTRY.get(nodeId) : document\n\tif (!isElementNode(doc)) {\n\t\treturn []\n\t}\n\tconst elements = [...doc.querySelectorAll(selector)]\n\tconst nodes: ONode[] = elements.map(e => htmlElementToONode(e, filter, 1)).filter(e => e !== null)\n\treturn nodes\n}\nfunction childNodes(nodeId: string): ONode[] {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!isElementNode(node)) {\n\t\treturn []\n\t}\n\tconst children: ChildNode[] = []\n\tconst treeWalker = document.createTreeWalker(node)\n\tlet tmp: Node | null = treeWalker.firstChild();\n\twhile (tmp) {\n\t\tif (tmp.parentNode === node) {\n\t\t\tchildren.push(tmp as ChildNode)\n\t\t}\n\t\ttmp = treeWalker.nextSibling();\n\t}\n\n\treturn children.map(c => htmlElementToONode(c, ['attributes'], 0)).filter(e => e !== null)\n}\nfunction nodeType(element: Node): 'Element' | 'Text' | 'Comment' | 'Attribute' | 'Unknown' {\n\tswitch (element.nodeType) {\n\t\tcase Node.TEXT_NODE:\n\t\t\treturn 'Text'\n\t\tcase Node.ELEMENT_NODE:\n\t\t\treturn 'Element'\n\t\tcase Node.ATTRIBUTE_NODE:\n\t\t\treturn 'Attribute'\n\t\tcase Node.COMMENT_NODE:\n\t\t\treturn 'Comment'\n\t\tdefault:\n\t\t\treturn 'Unknown'\n\t}\n}\ntype Attributes = { name: string, value: string }[]\nfunction elementAttributes(element: Element): Attributes {\n\treturn [...element.attributes].map((attr) => {\n\t\treturn { name: attr.name, value: attr.value }\n\t})\n}\nfunction htmlElementToONode<T extends 'children' | 'classes' | 'style' | 'attributes'>(element: Node, filter?: Array<T>, recursiveLevel: number = 1): ONode | null {\n\tif (!element) {\n\t\treturn null\n\t}\n\tconst node: ONode = { uid: putInRegistry(element), tag: isElementNode(element) ? element.tagName.toLocaleLowerCase() : '', type: nodeType(element), isArray: false, objType: typeof element }\n\tconst fullFilter = filter ? new Set([...filter, 'attributes', 'classes']) : new Set(['attributes', 'classes'])\n\tif (isElementNode(element)) {\n\t\tfullFilter.forEach(f => {\n\t\t\tswitch (f) {\n\t\t\t\tcase 'attributes':\n\t\t\t\t\tnode.attributes = elementAttributes(element)\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'children':\n\t\t\t\t\tif (recursiveLevel > 0) {\n\t\t\t\t\t\tnode.children = [...element.children].map(c => htmlElementToONode(c, filter, recursiveLevel - 1)).filter(e => e !== null)\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'classes':\n\t\t\t\t\tnode.classes = [...element.classList]\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'style':\n\t\t\t\t\tnode.style = (element as HTMLElement)?.style.cssText\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t})\n\t}\n\tif (node.type === 'Text') {\n\t\tnode.textContent = element.textContent\n\t}\n\treturn node\n}\n/**\n * Create a new DOM element\n * @param tag The element tag name\n * @param props The attributes to set on the new created element\n * @returns a node instance\n */\nfunction createElement(tag: string, props: Record<string, string>): ONode | null {\n\tconst SVG_NS = \"http://www.w3.org/2000/svg\";\n\tconst SVG_TAGS = new Set([\n\t\t\"svg\", \"path\", \"circle\", \"rect\", \"line\", \"polyline\", \"polygon\",\n\t\t\"ellipse\", \"g\", \"defs\", \"marker\", \"clipPath\", \"mask\", \"text\", \"tspan\"\n\t]);\n\n\tconst isSvgTag = SVG_TAGS.has(tag);\n\n\t// Create element in the right namespace\n\tconst el = isSvgTag\n\t\t? document.createElementNS(SVG_NS, tag)\n\t\t: document.createElement(tag);\n\n\t// Apply props as attributes (works for both HTML and SVG)\n\tfor (const k in props) {\n\t\tel.setAttribute(k, props[k]);\n\t}\n\n\treturn htmlElementToONode(el);\n}\nfunction createComment(data: string) {\n\tconst el = document.createComment(data)\n\treturn htmlElementToONode(el)\n}\nfunction putInRegistry(element: any, elementId?: string): string {\n\n\tif (storedElementMap.has(element)) {\n\t\treturn storedElementMap.get(element)!\n\t}\n\tconst id = elementId ?? stringToHex(`${OBJECT_INDEX++}`.padStart(16, '0'))\n\tELEMENT_REGISTRY.set(id, element)\n\n\ttry {\n\t\tstoredElementMap.set(element, id)\n\t} catch (error) {\n\t\tconsole.error(error)\n\t}\n\treturn id\n}\nfunction removeFromRegistry(n: Node | string): void {\n\tlet node: any = n\n\tif (typeof n === 'string') {\n\t\tnode = ELEMENT_REGISTRY.get(n)\n\t\tif (!node) {\n\t\t\treturn\n\t\t}\n\t}\n\tif (storedElementMap.has(node)) {\n\t\tconst id = storedElementMap.get(node)!\n\t\tELEMENT_REGISTRY.delete(id)\n\t\tstoredElementMap.delete(node)\n\t\treturn\n\t}\n}\n\nfunction appendChild(nodeId: string, childId: string) {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tconst child = ELEMENT_REGISTRY.get(childId)\n\tif (!node || !child) {\n\t\treturn\n\t}\n\tnode.appendChild(child)\n}\nfunction isElementNode(node: Node | null | undefined): node is HTMLElement {\n\treturn node === document || node?.nodeType === Node.ELEMENT_NODE\n}\nfunction setInnerText(nodeId: string, text: string) {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!isElementNode(node)) {\n\t\treturn\n\t}\n\tnode.innerText = text\n}\nfunction setContentText(nodeId: string, text: string) {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!node || isElementNode(node)) {\n\t\treturn\n\t}\n\tnode!.textContent = text\n}\nfunction getContentText(nodeId: string) {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!node || isElementNode(node)) {\n\t\treturn ''\n\t}\n\treturn node!.textContent\n}\n\nfunction removeClass(nodeId: string, ...tokens: string[]) {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!isElementNode(node)) {\n\t\treturn\n\t}\n\tnode.classList.remove(...tokens)\n}\nfunction addClass(nodeId: string, ...tokens: string[]) {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!isElementNode(node)) {\n\t\treturn\n\t}\n\tnode.classList.add(...tokens)\n\n}\n\nfunction getInnerText(nodeId: string): string {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!isElementNode(node)) {\n\t\treturn ''\n\t}\n\treturn node.innerText\n}\nfunction setStyle(nodeId: string, key: string, value: any) {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!isElementNode(node)) {\n\t\treturn\n\t}\n\tnode.style.setProperty(key, value)\n}\nfunction setAttribute(nodeId: string, name: string, value: string) {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!isElementNode(node)) {\n\t\treturn\n\t}\n\tnode.setAttribute(name, value)\n\treturn elementAttributes(node)\n}\nfunction removeAttribute(nodeId: string, name: string): Attributes {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!isElementNode(node)) {\n\t\treturn []\n\t}\n\tnode.removeAttribute(name)\n\treturn elementAttributes(node)\n}\nfunction getAttribte(nodeId: string, name: string): string {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!isElementNode(node)) {\n\t\treturn ''\n\t}\n\treturn node.getAttribute(name) ?? ''\n}\nfunction getAttribteNames(nodeId: string): string[] {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!isElementNode(node)) {\n\t\treturn []\n\t}\n\treturn node.getAttributeNames()\n}\nfunction cloneNode(nodeId: string, subtree: boolean): ONode | null {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!(node)) {\n\t\treturn null\n\t}\n\treturn htmlElementToONode(node.cloneNode(subtree))\n}\nfunction removeNode(nodeId: string): void {\n\tconst node = ELEMENT_REGISTRY.get(nodeId) as Element | null\n\tnode?.remove()\n}\nfunction removeChild(nodeId: string, childId: string): void {\n\tconst node = ELEMENT_REGISTRY.get(nodeId) as Element | null\n\tconst child = ELEMENT_REGISTRY.get(childId)\n\tif (!child) {\n\t\treturn\n\t}\n\tnode?.removeChild(child)\n}\nfunction replaceWith(nodeId: string, toReplaceId: string): void {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tconst toReplace = ELEMENT_REGISTRY.get(toReplaceId)\n\t\t// if (!isElementNode(node) || !toReplace) {\n\t\t// \treturn\n\t\t// }\n\t\t; (node as any).replaceWith(toReplace)\n}\nfunction insertAfter(nodeId: string, toInsertId: string): void {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tconst toInsert = ELEMENT_REGISTRY.get(toInsertId)\n\tif (!toInsert) {\n\t\treturn\n\t}\n\t; (node as any).after(toInsert)\n}\nfunction insertBefore(nodeId: string, childId: string, toInsertId: string): void {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tconst child = ELEMENT_REGISTRY.get(childId)\n\tconst toInsert = ELEMENT_REGISTRY.get(toInsertId)\n\tif (!isElementNode(node) || !toInsert || !child) {\n\t\treturn\n\t}\n\tnode.insertBefore(toInsert, child)\n}\nfunction setInputValue(nodeId: string, value: string): void {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!isElementNode(node)) {\n\t\treturn\n\t}\n\t(node as HTMLInputElement | HTMLTextAreaElement).value = value\n}\nfunction inputValue(nodeId: string): string {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!isElementNode(node)) {\n\t\treturn ''\n\t}\n\treturn (node as HTMLInputElement | HTMLTextAreaElement).value\n}\n\nfunction attachEventListener(nodeId: string, cbId: string, eventName: string) {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!node) {\n\t\treturn\n\t}\n\tif ('addEventListener' in node) {\n\t\tconst cb = (e: Event) => {\n\t\t\tconst target = (e as any)?.target\n\t\t\temit(cbId, eventName, { target: target ? htmlElementToONode(target) : null, e: e })\n\t\t}\n\t\tDOM_EVENT_LISTENER.set(cbId, cb)\n\t\tnode.addEventListener(eventName, cb)\n\t}\n}\n\nfunction dettachEventListener(nodeId: string, cbId: string, eventName: string) {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!isElementNode(node)) {\n\t\treturn\n\t}\n\tconst cb = DOM_EVENT_LISTENER.get(cbId)\n\tif (cb) {\n\t\tDOM_EVENT_LISTENER.delete(cbId)\n\t\tnode.removeEventListener(eventName, cb)\n\t}\n}\nfunction injectComponentStyles(css: string) {\n\tconst styleEl = document.createElement('style')\n\tstyleEl.innerHTML = css\n\tdocument.head.appendChild(styleEl)\n\treturn htmlElementToONode(styleEl)\n}\nfunction rejectComponentStyles(styleId: string) {\n\tconst style = ELEMENT_REGISTRY.get(styleId)\n\tdocument.head.removeChild(style)\n}\n\nfunction replaceChildNode(parentId: string, nodeId: string, toReplaceId: string): void {\n\tconst parent = ELEMENT_REGISTRY.get(parentId)\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tconst toReplace = ELEMENT_REGISTRY.get(toReplaceId)\n\tif (!isElementNode(parent) || !node || !toReplace) {\n\t\treturn\n\t}\n\tparent.replaceChild(node, toReplace)\n}\nfunction parentNode(nodeId: string): ONode | null {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!node) {\n\t\treturn null\n\t}\n\treturn htmlElementToONode(node.parentNode as Node)\n}\nfunction nextSibling(nodeId: string): ONode | null {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!node) {\n\t\treturn null\n\t}\n\treturn htmlElementToONode((node as Element).nextSibling as Node)\n}\nfunction arrayBufferToBase64(buffer: Uint8Array) {\n const binary = String.fromCharCode(...buffer);\n return btoa(binary);\n}\nasync function httpFetch(url: string, data: { method: string, headers: Record<string, string>, body: any, credentials: \"include\" | \"omit\" | \"same-origin\"}, encodeAs?: 'json' | 'base64' | 'text'): Promise<any> {\n\tconst result = await fetch(url, data)\n\tswitch(encodeAs) {\n\t\tcase 'text':\n\t\treturn await result.text()\n\t\tcase 'base64':\n\t\t\treturn arrayBufferToBase64(await result.bytes())\n\t\tdefault: \n\t\treturn await result.json()\n\t}\n}\n\n\n\nfunction setInnerHTML(nodeId: string, html: string) {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!isElementNode(node)) {\n\t\treturn\n\t}\n\tnode.innerHTML = html\n}\nfunction getInnerHTML(nodeId: string): string {\n\tconst node = ELEMENT_REGISTRY.get(nodeId)\n\tif (!isElementNode(node)) {\n\t\treturn ''\n\t}\n\treturn node.innerHTML\n}\n\nfunction invokeObjectMethod(id: string, fn: string, ...args: any[]): any {\n\tconst node = ELEMENT_REGISTRY.get(id)\n\tif (!node) {\n\t\treturn null\n\t}\n\tconst tmp = getAdvanceObjectProperty(node, fn)\n\tif (!tmp) {\n\t\treturn null\n\t}\n\tconst [method, target] = tmp\n\treturn (method as Function).apply(target, args)\n}\nfunction getObjectProperty(id: string, name: string): any {\n\tconst node = ELEMENT_REGISTRY.get(id)\n\tif (!node) {\n\t\treturn null\n\t}\n\tconst tmp = getAdvanceObjectProperty(node, name)\n\tif (tmp) {\n\t\treturn tmp[0]\n\t}\n\treturn null\n}\nfunction getAdvanceObjectProperty(obj: any, path: string): [any, any] | null {\n\tconst els = path.split('.')\n\tlet current: any = obj\n\tlet target: any = obj\n\tfor (let i = 0; i < els.length; i++) {\n\t\tconst el = els[i]\n\t\tif (!(el in current)) {\n\t\t\treturn null\n\t\t}\n\t\ttarget = current\n\t\tcurrent = current[el]\n\t}\n\treturn [current, target]\n}\nfunction setAdvanceObjectProperty(obj: any, path: string, value: any): void {\n\tconst els = path.split('.')\n\n\tlet current: any = obj\n\tfor (let i = 0; i < els.length - 1; i++) {\n\t\tconst el = els[i]\n\t\tif (!(el in current)) {\n\t\t\treturn\n\t\t}\n\t\tcurrent = current[el]\n\t}\n\tconst k = els[els.length - 1]\n\tcurrent[k] = value\n}\nfunction setObjectProperty(id: string, name: string, value: any): void {\n\tconst node = ELEMENT_REGISTRY.get(id)\n\tif (!node) {\n\t\treturn\n\t}\n\tsetAdvanceObjectProperty(node, name, value)\n}\nexport declare var NativeOUID: { invoke: (id: string, fn: string, argsJson: string) => void } | undefined\n\nconst listeners = new Map<string, ((id: string, fn: string, argJson: string) => void)[]>()\n\nexport function emit(id: string, ...args: any[]): void {\n\tNativeOUID?.invoke(id, '__ouid_web_event__', JSON.stringify(args))\n}\nfunction subscribe(event: string, callback: (id: string, fnName: string, argsJson: string) => void): void {\n\tif (!listeners.has(event)) {\n\t\tlisteners.set(event, []);\n\t\t// attach a single handler for native -> JS calls\n\t\t(window as any)[event] = (id: string, fnName: string, argsJson: string) => {\n\t\t\tlisteners.get(event)?.forEach(cb => cb(id, fnName, argsJson))\n\t\t}\n\t}\n\tlisteners.get(event)!.push(callback)\n}\nfunction releaseNode(nodeId: string): void {\n\t// remove node from ELEMENT_REGISTRY\n\tremoveFromRegistry(nodeId)\n}\nfunction locationPath(): string {\n\treturn window.location.pathname\n}\nfunction historyPushState(data: any, path: string): void {\n\twindow.history.pushState(data, '', path)\n}\nfunction dispatchPopStateEvent(): void {\n\twindow.dispatchEvent(new PopStateEvent('popstate', { state: window.history.state }))\n}\nfunction dispatchEvent(id: string, eventName: string, eventClass?: string, initDict?: any): void {\n\tconst obj = ELEMENT_REGISTRY.get(id)\n\tif (!obj) {\n\t\treturn\n\t}\n\tif ('dispatchEvent' in obj) {\n\t\tconst event = eventClass ? new window[eventClass as keyof Window](eventName, initDict) : new CustomEvent(eventName, initDict)\n\t\tobj.dispatchEvent(event)\n\t}\n}\nfunction asOObject(obj: any, id: string): OObject {\n\treturn {\n\t\ttag: id.split(/\\s/)[0],\n\t\tuid: id,\n\t\tobjType: typeof obj,\n\t\tisArray: Array.isArray(obj)\n\t}\n}\nfunction getOObject(id: string): OObject | null {\n\tconst obj = ELEMENT_REGISTRY.get(id)\n\tif (!obj) {\n\t\treturn null\n\t}\n\treturn asOObject(obj, id)\n}\nfunction acquireObject(name: string): OObject | null {\n\tconst obj = window[name as keyof Window]\n\tif (!obj) {\n\t\treturn null\n\t}\n\tconst objId = putInRegistry(obj, name)\n\treturn asOObject(obj, objId)\n}\nfunction addSetTimeout(cbId: string, delay: number): number {\n\tconst cb = () => {\n\t\temit(cbId)\n\t}\n\treturn setTimeout(cb, delay) as any\n}\nfunction addSetInterval(cbId: string, delay: number): number {\n\tconst cb = () => {\n\t\temit(cbId)\n\t}\n\treturn setInterval(cb, delay) as any\n}\nfunction removeSetTimeout(timerId: number): void {\n\tclearTimeout(timerId)\n}\n\nfunction removeSetInterval(timerId: number): void {\n\tclearInterval(timerId)\n}\ndeclare const __WEB_OUID_EMULATION__: boolean;\nexport function initDOM(): void {\n\tif (__WEB_OUID_EMULATION__) {\n\t\t; (globalThis as any).__OUI_PUR_JS_CONTEXT__ = true\n\t\t\t; (window as any).NativeOUID = (window as any).NativeOUID ?? {\n\t\t\t\tinvoke: (id: string, fn: string, argsJson: string) => {\n\t\t\t\t\t(window as any)[`${fn}`](id, argsJson)\n\t\t\t\t}\n\t\t\t}\n\t\t\t; (window as any).WebOUID = (window as any).WebOUID ?? {\n\t\t\t\tinvoke: async (id: string, fn: string, argsJson: string) => {\n\t\t\t\t\t(window as any)[`__native_message__`](id, fn, argsJson)\n\t\t\t\t}\n\t\t\t}\n\t}\n\tconst observer = new MutationObserver(function (mutations) {\n\t\tmutations.forEach(mutation => {\n\t\t\tmutation.removedNodes.forEach(node => {\n\t\t\t\tif (node.nodeType === Node.ELEMENT_NODE) {\n\t\t\t\t\t// removeFromRegistry(node as Element)\n\t\t\t\t}\n\t\t\t})\n\t\t})\n\t});\n\tputInRegistry(document, 'document');\n\tputInRegistry(window, 'window');\n\t(window as any)._ouid_query = query;\n\t(window as any)._ouid_queryAll = queryAll;\n\t(window as any)._ouid_createElement = createElement;\n\t(window as any)._ouid_createComment = createComment;\n\t(window as any)._ouid_invokeObjectMethod = invokeObjectMethod;\n\t(window as any)._ouid_getObjectProperty = getObjectProperty;\n\t(window as any)._ouid_setObjectProperty = setObjectProperty;\n\t(window as any)._ouid_appendChild = appendChild;\n\t(window as any)._ouid_addClass = addClass;\n\t(window as any)._ouid_removeClass = removeClass;\n\t(window as any)._ouid_setInnerHTML = setInnerHTML;\n\t(window as any)._ouid_getInnerHTML = getInnerHTML;\n\t(window as any)._ouid_setInnerText = setInnerText;\n\t(window as any)._ouid_getInnerText = getInnerText;\n\t(window as any)._ouid_setContentText = setContentText;\n\t(window as any)._ouid_getContentText = getContentText;\n\t(window as any)._ouid_setAttribute = setAttribute;\n\t(window as any)._ouid_removeAttribute = removeAttribute;\n\t(window as any)._ouid_getAttribte = getAttribte;\n\t(window as any)._ouid_getAttribteNames = getAttribteNames;\n\t(window as any)._ouid_childNodes = childNodes;\n\t(window as any)._ouid_cloneNode = cloneNode;\n\t(window as any)._ouid_removeNode = removeNode;\n\t(window as any)._ouid_removeChild = removeChild;\n\t(window as any)._ouid_replaceChildNode = replaceChildNode;\n\t(window as any)._ouid_replaceNode = replaceWith;\n\t(window as any)._ouid_insertAfter = insertAfter;\n\t(window as any)._ouid_insertBefore = insertBefore;\n\t(window as any)._ouid_setInputValue = setInputValue;\n\t(window as any)._ouid_inputValue = inputValue;\n\t(window as any)._ouid_attachEventListener = attachEventListener;\n\t(window as any)._ouid_dettachEventListener = dettachEventListener;\n\t(window as any)._ouid_injectComponentStyles = injectComponentStyles;\n\t(window as any)._ouid_rejectComponentStyles = rejectComponentStyles;\n\t(window as any)._ouid_locationPath = locationPath;\n\t(window as any)._ouid_historyPushState = historyPushState;\n\t(window as any)._ouid_dispatchPopStateEvent = dispatchPopStateEvent;\n\t(window as any)._ouid_parentNode = parentNode;\n\t(window as any)._ouid_releaseNode = releaseNode;\n\t(window as any)._ouid_getOObject = getOObject;\n\t(window as any)._ouid_acquireObject = acquireObject;\n\t(window as any)._ouid_dispatchEvent = dispatchEvent;\n\t(window as any)._ouid_setTimeout = addSetTimeout;\n\t(window as any)._ouid_clearTimeout = removeSetTimeout;\n\t(window as any)._ouid_dsetInterval = addSetInterval;\n\t(window as any)._ouid_clearInterval = removeSetInterval;\n\t(window as any)._ouid_setStyle = setStyle;\n\t(window as any)._ouid_nextSibling = nextSibling;\n\t(window as any)._ouid_fetch = httpFetch;\n\t(window as any)._ouid_alert = alert;\n\t(window as any)._ouid_prompt = prompt;\n\tobserver.observe(document.body, { childList: true, subtree: true });\n\tsubscribe('__native_message__', async (id, fnName: string, argsJson: string) => {\n\t\tconst fn = (window as any)[fnName]\n\t\tif (!fn) {\n\t\t\tNativeOUID?.invoke(id, '__ouid_native_event_error__', JSON.stringify({ 'message': 'No function match the given name: (' + fnName + ')' }))\n\t\t\treturn\n\t\t}\n\t\tconst result = await (fn as Function)(...(JSON.parse(argsJson) as Array<any>))\n\t\tNativeOUID?.invoke(id, '__ouid_native_event_success__', JSON.stringify([{ status: 'success', data: result }]))\n\t});\n}\n\n"]}
1
+ {"version":3,"sources":["../../src/dom/dom.ts"],"names":["stringToHex","str","hexString","i","length","hex","charCodeAt","toString","ELEMENT_REGISTRY","Map","storedElementMap","WeakMap","OBJECT_INDEX","DOM_EVENT_LISTENER","query","selector","filter","nodeId","doc","get","document","isElementNode","element","querySelector","htmlElementToONode","queryAll","querySelectorAll","map","e","childNodes","node","children","treeWalker","createTreeWalker","tmp","firstChild","parentNode","push","nextSibling","c","nodeType","Node","TEXT_NODE","ELEMENT_NODE","ATTRIBUTE_NODE","COMMENT_NODE","elementAttributes","attributes","attr","name","value","recursiveLevel","uid","putInRegistry","tag","tagName","toLocaleLowerCase","type","isArray","objType","fullFilter","Set","forEach","f","classes","classList","style","cssText","textContent","createElement","props","el","has","createElementNS","k","setAttribute","createComment","data","elementId","id","padStart","set","error","console","removeFromRegistry","n","obj","cleanupRegistryForNode","delete","root","stack","pop","cleanupDomListenersForNode","cbId","entry","target","contains","removeEventListener","handler","appendChild","childId","child","setInnerText","text","innerText","setContentText","getContentText","removeClass","tokens","remove","addClass","add","getInnerText","setStyle","key","setProperty","removeAttribute","getAttribte","_a","getAttribute","getAttribteNames","getAttributeNames","cloneNode","subtree","removeNode","removeChild","replaceWith","toReplaceId","toReplace","insertAfter","toInsertId","toInsert","after","insertBefore","setInputValue","inputValue","applyControl","preventDefault","stopImmediatePropagation","stopPropagation","computeOffsets","t","offsetX","offsetY","getBoundingClientRect","r","clientX","left","clientY","top","serializeEvent","_b","_c","_d","base","timeStamp","bubbles","cancelable","composed","mods","altKey","ctrlKey","metaKey","shiftKey","MouseEvent","Object","assign","x","y","pageX","pageY","screenX","screenY","movementX","movementY","button","buttons","PointerEvent","pointerId","width","height","pressure","tangentialPressure","tiltX","tiltY","twist","pointerType","isPrimary","WheelEvent","deltaX","deltaY","deltaZ","deltaMode","KeyboardEvent","code","repeat","location","isComposing","InputEvent","inputType","FocusEvent","TouchEvent","mapTouch","__name","identifier","radiusX","radiusY","rotationAngle","force","touches","Array","from","changedTouches","targetTouches","PopStateEvent","state","targetNode","currentTargetNode","currentTarget","relatedTarget","__spreadProps","__spreadValues","__eventClass__","attachEventListener","eventName","options","policy","addEventListener","payload","alwaysPreventDefault","alwaysStopImmediatePropagation","alwaysStopPropagation","emit","dettachEventListener","injectComponentStyles","css","styleEl","innerHTML","head","rejectComponentStyles","styleId","replaceChildNode","parentId","parent","replaceChild","arrayBufferToBase64","buffer","binary","String","fromCharCode","btoa","httpFetch","url","encodeAs","result","fetch","bytes","json","setInnerHTML","html","getInnerHTML","invokeObjectMethod","fn","args","getAdvanceObjectProperty","method","apply","invokeObjectMethodAndHold","res","getObjectProperty","path","els","split","current","setAdvanceObjectProperty","setObjectProperty","listeners","NativeOUID","invoke","JSON","stringify","subscribe","event","callback","window","fnName","argsJson","cb","releaseNode","locationPath","pathname","historyPushState","history","pushState","dispatchPopStateEvent","dispatchEvent","eventClass","initDict","CustomEvent","asOObject","getOObject","acquireObject","objId","newObject","ctr","Ctr","instance","addSetTimeout","delay","setTimeout","addSetInterval","setInterval","removeSetTimeout","timerId","clearTimeout","removeSetInterval","clearInterval","UNIFIED_ENV","globalThis","WebOUID","initDOM","__WEB_OUID_EMULATION__","__OUI_PUR_JS_CONTEXT__","win","__ouid_native_promises","nativeCall","Promise","resolve","reject","_callNativeFunction_","__ouid_native_callback__","success","_ouid_query","_ouid_queryAll","_ouid_createElement","_ouid_createComment","_ouid_invokeObjectMethod","_ouid_invokeObjectMethodAndHold","_ouid_getObjectProperty","_ouid_setObjectProperty","_ouid_appendChild","_ouid_addClass","_ouid_removeClass","_ouid_setInnerHTML","_ouid_getInnerHTML","_ouid_setInnerText","_ouid_getInnerText","_ouid_setContentText","_ouid_getContentText","_ouid_setAttribute","_ouid_removeAttribute","_ouid_getAttribte","_ouid_getAttribteNames","_ouid_childNodes","_ouid_cloneNode","_ouid_removeNode","_ouid_removeChild","_ouid_replaceChildNode","_ouid_replaceNode","_ouid_insertAfter","_ouid_insertBefore","_ouid_setInputValue","_ouid_inputValue","_ouid_attachEventListener","_ouid_dettachEventListener","_ouid_injectComponentStyles","_ouid_rejectComponentStyles","_ouid_locationPath","_ouid_historyPushState","_ouid_dispatchPopStateEvent","_ouid_parentNode","_ouid_releaseNode","_ouid_getOObject","_ouid_acquireObject","_ouid_newObject","_ouid_dispatchEvent","_ouid_setTimeout","_ouid_clearTimeout","_ouid_dsetInterval","_ouid_clearInterval","_ouid_setStyle","_ouid_nextSibling","_ouid_fetch","_ouid_alert","alert","_ouid_prompt","prompt","parse","status"],"mappings":"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","file":"dom.cjs","sourcesContent":["export function stringToHex(str: string): string {\n let hexString = '';\n for (let i = 0; i < str.length; i++) {\n const charCode = str.charCodeAt(i);\n let hex = charCode.toString(16);\n hex = hex.length === 1 ? '0' + hex : hex;\n hexString += hex;\n }\n return hexString;\n}\ntype EventControl = {\n preventDefault?: boolean;\n stopPropagation?: boolean;\n stopImmediatePropagation?: boolean;\n};\n\ntype OObject = { uid: string, objType: string, tag: string, isArray: boolean }\nexport type ONode = OObject & { textContent?: string | null, type: 'Element' | 'Text' | 'Comment' | 'Attribute' | 'Unknown', attributes?: { name: string, value: string }[], children?: ONode[], classes?: string[], style?: string }\nexport const ELEMENT_REGISTRY = new Map<string, any>()\nconst storedElementMap = new WeakMap<Node, string>()\nlet OBJECT_INDEX = 0\ntype DomListenerEntry = {\n target: EventTarget;\n type: string;\n handler: (e: Event) => void;\n options?: boolean | AddEventListenerOptions;\n};\n\nconst DOM_EVENT_LISTENER = new Map<string, DomListenerEntry>()\n/**\n * Query a dom element and store it in ELEMENT_REGISTRY for usage in js engine\n * @param selector \n */\nfunction query<T extends 'children' | 'classes' | 'style' | 'attributes'>(selector: string, filter?: T[], nodeId?: string): ONode | null {\n const doc = nodeId ? ELEMENT_REGISTRY.get(nodeId) : document\n if (!isElementNode(doc)) {\n return null\n }\n const element = doc.querySelector(selector)\n if (!element) {\n return null\n }\n return htmlElementToONode(element, filter, 1)\n}\nfunction queryAll<T extends 'children' | 'classes' | 'style' | 'attributes'>(selector: string, filter?: T[], nodeId?: string): ONode[] {\n const doc = nodeId ? ELEMENT_REGISTRY.get(nodeId) : document\n if (!isElementNode(doc)) {\n return []\n }\n const elements = [...doc.querySelectorAll(selector)]\n const nodes: ONode[] = elements.map(e => htmlElementToONode(e, filter, 1)).filter(e => e !== null)\n return nodes\n}\nfunction childNodes(nodeId: string): ONode[] {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!isElementNode(node)) {\n return []\n }\n const children: ChildNode[] = []\n const treeWalker = document.createTreeWalker(node)\n let tmp: Node | null = treeWalker.firstChild();\n while (tmp) {\n if (tmp.parentNode === node) {\n children.push(tmp as ChildNode)\n }\n tmp = treeWalker.nextSibling();\n }\n\n return children.map(c => htmlElementToONode(c, ['attributes'], 0)).filter(e => e !== null)\n}\nfunction nodeType(element: Node): 'Element' | 'Text' | 'Comment' | 'Attribute' | 'Unknown' {\n switch (element.nodeType) {\n case Node.TEXT_NODE:\n return 'Text'\n case Node.ELEMENT_NODE:\n return 'Element'\n case Node.ATTRIBUTE_NODE:\n return 'Attribute'\n case Node.COMMENT_NODE:\n return 'Comment'\n default:\n return 'Unknown'\n }\n}\ntype Attributes = { name: string, value: string }[]\nfunction elementAttributes(element: Element): Attributes {\n return [...element.attributes].map((attr) => {\n return { name: attr.name, value: attr.value }\n })\n}\nfunction htmlElementToONode<T extends 'children' | 'classes' | 'style' | 'attributes'>(element: Node, filter?: Array<T>, recursiveLevel: number = 1): ONode | null {\n if (!element) {\n return null\n }\n const node: ONode = { uid: putInRegistry(element), tag: isElementNode(element) ? element.tagName.toLocaleLowerCase() : '', type: nodeType(element), isArray: false, objType: typeof element }\n const fullFilter = filter ? new Set([...filter, 'attributes', 'classes']) : new Set(['attributes', 'classes'])\n if (isElementNode(element)) {\n fullFilter.forEach(f => {\n switch (f) {\n case 'attributes':\n node.attributes = elementAttributes(element)\n break;\n case 'children':\n if (recursiveLevel > 0) {\n node.children = [...element.children].map(c => htmlElementToONode(c, filter, recursiveLevel - 1)).filter(e => e !== null)\n }\n break;\n case 'classes':\n node.classes = [...element.classList]\n break;\n case 'style':\n node.style = (element as HTMLElement)?.style.cssText\n break;\n }\n })\n }\n if (node.type === 'Text') {\n node.textContent = element.textContent\n }\n return node\n}\n/**\n * Create a new DOM element\n * @param tag The element tag name\n * @param props The attributes to set on the new created element\n * @returns a node instance\n */\nfunction createElement(tag: string, props: Record<string, string>): ONode | null {\n const SVG_NS = \"http://www.w3.org/2000/svg\";\n const SVG_TAGS = new Set([\n \"svg\", \"path\", \"circle\", \"rect\", \"line\", \"polyline\", \"polygon\",\n \"ellipse\", \"g\", \"defs\", \"marker\", \"clipPath\", \"mask\", \"text\", \"tspan\"\n ]);\n\n const isSvgTag = SVG_TAGS.has(tag);\n\n // Create element in the right namespace\n const el = isSvgTag\n ? document.createElementNS(SVG_NS, tag)\n : document.createElement(tag);\n\n // Apply props as attributes (works for both HTML and SVG)\n for (const k in props) {\n el.setAttribute(k, props[k]);\n }\n\n return htmlElementToONode(el);\n}\nfunction createComment(data: string) {\n const el = document.createComment(data)\n return htmlElementToONode(el)\n}\nfunction putInRegistry(element: any, elementId?: string): string {\n\n if (storedElementMap.has(element)) {\n return storedElementMap.get(element)!\n }\n const id = elementId ?? stringToHex(`${OBJECT_INDEX++}`.padStart(16, '0'))\n ELEMENT_REGISTRY.set(id, element)\n\n try {\n storedElementMap.set(element, id)\n } catch (error) {\n console.error(error)\n }\n return id\n}\nfunction removeFromRegistry(n: Node | string): void {\n if (typeof n === 'string') {\n const obj = ELEMENT_REGISTRY.get(n);\n if (obj instanceof Node) {\n cleanupRegistryForNode(obj);\n } else {\n // Non-DOM object\n ELEMENT_REGISTRY.delete(n);\n }\n return;\n }\n\n // n is a DOM Node\n cleanupRegistryForNode(n);\n}\n\nfunction cleanupRegistryForNode(root: Node): void {\n const stack: Node[] = [root];\n\n while (stack.length) {\n const node = stack.pop()!;\n cleanupDomListenersForNode(node);\n\n const id = storedElementMap.get(node);\n if (id) {\n ELEMENT_REGISTRY.delete(id);\n storedElementMap.delete(node);\n }\n\n const children = node.childNodes;\n for (let i = 0; i < children.length; i++) {\n stack.push(children[i]);\n }\n }\n}\n\nfunction cleanupDomListenersForNode(root: Node): void {\n for (const [cbId, entry] of DOM_EVENT_LISTENER) {\n const target = entry.target;\n if (\n target === root ||\n (target instanceof Node && root.contains(target))\n ) {\n target.removeEventListener(entry.type, entry.handler);\n DOM_EVENT_LISTENER.delete(cbId);\n }\n }\n}\n\nfunction appendChild(nodeId: string, childId: string) {\n const node = ELEMENT_REGISTRY.get(nodeId)\n const child = ELEMENT_REGISTRY.get(childId)\n if (!node || !child) {\n return\n }\n node.appendChild(child)\n}\nfunction isElementNode(node: Node | null | undefined): node is HTMLElement {\n return node === document || node?.nodeType === Node.ELEMENT_NODE\n}\nfunction setInnerText(nodeId: string, text: string) {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!isElementNode(node)) {\n return\n }\n node.innerText = text\n}\nfunction setContentText(nodeId: string, text: string) {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!node || isElementNode(node)) {\n return\n }\n node!.textContent = text\n}\nfunction getContentText(nodeId: string) {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!node || isElementNode(node)) {\n return ''\n }\n return node!.textContent\n}\n\nfunction removeClass(nodeId: string, ...tokens: string[]) {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!isElementNode(node)) {\n return\n }\n node.classList.remove(...tokens)\n}\nfunction addClass(nodeId: string, ...tokens: string[]) {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!isElementNode(node)) {\n return\n }\n node.classList.add(...tokens)\n\n}\n\nfunction getInnerText(nodeId: string): string {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!isElementNode(node)) {\n return ''\n }\n return node.innerText\n}\nfunction setStyle(nodeId: string, key: string, value: any) {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!isElementNode(node)) {\n return\n }\n node.style.setProperty(key, value)\n}\nfunction setAttribute(nodeId: string, name: string, value: string) {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!isElementNode(node)) {\n return\n }\n node.setAttribute(name, value)\n return elementAttributes(node)\n}\nfunction removeAttribute(nodeId: string, name: string): Attributes {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!isElementNode(node)) {\n return []\n }\n node.removeAttribute(name)\n return elementAttributes(node)\n}\nfunction getAttribte(nodeId: string, name: string): string {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!isElementNode(node)) {\n return ''\n }\n return node.getAttribute(name) ?? ''\n}\nfunction getAttribteNames(nodeId: string): string[] {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!isElementNode(node)) {\n return []\n }\n return node.getAttributeNames()\n}\nfunction cloneNode(nodeId: string, subtree: boolean): ONode | null {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!(node)) {\n return null\n }\n return htmlElementToONode(node.cloneNode(subtree))\n}\nfunction removeNode(nodeId: string): void {\n const node = ELEMENT_REGISTRY.get(nodeId) as Element | null\n node?.remove()\n}\nfunction removeChild(nodeId: string, childId: string): void {\n const node = ELEMENT_REGISTRY.get(nodeId) as Element | null\n const child = ELEMENT_REGISTRY.get(childId)\n if (!child) {\n return\n }\n node?.removeChild(child)\n}\nfunction replaceWith(nodeId: string, toReplaceId: string): void {\n const node = ELEMENT_REGISTRY.get(nodeId)\n const toReplace = ELEMENT_REGISTRY.get(toReplaceId)\n // if (!isElementNode(node) || !toReplace) {\n // \treturn\n // }\n ; (node as Element).replaceWith(toReplace)\n}\nfunction insertAfter(nodeId: string, toInsertId: string): void {\n const node = ELEMENT_REGISTRY.get(nodeId)\n const toInsert = ELEMENT_REGISTRY.get(toInsertId)\n if (!toInsert) {\n return\n }\n ; (node as Element).after(toInsert)\n}\nfunction insertBefore(nodeId: string, childId: string, toInsertId: string): void {\n const node = ELEMENT_REGISTRY.get(nodeId)\n const child = ELEMENT_REGISTRY.get(childId)\n const toInsert = ELEMENT_REGISTRY.get(toInsertId)\n if (!isElementNode(node) || !toInsert || !child) {\n return\n }\n node.insertBefore(toInsert, child)\n}\nfunction setInputValue(nodeId: string, value: string): void {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!isElementNode(node)) {\n return\n }\n (node as HTMLInputElement | HTMLTextAreaElement).value = value\n}\nfunction inputValue(nodeId: string): string {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!isElementNode(node)) {\n return ''\n }\n return (node as HTMLInputElement | HTMLTextAreaElement).value\n}\n\n\nfunction applyControl(e: Event, c?: EventControl) {\n if (!c) return;\n if (c.preventDefault) e.preventDefault();\n if (c.stopImmediatePropagation && 'stopImmediatePropagation' in e) {\n (e as any).stopImmediatePropagation();\n } else if (c.stopPropagation) {\n e.stopPropagation();\n }\n}\n\n\nfunction computeOffsets(e: MouseEvent, t: EventTarget | null) {\n let offsetX = (e as any).offsetX as number | undefined;\n let offsetY = (e as any).offsetY as number | undefined;\n\n // Cross-browser / SVG fallback (Firefox/SVG often lacks offsetX/Y)\n if ((offsetX == null || offsetY == null) && t && (t as any).getBoundingClientRect) {\n const el = t as Element;\n const r = el.getBoundingClientRect();\n offsetX = e.clientX - r.left;\n offsetY = e.clientY - r.top;\n }\n return { offsetX, offsetY };\n}\n\nfunction serializeEvent(e: Event) {\n const base: any = {\n type: e.type,\n timeStamp: e.timeStamp,\n bubbles: e.bubbles,\n cancelable: e.cancelable,\n composed: e.composed,\n };\n\n // Common modifier keys if present\n const mods: any = {\n altKey: (e as any).altKey ?? false,\n ctrlKey: (e as any).ctrlKey ?? false,\n metaKey: (e as any).metaKey ?? false,\n shiftKey: (e as any).shiftKey ?? false,\n };\n\n // Mouse / Pointer\n if (e instanceof MouseEvent) {\n const { offsetX, offsetY } = computeOffsets(e, e.target);\n Object.assign(base, {\n x: (e as any).x, y: (e as any).y,\n clientX: e.clientX, clientY: e.clientY,\n pageX: e.pageX, pageY: e.pageY,\n screenX: e.screenX, screenY: e.screenY,\n movementX: (e as any).movementX, movementY: (e as any).movementY,\n button: e.button, buttons: e.buttons,\n offsetX, offsetY,\n });\n }\n\n // PointerEvent (if available)\n // eslint-disable-next-line no-undef\n if (typeof PointerEvent !== 'undefined' && e instanceof PointerEvent) {\n Object.assign(base, {\n pointerId: e.pointerId,\n width: e.width, height: e.height,\n pressure: e.pressure, tangentialPressure: (e as any).tangentialPressure,\n tiltX: e.tiltX, tiltY: e.tiltY, twist: (e as any).twist,\n pointerType: e.pointerType, isPrimary: e.isPrimary,\n });\n }\n\n // Wheel\n if (typeof WheelEvent !== 'undefined' && e instanceof WheelEvent) {\n Object.assign(base, {\n deltaX: e.deltaX, deltaY: e.deltaY, deltaZ: e.deltaZ, deltaMode: e.deltaMode,\n });\n }\n\n // Keyboard\n if (e instanceof KeyboardEvent) {\n Object.assign(base, {\n key: e.key, code: e.code, repeat: e.repeat, location: e.location, isComposing: e.isComposing,\n });\n }\n // InputEvent\n if (e instanceof InputEvent) {\n Object.assign(base, {\n data: e.data, inputType: e.inputType, isComposing: e.isComposing\n });\n }\n\n // Focus\n if (e instanceof FocusEvent) {\n Object.assign(base, {\n // relatedTarget gets serialized as a node id below\n });\n }\n\n // Touch\n if (typeof TouchEvent !== 'undefined' && e instanceof TouchEvent) {\n const mapTouch = (t: Touch) => ({\n identifier: t.identifier,\n clientX: t.clientX, clientY: t.clientY,\n pageX: t.pageX, pageY: t.pageY,\n screenX: t.screenX, screenY: t.screenY,\n radiusX: (t as any).radiusX, radiusY: (t as any).radiusY,\n rotationAngle: (t as any).rotationAngle, force: (t as any).force,\n });\n Object.assign(base, {\n touches: Array.from(e.touches).map(mapTouch),\n changedTouches: Array.from(e.changedTouches).map(mapTouch),\n targetTouches: Array.from(e.targetTouches).map(mapTouch),\n });\n }\n // Wheel\n if (typeof PopStateEvent !== 'undefined' && e instanceof PopStateEvent) {\n Object.assign(base, {\n state: e.state, \n });\n }\n\n const targetNode = (e.target instanceof Node) ? htmlElementToONode(e.target) : null;\n const currentTargetNode = (e.currentTarget instanceof Node) ? htmlElementToONode(e.currentTarget) : null;\n const relatedTarget = (e as any).relatedTarget instanceof Node ? htmlElementToONode((e as any).relatedTarget) : null;\n\n return {\n ...base,\n ...mods,\n target: targetNode,\n currentTarget: currentTargetNode,\n relatedTarget,\n // Keep original type name handy for the bridge side if needed\n __eventClass__: e.constructor ? e.constructor.name : 'Event',\n };\n}\n\n\nfunction attachEventListener(nodeId: string,\n cbId: string,\n eventName: string,\n options?: boolean | AddEventListenerOptions,\n policy?: { alwaysPreventDefault?: boolean; alwaysStopPropagation?: boolean; alwaysStopImmediatePropagation?: boolean }\n ) {\n const node = ELEMENT_REGISTRY.get(nodeId) as EventTarget | undefined;\n if (!node || typeof (node as any).addEventListener !== 'function') return;\n\n const handler = (e: Event) => {\n const payload = serializeEvent(e);\n if (policy) {\n applyControl(e, {\n preventDefault: policy.alwaysPreventDefault,\n stopImmediatePropagation: policy.alwaysStopImmediatePropagation,\n stopPropagation: policy.alwaysStopPropagation\n });\n }\n emit(cbId, eventName, payload); // no native Event escapes across the bridge\n };\n\n DOM_EVENT_LISTENER.set(cbId, { target: node, type: eventName, handler, options });\n (node as any).addEventListener(eventName, handler, options);\n}\n\nfunction dettachEventListener(nodeId: string, cbId: string) {\n const entry = DOM_EVENT_LISTENER.get(cbId);\n if (!entry) return;\n DOM_EVENT_LISTENER.delete(cbId);\n entry.target.removeEventListener(entry.type, entry.handler);\n}\nfunction injectComponentStyles(css: string) {\n const styleEl = document.createElement('style')\n styleEl.innerHTML = css\n document.head.appendChild(styleEl)\n return htmlElementToONode(styleEl)\n}\nfunction rejectComponentStyles(styleId: string) {\n const style = ELEMENT_REGISTRY.get(styleId)\n document.head.removeChild(style)\n}\n\nfunction replaceChildNode(parentId: string, nodeId: string, toReplaceId: string): void {\n const parent = ELEMENT_REGISTRY.get(parentId)\n const node = ELEMENT_REGISTRY.get(nodeId)\n const toReplace = ELEMENT_REGISTRY.get(toReplaceId)\n if (!isElementNode(parent) || !node || !toReplace) {\n return\n }\n parent.replaceChild(node, toReplace)\n}\nfunction parentNode(nodeId: string): ONode | null {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!node) {\n return null\n }\n return htmlElementToONode(node.parentNode as Node)\n}\nfunction nextSibling(nodeId: string): ONode | null {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!node) {\n return null\n }\n return htmlElementToONode((node as Element).nextSibling as Node)\n}\nfunction arrayBufferToBase64(buffer: Uint8Array) {\n let binary = '';\n for (let i = 0; i < buffer.length; i++) {\n binary += String.fromCharCode(buffer[i]);\n }\n return btoa(binary);\n}\nasync function httpFetch(url: string, data: { method: string, headers: Record<string, string>, body: any, credentials: \"include\" | \"omit\" | \"same-origin\" }, encodeAs?: 'json' | 'base64' | 'text'): Promise<any> {\n const result = await fetch(url, data)\n switch (encodeAs) {\n case 'text':\n return await result.text()\n case 'base64':\n return arrayBufferToBase64(await result.bytes())\n default:\n return await result.json()\n }\n}\n\n\n\nfunction setInnerHTML(nodeId: string, html: string) {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!isElementNode(node)) {\n return\n }\n node.innerHTML = html\n}\nfunction getInnerHTML(nodeId: string): string {\n const node = ELEMENT_REGISTRY.get(nodeId)\n if (!isElementNode(node)) {\n return ''\n }\n return node.innerHTML\n}\n\nfunction invokeObjectMethod(id: string, fn: string, ...args: any[]): any {\n const node = ELEMENT_REGISTRY.get(id)\n if (!node) {\n return null\n }\n const tmp = getAdvanceObjectProperty(node, fn)\n if (!tmp) {\n return null\n }\n const [method, target] = tmp\n return (method as Function).apply(target, args.map(e => {\n if (e && typeof e === 'object' && e['__ref__']) {\n return ELEMENT_REGISTRY.get(e['__ref__']) ?? e\n }\n return e\n }))\n}\nfunction invokeObjectMethodAndHold(id: string, fn: string, ...args: any[]): OObject | null {\n const node = ELEMENT_REGISTRY.get(id)\n if (!node) {\n return null\n }\n const tmp = getAdvanceObjectProperty(node, fn)\n if (!tmp) {\n return null\n }\n const [method, target] = tmp\n const res = (method as Function).apply(target, args.map(e => {\n if (e && typeof e === 'object' && e['__ref__']) {\n return ELEMENT_REGISTRY.get(e['__ref__']) ?? e\n }\n return e\n }))\n if (res) {\n return { uid: putInRegistry(res), objType: typeof res, isArray: false, tag: 'unknown' }\n }\n return res\n}\nfunction getObjectProperty(id: string, name: string): any {\n const node = ELEMENT_REGISTRY.get(id)\n if (!node) {\n return null\n }\n const tmp = getAdvanceObjectProperty(node, name)\n if (tmp) {\n return tmp[0]\n }\n return null\n}\nfunction getAdvanceObjectProperty(obj: any, path: string): [any, any] | null {\n const els = path.split('.')\n let current: any = obj\n let target: any = obj\n for (let i = 0; i < els.length; i++) {\n const el = els[i]\n if (!(el in current)) {\n return null\n }\n target = current\n current = current[el]\n }\n return [current, target]\n}\nfunction setAdvanceObjectProperty(obj: any, path: string, value: any): void {\n const els = path.split('.')\n\n let current: any = obj\n for (let i = 0; i < els.length - 1; i++) {\n const el = els[i]\n if (!(el in current)) {\n return\n }\n current = current[el]\n }\n const k = els[els.length - 1]\n current[k] = typeof value === 'object' && value['__ref__'] ? ELEMENT_REGISTRY.get(value['__ref__']) ?? value : value\n}\nfunction setObjectProperty(id: string, name: string, value: any): void {\n const node = ELEMENT_REGISTRY.get(id)\n if (!node) {\n return\n }\n setAdvanceObjectProperty(node, name, value)\n}\nexport declare var NativeOUID: { invoke: (id: string, fn: string, argsJson: string) => void } | undefined\n\nconst listeners = new Map<string, ((id: string, fn: string, argJson: string) => void)[]>()\n\nexport function emit(id: string, ...args: any[]): void {\n NativeOUID?.invoke(id, '__ouid_web_event__', JSON.stringify(args))\n}\nfunction subscribe(event: string, callback: (id: string, fnName: string, argsJson: string) => void): void {\n if (!listeners.has(event)) {\n listeners.set(event, []);\n // attach a single handler for native -> JS calls\n (window as any)[event] = (id: string, fnName: string, argsJson: string) => {\n listeners.get(event)?.forEach(cb => cb(id, fnName, argsJson))\n }\n }\n listeners.get(event)!.push(callback)\n}\nfunction releaseNode(nodeId: string): void {\n // remove node from ELEMENT_REGISTRY\n removeFromRegistry(nodeId)\n}\nfunction locationPath(): string {\n return window.location.pathname\n}\nfunction historyPushState(data: any, path: string): void {\n window.history.pushState(data, '', path)\n}\nfunction dispatchPopStateEvent(): void {\n window.dispatchEvent(new PopStateEvent('popstate', { state: window.history.state }))\n}\nfunction dispatchEvent(id: string, eventName: string, eventClass?: string, initDict?: any): void {\n const obj = ELEMENT_REGISTRY.get(id)\n if (!obj) {\n return\n }\n if ('dispatchEvent' in obj) {\n const event = eventClass ? new window[eventClass as keyof Window](eventName, initDict) : new CustomEvent(eventName, initDict)\n obj.dispatchEvent(event)\n }\n}\nfunction asOObject(obj: any, id: string): OObject {\n return {\n tag: id.split(/\\s/)[0],\n uid: id,\n objType: typeof obj,\n isArray: Array.isArray(obj)\n }\n}\nfunction getOObject(id: string): OObject | null {\n const obj = ELEMENT_REGISTRY.get(id)\n if (!obj) {\n return null\n }\n return asOObject(obj, id)\n}\nfunction acquireObject(name: string): OObject | null {\n const obj = window[name as keyof Window]\n if (!obj) {\n return null\n }\n const objId = putInRegistry(obj, name)\n return asOObject(obj, objId)\n}\nfunction newObject(ctr: string, ...args: any): OObject | null {\n const Ctr = window[ctr as keyof Window]\n if (!Ctr) {\n return null\n }\n const instance = new Ctr(...args)\n const objId = putInRegistry(instance)\n return asOObject(instance, objId)\n}\nfunction addSetTimeout(cbId: string, delay: number): number {\n const cb = () => {\n emit(cbId)\n }\n return setTimeout(cb, delay) as any\n}\nfunction addSetInterval(cbId: string, delay: number): number {\n const cb = () => {\n emit(cbId)\n }\n return setInterval(cb, delay) as any\n}\nfunction removeSetTimeout(timerId: number): void {\n clearTimeout(timerId)\n}\n\nfunction removeSetInterval(timerId: number): void {\n clearInterval(timerId)\n}\ndeclare const __WEB_OUID_EMULATION__: boolean;\nconst UNIFIED_ENV = (globalThis as any)['UNIFIED_ENV'] ?? (window as any)['UNIFIED_ENV'] ?? ((window as any).WebOUID && (window as any).WebOUID.UNIFIED_ENV)\nexport function initDOM(): void {\n if (__WEB_OUID_EMULATION__ || UNIFIED_ENV) {\n ; (globalThis as any).__OUI_PUR_JS_CONTEXT__ = true\n ; (window as any).NativeOUID = Object.assign((window as any).NativeOUID ?? {}, {\n invoke: (id: string, fn: string, argsJson: string) => {\n (window as any)[`${fn}`](id, argsJson)\n }\n })\n ; (window as any).WebOUID = Object.assign((window as any).WebOUID ?? {}, {\n invoke: async (id: string, fn: string, argsJson: string) => {\n (window as any)[`__native_message__`](id, fn, argsJson)\n }\n })\n const win: Window & {WebOUID: any, __ouid_native_callback__: any, __ouid_native_promises: Record<string, {resolve: (value: string) => void, reject: (value?: string) => void}>} = (window as any);\n win.__ouid_native_promises = {};\n (window as any).WebOUID.nativeCall = (id: string, fn: string, argsJson: string) => new Promise((resolve, reject) => {\n win.__ouid_native_promises[id] = {resolve, reject}\n win.WebOUID._callNativeFunction_(id, fn, argsJson)\n })\n win.__ouid_native_callback__ = (id: string, success: boolean, result: string) => {\n if (win.__ouid_native_promises && win.__ouid_native_promises[id]) {\n if (success) {\n win.__ouid_native_promises[id].resolve(result);\n } else {\n win.__ouid_native_promises[id].reject(result);\n }\n delete win.__ouid_native_promises[id]; // Clean up\n }\n }\n }\n \n putInRegistry(document, 'document');\n putInRegistry(window, 'window');\n (window as any)._ouid_query = query;\n (window as any)._ouid_queryAll = queryAll;\n (window as any)._ouid_createElement = createElement;\n (window as any)._ouid_createComment = createComment;\n (window as any)._ouid_invokeObjectMethod = invokeObjectMethod;\n (window as any)._ouid_invokeObjectMethodAndHold = invokeObjectMethodAndHold;\n (window as any)._ouid_getObjectProperty = getObjectProperty;\n (window as any)._ouid_setObjectProperty = setObjectProperty;\n (window as any)._ouid_appendChild = appendChild;\n (window as any)._ouid_addClass = addClass;\n (window as any)._ouid_removeClass = removeClass;\n (window as any)._ouid_setInnerHTML = setInnerHTML;\n (window as any)._ouid_getInnerHTML = getInnerHTML;\n (window as any)._ouid_setInnerText = setInnerText;\n (window as any)._ouid_getInnerText = getInnerText;\n (window as any)._ouid_setContentText = setContentText;\n (window as any)._ouid_getContentText = getContentText;\n (window as any)._ouid_setAttribute = setAttribute;\n (window as any)._ouid_removeAttribute = removeAttribute;\n (window as any)._ouid_getAttribte = getAttribte;\n (window as any)._ouid_getAttribteNames = getAttribteNames;\n (window as any)._ouid_childNodes = childNodes;\n (window as any)._ouid_cloneNode = cloneNode;\n (window as any)._ouid_removeNode = removeNode;\n (window as any)._ouid_removeChild = removeChild;\n (window as any)._ouid_replaceChildNode = replaceChildNode;\n (window as any)._ouid_replaceNode = replaceWith;\n (window as any)._ouid_insertAfter = insertAfter;\n (window as any)._ouid_insertBefore = insertBefore;\n (window as any)._ouid_setInputValue = setInputValue;\n (window as any)._ouid_inputValue = inputValue;\n (window as any)._ouid_attachEventListener = attachEventListener;\n (window as any)._ouid_dettachEventListener = dettachEventListener;\n (window as any)._ouid_injectComponentStyles = injectComponentStyles;\n (window as any)._ouid_rejectComponentStyles = rejectComponentStyles;\n (window as any)._ouid_locationPath = locationPath;\n (window as any)._ouid_historyPushState = historyPushState;\n (window as any)._ouid_dispatchPopStateEvent = dispatchPopStateEvent;\n (window as any)._ouid_parentNode = parentNode;\n (window as any)._ouid_releaseNode = releaseNode;\n (window as any)._ouid_getOObject = getOObject;\n (window as any)._ouid_acquireObject = acquireObject;\n (window as any)._ouid_newObject = newObject;\n (window as any)._ouid_dispatchEvent = dispatchEvent;\n (window as any)._ouid_setTimeout = addSetTimeout;\n (window as any)._ouid_clearTimeout = removeSetTimeout;\n (window as any)._ouid_dsetInterval = addSetInterval;\n (window as any)._ouid_clearInterval = removeSetInterval;\n (window as any)._ouid_setStyle = setStyle;\n (window as any)._ouid_nextSibling = nextSibling;\n (window as any)._ouid_fetch = httpFetch;\n (window as any)._ouid_alert = alert;\n (window as any)._ouid_prompt = prompt;\n subscribe('__native_message__', async (id, fnName: string, argsJson: string) => {\n const fn = (window as any)[fnName]\n if (!fn) {\n // try to call native brige\n if(UNIFIED_ENV) {\n try {\n try {\n const res = await (window as any).WebOUID.nativeCall(id, fnName, argsJson)\n NativeOUID?.invoke(id, '__ouid_native_event_success__', res)\n } catch (error: any) {\n NativeOUID?.invoke(id, '__ouid_native_event_error__', error)\n } // {\"status\":\"success\",\"data\":{\"value\":\"76299780\"}}\n } catch (error) {\n }\n }\n NativeOUID?.invoke(id, '__ouid_native_event_error__', JSON.stringify([{ 'message': 'No function match the given name: (' + fnName + ')' }]))\n return\n }\n const result = await (fn as Function)(...(JSON.parse(argsJson) as Array<any>))\n NativeOUID?.invoke(id, '__ouid_native_event_success__', JSON.stringify([{ status: 'success', data: result }]))\n });\n}\n\n"]}
package/dist/dom/dom.js CHANGED
@@ -1,3 +1,3 @@
1
- var v=Object.defineProperty;var i=(t,e)=>v(t,"name",{value:e,configurable:true});function y(t){let e="";for(let n=0;n<t.length;n++){let r=t.charCodeAt(n).toString(16);r=r.length===1?"0"+r:r,e+=r;}return e}i(y,"stringToHex");var u=new Map,l=new WeakMap,E=0,f=new Map;function T(t,e,n){let o=n?u.get(n):document;if(!s(o))return null;let r=o.querySelector(t);return r?a(r,e,1):null}i(T,"query");function N(t,e,n){let o=n?u.get(n):document;return s(o)?[...o.querySelectorAll(t)].map(d=>a(d,e,1)).filter(d=>d!==null):[]}i(N,"queryAll");function S(t){let e=u.get(t);if(!s(e))return [];let n=[],o=document.createTreeWalker(e),r=o.firstChild();for(;r;)r.parentNode===e&&n.push(r),r=o.nextSibling();return n.map(c=>a(c,["attributes"],0)).filter(c=>c!==null)}i(S,"childNodes");function O(t){switch(t.nodeType){case Node.TEXT_NODE:return "Text";case Node.ELEMENT_NODE:return "Element";case Node.ATTRIBUTE_NODE:return "Attribute";case Node.COMMENT_NODE:return "Comment";default:return "Unknown"}}i(O,"nodeType");function g(t){return [...t.attributes].map(e=>({name:e.name,value:e.value}))}i(g,"elementAttributes");function a(t,e,n=1){if(!t)return null;let o={uid:_(t),tag:s(t)?t.tagName.toLocaleLowerCase():"",type:O(t),isArray:false,objType:typeof t},r=e?new Set([...e,"attributes","classes"]):new Set(["attributes","classes"]);return s(t)&&r.forEach(c=>{switch(c){case "attributes":o.attributes=g(t);break;case "children":n>0&&(o.children=[...t.children].map(d=>a(d,e,n-1)).filter(d=>d!==null));break;case "classes":o.classes=[...t.classList];break;case "style":o.style=t?.style.cssText;break}}),o.type==="Text"&&(o.textContent=t.textContent),o}i(a,"htmlElementToONode");function C(t,e){let c=new Set(["svg","path","circle","rect","line","polyline","polygon","ellipse","g","defs","marker","clipPath","mask","text","tspan"]).has(t)?document.createElementNS("http://www.w3.org/2000/svg",t):document.createElement(t);for(let d in e)c.setAttribute(d,e[d]);return a(c)}i(C,"createElement");function x(t){let e=document.createComment(t);return a(e)}i(x,"createComment");function _(t,e){if(l.has(t))return l.get(t);let n=e??y(`${E++}`.padStart(16,"0"));u.set(n,t);try{l.set(t,n);}catch(o){console.error(o);}return n}i(_,"putInRegistry");function A(t){let e=t;if(!(typeof t=="string"&&(e=u.get(t),!e))&&l.has(e)){let n=l.get(e);u.delete(n),l.delete(e);return}}i(A,"removeFromRegistry");function I(t,e){let n=u.get(t),o=u.get(e);!n||!o||n.appendChild(o);}i(I,"appendChild");function s(t){return t===document||t?.nodeType===Node.ELEMENT_NODE}i(s,"isElementNode");function L(t,e){let n=u.get(t);s(n)&&(n.innerText=e);}i(L,"setInnerText");function M(t,e){let n=u.get(t);!n||s(n)||(n.textContent=e);}i(M,"setContentText");function j(t){let e=u.get(t);return !e||s(e)?"":e.textContent}i(j,"getContentText");function k(t,...e){let n=u.get(t);s(n)&&n.classList.remove(...e);}i(k,"removeClass");function D(t,...e){let n=u.get(t);s(n)&&n.classList.add(...e);}i(D,"addClass");function P(t){let e=u.get(t);return s(e)?e.innerText:""}i(P,"getInnerText");function U(t,e,n){let o=u.get(t);s(o)&&o.style.setProperty(e,n);}i(U,"setStyle");function R(t,e,n){let o=u.get(t);if(s(o))return o.setAttribute(e,n),g(o)}i(R,"setAttribute");function V(t,e){let n=u.get(t);return s(n)?(n.removeAttribute(e),g(n)):[]}i(V,"removeAttribute");function q(t,e){let n=u.get(t);return s(n)?n.getAttribute(e)??"":""}i(q,"getAttribte");function B(t){let e=u.get(t);return s(e)?e.getAttributeNames():[]}i(B,"getAttribteNames");function H(t,e){let n=u.get(t);return n?a(n.cloneNode(e)):null}i(H,"cloneNode");function W(t){u.get(t)?.remove();}i(W,"removeNode");function G(t,e){let n=u.get(t),o=u.get(e);o&&n?.removeChild(o);}i(G,"removeChild");function J(t,e){let n=u.get(t),o=u.get(e);n.replaceWith(o);}i(J,"replaceWith");function F(t,e){let n=u.get(t),o=u.get(e);o&&n.after(o);}i(F,"insertAfter");function X(t,e,n){let o=u.get(t),r=u.get(e),c=u.get(n);!s(o)||!c||!r||o.insertBefore(c,r);}i(X,"insertBefore");function $(t,e){let n=u.get(t);s(n)&&(n.value=e);}i($,"setInputValue");function Y(t){let e=u.get(t);return s(e)?e.value:""}i(Y,"inputValue");function z(t,e,n){let o=u.get(t);if(o&&"addEventListener"in o){let r=i(c=>{let d=c?.target;p(e,n,{target:d?a(d):null,e:c});},"cb");f.set(e,r),o.addEventListener(n,r);}}i(z,"attachEventListener");function K(t,e,n){let o=u.get(t);if(!s(o))return;let r=f.get(e);r&&(f.delete(e),o.removeEventListener(n,r));}i(K,"dettachEventListener");function Q(t){let e=document.createElement("style");return e.innerHTML=t,document.head.appendChild(e),a(e)}i(Q,"injectComponentStyles");function Z(t){let e=u.get(t);document.head.removeChild(e);}i(Z,"rejectComponentStyles");function tt(t,e,n){let o=u.get(t),r=u.get(e),c=u.get(n);!s(o)||!r||!c||o.replaceChild(r,c);}i(tt,"replaceChildNode");function et(t){let e=u.get(t);return e?a(e.parentNode):null}i(et,"parentNode");function nt(t){let e=u.get(t);return e?a(e.nextSibling):null}i(nt,"nextSibling");function ot(t){let e=String.fromCharCode(...t);return btoa(e)}i(ot,"arrayBufferToBase64");async function it(t,e,n){let o=await fetch(t,e);switch(n){case "text":return await o.text();case "base64":return ot(await o.bytes());default:return await o.json()}}i(it,"httpFetch");function rt(t,e){let n=u.get(t);s(n)&&(n.innerHTML=e);}i(rt,"setInnerHTML");function ut(t){let e=u.get(t);return s(e)?e.innerHTML:""}i(ut,"getInnerHTML");function ct(t,e,...n){let o=u.get(t);if(!o)return null;let r=m(o,e);if(!r)return null;let[c,d]=r;return c.apply(d,n)}i(ct,"invokeObjectMethod");function st(t,e){let n=u.get(t);if(!n)return null;let o=m(n,e);return o?o[0]:null}i(st,"getObjectProperty");function m(t,e){let n=e.split("."),o=t,r=t;for(let c=0;c<n.length;c++){let d=n[c];if(!(d in o))return null;r=o,o=o[d];}return [o,r]}i(m,"getAdvanceObjectProperty");function dt(t,e,n){let o=e.split("."),r=t;for(let d=0;d<o.length-1;d++){let h=o[d];if(!(h in r))return;r=r[h];}let c=o[o.length-1];r[c]=n;}i(dt,"setAdvanceObjectProperty");function at(t,e,n){let o=u.get(t);o&&dt(o,e,n);}i(at,"setObjectProperty");var w=new Map;function p(t,...e){NativeOUID?.invoke(t,"__ouid_web_event__",JSON.stringify(e));}i(p,"emit");function lt(t,e){w.has(t)||(w.set(t,[]),window[t]=(n,o,r)=>{w.get(t)?.forEach(c=>c(n,o,r));}),w.get(t).push(e);}i(lt,"subscribe");function wt(t){A(t);}i(wt,"releaseNode");function _t(){return window.location.pathname}i(_t,"locationPath");function ft(t,e){window.history.pushState(t,"",e);}i(ft,"historyPushState");function gt(){window.dispatchEvent(new PopStateEvent("popstate",{state:window.history.state}));}i(gt,"dispatchPopStateEvent");function pt(t,e,n,o){let r=u.get(t);if(r&&"dispatchEvent"in r){let c=n?new window[n](e,o):new CustomEvent(e,o);r.dispatchEvent(c);}}i(pt,"dispatchEvent");function b(t,e){return {tag:e.split(/\s/)[0],uid:e,objType:typeof t,isArray:Array.isArray(t)}}i(b,"asOObject");function ht(t){let e=u.get(t);return e?b(e,t):null}i(ht,"getOObject");function mt(t){let e=window[t];if(!e)return null;let n=_(e,t);return b(e,n)}i(mt,"acquireObject");function bt(t,e){return setTimeout(i(()=>{p(t);},"cb"),e)}i(bt,"addSetTimeout");function vt(t,e){return setInterval(i(()=>{p(t);},"cb"),e)}i(vt,"addSetInterval");function yt(t){clearTimeout(t);}i(yt,"removeSetTimeout");function Et(t){clearInterval(t);}i(Et,"removeSetInterval");function Nt(){__WEB_OUID_EMULATION__&&(globalThis.__OUI_PUR_JS_CONTEXT__=true,window.NativeOUID=window.NativeOUID??{invoke:i((e,n,o)=>{window[`${n}`](e,o);},"invoke")},window.WebOUID=window.WebOUID??{invoke:i(async(e,n,o)=>{window.__native_message__(e,n,o);},"invoke")});let t=new MutationObserver(function(e){e.forEach(n=>{n.removedNodes.forEach(o=>{o.nodeType;});});});_(document,"document"),_(window,"window"),window._ouid_query=T,window._ouid_queryAll=N,window._ouid_createElement=C,window._ouid_createComment=x,window._ouid_invokeObjectMethod=ct,window._ouid_getObjectProperty=st,window._ouid_setObjectProperty=at,window._ouid_appendChild=I,window._ouid_addClass=D,window._ouid_removeClass=k,window._ouid_setInnerHTML=rt,window._ouid_getInnerHTML=ut,window._ouid_setInnerText=L,window._ouid_getInnerText=P,window._ouid_setContentText=M,window._ouid_getContentText=j,window._ouid_setAttribute=R,window._ouid_removeAttribute=V,window._ouid_getAttribte=q,window._ouid_getAttribteNames=B,window._ouid_childNodes=S,window._ouid_cloneNode=H,window._ouid_removeNode=W,window._ouid_removeChild=G,window._ouid_replaceChildNode=tt,window._ouid_replaceNode=J,window._ouid_insertAfter=F,window._ouid_insertBefore=X,window._ouid_setInputValue=$,window._ouid_inputValue=Y,window._ouid_attachEventListener=z,window._ouid_dettachEventListener=K,window._ouid_injectComponentStyles=Q,window._ouid_rejectComponentStyles=Z,window._ouid_locationPath=_t,window._ouid_historyPushState=ft,window._ouid_dispatchPopStateEvent=gt,window._ouid_parentNode=et,window._ouid_releaseNode=wt,window._ouid_getOObject=ht,window._ouid_acquireObject=mt,window._ouid_dispatchEvent=pt,window._ouid_setTimeout=bt,window._ouid_clearTimeout=yt,window._ouid_dsetInterval=vt,window._ouid_clearInterval=Et,window._ouid_setStyle=U,window._ouid_nextSibling=nt,window._ouid_fetch=it,window._ouid_alert=alert,window._ouid_prompt=prompt,t.observe(document.body,{childList:true,subtree:true}),lt("__native_message__",async(e,n,o)=>{let r=window[n];if(!r){NativeOUID?.invoke(e,"__ouid_native_event_error__",JSON.stringify({message:"No function match the given name: ("+n+")"}));return}let c=await r(...JSON.parse(o));NativeOUID?.invoke(e,"__ouid_native_event_success__",JSON.stringify([{status:"success",data:c}]));});}i(Nt,"initDOM");
2
- export{u as ELEMENT_REGISTRY,p as emit,Nt as initDOM,y as stringToHex};//# sourceMappingURL=dom.js.map
1
+ var C=Object.defineProperty,D=Object.defineProperties;var k=Object.getOwnPropertyDescriptors;var O=Object.getOwnPropertySymbols;var M=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;var S=(t,e,n)=>e in t?C(t,e,{enumerable:true,configurable:true,writable:true,value:n}):t[e]=n,v=(t,e)=>{for(var n in e||(e={}))M.call(e,n)&&S(t,n,e[n]);if(O)for(var n of O(e))X.call(e,n)&&S(t,n,e[n]);return t},I=(t,e)=>D(t,k(e)),i=(t,e)=>C(t,"name",{value:e,configurable:true});function L(t){let e="";for(let n=0;n<t.length;n++){let r=t.charCodeAt(n).toString(16);r=r.length===1?"0"+r:r,e+=r;}return e}i(L,"stringToHex");var c=new Map,h=new WeakMap,Y=0,m=new Map;function U(t,e,n){let o=n?c.get(n):document;if(!d(o))return null;let r=o.querySelector(t);return r?_(r,e,1):null}i(U,"query");function W(t,e,n){let o=n?c.get(n):document;return d(o)?[...o.querySelectorAll(t)].map(a=>_(a,e,1)).filter(a=>a!==null):[]}i(W,"queryAll");function V(t){let e=c.get(t);if(!d(e))return [];let n=[],o=document.createTreeWalker(e),r=o.firstChild();for(;r;)r.parentNode===e&&n.push(r),r=o.nextSibling();return n.map(s=>_(s,["attributes"],0)).filter(s=>s!==null)}i(V,"childNodes");function R(t){switch(t.nodeType){case Node.TEXT_NODE:return "Text";case Node.ELEMENT_NODE:return "Element";case Node.ATTRIBUTE_NODE:return "Attribute";case Node.COMMENT_NODE:return "Comment";default:return "Unknown"}}i(R,"nodeType");function b(t){return [...t.attributes].map(e=>({name:e.name,value:e.value}))}i(b,"elementAttributes");function _(t,e,n=1){if(!t)return null;let o={uid:w(t),tag:d(t)?t.tagName.toLocaleLowerCase():"",type:R(t),isArray:false,objType:typeof t},r=e?new Set([...e,"attributes","classes"]):new Set(["attributes","classes"]);return d(t)&&r.forEach(s=>{switch(s){case "attributes":o.attributes=b(t);break;case "children":n>0&&(o.children=[...t.children].map(a=>_(a,e,n-1)).filter(a=>a!==null));break;case "classes":o.classes=[...t.classList];break;case "style":o.style=t==null?void 0:t.style.cssText;break}}),o.type==="Text"&&(o.textContent=t.textContent),o}i(_,"htmlElementToONode");function F(t,e){let s=new Set(["svg","path","circle","rect","line","polyline","polygon","ellipse","g","defs","marker","clipPath","mask","text","tspan"]).has(t)?document.createElementNS("http://www.w3.org/2000/svg",t):document.createElement(t);for(let a in e)s.setAttribute(a,e[a]);return _(s)}i(F,"createElement");function B(t){let e=document.createComment(t);return _(e)}i(B,"createComment");function w(t,e){if(h.has(t))return h.get(t);let n=e!=null?e:L(`${Y++}`.padStart(16,"0"));c.set(n,t);try{h.set(t,n);}catch(o){console.error(o);}return n}i(w,"putInRegistry");function H(t){if(typeof t=="string"){let e=c.get(t);e instanceof Node?j(e):c.delete(t);return}j(t);}i(H,"removeFromRegistry");function j(t){let e=[t];for(;e.length;){let n=e.pop();K(n);let o=h.get(n);o&&(c.delete(o),h.delete(n));let r=n.childNodes;for(let s=0;s<r.length;s++)e.push(r[s]);}}i(j,"cleanupRegistryForNode");function K(t){for(let[e,n]of m){let o=n.target;(o===t||o instanceof Node&&t.contains(o))&&(o.removeEventListener(n.type,n.handler),m.delete(e));}}i(K,"cleanupDomListenersForNode");function q(t,e){let n=c.get(t),o=c.get(e);!n||!o||n.appendChild(o);}i(q,"appendChild");function d(t){return t===document||(t==null?void 0:t.nodeType)===Node.ELEMENT_NODE}i(d,"isElementNode");function G(t,e){let n=c.get(t);d(n)&&(n.innerText=e);}i(G,"setInnerText");function J(t,e){let n=c.get(t);!n||d(n)||(n.textContent=e);}i(J,"setContentText");function Z(t){let e=c.get(t);return !e||d(e)?"":e.textContent}i(Z,"getContentText");function $(t,...e){let n=c.get(t);d(n)&&n.classList.remove(...e);}i($,"removeClass");function z(t,...e){let n=c.get(t);d(n)&&n.classList.add(...e);}i(z,"addClass");function Q(t){let e=c.get(t);return d(e)?e.innerText:""}i(Q,"getInnerText");function tt(t,e,n){let o=c.get(t);d(o)&&o.style.setProperty(e,n);}i(tt,"setStyle");function et(t,e,n){let o=c.get(t);if(d(o))return o.setAttribute(e,n),b(o)}i(et,"setAttribute");function nt(t,e){let n=c.get(t);return d(n)?(n.removeAttribute(e),b(n)):[]}i(nt,"removeAttribute");function ot(t,e){var o;let n=c.get(t);return d(n)&&(o=n.getAttribute(e))!=null?o:""}i(ot,"getAttribte");function it(t){let e=c.get(t);return d(e)?e.getAttributeNames():[]}i(it,"getAttribteNames");function rt(t,e){let n=c.get(t);return n?_(n.cloneNode(e)):null}i(rt,"cloneNode");function st(t){let e=c.get(t);e==null||e.remove();}i(st,"removeNode");function ct(t,e){let n=c.get(t),o=c.get(e);o&&(n==null||n.removeChild(o));}i(ct,"removeChild");function at(t,e){let n=c.get(t),o=c.get(e);n.replaceWith(o);}i(at,"replaceWith");function ut(t,e){let n=c.get(t),o=c.get(e);o&&n.after(o);}i(ut,"insertAfter");function dt(t,e,n){let o=c.get(t),r=c.get(e),s=c.get(n);!d(o)||!s||!r||o.insertBefore(s,r);}i(dt,"insertBefore");function lt(t,e){let n=c.get(t);d(n)&&(n.value=e);}i(lt,"setInputValue");function ft(t){let e=c.get(t);return d(e)?e.value:""}i(ft,"inputValue");function _t(t,e){e&&(e.preventDefault&&t.preventDefault(),e.stopImmediatePropagation&&"stopImmediatePropagation"in t?t.stopImmediatePropagation():e.stopPropagation&&t.stopPropagation());}i(_t,"applyControl");function wt(t,e){let n=t.offsetX,o=t.offsetY;if((n==null||o==null)&&e&&e.getBoundingClientRect){let s=e.getBoundingClientRect();n=t.clientX-s.left,o=t.clientY-s.top;}return {offsetX:n,offsetY:o}}i(wt,"computeOffsets");function pt(t){var a,u,l,p;let e={type:t.type,timeStamp:t.timeStamp,bubbles:t.bubbles,cancelable:t.cancelable,composed:t.composed},n={altKey:(a=t.altKey)!=null?a:false,ctrlKey:(u=t.ctrlKey)!=null?u:false,metaKey:(l=t.metaKey)!=null?l:false,shiftKey:(p=t.shiftKey)!=null?p:false};if(t instanceof MouseEvent){let{offsetX:g,offsetY:f}=wt(t,t.target);Object.assign(e,{x:t.x,y:t.y,clientX:t.clientX,clientY:t.clientY,pageX:t.pageX,pageY:t.pageY,screenX:t.screenX,screenY:t.screenY,movementX:t.movementX,movementY:t.movementY,button:t.button,buttons:t.buttons,offsetX:g,offsetY:f});}if(typeof PointerEvent!="undefined"&&t instanceof PointerEvent&&Object.assign(e,{pointerId:t.pointerId,width:t.width,height:t.height,pressure:t.pressure,tangentialPressure:t.tangentialPressure,tiltX:t.tiltX,tiltY:t.tiltY,twist:t.twist,pointerType:t.pointerType,isPrimary:t.isPrimary}),typeof WheelEvent!="undefined"&&t instanceof WheelEvent&&Object.assign(e,{deltaX:t.deltaX,deltaY:t.deltaY,deltaZ:t.deltaZ,deltaMode:t.deltaMode}),t instanceof KeyboardEvent&&Object.assign(e,{key:t.key,code:t.code,repeat:t.repeat,location:t.location,isComposing:t.isComposing}),t instanceof InputEvent&&Object.assign(e,{data:t.data,inputType:t.inputType,isComposing:t.isComposing}),t instanceof FocusEvent&&Object.assign(e,{}),typeof TouchEvent!="undefined"&&t instanceof TouchEvent){let g=i(f=>({identifier:f.identifier,clientX:f.clientX,clientY:f.clientY,pageX:f.pageX,pageY:f.pageY,screenX:f.screenX,screenY:f.screenY,radiusX:f.radiusX,radiusY:f.radiusY,rotationAngle:f.rotationAngle,force:f.force}),"mapTouch");Object.assign(e,{touches:Array.from(t.touches).map(g),changedTouches:Array.from(t.changedTouches).map(g),targetTouches:Array.from(t.targetTouches).map(g)});}typeof PopStateEvent!="undefined"&&t instanceof PopStateEvent&&Object.assign(e,{state:t.state});let o=t.target instanceof Node?_(t.target):null,r=t.currentTarget instanceof Node?_(t.currentTarget):null,s=t.relatedTarget instanceof Node?_(t.relatedTarget):null;return I(v(v({},e),n),{target:o,currentTarget:r,relatedTarget:s,__eventClass__:t.constructor?t.constructor.name:"Event"})}i(pt,"serializeEvent");function gt(t,e,n,o,r){let s=c.get(t);if(!s||typeof s.addEventListener!="function")return;let a=i(u=>{let l=pt(u);r&&_t(u,{preventDefault:r.alwaysPreventDefault,stopImmediatePropagation:r.alwaysStopImmediatePropagation,stopPropagation:r.alwaysStopPropagation}),T(e,n,l);},"handler");m.set(e,{target:s,type:n,handler:a,options:o}),s.addEventListener(n,a,o);}i(gt,"attachEventListener");function ht(t,e){let n=m.get(e);n&&(m.delete(e),n.target.removeEventListener(n.type,n.handler));}i(ht,"dettachEventListener");function mt(t){let e=document.createElement("style");return e.innerHTML=t,document.head.appendChild(e),_(e)}i(mt,"injectComponentStyles");function yt(t){let e=c.get(t);document.head.removeChild(e);}i(yt,"rejectComponentStyles");function vt(t,e,n){let o=c.get(t),r=c.get(e),s=c.get(n);!d(o)||!r||!s||o.replaceChild(r,s);}i(vt,"replaceChildNode");function bt(t){let e=c.get(t);return e?_(e.parentNode):null}i(bt,"parentNode");function Et(t){let e=c.get(t);return e?_(e.nextSibling):null}i(Et,"nextSibling");function Tt(t){let e="";for(let n=0;n<t.length;n++)e+=String.fromCharCode(t[n]);return btoa(e)}i(Tt,"arrayBufferToBase64");async function Nt(t,e,n){let o=await fetch(t,e);switch(n){case "text":return await o.text();case "base64":return Tt(await o.bytes());default:return await o.json()}}i(Nt,"httpFetch");function Ot(t,e){let n=c.get(t);d(n)&&(n.innerHTML=e);}i(Ot,"setInnerHTML");function St(t){let e=c.get(t);return d(e)?e.innerHTML:""}i(St,"getInnerHTML");function Ct(t,e,...n){let o=c.get(t);if(!o)return null;let r=E(o,e);if(!r)return null;let[s,a]=r;return s.apply(a,n.map(u=>{var l;return u&&typeof u=="object"&&u.__ref__&&(l=c.get(u.__ref__))!=null?l:u}))}i(Ct,"invokeObjectMethod");function It(t,e,...n){let o=c.get(t);if(!o)return null;let r=E(o,e);if(!r)return null;let[s,a]=r,u=s.apply(a,n.map(l=>{var p;return l&&typeof l=="object"&&l.__ref__&&(p=c.get(l.__ref__))!=null?p:l}));return u&&{uid:w(u),objType:typeof u,isArray:false,tag:"unknown"}}i(It,"invokeObjectMethodAndHold");function jt(t,e){let n=c.get(t);if(!n)return null;let o=E(n,e);return o?o[0]:null}i(jt,"getObjectProperty");function E(t,e){let n=e.split("."),o=t,r=t;for(let s=0;s<n.length;s++){let a=n[s];if(!(a in o))return null;r=o,o=o[a];}return [o,r]}i(E,"getAdvanceObjectProperty");function At(t,e,n){var a;let o=e.split("."),r=t;for(let u=0;u<o.length-1;u++){let l=o[u];if(!(l in r))return;r=r[l];}let s=o[o.length-1];r[s]=typeof n=="object"&&n.__ref__&&(a=c.get(n.__ref__))!=null?a:n;}i(At,"setAdvanceObjectProperty");function Pt(t,e,n){let o=c.get(t);o&&At(o,e,n);}i(Pt,"setObjectProperty");var y=new Map;function T(t,...e){NativeOUID==null||NativeOUID.invoke(t,"__ouid_web_event__",JSON.stringify(e));}i(T,"emit");function xt(t,e){y.has(t)||(y.set(t,[]),window[t]=(n,o,r)=>{var s;(s=y.get(t))==null||s.forEach(a=>a(n,o,r));}),y.get(t).push(e);}i(xt,"subscribe");function Dt(t){H(t);}i(Dt,"releaseNode");function kt(){return window.location.pathname}i(kt,"locationPath");function Mt(t,e){window.history.pushState(t,"",e);}i(Mt,"historyPushState");function Xt(){window.dispatchEvent(new PopStateEvent("popstate",{state:window.history.state}));}i(Xt,"dispatchPopStateEvent");function Lt(t,e,n,o){let r=c.get(t);if(r&&"dispatchEvent"in r){let s=n?new window[n](e,o):new CustomEvent(e,o);r.dispatchEvent(s);}}i(Lt,"dispatchEvent");function N(t,e){return {tag:e.split(/\s/)[0],uid:e,objType:typeof t,isArray:Array.isArray(t)}}i(N,"asOObject");function Yt(t){let e=c.get(t);return e?N(e,t):null}i(Yt,"getOObject");function Ut(t){let e=window[t];if(!e)return null;let n=w(e,t);return N(e,n)}i(Ut,"acquireObject");function Wt(t,...e){let n=window[t];if(!n)return null;let o=new n(...e),r=w(o);return N(o,r)}i(Wt,"newObject");function Vt(t,e){return setTimeout(i(()=>{T(t);},"cb"),e)}i(Vt,"addSetTimeout");function Rt(t,e){return setInterval(i(()=>{T(t);},"cb"),e)}i(Rt,"addSetInterval");function Ft(t){clearTimeout(t);}i(Ft,"removeSetTimeout");function Bt(t){clearInterval(t);}i(Bt,"removeSetInterval");var P,x,A=(x=(P=globalThis.UNIFIED_ENV)!=null?P:window.UNIFIED_ENV)!=null?x:window.WebOUID&&window.WebOUID.UNIFIED_ENV;function Kt(){var t,e;if(__WEB_OUID_EMULATION__||A){globalThis.__OUI_PUR_JS_CONTEXT__=true,window.NativeOUID=Object.assign((t=window.NativeOUID)!=null?t:{},{invoke:i((o,r,s)=>{window[`${r}`](o,s);},"invoke")}),window.WebOUID=Object.assign((e=window.WebOUID)!=null?e:{},{invoke:i(async(o,r,s)=>{window.__native_message__(o,r,s);},"invoke")});let n=window;n.__ouid_native_promises={},window.WebOUID.nativeCall=(o,r,s)=>new Promise((a,u)=>{n.__ouid_native_promises[o]={resolve:a,reject:u},n.WebOUID._callNativeFunction_(o,r,s);}),n.__ouid_native_callback__=(o,r,s)=>{n.__ouid_native_promises&&n.__ouid_native_promises[o]&&(r?n.__ouid_native_promises[o].resolve(s):n.__ouid_native_promises[o].reject(s),delete n.__ouid_native_promises[o]);};}w(document,"document"),w(window,"window"),window._ouid_query=U,window._ouid_queryAll=W,window._ouid_createElement=F,window._ouid_createComment=B,window._ouid_invokeObjectMethod=Ct,window._ouid_invokeObjectMethodAndHold=It,window._ouid_getObjectProperty=jt,window._ouid_setObjectProperty=Pt,window._ouid_appendChild=q,window._ouid_addClass=z,window._ouid_removeClass=$,window._ouid_setInnerHTML=Ot,window._ouid_getInnerHTML=St,window._ouid_setInnerText=G,window._ouid_getInnerText=Q,window._ouid_setContentText=J,window._ouid_getContentText=Z,window._ouid_setAttribute=et,window._ouid_removeAttribute=nt,window._ouid_getAttribte=ot,window._ouid_getAttribteNames=it,window._ouid_childNodes=V,window._ouid_cloneNode=rt,window._ouid_removeNode=st,window._ouid_removeChild=ct,window._ouid_replaceChildNode=vt,window._ouid_replaceNode=at,window._ouid_insertAfter=ut,window._ouid_insertBefore=dt,window._ouid_setInputValue=lt,window._ouid_inputValue=ft,window._ouid_attachEventListener=gt,window._ouid_dettachEventListener=ht,window._ouid_injectComponentStyles=mt,window._ouid_rejectComponentStyles=yt,window._ouid_locationPath=kt,window._ouid_historyPushState=Mt,window._ouid_dispatchPopStateEvent=Xt,window._ouid_parentNode=bt,window._ouid_releaseNode=Dt,window._ouid_getOObject=Yt,window._ouid_acquireObject=Ut,window._ouid_newObject=Wt,window._ouid_dispatchEvent=Lt,window._ouid_setTimeout=Vt,window._ouid_clearTimeout=Ft,window._ouid_dsetInterval=Rt,window._ouid_clearInterval=Bt,window._ouid_setStyle=tt,window._ouid_nextSibling=Et,window._ouid_fetch=Nt,window._ouid_alert=alert,window._ouid_prompt=prompt,xt("__native_message__",async(n,o,r)=>{let s=window[o];if(!s){if(A)try{try{let u=await window.WebOUID.nativeCall(n,o,r);NativeOUID==null||NativeOUID.invoke(n,"__ouid_native_event_success__",u);}catch(u){NativeOUID==null||NativeOUID.invoke(n,"__ouid_native_event_error__",u);}}catch(u){}NativeOUID==null||NativeOUID.invoke(n,"__ouid_native_event_error__",JSON.stringify([{message:"No function match the given name: ("+o+")"}]));return}let a=await s(...JSON.parse(r));NativeOUID==null||NativeOUID.invoke(n,"__ouid_native_event_success__",JSON.stringify([{status:"success",data:a}]));});}i(Kt,"initDOM");
2
+ export{c as ELEMENT_REGISTRY,T as emit,Kt as initDOM,L as stringToHex};//# sourceMappingURL=dom.js.map
3
3
  //# sourceMappingURL=dom.js.map