@streamlayer/react 1.23.0 → 1.23.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/lib/app/pause-ad.d.ts +2 -4
  2. package/lib/app/polymarket.d.ts +7 -0
  3. package/lib/cjs/Question.js +1 -1
  4. package/lib/cjs/advertisement.js +1 -1
  5. package/lib/cjs/auth.js +1 -1
  6. package/lib/cjs/bet-pack.js +1 -1
  7. package/lib/cjs/feature.js +1 -0
  8. package/lib/cjs/hooks-WfHlJH12.js +1 -0
  9. package/lib/cjs/index.js +1 -1
  10. package/lib/cjs/index10.js +1 -4
  11. package/lib/cjs/index11.js +4 -1
  12. package/lib/cjs/index12.js +1 -1
  13. package/lib/cjs/index13.js +1 -1
  14. package/lib/cjs/index14.js +1 -1
  15. package/lib/cjs/index15.js +1 -5
  16. package/lib/cjs/index16.js +5 -0
  17. package/lib/cjs/index2.js +1 -1
  18. package/lib/cjs/index3.js +1 -1
  19. package/lib/cjs/index4.js +1 -1
  20. package/lib/cjs/index7.js +1 -1
  21. package/lib/cjs/index8.js +1 -1
  22. package/lib/cjs/index9.js +1 -1
  23. package/lib/cjs/insight.js +1 -1
  24. package/lib/cjs/masters.js +1 -1
  25. package/lib/cjs/masters2.js +4 -4
  26. package/lib/cjs/notification.js +1 -1
  27. package/lib/cjs/pause-ad.js +1 -1
  28. package/lib/cjs/points.js +1 -1
  29. package/lib/cjs/polymarket.js +19 -0
  30. package/lib/cjs/storage.js +1 -1
  31. package/lib/cjs/useStreamLayerApp2.js +5 -5
  32. package/lib/classic/app/pause-ad.d.ts +2 -4
  33. package/lib/classic/app/polymarket.d.ts +7 -0
  34. package/lib/classic/cjs/Question.js +1 -1
  35. package/lib/classic/cjs/advertisement.js +1 -1
  36. package/lib/classic/cjs/analytics.js +1 -1
  37. package/lib/classic/cjs/auth.js +1 -1
  38. package/lib/classic/cjs/bet-pack.js +3 -3
  39. package/lib/classic/cjs/feature.js +1 -0
  40. package/lib/classic/cjs/hooks-WfHlJH12.js +1 -0
  41. package/lib/classic/cjs/index.js +1 -1
  42. package/lib/classic/cjs/index10.js +1 -1
  43. package/lib/classic/cjs/index11.js +1 -1
  44. package/lib/classic/cjs/index12.js +1 -4
  45. package/lib/classic/cjs/index13.js +4 -0
  46. package/lib/classic/cjs/index2.js +2 -2
  47. package/lib/classic/cjs/index5.js +1 -1
  48. package/lib/classic/cjs/index6.js +1 -1
  49. package/lib/classic/cjs/index7.js +1 -1
  50. package/lib/classic/cjs/index8.js +1 -1
  51. package/lib/classic/cjs/index9.js +1 -1
  52. package/lib/classic/cjs/insight.js +1 -1
  53. package/lib/classic/cjs/notification.js +1 -1
  54. package/lib/classic/cjs/notification2.js +1 -1
  55. package/lib/classic/cjs/pause-ad.js +1 -1
  56. package/lib/classic/cjs/points.js +1 -1
  57. package/lib/classic/cjs/polymarket.js +19 -0
  58. package/lib/classic/cjs/useStreamLayerApp2.js +5 -5
  59. package/lib/classic/es/Question.js +4 -4
  60. package/lib/classic/es/advertisement.js +6 -6
  61. package/lib/classic/es/analytics.js +1 -1
  62. package/lib/classic/es/auth.js +1 -1
  63. package/lib/classic/es/bet-pack.js +18 -17
  64. package/lib/classic/es/feature.js +63 -0
  65. package/lib/classic/es/hooks-WfHlJH12.js +98 -0
  66. package/lib/classic/es/index.js +2 -2
  67. package/lib/classic/es/index10.js +82 -2295
  68. package/lib/classic/es/index11.js +2351 -179
  69. package/lib/classic/es/index12.js +170 -822
  70. package/lib/classic/es/index13.js +835 -0
  71. package/lib/classic/es/index2.js +127 -126
  72. package/lib/classic/es/index5.js +4 -5
  73. package/lib/classic/es/index6.js +5 -11
  74. package/lib/classic/es/index7.js +5 -62
  75. package/lib/classic/es/index8.js +7 -315
  76. package/lib/classic/es/index9.js +313 -81
  77. package/lib/classic/es/insight.js +2 -2
  78. package/lib/classic/es/notification.js +2 -2
  79. package/lib/classic/es/notification2.js +14 -13
  80. package/lib/classic/es/pause-ad.js +20 -20
  81. package/lib/classic/es/points.js +15 -14
  82. package/lib/classic/es/polymarket.js +6670 -0
  83. package/lib/classic/es/useStreamLayerApp2.js +143 -119
  84. package/lib/dist/cjs/masters.js +23 -23
  85. package/lib/dist/es/masters.js +189 -165
  86. package/lib/dist/index.d.ts +17 -6
  87. package/lib/dist/style.css +1 -1
  88. package/lib/es/Question.js +2 -2
  89. package/lib/es/advertisement.js +5 -5
  90. package/lib/es/auth.js +1 -1
  91. package/lib/es/bet-pack.js +1 -1
  92. package/lib/es/feature.js +63 -0
  93. package/lib/es/hooks-WfHlJH12.js +98 -0
  94. package/lib/es/index.js +2 -2
  95. package/lib/es/index10.js +236 -804
  96. package/lib/es/index11.js +822 -170
  97. package/lib/es/index12.js +166 -302
  98. package/lib/es/index13.js +313 -81
  99. package/lib/es/index14.js +82 -2350
  100. package/lib/es/index15.js +2330 -1229
  101. package/lib/es/index16.js +1254 -0
  102. package/lib/es/index2.js +118 -117
  103. package/lib/es/index3.js +3 -61
  104. package/lib/es/index4.js +3 -3
  105. package/lib/es/index7.js +5 -7
  106. package/lib/es/index8.js +5 -9
  107. package/lib/es/index9.js +7 -263
  108. package/lib/es/insight.js +2 -2
  109. package/lib/es/masters.js +1 -1
  110. package/lib/es/masters2.js +25 -24
  111. package/lib/es/notification.js +8 -7
  112. package/lib/es/pause-ad.js +20 -20
  113. package/lib/es/points.js +6 -5
  114. package/lib/es/polymarket.js +6670 -0
  115. package/lib/es/storage.js +2 -2
  116. package/lib/es/useStreamLayerApp2.js +143 -119
  117. package/lib/style.css +1 -1
  118. package/package.json +24 -14
  119. package/lib/cjs/hooks-B0Qttldg.js +0 -1
  120. package/lib/classic/cjs/hooks-B0Qttldg.js +0 -1
  121. package/lib/classic/es/hooks-B0Qttldg.js +0 -98
  122. package/lib/es/hooks-B0Qttldg.js +0 -98
package/lib/cjs/index2.js CHANGED
@@ -1 +1 @@
1
- "use strict";var de=Object.defineProperty;var ce=(e,t,s)=>t in e?de(e,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[t]=s;var I=(e,t,s)=>ce(e,typeof t!="symbol"?t+"":t,s);const m=require("react"),_=require("./hooks-B0Qttldg.js"),n=require("react/jsx-runtime"),v=require("./useStreamLayerApp2.js"),ue=require("./index7.js"),a=require("./sl-types.js"),k=require("./index10.js"),S=require("./index15.js"),q=require("lodash.throttle"),$=require("./analytics.js"),L=require("./theme.js"),A=require("./index3.js");require("nanostores");const R=require("./Question.js"),pe=require("./index9.js"),w=require("./index6.js"),me=require("react-infinite-scroller"),B=require("./index11.js");require("uuid");require("@nanostores/query");require("./storage.js");const fe=require("react-dom");require("./notification.js");const z=Object.keys(a.A),V=()=>{const e=window.innerWidth;let t="sm";for(let s=z.length-1;s>0;s--){const r=z[s];if(!(e<a.A[r])&&e>=a.A[r]){t=r;break}}return{name:t,size:a.A[t]}},Q=e=>{var t;return(((t=e.current)==null?void 0:t.getBoundingClientRect().y)||0)<-68},D=()=>window.matchMedia("(orientation: landscape)").matches,he=e=>{const[t]=m.useState(()=>$.f({screen:V(),sdkInView:Q(e),sdkInDesktopView:D()}));return m.useEffect(()=>{const s=q(()=>{t.setKey("sdkInView",Q(e))},200),r=q(()=>{const o=V();t.setKey("screen",o),t.setKey("sdkInDesktopView",D())},200);return window.addEventListener("scroll",s),window.addEventListener("resize",r),()=>{window.removeEventListener("scroll",s),window.removeEventListener("resize",r)}},[t,e]),[t]},U=(e,t,s)=>{const r=t>=a.A.lg&&t<a.A.xl?75:52;e.current&&window.scrollTo({top:e.current.offsetTop-r,...s})},ve=15,ge=(e,t)=>{const s=m.useRef(null),r=m.useRef(0),[o]=m.useState($.f({scrollPosition:0,tabsShown:!0,scrollDirection:"forward"})),l=a.useStore(t);return m.useEffect(()=>{const d=D()?s.current:window;if(!d)return()=>{};const c=q(i=>{var u;const f=i.target;if(!f)return;let p=0;D()?p=f.scrollTop:p=((u=e.current)==null?void 0:u.getBoundingClientRect().y)||0;const h=r.current-p;if(ve>Math.abs(h))return;const g=r.current<p?"forward":"backward";r.current=p,o.set({scrollPosition:Math.round(p),scrollDirection:g,tabsShown:o.get().tabsShown})},200);return d.addEventListener("scroll",c),()=>{d.removeEventListener("scroll",c)}},[o,e,l.screen]),[s,o]},M=a.styled_default("div")({name:"LoadingContainer",class:"lclc0ej",propsAsIs:!1}),ye=({feature:e,sdk:t,children:s,className:r,noWait:o})=>{const l=a.useStore(e.status),d=a.useStore(t.sdkStore.slStreamId);if(!o){if(d!=null&&d.loading&&!d.data)return n.jsx(M,{className:r,children:"Event is loading..."});if(!(d!=null&&d.data))return n.jsx(M,{className:r,children:"Event is forbidden..."});if(l!==A.FeatureStatus.Ready)return n.jsx(M,{className:r,children:"Wait feature..."})}return s},xe=a.styled_default("div")({name:"Container",class:"c115qtkr",propsAsIs:!1}),Ie=a.styled_default("div")({name:"STabs",class:"sxnslc8",propsAsIs:!1}),Se=a.styled_default("button")({name:"Button",class:"b1umzux0",propsAsIs:!1}),ke=a.styled_default("span")({name:"Title",class:"tspsaas",propsAsIs:!1});var E=(e=>(e.HOME="home",e.LEADERBOARD="leaderboard",e))(E||{});const K=({title:e,active:t,onClick:s})=>n.jsx(Se,{"data-a":"intr",onClick:s,"data-selected":t,children:n.jsx(ke,{"data-a":"intr",children:e})}),be=({activePage:e="home",toggleActivePage:t})=>n.jsx(xe,{children:n.jsxs(Ie,{"data-position":e==="home"?"left":"right",children:[n.jsx(K,{title:"Home",active:e==="home",onClick:()=>t("home")}),n.jsx(K,{title:"Friends",active:e==="leaderboard",onClick:()=>t("leaderboard")})]})}),je=a.styled_default("div")({name:"Container",class:"c1ux29ft",propsAsIs:!1}),Ne=()=>w.B1,Ae=a.styled_default(Ne())({name:"FriendsIcon",class:"f10ncfg2",propsAsIs:!0}),we=a.styled_default("div")({name:"Content",class:"c1yc07bd",propsAsIs:!1}),_e=a.styled_default("div")({name:"Title",class:"tj6cq7w",propsAsIs:!1}),Ce=a.styled_default("div")({name:"Description",class:"d1ag78xo",propsAsIs:!1}),Ee=()=>w.B1,$e=a.styled_default(Ee())({name:"ArrowInviteIcon",class:"awohrz6",propsAsIs:!0}),Re=({title:e,description:t,onClick:s,className:r})=>{const[o]=$.f$1({type:"invitation",action:"sent",payload:{from:v.InvitationFrom.TITLE_CARD}});return n.jsxs(je,{"data-a":"intr",onClick:o(s),className:r,children:[n.jsx(Ae,{name:"icon-friends"}),n.jsxs(we,{children:[n.jsx(_e,{children:e}),n.jsx(Ce,{children:t})]}),n.jsx($e,{name:"icon-copy"})]})};function Te(e){var t=e.lastRenderedStartIndex,s=e.lastRenderedStopIndex,r=e.startIndex,o=e.stopIndex;return!(r>s||o<t)}function Le(e){for(var t=e.isItemLoaded,s=e.itemCount,r=e.minimumBatchSize,o=e.startIndex,l=e.stopIndex,d=[],c=null,i=null,u=o;u<=l;u++){var f=t(u);f?i!==null&&(d.push(c,i),c=i=null):(i=u,c===null&&(c=u))}if(i!==null){for(var p=Math.min(Math.max(i,c+r-1),s-1),h=i+1;h<=p&&!t(h);h++)i=h;d.push(c,i)}if(d.length)for(;d[1]-d[0]+1<r&&d[0]>0;){var g=d[0]-1;if(!t(g))d[0]=g;else break}return d}var Oe=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},De=function(){function e(t,s){for(var r=0;r<s.length;r++){var o=s[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}return function(t,s,r){return s&&e(t.prototype,s),r&&e(t,r),t}}(),Me=function(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)},W=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t&&(typeof t=="object"||typeof t=="function")?t:e};(function(e){Me(t,e);function t(){var s,r,o,l;Oe(this,t);for(var d=arguments.length,c=Array(d),i=0;i<d;i++)c[i]=arguments[i];return l=(r=(o=W(this,(s=t.__proto__||Object.getPrototypeOf(t)).call.apply(s,[this].concat(c))),o),o._lastRenderedStartIndex=-1,o._lastRenderedStopIndex=-1,o._memoizedUnloadedRanges=[],o._onItemsRendered=function(u){var f=u.visibleStartIndex,p=u.visibleStopIndex;o._lastRenderedStartIndex=f,o._lastRenderedStopIndex=p,o._ensureRowsLoaded(f,p)},o._setRef=function(u){o._listRef=u},r),W(o,l)}return De(t,[{key:"resetloadMoreItemsCache",value:function(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;this._memoizedUnloadedRanges=[],r&&this._ensureRowsLoaded(this._lastRenderedStartIndex,this._lastRenderedStopIndex)}},{key:"componentDidMount",value:function(){}},{key:"render",value:function(){var r=this.props.children;return r({onItemsRendered:this._onItemsRendered,ref:this._setRef})}},{key:"_ensureRowsLoaded",value:function(r,o){var l=this.props,d=l.isItemLoaded,c=l.itemCount,i=l.minimumBatchSize,u=i===void 0?10:i,f=l.threshold,p=f===void 0?15:f,h=Le({isItemLoaded:d,itemCount:c,minimumBatchSize:u,startIndex:Math.max(0,r-p),stopIndex:Math.min(c-1,o+p)});(this._memoizedUnloadedRanges.length!==h.length||this._memoizedUnloadedRanges.some(function(g,x){return h[x]!==g}))&&(this._memoizedUnloadedRanges=h,this._loadUnloadedRanges(h))}},{key:"_loadUnloadedRanges",value:function(r){for(var o=this,l=this.props.loadMoreItems||this.props.loadMoreRows,d=function(u){var f=r[u],p=r[u+1],h=l(f,p);h!=null&&h.then(function(){if(Te({lastRenderedStartIndex:o._lastRenderedStartIndex,lastRenderedStopIndex:o._lastRenderedStopIndex,startIndex:f,stopIndex:p})){if(o._listRef==null)return;typeof o._listRef.resetAfterIndex=="function"?o._listRef.resetAfterIndex(f,!0):(typeof o._listRef._getItemStyleCache=="function"&&o._listRef._getItemStyleCache(-1),o._listRef.forceUpdate())}})},c=0;c<r.length;c+=2)d(c)}}]),t})(m.PureComponent);const qe=a.styled_default("div")({name:"Container",class:"culdu4a",propsAsIs:!1}),Be=a.styled_default("div")({name:"Position",class:"pwf8e69",propsAsIs:!1}),Fe=a.styled_default("img")({name:"Avatar",class:"atf4yh4",propsAsIs:!1}),Ue=a.styled_default("div")({name:"AvatarPlaceholder",class:"a1dg29ja",propsAsIs:!1}),Pe=a.styled_default("div")({name:"Content",class:"c10a68rc",propsAsIs:!1}),ze=a.styled_default("div")({name:"NameContainer",class:"nc4kck5",propsAsIs:!1}),Ve=a.styled_default("span")({name:"Name",class:"njsrqgr",propsAsIs:!1}),Qe=()=>w.B1,Ke=a.styled_default(Qe())({name:"CurrentUserBadge",class:"c17uc4zr",propsAsIs:!0}),We=({friendsRank:e,avatar:t,name:s,userId:r,points:o,isCurrentUser:l,style:d})=>n.jsxs(qe,{"data-name":r,style:d,children:[n.jsx(Be,{children:e||0}),n.jsxs(Pe,{children:[t?n.jsx(Fe,{alt:"leaderboard-item-avatar",src:t}):n.jsx(Ue,{children:B.I(s||"")}),n.jsxs(ze,{children:[n.jsx(Ve,{children:s||""}),l&&n.jsx(Ke,{name:"icon-star"})]})]}),n.jsx("div",{children:B.s(o)})]}),Ge=a.styled_default("div")({name:"Container",class:"c16btbfp",propsAsIs:!1}),He=({items:e,currentUserId:t,openItemDetail:s,fetchMore:r,scrollNode:o,hasMore:l})=>{const d=m.useCallback(c=>{const i=c.target.getAttribute("data-name");i&&s(i)},[s]);return n.jsx(me,{loadMore:r,initialLoad:!1,hasMore:l,useWindow:!1,getScrollParent:()=>o.current,children:n.jsx(Ge,{"data-a":"intr",onClick:d,children:e.map(c=>n.jsx(We,{...c,isCurrentUser:!!t&&t===c.userId},c.userId))})})},Je=a.styled_default("div")({name:"InviteFriendsContainer",class:"i1c9dygq",propsAsIs:!1}),Ye=({deepLink:e})=>n.jsx(Je,{children:n.jsx(S.M,{inviteLink:e,inviteCardTitle:"It’s More Fun With Friends",inviteCardSubtext:"Invite and compete against your friends for the top spot on the leaderboard."})}),Ze=a.styled_default("div")({name:"InviteLinkContainer",class:"i1odbhm4",propsAsIs:!1}),Xe=({gamification:e,scrollNode:t,scrollStore:s,leaderboardList:r})=>{const o=m.useRef(null),{data:l,hasMore:d,loading:c,key:i}=a.useStore(r.$store),{data:u}=a.useStore(e.deepLink.$store),[f,p]=S.T$1(o);return!l.length&&!c?n.jsx(Ye,{deepLink:u}):n.jsxs(n.Fragment,{children:[n.jsx(He,{items:l,scrollNode:t,scrollStore:s,fetchMore:r.fetchMore,hasMore:d,openItemDetail:e.openUser,currentUserId:e.currentUserId.get()},i),u&&n.jsx(Ze,{ref:o,children:n.jsx(Re,{"data-a":"intr",onClick:()=>f(u),title:"Invite Friends",description:"Challenge them now!"})}),p]})},et=({gamification:e,scrollNode:t,scrollStore:s})=>e.leaderboardList?n.jsx(Xe,{leaderboardList:e.leaderboardList,gamification:e,scrollNode:t,scrollStore:s}):null,tt=({store:e,openQuestion:t})=>{const{sdk:s}=R.p(),r=a.useStore(e);return n.jsx(S.k,{openQuestion:t,questions:r.data,controlVideo:s==null?void 0:s.controlVideoPlayer})},st=({userSummary:e})=>{var t;const[s,r]=m.useState(void 0);return m.useEffect(()=>{const o=e.$store.subscribe(l=>{l&&r(l)});return()=>{o()}},[e]),n.jsx(S.z,{loading:!(s!=null&&s.summary),...s==null?void 0:s.summary,successRate:(t=s==null?void 0:s.percentage)==null?void 0:t.correct})},nt=({gamification:e,className:t,scrollStore:s,scrollNode:r,appNode:o,style:l,responsiveStore:d})=>{const{tabsShown:c}=a.useStore(s,{keys:["tabsShown"]}),i=a.useStore(e.friendsTabEnabled),[u,f]=m.useState(E.HOME),[,p]=a.useTransition(),{sdkInDesktopView:h,screen:g}=a.useStore(d,{keys:["sdkInDesktopView"]}),x=y=>{p(()=>{var T;f(y),h===!1&&(((T=o.current)==null?void 0:T.getBoundingClientRect().y)||0)<0&&U(o,g.size,{behavior:"instant"})})};m.useEffect(()=>s.subscribe(y=>{if(y.scrollPosition===0){s.setKey("tabsShown",!0);return}d.get().sdkInDesktopView?s.setKey("tabsShown",y.scrollDirection==="backward"):s.setKey("tabsShown",y.scrollDirection==="forward")}),[s,d]),m.useEffect(()=>{i||f(E.HOME)},[i]);let b="0px";return h?b=c?"0px":"calc(0px - var(--header-height))":b=c?"var(--header-height)":"0px",n.jsxs(k.l,{className:a.cx_default(t,"SL-Tabs","sl-hide-on-modal"),style:l,children:[i&&n.jsx(k.S$1,{style:{top:b},children:n.jsx(be,{activePage:u,toggleActivePage:x})}),u===E.HOME&&n.jsxs(n.Fragment,{children:[n.jsx(k.m,{children:n.jsx(k.d,{children:n.jsx(st,{userSummary:e.userSummary})})}),n.jsx(k.n,{style:{flex:1},children:n.jsx(tt,{openQuestion:e.openQuestion,store:e.feedList.getStore()})})]}),u===E.LEADERBOARD&&n.jsx(k.C,{children:n.jsx(et,{scrollStore:s,scrollNode:r,gamification:e})})]})},ot=()=>k.f,G=a.styled_default(ot())({name:"OpenedContainer",class:"ouvguos",propsAsIs:!0}),H="t1eu4lbg",rt=a.styled_default("div")({name:"UserContainer",class:"uuv2xqo",propsAsIs:!1}),at=({correct:e,incorrect:t})=>{const s=e+t;return s===0?0:Math.round(e/s*100)},it=({gamification:e,scrollStore:t,className:s,appNode:r,scrollNode:o,responsiveStore:l})=>n.jsx(nt,{appNode:r,scrollStore:t,scrollNode:o,className:s,gamification:e,responsiveStore:l}),lt=({gamification:e,muted:t,sdk:s,className:r,appNode:o,responsiveStore:l})=>{const{topNavigation:d}=R.p(),c=a.useStore(e.openedQuestionId),i=a.useStore(e.openedQuestion.$store),u=a.useStore(e.openedUser||S.createSingleStore(void 0)),{sdkInDesktopView:f}=a.useStore(l,{keys:["sdkInDesktopView"]}),{hiding:p,onAnimationEnd:h}=k.S();if(!c&&!u)return null;const g=i?n.jsx(G,{className:a.cx_default(r,!d&&H),hiding:p,onAnimationEnd:h,children:n.jsx(R.ht,{muted:t,sdk:s,gamification:e})}):u?n.jsx(G,{className:a.cx_default(r,!d&&H),hiding:p,onAnimationEnd:h,children:n.jsxs(rt,{children:[n.jsx(pe.y,{label:"Friend's Rank",close:e.closeUser}),n.jsx(k.a,{children:n.jsx(S.z,{...u,successRate:at(u)})})]})}):null;return n.jsx(S.T,{container:o,useContainer:!f,children:g})},dt=m.lazy(()=>Promise.resolve().then(()=>require("./gamification-feature.js"))),ct=({sdk:e,feature:t,className:s,scrollStore:r,appNode:o,scrollNode:l,responsiveStore:d})=>{const c=m.useMemo(()=>t&&t.featureConfig.get().type===v.SdkOverlayType.GAMES?n.jsx(ye,{className:s,sdk:e,feature:t,children:n.jsx(dt,{appNode:o,scrollStore:r,scrollNode:l,className:s,responsiveStore:d,gamification:t})}):null,[e,t,s,d,r,l,o]);return n.jsx(m.Suspense,{fallback:n.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",width:"100%",height:"100%"},children:"page loading..."}),children:c})},ut=({feature:e,sdk:t,muted:s,className:r,appNode:o,responsiveStore:l})=>e&&e.featureConfig.get().type===v.SdkOverlayType.GAMES?n.jsx(lt,{className:r,appNode:o,muted:s,sdk:t,responsiveStore:l,gamification:e}):null;window.dispatchEvent(new CustomEvent("grpc_devtools_loaded"));function pt(e){return e instanceof DOMException&&(e.code===22||e.code===1014||e.name==="QuotaExceededError"||e.name==="NS_ERROR_DOM_QUOTA_REACHED")}class mt{constructor(t="main",s=window.localStorage){I(this,"delimiter",":");I(this,"prefix");I(this,"storage");I(this,"clear",()=>{for(const t in window.localStorage)t.startsWith(this.prefix)&&this.storage.removeItem(t)});I(this,"generateKey",t=>`${this.prefix}${this.delimiter}${t.join(this.delimiter)}`);I(this,"write",(...t)=>{const s=t.pop()||"",r=this.generateKey(t);try{this.storage.setItem(r,s)}catch(o){pt(o)&&this.storage===window.sessionStorage&&(window.sessionStorage.removeItem("slstreamlogs"),this.storage.setItem(r,s))}});I(this,"read",(...t)=>{const s=this.storage.getItem(this.generateKey(t));return s===null?void 0:s});I(this,"remove",(...t)=>{this.storage.removeItem(this.generateKey(t))});this.prefix=`sl-sdk${this.delimiter}${t}`,this.storage=s}}var J;(function(e){e.Init="init",e.Ready="ready",e.Connecting="connecting",e.Connected="connected",e.Disconnected="disconnected",e.Failed="failed",e.Reconnect="reconnect",e.Reconnecting="reconnecting"})(J||(J={}));A.createLogger("grpc:stream");v.Code.Unknown,v.Code.Internal,v.Code.DeadlineExceeded,v.Code.ResourceExhausted,v.Code.FailedPrecondition,v.Code.Unavailable,v.Code.DataLoss;A.createLogger("grpc:retry");v.createContextKey(10,{description:"Number of attempts to retry"}),v.createContextKey(3e4,{description:"Max delay between retries in milliseconds"});var j;(function(e){e.SCHEMA="schema",e.EXTERNAL_TOKEN="eToken",e.TOKEN="token"})(j||(j={}));class ft extends mt{constructor(){super("user");I(this,"setSchema",s=>{this.write(j.SCHEMA,s)});I(this,"getSchema",()=>this.read(j.SCHEMA));I(this,"setToken",s=>{this.write(j.TOKEN,s)});I(this,"getToken",()=>this.read(j.TOKEN));I(this,"setExternalToken",s=>{this.write(j.EXTERNAL_TOKEN,s)});I(this,"getExternalToken",()=>this.read(j.EXTERNAL_TOKEN));I(this,"removeToken",()=>{this.remove(j.TOKEN)})}}var Y;(function(e){e.DISABLED="disabled",e.INITIALIZATION="initialization",e.READY="ready",e.FAILED="failed",e.SUSPENDED="suspended"})(Y||(Y={}));var Z;(function(e){e.SHOWED="showed",e.EVENT="ev"})(Z||(Z={}));var X;(function(e){e.ONBOARDING="onboarding",e.ONBOARDING_IO="onboarding_io",e.QUESTION_RECEIVED="q-received",e.QUESTION_OPENED="q-opened"})(X||(X={}));var ee;(function(e){e.ALLOWED="allowed",e.DISALLOWED="disallowed"})(ee||(ee={}));var te;(function(e){e.UNKNOWN="unknown",e.ALREADY_VOTED="already_voted"})(te||(te={}));A.createLogger("deep_link");A.createLogger("bypass");new ft;A.createLogger("video_player");v.QuestionType.FACTOID+"",v.QuestionType.POLL+"",v.QuestionType.TRIVIA+"",v.QuestionType.PREDICTION+"",v.QuestionType.TWEET+"";var se;(function(e){e.Unset="unset",e.Required="required",e.Optional="optional",e.Completed="completed",e.Disabled="disabled",e.Unavailable="unavailable"})(se||(se={}));v.QuestionType.POLL,v.QuestionType.PREDICTION,v.QuestionType.TRIVIA;const ht={[v.SdkOverlayType.GAMES]:!0},vt=a.styled_default("div")({name:"Buttons",class:"b5o8qbl",propsAsIs:!1}),gt=({children:e,className:t})=>n.jsx(vt,{className:t,children:e}),ae=a.styled_default("div")({name:"Navigation",class:"n6tbwuy",propsAsIs:!1}),yt=()=>gt,ne=a.styled_default(yt())({name:"NavigationItems",class:"n1up4z7v",propsAsIs:!0}),xt=a.styled_default("button")({name:"SButton",class:"sxxa0c",propsAsIs:!1}),It=a.styled_default("span")({name:"ButtonIcon",class:"b193dcyu",propsAsIs:!1}),St=a.styled_default("span")({name:"ButtonLabel",class:"b40tuix",propsAsIs:!1}),kt="s14xk0af",bt="ha3mg7c",jt="h103yr45",O=({disabled:e,active:t,onClick:s,label:r,icon:o,id:l})=>n.jsx(xt,{onClick:s,"data-a":"intr",disabled:e,className:a.cx_default(t&&kt,!t&&(l==="channels"||l==="featuredGroups")&&bt,!t&&l==="leaderboard"&&jt),children:n.jsxs(n.Fragment,{children:[o&&n.jsx(It,{children:o}),n.jsx(St,{children:r})]})}),Nt=()=>w.B1,At=a.styled_default(Nt())({name:"ButtonIcon",class:"b11wpe79",propsAsIs:!0}),wt=a.styled_default("div")({name:"Container",class:"calnblm",propsAsIs:!1}),_t=a.styled_default("div")({name:"Title",class:"t1438p52",propsAsIs:!1}),Ct=a.styled_default("div")({name:"CloseIconWrap",class:"c17srj38",propsAsIs:!1}),Et=()=>w.B1,$t=a.styled_default(Et())({name:"CloseIcon",class:"clqia8k",propsAsIs:!0}),Rt=()=>w.B1,Tt=a.styled_default(Rt())({name:"DashboardIcon",class:"df5w958",propsAsIs:!0}),Lt="h12x6aiv",Ot=m.forwardRef(({sdk:e,className:t},s)=>{const r=()=>{e.closeFeature()};return n.jsxs(ae,{className:a.cx_default(t,Lt),children:[n.jsxs(wt,{children:[n.jsxs(_t,{children:[n.jsx(Tt,{name:"dashboard"}),"Dashboard"]}),n.jsx(Ct,{"data-a":"intr",onClick:r,children:n.jsx($t,{name:"icon-cross"})})]}),n.jsx("div",{ref:s})]})}),Dt=m.forwardRef(({sdk:e,className:t},s)=>{const r=a.useStore(e.sdkStore.organizationSettings),o=a.useStore(e.sdkStore.streamSettings),l=a.useStore(e.getActiveFeature()),d=m.useMemo(()=>{const i=(o==null?void 0:o.data)||(r==null?void 0:r.data);return i!=null&&i.overlays?i.overlays:[]},[r,o]),c=m.useMemo(()=>[...d.filter(({enableSdkButton:i,type:u})=>u===v.SdkOverlayType.GAMES||i).map(i=>({id:i.type,onClick:()=>e.openFeature(i.type),disabled:!(i.type in ht),label:i.name,icon:n.jsx("img",{src:i.icon,alt:""}),position:i.position*10}))].sort((i,u)=>i.position-u.position),[d,e]);return n.jsxs(ae,{className:t,children:[c.length!==0&&n.jsx(ne,{children:[n.jsx(O,{id:"Channels",onClick:()=>e.closeFeature(),label:"Channels",active:l===0},"Channels"),...c.map(i=>i.id===v.SdkOverlayType.GAMES?n.jsx(O,{...i,active:i.id===l,label:"StreamLayer +",id:"featuredGroups",icon:n.jsx(At,{name:"icon-btn-feature-groups","data-selected":i.id===l})},i.id):n.jsx(O,{...i,icon:void 0,active:i.id===l},i.id))]}),!c.length&&n.jsx(ne,{children:[n.jsx(O,{id:"empty",label:"No Features...",active:!1,disabled:!0},"empty")]}),n.jsx("div",{ref:s})]})}),Mt=a.styled_default("div")({name:"Container",class:"c1qjj4d4",propsAsIs:!1}),qt=a.styled_default("div")({name:"CloseIconWrap",class:"c1lg6b8a",propsAsIs:!1}),Bt=()=>w.B1,Ft=a.styled_default(Bt())({name:"CloseIcon",class:"c159el66",propsAsIs:!0}),Ut=a.styled_default("div")({name:"Title",class:"t16xmufv",propsAsIs:!1}),Pt=a.styled_default("img")({name:"SponsorLogo",class:"s83lc21",propsAsIs:!1}),zt=a.styled_default("div")({name:"PresentsTitle",class:"p1p7igia",propsAsIs:!1}),Vt=a.styled_default("div")({name:"Subtitle",class:"s1eftsbu",propsAsIs:!1}),Qt=a.styled_default("div")({name:"Description",class:"d8uezec",propsAsIs:!1}),Kt=a.styled_default("button")({name:"ActionButton",class:"a1h1bk90",propsAsIs:!1}),oe=({close:e,action:t,onboarding:s})=>{var r,o,l,d,c,i,u,f;return n.jsxs(Mt,{children:[n.jsx(qt,{"data-a":"intr",onClick:e,children:n.jsx(Ft,{name:"icon-cross"})}),((o=(r=s==null?void 0:s.titleCard)==null?void 0:r.media)==null?void 0:o.sponsorLogo)&&n.jsxs(Ut,{children:[n.jsx(Pt,{alt:"sponsor-logo",src:(d=(l=s==null?void 0:s.titleCard)==null?void 0:l.media)==null?void 0:d.sponsorLogo}),n.jsx(zt,{children:"PRESENTS"})]}),((c=s==null?void 0:s.titleCard)==null?void 0:c.title)&&n.jsx(Vt,{children:(i=s==null?void 0:s.titleCard)==null?void 0:i.title}),((u=s==null?void 0:s.titleCard)==null?void 0:u.subtitle)&&n.jsx(Qt,{children:(f=s==null?void 0:s.titleCard)==null?void 0:f.subtitle}),n.jsx(Kt,{"data-a":"intr",onClick:t,children:"Play Now"})]})},F=[{graphicSrc:"https://cdn.streamlayer.io/assets/sdk-web/onboarding-steps/dark/step_1.png",tagline:"",headline:n.jsxs(n.Fragment,{children:["Welcome to ",n.jsx("br",{})," Live Challenge"]})},{graphicSrc:"https://cdn.streamlayer.io/assets/sdk-web/onboarding-steps/dark/step_2.png",headline:"Live insights, polls, trivia and predictions."},{graphicSrc:"https://cdn.streamlayer.io/assets/sdk-web/onboarding-steps/dark/step_3.png",headline:"Win points and play against friends."}],Wt=a.styled_default("div")({name:"OnboardingContainer",class:"o1xni1kr",propsAsIs:!1}),Gt=()=>k.f,Ht=a.styled_default(Gt())({name:"OnboardingNotificationContainer",class:"o1vnouv7",propsAsIs:!0}),re=a.styled_default("div")({name:"InnerContainer",class:"i59uefw",propsAsIs:!1}),Jt=a.styled_default("div")({name:"OnboardingOverlap",class:"ovnr8ov",propsAsIs:!1}),Yt=({deepLink:e,onboardingOpts:t,notification:s,gamification:r,loading:o,sdk:l,throttled:d})=>{var c,i,u,f,p,h,g;const x=a.useStore(r.friends?r.friends.getStore():S.createSingleStore({data:[]})),[b,y]=m.useState(void 0),T=m.useMemo(()=>{var N,C;const P=l.getInviter();return P?(C=(N=x.data)==null?void 0:N.find(({slId:le})=>le===P))==null?void 0:C.name:""},[x.data,l]);return m.useEffect(()=>{const N=e.$store.subscribe(C=>{C&&y(C.data)});return()=>{N()}},[e.$store]),n.jsxs(Wt,{children:[n.jsx(S.tn,{loading:o,rules:[{label:"Answer as many questions as you like.",icon:"icon-btn-feature-groups"},{label:"Win points for each correct trivia or prediction answer.",icon:"icon-thumb-up"},{label:"Top the leader board and best your friends.",icon:"icon-trophy"}],rulesBtnLabel:(c=t.rules)==null?void 0:c.buttonLabel,rulesTitle:(i=t.rules)==null?void 0:i.heading,termsTitle:"Terms and Conditions",termsText:(u=t.rules)==null?void 0:u.terms,steps:F,primaryColor:(f=t.inviteCard)==null?void 0:f.iconColor,inviteLink:b,inviteCardTitle:(p=t.inviteCard)==null?void 0:p.heading,inviteCardSubtext:(h=t.inviteCard)==null?void 0:h.subtext,inviteCardBtnLabel:(g=t.inviteCard)==null?void 0:g.buttonLabel,onClose:()=>{var N;(N=s.close)==null||N.call(s)},gamification:r,sdk:l,inviterName:T}),d&&n.jsx(Jt,{})]})},Zt=({sdk:e,notification:t,saveHeight:s,style:r,appNode:o,sdkInDesktopView:l,responsiveStore:d})=>{const c=m.useRef(null),i=t.data.onboarding,[u,f]=m.useState(i==null?void 0:i.instantOpen),p=e.getFeature(v.SdkOverlayType.GAMES),h=m.useMemo(()=>F==null?void 0:F.map(({graphicSrc:y})=>y),[]),{screen:g}=a.useStore(d,{keys:["screen"]});m.useLayoutEffect(()=>{var y;s(((y=c.current)==null?void 0:y.getBoundingClientRect().height)||0)},[s]);const{loading:x,throttled:b}=S.I(h);return u&&p&&i&&o.current?n.jsx(S.T,{container:o,useContainer:!l,children:n.jsx(Yt,{throttled:b,notification:t,setOpened:f,gamification:p,onboardingOpts:i,deepLink:p.deepLink,loading:x,renderToNode:o,sdk:e})}):n.jsxs(n.Fragment,{children:[n.jsx(re,{ref:c,style:{position:"absolute",visibility:"hidden"},children:n.jsx(oe,{close:()=>{},action:()=>{},onboarding:i})}),n.jsx(Ht,{style:r,hiding:t.hiding,children:n.jsx(re,{children:n.jsx(oe,{close:t.close,action:()=>{var y;f(!0),(((y=o.current)==null?void 0:y.getBoundingClientRect().y)||0)<0&&U(o,g.size,{behavior:"smooth"})},onboarding:i})})})]})},Xt=()=>k.f,es=a.styled_default(Xt())({name:"Container",class:"c8ol1ve",propsAsIs:!0}),ie=a.styled_default("div")({name:"InnerContainer",class:"iqfywam",propsAsIs:!1}),ts=()=>ie,ss=a.styled_default(ts())({name:"HiddenContainer",class:"hokmtod",propsAsIs:!0}),ns=a.styled_default("div")({name:"NotificationRefreshing",class:"n192d1q8",propsAsIs:!1}),os=()=>S.f,rs=a.styled_default(os())({name:"Pill",class:"p1lha68t",propsAsIs:!0}),as=e=>{const[t,s]=m.useState(0),r=m.useRef(null),o=m.useMemo(()=>new ResizeObserver(c=>{window.requestAnimationFrame(()=>{var i;if(Array.isArray(c)){for(const u of c)if(u.contentBoxSize){const f=(i=r.current)==null?void 0:i.getBoundingClientRect();f&&s(f.height)}}})}),[]),l=m.useCallback(c=>{r.current=c},[]),d=m.useCallback(c=>{s(c)},[]);return m.useEffect(()=>{const c=r.current;return c?(o.observe(c),()=>{o.unobserve(c)}):()=>{}},[e]),m.useEffect(()=>()=>{o.disconnect()}),[l,t,d]},is=({sdk:e,notification:t,appNode:s,responsiveStore:r,hasActiveFeature:o})=>{var l,d;const{sdkInDesktopView:c}=a.useStore(r,{keys:["sdkInDesktopView"]}),{sdk:i}=R.p(),[u,f,p]=as(t.id);let h=f;return o||(h="auto"),t.type===a.NotificationType.QUESTION?n.jsxs(n.Fragment,{children:[n.jsx(ss,{ref:u,children:n.jsx(S.w,{...t})}),n.jsxs(es,{style:{height:t.hiding?0:h},hiding:t.hiding,children:[n.jsx(ie,{style:{height:"100%"},children:n.jsx(S.w,{...t,controlVideo:i==null?void 0:i.controlVideoPlayer})}),n.jsx(ns,{},t.id)]})]}):t.type===a.NotificationType.QUESTION_RESOLVED&&(d=(l=t.data)==null?void 0:l.question)!=null&&d.predictionResult?n.jsx(S.D,{style:{height:t.hiding?0:f},saveHeight:p,close:t.close,hiding:t.hiding,...t.data.question}):t.type===a.NotificationType.ONBOARDING?n.jsx(Zt,{style:{height:t.hiding?0:h},saveHeight:p,sdk:e,notification:t,sdkInDesktopView:c,appNode:s,responsiveStore:r}):null},ls="p7vfi6t",ds=({pill:e,setPill:t,appNode:s,headerNode:r,scrollNode:o,responsiveStore:l,scrollStore:d})=>{var c,i;const{screen:u}=a.useStore(l,{keys:["screen"]}),{tabsShown:f,scrollPosition:p}=a.useStore(d,{keys:["tabsShown","scrollPosition"]});m.useEffect(()=>{l.get().sdkInDesktopView?p<50&&t(null):p>-50&&t(null)},[p,l,t]);const h=l.get().sdkInDesktopView?s:r;return!e||!h.current?null:fe.createPortal(n.jsx(rs,{title:e.type===a.NotificationType.QUESTION_RESOLVED?"Prediction result":`New ${((i=B.e[(c=e.data)==null?void 0:c.questionType])==null?void 0:i.label)||"notification"}`,"data-a":"intr",onClick:()=>{var g;l.get().sdkInDesktopView?(g=o.current)==null||g.scrollTo({top:0,behavior:"smooth"}):U(s,u.size,{behavior:"smooth"}),t(null)},className:a.cx_default(f&&ls,"sl-pill-button")}),h.current)},cs=({sdk:e,headerNode:t,scrollNode:s,responsiveStore:r,appNode:o,scrollStore:l,hasActiveFeature:d})=>{const[c]=m.useState(e.getNotificationsStore()),i=a.useStore(c),[u,f]=m.useState(null),p=m.useMemo(()=>e.getActiveNotification(),[e,i]);return m.useEffect(()=>{p&&A.eventBus.emit("notification",{action:"rendered",payload:{questionId:p.data.questionId,questionType:p.data.questionType}})},[p]),m.useEffect(()=>{const{sdkInDesktopView:h,sdkInView:g}=r.get();p&&(h||g)&&(!h&&g&&f(p),h&&window.requestAnimationFrame(()=>{l.get().scrollPosition!==0&&f(p)}))},[p]),m.useEffect(()=>{p||f(null)},[p]),n.jsxs(n.Fragment,{children:[!u&&p&&n.jsx(is,{appNode:o,sdk:e,hasActiveFeature:d,notification:p,responsiveStore:r}),u&&n.jsx(ds,{pill:u,setPill:f,appNode:o,notification:p,headerNode:t,scrollNode:s,scrollStore:l,responsiveStore:r})]})},us=e=>{const t=a.useStore(e.status),s=a.useStore(e.sdkStore.slStreamId),r=a.useStore(e.userId()),o=a.useStore(e.getActiveFeature()),l=t==="ready"&&!!s.data;return m.useEffect(()=>{const d=e.getFeature(v.SdkOverlayType.GAMES);d&&o!==v.SdkOverlayType.GAMES&&(d.closeQuestion(),d.closeUser()),d==null||d.openedQuestionId.subscribe(c=>{c&&o!==v.SdkOverlayType.GAMES&&e.openFeature(v.SdkOverlayType.GAMES)})},[o,e]),{sdkReady:l,activeFeature:o,isLogged:!!r}},ps=({sdk:e,className:t,scrollStore:s,appNode:r,scrollNode:o,responsiveStore:l})=>{const[,d]=S.p(e);return n.jsx(ct,{className:t,scrollNode:o,appNode:r,scrollStore:s,feature:d,responsiveStore:l,sdk:e})},ms=({sdk:e,muted:t,className:s,appNode:r,responsiveStore:o})=>{const l=a.useStore(e.featuresList.getStore());return l?Array.from(l,d=>{const c=e.getFeature(d);return c?n.jsx(ut,{className:s,muted:t,appNode:r,feature:c,responsiveStore:o,sdk:e},d):null}):null},fs=({sdk:e,muted:t,topNavigation:s})=>{const[r,o]=m.useState(!0),l=m.useRef(null),d=a.useStore(e.uiState),c=m.useRef(null),[i]=he(l),[u,f]=ge(l,i),{sdkReady:p,activeFeature:h,isLogged:g}=us(e),x=!!p;$.b(l,{enabled:x,event:"click",listener:$.A});const b=m.useMemo(()=>({sdk:e,topNavigation:s}),[e,s]);return m.useEffect(()=>{Promise.resolve().then(()=>require("./gamification-feature.js"))},[]),n.jsx(R.e.Provider,{value:b,children:n.jsxs(k.p,{ref:y=>{l.current=y,o(!!y)},className:s?"":"c10llmat",children:[x&&s&&d.app&&n.jsx(Dt,{className:a.cx_default(L.m,"sl-hide-on-modal"),sdk:e,ref:c}),x&&!s&&!!h&&d.app&&n.jsx(Ot,{className:a.cx_default(L.m,"sl-hide-on-modal"),sdk:e,ref:c}),n.jsxs(k.c,{className:"sl-hide-on-modal",ref:u,"data-nav":(!!h&&x).toString(),children:[x&&d.app&&n.jsx(cs,{sdk:e,scrollNode:u,headerNode:c,appNode:l,scrollStore:f,responsiveStore:i,hasActiveFeature:!!h}),x&&d.app&&n.jsx(ps,{scrollStore:f,responsiveStore:i,scrollNode:u,appNode:l,className:L.m,sdk:e}),x&&r&&n.jsx(ms,{muted:t,responsiveStore:i,appNode:l,className:L.m,sdk:e})]}),x&&!g&&r&&d.app&&n.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",width:"100%",height:"100%"},children:"You are not logged in."})]})})},hs=({event:e,topNavigation:t,theme:s,muted:r,withSidebarNotification:o=!0})=>{const{sdk:l,status:d}=m.useContext(_.c),c=_.F(),i=_.z(),{event:u}=m.useContext(_.c);if(d===_.Y.UNSET)throw new Error("Wrap app in `StreamLayerProvider`");return d===_.Y.CONNECTED?n.jsx("div",{className:"StreamLayerSDK",children:"wait"}):l===null?n.jsx("div",{className:"StreamLayerSDK",children:"sdk not initialized"}):!c.app&&!c.appNotification&&!c.appSidebar||!c.app&&!c.appSidebar&&c.appNotification&&!o?null:n.jsx("div",{className:"StreamLayerSDK",children:n.jsx(ue.h,{customTheme:s??i.theme,themeMode:i.themeMode,children:n.jsx(fs,{sdk:l,muted:r,event:(u==null?void 0:u.current)||e,topNavigation:t})})})};exports.B=it;exports.b=hs;
1
+ "use strict";var de=Object.defineProperty;var ce=(e,t,s)=>t in e?de(e,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[t]=s;var I=(e,t,s)=>ce(e,typeof t!="symbol"?t+"":t,s);const m=require("react"),w=require("./hooks-WfHlJH12.js"),n=require("react/jsx-runtime"),g=require("./useStreamLayerApp2.js"),ue=require("./index8.js"),a=require("./sl-types.js"),k=require("./index11.js"),S=require("./index16.js"),q=require("lodash.throttle"),$=require("./analytics.js"),L=require("./theme.js"),_=require("./feature.js");require("nanostores");const R=require("./Question.js"),pe=require("./index10.js"),A=require("./index6.js"),me=require("react-infinite-scroller"),B=require("./index12.js");require("uuid");require("@nanostores/query");require("./storage.js");require("./index7.js");const fe=require("react-dom"),he=require("./index3.js");require("./notification.js");const P=Object.keys(a.A),V=()=>{const e=window.innerWidth;let t="sm";for(let s=P.length-1;s>0;s--){const r=P[s];if(!(e<a.A[r])&&e>=a.A[r]){t=r;break}}return{name:t,size:a.A[t]}},Q=e=>{var t;return(((t=e.current)==null?void 0:t.getBoundingClientRect().y)||0)<-68},O=()=>window.matchMedia("(orientation: landscape)").matches,ve=e=>{const[t]=m.useState(()=>$.f({screen:V(),sdkInView:Q(e),sdkInDesktopView:O()}));return m.useEffect(()=>{const s=q(()=>{t.setKey("sdkInView",Q(e))},200),r=q(()=>{const o=V();t.setKey("screen",o),t.setKey("sdkInDesktopView",O())},200);return window.addEventListener("scroll",s),window.addEventListener("resize",r),()=>{window.removeEventListener("scroll",s),window.removeEventListener("resize",r)}},[t,e]),[t]},U=(e,t,s)=>{const r=t>=a.A.lg&&t<a.A.xl?75:52;e.current&&window.scrollTo({top:e.current.offsetTop-r,...s})},ge=15,xe=(e,t)=>{const s=m.useRef(null),r=m.useRef(0),[o]=m.useState($.f({scrollPosition:0,tabsShown:!0,scrollDirection:"forward"})),l=a.useStore(t);return m.useEffect(()=>{const d=O()?s.current:window;if(!d)return()=>{};const c=q(i=>{var u;const f=i.target;if(!f)return;let p=0;O()?p=f.scrollTop:p=((u=e.current)==null?void 0:u.getBoundingClientRect().y)||0;const h=r.current-p;if(ge>Math.abs(h))return;const v=r.current<p?"forward":"backward";r.current=p,o.set({scrollPosition:Math.round(p),scrollDirection:v,tabsShown:o.get().tabsShown})},200);return d.addEventListener("scroll",c),()=>{d.removeEventListener("scroll",c)}},[o,e,l.screen]),[s,o]},M=a.styled_default("div")({name:"LoadingContainer",class:"lclc0ej",propsAsIs:!1}),ye=({feature:e,sdk:t,children:s,className:r,noWait:o})=>{const l=a.useStore(e.status),d=a.useStore(t.sdkStore.slStreamId);if(!o){if(d!=null&&d.loading&&!d.data)return n.jsx(M,{className:r,children:"Event is loading..."});if(!(d!=null&&d.data))return n.jsx(M,{className:r,children:"Event is forbidden..."});if(l!==_.FeatureStatus.Ready)return n.jsx(M,{className:r,children:"Wait feature..."})}return s},Ie=a.styled_default("div")({name:"Container",class:"c115qtkr",propsAsIs:!1}),Se=a.styled_default("div")({name:"STabs",class:"sxnslc8",propsAsIs:!1}),ke=a.styled_default("button")({name:"Button",class:"b1umzux0",propsAsIs:!1}),be=a.styled_default("span")({name:"Title",class:"tspsaas",propsAsIs:!1});var E=(e=>(e.HOME="home",e.LEADERBOARD="leaderboard",e))(E||{});const K=({title:e,active:t,onClick:s})=>n.jsx(ke,{"data-a":"intr",onClick:s,"data-selected":t,children:n.jsx(be,{"data-a":"intr",children:e})}),je=({activePage:e="home",toggleActivePage:t})=>n.jsx(Ie,{children:n.jsxs(Se,{"data-position":e==="home"?"left":"right",children:[n.jsx(K,{title:"Home",active:e==="home",onClick:()=>t("home")}),n.jsx(K,{title:"Friends",active:e==="leaderboard",onClick:()=>t("leaderboard")})]})}),Ne=a.styled_default("div")({name:"Container",class:"c1ux29ft",propsAsIs:!1}),Ae=()=>A.B1,we=a.styled_default(Ae())({name:"FriendsIcon",class:"f10ncfg2",propsAsIs:!0}),_e=a.styled_default("div")({name:"Content",class:"c1yc07bd",propsAsIs:!1}),Ce=a.styled_default("div")({name:"Title",class:"tj6cq7w",propsAsIs:!1}),Ee=a.styled_default("div")({name:"Description",class:"d1ag78xo",propsAsIs:!1}),$e=()=>A.B1,Re=a.styled_default($e())({name:"ArrowInviteIcon",class:"awohrz6",propsAsIs:!0}),Te=({title:e,description:t,onClick:s,className:r})=>{const[o]=$.f$1({type:"invitation",action:"sent",payload:{from:g.InvitationFrom.TITLE_CARD}});return n.jsxs(Ne,{"data-a":"intr",onClick:o(s),className:r,children:[n.jsx(we,{name:"icon-friends"}),n.jsxs(_e,{children:[n.jsx(Ce,{children:e}),n.jsx(Ee,{children:t})]}),n.jsx(Re,{name:"icon-copy"})]})};function Le(e){var t=e.lastRenderedStartIndex,s=e.lastRenderedStopIndex,r=e.startIndex,o=e.stopIndex;return!(r>s||o<t)}function De(e){for(var t=e.isItemLoaded,s=e.itemCount,r=e.minimumBatchSize,o=e.startIndex,l=e.stopIndex,d=[],c=null,i=null,u=o;u<=l;u++){var f=t(u);f?i!==null&&(d.push(c,i),c=i=null):(i=u,c===null&&(c=u))}if(i!==null){for(var p=Math.min(Math.max(i,c+r-1),s-1),h=i+1;h<=p&&!t(h);h++)i=h;d.push(c,i)}if(d.length)for(;d[1]-d[0]+1<r&&d[0]>0;){var v=d[0]-1;if(!t(v))d[0]=v;else break}return d}var Oe=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},Me=function(){function e(t,s){for(var r=0;r<s.length;r++){var o=s[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}return function(t,s,r){return s&&e(t.prototype,s),r&&e(t,r),t}}(),qe=function(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)},W=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t&&(typeof t=="object"||typeof t=="function")?t:e};(function(e){qe(t,e);function t(){var s,r,o,l;Oe(this,t);for(var d=arguments.length,c=Array(d),i=0;i<d;i++)c[i]=arguments[i];return l=(r=(o=W(this,(s=t.__proto__||Object.getPrototypeOf(t)).call.apply(s,[this].concat(c))),o),o._lastRenderedStartIndex=-1,o._lastRenderedStopIndex=-1,o._memoizedUnloadedRanges=[],o._onItemsRendered=function(u){var f=u.visibleStartIndex,p=u.visibleStopIndex;o._lastRenderedStartIndex=f,o._lastRenderedStopIndex=p,o._ensureRowsLoaded(f,p)},o._setRef=function(u){o._listRef=u},r),W(o,l)}return Me(t,[{key:"resetloadMoreItemsCache",value:function(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;this._memoizedUnloadedRanges=[],r&&this._ensureRowsLoaded(this._lastRenderedStartIndex,this._lastRenderedStopIndex)}},{key:"componentDidMount",value:function(){}},{key:"render",value:function(){var r=this.props.children;return r({onItemsRendered:this._onItemsRendered,ref:this._setRef})}},{key:"_ensureRowsLoaded",value:function(r,o){var l=this.props,d=l.isItemLoaded,c=l.itemCount,i=l.minimumBatchSize,u=i===void 0?10:i,f=l.threshold,p=f===void 0?15:f,h=De({isItemLoaded:d,itemCount:c,minimumBatchSize:u,startIndex:Math.max(0,r-p),stopIndex:Math.min(c-1,o+p)});(this._memoizedUnloadedRanges.length!==h.length||this._memoizedUnloadedRanges.some(function(v,y){return h[y]!==v}))&&(this._memoizedUnloadedRanges=h,this._loadUnloadedRanges(h))}},{key:"_loadUnloadedRanges",value:function(r){for(var o=this,l=this.props.loadMoreItems||this.props.loadMoreRows,d=function(u){var f=r[u],p=r[u+1],h=l(f,p);h!=null&&h.then(function(){if(Le({lastRenderedStartIndex:o._lastRenderedStartIndex,lastRenderedStopIndex:o._lastRenderedStopIndex,startIndex:f,stopIndex:p})){if(o._listRef==null)return;typeof o._listRef.resetAfterIndex=="function"?o._listRef.resetAfterIndex(f,!0):(typeof o._listRef._getItemStyleCache=="function"&&o._listRef._getItemStyleCache(-1),o._listRef.forceUpdate())}})},c=0;c<r.length;c+=2)d(c)}}]),t})(m.PureComponent);const Be=a.styled_default("div")({name:"Container",class:"culdu4a",propsAsIs:!1}),Fe=a.styled_default("div")({name:"Position",class:"pwf8e69",propsAsIs:!1}),Ue=a.styled_default("img")({name:"Avatar",class:"atf4yh4",propsAsIs:!1}),ze=a.styled_default("div")({name:"AvatarPlaceholder",class:"a1dg29ja",propsAsIs:!1}),Pe=a.styled_default("div")({name:"Content",class:"c10a68rc",propsAsIs:!1}),Ve=a.styled_default("div")({name:"NameContainer",class:"nc4kck5",propsAsIs:!1}),Qe=a.styled_default("span")({name:"Name",class:"njsrqgr",propsAsIs:!1}),Ke=()=>A.B1,We=a.styled_default(Ke())({name:"CurrentUserBadge",class:"c17uc4zr",propsAsIs:!0}),Ge=({friendsRank:e,avatar:t,name:s,userId:r,points:o,isCurrentUser:l,style:d})=>n.jsxs(Be,{"data-name":r,style:d,children:[n.jsx(Fe,{children:e||0}),n.jsxs(Pe,{children:[t?n.jsx(Ue,{alt:"leaderboard-item-avatar",src:t}):n.jsx(ze,{children:B.I(s||"")}),n.jsxs(Ve,{children:[n.jsx(Qe,{children:s||""}),l&&n.jsx(We,{name:"icon-star"})]})]}),n.jsx("div",{children:B.s(o)})]}),He=a.styled_default("div")({name:"Container",class:"c16btbfp",propsAsIs:!1}),Je=({items:e,currentUserId:t,openItemDetail:s,fetchMore:r,scrollNode:o,hasMore:l})=>{const d=m.useCallback(c=>{const i=c.target.getAttribute("data-name");i&&s(i)},[s]);return n.jsx(me,{loadMore:r,initialLoad:!1,hasMore:l,useWindow:!1,getScrollParent:()=>o.current,children:n.jsx(He,{"data-a":"intr",onClick:d,children:e.map(c=>n.jsx(Ge,{...c,isCurrentUser:!!t&&t===c.userId},c.userId))})})},Ye=a.styled_default("div")({name:"InviteFriendsContainer",class:"i1c9dygq",propsAsIs:!1}),Ze=({deepLink:e})=>n.jsx(Ye,{children:n.jsx(S.M,{inviteLink:e,inviteCardTitle:"It’s More Fun With Friends",inviteCardSubtext:"Invite and compete against your friends for the top spot on the leaderboard."})}),Xe=a.styled_default("div")({name:"InviteLinkContainer",class:"i1odbhm4",propsAsIs:!1}),et=({gamification:e,scrollNode:t,scrollStore:s,leaderboardList:r})=>{const o=m.useRef(null),{data:l,hasMore:d,loading:c,key:i}=a.useStore(r.$store),{data:u}=a.useStore(e.deepLink.$store),[f,p]=S.T$1(o);return!l.length&&!c?n.jsx(Ze,{deepLink:u}):n.jsxs(n.Fragment,{children:[n.jsx(Je,{items:l,scrollNode:t,scrollStore:s,fetchMore:r.fetchMore,hasMore:d,openItemDetail:e.openUser,currentUserId:e.currentUserId.get()},i),u&&n.jsx(Xe,{ref:o,children:n.jsx(Te,{"data-a":"intr",onClick:()=>f(u),title:"Invite Friends",description:"Challenge them now!"})}),p]})},tt=({gamification:e,scrollNode:t,scrollStore:s})=>e.leaderboardList?n.jsx(et,{leaderboardList:e.leaderboardList,gamification:e,scrollNode:t,scrollStore:s}):null,st=({store:e,openQuestion:t})=>{const{sdk:s}=R.p(),r=a.useStore(e);return n.jsx(S.k,{openQuestion:t,questions:r.data,controlVideo:s==null?void 0:s.controlVideoPlayer})},nt=({userSummary:e})=>{var t;const[s,r]=m.useState(void 0);return m.useEffect(()=>{const o=e.$store.subscribe(l=>{l&&r(l)});return()=>{o()}},[e]),n.jsx(S.z,{loading:!(s!=null&&s.summary),...s==null?void 0:s.summary,successRate:(t=s==null?void 0:s.percentage)==null?void 0:t.correct})},ot=({gamification:e,className:t,scrollStore:s,scrollNode:r,appNode:o,style:l,responsiveStore:d})=>{const{tabsShown:c}=a.useStore(s,{keys:["tabsShown"]}),i=a.useStore(e.friendsTabEnabled),[u,f]=m.useState(E.HOME),[,p]=a.useTransition(),{sdkInDesktopView:h,screen:v}=a.useStore(d,{keys:["sdkInDesktopView"]}),y=x=>{p(()=>{var T;f(x),h===!1&&(((T=o.current)==null?void 0:T.getBoundingClientRect().y)||0)<0&&U(o,v.size,{behavior:"instant"})})};m.useEffect(()=>s.subscribe(x=>{if(x.scrollPosition===0){s.setKey("tabsShown",!0);return}d.get().sdkInDesktopView?s.setKey("tabsShown",x.scrollDirection==="backward"):s.setKey("tabsShown",x.scrollDirection==="forward")}),[s,d]),m.useEffect(()=>{i||f(E.HOME)},[i]);let b="0px";return h?b=c?"0px":"calc(0px - var(--header-height))":b=c?"var(--header-height)":"0px",n.jsxs(k.l,{className:a.cx_default(t,"SL-Tabs","sl-hide-on-modal"),style:l,children:[i&&n.jsx(k.S$1,{style:{top:b},children:n.jsx(je,{activePage:u,toggleActivePage:y})}),u===E.HOME&&n.jsxs(n.Fragment,{children:[n.jsx(k.m,{children:n.jsx(k.d,{children:n.jsx(nt,{userSummary:e.userSummary})})}),n.jsx(k.n,{style:{flex:1},children:n.jsx(st,{openQuestion:e.openQuestion,store:e.feedList.getStore()})})]}),u===E.LEADERBOARD&&n.jsx(k.C,{children:n.jsx(tt,{scrollStore:s,scrollNode:r,gamification:e})})]})},rt=()=>k.f,G=a.styled_default(rt())({name:"OpenedContainer",class:"ouvguos",propsAsIs:!0}),H="t1eu4lbg",at=a.styled_default("div")({name:"UserContainer",class:"uuv2xqo",propsAsIs:!1}),it=({correct:e,incorrect:t})=>{const s=e+t;return s===0?0:Math.round(e/s*100)},lt=({gamification:e,scrollStore:t,className:s,appNode:r,scrollNode:o,responsiveStore:l})=>n.jsx(ot,{appNode:r,scrollStore:t,scrollNode:o,className:s,gamification:e,responsiveStore:l}),dt=({gamification:e,muted:t,sdk:s,className:r,appNode:o,responsiveStore:l})=>{const{topNavigation:d}=R.p(),c=a.useStore(e.openedQuestionId),i=a.useStore(e.openedQuestion.$store),u=a.useStore(e.openedUser||S.createSingleStore(void 0)),{sdkInDesktopView:f}=a.useStore(l,{keys:["sdkInDesktopView"]}),{hiding:p,onAnimationEnd:h}=k.S();if(!c&&!u)return null;const v=i?n.jsx(G,{className:a.cx_default(r,!d&&H),hiding:p,onAnimationEnd:h,children:n.jsx(R.ht,{muted:t,sdk:s,gamification:e})}):u?n.jsx(G,{className:a.cx_default(r,!d&&H),hiding:p,onAnimationEnd:h,children:n.jsxs(at,{children:[n.jsx(pe.y,{label:"Friend's Rank",close:e.closeUser}),n.jsx(k.a,{children:n.jsx(S.z,{...u,successRate:it(u)})})]})}):null;return n.jsx(S.T,{container:o,useContainer:!f,children:v})},ct=m.lazy(()=>Promise.resolve().then(()=>require("./gamification-feature.js"))),ut=({sdk:e,feature:t,className:s,scrollStore:r,appNode:o,scrollNode:l,responsiveStore:d})=>{const c=m.useMemo(()=>t&&t.featureConfig.get().type===g.SdkOverlayType.GAMES?n.jsx(ye,{className:s,sdk:e,feature:t,children:n.jsx(ct,{appNode:o,scrollStore:r,scrollNode:l,className:s,responsiveStore:d,gamification:t})}):null,[e,t,s,d,r,l,o]);return n.jsx(m.Suspense,{fallback:n.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",width:"100%",height:"100%"},children:"page loading..."}),children:c})},pt=({feature:e,sdk:t,muted:s,className:r,appNode:o,responsiveStore:l})=>e&&e.featureConfig.get().type===g.SdkOverlayType.GAMES?n.jsx(dt,{className:r,appNode:o,muted:s,sdk:t,responsiveStore:l,gamification:e}):null;window.dispatchEvent(new CustomEvent("grpc_devtools_loaded"));function mt(e){return e instanceof DOMException&&(e.code===22||e.code===1014||e.name==="QuotaExceededError"||e.name==="NS_ERROR_DOM_QUOTA_REACHED")}class ft{constructor(t="main",s=window.localStorage){I(this,"delimiter",":");I(this,"prefix");I(this,"storage");I(this,"clear",()=>{for(const t in window.localStorage)t.startsWith(this.prefix)&&this.storage.removeItem(t)});I(this,"generateKey",t=>`${this.prefix}${this.delimiter}${t.join(this.delimiter)}`);I(this,"write",(...t)=>{const s=t.pop()||"",r=this.generateKey(t);try{this.storage.setItem(r,s)}catch(o){mt(o)&&this.storage===window.sessionStorage&&(window.sessionStorage.removeItem("slstreamlogs"),this.storage.setItem(r,s))}});I(this,"read",(...t)=>{const s=this.storage.getItem(this.generateKey(t));return s===null?void 0:s});I(this,"remove",(...t)=>{this.storage.removeItem(this.generateKey(t))});this.prefix=`sl-sdk${this.delimiter}${t}`,this.storage=s}}var J;(function(e){e.Init="init",e.Ready="ready",e.Connecting="connecting",e.Connected="connected",e.Disconnected="disconnected",e.Failed="failed",e.Reconnect="reconnect",e.Reconnecting="reconnecting"})(J||(J={}));_.createLogger("grpc:stream");g.Code.Unknown,g.Code.Internal,g.Code.DeadlineExceeded,g.Code.ResourceExhausted,g.Code.FailedPrecondition,g.Code.Unavailable,g.Code.DataLoss;_.createLogger("grpc:retry");g.createContextKey(10,{description:"Number of attempts to retry"}),g.createContextKey(3e4,{description:"Max delay between retries in milliseconds"});var j;(function(e){e.SCHEMA="schema",e.EXTERNAL_TOKEN="eToken",e.TOKEN="token"})(j||(j={}));class ht extends ft{constructor(){super("user");I(this,"setSchema",s=>{this.write(j.SCHEMA,s)});I(this,"getSchema",()=>this.read(j.SCHEMA));I(this,"setToken",s=>{this.write(j.TOKEN,s)});I(this,"getToken",()=>this.read(j.TOKEN));I(this,"setExternalToken",s=>{this.write(j.EXTERNAL_TOKEN,s)});I(this,"getExternalToken",()=>this.read(j.EXTERNAL_TOKEN));I(this,"removeToken",()=>{this.remove(j.TOKEN)})}}var Y;(function(e){e.DISABLED="disabled",e.INITIALIZATION="initialization",e.READY="ready",e.FAILED="failed",e.SUSPENDED="suspended"})(Y||(Y={}));var Z;(function(e){e.SHOWED="showed",e.EVENT="ev"})(Z||(Z={}));var X;(function(e){e.ONBOARDING="onboarding",e.ONBOARDING_IO="onboarding_io",e.QUESTION_RECEIVED="q-received",e.QUESTION_OPENED="q-opened"})(X||(X={}));var ee;(function(e){e.ALLOWED="allowed",e.DISALLOWED="disallowed"})(ee||(ee={}));var te;(function(e){e.UNKNOWN="unknown",e.ALREADY_VOTED="already_voted"})(te||(te={}));_.createLogger("deep_link");_.createLogger("bypass");new ht;_.createLogger("video_player");var se;(function(e){e.Unset="unset",e.Required="required",e.Optional="optional",e.Completed="completed",e.Disabled="disabled",e.Unavailable="unavailable"})(se||(se={}));g.QuestionType.POLL,g.QuestionType.PREDICTION,g.QuestionType.TRIVIA;const vt={[g.SdkOverlayType.GAMES]:!0},gt=a.styled_default("div")({name:"Buttons",class:"b5o8qbl",propsAsIs:!1}),xt=({children:e,className:t})=>n.jsx(gt,{className:t,children:e}),ae=a.styled_default("div")({name:"Navigation",class:"n6tbwuy",propsAsIs:!1}),yt=()=>xt,ne=a.styled_default(yt())({name:"NavigationItems",class:"n1up4z7v",propsAsIs:!0}),It=a.styled_default("button")({name:"SButton",class:"sxxa0c",propsAsIs:!1}),St=a.styled_default("span")({name:"ButtonIcon",class:"b193dcyu",propsAsIs:!1}),kt=a.styled_default("span")({name:"ButtonLabel",class:"b40tuix",propsAsIs:!1}),bt="s14xk0af",jt="ha3mg7c",Nt="h103yr45",D=({disabled:e,active:t,onClick:s,label:r,icon:o,id:l})=>n.jsx(It,{onClick:s,"data-a":"intr",disabled:e,className:a.cx_default(t&&bt,!t&&(l==="channels"||l==="featuredGroups")&&jt,!t&&l==="leaderboard"&&Nt),children:n.jsxs(n.Fragment,{children:[o&&n.jsx(St,{children:o}),n.jsx(kt,{children:r})]})}),At=()=>A.B1,wt=a.styled_default(At())({name:"ButtonIcon",class:"b11wpe79",propsAsIs:!0}),_t=a.styled_default("div")({name:"Container",class:"calnblm",propsAsIs:!1}),Ct=a.styled_default("div")({name:"Title",class:"t1438p52",propsAsIs:!1}),Et=a.styled_default("div")({name:"CloseIconWrap",class:"c17srj38",propsAsIs:!1}),$t=()=>A.B1,Rt=a.styled_default($t())({name:"CloseIcon",class:"clqia8k",propsAsIs:!0}),Tt=()=>A.B1,Lt=a.styled_default(Tt())({name:"DashboardIcon",class:"df5w958",propsAsIs:!0}),Dt="h12x6aiv",Ot=m.forwardRef(({sdk:e,className:t},s)=>{const r=()=>{e.closeFeature()};return n.jsxs(ae,{className:a.cx_default(t,Dt),children:[n.jsxs(_t,{children:[n.jsxs(Ct,{children:[n.jsx(Lt,{name:"dashboard"}),"Dashboard"]}),n.jsx(Et,{"data-a":"intr",onClick:r,children:n.jsx(Rt,{name:"icon-cross"})})]}),n.jsx("div",{ref:s})]})}),Mt=m.forwardRef(({sdk:e,className:t},s)=>{const r=a.useStore(e.sdkStore.organizationSettings),o=a.useStore(e.sdkStore.streamSettings),l=a.useStore(e.getActiveFeature()),d=m.useMemo(()=>{const i=(o==null?void 0:o.data)||(r==null?void 0:r.data);return i!=null&&i.overlays?i.overlays:[]},[r,o]),c=m.useMemo(()=>[...d.filter(({enableSdkButton:i,type:u})=>u===g.SdkOverlayType.GAMES||i).map(i=>({id:i.type,onClick:()=>e.openFeature(i.type),disabled:!(i.type in vt),label:i.name,icon:n.jsx("img",{src:i.icon,alt:""}),position:i.position*10}))].sort((i,u)=>i.position-u.position),[d,e]);return n.jsxs(ae,{className:t,children:[c.length!==0&&n.jsx(ne,{children:[n.jsx(D,{id:"Channels",onClick:()=>e.closeFeature(),label:"Channels",active:l===0},"Channels"),...c.map(i=>i.id===g.SdkOverlayType.GAMES?n.jsx(D,{...i,active:i.id===l,label:"StreamLayer +",id:"featuredGroups",icon:n.jsx(wt,{name:"icon-btn-feature-groups","data-selected":i.id===l})},i.id):n.jsx(D,{...i,icon:void 0,active:i.id===l},i.id))]}),!c.length&&n.jsx(ne,{children:[n.jsx(D,{id:"empty",label:"No Features...",active:!1,disabled:!0},"empty")]}),n.jsx("div",{ref:s})]})}),qt=a.styled_default("div")({name:"Container",class:"c1qjj4d4",propsAsIs:!1}),Bt=a.styled_default("div")({name:"CloseIconWrap",class:"c1lg6b8a",propsAsIs:!1}),Ft=()=>A.B1,Ut=a.styled_default(Ft())({name:"CloseIcon",class:"c159el66",propsAsIs:!0}),zt=a.styled_default("div")({name:"Title",class:"t16xmufv",propsAsIs:!1}),Pt=a.styled_default("img")({name:"SponsorLogo",class:"s83lc21",propsAsIs:!1}),Vt=a.styled_default("div")({name:"PresentsTitle",class:"p1p7igia",propsAsIs:!1}),Qt=a.styled_default("div")({name:"Subtitle",class:"s1eftsbu",propsAsIs:!1}),Kt=a.styled_default("div")({name:"Description",class:"d8uezec",propsAsIs:!1}),Wt=a.styled_default("button")({name:"ActionButton",class:"a1h1bk90",propsAsIs:!1}),oe=({close:e,action:t,onboarding:s})=>{var r,o,l,d,c,i,u,f;return n.jsxs(qt,{children:[n.jsx(Bt,{"data-a":"intr",onClick:e,children:n.jsx(Ut,{name:"icon-cross"})}),((o=(r=s==null?void 0:s.titleCard)==null?void 0:r.media)==null?void 0:o.sponsorLogo)&&n.jsxs(zt,{children:[n.jsx(Pt,{alt:"sponsor-logo",src:(d=(l=s==null?void 0:s.titleCard)==null?void 0:l.media)==null?void 0:d.sponsorLogo}),n.jsx(Vt,{children:"PRESENTS"})]}),((c=s==null?void 0:s.titleCard)==null?void 0:c.title)&&n.jsx(Qt,{children:(i=s==null?void 0:s.titleCard)==null?void 0:i.title}),((u=s==null?void 0:s.titleCard)==null?void 0:u.subtitle)&&n.jsx(Kt,{children:(f=s==null?void 0:s.titleCard)==null?void 0:f.subtitle}),n.jsx(Wt,{"data-a":"intr",onClick:t,children:"Play Now"})]})},F=[{graphicSrc:"https://cdn.streamlayer.io/assets/sdk-web/onboarding-steps/dark/step_1.png",tagline:"",headline:n.jsxs(n.Fragment,{children:["Welcome to ",n.jsx("br",{})," Live Challenge"]})},{graphicSrc:"https://cdn.streamlayer.io/assets/sdk-web/onboarding-steps/dark/step_2.png",headline:"Live insights, polls, trivia and predictions."},{graphicSrc:"https://cdn.streamlayer.io/assets/sdk-web/onboarding-steps/dark/step_3.png",headline:"Win points and play against friends."}],Gt=a.styled_default("div")({name:"OnboardingContainer",class:"o1xni1kr",propsAsIs:!1}),Ht=()=>k.f,Jt=a.styled_default(Ht())({name:"OnboardingNotificationContainer",class:"o1vnouv7",propsAsIs:!0}),re=a.styled_default("div")({name:"InnerContainer",class:"i59uefw",propsAsIs:!1}),Yt=a.styled_default("div")({name:"OnboardingOverlap",class:"ovnr8ov",propsAsIs:!1}),Zt=({deepLink:e,onboardingOpts:t,notification:s,gamification:r,loading:o,sdk:l,throttled:d})=>{var c,i,u,f,p,h,v;const y=a.useStore(r.friends?r.friends.getStore():S.createSingleStore({data:[]})),[b,x]=m.useState(void 0),T=m.useMemo(()=>{var N,C;const z=l.getInviter();return z?(C=(N=y.data)==null?void 0:N.find(({slId:le})=>le===z))==null?void 0:C.name:""},[y.data,l]);return m.useEffect(()=>{const N=e.$store.subscribe(C=>{C&&x(C.data)});return()=>{N()}},[e.$store]),n.jsxs(Gt,{children:[n.jsx(S.tn,{loading:o,rules:[{label:"Answer as many questions as you like.",icon:"icon-btn-feature-groups"},{label:"Win points for each correct trivia or prediction answer.",icon:"icon-thumb-up"},{label:"Top the leader board and best your friends.",icon:"icon-trophy"}],rulesBtnLabel:(c=t.rules)==null?void 0:c.buttonLabel,rulesTitle:(i=t.rules)==null?void 0:i.heading,termsTitle:"Terms and Conditions",termsText:(u=t.rules)==null?void 0:u.terms,steps:F,primaryColor:(f=t.inviteCard)==null?void 0:f.iconColor,inviteLink:b,inviteCardTitle:(p=t.inviteCard)==null?void 0:p.heading,inviteCardSubtext:(h=t.inviteCard)==null?void 0:h.subtext,inviteCardBtnLabel:(v=t.inviteCard)==null?void 0:v.buttonLabel,onClose:()=>{var N;(N=s.close)==null||N.call(s)},gamification:r,sdk:l,inviterName:T}),d&&n.jsx(Yt,{})]})},Xt=({sdk:e,notification:t,saveHeight:s,style:r,appNode:o,sdkInDesktopView:l,responsiveStore:d})=>{const c=m.useRef(null),i=t.data.onboarding,[u,f]=m.useState(i==null?void 0:i.instantOpen),p=e.getFeature(g.SdkOverlayType.GAMES),h=m.useMemo(()=>F==null?void 0:F.map(({graphicSrc:x})=>x),[]),{screen:v}=a.useStore(d,{keys:["screen"]});m.useLayoutEffect(()=>{var x;s(((x=c.current)==null?void 0:x.getBoundingClientRect().height)||0)},[s]);const{loading:y,throttled:b}=S.I(h);return u&&p&&i&&o.current?n.jsx(S.T,{container:o,useContainer:!l,children:n.jsx(Zt,{throttled:b,notification:t,setOpened:f,gamification:p,onboardingOpts:i,deepLink:p.deepLink,loading:y,renderToNode:o,sdk:e})}):n.jsxs(n.Fragment,{children:[n.jsx(re,{ref:c,style:{position:"absolute",visibility:"hidden"},children:n.jsx(oe,{close:()=>{},action:()=>{},onboarding:i})}),n.jsx(Jt,{style:r,hiding:t.hiding,children:n.jsx(re,{children:n.jsx(oe,{close:t.close,action:()=>{var x;f(!0),(((x=o.current)==null?void 0:x.getBoundingClientRect().y)||0)<0&&U(o,v.size,{behavior:"smooth"})},onboarding:i})})})]})},es=()=>k.f,ts=a.styled_default(es())({name:"Container",class:"c8ol1ve",propsAsIs:!0}),ie=a.styled_default("div")({name:"InnerContainer",class:"iqfywam",propsAsIs:!1}),ss=()=>ie,ns=a.styled_default(ss())({name:"HiddenContainer",class:"hokmtod",propsAsIs:!0}),os=a.styled_default("div")({name:"NotificationRefreshing",class:"n192d1q8",propsAsIs:!1}),rs=()=>S.f,as=a.styled_default(rs())({name:"Pill",class:"p1lha68t",propsAsIs:!0}),is=e=>{const[t,s]=m.useState(0),r=m.useRef(null),o=m.useMemo(()=>new ResizeObserver(c=>{window.requestAnimationFrame(()=>{var i;if(Array.isArray(c)){for(const u of c)if(u.contentBoxSize){const f=(i=r.current)==null?void 0:i.getBoundingClientRect();f&&s(f.height)}}})}),[]),l=m.useCallback(c=>{r.current=c},[]),d=m.useCallback(c=>{s(c)},[]);return m.useEffect(()=>{const c=r.current;return c?(o.observe(c),()=>{o.unobserve(c)}):()=>{}},[e]),m.useEffect(()=>()=>{o.disconnect()}),[l,t,d]},ls=({sdk:e,notification:t,appNode:s,responsiveStore:r,hasActiveFeature:o})=>{var l,d;const{sdkInDesktopView:c}=a.useStore(r,{keys:["sdkInDesktopView"]}),{sdk:i}=R.p(),[u,f,p]=is(t.id);let h=f;return o||(h="auto"),t.type===a.NotificationType.QUESTION?n.jsxs(n.Fragment,{children:[n.jsx(ns,{ref:u,children:n.jsx(S.w,{...t})}),n.jsxs(ts,{style:{height:t.hiding?0:h},hiding:t.hiding,children:[n.jsx(ie,{style:{height:"100%"},children:n.jsx(S.w,{...t,controlVideo:i==null?void 0:i.controlVideoPlayer})}),n.jsx(os,{},t.id)]})]}):t.type===a.NotificationType.QUESTION_RESOLVED&&(d=(l=t.data)==null?void 0:l.question)!=null&&d.predictionResult?n.jsx(S.D,{style:{height:t.hiding?0:f},saveHeight:p,close:t.close,hiding:t.hiding,...t.data.question}):t.type===a.NotificationType.ONBOARDING?n.jsx(Xt,{style:{height:t.hiding?0:h},saveHeight:p,sdk:e,notification:t,sdkInDesktopView:c,appNode:s,responsiveStore:r}):null},ds="p7vfi6t",cs=({pill:e,setPill:t,appNode:s,headerNode:r,scrollNode:o,responsiveStore:l,scrollStore:d})=>{var c,i;const{screen:u}=a.useStore(l,{keys:["screen"]}),{tabsShown:f,scrollPosition:p}=a.useStore(d,{keys:["tabsShown","scrollPosition"]});m.useEffect(()=>{l.get().sdkInDesktopView?p<50&&t(null):p>-50&&t(null)},[p,l,t]);const h=l.get().sdkInDesktopView?s:r;return!e||!h.current?null:fe.createPortal(n.jsx(as,{title:e.type===a.NotificationType.QUESTION_RESOLVED?"Prediction result":`New ${((i=B.e[(c=e.data)==null?void 0:c.questionType])==null?void 0:i.label)||"notification"}`,"data-a":"intr",onClick:()=>{var v;l.get().sdkInDesktopView?(v=o.current)==null||v.scrollTo({top:0,behavior:"smooth"}):U(s,u.size,{behavior:"smooth"}),t(null)},className:a.cx_default(f&&ds,"sl-pill-button")}),h.current)},us=({sdk:e,headerNode:t,scrollNode:s,responsiveStore:r,appNode:o,scrollStore:l,hasActiveFeature:d})=>{const[c]=m.useState(e.getNotificationsStore()),i=a.useStore(c),[u,f]=m.useState(null),p=m.useMemo(()=>e.getActiveNotification(),[e,i]);return m.useEffect(()=>{p&&he.eventBus.emit("notification",{action:"rendered",payload:{questionId:p.data.questionId,questionType:p.data.questionType}})},[p]),m.useEffect(()=>{const{sdkInDesktopView:h,sdkInView:v}=r.get();p&&(h||v)&&(!h&&v&&f(p),h&&window.requestAnimationFrame(()=>{l.get().scrollPosition!==0&&f(p)}))},[p]),m.useEffect(()=>{p||f(null)},[p]),n.jsxs(n.Fragment,{children:[!u&&p&&n.jsx(ls,{appNode:o,sdk:e,hasActiveFeature:d,notification:p,responsiveStore:r}),u&&n.jsx(cs,{pill:u,setPill:f,appNode:o,notification:p,headerNode:t,scrollNode:s,scrollStore:l,responsiveStore:r})]})},ps=e=>{const t=a.useStore(e.status),s=a.useStore(e.sdkStore.slStreamId),r=a.useStore(e.userId()),o=a.useStore(e.getActiveFeature()),l=t==="ready"&&!!s.data;return m.useEffect(()=>{const d=e.getFeature(g.SdkOverlayType.GAMES);d&&o!==g.SdkOverlayType.GAMES&&(d.closeQuestion(),d.closeUser()),d==null||d.openedQuestionId.subscribe(c=>{c&&o!==g.SdkOverlayType.GAMES&&e.openFeature(g.SdkOverlayType.GAMES)})},[o,e]),{sdkReady:l,activeFeature:o,isLogged:!!r}},ms=({sdk:e,className:t,scrollStore:s,appNode:r,scrollNode:o,responsiveStore:l})=>{const[,d]=S.p(e);return n.jsx(ut,{className:t,scrollNode:o,appNode:r,scrollStore:s,feature:d,responsiveStore:l,sdk:e})},fs=({sdk:e,muted:t,className:s,appNode:r,responsiveStore:o})=>{const l=a.useStore(e.featuresList.getStore());return l?Array.from(l,d=>{const c=e.getFeature(d);return c?n.jsx(pt,{className:s,muted:t,appNode:r,feature:c,responsiveStore:o,sdk:e},d):null}):null},hs=({sdk:e,muted:t,topNavigation:s})=>{const[r,o]=m.useState(!0),l=m.useRef(null),d=a.useStore(e.uiState),c=m.useRef(null),[i]=ve(l),[u,f]=xe(l,i),{sdkReady:p,activeFeature:h,isLogged:v}=ps(e),y=!!p;$.b(l,{enabled:y,event:"click",listener:$.A});const b=m.useMemo(()=>({sdk:e,topNavigation:s}),[e,s]);return m.useEffect(()=>{Promise.resolve().then(()=>require("./gamification-feature.js"))},[]),n.jsx(R.e.Provider,{value:b,children:n.jsxs(k.p,{ref:x=>{l.current=x,o(!!x)},className:s?"":"c10llmat",children:[y&&s&&d.app&&n.jsx(Mt,{className:a.cx_default(L.m,"sl-hide-on-modal"),sdk:e,ref:c}),y&&!s&&!!h&&d.app&&n.jsx(Ot,{className:a.cx_default(L.m,"sl-hide-on-modal"),sdk:e,ref:c}),n.jsxs(k.c,{className:"sl-hide-on-modal",ref:u,"data-nav":(!!h&&y).toString(),children:[y&&d.app&&n.jsx(us,{sdk:e,scrollNode:u,headerNode:c,appNode:l,scrollStore:f,responsiveStore:i,hasActiveFeature:!!h}),y&&d.app&&n.jsx(ms,{scrollStore:f,responsiveStore:i,scrollNode:u,appNode:l,className:L.m,sdk:e}),y&&r&&n.jsx(fs,{muted:t,responsiveStore:i,appNode:l,className:L.m,sdk:e})]}),y&&!v&&r&&d.app&&n.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",width:"100%",height:"100%"},children:"You are not logged in."})]})})},vs=({event:e,topNavigation:t,theme:s,muted:r,withSidebarNotification:o=!0})=>{const{sdk:l,status:d}=m.useContext(w.i),c=w.F(),i=w.z(),{event:u}=m.useContext(w.i);if(d===w.Y.UNSET)throw new Error("Wrap app in `StreamLayerProvider`");return d===w.Y.CONNECTED?n.jsx("div",{className:"StreamLayerSDK",children:"wait"}):l===null?n.jsx("div",{className:"StreamLayerSDK",children:"sdk not initialized"}):!c.app&&!c.appNotification&&!c.appSidebar||!c.app&&!c.appSidebar&&c.appNotification&&!o?null:n.jsx("div",{className:"StreamLayerSDK",children:n.jsx(ue.h,{customTheme:s??i.theme,themeMode:i.themeMode,children:n.jsx(hs,{sdk:l,muted:r,event:(u==null?void 0:u.current)||e,topNavigation:t})})})};exports.B=lt;exports.b=vs;
package/lib/cjs/index3.js CHANGED
@@ -1 +1 @@
1
- "use strict";var d=Object.defineProperty;var l=(t,e,s)=>e in t?d(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s;var n=(t,e,s)=>l(t,typeof e!="symbol"?e+"":e,s);const u=require("pino");require("./sl-types.js");require("nanostores");const i=require("./useStreamLayerApp2.js"),c=u.pino({level:"trace",enabled:typeof window<"u"&&!!window.localStorage.getItem("SL_DEBUG"),browser:{write:t=>{console.log(t)}}}),a=(t,e)=>c.child({name:t},e);class v extends Event{constructor(s,r){super(s);n(this,"slEventBus");this.slEventBus=r}}const w=a("event-bus");class E{constructor(e="sl-event-bus"){n(this,"name");n(this,"listeners");n(this,"emit",(e,s)=>{const r=new v(this.name,{...s,type:e});w.debug(r,"Emitting event"),window.dispatchEvent(r)});n(this,"destroy",()=>{this.listeners.forEach(e=>{window.removeEventListener(this.name,e),this.listeners.delete(e)}),this.listeners.clear()});this.name=e,this.listeners=new Set}listen(e){return window.addEventListener(this.name,e),this.listeners.add(e),()=>{this.off(e)}}off(e){window.removeEventListener(this.name,e),this.listeners.delete(e)}}window.slStore=Object.create(null);var o;(function(t){t.ORGANIZATION="ORGANIZATION",t.STREAM="STREAM"})(o||(o={}));i.SdkOverlayType.BETTING+"",i.SdkOverlayType.GAMES+"",i.SdkOverlayType.PUBLIC_CHAT+"",i.SdkOverlayType.TWITTER+"";exports.FeatureStatus=void 0;(function(t){t.Ready="ready",t.Suspended="suspended"})(exports.FeatureStatus||(exports.FeatureStatus={}));const h=new E;exports.createLogger=a;exports.eventBus=h;
1
+ "use strict";const e=require("./feature.js");require("nanostores");const t=new e.EventBus;exports.eventBus=t;