1"use strict";(self.webpackChunkssv_web=self.webpackChunkssv_web||[]).push([[5027],{71275(e,t,a){a.d(t,{A:()=>_});var r=a(76034),l=a(47500),s=a(69533),n=a.n(s),i=a(58733),c=a(63232),o=a(4534),d=a(6020),u=a(55482),p=a(36766),m=a(45986),x=a(98568),v=a(67208),h=a(60737),f=a(57744);const b="asc",y="desc",_=e=>{let{clsNmParent:t="border",isDisplayHeader:a=!0,isDisabledChkAll:s=!1,keyUniChkBox:_="",handleDisabledChkBox:g=()=>{},checkedList:k=[],onChangeCheckbox:j=()=>{},spanOfCheckBox:S=1,isCheckBox:N=!1,spanOfFinalRow:A=0,finalRow:C=()=>{},propsExcel:T={filename:"",headers:[],data:[]},loading:M=!1,isReset:D=!0,isExportExcel:R=!0,titleTable:E="",spanCol:w=()=>1,classNameHeader:B="",styleHeader:F=()=>{},classNameBody:O="",styleBody:I=()=>{},heightBody:K=300,headers_table:L=[{id:1,key_label:[""],key_data:[""]}],data_table:P=[],renderFilterComp:H=()=>{},renderContent:q=()=>{},classNameContent:U=()=>"",onScroll:z=()=>{},onResetDataFilter:X=()=>{},isSort:G=!1,listColSort:W=[],onSort:Q=()=>{},clsNmId:J=e=>"colRecord-".concat(e)}=e;const{t:V}=(0,i.B)(),{theme:Y}=(0,l.useContext)(c.P),[$,Z]=(0,l.useState)();return(0,f.jsxs)("div",{className:n()("bg-surface_primary border-primary h-full rounded-[1px]",t),children:[a&&(0,f.jsxs)("div",{className:"flex flex-row justify-between items-center p-[16px]",children:[(0,f.jsx)("h1",{className:"text-lg font-semibold text-primary capitalize",children:E}),(0,f.jsxs)("div",{className:"flex flex-row justify-center items-center gap-[22px]",children:[H(),D&&(0,f.jsx)(m.A,{placement:"topRight",className:"flex flex-col justify-center items-center cursor-pointer",children:(0,f.jsx)("button",{className:"flex flex-col justify-center items-center",onClick:()=>X(),children:(0,f.jsx)(h.NA,{})})}),R&&(0,f.jsx)(v.b,(0,r.A)({},T))]})]}),(0,f.jsxs)(l.Fragment,{children:[(0,f.jsxs)(o.A,{children:[N&&(0,f.jsx)(d.A,{className:"bg-gray_light-2 dark:bg-gray-70",span:S,children:(0,f.jsx)("div",{className:"py-[12px] gap-[6px] h-full pl-[16px] pr-[8px] flex flex-col justify-center",children:(0,f.jsx)(x.A,{value:"all",isDisabled:s,onChange:e=>{var t;return j(null===e||void 0===e||null===(t=e.target)||void 0===t?void 0:t.value)}})})}),null===L||void 0===L?void 0:L.map((e,t)=>{var a;return(0,f.jsx)(d.A,{className:"bg-gray_light-2 dark:bg-gray-70 flex-1",span:w(e.id),children:(0,f.jsx)("div",{className:n()("py-[12px] gap-[6px] h-full flex flex-col justify-center",0!==t||N?"px-[8px]":"pl-[16px] pr-[8px]",B,(0,r.A)({},F(e.id))),children:null===e||void 0===e||null===(a=e.key_label)||void 0===a?void 0:a.map((t,a)=>(0,f.jsxs)("div",{className:"flex flex-row justify-start items-center gap-2",children:[(0,f.jsx)("p",{className:"text-xs font-semibold text-secondary",children:V(t)},"".concat(t,"-").concat(a)),G&&W.includes(e.key_data[a])&&(0,f.jsx)("button",{className:"flex flex-col justify-center items-center",onClick:()=>((e,t)=>{const a=$===b?y:b;Z(a),Q({key_sort:a,keyData:e,keyIdx:t})})(e.key_data,a),children:(0,f.jsx)(h.n5,{activeColorUp:$===b?"#6B2EE5":"#767C8A",activeColorDown:$===y?"#6B2EE5":"#767C8A"})})]},"".concat(a,"-").concat(t)))})},"".concat(e.id,"-").concat(t))}),!!A&&(0,f.jsx)(d.A,{className:n()("bg-gray_light-2 dark:bg-gray-70",B),span:A})]}),(0,f.jsx)(u.A,{spinning:M,children:(0,f.jsx)(o.A,{className:"h-auto overflow-y-auto",style:{maxHeight:K},onScroll:e=>z(e),children:(0,f.jsx)(p.A,{isExistData:(null===P||void 0===P?void 0:P.length)>0,renderContent:()=>P.map((e,t)=>(0,f.jsxs)(l.Fragment,{children:[N&&(0,f.jsx)(d.A,{className:n()("flex flex-col justify-center gap-[6px] py-[12px] border-t border-primary pl-[16px] pr-[8px] transition-colors",J(t+1)),span:S,children:(0,f.jsx)(x.A,{value:e[_],checked:null===k||void 0===k?void 0:k.includes(e[_]),isDisabled:g(e),onChange:e=>{var t;return j(null===e||void 0===e||null===(t=e.target)||void 0===t?void 0:t.value)}})}),L.map((a,l)=>(0,f.jsx)(d.A,{className:n()("flex flex-col justify-center gap-[6px] py-[12px] border-t border-primary transition-colors",0!==l||N?"px-[8px]":"pl-[16px] pr-[8px]",O,J(t+1),(0,r.A)({},I(null===a||void 0===a?void 0:a.id))),span:w(a.id),onMouseEnter:()=>{return e=J(t+1),void document.querySelectorAll(".".concat(e)).forEac
1h(e=>{"DARK"===Y?e.classList.add("bg-gray_light-40"):e.classList.add("bg-purple-5")});var e},onMouseLeave:()=>{return e=J(t+1),void document.querySelectorAll(".".concat(e)).forEach(e=>{"DARK"===Y?e.classList.remove("bg-gray_light-40"):e.classList.remove("bg-purple-5")});var e},children:null===a||void 0===a?void 0:a.key_data.map((a,r)=>(0,f.jsx)("div",{className:n()("text-sm",U(a)),children:q(a,e,t)},r))},l)),!!A&&(0,f.jsx)(d.A,{className:n()("flex flex-col items-start justify-center gap-[6px] py-[12px] border-t border-primary transition-colors",J(t+1),O),span:A,children:C(e)})]},t))})})})]})]})}},75027(e,t,a){a.r(t),a.d(t,{default:()=>F});var r=a(76034),l=a(47500),s=a(18924),n=a(58733),i=a(69929),c=a(35649),o=a(84332),d=a(78805),u=a(83081),p=a(97010),m=a.n(p),x=a(86542),v=a.n(x),h=a(58331),f=a.n(h),b=a(91400),y=a(57744);f()(m());let _=0;const g=e=>{let{dataChart:t,currentIndex:a}=e;const[r,s]=(0,l.useState)([]),o=(0,l.useRef)(null),{t:d}=(0,n.B)(),u=(0,c.q)(i.Screens.MARKET_CAP);(0,l.useEffect)(()=>{const e=t.map(e=>e.c0);s(e)},[t]),(0,l.useEffect)(()=>{const e=["KRXMDDS|ST|G1","KRXMDDS|SI|G1"],a=setInterval(()=>{o.current.chart.update({series:{data:x(t)}})},1e4);return u.subscribe({onTimeout:()=>p(e,r,e=>{o.current&&o.current.chart.update({series:{data:x(t)}})}),topic:e,value:r,onSuccess:e=>{console.log("SubStockRealTime.subscribe th\xe0nh c\xf4ng",e),o.current&&o.current.chart.update({series:{data:x(t)}})}}),()=>{clearInterval(a),u.clearRealTimeListener({unsubscribe:!0})}},[r,a]);const p=(e,t,a)=>{u.subscribe({topic:e,value:t,onTimeout:()=>p(e,t),onSuccess:a})},x=e=>{const t=[];return e.map((e,a)=>{var r,l,s,n,c;t.push({name:e.c0+h(e.c0,a),keyStock:e.c0,ratioChange:(0,i.FormatNumber)(null===(r=i.glb_sv.StockMarket[e.c0])||void 0===r?void 0:r.t31_incr_per,2),capValue:Number(e.c1),value:Number(e.c1*(1+(null===(l=i.glb_sv.StockMarket[e.c0])||void 0===l?void 0:l.t31_incr_per)/100||1)),color:(n=null===(s=i.glb_sv.StockMarket[e.c0])||void 0===s?void 0:s.t31_incr,c=0,n>c?"var(--UP__COLOR)":n<c?"var(--DOWN__COLOR)":"var(--REF__COLOR)"),nodeData:i.glb_sv.StockMarket[e.c0]})}),t},h=(e,t)=>{if(t<15){var a;const t=(0,i.FormatNumber)(null===(a=i.glb_sv.StockMarket[e])||void 0===a?void 0:a.t31_incr_per,2);return"0.00"===t?"":" (".concat(t,"%)")}return""},f={chart:{animation:!1,type:"treemap",margin:0,marginTop:12},series:[{type:"treemap",layoutAlgorithm:"stripes",alternateStartingDirection:!0,levels:[{level:1,layoutAlgorithm:"squarified",alternateStartingDirection:!0,dataLabels:{enabled:!0,padding:0,x:0,y:0,className:"label_treemap_item",style:{color:"var(--BG__1)",textShadow:!1,textOutline:!1,textOverflow:"ellipsis",fontSize:"var(--xnormal)"}}}],events:{click:function(e){var t,a;null===e||void 0===e||null===(t=e.point)||void 0===t||null===(a=t.nodeData)||void 0===a||a.t55}},data:x(t)}],title:{text:""},tooltip:{formatter:function(e){var t;return null===(t=(0,b.F0)((0,y.jsx)(g,{node:this})))||void 0===t?void 0:t.replaceAll("\x3c!-- --\x3e","")}}},g=e=>{let{node:t}=e;return(0,y.jsxs)("div",{className:"flex flex-direction-row",style:{fontSize:"var(--normal)"},children:[(0,y.jsxs)("div",{className:"flex-1",children:[(0,y.jsxs)("span",{children:[d("short_symbol"),": "]}),(0,y.jsx)("span",{style:{fontWeight:"bold"},children:t.point.options.keyStock+" (".concat(t.point.options.ratioChange,"%)")})]}),(0,y.jsx)("br",{}),(0,y.jsxs)("div",{className:"flex-1",children:[(0,y.jsxs)("span",{children:[d("market_cap"),": "]}),(0,y.jsx)("span",{children:(0,i.FBigNumber)(t.point.value,{fixTo:"B",translateFunc:d,unit:" "+d("vnd_currency_unit")})})]})]})};return(0,y.jsx)("div",{className:"highcharts-marketcap h-full",id:"highcharts-marketcap",style:{},children:(0,y.jsx)(v(),{ref:o,highcharts:m(),options:f,callback:e=>{const t=document.getElementById("highcharts-marketcap");e.update({chart:{height:_||(null===t||void 0===t?void 0:t.offsetHeight)+106,minHeight:450}}),_||(_=null===t||void 0===t?void 0:t.offsetHeight)}})})},k=(0,l.memo)(g);var j=a(33004),S=a.n(j),N=a(69533),A=a.n(N),C=a(71275);const T=[{id:1,key_label:["short_symbol"],key_data:["name"]},{id:2,key_label:["+/- (%)"],key_data:["percent"]},{id:3,key_label:["market_cap"],key_data:["value"]}],M=e=>{let{dataSource:t}=e;const[a,r]=(0,l.useState)([]),s=(0,c.q)(i.Screens.MARKET_CAP);(0,l.useEffect)(()=>(s.listen(e=>{if(e.type===i.eventList.SUB_STOCK){const l=[...t],s=l.findIndex(t=>t.name===e.msgKey);var a;if(l[s]&&l[s].percent)l[s].percent=(0,i.FormatNumber)(null===(a=i.glb_sv.StockMarket[e.msgKey])||void 0===a?void 0:a.t31_incr_per,2,1,"");r(l)}}),()=>{s.clearRealTimeListener({unsubscribe:!0})}),[t]);const n=(e,t)=>e?e>t?"text-up":e<t?"text-down":"text-ref":"text-ref";return(0,y.jsx)("div",{className:"bg-surface_primary h-full table-market-cap",style:{},children:(0,y.jsx)(C.A,{heightBody:"calc(100% - 38px)",isDisplayHeader:!1,isReset:!1,isExportExcel:!1,headers_table:T,data_table:a,spanCol:()=>8,renderContent:(e,t)=>
1{var a,r,l,s,c;switch(e){case"name":return(0,y.jsx)("span",{className:A()("text-sm font-semibold hover:underline hover:underline-offset-4 transition-all",n(null===(a=i.glb_sv.StockMarket[t.name])||void 0===a?void 0:a.t31_incr_per,0)),onClick:()=>(0,i.openStockDetail)(t[e]),children:t[e]});case"percent":return(0,y.jsxs)("span",{className:A()("text-sm font-medium dark:font-regular",n(null===(r=i.glb_sv.StockMarket[t.name])||void 0===r?void 0:r.t31_incr_per,0)),children:[(0,i.FormatNumber)(null===(l=i.glb_sv.StockMarket[t.name])||void 0===l?void 0:l.t31_incr_per,2,0,""),"%"]});case"value":return(0,y.jsx)("span",{className:"text-sm font-medium dark:font-regular text-primary",children:(0,i.FBigNumber)(t[e]*((null===(s=i.glb_sv.StockMarket[t.name])||void 0===s?void 0:s.t31)/(null===(c=i.glb_sv.StockMarket[t.name])||void 0===c?void 0:c.t260)||1),{fixTo:"B"})});default:return}},styleHeader:e=>({"items-end":[2,3].includes(e)}),styleBody:e=>({"text-right":[2,3].includes(e)}),isSort:!0,listColSort:["name","percent","value"],onSort:e=>(e=>{const{key_sort:t,keyIdx:l,keyData:s}=e||{};if(["name","percent","value"].includes(s[l])){let e;a.map(e=>{e.namef=e.name,e.percentf=Number(e.percent),e.valuef=Number(e.value)});const n=s[l]+"f";e=S()(a,[n],[t]),r([...e])}})(e)})})},D=e=>{let{dataMarketCap:t,dataTableRender:a}=e;const{t:r}=(0,n.B)();return(0,y.jsxs)("div",{className:"flex gap-[24px] h-full",children:[(0,y.jsxs)("div",{className:"w-3/4 bg-surface_primary border border-primary",style:{height:"fit-content"},children:[(0,y.jsxs)("div",{className:"flex w-full justify-between items-center pt-[16px] px-[16px]",children:[(0,y.jsx)("div",{className:"font-bold text-2xl text-primary",children:r("title_market_cap")}),(0,y.jsx)("div",{className:"text-teriarty text-xs font-regular",children:r("title_market_cap_description")})]}),(0,y.jsx)("div",{className:"w-full pb-[16px]",children:(0,y.jsx)(k,{dataChart:t})})]}),(0,y.jsx)("div",{className:"w-1/4 h-full",children:(0,y.jsx)(M,{dataSource:a})})]})};var R=a(76012);const E={WorkerName:"FOSqMkt03",ServiceName:"FOSqMkt03_MarketCap",ClientSentTime:"0",Operation:"Q"},w=e=>"01"===e?"STO|001":"03"===e?"STX|002":"05"===e?"UPX|301":void 0,B=()=>{const{t:e}=(0,n.B)(),{filterOption:t,setFilterOption:a}=(0,l.useContext)(s.D),[c,p]=(0,l.useState)(t.exchangeType),m=(0,l.useRef)([]),x=(0,l.useRef)([]),[v,h]=(0,l.useState)({market_cap_chart:[],market_cap_table:[]}),f=async t=>{const a=i.glb_sv.StatisticMarket.getStatisticData({key:w(t),time:"STATIC",topic:"MARKET_CAP"});if((null===a||void 0===a?void 0:a.length)>0){const e=a.map(e=>{var t;return{name:e.c0,percent:(0,i.FormatNumber)(null===(t=i.glb_sv.StockMarket[e.c0])||void 0===t?void 0:t.t31_incr_per,2,0,""),value:Number(e.c1)}}),t=a,l=e;m.current=e,x.current=a;const s={market_cap_chart:t,market_cap_table:l};return void h((0,r.A)({},s))}!async function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"01";try{const e=["TOP","50",w(t)],{reqInfoMap:a,message:l}=await(0,o.y)(E,e,!0,()=>null);if(l&&1===Number(l.Result)){const e=l.Data?JSON.parse(l.Data):[],a=e.map(e=>{var t;return{name:e.c0,percent:(0,i.FormatNumber)(null===(t=i.glb_sv.StockMarket[e.c0])||void 0===t?void 0:t.t31_incr_per,2,1,""),value:Number(e.c1)}}),s=e,n=a;m.current=a,x.current=e;const c={market_cap_chart:s,market_cap_table:n};h((0,r.A)({},c)),Number(l.Packet)<=0&&i.glb_sv.StatisticMarket.updateStatisticData({key:w(t),time:"STATIC",topic:"MARKET_CAP",data:e})}}catch(a){const{message:t}=a||{};console.log("QUERY FAIL!",a),(0,d.rh)(e,t)}}(t)};return(0,l.useEffect)(()=>()=>{i.glb_sv.StatisticMarket.updateStatisticData({key:w(null===t||void 0===t?void 0:t.exchangeType),time:"STATIC",topic:"MARKET_CAP",data:[]})},[]),(0,l.useEffect)(()=>{f(t.exchangeType)},[t.exchangeType]),(0,y.jsx)("div",{style:{height:"calc(100vh - 64px - 50px - 64px)"},children:(0,y.jsx)(u.A,{className:"market-cap h-full",isUnderline:!0,size:"medium",activeKey:c,defaultActiveKey:t.exchangeType,type:"line",items:R.$x.map(e=>({key:null===e||void 0===e?void 0:e.value,label:null===e||void 0===e?void 0:e.label,children:(0,y.jsx)(D,{dataMarketCap:v.market_cap_chart||[],dataTableRender:v.market_cap_table||[]}),isDisabled:!1,style:{},className:"pt-[24px]"})),onChange:e=>{i.glb_sv.StatisticMarket.updateStatisticData({key:w(null===t||void 0===t?void 0:t.exchangeType),time:"STATIC",topic:"MARKET_CAP",data:[]}),p(e),h({market_cap_chart:[],market_cap_table:[]}),a((0,r.A)((0,r.A)({},t),{},{exchangeType:e}))}})})},F=(0,l.memo)(B)}}]);
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.