amotify
Version:
UI Component for React,NextJS,esbuild
2 lines (1 loc) • 3.54 kB
JavaScript
import{b as s,c as h}from"../chunk-C5N2D3ZX.js";import i,{UUID as p}from"jmini";import{useRemote as f,ColorRecords as b,SetThemeColorTag as u}from".";let n={sessionUID:p(),appRoot:null,darkMode:"light",themeColor:"comun",roundness:2,isSystemDarkmode:()=>window.matchMedia("(prefers-color-scheme: dark)").matches==!0,deviceIs:"",browserIs:"",isPhone:!1,isTouchDevice:!1,isIOS:!1,screen:{breakpoint:834,phonepoint:690,viewHeight:0,viewWidth:0,isBreakpoint:(e=834)=>window.innerWidth<=e,isPhonepoint:(e=690)=>window.innerWidth<=e}};const o={get:()=>n,set:e=>{n=s(s({},n),e)},update:{themeColor:e=>{if(b.find(d=>d.key==e)||(e="comun"),e==o.get().themeColor)return;o.set(h(s({},o.get()),{themeColor:e}));let t=i(document.body);t.removeClass("",...t.findClass(/^bdsTC/)).addClass("bdsTC_"+e).callback(()=>{u()}),o.restart()},darkMode:e=>{if(i.isOneOf(e,"light","dark","dim","auto")||(e="light"),e==o.get().darkMode)return;let t=e=="auto"?o.get().isSystemDarkmode()?"dark":"light":e;o.set(h(s({},o.get()),{darkMode:t}));let d=i(document.body);d.removeClass("",...d.findClass(/^bdsDM/)).addClass("bdsDM_"+t),o.restart()},roundness:e=>{e>=0&&e<=5||(e=2),e!=o.get().roundness&&(o.set(h(s({},o.get()),{roundness:e})),o.restart(p()))},screen:e=>{o.get().screen=s(s({},o.get().screen),e)}},launch:e=>{const t=window.navigator.userAgent.toLowerCase(),d=t.indexOf("windows nt")!==-1?"windows":t.indexOf("android")!==-1?"android":t.indexOf("iphone")!==-1?"iPhone":t.indexOf("ipad")>-1?"iPad":t.indexOf("mac os x")!==-1?"macOSX":"undefined",l=t.indexOf("msie")!==-1||t.indexOf("trident")!==-1?"ie":t.indexOf("edge")!==-1?"edge":t.indexOf("chrome")!==-1?"chrome":t.indexOf("safari")!==-1?"safari":t.indexOf("firefox")!==-1?"firefox":t.indexOf("opera")!==-1||t.indexOf("opr")!==-1?"opera":"undefined";n.appRoot=e.appRoot||document.body,n.appRoot instanceof HTMLElement&&(n.appRoot.tabIndex=0),i.isExist(e.roundness)&&o.update.roundness(e.roundness),i.isExist(e.themeColor)&&o.update.themeColor(e.themeColor),i.isExist(e.darkMode)&&o.update.darkMode(e.darkMode),n.deviceIs=d,n.browserIs=l,n.isPhone=i.isOneOf(d,"android","iPhone"),n.isTouchDevice=window.ontouchstart!==void 0&&0<navigator.maxTouchPoints,n.isIOS=i.isOneOf(d,"iPhone","iPad"),n.isTouchDevice=window.ontouchstart!==void 0&&0<navigator.maxTouchPoints,n.isIOS=i.isOneOf(d,"iPhone","iPad"),n.screen={breakpoint:834,phonepoint:690,viewHeight:window.innerHeight,viewWidth:window.innerWidth,isBreakpoint:(r=834)=>window.innerWidth<=r,isPhonepoint:(r=690)=>window.innerWidth<=r},i(document.body).addClass("AMOTIFY_be_body","usrDevice_"+o.get().deviceIs,"bdsDM_"+o.get().darkMode,"bdsTC_"+o.get().themeColor),i(window).onEvent("load",()=>{let r=document.body.style,a=i(document.body),m=Number(a.getStyleProperty("--topNavHeight").removeLetters()||0),c=Number(a.getStyleProperty("--footerNavHeight").removeLetters()||0),w=window.innerHeight-m-c;r.setProperty("--viewHeight",window.innerHeight+"px"),r.setProperty("--contentHeight",w+"px")},{eventID:"windowLoad"}).onEvent("resize",()=>{o.update.screen({viewHeight:window.innerHeight,viewWidth:window.innerWidth});let r=i(document.body),a=window.innerHeight,m=Number(r.getStyleProperty("--topNavHeight").removeLetters()),c=Number(r.getStyleProperty("--footerNavHeight").removeLetters()),g=a-m-c;r.setStyleProperty("--viewHeight",a+"px").setStyleProperty("--sideNavHeight",g+"px").setStyleProperty("--contentHeight",g+"px")},{eventID:"getDeviceInfo"}),u()},restart:e=>{f.bridge("LaunchReactApp_"+o.get().sessionUID,e)}};export{o as Config,o as default};