1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[70340],{13744:(e,t,n)=>{n.d(t,{A:()=>s});var o=n(95125),a=n(18720),r=n(52056),i=n(12115),d=n(50688);let c="https://api.homeproxy.vn";o.A.interceptors.request.use(e=>{if(new URLSearchParams(window.location.search).has("previewTemplate")||"true"===sessionStorage.getItem("preview_mode")){let t=(0,d.P)(e.url||"",(e.method||"GET").toUpperCase(),e.data);null!==t&&(e.adapter=()=>Promise.resolve({data:t,status:200,statusText:"OK",headers:{},config:e}))}return e});let s=new class{constructor(){this.fetchApi=async function(e){var t;let n,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return r.headers=null!=(t=null==r?void 0:r.headers)?t:{},n=-1!=e.indexOf("http")?e:c+e,""!=a&&(r.headers={...r.headers,Authorization:"Bearer ".concat(a)}),o.A.get(n,r).then(e=>e.data)},this.postApi=async function(e,t){var n;let a,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return i.headers=null!=(n=null==i?void 0:i.headers)?n:{},a=-1!=e.indexOf("http")?e:c+e,""!=r&&(i.headers={"Content-Type":"application/json;charset=UTF-8",...i.headers,Authorization:"Bearer ".concat(r)}),o.A.post(a,t,i).then(e=>null==e?void 0:e.data)},this.patchApi=async function(e,t){var n;let a,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return i.headers=null!=(n=null==i?void 0:i.headers)?n:{},a=-1!=e.indexOf("http")?e:c+e,""!=r&&(i.headers={...i.headers,Authorization:"Bearer ".concat(r)}),o.A.patch(a,t,i)},this.deleteApi=async function(e){var t;let n,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return i.headers=null!=(t=null==i?void 0:i.headers)?t:{},n=-1!=e.indexOf("http")?e:c+e,""!=a&&(i.headers={...i.headers,Authorization:"Bearer ".concat(a)}),""!=r&&(i.data={ids:r}),o.A.delete(n,i)},this.formatNum=e=>null==e||""===e?"-":e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,","),this.formatNum2=e=>null==e||""===e?"-":e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,"."),this.formatDate=e=>{let t=new Date(e),n=String(t.getDate()).padStart(2,"0"),o=String(t.getMonth()+1).padStart(2,"0"),a=t.getFullYear();return"".concat(n,"/").concat(o,"/").concat(a)},this.handleFormErrorFromResponse=(e,t,n)=>{let o=Object.keys(e.getValues()),d=!1;for(let a in t){let r=o.includes(a),i=Array.isArray(t[a])?t[a][0]:t[a],c=n&&n[i]||i||"C\xf3 lá»i xảy ra";r&&(d=!0,e.setError(a,{type:"manual",message:c}))}if(!d){let e=Object.values(t)[0],o="string"==typeof e?(null==n?void 0:n[e])||e:"Ä\xe3 xảy ra lá»i, vui l\xf2ng thá» lại.";a.toast.error("Lá»i",{description:o,duration:5e3,icon:(0,i.createElement)(r.A,{className:"text-red-500 h-4 w-4"})})}},this.sleep=e=>new Promise(t=>setTimeout(()=>{t(!0)},e))}}},50688:(e,t,n)=>{n.d(t,{P:()=>l});let o={merchantId:"demo",theme:{template:"template-10",title:"Demo Proxy",logo:"/images/logo.svg","logo-l":"/images/logo-l.svg",merchantName:"Demo Proxy",socials:[{name:"Facebook",url:"https://www.facebook.com/homeproxyvn"},{name:"Zalo",url:"https://zalo.me/2308660762022631528"},{name:"Telegram",url:"https://t.me/homeproxyvn"}]},setting:{minDeposit:1e4,depositBonus:[{min:1e5,rate:.1},{min:2e5,rate:.2},{min:5e5,rate:.25},{min:1e6,rate:.3},{min:2e6,rate:.35}]}};var a=n(53279),r=n(69715);let i=a.H8.filter(e=>{var t;return"3"===String(null==(t=e.category)?void 0:t.id)}),d=[{id:"dc-vn-cmc-day",name:"Proxy Datacenter VN CMC",slug:"proxy-datacenter-vn-cmc",price:2500,originPrice:2500,provider:"CMC",category:{id:"cat-datacenter-vn",name:"Proxy Datacenter VN",slug:"proxy-datacenter-vn",unit:"ng\xe0y",categorytype:{id:1,name:"Proxy TÄ©nh",slug:"proxy-tinh"}},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}],c=[{id:"dc-us-day",name:"Proxy Datacenter US",slug:"proxy-datacenter-us",price:3500,originPrice:3500,provider:"US",category:{id:"cat-datacenter-us",name:"Proxy Datacenter US",slug:"proxy-datacenter-us",unit:"ng\xe0y",categorytype:{id:1,name:"Proxy TÄ©nh",slug:"proxy-tinh"}},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}],s=[{id:"combo-tinh-vn-100",name:"Combo 100 Proxy TÄ©nh Viá»t Nam",price:99e3,originPrice:99e3,provider:"MIXED",category:{id:"cat-combo-static",name:"Combo Proxy",slug:"combo-tinh-vn-100",unit:"g\xf3i",categorytype:{id:4,name:"Combo Proxy",slug:"combo-proxy"}},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()},{id:"combo-dc-vn-50",name:"Combo 50 Proxy Datacenter VN",price:149e3,originPrice:149e3,provider:"CMC",category:{id:"cat-combo-dc-vn-50",name:"Combo Proxy",slug:"combo-dc-vn-50",unit:"g\xf3i",categorytype:{id:4,name:"Combo Proxy",slug:"combo-proxy"}},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()},{id:"combo-dc-vn-100",name:"Combo 100 Proxy Datacenter VN",price:279e3,originPrice:279e3,provider:"CMC",category:{id:"cat-combo-dc-vn-100",name:"Combo Proxy",slug:"combo-dc-vn-100",unit:"g\xf3i",categorytype:{id:4,name:"Combo Proxy",slug:"combo-proxy"}},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()},{id:"combo-dc-us-50",name:"Combo 50 Proxy Datacenter US",price:179e3,originPrice:179e3,provider:"US",category:{id:"cat-combo-dc-us-50",name:"Combo Proxy",slug:"combo-dc-us-50",unit:"g\xf3i",categorytype:{id:4,name:"Combo Proxy",slug:"combo-proxy"}},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()},{id:"combo-dc-us-100",name:"Combo 100 Proxy Datacenter US",price:339e3,originPrice:339e3,provider:"US",category:{id:"cat-combo-dc-us-100",name:"Combo Proxy",slug:"combo-dc-us-100",unit:"g\xf3i",categorytype:{id:4,name:"Combo Proxy",slug:"combo-proxy"}},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}];function p(e){try{return decodeURIComponent(e)}catch(t){return e}}function u(e){if(!e)return null;try{return JSON.parse(p(e))}catch(e){return null}}function h(e,t){var n,o;let a=u(e.get("filters"));if(null==a||null==(o=a.category)||null==(n=o.categorytype)?void 0:n.id)return a.category.categorytype.id;let r=p(e.get("filter")||"").match(/categorytype\.id:\$eq:number:(\d+)/);if(r)return Number(r[1]);let i=t.match(/categorytype[^0-9]*id[^0-9]*(\d+)/);return i?Number(i[1]):null}function l(e,t,n){let l=function(e){try{return new URL(e,"http://mock.local").pathname}catch(t){return e.split("?")[0]}}(e),g=function(e){let t=e.indexOf("?");return -1===t?"":e.slice(t+1)}(e),y=p(g);if("GET"===t){if(l.includes("/api/v1/users/proxies")||l.includes("/api/v1/user-proxies")){let e=h(new URLSearchParams(g),y);if(2===e)return{data:a.wn,total:a.wn.length};if(3===e||y.includes("isCdk=true"))return{data:a.h5,total:a.h5.length};if(1===e)return{data:a.d$,total:a.d$.length};let t=[...a.d$,...a.wn,...a.h5];return{data:t,total:t.length}}if(l.includes("/api/v1/products")){let e=function(e){let t=new URLSearchParams(e),n=p(e),o=h(t,n),r=function(e,t){let n=u(e.get("filters"));if(null==n?void 0:n.provider)return n.provider.toUpperCase();let o=p(e.get("filter")||""),a=o.match(/provider:\$in:string:([^;
1]+)/);if(a)return a[1].toUpperCase();let r=o.match(/provider:\$eq:string:([^;]+)/);if(r)return r[1].toUpperCase();let i=t.match(/"provider":"([^"]+)"/);return i?i[1].toUpperCase():null}(t,n),l=r?r.split(",").map(e=>e.trim().toUpperCase()).filter(Boolean):[];return 4===o?s:3===o||n.includes("isCdk=true")?i:2===o?a.WM:1===o&&"CMC"===r?d:1===o&&"US"===r?c:1===o?l.length>0?[...a.d8,...d,...c].filter(e=>l.includes((e.provider||"").trim().toUpperCase())):[...a.d8,...d,...c]:[...a.d8,...a.WM,...i,...d,...c,...s]}(g);return{data:e,total:e.length}}if(l.includes("/api/v1/locations"))return{data:a.zf};if(l.includes("/api/v1/orders"))return{data:a.Ys,total:a.Ys.length};if(l.includes("/api/v1/transactions"))return{data:a._V,total:a._V.length};if(l.includes("/api/v1/ip-change-logs")||l.includes("/api/v1/ipchangelogs"))return{data:a.tw,total:a.tw.length};if(l.includes("/api/v1/blogs")){if(l.match(/\/api\/v1\/blogs\/[^/]+$/)){let e=l.split("/").pop(),t=a.Ko.find(t=>t.slug===e);return t?{data:t}:{data:a.Ko[0]}}return{data:a.Ko,total:a.Ko.length}}if(l.includes("/api/v1/blog-categories"))return{data:a.Jt};if(l.includes("/api/v1/users/me")||l.includes("/api/v1/auth/me"))return r._o;if(l.includes("/api/v1/merchant-settings"))return{data:[o]};if(l.includes("/api/v1/dashboard"))return{totalProxies:a.d$.length+a.wn.length,activeProxies:a.d$.filter(e=>{var t;return(null==e||null==(t=e.status)?void 0:t.id)==="6"}).length+a.wn.filter(e=>{var t;return(null==e||null==(t=e.status)?void 0:t.id)==="6"}).length,expiredProxies:a.d$.filter(e=>{var t;return(null==e||null==(t=e.status)?void 0:t.id)==="8"}).length+a.wn.filter(e=>{var t;return(null==e||null==(t=e.status)?void 0:t.id)==="8"}).length,totalOrders:a.Ys.length,totalTransactions:a._V.length};if(l.includes("/api/v1/categories"))return{data:[{id:"1",name:"Proxy TÄ©nh",slug:"proxy-tinh",categorytype:{id:1,name:"Proxy TÄ©nh"}},{id:"2",name:"Proxy Xoay",slug:"proxy-xoay",categorytype:{id:2,name:"Proxy Xoay"}},{id:"3",name:"Key Xoay",slug:"key-xoay",categorytype:{id:3,name:"Key Xoay"}}]};if(l.includes("/api/v1/deposit-bonus")||l.includes("/api/v1/deposit-bonuses"))return{data:[{minAmount:1e5,bonusPercent:5},{minAmount:5e5,bonusPercent:10},{minAmount:1e6,bonusPercent:15},{minAmount:5e6,bonusPercent:20}]};if(l.includes("/api/v1/affiliate"))return{data:{totalEarnings:5e5,totalReferrals:15,pendingEarnings:1e5}};if(l.includes("/api/v1/tickets")||l.includes("/api/v1/support"))return{data:[],total:0}}return"POST"===t?l.includes("/api/v1/affiliates")?{success:!0,message:"ÄÄng k\xfd affiliate th\xe0nh c\xf4ng (Demo Mode)",data:{id:"affiliate-demo-".concat(Date.now()),merchantId:(null==n?void 0:n.merchantId)||"demo-merchant-id",programId:(null==n?void 0:n.programId)||"mock-program-001",userId:"demo-user-id",status:"pending",applicationNote:(null==n?void 0:n.applicationNote)||"",payoutInfo:(null==n?void 0:n.payoutInfo)||{},totalReferrals:0,totalOrders:0,conversionRate:0,orderRate:0,availableBalance:0,pendingBalance:0,pendingDays:7,totalEarnings:0,totalPaid:0,totalClicks:0,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}}:l.includes("/api/v1/orders")?{success:!0,message:"Äặt h\xe0ng th\xe0nh c\xf4ng (Demo Mode)",data:{id:"order-demo-".concat(Date.now()),code:"DH".concat(Date.now()),status:{id:"3",name:"Äang xá» l\xfd"},...n}}:l.includes("/api/v1/auth/login")?{token:"mock-access-token-demo",refreshToken:"mock-refresh-token-demo",tokenExpires:Date.now()+864e5,user:{...r._o,merchant:{id:"demo",code:"demo"},role:{id:"1",name:"User"}}}:l.includes("/api/v1/auth/refresh")?{token:"mock-access-token-demo-refreshed",refreshToken:"mock-refresh-token-demo-refreshed",tokenExpires:Date.now()+864e5}:l.includes("/api/v1/auth/register")?{success:!0,message:"ÄÄng k\xfd th\xe0nh c\xf4ng (Demo Mode)",data:r._o}:l.includes("/api/v1/auth/forgot-password")?{success:!0,message:"Email kh\xf4i phục máºt khẩu Ä\xe3 ÄÆ°á»£c gá»i (Demo Mode)"}:l.includes("/api/v1/auth/reset-password")?{success:!0,message:"Äặt lại máºt khẩu th\xe0nh c\xf4ng (Demo Mode)"}:l.includes("/api/v1/auth/change-password")||l.includes("/api/v1/users/change-password")?{success:!0,message:"Äá»i máºt khẩu th\xe0nh c\xf4ng (Demo Mode)"}:l.includes("/change-ip")||l.includes("/rotate")?{success:!0,message:"Äá»i IP th\xe0nh c\xf4ng (Demo Mode)",newIp:"103.".concat(Math.floor(255*Math.random()),".").concat(Math.floor(255*Math.random()),".").concat(Math.floor(255*Math.random()))}:l.includes("/api/v1/payments")||l.includes("/api/v1/deposits")?{success:!0,message:"Y\xeau cầu nạp tiá»n Ä\xe3 ÄÆ°á»£c ghi nháºn (Demo Mode)",data:{id:"payment-demo-".concat(Date.now()),amount:(null==n?void 0:n.amount)||1e5,status:"pending"}}:l.includes("/api/v1/check-proxy")||l.includes("/check")?{success:!0,data:[{proxy:(null==n?void 0:n.proxy)||"103.150.12.45:10000",status:1,ip:"103.150.12.45"}]}:l.includes("/api/v1/tickets")||l.includes("/api/v1/support")?{success:!0,message:"Ticket Ä\xe3 ÄÆ°á»£c tạo th\xe0nh c\xf4ng (Demo Mode)",data:{id:"ticket-demo-".concat(Date.now()),...n}}:{success:!0,message:"Thao t\xe1c th\xe0nh c\xf4ng (Demo Mode)"}:"PATCH"===t?l.includes("/api/v1/users")?{success:!0,data:{...r._o,...n}}:l.includes("/renew")||l.includes("/renewal")?{success:!0,message:"Gia hạn th\xe0nh c\xf4ng (Demo Mode)"}:{success:!0,message:"Cáºp nháºt th\xe0nh c\xf4ng (Demo Mode)"}:"DELETE"===t?{success:!0,message:"X\xf3a th\xe0nh c\xf4ng (Demo Mode)"}:null}},53279:(e,t,n)=>{n.d(t,{H8:()=>s,Jt:()=>p,Ko:()=>h,WM:()=>g,Ys:()=>i,_V:()=>d,d$:()=>o,d8:()=>l,h5:()=>r,tw:()=>c,wn:()=>a,zf:()=>y});let o=[{code:"4VMPC7",ip:"171.241.29.220",domain:"171.241.30.115",port:53152,username:"emma149",password:"ndc1mta3otax",provider:"VIETTEL",location:"H\xe0 Ná»i",days:5}
1,{code:"5BNQD8",ip:"171.245.18.115",domain:"171.245.19.89",port:54231,username:"john287",password:"kx92bta7plmq",provider:"VIETTEL",location:"Há» Ch\xed Minh",days:10},{code:"6CPRE9",ip:"113.185.72.43",domain:"113.185.73.156",port:55012,username:"alex432",password:"pw8mnt5xvz2k",provider:"FPT",location:"Ä\xe0 Nẵng",days:7},{code:"7DQSF1",ip:"113.186.45.198",domain:"113.186.46.67",port:55890,username:"lisa891",password:"qr3jkl9bnm4x",provider:"FPT",location:"H\xe0 Ná»i",days:.15},{code:"8ERTG2",ip:"42.117.156.89",domain:"42.117.157.234",port:56743,username:"mike562",password:"yz7wcd2fgh8n",provider:"VNPT",location:"Cần ThÆ¡",days:3},{code:"9FSUH3",ip:"42.118.234.67",domain:"42.118.235.45",port:57321,username:"sara123",password:"ab4efg6hij1o",provider:"VNPT",location:"Hải Ph\xf2ng",days:14},{code:"AGTVJ4",ip:"171.243.89.156",domain:"171.243.90.78",port:58012,username:"david789",password:"mn5pqr8stu2v",provider:"VIETTEL",location:"Há» Ch\xed Minh",days:.2},{code:"BHUWK5",ip:"113.187.12.234",domain:"113.187.13.123",port:58901,username:"anna456",password:"wx9yz1abc3de",provider:"FPT",location:"Ä\xe0 Nẵng",days:8},{code:"CIVXL6",ip:"42.119.78.45",domain:"42.119.79.189",port:59234,username:"tom654",password:"fg2hij4klm5n",provider:"VNPT",location:"H\xe0 Ná»i",days:0},{code:"DJWYM7",ip:"171.244.56.123",domain:"171.244.57.67",port:59876,username:"jane321",password:"op6qrs8tuv9w",provider:"VIETTEL",location:"Cần ThÆ¡",days:0}].map((e,t)=>({id:t+1,code:e.code,protocol:"HTTP",userId:"demo-user",orderId:"ORD".concat(String(t+1).padStart(6,"0")),isRenewal:t%3==0,dayOfRenewal:30,expiredAt:Date.now()+24*e.days*36e5,status:{id:e.days>0?"6":"8",name:e.days>0?"Äang hoạt Äá»ng":"Hết hạn"},createdAt:new Date(Date.now()-(30-e.days)*864e5).toISOString(),updatedAt:new Date().toISOString(),proxy:{id:"proxy-".concat(t+1),code:e.code,username:e.username,password:e.password,port:e.port,status:{id:"1",name:"Hoạt Äá»ng"},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString(),blockAt:null,ipaddress:{id:"ip-".concat(t+1),ip:e.ip,domain:e.domain,location:e.location,provider:e.provider,categorytype:{id:1,name:"Proxy TÄ©nh",slug:"proxy-tinh"},maxConnection:1,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}}})),a=[{code:"RT7KM2",ip:"171.250.45.89",domain:"171.250.46.156",port:61234,username:"rot_user1",password:"rt8xk2pm5nv",provider:"VIETTEL",location:"H\xe0 Ná»i",days:4,interval:1},{code:"RT8LN3",ip:"171.251.67.123",domain:"171.251.68.78",port:61456,username:"rot_user2",password:"qw3er5ty7ui",provider:"VIETTEL",location:"Há» Ch\xed Minh",days:.18,interval:5},{code:"RT9MP4",ip:"113.190.23.45",domain:"113.190.24.189",port:61678,username:"rot_user3",password:"as9df2gh4jk",provider:"FPT",location:"Ä\xe0 Nẵng",days:9,interval:10},{code:"RTANQ5",ip:"113.191.34.67",domain:"113.191.35.234",port:61890,username:"rot_user4",password:"zx6cv8bn1ml",provider:"FPT",location:"H\xe0 Ná»i",days:15,interval:30},{code:"RTBOR6",ip:"42.120.45.89",domain:"42.120.46.123",port:62012,username:"rot_user5",password:"po4iu7yt3re",provider:"VNPT",location:"Cần ThÆ¡",days:0,interval:1},{code:"RTCPS7",ip:"42.121.56.123",domain:"42.121.57.67",port:62234,username:"rot_user6",password:"lk8jh2gf5ds",provider:"VNPT",location:"Hải Ph\xf2ng",days:.22,interval:5},{code:"RTDQT8",ip:"171.252.78.45",domain:"171.252.79.189",port:62456,username:"rot_user7",password:"mn1bv4cx7za",provider:"VIETTEL",location:"Há» Ch\xed Minh",days:11,interval:10},{code:"RTERU9",ip:"113.192.89.67",domain:"113.192.90.34",port:62678,username:"rot_user8",password:"we9rt2yu5io",provider:"FPT",location:"Ä\xe0 Nẵng",days:0,interval:30},{code:"RTFSVA",ip:"42.122.12.34",domain:"42.122.13.156",port:62890,username:"rot_user9",password:"pl3ok8ij2uh",provider:"VNPT",location:"H\xe0 Ná»i",days:.1,interval:1},{code:"RTGTWB",ip:"171.253.23.56",domain:"171.253.24.89",port:63012,username:"rot_user10",password:"yg6tf4rd2es",provider:"VIETTEL",location:"Cần ThÆ¡",days:7,interval:5}].map((e,t)=>({id:t+100,code:e.code,protocol:"HTTP",userId:"demo-user",orderId:"ORD".concat(String(t+100).padStart(6,"0")),isRenewal:t%2==0,dayOfRenewal:30,expiredAt:Date.now()+24*e.days*36e5,status:{id:e.days>0?"6":"8",name:e.days>0?"Äang hoạt Äá»ng":"Hết hạn"},createdAt:new Date(Date.now()-(30-e.days)*864e5).toISOString(),updatedAt:new Date().toISOString(),isCdk:!1,proxy:{id:"rotate-proxy-".concat(t+1),code:e.code,username:e.username,password:e.password,port:e.port,rotateInterval:e.interval,status:{id:"1",name:"Hoạt Äá»ng"},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString(),blockAt:null,ipaddress:{id:"rotate-ip-".concat(t+1),ip:e.ip,domain:e.domain,location:e.location,provider:e.provider,categorytype:{id:2,name:"Proxy Xoay",slug:"proxy-xoay"},maxConnection:100,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}}})),r=[{code:"KEY8XR3",username:"key_8a7b6c5d_xr3m9k",dataUsed:.5,dataTotal:1,days:6},{code:"KEY9YS4",username:"key_9e8f7g6h_ys4n0l",dataUsed:2.3,dataTotal:5,days:9},{code:"KEYAZT5",username:"key_0i1j2k3l_zt5o1m",dataUsed:6.8,dataTotal:10,days:12},{code:"KEYB1U6",username:"key_4m5n6o7p_1u6p2n",dataUsed:.2,dataTotal:1,days:18},{code:"KEYC2V7",username:"key_8q9r0s1t_2v7q3o",dataUsed:3.5,dataTotal:5,days:22},{code:"KEYD3W8",username:"key_2u3v4w5x_3w8r4p",dataUsed:45.2,dataTotal:50,days:.12},{code:"KEYE4X9",username:"key_6y7z8a9b_4x9s5q",dataUsed:.8,dataTotal:1,days:.2},{code:"KEYF5YA",username:"key_0c1d2e3f_5ya6t",dataUsed:4.1,dataTotal:5,days:.08},{code:"KEYG6ZB",username:"key_4g5h6i7j_6zb7u",dataUsed:10,dataTotal:10,days:0},{code:"KEYH7AC",username:"key_8k9l0m1n_7ac8v",dataUsed:5,dataTotal:5,days:0}].map((e,t)=>({id:t+200,code:e.code,protocol:"HTTP",userId:"demo-user",orderId:"ORD".concat(String(t+200).padStart(6,"0")),isRenewal:!1,dayOfRenewal:0,expiredAt:Date.now()+24*e.days*36e5,status:{id:e.days>0?"6":"8",name:e.days>0?"Äang hoạt Äá»ng":"Hết hạn"},createdAt:new Date(Date.now()-(30-e.days)*864e5).toISOString(),updatedAt:new Date().toISOString(),isCdk:!0,dataUsed:e.dataUsed,dataTotal:e.dataTotal,proxy:{id:"key-proxy-".concat(t+1),code:e.code,username:e.username,password:null,port:3e4,rotateInterval:1,isCdk:!0,status:{id:"1",name:"Hoạt Äá»ng"},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString(),blockAt:null,ipaddress:{id:"key-ip-".concat(t+1),ip:"key.proxy.vn",domain:"key.proxy.vn",location:"Viá»t Nam",provider:"MIXED",categorytype:{id:3,name:"Key Xoay",slug:"key-xoay"},maxConnection:1e3,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}}})),i=Array.from({length:10},(e,t)=>({id:"order-".concat(t+1),code:"DH".concat(String(t+1).padStart(8,"0")),amount:(t+1)*5e4+Math.floor(1e5*Math.random()),status:{id:t<7?"6":t<9?"3":"7",name:t<7?"Ho\xe0n th\xe0nh":t<9?"Äang xá» l\xfd":"Ä\xe3 há»§y"},description:"Mua ".concat(t+1," proxy ").concat(["tÄ©nh","xoay","key"][t%3]),createdAt:new Date(Date.now()-2*t*864e5).toISOString(),updatedAt:new Date().toISOString(),user:{id:"demo-user",coin:1e6,firstName:"Demo",lastName:"User",merchantId:"demo",roleId:"1",phone:"0901234567"},products:[{location:["H\xe0 Ná»i","Há» Ch\xed Minh","Ä\xe0 Nẵng"][t%3],dayOfUse:30,quantity:t+1,protocalType:"HTTP",user:"demo",password:"demo123",provider:["VIETTEL","FPT","VNPT"][t%3],price:String((t+1)*5e4),product:{id:"product-".concat(t+1),name:"Proxy ".concat(["TÄ©nh","Xoay","Key"][t%3]," - ").concat(["H\xe0 Ná»i","Há» Ch\xed Minh","Ä\xe0 Nẵng"][t%3]),price:5e4,originPrice:5e4,provider:["VIETTEL","FPT","VNPT"][t%3]}}]})),d=Array.from({length:10},(e,t)=>({id:"trans-".concat(t+1),code:"GD".concat(String(t+1).padStart(8,"0")),merchantId:"demo",type:t%3==0?1:2,amount:t%3==0?(t+1)*1e5:(t+1)*5e4,userAmountRemaining:1e6-1e4*t,status:{id:t<8?"6":"3",name:t<8?"Th\xe0nh c\xf4ng":"Äang xá» l\xfd"},description:t%3==0?"Nạp tiá»n qua VNPAY":"Mua proxy",bankName:t%3==0?["Vietcombank","Techcombank","BIDV"][t%3]:null,accountNumber:t%3==0?"1234567890":null,accountName:t%3==0?"DEMO USER":null,gateway:t%3==0?"VNPAY":null,createdAt:new Date(Date.now()-24*t*36e5).toISOString(),updatedAt:new Date().toISOString(),user:{id:"demo-user",coin:1e6,firstName:"Demo",lastName:"User",merchantId:"demo",roleId:"1",phone:"0901234567"}})),c=Array.from({length:10},(e,t)=>({id:t+1,fromAddress:"103.".concat(150+t,".").concat(100+t,".").concat(50+t),toAddress:"103.".concat(160+t,".").concat(110+t,".").concat(60+t),createdAt:new Date(Date.now()-3600*t*1e3).toISOString(),updatedAt:new Date().toISOString()})),s=[{id:"p1",name:"Proxy TÄ©nh Viettel - H\xe0 Ná»i",price:5e4,originPrice:5e4,provider:"VIETTEL",category:{id:"1",name:"Proxy TÄ©nh",period:"ng\xe0y"}},{id:"p2",name:"Proxy TÄ©nh FPT - H\xe0 Ná»i",price:45e3,originPrice:45e3,provider:"FPT",category:{id:"1",name:"Proxy TÄ©nh",period:"ng\xe0y"}}
1,{id:"p3",name:"Proxy TÄ©nh VNPT - H\xe0 Ná»i",price:4e4,originPrice:4e4,provider:"VNPT",category:{id:"1",name:"Proxy TÄ©nh",period:"ng\xe0y"}},{id:"p4",name:"Proxy TÄ©nh Viettel - HCM",price:55e3,originPrice:55e3,provider:"VIETTEL",category:{id:"1",name:"Proxy TÄ©nh",period:"ng\xe0y"}},{id:"p5",name:"Proxy TÄ©nh FPT - HCM",price:5e4,originPrice:5e4,provider:"FPT",category:{id:"1",name:"Proxy TÄ©nh",period:"ng\xe0y"}},{id:"p6",name:"Proxy Xoay Viettel",price:1e5,originPrice:1e5,provider:"VIETTEL",category:{id:"2",name:"Proxy Xoay",period:"ng\xe0y"}},{id:"p7",name:"Proxy Xoay FPT",price:9e4,originPrice:9e4,provider:"FPT",category:{id:"2",name:"Proxy Xoay",period:"ng\xe0y"}},{id:"p8",name:"Proxy Xoay VNPT",price:85e3,originPrice:85e3,provider:"VNPT",category:{id:"2",name:"Proxy Xoay",period:"ng\xe0y"}},{id:"p9",name:"Key Xoay 1GB",price:15e3,originPrice:15e3,provider:"MIXED",category:{id:"3",name:"Key Xoay",unit:"GB"}},{id:"p10",name:"Key Xoay 5GB",price:7e4,originPrice:7e4,provider:"MIXED",category:{id:"3",name:"Key Xoay",unit:"GB"}},{id:"p11",name:"Key Xoay 10GB",price:13e4,originPrice:13e4,provider:"MIXED",category:{id:"3",name:"Key Xoay",unit:"GB"}}],p=[{id:"cat-1",slug:"huong-dan",title:"Hưá»ng dẫn",description:"C\xe1c b\xe0i viết hưá»ng dẫn sá» dụng proxy",sort:1,createdAt:new Date().toISOString(),children:[]},{id:"cat-2",slug:"kien-thuc",title:"Kiến thức",description:"Kiến thức vá» proxy v\xe0 bảo máºt",sort:2,createdAt:new Date().toISOString(),children:[]},{id:"cat-3",slug:"tin-tuc",title:"Tin tức",description:"Tin tức c\xf4ng nghá» v\xe0 proxy",sort:3,createdAt:new Date().toISOString(),children:[]},{id:"cat-4",slug:"meo-vat",title:"Mẹo vặt",description:"C\xe1c mẹo hay khi sá» dụng proxy",sort:4,createdAt:new Date().toISOString(),children:[]}],u={id:"author-1",coin:"0",phone:"0901234567",userName:"admin",firstName:"Admin",lastName:"Demo",status:{id:1,name:"Active",__entity:"Status"},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString(),deletedAt:null},h=[{id:"blog-1",title:"Hưá»ng dẫn cấu h\xecnh Proxy tr\xean Chrome",slug:"huong-dan-cau-hinh-proxy-tren-chrome",excerpt:"B\xe0i viết hưá»ng dẫn chi tiết c\xe1ch cấu h\xecnh proxy tr\xean tr\xecnh duyá»t Chrome Äá» bảo vá» quyá»n ri\xeang tư v\xe0 truy cáºp ná»i dung bá» hạn chế.",content:'<h2>Giá»i thiá»u</h2><p>Proxy l\xe0 má»t c\xf4ng cụ hữu \xedch gi\xfap bạn bảo vá» quyá»n ri\xeang tư khi lưá»t web. Trong b\xe0i viết n\xe0y, ch\xfang t\xf4i sẽ hưá»ng dẫn bạn c\xe1ch cấu h\xecnh proxy tr\xean Chrome.</p><h2>C\xe1c bưá»c thá»±c hiá»n</h2><ol><li>Má» Chrome Settings</li><li>T\xecm Äến phần System</li><li>Click v\xe0o "Open your computer\'s proxy settings"</li><li>Nháºp th\xf4ng tin proxy cá»§a bạn</li></ol><h2>Kết luáºn</h2><p>Viá»c cấu h\xecnh proxy tr\xean Chrome rất ÄÆ¡n giản v\xe0 mang lại nhiá»u lợi \xedch cho ngưá»i d\xf9ng.</p>',status:"published",tags:["proxy","chrome","hưá»ng dẫn"],viewCount:1520,publishedAt:new Date(Date.now()-1728e5).toISOString(),author:u,category:p[0],createdAt:new Date(Date.now()-432e6).toISOString(),updatedAt:new Date().toISOString()},{id:"blog-2",title:"Proxy l\xe0 g\xec? Tất cả những Äiá»u bạn cần biết vá» Proxy",slug:"proxy-la-gi-tat-ca-nhung-dieu-ban-can-biet",excerpt:"T\xecm hiá»u vá» proxy server, c\xe1c loại proxy phá» biến v\xe0 c\xe1ch ch\xfang hoạt Äá»ng Äá» bảo vá» quyá»n ri\xeang tư cá»§a bạn tr\xean internet.",content:"<h2>Proxy l\xe0 g\xec?</h2><p>Proxy server l\xe0 má»t m\xe1y chá»§ trung gian Äứng giữa thiết bá» cá»§a bạn v\xe0 internet. Khi bạn sá» dụng proxy, c\xe1c y\xeau cầu cá»§a bạn sẽ ÄÆ°á»£c gá»i qua proxy server trưá»c khi Äến Ä\xedch.</p><h2>C\xe1c loại Proxy</h2><ul><li><strong>HTTP Proxy:</strong> Ph\xf9 hợp cho viá»c duyá»t web th\xf4ng thưá»ng</li><li><strong>HTTPS Proxy:</strong> Há» trợ m\xe3 h\xf3a SSL/TLS</li><li><strong>SOCKS Proxy:</strong> Äa nÄng, há» trợ nhiá»u giao thức</li></ul><h2>Lợi \xedch cá»§a viá»c sá» dụng Proxy</h2><p>Proxy gi\xfap bảo vá» danh t\xednh, vượt qua giá»i hạn Äá»a l\xfd, v\xe0 tÄng tá»c Äá» truy cáºp web.</p>",status:"published",tags:["proxy","kiến thức","bảo máºt"],viewCount:3250,publishedAt:new Date(Date.now()-432e6).toISOString(),author:u,category:p[1],createdAt:new Date(Date.now()-864e6).toISOString(),updatedAt:new Date().toISOString()},{id:"blog-3",title:"So s\xe1nh Proxy tÄ©nh v\xe0 Proxy xoay: N\xean chá»n loại n\xe0o?",slug:"so-sanh-proxy-tinh-va-proxy-xoay",excerpt:"Ph\xe2n t\xedch chi tiết ưu nhược Äiá»m cá»§a proxy tÄ©nh v\xe0 proxy xoay Äá» gi\xfap bạn lá»±a chá»n loại proxy ph\xf9 hợp nhất vá»i nhu cầu sá» dụng.",content:"<h2>Proxy tÄ©nh l\xe0 g\xec?</h2><p>Proxy tÄ©nh (Static Proxy) l\xe0 loại proxy c\xf3 Äá»a chá» IP cá» Äá»nh, kh\xf4ng thay Äá»i trong suá»t thá»i gian sá» dụng.</p><h2>Proxy xoay l\xe0 g\xec?</h2><p>Proxy xoay (Rotating Proxy) tá»± Äá»ng thay Äá»i Äá»a chá» IP sau má»i khoảng thá»i gian hoặc sau má»i request.</p><h2>So s\xe1nh</h2><table><tr><th>Ti\xeau ch\xed</th><th>Proxy tÄ©nh</th><th>Proxy xoay</th></tr><tr><td>á»n Äá»nh</td><td>Cao</td><td>Trung b\xecnh</td></tr><tr><td>Ẩn danh</td><td>Trung b\xecnh</td><td>Cao</td></tr></table>",status:"published",tags:["proxy tÄ©nh","proxy xoay","so s\xe1nh"],viewCount:2180,publishedAt:new Date(Date.now()-6048e5).toISOString(),author:u,category:p[1],createdAt:new Date(Date.now()-10368e5).toISOString(),updatedAt:new Date().toISOString()},{id:"blog-4",title:"Cáºp nháºt t\xednh nÄng má»i: Key xoay proxy vá»i bandwidth",slug:"cap-nhat-tinh-nang-moi-key-xoay-proxy",excerpt:"Giá»i thiá»u t\xednh nÄng Key xoay proxy má»i vá»i há» thá»ng quản l\xfd bandwidth th\xf4ng minh, gi\xfap tiết kiá»m chi ph\xed v\xe0 tá»i ưu hiá»u suất.",content:"<h2>T\xednh nÄng má»i</h2><p>Ch\xfang t\xf4i vui mừng th\xf4ng b\xe1o t\xednh nÄng Key xoay proxy Ä\xe3 ÄÆ°á»£c n\xe2ng cấp vá»i há» thá»ng quản l\xfd bandwidth th\xf4ng minh.</p><h2>C\xe1c cải tiến</h2><ul><li>Theo d\xf5i lưu lượng real-time</li><li>Cảnh b\xe1o khi sắp hết bandwidth</li><li>Tá»± Äá»ng gia hạn khi hết hạn</li></ul>",status:"published",tags:["tin tức","cáºp nháºt","key xoay"],viewCount:890,publishedAt:new Date(Date.now()-864e5).toISOString(),author:u,category:p[2],createdAt:new Date(Date.now()-2592e5).toISOString(),updatedAt:new Date().toISOString()},{id:"blog-5",title:"5 mẹo tá»i ưu hiá»u suất khi sá» dụng Proxy",slug:"5-meo-toi-uu-hieu-suat-khi-su-dung-proxy",excerpt:"Kh\xe1m ph\xe1 5 mẹo hữu \xedch gi\xfap bạn tá»i ưu hiá»u suất khi sá» dụng proxy, từ viá»c chá»n server Äến cấu h\xecnh timeout.",content:"<h2>Mẹo 1: Chá»n server gần nhất</h2><p>Lu\xf4n chá»n proxy server c\xf3 vá» tr\xed Äá»a l\xfd gần vá»i bạn Äá» giảm Äá» trá»
.</p><h2>Mẹo 2: Sá» dụng Ä\xfang giao thức</h2><p>Chá»n HTTP cho web th\xf4ng thưá»ng, SOCKS5 cho c\xe1c ứng dụng Äa dạng.</p><h2>Mẹo 3: Cấu h\xecnh timeout ph\xf9 hợp</h2><p>Äặt timeout vừa Äá»§ Äá» tr\xe1nh request bá» há»§y qu\xe1 sá»m.</p><h2>Mẹo 4: Kiá»m tra Äá»nh kỳ</h2><p>Thưá»ng xuy\xean kiá»m tra tá»c Äá» v\xe0 Äá» á»n Äá»nh cá»§a proxy.</p><h2>Mẹo 5: Sá» dụng proxy pool</h2><p>Kết hợp nhiá»u proxy Äá» tÄng Äá» tin cáºy.</p>",status:"published",tags:["mẹo vặt","tá»i ưu","hiá»u suất"],viewCount:1650,publishedAt:new Date(Date.now()-864e6).toISOString(),author:u,category:p[3],createdAt:new Date(Date.now()-1296e6).toISOString(),updatedAt:new Date().toISOString()},{id:"blog-6",title:"Hưá»ng dẫn sá» dụng API Äá» quản l\xfd Proxy",slug:"huong-dan-su-dung-api-quan-ly-proxy",excerpt:"T\xe0i liá»u chi tiết vá» c\xe1ch sá» dụng API Äá» tá»± Äá»ng h\xf3a viá»c quản l\xfd proxy, bao gá»m c\xe1c endpoint v\xe0 v\xed dụ code.",content:"<h2>Giá»i thiá»u API</h2><p>API cá»§a ch\xfang t\xf4i cho ph\xe9p bạn tá»± Äá»ng h\xf3a má»i thao t\xe1c quản l\xfd proxy.</p><h2>Authentication</h2><pre><code>Authorization: Bearer YOUR_API_TOKEN</code></pre><h2>Endpoints</h2><ul><li>GET /api/v1/proxies - Lấy danh s\xe1ch proxy</li><li>POST /api/v1/proxies/rotate - Xoay IP proxy</li><li>GET /api/v1/proxies/:id/status - Kiá»m tra trạng th\xe1i</li></ul>",status:"published",tags:["api","hưá»ng dẫn","developer"],viewCount:980,publishedAt:new Date(Date.now()-3456e5).toISOString(),author:u,category:p[0],createdAt:new Date(Date.now()-6912e5).toISOString(),updatedAt:new Date().toISOString()},{id:"blog-7",title:"Bảo máºt khi sá» dụng Proxy: Những Äiá»u cần lưu \xfd",slug:"bao-mat-khi-su-dung-proxy",excerpt:"C\xe1c nguy\xean tắc bảo máºt quan trá»ng khi sá» dụng proxy Äá» Äảm bảo an to\xe0n th\xf4ng tin c\xe1 nh\xe2n v\xe0 dữ liá»u cá»§a bạn.",content:"<h2>Tại sao bảo máºt quan trá»ng?</h2><p>Khi sá» dụng proxy, dữ liá»u cá»§a bạn Äi qua má»t server trung gian. Äiá»u n\xe0y tạo ra cả cÆ¡ há»i v\xe0 rá»§i ro.<
1/p><h2>C\xe1c nguy\xean tắc bảo máºt</h2><ol><li>Chá» sá» dụng proxy từ nh\xe0 cung cấp uy t\xedn</li><li>Lu\xf4n sá» dụng HTTPS khi c\xf3 thá»</li><li>Kh\xf4ng nháºp th\xf4ng tin nhạy cảm qua proxy c\xf4ng cá»ng</li><li>Kiá»m tra ch\xednh s\xe1ch bảo máºt cá»§a nh\xe0 cung cấp</li></ol>",status:"published",tags:["bảo máºt","kiến thức","an to\xe0n"],viewCount:2450,publishedAt:new Date(Date.now()-12096e5).toISOString(),author:u,category:p[1],createdAt:new Date(Date.now()-1728e6).toISOString(),updatedAt:new Date().toISOString()},{id:"blog-8",title:"Khuyến m\xe3i th\xe1ng 1: Giảm 20% tất cả g\xf3i Proxy",slug:"khuyen-mai-thang-1-giam-20-phan-tram",excerpt:"Nh\xe2n dá»p nÄm má»i, ch\xfang t\xf4i triá»n khai chương tr\xecnh khuyến m\xe3i Äặc biá»t giảm 20% cho tất cả c\xe1c g\xf3i proxy trong th\xe1ng 1.",content:"<h2>Chương tr\xecnh khuyến m\xe3i</h2><p>Nh\xe2n dá»p nÄm má»i 2024, HomeProxy triá»n khai chương tr\xecnh giảm gi\xe1 Äặc biá»t!</p><h2>Chi tiết</h2><ul><li>Thá»i gian: 01/01 - 31/01/2024</li><li>Mức giảm: 20% cho tất cả g\xf3i</li><li>\xc1p dụng: Kh\xe1ch h\xe0ng má»i v\xe0 cÅ©</li></ul><h2>C\xe1ch nháºn ưu Ä\xe3i</h2><p>Sá» dụng m\xe3: <strong>NEWYEAR2024</strong> khi thanh to\xe1n.</p>",status:"published",tags:["khuyến m\xe3i","tin tức","giảm gi\xe1"],viewCount:3100,publishedAt:new Date(Date.now()-2592e5).toISOString(),author:u,category:p[2],createdAt:new Date(Date.now()-432e6).toISOString(),updatedAt:new Date().toISOString()}],l=[{id:"viettel-static",name:"Proxy tÄ©nh Viettel",price:1e3,originPrice:1e3,provider:"VIETTEL",imageUrl:"/images/viettel.png",category:{id:"cat-static",name:"Proxy TÄ©nh",slug:"proxy-tinh",unit:"ng\xe0y",categorytype:{id:1,name:"Proxy TÄ©nh",slug:"proxy-tinh"}},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()},{id:"vnpt-static",name:"Proxy tÄ©nh VNPT",price:2e3,originPrice:2e3,provider:"VNPT",imageUrl:"/images/vnpt.png",category:{id:"cat-static",name:"Proxy TÄ©nh",slug:"proxy-tinh",unit:"ng\xe0y",categorytype:{id:1,name:"Proxy TÄ©nh",slug:"proxy-tinh"}},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()},{id:"fpt-static",name:"Proxy tÄ©nh FPT",price:3e3,originPrice:3e3,provider:"FPT",imageUrl:"/images/fpt.png",category:{id:"cat-static",name:"Proxy TÄ©nh",slug:"proxy-tinh",unit:"ng\xe0y",categorytype:{id:1,name:"Proxy TÄ©nh",slug:"proxy-tinh"}},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}],g=[{id:"rotate-daily",name:"Proxy xoay theo ng\xe0y",price:3e3,originPrice:3e3,provider:"MIXED",category:{id:"cat-rotate-day",name:"Proxy Xoay",slug:"proxy-xoay",unit:"ng\xe0y",categorytype:{id:2,name:"Proxy Xoay",slug:"proxy-xoay"}},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()},{id:"rotate-weekly",name:"Proxy xoay theo tuần",price:22e3,originPrice:22e3,provider:"MIXED",category:{id:"cat-rotate-week",name:"Proxy Xoay",slug:"proxy-xoay",unit:"tuần",categorytype:{id:2,name:"Proxy Xoay",slug:"proxy-xoay"}},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()},{id:"rotate-monthly",name:"Proxy xoay theo th\xe1ng",price:9e4,originPrice:9e4,provider:"MIXED",category:{id:"cat-rotate-month",name:"Proxy Xoay",slug:"proxy-xoay",unit:"th\xe1ng",categorytype:{id:2,name:"Proxy Xoay",slug:"proxy-xoay"}},createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}],y=[{id:"loc-1",name:"H\xe0 Ná»i",slug:"ha-noi"},{id:"loc-2",name:"Há» Ch\xed Minh",slug:"ho-chi-minh"},{id:"loc-3",name:"B\xecnh Dương",slug:"binh-duong"}]},64269:(e,t,n)=>{n.d(t,{cn:()=>r,z:()=>i});var o=n(2821),a=n(75889);function r(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,a.QP)((0,o.$)(t))}function i(e){var t,n;let o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{decimals:a=0,sizeType:r="normal"}=o;if(0===e)return"0 Byte";let i=Math.floor(Math.log(e)/Math.log(1024));return"".concat((e/Math.pow(1024,i)).toFixed(a)," ").concat("accurate"===r?null!=(t=["Bytes","KiB","MiB","GiB","TiB"][i])?t:"Bytest":null!=(n=["Bytes","KB","MB","GB","TB"][i])?n:"Bytes")}
1},69715:(e,t,n)=>{n.d(t,{_o:()=>o});let o={id:"demo-user",userName:"demo",firstName:"Demo",lastName:"User",phone:"0123456789",email:"[email protected]",coin:1e6,merchantId:"demo",roleId:"1",createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()};Date.now(),new Date(Date.now()+864e5).toISOString()}}]);
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.