PageSourceSearch

https://www.p88.games/assets/10.10.2/promotion.ca5fc926.1790922222641.js

js p88.games collected 2026-10-04 03:28:19 UTC 3,614 bytes, 1 lines download raw bytes

1import{l as f,r as u,A as e}from"./index.271cdd0c.1790922222641.js";import{r as x,u as b}from"./agentation.32c3b336.1790922222641.js";import{u as h}from"./drag.01881bbc.1790922222641.js";import N from"./breadcrumbs.528a02ac.1790922222641.js";import{u as j,s as v}from"./usePromotionContent.b9119099.1790922222641.js";import"./promotionModules.326517b1.1790922222641.js";import"./index.a00dc0ef.1790922222641.js";const C="_promotionContainer_fbgnu_9",B="_skeleton_fbgnu_14",P="_item_fbgnu_17",T="_breadcrumbs_fbgnu_32",k="_emptyPromoType_fbgnu_35",S="_types_fbgnu_39",A="_typeItem_fbgnu_43",L="_isActive_fbgnu_57",I="_contentContainer_fbgnu_61",$="_emptyPromo_fbgnu_35",E="_contentBlock_fbgnu_69",H="_content_fbgnu_61",w="_imgBox_fbgnu_76",M="_thumbnail_fbgnu_80",R="_title_fbgnu_85",D="_typeBox_fbgnu_92",K="_type_fbgnu_39",O="_descBox_fbgnu_117",z="_desc_fbgnu_117",F="_descBtn_fbgnu_136",t={promotionContainer:C,skeleton:B,item:P,"skeleton-loading-effect":"_skeleton-loading-effect_fbgnu_1",breadcrumbs:T,emptyPromoType:k,types:S,typeItem:A,isActive:L,contentContainer:I,emptyPromo:$,contentBlock:E,content:H,imgBox:w,thumbnail:M,title:R,typeBox:D,type:K,descBox:O,desc:z,descBtn:F},Y=()=>{const s=x.useHistory(),{t:c}=b(["litePromotion"]),l=f.useSelector(o=>o.language?.currentLanguage?.countryLanguageKey||"TH_TH"),{data:i,loading:d}=j({language:l,contentType:"MOBILE",merchantCode:window.merchantCode}),[r,p]=u.useState(null),{ref:_}=h();u.useEffect(()=>{i?.types?.length&&p(o=>o||i.types[0].typeName)},[i]);const n=i?.types||[],a=i?.contentList||[],m=u.useMemo(()=>r&&a.find(o=>o.typeName===r)||null,[a,r]),y=o=>p(o),g=o=>{v(o),s.push("/promotion-details")};return e.jsxs("div",{className:t.promotionContainer,children:[e.jsx("div",{className:t.breadcrumbs,children:e.jsx(N,{title:c("litePromotion:promotion","Promotion"),backAction:()=>s.push("/home")})}),n?.length>0&&e.jsx("div",{className:t.types,ref:_,children:n.map(o=>e.jsx("div",{className:`${t.typeItem} ${r===o.typeName?t.isActive:""}`,onClick:()=>y(o.typeName),title:o.typeTranslate,children:o.typeTranslate==="SHOW_ALL"?c("litePromotion:showAll","Show All"):o.typeTranslate},o.typeName))}),d?e.jsxs("div",{className:t.skeleton,children:[e.jsx("div",{className:t.types}),e.jsx("div",{className:t.item}),e.jsx("div",{className:t.item}),e.jsx("div",{className:t.item})]}):n?.length>0?e.jsx(e.Fragment,{children:e.jsx("div",{className:t.contentContainer,children:m?e.jsx("div",{className:t.contentBlock,children:(m.promotionContentList||[]).map(o=>e.jsx(W,{item:o,typeName:m.typeName,types:n,handlePromoClick:g,learnMoreTrans:c("litePromotion:moreInfo","More Info")},`promo-${o.id}`))}):e.jsx("div",{className:t.emptyPromo,children:c("litePromotion:comingSoon","Coming Soon ...")})})}):e.jsx("div",{className:t.emptyPromoType,children:c("litePromotion:comingSoon","Coming Soon ...")})]})},W=({item:s,typeName:c,types:l,onClick:i,learnMoreTrans:d,handlePromoClick:r})=>{const _=(s?.promotionType?.split(",").map(n=>n.trim())||[]).map(n=>{const a=l.find(m=>m.typeName===n);return a?a.typeTranslate:n});return e.jsxs("div",{className:t.content,onClick:i,children:[e.jsxs("div",{className:t.imgBox,children:[e.jsx("img",{className:t.thumbnail,src:s.image,alt:s.title,loading:"lazy"}),e.jsx("div",{className:t.title,children:s.title})]}),e.jsx("div",{className:t.typeBox,children:_.map(n=>e.jsx("div",{className:t.type,children:n},`promo-${s.id}-${c}-${n}`))}),e.jsxs("div",{className:t.descBox,children:[e.jsx("div",{className:t.desc,children:s.description}),e.jsx("div",{className:t.descBtn,onClick:()=>r(s.id),children:d})]})]})};export{Y 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.