PageSourceSearch

https://www.milik.ai/_next/static/chunks/8210-3a84e55572f2e8a9.js

js milik.ai collected 2026-10-05 14:51:39 UTC 47,615 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8210,1720],{84287:function(e,t,i){Promise.resolve().then(i.bind(i,33892))},33892:function(e,t,i){"use strict";i.r(t),i.d(t,{default:function(){return x},mergeUniqueHomeRows:function(){return h}});var a=i(77483),r=i(59134),l=i(246),n=i(91728),c=i(36201),o=i(15950),s=i(67772),_=i(90335),d=i(37871),u=i(15325),m=i(64521),p=i(83729);function h(e,t){let i=new Set;return[...e,...t].filter(e=>{let t=e.hash_id||e.article_id;return!i.has(t)&&(i.add(t),!0)})}let f="https://api.milik.ai";function g(e,t){let i={"X-Client":"web"};return e&&(i["X-Device-Id"]=e),t&&(i.Authorization="Bearer ".concat(t)),i}async function v(e,t,i){let a=new URLSearchParams({page:String(e),page_size:"20"});(null==i?void 0:i.excludeArticle)&&a.set("exclude_article",i.excludeArticle),(null==i?void 0:i.isRefresh)&&a.set("is_refresh","1");let r=(null==i?void 0:i.useLoginFeed)?(0,_.getWebToken)():null,l=await fetch("".concat(f).concat(r?"/api/home/index-login":"/api/home/index","?").concat(a),{credentials:"include",headers:g(t,r),signal:null==i?void 0:i.signal}),n=await l.json();if(0===n.error_code){var c,o;return{rows:null!==(c=n.data.rows)&&void 0!==c?c:[],excludeArticle:null!==(o=n.data.exclude_article)&&void 0!==o?o:""}}return null}async function y(e,t,i){return v(e,i,{excludeArticle:t,useLoginFeed:!0})}async function k(e,t,i){let a=new URLSearchParams({interest_id:String(e),page:String(t),page_size:"20"}),r=await fetch("".concat(f,"/api/home/interest-feed?").concat(a),{credentials:"include",headers:g(i)}),l=await r.json();if(0===l.error_code){var n;return{rows:null!==(n=l.data.rows)&&void 0!==n?n:[]}}return null}function b(e){var t;let i=null===(t=e.en_interests_name)||void 0===t?void 0:t.trim();if(!i)return!1;let a=i.toLowerCase();return"x"!==a&&"xx"!==a&&"test"!==a&&"null"!==a&&i.length>1}function x(e){let{initialRows:t,initialExcludeArticle:i="",interestTags:f=[],ssrColumns:g}=e,x=(0,d.N)(),{locale:w}=(0,u.useLang)(),[S,j]=(0,r.useState)(()=>h([],t)),[C,N]=(0,r.useState)(i),[L,E]=(0,r.useState)(2),[M,R]=(0,r.useState)(!1),[P,F]=(0,r.useState)(!0),A=(0,r.useRef)(0),z=(0,r.useRef)(null),T=(0,r.useRef)(null),I=(0,r.useRef)(!1),B=(0,r.useRef)(!1),D=(0,r.useRef)(0===t.length),[H,O]=(0,r.useState)(0),[W,U]=(0,r.useState)(!1),[Z,G]=(0,r.useState)(!1),[V,X]=(0,r.useState)(""),[K,Y]=(0,r.useState)([]),[q,$]=(0,r.useState)(2),[J,Q]=(0,r.useState)(!1),[ee,et]=(0,r.useState)(!0),ei=f.filter(b),ea=[{id:0,en_interests_name:x("web.home.all_category")},...ei];(0,r.useEffect)(()=>{X((0,o.ni)())},[]),(0,r.useEffect)(()=>{let e=new URLSearchParams(window.location.search).get("preview");G(("localhost"===window.location.hostname||"127.0.0.1"===window.location.hostname)&&"real"!==e)},[]);let er=0===S.length&&Z,el=0===H?er?[{article_id:"mock_1",hash_id:"milik_test_001",channel_id:"1",article_title:"Wireless Headphones 50% Off - Best Deal Ever",article_pic:"https://images.unsplash.com/photo-1505740420928-5e560c06d30e?w=600&h=400&fit=crop",article_price:"99.99",article_date:"Mar 19",article_type:"deal",article_status:"3",article_content:"",time_sort:"",image_scale_type:"",article_pic_list:[],article_tag:[{id:"1",title:"Lowest Ever",color:""}],article_interest:{id:"1",title:"Electronics",type:"tag"},article_mall:{id:"1",title:"Amazon",logo:""},article_interaction:{article_worthy:"0",article_unworthy:"0",article_comment:"0",article_collection:"0",article_rating:"",has_liked:!1,has_collected:!1},user_data:{nickname:"Editor",avatar:"",long_user_id:"1",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"1"},{article_id:"mock_art_1",hash_id:"milik_article_001",channel_id:"2",article_title:"Best Travel Gadgets for 2026: Complete Guide",article_pic:"https://images.unsplash.com/photo-1488998427799-e21cc028cb29?w=600&h=400&fit=crop",article_price:"",article_date:"Mar 20",article_type:"article",article_status:"3",article_content:"Discover the must-have travel essentials",time_sort:"",image_scale_type:"4-3",article_pic_list:[],article_tag:[],article_interest:{id:"6",title:"Travel",type:"tag"},article_mall:void 0,article_interaction:{article_worthy:"",article_unworthy:"",article_c
1omment:"18",article_collection:"0",article_rating:"0",has_liked:!1,has_collected:!1},user_data:{nickname:"Sarah Chen",avatar:"https://i.pravatar.cc/150?img=1",long_user_id:"4",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"2"},{article_id:"mock_2",hash_id:"milik_test_002",channel_id:"1",article_title:"Latest Smart Watch with 14-Day Battery",article_pic:"https://images.unsplash.com/photo-1523275335684-37898b6baf30?w=600&h=400&fit=crop",article_price:"199.99",article_date:"Mar 18",article_type:"deal",article_status:"3",article_content:"",time_sort:"",image_scale_type:"",article_pic_list:[],article_tag:[],article_interest:{id:"2",title:"Wearables",type:"tag"},article_mall:{id:"2",title:"BestBuy",logo:""},article_interaction:{article_worthy:"220",article_unworthy:"0",article_comment:"18",article_collection:"0",article_rating:"",has_liked:!1,has_collected:!1},user_data:{nickname:"Reviews",avatar:"",long_user_id:"2",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"1"},{article_id:"mock_art_2",hash_id:"milik_article_002",channel_id:"2",article_title:"Budget Smartphone Comparison: What You Really Need",article_pic:"https://images.unsplash.com/photo-1511707267537-b85faf00021e?w=600&h=400&fit=crop",article_price:"",article_date:"Mar 19",article_type:"article",article_status:"3",article_content:"Top budget phones under $300",time_sort:"",image_scale_type:"1-1",article_pic_list:[],article_tag:[{id:"4",title:"Editor Pick",color:""}],article_interest:{id:"1",title:"Electronics",type:"tag"},article_mall:void 0,article_interaction:{article_worthy:"",article_unworthy:"",article_comment:"42",article_collection:"0",article_rating:"0",has_liked:!1,has_collected:!1},user_data:{nickname:"Marcus Lee",avatar:"https://i.pravatar.cc/150?img=2",long_user_id:"5",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"2"},{article_id:"mock_3",hash_id:"milik_test_003",channel_id:"1",article_title:"Ultra-Fast USB-C Portable Charger 65W",article_pic:"https://images.unsplash.com/photo-1591290621749-fa6c876b0ebb?w=600&h=400&fit=crop",article_price:"49.99",article_date:"Mar 17",article_type:"deal",article_status:"3",article_content:"",time_sort:"",image_scale_type:"",article_pic_list:[],article_tag:[{id:"2",title:"Hot Item",color:""}],article_interest:{id:"3",title:"Tech Accessories",type:"tag"},article_mall:{id:"3",title:"Newegg",logo:""},article_interaction:{article_worthy:"185",article_unworthy:"0",article_comment:"9",article_collection:"0",article_rating:"",has_liked:!1,has_collected:!1},user_data:{nickname:"Deals",avatar:"",long_user_id:"3",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"1"},{article_id:"mock_art_3",hash_id:"milik_article_003",channel_id:"2",article_title:"How to Choose the Perfect Monitor for Your Setup",article_pic:"https://images.unsplash.com/photo-1527864550417-7fd91fc51a46?w=600&h=400&fit=crop",article_price:"",article_date:"Mar 18",article_type:"article",article_status:"3",article_content:"A comprehensive buying guide",time_sort:"",image_scale_type:"16-9",article_pic_list:[],article_tag:[],article_interest:{id:"4",title:"Pro Equipment",type:"tag"},article_mall:void 0,article_interaction:{article_worthy:"",article_unworthy:"",article_comment:"31",article_collection:"0",article_rating:"0",has_liked:!1,has_collected:!1},user_data:{nickname:"Alex Rodriguez",avatar:"https://i.pravatar.cc/150?img=3",long_user_id:"6",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"2"},{article_id:"mock_4",hash_id:"milik_test_004",channel_id:"1",article_title:"4K Webcam for Content Creators",article_pic:"https://images.unsplash.com/photo-1598133542063-fd4c5da45f55?w=600&h=400&fit=crop",article_price:"129.99",article_date:"Mar 16",article_type:"deal",article_status:"3",article_content:"",time_sort:"",image_scale_type:"",article_pic_list:[],article_tag:[],article_interest:{id:"4",title:"Pro Equipment",type:"tag"},article_mall:{id:"4",title:"B&H Photo",logo:""},article_interaction:{article_worthy:"310",article_unworthy:"0",article_c
1omment:"22",article_collection:"0",article_rating:"",has_liked:!1,has_collected:!1},user_data:{nickname:"Pro",avatar:"",long_user_id:"1",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"1"},{article_id:"mock_5",hash_id:"milik_test_005",channel_id:"1",article_title:"Mechanical Keyboard with RGB Lighting",article_pic:"https://images.unsplash.com/photo-1587829191301-4a13eb58ffa3?w=600&h=400&fit=crop",article_price:"159.99",article_date:"Mar 15",article_type:"deal",article_status:"3",article_content:"",time_sort:"",image_scale_type:"",article_pic_list:[],article_tag:[{id:"3",title:"Limited Stock",color:""}],article_interest:{id:"5",title:"Gaming Gear",type:"tag"},article_mall:{id:"5",title:"Corsair Store",logo:""},article_interaction:{article_worthy:"125",article_unworthy:"0",article_comment:"14",article_collection:"0",article_rating:"",has_liked:!1,has_collected:!1},user_data:{nickname:"Gamer",avatar:"",long_user_id:"2",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"1"},{article_id:"mock_art_4",hash_id:"milik_article_004",channel_id:"2",article_title:"Weekend Coffee Gear Picks for Smaller Kitchens",article_pic:"https://images.unsplash.com/photo-1495474472287-4d71bcdd2085?w=600&h=800&fit=crop",article_price:"",article_date:"Mar 14",article_type:"article",article_status:"3",article_content:"Compact brewers, grinders, and mugs worth keeping on the counter.",time_sort:"",image_scale_type:"1",article_pic_list:[],article_tag:[],article_interest:{id:"11",title:"Food & Drink",type:"tag"},article_mall:void 0,article_interaction:{article_worthy:"",article_unworthy:"",article_comment:"
111",article_collection:"0",article_rating:"0",has_liked:!1,has_collected:!1},user_data:{nickname:"Nadia Lim",avatar:"https://i.pravatar.cc/150?img=4",long_user_id:"7",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"2"},{article_id:"mock_6",hash_id:"milik_test_006",channel_id:"1",article_title:"Noise-Cancelling Earbuds for Daily Commutes",article_pic:"https://images.unsplash.com/photo-1588423771073-b8903fbb85b5?w=600&h=600&fit=crop",article_price:"79.90",article_date:"Mar 14",article_type:"deal",article_status:"3",article_content:"",time_sort:"",image_scale_type:"",article_pic_list:[],article_tag:[],article_interest:{id:"1",title:"Electronics",type:"tag"},article_mall:{id:"6",title:"Shopee Mall",logo:""},article_interaction:{article_worthy:"202",article_unworthy:"0",article_comment:"16",article_collection:"0",article_rating:"",has_liked:!1,has_collected:!1},user_data:{nickname:"Daily Deals",avatar:"",long_user_id:"8",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"1"},{article_id:"mock_art_5",hash_id:"milik_article_005",channel_id:"2",article_title:"How We Organize Small Apartments Without Looking Minimal",article_pic:"https://images.unsplash.com/photo-1505693416388-ac5ce068fe85?w=600&h=800&fit=crop",article_price:"",article_date:"Mar 13",article_type:"article",article_status:"3",article_content:"Storage ideas that still feel warm, lived-in, and realistic.",time_sort:"",image_scale_type:"1",article_pic_list:[],article_tag:[{id:"5",title:"Reader Favorite",color:""}],article_interest:{id:"8",title:"Home Life",type:"tag"},article_mall:void 0,article_interaction:{article_worthy:"",article_unworthy:"",article_comment:"24",article_collection:"0",article_rating:"0",has_liked:!1,has_collected:!1},user_data:{nickname:"Aina Rahman",avatar:"https://i.pravatar.cc/150?img=5",long_user_id:"9",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"2"},{article_id:"mock_7",hash_id:"milik_test_007",channel_id:"1",article_title:"Standing Desk Lamp with Adjustable Warm Light",article_pic:"https://images.unsplash.com/photo-1519710164239-da123dc03ef4?w=600&h=600&fit=crop",article_price:"59.00",article_date:"Mar 13",article_type:"deal",article_status:"3",article_content:"",time_sort:"",image_scale_type:"",article_pic_list:[],article_tag:[{id:"6",title:"Editor Pick",color:""}],article_interest:{id:"8",title:"Home Life",type:"tag"},article_mall:{id:"7",title:"IKEA",logo:""},article_interaction:{article_worthy:"143",article_unworthy:"0",article_comment:"8",article_collection:"0",article_rating:"",has_liked:!1,has_collected:!1},user_data:{nickname:"Editors",avatar:"",long_user_id:"10",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"1"},{article_id:"mock_art_6",hash_id:"milik_article_006",channel_id:"2",article_title:"A Calm Starter Kit for Remote Work in 2026",article_pic:"https://images.unsplash.com/photo-1516321318423-f06f85e504b3?w=600&h=400&fit=crop",article_price:"",article_date:"Mar 12",article_type:"article",article_status:"3",article_content:"Desk, audio, and note-taking essentials that feel good every day.",time_sort:"",image_scale_type:"3",article_pic_list:[],article_tag:[],article_interest:{id:"13",title:"Digital Tech",type:"tag"},article_mall:void 0,article_interaction:{article_worthy:"",article_unworthy:"",article_comment:"29",article_collection:"0",article_rating:"0",has_liked:!1,has_collected:!1},user_data:{nickname:"Joel Tan",avatar:"https://i.pravatar.cc/150?img=6",long_user_id:"11",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"2"},{article_id:"mock_8",hash_id:"milik_test_008",channel_id:"1",article_title:"Ergonomic Office Chair Discount This Week",article_pic:"https://images.unsplash.com/photo-1505843513577-22bb7d21e455?w=600&h=600&fit=crop",article_price:"399.00",article_date:"Mar 12",article_type:"deal",article_status:"3",article_c
1ontent:"",time_sort:"",image_scale_type:"",article_pic_list:[],article_tag:[],article_interest:{id:"4",title:"Pro Equipment",type:"tag"},article_mall:{id:"8",title:"Secretlab",logo:""},article_interaction:{article_worthy:"441",article_unworthy:"0",article_comment:"37",article_collection:"0",article_rating:"",has_liked:!1,has_collected:!1},user_data:{nickname:"Work Setup",avatar:"",long_user_id:"12",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"1"},{article_id:"mock_art_7",hash_id:"milik_article_007",channel_id:"2",article_title:"The New Soft-Gaming Setup: Fewer Lights, Better Focus",article_pic:"https://images.unsplash.com/photo-1542751371-adc38448a05e?w=600&h=800&fit=crop",article_price:"",article_date:"Mar 11",article_type:"article",article_status:"3",article_content:"Gaming desks and accessories that feel less noisy and more intentional.",time_sort:"",image_scale_type:"1",article_pic_list:[],article_tag:[],article_interest:{id:"7",title:"Gaming",type:"tag"},article_mall:void 0,article_interaction:{article_worthy:"",article_unworthy:"",article_comment:"
115",article_collection:"0",article_rating:"0",has_liked:!1,has_collected:!1},user_data:{nickname:"Faris Ong",avatar:"https://i.pravatar.cc/150?img=7",long_user_id:"13",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"2"},{article_id:"mock_9",hash_id:"milik_test_009",channel_id:"1",article_title:"Portable Blender for Office Smoothies",article_pic:"https://images.unsplash.com/photo-1570197788417-0e82375c9371?w=600&h=600&fit=crop",article_price:"45.50",article_date:"Mar 11",article_type:"deal",article_status:"3",article_content:"",time_sort:"",image_scale_type:"",article_pic_list:[],article_tag:[],article_interest:{id:"11",title:"Food & Drink",type:"tag"},article_mall:{id:"9",title:"Lazada",logo:""},article_interaction:{article_worthy:"118",article_unworthy:"0",article_comment:"7",article_collection:"0",article_rating:"",has_liked:!1,has_collected:!1},user_data:{nickname:"Kitchen Finds",avatar:"",long_user_id:"14",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"1"},{article_id:"mock_art_8",hash_id:"milik_article_008",channel_id:"2",article_title:"Rainy-Day Essentials We Actually Keep in the Car",article_pic:"https://images.unsplash.com/photo-1503376780353-7e6692767b70?w=600&h=400&fit=crop",article_price:"",article_date:"Mar 10",article_type:"article",article_status:"3",article_content:"Practical trunk staples for daily commuting and short family trips.",time_sort:"",image_scale_type:"3",article_pic_list:[],article_tag:[],article_interest:{id:"10",title:"Automotive",type:"tag"},article_mall:void 0,article_interaction:{article_worthy:"",article_unworthy:"",article_comment:"
113",article_collection:"0",article_rating:"0",has_liked:!1,has_collected:!1},user_data:{nickname:"Hafiz Noor",avatar:"https://i.pravatar.cc/150?img=8",long_user_id:"15",avatar_redirect_url:""},is_video:"0",cell_type:"",model_type:"",redirect_data:{type:"",value:""},sub_channel_id:"2"}]:S:K,en=0===H?M:J,ec=0===H?P:ee,eo=(0,r.useCallback)(async()=>{if(0===H){R(!0);try{let e=await v(1,V,{isRefresh:!0});if(!e){F(!1);return}j(h([],e.rows)),N(e.excludeArticle),E(2),F(e.rows.length>0)}catch(e){F(!1)}finally{R(!1)}}},[H,V]);(0,r.useEffect)(()=>{V&&0===H&&!er&&D.current&&!(S.length>0)&&(I.current||(I.current=!0,eo()))},[V,H,er,S.length,eo]),(0,r.useEffect)(()=>{if(!V||0!==H||er||B.current||!(0,_.getWebToken)())return;B.current=!0;let e=new AbortController,t=window.setTimeout(()=>e.abort(),800);return(async()=>{try{let t=await v(1,V,{isRefresh:!0,useLoginFeed:!0,signal:e.signal});if(!t||0===t.rows.length)return;(0,r.startTransition)(()=>{j(h([],t.rows)),N(t.excludeArticle),E(2),F(t.rows.length>0)})}catch(e){}finally{window.clearTimeout(t)}})(),()=>{e.abort(),window.clearTimeout(t)}},[V,H,er]);let es=(0,r.useMemo)(()=>el.map(e=>{var t,i,a,r,l,n,c,o,_,d,u,m,p,h,f,g,v,y,k,b,x;return{id:e.hash_id,isDeal:"1"===e.channel_id,image:(0,s.YL)(e.article_pic),category:(k=e.article_interest)?"en"===w?k.en_interests_name||k.title||"":k.loc_interests_name||k.en_interests_name||k.title||"":"",interestId:null===(t=e.article_interest)||void 0===t?void 0:t.id,title:e.article_title,platform:(null===(i=e.article_mall)||void 0===i?void 0:i.title)||void 0,avatar:(null===(a=e.user_data)||void 0===a?void 0:a.avatar)||void 0,nickname:(null===(r=e.user_data)||void 0===r?void 0:r.nickname)||void 0,authorUserId:(null===(l=e.user_data)||void 0===l?void 0:l.user_id)?Number(e.user_data.user_id):void 0,likes:"1"===e.channel_id?Number(null!==(m=null===(n=e.article_interaction)||void 0===n?void 0:n.article_worthy)&&void 0!==m?m:0):Number(null!==(p=null===(c=e.article_interaction)||void 0===c?void 0:c.article_rating)&&void 0!==p?p:0),worthyCount:"1"===e.channel_id?Number(null!==(h=null===(o=e.article_interaction)||void 0===o?void 0:o.article_worthy)&&void 0!==h?h:0):void 0,unworthyCount:"1"===e.channel_id?Number(null!==(f=null===(_=e.article_interaction)||void 0===_?void 0:_.article_unworthy)&&void 0!==f?f:0):void 0,commentCount:"1"===e.channel_id?Number(null!==(g=null===(d=e.article_interaction)||void 0===d?void 0:d.article_comment)&&void 0!==g?g:0):void 0,aspectRatio:(b=e.channel_id,x=e.image_scale_type,"1"===b||"1"===x?"1-1":"2"===x?"4-3":"3-4"),price:e.article_price||void 0,tags:(null!==(v=e.article_tag)&&void 0!==v?v:[]).map(e=>e.title),hotCount:"1"===e.channel_id?Number(null!==(y=null===(u=e.article_interaction)||void 0===u?void 0:u.article_worthy)&&void 0!==y?y:0):void 0}}),[el,w]);(0,r.useCallback)(e=>{let t=T.current;if(!t||!e)return;let i=t.getBoundingClientRect(),a=e.getBoundingClientRect(),r=a.right-(i.right-24),l=i.left+24-a.left,n=r>0?r:l>0?-l:0;0!==n&&("function"==typeof t.scrollBy?t.scrollBy({left:n,behavior:"smooth"}):t.scrollLeft+=n)},[]);let e_=(0,r.useCallback)(async e=>{if(O(e),0!==e){Y([]),$(2),et(!0),Q(!0);try{let t=await k(e,1,V);if(!t||0===t.rows.length){et(!1);return}Y(h([],t.rows))}catch(e){et(!1)}finally{Q(!1)}}},[V]),ed=(0,r.useCallback)(async()=>{if(!M&&P&&0===H){R(!0);try{let e=await y(L,C,V);if(!e||0===e.rows.length){F(!1);return}A.current=0,j(t=>h(t,e.rows)),N(e.excludeArticle),E(e=>e+1)}catch(e){A.current+=1,A.current>=3&&F(!1)}finally{R(!1)}}},[M,P,L,H,C,V]),eu=(0,r.useCallback)(async()=>{if(!J&&ee&&0!==H){Q(!0);try{let e=await k(H,q,V);if(!e||0===e.rows.length){et(!1);return}A.current=0,Y(t=>h(t,e.rows)),$(e=>e+1)}catch(e){A.current+=1,A.current>=3&&et(!1)}finally{Q(!1)}}},[J,ee,H,q,V]);return(0,r.useEffect)(()=>{let e=z.current;if(!e)return;let t=new IntersectionObserver(e=>{e[0].isIntersecting&&(0===H?ed():eu())},{rootMargin:"200px"});return t.observe(e),()=>t.disconnect()},[ed,eu,H]),(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("h1",{className:"sr-only",children:l.$9.homeH1}),(0,a.jsx)(p.default,{placement:"home"}),(0,a.jsx)(c.default,{items:ea.map(e=>({id:e.id,label:"en"===w?e.en_interests_name:e.loc_interests_name||e.en_interests_name})),activeId:H,loading:W,onSelect:e_}),(0,a.jsxs)("main",{style:{maxWidth:"var(--milik-container)",margin:"0 auto",padding:"24px 32px 48px"},children:[(0,a.jsxs)("section",{"aria-label":"Recommended Content",children:[0!==el.length||en||er?null:(0,a.jsx)("div",{style:{minHeight:240,display:"flex",alignItems:"center",justifyContent:"center",textAlign:"center",border:"1px solid var(--milik-line)",borderRadius:18,background:"var(--milik-surface)",padding:"40px 24px",marginBottom:24},children:(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{style:{fontFamily:"var(--milik-heading-font)",fontSize:"clamp(28px, 4vw, 40px)",lineHeight:1.1,letterSpacing:"-0.02em",color:"var(--milik-ink)",marginBottom:10},children:x("web.home.empty.title")}),(0,a.jsx)("p",{style:{margin:0,fontFamily:"var(--milik-sans)",fontSize:15,lineHeight:1.7,color:"var(--milik-ink-3)"},children:x("web.home.empty.subtitle")})]})}),(0,a.jsx)(m.default,{items:es,entrySource:0===H?"web_home_recommend":"web_interest_feed",pagePath:"/web",ssrColumns:g})]}),(0,a.jsx)("div",{ref:z,style:{height:1}}),en&&(0,a.jsx)("div",{style:{display:"flex",justifyContent:"center",padding:"2rem 0",fontSize:13,color:"var(--milik-ink-4)",fontFamily:"var(--milik-sans)"},children:x("web.common.loading")}),!ec&&el.length>0&&(0,a.jsx)("div",{style:{display:"flex",justifyContent:"center",padding:"2rem 0",fontSize:13,color:"var(--milik-ink-4)",fontFamily:"var(--milik-sans)",letterSpacing:"0.04em"},children:x("web.home.end_of_feed")})]}),(0,a.jsx)(n.default,{}),(0,a.jsx)("style",{children:"\n        .milik-noscrollbar::-webkit-scrollbar { display: none; }\n        @media (max-width: 640px) {\n          main { padding: 16px 16px 48px !important; }\n        }\n      "})]})}},64521:function(e,t,i){"use strict";i.r(t),i.d(t,{default:function(){return c}});var a=i(77483),r=i(59134),l=i(37379),n=i(138);function c(e){let{items:t,entrySource:i,pagePath:c,gridTestId:o="product-feed-grid",cardTestId:s,maxColumns:_=5,ssrColumns:d=2}=e,u=Math.min((0,l.fX)([{maxWidth:640,columns:2},{maxWidth:800,columns:3},{maxWidth:1100,columns:4}],5,d),_),m=(0,r.useMemo)(()=>{let e=t.map((e,t)=>({item:e,index:t}));return(0,l.dX)(e,u,e=>{var t;let{item:i}=e;return(0,l.VX)({aspectRatio:i.aspectRatio,isDeal:i.isDeal,hasTags:!!(null===(t=i.tags)||void 0===t?void 0:t.length)})})},[u,t]);return(0,a.jsx)("div",{className:"milik-feed-masonry","data-testid":o,style:{display:"flex",alignItems:"flex-start",ga
1p:"var(--milik-gutter)"},children:m.map((e,t)=>(0,a.jsx)("div",{className:"milik-feed-masonry__col","data-testid":"".concat(o,"-column"),style:{flex:1,minWidth:0,display:"flex",flexDirection:"column",gap:"var(--milik-gutter)"},children:e.map(e=>{let{item:t,index:r}=e;return(0,a.jsxs)("article",{children:[(0,a.jsx)("h2",{className:"sr-only",children:t.title}),(0,a.jsx)(n.Z,{item:t,index:r,entrySource:i,pagePath:c,testId:s})]},"".concat(t.id,"-").concat(r))})},t))})}},36201:function(e,t,i){"use strict";i.r(t),i.d(t,{default:function(){return h}});var a=i(77483),r=i(30779),l=i(37770),n=i(59134),c=i(37871),o=i(15325),s=i(78407),_=i(69065);let d=!1;function u(e,t){if(!e||!t)return;let i=parseFloat(getComputedStyle(e).top)||0,a=t.getBoundingClientRect().top+window.scrollY-i;window.scrollTo({top:Math.max(0,a)})}function m(e){let{navRef:t,sentinelRef:i}=e,a=(0,l.usePathname)();return(0,n.useEffect)(()=>{d&&(d=!1,u(t.current,i.current))},[a,t,i]),null}function p(e){let{href:t,label:i,className:n,style:c,isActive:o,reveal:s,onNavigate:_,startTransition:d,isPending:u}=e,m=(0,l.useRouter)();return(0,a.jsx)(r.default,{href:t,scroll:!1,className:n,style:{...c,cursor:u?"wait":void 0},"aria-current":o?"page":void 0,onClick:e=>{e.preventDefault(),s(e.currentTarget),_(),d(()=>m.push(t,{scroll:!1}))},onFocus:e=>s(e.currentTarget),children:i})}function h(e){return e.activeParam?(0,a.jsx)(n.Suspense,{fallback:(0,a.jsx)(g,{...e,urlId:0}),children:(0,a.jsx)(f,{...e})}):(0,a.jsx)(g,{...e,urlId:e.activeId})}function f(e){let t=(0,l.useSearchParams)(),i=Number(null==t?void 0:t.get(e.activeParam)),r=Number.isInteger(i)&&i>0?i:0;return(0,a.jsx)(g,{...e,urlId:r})}function g(e){let{items:t,loading:i,onSelect:r,inContent:l,urlId:h}=e,f=(0,c.N)(),{locale:g}=(0,o.useLang)(),v=(0,n.useRef)(null),y=(0,n.useRef)(null),k=(0,n.useRef)(null),[b,x]=(0,n.useTransition)(),[w,S]=(0,n.useState)(null),j=(0,_.useSetDealsListPending)(),C=null!=w?w:h;(0,n.useEffect)(()=>{null!==w&&h===w&&S(null)},[h,w]),(0,n.useEffect)(()=>{let e=null!==w&&w!==h;return null==j||j(e),()=>null==j?void 0:j(!1)},[w,h,j]);let N=(0,n.useCallback)(()=>{u(y.current,k.current)},[]),L=(0,n.useCallback)(e=>{let t=v.current;if(!t||!e)return;let i=t.getBoundingClientRect(),a=e.getBoundingClientRect(),r=a.right-(i.right-24),l=i.left+24-a.left,n=r>0?r:l>0?-l:0;0!==n&&("function"==typeof t.scrollBy?t.scrollBy({left:n,behavior:"smooth"}):t.scrollLeft+=n)},[]);if(t.length<=1)return null;let E=t.some(e=>e.href);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{ref:k,"aria-hidden":!0}),E&&(0,a.jsx)(m,{navRef:y,sentinelRef:k}),(0,a.jsx)("nav",{ref:y,className:"milik-home-categories".concat(l?" is-incontent":""),"aria-label":"Categories",children:(0,a.jsx)("div",{ref:v,className:"milik-noscrollbar milik-catstrip-track",children:t.map(e=>{let t=C===e.id,l="milik-catstrip-chip".concat(t?" is-active":""),n=0===e.id?f("web.deal.all_category"):(0,s.nl)({id:e.id,name:e.label,nameEn:e.labelEn,nameLoc:e.labelLoc},g);return e.href?(0,a.jsx)(p,{href:e.href,label:n,className:l,style:{},isActive:t,reveal:L,onNavigate:()=>{N(),t||(d=!0),S(e.id)},startTransition:x,isPending:b},e.id):(0,a.jsx)("button",{type:"button",className:l,style:{cursor:i||b?"wait":"pointer"},onClick:t=>{L(t.currentTarget),null==r||r(e.id)},onFocus:e=>L(e.currentTarget),children:n},e.id)})})})]})}},69065:function(e,t,i){"use strict";i.r(t),i.d(t,{default:function(){return c},useSetDealsListPending:function(){return n}});var a=i(77483),r=i(59134);let l=(0,r.createContext)(null);function n(){return(0,r.useContext)(l)}function c(e){let{strip:t,fallback:i,children:n}=e,[c,o]=(0,r.useState)(!1);return(0,a.jsxs)(l.Provider,{value:o,children:[t,(0,a.jsx)("div",{"aria-busy":c||void 0,children:c?i:n})]})}},91728:function(e,t,i){"use strict";i.r(t),i.d(t,{SOCIAL_PLATFORMS:function(){return n},STORE_PLATFORMS:function(){return c},default:function(){return o}});var a=i(77483),r=i(37871),l=i(246);let n=[{key:"facebook",label:"Facebook",path:"M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z"},{key:"tiktok",label:"TikTok",path:"M12.525.02c1.31-.02 2.61-.01 3.91-.02.08 1.53.63 3.09 1.75 4.17 1.12 1.11 2.7 1.62 4.24 1.79v4.03c-1.44-.05-2.89-.35-4.2-.97-.57-.26-1.1-.59-1.62-.93-.01 2.92.01 5.84-.02 8.75-.08 1.4-.54 2.79-1.35 3.94-1.31 1.92-3.58 3.17-5.91 3.21-1.43.08-2.86-.31-4.08
1-1.03-2.02-1.19-3.44-3.37-3.65-5.71-.02-.5-.03-1-.01-1.49.18-1.9 1.12-3.72 2.58-4.96 1.66-1.44 3.98-2.13 6.15-1.72.02 1.48-.04 2.96-.04 4.44-.99-.32-2.15-.23-3.02.37-.63.41-1.11 1.04-1.36 1.75-.21.51-.15 1.07-.14 1.61.24 1.64 1.82 3.02 3.5 2.87 1.12-.01 2.19-.66 2.77-1.61.19-.33.4-.67.41-1.06.1-1.79.06-3.57.07-5.36.01-4.03-.01-8.05.02-12.07z"},{key:"instagram",label:"Instagram",path:"M12 2.163c3.204 0 3.584.012 4.85.07 3.252.148 4.771 1.691 4.919 4.919.058 1.265.069 1.645.069 4.849 0 3.205-.012 3.584-.069 4.849-.149 3.225-1.664 4.771-4.919 4.919-1.266.058-1.644.07-4.85.07-3.204 0-3.584-.012-4.849-.07-3.26-.149-4.771-1.699-4.919-4.92-.058-1.265-.07-1.644-.07-4.849 0-3.204.013-3.583.07-4.849.149-3.227 1.664-4.771 4.919-4.919 1.266-.057 1.645-.069 4.849-.069zm0-2.163c-3.259 0-3.667.014-4.947.072-4.358.2-6.78 2.618-6.98 6.98-.059 1.281-.073 1.689-.073 4.948 0 3.259.014 3.668.072 4.948.2 4.358 2.618 6.78 6.98 6.98 1.281.058 1.689.072 4.948.072 3.259 0 3.668-.014 4.948-.072 4.354-.2 6.782-2.618 6.979-6.98.059-1.28.073-1.689.073-4.948 0-3.259-.014-3.667-.072-4.947-.196-4.354-2.617-6.78-6.979-6.98-1.281-.059-1.69-.073-4.949-.073zm0 5.838c-3.403 0-6.162 2.759-6.162 6.162s2.759 6.163 6.162 6.163 6.162-2.759 6.162-6.163c0-3.403-2.759-6.162-6.162-6.162zm0 10.162c-2.209 0-4-1.79-4-4 0-2.209 1.791-4 4-4s4 1.791 4 4c0 2.21-1.791 4-4 4zm6.406-11.845c-.796 0-1.441.645-1.441 1.44s.645 1.44 1.441 1.44c.795 0 1.439-.645 1.439-1.44s-.644-1.44-1.439-1.44z"}],c=[{key:"appStoreUrl",label:"App Store",path:"M12.152 6.896c-.948 0-2.415-1.078-3.96-1.04-2.04.027-3.91 1.183-4.961 3.014-2.117 3.675-.546 9.103 1.519 12.09 1.013 1.454 2.208 3.09 3.792 3.031 1.52-.065 2.09-.987 3.935-.987 1.831 0 2.35.987 3.96.948 1.637-.026 2.676-1.48 3.676-2.948 1.156-1.688 1.636-3.325 1.662-3.415-.039-.013-3.182-1.221-3.22-4.857-.026-3.04 2.48-4.494 2.597-4.559-1.429-2.09-3.623-2.324-4.39-2.376-2-.156-3.675 1.09-4.61 1.09zM15.53 3.83c.843-1.012 1.4-2.427 1.245-3.83-1.207.052-2.662.805-3.532 1.818-.78.896-1.454 2.338-1.273 3.714 1.338.104 2.715-.688 3.56-1.702"},{key:"playStoreUrl",label:"Google Play",path:"M22.018 13.298l-3.919 2.218-3.515-3.493 3.543-3.521 3.891 2.202a1.49 1.49 0 0 1 0 2.594zM1.337.924a1.486 1.486 0 0 0-.112.568v21.017c0 .217.045.419.124.6l11.155-11.087L1.337.924zm12.207 10.065l3.258-3.238L3.45.195a1.466 1.466 0 0 0-.946-.179l11.04 10.973zm0 2.067l-11 10.933c.298.036.612-.016.906-.183l13.324-7.54-3.23-3.21z"}];function o(){let e=(0,r.N)(),t=e("web.footer.about",{siteName:l.px}),i=e("web.footer.disclaimer",{siteName:l.px});return(0,a.jsxs)("footer",{className:"milik-footer","data-testid":"milik-footer",style:{borderTop:"1px solid var(--milik-line)",background:"var(--milik-page)",padding:"36px 32px",marginTop:40,textAlign:"center"},children:[(0,a.jsxs)("p",{className:"milik-footer-about","data-testid":"milik-footer-about",style:{margin:"0 auto",maxWidth:760,fontSize:12,lineHeight:1.7,color:"var(--milik-ink-3)",fontFamily:"var(--milik-sans)"},children:[t," ",i]}),(0,a.jsxs)("div",{className:"milik-footer-brand",style:{marginTop:10,fontSize:12,color:"var(--milik-ink-4, var(--milik-ink-3))",fontFamily:"var(--milik-sans)"},children:["\xa9 ",new Date().getFullYear()," ",l.px]}),(0,a.jsx)("style",{children:"\n        @media (max-width: 768px) {\n          .milik-footer {\n            padding: 28px 16px !important;\n            margin-top: 32px !important;\n          }\n        }\n      "})]})}},83729:function(e,t,i){"use strict";i.r(t),i.d(t,{default:function(){return p}});var a=i(77483),r=i(59134),l=i(30779),n=i(11720),c=i(246),o=i(22414),s=i(37871);let _="milik_home_hero_off",d="data-home-hero",u="(function(){try{var h=document.documentElement;if(document.cookie.indexOf('web_user_token=')!==-1||localStorage.getItem('".concat(_,"')==='1'){h.setAttribute('").concat(d,"','off');}}catch(e){}})();");function m(){try{localStorage.setItem(_,"1")}catch(e){}document.documentElement.setAttribute(d,"off")}function p(e){var t,i;let{placement:p}=e,h=(0,s.N)(),f=null!==(i=null===(t=(0,o.useOptionalAuth)())||void 0===t?void 0:t.isAuthenticated)&&void 0!==i&&i,g="article"===p;return(0,r.useEffect)(()=>{!function(e){let t=document.documentElement;(function(e){if(e)return!0;try{return -1!==document.cookie.indexOf("web_user_token=")||"1"===localStorage.getItem(_)}catch(e){return!1}})(e)?t.setAttribute(d,"off"):t.removeAttribute(d)}(f)},[f]),(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("script",{dangerouslySetInnerHTML:{__html:u}}),(0,a.jsxs)("div",{className:"milik-vphero-wrap milik-vphero-".concat(p),children:[(0,a.jsxs)("section",{className:"milik-vphero-card","aria-label":h("web.common.slogan"),children:[(0,a.jsx)("button",{type:"button",className:"milik-vphero-close","aria-label":h("web.common.close"),onClick:m,children:(0,a.jsx)(n.X,{size:16,weight:"regular","aria-hidden":"true"})}),(0,a.jsx)("p",{className:"milik-vphero-title",children:h("web.common.slogan")}),(0,a.jsx)("p",{className:"milik-vphero-sub",children:h("web.home.hero.subtitle",{siteName:c.px})})]}),(0,a.jsxs)("div",{className:"milik-vphero-banner",children:[(0,a.jsxs)("div",{className:"milik-vphero-banner-copy",children:[(0,a.jsx)("strong",{children:h("web.common.slogan")}),(0,a.jsx)("span",{children:h("web.home.hero.subtitle",{siteName:c.px})})]}),!g&&(0,a.jsx)(l.default,{href:"/download",className:"milik-vphero-banner-cta",children:h("web.home.hero.get_app")}),(0,a.jsx)("button",{type:"button",className:"milik-vphero-banner-close","aria-label":h("web.common.close"),onClick:m,children:(0,a.jsx)(n.X,{size:14,weight:"regular","aria-hidden":"true"})})]})]}),(0,a.jsx)("style",{children:"\n        /* 属性值不加引号:内联 style 文本经 SSR 会转义引号为实体(见文件头注释) */\n        html[data-home-hero=off] .milik-vphero-wrap { display: none; }\n\n        .milik-vphero-card {\n          position: relative;\n          overflow: hidden;\n          border: 1px solid var(--milik-line);\n          border-radius: 18px;\n          background:\n            radial-gradient(560px 300px at 88% -30%, var(--milik-brand-soft) 0%, rgba(255,246,241,0) 68%),\n            var(--milik-surface);
1\n          padding: clamp(26px, 3.5vw, 38px) clamp(24px, 4vw, 48px);\n        }\n        .milik-vphero-home {\n          max-width: var(--milik-container);\n          margin: 0 auto;\n          padding: 20px 32px 0;\n        }\n        .milik-vphero-article { margin: 8px 0 36px; }\n        /* deals 列表页:容器宽度与内边距由 .milik-deals-list-main 提供,这里只管下间距 */\n        .milik-vphero-deals { margin: 0 0 36px; }\n        .milik-vphero-title {\n          margin: 0 0 8px;\n          font-family: var(--milik-heading-font);\n          font-size: clamp(24px, 3.2vw, 38px);\n          line-height: 1.14;\n          letter-spacing: -0.02em;\n          color: var(--milik-ink);\n          text-wrap: balance;\n          animation: milikVpHeroIn 0.55s ease backwards;\n        }\n        .milik-vphero-article .milik-vphero-title { font-size: clamp(22px, 3vw, 28px); }\n        .milik-vphero-sub {\n          margin: 0;\n          max-width: 640px;\n          font-family: var(--milik-sans);\n          font-size: 15px;\n          line-height: 1.7;\n          color: var(--milik-ink-3);\n          animation: milikVpHeroIn 0.55s ease 0.08s backwards;\n        }\n        .milik-vphero-article .milik-vphero-sub { font-size: 14px; }\n        .milik-vphero-close {\n          position: absolute;\n          top: 12px;\n          right: 12px;\n          width: 32px;\n          height: 32px;\n          display: flex;\n          align-items: center;\n          justify-content: center;\n          border: none;\n          border-radius: 999px;\n          background: none;\n          color: var(--milik-ink-3);\n          cursor: pointer;\n          transition: all 0.2s ease;\n        }\n        .milik-vphero-close:hover { background: #fafafa; color: var(--milik-ink); }\n        @keyframes milikVpHeroIn {\n          from { opacity: 0; transform: translateY(10px); }\n          to { opacity: 1; transform: translateY(0); }\n        }\n\n        /* ── 移动 WAP 顶部悬浮下载条 ── */\n        .milik-vphero-banner {\n          display: none;\n          position: fixed;\n          left: 0;\n          right: 0;\n          z-index: 120;\n          height: 48px;\n          align-items: center;\n          gap: 10px;\n          padding: 0 6px 0 14px;\n          background: var(--milik-surface);\n        }\n        .milik-vphero-banner {\n          /* 统一挂底部:文章页贴在 fixed 底部操作栏(约 64px 高,z-index 50)上方,\n             首页/deals 无底部栏、直接贴底 */\n          bottom: ".concat(g?"64px":"0",";\n          border-top: 1px solid var(--milik-line);\n        }\n        .milik-vphero-banner-copy {\n          flex: 1;\n          min-width: 0;\n          display: flex;\n          flex-direction: column;\n          gap: 1px;\n        }\n        .milik-vphero-banner-copy strong {\n          font-family: var(--milik-serif);\n          /* 13px 让英文 slogan 在 375px 窄屏恰好整句放下;更长的小语种译文仍走省略号兜底 */\n          font-size: 13px;\n          font-weight: 400;\n          line-height: 1.2;\n          color: var(--milik-ink);\n          white-space: nowrap;\n          overflow: hidden;\n          text-overflow: ellipsis;\n        }\n        .milik-vphero-banner-copy span {\n          font-family: var(--milik-sans);\n          font-size: 11px;\n          line-height: 1.3;\n          color: var(--milik-ink-3);\n          white-space: nowrap;\n          overflow: hidden;\n          text-overflow: ellipsis;\n        }\n        /* 与文章页顶栏 Open in APP 同主题:白底细描边胶囊,不用渐变 */\n        .milik-vphero-banner-cta {\n          flex-shrink: 0;\n          display: inline-flex;\n          align-items: center;\n          height: 32px;\n          padding: 0 14px;\n          border-radius: 9px;\n          border: 1px solid var(--milik-border-button);\n          background: var(--milik-page);\n          color: var(--milik-ink);\n          font-family: var(--milik-sans);\n          font-size: 12px;\n          font-weight: 500;\n          text-decoration: none;\n          white-space: nowrap;\n        }\n        .milik-vphero-banner-close {\n          flex-shrink: 0;\n          width: 34px;\n          height: 34px;\n          display: flex;\n          align-items: center;\n          justify-content: center;\n          border: none;\n          background: none;\n          color: var(--milik-ink-muted);\n          cursor: pointer;\n        }\n\n        @media (max-width: 768px) {\n          .milik-vphero-card { display: none; }\n          .milik-vphero-home, .milik-vphero-article, .milik-vphero-deals { padding: 0; margin: 0; }\n          /* 底部悬浮不占文档流、不动 topnav/分类条,无需任何让位联动 */\n          .milik-vphero-banner { display: flex; }\n        }\n        @media (prefers-reduced-motion: reduce) {\n          .milik-vphero-title, .milik-vphero-sub { animation: none; }\n        }\n      ")})]})}},78407:function(e,t,i){"use strict";function a(e){return"/deals/category/".concat(e)}function r(e,t){return("en"===t?e.nameEn||e.nameLoc:e.nameLoc||e.nameEn)||e.name||"Category ".concat(e.id)}function l(e){var t,i;return null!==(i=null===(t=e.categoryPath)||void 0===t?void 0:t.map(e=>{var t,i,a,r,l,n;return{id:Number(e.id),name:null!==(r=null===(t=e.name)||void 0===t?void 0:t.trim())&&void 0!==r?r:"",nameEn:null!==(l=null===(i=e.nameEn)||void 0===i?void 0:i.trim())&&void 0!==l?l:"",nameLoc:null!==(n=null===(a=e.nameLoc)||void 0===a?void 0:a.trim())&&void 0!==n?n:""}}).filter(e=>Number.isFinite(e.id)&&e.id>0&&(e.name||e.nameEn||e.nameLoc).length>0))&&void 0!==i?i:[]}i.d(t,{Z$:function(){return l},cV:function(){return function e(t,i){for(let r of t){var a;if(r.id===i)return[r];let t=e(null!==(a=r.children)&&void 0!==a?a:[],i);if(t.length)return[r,...t]}return[]}},nl:function(){return r},uj:function(){return a}})},17046:function(e,t,i){"use strict";i.d(t,{default:function(){return r.a}});var a=i(73282),r=i.n(a)},30779:function(e,t,i){"use strict";i.d(t,{default:function(){return r.a}});var a=i(82761),r=i.n(a)}
1,37770:function(e,t,i){"use strict";var a=i(34608);i.o(a,"useParams")&&i.d(t,{useParams:function(){return a.useParams}}),i.o(a,"usePathname")&&i.d(t,{usePathname:function(){return a.usePathname}}),i.o(a,"useRouter")&&i.d(t,{useRouter:function(){return a.useRouter}}),i.o(a,"useSearchParams")&&i.d(t,{useSearchParams:function(){return a.useSearchParams}}),i.o(a,"useServerInsertedHTML")&&i.d(t,{useServerInsertedHTML:function(){return a.useServerInsertedHTML}})},73282:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return l}});let a=i(12097);i(77483),i(59134);let r=a._(i(26203));function l(e,t){let i={loading:e=>{let{error:t,isLoading:i,pastDelay:a}=e;return null}};return"function"==typeof e&&(i.loader=e),(0,r.default)({...i,...t})}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},39707:function(e,t,i){"use strict";function a(e){let{reason:t,children:i}=e;return i}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BailoutToCSR",{enumerable:!0,get:function(){return a}}),i(66438)},26203:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return o}});let a=i(77483),r=i(59134),l=i(39707);function n(e){var t;return{default:null!=(t=null==e?void 0:e.default)?t:e}}let c={loader:()=>Promise.resolve(n(()=>null)),loading:null,ssr:!0},o=function(e){let t={...c,...e},i=(0,r.lazy)(()=>t.loader().then(n)),o=t.loading;function s(e){let n=o?(0,a.jsx)(o,{isLoading:!0,pastDelay:!0,error:null}):null,c=t.ssr?(0,a.jsx)(i,{...e}):(0,a.jsx)(l.BailoutToCSR,{reason:"next/dynamic",children:(0,a.jsx)(i,{...e})});return(0,a.jsx)(r.Suspense,{fallback:n,children:c})}return s.displayName="LoadableComponent",s}},86407:function(e){e.exports={style:{fontFamily:"'__Noto_Serif_100407', '__Noto_Serif_Fallback_100407'",fontStyle:"normal"},className:"__className_100407",variable:"__variable_100407"}},525:function(e){e.exports={style:{fontFamily:"'__Noto_Sans_50a98f', '__Noto_Sans_Fallback_50a98f'",fontStyle:"normal"},className:"__className_50a98f",variable:"__variable_50a98f"}},69493:function(e){e.exports={style:{fontFamily:"'__Noto_Sans_50a98f', '__Noto_Sans_Fallback_50a98f'",fontStyle:"normal"},className:"__className_50a98f",variable:"__variable_50a98f"}},27988:function(e){e.exports={style:{fontFamily:"'__Noto_Sans_e76be9', '__Noto_Sans_Fallback_e76be9'",fontStyle:"normal"},className:"__className_e76be9",variable:"__variable_e76be9"}},27109:function(e){e.exports={style:{fontFamily:"'__siteFont_4b1d35', '__siteFont_Fallback_4b1d35'",fontStyle:"normal"},className:"__className_4b1d35",variable:"__variable_4b1d35"}},11720:function(e,t,i){"use strict";i.d(t,{X:function(){return c}});var a=i(59134),r=i(64614);let l=new Map([["bold",a.createElement(a.Fragment,null,a.createElement("path",{d:"M208.49,191.51a12,12,0,0,1-17,17L128,145,64.49,208.49a12,12,0,0,1-17-17L111,128,47.51,64.49a12,12,0,0,1,17-17L128,111l63.51-63.52a12,12,0,0,1,17,17L145,128Z"}))],["duotone",a.createElement(a.Fragment,null,a.createElement("path",{d:"M216,56V200a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V56A16,16,0,0,1,56,40H200A16,16,0,0,1,216,56Z",opacity:"0.2"}),a.createElement("path",{d:"M205.66,194.34a8,8,0,0,1-11.32,11.32L128,139.31,61.66,205.66a8,8,0,0,1-11.32-11.32L116.69,128,50.34,61.66A8,8,0,0,1,61.66,50.34L128,116.69l66.34-66.35a8,8,0,0,1,11.32,11.32L139.31,128Z"}))],["fill",a.createElement(a.Fragment,null,a.createElement("path",{d:"M208,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V48A16,16,0,0,0,208,32ZM181.66,170.34a8,8,0,0,1-11.32,11.32L128,139.31,85.66,181.66a8,8,0,0,1-11.32-11.32L116.69,128,74.34,85.66A8,8,0,0,1,85.66,74.34L128,116.69l42.34-42.35a8,8,0,0,1,11.32,11.32L139.31,128Z"}))],["light",a.createElement(a.Fragment,null,a.createElement("path",{d:"M204.24,195.76a6,6,0,1,1-8.48,8.48L128,136.49,60.24,204.24a6,6,0,0,1-8.48-8.48L119.51,128,51.76,60.24a6,6,0,0,1,8.48-8.48L128,119.51l67.76-67.75a6,6,0,0,1,8.48,8.48L136.49,128Z"}))],["regular",a.createElement(a.Fragment,null,a.createElement("path",{d:"M205.66,194.34a8,8,0,0,1-11.32,11.32L128,139.31,61.66,205.66a8,8,0,0,1-11.32-11.32L116.69,128,50.34,61.66A8,8,0,0,1,61.66,50.34L128,116.69l66.34-66.35a8,8,0,0,1,11.32,11.32L139.31,128Z"}))],["thin",a.createElement(a.Fragment,null,a.createElement("path",{d:"M202.83,197.17a4,4,0,0,1-5.66,5.66L128,133.66,58.83,202.83a4,4,0,0,1-5.66-5.66L122.34,128,53.17,58.83a4,4,0,0,1,5.66-5.66L128,122.34l69.17-69.17a4,4,0,1,1,5.66,5.66L133.66,128Z"}))]]),n=a.forwardRef((e,t)=>
1a.createElement(r.Z,{ref:t,...e,weights:l}));n.displayName="XIcon";let c=n},64614:function(e,t,i){"use strict";i.d(t,{Z:function(){return l}});var a=i(59134);let r=(0,a.createContext)({color:"currentColor",size:"1em",weight:"regular",mirrored:!1}),l=a.forwardRef((e,t)=>{let{alt:i,color:l,size:n,weight:c,mirrored:o,children:s,weights:_,...d}=e,{color:u="currentColor",size:m,weight:p="regular",mirrored:h=!1,...f}=a.useContext(r);return a.createElement("svg",{ref:t,xmlns:"http://www.w3.org/2000/svg",width:null!=n?n:m,height:null!=n?n:m,fill:null!=l?l:u,viewBox:"0 0 256 256",transform:o||h?"scale(-1, 1)":void 0,...f,...d},!!i&&a.createElement("title",null,i),s,_.get(null!=c?c:p))});l.displayName="IconBase"},51709:function(e,t,i){"use strict";/*! js-cookie v3.0.5 | MIT */function a(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var a in i)e[a]=i[a]}return e}i.d(t,{Z:function(){return r}});var r=function e(t,i){function r(e,r,l){if("undefined"!=typeof document){"number"==typeof(l=a({},i,l)).expires&&(l.expires=new Date(Date.now()+864e5*l.expires)),l.expires&&(l.expires=l.expires.toUTCString()),e=encodeURIComponent(e).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var n="";for(var c in l)l[c]&&(n+="; "+c,!0!==l[c]&&(n+="="+l[c].split(";")[0]));return document.cookie=e+"="+t.write(r,e)+n}}return Object.create({set:r,get:function(e){if("undefined"!=typeof document&&(!arguments.length||e)){for(var i=document.cookie?document.cookie.split("; "):[],a={},r=0;r<i.length;r++){var l=i[r].split("="),n=l.slice(1).join("=");try{var c=decodeURIComponent(l[0]);if(a[c]=t.read(n,c),e===c)break}catch(e){}}return e?a[e]:a}},remove:function(e,t){r(e,"",a({},t,{expires:-1}))},withAttributes:function(t){return e(this.converter,a({},this.attributes,t))},withConverter:function(t){return e(a({},this.converter,t),this.attributes)}},{attributes:{value:Object.freeze(i)},converter:{value:Object.freeze(t)}})}({read:function(e){return'"'===e[0]&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}},{path:"/"})}}]);

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.