1try{!function(){var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="82cdf43f-d316-4e41-a00a-5d341bce82ae",e._sentryDebugIdIdentifier="sentry-dbid-82cdf43f-d316-4e41-a00a-5d341bce82ae")}()}catch(e){}(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2513],{2238:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});var o=n(23798);n(21462);let r=function(e){let{className:t,grayscale:n,currentColor:r}=e;return(0,o.jsx)("svg",{height:"100%",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:t,children:(0,o.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6.288 5.67089H17.6L17.376 7.85189L11.993 10.1239L11.98 10.1299H17.185L16.591 16.8919L12.002 18.2149L7.388 16.8669L7.09 13.4619H9.372L9.52 15.2259L11.976 15.8379L14.532 15.1279L14.705 12.2859L6.941 12.2619V12.2579L6.934 12.2619L6.76 10.1299L11.993 7.97789L12.299 7.85189H6.561L6.288 5.67089ZM3 1.99989L4.687 20.0559L12 21.9999L19.312 20.0559L21 1.99989H3Z",fill:r?"currentColor":n?"white":"#1E96FF"})})}},13613:(e,t,n)=>{"use strict";n.d(t,{C3:()=>P,DK:()=>E,Ih:()=>w,LJ:()=>T,ME:()=>N,Q:()=>x,Qv:()=>p,XU:()=>g,Xd:()=>f,_:()=>a,_B:()=>d,fV:()=>i,np:()=>y,rw:()=>H,x1:()=>_});var o=n(23798),r=n(69097);let c="font-aeonikFono text-[32px] font-bold leading-[44px]";function a(e){let{children:t,className:n=""}=e;return(0,o.jsx)("h1",{className:(0,r.QP)(c,n),children:t})}a.style=c;let s="font-aeonikFono text-[24px] font-bold leading-[32px]";function i(e){let{children:t,className:n=""}=e;return(0,o.jsx)("h2",{className:(0,r.QP)(s,n),children:t})}i.style=s;let l="font-aeonikFono text-[18px] font-bold leading-[28px]";function d(e){let{children:t,className:n=""}=e;return(0,o.jsx)("h3",{className:(0,r.QP)(l,n),children:t})}d.style=l;let u="font-mimopro text-[18px] leading-[28px]";function p(e){let{children:t,className:n=""}=e;return(0,o.jsx)("h4",{className:(0,r.QP)(u,n),children:t})}p.style=u;let h="font-mimopro text-[16px] leading-[24px]";function f(e){let{children:t,className:n=""}=e;return(0,o.jsx)("p",{className:(0,r.QP)(h,n),children:t})}f.style=h;let m="font-mimopro text-[14px] leading-[22px]";function x(e){let{children:t,className:n=""}=e;return(0,o.jsx)("p",{className:(0,r.QP)(m,n),children:t})}x.style=m;let C="font-mimopro text-[12px] leading-[16px]";function g(e){let{children:t,className:n=""}=e;return(0,o.jsx)("p",{className:(0,r.QP)(C,n),children:t})}g.style=C;let j="font-mimopro text-[14px] font-medium leading-[22px]";function w(e){let{children:t,className:n=""}=e;return(0,o.jsx)("h4",{className:(0,r.QP)(j,n),children:t})}w.style=j;let v="font-mimopro text-[14px] font-medium leading-[22px]";function y(e){let{children:t,className:n=""}=e;return(0,o.jsx)("h4",{className:(0,r.QP)(v,n),children:t})}b.style=v;let L="font-mimopro text-[12px] font-medium leading-[18px]";function b(e){let{children:t,className:n=""}=e;return(0,o.jsx)("h4",{className:(0,r.QP)(L,n),children:t})}b.style=L;let A="font-mimopro text-[16px] font-bold leading-[24px]";function N(e){let{children:t,className:n=""}=e;return(0,o.jsx)("p",{className:(0,r.QP)(A,n),children:t})}N.style=A;let k="font-mimopro text-[14px] font-bold leading-[22px]";function E(e){let{children:t,className:n=""}=e;return(0,o.jsx)("p",{className:(0,r.QP)(k,n),children:t})}E.style=k;let M="font-mimopro text-[16px] font-bold leading-[24px]";function _(e){let{children:t,className:n=""}=e;return(0,o.jsx)("p",{className:(0,r.QP)(M,n),children:t})}_.style=M;let H="font-aeonikFono text-[48px] font-bold leading-[64px]";function P(e){let{children:t,className:n=""}=e;return(0,o.jsx)("h1",{className:(0,r.QP)(H,n),children:t})}function T(e){let{children:t,className:n=""}=e;return(0,o.jsx)("p",{className:(0,r.QP)("font-mimopro tablet:text-[16px] tablet:leading-[24px] text-[14px] leading-[20px]",n),children:t})}P.style=H},28963:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});var o=n(23798);n(21462);let r=function(e){let{className:t,grayscale:n,currentColor:r}=e;return(0,o.jsx)("svg",{height:"100%",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:t,children:(0,o.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12 8C7.453 8 5 6.58 5 6C5 5.42 7.453 4 12 4C16.547 4 19 5.42 19 6C19 6.58 16.547 8 12 8ZM12 3C7.582 3 4 4.343 4 6V9C4 10.657 7.582 12 12 12C16.418 12 20 10.657 20 9V6C20 4.343 16.418 3 12 3ZM4 15.9277V18.9997C4 20.6567 7.582 21.9997 12 21.9997C16.418 21.9997 20 20.6567 20 18.9997V15.9277C18.424 17.2917 15.202 17.9997 12 17.9997C8.798 17.9997 5.576 17.2917 4 15.9277ZM4 13.9997V10.9277C5.576 12.2917 8.798 12.9997 12 12.9997C15.202 12.9997 18.424 12.2917 20 10.9277V13.9997C20 15.6567 16.418 16.9997 12 16.9997C7.582 16.9997 4 15.6567 4 13.9997Z",fill:r?"currentColor":n?"white":"#1E96FF"})})}}
1,34498:(e,t,n)=>{"use strict";n.d(t,{A:()=>j,CM:()=>w,Dl:()=>N,ES:()=>C,I9:()=>h,L5:()=>x,M1:()=>y,WC:()=>b,YH:()=>L,YQ:()=>m,c$:()=>v,cw:()=>A,yK:()=>f,ym:()=>g});var o=n(23798);n(20255);var r=n(84671),c=n(2238),a=n(64155),s=n(69961),i=n(69821),l=n(82738),d=n(28963),u=n(69097),p=n(60407);function h(e){return e.reduce((e,t)=>t.isCompleted?e+t.chapters.length:e+t.chapters.filter(e=>e.isCompleted).length,0)}function f(e,t){return!!e.some(e=>"practiceOptional"===e.type||"challenges"===e.type||"guidedProjectOptional"===e.type)&&(!!t.every(e=>e.isCompleted)||e.some(t=>{if("practiceOptional"===t.type){let n=e.findIndex(e=>e.id===t.id),o=e[n-1];return(null==o?void 0:o.type)==="practiceRequired"&&(null==o?void 0:o.isCompleted)===!0}return!1}))}function m(e){return["course","practiceRequired","guidedProject"].includes(e.type)}function x(e){return e.every(e=>e.isCompleted)}function C(e,t){return e.filter(m).every(e=>e.isCompleted)?"finished":t?"locked by subscription":"in progress"}function g(e,t){if(0===t.length)return -1;let n=-1;for(let o=0;o<e.length;o++)if(t.some(t=>t.lessonId===e[o].id))n=o;else break;return n}function j(e,t){return e.replace(/\n$/,"").substring(0,t)+(e.length>t?"...\n\nLog exceeds maximum output length!":"")}function w(e){return e&&r.gd[e]||[]}function v(e,t,n){let r=[];return e.some(e=>"python"===e.codeLanguage)?r.push((0,o.jsx)(i.A,{grayscale:n,className:(0,u.QP)("h-4 w-4",t)},"python_icon")):e.some(e=>"jsx"===e.codeLanguage)?r.push((0,o.jsx)(l.A,{grayscale:n,className:(0,u.QP)("h-4 w-4",t)},"react_icon")):e.some(e=>"sql"===e.codeLanguage)?r.push((0,o.jsx)(d.A,{grayscale:n,className:(0,u.QP)("h-4 w-4",t)},"sql_icon")):(e.some(e=>"html"===e.codeLanguage)&&r.push((0,o.jsx)(a.A,{grayscale:n,className:(0,u.QP)("h-4 w-4",t)},"html_icon")),e.some(e=>"css"===e.codeLanguage)&&r.push((0,o.jsx)(c.A,{grayscale:n,className:(0,u.QP)("h-4 w-4",t)},"css_icon")),e.some(e=>"javascript"===e.codeLanguage)&&r.push((0,o.jsx)(s.A,{grayscale:n,className:(0,u.QP)("h-4 w-4",t)},"javascript_icon"))),r}function y(e){return"typescript"===e?"ts":"csv"===e||"text"===e?"text":e}function L(e){return[...new Set(e.map(e=>e.name.split(".").at(-1)).filter(e=>void 0!==e))]}function b(e){let{tutorial:t,previousTutorial:n,subscriptionStatus:o,sectionIndex:r,tutorialIndex:c,debugAllTutorialsUnlocked:a}=e;return t.isCompleted?{state:"finished"}:a?{state:"in progress"}:"guidedProject"===t.type&&!function(e){let{subscriptionStatus:t}=e;return"full web access"===(0,p.ts)(t)}({subscriptionStatus:o})?{state:"locked by subscription",lockReason:"max"}:"free content access"===(0,p.ts)(o)&&(r>0||c>0)?{state:"locked by subscription",lockReason:"subscription"}:!n||n.isCompleted?(t.type,{state:"in progress"}):{state:"locked by progress",lockReason:"progress"}}function A(e){let{tutorial:t,subscriptionStatus:n,isMandatoryContentSectionFinished:o,debugAllTutorialsUnlocked:r}=e;return t.isCompleted?{state:"finished"}:"full web access"!==(0,p.ts)(n)?{state:"locked by subscription",lockReason:"max"}:r||o?{state:"in progress"}:{state:"locked by progress",lockReason:"progress"}}function N(e){return e.sections.filter(function(t){return t.tutorialIds.every(function(t){let n=e.tutorials.find(function(e){return e.id===t});return(null==n?void 0:n.isCompleted)||(null==n?void 0:n.type)==="guidedProjectOptional"||(null==n?void 0:n.type)==="practiceOptional"||(null==n?void 0:n.type)==="challenges"})})}},42975:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});var o=n(23798);n(21462);let r=function(e){return(0,o.jsx)("svg",{height:"100%",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,o.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4.75 21H19.25C20.765 21 22 19.765 22 18.25V8.25C22 6.735 20.765 5.5 19.25 5.5H12.06L9.56 3H4.75C3.235 3 2 4.235 2 5.75V18.25C2 19.765 3.235 21 4.75 21ZM3.5 5.75C3.5 5.06 4.06 4.5 4.75 4.5H8.94L11.44 7H19.25C19.94 7 20.5 7.56 20.5 8.25V18.25C20.5 18.94 19.94 19.5 19.25 19.5H4.75C4.06 19.5 3.5 18.94 3.5 18.25V5.75ZM9.86497 15.925C10.11 16.17 10.43 16.29 10.75 16.29C11.07 16.29 11.39 16.17 11.635 15.925L16.78 10.78L15.72 9.71997L10.75 14.69L8.77997 12.72L7.71997 13.78L9.86497 15.925Z",fill:"currentColor"})})}},46047:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});var o=n(23798);n(21462);let r=function(e){return(0,o.jsx)("svg",{width:"100%",height:"100%",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,o.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15.8838 7.8838L8.88376 14.8838C8.63976 15.1278 8.32076 15.2498 7.99976 15.2498C7.67976 15.2498 7.36076 15.1278 7.11576 14.8838L4.11576 11.8838C3.62776 11.3958 3.62776 10.6048 4.11576 10.1158C4.60476 9.6278 5.39576 9.6278 5.88376 10.1158L7.99976 12.2328L14.1158 6.1158C14.6048 5.6278 15.3958 5.6278 15.8838 6.1158C16.3718 6.6048 16.3718 7.3958 15.8838 7.8838ZM9.99976 -0.000198364C4.47776 -0.000198364 -0.000244141 4.4778 -0.000244141 9.9998C-0.000244141 15.5228 4.47776 19.9998 9.99976 19.9998C15.5228 19.9998 19.9998 15.5228 19.9998 9.9998C19.9998 4.4778 15.5228 -0.000198364 9.99976 -0.000198364Z",fill:"currentColor"})})}},49391:(e,t,n)=>{"use strict";n.d(t,{n:()=>i});var o=n(25811),r=n(8032),c=n(20241),a=n(43649),s=n(60407);function i(){let e=(0,r.useUser)(),{data:t,isError:n,isLoading:i}=(0,o.I)({...(0,a.Kk)(e),select:c.vt,enabled:!!(null==e?void 0:e.id)}),l=n?"not active":t?(0,s.uS)(t):"loading";return{subscriptions:null!=t?t:[],subscriptionStatus:l,webAccess:(0,s.ts)(l),isError:n,isLoading:i}}},53482:(e,t,n)=>{"use strict";n.d(t,{A:()=>d});var o=n(23798),r=n(61700),c=n(91354),a=n(89581),s=n(1518),i=n(86829),l=n(21462);function d(e){let{href:t,prefetch:n,isLoading:d,label:u,mascotComponentSlot:p,onClick:h,secondaryButtonComponentSlot:f}=e,m=(0,i.c)("webApp"),[x,C]=(0,l.useState)(void 0);(0,l.useEffect)(()=>{C((0,s.zx)()?"â+â":"Ctrl+â")},[]);let g=(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("span",{className:"".concat(a.Qm," text-pretty"),children:null!=u?u:m("pages.chapterEnd.common.actions.continue")}),(0,o.jsx)("span",{className:"".concat(a.JE," opacity-60"),children:x})]});return(0,o.jsxs)("div",{className:"bg-product2-background-primary border-product2-border-secondary fixed bottom-0 left-0 z-20 flex h-24 w-full items-center justify-center border-t px-6","data-testid":"chapter-end-navigation",children:[p?(0,o.jsx)("div",{className:"absolute right-4 bottom-full",children:p}):null,(0,o.jsxs)("div",{className:"flex h-full max-w-[1440px] grow items-center justify-end space-x-4",children:[f,(0,o.jsx)(c.L,{disabled:null!=d&&d,hotkeys:[{hotkey:"Enter",metaKey:!0},{hotkey:"Enter"}],children:void 0!==t?(0,o.jsx)(r.A,{variant:"primary",size:"large",href:t,prefetch:n,className:"min-w-[160px]",children:g}):(0,o.jsx)(r.A,{variant:"primary",size:"large",type:"button",className:"min-w-[160px]",isLoading:d,onClick:h,children:g})})]})]})}},64155:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});var o=n(23798);n(21462);let r=function(e){let{className:t,grayscale:n,currentColor:r}=e;return(0,o.jsx)("svg",{width:"100%",height:"100%",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:t,children:(0,o.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6.34376 5.67969H11.9898H11.9998H17.6358L17.4278 7.88769H11.9998H11.9898H8.81476L9.02276 10.1477H11.9898H11.9998H17.2248L16.6048 16.9247L11.9998 18.1757V18.1887L7.37576 16.9247L7.05876 13.4577H9.32076L9.47976 15.2237L11.9948 15.8827L14.5058 15.2237L14.7688 12.3547H11.9898V12.3497H6.95876L6.34376 5.67969ZM2.99976 1.99969L4.63676 20.0067L11.9858 21.9997L19.3628 19.9967L20.9998 2.00069V1.99969H2.99976Z",fill:r?"currentColor":n?"white":"#FA965A"})})}},66359:(e,t,n)=>{"use strict";n.d(t,{$s:()=>h,Gc:()=>i,co:()=>d,kf:()=>s,lH:()=>l,n8:()=>p,vj:()=>a,xx:()=>u});var o=n(83241),r=n(89240),c=n(1518);async function a(e){let t=await (0,r.vq)(e),n=await (0,o.l)("".concat((0,c.$_)(!1),"/code"),{method:"GET",headers:{Authorization:"Bearer ".concat(t)}});if(!n.ok){let{message:e}=await n.json();throw Error("Could not fetch projects - ".concat(n.statusText," (").concat(n.status,")").concat(e?": ".concat(e):""))}return(await n.json()).map(e=>({...e,type:"project"}))}async function s(e,t){let n=await (0,r.vq)(e),a=await (0,o.l)("".concat((0,c.$_)(!1),"/code/").concat(t),{method:"GET",headers:{Authorization:"Bearer ".concat(n)}});if(!a.ok){let{message:e}=await a.json();throw Error("Could not fetch project with id ".concat(t," - ").concat(a.statusText," (").concat(a.status,")").concat(e?": ".concat(e):""))}return await a.json()}async function i(e){let{user:t,projectName:n,files:a,signal:s}=e,i=await (0,r.vq)(t),l=await (0,o.l)("".concat((0,c.$_)(!1),"/code"),{method:"POST",body:JSON.stringify({name:n,files:a}),headers:{Authorization:"Bearer ".concat(i),"Content-Type":"application/json"},signal:s});if(!l.ok){let{message:e}=await l.json();throw Error("Could not create project - ".concat(l.statusText," (").concat(l.status,")").concat(e?": ".concat(e):""))}return await l.json()}async function l(e){let{user:t,projectName:n,files:a,sourceTutorialId:s,sourceTutorialVersion:i}=e,l=await (0,r.vq)(t),d=await (0,o.l)("".concat((0,c.$_)(!1),"/code"),{method:"POST",body:JSON.stringify({name:n,files:a,sourceTutorialId:s,sourceTutorialVersion:i}),headers:{Authorization:"Bearer ".concat(l),"Content-Type":"application/json"}});if(!d.ok){let{message:e}=await d.json();throw Error("Could not create projects - ".concat(d.statusText," (").concat(d.status,")").concat(e?": ".concat(e):""))}return await d.json()}async function d(e,t){let n=await (0,r.vq)(e),a=await (0,o.l)("".concat((0,c.$_)(!1),"/code/").concat(t.id),{method:"PATCH",body:JSON.stringify(t),headers:{Authorization:"Bearer ".concat(n),"Content-Type":"application/json"}});if(!a.ok){let{message:e}=await a.json();throw Error("Could not update project name of project with id ".concat(t.id," - ").concat(a.statusText," (").concat(a.status,")").concat(e?": ".concat(e):""))}return await a.json()}async function u(e,t){let n=await (0,r.vq)(e),a=await (0,o.l)("".concat((0,c.$_)(!1),"/code/").concat(t),{method:"DELETE",headers:{Authorization:"Bearer ".concat(n)}});if(!a.ok){let{message:e}=await a.json();throw Error("Could not delete project with id ".concat(t," - ").concat(a.statusText," (").concat(a.status,")").concat(e?": ".concat(e):""))}}async function p(e,t){let n=await (0,r.vq)(e),a=await (0,o.l)("".concat((0,c.$_)(!1),"/code/").concat(t.id,"/remixes"),{method:"POST",body:JSON.stringify({name:"Copy of ".concat(t.name)}),headers:{Authorization:"Bearer ".concat(n),"Content-Type":"application/json"}});if(!a.ok){let{message:e}=await a.json();throw Error("Could not duplicate project with id ".concat(t.id," - ").concat(a.statusText," (").concat(a.status,")").concat(e?": ".concat(e):""))}return await a.json()}async function h(e,t){let n=await (0,r.vq)(e),a=await (0,o.l)("".concat((0,c.$_)(!1),"/code/shared/").concat(t),{method:"GET",headers:{Authorization:"Bearer ".concat(n)}});if(!a.ok){if(404===a.status)return{type:"project not found"};if(403===a.status)return{type:"project found but private"};let{message:e}=await a.json();throw Error("Could not fetch project with id ".concat(t," - ").concat(a.statusText," (").concat(a.status,")").concat(e?": ".concat(e):""))}return{type:"project found",project:await a.json()}}}
1,67523:(e,t,n)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/web/project-done",function(){return n(84741)}])},69821:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});var o=n(23798);n(21462);let r=function(e){let{className:t,grayscale:n,currentColor:r,...c}=e;return(0,o.jsxs)("svg",{height:"100%",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:t,...c,children:[(0,o.jsx)("path",{d:"M11.93 2C6.85 2 7.17 4.21 7.17 4.21V6.5h4.85v.69H5.25S2 6.82 2 11.97s2.84 4.97 2.84 4.97h1.69v-2.39s-.09-2.85 2.79-2.85h4.81s2.7.04 2.7-2.62V4.67S17.24 2 11.93 2zM8.39 4.42c0-.49.39-.88.87-.88s.87.39.87.87c0 .49-.39.88-.87.88a.87.87 0 01-.87-.87z",fill:r?"currentColor":n?"white":"#1E96FF"}),(0,o.jsx)("path",{d:"M19.16 7.06h.04c.33 0 2.8.16 2.8 4.95v.03c0 5.14-3.25 4.77-3.25 4.77h-6.77v.69h4.85v2.29S17.15 22 12.08 22c-5.31 0-4.9-2.67-4.9-2.67v-4.41c0-2.67 2.7-2.62 2.7-2.62h4.81c2.88 0 2.79-2.85 2.79-2.85V7.06h1.69-.01zm-5.29 12.52c0 .48.39.87.87.87s.87-.39.87-.88-.39-.88-.87-.88-.87.39-.87.88v.01z",fill:r?"currentColor":n?"white":"#FFBE09"})]})}},69961:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});var o=n(23798);n(21462);let r=function(e){let{className:t,grayscale:n,currentColor:r}=e;return(0,o.jsx)("svg",{height:"100%",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:t,children:(0,o.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3 21H21V3H3V21ZM12.796 17.039C12.796 18.791 11.769 19.589 10.271 19.589C8.917 19.589 8.132 18.888 7.732 18.042L9.11 17.209C9.376 17.68 9.618 18.078 10.197 18.078C10.754 18.078 11.104 17.861 11.104 17.016V11.264H12.796V17.039ZM16.795 19.589C15.225 19.589 14.21 18.84 13.714 17.861L15.092 17.063C15.454 17.655 15.926 18.091 16.759 18.091C17.46 18.091 17.907 17.74 17.907 17.257C17.907 16.677 17.447 16.472 16.675 16.133L16.252 15.952C15.031 15.433 14.222 14.78 14.222 13.402C14.222 12.134 15.188 11.167 16.698 11.167C17.774 11.167 18.547 11.542 19.104 12.521L17.786 13.366C17.496 12.847 17.182 12.642 16.698 12.642C16.203 12.642 15.889 12.955 15.889 13.366C15.889 13.874 16.203 14.079 16.928 14.394L17.351 14.574C18.789 15.19 19.599 15.819 19.599 17.232C19.599 18.755 18.402 19.589 16.795 19.589Z",fill:r?"currentColor":n?"white":"#FFDA1B"})})}},78258:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});var o=n(23798);n(21462);let r=function(e){return(0,o.jsx)("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,o.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M10.6665 10.6666H9.6665C9.6665 9.72325 10.1732 9.02992 10.6665 8.35992L10.6667 8.35964C11.18 7.65641 11.6665 6.98979 11.6665 5.99992C11.6665 3.97659 10.0232 2.33325 7.99984 2.33325C5.9765 2.33325 4.33317 3.97659 4.33317 5.99992C4.33317 6.98979 4.81971 7.65641 5.33297 8.35964L5.33317 8.35992L5.33937 8.3684C5.82746 9.03577 6.33317 9.72723 6.33317 10.6666H5.33317C5.33317 10.0499 4.95984 9.53992 4.5265 8.94992L4.526 8.94923C3.96612 8.18273 3.33317 7.31619 3.33317 5.99992C3.33317 3.42659 5.4265 1.33325 7.99984 1.33325C10.5732 1.33325 12.6665 3.42659 12.6665 5.99992C12.6665 7.31659 12.0332 8.18659 11.4732 8.94992C11.0398 9.53992 10.6665 10.0499 10.6665 10.6666ZM5.99984 13.6666V14.6666H9.99984V13.6666H5.99984ZM5.33317 12.6666V11.6666H10.6665V12.6666H5.33317ZM13.8137 1.47781L12.4797 2.81189L13.1868 3.519L14.5208 2.18492L13.8137 1.47781ZM1.47811 2.18644L2.18522 1.47934L3.51929 2.81341L2.81218 3.52052L1.47811 2.18644ZM15.3332 5.66658H13.6665V6.66658H15.3332V5.66658ZM0.666504 5.66658H2.33317V6.66658H0.666504V5.66658ZM2.8143 8.81143L1.48022 10.1455L2.18733 10.8526L3.52141 9.51854L2.8143 8.81143ZM12.4784 9.52039L13.1855 8.81328L14.5196 10.1474L13.8125 10.8545L12.4784 9.52039Z",fill:"currentColor"})})}},82738:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});var o=n(23798);n(21462);let r=function(e){let{className:t,grayscale:n,currentColor:r}=e;return(0,o.jsxs)("svg",{height:"100%",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",className:t,children:[(0,o.jsx)("path",{d:"M23 11.8C23 10.34 21.17 8.96 18.38 8.1C19.03 5.25 18.74 2.98 17.47 2.25C17.18 2.08 16.84 2 16.47 2C15.24 2 13.63 2.87 11.99 4.4C10.36 2.88 8.74 2.02 7.51 2.02C7.13 2.02 6.79 2.1 6.5 2.27C5.24 3 4.96 5.27 5.61 8.11C2.82 8.97 1 10.35 1 11.8C1 13.26 2.83 14.64 5.62 15.5C4.97 18.35 5.26 20.62 6.53 21.35C6.82 21.52 7.16 21.6 7.54 21.6C8.77 21.6 10.39 20.72 12.02 19.2C13.65 20.72 15.27 21.59 16.5 21.59C16.88 21.59
117.22 21.51 17.51 21.34C18.77 20.61 19.05 18.35 18.4 15.51C21.18 14.63 23 13.25 23 11.8ZM16.47 3.01C16.68 3.01 16.84 3.05 16.98 3.13C17.59 3.48 17.85 4.81 17.65 6.52C17.6 6.94 17.52 7.39 17.42 7.84C16.54 7.62 15.58 7.46 14.57 7.35C13.96 6.52 13.34 5.77 12.7 5.11C14.17 3.75 15.53 3.01 16.47 3.01ZM8.03 14.1C8.24 14.46 8.46 14.81 8.68 15.15C8.04 15.06 7.43 14.94 6.84 14.8C7.01 14.22 7.21 13.63 7.45 13.03C7.62 13.38 7.82 13.74 8.03 14.1ZM6.82 8.81C7.41 8.67 8.03 8.55 8.67 8.46C8.45 8.8 8.23 9.15 8.02 9.52C7.81 9.88 7.62 10.24 7.44 10.6C7.2 9.99 6.99 9.39 6.82 8.81ZM7.96 11.81C8.24 11.21 8.55 10.61 8.89 10.02C9.24 9.42 9.6 8.85 9.97 8.31C10.64 8.25 11.32 8.22 12 8.22C12.68 8.22 13.35 8.25 14.02 8.31C14.39 8.84 14.76 9.41 15.11 10.01C15.45 10.6 15.76 11.19 16.04 11.79C15.76 12.39 15.45 12.99 15.11 13.58C14.76 14.19 14.4 14.76 14.03 15.29C13.36 15.35 12.68 15.38 12 15.38C11.32 15.38 10.65 15.35 9.98 15.29C9.61 14.76 9.24 14.19 8.89 13.59C8.56 13.01 8.25 12.41 7.96 11.81ZM15.97 14.08C16.18 13.72 16.37 13.36 16.55 13C16.79 13.6 17 14.2 17.17 14.78C16.58 14.92 15.96 15.04 15.32 15.14C15.55 14.8 15.77 14.45 15.97 14.08ZM15.97 9.5C15.76 9.15 15.54 8.8 15.32 8.45C15.96 8.54 16.57 8.66 17.16 8.8C16.99 9.38 16.79 9.97 16.55 10.57C16.37 10.22 16.18 9.86 15.97 9.5ZM13.23 7.25C12.83 7.23 12.41 7.22 12 7.22C11.58 7.22 11.16 7.23 10.75 7.25C11.15 6.73 11.57 6.25 11.98 5.82C12.4 6.24 12.82 6.72 13.23 7.25ZM7 3.14C7.13 3.06 7.3 3.02 7.51 3.02C8.44 3.02 9.81 3.76 11.28 5.11C10.65 5.77 10.02 6.52 9.43 7.35C8.41 7.45 7.45 7.62 6.57 7.84C6.47 7.39 6.39 6.96 6.34 6.54C6.13 4.83 6.39 3.5 7 3.14ZM5.87 14.53C5.42 14.39 5 14.24 4.61 14.07C3.02 13.39 2 12.5 2 11.8C2 11.1 3.03 10.2 4.61 9.53C5 9.37 5.42 9.22 5.85 9.08C6.11 9.96 6.44 10.87 6.86 11.81C6.45 12.74 6.12 13.65 5.87 14.53ZM7.53 20.6C7.33 20.6 7.16 20.56 7.02 20.48C6.41 20.13 6.15 18.8 6.35 17.08C6.4 16.66 6.48 16.21 6.58 15.76C7.46 15.98 8.42 16.14 9.43 16.25C10.04 17.08 10.66 17.83 11.3 18.49C9.83 19.85 8.46 20.6 7.53 20.6ZM12.01 17.79C11.59 17.36 11.18 16.88 10.76 16.36C11.16 16.38 11.58 16.39 11.99 16.39C12.41 16.39 12.83 16.38 13.24 16.36C12.84 16.88 12.42 17.36 12.01 17.79ZM17 20.46C16.87 20.54 16.69 20.58 16.48 20.58C15.55 20.58 14.18 19.84 12.71 18.49C13.34 17.83 13.97 17.08 14.56 16.25C15.57 16.14 16.53 15.98 17.41 15.76C17.51 16.21 17.59 16.65 17.64 17.06C17.87 18.77 17.61 20.11 17 20.46ZM19.39 14.07C19 14.24 18.58 14.38 18.15 14.52C17.89 13.64 17.56 12.73 17.14 11.79C17.55 10.86 17.88 9.95 18.14 9.07C18.58 9.21 19.01 9.36 19.4 9.53C20.98 10.21 22 11.1 22 11.8C22 12.5 20.97 13.4 19.39 14.07Z",fill:r?"currentColor":n?"white":"#61DAFB"}),(0,o.jsx)("path",{d:"M12 13.85C13.1321 13.85 14.05 12.9322 14.05 11.8C14.05 10.6678 13.1321 9.75 12 9.75C10.8678 9.75 9.94995 10.6678 9.94995 11.8C9.94995 12.9322 10.8678 13.85 12 13.85Z",fill:r?"currentColor":n?"white":"#61DAFB"})]})}},84741:(e,t,n)=>{"use strict";n.r(t),n.d(t,{ProjectDonePage:()=>V,__N_SSP:()=>Z,default:()=>R});var o=n(23798),r=n(21462),c=n(11522);let a={src:"/_next/static/media/mascotWithOpenLaptop.6c3eb286.png",height:720,width:900,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAGCAMAAADJ2y/JAAAAVFBMVEV1UtGObdyLaOQ7P285PGxkcI49PW5MaXFyXrK8vdhKSn8xMVjBw9SCiaZVUY7T1O6+v9rO0etER32IkatyeJm6vdlHRYA8P3IgRm6Tl7Hj5PhYXYl0UPLTAAAAF3RSTlMLQSHS0cKiADPZhhrAYtLoqd7epd6qgfg+kaAAAAAJcEhZcwAAITgAACE4AUWWMWAAAAA4SURBVHicBcEHAoAgDACxA4G2gnsw/P8/TRCyaJgC87vE+NXKuV6t3SmhWno3L+COMTbnER6zHX47eQImxw/MdgAAAABJRU5ErkJggg==",blurWidth:8,blurHeight:6};var s=n(41072),i=n.n(s),l=n(13613),d=n(60781),u=n(84671),p=n(61700),h=n(71062),f=n(66359),m=n(75266),x=n(42975),C=n(1518),g=n(2891),j=n(11207),w=n(68101),v=n(34498),y=n(20255),L=n(89581),b=n(78258),A=n(46047),N=n(86829),k=n(53482);function E(e){var t;let{user:n,webAccess:s,projectCount:E,tutorial:_,filesForProjectFork:H}=e,P=(0,N.c)("webApp"),T=(0,c.useRouter)(),{trackId:Z,sectionIndex:V}=T.query,R=T.query.originUrl,[S,D]=(0,r.useState)(!1),[B,Q]=(0,r.useState)(!1),{addNotification:F}=(0,m.Y)(),O=(0,g.o$)(),{RiveComponent:I}=(0,w.useRive)({src:"/rive/daily-goal.riv",stateMachines:"state3",autoplay:!0}),z=(0,v.CM)(_.id),q=z.length>0,U=z.map((e,t)=>{let n="pages.chapterEnd.projectDone.additionalTasks.".concat(_.id,".").concat(t);return P.has(n)?P(n):e}),K=(0,h.n)({mutationFn:e=>{let{user:t,filesForProjectFork:n}=e;return(0,f.lH)({user:t,projectName:"".concat((0,y.u5)(_.title)," copy"),files:n,sourceTutorialId:_.id,sourceTutorialVersion:_.version})},onError:()=>{D(!1)}}),J=null==(t=K.error)?void 0:t.message,$=R||(Z&&V?(0,d.Tv)(Number(Z),Number(V)):(0,d.wC)()),G=E<u.Ch,X="full web access"===s||G?"fork project":"upgrade to max",W="fork project"===X?P("pages.chapterEnd.projectDone.actions.continueBuilding"):P("pages.chapterEnd.projectDone.actions.upgradeToMax"),Y=(0,o.jsx)(p.A,{variant:"secondary",size:"large",type:"button",className:"min-w-[180px]",onClick:function(){B||S||(Q(!0),"node"!==_.codeLanguage&&("full web access"===s||G)?K.mutate({user:n,filesForProjectFork:H},{onSuccess:e=>{(0,j.hm)(O,{creation_source:"automatic_copy",project_id:e.id.toString(),source_tutorial_id:_.id}
1),F({id:(0,C.R2)(),forRoute:"section-details-page",message:P("pages.chapterEnd.projectDone.projectSavedNotification",{projectTitle:(0,y.u5)(_.title)}),icon:(0,o.jsx)(x.A,{}),link:"/web/build",type:"project forked successful"})},onSettled:()=>{T.push($)}}):T.push($))},isLoading:B,children:P("pages.chapterEnd.projectDone.actions.backToLearning")});function ee(){B||S||(D(!0),"fork project"===X?K.mutate({user:n,filesForProjectFork:H},{onSuccess:e=>{(0,j.hm)(O,{creation_source:"continue_project_flow_chapter_end",project_id:e.id.toString(),source_tutorial_id:_.id}),T.push((0,d.L_)(e.id,{type:"section details",sectionIndex:Number(V),trackId:Number(Z)}))}}):T.push((0,d.OD)({redirectUrl:T.asPath,trackingReferer:"web_customise_project"})))}return q?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("div",{className:"text-product-text-primary-dark flex min-h-full items-center justify-center px-6 pt-10 pb-34",children:(0,o.jsxs)("div",{className:"relative flex w-full max-w-[480px] flex-col items-center space-y-6",children:[(0,o.jsxs)("div",{className:"flex w-full flex-col items-center space-y-6",children:[(0,o.jsxs)(l._,{className:"max-w-[440px] text-center",children:[P("pages.chapterEnd.projectDone.headingLineOne"),(0,o.jsx)("br",{}),P("pages.chapterEnd.projectDone.headingLineTwo")]}),(0,o.jsxs)("section",{className:"bg-product2-background-secondary w-full rounded-xl",children:[(0,o.jsxs)("p",{className:"flex items-center ".concat(L.Vc," border-product2-border-secondary text-product2-content-secondary space-x-2 border-b p-3"),children:[(0,o.jsx)(b.A,{className:"h-4 w-4"}),(0,o.jsx)("span",{children:P("pages.chapterEnd.projectDone.ideasForNextSteps")})]}),(0,o.jsx)("ul",{className:"flex flex-col space-y-2 p-4",children:U.map((e,t)=>(0,o.jsxs)("li",{className:"flex items-center space-x-2",children:[(0,o.jsx)(A.A,{className:"text-product2-content-secondary h-4 w-4 shrink-0"}),(0,o.jsx)("span",{className:"".concat(L.i2," text-product2-content-primary"),children:e})]},t))})]})]}),(0,o.jsx)("div",{className:"absolute -bottom-12",children:J&&(0,o.jsx)(M,{t:P})})]})}),(0,o.jsx)(k.A,{isLoading:S,label:W,mascotComponentSlot:(0,o.jsx)(I,{className:"tablet:block hidden size-60"}),onClick:ee,secondaryButtonComponentSlot:Y})]}):(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("div",{className:"text-product-text-primary-dark flex min-h-full items-center justify-center px-6 pt-10 pb-34",children:(0,o.jsxs)("div",{className:"max-w-appContent relative flex flex-col items-center space-y-6",children:[(0,o.jsx)(i(),{className:"w-full max-w-[340px]",src:a,alt:P("pages.chapterEnd.projectDone.illustrationAlt")}),(0,o.jsxs)("div",{className:"flex max-w-[440px] flex-col space-y-2",children:[(0,o.jsxs)(l._,{className:"text-center",children:[P("pages.chapterEnd.projectDone.headingLineOne"),(0,o.jsx)("br",{}),P("pages.chapterEnd.projectDone.headingLineTwo")]}),(0,o.jsx)(l.Qv,{className:"text-product2-content-secondary text-center",children:"fork project"===X?P("pages.chapterEnd.projectDone.forkProjectDescription"):P("pages.chapterEnd.projectDone.upgradeDescription")})]}),(0,o.jsx)("div",{className:"absolute -bottom-12",children:J&&(0,o.jsx)(M,{t:P})})]})}),(0,o.jsx)(k.A,{isLoading:S,label:W,onClick:ee,secondaryButtonComponentSlot:Y})]})}function M(e){let{t}=e;return(0,o.jsxs)("p",{className:"text-product2-accent-error text-center ".concat(L.Vc),children:[t("pages.chapterEnd.projectDone.error.heading"),(0,o.jsx)("br",{}),t("pages.chapterEnd.projectDone.error.contactPrefix")," ",(0,o.jsx)("a",{href:"mailto:".concat(u.Te),className:"underline",children:u.Te})," ",t("pages.chapterEnd.projectDone.error.contactSuffix")]})}var _=n(1639),H=n(8032),P=n(25811),T=n(49391),Z=!0;function V(e){let{tutorial:t,filesForProjectFork:n}=e,r=(0,H.useUser)(),{data:c}=(0,P.I)({queryKey:[_.Md],queryFn:()=>(0,f.vj)(r)}),{subscriptionStatus:a,webAccess:s}=(0,T.n)();return r&&c&&"loading"!==a?(0,o.jsx)(E,{user:r,projectCount:c.length,webAccess:s,tutorial:t,filesForProjectFork:n}):null}let R=(0,H.withUser)({whenUnauthedAfterInit:H.AuthAction.REDIRECT_TO_LOGIN})(V)},89581:(e,t,n)=>{"use strict";n.d(t,{Eg:()=>d,JE:()=>c,Lm:()=>p,Qm:()=>x,Sv:()=>f,Ty:()=>m,Vc:()=>o,_T:()=>l,cp:()=>h,dx:()=>u,hA:()=>a,i2:()=>r,ke:()=>C,ky:()=>s,lB:()=>i});let o="font-mimopro font-normal text-xs",r="font-mimopro font-normal text-sm",c="font-mimopro font-normal text-base",a="font-mimopro font-normal text-lg",s="font-mimopro font-medium text-xs",i="font-mimopro font-medium text-sm",l="font-mimopro font-medium text-base",d="font-mimopro font-medium text-lg",u="font-mimopro font-medium text-xl",p="font-mimopro font-medium text-2xl",h="font-mimopro font-medium text-3xl",f="font-mimopro font-bold text-xs",m="font-mimopro font-bold text-sm",x="font-mimopro font-bold text-base",C="font-mimopro font-bold text-lg"}
1,91354:(e,t,n)=>{"use strict";n.d(t,{L:()=>s});var o=n(23798),r=n(21462);let c=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2?arguments[2]:void 0,{capture:o=!1,preventDefault:c=!1}=n||{};(0,r.useEffect)(()=>{function t(t){e.forEach(e=>{let{metaKey:n,shiftKey:o,key:r,handler:a}=e,s=t.key===r,i=t.ctrlKey||t.metaKey,l=t.shiftKey;(!r||s)&&n===i&&o===l&&(c&&t.preventDefault(),a())})}return document.addEventListener("keydown",t,o),()=>document.removeEventListener("keydown",t,o)},t)};var a=n(69097);function s(e){let{disabled:t,children:n,hotkeys:s,className:i,options:l}=e,d=(0,r.useRef)(null);return c(s.map(e=>{let{hotkey:n,metaKey:o=!1,shiftKey:r=!1}=e;return{metaKey:o,shiftKey:r,key:n,handler:()=>{var e;t||null==(e=d.current)||e.click()}}}),[t],l),(0,o.jsx)("div",{className:(0,a.QP)("relative",i),children:r.cloneElement(n,{ref:function(e){d.current=e}})})}}},e=>{e.O(0,[4479,1974,636,6593,8792],()=>e(e.s=67523)),_N_E=e.O()}]);
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.