PageSourceSearch

https://prod.mechai.app/chunk-B4W2REEH.js

js mechai.app collected 2026-10-02 15:20:21 UTC 10,075 bytes, 1 lines download raw bytes

1import{a as W}from"./chunk-Q3U3JSJ2.js";import{a as q}from"./chunk-WAZ2LIIK.js";import{a as z}from"./chunk-EBM467JV.js";import{d as $}from"./chunk-ACTPIHRX.js";import"./chunk-VWLI3IZW.js";import"./chunk-L4Z2YAOT.js";import"./chunk-JH2GJLLD.js";import"./chunk-44XMFILW.js";import"./chunk-IPDVBT3Q.js";import"./chunk-B6PZ5NPP.js";import"./chunk-DJ3POP45.js";import"./chunk-KGTPPFRX.js";import"./chunk-5UBOG2SS.js";import{ja as K}from"./chunk-VRKJBTE4.js";import{f as Y,j as H}from"./chunk-ZT7BF6R4.js";import"./chunk-S3ZM33RT.js";import"./chunk-FX7OHTES.js";import"./chunk-2FGQMKT5.js";import"./chunk-GNOMKHH2.js";import"./chunk-MIYW5325.js";import"./chunk-FJFH4XCE.js";import"./chunk-T52FVTMS.js";import"./chunk-4I6Y24VE.js";import"./chunk-VHBEXHUY.js";import{e as N}from"./chunk-IXNXTOPZ.js";import"./chunk-GGY6QDTV.js";import"./chunk-3WQEZLC2.js";import"./chunk-DB7AUQFG.js";import"./chunk-GLFTJW2T.js";import"./chunk-BHLMCFFK.js";import"./chunk-NP4PC25X.js";import"./chunk-D6IOGJMO.js";import{m as G}from"./chunk-MKJMCBBH.js";import"./chunk-KKDZHWJ2.js";import"./chunk-RS4X3CMD.js";import"./chunk-7DHSGR33.js";import{i as D}from"./chunk-4KDBBJRG.js";import"./chunk-3SEIXLDK.js";import{b as F,c as M,d as U}from"./chunk-UIEAU6S2.js";import{j as P,k as A,l as V,x as j}from"./chunk-H3Y6JSWE.js";import{Nc as C,Oc as L,Pc as B,Qc as O,Rb as l,Sb as i,Tb as r,Ub as u,Uc as p,Vc as d,Wc as T,bc as S,db as n,gc as E,ic as w,kd as J,mb as m,oa as v,pa as g,qa as f,ra as b,sb as k,tc as y,wc as s,xc as h,yb as _,yc as x,zc as I}from"./chunk-AHLRJ2EW.js";import"./chunk-O7STKFCD.js";import"./chunk-AMJ4GB2S.js";import"./chunk-OXDKANHF.js";import"./chunk-WGJEEJGF.js";import"./chunk-6ACFICIG.js";import"./chunk-K7BHMZHH.js";import"./chunk-FE7444LI.js";import"./chunk-XUHYVR5R.js";var tt=()=>[1,2,3],et=(e,c,t)=>({"tw-bg-mech-surface-2 tw-text-mech-text-muted":e,"tw-bg-mech-primary-50 tw-text-mech-primary":c,"tw-bg-green-100 tw-text-green-700":t}),it=(e,c)=>({done:e,total:c}),nt=e=>({date:e});function rt(e,c){if(e&1){let t=S();
1i(0,"div",5)(1,"span",6),f(),i(2,"svg",7),u(3,"rect",8)(4,"path",9),r()(),b(),i(5,"div")(6,"p",10),s(7),p(8,"translate"),r(),i(9,"p",11),s(10),p(11,"translate"),r()(),i(12,"button",12),E("click",function(){v(t);let o=w();return g(o.upgrade())}),s(13),p(14,"translate"),r()()}e&2&&(n(7),h(d(8,3,"V2.REPAIR_JOBS.LOCKED_TITLE")),n(3),h(d(11,5,"V2.REPAIR_JOBS.LOCKED_BODY")),n(3),x(" ",d(14,7,"V2.REPAIR_JOBS.UPGRADE_CTA")," "))}function ot(e,c){e&1&&u(0,"div",15)}function at(e,c){e&1&&(i(0,"div",13),_(1,ot,1,0,"div",14),r()),e&2&&(n(),l("ngForOf",C(1,tt)))}function st(e,c){if(e&1){let t=S();i(0,"div",5)(1,"div",16),f(),i(2,"svg",17),u(3,"path",18),r()(),b(),i(4,"div")(5,"p",10),s(6),p(7,"translate"),r(),i(8,"p",11),s(9),p(10,"translate"),r()(),i(11,"button",12),E("click",function(){v(t);let o=w();return g(o.goToGuides())}),s(12),p(13,"translate"),r()()}e&2&&(n(6),h(d(7,3,"V2.REPAIR_JOBS.EMPTY_TITLE")),n(3),h(d(10,5,"V2.REPAIR_JOBS.EMPTY_DESC")),n(3),x(" ",d(13,7,"V2.REPAIR_JOBS.BROWSE_GUIDES")," "))}function ct(e,c){if(e&1&&(i(0,"div",31),u(1,"div",32),r()),e&2){let t=w().$implicit,a=w(2);n(),y("width",a.percent(t),"%")}}function pt(e,c){if(e&1){let t=S();i(0,"button",20),E("click",function(){let o=v(t).$implicit,R=w(2);return g(R.openJob(o))}
1),i(1,"div",21),f(),i(2,"svg",22),u(3,"path",18),r()(),b(),i(4,"div",23)(5,"div",24)(6,"span",25),s(7),r(),i(8,"span",26),s(9),r()(),i(10,"p",27),s(11),p(12,"translate"),p(13,"translate"),r(),_(14,ct,2,2,"div",28),r(),f(),i(15,"svg",29),u(16,"path",30),r()()}if(e&2){let t=c.$implicit,a=w(2);n(7),h(t.title),n(),l("ngClass",O(12,et,t.status==="not_started"||t.status==="paused"||t.status==="abandoned",t.status==="in_progress",t.status==="completed")),n(),x(" ",a.statusLabel(t.status)," "),n(2),I(" ",T(12,6,"V2.REPAIR_JOBS.STEPS_PROGRESS",B(16,it,t.stepsCompleted,t.stepsTotal))," \xB7 ",T(13,9,"V2.REPAIR_JOBS.UPDATED_ON",L(19,nt,a.updatedLabel(t)))," "),n(3),l("ngIf",t.stepsTotal>0)}}function lt(e,c){if(e&1&&(i(0,"div",13),_(1,pt,17,21,"button",19),r()),e&2){let t=w();n(),l("ngForOf",t.jobs)("ngForTrackBy",t.trackByJob)}}var dt={not_started:"V2.REPAIR_JOBS.STATUS_NOT_STARTED",in_progress:"V2.REPAIR_JOBS.STATUS_IN_PROGRESS",paused:"V2.REPAIR_JOBS.STATUS_PAUSED",completed:"V2.REPAIR_JOBS.STATUS_COMPLETED",abandoned:"V2.REPAIR_JOBS.STATUS_ABANDONED"},kt=(()=>{class e{constructor(t,a,o,R,Q,X,Z){this.router=t,this.store=a,this.cdr=o,this.translate=R,this.localeService=Q,this.api=X,this.upgradePrompt=Z,this.jobs=[],this.isLoading=!0,this.isLocked=!1,this.subs=[],this.loaded=!1}ngOnInit(){this.subs.push(this.store.select(K.currentProduct).subscribe(t=>{this.isLocked=Y("repair-jobs",H(t?.entitlementName??"")),!this.isLocked&&!this.loaded&&(this.loaded=!0,this.fetchJobs()),this.cdr.markForCheck()}))}ngOnDestroy(){this.subs.forEach(t=>t.unsubscribe())}upgrade(){this.upgradePrompt.showSubscriptionRequired(this.translate.instant("V2.REPAIR_JOBS.FEATURE_LABEL"),"repairjobs")}fetchJobs(){this.store.dispatch(new q),this.api.list(!1).then(t=>{this.jobs=t,this.isLoading=!1,this.cdr.markForCheck()}).catch(()=>{this.jobs=[],this.isLoading=!1,this.cdr.markForCheck()})}statusLabel(t){return this.translate.instant(dt[t]??t)}percent(t){return t.stepsTotal<=0?0:Math.round(t.stepsCompleted/t.stepsTotal*100)}updatedLabel(t){return W(t.updatedAt,this.localeService.getActiveLocale(),{month:"short",day:"numeric"})}openJob(t){this.router.navigate(["/v2/repair-jobs",t.id])}goToGuides(){this.router.navigate(["/v2/repair-guides"])}trackByJob(t,a){return a.id}static{this.\u0275fac=function(a){return new(a||e)(m(D),m(G),m(J),m(F),m(N),m(z),m($))}}static{this.\u0275cmp=k({type:e,selectors:[["app-repair-jobs-list"]],decls:12,vars:10,consts:[[1,"tw-pb-12","tw-space-y-6"],[1,"tw-text-xl","md:tw-text-2xl","tw-font-[800]","tw-text-mech-text","tw-tracking-tight","tw-mb-1"],[1,"tw-text-sm","tw-text-mech-text-muted"],["class","tw-flex tw-flex-col tw-items-center tw-justify-center tw-text-center tw-py-16 tw-gap-4",4,"ngIf"],["class","tw-space-y-3",4,"ngIf"],[1,"tw-flex","tw-flex-col","tw-items-center","tw-justify-center","tw-text-center","tw-py-16","tw-gap-4"],[1,"tw-grid","tw-place-items-center","tw-w-12","tw-h-12","tw-rounded-full","tw-bg-mech-primary/10","tw-text-mech-primary"],["aria-hidden","true","viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round","stroke-linejoin","round",1,"tw-w-6","tw-h-6"],["x","3","y","11","width","18","height","11","rx","2","ry","2"],["d","M7 11V7a5 5 0 0 1 10 0v4"],[1,"tw-text-base","tw-font-[800]","tw-text-mech-text","tw-mb-1"],[1,"tw-text-sm","tw-text-mech-text-muted","tw-max-w-sm"],["type","button",1,"mech-btn-primary",3,"click"],[1,"tw-space-y-3"],["class","tw-h-20 shimmer-line tw-rounded-[20px]",4,"ngFor","ngForOf"],[1,"tw-h-20","shimmer-line","tw-rounded-[20px]"],[1,"tw-w-14","tw-h-14","tw-rounded-2xl","tw-bg-mech-primary/10","tw-flex","tw-items-center","tw-justify-center"],["aria-hidden","true","fill","none","stroke","currentColor","viewBox","0 0 24 24","stroke-width","1.5","stroke-linecap","round","stroke-linejoin","round",1,"tw-w-7","tw-h-7","tw-text-mech-primary"],["d","M14.7 6.3a1 1 0 000 1.4l1.6 1.6a1 1 0 001.4 0l3.77-3.77a6 6 0 01-7.94 7.94l-6.91 6.91a2.12 2.12 0 01-3-3l6.91-6.91a6 6 0 017.94-7.94l-3.76 3.76z"],["type","button","class","tw-w-full tw-text-left tw-bg-mech-surface tw-border tw-border-mech-border tw-rounded-[20px] tw-p-4 tw-flex tw-items-center tw-gap-4 tw-cursor-pointer hover:tw-shadow-lg hover:tw--translate-y-0.5 tw-transition-all tw-duration-300",3,"click",4,"ngFor","ngForOf","ngForTrackBy"],["type","button",1,"tw-w-full","tw-text-left","tw-bg-mech-surface","tw-border","t
1w-border-mech-border","tw-rounded-[20px]","tw-p-4","tw-flex","tw-items-center","tw-gap-4","tw-cursor-pointer","hover:tw-shadow-lg","hover:tw--translate-y-0.5","tw-transition-all","tw-duration-300",3,"click"],[1,"tw-w-11","tw-h-11","tw-rounded-2xl","tw-bg-mech-surface-2","tw-flex","tw-items-center","tw-justify-center","tw-shrink-0"],["aria-hidden","true","fill","none","stroke","currentColor","viewBox","0 0 24 24","stroke-width","2","stroke-linecap","round","stroke-linejoin","round",1,"tw-w-5","tw-h-5","tw-text-mech-primary"],[1,"tw-flex-1","tw-min-w-0"],[1,"tw-flex","tw-items-center","tw-gap-2","tw-flex-wrap","tw-mb-1"],[1,"tw-font-semibold","tw-text-sm","tw-text-mech-text","tw-truncate"],[1,"tw-text-[9px]","tw-font-bold","tw-uppercase","tw-tracking-wider","tw-px-2","tw-py-0.5","tw-rounded-full",3,"ngClass"],[1,"tw-text-xs","tw-text-mech-text-muted"],["class","tw-mt-2 tw-h-1.5 tw-rounded-full tw-bg-mech-surface-2 tw-overflow-hidden",4,"ngIf"],["aria-hidden","true","fill","none","stroke","currentColor","viewBox","0 0 24 24","stroke-width","2",1,"tw-w-4","tw-h-4","tw-text-mech-text-faint","tw-shrink-0"],["stroke-linecap","round","stroke-linejoin","round","d","M9 5l7 7-7 7"],[1,"tw-mt-2","tw-h-1.5","tw-rounded-full","tw-bg-mech-surface-2","tw-overflow-hidden"],[1,"tw-h-full","tw-rounded-full","tw-bg-mech-primary"]],template:function(a,o){a&1&&(i(0,"div",0)(1,"div")(2,"h1",1),s(3),p(4,"translate"),r(),i(5,"p",2),s(6),p(7,"translate"),r()(),_(8,rt,15,9,"div",3)(9,at,2,2,"div",4)(10,st,14,9,"div",3)(11,lt,2,2,"div",4),r()),a&2&&(n(3),x(" ",d(4,6,"V2.REPAIR_JOBS.TITLE")," "),n(3),h(d(7,8,"V2.REPAIR_JOBS.SUBTITLE")),n(2),l("ngIf",o.isLocked),n(),l("ngIf",!o.isLocked&&o.isLoading),n(),l("ngIf",!o.isLocked&&!o.isLoading&&o.jobs.length===0),n(),l("ngIf",!o.isLocked&&!o.isLoading&&o.jobs.length>0))},dependencies:[j,P,A,V,U,M],styles:["[_nghost-%COMP%]{display:block;font-family:Inter,ui-sans-serif,system-ui,sans-serif}.shimmer-line[_ngcontent-%COMP%]{display:block;background:linear-gradient(90deg,var(--color-border-strong) 25%,var(--color-surface-2) 50%,var(--color-border-strong) 75%);background-size:200% 100%;animation:_ngcontent-%COMP%_rjl-shimmer 1.6s ease-in-out infinite}@keyframes _ngcontent-%COMP%_rjl-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}"],changeDetection:0})}}return e})();export{kt as RepairJobsListComponent};

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.