1import{a as nt}from"./chunk-B4SLJCPD.js";import{a as kt}from"./chunk-YGMIKTNM.js";import{a as Gt}from"./chunk-3G3NJ5AC.js";import{a as Kt}from"./chunk-EMMWFM4I.js";import"./chunk-HRXZ2A45.js";import{a as bt}from"./chunk-UCSHSOKQ.js";import"./chunk-JQBN2LMM.js";import"./chunk-FZVSUDFQ.js";import{a as yt}from"./chunk-S2WHJET3.js";import{a as Qt,c as B}from"./chunk-YWQEAMO2.js";import"./chunk-LT5R4F6A.js";import{a as Ut}from"./chunk-JIVDCNGJ.js";import"./chunk-HN22V3SI.js";import"./chunk-KMGWB25U.js";import{a as zt}from"./chunk-6G6O36CX.js";import"./chunk-X6SUZXEZ.js";import"./chunk-F7I76LQ2.js";import"./chunk-LADJCJ54.js";import{a as ht}from"./chunk-SKBN5GMI.js";import{a as Ct}from"./chunk-FHCSGYN7.js";import{a as vt}from"./chunk-CO7L5LPX.js";import{a as it}from"./chunk-7ULPUYMM.js";import"./chunk-ADTZB2EK.js";import{a as ft}from"./chunk-RM5IZHWO.js";import{a as V}from"./chunk-HTQL7CLK.js";import"./chunk-4OILOGPT.js";import"./chunk-JZHQNCHT.js";import"./chunk-DJSHES3R.js";import"./chunk-ZQN5P7WQ.js";import"./chunk-3BCKCKAC.js";import"./chunk-SUY6KX6X.js";import"./chunk-GTEYSQ4V.js";import"./chunk-BW542A5L.js";import"./chunk-7QAE5IMM.js";import{b as xt}from"./chunk-Y2DG2TYW.js";import"./chunk-LI7KSK6P.js";import"./chunk-FNVRK2UA.js";import"./chunk-VJGBFOXR.js";import"./chunk-372KZGH4.js";import"./chunk-NFLKEUJS.js";import"./chunk-ZIRBTTM7.js";import"./chunk-K7XZZNKA.js";import"./chunk-DEALW54I.js";import{a as gt}from"./chunk-JWYWOZIG.js";import{b as et}from"./chunk-JNII2LYP.js";import"./chunk-F7WQZFUR.js";import{b as qt}from"./chunk-AO6PSOW3.js";import{f as Z,h as tt,i as _t}from"./chunk-CAOFRRG2.js";import"./chunk-NDQWXRSQ.js";import"./chunk-WNNT6KH3.js";import{$b as g,Ac as d,Bc as C,Cc as y,Ea as f,Ga as ct,Ia as G,Mc as D,Od as Vt,Pa as At,Pc as L,Qc as H,Ra as dt,Rc as Nt,Tb as W,Tc as $,Ub as K,Uc as U,Vb as p,Vc as Ht,Vd as jt,Wb as m,Xb as X,Zb as T,Zd as J,_b as O,ac as s,bc as r,bd as F,cc as u,db as S,dc as M,eb as pt,ec as E,fc as z,hd as P,jb as o,jc as q,kc as rt,la as I,lc as Y,mc as mt,nc as l,qa as Ot,qd as $t,ra as R,rb as Dt,rc as Lt,sa as N,sb as b,sc as Ft,ta as at,tc as Rt,ua as st,va as Bt,w as Tt,xa as It,xb as w,xc as ut,yc as k}from"./chunk-7GTDZMJG.js";import{a as Et}from"./chunk-ZGVHDELW.js";function Ce(e,a){if(e&1&&u(0,"img",1),e&2){let t=l();g("alt",t.block().file.alternativeText)("width",t.block().file.width)("height",t.block().file.height)("ngSrc",t.block().file.url)}}function he(e,a){if(e&1&&(u(0,"figcaption",2),$(1,"markdown")),e&2){let t=l();g("innerHTML",U(1,1,t.block().text||t.block().file.caption),S)}}var Wt=(()=>{class e{constructor(){this.block=P.required()}static{this.\u0275fac=function(i){return new(i||e)}}static{this.\u0275cmp=w({type:e,selectors:[["app-media-block"]],inputs:{block:[1,"block"]},decls:3,vars:2,consts:[[1,"prose-figure"],["sizes","(max-width: 768px) 100vw, 800px",1,"prose-image",3,"alt","width","height","ngSrc"],[3,"innerHTML"]],template:function(i,n){i&1&&(s(0,"figure",0),p(1,Ce,1,4,"img",1),p(2,he,2,3,"figcaption",2),r()),i&2&&(o(),m(n.block().file?1:-1),o(),m(n.block().text||n.block().file.caption?2:-1))},dependencies:[J,nt],styles:["[_nghost-%COMP%]{display:block}[_nghost-%COMP%] .prose-figure[_ngcontent-%COMP%]{margin:2em 0;text-align:center}[_nghost-%COMP%] .prose-figure[_ngcontent-%COMP%] .prose-image[_ngcontent-%COMP%]{display:block;margin-left:auto;margin-right:auto;max-width:100%;height:auto;border-radius:var(--radius);box-shadow:var(--elevation-sm)}[_nghost-%COMP%] .prose-figure[_ngcontent-%COMP%] figcaption[_ngcontent-%COMP%]{margin-top:.75em;font-size:var(--text-body-small);line-height:var(--text-body-small-line-height);color:var(--color-muted-foreground);font-family:var(--font-heebo);text-align:center}[_nghost-%COMP%] .prose-figure[_ngcontent-%COMP%] figcaption[_ngcontent-%COMP%] p{margin:0;text-align:inherit}"],changeDetection:0})}}return e})();function xe(e,a){if(e&1&&(M(0,"p"),d(1),E()),e&2){let t=l();o(),C(t.block().body)}}function ve(e,a){if(e&1&&(M(0,"footer",1),d(1),E()),e&2){let t=l();o(),C(t.block().title)}}var Xt=(()=>{class e{constructor(){this.block=P.required()}static{this.\u0275fac=function(i){return new(i||e)}}static{this.\u0275cmp=w({type:e,selectors:[["app-quote-block"]],inputs:{block:[1,"block"]},decls:3,vars:2,consts:[[1,"prose-blockquote"],[1,"quote-footer"]],template:function(i,n){i&1&&(M(0,"blockquote",0),p(1,xe,2,1,"p"),p(2,ve,2,1,"footer",1),E()),i&2&&(o(),m(n.block().body?1:-1),o(),m(n.block().title?2:-1))},styles:["[_nghost-%COMP%]{display:block}[_nghost-%COMP%] .prose-blockquote[_ngcontent-%COMP%]{margin:1.6em 0;padding:1em 1em 1em 1.5em;border-left:.25em solid var(--color-primary);font-style:italic;color:var(--color-muted-foreground);background-color:var(--color-muted);border-radius:0 var(--radius) var(--radius) 0;font-family:var(--font-heebo);font-size:var(--text-body-large);line-height:var(--text-body-large-line-height)}[_nghost-%COMP%] .prose-blockquote[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin-bottom:.75em}[_nghost-%COMP%] .prose-blockquote[_ngcontent-%COMP%] p[_ngcontent-%COMP%]:last-child{margin-bottom:0}[_nghost-%COMP%] .prose-blockquote[_ngcontent-%COMP%] .quote-footer[_ngcontent-%COMP%]{font-weight:var(--font-weight-semibold);font-size:var(--text-body-small);margin-top:.5em;text-align:right;font-style:normal}"],changeDetection:0})}}return e})();var Yt=(()=>{class e{constructor(){this.block=P.required(),this.cdr=I($t),this.renderedMarkdown="",this.markdownRenderer=new Qt,this.markdownRenderer.image=({href:t,title:i,text:n})=>{let c=[`src="${this.escapeAttribute(t)}"`,`alt="${this.escapeAttribute(n)}"`,'loading="lazy"','decoding="async"'];
1if(this.isRooftopImage(t)){let _=[384,640,896];c[0]=`src="${this.escapeAttribute(V({src:t,width:640}))}"`,c.push(`srcset="${_.map(x=>`${this.escapeAttribute(V({src:t,width:x}))} ${x}w`).join(", ")}"`,'sizes="(max-width: 768px) 100vw, 896px"')}return i&&c.push(`title="${this.escapeAttribute(i)}"`),`<img ${c.join(" ")}>`}}async ngOnInit(){let t=this.block();t&&t.body&&(this.renderedMarkdown=await B(t.body,{renderer:this.markdownRenderer}),this.cdr.markForCheck())}isRooftopImage(t){try{return new URL(t).host==="img.rooftopapp.com"}catch{return!1}}escapeAttribute(t){return t.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">")}static{this.\u0275fac=function(i){return new(i||e)}}static{this.\u0275cmp=w({type:e,selectors:[["app-rich-text-block"]],inputs:{block:[1,"block"]},decls:2,vars:3,consts:[[1,"prose",3,"innerHTML"]],template:function(i,n){i&1&&(z(0,"div",0),$(1,"safeHtml")),i&2&&rt("innerHTML",U(1,1,n.renderedMarkdown),S)},dependencies:[Gt],styles:[`:host{display:block} 2`],encapsulation:2,changeDetection:0})}}return e})();var be=()=>({height:600,fit:"cover"}),ke=(e,a)=>({src:e,width:800,loaderParams:a}),Jt=(e,a)=>a.id;function ye(e,a){if(e&1&&(z(0,"figcaption",10),$(1,"markdown")),e&2){let t=l(2).$implicit;rt("innerHTML",U(1,1,t.caption),S)}}function Se(e,a){if(e&1&&(M(0,"figure",8),z(1,"img",9),p(2,ye,2,3,"figcaption",10),E()),e&2){let t=l().$implicit,i=l();o(),rt("alt",t.alternativeText||"Slide image")("src",i.awsImageLoader(Nt(4,ke,t.url,L(3,be))),pt),o(),m(t.caption?2:-1)}}function we(e,a){if(e&1&&p(0,Se,3,7,"figure",8),e&2){let t=a.$index,i=l();m(i.currentSlideIndex()===t?0:-1)}}function Pe(e,a){if(e&1){let t=q();M(0,"button",11),mt("click",function(){let n=R(t).$index,c=l();return N(c.goToSlide(n))}),E()}if(e&2){let t=a.$index,i=l();k("bg-primary",i.currentSlideIndex()===t)("bg-muted",i.currentSlideIndex()!==t),W("aria-label","Go to slide "+(t+1))("aria-current",i.currentSlideIndex()===t?"true":null)}}var Zt=(()=>{class e{constructor(){this.block=P.required(),this.awsImageLoader=V,this.currentSlideIndex=f(0),this.destroyRef=I(It)}ngOnInit(){this.startAutoplay()}ngOnDestroy(){this.stopAutoplay()}nextSlide(){let t=this.block().files.length;this.currentSlideIndex.update(i=>(i+1)%t),this.resetAutoplay()}prevSlide(){let t=this.block().files.length;this.currentSlideIndex.update(i=>(i-1+t)%t),this.resetAutoplay()}goToSlide(t){this.currentSlideIndex.set(t),this.resetAutoplay()}startAutoplay(){this.stopAutoplay(),this.autoplayInterval=setInterval(()=>{this.nextSlide()},3e3)}stopAutoplay(){this.autoplayInterval&&(clearInterval(this.autoplayInterval),this.autoplayInterval=null)}resetAutoplay(){this.stopAutoplay(),this.startAutoplay()}static{this.\u0275fac=function(i){return new(i||e)}}static{this.\u0275cmp=w({type:e,selectors:[["app-slider-block"]],inputs:{block:[1,"block"]},decls:12,vars:0,consts:[[1,"relative","w-full","overflow-hidden"],[1,"relative","w-full"],[1,"absolute","top-1/2","left-4","-translate-y-1/2","bg-gray-800","bg-opacity-50","text-gray-900","dark:text-white","p-2","rounded-full","focus:outline-none",3,"click"],[1,"bx","bx-chevron-left","text-2xl"],[1,"absolute","top-1/2","right-4","-translate-y-1/2","bg-secondary/50","text-foreground","p-2","rounded-full","focus:outline-none","focus-visible:ring-2","focus-visible:ring-ring",3,"click"],[1,"bx","bx-chevron-right","text-2xl"],[1,"absolute","bottom-4","left-1/2","-translate-x-1/2","flex","space-x-2"],[1,"w-3","h-3","rounded-full","focus:outline-none","focus-visible:ring-2","focus-visible:ring-ring",3,"bg-primary","bg-muted"],[1,"w-full"],["loading","lazy",1,"w-full","h-auto","rounded-lg",3,"alt","src"],[1,"text-sm","text-gray-500","mt-2","text-center",3,"innerHTML"],[1,"w-3","h-3","rounded-full","focus:outline-none","focus-visible:ring-2","focus-visible:ring-ring",3,"click"]],template:function(i,n){i&1&&(M(0,"div",0)(1,"div",1),T(2,we,1,1,null,null,Jt),E(),M(4,"button",2),mt("click",function(){return n.prevSlide()}),z(5,"i",3),E(),M(6,"button",4),mt("click",function(){return n.nextSlide()}),z(7,"i",5),E(),M(8,"div",6),T(9,Pe,1,6,"button",7,Jt),E()(),z(11,"br")),i&2&&(o(2),O(n.block().files),o(7),O(n.block().files))},dependencies:[nt],styles:["figcaption[_ngcontent-%COMP%] p{margin:0;text-align:inherit}"],changeDetection:0})}}return e})();function Me(e,a){if(e&1&&(M(0,"h1",0),d(1),E()),e&2){let t=l(2);o(),C(t.renderedMarkdown)}}function Ee(e,a){if(e&1&&(M(0,"h2",0),d(1),E()),e&2){let t=l(2);o(),C(t.renderedMarkdown)}}function Te(e,a){if(e&1&&(M(0,"h3",0),d(1),E()),e&2){let t=l(2);o(),C(t.renderedMarkdown)}}function Oe(e,a){if(e&1&&(M(0,"h4",0),d(1),E()),e&2){let t=l(2);o(),C(t.renderedMarkdown)}}function Be(e,a){if(e&1&&(M(0,"h5",0),d(1),E()),e&2){let t=l(2);o(),C(t.renderedMarkdown)}}function Ie(e,a){if(e&1&&(M(0,"h6",0),d(1),E()),e&2){let t=l(2);o(),C(t.renderedMarkdown)}}function Ae(e,a){if(e&1&&(M(0,"p"),d(1),E()),e&2){let t=l(2);o(),C(t.block().text)}}function De(e,a){if(e&1&&p(0,Me,2,1,"h1",0)(1,Ee,2,1,"h2",0)(2,Te,2,1,"h3",0)(3,Oe,2,1,"h4",0)(4,Be,2,1,"h5",0)(5,Ie,2,1,"h6",0)(6,Ae,2,1,"p"),e&2){let t,i=l();m((t=i.block().level)===1?0:t===2?1:t===3?2:t===4?3:t===5?4:t===6?5:6)}}var te=(()=>{class e{constructor(){this.block=P.required(),this.renderedMarkdown=""}ngOnChanges(){let t=this.block();t&&t.text&&(this.renderedMarkdown=t.text)}static{this.\u0275fac=function(i){return new(i||e)}}static{this.\u0275cmp=w({type:e,selectors:[["app-heading-block"]],inputs:{block:[1,"block"]},features:[G],decls:1,vars:1,consts:[[1,"heading-with-accent"]],template:function(i,n){i&1&&p(0,De,7,1),i&2&&m(n.block()&&n.block().text?0:-1)},styles:['[_nghost-%COMP%]{display:block}
2[_nghost-%COMP%] .heading-with-accent[_ngcontent-%COMP%]{position:relative}[_nghost-%COMP%] .heading-with-accent[_ngcontent-%COMP%]:before{content:"";display:block;width:50px;height:4px;background-color:var(--color-primary);margin-bottom:.5rem}'],changeDetection:0})}}return e})();function ee(e){return e.__component==="shared.media"}function ie(e){return e.__component==="shared.quote"}function ne(e){return e.__component==="shared.rich-text"}function oe(e){return e.__component==="shared.slider"}function ae(e){return e.__component==="shared.heading"}function re(e){return e.__component==="shared.list-entity"}function le(e){return e.__component==="shared.single-entity"}var qe=()=>[],Ue=(e,a)=>a.uuid;function Ke(e,a){e&1&&u(0,"app-shimmer-card")}function Qe(e,a){e&1&&(s(0,"div",1),T(1,Ke,1,0,"app-shimmer-card",null,X),r()),e&2&&(o(),O(L(0,qe).constructor(6)))}function Ge(e,a){if(e&1&&(s(0,"h1",8),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function We(e,a){if(e&1&&(s(0,"h2",9),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function Xe(e,a){if(e&1&&(s(0,"h3",10),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function Ye(e,a){if(e&1&&(s(0,"h4",11),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function Je(e,a){if(e&1&&(s(0,"h5",12),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function Ze(e,a){if(e&1&&(s(0,"h6",13),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function ti(e,a){if(e&1&&(s(0,"p",14),d(1),r()),e&2){let t=l(3);o(),C(t.heading)}}function ei(e,a){if(e&1&&(s(0,"div",2),p(1,Ge,2,1,"h1",8)(2,We,2,1,"h2",9)(3,Xe,2,1,"h3",10)(4,Ye,2,1,"h4",11)(5,Je,2,1,"h5",12)(6,Ze,2,1,"h6",13)(7,ti,2,1,"p",14),r()),e&2){let t,i=l(2);o(),m((t=i.heading_level)===1?1:t===2?2:t===3?3:t===4?4:t===5?5:t===6?6:7)}}function ii(e,a){if(e&1&&(s(0,"div",5),u(1,"app-global-card",15),r()),e&2){let t=a.$implicit;o(),g("cardType","shop")("data",t)}}function ni(e,a){if(e&1&&(s(0,"div",6)(1,"p",16),d(2),r()()),e&2){let t=l(2);o(2),C(t.caption)}}function oi(e,a){if(e&1&&(p(0,ei,8,1,"div",2),s(1,"div",3)(2,"div",4),T(3,ii,2,2,"div",5,K().trackByProduct,!0),r(),p(5,ni,3,1,"div",6),r(),u(6,"div",7)),e&2){let t=l(),i=l(2);m(t&&t.heading?0:-1),o(),k("scrolling-wrapper",i.products().length>4),o(2),O(i.products()),o(2),m(t.caption?5:-1)}}function ai(e,a){if(e&1&&(s(0,"h1",8),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function ri(e,a){if(e&1&&(s(0,"h2",9),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function li(e,a){if(e&1&&(s(0,"h3",10),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function si(e,a){if(e&1&&(s(0,"h4",11),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function ci(e,a){if(e&1&&(s(0,"h5",12),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function di(e,a){if(e&1&&(s(0,"h6",13),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function pi(e,a){if(e&1&&(s(0,"p",14),d(1),r()),e&2){let t=l(3);o(),C(t.heading)}}function mi(e,a){if(e&1&&(s(0,"div",2),p(1,ai,2,1,"h1",8)(2,ri,2,1,"h2",9)(3,li,2,1,"h3",10)(4,si,2,1,"h4",11)(5,ci,2,1,"h5",12)(6,di,2,1,"h6",13)(7,pi,2,1,"p",14),r()),e&2){let t,i=l(2);o(),m((t=i.heading_level)===1?1:t===2?2:t===3?3:t===4?4:t===5?5:t===6?6:7)}}function ui(e,a){if(e&1){let t=q();s(0,"div",5)(1,"app-global-card",17),Y("addToCart",function(n){R(t);let c=l(4);return N(c.onAddToCartClicked(n))})("click",function(){let n=R(t).$implicit,c=l(4);return N(c.launchCourseDetail(n))}),r()()}if(e&2){let t=a.$implicit;o(),g("cardType","courses")("data",t)}}function _i(e,a){if(e&1&&(s(0,"div",6)(1,"p",16),d(2),r()()),e&2){let t=l(2);o(2),C(t.caption)}}function gi(e,a){if(e&1&&(p(0,mi,8,1,"div",2),s(1,"div",3)(2,"div",4),T(3,ui,2,2,"div",5,Ue),r(),p(5,_i,3,1,"div",6),r(),u(6,"div",7)),e&2){let t=l(),i=l(2);m(t&&t.heading?0:-1),o(),k("scrolling-wrapper",i.courses().length>4),o(2),O(i.courses()),o(2),m(t.caption?5:-1)}}function fi(e,a){if(e&1&&(s(0,"h1",8),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function Ci(e,a){if(e&1&&(s(0,"h2",9),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function hi(e,a){if(e&1&&(s(0,"h3",10),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function xi(e,a){if(e&1&&(s(0,"h4",11),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function vi(e,a){if(e&1&&(s(0,"h5",12),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function bi(e,a){if(e&1&&(s(0,"h6",13),d(1),r()),e&2){let t=l(3);o(),y(" ",t.heading)}}function ki(e,a){if(e&1&&(s(0,"p",14),d(1),r()),e&2){let t=l(3);o(),C(t.heading)}}function yi(e,a){if(e&1&&(s(0,"div",2),p(1,fi,2,1,"h1",8)(2,Ci,2,1,"h2",9)(3,hi,2,1,"h3",10)(4,xi,2,1,"h4",11)(5,vi,2,1,"h5",12)(6,bi,2,1,"h6",13)(7,ki,2,1,"p",14),r()),e&2){let t,i=l(2);o(),m((t=i.heading_level)===1?1:t===2?2:t===3?3:t===4?4:t===5?5:t===6?6:7)}}function Si(e,a){if(e&1&&(s(0,"div",5),u(1,"app-global-card",15),r()),e&2){let t=a.$implicit;o(),g("cardType","artist")("data",t)}}function wi(e,a){if(e&1&&(s(0,"div",6)(1,"p",16),d(2),r()()),e&2){let t=l(2);o(2),C(t.caption)}}function Pi(e,a){if(e&1&&(p(0,yi,8,1,"div",2),s(1,"div",3)(2,"div",4),T(3,Si,2,2,"div",5,K().trackByArtist,!0),r(),p(5,wi,3,1,"div",6),r(),u(6,"div",7)),e&2){let t=l(),i=l(2);m(t&&t.heading?0:-1),o(),k("scrolling-wrapper",i.artists().length>4),o(2),O(i.artists()),o(2),m(t.caption?5:-1)}}function Mi(e,a){if(e&1&&(p(0,oi,7,4),p(1,gi,7,4),p(2,Pi,7,4)),e&2){let t=a;m(t.entity==="shop"?0:-1),o(),m(t.entity==="course"?1:-1),o(),m(t.entity==="artist"?2:-1)}}function Ei(e,a){if(e&1&&p(0,Mi,3,3),e&2){let t,i=l();m((t=i.block())?0:-1,t)}}var lt=et("ListEntityBlockComponent"),Ti="courses",Oi="artistData",se=(()=>{class e{#t;constructor(t,i,n,c,_,x,h,v,A,Q){this.ecommerceProductService=t,this.coursesService=i,this.artistService=n,this.seoService=c,this.router=_,this.durationService=x,this.transferState=h,this.analyticsService=v,this.route=A,this.cartManagerService=Q,this.scrollDirection=P("left"),this.block=P.required(),this.isLoading=f(!1),this.products=f([]),this.courses=f([]),this.artists=f([]),this.totalItems=f(0),this.currentPage=f(1),this.itemsPerPage=f(15),this.totalPages=f(0),this.selectedSortOption=f("-stock_quantity,-updated_at"),this.searchQuery=f(""),this.pageSeoTitle=f(""),this.pageTitle=f(""),this.pageDescription=f(""),this.pageShortDescription=f(""),this.pageKeywords=f(""),this.descriptionRenderedMarkdown=f(""),this.shortDescriptionRenderedMarkdown=f(""),this.#t=I(gt)}
2async ngOnChanges(){let t=this.block();switch(t.entity){case"shop":await this.loadData(t);break;case"course":await this.loadData(t);break;case"artist":await this.loadData(t);break;default:return}}async loadData(t){this.isLoading.set(!0);try{switch(t.entity){case"shop":{let i=this.buildShopParams(t.slug);try{let n=await this.ecommerceProductService.getEcommerceProducts(i);this.products.set(n?.data)}catch(n){this.isLoading.set(!1),lt.error("Error fetching product:",n)}finally{this.isLoading.set(!1)}break}case"course":{let i=this.buildCoursesParams(t.slug);try{let n=await this.coursesService.getCourses(i);this.updateCoursesData(n),this.isLoading.set(!1)}catch(n){this.isLoading.set(!1),lt.error("Error fetching course:",n)}finally{this.isLoading.set(!1)}break}case"artist":{let i=this.buildArtistsParams(t.slug);try{let n=await this.artistService.getArtists(i);this.updateArtistsData(n),this.isLoading.set(!1)}catch(n){this.isLoading.set(!1),lt.error("Error fetching artist:",n)}finally{this.isLoading.set(!1)}break}default:throw this.isLoading.set(!1),new Error(`Unsupported entity: ${t.entity}`)}}finally{this.isLoading.set(!1)}}updateArtistsData(t){this.artists.set(t.data),this.#t.isServer&&this.transferState.set(Oi,t.data);let i=t.headers;this.totalItems.set(parseInt(i.get("X-Pagination-Total-Count")||"0",10)),this.totalPages.set(parseInt(i.get("X-Pagination-Page-Count")||"0",10)),this.itemsPerPage.set(parseInt(i.get("X-Pagination-Per-Page")||"12",10)),this.currentPage.set(parseInt(i.get("X-Pagination-Current-Page")||"1",10)),this.setPageSEOForArtists(),this.setSEODataForArtists(i)}async getDuration(t){t.courseChapters&&(t.duration=this.durationService.calculateDuration(t.courseChapters))}async onAddToCartClicked(t){await this.cartManagerService.addEntityToCart("Course",t.uuid,0,1)}async launchCourseDetail(t){this.analyticsService.selectItem(t,"Course","rooftop_courses","Rooftop Courses"),t.status===1&&await this.router.navigate(["courses",t.slug])}trackByProduct(t,i){return i.uuid}trackByArtist(t,i){return i.uuid}parseSlug(t,i){let n={},c=_=>{let x=new URLSearchParams(_);n.filter=n.filter||{};for(let[h,v]of x.entries())if(h==="filters")try{n.filter=JSON.parse(v)}catch{lt.warn("Invalid filters JSON:",v)}else h==="search"?n.filter.keyword=decodeURIComponent(v):n[h]=v};if(t==="shop"){if(i.includes("?")){let _=i.substring(i.indexOf("?")+1);c(_)}else{let _=i.split("/").filter(Boolean);_.length>1&&(n.filter=n.filter||{},n.filter.category=_[1],_.length>=4&&(n.filter.attributes=[{id:_[2],values:[_[3]]}]))}n.expand="categories.seo,categories.faqs,productAttributes.attributeName,productAttributes.attributeValue,productAttributes.attributeValue.seo,discounts,media,reviews"}if(t==="course"){if(i.includes("?")){let _=i.substring(i.indexOf("?")+1);c(_)}else{let _=i.split("/").filter(Boolean);_.length>1&&(n.slug=_[1])}n.expand="artPundit,artPundit.profile,courseChapters,courseChapters.courseChapterContents,courseProducts,discounts"}if(t==="artist"){if(i.includes("?")){let _=i.substring(i.indexOf("?")+1);c(_)}else{let _=i.split("/").filter(Boolean);_.length>1&&(n.slug=_[1])}n.expand="profile,artForms"}return n}buildShopParams(t){let i=this.parseSlug("shop",t);this.currentPage.set(parseInt(i.page||"1")),this.selectedSortOption.set(i.sort||"-stock_quantity,-updated_at"),this.searchQuery.set(i.search||"");let n={expand:"categories.seo,categories.faqs,productAttributes.attributeName,productAttributes.attributeValue,productAttributes.attributeValue.seo,discounts,media,reviews",pageSize:this.itemsPerPage(),page:this.currentPage(),sort:this.selectedSortOption(),filter:{keyword:this.searchQuery()}};return i.filter?.category&&(n.filter.category=i.filter.category),i.filter?.attributes&&(n.filter.attributes=i.filter.attributes),n}buildCoursesParams(t){let i=this.parseSlug("course",t);this.currentPage.set(parseInt(i.page||"1")),this.selectedSortOption.set(i.sort||"-stock_quantity,-updated_at"),this.searchQuery.set(i.search||"");let n={pageSize:this.itemsPerPage(),page:this.currentPage(),sort:this.selectedSortOption(),expand:"artPundit,artPundit.profile,courseChapters,courseChapters.courseChapterContents,courseProducts,discounts"};return i.slug&&(n.slug=i.slug),i.search&&(n.filter={title:{like:i.search}}),n}buildArtistsParams(t){let i=this.parseSlug("artist",t);this.currentPage.set(parseInt(i.page||"1")),this.selectedSortOption.set(i.sort||"-stock_quantity,-updated_at"),this.searchQuery.set(i.search||"");let n={expand:"profile,artForms",pageSize:this.itemsPerPage(),page:this.currentPage(),sort:this.selectedSortOption()};return i.slug&&(n.slug=i.slug),i.search&&(n.filter={name:{like:i.search}}),n}updateCoursesData(t){let i=t.data;
2i.forEach(_=>this.getDuration(_)),this.courses.set(i),this.#t.isBrowser||this.transferState.set(Ti,t.data);let n=t.headers;this.totalItems.set(parseInt(n.get("X-Pagination-Total-Count")||"0",10)),this.totalPages.set(parseInt(n.get("X-Pagination-Page-Count")||"0",10)),this.itemsPerPage.set(parseInt(n.get("X-Pagination-Per-Page")||"0",10)),this.currentPage.set(parseInt(n.get("X-Pagination-Current-Page")||"1",10));let c=this.router.url;this.seoService.clearStructuredData(),this.seoService.setMetaData("Learn Traditional Indian Art Courses Online With Award Winning Artist","Enroll in maestro-led Indian folk art classes with award winning artist! Learn Gond, Madhubani, Warli, Pichwai & more with expert artists. Join Rooftop online art courses today!","Indian art courses, traditional art workshops, online art classes, learn Indian art, Rooftop",`https://rooftopapp.com${c}`,"https://img.rooftopapp.com/cms/Web_Banner_Courses_1920_x_400_px_27d13a1ce9.jpg"),this.seoService.addCourseListStructuredData(this.courses(),`https://rooftopapp.com${c}`,"course-list-page"),this.analyticsService.viewItemList(this.courses(),"Course","rooftop_courses","Rooftop Courses")}setSEODataForShop(t){let i=this.router.url;this.seoService.clearStructuredData(),this.seoService.setMetaData(this.pageSeoTitle(),this.pageDescription(),this.pageKeywords(),`https://rooftopapp.com${i}`,"https://img.rooftopapp.com/cms/Shop_1920_0b7467108c.jpg"),this.seoService.addProductListStructuredData(this.products(),`https://rooftopapp.com${i}`,"shop-page"),this.totalItems.set(parseInt(t.get("X-Pagination-Total-Count")||"0",10)),this.totalPages.set(parseInt(t.get("X-Pagination-Page-Count")||"0",10)),this.currentPage.set(parseInt(t.get("X-Pagination-Current-Page")||"1",10))}setPageSEOForShop(){let t=this.route.snapshot.paramMap.get("category"),i=this.route.snapshot.paramMap.get("attribute"),n=this.route.snapshot.paramMap.get("attributeValue");if(i&&n&&this.products().length>0){let c=this.products()[0],_=c.productAttributes.find(x=>x.slug===i);if(_){let x=_.name,h=_.values.find(fe=>fe.slug===n),v=h?.title||"Unknown Value",A=c.categories[0]?.name||t||"Products",Q=h?.seo?.seo_title||`${v} ${x} in ${A}`,St=h?.seo?.h1_heading||`${v} ${x} in ${A}`,me=h?.seo?.seo_description||`Explore ${v} ${x.toLowerCase()} in our ${A.toLowerCase()} collection.`,ue=h?.seo?.meta_keywords||`${v}, ${x}, ${A}, Indian art supplies`,_e=h?.seo?.short_description||h?.seo?.h2_heading||"",ge=h?.seo?.description||"";this.pageSeoTitle.set(Q),this.pageTitle.set(St),this.pageDescription.set(me),this.pageKeywords.set(ue),this.descriptionRenderedMarkdown.set(B(ge)),this.shortDescriptionRenderedMarkdown.set(B(_e))}else lt.info("Attribute page but category is showing"),this.setCategorySEO(t)}else t&&this.products().length>0?this.setCategorySEO(t):this.setShopDefaultSEO()}setSEODataForArtists(t){let i=this.router.url;this.seoService.clearStructuredData(),this.seoService.setMetaData(this.pageSeoTitle(),this.pageDescription(),this.pageKeywords(),`https://rooftopapp.com${i}`,"https://img.rooftopapp.com/cms/Shop_1920_0b7467108c.jpg"),this.seoService.addArtistListStructuredData(this.artists(),`https://rooftopapp.com${i}`)}setPageSEOForArtists(){let t="Meet the talented artists behind India\u2019s traditional printing arts like Madhubani, Gond, Phad, and many more. Explore their stories, skills, and beautiful creations.";this.pageSeoTitle.set("Traditional Indian Artists | Masters of Folk & Tribal Art"),this.pageTitle.set("Artists"),this.pageDescription.set("Meet the talented artists behind India\u2019s traditional printing arts like Madhubani, Gond, Phad, and many more. Explore their stories, skills, and beautiful creations."),this.pageKeywords.set("Art Kits, Handmade Paintings, Artventure Books, Fatac Cards, Folk Postcards, Coloring Books Combos, Rooftop Shop, Unique Art Collection, Cultural Crafts, Creative Gifts, Art Supplies"),this.descriptionRenderedMarkdown.set(B(t))}setCategorySEO(t){if(this.products().length>0&&this.products()[0].categories.length>0){let i=this.products()[0].categories.find(n=>n.slug===t);if(i){this.pageSeoTitle.set(i.seo?.seo_title||`Shop ${i.name}`),this.pageTitle.set(i.seo?.h1_heading||`Shop ${i.name}`),this.pageDescription.set(i.seo?.seo_description||`Discover premium ${i.name} supplies at Rooftop.`),this.pageKeywords.set(i.seo?.meta_keywords||`${i.name}, Indian art supplies`),this.descriptionRenderedMarkdown.set(B(i.description||"")),this.shortDescriptionRenderedMarkdown.set(B(i.short_description||""));return}}this.setShopDefaultSEO()}setShopDefaultSEO(){let t=` 3Want to shop for Indian Art online? Welcome to Rooftop App! Here you can discover, indulge and fuel your love for Indian art with our curated art collection! Shop art from amongst our carefully curated kits, to art books on traditional Indian artforms, Indian art inspired games, stunning Indian art paintings and more - at Rooftop we have art for everyone! Whether you're an aspiring artist or a seasoned creator you can be rest assured of enjoying your artistic journey with us! 4 5## [**Artventure Books**](https://rooftopapp.com/shop/artventures-books)**: Where learning Indian art meets fun** 6 7Explore a series of curated art books in 6 traditional Indian artforms of Gond, Phad, Warli, Mata Ni Pachedi, Cheriyal and Pichwai. Available in elementary, essentials and expert levels, you can buy our Indian art books online. These art books for kids and adults alike are designed to help you learn, express and enjoy the beauty of Indian art, no matter what age or stage of life. Art books by Rooftop are a must have in every art lover's collection. 8 9## [**Art Kits**](https://rooftopapp.com/shop/art-kit)**: Encourage the artists in you** 10 11Our artkits are a perfect gift for anybody who loves art! Whether you're already an established artist or just an amateur hobbyist, shop Rooftop\u2019sIndian art kits and enjoy creativity at its best. From books and postcards to a wonderful tote bag and more, our Indian Art Kits are packed with fun art collectibles for all! 12 13## [**Indian Paintings**](https://rooftopapp.com/shop/paintings)**: Art for every space and mood** 14 15Looking to bring home a beautiful masterpiece? The Indian Art paintings on Rooftop are a sure shot way to to shop authentic Indian art paintings online! Our exclusive collections feature artworks that are handpainted by master artists in the genre! Featuring original paintings in Indian art forms from the likes of Padma Shri Bhuri Bhai, Warli artists Mhase Brothers, gond artist Venkat Singh Shyam ji each painting tells a story through brush and colour. 16 17## [**FATAC cards Games**](https://rooftopapp.com/shop/fatac-card-game)**: Where Indian art and fun collide!** 18 19An Indian art inspired card game that is perfect to set a fun mood for every occasion! With this set of playing cards you can learn more about Indian art while having a great time with your friends and family. We promise you whether it is a card game for a weekend getaway or a fun gathering at home - FATAC cards are a hit every time! 20 21## [**Indian Art Postcards**](https://rooftopapp.com/shop/folk-art-postcard-book)**: Art inspired Gifts** 22A postcard is so much more than just sending a message, it is an expression of love and a celebration of art. Our folk art postcard book is a curated collection of artworks by some of India\u2019s most loved and celebrated master artists. Whether you paint it, gift it or frame it, we\u2019re sure you\u2019re going to love it! 23 24So, if you're a fan of Indian art you've landed at the perfect space! So go ahead explore our art shop and add a bit of art and creativity to your life.`;this.pageSeoTitle.set("Buy Indian Folk Art Kits, Handmade Paintings, Artventure Books & More"),this.pageTitle.set("Indian Art Shop"),this.pageShortDescription.set("Original Indian paintings, DIY artbooks, folk art postcards and more - shop from our curation of original Indian art goodies that make perfect collectibles and gifts for artlovers. Everything you need to add the charm of Indian art to your life."),this.pageDescription.set("Explore Rooftop Shop for art kits, handmade paintings, Artventure books, Fatac cards, folk postcards, and coloring books combos. Shop unique, creative, and culturally inspired art products today. Order Now!"),this.pageKeywords.set("Art Kits, Handmade Paintings, Artventure Books, Fatac Cards, Folk Postcards, Coloring Books Combos, Rooftop Shop, Unique Art Collection, Cultural Crafts, Creative Gifts, Art Supplies"),this.descriptionRenderedMarkdown.set(B(t)),this.shortDescriptionRenderedMarkdown.set(B("Original Indian paintings, DIY artbooks, folk art postcards and more - shop from our curation of original Indian art goodies that make perfect collectibles and gifts for artlovers. Everything you need to add the charm of Indian art to your life."))}static{this.\u0275fac=function(i){return new(i||e)(b(ht),b(kt),b(yt),b(it),b(tt),b(ft),b(dt),b(xt),b(Z),b(vt))}}static{this.\u0275cmp=w({type:e,selectors:[["app-list-entity-block"]],inputs:{scrollDirection:[1,"scrollDirection"],block:[1,"block"]},features:[G],decls:3,vars:1,consts:[[1,"py-4"],[1,"grid","grid-cols-2","sm:grid-cols-2","md:grid-cols-3","lg:grid-cols-4","gap-4"],[1,"mb-4"],[1,"relative","overflow-hidden","w-full","px-4"],[1,"flex","flex-nowrap","gap-4"],[1,"flex-none","w-[85vw]","max-w-[300px]"],[1,"text-center","mb-8"],[1,"my-4"],[1,"text-4xl","font-bold","mb-4","font-['Lato',_sans-serif]","before:content-['']","before:block","before:w-[50px]","before:h-[4px]","before:bg-[#0080C7]","before:mb-[0.5rem]","text-gray-900","dark:text-white"],[1,"font-alan-sans","text-3xl","font-bold","mb-4","font-['Lato',_sans-serif]","before:content-['']","before:block","before:w-[50px]","before:h-[4px]","before:bg-[#0080C7]","before:mb-[0.5rem]","text-gray-900","dark:text-white"],[1,"font-alan-sans","text-2xl","font-bold","mb-3","font-['Lato',_sans-serif]","before:content-['']","before:block","before:w-[50px]","before:h-[4px]","before:bg-[#0080C7]","before:mb-[0.5rem]","text-gray-900","dark:text-white"],[1,"font-alan-sans","text-xl","font-bold","mb-3","font-['Lato',_sans-serif]","before:content-['']","before:block","before:w-[50px]","before:h-[4px]","before:bg-[#0080C7]","before:mb-[0.5rem]","text-gray-900","dark:text-white"],[1,"font-alan-sans","text-lg","font-bold","mb-2","font-['Lato',_sans-serif]","before:content-['']","before:block","before:w-[50px]","before:h-[4px]","before:bg-[#0080C7]","before:mb-[0.5rem]","text-gray-900","dark:text-white"],[1,"text-base","font-bold","mb-2","font-['Lato',_sans-serif]","before:content-['']","before:block","before:w-[50px]","before:h-[4px]","before:bg-[#0080C7]","before:mb-[0.5rem]","text-gray-900","dark:text-white"],[1,"text-gray-900","dark:text-white"],[3,"cardType","data"],[1,"font-heebo","text-sm","text-gray-500","mt-2","dark:text-gray-400"],[3,"addToCart","click","cardType","data"]],template:function(i,n){i&1&&(s(0,"div",0),p(1,Qe,3,1,"div",1)(2,Ei,1,1),r()),i&2&&(o(),m(n.isLoading()?1:2))},dependencies:[Ct,bt],styles:[".scrolling-wrapper[_ngcontent-%COMP%]{overflow:hidden;width:100%;position:relative;-webkit-mask-image:linear-gradient(to right,transparent,white 10%,white 90%,transparent);mask-image:linear-gradient(to right,transparent,white 10%,white 90%,transparent);-ms-overflow-style:none;scrollbar-width:none;overflow-x:auto;padding:0 1rem}.scrolling-wrapper[_ngcontent-%COMP%]::-webkit-scrollbar{display:none}.scrolling-wrapper[_ngcontent-%COMP%]:hover{overflow-x:auto}.scrolling-content[_ngcontent-%COMP%]{display:flex;width:fit-content;animation:_ngcontent-%COMP%_scroll-left 35s linear infinite;flex-wrap:nowrap}.scrolling-item[_ngcontent-%COMP%]{flex:0 0 auto;width:85vw;max-width:300px}.scrolling-content.scroll-right[_ngcontent-%COMP%]{animation-name:_ngcontent-%COMP%_scroll-right}@media(max-width:576px){.scrolling-content[_ngcontent-%COMP%]{animation:scroll-left 15s linear infinite}@keyframes scroll-left{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes scroll-right{0%{transform:translate(-50%)}to{transform:translate(0)}}}@media(max-width:768px){.scrolling-content[_ngcontent-%COMP%]{animation:scroll-left 15s linear infinite}@keyframes scroll-left{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes scroll-right{0%{transform:translate(-50%)}to{transform:translate(0)}}}@media(max-width:1024px){.scrolling-content[_ngcontent-%COMP%]{animation:scroll-left 25s linear infinite}@keyframes scroll-left{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes scroll-right{0%{transform:translate(-50%)}to{transform:translate(0)}}}@keyframes _ngcontent-%COMP%_scroll-left{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes _ngcontent-%COMP%_scroll-right{0%{transform:translate(-50%)}to{transform:translate(0)}}.scrolling-wrapper[_ngcontent-%COMP%]:hover .scrolling-content[_ngcontent-%COMP%]{animation-play-state:paused}"],changeDetection:0})}}return e})();var Bi=["cardRef"],ot=e=>["/artists",e],wt=e=>({src:e}),Pt=()=>({fit:"cover"});function Ii(e,a){if(e&1&&u(0,"span",12),e&2){let t=l(),i=l(3);g("innerHTML",i.formatHeadline(t.headline),S)}}function Ai(e,a){if(e&1&&(s(0,"div",7)(1,"div",23)(2,"div",24),u(3,"
24img",25),r(),s(4,"div",26)(5,"span",27),d(6),r(),s(7,"span",28),d(8,"Years of Experience"),r()()()()),e&2){let t=l(2);o(3),g("alt",D(t.profile==null?null:t.profile.years_of_xp))("ngSrc","cms/years_of_xp_90003863f3.svg"),o(3),C(t.profile==null?null:t.profile.years_of_xp)}}function Di(e,a){if(e&1&&(s(0,"div",7)(1,"div",29)(2,"div",24),u(3,"img",30),r(),s(4,"div",26)(5,"span",27),d(6),r(),s(7,"span",28),d(8,"Awards"),r()()()()),e&2){let t=l(2);o(3),g("alt",D(t==null?null:t.awardsCount))("ngSrc","cms/awards_a32a6d8191.svg"),o(3),C(t==null?null:t.awardsCount)}}function Li(e,a){if(e&1&&(s(0,"div",7)(1,"div",29)(2,"div",24),u(3,"img",30),r(),s(4,"div",26)(5,"span",27),d(6),r(),s(7,"span",28),d(8,"Products"),r()()()()),e&2){let t=l(2);o(3),g("alt",D(t==null?null:t.productsCount))("ngSrc","cms/products_ba2c25dca9.svg"),o(3),C(t==null?null:t.productsCount)}}function Fi(e,a){if(e&1&&(s(0,"div",14)(1,"div",22),p(2,Ai,9,4,"div",7),p(3,Di,9,4,"div",7),p(4,Li,9,4,"div",7),r()()),e&2){let t=l();o(2),m(((t.profile==null?null:t.profile.years_of_xp)??0)>0?2:-1),o(),m(((t==null?null:t.awardsCount)??0)>0?3:-1),o(),m(((t==null?null:t.productsCount)??0)>0?4:-1)}}function Ri(e,a){if(e&1&&(s(0,"a",3)(1,"div",4,0),u(3,"div",5),s(4,"div",6)(5,"div",7)(6,"div",8)(7,"div",9),u(8,"img",10),r(),s(9,"div")(10,"h4",11),d(11),r(),p(12,Ii,1,1,"span",12),r()(),u(13,"p",13),r(),p(14,Fi,5,3,"div",14),r(),s(15,"div",15)(16,"div",16)(17,"div",17)(18,"button",18),u(19,"i",19),s(20,"span",20),d(21,"View Profile"),r(),u(22,"i",21),r()()()()()()),e&2){let t=a,i=l(3);k("pointer-events-none",!i.getValidArtistSlug(t)),g("routerLink",i.getValidArtistSlug(t)?H(20,ot,i.getValidArtistSlug(t)):null),W("aria-label","View details for "+(t.profile==null?null:t.profile.name)),o(5),k("col-md-8",i.isCourseArtistInfoAvailable())("col-md-12",!i.isCourseArtistInfoAvailable()),o(2),ut("background-image",(t.profile==null?null:t.profile.cover_image)==="artists/cover/"?"url(https://img.rooftopapp.com/cms/miniature_mewar_background_122ee519ef.png)":"url("+i.awsImageLoader(H(22,wt,(t.profile==null?null:t.profile.cover_image)||""))+")"),o(),g("ngSrc",D(t.profile==null?null:t.profile.display_image))("alt",t.profile==null?null:t.profile.name)("loaderParams",L(24,Pt)),o(3),C(t.profile==null?null:t.profile.name),o(),m(t.headline?12:-1),o(),g("innerHTML",i.artistFromCourseParsedBio(),S),o(),m(i.isCourseArtistInfoAvailable()?14:-1),o(4),g("routerLink",i.getValidArtistSlug(t)?H(25,ot,i.getValidArtistSlug(t)):null)("disabled",!i.getValidArtistSlug(t))}}function Ni(e,a){if(e&1&&p(0,Ri,23,27,"a",2),e&2){let t,i=l(2);m((t=i.artistFromCourse())?0:-1,t)}}function Hi(e,a){if(e&1&&u(0,"span",12),e&2){let t=l(),i=l(3);g("innerHTML",i.formatHeadline(t.headline),S)}}function $i(e,a){if(e&1&&(s(0,"div",7)(1,"div",23)(2,"div",24),u(3,"img",25),r(),s(4,"div",26)(5,"span",27),d(6),r(),s(7,"span",28),d(8,"Years of Experience"),r()()()()),e&2){let t=l(2);o(3),g("alt",D(t.profile==null?null:t.profile.years_of_xp))("ngSrc","cms/years_of_xp_90003863f3.svg"),o(3),C(t.profile==null?null:t.profile.years_of_xp)}}function Vi(e,a){if(e&1&&(s(0,"div",7)(1,"div",29)(2,"div",24),u(3,"img",30),r(),s(4,"div",26)(5,"span",27),d(6),r(),s(7,"span",28),d(8,"Awards"),r()()()()),e&2){let t=l(2);o(3),g("alt",D(t==null?null:t.awardsCount))("ngSrc","cms/awards_a32a6d8191.svg"),o(3),C(t==null?null:t.awardsCount)}}function ji(e,a){if(e&1&&(s(0,"div",7)(1,"div",29)(2,"div",24),u(3,"img",30),r(),s(4,"div",26)(5,"span",27),d(6),r(),s(7,"span",28),d(8,"Products"),r()()()()),e&2){let t=l(2);o(3),g("alt",D(t==null?null:t.productsCount))("ngSrc","cms/products_ba2c25dca9.svg"),o(3),C(t==null?null:t.productsCount)}}function zi(e,a){if(e&1&&(s(0,"div",14)(1,"div",22),p(2,$i,9,4,"div",7),p(3,Vi,9,4,"div",7),p(4,ji,9,4,"div",7),r()()),e&2){let t=l();o(2),m(((t.profile==null?null:t.profile.years_of_xp)??0)>0?2:-1),o(),m(((t==null?null:t.awardsCount)??0)>0?3:-1),o(),m(((t==null?null:t.productsCount)??0)>0?4:-1)}}function qi(e,a){if(e&1&&(s(0,"a",3)(1,"div",4,0),u(3,"div",5),s(4,"div",6)(5,"div",7)(6,"div",8)(7,"div",9),u(8,"img",10),r(),s(9,"div")(10,"h4",11),d(11),r(),p(12,Hi,1,1,"span",12),r()(),u(13,"p",13),r(),p(14,zi,5,3,"div",14),r(),s(15,"div",15)(16,"div",16)(17,"div",17)(18,"button",18),u(19,"i",19),s(20,"span",20),d(21,"View Profile"),r(),u(22,"i",21),r()()()()()()),e&2){let t=a,i=l(3);k("pointer-events-none",!i.getValidArtistSlug(t)),g("routerLink",i.getValidArtistSlug(t)?H(20,ot,i.getValidArtistSlug(t)):null),W("aria-label","View details for "+(t.profile==null?null:t.profile.name)),o(5),k("col-md-8",i.isBlogArtistInfoAvailable())("col-md-12",!i.isBlogArtistInfoAvailable()),o(2),ut("background-image",(t.profile==null?null:t.profile.cover_image)==="artists/cover/"?"url(https://img.rooftopapp.com/cms/miniature_mewar_background_122ee519ef.png)":"url("+i.awsImageLoader(H(22,wt,(t.profile==null?null:t.profile.cover_image)||""))+")"),o(),g("ngSrc",D(t.profile==null?null:t.profile.display_image))("alt",t.profile==null?null:t.profile.name)("loaderParams",L(24,Pt)),o(3),C(t.profile==null?null:t.profile.name),o(),m(t.headline?12:-1),o(),g("innerHTML",i.artistFromBlogParsedBio(),S),o(),m(i.isBlogArtistInfoAvailable()?14:-1),o(4),g("routerLink",i.getValidArtistSlug(t)?H(25,ot,i.getValidArtistSlug(t)):null)("disabled",!i.getValidArtistSlug(t))}}function Ui(e,a){if(e&1&&p(0,qi,23,27,"a",2),e&2){let t,i=l(2);m((t=i.artistFromBlog())?0:-1,t)}}function Ki(e,a){if(e&1&&u(0,"span",12),e&2){let t=l(),i=l(3);g("innerHTML",i.formatHeadline(t.headline),S)}}function Qi(e,a){if(e&1&&(s(0,"div",7)(1,"div",23)(2,"div",24),u(3,"
24img",25),r(),s(4,"div",26)(5,"span",27),d(6),r(),s(7,"span",28),d(8,"Years of Experience"),r()()()()),e&2){let t=l(2);o(3),g("alt",D(t.profile==null?null:t.profile.years_of_xp))("ngSrc","cms/years_of_xp_90003863f3.svg"),o(3),C(t.profile==null?null:t.profile.years_of_xp)}}function Gi(e,a){if(e&1&&(s(0,"div",7)(1,"div",29)(2,"div",24),u(3,"img",30),r(),s(4,"div",26)(5,"span",27),d(6),r(),s(7,"span",28),d(8,"Awards"),r()()()()),e&2){let t=l(2);o(3),g("alt",D(t==null?null:t.awardsCount))("ngSrc","cms/awards_a32a6d8191.svg"),o(3),C(t==null?null:t.awardsCount)}}function Wi(e,a){if(e&1&&(s(0,"div",7)(1,"div",29)(2,"div",24),u(3,"img",30),r(),s(4,"div",26)(5,"span",27),d(6),r(),s(7,"span",28),d(8,"Products"),r()()()()),e&2){let t=l(2);o(3),g("alt",D(t==null?null:t.productsCount))("ngSrc","cms/products_ba2c25dca9.svg"),o(3),C(t==null?null:t.productsCount)}}function Xi(e,a){if(e&1&&(s(0,"div",14)(1,"div",22),p(2,Qi,9,4,"div",7),p(3,Gi,9,4,"div",7),p(4,Wi,9,4,"div",7),r()()),e&2){let t=l();o(2),m(((t.profile==null?null:t.profile.years_of_xp)??0)>0?2:-1),o(),m(((t==null?null:t.awardsCount)??0)>0?3:-1),o(),m(((t==null?null:t.productsCount)??0)>0?4:-1)}}function Yi(e,a){if(e&1&&(s(0,"a",3)(1,"div",4,0),u(3,"div",5),s(4,"div",6)(5,"div",7)(6,"div",8)(7,"div",9),u(8,"img",10),r(),s(9,"div")(10,"h4",11),d(11),r(),p(12,Ki,1,1,"span",12),r()(),u(13,"p",13),r(),p(14,Xi,5,3,"div",14),r(),s(15,"div",15)(16,"div",16)(17,"div",17)(18,"button",18),u(19,"i",19),s(20,"span",20),d(21,"View Profile"),r(),u(22,"i",21),r()()()()()()),e&2){let t=a,i=l(3);k("pointer-events-none",!i.getValidArtistSlug(t)),g("routerLink",i.getValidArtistSlug(t)?H(20,ot,i.getValidArtistSlug(t)):null),W("aria-label","View details for "+(t.profile==null?null:t.profile.name)),o(5),k("col-md-8",i.isProductArtistInfoAvailable())("col-md-12",!i.isProductArtistInfoAvailable()),o(2),ut("background-image",(t.profile==null?null:t.profile.cover_image)==="artists/cover/"?"url(https://img.rooftopapp.com/cms/miniature_mewar_background_122ee519ef.png)":"url("+i.awsImageLoader(H(22,wt,(t.profile==null?null:t.profile.cover_image)||""))+")"),o(),g("ngSrc",D(t.profile==null?null:t.profile.display_image))("alt",t.profile==null?null:t.profile.name)("loaderParams",L(24,Pt)),o(3),C(t.profile==null?null:t.profile.name),o(),m(t.headline?12:-1),o(),g("innerHTML",i.artistFromProductParsedBio(),S),o(),m(i.isProductArtistInfoAvailable()?14:-1),o(4),g("routerLink",i.getValidArtistSlug(t)?H(25,ot,i.getValidArtistSlug(t)):null)("disabled",!i.getValidArtistSlug(t))}}function Ji(e,a){if(e&1&&p(0,Yi,23,27,"a",2),e&2){let t,i=l(2);m((t=i.artistFromProduct())?0:-1,t)}}function Zi(e,a){if(e&1&&(s(0,"div",1),p(1,Ni,1,1)(2,Ui,1,1)(3,Ji,1,1),r()),e&2){let t;o(),m((t=a)==="courses"?1:t==="artistBlog"?2:t==="shop"?3:-1)}}var ce=(()=>{class e{constructor(t,i,n){this.renderer=t,this.platformId=i,this.injector=n,this.data=P.required(),this.cardType=P.required(),this.artistFromBlog=F(()=>this.cardType()==="artistBlog"?this.data():null),this.artistFromCourse=F(()=>this.cardType()==="courses"?this.data().artPundit??null:null),this.artistFromCourseParsedBio=F(()=>{let c=this.artistFromCourse();return c?.profile?.bio?B(c.profile.bio):""}),this.isCourseArtistInfoAvailable=F(()=>{let c=this.artistFromCourse();return(c?.profile?.years_of_xp??0)||(c?.awardsCount??0)||(c?.productsCount??0)}),this.artistFromProduct=F(()=>this.cardType()==="shop"?this.data().artist??null:null),this.artistFromProductParsedBio=F(()=>{let c=this.artistFromProduct();return c?.profile?.bio?B(c.profile.bio):""}),this.isProductArtistInfoAvailable=F(()=>{let c=this.artistFromProduct();return(c?.profile?.years_of_xp??0)||(c?.awardsCount??0)||(c?.productsCount??0)}),this.artistFromBlogParsedBio=F(()=>{let c=this.artistFromBlog();return c?.profile?.bio?B(c.profile.bio):""}),this.isBlogArtistInfoAvailable=F(()=>{let c=this.artistFromBlog();return(c?.profile?.years_of_xp??0)||(c?.awardsCount??0)||(c?.productsCount??0)}),this.awsImageLoader=V}ngOnInit(){}getValidArtistSlug(t){let i=t?.profile?.slug;if(typeof i!="string")return null;let n=i.trim();return n&&!n.startsWith("-")?n:null}ngAfterViewInit(){Ot(this.injector,()=>{ct(()=>{this.cardRefs&&this.cardRefs.length>0&&this.initializeGsap()})}),this.initializeGsap()}formatHeadline(t){return t?t.split("||").map(n=>n.trim()).join(' <i class="bi bi-dot fs-5"></i> '):""}
24animateCards(){this.cardRefs.forEach(t=>{let i=t?.nativeElement;if(!i)return;let n=i.querySelector(".glow"),c=x=>{let h=i.getBoundingClientRect(),v=x.clientX-h.left,A=x.clientY-h.top,Q=h.width/2,St=h.height/2;this.gsap.to(i,{transformPerspective:1e3,transformOrigin:"center",duration:.3}),n&&this.gsap.to(n,{x:v-Q,y:A-St,duration:.3})},_=()=>{this.gsap.to(i,{rotationX:0,rotationY:0,duration:.4}),n&&this.gsap.to(n,{x:0,y:0,duration:.4})};this.renderer.listen(i,"mousemove",c),this.renderer.listen(i,"mouseleave",_)})}async initializeGsap(){if(!jt(this.platformId))return;let t=await import("./chunk-WX76FUUM.js");this.gsap=t.gsap,this.animateCards()}static{this.\u0275fac=function(i){return new(i||e)(b(Dt),b(At),b(Bt))}}static{this.\u0275cmp=w({type:e,selectors:[["app-artist-profile-card"]],viewQuery:function(i,n){if(i&1&&Lt(Bi,5),i&2){let c;Ft(c=Rt())&&(n.cardRefs=c)}},inputs:{data:[1,"data"],cardType:[1,"cardType"]},decls:1,vars:1,consts:[["cardRef",""],[1,"my-4"],[3,"routerLink","pointer-events-none"],[3,"routerLink"],[1,"artist-card"],[1,"glow"],[1,"row"],[1,"col-12"],[1,"d-flex","align-items-center","mb-2","flex-column","flex-md-row","text-center","text-md-start"],[1,"image_container"],["height","100","width","100",1,"foreground",3,"alt","loaderParams","ngSrc"],[1,"artist-title"],[1,"artist-headline",3,"innerHTML"],[1,"artist-description","line-clamp",3,"innerHTML"],[1,"col-12","col-md-4","info-section"],[1,"row","d-block","d-xl-none"],[1,"btn-container"],[1,"view-profile-btn"],["type","submit",1,"btn","btn-primary","btn-lg","default-btn",2,"border-radius","12px",3,"routerLink","disabled"],[1,"bx","bxs-chevrons-right","icon-arrow","before"],[1,"label"],[1,"bx","bxs-chevrons-right","icon-arrow","after"],[1,"row","text-center","text-md-start"],[1,"d-flex","align-items-center","py-2","pt-0"],[1,"symbol","symbol-30px","me-2"],["height","35","width","35",3,"ngSrc","alt"],[1,"d-flex","align-items-center","m-0"],[1,"fw-bold","text-mainColor","fs-4","me-2"],[1,"text-gray-500","d-block","fs-8"],[1,"d-flex","align-items-center","py-2"],["height","35","width","35",1,"",3,"ngSrc","alt"]],template:function(i,n){if(i&1&&p(0,Zi,4,1,"div",1),i&2){let c;m((c=n.cardType())?0:-1,c)}},dependencies:[J,_t],styles:[".line-clamp[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;display:-webkit-box!important;-webkit-line-clamp:3;-webkit-box-orient:vertical}.artist-card[_ngcontent-%COMP%]{background:#1e1e1e;border-radius:16px;padding:2rem;margin-bottom:1.5rem;border:2px solid rgba(255,255,255,.3);overflow:hidden;position:relative;transition:box-shadow .3s ease;cursor:pointer}.artist-card[_ngcontent-%COMP%] .glow[_ngcontent-%COMP%]{position:absolute;width:125%;height:125%;top:-25%;left:-25%;background:radial-gradient(circle,rgba(255,255,255,.2) 0%,transparent 60%);pointer-events:none;mix-blend-mode:screen;transform:translateZ(50px);filter:blur(20px)}.artist-card[_ngcontent-%COMP%] .image_container[_ngcontent-%COMP%]{position:relative;border-radius:10px;overflow:hidden;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:5;margin:0 auto 1rem}.artist-card[_ngcontent-%COMP%] .image_container[_ngcontent-%COMP%] .foreground[_ngcontent-%COMP%]{position:relative;z-index:1;object-fit:contain;border-radius:5%;border:5px solid hsla(0,0%,100%,.5);width:auto;height:auto;max-width:100%}.artist-card[_ngcontent-%COMP%] .artist-title[_ngcontent-%COMP%]{font-weight:700;margin-bottom:.5rem;color:var(--mainColor)}.artist-card[_ngcontent-%COMP%] .artist-description[_ngcontent-%COMP%]{margin-bottom:1rem}.artist-card[_ngcontent-%COMP%] .artist-headline[_ngcontent-%COMP%]{font-size:1rem;color:var(--optionalColor)}.artist-card[_ngcontent-%COMP%] .info-section[_ngcontent-%COMP%]{border-top:2px solid rgba(255,255,255,.3);padding-top:1rem;margin-top:1rem;grid-column-gap:32px;justify-content:flex-start;align-items:center;display:flex}.artist-card[_ngcontent-%COMP%] .info-section[_ngcontent-%COMP%] .info-item[_ngcontent-%COMP%]{grid-row-gap:18px;flex-direction:column;align-items:flex-start;display:flex}.artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%]{display:flex;justify-content:space-around;align-items:center}.artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%] .view-profile-btn[_ngcontent-%COMP%]{display:flex;align-items:center;padding:20px 0 0}.artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%] .view-profile-btn[_ngcontent-%COMP%] .default-btn[_ngcontent-%COMP%]{line-height:normal;position:relative;display:inline-block;color:var(--whiteColor);padding:13px 25px 12px 55px;transition:var(--transition);background-color:var(--mainColor);border:none!important;font-size:14.5px;font-weight:700}.artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%] .view-profile-btn[_ngcontent-%COMP%] .default-btn[_ngcontent-%COMP%] .label[_ngcontent-%COMP%], .artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%] .view-profile-btn[_ngcontent-%COMP%] .default-btn[_ngcontent-%COMP%] .icon-arrow[_ngcontent-%COMP%]{backface-visibility:hidden;transform:translateZ(0);perspective:1000}.artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%] .view-profile-btn[_ngcontent-%COMP%] .default-btn[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{display:inline-block;transition:transform .5s cubic-bezier(.86,0,.07,1)}.artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%] .view-profile-btn[_ngcontent-%COMP%] .default-btn[_ngcontent-%COMP%] .icon-arrow[_ngcontent-%COMP%]{color:var(--whiteColor);top:11px;transition:transform .5s cubic-bezier(.86,0,.07,1),opacity .4s cubic-bezier(.86,0,.07,1);font-size:25px}.artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%] .view-profile-btn[_ngcontent-%COMP%] .default-btn[_ngcontent-%COMP%] .icon-arrow.before[_ngcontent-%COMP%]{left:20px;position:absolute;transform-origin:left center;color:var(--whiteColor)}.artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%] .view-profile-btn[_ngcontent-%COMP%] .default-btn[_ngcontent-%COMP%] .icon-arrow.after[_ngcontent-%COMP%]{opacity:0;right:20px;margin-right:0;position:absolute;transform:translate(75%) scaleX(.1);transform-origin:right center;margin-left:0!important;color:#0080c7}.artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%] .view-profile-btn[_ngcontent-%COMP%] .default-btn[_ngcontent-%COMP%]:hover, .artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%] .view-profile-btn[_ngcontent-%COMP%] .default-btn[_ngcontent-%COMP%]:focus{background:linear-gradient(to bottom right,#0e0e0e,#1a1a1a)!important;border:1px solid #0080C7!important;color:#0080c7!important}.artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%] .view-profile-btn[_ngcontent-%COMP%] .default-btn[_ngcontent-%COMP%]:hover .label[_ngcontent-%COMP%], .artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%] .view-profile-btn[_ngcontent-%COMP%] .default-btn[_ngcontent-%COMP%]:focus .label[_ngcontent-%COMP%]{transform:translate(-32px)}.artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%] .view-profile-btn[_ngcontent-%COMP%] .default-btn[_ngcontent-%COMP%]:hover .icon-arrow.before[_ngcontent-%COMP%], .artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%] .view-profile-btn[_ngcontent-%COMP%] .default-btn[_ngcontent-%COMP%]:focus .icon-arrow.before[_ngcontent-%COMP%]{opacity:0;transform:translate(-75%) scaleX(.1);color:#0080c7}.artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%] .view-profile-btn[_ngcontent-%COMP%] .default-btn[_ngcontent-%COMP%]:hover .icon-arrow.after[_ngcontent-%COMP%], .artist-card[_ngcontent-%COMP%] .btn-container[_ngcontent-%COMP%] .view-profile-btn[_ngcontent-%COMP%] .default-btn[_ngcontent-%COMP%]:focus .icon-arrow.after[_ngcontent-%COMP%]{opacity:1;transform:translate(0) scaleX(1);color:#0080c7;margin-left:0!important}.artist-card[_ngcontent-%COMP%]:hover .glow[_ngcontent-%COMP%]{opacity:1}@media(min-width:768px){.artist-card[_ngcontent-%COMP%] .image_container[_ngcontent-%COMP%]{margin:0 1rem 0 0}.artist-card[_ngcontent-%COMP%] .artist-title[_ngcontent-%COMP%], .artist-card[_ngcontent-%COMP%] .artist-description[_ngcontent-%COMP%]{text-align:left}.artist-card[_ngcontent-%COMP%] .info-section[_ngcontent-%COMP%]{border-top:none;border-left:2px solid rgba(255,255,255,.3);padding-left:1.5rem;margin-top:0}}"],changeDetection:0})}}return e})();var tn=()=>[],en=(e,a)=>a.uuid;function nn(e,a){e&1&&u(0,"app-shimmer-card")}function on(e,a){e&1&&T(0,nn,1,0,"app-shimmer-card",null,X),e&2&&O(L(0,tn).constructor(6))}function an(e,a){if(e&1&&(s(0,"div",1)(1,"div",2),u(2,"app-global-card",3),r(),s(3,"div",4),u(4,"p",5),r()()),e&2){let t=a.$implicit,i=l(2),n=l(2);k("md:order-2",i.card_position==="right")("md:order-1",i.card_position==="left"),o(),k("md:order-2",i.card_position==="right")("md:order-1",i.card_position==="left"),o(),g("cardType","shop")("data",t),o(2),g("innerHTML",n.parsedShopContent(),S)}}function rn(e,a){if(e&1&&T(0,an,5,11,"div",0,K().trackByProduct,!0),e&2){let t=l(3);O(t.products())}}function ln(e,a){if(e&1){let t=q();
24s(0,"div",1)(1,"div",2)(2,"app-global-card",6),Y("addToCart",function(n){R(t);let c=l(4);return N(c.onAddToCartClicked(n))})("click",function(){let n=R(t).$implicit,c=l(4);return N(c.launchCourseDetail(n))}),r()(),s(3,"div",4),u(4,"p",5),r()()}if(e&2){let t=a.$implicit,i=l(2),n=l(2);k("md:order-2",i.card_position==="right")("md:order-1",i.card_position==="left"),o(),k("md:order-2",i.card_position==="right")("md:order-1",i.card_position==="left"),o(),g("cardType","courses")("data",t),o(2),g("innerHTML",n.parsedCoursesContent(),S)}}function sn(e,a){if(e&1&&T(0,ln,5,11,"div",0,en),e&2){let t=l(3);O(t.courses())}}function cn(e,a){if(e&1&&(s(0,"div",1)(1,"div",2),u(2,"p",5),r()()),e&2){let t=l(2),i=l(2);k("md:order-2",t.card_position==="right")("md:order-1",t.card_position==="left"),o(),k("md:order-2",t.card_position==="right")("md:order-1",t.card_position==="left"),o(),g("innerHTML",i.parsedArtistsContent(),S)}}function dn(e,a){if(e&1&&T(0,cn,3,9,"div",0,K().trackByArtist,!0),e&2){let t=l(3);O(t.artists())}}function pn(e,a){if(e&1&&(s(0,"div",1)(1,"div",7),u(2,"app-artist-profile-card",3),r(),s(3,"div",4),u(4,"p",8),r()()),e&2){let t=a.$implicit,i=l(2),n=l(2);k("md:order-2",i.card_position==="right")("md:order-1",i.card_position==="left"),o(),k("md:order-2",i.card_position==="right")("md:order-1",i.card_position==="left"),o(),g("cardType","artistBlog")("data",t),o(2),g("innerHTML",n.parsedArtistsContent(),S)}}function mn(e,a){if(e&1&&T(0,pn,5,11,"div",0,K().trackByArtist,!0),e&2){let t=l(3);O(t.artists())}}function un(e,a){if(e&1&&(p(0,rn,2,0),p(1,sn,2,0),p(2,dn,2,0),p(3,mn,2,0)),e&2){let t=a;m(t.entity==="shop"?0:-1),o(),m(t.entity==="course"?1:-1),o(),m(t.entity==="artist"&&t.card_type==="listing_card"?2:-1),o(),m(t.entity==="artist"&&t.card_type==="detail_card"?3:-1)}}function _n(e,a){if(e&1&&p(0,un,4,4),e&2){let t,i=l();m((t=i.block())?0:-1,t)}}var gn=et("SingleEntityBlockComponent"),Ro="product",de=(()=>{class e{#t;#e;constructor(t,i,n,c,_,x,h,v,A){this.ecommerceProductService=t,this.coursesService=i,this.artistService=n,this.seoService=c,this.router=_,this.durationService=x,this.analyticsService=h,this.route=v,this.cartManagerService=A,this.block=P.required(),this.isLoading=f(!1),this.products=f([]),this.courses=f([]),this.artists=f([]),this.parsedShopContent=f(""),this.parsedCoursesContent=f(""),this.parsedArtistsContent=f(""),this.itemsPerPage=f(15),this.pageSeoTitle=f(""),this.pageTitle=f(""),this.pageDescription=f(""),this.pageShortDescription=f(""),this.pageKeywords=f(""),this.descriptionRenderedMarkdown=f(""),this.shortDescriptionRenderedMarkdown=f(""),this.#t=I(gt),this.#e=I(dt)}async ngOnChanges(){let t=this.block();switch(t.entity){case"shop":await this.loadData(t),t.content&&this.parsedShopContent.set(await B(t.content));break;case"course":await this.loadData(t),t.content&&this.parsedCoursesContent.set(await B(t.content));break;case"artist":await this.loadData(t),t.content&&this.parsedArtistsContent.set(await B(t.content));break;default:return}}async loadData(t){this.isLoading.set(!0);try{switch(t.entity){case"shop":{let i=this.buildShopParams(t.slug);if(i.slug){let n=["categories.seo","categories.faqs","productAttributes.attributeName","productAttributes.attributeValue","productAttributes.attributeValue.seo","discounts","media","reviews"],c=await this.ecommerceProductService.getEcommerceProductBySlug(i.slug,n);this.products.update(_=>[..._,c]),this.isLoading.set(!1)}break}case"course":{let i=this.buildCoursesParams(t.slug),n=["artPundit","artPundit.profile","courseChapters","courseChapters.courseChapterContents","courseProducts","discounts"],c=await this.coursesService.getCourseBySlug(i.slug,n);this.updateCoursesData(c),this.isLoading.set(!1);break}case"artist":{let i=this.buildArtistsParams(t.slug),n=["profile","artForms"],c=await this.artistService.getArtistByUuid(i.slug,n);this.updateArtistsData(c),this.isLoading.set(!1);break}default:throw this.isLoading.set(!1),new Error(`Unsupported entity: ${t.entity}`)}}finally{this.isLoading.set(!1)}}async getDuration(t){t.courseChapters&&(t.duration=this.durationService.calculateDuration(t.courseChapters))}async onAddToCartClicked(t){await this.cartManagerService.addEntityToCart("Course",t.uuid,0,1)}async launchCourseDetail(t){this.analyticsService.selectItem(t,"Course","rooftop_courses","Rooftop Courses"),t.status===1&&await this.router.navigate(["courses",t.slug])}updateArtistsData(t){this.artists.update(i=>[...i,t])}getCarouselOptions(t){return t<=1?{items:1,loop:!1,mouseDrag:!1,touchDrag:!1,dots:!1,nav:!1,autoWidth:!0,margin:0,center:!0,animateIn:"animate__slideInRight",animateOut:"animate__slideOutLeft",responsive:{0:{items:1},768:{items:1},1200:{items:1}}}:{lazyLoad:!0,loop:!0,margin:40,nav:!1,dots:!0,autoplay:!0,autoplayHoverPause:!0,animateIn:"animate__slideInRight",animateOut:"animate__slideOutLeft",items:3,responsive:{0:{items:1},768:{items:3},1200:{items:3}}}}trackByProduct(t,i){return i.uuid}trackByArtist(t,i){return i.uuid}parseSlug(t,i){let n={},c=_=>{let x=new URLSearchParams(_);n.filter=n.filter||{};for(let[h,v]of x.entries())if(h==="filters")try{n.filter=JSON.parse(v)}catch{gn.warn("Invalid filters JSON:",v)}else h==="search"?n.filter.keyword=decodeURIComponent(v):n[h]=v};if(t==="shop"){if(i.includes("?")){let _=i.substring(i.indexOf("?")+1);c(_)}
24else{let _=i.split("/").filter(Boolean);if(_.length>1){if(n.filter=n.filter||{},n.filter.category=_[1],_.length===3)n.slug=_[2];else if(_.length>3){let x=[];for(let h=2;h<_.length;h+=2)_[h+1]&&x.push({id:_[h],values:[_[h+1]]});x.length&&(n.filter.attributes=x)}}}n.expand="categories.seo,categories.faqs,productAttributes.attributeName,productAttributes.attributeValue,productAttributes.attributeValue.seo,discounts,media,reviews"}if(t==="course"){if(i.includes("?")){let _=i.substring(i.indexOf("?")+1);c(_)}else{let _=i.split("/").filter(Boolean);_.length>1&&(n.slug=_[1])}n.expand="artPundit,artPundit.profile,courseChapters,courseChapters.courseChapterContents,courseProducts,discounts"}if(t==="artist"){if(i.includes("?")){let _=i.substring(i.indexOf("?")+1);c(_)}else{let _=i.split("/").filter(Boolean);_.length>1&&(n.slug=_[1])}n.expand="profile,artForms"}return n}buildShopParams(t){let i=this.parseSlug("shop",t),n={expand:"categories.seo,categories.faqs,productAttributes.attributeName,productAttributes.attributeValue,productAttributes.attributeValue.seo,discounts,media,reviews",pageSize:i.pageSize||this.itemsPerPage(),page:i.page,sort:i.sort,filter:{keyword:i.search}};return i.filter?.category&&(n.filter.category=i.filter.category),i.filter?.attributes&&(n.filter.attributes=i.filter.attributes),i.slug&&(n.slug=i.slug),n}buildCoursesParams(t){let i=this.parseSlug("course",t),n={expand:"artPundit,artPundit.profile,courseChapters,courseChapters.courseChapterContents,courseProducts,discounts"};return i.slug&&(n.slug=i.slug),i.search&&(n.filter={title:{like:i.search}}),n}buildArtistsParams(t){let i=this.parseSlug("artist",t),n={expand:"profile,artForms",pageSize:i.pageSize||this.itemsPerPage(),page:i.page,sort:i.sort};return i.slug&&(n.slug=i.slug),i.search&&(n.filter={name:{like:i.search}}),n}updateCoursesData(t){let i=t;if(i){let n=this.getDuration(i);this.courses.update(c=>[...c,Et({newCourseItem:n},i)])}}static{this.\u0275fac=function(i){return new(i||e)(b(ht),b(kt),b(yt),b(it),b(tt),b(ft),b(xt),b(Z),b(vt))}}static{this.\u0275cmp=w({type:e,selectors:[["app-single-entity-block"]],inputs:{block:[1,"block"]},features:[G],decls:4,vars:1,consts:[[1,"grid","grid-cols-12","items-center","mb-4","gap-3",3,"md:order-2","md:order-1"],[1,"grid","grid-cols-12","items-center","mb-4","gap-3"],[1,"col-span-12","md:col-span-4","lg:col-span-3"],[3,"cardType","data"],["[class.md:order-1 md:text-right","",0,"md","pr-3]","block.card_position === 'right'","[class.md:order-2 md:text-left","",0,"md","pl-3]","block.card_position === 'left'",1,"col-span-12","md:col-span-8"],[1,"mb-0","text-justify","text-gray-900","dark:text-white",3,"innerHTML"],[3,"addToCart","click","cardType","data"],[1,"col-span-12","md:col-span-4","lg:col-span-8"],[1,"mb-0","text-justify",3,"innerHTML"]],template:function(i,n){i&1&&(s(0,"div"),p(1,on,2,1)(2,_n,1,1),r(),u(3,"br")),i&2&&(o(),m(n.isLoading()?1:2))},dependencies:[bt,Ct,ce],encapsulation:2,changeDetection:0})}}return e})();var fn=(e,a)=>a.id;function Cn(e,a){if(e&1&&u(0,"app-media-block",0),e&2){let t=l().$implicit;g("block",t)}}function hn(e,a){if(e&1&&u(0,"app-quote-block",0),e&2){let t=l().$implicit;g("block",t)}}function xn(e,a){if(e&1&&u(0,"app-rich-text-block",0),e&2){let t=l().$implicit;g("block",t)}}function vn(e,a){if(e&1&&u(0,"app-slider-block",0),e&2){let t=l().$implicit;g("block",t)}}function bn(e,a){if(e&1&&u(0,"app-heading-block",0),e&2){let t=l().$implicit;g("block",t)}}function kn(e,a){if(e&1&&u(0,"app-list-entity-block",0),e&2){let t=l().$implicit;g("block",t)}}function yn(e,a){if(e&1&&u(0,"app-single-entity-block",0),e&2){let t=l().$implicit;g("block",t)}}function Sn(e,a){if(e&1&&(p(0,Cn,1,1,"app-media-block",0),p(1,hn,1,1,"app-quote-block",0),p(2,xn,1,1,"app-rich-text-block",0),p(3,vn,1,1,"app-slider-block",0),p(4,bn,1,1,"app-heading-block",0),p(5,kn,1,1,"app-list-entity-block",0),p(6,yn,1,1,"app-single-entity-block",0)),e&2){let t=a.$implicit,i=l();m(i.isMediaBlock(t)?0:-1),o(),m(i.isQuoteBlock(t)?1:-1),o(),m(i.isRichTextBlock(t)?2:-1),o(),m(i.isSliderBlock(t)?3:-1),o(),m(i.isHeadingBlock(t)?4:-1),o(),m(i.isListEntityBlock(t)?5:-1),o(),m(i.isSingleEntityBlock(t)?6:-1)}}var pe=(()=>{class e{constructor(){this.blocks=P.required(),this.isMediaBlock=ee,this.isQuoteBlock=ie,this.isRichTextBlock=ne,this.isSliderBlock=oe,this.isHeadingBlock=ae,this.isListEntityBlock=re,this.isSingleEntityBlock=le}static{this.\u0275fac=function(i){return new(i||e)}}static{this.\u0275cmp=w({type:e,selectors:[["app-block-renderer"]],inputs:{blocks:[1,"blocks"]},decls:2,vars:0,consts:[[3,"block"]],template:function(i,n){i&1&&T(0,Sn,7,7,null,null,fn),i&2&&O(n.blocks())},dependencies:[Wt,Xt,Yt,Zt,te,se,de],encapsulation:2,changeDetection:0})}}return e})();var wn=()=>["/blogs"];function Pn(e,a){if(e&1&&(s(0,"div",4),u(1,"figcaption",41),$(2,"markdown"),r()),e&2){let t=l();o(),g("innerHTML",U(2,1,(t.detailsCover==null?null:t.detailsCover.caption)||t.cover.caption),S)}}function Mn(e,a){if(e&1&&u(0,"img",21),e&2){let t=l();g("ngSrc",a.url)("alt",t.author.name||"Author")}}function En(e,a){if(e&1&&u(0,"img",22),e&2){let t=l(),i=l();g("ngSrc",i.themeService.isDark()?"cms/rooftop_logo_white_final_mobile_ccdaea8a94.png":"cms/rooftop_logo_black_final_mobile_8632b1aa7f.png")("alt",t.author.name||"Author")}}function Tn(e,a){if(e&1&&u(0,"app-block-renderer",26),e&2){let t=l();g("blocks",t.blocks)}}function On(e,a){if(e&1&&(s(0,"div",44)(1,"div",45),u(2,"img",46),r(),s(3,"div",47)(4,"h3",48)(5,"a",49),d(6),r()()()()),e&2){let t=a.$implicit;o(2),g("src",t.cover.url,pt)("alt",t.title),o(3),g("routerLink","/blogs/"+t.slug),o(),C(t.title)}}function Bn(e,a){if(e&1&&(s(0,"div",27)(1,"h2",42),d(2," Related Articles"),r(),s(3,"div",43),T(4,On,7,4,"div",44,X),r()()),e&2){let t=l();o(4),O(t.related_articles)}}function In(e,a){if(e&1){let t=q();s(0,"div",1)(1,"div",2),u(2,"img",3),p(3,Pn,3,3,"div",4),r(),s(4,"div",5)(5,"div",6)(6,"div",7),at(),s(7,"svg",8),u(8,"path",9)(9,"path",10)(10,"rect",11)(11,"path",12),r(),st(),s(12,"span",13),d(13),$(14,"date"),r()(),s(15,"div",7),at(),s(16,"svg",14),u(17,"path",15)(18,"circle",16),r(),st(),s(19,"span",13),d(20," 5 min read"),r()()(),s(21,"h1",17),d(22),r(),s(23,"p",18),d(24),r(),s(25,"div",19)(26,"span",20),p(27,Mn,1,2,"img",21)(28,En,1,2,"img",22),r(),s(29,"div")(30,"p",23),d(31),r(),s(32,"p",24),d(33," Author"),r()()(),s(34,"div",25),p(35,Tn,1,1,"app-block-renderer",26),r(),p(36,Bn,6,0,"div",27),s(37,"div",28)(38,"div",29)(39,"button",30),at(),s(40,"svg",31),u(41,"path",32)(42,"path",33),r(),d(43," Back to Articles "),r(),st(),s(44,"button",34),Y("click",function(){R(t);let n=l();return N(n.shareArticle())}
24),at(),s(45,"svg",35),u(46,"circle",36)(47,"circle",37)(48,"circle",38)(49,"line",39)(50,"line",40),r(),d(51," Share Article "),r()()()()()}if(e&2){let t,i=a,n=l();k("dark-blog-details-area",n.themeService.isDark()),o(2),g("ngSrc",(i.detailsCover==null?null:i.detailsCover.url)||i.cover.url)("alt",(i.detailsCover==null?null:i.detailsCover.alternativeText)||i.cover.alternativeText||i.title),o(),m(i.detailsCover!=null&&i.detailsCover.caption||i.cover.caption?3:-1),o(10),C(Ht(14,13,i.published_date,"MMM d, y")),o(9),y(" ",i.title),o(2),y(" ",i.description),o(3),m((t=i.author.avatar)?27:28,t),o(4),y(" ",i.author.name||"Rooftop"),o(4),m(i.blocks.length?35:-1),o(),m(i.related_articles.length>0?36:-1),o(3),g("routerLink",L(16,wn))}}var Mt=et("BlogDetailsPageComponent"),_a=(()=>{class e{constructor(){this.themeService=I(zt),this.router=I(tt),this.awsImageLoader=V,this.route=I(Z),this.cmsArticleService=I(Kt),this.seoService=I(it),this.slug=qt(this.route.paramMap.pipe(Tt(t=>t.get("slug")||""))),this.articleResource=this.cmsArticleService.createArticleBySlugResource(()=>this.slug()||""),this.article=F(()=>this.articleResource?.error()?null:this.articleResource?.value()??null),Ut(this.articleResource),ct(()=>{this.article()&&this.setSeoMetadata()})}setSeoMetadata(){let t=this.article();if(!t)return;let n=`https://rooftopapp.com${this.router.url}`;this.seoService.clearStructuredData();let c;if(t.seo?.metaTitle)c=t.seo.metaTitle;else{let v=" | Rooftop Blog",A=58-v.length;c=`${t.title.length>A?`${t.title.slice(0,A-1).trim()}\u2026`:t.title}${v}`}let _=t.seo?.metaDescription||t.description||"",x=t.seo?.keywords||t.categories?.map(v=>v.name).join(", ")||"Indian art, culture, blog",h=t.seo?.shareImage?.url||t.cover?.url||"https://img.rooftopapp.com/cms/rooftop_logo_1ab581168f.webp";this.seoService.setMetaData(c,_,x,n,h),this.seoService.addDetailedBlogStructuredData(t,n)}getBackgroundImageStyle(t,i){return`url('${this.awsImageLoader({src:t.url,width:t.width,loaderParams:{height:t.height,fit:i||"cover"}})}')`}encodeUrl(t){return encodeURIComponent(t)}shareArticle(){let t=this.article();if(!t)return;let i={title:t.title,text:t.description||"Explore in-depth articles on Indian art and culture by Rooftop.",url:window.location.href};navigator.share?navigator.share(i).catch(n=>{Mt.warn("Error sharing:",n)}):navigator.clipboard.writeText(window.location.href).then(()=>{Mt.info("Link copied to clipboard")}).catch(n=>{Mt.error("Failed to copy link:",n)})}ngOnDestroy(){this.seoService.clearStructuredData()}static{this.\u0275fac=function(i){return new(i||e)}}static{this.\u0275cmp=w({type:e,selectors:[["app-blog-details-page"]],decls:1,vars:1,consts:[[1,"blog-details-area","pt-[75px]","pb-[75px]","animate__animated","animate__fadeIn",3,"dark-blog-details-area"],[1,"blog-details-area","pt-[75px]","pb-[75px]","animate__animated","animate__fadeIn"],[1,"w-full","aspect-[21/9]","max-h-[500px]","relative","overflow-hidden"],["sizes","100vw","fill","","priority","",1,"w-full","h-full","object-cover",3,"ngSrc","alt"],[1,"absolute","bottom-0","left-0","right-0","bg-black/40","backdrop-blur-sm","text-white","p-2","text-center","text-[var(--text-body-medium)]","font-heebo"],[1,"rt-layout-container","rt-layout-section--sm","max-w-4xl"],[1,"flex","flex-wrap","items-center","gap-4","mb-6"],[1,"flex","items-center","gap-2"],["xmlns","http://www.w3.org/2000/svg","width","24","height","24","viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round","stroke-linejoin","round","aria-hidden","true",1,"lucide","lucide-calendar","h-4","w-4",2,"color","var(--muted-foreground)"],["d","M8 2v4"],["d","M16 2v4"],["width","18","height","18","x","3","y","4","rx","2"],["d","M3 10h18"],[2,"font-family","var(--font-heebo)","font-size","var(--text-body-large)","color","var(--muted-foreground)"],["xmlns","http://www.w3.org/2000/svg","width","24","height","24","viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round","stroke-linejoin","round","aria-hidden","true",1,"lucide","lucide-clock","h-4","w-4",2,"color","var(--muted-foreground)"],["d","M12 6v6l4 2"],["cx","12","cy","12","r","10"],[1,"rt-detail-title","mb-6"],[1,"rt-lead-text","mb-8"],[1,"flex","items-center","gap-3","pb-8","mb-8","border-b",2,"border-color","var(--border)"],["data-slot","avatar",1,"relative","flex","size-10","shrink-0","overflow-hidden","rounded-full","h-12","w-12","bg-muted/20"],["fill","","sizes","48px","ngSrcset","48w",1,"h-full","w-full","object-cover","rounded-full",3,"ngSrc","alt"],["fill","","sizes","48px","ngSrcset","48w",1,"h-full","w-full","object-contain","p-2","rounded-full",3,"ngSrc","alt"],[2,"font-family","var(--font-heebo)","font-size","var(--text-body-large)","color","var(--foreground)"],[2,"font-family","var(--font-heebo)","font-size","var(--text-body-small)","color","var(--muted-foreground)"],[1,"space-y-6"],[3,"blocks"],[1,"mt-16","pt-8","border-t",2,"border-color","var(--border)"],[1,"mt-12","pt-8","border-t",2,"border-color","var(--border)"],[1,"flex","items-center","justify-between"],["data-slot","button",1,"inline-flex","items-center","justify-center","gap-2","whitespace-nowrap","rounded-[var(--radius-button)]","font-heebo","text-[var(--text-body-medium)]","font-medium","transition-all","disabled:pointer-events-none","disabled:opacity-50","[&_svg]:pointer-events-none","[&_svg:not([class*='size-'])]:size-4","shrink-0","[&_svg]:shrink-0","outline-none","focus-visible:border-ring","focus-visible:ring-ring/50","focus-visible:ring-[3px]","aria-invalid:ring-destructive/20","dark:aria-invalid:ring-destructive/40","aria-invalid:border-destructive","border","bg-background","text-foreground","hover:bg-accent","hover:text-accent-foreground","dark:bg-input/30","dark:border-input","dar
24k:hover:bg-input/50","h-9","px-4","py-2","has-[>svg]:px-3",3,"routerLink"],["xmlns","http://www.w3.org/2000/svg","width","24","height","24","viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round","stroke-linejoin","round","aria-hidden","true",1,"lucide","lucide-arrow-left","h-4","w-4"],["d","m12 19-7-7 7-7"],["d","M19 12H5"],["data-slot","button",1,"inline-flex","items-center","justify-center","gap-2","whitespace-nowrap","rounded-[var(--radius-button)]","font-heebo","text-[var(--text-body-medium)]","font-medium","transition-all","disabled:pointer-events-none","disabled:opacity-50","[&_svg]:pointer-events-none","[&_svg:not([class*='size-'])]:size-4","shrink-0","[&_svg]:shrink-0","outline-none","focus-visible:border-ring","focus-visible:ring-ring/50","focus-visible:ring-[3px]","aria-invalid:ring-destructive/20","dark:aria-invalid:ring-destructive/40","aria-invalid:border-destructive","border","bg-background","text-foreground","hover:bg-accent","hover:text-accent-foreground","dark:bg-input/30","dark:border-input","dark:hover:bg-input/50","h-9","px-4","py-2","has-[>svg]:px-3",3,"click"],["xmlns","http://www.w3.org/2000/svg","width","24","height","24","viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round","stroke-linejoin","round","aria-hidden","true",1,"lucide","lucide-share2","lucide-share-2","h-4","w-4"],["cx","18","cy","5","r","3"],["cx","6","cy","12","r","3"],["cx","18","cy","19","r","3"],["x1","8.59","x2","15.42","y1","13.51","y2","17.49"],["x1","15.41","x2","8.59","y1","6.51","y2","10.49"],[1,"ng-deep-p-no-margin",3,"innerHTML"],[1,"mb-6",2,"font-family","var(--font-alan-sans)","font-size","var(--text-headline-large)","color","var(--foreground)"],[1,"grid","gap-4","grid-cols-2","sm:grid-cols-3","md:grid-cols-4","lg:grid-cols-5"],["data-slot","card",1,"bg-card","text-card-foreground","flex","flex-col","gap-6","rounded-xl","group","cursor-pointer","overflow-hidden","transition-all","hover:shadow-lg","border-0",2,"background-color","var(--card)"],[1,"relative","aspect-video","overflow-hidden"],["loading","lazy","decoding","async","width","320","height","180",1,"h-full","w-full","object-cover","transition-transform","duration-300","group-hover:scale-105",3,"src","alt"],[1,"p-3"],[1,"line-clamp-2",2,"font-family","var(--font-alan-sans)","font-size","var(--text-body-large)","color","var(--foreground)","line-height","var(--text-body-large-line-height)"],[3,"routerLink"]],template:function(i,n){if(i&1&&p(0,In,52,17,"div",0),i&2){let c;m((c=n.article())?0:-1,c)}},dependencies:[_t,pe,J,Vt,nt],styles:["[_nghost-%COMP%]{display:block}[_nghost-%COMP%] .prose img{display:block;margin-left:auto;margin-right:auto}[_nghost-%COMP%] .prose figure{text-align:center}[_nghost-%COMP%] .prose figure img{margin-left:auto;margin-right:auto}[_nghost-%COMP%] app-media-block figure{display:flex;flex-direction:column;align-items:center}.ng-deep-p-no-margin[_ngcontent-%COMP%] p{margin:0}"],changeDetection:0})}}return e})();export{_a as BlogDetailsPageComponent};
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.