@preprio/prepr-nextjs
Version:
Next.js package for Prepr CMS preview functionality with advanced debugging and visual editing capabilities
2 lines • 4.68 kB
JavaScript
;var clsx=require('clsx'),tailwindMerge=require('tailwind-merge');var D=Object.defineProperty,x=Object.defineProperties;var w=Object.getOwnPropertyDescriptors;var f=Object.getOwnPropertySymbols;var v=Object.prototype.hasOwnProperty,y=Object.prototype.propertyIsEnumerable;var T=(r,t,e)=>t in r?D(r,t,{enumerable:true,configurable:true,writable:true,value:e}):r[t]=e,u=(r,t)=>{for(var e in t||(t={}))v.call(t,e)&&T(r,e,t[e]);if(f)for(var e of f(t))y.call(t,e)&&T(r,e,t[e]);return r},h=(r,t)=>x(r,w(t));var E={DECODE_FAILED:"STEGA_DECODE_FAILED",INVALID_FORMAT:"STEGA_INVALID_FORMAT",DOM_MANIPULATION_FAILED:"DOM_MANIPULATION_FAILED",CONTEXT_NOT_FOUND:"CONTEXT_NOT_FOUND"};function p(r,t,e,n){return {type:r,context:t,message:e.message,timestamp:new Date().toISOString(),stack:e.stack,additionalData:n}}function M(r,t,e){let n=p(E.DECODE_FAILED,t,r,e);return console.error("Stega Error:",n),process.env.NODE_ENV,n}function s(r,t){let e=p(E.DOM_MANIPULATION_FAILED,t,r);return console.error("DOM Error:",e),e}function I(r){let t=new Error(`${r} must be used within its provider`),e=p(E.CONTEXT_NOT_FOUND,r,t);throw console.error("Context Error:",e),t}var b=class{static createElement(t,e){try{let n=document.createElement(t);return n.className=e,n}catch(n){throw s(n,"createElement"),n}}static appendToBody(t){try{document.body.appendChild(t);}catch(e){throw s(e,"appendToBody"),e}}static removeFromBody(t){try{t.parentNode&&t.parentNode.removeChild(t);}catch(e){throw s(e,"removeFromBody"),e}}static setElementStyles(t,e){try{Object.entries(e).forEach(([n,o])=>{t.style.setProperty(n,o);});}catch(n){throw s(n,"setElementStyles"),n}}static getElementRect(t){try{return t.getBoundingClientRect()}catch(e){throw s(e,"getElementRect"),e}}static isElementInViewport(t){try{let e=this.getElementRect(t);return e.top>=0&&e.left>=0&&e.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&e.right<=(window.innerWidth||document.documentElement.clientWidth)}catch(e){return s(e,"isElementInViewport"),false}}static calculateDistance(t,e,n,o){return Math.sqrt(Math.pow(n-t,2)+Math.pow(o-e,2))}static findClosestElement(t,e,n){try{let o=null,i=1/0;return n.forEach(c=>{let a=this.getElementRect(c),m=this.calculateDistance(t,e,a.left+a.width/2,a.top+a.height/2);m<i&&(i=m,o=c);}),o}catch(o){return s(o,"findClosestElement"),null}}static addEventListener(t,e,n,o){try{t.addEventListener(e,n,o);}catch(i){throw s(i,"addEventListener"),i}}static removeEventListener(t,e,n,o){try{t.removeEventListener(e,n,o);}catch(i){throw s(i,"removeEventListener"),i}}};var d=class r{constructor(t){this.options=u({prefix:"[Prepr]"},t);}isEnabled(){var t,e;return this.options.enabled!==void 0?this.options.enabled:(e=(t=l==null?void 0:l.options)==null?void 0:t.enabled)!=null?e:false}log(t,...e){if(!this.isEnabled())return;let n=this.options.prefix;console.log(`${n} ${t}`,...e);}warn(t,...e){if(!this.isEnabled())return;let n=this.options.prefix;console.warn(`${n} ${t}`,...e);}error(t,...e){if(!this.isEnabled())return;let n=this.options.prefix;console.error(`${n} ${t}`,...e);}scope(t){return new r(h(u({},this.options),{prefix:`${this.options.prefix}[${t}]`}))}},l=null;function C(r=false){l=new d({enabled:r});}function g(){return l||(l=new d({enabled:false})),l}function S(r,...t){g().log(r,...t);}function H(r,...t){g().warn(r,...t);}function P(r,...t){g().error(r,...t);}function $(r){return new d({prefix:`[Prepr][${r}]`})}function k(r,t){let e=null,n=0,o=(...i)=>{let c=Date.now(),a=c-n;a>=t?(r(...i),n=c):(e&&clearTimeout(e),e=setTimeout(()=>{r(...i),n=Date.now(),e=null;},t-a));};return o.cancel=()=>{e&&(clearTimeout(e),e=null);},o}function U(r,t){let e=null,n=(...o)=>{e&&clearTimeout(e),e=setTimeout(()=>{r(...o),e=null;},t);};return n.cancel=()=>{e&&(clearTimeout(e),e=null);},n}function B(r,t=1e3){let e=null,n=0;return ()=>{let o=Date.now();return (!e||o-n>t)&&(e=document.querySelectorAll(r),n=o),e}}function G(...r){return tailwindMerge.twMerge(clsx.clsx(r))}function J(r,t){if(typeof window!="undefined"){let e=u({name:"prepr_preview_bar",event:r},t);window.dispatchEvent(new CustomEvent("prepr_preview_bar",{detail:e})),window.parent&&window.parent!==window&&window.parent.postMessage(e,"*");}}exports.DOMService=b;exports.StegaError=E;exports.cn=G;exports.createElementCache=B;exports.createErrorInfo=p;exports.createScopedLogger=$;exports.debounce=U;exports.debugError=P;exports.debugLog=S;exports.debugWarn=H;exports.getDebugLogger=g;exports.handleContextError=I;exports.handleDOMError=s;exports.handleStegaError=M;exports.initDebugLogger=C;exports.sendPreprEvent=J;exports.throttle=k;//# sourceMappingURL=index.cjs.map
//# sourceMappingURL=index.cjs.map