1(self.webpackChunklightx=self.webpackChunklightx||[]).push([[9430],{54321:(f,v,d)=>{"use strict";d.d(v,{ZR:()=>l,f_:()=>a,w7:()=>r});const e={apiKey:"quality",default:"auto",options:[{id:"auto",label:"Auto",value:null},{id:"1:1",label:"1:1",value:"1:1",width:1024,height:1024,qType:1},{id:"3:4",label:"3:4",value:"3:4",width:768,height:1024,qType:2},{id:"4:3",label:"4:3",value:"4:3",width:1024,height:768,qType:3},{id:"16:9",label:"16:9",value:"16:9",width:1920,height:1080,qType:10},{id:"9:16",label:"9:16",value:"9:16",width:1080,height:1920,qType:9}]},a=[{id:1,featureName:"Ghost Mannequin",featureType:"aighostmannequin",squareVideoUrl:"https://static.lightxeditor.com/assets/AI-tools-videos/Ghost-Manequin-Thumb.mp4",landscapeVideoUrl:"https://static.lightxeditor.com/assets/AI-tools-videos/Ghost-Manequin-Thumb-In.mp4",icon:"ghostmanequin",isNew:1,slots:["prompt","aspect"],prompt:{optional:!0,label:"Enter Prompt (Optional)",placeholder:"e.g. \u201cshow left\u201d or \u201cshow back\u201d",apiKey:"textPrompt"},aspect:e},{id:2,featureName:"AI Flat Lay",featureType:"aiflatlaygenerator",squareVideoUrl:"https://static.lightxeditor.com/assets/AI-tools-videos/Flatlay-Thumb.mp4",landscapeVideoUrl:"https://static.lightxeditor.com/assets/AI-tools-videos/Flatlay-Thumb-In.mp4",icon:"flatlay",isNew:1,slots:["prompt","aspect"],prompt:{o
1ptional:!0,label:"Enter Prompt (Optional)",placeholder:"e.g. \u201cOn wooden surface\u201d",apiKey:"textPrompt"},aspect:e},{id:3,featureName:"AI Recolor",featureType:"airecolor",squareVideoUrl:"https://static.lightxeditor.com/assets/AI-tools-videos/Recolor-Thumb.mp4",landscapeVideoUrl:"https://static.lightxeditor.com/assets/AI-tools-videos/Recolor-Thumb-In.mp4",icon:"recolor",isNew:1,slots:["color","prompt","aspect"],prompt:{optional:!0,label:"Enter Prompt (Optional)",placeholder:"Describe the part to recolor",apiKey:"textPrompt"},aspect:e,color:{required:!0,label:"Color",apiKey:"hexColor"}}];function l(c){return!!c&&a.some(h=>h.featureType===c)}function r(c){return c?a.find(h=>h.featureType===c)?.featureName??null:null}},88650:(f,v,d)=>{"use strict";d.d(v,{P:()=>m});var e=d(54438),a=d(60177),l=d(33391),r=d(345),c=d(68064);const h=["videoPlayer"];function n(p,u){if(1&p){const t=e.RV6();e.j41(0,"button",4),e.bIt("click",function(){e.eBV(t);const i=e.XpG();return e.Njj(i.activeModal.close())}),e.nrm(1,"pi",5),e.k0s()}}let m=(()=>{var p;class u{constructor(o,i,s){this.activeModal=o,this.document=i,this.sanitizer=s,this.videoId="",this.closevedio=new e.bkB,this.isLoaded=!1,this.videoEmbedUrl=""}ngOnInit(){this.updateVideoUrl(),this.isLoaded=!0}ngOnChanges(o){o.videoId&&this.updateVideoUrl()}updateVideoUrl(){const i=`https://www.youtube.com/embed/${this.extractVideoId(this.videoId)}`;this.videoEmbedUrl=this.sanitizer.bypassSecurityTrustResourceUrl(i)}extractVideoId(o){const i=(o||"").trim();if(!i)return"Wcw4jF2XoD4";if(!i.includes("youtube.com")&&!i.includes("youtu.be"))return i.split(/[?&]/)[0];try{const s=new URL(i);if(s.hostname.toLowerCase().includes("youtu.be"))return s.pathname.replace("/","").split(/[?&]/)[0];const b=s.searchParams.get("v");if(b)return b;const w=s.pathname.split("/embed/");if(w.length>1)return w[1].split("/")[0].split(/[?&]/)[0]}catch{return i.split(/[?&]/)[0]}return i.split(/[?&]/)[0]}}return(p=u).\u0275fac=function(o){return new(o||p)(e.rXU(l.Lw),e.rXU(a.qQ),e.rXU(r.up))},p.\u0275cmp=e.VBU({type:p,selectors:[["video-preview"]],viewQuery:function(o,i){if(1&o&&e.GBs(h,5),2&o){let s;e.mGM(s=e.lsd())&&(i.videoplayer=s.first)}},inputs:{videoId:"videoId"},outputs:{closevedio:"closevedio"},features:[e.OA$],decls:6,vars:2,consts:[[1,"modal-header","border-0"],["type","button","aria-hidden","close","class","close","style","margin-top: 16px;",3,"click",4,"ngIf"],[1,"text-center","youtubePlayer"],["width","100%","height","100%","frameborder","0","allowfullscreen","",3,"src"],["type","button","aria-hidden","close",1,"close",2,"margin-top","16px",3,"click"],["name","close",1,"f-30"]],template:function(o,i){1&o&&(e.j41(0,"div")(1,"div",0),e.DNE(2,n,2,0,"button",1),e.k0s(),e.j41(3,"div")(4,"div",2),e.nrm(5,"iframe",3),e.k0s()()()),2&o&&(e.R7$(2),e.Y8G("ngIf",i.isLoaded),e.R7$(3),e.Y8G("src",i.videoEmbedUrl,e.f$h))},dependencies:[a.bT,c.b],styles:[".video[_ngcontent-%COMP%]{margin:100px}.modal-content[_ngcontent-%COMP%]{background:transparent!important}.youtubePlayer[_ngcontent-%COMP%]{width:min(624px,100%);aspect-ratio:16/9}"]}),u})()},2820:(f,v,d)=>{"use strict";d.d(v,{Z:()=>a});var e=d(54438);let a=(()=>{var r;class c{constructor(n){this.el=n,this.regex=new RegExp(/^[0-9]+(\.[0-9][0-9]*){0,1}$/g),this.specialKeys=["Backspace","Tab","End","Home","ArrowLeft","ArrowRight","Delete"]}onKeyDown(n){if((n.metaKey||n.ctrlKey)&&("v"===n.key||"a"===n.key||"c"===n.key))return;if(-1!==this.specialKeys.indexOf(n.key))return;let p=this.el.nativeElement.value.concat(n.key);p&&!String(p).match(this.regex)&&n.preventDefault()}}return(r=c).\u0275fac=function(n){return new(n||r)(e.rXU(e.aKT))},r.\u0275dir=e.FsC({type:r,selectors:[["","numbersOnly",""]],hostBindings:function(n,m){1&n&&e.bIt("keydown",function(u){return m.onKeyDown(u)})}}),c})()},18545:(f,v,d)=>{"use strict";d.d(v,{m:()=>l});var e=d(54438),a=d(345);let l=(()=>{var r;class c{constructor(n){this.sanitizer=n}transform(n,m){switch(m){case"html":return this.sanitizer.bypassSecurityTrustHtml(n);case"url":return this.sanitizer.bypassSecurityTrustUrl(n);default:throw new Error(`Invalid safe type specified: ${m}`)}}}return(r=c).\u0275fac=function(n){return new(n||r)(e.rXU(a.up,16))},r.\u0275pipe=e.EJ8({name:"safe",type:r,pure:!0}),c})()},93391:(f,v,d)=>{"use strict";d.d(v,{C:()=>c});var e=d(54438),a=d(60177),l=d(84341);const r=h=>({transition:h});let c=(()=>{var h;class n{constructor(){this.selected=!1,this.disabled=!1,this.loaded=!1,this.changeT=new e.bkB}ngAfterViewInit(){setTimeout(()=>{this.loaded=!0},100)}ngOnInit(){}changeToggle(){setTimeout(()=>{this.changeT.emit(this.selected)},200)}}return(h=n).\u0275fac=function(p){return new(p||h)},h.\u0275cmp=e.VBU({type:h,selectors:[["toggle-switch"]],inputs:{selected:"selected",disabled:"disabled"},outputs:{changeT:"changeT"},decls:3,vars:5,consts:[[1,"toggle-switch"],["type","checkbox",3,"ngModelChange","click","disabled","ngModel"],[1,"slider",3,"ngClass"]],template:function(p,u){1&p&&(e.j41(0,"label",0)(1,"input",1),e.mxI("ngModelChange",function(o){return e.DH7(u.selected,o)||(u.selected=o),o}),e.bIt("click",function(){return u.changeToggle()}),e.k0s(),e.nrm(2,"div",2),e.k0s()),2&p&&(e.R7$(),e.Y8G("disabled",u.disabled),e.R50("ngModel",u.selected),e.R7$(),e.Y8G("ngClass",e.eq3(3,r,u.loaded)))},dependencies:[a.YU,l.Zm,l.BC,l.vS],styles:['.toggle-switch[_ngcontent-%COMP%]{height:30px;width:56px;display:inline-block;position:relative;margin-bottom:.5rem}.toggle-switch[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{display:none}.toggle-switch[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:checked + .slider[_ngcontent-%COMP%]{background-color:#fff}.toggle-switch[_ngcontent-%COMP%] input[_ngcontent-%COMP%]:checked + .slider[_ngcontent-%COMP%]:after{transform:translate(26px)}.toggle-switch[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{border-radius:20px;position:absolute;
1left:0;top:0;right:0;bottom:0;background-color:#fff}.toggle-switch[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]:after{position:absolute;content:"";height:24px;width:24px;background-color:#626adf;left:4px;bottom:3px;border-radius:20px}.toggle-switch[_ngcontent-%COMP%] .transition[_ngcontent-%COMP%]{transition:2s}.toggle-switch[_ngcontent-%COMP%] .transition[_ngcontent-%COMP%]:after{transition:.4s}']}),n})()},37228:()=>{(()=>{"use strict";var f={792:(e,a,l)=>{l.d(a,{Z:()=>h});var r=l(609),c=l.n(r)()(function(n){return n[1]});c.push([e.id,':host{--divider-width: 1px;--divider-color: #fff;--divider-shadow: none;--default-handle-width: 50px;--default-handle-color: #fff;--default-handle-opacity: 1;--default-handle-shadow: none;--handle-position-start: 50%;position:relative;display:inline-block;overflow:hidden;line-height:0;direction:ltr}@media screen and (-webkit-min-device-pixel-ratio: 0)and (min-resolution: 0.001dpcm){:host{outline-offset:1px}}::slotted(*){-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.first{position:absolute;left:0;top:0;right:0;line-height:normal;font-size:100%;max-height:100%;height:100%;width:100%;--exposure: 50%;--keyboard-transition-time: 0ms;--default-transition-time: 0ms;--transition-time: var(--default-transition-time)}.first .first-overlay-container{position:relative;clip-path:inset(0 var(--exposure) 0 0);transition:clip-path var(--transition-time);height:100%}.first .first-overlay{overflow:hidden;height:100%}.first.focused{will-change:clip-path}.first.focused .first-overlay-container{will-change:clip-path}.second{position:relative}.handle-container{transform:translateX(50%);position:absolute;top:0;right:var(--exposure);height:100%;transition:right var(--transition-time),bottom var(--transition-time)}.focused .handle-container{will-change:right}.divider{position:absolute;height:100%;width:100%;left:0;top:0;display:flex;align-items:center;justify-content:center;flex-direction:column}.divider:after{content:" ";display:block;height:100%;border-left-width:var(--divider-width);border-left-style:solid;border-left-color:var(--divider-color);box-shadow:var(--divider-shadow)}.handle{position:absolute;top:var(--handle-position-start);pointer-events:none;box-sizing:border-box;margin-left:1px;transform:translate(calc(-50% - 0.5px), -50%);line-height:0}.default-handle{width:var(--default-handle-width);opacity:var(--default-handle-opacity);transition:all 1s;filter:drop-shadow(var(--default-handle-shadow))}.default-handle path{stroke:var(--default-handle-color)}.vertical .first-overlay-container{clip-path:inset(0 0 var(--exposure) 0)}.vertical .handle-container{transform:translateY(50%);height:auto;top:unset;bottom:var(--exposure);width:100%;left:0;flex-direction:row}.vertical .divider:after{height:1px;width:100%;border-top-width:var(--divider-width);border-top-style:solid;border-top-color:var(--divider-color);border-left:0}.vertical .handle{top:auto;left:var(--handle-position-start);transform:translate(calc(-50% - 0.5px), -50%) rotate(90deg)}',""]);const h=c},609:e=>{e.exports=function(a){var l=[];return l.toString=function(){return this.map(function(r){var c=a(r);return r[2]?"@media ".concat(r[2]," {").concat(c,"}"):c}).join("")},l.i=function(r,c,h){"string"==typeof r&&(r=[[null,r,""]]);var n={};if(h)for(var m=0;m<this.length;m++){var p=this[m][0];null!=p&&(n[p]=!0)}for(var u=0;u<r.length;u++){var t=[].concat(r[u]);h&&n[t[0]]||(c&&(t[2]=t[2]?"".concat(c," and ").concat(t[2]):c),l.push(t))}},l}}},v={};function d(e){var a=v[e];if(void 0!==a)return a.exports;var l=v[e]={id:e,exports:{}};return f[e](l,l.exports,d),l.exports}d.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return d.d(a,{a}),a},d.d=(e,a)=>{for(var l in a)d.o(a,l)&&!d.o(e,l)&&Object.defineProperty(e,l,{enumerable:!0,get:a[l]})},d.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),(()=>{var e=d(792);const a="rendered",l=(u,t)=>{const o=u.getBoundingClientRect();let i,s;return"mousedown"===t.type?(i=t.clientX,s=t.clientY):(i=t.touches[0].clientX,s=t.touches[0].clientY),i>=o.x&&i<=o.x+o.width&&s>=o.y&&s<=o.y+o.height},r=document.createElement("template");r.innerHTML='<div class="second" id="second"> <slot name="second"><slot name="before"></slot></slot> </div> <div class="first" id="first"> <div class="first-overlay"> <div class="first-overlay-container" id="firstImageContainer"> <slot name="first"><slot name="after"></slot></slot> </div> </div> <div class="handle-container"> <div class="divider"></div> <div class="handle" id="handle"> <slot name="handle"> <svg xmlns="http://www.w3.org/2000/svg" class="default-handle" viewBox="-8 -3 16 6"> <path d="M -5 -2 L -7 0 L -5 2 M 5 -2 L 7 0 L 5 2" fill="none" vector-effect="non-scaling-stroke"/> </svg> </slot> </div> </div> </div> ';const c={ArrowLeft:-1,ArrowRight:1}
1,h=["horizontal","vertical"],n=u=>({x:u.touches[0].pageX,y:u.touches[0].pageY}),m=u=>({x:u.pageX,y:u.pageY});class p extends HTMLElement{constructor(){super(),this.exposure=this.hasAttribute("value")?parseFloat(this.getAttribute("value")):50,this.slideOnHover=!1,this.slideDirection="horizontal",this.keyboard="enabled",this.isMouseDown=!1,this.animationDirection=0,this.isFocused=!1,this.handle=!1,this.onMouseMove=i=>{if(this.isMouseDown||this.slideOnHover){const s=m(i);this.slideToPage(s)}},this.bodyUserSelectStyle="",this.onMouseDown=i=>{if(this.slideOnHover||this.handle&&!l(this.handleElement,i))return;i.preventDefault(),window.addEventListener("mousemove",this.onMouseMove),window.addEventListener("mouseup",this.onWindowMouseUp),this.isMouseDown=!0,this.enableTransition();const s=m(i);this.slideToPage(s),this.focus(),this.bodyUserSelectStyle=window.document.body.style.userSelect,window.document.body.style.userSelect="none"},this.onWindowMouseUp=()=>{this.isMouseDown=!1,window.document.body.style.userSelect=this.bodyUserSelectStyle,window.removeEventListener("mousemove",this.onMouseMove),window.removeEventListener("mouseup",this.onWindowMouseUp)},this.touchStartPoint=null,this.isTouchComparing=!1,this.hasTouchMoved=!1,this.onTouchStart=i=>{this.handle&&!l(this.handleElement,i)||(this.touchStartPoint=n(i),this.isFocused&&(this.enableTransition(),this.slideToPage(this.touchStartPoint)))},this.onTouchMove=i=>{if(null===this.touchStartPoint)return;const s=n(i);if(this.isTouchComparing)return this.slideToPage(s),i.preventDefault(),!1;if(!this.hasTouchMoved){const g=Math.abs(s.y-this.touchStartPoint.y),b=Math.abs(s.x-this.touchStartPoint.x);if("horizontal"===this.slideDirection&&g<b||"vertical"===this.slideDirection&&g>b)return this.isTouchComparing=!0,this.focus(),this.slideToPage(s),i.preventDefault(),!1;this.hasTouchMoved=!0}},this.onTouchEnd=()=>{this.isTouchComparing=!1,this.hasTouchMoved=!1,this.touchStartPoint=null},this.onBlur=()=>{this.stopSlideAnimation(),this.isFocused=!1,this.firstElement.classList.remove("focused")},this.onFocus=()=>{this.isFocused=!0,this.firstElement.classList.add("focused")},this.onKeyDown=i=>{if("disabled"===this.keyboard)return;const s=c[i.key];this.animationDirection!==s&&void 0!==s&&(this.animationDirection=s,this.startSlideAnimation())},this.onKeyUp=i=>{if("disabled"===this.keyboard)return;const s=c[i.key];void 0!==s&&this.animationDirection===s&&this.stopSlideAnimation()},this.resetDimensions=()=>{this.imageWidth=this.offsetWidth,this.imageHeight=this.offsetHeight};const t=this.attachShadow({mode:"open"}),o=document.createElement("style");o.innerHTML=e.Z,this.getAttribute("nonce")&&o.setAttribute("nonce",this.getAttribute("nonce")),t.appendChild(o),t.appendChild(r.content.cloneNode(!0)),this.firstElement=t.getElementById("first"),this.secondElement=t.getElementById("second"),this.handleElement=t.getElementById("handle")}get value(){return this.exposure}set value(t){const o=parseFloat(t);o!==this.exposure&&(this.exposure=o,this.enableTransition(),this.setExposure())}get hover(){return this.slideOnHover}set hover(t){this.slideOnHover="false"!==t.toString().toLowerCase(),this.removeEventListener("mousemove",this.onMouseMove),this.slideOnHover&&this.addEventListener("mousemove",this.onMouseMove)}get direction(){return this.slideDirection}set direction(t){this.slideDirection=t.toString().toLowerCase(),this.slide(0),this.firstElement.classList.remove(...h),h.includes(this.slideDirection)&&this.firstElement.classList.add(this.slideDirection)}static get observedAttributes(){return["hover","direction"]}connectedCallback(){this.hasAttribute("tabindex")||(this.tabIndex=0),this.addEventListener("dragstart",t=>(t.preventDefault(),!1)),new ResizeObserver(this.resetDimensions).observe(this),this.setExposure(0),this.keyboard=this.hasAttribute("keyboard")&&"disabled"===this.getAttribute("keyboard")?"disabled":"enabled",this.addEventListener("keydown",this.onKeyDown),this.addEventListener("keyup",this.onKeyUp),this.addEventListener("focus",this.onFocus),this.addEventListener("blur",this.onBlur),this.addEventListener("touchstart",this.onTouchStart,{passive:!0}),this.addEventListener("touchmove",this.onTouchMove,{passive:!1}),this.addEventListener("touchend",this.onTouchEnd),this.addEventListener("mousedown",this.onMouseDown),this.handle=this.hasAttribute("handle"),this.hover=!!this.hasAttribute("hover")&&this.getAttribute("hover"),this.direction=this.hasAttribute("direction")?this.getAttribute("direction"):"horizontal",this.resetDimensions(),this.classList.contains(a)||this.classList.add(a),this.querySelectorAll('[slot="before"], [slot="after"]').length>0&&console.warn('<img-comparison-slider>: slot names "before" and "after" are deprecated and soon won\'t be supported. Please use slot="first" instead of slot="after", and slot="second" instead of slot="before".')}disconnectedCallback(){this.transitionTimer&&window.clearTimeout(this.transitionTimer)}attributeChangedCallback(t,o,i){"hover"===t&&(this.hover=i),"direction"===t&&(this.direction=i),"ke
1yboard"===t&&(this.keyboard="disabled"===i?"disabled":"enabled")}setExposure(t=0){var o;this.exposure=(o=this.exposure+t)<0?0:o>100?100:o,this.firstElement.style.setProperty("--exposure",100-this.exposure+"%")}slide(t=0){this.setExposure(t);const o=new Event("slide");this.dispatchEvent(o)}slideToPage(t){"horizontal"===this.slideDirection&&this.slideToPageX(t.x),"vertical"===this.slideDirection&&this.slideToPageY(t.y)}slideToPageX(t){const o=t-this.getBoundingClientRect().left-window.scrollX;this.exposure=o/this.imageWidth*100,this.slide(0)}slideToPageY(t){const o=t-this.getBoundingClientRect().top-window.scrollY;this.exposure=o/this.imageHeight*100,this.slide(0)}enableTransition(){this.firstElement.style.setProperty("--transition-time","100ms"),this.transitionTimer=window.setTimeout(()=>{this.firstElement.style.setProperty("--transition-time","var(--default-transition-time)"),this.transitionTimer=null},100)}startSlideAnimation(){let t=null,o=this.animationDirection;this.firstElement.style.setProperty("--transition-time","var(--keyboard-transition-time)");const i=s=>{0!==this.animationDirection&&o===this.animationDirection&&(null===t&&(t=s),this.slide((s-t)/16.666666666666668*this.animationDirection),setTimeout(()=>window.requestAnimationFrame(i),0),t=s)};window.requestAnimationFrame(i)}stopSlideAnimation(){this.animationDirection=0,this.firstElement.style.setProperty("--transition-time","var(--default-transition-time)")}}typeof window<"u"&&window.customElements.define("img-comparison-slider",p)})()})()}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.