PageSourceSearch

https://maxveilleux.com/_nuxt/B9ma8j8c.js

js maxveilleux.com collected 2026-10-06 13:26:08 UTC 3,890 bytes, 1 lines download raw bytes

1import O from"./BIyOvT8l.js";import{L as U,v as G,r as h,f as P,o as R,D as W,C as a,h as n,I as e,x as q,a0 as v,M as f,u as l,E as c,G as i,H as r,B as J}from"./CflgWLOz.js";import"./DlAUqK2U.js";const K={class:"header__nav"},Q={class:"header__nav__bio"},X={class:"header__nav__projects"},Y={class:"header__nav__awards"},Z={class:"header__nav__contact"},ee={class:"header__nav__lang"},te=["href"],oe={class:"header__nav__toggle"},ce={__name:"Header",setup(ae){const t=J(),{watch:S,unwatch:H,scrollTo:C,start:m,stop:T}=U(),{locale:$}=G(),g=h(null),d=h(null),u=h(!1),_=h(!1),y=h(null),w=o=>{m();const p=o.target.getAttribute("data-section");C({to:"#"+p,duration:t.$viewport.width.value<=900&&p!=="home"?0:1.2,lerp:t.$viewport.width.value<=900&&p!=="home"?0:.1,offset:p=="projects"&&t.$viewport.width.value<=900?0:-80}),k()},k=()=>{document.body.classList.remove("nav-opened"),m()},V=()=>{document.body.classList.contains("contact-opened")?(document.body.classList.remove("contact-opened"),u.value=!1):(document.body.classList.add("contact-opened"),u.value=!0),k(),t.$viewport.width.value<=900&&C({to:"#popup",duration:1.2,offset:-48})},L=()=>{document.body.classList.add("contact-opened"),u.value=!0},j=()=>{document.body.classList.remove("contact-opened"),u.value=!1},x=()=>{document.body.classList.contains("nav-opened")?(document.body.classList.remove("nav-opened"),m()):(document.body.classList.add("nav-opened"),T())},M=o=>{d.value=o},N=({scroll:o,direction:p})=>{!_.value&&o>t.$viewport.height.value?_.value=!0:_.value&&o<=t.$viewport.height.value&&(_.value=!1)},b=()=>{g.value.style.setProperty("--nav-projects-width",y.value.offsetWidth+"px"),t.$viewport.width.value>900&&(document.body.classList.remove("nav-opened"),m())};return P(()=>{S(N),b(),t.$on("resize",b),t.$on("open-popup",L),t.$on("close-popup",j),t.$on("update-nav-active",M),t.$emit("loader-hide")}),R(()=>{H(N),t.$off("resize",b),t.$off("open-popup",L),t.$off("close-popup",j),t.$off("update-nav-active",M)}),(o,p)=>{var B,z,A,D,E,I;const F=O,s=W("split-text");return a(),n("header",{ref_key:"el",ref:g,class:f(["header",{"header--scrolled":l(_)}])},[e("a",{href:"#","data-section":"home",class:"header__logo",onClick:v(w,["prevent"])},[q(F)]),e("ul",K,[e("li",Q,[e("a",{href:"#","data-section":"bio",class:f(l(d)=="bio"&&"active"),onClick:v(w,["prevent"])},[e("div",null,[c((a(),n("span",null,[i(r(o.$t("nav_bio")),1)])),[[s]]),c((a(),n("span",null,[i(r(o.$t("nav_bio")),1)])),[[s]])])],2)]),e("li",X,[e("a",{href:"#","data-section":"projects",class:f(l(d)=="projects"&&"active"),onClick:v(w,["prevent"])},[e("div",{ref_key:"projects",ref:y},[c((a(),n("span",null,[i(r(o.$t("nav_projects")),1)])),[[s]]),c((a(),n("span",null,[i(r(o.$t("nav_projects")),1)])),[[s]])],512)],2)]),e("li",Y,[e("a",{href:"#","data-section":"awards",class:f(l(d)=="awards"&&"active"),onClick:v(w,["prevent"])},[e("div",null,[c((a(),n("span",null,[i(r(o.$t("nav_awards")),1)])),[[s]]),c((a(),n("span",null,[i(r(o.$t("nav_awards")),1)])),[[s]])])],2)]),e("li",Z,[e("a",{href:"#","data-section":"contact",class:f({active:((A=(z=(B=l(t))==null?void 0:B.$viewport)==null?void 0:z.width)==null?void 0:A.value)>900&&l(u)||l(d)=="contact"||l(d)=="popup"&&((I=(E=(D=l(t))==null?void 0:D.$viewport)==null?void 0:E.width)==null?void 0:I.value)<=900}),onClick:v(V,["prevent"])},[e("div",null,[c((a(),n("span",null,[i(r(o.$t("nav_contact")),1)])),[[s]]),c((a(),n("span",null,[i(r(o.$t("nav_contact")),1)])),[[s]])])],2)]),e("li",ee,[e("a",{href:l($)=="fr"?"/en/":"/","data-section":"lang"},[e("div",null,[c((a(),n("span",null,[i(r(l($)=="fr"?"En":"Fr"),1)])),[[s]]),c((a(),n("span",null,[i(r(l($)=="fr"?"En":"Fr"),1)])),[[s]])])],8,te)]),e("li",oe,[e("a",{href:"#","data-section":"toggle",onClick:v(x,["prevent"])},[e("div",null,[c((a(),n("span",null,[i("Menu")])),[[s]]),c((a(),n("span",null,[i("Menu")])),[[s]])])])])])],2)}}};export{ce as default};

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.