@streamlayer/react-ui 0.84.0 → 0.85.0

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 (40) hide show
  1. package/lib/assets/style.css +1 -1
  2. package/lib/index-39a0b9b6.js +1168 -0
  3. package/lib/index-ba93b6b2.js +19529 -0
  4. package/lib/styles_hxnaic-4ed993c7.js +1 -0
  5. package/lib/ui/app/Features/Gamification/Leaderboard.d.ts +3 -1
  6. package/lib/ui/app/Features/Gamification/Leaderboard.js +18 -21
  7. package/lib/ui/app/Features/Gamification/Tabs.d.ts +4 -0
  8. package/lib/ui/app/Features/Gamification/Tabs.js +40 -78
  9. package/lib/ui/app/Features/Gamification/gamification-feature.js +7 -5
  10. package/lib/ui/app/Features/Gamification/index.d.ts +4 -0
  11. package/lib/ui/app/Features/Gamification/index.js +44 -40
  12. package/lib/ui/app/Features/index.d.ts +4 -0
  13. package/lib/ui/app/Features/index.js +19 -14
  14. package/lib/ui/app/Navigation/MastersNavigation/index.js +1 -1
  15. package/lib/ui/app/Notifications/index.d.ts +4 -0
  16. package/lib/ui/app/Notifications/index.js +105 -53
  17. package/lib/ui/app/Notifications/styles.d.ts +1 -0
  18. package/lib/ui/app/Notifications/styles.js +17 -8
  19. package/lib/ui/app/masters.js +60 -47
  20. package/lib/ui/app/useMastersApp.js +1 -1
  21. package/lib/ui/app/useSdkScroll.d.ts +9 -0
  22. package/lib/ui/app/useSdkScroll.js +93 -0
  23. package/lib/ui/gamification/leaderboard/index.d.ts +1 -1
  24. package/lib/ui/gamification/leaderboard/index.js +24 -20
  25. package/lib/ui/gamification/leaderboard/static.d.ts +14 -0
  26. package/lib/ui/gamification/leaderboard/static.js +36 -0
  27. package/lib/ui/gamification/leaderboard/styles.js +3 -2
  28. package/lib/ui/gamification/question/notification/pill/index.d.ts +2 -0
  29. package/lib/ui/gamification/question/notification/pill/index.js +7 -7
  30. package/lib/ui/gamification/question/notification/prediction-result/index.d.ts +1 -1
  31. package/lib/ui/gamification/vote/index.js +22 -22
  32. package/lib/ui/gamification/vote/vote-option/index.js +18 -18
  33. package/lib/ui/gamification/vote/vote-option/styles.js +2 -2
  34. package/lib/ui/gamification/vote/win-bar/index.js +19 -19
  35. package/lib/ui/gamification/vote/win-bar/styles.js +6 -6
  36. package/lib/ui/navigation/masters.js +1 -1
  37. package/lib/ui/show-in/index.js +2 -2
  38. package/lib/ui/theme/theme.js +19 -18
  39. package/package.json +8 -6
  40. /package/lib/{masters_k70xsy-4ed993c7.js → masters_1wv7w2k-4ed993c7.js} +0 -0
@@ -1,5 +1,5 @@
1
- import { jsx as m, jsxs as g, Fragment as z } from "react/jsx-runtime";
2
- import { useState as d, useEffect as G, useCallback as y, useMemo as f } from "react";
1
+ import { jsx as m, jsxs as N, Fragment as z } from "react/jsx-runtime";
2
+ import { useState as d, useEffect as G, useCallback as p, useMemo as f } from "react";
3
3
  import { QuestionType as c, QuestionStatus as V } from "@streamlayer/sdk-web-types";
4
4
  import { SDKScrollContainer as J } from "../../app/styles.js";
5
5
  import { ExpiredAlert as U } from "./expired-alert/index.js";
@@ -18,24 +18,24 @@ import "../../timer/index.js";
18
18
  import "react-countdown-circle-timer";
19
19
  import "../../theme/constants.js";
20
20
  import "./win-bar/styles.js";
21
- const pt = ({ openedQuestion: t, isLoading: C, vote: p, close: v }) => {
22
- var k, N;
23
- const P = t.subject, a = t.type, o = t.status, E = (k = t.options) == null ? void 0 : k.options, I = t.marketClosed, [R, b] = d(!1), [h, B] = d(!1), [u, O] = d(!0), [n, L] = d(!1), [x, q] = d(""), w = t == null ? void 0 : t.id;
21
+ const wt = ({ openedQuestion: t, isLoading: C, vote: w, close: v }) => {
22
+ var g, k;
23
+ const P = t.subject, a = t.type, o = t.status, E = (g = t.options) == null ? void 0 : g.options, I = t.marketClosed, [R, b] = d(!1), [h, L] = d(!1), [u, O] = d(!0), [n, M] = d(!1), [x, q] = d(""), y = t == null ? void 0 : t.id;
24
24
  G(() => {
25
25
  a === c.PREDICTION ? I && O(!1) : o === V.RESOLVED && O(!1);
26
26
  }, []);
27
- const M = y((e) => {
28
- B(e), b(!0);
29
- }, []), D = y(
27
+ const j = p((e) => {
28
+ L(e), b(!0);
29
+ }, []), D = p(
30
30
  async (e) => {
31
- if (w) {
31
+ if (y) {
32
32
  const T = e.currentTarget.value;
33
- q(T), await p(w, T);
33
+ q(T), await w(y, T);
34
34
  }
35
35
  },
36
- [w, q, p]
37
- ), W = y(() => {
38
- L(!0), setTimeout(v, 3e3);
36
+ [y, q, w]
37
+ ), B = p(() => {
38
+ M(!0), setTimeout(v, 3e3);
39
39
  }, [v]), r = f(
40
40
  () => t == null ? void 0 : t.answers.find((e) => e.youVoted === !0),
41
41
  [t]
@@ -45,7 +45,7 @@ const pt = ({ openedQuestion: t, isLoading: C, vote: p, close: v }) => {
45
45
  ), i = f(
46
46
  () => t == null ? void 0 : t.answers.find((e) => e.correct === !0),
47
47
  [t]
48
- ), j = f(() => t ? t.answers.map((e) => {
48
+ ), W = f(() => t ? t.answers.map((e) => {
49
49
  var T;
50
50
  return {
51
51
  ...e,
@@ -82,7 +82,7 @@ const pt = ({ openedQuestion: t, isLoading: C, vote: p, close: v }) => {
82
82
  a,
83
83
  s
84
84
  ]), H = f(() => a === c.PREDICTION && r ? s ? s && (i != null && i.youVoted) ? "You won" : "" : "To win" : l || n ? "Time expired" : a === c.POLL ? "Time remaining" : r ? "You won" : "To win", [n, a, r, l, s, i]), K = r || l || S || a === c.TRIVIA && o === V.RESOLVED && u;
85
- return /* @__PURE__ */ m(J, { "data-question-header": "true", children: /* @__PURE__ */ m(Z, { children: /* @__PURE__ */ g(_, { children: [
85
+ return /* @__PURE__ */ m(J, { "data-question-header": "true", children: /* @__PURE__ */ m(Z, { children: /* @__PURE__ */ N(_, { children: [
86
86
  /* @__PURE__ */ m(
87
87
  X,
88
88
  {
@@ -105,11 +105,11 @@ const pt = ({ openedQuestion: t, isLoading: C, vote: p, close: v }) => {
105
105
  {
106
106
  title: H,
107
107
  points: Y,
108
- onTimerExpired: W,
108
+ onTimerExpired: B,
109
109
  questionType: t.type,
110
110
  isTimer: !C,
111
111
  isPlayingTimer: !r,
112
- timerDuration: K ? 0 : Number(((N = t == null ? void 0 : t.appearance) == null ? void 0 : N.autoHideInterval) || "30")
112
+ timerDuration: K ? 0 : Number(((k = t == null ? void 0 : t.appearance) == null ? void 0 : k.autoHideInterval) || "30")
113
113
  }
114
114
  ),
115
115
  n ? /* @__PURE__ */ m(
@@ -118,13 +118,13 @@ const pt = ({ openedQuestion: t, isLoading: C, vote: p, close: v }) => {
118
118
  title: "More to come...",
119
119
  description: "Watch for additional enhanced stream interactive experience."
120
120
  }
121
- ) : /* @__PURE__ */ g(z, { children: [
122
- /* @__PURE__ */ m($, { "data-withoutWinBar": !A, children: P }),
123
- /* @__PURE__ */ m(Q, { children: j.map((e) => /* @__PURE__ */ m(
121
+ ) : /* @__PURE__ */ N(z, { children: [
122
+ /* @__PURE__ */ m($, { style: A ? {} : { marginTop: 0 }, children: P }),
123
+ /* @__PURE__ */ m(Q, { children: W.map((e) => /* @__PURE__ */ m(
124
124
  tt,
125
125
  {
126
126
  ...e,
127
- markThatVoted: M,
127
+ markThatVoted: j,
128
128
  votedAfterQuestionClosed: h,
129
129
  enteredAnActiveQuestion: u,
130
130
  marketClosed: I
@@ -135,5 +135,5 @@ const pt = ({ openedQuestion: t, isLoading: C, vote: p, close: v }) => {
135
135
  ] }) }) });
136
136
  };
137
137
  export {
138
- pt as Vote
138
+ wt as Vote
139
139
  };
@@ -1,6 +1,6 @@
1
1
  import { jsx as e, jsxs as l } from "react/jsx-runtime";
2
2
  import { QuestionImages as a, QuestionType as i, QuestionStatus as h } from "@streamlayer/sdk-web-types";
3
- import { AnimatedCounter as D } from "../../../animated-counter/index.js";
3
+ import { AnimatedCounter as P } from "../../../animated-counter/index.js";
4
4
  import { IconDefault as B, IconContainer as V, IconWrap as b, IconCircle as j, ButtonContainer as U, ButtonPct as $, ButtonBody as M, Title as W, Pts as y, Indicators as z, CheckIcon as F, Percentage as G } from "./styles.js";
5
5
  import "react-countup";
6
6
  import "@linaria/react";
@@ -29,20 +29,20 @@ const f = {
29
29
  hasCorrectAnswer: r,
30
30
  questionStatus: o
31
31
  }) => t === i.TRIVIA ? c && n : t === i.PREDICTION ? c && n && r || o === h.RESOLVED && n : !1, rt = (t) => {
32
- var p;
32
+ var D;
33
33
  const {
34
34
  // option props
35
35
  id: c,
36
36
  icon: n,
37
37
  text: r,
38
38
  percentageDecimal: o,
39
- points: P,
39
+ points: S,
40
40
  // extra props
41
41
  onVote: T,
42
42
  markThatVoted: O,
43
- youSelected: C,
43
+ youSelected: E,
44
44
  questionVoted: s,
45
- imageMode: E,
45
+ imageMode: C,
46
46
  answerTimeExpired: w,
47
47
  questionStatus: u,
48
48
  isLoading: g,
@@ -50,34 +50,34 @@ const f = {
50
50
  correct: A,
51
51
  hasCorrectAnswer: k,
52
52
  votedAfterQuestionClosed: v,
53
- enteredAnActiveQuestion: N,
54
- marketClosed: R
55
- } = t, I = H(t), x = J({ questionType: d, questionVoted: s, correct: A, hasCorrectAnswer: k, questionStatus: u }), m = R && d === i.PREDICTION, S = s || m, L = d === i.PREDICTION && !s && u !== h.RESOLVED;
53
+ enteredAnActiveQuestion: R,
54
+ marketClosed: p
55
+ } = t, I = H(t), x = J({ questionType: d, questionVoted: s, correct: A, hasCorrectAnswer: k, questionStatus: u }), m = p && d === i.PREDICTION, N = s || m, L = d === i.PREDICTION && !s && u !== h.RESOLVED;
56
56
  return /* @__PURE__ */ l(
57
57
  U,
58
58
  {
59
59
  value: c,
60
- "data-selected": C,
61
- "data-answerState": I,
62
- disabled: s || g || w || m && !N || m && N && v,
63
- "data-isNotChecked": s && !C && I !== "incorrect",
60
+ "data-selected": E,
61
+ "data-answer-state": I,
62
+ disabled: s || g || w || m && !R || m && R && v,
63
+ "data-is-not-checked": s && !E && I !== "incorrect",
64
64
  onClick: (Q) => {
65
65
  O(
66
- d === i.PREDICTION ? R : u === h.RESOLVED
66
+ d === i.PREDICTION ? p : u === h.RESOLVED
67
67
  ), T(Q);
68
68
  },
69
69
  children: [
70
- /* @__PURE__ */ e($, { "data-answerState": I, style: { width: `${S ? o : 0}%` } }),
70
+ /* @__PURE__ */ e($, { "data-answer-state": I, style: { width: `${N ? o : 0}%` } }),
71
71
  /* @__PURE__ */ l(M, { children: [
72
- n && E && ((p = f[E]) == null ? void 0 : p.call(f, n)),
72
+ n && C && ((D = f[C]) == null ? void 0 : D.call(f, n)),
73
73
  /* @__PURE__ */ e(W, { children: r }),
74
74
  L && /* @__PURE__ */ l("div", { children: [
75
- /* @__PURE__ */ e(D, { value: P }),
75
+ /* @__PURE__ */ e(P, { value: S }),
76
76
  /* @__PURE__ */ e(y, { children: "pts" })
77
77
  ] }),
78
- S && /* @__PURE__ */ l(z, { children: [
78
+ N && /* @__PURE__ */ l(z, { children: [
79
79
  x && /* @__PURE__ */ e(F, { name: "selected" }),
80
- /* @__PURE__ */ e(G, { children: /* @__PURE__ */ e(D, { value: o, suffix: "%" }) })
80
+ /* @__PURE__ */ e(G, { children: /* @__PURE__ */ e(P, { value: o, suffix: "%" }) })
81
81
  ] })
82
82
  ] })
83
83
  ]
@@ -50,7 +50,7 @@ const I = /* @__PURE__ */ s("button")({
50
50
  name: "Percentage",
51
51
  class: "pu9kmlb",
52
52
  propsAsIs: !1
53
- }), c = () => o, P = /* @__PURE__ */ s(c())({
53
+ }), c = () => o, v = /* @__PURE__ */ s(c())({
54
54
  name: "CheckIcon",
55
55
  class: "c1j2j0s0",
56
56
  propsAsIs: !0
@@ -59,7 +59,7 @@ export {
59
59
  m as ButtonBody,
60
60
  I as ButtonContainer,
61
61
  i as ButtonPct,
62
- P as CheckIcon,
62
+ v as CheckIcon,
63
63
  n as Icon,
64
64
  d as IconCircle,
65
65
  f as IconContainer,
@@ -1,35 +1,35 @@
1
- import { jsxs as i, jsx as r, Fragment as p } from "react/jsx-runtime";
2
- import { QuestionType as o } from "@streamlayer/sdk-web-types";
1
+ import { jsxs as i, jsx as r, Fragment as d } from "react/jsx-runtime";
2
+ import { QuestionType as t } from "@streamlayer/sdk-web-types";
3
3
  import { AnimatedCounter as l } from "../../../animated-counter/index.js";
4
- import { Timer as h } from "../../../timer/index.js";
5
- import { WinBarContainer as s, Content as P, Title as C, WinIcon as I, Points as f, PointsCount as u, PointsUnits as T } from "./styles.js";
4
+ import { Timer as s } from "../../../timer/index.js";
5
+ import { WinBarContainer as h, Content as P, Title as C, WinIcon as f, Points as u, PointsCount as I, PointsUnits as T } from "./styles.js";
6
6
  import "react-countup";
7
7
  import "@linaria/react";
8
8
  import "react";
9
9
  import "react-countdown-circle-timer";
10
10
  import "../../../theme/constants.js";
11
11
  import "../../../icons/index.js";
12
- const R = ({
13
- title: t,
14
- points: m,
15
- isPlayingTimer: e,
16
- isTimer: d,
12
+ const N = ({
13
+ title: o,
14
+ points: e,
15
+ isPlayingTimer: m,
16
+ isTimer: c,
17
17
  questionType: n,
18
- timerDuration: a,
19
- onTimerExpired: c
20
- }) => /* @__PURE__ */ i(s, { "data-centeredItems": n === o.PREDICTION, children: [
18
+ timerDuration: p,
19
+ onTimerExpired: a
20
+ }) => /* @__PURE__ */ i(h, { style: { justifyContent: n === t.PREDICTION ? "center" : "space-between" }, children: [
21
21
  /* @__PURE__ */ i(P, { children: [
22
- t && /* @__PURE__ */ r(C, { children: t }),
23
- m !== void 0 && n !== o.POLL && /* @__PURE__ */ i(p, { children: [
24
- /* @__PURE__ */ r(I, { name: "icon-trophy" }),
25
- /* @__PURE__ */ i(f, { children: [
26
- /* @__PURE__ */ r(u, { children: /* @__PURE__ */ r(l, { value: m }) }),
22
+ o && /* @__PURE__ */ r(C, { children: o }),
23
+ e !== void 0 && n !== t.POLL && /* @__PURE__ */ i(d, { children: [
24
+ /* @__PURE__ */ r(f, { name: "icon-trophy" }),
25
+ /* @__PURE__ */ i(u, { children: [
26
+ /* @__PURE__ */ r(I, { children: /* @__PURE__ */ r(l, { value: e }) }),
27
27
  /* @__PURE__ */ r(T, { children: "PTS" })
28
28
  ] })
29
29
  ] })
30
30
  ] }),
31
- d && n !== o.PREDICTION && /* @__PURE__ */ r(h, { isPlaying: e, onTimerExpired: c, duration: a })
31
+ c && n !== t.PREDICTION && /* @__PURE__ */ r(s, { isPlaying: m, onTimerExpired: a, duration: p })
32
32
  ] });
33
33
  export {
34
- R as WinBar
34
+ N as WinBar
35
35
  };
@@ -2,7 +2,7 @@ import { styled as s } from "@linaria/react";
2
2
  import { SvgIcon as n } from "../../../icons/index.js";
3
3
  import "react/jsx-runtime";
4
4
  import "react";
5
- const p = /* @__PURE__ */ s("div")({
5
+ const a = /* @__PURE__ */ s("div")({
6
6
  name: "WinBarContainer",
7
7
  class: "wie6cqo",
8
8
  propsAsIs: !1
@@ -22,11 +22,11 @@ const p = /* @__PURE__ */ s("div")({
22
22
  name: "Points",
23
23
  class: "p4lwuj0",
24
24
  propsAsIs: !1
25
- }), I = /* @__PURE__ */ s("span")({
25
+ }), f = /* @__PURE__ */ s("span")({
26
26
  name: "PointsCount",
27
27
  class: "po9i64o",
28
28
  propsAsIs: !1
29
- }), f = /* @__PURE__ */ s("span")({
29
+ }), I = /* @__PURE__ */ s("span")({
30
30
  name: "PointsUnits",
31
31
  class: "pe5g05h",
32
32
  propsAsIs: !1
@@ -34,9 +34,9 @@ const p = /* @__PURE__ */ s("div")({
34
34
  export {
35
35
  c as Content,
36
36
  m as Points,
37
- I as PointsCount,
38
- f as PointsUnits,
37
+ f as PointsCount,
38
+ I as PointsUnits,
39
39
  l as Title,
40
- p as WinBarContainer,
40
+ a as WinBarContainer,
41
41
  r as WinIcon
42
42
  };
@@ -1,6 +1,6 @@
1
1
  import { styled as o } from "@linaria/react";
2
2
  import { Navigation as t } from "./index.js";
3
- import "../../masters_k70xsy-4ed993c7.js";
3
+ import "../../masters_1wv7w2k-4ed993c7.js";
4
4
  import "react/jsx-runtime";
5
5
  import "../../index_4nhkck-4ed993c7.js";
6
6
  const i = () => t, n = /* @__PURE__ */ o(i())({
@@ -5,7 +5,7 @@ const m = /* @__PURE__ */ e("div")({
5
5
  name: "Container",
6
6
  class: "c1pgyo67",
7
7
  propsAsIs: !1
8
- }), a = "hx17qu6", f = ({
8
+ }), a = "hx17qu6", x = ({
9
9
  children: o,
10
10
  style: n,
11
11
  className: s,
@@ -16,5 +16,5 @@ const m = /* @__PURE__ */ e("div")({
16
16
  children: o
17
17
  });
18
18
  export {
19
- f as ShowIn
19
+ x as ShowIn
20
20
  };
@@ -1,35 +1,36 @@
1
- import { jsx as t, jsxs as r } from "react/jsx-runtime";
2
- import { colors as l, FONT as e } from "./constants.js";
3
- const h = `
1
+ import { jsx as e, jsxs as r } from "react/jsx-runtime";
2
+ import { colors as l, FONT as t } from "./constants.js";
3
+ const s = `
4
4
  ${l}
5
- --font-family: ${e.REGULAR};
6
- --font-regular: ${e.REGULAR};
7
- --font-color: ${e.COLOR};
8
- --font-serif: ${e.SERIF};
9
- --font-weight-default: ${e.WEIGHT_DEFAULT};
5
+ --font-family: ${t.REGULAR};
6
+ --font-regular: ${t.REGULAR};
7
+ --font-color: ${t.COLOR};
8
+ --font-serif: ${t.SERIF};
9
+ --font-weight-default: ${t.WEIGHT_DEFAULT};
10
10
 
11
11
  --header-height: 68px;
12
12
  --animation-duration: 0.5s;
13
13
  --animation-function: ease;
14
14
  --container-padding: 16px;
15
15
  --border-radius: 8px;
16
- `, d = "StreamLayerCSSReset", m = "ttkj0ah", f = () => /* @__PURE__ */ t("table", {
16
+ --pill-offset: 0px;
17
+ `, c = "StreamLayerCSSReset", m = "ttkj0ah", f = () => /* @__PURE__ */ e("table", {
17
18
  children: /* @__PURE__ */ r("table", {
18
- children: [/* @__PURE__ */ t("thead", {
19
+ children: [/* @__PURE__ */ e("thead", {
19
20
  children: /* @__PURE__ */ r("tr", {
20
- children: [/* @__PURE__ */ t("th", {
21
+ children: [/* @__PURE__ */ e("th", {
21
22
  children: "name"
22
- }), /* @__PURE__ */ t("th", {
23
+ }), /* @__PURE__ */ e("th", {
23
24
  children: "value"
24
25
  })]
25
26
  })
26
- }), /* @__PURE__ */ t("tbody", {
27
- children: h.split(";").map((i) => {
27
+ }), /* @__PURE__ */ e("tbody", {
28
+ children: s.split(";").map((i) => {
28
29
  const n = i.trim(), [o, a] = n.split(":");
29
30
  return /* @__PURE__ */ r("tr", {
30
- children: [/* @__PURE__ */ t("td", {
31
+ children: [/* @__PURE__ */ e("td", {
31
32
  children: o
32
- }), /* @__PURE__ */ t("td", {
33
+ }), /* @__PURE__ */ e("td", {
33
34
  children: a
34
35
  })]
35
36
  }, n);
@@ -39,7 +40,7 @@ const h = `
39
40
  });
40
41
  export {
41
42
  f as ThemeVariables,
42
- d as resetCss,
43
+ c as resetCss,
43
44
  m as theme,
44
- h as themeStr
45
+ s as themeStr
45
46
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@streamlayer/react-ui",
3
- "version": "0.84.0",
3
+ "version": "0.85.0",
4
4
  "type": "module",
5
5
  "main": "./src/index.js",
6
6
  "typings": "./lib/index.d.ts",
@@ -39,18 +39,19 @@
39
39
  "@streamlayer/sl-eslib": "^5.61.0",
40
40
  "@types/lodash.throttle": "^4.1.9",
41
41
  "lodash.throttle": "^4.1.1",
42
+ "react-infinite-scroller": "^1.2.6",
42
43
  "react-virtualized-auto-sizer": "^1.0.20",
43
44
  "react-window": "^1.8.9",
44
45
  "react-window-infinite-loader": "^1.0.9",
45
- "@streamlayer/feature-gamification": "^0.30.3",
46
+ "@streamlayer/feature-gamification": "^0.31.0",
46
47
  "@streamlayer/sdk-web": "^0.29.5",
47
48
  "@streamlayer/sdk-web-anonymous-auth": "^0.11.30",
48
49
  "@streamlayer/sdk-web-api": "^0.1.0",
49
50
  "@streamlayer/sdk-web-core": "^0.1.0",
50
- "@streamlayer/sdk-web-features": "^0.11.3",
51
- "@streamlayer/sdk-web-interfaces": "^0.18.19",
51
+ "@streamlayer/sdk-web-features": "^0.11.4",
52
+ "@streamlayer/sdk-web-interfaces": "^0.18.20",
52
53
  "@streamlayer/sdk-web-logger": "^0.0.1",
53
- "@streamlayer/sdk-web-notifications": "^0.0.3",
54
+ "@streamlayer/sdk-web-notifications": "^0.0.4",
54
55
  "@streamlayer/sdk-web-storage": "^0.0.4",
55
56
  "@streamlayer/sdk-web-types": "^0.1.0"
56
57
  },
@@ -77,6 +78,7 @@
77
78
  "@storybook/jest": "~0.2.3",
78
79
  "@storybook/react": "^7.5.3",
79
80
  "@storybook/testing-library": "~0.2.2",
81
+ "@types/react-infinite-scroller": "^1.2.5",
80
82
  "@types/react-window": "^1.8.8",
81
83
  "@types/react-window-infinite-loader": "^1.0.9",
82
84
  "esbuild-plugin-babel": "^0.2.3",
@@ -93,6 +95,6 @@
93
95
  "vite-plugin-svgr": "^4.1.0",
94
96
  "vite-svg-loader": "^4.0.0",
95
97
  "vite-tsconfig-paths": "^4.2.1",
96
- "@streamlayer/react": "^0.33.5"
98
+ "@streamlayer/react": "^0.34.0"
97
99
  }
98
100
  }