@cuemath/leap 2.8.21-rj-10 → 2.8.21-rj-12

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.
@@ -1,15 +1,17 @@
1
- import { PLUGINS as e } from "../../node_modules/@cuemath/analytics-v2/dist/constants.js";
2
- var _ = /* @__PURE__ */ ((t) => (t.PAGE_VIEWED = "page_viewed", t.CUSTOM_TEST_SUBMITTED = "custom_test_submitted", t.ACTIVITY_STARTED = "activity_started", t.ACTIVITY_TUTORIAL_SEEN = "activity_tutorial_seen", t.STREAK_ICON_CLICKED = "streak_icon_clicked", t.LEADERBOARD_BUTTON_CLICKED = "leaderboard_button_clicked", t))(_ || {});
3
- const I = {
4
- page_viewed: [e.MIXPANEL],
1
+ import { PLUGINS as t } from "../../node_modules/@cuemath/analytics-v2/dist/constants.js";
2
+ var _ = /* @__PURE__ */ ((e) => (e.PAGE_VIEWED = "page_viewed", e.CUSTOM_TEST_SUBMITTED = "custom_test_submitted", e.ACTIVITY_STARTED = "activity_started", e.ACTIVITY_TUTORIAL_SEEN = "activity_tutorial_seen", e.STREAK_ICON_CLICKED = "streak_icon_clicked", e.LEADERBOARD_BUTTON_CLICKED = "leaderboard_button_clicked", e.ONBOARDING_STEP_VIEWED = "onboarding_step_viewed", e.ONBOARDING_STEP_COMPLETED = "onboarding_step_completed", e))(_ || {});
3
+ const o = {
4
+ page_viewed: [t.MIXPANEL],
5
5
  // circle on leap mixpanel events
6
- activity_started: [e.MIXPANEL],
7
- activity_tutorial_seen: [e.MIXPANEL],
8
- streak_icon_clicked: [e.MIXPANEL],
9
- leaderboard_button_clicked: [e.MIXPANEL]
6
+ activity_started: [t.MIXPANEL],
7
+ activity_tutorial_seen: [t.MIXPANEL],
8
+ streak_icon_clicked: [t.MIXPANEL],
9
+ leaderboard_button_clicked: [t.MIXPANEL],
10
+ onboarding_step_viewed: [t.MIXPANEL],
11
+ onboarding_step_completed: [t.MIXPANEL]
10
12
  };
11
13
  export {
12
14
  _ as PLATFORM_EVENTS_STUDENT,
13
- I as PLATFORM_WHITELIST_EVENTS_STUDENT
15
+ o as PLATFORM_WHITELIST_EVENTS_STUDENT
14
16
  };
15
17
  //# sourceMappingURL=platform-events-student.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"platform-events-student.js","sources":["../../../src/features/analytics-events/platform-events-student.ts"],"sourcesContent":["import { PLUGINS } from '@cuemath/analytics-v2/dist/constants';\n\n/**\n ** Global/Platform specific events that needs to be tracked goes here\n ** Naming convention needs to be snake_case\n */\nexport enum PLATFORM_EVENTS_STUDENT {\n PAGE_VIEWED = 'page_viewed',\n CUSTOM_TEST_SUBMITTED = 'custom_test_submitted',\n\n // circle on leap mixpanel events\n ACTIVITY_STARTED = 'activity_started',\n ACTIVITY_TUTORIAL_SEEN = 'activity_tutorial_seen',\n STREAK_ICON_CLICKED = 'streak_icon_clicked',\n LEADERBOARD_BUTTON_CLICKED = 'leaderboard_button_clicked',\n}\n\n/**\n ** Events that need to be tracked at particular plugins\n ** Value will be array of strings.\n */\nexport const PLATFORM_WHITELIST_EVENTS_STUDENT = {\n [PLATFORM_EVENTS_STUDENT.PAGE_VIEWED]: [PLUGINS.MIXPANEL],\n\n // circle on leap mixpanel events\n [PLATFORM_EVENTS_STUDENT.ACTIVITY_STARTED]: [PLUGINS.MIXPANEL],\n [PLATFORM_EVENTS_STUDENT.ACTIVITY_TUTORIAL_SEEN]: [PLUGINS.MIXPANEL],\n [PLATFORM_EVENTS_STUDENT.STREAK_ICON_CLICKED]: [PLUGINS.MIXPANEL],\n [PLATFORM_EVENTS_STUDENT.LEADERBOARD_BUTTON_CLICKED]: [PLUGINS.MIXPANEL],\n};\n"],"names":["PLATFORM_EVENTS_STUDENT","PLATFORM_WHITELIST_EVENTS_STUDENT","PLUGINS"],"mappings":";AAMY,IAAAA,sBAAAA,OACVA,EAAA,cAAc,eACdA,EAAA,wBAAwB,yBAGxBA,EAAA,mBAAmB,oBACnBA,EAAA,yBAAyB,0BACzBA,EAAA,sBAAsB,uBACtBA,EAAA,6BAA6B,8BARnBA,IAAAA,KAAA,CAAA,CAAA;AAeL,MAAMC,IAAoC;AAAA,EAC9C,aAAsC,CAACC,EAAQ,QAAQ;AAAA;AAAA,EAGvD,kBAA2C,CAACA,EAAQ,QAAQ;AAAA,EAC5D,wBAAiD,CAACA,EAAQ,QAAQ;AAAA,EAClE,qBAA8C,CAACA,EAAQ,QAAQ;AAAA,EAC/D,4BAAqD,CAACA,EAAQ,QAAQ;AACzE;"}
1
+ {"version":3,"file":"platform-events-student.js","sources":["../../../src/features/analytics-events/platform-events-student.ts"],"sourcesContent":["import { PLUGINS } from '@cuemath/analytics-v2/dist/constants';\n\n/**\n ** Global/Platform specific events that needs to be tracked goes here\n ** Naming convention needs to be snake_case\n */\nexport enum PLATFORM_EVENTS_STUDENT {\n PAGE_VIEWED = 'page_viewed',\n CUSTOM_TEST_SUBMITTED = 'custom_test_submitted',\n\n // circle on leap mixpanel events\n ACTIVITY_STARTED = 'activity_started',\n ACTIVITY_TUTORIAL_SEEN = 'activity_tutorial_seen',\n STREAK_ICON_CLICKED = 'streak_icon_clicked',\n LEADERBOARD_BUTTON_CLICKED = 'leaderboard_button_clicked',\n ONBOARDING_STEP_VIEWED = 'onboarding_step_viewed',\n ONBOARDING_STEP_COMPLETED = 'onboarding_step_completed',\n}\n\n/**\n ** Events that need to be tracked at particular plugins\n ** Value will be array of strings.\n */\nexport const PLATFORM_WHITELIST_EVENTS_STUDENT = {\n [PLATFORM_EVENTS_STUDENT.PAGE_VIEWED]: [PLUGINS.MIXPANEL],\n\n // circle on leap mixpanel events\n [PLATFORM_EVENTS_STUDENT.ACTIVITY_STARTED]: [PLUGINS.MIXPANEL],\n [PLATFORM_EVENTS_STUDENT.ACTIVITY_TUTORIAL_SEEN]: [PLUGINS.MIXPANEL],\n [PLATFORM_EVENTS_STUDENT.STREAK_ICON_CLICKED]: [PLUGINS.MIXPANEL],\n [PLATFORM_EVENTS_STUDENT.LEADERBOARD_BUTTON_CLICKED]: [PLUGINS.MIXPANEL],\n [PLATFORM_EVENTS_STUDENT.ONBOARDING_STEP_VIEWED]: [PLUGINS.MIXPANEL],\n [PLATFORM_EVENTS_STUDENT.ONBOARDING_STEP_COMPLETED]: [PLUGINS.MIXPANEL],\n};\n"],"names":["PLATFORM_EVENTS_STUDENT","PLATFORM_WHITELIST_EVENTS_STUDENT","PLUGINS"],"mappings":";AAMY,IAAAA,sBAAAA,OACVA,EAAA,cAAc,eACdA,EAAA,wBAAwB,yBAGxBA,EAAA,mBAAmB,oBACnBA,EAAA,yBAAyB,0BACzBA,EAAA,sBAAsB,uBACtBA,EAAA,6BAA6B,8BAC7BA,EAAA,yBAAyB,0BACzBA,EAAA,4BAA4B,6BAVlBA,IAAAA,KAAA,CAAA,CAAA;AAiBL,MAAMC,IAAoC;AAAA,EAC9C,aAAsC,CAACC,EAAQ,QAAQ;AAAA;AAAA,EAGvD,kBAA2C,CAACA,EAAQ,QAAQ;AAAA,EAC5D,wBAAiD,CAACA,EAAQ,QAAQ;AAAA,EAClE,qBAA8C,CAACA,EAAQ,QAAQ;AAAA,EAC/D,4BAAqD,CAACA,EAAQ,QAAQ;AAAA,EACtE,wBAAiD,CAACA,EAAQ,QAAQ;AAAA,EAClE,2BAAoD,CAACA,EAAQ,QAAQ;AACxE;"}
@@ -0,0 +1,5 @@
1
+ var a = /* @__PURE__ */ ((t) => (t.LESSON_ACTIVITY = "skill_activity", t.GAMES_ACTIVITY = "games_activity", t.PUZZLE_ACTIVITY = "puzzle_activity", t.TUTORIAL = "tutorial", t.POINTS = "points", t.STREAK = "streak", t.LEADERBOARD = "leaderboard", t))(a || {});
2
+ export {
3
+ a as CIRCLE_ONBOARDING_ANALYTICS_STEPS
4
+ };
5
+ //# sourceMappingURL=CircleOnboardingSteps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CircleOnboardingSteps.js","sources":["../../../../src/features/circle-games/enum/CircleOnboardingSteps.ts"],"sourcesContent":["export enum CIRCLE_ONBOARDING_ANALYTICS_STEPS {\n LESSON_ACTIVITY = 'skill_activity',\n GAMES_ACTIVITY = 'games_activity',\n PUZZLE_ACTIVITY = 'puzzle_activity',\n TUTORIAL = 'tutorial',\n POINTS = 'points',\n STREAK = 'streak',\n LEADERBOARD = 'leaderboard',\n}\n"],"names":["CIRCLE_ONBOARDING_ANALYTICS_STEPS"],"mappings":"AAAY,IAAAA,sBAAAA,OACVA,EAAA,kBAAkB,kBAClBA,EAAA,iBAAiB,kBACjBA,EAAA,kBAAkB,mBAClBA,EAAA,WAAW,YACXA,EAAA,SAAS,UACTA,EAAA,SAAS,UACTA,EAAA,cAAc,eAPJA,IAAAA,KAAA,CAAA,CAAA;"}
@@ -1,6 +1,5 @@
1
- const _ = 500, E = 1500, S = 3e3, T = 200;
1
+ const _ = 500, E = 1500, S = 3e3;
2
2
  export {
3
- T as FIRST_COACHMARK_AFTER_MS,
4
3
  _ as GO_TO_NEXT_SLIDE_AFTER_MS,
5
4
  E as SHOW_LABEL_HIGHLIGHT_AFTER_MS,
6
5
  S as SHOW_NUDGE_AFTER_MS
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sources":["../../../../../src/features/circle-games/game-launcher/use-game-launcher-journey/constants.ts"],"sourcesContent":["export const GO_TO_NEXT_SLIDE_AFTER_MS = 500;\nexport const SHOW_LABEL_HIGHLIGHT_AFTER_MS = 1500;\nexport const SHOW_NUDGE_AFTER_MS = 3000;\nexport const FIRST_COACHMARK_AFTER_MS = 200;\n"],"names":["GO_TO_NEXT_SLIDE_AFTER_MS","SHOW_LABEL_HIGHLIGHT_AFTER_MS","SHOW_NUDGE_AFTER_MS","FIRST_COACHMARK_AFTER_MS"],"mappings":"AAAO,MAAMA,IAA4B,KAC5BC,IAAgC,MAChCC,IAAsB,KACtBC,IAA2B;"}
1
+ {"version":3,"file":"constants.js","sources":["../../../../../src/features/circle-games/game-launcher/use-game-launcher-journey/constants.ts"],"sourcesContent":["export const GO_TO_NEXT_SLIDE_AFTER_MS = 500;\nexport const SHOW_LABEL_HIGHLIGHT_AFTER_MS = 1500;\nexport const SHOW_NUDGE_AFTER_MS = 3000;\nexport const FIRST_COACHMARK_AFTER_MS = 200;\n"],"names":["GO_TO_NEXT_SLIDE_AFTER_MS","SHOW_LABEL_HIGHLIGHT_AFTER_MS","SHOW_NUDGE_AFTER_MS"],"mappings":"AAAO,MAAMA,IAA4B,KAC5BC,IAAgC,MAChCC,IAAsB;"}
@@ -1,185 +1,222 @@
1
- import { jsx as e, Fragment as R } from "react/jsx-runtime";
2
- import { useRef as u, useCallback as E, useMemo as Q } from "react";
3
- import V from "../../../../assets/line-icons/icons/next.js";
4
- import { IndicatorType as s } from "../../../journey/use-journey/constants.js";
5
- import { useJourney as j } from "../../../journey/use-journey/use-journey.js";
6
- import Z from "../../../ui/buttons/icon-button/icon-button.js";
7
- import b from "../../../ui/layout/flex-view.js";
8
- import d from "../../../ui/text/text.js";
9
- import { useCircleSounds as z } from "../../hooks/use-circle-sounds/use-circle-sounds.js";
10
- import { SegmentedGameCard as ee } from "../comps/segmented-game-card/segmented-game-card.js";
11
- import { GO_TO_NEXT_SLIDE_AFTER_MS as te, SHOW_LABEL_HIGHLIGHT_AFTER_MS as re, SHOW_NUDGE_AFTER_MS as ne, FIRST_COACHMARK_AFTER_MS as ie } from "./constants.js";
12
- import { ProjectType as oe } from "../../games/web-view/enums/project-type-enum.js";
13
- const Ee = ({
14
- onSegmentClick: C,
15
- setCarouselIndex: A,
16
- onJourneyComplete: L
1
+ import { jsx as e, Fragment as O } from "react/jsx-runtime";
2
+ import { useRef as T, useCallback as E, useMemo as re } from "react";
3
+ import j from "../../../../assets/line-icons/icons/next.js";
4
+ import { PLATFORM_EVENTS_STUDENT as C } from "../../../analytics-events/platform-events-student.js";
5
+ import { IndicatorType as h } from "../../../journey/use-journey/constants.js";
6
+ import { useJourney as ne } from "../../../journey/use-journey/use-journey.js";
7
+ import z from "../../../ui/buttons/icon-button/icon-button.js";
8
+ import { useUIContext as ie } from "../../../ui/context/context.js";
9
+ import P from "../../../ui/layout/flex-view.js";
10
+ import g from "../../../ui/text/text.js";
11
+ import { CIRCLE_ONBOARDING_ANALYTICS_STEPS as c } from "../../enum/CircleOnboardingSteps.js";
12
+ import { useCircleSounds as oe } from "../../hooks/use-circle-sounds/use-circle-sounds.js";
13
+ import { SegmentedGameCard as le } from "../comps/segmented-game-card/segmented-game-card.js";
14
+ import { GO_TO_NEXT_SLIDE_AFTER_MS as ce, SHOW_LABEL_HIGHLIGHT_AFTER_MS as ae, SHOW_NUDGE_AFTER_MS as se } from "./constants.js";
15
+ import { ProjectType as de } from "../../games/web-view/enums/project-type-enum.js";
16
+ const Ie = ({
17
+ onSegmentClick: L,
18
+ setCarouselIndex: b,
19
+ onJourneyComplete: I
17
20
  }) => {
18
- const c = u(null), i = u(null), t = u(null), a = u(null), T = u(!1), { playButtonSound: H } = z(), { nextCoachmark: o, setJourney: O } = j(), h = E(
19
- (n, l, r, m = !1) => {
20
- m || (H(), A((p) => p + 1), o(r, !1, te));
21
- const f = setTimeout(() => {
22
- clearTimeout(f), n.startLabelAnimation(l);
23
- }, re);
24
- o(r, !0, ne);
21
+ const a = T(null), o = T(null), r = T(null), s = T(null), R = T(!1), { playButtonSound: S } = oe(), { nextCoachmark: l, setJourney: N } = ne(), { onEvent: p } = ie(), y = E(
22
+ (t, n) => {
23
+ p(C.ONBOARDING_STEP_VIEWED, {
24
+ journey_id: t,
25
+ step: n
26
+ });
25
27
  },
26
- [o, H, A]
27
- ), _ = E(
28
- (n, l) => {
29
- C(n, oe.PUZZLE), o(l), L(l);
28
+ [p]
29
+ ), G = E(
30
+ (t, n) => {
31
+ p(C.ONBOARDING_STEP_COMPLETED, {
32
+ journey_id: t,
33
+ step: n
34
+ });
30
35
  },
31
- [o, L, C]
32
- ), y = E(
33
- (n, l, r) => {
34
- var k, S, v, G, B, I, x, N, U, $, W, F, X, M, Y, D, J;
35
- if (T.current || !((k = c == null ? void 0 : c.current) != null && k.nextBtnRef.current) || !((S = t == null ? void 0 : t.current) != null && S.segmentedCardWrapperRef.current) || !((v = i == null ? void 0 : i.current) != null && v.labelRef.current) || !((G = t == null ? void 0 : t.current) != null && G.labelRef.current) || !n)
36
+ [p]
37
+ ), m = E(
38
+ (t, n, i, d, f = !1) => {
39
+ f || (S(), b((A) => A + 1), l(d, !1, ce)), y(d, t);
40
+ const _ = setTimeout(() => {
41
+ clearTimeout(_), n.startLabelAnimation(i);
42
+ }, ae);
43
+ l(d, !0, se);
44
+ },
45
+ [l, S, b, y]
46
+ ), H = E(
47
+ (t, n) => {
48
+ L(t, de.PUZZLE), G(n, c.PUZZLE_ACTIVITY), l(n), I(n);
49
+ },
50
+ [l, I, L, G]
51
+ ), k = E(
52
+ (t, n, i) => {
53
+ var v, B, D, V, Y, U, M, x, W, $, X, F, Z, J, q, K, Q;
54
+ if (R.current || !((v = a == null ? void 0 : a.current) != null && v.nextBtnRef.current) || !((B = r == null ? void 0 : r.current) != null && B.segmentedCardWrapperRef.current) || !((D = o == null ? void 0 : o.current) != null && D.labelRef.current) || !((V = r == null ? void 0 : r.current) != null && V.labelRef.current) || !t)
36
55
  return;
37
- T.current = !0;
38
- const m = ((x = (I = (B = a.current) == null ? void 0 : B.labelRef) == null ? void 0 : I.current) == null ? void 0 : x.getBoundingClientRect()) || {
56
+ R.current = !0;
57
+ const d = ((M = (U = (Y = s.current) == null ? void 0 : Y.labelRef) == null ? void 0 : U.current) == null ? void 0 : M.getBoundingClientRect()) || {
39
58
  height: 0,
40
59
  width: 0
41
- }, f = (($ = (U = (N = i.current) == null ? void 0 : N.labelRef) == null ? void 0 : U.current) == null ? void 0 : $.getBoundingClientRect()) || {
60
+ }, f = (($ = (W = (x = o.current) == null ? void 0 : x.labelRef) == null ? void 0 : W.current) == null ? void 0 : $.getBoundingClientRect()) || {
42
61
  height: 0,
43
62
  width: 0
44
- }, p = ((X = (F = (W = t.current) == null ? void 0 : W.labelRef) == null ? void 0 : F.current) == null ? void 0 : X.getBoundingClientRect()) || {
63
+ }, _ = ((Z = (F = (X = r.current) == null ? void 0 : X.labelRef) == null ? void 0 : F.current) == null ? void 0 : Z.getBoundingClientRect()) || {
45
64
  height: 0,
46
65
  width: 0
47
- }, P = ((D = (Y = (M = t.current) == null ? void 0 : M.segmentedCardWrapperRef) == null ? void 0 : Y.current) == null ? void 0 : D.getBoundingClientRect()) || {
66
+ }, A = ((K = (q = (J = r.current) == null ? void 0 : J.segmentedCardWrapperRef) == null ? void 0 : q.current) == null ? void 0 : K.getBoundingClientRect()) || {
48
67
  height: 0,
49
68
  width: 0
50
69
  };
51
70
  let w = [];
52
- l && a.current && (w = [
71
+ n && s.current && (w = [
53
72
  {
54
- originalElementToHighlightRef: a.current.labelRef,
73
+ originalElementToHighlightRef: s.current.labelRef,
55
74
  isActive: !1,
56
- type: s.TOOLTIP,
57
- elementToHighlight: /* @__PURE__ */ e(R, {}),
75
+ type: h.TOOLTIP,
76
+ elementToHighlight: /* @__PURE__ */ e(O, {}),
58
77
  indicator: {
59
78
  position: "right",
60
79
  backgroundColor: "BLUE_4",
61
80
  width: 264,
62
- tooltipItem: /* @__PURE__ */ e(b, { children: /* @__PURE__ */ e(d, { $renderAs: "ab2-bold", children: "Get faster & stay ahead in school. Practice 3 new skills everyday." }) }),
63
- tooltipXCoOrdinates: m.width,
64
- tooltipYCoOrdinates: m.height / 2
81
+ tooltipItem: /* @__PURE__ */ e(P, { children: /* @__PURE__ */ e(g, { $renderAs: "ab2-bold", children: "Get faster & stay ahead in school. Practice 3 new skills everyday." }) }),
82
+ tooltipXCoOrdinates: d.width,
83
+ tooltipYCoOrdinates: d.height / 2
65
84
  }
66
85
  },
67
86
  {
68
- originalElementToHighlightRef: (J = c.current) == null ? void 0 : J.nextBtnRef,
87
+ originalElementToHighlightRef: (Q = a.current) == null ? void 0 : Q.nextBtnRef,
69
88
  isActive: !1,
70
- type: s.NUDGE,
89
+ type: h.NUDGE,
71
90
  elementToHighlight: /* @__PURE__ */ e(
72
- Z,
91
+ z,
73
92
  {
74
93
  renderAs: "secondary",
75
- Icon: V,
76
- onClick: () => h(i.current, "ORANGE_4", r),
77
- analyticsLabel: "HELLO "
94
+ Icon: j,
95
+ onClick: () => m(
96
+ c.GAMES_ACTIVITY,
97
+ o.current,
98
+ "ORANGE_4",
99
+ i
100
+ ),
101
+ analyticsLabel: C.ONBOARDING_STEP_COMPLETED,
102
+ analyticsProps: {
103
+ journey_id: i,
104
+ step: c.LESSON_ACTIVITY
105
+ }
78
106
  }
79
107
  ),
80
108
  indicator: {
81
109
  nudge: "click",
82
- content: /* @__PURE__ */ e(d, { $renderAs: "ab1", $color: "WHITE", children: "Click to proceed" }),
110
+ content: /* @__PURE__ */ e(g, { $renderAs: "ab1", $color: "WHITE", children: "Click to proceed" }),
83
111
  nudgePointerX: 0,
84
112
  nudgePointerY: 0
85
113
  }
86
114
  }
87
115
  ]);
88
- const K = [
116
+ const ee = [
89
117
  {
90
- originalElementToHighlightRef: i.current.labelRef,
118
+ originalElementToHighlightRef: o.current.labelRef,
91
119
  isActive: !1,
92
- type: s.TOOLTIP,
93
- elementToHighlight: /* @__PURE__ */ e(R, {}),
120
+ type: h.TOOLTIP,
121
+ elementToHighlight: /* @__PURE__ */ e(O, {}),
94
122
  indicator: {
95
123
  position: "right",
96
124
  backgroundColor: "ORANGE_4",
97
125
  width: 264,
98
- tooltipItem: /* @__PURE__ */ e(b, { children: /* @__PURE__ */ e(d, { $renderAs: "ab2-bold", children: "Train to think deeper & plan ahead. Play 3 new games everyday." }) }),
126
+ tooltipItem: /* @__PURE__ */ e(P, { children: /* @__PURE__ */ e(g, { $renderAs: "ab2-bold", children: "Train to think deeper & plan ahead. Play 3 new games everyday." }) }),
99
127
  tooltipXCoOrdinates: f.width,
100
128
  tooltipYCoOrdinates: f.height / 2
101
129
  }
102
130
  },
103
131
  {
104
- originalElementToHighlightRef: c.current.nextBtnRef,
132
+ originalElementToHighlightRef: a.current.nextBtnRef,
105
133
  isActive: !1,
106
- type: s.NUDGE,
134
+ type: h.NUDGE,
107
135
  elementToHighlight: /* @__PURE__ */ e(
108
- Z,
136
+ z,
109
137
  {
110
138
  renderAs: "secondary",
111
- Icon: V,
112
- onClick: () => h(t.current, "PURPLE_4", r),
113
- analyticsLabel: "HELLO "
139
+ Icon: j,
140
+ onClick: () => m(
141
+ c.PUZZLE_ACTIVITY,
142
+ r.current,
143
+ "PURPLE_4",
144
+ i
145
+ ),
146
+ analyticsLabel: C.ONBOARDING_STEP_COMPLETED,
147
+ analyticsProps: {
148
+ journey_id: i,
149
+ step: c.GAMES_ACTIVITY
150
+ }
114
151
  }
115
152
  ),
116
153
  indicator: {
117
154
  nudge: "click",
118
- content: /* @__PURE__ */ e(d, { $renderAs: "ab1", $color: "WHITE", children: "Click to proceed" }),
155
+ content: /* @__PURE__ */ e(g, { $renderAs: "ab1", $color: "WHITE", children: "Click to proceed" }),
119
156
  nudgePointerX: 0,
120
157
  nudgePointerY: 0
121
158
  }
122
159
  }
123
- ], q = [
160
+ ], te = [
124
161
  {
125
- originalElementToHighlightRef: t.current.labelRef,
162
+ originalElementToHighlightRef: r.current.labelRef,
126
163
  isActive: !1,
127
- type: s.TOOLTIP,
128
- elementToHighlight: /* @__PURE__ */ e(R, {}),
164
+ type: h.TOOLTIP,
165
+ elementToHighlight: /* @__PURE__ */ e(O, {}),
129
166
  indicator: {
130
167
  position: "right",
131
168
  backgroundColor: "PURPLE_4",
132
169
  width: 264,
133
- tooltipItem: /* @__PURE__ */ e(b, { children: /* @__PURE__ */ e(d, { $renderAs: "ab2-bold", children: "Think in new ways & stay sharp. Solve 3 new puzzles everyday." }) }),
134
- tooltipXCoOrdinates: p.width,
135
- tooltipYCoOrdinates: p.height / 2
170
+ tooltipItem: /* @__PURE__ */ e(P, { children: /* @__PURE__ */ e(g, { $renderAs: "ab2-bold", children: "Think in new ways & stay sharp. Solve 3 new puzzles everyday." }) }),
171
+ tooltipXCoOrdinates: _.width,
172
+ tooltipYCoOrdinates: _.height / 2
136
173
  }
137
174
  },
138
175
  {
139
- originalElementToHighlightRef: t.current.segmentedCardWrapperRef,
176
+ originalElementToHighlightRef: r.current.segmentedCardWrapperRef,
140
177
  isActive: !1,
141
- type: s.NUDGE,
178
+ type: h.NUDGE,
142
179
  elementToHighlight: /* @__PURE__ */ e(
143
- ee,
180
+ le,
144
181
  {
145
182
  label: "",
146
- value: n.data.filter((g) => g.solved).length,
147
- maxValue: n.data.length,
148
- initialValue: n.initialProgressValue,
149
- data: n.data.map((g) => ({
150
- card: g.cardLottie,
183
+ value: t.data.filter((u) => u.solved).length,
184
+ maxValue: t.data.length,
185
+ initialValue: t.initialProgressValue,
186
+ data: t.data.map((u) => ({
187
+ card: u.cardLottie,
151
188
  name: "",
152
189
  // We dont want to show the name of the puzzle in onboarding
153
- isCompleted: g.solved,
154
- onPress: () => _(g, r)
190
+ isCompleted: u.solved,
191
+ onPress: () => H(u, i)
155
192
  }))
156
193
  }
157
194
  ),
158
195
  indicator: {
159
196
  nudge: "click",
160
- content: /* @__PURE__ */ e(d, { $renderAs: "ab1", $color: "WHITE", children: "Click to solve a puzzle" }),
161
- nudgePointerX: P.width * 0.6,
162
- nudgePointerY: P.height * 0.4
197
+ content: /* @__PURE__ */ e(g, { $renderAs: "ab1", $color: "WHITE", children: "Click to solve a puzzle" }),
198
+ nudgePointerX: A.width * 0.6,
199
+ nudgePointerY: A.height * 0.4
163
200
  }
164
201
  }
165
202
  ];
166
- O(r, [...w, ...K, ...q]), o(r, !1, ie), l && a.current ? h(a.current, "BLUE_4", r, !0) : h(i.current, "ORANGE_4", r, !0);
203
+ N(i, [...w, ...ee, ...te]), l(i), n && s.current ? m(c.LESSON_ACTIVITY, s.current, "BLUE_4", i, !0) : m(c.GAMES_ACTIVITY, o.current, "ORANGE_4", i, !0);
167
204
  },
168
- [_, h, o, O]
205
+ [H, m, l, N]
169
206
  );
170
- return Q(
207
+ return re(
171
208
  () => ({
172
- gameRefs: i,
173
- puzzleRefs: t,
174
- lessonRefs: a,
175
- carouselNextBtnRef: c,
176
- isJourneyInProgress: T,
177
- startJourney: y
209
+ gameRefs: o,
210
+ puzzleRefs: r,
211
+ lessonRefs: s,
212
+ carouselNextBtnRef: a,
213
+ isJourneyInProgress: R,
214
+ startJourney: k
178
215
  }),
179
- [y]
216
+ [k]
180
217
  );
181
218
  };
182
219
  export {
183
- Ee as useGameLauncherJourney
220
+ Ie as useGameLauncherJourney
184
221
  };
185
222
  //# sourceMappingURL=use-game-launcher-journey.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-game-launcher-journey.js","sources":["../../../../../src/features/circle-games/game-launcher/use-game-launcher-journey/use-game-launcher-journey.tsx"],"sourcesContent":["import type { TJourneyId } from '../../../journey/journey-id/journey-id-types';\nimport type { ICoachmarkProps } from '../../../journey/use-journey/journey-context-types';\nimport type { IArrowTooltipProps } from '../../../ui/arrow-tooltip/arrow-tooltip-types';\nimport type { INudgeProps } from '../../../ui/nudge/nudge-types';\nimport type { TColorNames } from '../../../ui/types';\nimport type { ICarouselRefs } from '../comps/carousel/carousel-types';\nimport type { ISegmentedGameCardRefs } from '../comps/segmented-game-card/segmented-game-card-types';\nimport type {\n IProject,\n Puzzle,\n} from '../dal/use-get-circle-home-details-dal/use-get-circle-home-dal-types';\nimport type { IUseGameLauncherJourneyProps } from './use-game-launcher-journey-types';\n\nimport { useCallback, useMemo, useRef } from 'react';\n\nimport NextIcon from '../../../../assets/line-icons/icons/next';\nimport { IndicatorType } from '../../../journey/use-journey/constants';\nimport { useJourney } from '../../../journey/use-journey/use-journey';\nimport IconButton from '../../../ui/buttons/icon-button/icon-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\nimport { ProjectType } from '../../games/web-view/enums';\nimport { useCircleSounds } from '../../hooks/use-circle-sounds/use-circle-sounds';\nimport { SegmentedGameCard } from '../comps/segmented-game-card/segmented-game-card';\nimport {\n FIRST_COACHMARK_AFTER_MS,\n GO_TO_NEXT_SLIDE_AFTER_MS,\n SHOW_LABEL_HIGHLIGHT_AFTER_MS,\n SHOW_NUDGE_AFTER_MS,\n} from './constants';\n\nexport const useGameLauncherJourney = ({\n onSegmentClick,\n setCarouselIndex,\n onJourneyComplete,\n}: IUseGameLauncherJourneyProps) => {\n const carouselNextBtnRef = useRef<ICarouselRefs>(null);\n const gameRefs = useRef<ISegmentedGameCardRefs>(null);\n const puzzleRefs = useRef<ISegmentedGameCardRefs>(null);\n const lessonRefs = useRef<ISegmentedGameCardRefs>(null);\n\n const isJourneyInProgress = useRef(false);\n\n const { playButtonSound } = useCircleSounds();\n const { nextCoachmark, setJourney } = useJourney();\n\n const goToNextCard = useCallback(\n (\n refOfNextSlide: ISegmentedGameCardRefs,\n color: TColorNames,\n journeyId: TJourneyId,\n isFirstSlide: boolean = false,\n ) => {\n if (!isFirstSlide) {\n playButtonSound();\n setCarouselIndex((prev: number) => prev + 1);\n nextCoachmark(journeyId, false, GO_TO_NEXT_SLIDE_AFTER_MS);\n }\n\n const animateLabelTimer = setTimeout(() => {\n clearTimeout(animateLabelTimer);\n refOfNextSlide.startLabelAnimation(color);\n }, SHOW_LABEL_HIGHLIGHT_AFTER_MS);\n\n nextCoachmark(journeyId, true, SHOW_NUDGE_AFTER_MS);\n },\n [nextCoachmark, playButtonSound, setCarouselIndex],\n );\n\n const endJourney = useCallback(\n (puzzlesData: Puzzle, journeyId: TJourneyId) => {\n onSegmentClick(puzzlesData, ProjectType.PUZZLE);\n nextCoachmark(journeyId);\n onJourneyComplete(journeyId);\n },\n [nextCoachmark, onJourneyComplete, onSegmentClick],\n );\n\n const startJourney = useCallback(\n (puzzlesData: IProject<Puzzle>, isLessonAvailable: boolean, journeyId: TJourneyId) => {\n if (isJourneyInProgress.current) {\n return;\n }\n\n // If element refs are not available return, this is just for type safety\n if (\n !carouselNextBtnRef?.current?.nextBtnRef.current ||\n !puzzleRefs?.current?.segmentedCardWrapperRef.current ||\n !gameRefs?.current?.labelRef.current ||\n !puzzleRefs?.current?.labelRef.current ||\n !puzzlesData\n ) {\n return;\n }\n\n isJourneyInProgress.current = true;\n const lessonLabelDims = lessonRefs.current?.labelRef?.current?.getBoundingClientRect() || {\n height: 0,\n width: 0,\n };\n const gameLabelDims = gameRefs.current?.labelRef?.current?.getBoundingClientRect() || {\n height: 0,\n width: 0,\n };\n const puzzleLabelDims = puzzleRefs.current?.labelRef?.current?.getBoundingClientRect() || {\n height: 0,\n width: 0,\n };\n\n const launcherDims =\n puzzleRefs.current?.segmentedCardWrapperRef?.current?.getBoundingClientRect() || {\n height: 0,\n width: 0,\n };\n\n let lessonSteps: ICoachmarkProps[] = [];\n\n if (isLessonAvailable && lessonRefs.current) {\n lessonSteps = [\n {\n originalElementToHighlightRef: lessonRefs.current.labelRef,\n isActive: false,\n type: IndicatorType.TOOLTIP,\n elementToHighlight: <></>,\n indicator: {\n position: 'right',\n backgroundColor: 'BLUE_4',\n width: 264,\n tooltipItem: (\n <FlexView>\n <Text $renderAs=\"ab2-bold\">\n Get faster & stay ahead in school. Practice 3 new skills everyday.\n </Text>\n </FlexView>\n ),\n tooltipXCoOrdinates: lessonLabelDims.width,\n tooltipYCoOrdinates: lessonLabelDims.height / 2,\n } as IArrowTooltipProps,\n },\n {\n originalElementToHighlightRef: carouselNextBtnRef.current?.nextBtnRef,\n isActive: false,\n type: IndicatorType.NUDGE,\n elementToHighlight: (\n <IconButton\n renderAs=\"secondary\"\n Icon={NextIcon}\n onClick={() =>\n goToNextCard(gameRefs.current as ISegmentedGameCardRefs, 'ORANGE_4', journeyId)\n }\n analyticsLabel=\"HELLO \"\n />\n ),\n indicator: {\n nudge: 'click',\n content: (\n <Text $renderAs=\"ab1\" $color=\"WHITE\">\n Click to proceed\n </Text>\n ),\n nudgePointerX: 0,\n nudgePointerY: 0,\n } as INudgeProps,\n },\n ];\n }\n\n const gameSteps: ICoachmarkProps[] = [\n {\n originalElementToHighlightRef: gameRefs.current.labelRef,\n isActive: false,\n type: IndicatorType.TOOLTIP,\n elementToHighlight: <></>,\n indicator: {\n position: 'right',\n backgroundColor: 'ORANGE_4',\n width: 264,\n tooltipItem: (\n <FlexView>\n <Text $renderAs=\"ab2-bold\">\n Train to think deeper & plan ahead. Play 3 new games everyday.\n </Text>\n </FlexView>\n ),\n tooltipXCoOrdinates: gameLabelDims.width,\n tooltipYCoOrdinates: gameLabelDims.height / 2,\n } as IArrowTooltipProps,\n },\n {\n originalElementToHighlightRef: carouselNextBtnRef.current.nextBtnRef,\n isActive: false,\n type: IndicatorType.NUDGE,\n elementToHighlight: (\n <IconButton\n renderAs=\"secondary\"\n Icon={NextIcon}\n onClick={() =>\n goToNextCard(puzzleRefs.current as ISegmentedGameCardRefs, 'PURPLE_4', journeyId)\n }\n analyticsLabel=\"HELLO \"\n />\n ),\n indicator: {\n nudge: 'click',\n content: (\n <Text $renderAs=\"ab1\" $color=\"WHITE\">\n Click to proceed\n </Text>\n ),\n nudgePointerX: 0,\n nudgePointerY: 0,\n } as INudgeProps,\n },\n ];\n\n const puzzleSteps: ICoachmarkProps[] = [\n {\n originalElementToHighlightRef: puzzleRefs.current.labelRef,\n isActive: false,\n type: IndicatorType.TOOLTIP,\n elementToHighlight: <></>,\n indicator: {\n position: 'right',\n backgroundColor: 'PURPLE_4',\n width: 264,\n tooltipItem: (\n <FlexView>\n <Text $renderAs=\"ab2-bold\">\n Think in new ways & stay sharp. Solve 3 new puzzles everyday.\n </Text>\n </FlexView>\n ),\n tooltipXCoOrdinates: puzzleLabelDims.width,\n tooltipYCoOrdinates: puzzleLabelDims.height / 2,\n } as IArrowTooltipProps,\n },\n {\n originalElementToHighlightRef: puzzleRefs.current.segmentedCardWrapperRef,\n isActive: false,\n type: IndicatorType.NUDGE,\n elementToHighlight: (\n <SegmentedGameCard\n label={''} // This is intentionally left blank to avoid showing the label\n value={puzzlesData.data.filter(puzzle => puzzle.solved).length}\n maxValue={puzzlesData.data.length}\n initialValue={puzzlesData.initialProgressValue}\n data={puzzlesData.data.map(puzzle => ({\n card: puzzle.cardLottie,\n name: '', // We dont want to show the name of the puzzle in onboarding\n isCompleted: puzzle.solved,\n onPress: () => endJourney(puzzle, journeyId),\n }))}\n />\n ),\n indicator: {\n nudge: 'click',\n content: (\n <Text $renderAs=\"ab1\" $color=\"WHITE\">\n Click to solve a puzzle\n </Text>\n ),\n nudgePointerX: launcherDims.width * 0.6,\n nudgePointerY: launcherDims.height * 0.4,\n } as INudgeProps,\n },\n ];\n\n setJourney(journeyId, [...lessonSteps, ...gameSteps, ...puzzleSteps]);\n\n nextCoachmark(journeyId, false, FIRST_COACHMARK_AFTER_MS);\n if (isLessonAvailable && lessonRefs.current) {\n goToNextCard(lessonRefs.current, 'BLUE_4', journeyId, true);\n } else {\n goToNextCard(gameRefs.current, 'ORANGE_4', journeyId, true);\n }\n },\n [endJourney, goToNextCard, nextCoachmark, setJourney],\n );\n\n const data = useMemo(\n () => ({\n gameRefs,\n puzzleRefs,\n lessonRefs,\n carouselNextBtnRef,\n isJourneyInProgress,\n startJourney,\n }),\n [startJourney],\n );\n\n return data;\n};\n"],"names":["useGameLauncherJourney","onSegmentClick","setCarouselIndex","onJourneyComplete","carouselNextBtnRef","useRef","gameRefs","puzzleRefs","lessonRefs","isJourneyInProgress","playButtonSound","useCircleSounds","nextCoachmark","setJourney","useJourney","goToNextCard","useCallback","refOfNextSlide","color","journeyId","isFirstSlide","prev","GO_TO_NEXT_SLIDE_AFTER_MS","animateLabelTimer","SHOW_LABEL_HIGHLIGHT_AFTER_MS","SHOW_NUDGE_AFTER_MS","endJourney","puzzlesData","ProjectType","startJourney","isLessonAvailable","_a","_b","_c","_d","lessonLabelDims","_g","_f","_e","gameLabelDims","_j","_i","_h","puzzleLabelDims","_m","_l","_k","launcherDims","_p","_o","_n","lessonSteps","IndicatorType","jsx","Fragment","FlexView","Text","_q","IconButton","NextIcon","gameSteps","puzzleSteps","SegmentedGameCard","puzzle","FIRST_COACHMARK_AFTER_MS","useMemo"],"mappings":";;;;;;;;;;;;AA+BO,MAAMA,KAAyB,CAAC;AAAA,EACrC,gBAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,mBAAAC;AACF,MAAoC;AAC5B,QAAAC,IAAqBC,EAAsB,IAAI,GAC/CC,IAAWD,EAA+B,IAAI,GAC9CE,IAAaF,EAA+B,IAAI,GAChDG,IAAaH,EAA+B,IAAI,GAEhDI,IAAsBJ,EAAO,EAAK,GAElC,EAAE,iBAAAK,MAAoBC,KACtB,EAAE,eAAAC,GAAe,YAAAC,EAAW,IAAIC,EAAW,GAE3CC,IAAeC;AAAA,IACnB,CACEC,GACAC,GACAC,GACAC,IAAwB,OACrB;AACH,MAAKA,MACaV,KACCR,EAAA,CAACmB,MAAiBA,IAAO,CAAC,GAC7BT,EAAAO,GAAW,IAAOG,EAAyB;AAGrD,YAAAC,IAAoB,WAAW,MAAM;AACzC,qBAAaA,CAAiB,GAC9BN,EAAe,oBAAoBC,CAAK;AAAA,SACvCM,EAA6B;AAElB,MAAAZ,EAAAO,GAAW,IAAMM,EAAmB;AAAA,IACpD;AAAA,IACA,CAACb,GAAeF,GAAiBR,CAAgB;AAAA,EAAA,GAG7CwB,IAAaV;AAAA,IACjB,CAACW,GAAqBR,MAA0B;AAC/B,MAAAlB,EAAA0B,GAAaC,GAAY,MAAM,GAC9ChB,EAAcO,CAAS,GACvBhB,EAAkBgB,CAAS;AAAA,IAC7B;AAAA,IACA,CAACP,GAAeT,GAAmBF,CAAc;AAAA,EAAA,GAG7C4B,IAAeb;AAAA,IACnB,CAACW,GAA+BG,GAA4BX,MAA0B;;AAOlF,UANEV,EAAoB,WAMtB,GAACsB,IAAA3B,KAAA,gBAAAA,EAAoB,YAApB,QAAA2B,EAA6B,WAAW,YACzC,GAACC,IAAAzB,KAAA,gBAAAA,EAAY,YAAZ,QAAAyB,EAAqB,wBAAwB,YAC9C,GAACC,IAAA3B,KAAA,gBAAAA,EAAU,YAAV,QAAA2B,EAAmB,SAAS,YAC7B,GAACC,IAAA3B,KAAA,gBAAAA,EAAY,YAAZ,QAAA2B,EAAqB,SAAS,YAC/B,CAACP;AAED;AAGF,MAAAlB,EAAoB,UAAU;AAC9B,YAAM0B,MAAkBC,KAAAC,KAAAC,IAAA9B,EAAW,YAAX,gBAAA8B,EAAoB,aAApB,gBAAAD,EAA8B,YAA9B,gBAAAD,EAAuC,4BAA2B;AAAA,QACxF,QAAQ;AAAA,QACR,OAAO;AAAA,MAAA,GAEHG,MAAgBC,KAAAC,KAAAC,IAAApC,EAAS,YAAT,gBAAAoC,EAAkB,aAAlB,gBAAAD,EAA4B,YAA5B,gBAAAD,EAAqC,4BAA2B;AAAA,QACpF,QAAQ;AAAA,QACR,OAAO;AAAA,MAAA,GAEHG,MAAkBC,KAAAC,KAAAC,IAAAvC,EAAW,YAAX,gBAAAuC,EAAoB,aAApB,gBAAAD,EAA8B,YAA9B,gBAAAD,EAAuC,4BAA2B;AAAA,QACxF,QAAQ;AAAA,QACR,OAAO;AAAA,MAAA,GAGHG,MACJC,KAAAC,KAAAC,IAAA3C,EAAW,YAAX,gBAAA2C,EAAoB,4BAApB,gBAAAD,EAA6C,YAA7C,gBAAAD,EAAsD,4BAA2B;AAAA,QAC/E,QAAQ;AAAA,QACR,OAAO;AAAA,MAAA;AAGX,UAAIG,IAAiC,CAAA;AAEjC,MAAArB,KAAqBtB,EAAW,YACpB2C,IAAA;AAAA,QACZ;AAAA,UACE,+BAA+B3C,EAAW,QAAQ;AAAA,UAClD,UAAU;AAAA,UACV,MAAM4C,EAAc;AAAA,UACpB,oBAAsB,gBAAAC,EAAAC,GAAA,EAAA;AAAA,UACtB,WAAW;AAAA,YACT,UAAU;AAAA,YACV,iBAAiB;AAAA,YACjB,OAAO;AAAA,YACP,+BACGC,GACC,EAAA,UAAA,gBAAAF,EAACG,KAAK,WAAU,YAAW,gFAE3B,EACF,CAAA;AAAA,YAEF,qBAAqBrB,EAAgB;AAAA,YACrC,qBAAqBA,EAAgB,SAAS;AAAA,UAChD;AAAA,QACF;AAAA,QACA;AAAA,UACE,gCAA+BsB,IAAArD,EAAmB,YAAnB,gBAAAqD,EAA4B;AAAA,UAC3D,UAAU;AAAA,UACV,MAAML,EAAc;AAAA,UACpB,oBACE,gBAAAC;AAAA,YAACK;AAAA,YAAA;AAAA,cACC,UAAS;AAAA,cACT,MAAMC;AAAA,cACN,SAAS,MACP5C,EAAaT,EAAS,SAAmC,YAAYa,CAAS;AAAA,cAEhF,gBAAe;AAAA,YAAA;AAAA,UACjB;AAAA,UAEF,WAAW;AAAA,YACT,OAAO;AAAA,YACP,SACG,gBAAAkC,EAAAG,GAAA,EAAK,WAAU,OAAM,QAAO,SAAQ,UAErC,oBAAA;AAAA,YAEF,eAAe;AAAA,YACf,eAAe;AAAA,UACjB;AAAA,QACF;AAAA,MAAA;AAIJ,YAAMI,IAA+B;AAAA,QACnC;AAAA,UACE,+BAA+BtD,EAAS,QAAQ;AAAA,UAChD,UAAU;AAAA,UACV,MAAM8C,EAAc;AAAA,UACpB,oBAAsB,gBAAAC,EAAAC,GAAA,EAAA;AAAA,UACtB,WAAW;AAAA,YACT,UAAU;AAAA,YACV,iBAAiB;AAAA,YACjB,OAAO;AAAA,YACP,+BACGC,GACC,EAAA,UAAA,gBAAAF,EAACG,KAAK,WAAU,YAAW,4EAE3B,EACF,CAAA;AAAA,YAEF,qBAAqBjB,EAAc;AAAA,YACnC,qBAAqBA,EAAc,SAAS;AAAA,UAC9C;AAAA,QACF;AAAA,QACA;AAAA,UACE,+BAA+BnC,EAAmB,QAAQ;AAAA,UAC1D,UAAU;AAAA,UACV,MAAMgD,EAAc;AAAA,UACpB,oBACE,gBAAAC;AAAA,YAACK;AAAA,YAAA;AAAA,cACC,UAAS;AAAA,cACT,MAAMC;AAAA,cACN,SAAS,MACP5C,EAAaR,EAAW,SAAmC,YAAYY,CAAS;AAAA,cAElF,gBAAe;AAAA,YAAA;AAAA,UACjB;AAAA,UAEF,WAAW;AAAA,YACT,OAAO;AAAA,YACP,SACG,gBAAAkC,EAAAG,GAAA,EAAK,WAAU,OAAM,QAAO,SAAQ,UAErC,oBAAA;AAAA,YAEF,eAAe;AAAA,YACf,eAAe;AAAA,UACjB;AAAA,QACF;AAAA,MAAA,GAGIK,IAAiC;AAAA,QACrC;AAAA,UACE,+BAA+BtD,EAAW,QAAQ;AAAA,UAClD,UAAU;AAAA,UACV,MAAM6C,EAAc;AAAA,UACpB,oBAAsB,gBAAAC,EAAAC,GAAA,EAAA;AAAA,UACtB,WAAW;AAAA,YACT,UAAU;AAAA,YACV,iBAAiB;AAAA,YACjB,OAAO;AAAA,YACP,+BACGC,GACC,EAAA,UAAA,gBAAAF,EAACG,KAAK,WAAU,YAAW,2EAE3B,EACF,CAAA;AAAA,YAEF,qBAAqBb,EAAgB;AAAA,YACrC,qBAAqBA,EAAgB,SAAS;AAAA,UAChD;AAAA,QACF;AAAA,QACA;AAAA,UACE,+BAA+BpC,EAAW,QAAQ;AAAA,UAClD,UAAU;AAAA,UACV,MAAM6C,EAAc;AAAA,UACpB,oBACE,gBAAAC;AAAA,YAACS;AAAA,YAAA;AAAA,cACC,OAAO;AAAA,cACP,OAAOnC,EAAY,KAAK,OAAO,CAAUoC,MAAAA,EAAO,MAAM,EAAE;AAAA,cACxD,UAAUpC,EAAY,KAAK;AAAA,cAC3B,cAAcA,EAAY;AAAA,cAC1B,MAAMA,EAAY,KAAK,IAAI,CAAWoC,OAAA;AAAA,gBACpC,MAAMA,EAAO;AAAA,gBACb,MAAM;AAAA;AAAA,gBACN,aAAaA,EAAO;AAAA,gBACpB,SAAS,MAAMrC,EAAWqC,GAAQ5C,CAAS;AAAA,cAAA,EAC3C;AAAA,YAAA;AAAA,UACJ;AAAA,UAEF,WAAW;AAAA,YACT,OAAO;AAAA,YACP,SACG,gBAAAkC,EAAAG,GAAA,EAAK,WAAU,OAAM,QAAO,SAAQ,UAErC,2BAAA;AAAA,YAEF,eAAeT,EAAa,QAAQ;AAAA,YACpC,eAAeA,EAAa,SAAS;AAAA,UACvC;AAAA,QACF;AAAA,MAAA;AAGS,MAAAlC,EAAAM,GAAW,CAAC,GAAGgC,GAAa,GAAGS,GAAW,GAAGC,CAAW,CAAC,GAEtDjD,EAAAO,GAAW,IAAO6C,EAAwB,GACpDlC,KAAqBtB,EAAW,UAClCO,EAAaP,EAAW,SAAS,UAAUW,GAAW,EAAI,IAE1DJ,EAAaT,EAAS,SAAS,YAAYa,GAAW,EAAI;AAAA,IAE9D;AAAA,IACA,CAACO,GAAYX,GAAcH,GAAeC,CAAU;AAAA,EAAA;AAe/C,SAZMoD;AAAA,IACX,OAAO;AAAA,MACL,UAAA3D;AAAA,MACA,YAAAC;AAAA,MACA,YAAAC;AAAA,MACA,oBAAAJ;AAAA,MACA,qBAAAK;AAAA,MACA,cAAAoB;AAAA,IAAA;AAAA,IAEF,CAACA,CAAY;AAAA,EAAA;AAIjB;"}
1
+ {"version":3,"file":"use-game-launcher-journey.js","sources":["../../../../../src/features/circle-games/game-launcher/use-game-launcher-journey/use-game-launcher-journey.tsx"],"sourcesContent":["import type { TJourneyId } from '../../../journey/journey-id/journey-id-types';\nimport type { ICoachmarkProps } from '../../../journey/use-journey/journey-context-types';\nimport type { IArrowTooltipProps } from '../../../ui/arrow-tooltip/arrow-tooltip-types';\nimport type { INudgeProps } from '../../../ui/nudge/nudge-types';\nimport type { TColorNames } from '../../../ui/types';\nimport type { ICarouselRefs } from '../comps/carousel/carousel-types';\nimport type { ISegmentedGameCardRefs } from '../comps/segmented-game-card/segmented-game-card-types';\nimport type {\n IProject,\n Puzzle,\n} from '../dal/use-get-circle-home-details-dal/use-get-circle-home-dal-types';\nimport type { IUseGameLauncherJourneyProps } from './use-game-launcher-journey-types';\n\nimport { useCallback, useMemo, useRef } from 'react';\n\nimport NextIcon from '../../../../assets/line-icons/icons/next';\nimport { PLATFORM_EVENTS_STUDENT as AnalyticsLabel } from '../../../analytics-events/platform-events-student';\nimport { IndicatorType } from '../../../journey/use-journey/constants';\nimport { useJourney } from '../../../journey/use-journey/use-journey';\nimport IconButton from '../../../ui/buttons/icon-button/icon-button';\nimport { useUIContext } from '../../../ui/context/context';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Text from '../../../ui/text/text';\nimport { CIRCLE_ONBOARDING_ANALYTICS_STEPS as ActionEvent } from '../../enum/CircleOnboardingSteps';\nimport { ProjectType } from '../../games/web-view/enums';\nimport { useCircleSounds } from '../../hooks/use-circle-sounds/use-circle-sounds';\nimport { SegmentedGameCard } from '../comps/segmented-game-card/segmented-game-card';\nimport {\n GO_TO_NEXT_SLIDE_AFTER_MS,\n SHOW_LABEL_HIGHLIGHT_AFTER_MS,\n SHOW_NUDGE_AFTER_MS,\n} from './constants';\n\nexport const useGameLauncherJourney = ({\n onSegmentClick,\n setCarouselIndex,\n onJourneyComplete,\n}: IUseGameLauncherJourneyProps) => {\n const carouselNextBtnRef = useRef<ICarouselRefs>(null);\n const gameRefs = useRef<ISegmentedGameCardRefs>(null);\n const puzzleRefs = useRef<ISegmentedGameCardRefs>(null);\n const lessonRefs = useRef<ISegmentedGameCardRefs>(null);\n\n const isJourneyInProgress = useRef(false);\n\n const { playButtonSound } = useCircleSounds();\n const { nextCoachmark, setJourney } = useJourney();\n const { onEvent: trackAnalytics } = useUIContext();\n\n const trackEventViewed = useCallback(\n (journeyId: TJourneyId, step: ActionEvent) => {\n trackAnalytics(AnalyticsLabel.ONBOARDING_STEP_VIEWED, {\n journey_id: journeyId,\n step,\n });\n },\n [trackAnalytics],\n );\n const trackEventCompleted = useCallback(\n (journeyId: TJourneyId, step: ActionEvent) => {\n trackAnalytics(AnalyticsLabel.ONBOARDING_STEP_COMPLETED, {\n journey_id: journeyId,\n step,\n });\n },\n [trackAnalytics],\n );\n\n const goToNextCard = useCallback(\n (\n analyticsLabelViewed: ActionEvent,\n refOfNextSlide: ISegmentedGameCardRefs,\n color: TColorNames,\n journeyId: TJourneyId,\n isFirstSlide: boolean = false,\n ) => {\n if (!isFirstSlide) {\n playButtonSound();\n setCarouselIndex((prev: number) => prev + 1);\n nextCoachmark(journeyId, false, GO_TO_NEXT_SLIDE_AFTER_MS);\n }\n\n trackEventViewed(journeyId, analyticsLabelViewed);\n\n const animateLabelTimer = setTimeout(() => {\n clearTimeout(animateLabelTimer);\n refOfNextSlide.startLabelAnimation(color);\n }, SHOW_LABEL_HIGHLIGHT_AFTER_MS);\n\n nextCoachmark(journeyId, true, SHOW_NUDGE_AFTER_MS);\n },\n [nextCoachmark, playButtonSound, setCarouselIndex, trackEventViewed],\n );\n\n const endJourney = useCallback(\n (puzzlesData: Puzzle, journeyId: TJourneyId) => {\n onSegmentClick(puzzlesData, ProjectType.PUZZLE);\n trackEventCompleted(journeyId, ActionEvent.PUZZLE_ACTIVITY);\n nextCoachmark(journeyId);\n onJourneyComplete(journeyId);\n },\n [nextCoachmark, onJourneyComplete, onSegmentClick, trackEventCompleted],\n );\n\n const startJourney = useCallback(\n (puzzlesData: IProject<Puzzle>, isLessonAvailable: boolean, journeyId: TJourneyId) => {\n if (isJourneyInProgress.current) {\n return;\n }\n\n // If element refs are not available return, this is just for type safety\n if (\n !carouselNextBtnRef?.current?.nextBtnRef.current ||\n !puzzleRefs?.current?.segmentedCardWrapperRef.current ||\n !gameRefs?.current?.labelRef.current ||\n !puzzleRefs?.current?.labelRef.current ||\n !puzzlesData\n ) {\n return;\n }\n\n isJourneyInProgress.current = true;\n const lessonLabelDims = lessonRefs.current?.labelRef?.current?.getBoundingClientRect() || {\n height: 0,\n width: 0,\n };\n const gameLabelDims = gameRefs.current?.labelRef?.current?.getBoundingClientRect() || {\n height: 0,\n width: 0,\n };\n const puzzleLabelDims = puzzleRefs.current?.labelRef?.current?.getBoundingClientRect() || {\n height: 0,\n width: 0,\n };\n\n const launcherDims =\n puzzleRefs.current?.segmentedCardWrapperRef?.current?.getBoundingClientRect() || {\n height: 0,\n width: 0,\n };\n\n let lessonSteps: ICoachmarkProps[] = [];\n\n if (isLessonAvailable && lessonRefs.current) {\n lessonSteps = [\n {\n originalElementToHighlightRef: lessonRefs.current.labelRef,\n isActive: false,\n type: IndicatorType.TOOLTIP,\n elementToHighlight: <></>,\n indicator: {\n position: 'right',\n backgroundColor: 'BLUE_4',\n width: 264,\n tooltipItem: (\n <FlexView>\n <Text $renderAs=\"ab2-bold\">\n Get faster & stay ahead in school. Practice 3 new skills everyday.\n </Text>\n </FlexView>\n ),\n tooltipXCoOrdinates: lessonLabelDims.width,\n tooltipYCoOrdinates: lessonLabelDims.height / 2,\n } as IArrowTooltipProps,\n },\n {\n originalElementToHighlightRef: carouselNextBtnRef.current?.nextBtnRef,\n isActive: false,\n type: IndicatorType.NUDGE,\n elementToHighlight: (\n <IconButton\n renderAs=\"secondary\"\n Icon={NextIcon}\n onClick={() =>\n goToNextCard(\n ActionEvent.GAMES_ACTIVITY,\n gameRefs.current as ISegmentedGameCardRefs,\n 'ORANGE_4',\n journeyId,\n )\n }\n analyticsLabel={AnalyticsLabel.ONBOARDING_STEP_COMPLETED}\n analyticsProps={{\n journey_id: journeyId,\n step: ActionEvent.LESSON_ACTIVITY,\n }}\n />\n ),\n indicator: {\n nudge: 'click',\n content: (\n <Text $renderAs=\"ab1\" $color=\"WHITE\">\n Click to proceed\n </Text>\n ),\n nudgePointerX: 0,\n nudgePointerY: 0,\n } as INudgeProps,\n },\n ];\n }\n\n const gameSteps: ICoachmarkProps[] = [\n {\n originalElementToHighlightRef: gameRefs.current.labelRef,\n isActive: false,\n type: IndicatorType.TOOLTIP,\n elementToHighlight: <></>,\n indicator: {\n position: 'right',\n backgroundColor: 'ORANGE_4',\n width: 264,\n tooltipItem: (\n <FlexView>\n <Text $renderAs=\"ab2-bold\">\n Train to think deeper & plan ahead. Play 3 new games everyday.\n </Text>\n </FlexView>\n ),\n tooltipXCoOrdinates: gameLabelDims.width,\n tooltipYCoOrdinates: gameLabelDims.height / 2,\n } as IArrowTooltipProps,\n },\n {\n originalElementToHighlightRef: carouselNextBtnRef.current.nextBtnRef,\n isActive: false,\n type: IndicatorType.NUDGE,\n elementToHighlight: (\n <IconButton\n renderAs=\"secondary\"\n Icon={NextIcon}\n onClick={() =>\n goToNextCard(\n ActionEvent.PUZZLE_ACTIVITY,\n puzzleRefs.current as ISegmentedGameCardRefs,\n 'PURPLE_4',\n journeyId,\n )\n }\n analyticsLabel={AnalyticsLabel.ONBOARDING_STEP_COMPLETED}\n analyticsProps={{\n journey_id: journeyId,\n step: ActionEvent.GAMES_ACTIVITY,\n }}\n />\n ),\n indicator: {\n nudge: 'click',\n content: (\n <Text $renderAs=\"ab1\" $color=\"WHITE\">\n Click to proceed\n </Text>\n ),\n nudgePointerX: 0,\n nudgePointerY: 0,\n } as INudgeProps,\n },\n ];\n\n const puzzleSteps: ICoachmarkProps[] = [\n {\n originalElementToHighlightRef: puzzleRefs.current.labelRef,\n isActive: false,\n type: IndicatorType.TOOLTIP,\n elementToHighlight: <></>,\n indicator: {\n position: 'right',\n backgroundColor: 'PURPLE_4',\n width: 264,\n tooltipItem: (\n <FlexView>\n <Text $renderAs=\"ab2-bold\">\n Think in new ways & stay sharp. Solve 3 new puzzles everyday.\n </Text>\n </FlexView>\n ),\n tooltipXCoOrdinates: puzzleLabelDims.width,\n tooltipYCoOrdinates: puzzleLabelDims.height / 2,\n } as IArrowTooltipProps,\n },\n {\n originalElementToHighlightRef: puzzleRefs.current.segmentedCardWrapperRef,\n isActive: false,\n type: IndicatorType.NUDGE,\n elementToHighlight: (\n <SegmentedGameCard\n label={''} // This is intentionally left blank to avoid showing the label\n value={puzzlesData.data.filter(puzzle => puzzle.solved).length}\n maxValue={puzzlesData.data.length}\n initialValue={puzzlesData.initialProgressValue}\n data={puzzlesData.data.map(puzzle => ({\n card: puzzle.cardLottie,\n name: '', // We dont want to show the name of the puzzle in onboarding\n isCompleted: puzzle.solved,\n onPress: () => endJourney(puzzle, journeyId),\n }))}\n />\n ),\n indicator: {\n nudge: 'click',\n content: (\n <Text $renderAs=\"ab1\" $color=\"WHITE\">\n Click to solve a puzzle\n </Text>\n ),\n nudgePointerX: launcherDims.width * 0.6,\n nudgePointerY: launcherDims.height * 0.4,\n } as INudgeProps,\n },\n ];\n\n setJourney(journeyId, [...lessonSteps, ...gameSteps, ...puzzleSteps]);\n\n nextCoachmark(journeyId);\n if (isLessonAvailable && lessonRefs.current) {\n goToNextCard(ActionEvent.LESSON_ACTIVITY, lessonRefs.current, 'BLUE_4', journeyId, true);\n } else {\n goToNextCard(ActionEvent.GAMES_ACTIVITY, gameRefs.current, 'ORANGE_4', journeyId, true);\n }\n },\n [endJourney, goToNextCard, nextCoachmark, setJourney],\n );\n\n const data = useMemo(\n () => ({\n gameRefs,\n puzzleRefs,\n lessonRefs,\n carouselNextBtnRef,\n isJourneyInProgress,\n startJourney,\n }),\n [startJourney],\n );\n\n return data;\n};\n"],"names":["useGameLauncherJourney","onSegmentClick","setCarouselIndex","onJourneyComplete","carouselNextBtnRef","useRef","gameRefs","puzzleRefs","lessonRefs","isJourneyInProgress","playButtonSound","useCircleSounds","nextCoachmark","setJourney","useJourney","trackAnalytics","useUIContext","trackEventViewed","useCallback","journeyId","step","AnalyticsLabel","trackEventCompleted","goToNextCard","analyticsLabelViewed","refOfNextSlide","color","isFirstSlide","prev","GO_TO_NEXT_SLIDE_AFTER_MS","animateLabelTimer","SHOW_LABEL_HIGHLIGHT_AFTER_MS","SHOW_NUDGE_AFTER_MS","endJourney","puzzlesData","ProjectType","ActionEvent","startJourney","isLessonAvailable","_a","_b","_c","_d","lessonLabelDims","_g","_f","_e","gameLabelDims","_j","_i","_h","puzzleLabelDims","_m","_l","_k","launcherDims","_p","_o","_n","lessonSteps","IndicatorType","jsx","Fragment","FlexView","Text","_q","IconButton","NextIcon","gameSteps","puzzleSteps","SegmentedGameCard","puzzle","useMemo"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3587,7 +3587,9 @@ export declare enum PLATFORM_EVENTS_STUDENT {
3587
3587
  ACTIVITY_STARTED = "activity_started",
3588
3588
  ACTIVITY_TUTORIAL_SEEN = "activity_tutorial_seen",
3589
3589
  STREAK_ICON_CLICKED = "streak_icon_clicked",
3590
- LEADERBOARD_BUTTON_CLICKED = "leaderboard_button_clicked"
3590
+ LEADERBOARD_BUTTON_CLICKED = "leaderboard_button_clicked",
3591
+ ONBOARDING_STEP_VIEWED = "onboarding_step_viewed",
3592
+ ONBOARDING_STEP_COMPLETED = "onboarding_step_completed"
3591
3593
  }
3592
3594
 
3593
3595
  export declare enum PLATFORM_EVENTS_TEACHER {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cuemath/leap",
3
- "version": "2.8.21-rj-10",
3
+ "version": "2.8.21-rj-12",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist"