@cuemath/leap 3.2.12-akm-2 → 3.2.12-m

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 (118) hide show
  1. package/dist/assets/lottie/lottie.js +1 -1
  2. package/dist/assets/lottie/lottie.js.map +1 -1
  3. package/dist/features/auth/account-selector/account-selector.js +25 -26
  4. package/dist/features/auth/account-selector/account-selector.js.map +1 -1
  5. package/dist/features/auth/comps/auth-page-layout/auth-page-layout.js +14 -15
  6. package/dist/features/auth/comps/auth-page-layout/auth-page-layout.js.map +1 -1
  7. package/dist/features/auth/comps/user-list/user-item/user-item.js +31 -30
  8. package/dist/features/auth/comps/user-list/user-item/user-item.js.map +1 -1
  9. package/dist/features/auth/comps/user-list/user-list.js +34 -35
  10. package/dist/features/auth/comps/user-list/user-list.js.map +1 -1
  11. package/dist/features/auth/forgot-password/forgot-password-styled.js +15 -14
  12. package/dist/features/auth/forgot-password/forgot-password-styled.js.map +1 -1
  13. package/dist/features/auth/login/identifier-otp-form/identifier-otp-form-styled.js +7 -6
  14. package/dist/features/auth/login/identifier-otp-form/identifier-otp-form-styled.js.map +1 -1
  15. package/dist/features/auth/login/login-styled.js +9 -8
  16. package/dist/features/auth/login/login-styled.js.map +1 -1
  17. package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card-styled.js +4 -4
  18. package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card-styled.js.map +1 -1
  19. package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card.js +85 -85
  20. package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card.js.map +1 -1
  21. package/dist/features/circle-games/game-launcher/hooks/use-game-launcher-journey/use-game-launcher-journey.js +98 -121
  22. package/dist/features/circle-games/game-launcher/hooks/use-game-launcher-journey/use-game-launcher-journey.js.map +1 -1
  23. package/dist/features/circle-games/game-launcher/hooks/use-table-infinite-launcher-journey/use-table-infinite-launcher-journey.js +28 -29
  24. package/dist/features/circle-games/game-launcher/hooks/use-table-infinite-launcher-journey/use-table-infinite-launcher-journey.js.map +1 -1
  25. package/dist/features/circle-games/game-launcher/hooks/use-table-launcher-journey/use-table-launcher-journey.js +42 -43
  26. package/dist/features/circle-games/game-launcher/hooks/use-table-launcher-journey/use-table-launcher-journey.js.map +1 -1
  27. package/dist/features/circle-games/games/tutorial/tutorial.js +35 -43
  28. package/dist/features/circle-games/games/tutorial/tutorial.js.map +1 -1
  29. package/dist/features/circle-games/sign-up/comp/grade-input/grade-input-styled.js +2 -2
  30. package/dist/features/circle-games/sign-up/comp/grade-input/grade-input-styled.js.map +1 -1
  31. package/dist/features/circle-games/sign-up/comp/grade-input/grade-input.js +1 -1
  32. package/dist/features/circle-games/sign-up/comp/grade-input/grade-input.js.map +1 -1
  33. package/dist/features/circle-games/sign-up/comp/username-input/username-input.js +24 -26
  34. package/dist/features/circle-games/sign-up/comp/username-input/username-input.js.map +1 -1
  35. package/dist/features/circle-games/sign-up/constants.js +1 -3
  36. package/dist/features/circle-games/sign-up/constants.js.map +1 -1
  37. package/dist/features/cue-canvas/hooks/use-canvas-sync-broker.js +42 -42
  38. package/dist/features/cue-canvas/hooks/use-canvas-sync-broker.js.map +1 -1
  39. package/dist/features/hooks/use-viewport/use-viewport.js +22 -0
  40. package/dist/features/hooks/use-viewport/use-viewport.js.map +1 -0
  41. package/dist/features/journey/comps/coachmark/coachmark.js +27 -29
  42. package/dist/features/journey/comps/coachmark/coachmark.js.map +1 -1
  43. package/dist/features/journey/journey-id/journey-id-student.js +2 -2
  44. package/dist/features/journey/journey-id/journey-id-student.js.map +1 -1
  45. package/dist/features/journey/use-journey/journey-context-provider.js +72 -73
  46. package/dist/features/journey/use-journey/journey-context-provider.js.map +1 -1
  47. package/dist/features/journey/use-journey/journey-styled.js +4 -6
  48. package/dist/features/journey/use-journey/journey-styled.js.map +1 -1
  49. package/dist/features/stickers/sticker-data.js +228 -0
  50. package/dist/features/stickers/sticker-data.js.map +1 -0
  51. package/dist/features/{ui/sticker-grid/sticker-grid-styles.js → stickers/sticker-selector/sticker-selector-styles.js} +1 -1
  52. package/dist/features/stickers/sticker-selector/sticker-selector-styles.js.map +1 -0
  53. package/dist/features/stickers/sticker-selector/sticker-selector.js +25 -0
  54. package/dist/features/stickers/sticker-selector/sticker-selector.js.map +1 -0
  55. package/dist/features/{ui/sticker-grid → stickers/sticker-selector}/sticker.js +9 -9
  56. package/dist/features/stickers/sticker-selector/sticker.js.map +1 -0
  57. package/dist/features/{ui/stickers/stickers-effects.js → stickers/stickers-effects/effects.js} +6 -6
  58. package/dist/features/stickers/stickers-effects/effects.js.map +1 -0
  59. package/dist/features/{ui/stickers/stickers-styled.js → stickers/stickers-effects/stickers-effects-styled.js} +2 -2
  60. package/dist/features/stickers/stickers-effects/stickers-effects-styled.js.map +1 -0
  61. package/dist/features/{ui/stickers/stickers-utils.js → stickers/stickers-effects/stickers-effects-utils.js} +6 -6
  62. package/dist/features/stickers/stickers-effects/stickers-effects-utils.js.map +1 -0
  63. package/dist/features/stickers/stickers-effects/stickers-effects.js +39 -0
  64. package/dist/features/stickers/stickers-effects/stickers-effects.js.map +1 -0
  65. package/dist/features/ui/arrow-tooltip/arrow-tooltip-styled.js +60 -12
  66. package/dist/features/ui/arrow-tooltip/arrow-tooltip-styled.js.map +1 -1
  67. package/dist/features/ui/arrow-tooltip/arrow-tooltip.js +77 -72
  68. package/dist/features/ui/arrow-tooltip/arrow-tooltip.js.map +1 -1
  69. package/dist/features/ui/error/error.js +27 -65
  70. package/dist/features/ui/error/error.js.map +1 -1
  71. package/dist/features/ui/modals/modal-styled.js +58 -34
  72. package/dist/features/ui/modals/modal-styled.js.map +1 -1
  73. package/dist/features/ui/modals/modal.js +14 -40
  74. package/dist/features/ui/modals/modal.js.map +1 -1
  75. package/dist/features/ui/nudge/nudge-styled.js +7 -14
  76. package/dist/features/ui/nudge/nudge-styled.js.map +1 -1
  77. package/dist/features/ui/nudge/nudge.js +12 -13
  78. package/dist/features/ui/nudge/nudge.js.map +1 -1
  79. package/dist/features/ui/streak-icon/streak-icon-styled.js +13 -13
  80. package/dist/features/ui/streak-icon/streak-icon-styled.js.map +1 -1
  81. package/dist/features/ui/streak-icon/streak-icon.js +15 -17
  82. package/dist/features/ui/streak-icon/streak-icon.js.map +1 -1
  83. package/dist/features/ui/text/text.js +36 -40
  84. package/dist/features/ui/text/text.js.map +1 -1
  85. package/dist/features/ui/theme/constants.js +2 -4
  86. package/dist/features/ui/theme/constants.js.map +1 -1
  87. package/dist/features/ui/theme/get-device.js +3 -3
  88. package/dist/features/ui/theme/get-device.js.map +1 -1
  89. package/dist/features/worksheet/worksheet/constants.js +13 -12
  90. package/dist/features/worksheet/worksheet/constants.js.map +1 -1
  91. package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question.js +260 -246
  92. package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question.js.map +1 -1
  93. package/dist/features/worksheet/worksheet/worksheet-styled.js +28 -37
  94. package/dist/features/worksheet/worksheet/worksheet-styled.js.map +1 -1
  95. package/dist/features/worksheet/worksheet/worksheet.js +164 -166
  96. package/dist/features/worksheet/worksheet/worksheet.js.map +1 -1
  97. package/dist/index.d.ts +50 -36
  98. package/dist/index.js +334 -334
  99. package/dist/static/nudge-tap.5cb30093.json +1057 -0
  100. package/package.json +1 -1
  101. package/dist/features/ui/arrow-tooltip/arrow-tooltip-constants.js +0 -6
  102. package/dist/features/ui/arrow-tooltip/arrow-tooltip-constants.js.map +0 -1
  103. package/dist/features/ui/arrow-tooltip/comps/tooltip-body-styled.js +0 -63
  104. package/dist/features/ui/arrow-tooltip/comps/tooltip-body-styled.js.map +0 -1
  105. package/dist/features/ui/arrow-tooltip/comps/tooltip-body.js +0 -21
  106. package/dist/features/ui/arrow-tooltip/comps/tooltip-body.js.map +0 -1
  107. package/dist/features/ui/sticker-grid/sticker-grid-styles.js.map +0 -1
  108. package/dist/features/ui/sticker-grid/sticker-grid.js +0 -24
  109. package/dist/features/ui/sticker-grid/sticker-grid.js.map +0 -1
  110. package/dist/features/ui/sticker-grid/sticker.js.map +0 -1
  111. package/dist/features/ui/stickers/constants.js +0 -6
  112. package/dist/features/ui/stickers/constants.js.map +0 -1
  113. package/dist/features/ui/stickers/stickers-effects.js.map +0 -1
  114. package/dist/features/ui/stickers/stickers-styled.js.map +0 -1
  115. package/dist/features/ui/stickers/stickers-utils.js.map +0 -1
  116. package/dist/features/ui/stickers/stickers.js +0 -40
  117. package/dist/features/ui/stickers/stickers.js.map +0 -1
  118. package/dist/static/nudge-tap.0591aef4.json +0 -1
@@ -1,55 +1,55 @@
1
- import { jsxs as R, jsx as j } from "react/jsx-runtime";
2
- import { createContext as W, useState as s, useRef as k, useCallback as h, useMemo as M, useEffect as O } from "react";
3
- import { Coachmark as V } from "../comps/coachmark/coachmark.js";
4
- import { usePostUserJourney as G, useGetUserJourney as F } from "../user-journey-api/user-journey-api.js";
5
- import { Overlay as I } from "./journey-styled.js";
6
- const K = W(null), re = ({ children: T, appId: a, userId: c }) => {
7
- const [b, U] = s(!0), [q, z] = s(!1), [v, p] = s(null), [l, y] = s([]), [J, x] = s(!1), m = k(-1), t = k(void 0), f = k([]), [D, H] = s(!1), [A, L] = s({
1
+ import { jsxs as L, jsx as O } from "react/jsx-runtime";
2
+ import { createContext as N, useState as c, useRef as v, useCallback as h, useMemo as R, useEffect as T } from "react";
3
+ import { Coachmark as W } from "../comps/coachmark/coachmark.js";
4
+ import { usePostUserJourney as M, useGetUserJourney as V } from "../user-journey-api/user-journey-api.js";
5
+ import { Overlay as G } from "./journey-styled.js";
6
+ const F = N(null), I = ({ children: b, appId: i, userId: u }) => {
7
+ const [U, q] = c(!1), [k, p] = c(null), [a, l] = c([]), [f, x] = c(!1), m = v(-1), t = v(void 0), w = v([]), [z, B] = c(!1), [A, D] = c({
8
8
  height: window.innerHeight,
9
9
  width: window.innerWidth
10
- }), { post: $ } = G(), { data: w = null, get: _ } = F(), B = h(
11
- (e, r, o, C = !0) => {
12
- var d, n;
13
- if (l.length > 0) {
10
+ }), { post: _ } = M(), { data: C = null, get: $ } = V(), E = h(
11
+ (e, r, o) => {
12
+ var J, y;
13
+ if (a.length > 0) {
14
14
  console.error(
15
15
  `setJourney: Other Journey is already active, Current Journey: ${t.current}, New Journey Request: ${e}`
16
16
  );
17
17
  return;
18
18
  }
19
- x(!0), U(C), t.current = e, m.current = -1, y(
20
- r.map((u) => ({
21
- ...u,
19
+ x(!0), t.current = e, m.current = -1, l(
20
+ r.map((n) => ({
21
+ ...n,
22
22
  isActive: !1
23
23
  // New coachmarks are inactive by default
24
24
  }))
25
- ), o && (L({
26
- height: ((d = o.current) == null ? void 0 : d.clientHeight) || window.innerHeight,
27
- width: ((n = o.current) == null ? void 0 : n.clientWidth) || window.innerWidth
28
- }), H(!0));
25
+ ), o && (D({
26
+ height: ((J = o.current) == null ? void 0 : J.clientHeight) || window.innerHeight,
27
+ width: ((y = o.current) == null ? void 0 : y.clientWidth) || window.innerWidth
28
+ }), B(!0));
29
29
  },
30
- [l.length]
31
- ), i = h(() => {
32
- f.current.forEach((e) => {
30
+ [a.length]
31
+ ), s = h(() => {
32
+ w.current.forEach((e) => {
33
33
  clearTimeout(e);
34
- }), f.current = [], t.current = void 0, m.current = -1, y([]), x(!1);
35
- }, []), E = h(
34
+ }), w.current = [], t.current = void 0, m.current = -1, l([]), x(!1);
35
+ }, []), P = h(
36
36
  (e) => {
37
- i(), p((r) => r && !r.includes(e) ? [...r, e] : r), $({
38
- app_id: a,
39
- user_id: c,
37
+ s(), p((r) => r && !r.includes(e) ? [...r, e] : r), _({
38
+ app_id: i,
39
+ user_id: u,
40
40
  journey_id: e,
41
41
  journey_status: "COMPLETED"
42
42
  });
43
43
  },
44
- [a, i, $, c]
45
- ), P = h((e, r) => {
44
+ [i, s, _, u]
45
+ ), S = h((e, r) => {
46
46
  if (!t.current || e !== t.current) {
47
47
  console.error(
48
48
  t.current ? `A Journey is already active, Current Journey: ${t.current}, New Journey Request: ${e}` : "addCoachmark was called before setJourney and Journey ID is undefined"
49
49
  );
50
50
  return;
51
51
  }
52
- y((o) => [
52
+ l((o) => [
53
53
  ...o,
54
54
  {
55
55
  ...r,
@@ -57,87 +57,86 @@ const K = W(null), re = ({ children: T, appId: a, userId: c }) => {
57
57
  // New coachmarks are inactive by default
58
58
  }
59
59
  ]);
60
- }, []), S = h(
61
- (e, r = !1, o = 0, C = !1) => {
60
+ }, []), j = h(
61
+ (e, r = !1, o = 0, J = !1) => {
62
62
  if (!t.current || e !== t.current) {
63
63
  console.error(
64
64
  t.current ? "nextCoachmark was called before setJourney" : `A Journey is already active, Current Journey: ${t.current}, New Journey Request: ${e}`
65
65
  );
66
66
  return;
67
67
  }
68
- z(C), o !== 0 && y((n) => n.map((u) => ({ ...u, isActive: !1 })));
69
- const d = setTimeout(() => {
70
- clearTimeout(d);
68
+ q(J), o !== 0 && l((n) => n.map((d) => ({ ...d, isActive: !1 })));
69
+ const y = setTimeout(() => {
70
+ clearTimeout(y);
71
71
  const n = m.current + 1;
72
- y((u) => {
73
- if (n >= u.length || u.length === 0)
74
- return i(), [];
72
+ l((d) => {
73
+ if (n >= d.length || d.length === 0)
74
+ return s(), [];
75
75
  m.current = n;
76
- const g = [...u];
76
+ const g = [...d];
77
77
  return g[n].isActive = !0, n > 0 && (g[n - 1].isActive = r), g;
78
78
  });
79
79
  }, o);
80
- f.current.push(d);
80
+ w.current.push(y);
81
81
  },
82
- [i]
83
- ), N = M(
82
+ [s]
83
+ ), H = R(
84
84
  () => ({
85
- nextCoachmark: S,
86
- setJourney: B,
87
- addCoachmark: P,
88
- clearJourney: i,
89
- endJourney: E,
90
- coachmarks: l,
91
- userCompletedJourneyIds: v,
92
- isJourneyActive: J
85
+ nextCoachmark: j,
86
+ setJourney: E,
87
+ addCoachmark: S,
88
+ clearJourney: s,
89
+ endJourney: P,
90
+ coachmarks: a,
91
+ userCompletedJourneyIds: k,
92
+ isJourneyActive: f
93
93
  }),
94
94
  [
95
+ j,
96
+ E,
95
97
  S,
96
- B,
98
+ s,
97
99
  P,
98
- i,
99
- E,
100
- l,
101
- v,
102
- J
100
+ a,
101
+ k,
102
+ f
103
103
  ]
104
104
  );
105
- return O(() => {
106
- a && c && _(c, {
107
- app_id: a,
108
- user_id: c,
105
+ return T(() => {
106
+ i && u && $(u, {
107
+ app_id: i,
108
+ user_id: u,
109
109
  journey_status: "COMPLETED"
110
110
  });
111
- }, [a, _, c]), O(() => {
112
- if (w) {
113
- const e = w.map((r) => r.journey_id);
111
+ }, [i, $, u]), T(() => {
112
+ if (C) {
113
+ const e = C.map((r) => r.journey_id);
114
114
  p(e);
115
115
  }
116
- }, [w]), /* @__PURE__ */ R(K.Provider, { value: N, children: [
117
- J && /* @__PURE__ */ j(
118
- I,
116
+ }, [C]), /* @__PURE__ */ L(F.Provider, { value: H, children: [
117
+ f && /* @__PURE__ */ O(
118
+ G,
119
119
  {
120
120
  about: "journey-overlay",
121
121
  height: A.height,
122
122
  width: A.width,
123
- $isJourneyBlurred: q,
124
- $isBlockingJourney: b,
123
+ $isJourneyBlurred: U,
125
124
  "data-testid": t.current,
126
- children: l.map((e, r) => /* @__PURE__ */ j(
127
- V,
125
+ children: a.map((e, r) => /* @__PURE__ */ O(
126
+ W,
128
127
  {
129
128
  coachmark: e,
130
- isInsideScrollView: D
129
+ isInsideScrollView: z
131
130
  },
132
131
  `coachmark-${r}`
133
132
  ))
134
133
  }
135
134
  ),
136
- T
135
+ b
137
136
  ] });
138
137
  };
139
138
  export {
140
- K as JourneyContext,
141
- re as JourneyProvider
139
+ F as JourneyContext,
140
+ I as JourneyProvider
142
141
  };
143
142
  //# sourceMappingURL=journey-context-provider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"journey-context-provider.js","sources":["../../../../src/features/journey/use-journey/journey-context-provider.tsx"],"sourcesContent":["/* eslint-disable no-console */\nimport type { TJourneyId } from '../journey-id/journey-id-types';\nimport type {\n ICoachmarkProps,\n IJourneyContext,\n IJourneyProviderProps,\n TCoachmarkJourneyProps,\n} from './journey-context-types';\nimport type { FC, RefObject } from 'react';\n\nimport { createContext, useCallback, useEffect, useMemo, useRef, useState } from 'react';\n\nimport { Coachmark } from '../comps/coachmark/coachmark';\nimport { useGetUserJourney, usePostUserJourney } from '../user-journey-api/user-journey-api';\nimport * as S from './journey-styled';\n\nexport const JourneyContext = createContext<IJourneyContext | null>(null);\n\nexport const JourneyProvider: FC<IJourneyProviderProps> = ({ children, appId, userId }) => {\n const [isBlockingJourney, setIsBlockingJourney] = useState<boolean>(true);\n const [isJourneyBlurred, setIsJourneyBlurred] = useState<boolean>(false);\n const [userCompletedJourneyIds, setUserCompletedJourneyIds] = useState<TJourneyId[] | null>(null);\n const [coachmarkList, setCoachmarkList] = useState<ICoachmarkProps[]>([]);\n const [isJourneyActive, setIsJourneyActive] = useState(false);\n const currentIndex = useRef(-1);\n const currentJourneyId = useRef<TJourneyId | undefined>(undefined);\n const timerRefs = useRef<ReturnType<typeof setTimeout>[]>([]);\n\n const [isScrollableJourney, setIsScrollableJourney] = useState<boolean>(false);\n const [overlaySize, setOverlaySize] = useState({\n height: window.innerHeight,\n width: window.innerWidth,\n });\n\n const { post: postJourneyCompletion } = usePostUserJourney();\n const { data: userCompletedJourneys = null, get: getJourneyProgress } = useGetUserJourney();\n\n const setJourney = useCallback(\n (\n id: TJourneyId,\n coachmarks: TCoachmarkJourneyProps[],\n scrollableContRef?: RefObject<HTMLDivElement | null>,\n isBlocking: boolean = true,\n ) => {\n if (coachmarkList.length > 0) {\n console.error(\n `setJourney: Other Journey is already active, Current Journey: ${currentJourneyId.current}, New Journey Request: ${id}`,\n );\n\n return;\n }\n setIsJourneyActive(true);\n setIsBlockingJourney(isBlocking);\n currentJourneyId.current = id;\n currentIndex.current = -1;\n setCoachmarkList(\n coachmarks.map((item: TCoachmarkJourneyProps) => {\n return {\n ...item,\n isActive: false, // New coachmarks are inactive by default\n } as ICoachmarkProps;\n }),\n );\n if (scrollableContRef) {\n setOverlaySize({\n height: scrollableContRef.current?.clientHeight || window.innerHeight,\n width: scrollableContRef.current?.clientWidth || window.innerWidth,\n });\n setIsScrollableJourney(true);\n }\n },\n [coachmarkList.length],\n );\n\n const clearJourney = useCallback(() => {\n // Clear all timers\n timerRefs.current.forEach(timer => {\n clearTimeout(timer);\n });\n timerRefs.current = [];\n currentJourneyId.current = undefined;\n currentIndex.current = -1;\n setCoachmarkList([]);\n setIsJourneyActive(false);\n }, []);\n\n const endJourney = useCallback(\n (journeyId: TJourneyId) => {\n clearJourney();\n setUserCompletedJourneyIds(prev => {\n if (prev && !prev.includes(journeyId)) {\n return [...prev, journeyId];\n }\n\n return prev;\n });\n // fire the API (doesn’t block the UI)\n postJourneyCompletion({\n app_id: appId,\n user_id: userId,\n journey_id: journeyId,\n journey_status: 'COMPLETED',\n });\n },\n [appId, clearJourney, postJourneyCompletion, userId],\n );\n\n const addCoachmark = useCallback((id: TJourneyId, coachmark: TCoachmarkJourneyProps) => {\n if (!currentJourneyId.current || id !== currentJourneyId.current) {\n console.error(\n currentJourneyId.current\n ? `A Journey is already active, Current Journey: ${currentJourneyId.current}, New Journey Request: ${id}`\n : `addCoachmark was called before setJourney and Journey ID is undefined`,\n );\n\n return;\n }\n\n setCoachmarkList(prev => [\n ...prev,\n {\n ...coachmark,\n isActive: false, // New coachmarks are inactive by default\n } as ICoachmarkProps,\n ]);\n }, []);\n\n const nextCoachmark = useCallback(\n (\n id: TJourneyId,\n keepPrevActive: boolean = false,\n delayInMs: number = 0,\n shouldBlurNextJourney: boolean = false,\n ) => {\n if (!currentJourneyId.current || id !== currentJourneyId.current) {\n console.error(\n currentJourneyId.current\n ? `nextCoachmark was called before setJourney`\n : `A Journey is already active, Current Journey: ${currentJourneyId.current}, New Journey Request: ${id}`,\n );\n\n return;\n }\n\n setIsJourneyBlurred(shouldBlurNextJourney);\n\n if (delayInMs !== 0) {\n // If delay is not 0, we will hide all them coachmarks and reveal only after the delay\n setCoachmarkList(prevList => {\n return prevList.map((item: TCoachmarkJourneyProps) => {\n return { ...item, isActive: false };\n });\n });\n }\n\n const timer = setTimeout(() => {\n clearTimeout(timer);\n const currIndex = currentIndex.current + 1;\n\n setCoachmarkList(prevList => {\n // Finish onboarding\n if (currIndex >= prevList.length || prevList.length === 0) {\n clearJourney();\n\n return [];\n }\n\n currentIndex.current = currIndex;\n const updatedCoachmarkList = [...prevList];\n\n (updatedCoachmarkList[currIndex] as ICoachmarkProps).isActive = true;\n\n if (currIndex > 0) {\n (updatedCoachmarkList[currIndex - 1] as ICoachmarkProps).isActive = keepPrevActive;\n }\n\n return updatedCoachmarkList;\n });\n }, delayInMs);\n\n timerRefs.current.push(timer);\n },\n [clearJourney],\n );\n\n const memoizedContextValue: IJourneyContext = useMemo(\n () => ({\n nextCoachmark,\n setJourney,\n addCoachmark,\n clearJourney,\n endJourney,\n coachmarks: coachmarkList,\n userCompletedJourneyIds,\n isJourneyActive,\n }),\n [\n nextCoachmark,\n setJourney,\n addCoachmark,\n clearJourney,\n endJourney,\n coachmarkList,\n userCompletedJourneyIds,\n isJourneyActive,\n ],\n );\n\n // Get the initial state of incompleteJourneys\n useEffect(() => {\n if (appId && userId) {\n getJourneyProgress(userId, {\n app_id: appId,\n user_id: userId,\n journey_status: 'COMPLETED',\n });\n }\n }, [appId, getJourneyProgress, userId]);\n\n // Set the data to context state initially\n useEffect(() => {\n if (userCompletedJourneys) {\n const completedUserJourneysIds = userCompletedJourneys.map(journey => journey.journey_id);\n\n setUserCompletedJourneyIds(completedUserJourneysIds);\n }\n }, [userCompletedJourneys]);\n\n return (\n <JourneyContext.Provider value={memoizedContextValue}>\n {isJourneyActive && (\n <S.Overlay\n about=\"journey-overlay\"\n height={overlaySize.height}\n width={overlaySize.width}\n $isJourneyBlurred={isJourneyBlurred}\n $isBlockingJourney={isBlockingJourney}\n data-testid={currentJourneyId.current}\n >\n {coachmarkList.map((coachmark, index) => (\n <Coachmark\n key={`coachmark-${index}`}\n coachmark={coachmark}\n isInsideScrollView={isScrollableJourney}\n />\n ))}\n </S.Overlay>\n )}\n {children}\n </JourneyContext.Provider>\n );\n};\n"],"names":["JourneyContext","createContext","JourneyProvider","children","appId","userId","isBlockingJourney","setIsBlockingJourney","useState","isJourneyBlurred","setIsJourneyBlurred","userCompletedJourneyIds","setUserCompletedJourneyIds","coachmarkList","setCoachmarkList","isJourneyActive","setIsJourneyActive","currentIndex","useRef","currentJourneyId","timerRefs","isScrollableJourney","setIsScrollableJourney","overlaySize","setOverlaySize","postJourneyCompletion","usePostUserJourney","userCompletedJourneys","getJourneyProgress","useGetUserJourney","setJourney","useCallback","id","coachmarks","scrollableContRef","isBlocking","item","_a","_b","clearJourney","timer","endJourney","journeyId","prev","addCoachmark","coachmark","nextCoachmark","keepPrevActive","delayInMs","shouldBlurNextJourney","prevList","currIndex","updatedCoachmarkList","memoizedContextValue","useMemo","useEffect","completedUserJourneysIds","journey","jsxs","jsx","S.Overlay","index","Coachmark"],"mappings":"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"}
1
+ {"version":3,"file":"journey-context-provider.js","sources":["../../../../src/features/journey/use-journey/journey-context-provider.tsx"],"sourcesContent":["/* eslint-disable no-console */\nimport type { TJourneyId } from '../journey-id/journey-id-types';\nimport type {\n ICoachmarkProps,\n IJourneyContext,\n IJourneyProviderProps,\n TCoachmarkJourneyProps,\n} from './journey-context-types';\nimport type { FC, RefObject } from 'react';\n\nimport { createContext, useCallback, useEffect, useMemo, useRef, useState } from 'react';\n\nimport { Coachmark } from '../comps/coachmark/coachmark';\nimport { useGetUserJourney, usePostUserJourney } from '../user-journey-api/user-journey-api';\nimport * as S from './journey-styled';\n\nexport const JourneyContext = createContext<IJourneyContext | null>(null);\n\nexport const JourneyProvider: FC<IJourneyProviderProps> = ({ children, appId, userId }) => {\n const [isJourneyBlurred, setIsJourneyBlurred] = useState<boolean>(false);\n const [userCompletedJourneyIds, setUserCompletedJourneyIds] = useState<TJourneyId[] | null>(null);\n const [coachmarkList, setCoachmarkList] = useState<ICoachmarkProps[]>([]);\n const [isJourneyActive, setIsJourneyActive] = useState(false);\n const currentIndex = useRef(-1);\n const currentJourneyId = useRef<TJourneyId | undefined>(undefined);\n const timerRefs = useRef<ReturnType<typeof setTimeout>[]>([]);\n\n const [isScrollableJourney, setIsScrollableJourney] = useState<boolean>(false);\n const [overlaySize, setOverlaySize] = useState({\n height: window.innerHeight,\n width: window.innerWidth,\n });\n\n const { post: postJourneyCompletion } = usePostUserJourney();\n const { data: userCompletedJourneys = null, get: getJourneyProgress } = useGetUserJourney();\n\n const setJourney = useCallback(\n (\n id: TJourneyId,\n coachmarks: TCoachmarkJourneyProps[],\n scrollableContRef?: RefObject<HTMLDivElement | null>,\n ) => {\n if (coachmarkList.length > 0) {\n console.error(\n `setJourney: Other Journey is already active, Current Journey: ${currentJourneyId.current}, New Journey Request: ${id}`,\n );\n\n return;\n }\n setIsJourneyActive(true);\n currentJourneyId.current = id;\n currentIndex.current = -1;\n setCoachmarkList(\n coachmarks.map((item: TCoachmarkJourneyProps) => {\n return {\n ...item,\n isActive: false, // New coachmarks are inactive by default\n } as ICoachmarkProps;\n }),\n );\n if (scrollableContRef) {\n setOverlaySize({\n height: scrollableContRef.current?.clientHeight || window.innerHeight,\n width: scrollableContRef.current?.clientWidth || window.innerWidth,\n });\n setIsScrollableJourney(true);\n }\n },\n [coachmarkList.length],\n );\n\n const clearJourney = useCallback(() => {\n // Clear all timers\n timerRefs.current.forEach(timer => {\n clearTimeout(timer);\n });\n timerRefs.current = [];\n currentJourneyId.current = undefined;\n currentIndex.current = -1;\n setCoachmarkList([]);\n setIsJourneyActive(false);\n }, []);\n\n const endJourney = useCallback(\n (journeyId: TJourneyId) => {\n clearJourney();\n setUserCompletedJourneyIds(prev => {\n if (prev && !prev.includes(journeyId)) {\n return [...prev, journeyId];\n }\n\n return prev;\n });\n // fire the API (doesn’t block the UI)\n postJourneyCompletion({\n app_id: appId,\n user_id: userId,\n journey_id: journeyId,\n journey_status: 'COMPLETED',\n });\n },\n [appId, clearJourney, postJourneyCompletion, userId],\n );\n\n const addCoachmark = useCallback((id: TJourneyId, coachmark: TCoachmarkJourneyProps) => {\n if (!currentJourneyId.current || id !== currentJourneyId.current) {\n console.error(\n currentJourneyId.current\n ? `A Journey is already active, Current Journey: ${currentJourneyId.current}, New Journey Request: ${id}`\n : `addCoachmark was called before setJourney and Journey ID is undefined`,\n );\n\n return;\n }\n\n setCoachmarkList(prev => [\n ...prev,\n {\n ...coachmark,\n isActive: false, // New coachmarks are inactive by default\n } as ICoachmarkProps,\n ]);\n }, []);\n\n const nextCoachmark = useCallback(\n (\n id: TJourneyId,\n keepPrevActive: boolean = false,\n delayInMs: number = 0,\n shouldBlurNextJourney: boolean = false,\n ) => {\n if (!currentJourneyId.current || id !== currentJourneyId.current) {\n console.error(\n currentJourneyId.current\n ? `nextCoachmark was called before setJourney`\n : `A Journey is already active, Current Journey: ${currentJourneyId.current}, New Journey Request: ${id}`,\n );\n\n return;\n }\n\n setIsJourneyBlurred(shouldBlurNextJourney);\n\n if (delayInMs !== 0) {\n // If delay is not 0, we will hide all them coachmarks and reveal only after the delay\n setCoachmarkList(prevList => {\n return prevList.map((item: TCoachmarkJourneyProps) => {\n return { ...item, isActive: false };\n });\n });\n }\n\n const timer = setTimeout(() => {\n clearTimeout(timer);\n const currIndex = currentIndex.current + 1;\n\n setCoachmarkList(prevList => {\n // Finish onboarding\n if (currIndex >= prevList.length || prevList.length === 0) {\n clearJourney();\n\n return [];\n }\n\n currentIndex.current = currIndex;\n const updatedCoachmarkList = [...prevList];\n\n (updatedCoachmarkList[currIndex] as ICoachmarkProps).isActive = true;\n\n if (currIndex > 0) {\n (updatedCoachmarkList[currIndex - 1] as ICoachmarkProps).isActive = keepPrevActive;\n }\n\n return updatedCoachmarkList;\n });\n }, delayInMs);\n\n timerRefs.current.push(timer);\n },\n [clearJourney],\n );\n\n const memoizedContextValue: IJourneyContext = useMemo(\n () => ({\n nextCoachmark,\n setJourney,\n addCoachmark,\n clearJourney,\n endJourney,\n coachmarks: coachmarkList,\n userCompletedJourneyIds,\n isJourneyActive,\n }),\n [\n nextCoachmark,\n setJourney,\n addCoachmark,\n clearJourney,\n endJourney,\n coachmarkList,\n userCompletedJourneyIds,\n isJourneyActive,\n ],\n );\n\n // Get the initial state of incompleteJourneys\n useEffect(() => {\n if (appId && userId) {\n getJourneyProgress(userId, {\n app_id: appId,\n user_id: userId,\n journey_status: 'COMPLETED',\n });\n }\n }, [appId, getJourneyProgress, userId]);\n\n // Set the data to context state initially\n useEffect(() => {\n if (userCompletedJourneys) {\n const completedUserJourneysIds = userCompletedJourneys.map(journey => journey.journey_id);\n\n setUserCompletedJourneyIds(completedUserJourneysIds);\n }\n }, [userCompletedJourneys]);\n\n return (\n <JourneyContext.Provider value={memoizedContextValue}>\n {isJourneyActive && (\n <S.Overlay\n about=\"journey-overlay\"\n height={overlaySize.height}\n width={overlaySize.width}\n $isJourneyBlurred={isJourneyBlurred}\n data-testid={currentJourneyId.current}\n >\n {coachmarkList.map((coachmark, index) => (\n <Coachmark\n key={`coachmark-${index}`}\n coachmark={coachmark}\n isInsideScrollView={isScrollableJourney}\n />\n ))}\n </S.Overlay>\n )}\n {children}\n </JourneyContext.Provider>\n );\n};\n"],"names":["JourneyContext","createContext","JourneyProvider","children","appId","userId","isJourneyBlurred","setIsJourneyBlurred","useState","userCompletedJourneyIds","setUserCompletedJourneyIds","coachmarkList","setCoachmarkList","isJourneyActive","setIsJourneyActive","currentIndex","useRef","currentJourneyId","timerRefs","isScrollableJourney","setIsScrollableJourney","overlaySize","setOverlaySize","postJourneyCompletion","usePostUserJourney","userCompletedJourneys","getJourneyProgress","useGetUserJourney","setJourney","useCallback","id","coachmarks","scrollableContRef","item","_a","_b","clearJourney","timer","endJourney","journeyId","prev","addCoachmark","coachmark","nextCoachmark","keepPrevActive","delayInMs","shouldBlurNextJourney","prevList","currIndex","updatedCoachmarkList","memoizedContextValue","useMemo","useEffect","completedUserJourneysIds","journey","jsxs","jsx","S.Overlay","index","Coachmark"],"mappings":"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"}
@@ -1,16 +1,14 @@
1
- import e, { css as r } from "styled-components";
2
- const p = e.div`
1
+ import r, { css as e } from "styled-components";
2
+ const p = r.div`
3
3
  position: absolute;
4
4
  top: 0;
5
5
  right: 0;
6
6
  bottom: 0;
7
7
  left: 0;
8
- z-index: ${({ $isBlockingJourney: t, theme: o }) => t ? o.zIndex.JOURNEY_OVERLAY : 0};
9
- pointer-events: ${({ $isBlockingJourney: t }) => t ? "auto" : "none"};
10
-
8
+ z-index: ${({ theme: t }) => t.zIndex.JOURNEY_OVERLAY};
11
9
  height: ${({ height: t }) => t}px;
12
10
  width: ${({ width: t }) => t}px;
13
- ${({ $isJourneyBlurred: t, theme: o }) => t && r`
11
+ ${({ $isJourneyBlurred: t, theme: o }) => t && e`
14
12
  background: ${o.colors.BLACK_T_38};
15
13
  backdrop-filter: blur(80px);
16
14
  -webkit-backdrop-filter: blur(80px);
@@ -1 +1 @@
1
- {"version":3,"file":"journey-styled.js","sources":["../../../../src/features/journey/use-journey/journey-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { css } from 'styled-components';\n\nexport const Overlay = styled.div<{\n $isJourneyBlurred: boolean;\n $isBlockingJourney: boolean;\n height: number;\n width: number;\n}>`\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: ${({ $isBlockingJourney, theme }) =>\n $isBlockingJourney ? theme.zIndex.JOURNEY_OVERLAY : 0};\n pointer-events: ${({ $isBlockingJourney }) => ($isBlockingJourney ? 'auto' : 'none')};\n\n height: ${({ height }) => height}px;\n width: ${({ width }) => width}px;\n ${({ $isJourneyBlurred, theme }) =>\n $isJourneyBlurred &&\n css`\n background: ${theme.colors.BLACK_T_38};\n backdrop-filter: blur(80px);\n -webkit-backdrop-filter: blur(80px);\n `}\n`;\n"],"names":["Overlay","styled","$isBlockingJourney","theme","height","width","$isJourneyBlurred","css"],"mappings":";AAGO,MAAMA,IAAUC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAWjB,CAAC,EAAE,oBAAAC,GAAoB,OAAAC,QAChCD,IAAqBC,EAAM,OAAO,kBAAkB,CAAC;AAAA,oBACrC,CAAC,EAAE,oBAAAD,EAAA,MAA0BA,IAAqB,SAAS,MAAO;AAAA;AAAA,YAE1E,CAAC,EAAE,QAAAE,EAAO,MAAMA,CAAM;AAAA,WACvB,CAAC,EAAE,OAAAC,EAAM,MAAMA,CAAK;AAAA,IAC3B,CAAC,EAAE,mBAAAC,GAAmB,OAAAH,EAAA,MACtBG,KACAC;AAAA,oBACgBJ,EAAM,OAAO,UAAU;AAAA;AAAA;AAAA,KAGtC;AAAA;"}
1
+ {"version":3,"file":"journey-styled.js","sources":["../../../../src/features/journey/use-journey/journey-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { css } from 'styled-components';\n\nexport const Overlay = styled.div<{\n $isJourneyBlurred: boolean;\n height: number;\n width: number;\n}>`\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: ${({ theme }) => theme.zIndex.JOURNEY_OVERLAY};\n height: ${({ height }) => height}px;\n width: ${({ width }) => width}px;\n ${({ $isJourneyBlurred, theme }) =>\n $isJourneyBlurred &&\n css`\n background: ${theme.colors.BLACK_T_38};\n backdrop-filter: blur(80px);\n -webkit-backdrop-filter: blur(80px);\n `}\n`;\n"],"names":["Overlay","styled","theme","height","width","$isJourneyBlurred","css"],"mappings":";AAGO,MAAMA,IAAUC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAUjB,CAAC,EAAE,OAAAC,EAAA,MAAYA,EAAM,OAAO,eAAe;AAAA,YAC5C,CAAC,EAAE,QAAAC,EAAO,MAAMA,CAAM;AAAA,WACvB,CAAC,EAAE,OAAAC,EAAM,MAAMA,CAAK;AAAA,IAC3B,CAAC,EAAE,mBAAAC,GAAmB,OAAAH,EAAA,MACtBG,KACAC;AAAA,oBACgBJ,EAAM,OAAO,UAAU;AAAA;AAAA;AAAA,KAGtC;AAAA;"}
@@ -0,0 +1,228 @@
1
+ const e = [
2
+ {
3
+ id: "cowboy",
4
+ emoji: "🤠",
5
+ name: "Cowboy"
6
+ // lottieUrl: '/lottie/cowboy.json',
7
+ },
8
+ {
9
+ id: "heart-eyes",
10
+ emoji: "😍",
11
+ name: "Heart Eyes"
12
+ // lottieUrl: '/lottie/heart-eyes.json',
13
+ },
14
+ {
15
+ id: "pleading",
16
+ emoji: "🥺",
17
+ name: "Pleading"
18
+ // lottieUrl: '/lottie/pleading.json',
19
+ },
20
+ {
21
+ id: "sunglasses",
22
+ emoji: "😎",
23
+ name: "Sunglasses"
24
+ // lottieUrl: '/lottie/sunglasses.json',
25
+ },
26
+ {
27
+ id: "angry",
28
+ emoji: "😡",
29
+ name: "Angry"
30
+ // lottieUrl: '/lottie/angry.json',
31
+ },
32
+ {
33
+ id: "thinking",
34
+ emoji: "🤔",
35
+ name: "Thinking"
36
+ // lottieUrl: '/lottie/thinking.json',
37
+ },
38
+ {
39
+ id: "party",
40
+ emoji: "🥳",
41
+ name: "Party"
42
+ // lottieUrl: '/lottie/party.json',
43
+ },
44
+ {
45
+ id: "celebration",
46
+ emoji: "🎉",
47
+ name: "Celebration"
48
+ // lottieUrl: '/lottie/celebration.json',
49
+ },
50
+ {
51
+ id: "balloon",
52
+ emoji: "🎈",
53
+ name: "Balloon"
54
+ // lottieUrl: '/lottie/balloon.json',
55
+ },
56
+ {
57
+ id: "cake",
58
+ emoji: "🎂",
59
+ name: "Cake"
60
+ // lottieUrl: '/lottie/cake.json',
61
+ },
62
+ {
63
+ id: "clapping",
64
+ emoji: "👏",
65
+ name: "Clapping"
66
+ // lottieUrl: '/lottie/clapping.json',
67
+ },
68
+ {
69
+ id: "thumbs-up",
70
+ emoji: "👍",
71
+ name: "Thumbs Up"
72
+ // lottieUrl: '/lottie/thumbs-up.json',
73
+ },
74
+ {
75
+ id: "peace",
76
+ emoji: "✌️",
77
+ name: "Peace"
78
+ // lottieUrl: '/lottie/peace.json',
79
+ },
80
+ {
81
+ id: "ok-hand",
82
+ emoji: "👌",
83
+ name: "OK Hand"
84
+ // lottieUrl: '/lottie/ok-hand.json',
85
+ },
86
+ {
87
+ id: "muscle",
88
+ emoji: "💪",
89
+ name: "Muscle"
90
+ // lottieUrl: '/lottie/muscle.json',
91
+ },
92
+ {
93
+ id: "rock-on",
94
+ emoji: "🤘",
95
+ name: "Rock On"
96
+ // lottieUrl: '/lottie/rock-on.json',
97
+ },
98
+ {
99
+ id: "heart",
100
+ emoji: "❤️",
101
+ name: "Heart"
102
+ // lottieUrl: '/lottie/heart.json',
103
+ },
104
+ {
105
+ id: "trophy",
106
+ emoji: "🏆",
107
+ name: "Trophy"
108
+ // lottieUrl: '/lottie/trophy.json',
109
+ },
110
+ {
111
+ id: "hundred",
112
+ emoji: "💯",
113
+ name: "Hundred"
114
+ // lottieUrl: '/lottie/hundred.json',
115
+ },
116
+ {
117
+ id: "gold-medal",
118
+ emoji: "🥇",
119
+ name: "Gold Medal"
120
+ // lottieUrl: '/lottie/gold-medal.json',
121
+ },
122
+ {
123
+ id: "silver-medal",
124
+ emoji: "🥈",
125
+ name: "Silver Medal"
126
+ // lottieUrl: '/lottie/silver-medal.json',
127
+ },
128
+ {
129
+ id: "bronze-medal",
130
+ emoji: "🥉",
131
+ name: "Bronze Medal"
132
+ // lottieUrl: '/lottie/bronze-medal.json',
133
+ },
134
+ {
135
+ id: "target",
136
+ emoji: "🎯",
137
+ name: "Target"
138
+ // lottieUrl: '/lottie/target.json',
139
+ },
140
+ {
141
+ id: "star",
142
+ emoji: "⭐",
143
+ name: "Star"
144
+ // lottieUrl: '/lottie/star.json',
145
+ },
146
+ {
147
+ id: "lightning",
148
+ emoji: "⚡",
149
+ name: "Lightning"
150
+ // lottieUrl: '/lottie/lightning.json',
151
+ },
152
+ {
153
+ id: "rocket",
154
+ emoji: "🚀",
155
+ name: "Rocket"
156
+ // lottieUrl: '/lottie/rocket.json',
157
+ },
158
+ {
159
+ id: "explosion",
160
+ emoji: "💥",
161
+ name: "Explosion"
162
+ // lottieUrl: '/lottie/explosion.json',
163
+ },
164
+ {
165
+ id: "graduation",
166
+ emoji: "🎓",
167
+ name: "Graduation"
168
+ // lottieUrl: '/lottie/graduation.json',
169
+ },
170
+ {
171
+ id: "clock",
172
+ emoji: "⏰",
173
+ name: "Clock"
174
+ // lottieUrl: '/lottie/clock.json',
175
+ },
176
+ {
177
+ id: "bulb",
178
+ emoji: "💡",
179
+ name: "Bulb"
180
+ // lottieUrl: '/lottie/bulb.json',
181
+ },
182
+ {
183
+ id: "rainbow",
184
+ emoji: "🌈",
185
+ name: "Rainbow"
186
+ // lottieUrl: '/lottie/rainbow.json',
187
+ },
188
+ {
189
+ id: "clown",
190
+ emoji: "🤡",
191
+ name: "Clown"
192
+ // lottieUrl: '/lottie/clown.json',
193
+ },
194
+ {
195
+ id: "dancer",
196
+ emoji: "💃",
197
+ name: "Dancer"
198
+ // lottieUrl: '/lottie/dancer.json',
199
+ },
200
+ {
201
+ id: "flowers",
202
+ emoji: "💐",
203
+ name: "Flowers"
204
+ // lottieUrl: '/lottie/flowers.json',
205
+ },
206
+ {
207
+ id: "unicorn",
208
+ emoji: "🦄",
209
+ name: "Unicorn"
210
+ // lottieUrl: '/lottie/unicorn.json',
211
+ },
212
+ {
213
+ id: "drum",
214
+ emoji: "🥁",
215
+ name: "Drum"
216
+ // lottieUrl: '/lottie/drum.json',
217
+ },
218
+ {
219
+ id: "diamond",
220
+ emoji: "💎",
221
+ name: "Diamond"
222
+ // lottieUrl: '/lottie/diamond.json',
223
+ }
224
+ ];
225
+ export {
226
+ e as stickerData
227
+ };
228
+ //# sourceMappingURL=sticker-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sticker-data.js","sources":["../../../src/features/stickers/sticker-data.ts"],"sourcesContent":["import type { IStickerData } from './sticker-selector/sticker-selector-types';\n\nexport const stickerData: IStickerData[] = [\n {\n id: 'cowboy',\n emoji: '🤠',\n name: 'Cowboy',\n // lottieUrl: '/lottie/cowboy.json',\n },\n {\n id: 'heart-eyes',\n emoji: '😍',\n name: 'Heart Eyes',\n // lottieUrl: '/lottie/heart-eyes.json',\n },\n {\n id: 'pleading',\n emoji: '🥺',\n name: 'Pleading',\n // lottieUrl: '/lottie/pleading.json',\n },\n {\n id: 'sunglasses',\n emoji: '😎',\n name: 'Sunglasses',\n // lottieUrl: '/lottie/sunglasses.json',\n },\n {\n id: 'angry',\n emoji: '😡',\n name: 'Angry',\n // lottieUrl: '/lottie/angry.json',\n },\n {\n id: 'thinking',\n emoji: '🤔',\n name: 'Thinking',\n // lottieUrl: '/lottie/thinking.json',\n },\n {\n id: 'party',\n emoji: '🥳',\n name: 'Party',\n // lottieUrl: '/lottie/party.json',\n },\n {\n id: 'celebration',\n emoji: '🎉',\n name: 'Celebration',\n // lottieUrl: '/lottie/celebration.json',\n },\n {\n id: 'balloon',\n emoji: '🎈',\n name: 'Balloon',\n // lottieUrl: '/lottie/balloon.json',\n },\n {\n id: 'cake',\n emoji: '🎂',\n name: 'Cake',\n // lottieUrl: '/lottie/cake.json',\n },\n {\n id: 'clapping',\n emoji: '👏',\n name: 'Clapping',\n // lottieUrl: '/lottie/clapping.json',\n },\n {\n id: 'thumbs-up',\n emoji: '👍',\n name: 'Thumbs Up',\n // lottieUrl: '/lottie/thumbs-up.json',\n },\n {\n id: 'peace',\n emoji: '✌️',\n name: 'Peace',\n // lottieUrl: '/lottie/peace.json',\n },\n {\n id: 'ok-hand',\n emoji: '👌',\n name: 'OK Hand',\n // lottieUrl: '/lottie/ok-hand.json',\n },\n {\n id: 'muscle',\n emoji: '💪',\n name: 'Muscle',\n // lottieUrl: '/lottie/muscle.json',\n },\n {\n id: 'rock-on',\n emoji: '🤘',\n name: 'Rock On',\n // lottieUrl: '/lottie/rock-on.json',\n },\n {\n id: 'heart',\n emoji: '❤️',\n name: 'Heart',\n // lottieUrl: '/lottie/heart.json',\n },\n {\n id: 'trophy',\n emoji: '🏆',\n name: 'Trophy',\n // lottieUrl: '/lottie/trophy.json',\n },\n {\n id: 'hundred',\n emoji: '💯',\n name: 'Hundred',\n // lottieUrl: '/lottie/hundred.json',\n },\n {\n id: 'gold-medal',\n emoji: '🥇',\n name: 'Gold Medal',\n // lottieUrl: '/lottie/gold-medal.json',\n },\n {\n id: 'silver-medal',\n emoji: '🥈',\n name: 'Silver Medal',\n // lottieUrl: '/lottie/silver-medal.json',\n },\n {\n id: 'bronze-medal',\n emoji: '🥉',\n name: 'Bronze Medal',\n // lottieUrl: '/lottie/bronze-medal.json',\n },\n {\n id: 'target',\n emoji: '🎯',\n name: 'Target',\n // lottieUrl: '/lottie/target.json',\n },\n {\n id: 'star',\n emoji: '⭐',\n name: 'Star',\n // lottieUrl: '/lottie/star.json',\n },\n {\n id: 'lightning',\n emoji: '⚡',\n name: 'Lightning',\n // lottieUrl: '/lottie/lightning.json',\n },\n {\n id: 'rocket',\n emoji: '🚀',\n name: 'Rocket',\n // lottieUrl: '/lottie/rocket.json',\n },\n {\n id: 'explosion',\n emoji: '💥',\n name: 'Explosion',\n // lottieUrl: '/lottie/explosion.json',\n },\n {\n id: 'graduation',\n emoji: '🎓',\n name: 'Graduation',\n // lottieUrl: '/lottie/graduation.json',\n },\n {\n id: 'clock',\n emoji: '⏰',\n name: 'Clock',\n // lottieUrl: '/lottie/clock.json',\n },\n {\n id: 'bulb',\n emoji: '💡',\n name: 'Bulb',\n // lottieUrl: '/lottie/bulb.json',\n },\n {\n id: 'rainbow',\n emoji: '🌈',\n name: 'Rainbow',\n // lottieUrl: '/lottie/rainbow.json',\n },\n {\n id: 'clown',\n emoji: '🤡',\n name: 'Clown',\n // lottieUrl: '/lottie/clown.json',\n },\n {\n id: 'dancer',\n emoji: '💃',\n name: 'Dancer',\n // lottieUrl: '/lottie/dancer.json',\n },\n {\n id: 'flowers',\n emoji: '💐',\n name: 'Flowers',\n // lottieUrl: '/lottie/flowers.json',\n },\n {\n id: 'unicorn',\n emoji: '🦄',\n name: 'Unicorn',\n // lottieUrl: '/lottie/unicorn.json',\n },\n {\n id: 'drum',\n emoji: '🥁',\n name: 'Drum',\n // lottieUrl: '/lottie/drum.json',\n },\n {\n id: 'diamond',\n emoji: '💎',\n name: 'Diamond',\n // lottieUrl: '/lottie/diamond.json',\n },\n];\n"],"names":["stickerData"],"mappings":"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"}
@@ -83,4 +83,4 @@ export {
83
83
  i as StickerGrid,
84
84
  c as StickerGridContainer
85
85
  };
86
- //# sourceMappingURL=sticker-grid-styles.js.map
86
+ //# sourceMappingURL=sticker-selector-styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sticker-selector-styles.js","sources":["../../../../src/features/stickers/sticker-selector/sticker-selector-styles.ts"],"sourcesContent":["import styled from 'styled-components';\n\nexport const StickerContainer = styled.div<{\n $size: number | string;\n $disabled?: boolean;\n}>`\n position: relative;\n width: ${({ $size }) => (typeof $size === 'number' ? `${$size}px` : $size)};\n height: ${({ $size }) => (typeof $size === 'number' ? `${$size}px` : $size)};\n cursor: ${({ $disabled }) => ($disabled ? 'none' : 'pointer')};\n border-radius: 8px;\n overflow: hidden;\n display: flex;\n align-items: center;\n justify-content: center;\n transition: all 0.2s ease;\n background-color: transparent;\n opacity: ${({ $disabled }) => ($disabled ? 0.5 : 1)};\n\n &:hover {\n transform: ${({ $disabled }) => ($disabled ? 'none' : 'scale(1.1)')};\n background-color: rgba(255, 255, 255, 0.1);\n }\n\n &:active {\n transform: ${({ $disabled }) => ($disabled ? 'none' : 'scale(0.95)')};\n }\n`;\n\nexport const StaticEmoji = styled.div<{ $size: number | string }>`\n font-size: ${({ $size }) => {\n if (typeof $size === 'number') {\n return `${$size * 0.7}px`;\n }\n\n return '70%';\n }};\n line-height: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n transition: opacity 0.2s ease;\n`;\n\nexport const LottieContainer = styled.div<{ $size: number | string }>`\n position: absolute;\n top: 50%;\n left: 50%;\n width: ${({ $size }) => (typeof $size === 'number' ? `${$size * 0.7}px` : $size)};\n height: ${({ $size }) => (typeof $size === 'number' ? `${$size * 0.7}px` : $size)};\n opacity: 0;\n transition: opacity 0.2s ease;\n transform: translate(-50%, -50%);\n pointer-events: none;\n\n ${StickerContainer}:hover & {\n opacity: 1;\n }\n`;\n\nexport const StickerGrid = styled.div<{\n $columns: number;\n $gap: number;\n}>`\n display: grid;\n grid-template-columns: repeat(${({ $columns }) => $columns}, 1fr);\n gap: ${({ $gap }) => $gap}px;\n padding: 16px;\n background-color: #2a2a2a;\n border-radius: 12px;\n max-height: 400px;\n overflow-y: auto;\n\n &::-webkit-scrollbar {\n width: 8px;\n }\n\n &::-webkit-scrollbar-track {\n background: rgba(255, 255, 255, 0.1);\n border-radius: 4px;\n }\n\n &::-webkit-scrollbar-thumb {\n background: rgba(255, 255, 255, 0.3);\n border-radius: 4px;\n }\n\n &::-webkit-scrollbar-thumb:hover {\n background: rgba(255, 255, 255, 0.5);\n }\n`;\n\nexport const StickerGridContainer = styled.div<{\n $width: string;\n $height: string;\n}>`\n width: 100%;\n max-width: ${({ $width }) => $width};\n max-height: ${({ $height }) => $height};\n`;\n"],"names":["StickerContainer","styled","$size","$disabled","StaticEmoji","LottieContainer","StickerGrid","$columns","$gap","StickerGridContainer","$width","$height"],"mappings":";AAEO,MAAMA,IAAmBC,EAAO;AAAA;AAAA,WAK5B,CAAC,EAAE,OAAAC,EAAa,MAAA,OAAOA,KAAU,WAAW,GAAGA,CAAK,OAAOA,CAAM;AAAA,YAChE,CAAC,EAAE,OAAAA,EAAa,MAAA,OAAOA,KAAU,WAAW,GAAGA,CAAK,OAAOA,CAAM;AAAA,YACjE,CAAC,EAAE,WAAAC,EAAA,MAAiBA,IAAY,SAAS,SAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAQlD,CAAC,EAAE,WAAAA,EAAA,MAAiBA,IAAY,MAAM,CAAE;AAAA;AAAA;AAAA,iBAGpC,CAAC,EAAE,WAAAA,EAAA,MAAiBA,IAAY,SAAS,YAAa;AAAA;AAAA;AAAA;AAAA;AAAA,iBAKtD,CAAC,EAAE,WAAAA,EAAA,MAAiBA,IAAY,SAAS,aAAc;AAAA;AAAA,GAI3DC,IAAcH,EAAO;AAAA,eACnB,CAAC,EAAE,OAAAC,QACV,OAAOA,KAAU,WACZ,GAAGA,IAAQ,GAAG,OAGhB,KACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAUUG,IAAkBJ,EAAO;AAAA;AAAA;AAAA;AAAA,WAI3B,CAAC,EAAE,OAAAC,QAAa,OAAOA,KAAU,WAAW,GAAGA,IAAQ,GAAG,OAAOA,CAAM;AAAA,YACtE,CAAC,EAAE,OAAAA,QAAa,OAAOA,KAAU,WAAW,GAAGA,IAAQ,GAAG,OAAOA,CAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAM/EF,CAAgB;AAAA;AAAA;AAAA,GAKPM,IAAcL,EAAO;AAAA;AAAA,kCAKA,CAAC,EAAE,UAAAM,EAAS,MAAMA,CAAQ;AAAA,SACnD,CAAC,EAAE,MAAAC,EAAK,MAAMA,CAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GA0BdC,IAAuBR,EAAO;AAAA;AAAA,eAK5B,CAAC,EAAE,QAAAS,EAAO,MAAMA,CAAM;AAAA,gBACrB,CAAC,EAAE,SAAAC,EAAQ,MAAMA,CAAO;AAAA;"}
@@ -0,0 +1,25 @@
1
+ import { jsx as t } from "react/jsx-runtime";
2
+ import { memo as a } from "react";
3
+ import { stickerData as d } from "../sticker-data.js";
4
+ import l from "./sticker.js";
5
+ import { StickerGridContainer as f, StickerGrid as h } from "./sticker-selector-styles.js";
6
+ const n = ({
7
+ stickers: e = d,
8
+ columns: m = 4,
9
+ gap: i = 8,
10
+ stickerSize: p = 48,
11
+ onStickerClick: o
12
+ }) => /* @__PURE__ */ t(f, { $width: "350px", $height: "400px", children: /* @__PURE__ */ t(h, { $columns: m, $gap: i, children: e.map((r) => /* @__PURE__ */ t(
13
+ l,
14
+ {
15
+ emoji: r.emoji,
16
+ lottieUrl: r.lottieUrl,
17
+ size: p,
18
+ onClick: () => o == null ? void 0 : o(r)
19
+ },
20
+ r.id
21
+ )) }) }), u = a(n);
22
+ export {
23
+ u as default
24
+ };
25
+ //# sourceMappingURL=sticker-selector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sticker-selector.js","sources":["../../../../src/features/stickers/sticker-selector/sticker-selector.tsx"],"sourcesContent":["import type { IStickerGridProps } from './sticker-selector-types';\n\nimport React, { memo } from 'react';\n\nimport { stickerData } from '../sticker-data';\nimport Sticker from './sticker';\nimport * as S from './sticker-selector-styles';\n\nconst StickerSelector: React.FC<IStickerGridProps> = ({\n stickers = stickerData,\n columns = 4,\n gap = 8,\n stickerSize = 48,\n onStickerClick,\n}) => {\n return (\n <S.StickerGridContainer $width=\"350px\" $height=\"400px\">\n <S.StickerGrid $columns={columns} $gap={gap}>\n {stickers.map(sticker => (\n <Sticker\n key={sticker.id}\n emoji={sticker.emoji}\n lottieUrl={sticker.lottieUrl}\n size={stickerSize}\n onClick={() => onStickerClick?.(sticker)}\n />\n ))}\n </S.StickerGrid>\n </S.StickerGridContainer>\n );\n};\n\nexport default memo(StickerSelector);\n"],"names":["StickerSelector","stickers","stickerData","columns","gap","stickerSize","onStickerClick","S.StickerGridContainer","jsx","S.StickerGrid","sticker","Sticker","stickerSelector","memo"],"mappings":";;;;;AAQA,MAAMA,IAA+C,CAAC;AAAA,EACpD,UAAAC,IAAWC;AAAA,EACX,SAAAC,IAAU;AAAA,EACV,KAAAC,IAAM;AAAA,EACN,aAAAC,IAAc;AAAA,EACd,gBAAAC;AACF,wBAEKC,GAAA,EAAuB,QAAO,SAAQ,SAAQ,SAC7C,UAAA,gBAAAC,EAACC,GAAA,EAAc,UAAUN,GAAS,MAAMC,GACrC,UAAAH,EAAS,IAAI,CACZS,MAAA,gBAAAF;AAAA,EAACG;AAAA,EAAA;AAAA,IAEC,OAAOD,EAAQ;AAAA,IACf,WAAWA,EAAQ;AAAA,IACnB,MAAML;AAAA,IACN,SAAS,MAAMC,KAAA,gBAAAA,EAAiBI;AAAA,EAAO;AAAA,EAJlCA,EAAQ;AAAA,CAMhB,GACH,EACF,CAAA,GAIWE,IAAAC,EAAKb,CAAe;"}