@streamlayer/react-ui 0.96.2 → 0.97.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.
- package/lib/assets/style.css +1 -1
- package/lib/hooks/analytics.js +50 -0
- package/lib/index-z0QjLiEL.js +75 -0
- package/lib/ui/app/Features/FeatureProvider.d.ts +1 -0
- package/lib/ui/app/Features/FeatureProvider.js +34 -6
- package/lib/ui/app/Features/Gamification/Friends.d.ts +0 -2
- package/lib/ui/app/Features/Gamification/Friends.js +20 -23
- package/lib/ui/app/Features/Gamification/Leaderboard.js +31 -25
- package/lib/ui/app/Features/Gamification/Question.js +4 -2
- package/lib/ui/app/Features/Gamification/QuestionsList.js +11 -8
- package/lib/ui/app/Features/Gamification/Tabs.js +30 -25
- package/lib/ui/app/Features/Gamification/UserSummary.js +14 -12
- package/lib/ui/app/Features/Gamification/gamification-feature.js +6 -2
- package/lib/ui/app/Features/Gamification/index.d.ts +10 -0
- package/lib/ui/app/Features/Gamification/index.js +73 -68
- package/lib/ui/app/Features/index.d.ts +8 -0
- package/lib/ui/app/Features/index.js +112 -16
- package/lib/ui/app/Navigation/MastersNavigation/index.js +5 -4
- package/lib/ui/app/Navigation/index.js +7 -6
- package/lib/ui/app/Notifications/Onboarding/index.d.ts +2 -0
- package/lib/ui/app/Notifications/Onboarding/index.js +76 -78
- package/lib/ui/app/Notifications/index.js +98 -91
- package/lib/ui/app/Points/index.js +20 -17
- package/lib/ui/app/masters.js +167 -86
- package/lib/ui/app/useMastersApp.js +12 -11
- package/lib/ui/app/useSdkFeature.js +13 -16
- package/lib/ui/app/useSdkResponsive.js +1 -1
- package/lib/ui/app/useSdkScroll.d.ts +1 -1
- package/lib/ui/app/useSdkScroll.js +28 -25
- package/lib/ui/gamification/invite-link/index.js +26 -12
- package/lib/ui/gamification/onboarding/index.d.ts +0 -2
- package/lib/ui/gamification/onboarding/index.js +46 -46
- package/lib/ui/gamification/onboarding/slides/onboarding-instructions/index.d.ts +2 -2
- package/lib/ui/gamification/onboarding/slides/onboarding-instructions/index.js +21 -20
- package/lib/ui/gamification/onboarding/slides/onboarding-instructions/styles.d.ts +1 -0
- package/lib/ui/gamification/onboarding/slides/onboarding-instructions/styles.js +20 -15
- package/lib/ui/gamification/onboarding/slides/onboarding-invite-card/index.d.ts +0 -3
- package/lib/ui/gamification/onboarding/slides/onboarding-invite-card/index.js +34 -29
- package/lib/ui/gamification/onboarding/slides/onboarding-invite-card/styles.d.ts +0 -3
- package/lib/ui/gamification/onboarding/slides/onboarding-invite-card/styles.js +17 -32
- package/lib/ui/gamification/points/index.d.ts +1 -0
- package/lib/ui/gamification/points/index.js +9 -9
- package/lib/ui/gamification/question/index.d.ts +1 -0
- package/lib/ui/gamification/question/index.js +31 -24
- package/lib/ui/gamification/question/insight/index.js +11 -15
- package/lib/ui/gamification/question/list/index.d.ts +3 -1
- package/lib/ui/gamification/question/list/index.js +50 -34
- package/lib/ui/gamification/question/notification/index.js +23 -25
- package/lib/ui/gamification/question/notification/insight/index.js +10 -9
- package/lib/ui/gamification/question/notification/tweet/index.js +3 -2
- package/lib/ui/gamification/question/styles.d.ts +2 -0
- package/lib/ui/gamification/question/styles.js +39 -28
- package/lib/ui/gamification/question/twitter/index.js +14 -18
- package/lib/ui/gamification/user-statistics/index.d.ts +3 -2
- package/lib/ui/gamification/user-statistics/index.js +48 -45
- package/lib/ui/gamification/vote/feedback/index.d.ts +3 -2
- package/lib/ui/gamification/vote/feedback/index.js +74 -58
- package/lib/ui/gamification/vote/feedback/styles.d.ts +2 -0
- package/lib/ui/gamification/vote/feedback/styles.js +33 -21
- package/lib/ui/gamification/vote/index.js +94 -83
- package/lib/ui/gamification/vote/insight-details/index.js +7 -6
- package/lib/ui/gamification/vote/twitter-details/index.js +3 -2
- package/lib/ui/gamification/vote/vote-option/index.d.ts +2 -1
- package/lib/ui/gamification/vote/vote-option/index.js +47 -39
- package/lib/ui/icons/index.d.ts +1 -2
- package/lib/ui/icons/index.js +122 -49
- package/lib/ui/modal/index.js +27 -21
- package/lib/ui/navigation/button/Channels.js +6 -5
- package/lib/ui/navigation/button/FeaturedGroups.js +4 -3
- package/lib/ui/navigation/button/LeaderBoard.js +6 -5
- package/lib/ui/navigation/button/index.js +20 -7
- package/lib/ui/navigation/button/styles.d.ts +3 -0
- package/lib/ui/navigation/button/styles.js +9 -6
- package/lib/ui/questions/insight/index.js +16 -16
- package/lib/ui/questions/twitter/index.js +3 -2
- package/lib/ui/show-in/index.d.ts +2 -0
- package/lib/ui/show-in/index.js +24 -14
- package/lib/ui/timer/index.js +32 -28
- package/lib/ui/video-player/index.js +41 -39
- package/lib/ui/video-player/styles.d.ts +1 -0
- package/lib/ui/video-player/styles.js +10 -9
- package/package.json +22 -21
- package/lib/index-keh7OLCY.js +0 -67
|
@@ -1,35 +1,32 @@
|
|
|
1
1
|
import { jsx as i } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
import "
|
|
2
|
+
import { styled as r } from "@linaria/react";
|
|
3
|
+
import { OnboardingInviteCard as o } from "../../../gamification/onboarding/slides/onboarding-invite-card/index.js";
|
|
4
|
+
import "../../../../hooks/analytics.js";
|
|
5
|
+
import "lodash.throttle";
|
|
4
6
|
import "react";
|
|
7
|
+
import "@streamlayer/sdk-web-interfaces";
|
|
8
|
+
import "../../../theme/constants.js";
|
|
9
|
+
import "@streamlayer/sdk-web-types";
|
|
10
|
+
import "../../useClipboardCopy.js";
|
|
5
11
|
import "../../../../index-jRXrW6ie.js";
|
|
6
12
|
import "../../../../index-uEuzH3jr.js";
|
|
7
13
|
import "../../../gamification/copyNotification/index.js";
|
|
8
14
|
import "../../../icons/index.js";
|
|
9
|
-
import "@linaria/react";
|
|
10
15
|
import "../../../gamification/copyNotification/styles.js";
|
|
11
16
|
import "../../../gamification/onboarding/slides/onboarding-invite-card/styles.js";
|
|
12
|
-
const
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
label: "Facebook"
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
icon: "icon-twitter",
|
|
25
|
-
link: "https://twitter.com/@TheMasters",
|
|
26
|
-
label: "X"
|
|
27
|
-
}
|
|
28
|
-
],
|
|
17
|
+
const e = /* @__PURE__ */ r("div")({
|
|
18
|
+
name: "InviteFriendsContainer",
|
|
19
|
+
class: "i1xmyxez",
|
|
20
|
+
propsAsIs: !1
|
|
21
|
+
}), b = ({
|
|
22
|
+
deepLink: t
|
|
23
|
+
}) => /* @__PURE__ */ i(e, {
|
|
24
|
+
children: /* @__PURE__ */ i(o, {
|
|
25
|
+
inviteLink: t,
|
|
29
26
|
inviteCardTitle: "It’s More Fun With Friends",
|
|
30
27
|
inviteCardSubtext: "Invite and compete against your friends for the top spot on the leaderboard."
|
|
31
|
-
}
|
|
32
|
-
);
|
|
28
|
+
})
|
|
29
|
+
});
|
|
33
30
|
export {
|
|
34
|
-
|
|
31
|
+
b as Friends
|
|
35
32
|
};
|
|
@@ -1,66 +1,72 @@
|
|
|
1
|
-
import { jsx as t, jsxs as L, Fragment as
|
|
2
|
-
import { styled as
|
|
1
|
+
import { jsx as t, jsxs as L, Fragment as h } from "react/jsx-runtime";
|
|
2
|
+
import { styled as k } from "@linaria/react";
|
|
3
3
|
import { useStore as p } from "@nanostores/react";
|
|
4
|
+
import { useRef as u } from "react";
|
|
4
5
|
import { useClipboardCopy as I } from "../../useClipboardCopy.js";
|
|
5
|
-
import { InviteLink as
|
|
6
|
+
import { InviteLink as y } from "../../../gamification/invite-link/index.js";
|
|
6
7
|
import "react-virtualized-auto-sizer";
|
|
7
8
|
import "react-window";
|
|
8
9
|
import "react-window-infinite-loader";
|
|
9
|
-
import "react";
|
|
10
10
|
import "../../../icons/index.js";
|
|
11
11
|
import "../../../gamification/leaderboard/list-item/styles.js";
|
|
12
12
|
import "../../../../styles_z07sl8-w40geAFS.js";
|
|
13
|
-
import { LeaderboardStaticList as
|
|
14
|
-
import { Friends as
|
|
13
|
+
import { LeaderboardStaticList as C } from "../../../gamification/leaderboard/static.js";
|
|
14
|
+
import { Friends as b } from "./Friends.js";
|
|
15
15
|
import "../../../../index-jRXrW6ie.js";
|
|
16
16
|
import "../../../../index-uEuzH3jr.js";
|
|
17
17
|
import "../../../gamification/copyNotification/index.js";
|
|
18
18
|
import "../../../gamification/copyNotification/styles.js";
|
|
19
|
+
import "../../../../hooks/analytics.js";
|
|
20
|
+
import "lodash.throttle";
|
|
21
|
+
import "@streamlayer/sdk-web-interfaces";
|
|
22
|
+
import "../../../theme/constants.js";
|
|
23
|
+
import "@streamlayer/sdk-web-types";
|
|
19
24
|
import "../../../gamification/invite-link/styles.js";
|
|
20
25
|
import "react-infinite-scroller";
|
|
21
26
|
import "../../../gamification/leaderboard/list-item/index.js";
|
|
22
27
|
import "../../../../utils/common.js";
|
|
23
28
|
import "../../../gamification/onboarding/slides/onboarding-invite-card/index.js";
|
|
24
29
|
import "../../../gamification/onboarding/slides/onboarding-invite-card/styles.js";
|
|
25
|
-
const
|
|
30
|
+
const v = /* @__PURE__ */ k("div")({
|
|
26
31
|
name: "InviteLinkContainer",
|
|
27
32
|
class: "i1chxfpe",
|
|
28
33
|
propsAsIs: !1
|
|
29
|
-
}),
|
|
34
|
+
}), Z = ({
|
|
30
35
|
gamification: r,
|
|
31
36
|
scrollNode: m,
|
|
32
37
|
scrollStore: n,
|
|
33
|
-
renderClipBoardNode:
|
|
38
|
+
renderClipBoardNode: s
|
|
34
39
|
}) => {
|
|
35
|
-
const {
|
|
40
|
+
const e = u(null), {
|
|
36
41
|
data: i,
|
|
37
|
-
hasMore:
|
|
38
|
-
loading:
|
|
42
|
+
hasMore: d,
|
|
43
|
+
loading: l,
|
|
39
44
|
key: a
|
|
40
45
|
} = p(r.leaderboardList.$store), {
|
|
41
|
-
data:
|
|
42
|
-
} = p(r.deepLink.$store), [c,
|
|
43
|
-
return !i.length && !
|
|
44
|
-
renderClipBoardNode:
|
|
45
|
-
deepLink:
|
|
46
|
-
}) : /* @__PURE__ */ L(
|
|
47
|
-
children: [/* @__PURE__ */ t(
|
|
46
|
+
data: o
|
|
47
|
+
} = p(r.deepLink.$store), [c, f] = I(e);
|
|
48
|
+
return !i.length && !l ? /* @__PURE__ */ t(b, {
|
|
49
|
+
renderClipBoardNode: s,
|
|
50
|
+
deepLink: o
|
|
51
|
+
}) : /* @__PURE__ */ L(h, {
|
|
52
|
+
children: [/* @__PURE__ */ t(C, {
|
|
48
53
|
items: i,
|
|
49
54
|
scrollNode: m,
|
|
50
55
|
scrollStore: n,
|
|
51
56
|
fetchMore: r.leaderboardList.fetchMore,
|
|
52
|
-
hasMore:
|
|
57
|
+
hasMore: d,
|
|
53
58
|
openItemDetail: r.openUser,
|
|
54
59
|
currentUserId: r.currentUserId.get()
|
|
55
|
-
}, a),
|
|
56
|
-
|
|
57
|
-
|
|
60
|
+
}, a), o && /* @__PURE__ */ t(v, {
|
|
61
|
+
ref: e,
|
|
62
|
+
children: /* @__PURE__ */ t(y, {
|
|
63
|
+
onClick: () => c(o),
|
|
58
64
|
title: "Invite Friends",
|
|
59
65
|
description: "Challenge them now!"
|
|
60
66
|
})
|
|
61
|
-
}),
|
|
67
|
+
}), f]
|
|
62
68
|
});
|
|
63
69
|
};
|
|
64
70
|
export {
|
|
65
|
-
|
|
71
|
+
Z as Leaderboard
|
|
66
72
|
};
|
|
@@ -16,6 +16,8 @@ import "../../../gamification/vote/expired-alert/index.js";
|
|
|
16
16
|
import "../../../gamification/vote/expired-alert/styles.js";
|
|
17
17
|
import "../../../gamification/vote/feedback/index.js";
|
|
18
18
|
import "../../../gamification/vote/feedback/styles.js";
|
|
19
|
+
import "../../../show-in/index.js";
|
|
20
|
+
import "@linaria/core";
|
|
19
21
|
import "../../../gamification/vote/styles.js";
|
|
20
22
|
import "../../styles.js";
|
|
21
23
|
import "../../../gamification/vote/vote-option/index.js";
|
|
@@ -71,7 +73,7 @@ const d = /* @__PURE__ */ n("div")({
|
|
|
71
73
|
openedQuestion: s,
|
|
72
74
|
isLoading: !!o
|
|
73
75
|
}) : null;
|
|
74
|
-
},
|
|
76
|
+
}, pt = ({
|
|
75
77
|
gamification: t
|
|
76
78
|
}) => {
|
|
77
79
|
var s;
|
|
@@ -95,5 +97,5 @@ const d = /* @__PURE__ */ n("div")({
|
|
|
95
97
|
});
|
|
96
98
|
};
|
|
97
99
|
export {
|
|
98
|
-
|
|
100
|
+
pt as Question
|
|
99
101
|
};
|
|
@@ -1,17 +1,20 @@
|
|
|
1
|
-
import { jsx as
|
|
1
|
+
import { jsx as m } from "react/jsx-runtime";
|
|
2
2
|
import { useStore as p } from "@nanostores/react";
|
|
3
|
-
import { useMastersContext as
|
|
4
|
-
import { QuestionList as
|
|
3
|
+
import { useMastersContext as e } from "../../useMastersContext.js";
|
|
4
|
+
import { QuestionList as s } from "../../../gamification/question/list/index.js";
|
|
5
5
|
import "react";
|
|
6
6
|
import "../../../gamification/question/index.js";
|
|
7
7
|
import "@streamlayer/sdk-web-types";
|
|
8
8
|
import "../../../gamification/constants.js";
|
|
9
|
-
import "../../../
|
|
9
|
+
import "../../../skeleton/index.js";
|
|
10
|
+
import "../../../skeleton/styles.js";
|
|
10
11
|
import "@linaria/react";
|
|
12
|
+
import "../../../gamification/question/styles.js";
|
|
11
13
|
import "../../../icons/index.js";
|
|
12
14
|
import "../../../gamification/question/insight/index.js";
|
|
13
15
|
import "../../../questions/insight/index.js";
|
|
14
16
|
import "../../../video-player/index.js";
|
|
17
|
+
import "@linaria/core";
|
|
15
18
|
import "../../../video-player/styles.js";
|
|
16
19
|
import "../../../questions/insight/styles.js";
|
|
17
20
|
import "../../../gamification/question/insight/styles.js";
|
|
@@ -25,10 +28,10 @@ import "../../../gamification/question/twitter/styles.js";
|
|
|
25
28
|
import "../../../button/index.js";
|
|
26
29
|
import "../../../button/styles.js";
|
|
27
30
|
import "../../../gamification/question/list/styles.js";
|
|
28
|
-
const
|
|
29
|
-
const { sdk:
|
|
30
|
-
return
|
|
31
|
+
const H = ({ store: t, openQuestion: r }) => {
|
|
32
|
+
const { sdk: o } = e(), i = p(t);
|
|
33
|
+
return /* @__PURE__ */ m(s, { openQuestion: r, questions: i.data, controlVideo: o == null ? void 0 : o.controlVideoPlayer });
|
|
31
34
|
};
|
|
32
35
|
export {
|
|
33
|
-
|
|
36
|
+
H as QuestionsList
|
|
34
37
|
};
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { jsxs as h, jsx as t, Fragment as
|
|
1
|
+
import { jsxs as h, jsx as t, Fragment as D } from "react/jsx-runtime";
|
|
2
2
|
import { useStore as f } from "@nanostores/react";
|
|
3
|
-
import { useState as
|
|
4
|
-
import { TabsContainer as
|
|
5
|
-
import { scrollIntoAppView as
|
|
6
|
-
import { ActivePages as a, Tabs as
|
|
7
|
-
import { Leaderboard as
|
|
8
|
-
import { QuestionsList as
|
|
9
|
-
import { UserSummary as
|
|
3
|
+
import { useState as T, useTransition as v, useEffect as A } from "react";
|
|
4
|
+
import { TabsContainer as I, TabsNavContainer as P, SDKWhiteContainer as S, UserSummaryContainer as V, SDKContentContainer as E, LeaderboardContainer as K } from "../../styles.js";
|
|
5
|
+
import { scrollIntoAppView as L } from "../../useSdkScroll.js";
|
|
6
|
+
import { ActivePages as a, Tabs as B } from "../../../gamification/tabs/index.js";
|
|
7
|
+
import { Leaderboard as F } from "./Leaderboard.js";
|
|
8
|
+
import { QuestionsList as O } from "./QuestionsList.js";
|
|
9
|
+
import { UserSummary as Q } from "./UserSummary.js";
|
|
10
10
|
import "@linaria/react";
|
|
11
11
|
import "lodash.throttle";
|
|
12
12
|
import "../../../theme/constants.js";
|
|
13
|
-
import "../../../../index-
|
|
13
|
+
import "../../../../index-z0QjLiEL.js";
|
|
14
14
|
import "../../../../index-uEuzH3jr.js";
|
|
15
15
|
import "../../../gamification/tabs/styles.js";
|
|
16
16
|
import "../../useClipboardCopy.js";
|
|
@@ -19,6 +19,9 @@ import "../../../gamification/copyNotification/index.js";
|
|
|
19
19
|
import "../../../icons/index.js";
|
|
20
20
|
import "../../../gamification/copyNotification/styles.js";
|
|
21
21
|
import "../../../gamification/invite-link/index.js";
|
|
22
|
+
import "../../../../hooks/analytics.js";
|
|
23
|
+
import "@streamlayer/sdk-web-interfaces";
|
|
24
|
+
import "@streamlayer/sdk-web-types";
|
|
22
25
|
import "../../../gamification/invite-link/styles.js";
|
|
23
26
|
import "react-virtualized-auto-sizer";
|
|
24
27
|
import "react-window";
|
|
@@ -35,12 +38,14 @@ import "../../../gamification/onboarding/slides/onboarding-invite-card/styles.js
|
|
|
35
38
|
import "../../useMastersContext.js";
|
|
36
39
|
import "../../../gamification/question/list/index.js";
|
|
37
40
|
import "../../../gamification/question/index.js";
|
|
38
|
-
import "@streamlayer/sdk-web-types";
|
|
39
41
|
import "../../../gamification/constants.js";
|
|
42
|
+
import "../../../skeleton/index.js";
|
|
43
|
+
import "../../../skeleton/styles.js";
|
|
40
44
|
import "../../../gamification/question/styles.js";
|
|
41
45
|
import "../../../gamification/question/insight/index.js";
|
|
42
46
|
import "../../../questions/insight/index.js";
|
|
43
47
|
import "../../../video-player/index.js";
|
|
48
|
+
import "@linaria/core";
|
|
44
49
|
import "../../../video-player/styles.js";
|
|
45
50
|
import "../../../questions/insight/styles.js";
|
|
46
51
|
import "../../../gamification/question/insight/styles.js";
|
|
@@ -59,14 +64,14 @@ import "../../../gamification/user-statistics/components/rank/styles.js";
|
|
|
59
64
|
import "../../../gamification/user-statistics/components/statistic/index.js";
|
|
60
65
|
import "../../../gamification/user-statistics/components/statistic/styles.js";
|
|
61
66
|
import "../../../gamification/user-statistics/styles.js";
|
|
62
|
-
const
|
|
63
|
-
const { tabsShown: d } = f(r, { keys: ["tabsShown"] }), [p, y] =
|
|
67
|
+
const Yt = ({ gamification: o, className: l, scrollStore: r, scrollNode: u, appNode: e, style: b, responsiveStore: m, headerNode: w }) => {
|
|
68
|
+
const { tabsShown: d } = f(r, { keys: ["tabsShown"] }), [p, y] = T(a.HOME), [, g] = v(), { sdkInDesktopView: n, screen: k } = f(m, { keys: ["sdkInDesktopView"] }), x = (i) => {
|
|
64
69
|
g(() => {
|
|
65
70
|
var c;
|
|
66
|
-
y(i), n === !1 && (((c = e.current) == null ? void 0 : c.getBoundingClientRect().y) || 0) < 0 &&
|
|
71
|
+
y(i), n === !1 && (((c = e.current) == null ? void 0 : c.getBoundingClientRect().y) || 0) < 0 && L(e, k.size, { behavior: "instant" });
|
|
67
72
|
});
|
|
68
73
|
};
|
|
69
|
-
|
|
74
|
+
A(() => r.listen((i) => {
|
|
70
75
|
if (i.scrollPosition === 0) {
|
|
71
76
|
r.setKey("tabsShown", !0);
|
|
72
77
|
return;
|
|
@@ -75,25 +80,25 @@ const qt = ({ gamification: o, className: l, scrollStore: r, scrollNode: u, appN
|
|
|
75
80
|
}), [r, m]);
|
|
76
81
|
let s = "0px";
|
|
77
82
|
n ? s = d ? "0px" : "calc(8px - var(--header-height) - var(--header-offset))" : s = d ? "calc(var(--header-height) + var(--header-offset) - 2px)" : "0px";
|
|
78
|
-
const
|
|
79
|
-
return /* @__PURE__ */ h(
|
|
83
|
+
const C = n ? e : w;
|
|
84
|
+
return /* @__PURE__ */ h(I, { className: l, style: b, children: [
|
|
80
85
|
/* @__PURE__ */ t(
|
|
81
|
-
|
|
86
|
+
P,
|
|
82
87
|
{
|
|
83
88
|
style: {
|
|
84
89
|
top: s
|
|
85
90
|
},
|
|
86
|
-
children: /* @__PURE__ */ t(
|
|
91
|
+
children: /* @__PURE__ */ t(B, { activePage: p, toggleActivePage: x })
|
|
87
92
|
}
|
|
88
93
|
),
|
|
89
|
-
p === a.HOME && /* @__PURE__ */ h(
|
|
90
|
-
/* @__PURE__ */ t(
|
|
91
|
-
/* @__PURE__ */ t(
|
|
94
|
+
p === a.HOME && /* @__PURE__ */ h(D, { children: [
|
|
95
|
+
/* @__PURE__ */ t(S, { style: { paddingTop: "8px" }, children: /* @__PURE__ */ t(V, { children: /* @__PURE__ */ t(Q, { userSummary: o.userSummary }) }) }),
|
|
96
|
+
/* @__PURE__ */ t(E, { style: { flex: 1 }, children: /* @__PURE__ */ t(O, { openQuestion: o.openQuestion, store: o.feedList.getStore() }) })
|
|
92
97
|
] }),
|
|
93
|
-
p === a.LEADERBOARD && /* @__PURE__ */ t(
|
|
94
|
-
|
|
98
|
+
p === a.LEADERBOARD && /* @__PURE__ */ t(K, { children: /* @__PURE__ */ t(
|
|
99
|
+
F,
|
|
95
100
|
{
|
|
96
|
-
renderClipBoardNode:
|
|
101
|
+
renderClipBoardNode: C,
|
|
97
102
|
scrollStore: r,
|
|
98
103
|
scrollNode: u,
|
|
99
104
|
gamification: o
|
|
@@ -102,5 +107,5 @@ const qt = ({ gamification: o, className: l, scrollStore: r, scrollNode: u, appN
|
|
|
102
107
|
] });
|
|
103
108
|
};
|
|
104
109
|
export {
|
|
105
|
-
|
|
110
|
+
Yt as Tabs
|
|
106
111
|
};
|
|
@@ -1,25 +1,27 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { useState as
|
|
1
|
+
import { jsx as c } from "react/jsx-runtime";
|
|
2
|
+
import { useState as e, useEffect as s } from "react";
|
|
3
3
|
import { UserStatistics as n } from "../../../gamification/user-statistics/index.js";
|
|
4
|
+
import "../../../skeleton/index.js";
|
|
5
|
+
import "../../../skeleton/styles.js";
|
|
6
|
+
import "@linaria/react";
|
|
4
7
|
import "../../../../utils/common.js";
|
|
5
8
|
import "../../../gamification/user-statistics/components/rank/index.js";
|
|
6
9
|
import "../../../gamification/user-statistics/components/rank/styles.js";
|
|
7
|
-
import "@linaria/react";
|
|
8
10
|
import "../../../gamification/user-statistics/components/statistic/index.js";
|
|
9
11
|
import "../../../gamification/user-statistics/components/statistic/styles.js";
|
|
10
12
|
import "../../../gamification/user-statistics/styles.js";
|
|
11
|
-
const
|
|
12
|
-
var
|
|
13
|
-
const [
|
|
14
|
-
return
|
|
15
|
-
const
|
|
16
|
-
|
|
13
|
+
const E = ({ userSummary: o }) => {
|
|
14
|
+
var m;
|
|
15
|
+
const [t, i] = e(void 0);
|
|
16
|
+
return s(() => {
|
|
17
|
+
const p = o.subscribe((r) => {
|
|
18
|
+
r != null && r.data && i(r.data);
|
|
17
19
|
});
|
|
18
20
|
return () => {
|
|
19
|
-
|
|
21
|
+
p();
|
|
20
22
|
};
|
|
21
|
-
}, [
|
|
23
|
+
}, [o]), /* @__PURE__ */ c(n, { loading: !(t != null && t.summary), ...t == null ? void 0 : t.summary, successRate: (m = t == null ? void 0 : t.percentage) == null ? void 0 : m.correct });
|
|
22
24
|
};
|
|
23
25
|
export {
|
|
24
|
-
|
|
26
|
+
E as UserSummary
|
|
25
27
|
};
|
|
@@ -2,14 +2,16 @@ import { GamificationOverlay as o } from "./index.js";
|
|
|
2
2
|
import "react/jsx-runtime";
|
|
3
3
|
import "@linaria/react";
|
|
4
4
|
import "@nanostores/react";
|
|
5
|
-
import "react";
|
|
6
5
|
import "../../styles.js";
|
|
7
6
|
import "../../../gamification/detail/header/index.js";
|
|
8
7
|
import "@streamlayer/sdk-web-types";
|
|
9
8
|
import "../../../gamification/constants.js";
|
|
10
9
|
import "../../../gamification/detail/header/styles.js";
|
|
11
10
|
import "../../../icons/index.js";
|
|
11
|
+
import "react";
|
|
12
12
|
import "../../../gamification/user-statistics/index.js";
|
|
13
|
+
import "../../../skeleton/index.js";
|
|
14
|
+
import "../../../skeleton/styles.js";
|
|
13
15
|
import "../../../../utils/common.js";
|
|
14
16
|
import "../../../gamification/user-statistics/components/rank/index.js";
|
|
15
17
|
import "../../../gamification/user-statistics/components/rank/styles.js";
|
|
@@ -54,7 +56,7 @@ import "../../../gamification/vote/twitter-details/styles.js";
|
|
|
54
56
|
import "./Tabs.js";
|
|
55
57
|
import "../../useSdkScroll.js";
|
|
56
58
|
import "lodash.throttle";
|
|
57
|
-
import "../../../../index-
|
|
59
|
+
import "../../../../index-z0QjLiEL.js";
|
|
58
60
|
import "../../../gamification/tabs/index.js";
|
|
59
61
|
import "../../../gamification/tabs/styles.js";
|
|
60
62
|
import "./Leaderboard.js";
|
|
@@ -62,6 +64,8 @@ import "../../useClipboardCopy.js";
|
|
|
62
64
|
import "../../../gamification/copyNotification/index.js";
|
|
63
65
|
import "../../../gamification/copyNotification/styles.js";
|
|
64
66
|
import "../../../gamification/invite-link/index.js";
|
|
67
|
+
import "../../../../hooks/analytics.js";
|
|
68
|
+
import "@streamlayer/sdk-web-interfaces";
|
|
65
69
|
import "../../../gamification/invite-link/styles.js";
|
|
66
70
|
import "react-virtualized-auto-sizer";
|
|
67
71
|
import "react-window";
|
|
@@ -12,3 +12,13 @@ export declare const GamificationOverlay: React.FC<{
|
|
|
12
12
|
scrollNode: ScrollNodeRef;
|
|
13
13
|
headerNode: HeaderNodeRef;
|
|
14
14
|
}>;
|
|
15
|
+
/**
|
|
16
|
+
* Standalone version of the gamification overlay
|
|
17
|
+
* includes the question and user details, which are shown in a modal and should be available on any overlay
|
|
18
|
+
*/
|
|
19
|
+
export declare const GamificationOverlayStandalone: React.FC<{
|
|
20
|
+
gamification: GamificationClass;
|
|
21
|
+
className?: string;
|
|
22
|
+
responsiveStore: ResponsiveStore;
|
|
23
|
+
appNode: AppNodeRef;
|
|
24
|
+
}>;
|
|
@@ -1,18 +1,20 @@
|
|
|
1
|
-
import { jsx as
|
|
1
|
+
import { jsx as t, jsxs as f } from "react/jsx-runtime";
|
|
2
2
|
import { styled as a } from "@linaria/react";
|
|
3
|
-
import { useStore as
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import { ModalPortal as R } from "../../../modal/index.js";
|
|
3
|
+
import { useStore as s } from "@nanostores/react";
|
|
4
|
+
import { SDKWhiteContainer as h } from "../../styles.js";
|
|
5
|
+
import { VoteHeader as C } from "../../../gamification/detail/header/index.js";
|
|
6
|
+
import { UserStatistics as k } from "../../../gamification/user-statistics/index.js";
|
|
7
|
+
import { ModalPortal as I } from "../../../modal/index.js";
|
|
9
8
|
import { ShowIn as S } from "../../../show-in/index.js";
|
|
10
|
-
import { Question as
|
|
11
|
-
import { Tabs as
|
|
9
|
+
import { Question as U } from "./Question.js";
|
|
10
|
+
import { Tabs as w } from "./Tabs.js";
|
|
12
11
|
import "@streamlayer/sdk-web-types";
|
|
13
12
|
import "../../../gamification/constants.js";
|
|
14
13
|
import "../../../gamification/detail/header/styles.js";
|
|
15
14
|
import "../../../icons/index.js";
|
|
15
|
+
import "react";
|
|
16
|
+
import "../../../skeleton/index.js";
|
|
17
|
+
import "../../../skeleton/styles.js";
|
|
16
18
|
import "../../../../utils/common.js";
|
|
17
19
|
import "../../../gamification/user-statistics/components/rank/index.js";
|
|
18
20
|
import "../../../gamification/user-statistics/components/rank/styles.js";
|
|
@@ -53,7 +55,7 @@ import "../../../questions/twitter/styles.js";
|
|
|
53
55
|
import "../../../gamification/vote/twitter-details/styles.js";
|
|
54
56
|
import "../../useSdkScroll.js";
|
|
55
57
|
import "lodash.throttle";
|
|
56
|
-
import "../../../../index-
|
|
58
|
+
import "../../../../index-z0QjLiEL.js";
|
|
57
59
|
import "../../../gamification/tabs/index.js";
|
|
58
60
|
import "../../../gamification/tabs/styles.js";
|
|
59
61
|
import "./Leaderboard.js";
|
|
@@ -61,6 +63,8 @@ import "../../useClipboardCopy.js";
|
|
|
61
63
|
import "../../../gamification/copyNotification/index.js";
|
|
62
64
|
import "../../../gamification/copyNotification/styles.js";
|
|
63
65
|
import "../../../gamification/invite-link/index.js";
|
|
66
|
+
import "../../../../hooks/analytics.js";
|
|
67
|
+
import "@streamlayer/sdk-web-interfaces";
|
|
64
68
|
import "../../../gamification/invite-link/styles.js";
|
|
65
69
|
import "react-virtualized-auto-sizer";
|
|
66
70
|
import "react-window";
|
|
@@ -85,76 +89,77 @@ import "../../../button/index.js";
|
|
|
85
89
|
import "../../../button/styles.js";
|
|
86
90
|
import "../../../gamification/question/list/styles.js";
|
|
87
91
|
import "./UserSummary.js";
|
|
88
|
-
const
|
|
92
|
+
const x = () => S, c = /* @__PURE__ */ a(x())({
|
|
89
93
|
name: "OpenedContainer",
|
|
90
94
|
class: "oar61gl",
|
|
91
95
|
propsAsIs: !0
|
|
92
|
-
}),
|
|
96
|
+
}), y = /* @__PURE__ */ a("div")({
|
|
93
97
|
name: "UserContainer",
|
|
94
98
|
class: "u14zaal4",
|
|
95
99
|
propsAsIs: !1
|
|
96
|
-
}),
|
|
100
|
+
}), V = ({
|
|
97
101
|
correct: r,
|
|
98
|
-
incorrect:
|
|
102
|
+
incorrect: i
|
|
99
103
|
}) => {
|
|
100
|
-
const
|
|
101
|
-
return
|
|
102
|
-
},
|
|
104
|
+
const o = r + i;
|
|
105
|
+
return o === 0 ? 0 : Math.round(r / o * 100);
|
|
106
|
+
}, so = ({
|
|
103
107
|
gamification: r,
|
|
104
|
-
scrollStore:
|
|
105
|
-
className:
|
|
106
|
-
appNode:
|
|
107
|
-
scrollNode:
|
|
108
|
-
headerNode:
|
|
109
|
-
responsiveStore:
|
|
108
|
+
scrollStore: i,
|
|
109
|
+
className: o,
|
|
110
|
+
appNode: e,
|
|
111
|
+
scrollNode: p,
|
|
112
|
+
headerNode: m,
|
|
113
|
+
responsiveStore: n
|
|
114
|
+
}) => /* @__PURE__ */ t(w, {
|
|
115
|
+
appNode: e,
|
|
116
|
+
headerNode: m,
|
|
117
|
+
scrollStore: i,
|
|
118
|
+
scrollNode: p,
|
|
119
|
+
className: o,
|
|
120
|
+
gamification: r,
|
|
121
|
+
responsiveStore: n
|
|
122
|
+
}), lo = ({
|
|
123
|
+
gamification: r,
|
|
124
|
+
className: i,
|
|
125
|
+
appNode: o,
|
|
126
|
+
responsiveStore: e
|
|
110
127
|
}) => {
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
128
|
+
var l;
|
|
129
|
+
const p = s(r.openedQuestion.$store), m = s(r.openedUser), {
|
|
130
|
+
sdkInDesktopView: n
|
|
131
|
+
} = s(e, {
|
|
114
132
|
keys: ["sdkInDesktopView"]
|
|
115
|
-
}),
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
fixedView: k,
|
|
143
|
-
children: I
|
|
144
|
-
});
|
|
145
|
-
}, [i, t, r, e, m, l]);
|
|
146
|
-
return /* @__PURE__ */ c(U, {
|
|
147
|
-
children: [C, /* @__PURE__ */ o(F, {
|
|
148
|
-
appNode: i,
|
|
149
|
-
headerNode: h,
|
|
150
|
-
scrollStore: p,
|
|
151
|
-
scrollNode: f,
|
|
152
|
-
className: t,
|
|
153
|
-
gamification: r,
|
|
154
|
-
responsiveStore: s
|
|
155
|
-
})]
|
|
133
|
+
}), u = (((l = o.current) == null ? void 0 : l.getBoundingClientRect().y) || 0) < 0;
|
|
134
|
+
if (!o.current || !p && !m)
|
|
135
|
+
return null;
|
|
136
|
+
const d = p ? /* @__PURE__ */ t(c, {
|
|
137
|
+
className: i,
|
|
138
|
+
children: /* @__PURE__ */ t(U, {
|
|
139
|
+
gamification: r
|
|
140
|
+
})
|
|
141
|
+
}) : m ? /* @__PURE__ */ t(c, {
|
|
142
|
+
className: i,
|
|
143
|
+
children: /* @__PURE__ */ f(y, {
|
|
144
|
+
children: [/* @__PURE__ */ t(C, {
|
|
145
|
+
label: "Friend's Rank",
|
|
146
|
+
close: r.closeUser
|
|
147
|
+
}), /* @__PURE__ */ t(h, {
|
|
148
|
+
children: /* @__PURE__ */ t(k, {
|
|
149
|
+
...m,
|
|
150
|
+
successRate: V(m)
|
|
151
|
+
})
|
|
152
|
+
})]
|
|
153
|
+
})
|
|
154
|
+
}) : null;
|
|
155
|
+
return /* @__PURE__ */ t(I, {
|
|
156
|
+
container: o,
|
|
157
|
+
useContainer: !n,
|
|
158
|
+
fixedView: u,
|
|
159
|
+
children: d
|
|
156
160
|
});
|
|
157
161
|
};
|
|
158
162
|
export {
|
|
159
|
-
|
|
163
|
+
so as GamificationOverlay,
|
|
164
|
+
lo as GamificationOverlayStandalone
|
|
160
165
|
};
|
|
@@ -15,3 +15,11 @@ export declare const ActiveFeature: React.FC<{
|
|
|
15
15
|
headerNode: HeaderNodeRef;
|
|
16
16
|
className?: string;
|
|
17
17
|
}>;
|
|
18
|
+
/** render feature by type */
|
|
19
|
+
export declare const StandaloneFeature: React.FC<{
|
|
20
|
+
sdk: StreamLayerSDK;
|
|
21
|
+
feature: Features | null;
|
|
22
|
+
responsiveStore: ResponsiveStore;
|
|
23
|
+
appNode: AppNodeRef;
|
|
24
|
+
className?: string;
|
|
25
|
+
}>;
|