1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1033],{3998:(e,r,t)=>{t.d(r,{$:()=>c,r:()=>l});var a=t(95155),n=t(12115),s=t(17129),o=t(83101),i=t(64269);let l=(0,o.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors cursor-pointer focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-blue-600 text-white shadow hover:bg-blue-700",destructive:"bg-red-600 text-white shadow-sm hover:bg-red-700",outline:"border border-gray-300 bg-white shadow-sm hover:bg-gray-100 dark:border-neutral-700 dark:bg-neutral-900 dark:hover:bg-neutral-800",secondary:"bg-gray-100 text-gray-900 shadow-sm hover:bg-gray-200 dark:bg-neutral-800 dark:text-white dark:hover:bg-neutral-700",ghost:"hover:bg-gray-100 dark:hover:bg-neutral-800",link:"text-blue-600 underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),c=n.forwardRef((e,r)=>{let{className:t,variant:n,size:o,asChild:c=!1,...d}=e,u=c?s.DX:"button";return(0,a.jsx)(u,{className:(0,i.cn)(l({variant:n,size:o}),t),ref:r,...d})});c.displayName="Button"},19512:(e,r,t)=>{t.d(r,{y:()=>n});var a=t(65240);let n=new(t.n(a)())},19611:(e,r,t)=>{t.d(r,{$F:()=>u,CP:()=>h,SS:()=>o,qS:()=>d,sT:()=>s,uD:()=>g,v$:()=>i});var a=t(82999),n=t(19512);async function s(e){let r=e.headers.get("content-type")||"",t=null;if(!r.includes("application/json"))return await e.text(),{success:!1,errorMessage:"Invalid content type"};try{t=await e.json()}catch(e){return{success:!1,errorMessage:"Invalid JSON response"}}return t?.success===!1?{success:!1,errorMessage:t.code||t.error||"Unknown error",meta:t.meta}:e.ok?{success:!0,data:t?.data}:{success:!1,errorMessage:t?.error||"Request failed"}}async function o(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{method:t="GET",withAuth:n=!1,withCredentials:o=!1,body:l,signal:c}=r,d=n?i:fetch,u={method:t,headers:{...l instanceof FormData?{}:{"Content-Type":"application/json"}},body:l?l instanceof FormData?l:JSON.stringify(l):void 0,credentials:o?"include":"omit",signal:c};u._req=r?._req;let h=e.startsWith("http")?e:`${a.fn}${e}`;try{let e=await d(h,u);return await s(e)}catch(r){throw console.error(`[requestJson] fetch failed for ${e}:`,r),r}}let i=async function(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=async()=>{try{let t=await l(r);return await fetch(e,{...r,credentials:"include",headers:t})}catch(e){return new Response(JSON.stringify({success:!1,error:"Network error. Please check your connection."}),{status:500,headers:{"Content-Type":"application/json"}})}},a=await t();if(401===a.status)try{if(!(await c()).success)throw Error("Refresh failed");if(!(a=await t()).ok)return n.y.emit("logout"),new Response(JSON.stringify({success:!1,error:a.statusText||"Retry after token refresh failed."}),{status:a.status,headers:{"Content-Type":"application/json"}})}catch{return n.y.emit("logout"),new Response(JSON.stringify({success:!1,error:"Token refresh failed."}),{status:401,headers:{"Content-Type":"application/json"}})}return a},l=async e=>{let r=e.body instanceof FormData,t={};r||(t["Content-Type"]="application/json",t["X-Platform"]="web");let a={...t,...e.headers};return r&&"Content-Type"in a&&delete a["Content-Type"],a},c=async()=>{let e=await fetch(`${a.fn}/user/refresh-token`,{method:"POST",credentials:"include",headers:{"Content-Type":"application/json"},body:JSON.stringify({isWeb:a.HZ})});return await s(e)},d=async e=>{let r=await o("/contact-admin",{method:"POST",body:e});return r.success?r.data:null},u=async e=>{let r=await o("/log-error",{method:"POST",body:{message:e}});return r.success?r.data:null},h=async(e,r,t)=>{let a=`/location-autocomplete?text=${encodeURIComponent(e)}&lang=${encodeURIComponent(r)}`,n=await o(a,{method:"GET",signal:t});return n.success?n.data:null},g=async()=>{let e=await o("/user-postings",{method:"GET",withAuth:!0});return e.success?e.data:null}},44133:(e,r,t)=>{t.d(r,{default:()=>o});var a=t(95155),n=t(12115),s=t(20063);function o(e){let{children:r,serverSearchParams:t}
1=e,o=(0,s.useRouter)(),i=(0,s.useSearchParams)();return(0,n.useEffect)(()=>{let e=window.location.pathname,r=window.location.search,a=Object.keys(t).length>0,n=i.toString().length>0,s=r.length>0;if(a&&!n&&s&&o.replace(e+r,{scroll:!1}),a&&!s){let r=new URLSearchParams;Object.entries(t).forEach(e=>{let[t,a]=e;a&&(Array.isArray(a)?r.set(t,a.join(",")):r.set(t,a))}),o.replace(`${e}?${r.toString()}`,{scroll:!1})}},[]),(0,a.jsx)(a.Fragment,{children:r})}},64269:(e,r,t)=>{t.d(r,{cn:()=>s});var a=t(2821),n=t(75889);function s(){for(var e=arguments.length,r=Array(e),t=0;t<e;t++)r[t]=arguments[t];return(0,n.QP)((0,a.$)(r))}},75417:(e,r,t)=>{t.d(r,{default:()=>p});var a=t(95155),n=t(12115),s=t(52619),o=t.n(s),i=t(20063),l=t(82999),c=(t(90368),t(27937),t(37772),t(64269)),d=t(3998);let u=e=>{let{className:r,...t}=e;return(0,a.jsx)("nav",{role:"navigation","aria-label":"pagination",className:(0,c.cn)("mx-auto flex w-full justify-center",r),...t})};u.displayName="Pagination";let h=n.forwardRef((e,r)=>{let{className:t,...n}=e;return(0,a.jsx)("ul",{ref:r,className:(0,c.cn)("flex flex-row items-center gap-1",t),...n})});h.displayName="PaginationContent";let g=n.forwardRef((e,r)=>{let{className:t,...n}=e;return(0,a.jsx)("li",{ref:r,className:(0,c.cn)("",t),...n})});g.displayName="PaginationItem";let f=e=>{let{className:r,isActive:t,size:n="icon",...s}=e;return(0,a.jsx)(o(),{"aria-current":t?"page":void 0,className:(0,c.cn)((0,d.r)({variant:t?"outline":"ghost",size:n}),r),...s})};f.displayName="PaginationLink";let p=e=>{let{currentPage:r,totalPosts:t,basePath:n}=e,s=(0,i.useSearchParams)(),c=Math.max(1,Math.ceil(t/l.s3)),d=e=>{let r=Math.min(Math.max(e,1),c),t=new URLSearchParams(s.toString());t.delete("page");let a=t.toString(),o=`${n}/page/${r}`;return a?`${o}?${a}`:o},p=(()=>
1{if(c<=1)return[1];let e=Math.max(2,r-1),t=Math.min(c-1,r+1),a=[1];e>2&&a.push(null);for(let r=e;r<=t;r++)a.push(r);return t<c-1&&a.push(null),a.push(c),a})();return(0,a.jsx)("div",{className:"flex justify-center m-2",children:(0,a.jsx)(u,{children:(0,a.jsxs)(h,{children:[(0,a.jsx)(g,{children:(0,a.jsx)(o(),{href:d(r-1),"aria-disabled":1===r,"aria-label":"Previous page",className:`${1===r?"pointer-events-none opacity-50":""} h-9 w-9 flex items-center justify-center border border-gray-300 dark:border-gray-600 rounded-md hover:bg-gray-100 dark:hover:bg-gray-800`,children:(0,a.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",className:"w-8 h-8",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M15 18l-6-6 6-6"})})})}),p.map((e,t)=>null===e?(0,a.jsx)(g,{children:(0,a.jsx)("span",{className:"px-2 text-gray-500 dark:text-gray-400 select-none",children:"â¦"})},`ellipsis-${t}`):(0,a.jsx)(g,{children:(0,a.jsx)(f,{href:d(e),isActive:e===r,className:`${e===r?"bg-blue-500 text-white hover:bg-blue-600":"border border-gray-300 text-gray-700 hover:bg-gray-100 dark:border-gray-600 dark:text-gray-300 dark:hover:bg-gray-800"} rounded-md px-3 py-1`,children:e})},e)),(0,a.jsx)(g,{children:(0,a.jsx)(o(),{href:d(r+1),"aria-disabled":r===c,"aria-label":"Next page",className:`${r===c?"pointer-events-none opacity-50":""} h-9 w-9 flex items-center justify-center border border-gray-300 dark:border-gray-600 rounded-md hover:bg-gray-100 dark:hover:bg-gray-800`,children:(0,a.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",className:"w-8 h-8",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9 6l6 6-6 6"})})})})]})})})}},95487:(e,r,t)=>{t.r(r),t.d(r,{default:()=>o});var a=t(95155),n=t(52619),s=t.n(n);t(12115);let o=e=>{let{slug:r,locale:t,label:n}=e,o=r.split("/").map(encodeURIComponent).join("/"),i=`/${t}/${o}`;return(0,a.jsx)(s(),{href:i,prefetch:!1,"aria-label":n,onClick:()=>sessionStorage.setItem("scrollY",window.scrollY.toString()),className:"absolute w-full h-full"})}}}]);
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.