PageSourceSearch

https://vitena.care/en/chunk-AFCOAZH4.js

js vitena.care collected 2026-09-24 13:57:43 UTC 6,401 bytes, 1 lines download raw bytes

1import{a as w}from"./chunk-2NTBZFWL.js";import"./chunk-46DG3HEL.js";import"./chunk-43YBI5ZD.js";import"./chunk-63QB7G3W.js";import"./chunk-2LVETGW4.js";import"./chunk-QZYD6EK3.js";import"./chunk-NLNCJF7P.js";import"./chunk-4KC5VZEM.js";import{Ab as O,Ad as I,Ec as u,Fb as r,Fc as R,Gb as n,Gc as B,Hb as p,Mc as E,Nb as h,Ob as P,Pa as b,Rb as c,Ua as a,Wb as M,Xb as d,Z as v,ca as T,da as x,fb as N,gc as y,jc as m,kc as s,oa as f,tb as S,ud as L,vb as g,wb as C,yb as F,zb as A}from"./chunk-MEWEEZGC.js";import"./chunk-WYC6G435.js";var k=(o,e)=>e.id;function D(o,e){o&1&&(r(0,"p",6),p(1,"i",8),n());}function U(o,e){o&1&&(r(0,"p",7),c(1,1),n());}function z(o,e){if(o&1){let t=h();r(0,"button",17),M("click",function(){let l=T(t).$implicit,_=d(2);return x(_.selectedLabel.set(l));}),m(1),n();}if(o&2){let t=e.$implicit,i=d(2);y("active",i.selectedLabel()===t),a(),s(t);}}function G(o,e){if(o&1&&(p(0,"img",18),r(1,"div",19),m(2),u(3,"date"),n()),o&2){let t=d(2);P("src",t.beforePhoto().downloadUrl,b),a(2),s(R(3,2,t.beforePhoto().capturedAt));}}function X(o,e){o&1&&(r(0,"div",14),p(1,"i",20),n());}function V(o,e){if(o&1&&(p(0,"img",18),r(1,"div",19),m(2),u(3,"date"),n()),o&2){let t=d(2);P("src",t.afterPhoto().downloadUrl,b),a(2),s(R(3,2,t.afterPhoto().capturedAt));}}function j(o,e){o&1&&(r(0,"div",14),p(1,"i",20),n());}function q(o,e){if(o&1){let t=h();r(0,"button",21),M("click",function(){let l=T(t).$implicit,_=d(2);return x(_.assign(l));}),p(1,"img",22),r(2,"span",23),m(3),u(4,"date"),n()();}if(o&2){let t=e.$implicit,i=d(2);S("data-sel",i.isSel(t.id)),a(),P("src",t.downloadUrl,b),a(2),s(B(4,3,t.capturedAt,"d MMM yy"));}}function H(o,e){if(o&1&&(r(0,"div",9),A(1,z,2,3,"button",10,F),n(),r(3,"div",11)(4,"div",12)(5,"div",13),c(6,2),n(),g(7,G,4,4)(8,X,2,0,"div",14),n(),r(9,"div",12)(10,"div",13),c(11,3),n(),g(12,V,4,4)(13,j,2,0,"div",14),n()(),r(14,"div",15),A(15,q,5,6,"button",16,k),n()),o&2){let t=d();a(),O(t.labels()),a(6),C(t.beforePhoto()?7:8),a(5),C(t.afterPhoto()?12:13),a(3),O(t.filtered());}}var $=class o{portal=v(w);photos=f([]);loading=f(!0);selectedLabel=f("all");beforeId=f(null);afterId=f(null);labels=E(()=>["all",...Array.from(new Set(this.photos().map(e=>e.label))).sort()]);filtered=E(()=>{let e=this.selectedLabel();return[...(e==="all"?this.photos():this.photos().filter(i=>i.label===e))].sort((i,l)=>+new Date(i.capturedAt)-+new Date(l.capturedAt));});beforePhoto=E(()=>{let e=this.filtered();return e.find(t=>t.id===this.beforeId())??(e.length?e[0]:null);});afterPhoto=E(()=>{let e=this.filtered();return e.find(t=>t.id===this.afterId())??(e.length>1?e[e.length-1]:null);});ngOnInit(){this.portal.getBeforeAfterPhotos().subscribe({next:e=>{this.photos.set(e),this.loading.set(!1);},error:()=>this.loading.set(!1)});}assign(e){if(this.beforeId()===e.id){this.beforeId.set(null);return;}if(this.afterId()===e.id){this.afterId.set(null);return;}this.beforeId()?this.afterId.set(e.id):this.beforeId.set(e.id);}isSel(e){return this.beforePhoto()?.id===e?"before":this.afterPhoto()?.id===e?"after":null;}static ɵfac=function(t){return new(t||o)();};static ɵcmp=N({type:o,selectors:[["app-portal-before-after"]],decls:6,vars:1,consts:()=>{let e;e="Before / After";let t;t="No photos yet.";let i;i="Before";let l;return l="After",[e,t,i,l,[1,"pba"],[1,"pba-title"],[1,"pba-muted"],[1,"pba-empty"],[1,"bi","bi-arrow-repeat"],[1,"pba-labels"],[1,"pba-chip",3,"active"],[1,"pba-compare"],[1,"pba-slot"],[1,"pba-cap"],[1,"pba-slot-empty"],[1,"pba-timeline"],[1,"pba-thumb"],[1,"pba-chip",3,"click"],["alt","",1,"pba-img",3,"src"],[1,"pba-date"],[1,"bi","bi-image"],[1,"pba-thumb",3,"click"],["alt","",3,"src"],[1,"pba-tdate"]];},template:function(t,i){t&1&&(r(0,"div",4)(1,"h2",5),c(2,0),n(),g(3,D,2,0,"p",6)(4,U,2,0,"p",7)(5,H,17,2),n()),t&2&&(a(3),C(i.loading()?3:i.photos().length===0?4:5));},dependencies:[I,L],styles:[".pba[_ngcontent-%COMP%]{padding:16px;max-width:900px;margin:0 auto}.pba-title[_ngcontent-%COMP%]{font-size:1.3rem;color:var(--text-primary, #212529);margin-bottom:16px}.pba-muted[_ngcontent-%COMP%], .pba-empty[_ngcontent-%COMP%]{color:var(--text-secondary, #6c757d);padding:24px;text-align:center}.pba-labels[_ngcontent-%COMP%]{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.pba-chip[_ngcontent-%COMP%]{padding:5px 12px;border:1px solid var(--border-color, #dee2e6);background:var(--bg-card, #fff);color:var(--text-secondary, #6c757d);border-radius:999px;cursor:pointer;font-size:.82rem}.pba-chip.active[_ngcontent-%COMP%]{background:var(--color-primary, #03A791);color:#fff;border-color:var(--color-primary, #03A791)}.pba-compare[_ngcontent-%COMP%]{display:flex;gap:16px;max-width:960px;margin:0 auto;align-items:flex-start}@media(max-width:640px){.pba-compare[_ngcontent-%COMP%]{flex-direction:column;max-width:none}}.pba-slot[_ngcontent-%COMP%]{flex:1 1 0;min-width:0;border:1px solid var(--border-color, #dee2e6);border-radius:12px;background:var(--bg-card, #fff);padding:10px;text-align:center}.pba-cap[_ngcontent-%COMP%]{font-size:.78rem;font-weight:600;color:var(--color-primary, #03A791);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}.pba-img[_ngcontent-%COMP%]{width:100%;max-height:50vh;object-fit:contain;border-radius:8px;background:var(--bg-main, #f8f9fa);display:block}.pba-slot-empty[_ngcontent-%COMP%]{width:100%;height:200px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:var(--bg-main, #f8f9fa);color:var(--text-secondary, #adb5bd);font-size:2rem}.pba-date[_ngcontent-%COMP%]{font-size:.8rem;color:var(--text-secondary, #6c757d);margin-top:8px}.pba-timeline[_ngcontent-%COMP%]{display:flex;gap:10px;overflow-x:auto;padding:14px 0 6px}.pba-thumb[_ngcontent-%COMP%]{position:relative;flex:0 0 auto;width:86px;border:2px solid transparent;border-radius:10px;background:var(--bg-card, #fff);padding:0;cursor:pointer;overflow:hidden}.pba-thumb[_ngcontent-%COMP%]   img[_ngcontent-%COMP%]{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}.pba-thumb[data-sel=before][_ngcontent-%COMP%]{border-color:var(--color-primary, #03A791)}.pba-thumb[data-sel=after][_ngcontent-%COMP%]{border-color:var(--color-primary-hover, #02D1AC)}.pba-tdate[_ngcontent-%COMP%]{display:block;font-size:.66rem;color:var(--text-secondary, #6c757d);padding:3px 4px}"]});};export{$ as PortalBeforeAfterComponent};/**i18n:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855*/

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.