n[e]?1:0)*t}},be=function(e){var t=Object(i.b)(),a=Object(i.c)((function(e){return e.erabiltzaileak})),r=Object(i.c)((function(e){return e.erabiltzaileak})),c=Object(n.useRef)(r);return Object(n.useEffect)((function(){r.items.length>0&&r.items.map((function(e){return t(G(e))})),c.current=r}),[t]),Object(F.jsxs)("div",{children:[Object(F.jsx)("h1",{children:"Gutarrak"}),Object(F.jsx)(L.a,{basic:!0,children:Object(F.jsxs)(ee.a.Group,{itemsPerRow:6,doubling:!0,children:[Object(F.jsx)(oe.a,{active:a.loading,inverted:!0,children:Object(F.jsx)(je.a,{children:"Bagatoz..."})}),a.loaded&&a.items.sort(ue("-viewer_count")).sort(ue("-broadcaster_type")).map((function(e){return Object(F.jsx)(de,{user:e})}))]})})]})},he=a(251),Oe=a(228),pe=a(245),xe=a(260),me=a(252),fe=a(247),ge=(a(223),function(e){var t=e.clip;return Object(F.jsxs)(ee.a,{className:"clip-card",children:[Object(F.jsx)("a",{href:t.url,target:"_blank",rel:"noreferrer",children:Object(F.jsx)(te.a,{src:t.thumbnail_url.replace("%{width}",440).replace("%{height}",228)})}),Object(F.jsx)(ie.a,{attached:"top left",className:"card-ribbon",children:t.broadcaster_name}),Object(F.jsxs)(ee.a.Content,{className:"card-content",children:[Object(F.jsx)(ee.a.Header,{children:Object(F.jsx)("a",{href:t.url,target:"_blank",rel:"noreferrer",children:t.title})}),Object(F.jsx)(L.a,{basic:!0,children:Object(F.jsx)(Y.a,{children:Object(F.jsxs)(Y.a.Row,{children:[Object(F.jsx)(Y.a.Column,{width:11,className:"no-l-padded",children:Object(F.jsxs)(Y.a,{children:[Object(F.jsx)(Y.a.Row,{className:"no-padded",children:Object(F.jsxs)(Y.a.Column,{children:[Object(F.jsx)(U.a,{name:"paperclip"}),t.creator_name.length>15?"".concat(t.creator_name.substring(0,15),"..."):t.creator_name]})}),Object(F.jsx)(Y.a.Row,{className:"no-padded",children:Object(F.jsxs)(Y.a.Column,{children:[Object(F.jsx)(U.a,{name:"clock"}),re()(t.created_at).format("YYYY/MM/DD")]})}),Object(F.jsx)(Y.a.Row,{className:"no-padded",children:Object(F.jsxs)(Y.a.Column,{children:[Object(F.jsx)(U.a,{name:"eye"}),t.view_count," ikustaldi"]})})]})}),Object(F.jsxs)(Y.a.Column,{width:5,className:"share-clip",children:[Object(F.jsx)("a",{type:"button",role:"button",title:"Share on twitter",target:"_blank",rel:"noreferrer",href:"https://twitter.com/intent/tweet?url=[".concat(t.broadcaster_name,"]%0A").concat(t.title,"%0A%0A").concat(t.url),children:Object(F.jsx)(U.a,{name:"twitter",color:"blue",size:"large"})}),Object(F.jsx)(fe.a,{content:"Arbelean kopiatu da zure sareetan partekatzeko!",basic:!0,inverted:!0,position:"top center",on:"click",trigger:Object(F.jsx)(U.a,{name:"copy",size:"large",className:"copy-icon",onClick:function(){navigator.clipboard.writeText("[".concat(t.broadcaster_name,"]\n").concat(t.title,"\n\n").concat(t.url))}})})]})]})})})]})]})}),ve=function(e){var t=e.erabiltzailea;return Object(F.jsxs)(ee.a,{children:[Object(F.jsx)("a",{href:"https://www.twitch.tv/"+(null===t||void 0===t?void 0:t.user_login),target:"_blank",rel:"noreferrer",children:Object(F.jsx)(te.a,{src:(null===t||void 0===t?void 0:t.thumbnail_url.replace("{width}",440).replace("{height}",228))||"https://www.pngitem.com/pimgs/m/421-4212617_person-placeholder-image-transparent-hd-png-download.png",className:"live-img"})}),Object(F.jsxs)(ee.a.Content,{children:[Object(F.jsx)(ie.a,{color:"red",ribbon:"right",children:"Zuzenean"}),Object(F.jsx)(ee.a.Header,{children:Object(F.jsx)("a",{href:"https://www.twitch.tv/"+(null===t||void 0===t?void 0:t.user_login),target:"_blank",rel:"noreferrer",children:(null===t||void 0===t?void 0:t.user_name)||"Twitzlaria"})}),(null===t||void 0===t?void 0:t.game_name)&&Object(F.jsx)(ee.a.Meta,{children:null===t||void 0===t?void 0:t.game_name}),Object(F.jsxs)(ee.a.Description,{children:[(null===t||void 0===t?void 0:t.title)||"twitzlariaren deskribapena hemen idatzita agertuko da",Object(F.jsxs)("div",{children:[Object(F.jsx)(U.a,{name:"eye"}),t.viewer_count," ikusle"]})]})]})]})},ke=a(17),we=(a(224),function(e){var t,a,r=Object(i.c)((function(e){return e.erabiltzaileak})),c=Object(n.useRef)(r),s=Object(n.useRef)(null),l=Object(i.c)((function(e){return e.zuzenekoak})),o=Object(i.c)((function(e){return e.klipak})),u=Object(i.b)(),O=Object(n.useState)([]),p=Object(T.a)(O,2),x=p[0],m=p[1],f=Object(n.useState)([]),v=Object(T.a)(f,2),k=v[0],w=v[1],_=Object(n.useState)([]),y=Object(T.a)(_,2),z=y[0],C=y[1],E=Object(n.useState)(!1),D=Object(T.a)(E,2),A=D[0],P=D[1],G=function(e){var t=Object(n.useState)(e),a=Object(T.a)(t,2),r=a[0],c=a[1],i=Object(n.useState)(e),s=Object(T.a)(i,2),l=s[0],o=s[1],d=Object(n.useState)(10),u=Object(T.a)(d,2),b=u[0],h=u[1],O=Object(n.useState)(1),p=Object(T.a)(O,2),x=p[0],m=p[1],f=Object(n.useState)(e.slice((x-1)*b,(x-1)*b+b)),g=Object(T.a)(f,2),v=g[0],k=g[1],w=Object(n.useState)({}),_=Object(T.a)(w,2),y=_[0],z=_[1];return Object(n.useEffect)((function(){var e=Object(Z.a)(r);Object.entries(y).forEach((function(t){var a=t[0],n=t[1];n.length>0&&(e=e.filter((function(e){return n.includes(e[a])})))})),o(e)}),[y]),Object(n.useEffect)((function(){k(l.slice((x-1)*b,(x-1)*b+b))}),[l,x,b]),{functions:{setCurrentPage:m,setPaginationSize:h,applyFilter:function(e,t,a,n){var r=t.value,c=Object(j.a)(Object(j.a)({},y),{},Object(ke.a)({},a,r));z(c)},setDataList:o,setOriginalDataList:c,clearFilters:function(){o(r),z({})},applyOrder:function(e){o(Object(Z.a)(l.sort(ue(e))))}},data:{pagination:v,currentPage:x,paginationSize:b,originalDataList:r,dataList:l,filters:y}}}([]),K=G.functions,M=G.data,H=M.pagination,J=M.currentPage,V=M.paginationSize,$=M.dataList,Q=M.filters;Object(n.useEffect)((function(){if(o.loaded&&Object.keys(o.broadcasters).length>0){var e=[];Object.keys(o.broadcasters).forEach((function(t){o.broadcasters[t].length>0&&o.broadcasters[t].forEach((function(t){return e.push(t)}))})),K.setDataList(e.sort(ue("-created_at"))),K.setOriginalDataList(Object(Z.a)(e.sort(ue("-created_at")))),m(Object(Z.a)(new Set(e.map((function(e){return e.broadcaster_name})).sort())).map((function(e){return{key:e,value:e,text:e}}))),w(Object(Z.a)(new Set(e.map((function(e){return e.creator_name})).sort())).map((function(t){var a=e.filter((function(e){return e.creator_name===t&&(new Date-new Date(e.created_at))/864e5<90}));return{key:t,value:t,text:t,count:a.length}})))}}),[o.loaded,o.broadcasters]);var W=d.twitzlariak;Object(n.useEffect)((function(){u(N(W))}),[u,W]),Object(n.useEffect)((function(){(c.current.loading&&r.loaded&&r.items.length>0||!o.loaded&&!o.loading)&&u(function(e){return function(){var t=Object(h.a)(b.a.mark((function t(a){var n;return b.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a({type:I}),t.next=3,g(e);case 3:n=t.sent;try{a({type:S,payload:{items:n}})}catch(r){a({type:R,payload:r})}case 5:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()}(r.items)),c.current=r}),[u,r]);return Object(F.jsxs)("div",{children:[Object(F.jsxs)("div",{className:"live-container",children:[Object(F.jsx)("h2",{children:"Orain zuzenean"}),l.loaded&&l.items.length>0?Object(F.jsx)(L.a,{basic:!0,className:"lives-container",children:Object(F.jsx)(ee.a.Group,{itemsPerRow:3,stackable:!0,children:l.items.map((function(e,t){return Object(F.jsx)(ve,{erabiltzailea:e,isLive:!0},t)}))})}):Object(F.jsx)(L.a,{basic:!0,className:"live",children:Object(F.jsxs)(B.a,{icon:!0,children:[Object(F.jsx)(U.a,{name:"history"}),"Orain momentuan ez dago inor zuzenean."]})})]}),Object(F.jsxs)("div",{className:"clips-container",children:[Object(F.jsx)("h2",{children:"Klipak"}),Object(F.jsx)("div",{ref:s,children:Object(F.jsxs)(he.a.Pushable,{as:L.a,style:{overflow:"hidden"},children:[Object(F.jsxs)(he.a,{as:L.a,animation:"overlay",visible:A,className:"clip-filter-container",children:[Object(F.jsx)(U.a,{className:"close-filter",name:"close",onClick:function(){return P(!1)}}),Object(F.jsx)("h3",{children:"Iragazkiak:"}),Object(F.jsxs)(Y.a,{columns:1,stackable:!0,children:[Object(F.jsx)(Y.a.Row,{children:Object(F.jsxs)(Y.a.Column,{children:[Object(F.jsx)("strong",{className:"filter-heading",children:"Klip egilea:"}),Object(F.jsx)(X.a,{id:"filter-clip-creator",placeholder:"Klip egilea",multiple:!0,selection:!0,search:!0,value:null!==(t=Q.creator_name)&&void 0!==t?t:[],onAddItem:function(e,t){return C([].concat(Object(Z.a)(z),[{key:t.value,text:t.value,value:t.value}]))},options:k,onChange:function(e,t){return K.applyFilter(e,t,"creator_name")}})]})}),Object(F.jsx)(Y.a.Row,{children:Object(F.jsxs)(Y.a.Column,{children:[Object(F.jsx)("strong",{className:"filter-heading",children:"Streamerra:"}),Object(F.jsx)(X.a,{id:"filter-streamer",placeholder:"Steamerra",multiple:!0,selection:!0,search:!0,value:null!==(a=Q.broadcaster_name)&&void 0!==a?a:[],onAddItem:function(e,t){return C([].concat(Object(Z.a)(z),[{key:t.value,text:t.value,value:t.value}]))},options:x,onChange:function(e,t){return K.applyFilter(e,t,"broadcaster_name")}})]})}),Object(F.jsx)(Y.a.Row,{children:Object(F.jsx)(Y.a.Column,{children:Object(F.jsx)(Oe.a,{className:"secondary",onClick:K.clearFilters,children:"Garbitu iragazkiak"})})})]})]}),Object(F.jsx)(he.a.Pusher,{children:Object(F.jsxs)(L.a,{basic:!0,className:"clips-container",loading:o.loading,children:[Object(F.jsxs)(Oe.a,{onClick:function(){return P(!A)},icon:!0,labelPosition:"left",className:A?"hidden-button primary":"primary",children:[Object(F.jsx)(U.a,{name:"filter"}),"Iragazkiak"]}),Object(F.jsx)(Y.a,{stackable:!0,className:"order-container",children:Object(F.jsxs)(Y.a.Row,{columns:4,children:[Object(F.jsxs)(Y.a.Column,{children:[Object(F.jsx)("strong",{className:"filter-heading",children:"Ordenatu:"}),Object(F.jsx)(pe.a,{placeholder:"Ordenatu klipak",className:"order-select",options:q,onChange:function(e,t){var a=t.value;return K.applyOrder(a)},defaultValue:"-created_at"})]}),Object(F.jsxs)(Y.a.Column,{children:[Object(F.jsx)("strong",{className:"filter-heading",children:"Multzokatu:"}),Object(F.jsx)(pe.a,{className:"pagination-size",options:[{value:10,text:"10 klip orriko"},{value:20,text:"20 klip orriko"},{value:50,text:"50 klip orriko"},{value:100,text:"100 klip orriko"}],onChange:function(e,t){var a=t.value;return K.setPaginationSize(a)},defaultValue:V})]})]})}),H.length>0?Object(F.jsxs)(F.Fragment,{children:[Object(F.jsx)(ee.a.Group,{itemsPerRow:5,stackable:!0,doubling:!0,children:H.map((function(e,t){return Object(F.jsx)(ge,{clip:e},t)}))}),Math.round($.length/V)>1&&Object(F.jsx)(L.a,{basic:!0,textAlign:"center",children:Object(F.jsx)(xe.a,{boundaryRange:1,firstItem:null,lastItem:null,size:"mini",activePage:J,onPageChange:function(e,t){var a,n=t.activePage;null===(a=s.current)||void 0===a||a.scrollIntoView({behavior:"smooth"}),K.setCurrentPage(n)},totalPages:Math.round($.length/V)})})]}):Object(F.jsx)(L.a,{placeholder:!0,className:"no-clips",children:Object(F.jsx)(B.a,{})})]})})]})}),Object(F.jsxs)(L.a,{className:"clipers-container",children:[Object(F.jsx)("h3",{children:"Azken 90 egunetako klipen egileak:"}),Object(F.jsx)(Y.a,{columns:5,stackable:!0,className:"ranking-grid",children:k&&k.sort(ue("-count")).slice(0,25).map((function(e,t){return Object(F.jsx)(Y.a.Column,{children:Object(F.jsxs)(me.a,{size:(a=e.count,a<20?"mini":a<50?"tiny":a<75?"small":a<100?"large":"huge"),color:"violet",children:[Object(F.jsx)(me.a.Value,{children:e.count}),Object(F.jsx)(me.a.Label,{children:e.value})]})},t);var a}))})]})]})]})}),_e=a(246),ye=a(48),ze=function(e,t){var a=Object(s.c)(),r=Object(T.a)(a,2),c=r[0],i=r[1],l=c.get("itemBgC")||t,o=Object(n.useState)(l),d=Object(T.a)(o,2),u=d[0],b=d[1];return[function(t){var a,n={},r=Object(ye.a)(c.entries());try{for(r.s();!(a=r.n()).done;){var s=Object(T.a)(a.value,2),l=s[0],o=s[1];n[l]=o}}catch(d){r.e(d)}finally{r.f()}i(Object(j.a)(Object(j.a)({},n),{},Object(ke.a)({},e,t))),b(t)},u,b]},Ce=(a(225),function(e){var t,a,r,c=d.twitzlariak,l=Object(i.b)(),o=Object(i.c)((function(e){return e.zuzenekoak})),j=Object(s.c)(),u=Object(T.a)(j,2),b=u[0],h=(u[1],ze("containerBgC","255-255-255")),O=Object(T.a)(h,2),p=O[0],x=O[1],m=ze("containerBgOp","0"),f=Object(T.a)(m,2),g=f[0],v=f[1],k=ze("containerBgC","125"),w=Object(T.a)(k,2),_=w[0],y=w[1],z=ze("containerBgC","10"),C=Object(T.a)(z,2),E=C[0],I=C[1];return Object(n.useEffect)((function(){l(N(c));var e=setInterval((function(){return l(N(c))}),3e4);return function(){return clearInterval(e)}}),[l,c]),Object(F.jsxs)("div",{children:[b.get("probatzen")&&Object(F.jsx)(L.a,{basic:!0,className:"tools-container",children:Object(F.jsx)(Y.a,{columns:2,children:Object(F.jsx)(Y.a.Column,{children:Object(F.jsxs)(L.a,{children:[Object(F.jsx)("h3",{children:"Zerrendaren atzeko planoa"}),Object(F.jsxs)(H.a,{children:[Object(F.jsx)(H.a.Item,{children:Object(F.jsxs)(Y.a,{columns:2,children:[Object(F.jsx)(Y.a.Column,{width:6,children:Object(F.jsx)("span",{children:"Kolorea:"})}),Object(F.jsx)(Y.a.Column,{children:Object(F.jsx)(_e.a,{type:"color",value:(t=x.split("-")[0],a=x.split("-")[1],r=x.split("-")[2],"#"+(1<<24|t<<16|a<<8|r).toString(16).slice(1)),onChange:function(e){return p(function(e){var t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);return t?"".concat(parseInt(t[1],16),"-").concat(parseInt(t[2],16),"-").concat(parseInt(t[3],16)):null}(e.target.value))}})})]})}),Object(F.jsx)(H.a.Item,{children:Object(F.jsxs)(Y.a,{columns:2,children:[Object(F.jsx)(Y.a.Column,{width:6,children:Object(F.jsx)("span",{children:"Opakotasuna:"})}),Object(F.jsx)(Y.a.Column,{children:Object(F.jsx)(_e.a,{type:"range",min:"0",max:"1",step:"0.1",value:v,onChange:function(e){return g(e.target.value)}})})]})}),Object(F.jsx)(H.a.Item,{children:Object(F.jsxs)(Y.a,{columns:2,children:[Object(F.jsx)(Y.a.Column,{width:6,children:Object(F.jsx)("span",{children:"Zabalera:"})}),Object(F.jsx)(Y.a.Column,{children:Object(F.jsx)(_e.a,{type:"number",value:y,onChange:function(e){return _(e.target.value)}})})]})}),Object(F.jsx)(H.a.Item,{children:Object(F.jsxs)(Y.a,{columns:2,children:[Object(F.jsx)(Y.a.Column,{width:6,children:Object(F.jsx)("span",{children:"Ertzen erradioa:"})}),Object(F.jsx)(Y.a.Column,{children:Object(F.jsx)(_e.a,{type:"number",value:I,onChange:function(e){return E(e.target.value)},max:"50"})})]})})]})]})})})}),o.items.length>0?Object(F.jsx)(L.a,{style:{backgroundColor:"rgba(".concat(x.replaceAll("-",","),",").concat(v,")"),width:"".concat(y,"px"),borderRadius:"".concat(I,"%")},basic:!0,children:Object(F.jsx)(H.a,{className:"lives-list",children:o.items.map((function(e,t){return Object(F.jsxs)(H.a.Item,{children:[Object(F.jsx)(H.a.Icon,{name:"circle",color:"red",id:"animated"}),e.user_login]},t)}))})}):Object(F.jsx)(F.Fragment,{})]})}),Ee=function(e){return Object(F.jsxs)("div",{children:[Object(F.jsx)("h1",{children:"Zuzenekoetarako tresnak"}),Object(F.jsx)(L.a,{basic:!0,children:Object(F.jsx)(ee.a.Group,{itemsPerRow:6,doubling:!0})})]})};a(226);var Ne=function(){return Object(F.jsx)(o.d,{children:Object(F.jsxs)(o.b,{path:"/",element:Object(F.jsx)(W,{}),children:[Object(F.jsx)(o.b,{exact:!0,path:"/",element:Object(F.jsx)(we,{})}),Object(F.jsx)(o.b,{exact:!0,path:"/bilatzailea",element:Object(F.jsx)(ce,{})}),Object(F.jsx)(o.b,{basename:"/",exact:!0,path:"/tresnak",showHeader:!1,element:Object(F.jsx)(Ee,{})}),Object(F.jsx)(o.b,{basename:"/",exact:!0,path:"/tresnak/zuzenean",showHeader:!1,element:Object(F.jsx)(Ce,{})}),Object(F.jsx)(o.b,{basename:"/",exact:!0,path:"/gutarrak",element:Object(F.jsx)(be,{})}),Object(F.jsx)(o.b,{basename:"/",path:"/gutarrak/:user",element:Object(F.jsx)(le,{})})]})})},Ie=a(169),Se=a(105),Re=a(40),De={items:[],loading:!1,loaded:!1,error:null},Ae=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:De,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case w:return Object(j.a)(Object(j.a)({},e),{},{loading:!0,loaded:!1});case _:return Object(j.a)(Object(j.a)({},e),{},{items:t.payload.items,loading:!1,loaded:!0});case y:return Object(j.a)(Object(j.a)({},e),{},{error:t.payload,loading:!1,loaded:!1});default:return e}},Pe={items:[],loading:!1,loaded:!1,error:null},Ge=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Pe,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case z:return Object(j.a)(Object(j.a)({},e),{},{loading:!0,loaded:!1});case C:return Object(j.a)(Object(j.a)({},e),{},{items:t.payload.items,loading:!1,loaded:!0});case E:return Object(j.a)(Object(j.a)({},e),{},{error:t.payload,loading:!1,loaded:!1});default:return e}},Fe={broadcasters:{},clippers:{},loading:!1,loaded:!1,error:null},Ke=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Fe,t=arguments.length>1?arguments[1]:void 0,a={},n={};switch(t.type){case I:return Object(j.a)(Object(j.a)({},e),{},{loading:!0,loaded:!1});case S:return t.payload.items.forEach((function(e){a[e.username]=e.clips.length,n[e.username]=e.clips})),Object(j.a)(Object(j.a)({},e),{},{broadcasters:Object(j.a)(Object(j.a)({},e.broadcasters),n),clippers:Object(j.a)(Object(j.a)({},e.clippers),a),loading:!1,loaded:!0});case R:return Object(j.a)(Object(j.a)({},e),{},{error:t.payload,loading:!1,loaded:!1});default:return e}},Te={broadcasters:{},loading:!1,loaded:!1,error:null},Le=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Te,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case D:return Object(j.a)(Object(j.a)({},e),{},{loading:!0,loaded:!1});case A:return Object(j.a)(Object(j.a)({},e),{},{broadcasters:Object(j.a)(Object(j.a)({},e.broadcasters),{},Object(ke.a)({},t.username,t.payload.items)),loading:!1,loaded:!0});case P:return Object(j.a)(Object(j.a)({},e),{},{error:t.payload,loading:!1,loaded:!1});default:return e}},Me=Object(Re.b)({erabiltzaileak:Ae,zuzenekoak:Ge,klipak:Ke,bideoak:Le}),Ye=Object(Ie.a)({reducer:Me,middleware:[Se.a],devTools:!1});a.p;c.a.createRoot(document.getElementById("root")).render(Object(F.jsx)(i.a,{store:Ye,children:Object(F.jsx)(s.a,{children:Object(F.jsx)(Ne,{})})})),l()},44:function(e){e.exports=JSON.parse('{"twitzlariak":["11telebista","aioraprobatxoa","anderzubillaga","andromeda2030","andonirock","antukun","ardobeltza000","arkkuso","arruartegamer3","astrografiabalkoitik","athe2403","bigarrenkafea","bykugganhunter","doublemauler","eitbtwitch","ekaitzza","ekintaekin","errazkin08","eupirratia","gaizkaizagirre","gaztea_","gamerauntsia","gari_infernu666","gaztezulo","harresigorria","ibila87","il4rgi_","iratimatelo","ionliz","izerdipatsetan","jokin_pa","koxkortxo","kukulumutxun_sumoeuskaraz","landeths","larreategi","lastotxapel","maik_eus","maketoirratia","martxin","nebukaixo","nlkolardii","norbait","petxita","pubguitar","pilulagorria","rekisab","river_rock_","satantxiki4","sithtal","sutanbang","suspekain_","sustatu","tasiosudupe","theprodigyeh","trikuxabi","txetxedeletxe","zabiron12","zitalko","zortzibit"]}')}},[[227,1,2]]]);
+//# sourceMappingURL=main.0c1dd1fb.chunk.js.map
\ No newline at end of file
diff --git a/static/js/main.8bb58497.chunk.js.map b/static/js/main.0c1dd1fb.chunk.js.map
similarity index 99%
rename from static/js/main.8bb58497.chunk.js.map
rename to static/js/main.0c1dd1fb.chunk.js.map
index bad7e72..290bc2c 100644
--- a/static/js/main.8bb58497.chunk.js.map
+++ b/static/js/main.0c1dd1fb.chunk.js.map
@@ -1 +1 @@
-{"version":3,"sources":["reportWebVitals.js","api.js","store/actions/erabiltzaileak.js","store/actions/zuzenekoak.js","store/actions/klipak.js","store/actions/bideoak.js","helpers/initialLoader.jsx","config/const.js","components/Footer/Footer.jsx","components/Header/Header.jsx","App.jsx","components/cards/TwitzlariaCard.jsx","views/Bilatzailea.js","components/cards/VideoCard.jsx","views/Gutarrak/Erabiltzailea.jsx","components/cards/GutarraCard.jsx","utils.js","views/Gutarrak/Gutarrak.jsx","components/cards/ClipCard.jsx","components/cards/ZuzenekoaCard.js","views/Portada/Portada.jsx","helpers/useFilteredPagination.js","helpers/ParamManager.js","views/Zuzenean/Zuzenean.jsx","views/Tresnak/Tresnak.jsx","Routes.js","store/reducers/erabiltzaileak.js","store/reducers/zuzenekoak.js","store/reducers/klipak.js","store/reducers/bideoak.js","store/reducers/index.js","store/index.js","fonts/ShareTech-Regular.ttf","index.js"],"names":["reportWebVitals","onPerfEntry","Function","then","getCLS","getFID","getFCP","getLCP","getTTFB","TwitchAPI","axios","create","baseURL","headers","secrets","client_id","Authorization","token","GetZuzenekoak","twitzlariList","a","get","join","response","data","GetErabiltzailearenBideoak","id","GetErabiltzaileenKlipak","users","result","Promise","all","map","user","push","user_id","username","display_name","clips","GetErabiltzaileak","GET_ERABILTZAILEAK_PENDING","GET_ERABILTZAILEAK_SUCCESS","GET_ERABILTZAILEAK_ERROR","GET_ZUZENEKOAK_PENDING","GET_ZUZENEKOAK_SUCCESS","GET_ZUZENEKOAK_ERROR","getZuzenekoak","dispatch","type","getZuzenekoakAPI","payload","items","error","GET_KLIPAK_PENDING","GET_KLIPAK_SUCCESS","GET_KLIPAK_ERROR","GET_BIDEOAK_PENDING","GET_BIDEOAK_SUCCESS","GET_BIDEOAK_ERROR","getErabiltzailearenBideoak","getErabiltzailearenBideoakAPI","initialLoader","App","twitzlariak","props","useDispatch","useEffect","getErabiltzaileakAPI","children","KLIP_ORDENAZIOA","key","value","text","Icon","name","HIDE_HEADER_FOOTER","twitzlaria","Footer","location","useLocation","useSearchParams","searchParams","includes","pathname","Segment","vertical","className","Container","Grid","divided","stackable","Column","width","inverted","as","content","List","Item","Content","href","Header","Menu","Link","to","TwitzlariaCard","title","meta","description","image_url","zuzenean","Card","Image","floated","size","src","circular","color","Meta","Description","Bilatzailea","useState","setUsers","options","setOptions","userList","setUserList","bideoak","setBideoak","klipak","setKlipak","selectedUser","setSelectedUser","azkenKlipak","length","fetchData","gaur","Date","setDate","getDate","Dropdown","placeholder","fluid","multiple","selection","search","allowAdditions","onAddItem","event","onChange","e","columns","index","onClick","handleClick","view_count","profile_image_url","Group","bideoa","thumbnail_url","replace","url","target","moment","created_at","format","clip","VideoCard","video","rel","duration","Erabiltzailea","useParams","erabiltzaileak","useSelector","state","videos","loaded","filter","item","login","toUpperCase","user_obj","user_archive","broadcasters","user_u_h","basic","doubling","Row","centered","verticalAlign","broadcaster_type","Label","loading","itemsPerRow","icon","GutarraCard","label","ribbon","substring","extra","dynamicSort","property","sortOrder","substr","b","Gutarrak","users_ref","useRef","current","Dimmer","active","Loader","sort","ClipCard","attached","broadcaster_name","creator_name","role","Popup","position","on","trigger","navigator","clipboard","writeText","ZuzenekoaCard","erabiltzailea","user_login","user_name","game_name","viewer_count","Portada","clipsRef","lives","zuzenekoak","clips_state","clipOwners","setclipOwners","clipCreators","setclipCreators","sidebarVisible","setSidebarVisible","original_data","originalDataList","setOriginalDataList","dataList","setDataList","paginationSize","setPaginationSize","currentPage","setCurrentPage","slice","pagination","setPagination","filters","setFilters","filtered_data_list","Object","entries","forEach","filter_key","filter_data","functions","applyFilter","field","setter","new_filters","clearFilters","applyOrder","criteria","useFilteredPagination","keys","broadcaster","klip","Set","k","b_name","c_name","clip_count","count","getErabiltzaileenKlipakAPI","getErabiltzaileenKlipak","isLive","ref","Sidebar","Pushable","style","overflow","animation","visible","Button","Pusher","labelPosition","Select","defaultValue","Math","round","textAlign","Pagination","boundaryRange","firstItem","lastItem","activePage","onPageChange","scrollIntoView","behavior","totalPages","egilea","Statistic","number","Value","ParamManager","setSearchParams","valueParam","setValue","val","newParams","v","Zuzenean","r","g","containerBgCHandler","containerBgC","containerBgOpHandler","containerBgOp","containerWidthHandler","containerWidth","containerRadiusHandler","containerRadius","interval","setInterval","clearInterval","Input","split","toString","hex","exec","parseInt","hexToRgb","min","max","step","backgroundColor","replaceAll","borderRadius","Tresnak","AppRoutes","path","element","exact","basename","showHeader","initialState","erabiltzaileakReducer","action","zuzenekoakReducer","clippers","klipakReducer","clipper_data","bideoakReducer","rootReducer","combineReducers","configureStore","reducer","middleware","thunk","devTools","process","ReactDOM","createRoot","document","getElementById","render","store"],"mappings":"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","file":"static/js/main.8bb58497.chunk.js","sourcesContent":["const reportWebVitals = (onPerfEntry) => {\n if (onPerfEntry && onPerfEntry instanceof Function) {\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\n getCLS(onPerfEntry);\n getFID(onPerfEntry);\n getFCP(onPerfEntry);\n getLCP(onPerfEntry);\n getTTFB(onPerfEntry);\n });\n }\n};\n\nexport default reportWebVitals;\n","import secrets from './secrets.json';\n\nimport axios from 'axios';\n\nconst TwitchAPI = axios.create({\n baseURL: 'https://api.twitch.tv/helix/',\n headers: {\n 'client-id': secrets.client_id,\n Authorization: 'Bearer ' + secrets.token,\n },\n});\n\nexport const GetZuzenekoak = async (twitzlariList) => {\n const response = await TwitchAPI.get(\n 'streams?user_login=' + twitzlariList.join('&user_login='),\n );\n return response.data.data;\n};\n\nexport const GetErabiltzailearenBideoak = async (id) => {\n const response = await TwitchAPI.get('videos?user_id=' + id);\n return response.data.data;\n};\n\n// TwitchAPI.get('videos?user_id=' + user.id).then((response) => {\n// response.data.data.map( (bideoa) => {\n// new Date(bideoa.created_at)>atzeraData && (azkenBideo = [...azkenBideo, bideoa])\n// })\n// setBideoak(azkenBideo)\n// })\n\nexport const GetErabiltzaileenKlipak = async (users) => {\n const result = [];\n await Promise.all(\n users.map(async (user) => {\n const response = await TwitchAPI.get(\n `clips?broadcaster_id=${user.id}&first=100`,\n );\n result.push({\n user_id: user.id,\n username: user.display_name,\n clips: response?.data?.data,\n });\n }),\n );\n return result;\n};\n\nexport const GetErabiltzaileak = async (users) => {\n const response = await TwitchAPI.get('users?login=' + users.join('&login='));\n return response.data.data;\n};\nexport default TwitchAPI;\n","import { GetErabiltzaileak as getErabiltzaileakAPI } from '../../api';\nexport const GET_ERABILTZAILEAK_PENDING = 'GET_ERABILTZAILEAK_PENDING';\nexport const GET_ERABILTZAILEAK_SUCCESS = 'GET_ERABILTZAILEAK_SUCCESS';\nexport const GET_ERABILTZAILEAK_ERROR = 'GET_ERABILTZAILEAK_ERROR';\nexport const getErabiltzaileak = (users) => {\n return async (dispatch) => {\n dispatch({\n type: GET_ERABILTZAILEAK_PENDING,\n });\n const result = await getErabiltzaileakAPI(users);\n try {\n dispatch({\n type: GET_ERABILTZAILEAK_SUCCESS,\n payload: {\n items: result,\n },\n });\n } catch (error) {\n dispatch({\n type: GET_ERABILTZAILEAK_ERROR,\n payload: error,\n });\n // console.error(error);\n }\n };\n};\n","import { GetZuzenekoak as getZuzenekoakAPI } from '../../api';\nexport const GET_ZUZENEKOAK_PENDING = 'GET_ZUZENEKOAK_PENDING';\nexport const GET_ZUZENEKOAK_SUCCESS = 'GET_ZUZENEKOAK_SUCCESS';\nexport const GET_ZUZENEKOAK_ERROR = 'GET_ZUZENEKOAK_ERROR';\nexport const getZuzenekoak = (users) => {\n return async (dispatch) => {\n dispatch({\n type: GET_ZUZENEKOAK_PENDING,\n });\n const result = await getZuzenekoakAPI(users);\n try {\n dispatch({\n type: GET_ZUZENEKOAK_SUCCESS,\n payload: {\n items: result,\n },\n });\n } catch (error) {\n dispatch({\n type: GET_ZUZENEKOAK_ERROR,\n payload: error,\n });\n // console.error(error);\n }\n };\n};\n","import { GetErabiltzaileenKlipak as getErabiltzaileenKlipakAPI } from '../../api';\nexport const GET_KLIPAK_PENDING = 'GET_KLIPAK_PENDING';\nexport const GET_KLIPAK_SUCCESS = 'GET_KLIPAK_SUCCESS';\nexport const GET_KLIPAK_ERROR = 'GET_KLIPAK_ERROR';\nexport const getErabiltzaileenKlipak = (users) => {\n return async (dispatch) => {\n dispatch({\n type: GET_KLIPAK_PENDING,\n });\n const result = await getErabiltzaileenKlipakAPI(users);\n try {\n dispatch({\n type: GET_KLIPAK_SUCCESS,\n payload: {\n items: result,\n },\n });\n } catch (error) {\n dispatch({\n type: GET_KLIPAK_ERROR,\n payload: error,\n });\n }\n };\n};\n","import { GetErabiltzailearenBideoak as getErabiltzailearenBideoakAPI } from '../../api';\nexport const GET_BIDEOAK_PENDING = 'GET_BIDEOAK_PENDING';\nexport const GET_BIDEOAK_SUCCESS = 'GET_BIDEOAK_SUCCESS';\nexport const GET_BIDEOAK_ERROR = 'GET_BIDEOAK_ERROR';\nexport const getErabiltzailearenBideoak = (user) => {\n return async (dispatch) => {\n dispatch({\n type: GET_BIDEOAK_PENDING,\n });\n const result = await getErabiltzailearenBideoakAPI(user.id);\n try {\n dispatch({\n type: GET_BIDEOAK_SUCCESS,\n payload: {\n items: result,\n },\n user_id: user.id,\n username: user.display_name,\n });\n } catch (error) {\n dispatch({\n type: GET_BIDEOAK_ERROR,\n payload: error,\n });\n }\n };\n};\n","import React, { useEffect } from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport twitzlariak from '../config/twitzlariak.json';\nimport { getErabiltzaileak } from '../store/actions';\n\nconst initialLoader = (App) => {\n const twitzlariList = twitzlariak.twitzlariak;\n return (props) => {\n const dispatch = useDispatch();\n useEffect(() => {\n dispatch(getErabiltzaileak(twitzlariList));\n }, [dispatch]);\n return {props.children} ;\n };\n};\n\nexport default initialLoader;\n","import { Icon } from 'semantic-ui-react';\nimport React from 'react';\nimport twitzlariak from './twitzlariak.json';\nexport const KLIP_ORDENAZIOA = [\n {\n key: '-created_at',\n value: '-created_at',\n text: <>Berrienetik zaharrenera>,\n },\n {\n key: 'created_at',\n value: 'created_at',\n text: <>Zaharrenetik berrienera>,\n },\n {\n key: '-view_count',\n value: '-view_count',\n text: <>Ikusienak aurrena>,\n },\n {\n key: 'broadcaster_name',\n value: 'broadcaster_name',\n text: (\n <>\n Streamerra\n \n >\n ),\n },\n {\n key: '-broadcaster_name',\n value: '-broadcaster_name',\n text: (\n <>\n Streamerra\n \n >\n ),\n },\n {\n key: 'creator_name',\n value: 'creator_name',\n text: (\n <>\n Egilea\n \n >\n ),\n },\n {\n key: '-creator_name',\n value: '-creator_name',\n text: (\n <>\n Egilea\n \n >\n ),\n },\n];\n\nexport const TWITZLARI_AUKERAK = [\n ...twitzlariak.twitzlariak.map((twitzlaria) => {\n return {\n key: twitzlaria,\n value: twitzlaria,\n text: twitzlaria,\n };\n }),\n];\n\nexport const HIDE_HEADER_FOOTER = ['/tresnak/zuzenean'];\n","import React from 'react';\nimport { useLocation, useSearchParams } from 'react-router-dom';\nimport { Container, List, Grid, Header, Segment } from 'semantic-ui-react';\n\nimport { HIDE_HEADER_FOOTER } from '../../config/const';\nimport './footer.css';\n\nexport const Footer = () => {\n const location = useLocation();\n // eslint-disable-next-line no-unused-vars\n let [searchParams, setSearchParams] = useSearchParams();\n return HIDE_HEADER_FOOTER.includes(location.pathname) &&\n !searchParams.get('probatzen') ? (\n <>>\n ) : (\n \n \n \n \n \n \n Posible da hemen streamer euskaldun guztiak ez agertzea, eta agian\n norbait aktibo ez egotea. Dena den, noizbait zuzenekoren bat\n euskaraz egin duen oro zerrendan gehitzeko saiakera egon da.\n Norbait falta dela ikusten baduzu mesedez jakinarazi.\n
\n \n \n \n \n \n \n \n @ionliz \n \n \n \n \n \n @ionliz \n \n \n \n \n \n @ionlizarazu \n \n \n
\n \n \n \n \n );\n};\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { useLocation, useSearchParams } from 'react-router-dom';\nimport { Container, Menu } from 'semantic-ui-react';\n\nimport { HIDE_HEADER_FOOTER } from '../../config/const';\nimport './header.css';\n\nexport const Header = () => {\n const location = useLocation();\n // eslint-disable-next-line no-unused-vars\n let [searchParams, setSearchParams] = useSearchParams();\n return HIDE_HEADER_FOOTER.includes(location.pathname) &&\n !searchParams.get('probatzen') ? (\n <>>\n ) : (\n \n {location.pathname === '/' &&
Twitch euskaraz }\n \n \n \n Hasierako orria\n \n {/* \n Bilatzailea\n */}\n \n Gutarrak\n \n \n \n \n );\n};\n","import React from 'react';\n// import Routes from './Routes';\nimport initialLoader from './helpers/initialLoader';\nimport { Outlet } from 'react-router-dom';\nimport { Header as AppHeader, Footer as AppFooter } from './components';\n\nfunction App() {\n return (\n <>\n \n \n \n >\n );\n}\n\nexport default initialLoader(App);\n","import './twitzlariakCard.css';\n\nimport { Card, Icon, Image } from 'semantic-ui-react';\nimport React from 'react';\n\n// import api from '../api.js';\n\nconst TwitzlariaCard = ({\n title,\n meta,\n description,\n image_url,\n zuzenean = false,\n}) => {\n return (\n <>\n \n \n \n {zuzenean && (\n \n )}\n {title || 'Twitzlaria'}\n \n {meta ? meta + ' ikustaldi' : '0 ikustaldi'} \n \n {description ||\n 'twitzlariaren deskribapena hemen idatzita agertuko da'}\n \n \n >\n );\n};\n\nexport default TwitzlariaCard;\n","import {\n Card,\n Container,\n Dropdown,\n Grid,\n Header,\n Icon,\n Image,\n Segment,\n} from 'semantic-ui-react';\nimport React, { useEffect, useState } from 'react';\nimport TwitchAPI from '../api.js';\n\nimport { Link } from 'react-router-dom';\nimport TwitzlariaCard from '../components/cards/TwitzlariaCard';\nimport moment from 'moment';\nimport twitzlariak from '../config/twitzlariak.json';\n\nconst Bilatzailea = (props) => {\n const [users, setUsers] = useState([]);\n const [options, setOptions] = useState([]);\n const [userList, setUserList] = useState([]);\n const [bideoak, setBideoak] = useState([]);\n const [klipak, setKlipak] = useState([]);\n const [selectedUser, setSelectedUser] = useState([]);\n // const [atzeraData, setAtzeraData] = useState(new Date())\n const twitzlariList = twitzlariak.twitzlariak.map((twitzlaria) => {\n return { key: twitzlaria, text: twitzlaria, value: twitzlaria };\n });\n\n // const getErabiltzailearenBideoak = async (user_id) => {\n // return await GetErabiltzailearenBideoak(user_id);\n // };\n // const getErabiltzailearenKlipak = async (user_id) => {\n // return await GetErabiltzailearenKlipak(user_id);\n // };\n\n useEffect(() => {\n const fetchData = async () => {\n userList.length > 0 &&\n TwitchAPI.get(\n 'users?login=' + userList.join('&login='),\n ).then((response) => setUsers(response.data.data));\n };\n fetchData();\n }, [userList]);\n\n useEffect(() => {\n setOptions(twitzlariList);\n setSelectedUser('');\n }, [twitzlariList]);\n\n function handleChange(e, { value }) {\n setUserList(value);\n setBideoak([]);\n setKlipak([]);\n }\n\n async function handleClick(user) {\n if (user) {\n setSelectedUser(user.display_name);\n setBideoak([]);\n setKlipak([]);\n let azkenBideoak = [];\n let azkenKlipak = [];\n // await (await getErabiltzailearenBideoak(user.id)).forEach((bideoa) => {\n // azkenBideoak = [...azkenBideoak, bideoa];\n // });\n setBideoak(azkenBideoak);\n\n // await (await getErabiltzailearenKlipak(user.id)).forEach((klipa) => {\n // azkenKlipak = [...azkenKlipak, klipa];\n // });\n setKlipak(azkenKlipak);\n }\n }\n\n let gaur = new Date();\n let atzeraData = new Date();\n atzeraData.setDate(gaur.getDate() - 7);\n\n return (\n \n \n setOptions([\n ...options,\n { key: data.value, text: data.value, value: data.value },\n ])\n }\n options={options}\n onChange={handleChange}\n />\n \n \n \n {users.length > 0 ? (\n users.map((user, index) => (\n handleClick(user)}\n >\n \n \n ))\n ) : (\n \n \n \n )}\n \n \n \n \n \n \n {bideoak.length > 0 ? (\n bideoak.map((bideoa, index) => (\n \n \n \n \n {bideoa.title}\n \n \n {moment(bideoa.created_at).format('YYYY/MM/DD HH:MM')}\n \n \n \n ))\n ) : (\n <>Ez dago bideorik...>\n )}\n \n \n \n \n \n \n \n {klipak.length > 0 ? (\n klipak.map((clip, index) => (\n \n \n \n \n {clip.title}\n \n \n {moment(clip.created_at).format('YYYY/MM/DD HH:MM')}\n \n \n \n ))\n ) : (\n <>Ez dago klipik...>\n )}\n \n \n \n \n \n );\n};\n\nexport default Bilatzailea;\n","import { Card, Image, Icon } from 'semantic-ui-react';\n\nimport React from 'react';\n\n// import './twitzlariakCard.css'\nimport moment from 'moment';\n\nconst VideoCard = ({ video }) => {\n return (\n \n \n \n \n \n \n \n {video?.title}\n \n \n \n \n \n {moment(video?.created_at).format('YYYY/MM/DD')}\n
\n \n \n {video.view_count} ikustaldi\n
\n \n \n {video.duration}\n
\n \n \n \n );\n};\n\nexport default VideoCard;\n","import React, { useEffect } from 'react';\nimport { useSelector, useDispatch } from 'react-redux';\nimport { useParams } from 'react-router-dom';\nimport {\n Label,\n Image,\n Segment,\n Grid,\n Card,\n Header,\n Icon,\n} from 'semantic-ui-react';\n\nimport VideoCard from '../../components/cards/VideoCard';\nimport { getErabiltzailearenBideoak } from '../../store/actions';\n\n// import moment from 'moment';\n\nconst Erabiltzailea = (props) => {\n let { user } = useParams();\n const dispatch = useDispatch();\n const erabiltzaileak = useSelector((state) => state.erabiltzaileak);\n const videos = useSelector((state) => state.bideoak);\n const userList =\n erabiltzaileak.loaded && erabiltzaileak.items.length > 0\n ? erabiltzaileak.items.filter(\n (item) => item.login.toUpperCase() === user.toUpperCase(),\n )\n : {};\n const user_obj = userList.length > 0 ? userList[0] : {};\n useEffect(() => {\n if (user_obj.login) {\n if (!videos.loaded || !videos?.[user_obj.login]) {\n dispatch(getErabiltzailearenBideoak(user_obj));\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dispatch, user_obj]);\n const user_archive = videos?.broadcasters?.[user_obj.display_name]\n ? videos?.broadcasters?.[user_obj.display_name].filter(\n (video) => video.type === 'archive',\n )\n : [];\n const user_u_h = videos?.broadcasters?.[user_obj.display_name]\n ? videos?.broadcasters?.[user_obj.display_name].filter(\n (video) => video.type !== 'archive',\n )\n : [];\n return (\n \n
{user} \n
\n \n \n \n \n \n \n \n \n \n {user_obj.broadcaster_type && (\n \n {user_obj.broadcaster_type === 'affiliate'\n ? 'Afiliatua'\n : user_obj.broadcaster_type}\n \n )}\n {user_obj.description}
\n \n {/* \n {user?.display_name} \n \n \n {moment(user?.created_at).format('YYYY/MM/DD')}\n \n \n \n \n \n {user?.view_count} ikustaldi\n */}\n \n \n \n \n
Azken bideoak \n
\n \n {user_archive &&\n user_archive.map((video) => )}\n \n {user_archive.length === 0 && !videos.loading && (\n \n \n Orain ez dauka gordetako bideorik.\n \n )}\n \n {user_u_h.length > 0 && (\n <>\n
Igotakoak eta destakatuak \n
\n \n {user_u_h && user_u_h.map((video) => )}\n \n \n >\n )}\n
\n );\n};\n\nexport default Erabiltzailea;\n","import React from 'react';\nimport { Card, Image, Icon } from 'semantic-ui-react';\nimport { Link } from 'react-router-dom';\n\nimport moment from 'moment';\n\nconst GutarraCard = ({ user }) => {\n return (\n \n \n {user.broadcaster_type ? (\n \n ) : (\n \n )}\n \n \n \n \n {user?.display_name}\n \n \n \n \n {moment(user?.created_at).format('YYYY/MM/DD')}\n \n \n {user?.description && (\n \n {user?.description.length > 60\n ? `${user?.description.substring(0, 60)}...`\n : user?.description}\n \n )}\n \n \n \n {user?.view_count} ikustaldi\n \n \n );\n};\n\nexport default GutarraCard;\n","export const dynamicSort = (property) => {\n var sortOrder = 1;\n if (property[0] === '-') {\n sortOrder = -1;\n property = property.substr(1);\n }\n return function (a, b) {\n /* next line works with strings and numbers,\n * and you may want to customize it to your needs\n */\n var result =\n a[property] < b[property] ? -1 : a[property] > b[property] ? 1 : 0;\n return result * sortOrder;\n };\n};\n\nexport const getStatSize = (number) => {\n if (number < 20) {\n return 'mini';\n } else if (number < 50) {\n return 'tiny';\n } else if (number < 75) {\n return 'small';\n } else if (number < 100) {\n return 'large';\n } else {\n return 'huge';\n }\n};\n\nexport const hexToRgb = (hex) => {\n var result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n return result\n ? `${parseInt(result[1], 16)}-${parseInt(result[2], 16)}-${parseInt(\n result[3],\n 16,\n )}`\n : null;\n};\n\nexport const rgbToHex = (r, g, b) =>\n '#' + ((1 << 24) | (r << 16) | (g << 8) | b).toString(16).slice(1);\n","import React, { useEffect, useRef } from 'react';\nimport { useSelector, useDispatch } from 'react-redux';\n// import { Link } from 'react-router-dom';\nimport {\n Card,\n // Container,\n // Icon,\n // Image,\n Loader,\n Dimmer,\n Segment,\n} from 'semantic-ui-react';\n\nimport GutarraCard from '../../components/cards/GutarraCard';\nimport { dynamicSort } from '../../utils.js';\nimport { getErabiltzailearenBideoak } from '../../store/actions';\n\n// import moment from 'moment';\n\nconst Gutarrak = (props) => {\n const dispatch = useDispatch();\n const erabiltzaileak = useSelector((state) => state.erabiltzaileak);\n const users = useSelector((state) => state.erabiltzaileak);\n const users_ref = useRef(users);\n useEffect(() => {\n if (users.items.length > 0) {\n users.items.map((user) => dispatch(getErabiltzailearenBideoak(user)));\n }\n users_ref.current = users;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dispatch]);\n return (\n \n
Gutarrak \n \n \n \n Bagatoz... \n \n {erabiltzaileak.loaded &&\n erabiltzaileak.items\n .sort(dynamicSort('-viewer_count'))\n .sort(dynamicSort('-broadcaster_type'))\n .map((user) => {\n return ;\n })}\n \n \n \n );\n};\n\nexport default Gutarrak;\n","import {\n Card,\n Grid,\n Icon,\n Image,\n Label,\n Popup,\n Segment,\n} from 'semantic-ui-react';\nimport './cards.css';\nimport React from 'react';\nimport moment from 'moment';\n\nconst ClipCard = ({ clip }) => {\n return (\n \n \n \n \n \n {clip.broadcaster_name}\n \n \n \n \n {clip.title}\n \n \n \n \n \n \n \n \n \n \n {clip.creator_name.length > 15\n ? `${clip.creator_name.substring(0, 15)}...`\n : clip.creator_name}\n \n \n \n \n \n {moment(clip.created_at).format('YYYY/MM/DD')}\n \n \n \n \n \n {clip.view_count} ikustaldi\n \n \n \n \n \n \n \n \n {\n navigator.clipboard.writeText(\n `[${clip.broadcaster_name}]\\n${clip.title}\\n\\n${clip.url}`,\n );\n }}\n />\n }\n />\n \n \n \n \n \n \n );\n};\n\nexport default ClipCard;\n","import { Card, Image, Label, Icon } from 'semantic-ui-react';\n\nimport React from 'react';\n\n// import './twitzlariakCard.css'\n\nconst ZuzenekoaCard = ({ erabiltzailea }) => {\n return (\n \n \n \n \n \n \n Zuzenean\n \n \n \n {erabiltzailea?.user_name || 'Twitzlaria'}\n \n \n {erabiltzailea?.game_name && (\n {erabiltzailea?.game_name} \n )}\n \n {erabiltzailea?.title ||\n 'twitzlariaren deskribapena hemen idatzita agertuko da'}\n \n \n {erabiltzailea.viewer_count} ikusle\n
\n \n \n \n );\n};\n\nexport default ZuzenekoaCard;\n","import React, { useEffect, useState, useRef } from 'react';\nimport { useSelector, useDispatch } from 'react-redux';\nimport {\n Card,\n Dropdown,\n Grid,\n Header,\n Icon,\n Button,\n Pagination,\n Segment,\n Select,\n Statistic,\n Sidebar,\n} from 'semantic-ui-react';\n\nimport ClipCard from '../../components/cards/ClipCard';\nimport ZuzenekoaCard from '../../components/cards/ZuzenekoaCard';\nimport { KLIP_ORDENAZIOA } from '../../config/const';\nimport twitzlariak from '../../config/twitzlariak.json';\nimport { useFilteredPagination } from '../../helpers/useFilteredPagination';\nimport { getZuzenekoak, getErabiltzaileenKlipak } from '../../store/actions';\nimport { dynamicSort, getStatSize } from '../../utils';\nimport './portada.css';\n\nconst Portada = (props) => {\n const users = useSelector((state) => state.erabiltzaileak);\n const users_ref = useRef(users);\n const clipsRef = useRef(null);\n const lives = useSelector((state) => state.zuzenekoak);\n const clips_state = useSelector((state) => state.klipak);\n const dispatch = useDispatch();\n const [clipOwners, setclipOwners] = useState([]);\n const [clipCreators, setclipCreators] = useState([]);\n const [options, setOptions] = useState([]);\n const [sidebarVisible, setSidebarVisible] = useState(false);\n const { functions, data } = useFilteredPagination([]);\n const { pagination, currentPage, paginationSize, dataList, filters } = data;\n useEffect(() => {\n if (\n clips_state.loaded &&\n Object.keys(clips_state.broadcasters).length > 0\n ) {\n let klipak = [];\n Object.keys(clips_state.broadcasters).forEach((broadcaster) => {\n if (clips_state.broadcasters[broadcaster].length > 0) {\n clips_state.broadcasters[broadcaster].forEach((klip) =>\n klipak.push(klip),\n );\n }\n });\n functions.setDataList(klipak.sort(dynamicSort('-created_at')));\n functions.setOriginalDataList([\n ...klipak.sort(dynamicSort('-created_at')),\n ]);\n setclipOwners(\n [...new Set(klipak.map((k) => k.broadcaster_name).sort())].map(\n (b_name) => {\n return {\n key: b_name,\n value: b_name,\n text: b_name,\n };\n },\n ),\n );\n setclipCreators(\n [...new Set(klipak.map((k) => k.creator_name).sort())].map((c_name) => {\n var clip_count = klipak.filter(\n (k) =>\n k.creator_name === c_name &&\n (new Date() - new Date(k.created_at)) / (1000 * 60 * 60 * 24) <\n 90,\n );\n return {\n key: c_name,\n value: c_name,\n text: c_name,\n count: clip_count.length,\n };\n }),\n );\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [clips_state.loaded, clips_state.broadcasters]);\n const twitzlariList = twitzlariak.twitzlariak;\n useEffect(() => {\n dispatch(getZuzenekoak(twitzlariList));\n }, [dispatch, twitzlariList]);\n\n useEffect(() => {\n if (\n (users_ref.current.loading && users.loaded && users.items.length > 0) ||\n (!clips_state.loaded && !clips_state.loading)\n ) {\n dispatch(getErabiltzaileenKlipak(users.items));\n }\n users_ref.current = users;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dispatch, users]);\n\n const handlePaginationChange = (e, { activePage }) => {\n clipsRef.current?.scrollIntoView({ behavior: 'smooth' });\n functions.setCurrentPage(activePage);\n };\n\n return (\n \n
\n
Orain zuzenean \n {lives.loaded && lives.items.length > 0 ? (\n \n \n {lives.items.map((erabiltzailea, index) => (\n \n ))}\n \n \n ) : (\n \n \n \n Orain momentuan ez dago inor zuzenean.\n \n \n )}\n \n\n
\n
Klipak \n\n
\n
\n \n setSidebarVisible(false)}\n />\n Iragazkiak: \n \n {/* \n \n Ordenatu: \n functions.applyOrder(value)}\n defaultValue={'-created_at'}\n />\n \n */}\n \n \n Klip egilea: \n \n setOptions([\n ...options,\n {\n key: data.value,\n text: data.value,\n value: data.value,\n },\n ])\n }\n options={clipCreators}\n onChange={(e, value) =>\n functions.applyFilter(e, value, 'creator_name')\n }\n />\n \n \n \n \n Streamerra: \n \n setOptions([\n ...options,\n {\n key: data.value,\n text: data.value,\n value: data.value,\n },\n ])\n }\n options={clipOwners}\n onChange={(e, value) =>\n functions.applyFilter(e, value, 'broadcaster_name')\n }\n />\n \n \n \n \n \n Garbitu iragazkiak\n \n \n \n \n \n\n \n \n setSidebarVisible(!sidebarVisible)}\n icon\n labelPosition=\"left\"\n className={\n sidebarVisible ? 'hidden-button primary' : 'primary'\n }\n >\n \n Iragazkiak\n \n \n \n \n Ordenatu: \n functions.applyOrder(value)}\n defaultValue={'-created_at'}\n />\n \n \n Multzokatu: \n \n functions.setPaginationSize(value)\n }\n defaultValue={paginationSize}\n />\n \n \n \n\n {pagination.length > 0 ? (\n <>\n \n {pagination.map((clip, key) => (\n \n ))}\n \n {Math.round(dataList.length / paginationSize) > 1 && (\n \n \n \n )}\n >\n ) : (\n \n \n \n )}\n \n \n \n
\n\n
\n Azken 90 egunetako klipen egileak: \n \n {clipCreators &&\n clipCreators\n .sort(dynamicSort('-count'))\n .slice(0, 25)\n .map((egilea, key) => (\n \n \n {egilea.count} \n {egilea.value} \n \n \n ))}\n \n \n
\n
\n );\n};\n\nexport default Portada;\n","import { useEffect, useState } from 'react';\nimport { dynamicSort } from '../utils';\nexport const useFilteredPagination = (original_data) => {\n const [originalDataList, setOriginalDataList] = useState(original_data);\n const [dataList, setDataList] = useState(original_data);\n const [paginationSize, setPaginationSize] = useState(10);\n const [currentPage, setCurrentPage] = useState(1);\n const [pagination, setPagination] = useState(\n original_data.slice(\n (currentPage - 1) * paginationSize,\n (currentPage - 1) * paginationSize + paginationSize,\n ),\n );\n const [filters, setFilters] = useState({});\n const applyFilter = (e, { value }, field, setter) => {\n const new_filters = { ...filters, [field]: value };\n setFilters(new_filters);\n };\n\n const applyOrder = (criteria) => {\n setDataList([...dataList.sort(dynamicSort(criteria))]);\n };\n const clearFilters = () => {\n setDataList(originalDataList);\n setFilters({});\n };\n useEffect(() => {\n let filtered_data_list = [...originalDataList];\n Object.entries(filters).forEach((filter) => {\n const filter_key = filter[0];\n const filter_data = filter[1];\n if (filter_data.length > 0) {\n filtered_data_list = filtered_data_list.filter((data) => {\n return filter_data.includes(data[filter_key]);\n });\n }\n });\n setDataList(filtered_data_list);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [filters]);\n\n useEffect(() => {\n setPagination(\n dataList.slice(\n (currentPage - 1) * paginationSize,\n (currentPage - 1) * paginationSize + paginationSize,\n ),\n );\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataList, currentPage, paginationSize]);\n\n return {\n functions: {\n setCurrentPage,\n setPaginationSize,\n applyFilter,\n setDataList,\n setOriginalDataList,\n clearFilters,\n applyOrder,\n },\n data: {\n pagination,\n currentPage,\n paginationSize,\n originalDataList,\n dataList,\n filters,\n },\n };\n};\n","import { useState } from 'react';\nimport { useSearchParams } from 'react-router-dom';\n\nexport const ParamManager = (name, defaultValue) => {\n let [searchParams, setSearchParams] = useSearchParams();\n const valueParam = searchParams.get('itemBgC') || defaultValue;\n const [value, setValue] = useState(valueParam);\n const onChangeHandler = (val) => {\n let newParams = {};\n for (const [k, v] of searchParams.entries()) {\n newParams[k] = v;\n }\n setSearchParams({ ...newParams, [name]: val });\n setValue(val);\n };\n return [onChangeHandler, value, setValue];\n};\n","import React, { useEffect } from 'react';\nimport { useSelector, useDispatch } from 'react-redux';\nimport { useSearchParams } from 'react-router-dom';\nimport { Segment, List, Grid, Input } from 'semantic-ui-react';\n\nimport twitzlariak from '../../config/twitzlariak.json';\nimport { getZuzenekoak } from '../../store/actions';\nimport { ParamManager } from '../../helpers/ParamManager';\nimport { hexToRgb, rgbToHex } from '../../utils';\nimport './zuzenean.css';\n\n// const getLives = (twitzlariList, dispatch) => {\n// dispatch(getZuzenekoak(twitzlariList));\n// };\n\nconst Zuzenean = (props) => {\n const twitzlariList = twitzlariak.twitzlariak;\n const dispatch = useDispatch();\n const lives = useSelector((state) => state.zuzenekoak);\n // eslint-disable-next-line no-unused-vars\n let [searchParams, setSearchParams] = useSearchParams();\n const [containerBgCHandler, containerBgC] = ParamManager(\n 'containerBgC',\n '255-255-255',\n );\n const [containerBgOpHandler, containerBgOp] = ParamManager(\n 'containerBgOp',\n '0',\n );\n const [containerWidthHandler, containerWidth] = ParamManager(\n 'containerBgC',\n '125',\n );\n const [containerRadiusHandler, containerRadius] = ParamManager(\n 'containerBgC',\n '10',\n );\n useEffect(() => {\n dispatch(getZuzenekoak(twitzlariList));\n const interval = setInterval(\n () => dispatch(getZuzenekoak(twitzlariList)),\n 30000,\n );\n return () => clearInterval(interval);\n }, [dispatch, twitzlariList]);\n return (\n \n {searchParams.get('probatzen') && (\n \n \n \n \n Zerrendaren atzeko planoa \n \n \n \n \n Kolorea: \n \n \n \n containerBgCHandler(hexToRgb(e.target.value))\n }\n />\n \n \n \n \n \n \n Opakotasuna: \n \n \n containerBgOpHandler(e.target.value)}\n />\n \n \n \n \n \n \n Zabalera: \n \n \n \n containerWidthHandler(e.target.value)\n }\n />\n \n \n \n \n \n \n Ertzen erradioa: \n \n \n \n containerRadiusHandler(e.target.value)\n }\n max=\"50\"\n />\n \n \n \n
\n \n \n \n \n )}\n {lives.items.length > 0 ? (\n \n \n {lives.items.map((erabiltzailea, index) => (\n \n \n {erabiltzailea.user_login}\n \n ))}\n
\n \n ) : (\n <>>\n )}\n
\n );\n};\nexport default Zuzenean;\n","import React from 'react';\nimport { Segment, Card } from 'semantic-ui-react';\n// const getLives = (twitzlariList, dispatch) => {\n// dispatch(getZuzenekoak(twitzlariList));\n// };\nconst Tresnak = (props) => {\n return (\n \n
Zuzenekoetarako tresnak \n \n \n \n \n );\n};\nexport default Tresnak;\n","import React from 'react';\nimport { Routes, Route } from 'react-router-dom';\n\nimport App from './App';\nimport './App.css';\nimport {\n Bilatzailea,\n Erabiltzailea,\n Gutarrak,\n Portada,\n Zuzenean,\n Tresnak,\n} from './views';\n\nimport 'semantic-ui-css/semantic.min.css';\n\n// import { BrowserRouter as Router } from 'react-router-dom';\n\nfunction AppRoutes() {\n return (\n \n }>\n }>\n }>\n }\n >\n }\n >\n }\n >\n }\n >\n \n \n );\n}\n\nexport default AppRoutes;\n","import {\n GET_ERABILTZAILEAK_PENDING,\n GET_ERABILTZAILEAK_SUCCESS,\n GET_ERABILTZAILEAK_ERROR,\n} from '../actions/erabiltzaileak';\n\nconst initialState = {\n items: [],\n loading: false,\n loaded: false,\n error: null,\n};\n\nconst erabiltzaileakReducer = (state = initialState, action) => {\n switch (action.type) {\n case GET_ERABILTZAILEAK_PENDING:\n return {\n ...state,\n loading: true,\n loaded: false,\n };\n case GET_ERABILTZAILEAK_SUCCESS:\n return {\n ...state,\n items: action.payload.items,\n loading: false,\n loaded: true,\n };\n case GET_ERABILTZAILEAK_ERROR:\n return {\n ...state,\n error: action.payload,\n loading: false,\n loaded: false,\n };\n // Default case\n default:\n return state;\n }\n};\n\nexport default erabiltzaileakReducer;\n","import {\n GET_ZUZENEKOAK_PENDING,\n GET_ZUZENEKOAK_SUCCESS,\n GET_ZUZENEKOAK_ERROR,\n} from '../actions/zuzenekoak';\n\nconst initialState = {\n items: [],\n loading: false,\n loaded: false,\n error: null,\n};\n\nconst zuzenekoakReducer = (state = initialState, action) => {\n switch (action.type) {\n case GET_ZUZENEKOAK_PENDING:\n return {\n ...state,\n loading: true,\n loaded: false,\n };\n case GET_ZUZENEKOAK_SUCCESS:\n return {\n ...state,\n items: action.payload.items,\n loading: false,\n loaded: true,\n };\n case GET_ZUZENEKOAK_ERROR:\n return {\n ...state,\n error: action.payload,\n loading: false,\n loaded: false,\n };\n // Default case\n default:\n return state;\n }\n};\n\nexport default zuzenekoakReducer;\n","import {\n GET_KLIPAK_PENDING,\n GET_KLIPAK_SUCCESS,\n GET_KLIPAK_ERROR,\n} from '../actions/klipak';\n\nconst initialState = {\n broadcasters: {},\n clippers: {},\n loading: false,\n loaded: false,\n error: null,\n};\n\nconst klipakReducer = (state = initialState, action) => {\n let clippers = {};\n let broadcasters = {};\n switch (action.type) {\n case GET_KLIPAK_PENDING:\n return {\n ...state,\n loading: true,\n loaded: false,\n };\n case GET_KLIPAK_SUCCESS:\n action.payload.items.forEach((clipper_data) => {\n clippers[clipper_data.username] = clipper_data.clips.length;\n broadcasters[clipper_data.username] = clipper_data.clips;\n });\n return {\n ...state,\n broadcasters: {\n ...state.broadcasters,\n ...broadcasters,\n },\n clippers: {\n ...state.clippers,\n ...clippers,\n },\n loading: false,\n loaded: true,\n };\n case GET_KLIPAK_ERROR:\n return {\n ...state,\n error: action.payload,\n loading: false,\n loaded: false,\n };\n // Default case\n default:\n return state;\n }\n};\n\nexport default klipakReducer;\n","import {\n GET_BIDEOAK_PENDING,\n GET_BIDEOAK_SUCCESS,\n GET_BIDEOAK_ERROR,\n} from '../actions/bideoak';\n\nconst initialState = {\n broadcasters: {},\n loading: false,\n loaded: false,\n error: null,\n};\n\nconst bideoakReducer = (state = initialState, action) => {\n switch (action.type) {\n case GET_BIDEOAK_PENDING:\n return {\n ...state,\n loading: true,\n loaded: false,\n };\n case GET_BIDEOAK_SUCCESS:\n return {\n ...state,\n broadcasters: {\n ...state.broadcasters,\n [action.username]: action.payload.items,\n },\n loading: false,\n loaded: true,\n };\n case GET_BIDEOAK_ERROR:\n return {\n ...state,\n error: action.payload,\n loading: false,\n loaded: false,\n };\n // Default case\n default:\n return state;\n }\n};\n\nexport default bideoakReducer;\n","import { combineReducers } from 'redux';\n\nimport erabiltzaileakReducer from './erabiltzaileak';\nimport zuzenekoakReducer from './zuzenekoak';\nimport klipakReducer from './klipak';\nimport bideoakReducer from './bideoak';\n\nconst rootReducer = combineReducers({\n erabiltzaileak: erabiltzaileakReducer,\n zuzenekoak: zuzenekoakReducer,\n klipak: klipakReducer,\n bideoak: bideoakReducer,\n});\n\nexport default rootReducer;\n","import { configureStore } from '@reduxjs/toolkit';\nimport thunk from 'redux-thunk';\nimport rootReducer from './reducers';\n\nexport default configureStore({\n reducer: rootReducer,\n middleware: [thunk],\n devTools: process.env.NODE_ENV !== 'production',\n});\n","export default __webpack_public_path__ + \"static/media/ShareTech-Regular.c0baac7e.ttf\";","import React from 'react';\nimport ReactDOM from 'react-dom/client';\nimport { Provider } from 'react-redux';\nimport { HashRouter } from 'react-router-dom';\n\nimport './index.css';\nimport reportWebVitals from './reportWebVitals';\nimport AppRoutes from './Routes';\nimport store from './store';\nimport './fonts/ShareTech-Regular.ttf';\n\nconst root = ReactDOM.createRoot(document.getElementById('root'));\nroot.render(\n \n \n \n \n ,\n);\n\n// If you want to start measuring performance in your app, pass a function\n// to log results (for example: reportWebVitals(console.log))\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\nreportWebVitals();\n"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"sources":["reportWebVitals.js","api.js","store/actions/erabiltzaileak.js","store/actions/zuzenekoak.js","store/actions/klipak.js","store/actions/bideoak.js","helpers/initialLoader.jsx","config/const.js","components/Footer/Footer.jsx","components/Header/Header.jsx","App.jsx","components/cards/TwitzlariaCard.jsx","views/Bilatzailea.js","components/cards/VideoCard.jsx","views/Gutarrak/Erabiltzailea.jsx","components/cards/GutarraCard.jsx","utils.js","views/Gutarrak/Gutarrak.jsx","components/cards/ClipCard.jsx","components/cards/ZuzenekoaCard.js","views/Portada/Portada.jsx","helpers/useFilteredPagination.js","helpers/ParamManager.js","views/Zuzenean/Zuzenean.jsx","views/Tresnak/Tresnak.jsx","Routes.js","store/reducers/erabiltzaileak.js","store/reducers/zuzenekoak.js","store/reducers/klipak.js","store/reducers/bideoak.js","store/reducers/index.js","store/index.js","fonts/ShareTech-Regular.ttf","index.js"],"names":["reportWebVitals","onPerfEntry","Function","then","getCLS","getFID","getFCP","getLCP","getTTFB","TwitchAPI","axios","create","baseURL","headers","secrets","client_id","Authorization","token","GetZuzenekoak","twitzlariList","a","get","join","response","data","GetErabiltzailearenBideoak","id","GetErabiltzaileenKlipak","users","result","Promise","all","map","user","push","user_id","username","display_name","clips","GetErabiltzaileak","GET_ERABILTZAILEAK_PENDING","GET_ERABILTZAILEAK_SUCCESS","GET_ERABILTZAILEAK_ERROR","GET_ZUZENEKOAK_PENDING","GET_ZUZENEKOAK_SUCCESS","GET_ZUZENEKOAK_ERROR","getZuzenekoak","dispatch","type","getZuzenekoakAPI","payload","items","error","GET_KLIPAK_PENDING","GET_KLIPAK_SUCCESS","GET_KLIPAK_ERROR","GET_BIDEOAK_PENDING","GET_BIDEOAK_SUCCESS","GET_BIDEOAK_ERROR","getErabiltzailearenBideoak","getErabiltzailearenBideoakAPI","initialLoader","App","twitzlariak","props","useDispatch","useEffect","getErabiltzaileakAPI","children","KLIP_ORDENAZIOA","key","value","text","Icon","name","HIDE_HEADER_FOOTER","twitzlaria","Footer","location","useLocation","useSearchParams","searchParams","includes","pathname","Segment","vertical","className","Container","Grid","divided","stackable","Column","width","inverted","as","content","List","Item","Content","href","Header","Menu","Link","to","TwitzlariaCard","title","meta","description","image_url","zuzenean","Card","Image","floated","size","src","circular","color","Meta","Description","Bilatzailea","useState","setUsers","options","setOptions","userList","setUserList","bideoak","setBideoak","klipak","setKlipak","selectedUser","setSelectedUser","azkenKlipak","length","fetchData","gaur","Date","setDate","getDate","Dropdown","placeholder","fluid","multiple","selection","search","allowAdditions","onAddItem","event","onChange","e","columns","index","onClick","handleClick","view_count","profile_image_url","Group","bideoa","thumbnail_url","replace","url","target","moment","created_at","format","clip","VideoCard","video","rel","duration","Erabiltzailea","useParams","erabiltzaileak","useSelector","state","videos","loaded","filter","item","login","toUpperCase","user_obj","user_archive","broadcasters","user_u_h","basic","doubling","Row","centered","verticalAlign","broadcaster_type","Label","loading","itemsPerRow","icon","GutarraCard","label","ribbon","substring","extra","dynamicSort","property","sortOrder","substr","b","Gutarrak","users_ref","useRef","current","Dimmer","active","Loader","sort","ClipCard","attached","broadcaster_name","creator_name","role","Popup","position","on","trigger","navigator","clipboard","writeText","ZuzenekoaCard","erabiltzailea","user_login","user_name","game_name","viewer_count","Portada","clipsRef","lives","zuzenekoak","clips_state","clipOwners","setclipOwners","clipCreators","setclipCreators","sidebarVisible","setSidebarVisible","original_data","originalDataList","setOriginalDataList","dataList","setDataList","paginationSize","setPaginationSize","currentPage","setCurrentPage","slice","pagination","setPagination","filters","setFilters","filtered_data_list","Object","entries","forEach","filter_key","filter_data","functions","applyFilter","field","setter","new_filters","clearFilters","applyOrder","criteria","useFilteredPagination","keys","broadcaster","klip","Set","k","b_name","c_name","clip_count","count","getErabiltzaileenKlipakAPI","getErabiltzaileenKlipak","isLive","ref","Sidebar","Pushable","style","overflow","animation","visible","Button","Pusher","labelPosition","Select","defaultValue","Math","round","textAlign","Pagination","boundaryRange","firstItem","lastItem","activePage","onPageChange","scrollIntoView","behavior","totalPages","egilea","Statistic","number","Value","ParamManager","setSearchParams","valueParam","setValue","val","newParams","v","Zuzenean","r","g","containerBgCHandler","containerBgC","containerBgOpHandler","containerBgOp","containerWidthHandler","containerWidth","containerRadiusHandler","containerRadius","interval","setInterval","clearInterval","Input","split","toString","hex","exec","parseInt","hexToRgb","min","max","step","backgroundColor","replaceAll","borderRadius","Tresnak","AppRoutes","path","element","exact","basename","showHeader","initialState","erabiltzaileakReducer","action","zuzenekoakReducer","clippers","klipakReducer","clipper_data","bideoakReducer","rootReducer","combineReducers","configureStore","reducer","middleware","thunk","devTools","process","ReactDOM","createRoot","document","getElementById","render","store"],"mappings":"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","file":"static/js/main.0c1dd1fb.chunk.js","sourcesContent":["const reportWebVitals = (onPerfEntry) => {\n if (onPerfEntry && onPerfEntry instanceof Function) {\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\n getCLS(onPerfEntry);\n getFID(onPerfEntry);\n getFCP(onPerfEntry);\n getLCP(onPerfEntry);\n getTTFB(onPerfEntry);\n });\n }\n};\n\nexport default reportWebVitals;\n","import secrets from './secrets.json';\n\nimport axios from 'axios';\n\nconst TwitchAPI = axios.create({\n baseURL: 'https://api.twitch.tv/helix/',\n headers: {\n 'client-id': secrets.client_id,\n Authorization: 'Bearer ' + secrets.token,\n },\n});\n\nexport const GetZuzenekoak = async (twitzlariList) => {\n const response = await TwitchAPI.get(\n 'streams?user_login=' + twitzlariList.join('&user_login='),\n );\n return response.data.data;\n};\n\nexport const GetErabiltzailearenBideoak = async (id) => {\n const response = await TwitchAPI.get('videos?user_id=' + id);\n return response.data.data;\n};\n\n// TwitchAPI.get('videos?user_id=' + user.id).then((response) => {\n// response.data.data.map( (bideoa) => {\n// new Date(bideoa.created_at)>atzeraData && (azkenBideo = [...azkenBideo, bideoa])\n// })\n// setBideoak(azkenBideo)\n// })\n\nexport const GetErabiltzaileenKlipak = async (users) => {\n const result = [];\n await Promise.all(\n users.map(async (user) => {\n const response = await TwitchAPI.get(\n `clips?broadcaster_id=${user.id}&first=100`,\n );\n result.push({\n user_id: user.id,\n username: user.display_name,\n clips: response?.data?.data,\n });\n }),\n );\n return result;\n};\n\nexport const GetErabiltzaileak = async (users) => {\n const response = await TwitchAPI.get('users?login=' + users.join('&login='));\n return response.data.data;\n};\nexport default TwitchAPI;\n","import { GetErabiltzaileak as getErabiltzaileakAPI } from '../../api';\nexport const GET_ERABILTZAILEAK_PENDING = 'GET_ERABILTZAILEAK_PENDING';\nexport const GET_ERABILTZAILEAK_SUCCESS = 'GET_ERABILTZAILEAK_SUCCESS';\nexport const GET_ERABILTZAILEAK_ERROR = 'GET_ERABILTZAILEAK_ERROR';\nexport const getErabiltzaileak = (users) => {\n return async (dispatch) => {\n dispatch({\n type: GET_ERABILTZAILEAK_PENDING,\n });\n const result = await getErabiltzaileakAPI(users);\n try {\n dispatch({\n type: GET_ERABILTZAILEAK_SUCCESS,\n payload: {\n items: result,\n },\n });\n } catch (error) {\n dispatch({\n type: GET_ERABILTZAILEAK_ERROR,\n payload: error,\n });\n // console.error(error);\n }\n };\n};\n","import { GetZuzenekoak as getZuzenekoakAPI } from '../../api';\nexport const GET_ZUZENEKOAK_PENDING = 'GET_ZUZENEKOAK_PENDING';\nexport const GET_ZUZENEKOAK_SUCCESS = 'GET_ZUZENEKOAK_SUCCESS';\nexport const GET_ZUZENEKOAK_ERROR = 'GET_ZUZENEKOAK_ERROR';\nexport const getZuzenekoak = (users) => {\n return async (dispatch) => {\n dispatch({\n type: GET_ZUZENEKOAK_PENDING,\n });\n const result = await getZuzenekoakAPI(users);\n try {\n dispatch({\n type: GET_ZUZENEKOAK_SUCCESS,\n payload: {\n items: result,\n },\n });\n } catch (error) {\n dispatch({\n type: GET_ZUZENEKOAK_ERROR,\n payload: error,\n });\n // console.error(error);\n }\n };\n};\n","import { GetErabiltzaileenKlipak as getErabiltzaileenKlipakAPI } from '../../api';\nexport const GET_KLIPAK_PENDING = 'GET_KLIPAK_PENDING';\nexport const GET_KLIPAK_SUCCESS = 'GET_KLIPAK_SUCCESS';\nexport const GET_KLIPAK_ERROR = 'GET_KLIPAK_ERROR';\nexport const getErabiltzaileenKlipak = (users) => {\n return async (dispatch) => {\n dispatch({\n type: GET_KLIPAK_PENDING,\n });\n const result = await getErabiltzaileenKlipakAPI(users);\n try {\n dispatch({\n type: GET_KLIPAK_SUCCESS,\n payload: {\n items: result,\n },\n });\n } catch (error) {\n dispatch({\n type: GET_KLIPAK_ERROR,\n payload: error,\n });\n }\n };\n};\n","import { GetErabiltzailearenBideoak as getErabiltzailearenBideoakAPI } from '../../api';\nexport const GET_BIDEOAK_PENDING = 'GET_BIDEOAK_PENDING';\nexport const GET_BIDEOAK_SUCCESS = 'GET_BIDEOAK_SUCCESS';\nexport const GET_BIDEOAK_ERROR = 'GET_BIDEOAK_ERROR';\nexport const getErabiltzailearenBideoak = (user) => {\n return async (dispatch) => {\n dispatch({\n type: GET_BIDEOAK_PENDING,\n });\n const result = await getErabiltzailearenBideoakAPI(user.id);\n try {\n dispatch({\n type: GET_BIDEOAK_SUCCESS,\n payload: {\n items: result,\n },\n user_id: user.id,\n username: user.display_name,\n });\n } catch (error) {\n dispatch({\n type: GET_BIDEOAK_ERROR,\n payload: error,\n });\n }\n };\n};\n","import React, { useEffect } from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport twitzlariak from '../config/twitzlariak.json';\nimport { getErabiltzaileak } from '../store/actions';\n\nconst initialLoader = (App) => {\n const twitzlariList = twitzlariak.twitzlariak;\n return (props) => {\n const dispatch = useDispatch();\n useEffect(() => {\n dispatch(getErabiltzaileak(twitzlariList));\n }, [dispatch]);\n return {props.children} ;\n };\n};\n\nexport default initialLoader;\n","import { Icon } from 'semantic-ui-react';\nimport React from 'react';\nimport twitzlariak from './twitzlariak.json';\nexport const KLIP_ORDENAZIOA = [\n {\n key: '-created_at',\n value: '-created_at',\n text: <>Berrienetik zaharrenera>,\n },\n {\n key: 'created_at',\n value: 'created_at',\n text: <>Zaharrenetik berrienera>,\n },\n {\n key: '-view_count',\n value: '-view_count',\n text: <>Ikusienak aurrena>,\n },\n {\n key: 'broadcaster_name',\n value: 'broadcaster_name',\n text: (\n <>\n Streamerra\n \n >\n ),\n },\n {\n key: '-broadcaster_name',\n value: '-broadcaster_name',\n text: (\n <>\n Streamerra\n \n >\n ),\n },\n {\n key: 'creator_name',\n value: 'creator_name',\n text: (\n <>\n Egilea\n \n >\n ),\n },\n {\n key: '-creator_name',\n value: '-creator_name',\n text: (\n <>\n Egilea\n \n >\n ),\n },\n];\n\nexport const TWITZLARI_AUKERAK = [\n ...twitzlariak.twitzlariak.map((twitzlaria) => {\n return {\n key: twitzlaria,\n value: twitzlaria,\n text: twitzlaria,\n };\n }),\n];\n\nexport const HIDE_HEADER_FOOTER = ['/tresnak/zuzenean'];\n","import React from 'react';\nimport { useLocation, useSearchParams } from 'react-router-dom';\nimport { Container, List, Grid, Header, Segment } from 'semantic-ui-react';\n\nimport { HIDE_HEADER_FOOTER } from '../../config/const';\nimport './footer.css';\n\nexport const Footer = () => {\n const location = useLocation();\n // eslint-disable-next-line no-unused-vars\n let [searchParams, setSearchParams] = useSearchParams();\n return HIDE_HEADER_FOOTER.includes(location.pathname) &&\n !searchParams.get('probatzen') ? (\n <>>\n ) : (\n \n \n \n \n \n \n Posible da hemen streamer euskaldun guztiak ez agertzea, eta agian\n norbait aktibo ez egotea. Dena den, noizbait zuzenekoren bat\n euskaraz egin duen oro zerrendan gehitzeko saiakera egon da.\n Norbait falta dela ikusten baduzu mesedez jakinarazi.\n
\n \n \n \n \n \n \n \n @ionliz \n \n \n \n \n \n @ionliz \n \n \n \n \n \n @ionlizarazu \n \n \n
\n \n \n \n \n );\n};\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { useLocation, useSearchParams } from 'react-router-dom';\nimport { Container, Menu } from 'semantic-ui-react';\n\nimport { HIDE_HEADER_FOOTER } from '../../config/const';\nimport './header.css';\n\nexport const Header = () => {\n const location = useLocation();\n // eslint-disable-next-line no-unused-vars\n let [searchParams, setSearchParams] = useSearchParams();\n return HIDE_HEADER_FOOTER.includes(location.pathname) &&\n !searchParams.get('probatzen') ? (\n <>>\n ) : (\n \n {location.pathname === '/' &&
Twitch euskaraz }\n \n \n \n Hasierako orria\n \n {/* \n Bilatzailea\n */}\n \n Gutarrak\n \n \n \n \n );\n};\n","import React from 'react';\n// import Routes from './Routes';\nimport initialLoader from './helpers/initialLoader';\nimport { Outlet } from 'react-router-dom';\nimport { Header as AppHeader, Footer as AppFooter } from './components';\n\nfunction App() {\n return (\n <>\n \n \n \n >\n );\n}\n\nexport default initialLoader(App);\n","import './twitzlariakCard.css';\n\nimport { Card, Icon, Image } from 'semantic-ui-react';\nimport React from 'react';\n\n// import api from '../api.js';\n\nconst TwitzlariaCard = ({\n title,\n meta,\n description,\n image_url,\n zuzenean = false,\n}) => {\n return (\n <>\n \n \n \n {zuzenean && (\n \n )}\n {title || 'Twitzlaria'}\n \n {meta ? meta + ' ikustaldi' : '0 ikustaldi'} \n \n {description ||\n 'twitzlariaren deskribapena hemen idatzita agertuko da'}\n \n \n >\n );\n};\n\nexport default TwitzlariaCard;\n","import {\n Card,\n Container,\n Dropdown,\n Grid,\n Header,\n Icon,\n Image,\n Segment,\n} from 'semantic-ui-react';\nimport React, { useEffect, useState } from 'react';\nimport TwitchAPI from '../api.js';\n\nimport { Link } from 'react-router-dom';\nimport TwitzlariaCard from '../components/cards/TwitzlariaCard';\nimport moment from 'moment';\nimport twitzlariak from '../config/twitzlariak.json';\n\nconst Bilatzailea = (props) => {\n const [users, setUsers] = useState([]);\n const [options, setOptions] = useState([]);\n const [userList, setUserList] = useState([]);\n const [bideoak, setBideoak] = useState([]);\n const [klipak, setKlipak] = useState([]);\n const [selectedUser, setSelectedUser] = useState([]);\n // const [atzeraData, setAtzeraData] = useState(new Date())\n const twitzlariList = twitzlariak.twitzlariak.map((twitzlaria) => {\n return { key: twitzlaria, text: twitzlaria, value: twitzlaria };\n });\n\n // const getErabiltzailearenBideoak = async (user_id) => {\n // return await GetErabiltzailearenBideoak(user_id);\n // };\n // const getErabiltzailearenKlipak = async (user_id) => {\n // return await GetErabiltzailearenKlipak(user_id);\n // };\n\n useEffect(() => {\n const fetchData = async () => {\n userList.length > 0 &&\n TwitchAPI.get(\n 'users?login=' + userList.join('&login='),\n ).then((response) => setUsers(response.data.data));\n };\n fetchData();\n }, [userList]);\n\n useEffect(() => {\n setOptions(twitzlariList);\n setSelectedUser('');\n }, [twitzlariList]);\n\n function handleChange(e, { value }) {\n setUserList(value);\n setBideoak([]);\n setKlipak([]);\n }\n\n async function handleClick(user) {\n if (user) {\n setSelectedUser(user.display_name);\n setBideoak([]);\n setKlipak([]);\n let azkenBideoak = [];\n let azkenKlipak = [];\n // await (await getErabiltzailearenBideoak(user.id)).forEach((bideoa) => {\n // azkenBideoak = [...azkenBideoak, bideoa];\n // });\n setBideoak(azkenBideoak);\n\n // await (await getErabiltzailearenKlipak(user.id)).forEach((klipa) => {\n // azkenKlipak = [...azkenKlipak, klipa];\n // });\n setKlipak(azkenKlipak);\n }\n }\n\n let gaur = new Date();\n let atzeraData = new Date();\n atzeraData.setDate(gaur.getDate() - 7);\n\n return (\n \n \n setOptions([\n ...options,\n { key: data.value, text: data.value, value: data.value },\n ])\n }\n options={options}\n onChange={handleChange}\n />\n \n \n \n {users.length > 0 ? (\n users.map((user, index) => (\n handleClick(user)}\n >\n \n \n ))\n ) : (\n \n \n \n )}\n \n \n \n \n \n \n {bideoak.length > 0 ? (\n bideoak.map((bideoa, index) => (\n \n \n \n \n {bideoa.title}\n \n \n {moment(bideoa.created_at).format('YYYY/MM/DD HH:MM')}\n \n \n \n ))\n ) : (\n <>Ez dago bideorik...>\n )}\n \n \n \n \n \n \n \n {klipak.length > 0 ? (\n klipak.map((clip, index) => (\n \n \n \n \n {clip.title}\n \n \n {moment(clip.created_at).format('YYYY/MM/DD HH:MM')}\n \n \n \n ))\n ) : (\n <>Ez dago klipik...>\n )}\n \n \n \n \n \n );\n};\n\nexport default Bilatzailea;\n","import { Card, Image, Icon } from 'semantic-ui-react';\n\nimport React from 'react';\n\n// import './twitzlariakCard.css'\nimport moment from 'moment';\n\nconst VideoCard = ({ video }) => {\n return (\n \n \n \n \n \n \n \n {video?.title}\n \n \n \n \n \n {moment(video?.created_at).format('YYYY/MM/DD')}\n
\n \n \n {video.view_count} ikustaldi\n
\n \n \n {video.duration}\n
\n \n \n \n );\n};\n\nexport default VideoCard;\n","import React, { useEffect } from 'react';\nimport { useSelector, useDispatch } from 'react-redux';\nimport { useParams } from 'react-router-dom';\nimport {\n Label,\n Image,\n Segment,\n Grid,\n Card,\n Header,\n Icon,\n} from 'semantic-ui-react';\n\nimport VideoCard from '../../components/cards/VideoCard';\nimport { getErabiltzailearenBideoak } from '../../store/actions';\n\n// import moment from 'moment';\n\nconst Erabiltzailea = (props) => {\n let { user } = useParams();\n const dispatch = useDispatch();\n const erabiltzaileak = useSelector((state) => state.erabiltzaileak);\n const videos = useSelector((state) => state.bideoak);\n const userList =\n erabiltzaileak.loaded && erabiltzaileak.items.length > 0\n ? erabiltzaileak.items.filter(\n (item) => item.login.toUpperCase() === user.toUpperCase(),\n )\n : {};\n const user_obj = userList.length > 0 ? userList[0] : {};\n useEffect(() => {\n if (user_obj.login) {\n if (!videos.loaded || !videos?.[user_obj.login]) {\n dispatch(getErabiltzailearenBideoak(user_obj));\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dispatch, user_obj]);\n const user_archive = videos?.broadcasters?.[user_obj.display_name]\n ? videos?.broadcasters?.[user_obj.display_name].filter(\n (video) => video.type === 'archive',\n )\n : [];\n const user_u_h = videos?.broadcasters?.[user_obj.display_name]\n ? videos?.broadcasters?.[user_obj.display_name].filter(\n (video) => video.type !== 'archive',\n )\n : [];\n return (\n \n
{user} \n
\n \n \n \n \n \n \n \n \n \n {user_obj.broadcaster_type && (\n \n {user_obj.broadcaster_type === 'affiliate'\n ? 'Afiliatua'\n : user_obj.broadcaster_type}\n \n )}\n {user_obj.description}
\n \n {/* \n {user?.display_name} \n \n \n {moment(user?.created_at).format('YYYY/MM/DD')}\n \n \n \n \n \n {user?.view_count} ikustaldi\n */}\n \n \n \n \n
Azken bideoak \n
\n \n {user_archive &&\n user_archive.map((video) => )}\n \n {user_archive.length === 0 && !videos.loading && (\n \n \n Orain ez dauka gordetako bideorik.\n \n )}\n \n {user_u_h.length > 0 && (\n <>\n
Igotakoak eta destakatuak \n
\n \n {user_u_h && user_u_h.map((video) => )}\n \n \n >\n )}\n
\n );\n};\n\nexport default Erabiltzailea;\n","import React from 'react';\nimport { Card, Image, Icon } from 'semantic-ui-react';\nimport { Link } from 'react-router-dom';\n\nimport moment from 'moment';\n\nconst GutarraCard = ({ user }) => {\n return (\n \n \n {user.broadcaster_type ? (\n \n ) : (\n \n )}\n \n \n \n \n {user?.display_name}\n \n \n \n \n {moment(user?.created_at).format('YYYY/MM/DD')}\n \n \n {user?.description && (\n \n {user?.description.length > 60\n ? `${user?.description.substring(0, 60)}...`\n : user?.description}\n \n )}\n \n \n \n {user?.view_count} ikustaldi\n \n \n );\n};\n\nexport default GutarraCard;\n","export const dynamicSort = (property) => {\n var sortOrder = 1;\n if (property[0] === '-') {\n sortOrder = -1;\n property = property.substr(1);\n }\n return function (a, b) {\n /* next line works with strings and numbers,\n * and you may want to customize it to your needs\n */\n var result =\n a[property] < b[property] ? -1 : a[property] > b[property] ? 1 : 0;\n return result * sortOrder;\n };\n};\n\nexport const getStatSize = (number) => {\n if (number < 20) {\n return 'mini';\n } else if (number < 50) {\n return 'tiny';\n } else if (number < 75) {\n return 'small';\n } else if (number < 100) {\n return 'large';\n } else {\n return 'huge';\n }\n};\n\nexport const hexToRgb = (hex) => {\n var result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n return result\n ? `${parseInt(result[1], 16)}-${parseInt(result[2], 16)}-${parseInt(\n result[3],\n 16,\n )}`\n : null;\n};\n\nexport const rgbToHex = (r, g, b) =>\n '#' + ((1 << 24) | (r << 16) | (g << 8) | b).toString(16).slice(1);\n","import React, { useEffect, useRef } from 'react';\nimport { useSelector, useDispatch } from 'react-redux';\n// import { Link } from 'react-router-dom';\nimport {\n Card,\n // Container,\n // Icon,\n // Image,\n Loader,\n Dimmer,\n Segment,\n} from 'semantic-ui-react';\n\nimport GutarraCard from '../../components/cards/GutarraCard';\nimport { dynamicSort } from '../../utils.js';\nimport { getErabiltzailearenBideoak } from '../../store/actions';\n\n// import moment from 'moment';\n\nconst Gutarrak = (props) => {\n const dispatch = useDispatch();\n const erabiltzaileak = useSelector((state) => state.erabiltzaileak);\n const users = useSelector((state) => state.erabiltzaileak);\n const users_ref = useRef(users);\n useEffect(() => {\n if (users.items.length > 0) {\n users.items.map((user) => dispatch(getErabiltzailearenBideoak(user)));\n }\n users_ref.current = users;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dispatch]);\n return (\n \n
Gutarrak \n \n \n \n Bagatoz... \n \n {erabiltzaileak.loaded &&\n erabiltzaileak.items\n .sort(dynamicSort('-viewer_count'))\n .sort(dynamicSort('-broadcaster_type'))\n .map((user) => {\n return ;\n })}\n \n \n \n );\n};\n\nexport default Gutarrak;\n","import {\n Card,\n Grid,\n Icon,\n Image,\n Label,\n Popup,\n Segment,\n} from 'semantic-ui-react';\nimport './cards.css';\nimport React from 'react';\nimport moment from 'moment';\n\nconst ClipCard = ({ clip }) => {\n return (\n \n \n \n \n \n {clip.broadcaster_name}\n \n \n \n \n {clip.title}\n \n \n \n \n \n \n \n \n \n \n {clip.creator_name.length > 15\n ? `${clip.creator_name.substring(0, 15)}...`\n : clip.creator_name}\n \n \n \n \n \n {moment(clip.created_at).format('YYYY/MM/DD')}\n \n \n \n \n \n {clip.view_count} ikustaldi\n \n \n \n \n \n \n \n \n {\n navigator.clipboard.writeText(\n `[${clip.broadcaster_name}]\\n${clip.title}\\n\\n${clip.url}`,\n );\n }}\n />\n }\n />\n \n \n \n \n \n \n );\n};\n\nexport default ClipCard;\n","import { Card, Image, Label, Icon } from 'semantic-ui-react';\n\nimport React from 'react';\n\n// import './twitzlariakCard.css'\n\nconst ZuzenekoaCard = ({ erabiltzailea }) => {\n return (\n \n \n \n \n \n \n Zuzenean\n \n \n \n {erabiltzailea?.user_name || 'Twitzlaria'}\n \n \n {erabiltzailea?.game_name && (\n {erabiltzailea?.game_name} \n )}\n \n {erabiltzailea?.title ||\n 'twitzlariaren deskribapena hemen idatzita agertuko da'}\n \n \n {erabiltzailea.viewer_count} ikusle\n
\n \n \n \n );\n};\n\nexport default ZuzenekoaCard;\n","import React, { useEffect, useState, useRef } from 'react';\nimport { useSelector, useDispatch } from 'react-redux';\nimport {\n Card,\n Dropdown,\n Grid,\n Header,\n Icon,\n Button,\n Pagination,\n Segment,\n Select,\n Statistic,\n Sidebar,\n} from 'semantic-ui-react';\n\nimport ClipCard from '../../components/cards/ClipCard';\nimport ZuzenekoaCard from '../../components/cards/ZuzenekoaCard';\nimport { KLIP_ORDENAZIOA } from '../../config/const';\nimport twitzlariak from '../../config/twitzlariak.json';\nimport { useFilteredPagination } from '../../helpers/useFilteredPagination';\nimport { getZuzenekoak, getErabiltzaileenKlipak } from '../../store/actions';\nimport { dynamicSort, getStatSize } from '../../utils';\nimport './portada.css';\n\nconst Portada = (props) => {\n const users = useSelector((state) => state.erabiltzaileak);\n const users_ref = useRef(users);\n const clipsRef = useRef(null);\n const lives = useSelector((state) => state.zuzenekoak);\n const clips_state = useSelector((state) => state.klipak);\n const dispatch = useDispatch();\n const [clipOwners, setclipOwners] = useState([]);\n const [clipCreators, setclipCreators] = useState([]);\n const [options, setOptions] = useState([]);\n const [sidebarVisible, setSidebarVisible] = useState(false);\n const { functions, data } = useFilteredPagination([]);\n const { pagination, currentPage, paginationSize, dataList, filters } = data;\n useEffect(() => {\n if (\n clips_state.loaded &&\n Object.keys(clips_state.broadcasters).length > 0\n ) {\n let klipak = [];\n Object.keys(clips_state.broadcasters).forEach((broadcaster) => {\n if (clips_state.broadcasters[broadcaster].length > 0) {\n clips_state.broadcasters[broadcaster].forEach((klip) =>\n klipak.push(klip),\n );\n }\n });\n functions.setDataList(klipak.sort(dynamicSort('-created_at')));\n functions.setOriginalDataList([\n ...klipak.sort(dynamicSort('-created_at')),\n ]);\n setclipOwners(\n [...new Set(klipak.map((k) => k.broadcaster_name).sort())].map(\n (b_name) => {\n return {\n key: b_name,\n value: b_name,\n text: b_name,\n };\n },\n ),\n );\n setclipCreators(\n [...new Set(klipak.map((k) => k.creator_name).sort())].map((c_name) => {\n var clip_count = klipak.filter(\n (k) =>\n k.creator_name === c_name &&\n (new Date() - new Date(k.created_at)) / (1000 * 60 * 60 * 24) <\n 90,\n );\n return {\n key: c_name,\n value: c_name,\n text: c_name,\n count: clip_count.length,\n };\n }),\n );\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [clips_state.loaded, clips_state.broadcasters]);\n const twitzlariList = twitzlariak.twitzlariak;\n useEffect(() => {\n dispatch(getZuzenekoak(twitzlariList));\n }, [dispatch, twitzlariList]);\n\n useEffect(() => {\n if (\n (users_ref.current.loading && users.loaded && users.items.length > 0) ||\n (!clips_state.loaded && !clips_state.loading)\n ) {\n dispatch(getErabiltzaileenKlipak(users.items));\n }\n users_ref.current = users;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dispatch, users]);\n\n const handlePaginationChange = (e, { activePage }) => {\n clipsRef.current?.scrollIntoView({ behavior: 'smooth' });\n functions.setCurrentPage(activePage);\n };\n\n return (\n \n
\n
Orain zuzenean \n {lives.loaded && lives.items.length > 0 ? (\n \n \n {lives.items.map((erabiltzailea, index) => (\n \n ))}\n \n \n ) : (\n \n \n \n Orain momentuan ez dago inor zuzenean.\n \n \n )}\n \n\n
\n
Klipak \n\n
\n
\n \n setSidebarVisible(false)}\n />\n Iragazkiak: \n \n {/* \n \n Ordenatu: \n functions.applyOrder(value)}\n defaultValue={'-created_at'}\n />\n \n */}\n \n \n Klip egilea: \n \n setOptions([\n ...options,\n {\n key: data.value,\n text: data.value,\n value: data.value,\n },\n ])\n }\n options={clipCreators}\n onChange={(e, value) =>\n functions.applyFilter(e, value, 'creator_name')\n }\n />\n \n \n \n \n Streamerra: \n \n setOptions([\n ...options,\n {\n key: data.value,\n text: data.value,\n value: data.value,\n },\n ])\n }\n options={clipOwners}\n onChange={(e, value) =>\n functions.applyFilter(e, value, 'broadcaster_name')\n }\n />\n \n \n \n \n \n Garbitu iragazkiak\n \n \n \n \n \n\n \n \n setSidebarVisible(!sidebarVisible)}\n icon\n labelPosition=\"left\"\n className={\n sidebarVisible ? 'hidden-button primary' : 'primary'\n }\n >\n \n Iragazkiak\n \n \n \n \n Ordenatu: \n functions.applyOrder(value)}\n defaultValue={'-created_at'}\n />\n \n \n Multzokatu: \n \n functions.setPaginationSize(value)\n }\n defaultValue={paginationSize}\n />\n \n \n \n\n {pagination.length > 0 ? (\n <>\n \n {pagination.map((clip, key) => (\n \n ))}\n \n {Math.round(dataList.length / paginationSize) > 1 && (\n \n \n \n )}\n >\n ) : (\n \n \n \n )}\n \n \n \n
\n\n
\n Azken 90 egunetako klipen egileak: \n \n {clipCreators &&\n clipCreators\n .sort(dynamicSort('-count'))\n .slice(0, 25)\n .map((egilea, key) => (\n \n \n {egilea.count} \n {egilea.value} \n \n \n ))}\n \n \n
\n
\n );\n};\n\nexport default Portada;\n","import { useEffect, useState } from 'react';\nimport { dynamicSort } from '../utils';\nexport const useFilteredPagination = (original_data) => {\n const [originalDataList, setOriginalDataList] = useState(original_data);\n const [dataList, setDataList] = useState(original_data);\n const [paginationSize, setPaginationSize] = useState(10);\n const [currentPage, setCurrentPage] = useState(1);\n const [pagination, setPagination] = useState(\n original_data.slice(\n (currentPage - 1) * paginationSize,\n (currentPage - 1) * paginationSize + paginationSize,\n ),\n );\n const [filters, setFilters] = useState({});\n const applyFilter = (e, { value }, field, setter) => {\n const new_filters = { ...filters, [field]: value };\n setFilters(new_filters);\n };\n\n const applyOrder = (criteria) => {\n setDataList([...dataList.sort(dynamicSort(criteria))]);\n };\n const clearFilters = () => {\n setDataList(originalDataList);\n setFilters({});\n };\n useEffect(() => {\n let filtered_data_list = [...originalDataList];\n Object.entries(filters).forEach((filter) => {\n const filter_key = filter[0];\n const filter_data = filter[1];\n if (filter_data.length > 0) {\n filtered_data_list = filtered_data_list.filter((data) => {\n return filter_data.includes(data[filter_key]);\n });\n }\n });\n setDataList(filtered_data_list);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [filters]);\n\n useEffect(() => {\n setPagination(\n dataList.slice(\n (currentPage - 1) * paginationSize,\n (currentPage - 1) * paginationSize + paginationSize,\n ),\n );\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataList, currentPage, paginationSize]);\n\n return {\n functions: {\n setCurrentPage,\n setPaginationSize,\n applyFilter,\n setDataList,\n setOriginalDataList,\n clearFilters,\n applyOrder,\n },\n data: {\n pagination,\n currentPage,\n paginationSize,\n originalDataList,\n dataList,\n filters,\n },\n };\n};\n","import { useState } from 'react';\nimport { useSearchParams } from 'react-router-dom';\n\nexport const ParamManager = (name, defaultValue) => {\n let [searchParams, setSearchParams] = useSearchParams();\n const valueParam = searchParams.get('itemBgC') || defaultValue;\n const [value, setValue] = useState(valueParam);\n const onChangeHandler = (val) => {\n let newParams = {};\n for (const [k, v] of searchParams.entries()) {\n newParams[k] = v;\n }\n setSearchParams({ ...newParams, [name]: val });\n setValue(val);\n };\n return [onChangeHandler, value, setValue];\n};\n","import React, { useEffect } from 'react';\nimport { useSelector, useDispatch } from 'react-redux';\nimport { useSearchParams } from 'react-router-dom';\nimport { Segment, List, Grid, Input } from 'semantic-ui-react';\n\nimport twitzlariak from '../../config/twitzlariak.json';\nimport { getZuzenekoak } from '../../store/actions';\nimport { ParamManager } from '../../helpers/ParamManager';\nimport { hexToRgb, rgbToHex } from '../../utils';\nimport './zuzenean.css';\n\n// const getLives = (twitzlariList, dispatch) => {\n// dispatch(getZuzenekoak(twitzlariList));\n// };\n\nconst Zuzenean = (props) => {\n const twitzlariList = twitzlariak.twitzlariak;\n const dispatch = useDispatch();\n const lives = useSelector((state) => state.zuzenekoak);\n // eslint-disable-next-line no-unused-vars\n let [searchParams, setSearchParams] = useSearchParams();\n const [containerBgCHandler, containerBgC] = ParamManager(\n 'containerBgC',\n '255-255-255',\n );\n const [containerBgOpHandler, containerBgOp] = ParamManager(\n 'containerBgOp',\n '0',\n );\n const [containerWidthHandler, containerWidth] = ParamManager(\n 'containerBgC',\n '125',\n );\n const [containerRadiusHandler, containerRadius] = ParamManager(\n 'containerBgC',\n '10',\n );\n useEffect(() => {\n dispatch(getZuzenekoak(twitzlariList));\n const interval = setInterval(\n () => dispatch(getZuzenekoak(twitzlariList)),\n 30000,\n );\n return () => clearInterval(interval);\n }, [dispatch, twitzlariList]);\n return (\n \n {searchParams.get('probatzen') && (\n \n \n \n \n Zerrendaren atzeko planoa \n \n \n \n \n Kolorea: \n \n \n \n containerBgCHandler(hexToRgb(e.target.value))\n }\n />\n \n \n \n \n \n \n Opakotasuna: \n \n \n containerBgOpHandler(e.target.value)}\n />\n \n \n \n \n \n \n Zabalera: \n \n \n \n containerWidthHandler(e.target.value)\n }\n />\n \n \n \n \n \n \n Ertzen erradioa: \n \n \n \n containerRadiusHandler(e.target.value)\n }\n max=\"50\"\n />\n \n \n \n
\n \n \n \n \n )}\n {lives.items.length > 0 ? (\n \n \n {lives.items.map((erabiltzailea, index) => (\n \n \n {erabiltzailea.user_login}\n \n ))}\n
\n \n ) : (\n <>>\n )}\n
\n );\n};\nexport default Zuzenean;\n","import React from 'react';\nimport { Segment, Card } from 'semantic-ui-react';\n// const getLives = (twitzlariList, dispatch) => {\n// dispatch(getZuzenekoak(twitzlariList));\n// };\nconst Tresnak = (props) => {\n return (\n \n
Zuzenekoetarako tresnak \n \n \n \n \n );\n};\nexport default Tresnak;\n","import React from 'react';\nimport { Routes, Route } from 'react-router-dom';\n\nimport App from './App';\nimport './App.css';\nimport {\n Bilatzailea,\n Erabiltzailea,\n Gutarrak,\n Portada,\n Zuzenean,\n Tresnak,\n} from './views';\n\nimport 'semantic-ui-css/semantic.min.css';\n\n// import { BrowserRouter as Router } from 'react-router-dom';\n\nfunction AppRoutes() {\n return (\n \n }>\n }>\n }>\n }\n >\n }\n >\n }\n >\n }\n >\n \n \n );\n}\n\nexport default AppRoutes;\n","import {\n GET_ERABILTZAILEAK_PENDING,\n GET_ERABILTZAILEAK_SUCCESS,\n GET_ERABILTZAILEAK_ERROR,\n} from '../actions/erabiltzaileak';\n\nconst initialState = {\n items: [],\n loading: false,\n loaded: false,\n error: null,\n};\n\nconst erabiltzaileakReducer = (state = initialState, action) => {\n switch (action.type) {\n case GET_ERABILTZAILEAK_PENDING:\n return {\n ...state,\n loading: true,\n loaded: false,\n };\n case GET_ERABILTZAILEAK_SUCCESS:\n return {\n ...state,\n items: action.payload.items,\n loading: false,\n loaded: true,\n };\n case GET_ERABILTZAILEAK_ERROR:\n return {\n ...state,\n error: action.payload,\n loading: false,\n loaded: false,\n };\n // Default case\n default:\n return state;\n }\n};\n\nexport default erabiltzaileakReducer;\n","import {\n GET_ZUZENEKOAK_PENDING,\n GET_ZUZENEKOAK_SUCCESS,\n GET_ZUZENEKOAK_ERROR,\n} from '../actions/zuzenekoak';\n\nconst initialState = {\n items: [],\n loading: false,\n loaded: false,\n error: null,\n};\n\nconst zuzenekoakReducer = (state = initialState, action) => {\n switch (action.type) {\n case GET_ZUZENEKOAK_PENDING:\n return {\n ...state,\n loading: true,\n loaded: false,\n };\n case GET_ZUZENEKOAK_SUCCESS:\n return {\n ...state,\n items: action.payload.items,\n loading: false,\n loaded: true,\n };\n case GET_ZUZENEKOAK_ERROR:\n return {\n ...state,\n error: action.payload,\n loading: false,\n loaded: false,\n };\n // Default case\n default:\n return state;\n }\n};\n\nexport default zuzenekoakReducer;\n","import {\n GET_KLIPAK_PENDING,\n GET_KLIPAK_SUCCESS,\n GET_KLIPAK_ERROR,\n} from '../actions/klipak';\n\nconst initialState = {\n broadcasters: {},\n clippers: {},\n loading: false,\n loaded: false,\n error: null,\n};\n\nconst klipakReducer = (state = initialState, action) => {\n let clippers = {};\n let broadcasters = {};\n switch (action.type) {\n case GET_KLIPAK_PENDING:\n return {\n ...state,\n loading: true,\n loaded: false,\n };\n case GET_KLIPAK_SUCCESS:\n action.payload.items.forEach((clipper_data) => {\n clippers[clipper_data.username] = clipper_data.clips.length;\n broadcasters[clipper_data.username] = clipper_data.clips;\n });\n return {\n ...state,\n broadcasters: {\n ...state.broadcasters,\n ...broadcasters,\n },\n clippers: {\n ...state.clippers,\n ...clippers,\n },\n loading: false,\n loaded: true,\n };\n case GET_KLIPAK_ERROR:\n return {\n ...state,\n error: action.payload,\n loading: false,\n loaded: false,\n };\n // Default case\n default:\n return state;\n }\n};\n\nexport default klipakReducer;\n","import {\n GET_BIDEOAK_PENDING,\n GET_BIDEOAK_SUCCESS,\n GET_BIDEOAK_ERROR,\n} from '../actions/bideoak';\n\nconst initialState = {\n broadcasters: {},\n loading: false,\n loaded: false,\n error: null,\n};\n\nconst bideoakReducer = (state = initialState, action) => {\n switch (action.type) {\n case GET_BIDEOAK_PENDING:\n return {\n ...state,\n loading: true,\n loaded: false,\n };\n case GET_BIDEOAK_SUCCESS:\n return {\n ...state,\n broadcasters: {\n ...state.broadcasters,\n [action.username]: action.payload.items,\n },\n loading: false,\n loaded: true,\n };\n case GET_BIDEOAK_ERROR:\n return {\n ...state,\n error: action.payload,\n loading: false,\n loaded: false,\n };\n // Default case\n default:\n return state;\n }\n};\n\nexport default bideoakReducer;\n","import { combineReducers } from 'redux';\n\nimport erabiltzaileakReducer from './erabiltzaileak';\nimport zuzenekoakReducer from './zuzenekoak';\nimport klipakReducer from './klipak';\nimport bideoakReducer from './bideoak';\n\nconst rootReducer = combineReducers({\n erabiltzaileak: erabiltzaileakReducer,\n zuzenekoak: zuzenekoakReducer,\n klipak: klipakReducer,\n bideoak: bideoakReducer,\n});\n\nexport default rootReducer;\n","import { configureStore } from '@reduxjs/toolkit';\nimport thunk from 'redux-thunk';\nimport rootReducer from './reducers';\n\nexport default configureStore({\n reducer: rootReducer,\n middleware: [thunk],\n devTools: process.env.NODE_ENV !== 'production',\n});\n","export default __webpack_public_path__ + \"static/media/ShareTech-Regular.c0baac7e.ttf\";","import React from 'react';\nimport ReactDOM from 'react-dom/client';\nimport { Provider } from 'react-redux';\nimport { HashRouter } from 'react-router-dom';\n\nimport './index.css';\nimport reportWebVitals from './reportWebVitals';\nimport AppRoutes from './Routes';\nimport store from './store';\nimport './fonts/ShareTech-Regular.ttf';\n\nconst root = ReactDOM.createRoot(document.getElementById('root'));\nroot.render(\n \n \n \n \n ,\n);\n\n// If you want to start measuring performance in your app, pass a function\n// to log results (for example: reportWebVitals(console.log))\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\nreportWebVitals();\n"],"sourceRoot":""}
\ No newline at end of file