PageSourceSearch

https://www.hanjintravel.com/_nuxt/chunks/secretBenefit.933fb86.js

js hanjintravel.com collected 2026-10-09 04:56:33 UTC 3,192 bytes, 2 lines download raw bytes

1import{am as p,d as h,g as y,O as B,r as m,h as M,c as C,a as s,m as a,e as _,t as S,Q as A,R as T,S as N,E as g,o as U}from"../entry-entry.933fb86.js";import{u as V}from"./useS3Url.933fb86.js";import{s as u}from"./stringUtil.933fb86.js";class D{selectSecretBenefit(o){return p(`/api/v1/scbn/${o}`,"selectSecretBenefit",o)}enterSecretBenefit(o){return p("/api/v1/scbn/enter","enterSecretBenefit",o)}}const E={class:"content__container content__container--sub-small"},k={class:"content__wrap"},L={class:"content__section"},I={class:"content__section-container"},R=["src"],$={class:"page-intro"},z={class:"text text--size-18"},j={class:"input input--large"},q={class:"input__box"},P=h({__name:"secretBenefit",setup(d){const o=new D,{$hanjinUI:n}=y(),v=B(),i=m(x(v.query.scbnNo)),c=m(""),l=m("");async function w(){const t=await o.selectSecretBenefit(i.value);t!=null&&t.result?(u.isEmpty(t.secretBenefitDetailVo)&&n.showAlert({strongMessage:"올바른 접근이 아닙니다.",confirmText:"확인",onConfirm:r}),l.value=t.secretBenefitDetailVo):(t==null?void 0:t.errorMsg)!=null?n.showAlert({strongMessage:t==null?void 0:t.errorMsg,confirmText:"확인",onConfirm:r}):n.showAlert({strongMessage:t==null?void 0:t.resultMsg,confirmText:"확인",onConfirm:r})}async function b(){if(u.isEmpty(c.value)){n.showAlert({strongMessage:"인증코드를 입력해주세요."});return}const t={scbnNo:i.value,scbnCrtfCd:c.value.replace(/ /g,"")},e=await o.enterSecretBenefit(t);if(e!=null&&e.result)if(!e.secretBenefitDetailVo)n.showAlert({strongMessage:`인증 코드가 맞지 않습니다. 
2다시 한 번 입력해 주세요.`,confirmText:"확인"});else{const f=e.secretBenefitDetailVo.scbnLnkUrl;g(f,{external:!0})}else(e==null?void 0:e.errorMsg)!=null?n.showAlert({strongMessage:e==null?void 0:e.errorMsg,confirmText:"확인",onConfirm:r}):n.showAlert({strongMessage:e==null?void 0:e.resultMsg,confirmText:"확인",onConfirm:r})}function x(t){if(!t||Array.isArray(t))return null;try{const e=decodeURIComponent(t);return/^\d+$/.test(e)?e:null}catch{return null}}function r(){g("/")}return M(async()=>{setTimeout(()=>{u.isEmpty(i.value)&&n.showAlert({strongMessage:"올바른 접근이 아닙니다.",confirmText:"확인",onConfirm:r})},0),u.isEmpty(i.value)||(await w(),typeof window<"u"&&(window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"promotion_view",promoInfo:{promo_code:i.value,promo_name:l.value.scbnNm}})))}),(t,e)=>(U(),C("div",E,[s("div",k,[s("div",L,[s("div",I,[s("div",null,[s("img",{src:a(V)("pc/assets/images/event/event-secret-bg-confetti-520x103.png"),alt:"배경 이미지"},null,8,R)]),s("div",$,[e[1]||(e[1]=s("div",{class:"title title--size-24"},[_(" 쉿! "),s("br"),_(" 회원님을 위해 준비한 시크릿 혜택 ")],-1)),s("div",z,S(a(l)?a(l).scbnNm:""),1)]),s("div",j,[s("div",q,[A(s("input",{"onUpdate:modelValue":e[0]||(e[0]=f=>N(c)?c.value=f:null),type:"text",class:"input__text",placeholder:"인증 코드를 입력해 주세요."},null,512),[[T,a(c)]])])]),s("button",{type:"button",class:"btn btn--large btn--full btn--primary mt-48 w-100",onClick:b},[...e[2]||(e[2]=[s("span",{class:"btn__text"},"확인",-1)])])])])])]))}});export{P 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.