ads
8 months ago
control
8 months ago
img
10 years ago
blocker.js
2 weeks ago
blocker.min.js
2 weeks ago
embed.js
5 years ago
embed.min.js
7 months ago
front.js
3 days ago
front.min.js
3 days ago
jquery-ui-timepicker-addon.js
10 years ago
jquery-ui-timepicker-addon.min.js
7 months ago
jquery.dataTables.min.js
1 year ago
jquery.validate.js
7 months ago
jquery.validate.min.js
2 weeks ago
jqueryFileTree.js
5 years ago
jqueryFileTree.min.js
7 months ago
overwatch.js
7 months ago
overwatch.min.js
7 months ago
password-strength.js
2 years ago
password-strength.min.js
7 months ago
simple-scrollbar.js
7 months ago
simple-scrollbar.min.js
7 months ago
simplebar.js
6 years ago
validator.min.js
9 years ago
vue.js
9 months ago
vue.min.js
9 months ago
wpdm-admin.js
2 weeks ago
wpdm-admin.min.js
2 weeks ago
wpdm.js
6 months ago
wpdm.min.js
6 months ago
overwatch.min.js
1 lines
| 1 | const OverWatch=ID=>{const area=document.getElementById(ID);const buffer_html=area.innerHTML.replaceAll(/{(.+)}/gi,"<data name='$1'>{$1}</data>");area.innerHTML=buffer_html;let _loops=[];let _attrs=[];let looped_sections=document.querySelectorAll(`#${ID} loop`);let attrs=document.querySelectorAll(`#${ID} [o-attr]`);for(const[key,elm]of Object.entries(attrs)){let _attr=elm.getAttribute("o-attr");let _var=elm.getAttribute("w-val");if(!_attrs[_var])_attrs[_var]=[];_attrs[_var].push({_attr:_attr,_var:_var,_elm:elm})}for(const[key,loop]of Object.entries(looped_sections)){let _for=loop.getAttribute(":for");let _each=loop.getAttribute(":each");_loops[_for]={_for:_for,_each:_each,_repeat:loop.innerHTML,_loop:loop};loop.innerHTML=""}let parent=[];let flat_data=[];let key="";const handler={set(target,prop,value){key=parent.length>0?parent.join(".")+`.${prop}`:prop;parent=[];if(typeof value==="object"){value=new Proxy(value,handler);process(key,value)}Reflect.set(target,prop,value);interpret(key,value)},get(target,prop,receiver){if(typeof prop==="string")parent.push(prop);return Reflect.get(target,prop)}};const interpret=(key,value)=>{document.querySelectorAll(`#${ID} data[name='${key}']`).forEach(elm=>{elm.innerHTML=value});if(_attrs[key]){let elms=_attrs[key];elms.forEach(elm=>{elm._elm.setAttribute(elm._attr,value)})}};const valueof=(data_source,index)=>{let value=data_source;index=index.split(".");index.forEach(prop=>{value=Reflect.get(data_source,prop)});return value};const process=(name,obj)=>{if(_loops[name]){let loop=_loops[name];let _for=obj;let _html="";let index=0;try{_for.forEach(item=>{let keys=Object.keys(item);let _processed_html=loop._repeat;keys.forEach(key=>{_processed_html=`<loop_item key='${name}.${index}.${key}'>`+_processed_html.replace(`:${loop._each}.${key}`,item[key])+`</loop_item>`});_html+=_processed_html;index++});loop._loop.innerHTML=_html}catch(e){}}for(let[key,value]of Object.entries(obj)){const index=`${name}.${key}`;if(typeof value!=="object"){interpret(index,value)}else if(typeof value==="object"){value=new Proxy(value,handler);process(index,value)}}};return new Proxy({},handler)}; |