@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.
- package/dist/assets/lottie/lottie.js +1 -1
- package/dist/assets/lottie/lottie.js.map +1 -1
- package/dist/features/auth/account-selector/account-selector.js +25 -26
- package/dist/features/auth/account-selector/account-selector.js.map +1 -1
- package/dist/features/auth/comps/auth-page-layout/auth-page-layout.js +14 -15
- package/dist/features/auth/comps/auth-page-layout/auth-page-layout.js.map +1 -1
- package/dist/features/auth/comps/user-list/user-item/user-item.js +31 -30
- package/dist/features/auth/comps/user-list/user-item/user-item.js.map +1 -1
- package/dist/features/auth/comps/user-list/user-list.js +34 -35
- package/dist/features/auth/comps/user-list/user-list.js.map +1 -1
- package/dist/features/auth/forgot-password/forgot-password-styled.js +15 -14
- package/dist/features/auth/forgot-password/forgot-password-styled.js.map +1 -1
- package/dist/features/auth/login/identifier-otp-form/identifier-otp-form-styled.js +7 -6
- package/dist/features/auth/login/identifier-otp-form/identifier-otp-form-styled.js.map +1 -1
- package/dist/features/auth/login/login-styled.js +9 -8
- package/dist/features/auth/login/login-styled.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card-styled.js +4 -4
- package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card-styled.js.map +1 -1
- package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card.js +85 -85
- package/dist/features/circle-games/game-launcher/comps/tables-card/tables-card.js.map +1 -1
- package/dist/features/circle-games/game-launcher/hooks/use-game-launcher-journey/use-game-launcher-journey.js +98 -121
- package/dist/features/circle-games/game-launcher/hooks/use-game-launcher-journey/use-game-launcher-journey.js.map +1 -1
- package/dist/features/circle-games/game-launcher/hooks/use-table-infinite-launcher-journey/use-table-infinite-launcher-journey.js +28 -29
- package/dist/features/circle-games/game-launcher/hooks/use-table-infinite-launcher-journey/use-table-infinite-launcher-journey.js.map +1 -1
- package/dist/features/circle-games/game-launcher/hooks/use-table-launcher-journey/use-table-launcher-journey.js +42 -43
- package/dist/features/circle-games/game-launcher/hooks/use-table-launcher-journey/use-table-launcher-journey.js.map +1 -1
- package/dist/features/circle-games/games/tutorial/tutorial.js +35 -43
- package/dist/features/circle-games/games/tutorial/tutorial.js.map +1 -1
- package/dist/features/circle-games/sign-up/comp/grade-input/grade-input-styled.js +2 -2
- package/dist/features/circle-games/sign-up/comp/grade-input/grade-input-styled.js.map +1 -1
- package/dist/features/circle-games/sign-up/comp/grade-input/grade-input.js +1 -1
- package/dist/features/circle-games/sign-up/comp/grade-input/grade-input.js.map +1 -1
- package/dist/features/circle-games/sign-up/comp/username-input/username-input.js +24 -26
- package/dist/features/circle-games/sign-up/comp/username-input/username-input.js.map +1 -1
- package/dist/features/circle-games/sign-up/constants.js +1 -3
- package/dist/features/circle-games/sign-up/constants.js.map +1 -1
- package/dist/features/cue-canvas/hooks/use-canvas-sync-broker.js +42 -42
- package/dist/features/cue-canvas/hooks/use-canvas-sync-broker.js.map +1 -1
- package/dist/features/hooks/use-viewport/use-viewport.js +22 -0
- package/dist/features/hooks/use-viewport/use-viewport.js.map +1 -0
- package/dist/features/journey/comps/coachmark/coachmark.js +27 -29
- package/dist/features/journey/comps/coachmark/coachmark.js.map +1 -1
- package/dist/features/journey/journey-id/journey-id-student.js +2 -2
- package/dist/features/journey/journey-id/journey-id-student.js.map +1 -1
- package/dist/features/journey/use-journey/journey-context-provider.js +72 -73
- package/dist/features/journey/use-journey/journey-context-provider.js.map +1 -1
- package/dist/features/journey/use-journey/journey-styled.js +4 -6
- package/dist/features/journey/use-journey/journey-styled.js.map +1 -1
- package/dist/features/stickers/sticker-data.js +228 -0
- package/dist/features/stickers/sticker-data.js.map +1 -0
- package/dist/features/{ui/sticker-grid/sticker-grid-styles.js → stickers/sticker-selector/sticker-selector-styles.js} +1 -1
- package/dist/features/stickers/sticker-selector/sticker-selector-styles.js.map +1 -0
- package/dist/features/stickers/sticker-selector/sticker-selector.js +25 -0
- package/dist/features/stickers/sticker-selector/sticker-selector.js.map +1 -0
- package/dist/features/{ui/sticker-grid → stickers/sticker-selector}/sticker.js +9 -9
- package/dist/features/stickers/sticker-selector/sticker.js.map +1 -0
- package/dist/features/{ui/stickers/stickers-effects.js → stickers/stickers-effects/effects.js} +6 -6
- package/dist/features/stickers/stickers-effects/effects.js.map +1 -0
- package/dist/features/{ui/stickers/stickers-styled.js → stickers/stickers-effects/stickers-effects-styled.js} +2 -2
- package/dist/features/stickers/stickers-effects/stickers-effects-styled.js.map +1 -0
- package/dist/features/{ui/stickers/stickers-utils.js → stickers/stickers-effects/stickers-effects-utils.js} +6 -6
- package/dist/features/stickers/stickers-effects/stickers-effects-utils.js.map +1 -0
- package/dist/features/stickers/stickers-effects/stickers-effects.js +39 -0
- package/dist/features/stickers/stickers-effects/stickers-effects.js.map +1 -0
- package/dist/features/ui/arrow-tooltip/arrow-tooltip-styled.js +60 -12
- package/dist/features/ui/arrow-tooltip/arrow-tooltip-styled.js.map +1 -1
- package/dist/features/ui/arrow-tooltip/arrow-tooltip.js +77 -72
- package/dist/features/ui/arrow-tooltip/arrow-tooltip.js.map +1 -1
- package/dist/features/ui/error/error.js +27 -65
- package/dist/features/ui/error/error.js.map +1 -1
- package/dist/features/ui/modals/modal-styled.js +58 -34
- package/dist/features/ui/modals/modal-styled.js.map +1 -1
- package/dist/features/ui/modals/modal.js +14 -40
- package/dist/features/ui/modals/modal.js.map +1 -1
- package/dist/features/ui/nudge/nudge-styled.js +7 -14
- package/dist/features/ui/nudge/nudge-styled.js.map +1 -1
- package/dist/features/ui/nudge/nudge.js +12 -13
- package/dist/features/ui/nudge/nudge.js.map +1 -1
- package/dist/features/ui/streak-icon/streak-icon-styled.js +13 -13
- package/dist/features/ui/streak-icon/streak-icon-styled.js.map +1 -1
- package/dist/features/ui/streak-icon/streak-icon.js +15 -17
- package/dist/features/ui/streak-icon/streak-icon.js.map +1 -1
- package/dist/features/ui/text/text.js +36 -40
- package/dist/features/ui/text/text.js.map +1 -1
- package/dist/features/ui/theme/constants.js +2 -4
- package/dist/features/ui/theme/constants.js.map +1 -1
- package/dist/features/ui/theme/get-device.js +3 -3
- package/dist/features/ui/theme/get-device.js.map +1 -1
- package/dist/features/worksheet/worksheet/constants.js +13 -12
- package/dist/features/worksheet/worksheet/constants.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question.js +260 -246
- package/dist/features/worksheet/worksheet/worksheet-question/worksheet-question.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet-styled.js +28 -37
- package/dist/features/worksheet/worksheet/worksheet-styled.js.map +1 -1
- package/dist/features/worksheet/worksheet/worksheet.js +164 -166
- package/dist/features/worksheet/worksheet/worksheet.js.map +1 -1
- package/dist/index.d.ts +50 -36
- package/dist/index.js +334 -334
- package/dist/static/nudge-tap.5cb30093.json +1057 -0
- package/package.json +1 -1
- package/dist/features/ui/arrow-tooltip/arrow-tooltip-constants.js +0 -6
- package/dist/features/ui/arrow-tooltip/arrow-tooltip-constants.js.map +0 -1
- package/dist/features/ui/arrow-tooltip/comps/tooltip-body-styled.js +0 -63
- package/dist/features/ui/arrow-tooltip/comps/tooltip-body-styled.js.map +0 -1
- package/dist/features/ui/arrow-tooltip/comps/tooltip-body.js +0 -21
- package/dist/features/ui/arrow-tooltip/comps/tooltip-body.js.map +0 -1
- package/dist/features/ui/sticker-grid/sticker-grid-styles.js.map +0 -1
- package/dist/features/ui/sticker-grid/sticker-grid.js +0 -24
- package/dist/features/ui/sticker-grid/sticker-grid.js.map +0 -1
- package/dist/features/ui/sticker-grid/sticker.js.map +0 -1
- package/dist/features/ui/stickers/constants.js +0 -6
- package/dist/features/ui/stickers/constants.js.map +0 -1
- package/dist/features/ui/stickers/stickers-effects.js.map +0 -1
- package/dist/features/ui/stickers/stickers-styled.js.map +0 -1
- package/dist/features/ui/stickers/stickers-utils.js.map +0 -1
- package/dist/features/ui/stickers/stickers.js +0 -40
- package/dist/features/ui/stickers/stickers.js.map +0 -1
- package/dist/static/nudge-tap.0591aef4.json +0 -1
@@ -1,85 +1,47 @@
|
|
1
|
-
import { jsxs as
|
2
|
-
import { useCallback as
|
3
|
-
import { ILLUSTRATIONS as
|
4
|
-
import
|
5
|
-
import
|
6
|
-
import
|
7
|
-
import
|
8
|
-
const
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
description: "body3",
|
16
|
-
imageWidth: 54,
|
17
|
-
imageHeight: 44
|
18
|
-
},
|
19
|
-
full: {
|
20
|
-
widthX: 22.5,
|
21
|
-
heightX: 11.5,
|
22
|
-
borderRadiusX: 1,
|
23
|
-
marginBottomX: 1.5,
|
24
|
-
title: "h4",
|
25
|
-
description: "body2",
|
26
|
-
imageWidth: 122,
|
27
|
-
imageHeight: 100
|
28
|
-
}
|
29
|
-
}, w = (l) => {
|
30
|
-
const { height: d, onTryAgain: r, theme: h = "light", title: s, description: g, size: t = "full" } = l, c = $(() => {
|
31
|
-
r ? r() : window.location.reload();
|
32
|
-
}, [r]), o = h === "dark" ? "WHITE_T_87" : "BLACK_T_87";
|
33
|
-
return /* @__PURE__ */ n(a, { $alignItems: "center", $justifyContent: "center", $height: d, children: [
|
34
|
-
/* @__PURE__ */ i(
|
35
|
-
a,
|
1
|
+
import { jsxs as o, jsx as r, Fragment as h } from "react/jsx-runtime";
|
2
|
+
import { useCallback as g } from "react";
|
3
|
+
import { ILLUSTRATIONS as $ } from "../../../assets/illustrations/illustrations.js";
|
4
|
+
import p from "../buttons/button/button.js";
|
5
|
+
import f from "../image/image.js";
|
6
|
+
import n from "../layout/flex-view.js";
|
7
|
+
import i from "../text/text.js";
|
8
|
+
const w = (a) => {
|
9
|
+
const { height: l, onTryAgain: t, theme: s = "light", title: m, description: c } = a, d = g(() => {
|
10
|
+
t ? t() : window.location.reload();
|
11
|
+
}, [t]), e = s === "dark" ? "WHITE_T_87" : "BLACK_T_87";
|
12
|
+
return /* @__PURE__ */ o(n, { $alignItems: "center", $justifyContent: "center", $height: l, children: [
|
13
|
+
/* @__PURE__ */ r(
|
14
|
+
n,
|
36
15
|
{
|
37
|
-
$widthX:
|
38
|
-
$heightX:
|
39
|
-
$borderRadiusX:
|
40
|
-
$marginBottomX:
|
16
|
+
$widthX: 22.5,
|
17
|
+
$heightX: 11.5,
|
18
|
+
$borderRadiusX: 1,
|
19
|
+
$marginBottomX: 1.5,
|
41
20
|
$background: "GREY_1",
|
42
21
|
$justifyContent: "center",
|
43
22
|
$alignItems: "center",
|
44
|
-
children: /* @__PURE__ */
|
45
|
-
u,
|
46
|
-
{
|
47
|
-
width: e[t].imageWidth,
|
48
|
-
height: e[t].imageHeight,
|
49
|
-
src: p.ROCKET_BROKEN,
|
50
|
-
withLoader: !1
|
51
|
-
}
|
52
|
-
)
|
23
|
+
children: /* @__PURE__ */ r(f, { width: 122, height: 100, src: $.ROCKET_BROKEN, withLoader: !1 })
|
53
24
|
}
|
54
25
|
),
|
55
|
-
/* @__PURE__ */ i
|
56
|
-
|
57
|
-
{
|
58
|
-
$renderAs: e[t].title,
|
59
|
-
$marginBottomX: 0.5,
|
60
|
-
$color: o,
|
61
|
-
$align: "center",
|
62
|
-
children: s ?? "Oops! Looks like something went wrong"
|
63
|
-
}
|
64
|
-
),
|
65
|
-
/* @__PURE__ */ i(m, { $renderAs: "body2", $align: "center", $marginBottomX: 1.5, $color: o, children: g ?? /* @__PURE__ */ n(X, { children: [
|
26
|
+
/* @__PURE__ */ r(i, { $renderAs: "h4", $marginBottomX: 0.5, $color: e, $align: "center", children: m ?? "Oops! Looks like something went wrong" }),
|
27
|
+
/* @__PURE__ */ r(i, { $renderAs: "body2", $align: "center", $marginBottomX: 1.5, $color: e, children: c ?? /* @__PURE__ */ o(h, { children: [
|
66
28
|
"Please try again. Alternatively if that does not work,",
|
67
|
-
/* @__PURE__ */
|
29
|
+
/* @__PURE__ */ r("br", {}),
|
68
30
|
" please contact support."
|
69
31
|
] }) }),
|
70
|
-
/* @__PURE__ */
|
71
|
-
|
32
|
+
/* @__PURE__ */ r(
|
33
|
+
p,
|
72
34
|
{
|
73
35
|
label: "Try again",
|
74
|
-
onClick:
|
36
|
+
onClick: d,
|
75
37
|
renderAs: "primary",
|
76
38
|
size: "small",
|
77
39
|
widthX: 14
|
78
40
|
}
|
79
41
|
)
|
80
42
|
] });
|
81
|
-
},
|
43
|
+
}, b = w;
|
82
44
|
export {
|
83
|
-
|
45
|
+
b as default
|
84
46
|
};
|
85
47
|
//# sourceMappingURL=error.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"error.js","sources":["../../../../src/features/ui/error/error.tsx"],"sourcesContent":["import
|
1
|
+
{"version":3,"file":"error.js","sources":["../../../../src/features/ui/error/error.tsx"],"sourcesContent":["import React, { useCallback } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../assets/illustrations/illustrations';\nimport Button from '../buttons/button/button';\nimport Image from '../image/image';\nimport FlexView from '../layout/flex-view';\nimport Text from '../text/text';\n\ninterface IErrorProps {\n onTryAgain?: () => void;\n height?: string | number;\n theme?: 'light' | 'dark';\n title?: string;\n description?: string;\n}\n\nconst Error: React.FC<IErrorProps> = props => {\n const { height, onTryAgain, theme = 'light', title, description } = props;\n const handleTryAgain = useCallback(() => {\n if (onTryAgain) {\n onTryAgain();\n } else {\n window.location.reload();\n }\n }, [onTryAgain]);\n\n const textColor = theme === 'dark' ? 'WHITE_T_87' : 'BLACK_T_87';\n\n return (\n <FlexView $alignItems=\"center\" $justifyContent=\"center\" $height={height}>\n <FlexView\n $widthX={22.5}\n $heightX={11.5}\n $borderRadiusX={1}\n $marginBottomX={1.5}\n $background=\"GREY_1\"\n $justifyContent=\"center\"\n $alignItems=\"center\"\n >\n <Image width={122} height={100} src={ILLUSTRATIONS.ROCKET_BROKEN} withLoader={false} />\n </FlexView>\n <Text $renderAs=\"h4\" $marginBottomX={0.5} $color={textColor} $align=\"center\">\n {title ?? 'Oops! Looks like something went wrong'}\n </Text>\n <Text $renderAs=\"body2\" $align=\"center\" $marginBottomX={1.5} $color={textColor}>\n {description ?? (\n <>\n Please try again. Alternatively if that does not work,\n <br /> please contact support.\n </>\n )}\n </Text>\n <Button\n label=\"Try again\"\n onClick={handleTryAgain}\n renderAs=\"primary\"\n size=\"small\"\n widthX={14}\n />\n </FlexView>\n );\n};\n\nexport default Error;\n"],"names":["Error","props","height","onTryAgain","theme","title","description","handleTryAgain","useCallback","textColor","FlexView","jsx","Image","ILLUSTRATIONS","Text","jsxs","Fragment","Button","Error$1"],"mappings":";;;;;;;AAgBA,MAAMA,IAA+B,CAASC,MAAA;AAC5C,QAAM,EAAE,QAAAC,GAAQ,YAAAC,GAAY,OAAAC,IAAQ,SAAS,OAAAC,GAAO,aAAAC,EAAgB,IAAAL,GAC9DM,IAAiBC,EAAY,MAAM;AACvC,IAAIL,IACSA,MAEX,OAAO,SAAS;EAClB,GACC,CAACA,CAAU,CAAC,GAETM,IAAYL,MAAU,SAAS,eAAe;AAEpD,2BACGM,GAAS,EAAA,aAAY,UAAS,iBAAgB,UAAS,SAASR,GAC/D,UAAA;AAAA,IAAA,gBAAAS;AAAA,MAACD;AAAA,MAAA;AAAA,QACC,SAAS;AAAA,QACT,UAAU;AAAA,QACV,gBAAgB;AAAA,QAChB,gBAAgB;AAAA,QAChB,aAAY;AAAA,QACZ,iBAAgB;AAAA,QAChB,aAAY;AAAA,QAEZ,UAAA,gBAAAC,EAACC,GAAM,EAAA,OAAO,KAAK,QAAQ,KAAK,KAAKC,EAAc,eAAe,YAAY,GAAO,CAAA;AAAA,MAAA;AAAA,IACvF;AAAA,IACA,gBAAAF,EAACG,GAAK,EAAA,WAAU,MAAK,gBAAgB,KAAK,QAAQL,GAAW,QAAO,UACjE,UAAAJ,KAAS,wCACZ,CAAA;AAAA,IACA,gBAAAM,EAACG,GAAK,EAAA,WAAU,SAAQ,QAAO,UAAS,gBAAgB,KAAK,QAAQL,GAClE,UAAAH,KACG,gBAAAS,EAAAC,GAAA,EAAA,UAAA;AAAA,MAAA;AAAA,wBAEC,MAAG,EAAA;AAAA,MAAE;AAAA,IAAA,EAAA,CACR,EAEJ,CAAA;AAAA,IACA,gBAAAL;AAAA,MAACM;AAAA,MAAA;AAAA,QACC,OAAM;AAAA,QACN,SAASV;AAAA,QACT,UAAS;AAAA,QACT,MAAK;AAAA,QACL,QAAQ;AAAA,MAAA;AAAA,IACV;AAAA,EACF,EAAA,CAAA;AAEJ,GAEAW,IAAelB;"}
|
@@ -1,16 +1,16 @@
|
|
1
|
-
import
|
2
|
-
const s =
|
3
|
-
({ theme: { colors:
|
1
|
+
import e from "styled-components";
|
2
|
+
const s = e.div(
|
3
|
+
({ theme: { colors: a, zIndex: t }, $isClosing: o }) => `
|
4
4
|
position: fixed;
|
5
5
|
top: 0;
|
6
6
|
left: 0;
|
7
7
|
right: 0;
|
8
8
|
bottom: 0;
|
9
|
-
background-color: ${
|
9
|
+
background-color: ${a.BLACK_T_60};
|
10
10
|
backdrop-filter: blur(40px);
|
11
11
|
display: flex;
|
12
|
-
animation: ${
|
13
|
-
z-index: ${
|
12
|
+
animation: ${o ? "backdropFadeOut" : "backdropFadeIn"} 0.2s ease-out forwards;
|
13
|
+
z-index: ${t.MODAL};
|
14
14
|
|
15
15
|
@keyframes backdropFadeIn {
|
16
16
|
from {
|
@@ -30,20 +30,20 @@ const s = a.div(
|
|
30
30
|
}
|
31
31
|
}
|
32
32
|
`
|
33
|
-
),
|
34
|
-
({ theme: { colors:
|
33
|
+
), c = e.div(
|
34
|
+
({ theme: { colors: a }, $isClosing: t, $width: o }) => `
|
35
35
|
position: relative;
|
36
36
|
align-self: center;
|
37
37
|
margin: 0 auto;
|
38
|
-
width: ${
|
39
|
-
background-color: ${
|
40
|
-
border: 1px solid ${
|
38
|
+
width: ${o};
|
39
|
+
background-color: ${a.WHITE_1};
|
40
|
+
border: 1px solid ${a.BLACK_1};
|
41
41
|
transform-origin: center center;
|
42
|
-
animation: ${
|
42
|
+
animation: ${t ? "modalDisappear" : "modalAppear"} 0.5s cubic-bezier(0.19, 1, 0.22, 1) forwards;
|
43
43
|
box-shadow: 0px 10px 20px 0px rgba(0, 0, 0, 0.20);
|
44
44
|
|
45
45
|
/* Responsive behavior for smaller screens */
|
46
|
-
@media (max-width: calc(${
|
46
|
+
@media (max-width: calc(${o} + 80px)) {
|
47
47
|
width: 100%;
|
48
48
|
max-width: 100%;
|
49
49
|
height: 100%;
|
@@ -73,41 +73,35 @@ const s = a.div(
|
|
73
73
|
}
|
74
74
|
}
|
75
75
|
`
|
76
|
-
),
|
77
|
-
({ $modalWidth:
|
76
|
+
), l = e.div(
|
77
|
+
({ $modalWidth: a }) => `
|
78
78
|
max-height: calc(100vh - 142px);
|
79
79
|
overflow-y: auto;
|
80
80
|
|
81
|
-
@media (max-width: calc(${
|
81
|
+
@media (max-width: calc(${a} + 80px)) {
|
82
82
|
max-height: 100vh;
|
83
83
|
}
|
84
84
|
}`
|
85
|
-
), d =
|
86
|
-
({ theme: { colors:
|
85
|
+
), d = e.div(
|
86
|
+
({ theme: { colors: a }, $modalWidth: t }) => `
|
87
87
|
position: absolute;
|
88
88
|
top: -56px;
|
89
89
|
right: -40px;
|
90
|
-
color: ${
|
90
|
+
color: ${a.WHITE_1};
|
91
91
|
transition: all 0.2s ease;
|
92
92
|
|
93
93
|
&:hover {
|
94
94
|
transform: scale(1.05);
|
95
95
|
}
|
96
96
|
|
97
|
-
@media (max-width: calc(${
|
97
|
+
@media (max-width: calc(${t} + 80px)) {
|
98
98
|
top: 16px;
|
99
99
|
right: 16px;
|
100
|
-
color: ${
|
100
|
+
color: ${a.BLACK_1};
|
101
101
|
}
|
102
102
|
`
|
103
|
-
), m =
|
104
|
-
|
105
|
-
align-items: center;
|
106
|
-
justify-content: center;
|
107
|
-
height: 100vh;
|
108
|
-
width: 100%;
|
109
|
-
`, i = 720, r = 800, n = 500, h = a.div(
|
110
|
-
({ $isClosing: t }) => `
|
103
|
+
), i = 720, r = 800, n = 500, m = e.div(
|
104
|
+
({ $isClosing: a }) => `
|
111
105
|
position: absolute;
|
112
106
|
width: ${i}px;
|
113
107
|
height: 100%;
|
@@ -124,7 +118,7 @@ const s = a.div(
|
|
124
118
|
animation-timing-function: linear;
|
125
119
|
animation-fill-mode: forwards;
|
126
120
|
opacity: 0;
|
127
|
-
${
|
121
|
+
${a ? `
|
128
122
|
animation: closeSpotlight;
|
129
123
|
animation-duration: ${n}ms;
|
130
124
|
animation-timing-function: linear;
|
@@ -150,13 +144,43 @@ const s = a.div(
|
|
150
144
|
}
|
151
145
|
}
|
152
146
|
`
|
147
|
+
), f = e.div(
|
148
|
+
({ theme: { colors: a, zIndex: t }, $isClosing: o }) => `
|
149
|
+
position: fixed;
|
150
|
+
top: 0;
|
151
|
+
left: 0;
|
152
|
+
right: 0;
|
153
|
+
bottom: 0;
|
154
|
+
background-color: ${a.TRANSPARENT};
|
155
|
+
display: flex;
|
156
|
+
animation: ${o ? "backdropFadeOut" : "backdropFadeIn"} 0.2s ease-out forwards;
|
157
|
+
z-index: ${t.MODAL};
|
158
|
+
|
159
|
+
@keyframes backdropFadeIn {
|
160
|
+
from {
|
161
|
+
opacity: 0;
|
162
|
+
}
|
163
|
+
to {
|
164
|
+
opacity: 1;
|
165
|
+
}
|
166
|
+
}
|
167
|
+
|
168
|
+
@keyframes backdropFadeOut {
|
169
|
+
from {
|
170
|
+
opacity: 1;
|
171
|
+
}
|
172
|
+
to {
|
173
|
+
opacity: 0;
|
174
|
+
}
|
175
|
+
}
|
176
|
+
`
|
153
177
|
);
|
154
178
|
export {
|
155
|
-
|
156
|
-
|
179
|
+
c as BaseModal,
|
180
|
+
l as BaseModalContent,
|
157
181
|
d as CloseButtonContainer,
|
158
182
|
s as ModalContainer,
|
159
|
-
m as
|
160
|
-
|
183
|
+
m as SpotlightModal,
|
184
|
+
f as TransparentModalContainer
|
161
185
|
};
|
162
186
|
//# sourceMappingURL=modal-styled.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"modal-styled.js","sources":["../../../../src/features/ui/modals/modal-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nconst ModalContainer = styled.div<{ $isClosing?: boolean }>(\n ({ theme: { colors, zIndex }, $isClosing }) => `\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: ${colors.BLACK_T_60};\n backdrop-filter: blur(40px);\n display: flex;\n animation: ${$isClosing ? 'backdropFadeOut' : 'backdropFadeIn'} 0.2s ease-out forwards;\n z-index: ${zIndex.MODAL};\n\n @keyframes backdropFadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n \n @keyframes backdropFadeOut {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n }\n`,\n);\n\n/**\n * Base modal container with customizable width and animation state\n */\nconst BaseModal = styled.div<{\n $isClosing?: boolean;\n $width: string;\n}>(\n ({ theme: { colors }, $isClosing, $width }) => `\n position: relative;\n align-self: center;\n margin: 0 auto;\n width: ${$width};\n background-color: ${colors.WHITE_1};\n border: 1px solid ${colors.BLACK_1};\n transform-origin: center center;\n animation: ${\n $isClosing ? 'modalDisappear' : 'modalAppear'\n } 0.5s cubic-bezier(0.19, 1, 0.22, 1) forwards;\n box-shadow: 0px 10px 20px 0px rgba(0, 0, 0, 0.20);\n \n /* Responsive behavior for smaller screens */\n @media (max-width: calc(${$width} + 80px)) {\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n border: none;\n }\n \n @keyframes modalAppear {\n 0% {\n opacity: 0;\n transform: perspective(1200px) translateZ(-50px) translateY(10px) scale(0.98);\n }\n 100% {\n opacity: 1;\n transform: perspective(1200px) translateZ(0) translateY(0) scale(1);\n }\n }\n \n @keyframes modalDisappear {\n 0% {\n opacity: 1;\n transform: perspective(1200px) translateZ(0) translateY(0) scale(1);\n }\n 100% {\n opacity: 0;\n transform: perspective(1200px) translateZ(-50px) translateY(10px) scale(0.98);\n }\n }\n`,\n);\n\n/**\n * Scrollable content container inside the modal\n */\nconst BaseModalContent = styled.div<{ $modalWidth: string }>(\n ({ $modalWidth }) => `\n max-height: calc(100vh - 142px);\n overflow-y: auto;\n\n @media (max-width: calc(${$modalWidth} + 80px)) {\n max-height: 100vh;\n }\n}`,\n);\n\n/**\n * Container for the close button with responsive positioning\n */\nconst CloseButtonContainer = styled.div<{ $modalWidth: string }>(\n ({ theme: { colors }, $modalWidth }) => `\n position: absolute;\n top: -56px;\n right: -40px;\n color: ${colors.WHITE_1};\n transition: all 0.2s ease;\n \n &:hover {\n transform: scale(1.05);\n }\n\n @media (max-width: calc(${$modalWidth} + 80px)) {\n top: 16px;\n right: 16px;\n color: ${colors.BLACK_1};\n }\n`,\n);\n\nconst
|
1
|
+
{"version":3,"file":"modal-styled.js","sources":["../../../../src/features/ui/modals/modal-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nconst ModalContainer = styled.div<{ $isClosing?: boolean }>(\n ({ theme: { colors, zIndex }, $isClosing }) => `\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: ${colors.BLACK_T_60};\n backdrop-filter: blur(40px);\n display: flex;\n animation: ${$isClosing ? 'backdropFadeOut' : 'backdropFadeIn'} 0.2s ease-out forwards;\n z-index: ${zIndex.MODAL};\n\n @keyframes backdropFadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n \n @keyframes backdropFadeOut {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n }\n`,\n);\n\n/**\n * Base modal container with customizable width and animation state\n */\nconst BaseModal = styled.div<{\n $isClosing?: boolean;\n $width: string;\n}>(\n ({ theme: { colors }, $isClosing, $width }) => `\n position: relative;\n align-self: center;\n margin: 0 auto;\n width: ${$width};\n background-color: ${colors.WHITE_1};\n border: 1px solid ${colors.BLACK_1};\n transform-origin: center center;\n animation: ${\n $isClosing ? 'modalDisappear' : 'modalAppear'\n } 0.5s cubic-bezier(0.19, 1, 0.22, 1) forwards;\n box-shadow: 0px 10px 20px 0px rgba(0, 0, 0, 0.20);\n \n /* Responsive behavior for smaller screens */\n @media (max-width: calc(${$width} + 80px)) {\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n border: none;\n }\n \n @keyframes modalAppear {\n 0% {\n opacity: 0;\n transform: perspective(1200px) translateZ(-50px) translateY(10px) scale(0.98);\n }\n 100% {\n opacity: 1;\n transform: perspective(1200px) translateZ(0) translateY(0) scale(1);\n }\n }\n \n @keyframes modalDisappear {\n 0% {\n opacity: 1;\n transform: perspective(1200px) translateZ(0) translateY(0) scale(1);\n }\n 100% {\n opacity: 0;\n transform: perspective(1200px) translateZ(-50px) translateY(10px) scale(0.98);\n }\n }\n`,\n);\n\n/**\n * Scrollable content container inside the modal\n */\nconst BaseModalContent = styled.div<{ $modalWidth: string }>(\n ({ $modalWidth }) => `\n max-height: calc(100vh - 142px);\n overflow-y: auto;\n\n @media (max-width: calc(${$modalWidth} + 80px)) {\n max-height: 100vh;\n }\n}`,\n);\n\n/**\n * Container for the close button with responsive positioning\n */\nconst CloseButtonContainer = styled.div<{ $modalWidth: string }>(\n ({ theme: { colors }, $modalWidth }) => `\n position: absolute;\n top: -56px;\n right: -40px;\n color: ${colors.WHITE_1};\n transition: all 0.2s ease;\n \n &:hover {\n transform: scale(1.05);\n }\n\n @media (max-width: calc(${$modalWidth} + 80px)) {\n top: 16px;\n right: 16px;\n color: ${colors.BLACK_1};\n }\n`,\n);\n\nconst spotlightWidth = 720;\nconst spotlightAnimationStartDuration = 800;\nconst spotlightAnimationEndDuration = 500;\n\nconst SpotlightModal = styled.div<{\n $isClosing?: boolean;\n}>(\n ({ $isClosing }) => `\n position: absolute;\n width: ${spotlightWidth}px;\n height: 100%;\n left: 50%;\n margin-left: ${-(spotlightWidth / 2)}px;\n clip-path: polygon(calc(50% - 100px) 0, calc(50% + 100px) 0, 100% 100%, 0 100%);\n background: linear-gradient(\n 180deg,\n rgba(0, 0, 0, 1) 0%,\n rgba(0, 0, 0, 0) 100%\n );\n animation: openSpotlight;\n animation-duration: ${spotlightAnimationStartDuration}ms;\n animation-timing-function: linear;\n animation-fill-mode: forwards;\n opacity: 0;\n ${\n $isClosing\n ? `\n animation: closeSpotlight;\n animation-duration: ${spotlightAnimationEndDuration}ms;\n animation-timing-function: linear;\n animation-fill-mode: forwards;\n opacity: 1;\n `\n : ''\n }\n\n @keyframes openSpotlight {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n\n @keyframes closeSpotlight {\n from {\n transform: rotateY(0);\n }\n to {\n transform: rotateY(90deg);\n }\n }\n`,\n);\n\nconst TransparentModalContainer = styled.div<{ $isClosing?: boolean }>(\n ({ theme: { colors, zIndex }, $isClosing }) => `\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: ${colors.TRANSPARENT};\n display: flex;\n animation: ${$isClosing ? 'backdropFadeOut' : 'backdropFadeIn'} 0.2s ease-out forwards;\n z-index: ${zIndex.MODAL};\n\n @keyframes backdropFadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n \n @keyframes backdropFadeOut {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n }\n`,\n);\n\nexport {\n ModalContainer,\n BaseModal,\n BaseModalContent,\n CloseButtonContainer,\n SpotlightModal,\n TransparentModalContainer,\n};\n"],"names":["ModalContainer","styled","colors","zIndex","$isClosing","BaseModal","$width","BaseModalContent","$modalWidth","CloseButtonContainer","spotlightWidth","spotlightAnimationStartDuration","spotlightAnimationEndDuration","SpotlightModal","TransparentModalContainer"],"mappings":";AAEA,MAAMA,IAAiBC,EAAO;AAAA,EAC5B,CAAC,EAAE,OAAO,EAAE,QAAAC,GAAQ,QAAAC,EAAO,GAAG,YAAAC,QAAiB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAM3BF,EAAO,UAAU;AAAA;AAAA;AAAA,eAGxBE,IAAa,oBAAoB,gBAAgB;AAAA,aACnDD,EAAO,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAoBzB,GAKME,IAAYJ,EAAO;AAAA,EAIvB,CAAC,EAAE,OAAO,EAAE,QAAAC,EAAU,GAAA,YAAAE,GAAY,QAAAE,QAAa;AAAA;AAAA;AAAA;AAAA,WAItCA,CAAM;AAAA,sBACKJ,EAAO,OAAO;AAAA,sBACdA,EAAO,OAAO;AAAA;AAAA,eAGhCE,IAAa,mBAAmB,aAClC;AAAA;AAAA;AAAA;AAAA,4BAI0BE,CAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA8BlC,GAKMC,IAAmBN,EAAO;AAAA,EAC9B,CAAC,EAAE,aAAAO,EAAA,MAAkB;AAAA;AAAA;AAAA;AAAA,4BAIKA,CAAW;AAAA;AAAA;AAAA;AAIvC,GAKMC,IAAuBR,EAAO;AAAA,EAClC,CAAC,EAAE,OAAO,EAAE,QAAAC,EAAO,GAAG,aAAAM,EAAkB,MAAA;AAAA;AAAA;AAAA;AAAA,WAI/BN,EAAO,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAOGM,CAAW;AAAA;AAAA;AAAA,aAG1BN,EAAO,OAAO;AAAA;AAAA;AAG3B,GAEMQ,IAAiB,KACjBC,IAAkC,KAClCC,IAAgC,KAEhCC,IAAiBZ,EAAO;AAAA,EAG5B,CAAC,EAAE,YAAAG,EAAA,MAAiB;AAAA;AAAA,WAEXM,CAAc;AAAA;AAAA;AAAA,iBAGR,EAAEA,IAAiB,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAQdC,CAA+B;AAAA;AAAA;AAAA;AAAA,IAKnDP,IACI;AAAA;AAAA,4BAEoBQ,CAA6B;AAAA;AAAA;AAAA;AAAA,QAKjD,EACN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAoBF,GAEME,IAA4Bb,EAAO;AAAA,EACvC,CAAC,EAAE,OAAO,EAAE,QAAAC,GAAQ,QAAAC,EAAO,GAAG,YAAAC,QAAiB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAM3BF,EAAO,WAAW;AAAA;AAAA,eAEzBE,IAAa,oBAAoB,gBAAgB;AAAA,aACnDD,EAAO,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAoBzB;"}
|
@@ -1,45 +1,19 @@
|
|
1
|
-
import {
|
2
|
-
import {
|
3
|
-
import
|
4
|
-
import
|
5
|
-
import
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
return f === "spotlight" ? /* @__PURE__ */ r(c, { $isClosing: o, children: /* @__PURE__ */ r(
|
15
|
-
n,
|
16
|
-
{
|
17
|
-
fallback: /* @__PURE__ */ r(s, { children: /* @__PURE__ */ r(h, { height: "100vh" }) }),
|
18
|
-
onError: l,
|
19
|
-
children: /* @__PURE__ */ t(
|
20
|
-
a,
|
21
|
-
{
|
22
|
-
fallback: /* @__PURE__ */ r(s, { children: /* @__PURE__ */ r(d, { height: "100vh" }) }),
|
23
|
-
children: [
|
24
|
-
/* @__PURE__ */ r(M, { $isClosing: o }),
|
25
|
-
i
|
26
|
-
]
|
27
|
-
}
|
28
|
-
)
|
29
|
-
}
|
30
|
-
) }) : /* @__PURE__ */ r(c, { $isClosing: o, children: /* @__PURE__ */ t(x, { $isClosing: o, $width: e, children: [
|
31
|
-
C !== !1 && /* @__PURE__ */ r(v, { $modalWidth: e, children: /* @__PURE__ */ r(E, { label: "Close", onClick: p, children: /* @__PURE__ */ r($, { width: 40, height: 40 }) }) }),
|
32
|
-
/* @__PURE__ */ r(B, { $modalWidth: e, children: /* @__PURE__ */ r(
|
33
|
-
n,
|
34
|
-
{
|
35
|
-
fallback: /* @__PURE__ */ r(h, { height: "50vh", size: "compact" }),
|
36
|
-
onError: l,
|
37
|
-
children: /* @__PURE__ */ r(a, { fallback: /* @__PURE__ */ r(d, { height: "50vh" }), children: i })
|
38
|
-
}
|
39
|
-
) })
|
1
|
+
import { jsxs as i, jsx as e } from "react/jsx-runtime";
|
2
|
+
import { memo as m } from "react";
|
3
|
+
import h from "../../../assets/line-icons/icons/cross.js";
|
4
|
+
import c from "../buttons/clickable/clickable.js";
|
5
|
+
import { ModalContainer as n, SpotlightModal as f, TransparentModalContainer as p, BaseModal as C, CloseButtonContainer as $, BaseModalContent as u } from "./modal-styled.js";
|
6
|
+
const W = m(({ modal: a, isClosing: o = !1, onClose: s }) => {
|
7
|
+
const { renderAs: t, element: r, modalWidth: l, isDismissable: d } = a;
|
8
|
+
return t === "spotlight" ? /* @__PURE__ */ i(n, { $isClosing: o, children: [
|
9
|
+
/* @__PURE__ */ e(f, { $isClosing: o }),
|
10
|
+
r
|
11
|
+
] }) : t === "fullscreen-transparent" ? /* @__PURE__ */ e(p, { $isClosing: o, children: r }) : /* @__PURE__ */ e(n, { $isClosing: o, children: /* @__PURE__ */ i(C, { $isClosing: o, $width: l, children: [
|
12
|
+
d !== !1 && /* @__PURE__ */ e($, { $modalWidth: l, children: /* @__PURE__ */ e(c, { label: "Close", onClick: s, children: /* @__PURE__ */ e(h, { width: 40, height: 40 }) }) }),
|
13
|
+
/* @__PURE__ */ e(u, { $modalWidth: l, children: r })
|
40
14
|
] }) });
|
41
15
|
});
|
42
16
|
export {
|
43
|
-
|
17
|
+
W as default
|
44
18
|
};
|
45
19
|
//# sourceMappingURL=modal.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"modal.js","sources":["../../../../src/features/ui/modals/modal.tsx"],"sourcesContent":["import type { IModalProps } from './modal-types';\nimport type { FC } from 'react';\n\nimport {
|
1
|
+
{"version":3,"file":"modal.js","sources":["../../../../src/features/ui/modals/modal.tsx"],"sourcesContent":["import type { IModalProps } from './modal-types';\nimport type { FC } from 'react';\n\nimport { memo } from 'react';\n\nimport CrossIcon from '../../../assets/line-icons/icons/cross';\nimport Clickable from '../buttons/clickable/clickable';\nimport * as Styled from './modal-styled';\n\n/**\n * Modal component that renders modal content with close button\n * Handles animation state for entry and exit transitions\n */\nconst Modal: FC<IModalProps> = memo(({ modal, isClosing = false, onClose }) => {\n const { renderAs, element, modalWidth, isDismissable } = modal;\n\n if (renderAs === 'spotlight') {\n return (\n <Styled.ModalContainer $isClosing={isClosing}>\n <Styled.SpotlightModal $isClosing={isClosing} />\n {element}\n </Styled.ModalContainer>\n );\n }\n\n if (renderAs === 'fullscreen-transparent') {\n return (\n <Styled.TransparentModalContainer $isClosing={isClosing}>\n {element}\n </Styled.TransparentModalContainer>\n );\n }\n\n return (\n <Styled.ModalContainer $isClosing={isClosing}>\n <Styled.BaseModal $isClosing={isClosing} $width={modalWidth}>\n {isDismissable !== false && (\n <Styled.CloseButtonContainer $modalWidth={modalWidth}>\n <Clickable label=\"Close\" onClick={onClose}>\n <CrossIcon width={40} height={40} />\n </Clickable>\n </Styled.CloseButtonContainer>\n )}\n <Styled.BaseModalContent $modalWidth={modalWidth}>{element}</Styled.BaseModalContent>\n </Styled.BaseModal>\n </Styled.ModalContainer>\n );\n});\n\nexport default Modal;\n"],"names":["Modal","memo","modal","isClosing","onClose","renderAs","element","modalWidth","isDismissable","jsxs","Styled.ModalContainer","jsx","Styled.SpotlightModal","Styled.TransparentModalContainer","Styled.BaseModal","Styled.CloseButtonContainer","Clickable","CrossIcon","Styled.BaseModalContent"],"mappings":";;;;;AAaM,MAAAA,IAAyBC,EAAK,CAAC,EAAE,OAAAC,GAAO,WAAAC,IAAY,IAAO,SAAAC,QAAc;AAC7E,QAAM,EAAE,UAAAC,GAAU,SAAAC,GAAS,YAAAC,GAAY,eAAAC,MAAkBN;AAEzD,SAAIG,MAAa,cAEZ,gBAAAI,EAAAC,GAAA,EAAsB,YAAYP,GACjC,UAAA;AAAA,IAAA,gBAAAQ,EAACC,GAAA,EAAsB,YAAYT,EAAW,CAAA;AAAA,IAC7CG;AAAA,EACH,EAAA,CAAA,IAIAD,MAAa,6CAEZQ,GAAA,EAAiC,YAAYV,GAC3C,UACHG,EAAA,CAAA,IAKD,gBAAAK,EAAAD,GAAA,EAAsB,YAAYP,GACjC,UAAC,gBAAAM,EAAAK,GAAA,EAAiB,YAAYX,GAAW,QAAQI,GAC9C,UAAA;AAAA,IAAkBC,MAAA,wBAChBO,GAAA,EAA4B,aAAaR,GACxC,4BAACS,GAAU,EAAA,OAAM,SAAQ,SAASZ,GAChC,4BAACa,GAAU,EAAA,OAAO,IAAI,QAAQ,IAAI,GACpC,EACF,CAAA;AAAA,sBAEDC,GAAA,EAAwB,aAAaX,GAAa,UAAQD,GAAA;AAAA,EAAA,EAC7D,CAAA,EACF,CAAA;AAEJ,CAAC;"}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import e from "styled-components";
|
2
2
|
import n from "../layout/flex-view.js";
|
3
|
-
const
|
3
|
+
const r = e.div`
|
4
4
|
position: absolute;
|
5
5
|
top: ${({ $top: t }) => t}px;
|
6
6
|
left: ${({ $left: t }) => t}px;
|
@@ -11,22 +11,15 @@ const p = e.div`
|
|
11
11
|
align-items: end;
|
12
12
|
z-index: ${({ $zIndex: t }) => t};
|
13
13
|
pointer-events: none;
|
14
|
-
`,
|
15
|
-
|
16
|
-
// Inner container of Lottie Component
|
17
|
-
display: flex;
|
18
|
-
justify-content: center;
|
19
|
-
align-items: center;
|
20
|
-
}
|
14
|
+
`, p = e(n)`
|
15
|
+
overflow: hidden;
|
21
16
|
|
22
|
-
svg {
|
23
|
-
|
24
|
-
height: 47.27px !important;
|
25
|
-
display: block;
|
17
|
+
& svg {
|
18
|
+
transform: scale(3.5) !important;
|
26
19
|
}
|
27
20
|
`;
|
28
21
|
export {
|
29
|
-
|
30
|
-
|
22
|
+
p as NudgeLottieContainer,
|
23
|
+
r as NudgeWrapper
|
31
24
|
};
|
32
25
|
//# sourceMappingURL=nudge-styled.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"nudge-styled.js","sources":["../../../../src/features/ui/nudge/nudge-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../layout/flex-view';\n\ninterface NudgeWrapperProps {\n $top: number;\n $left: number;\n $zIndex: number;\n}\n\nexport const NudgeWrapper = styled.div<NudgeWrapperProps>`\n position: absolute;\n top: ${({ $top }) => $top}px;\n left: ${({ $left }) => $left}px;\n height: max-content;\n width: max-content;\n display: flex;\n justify-content: center;\n align-items: end;\n z-index: ${({ $zIndex }) => $zIndex};\n pointer-events: none;\n`;\n\nexport const NudgeLottieContainer = styled(FlexView)`\n
|
1
|
+
{"version":3,"file":"nudge-styled.js","sources":["../../../../src/features/ui/nudge/nudge-styled.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport FlexView from '../layout/flex-view';\n\ninterface NudgeWrapperProps {\n $top: number;\n $left: number;\n $zIndex: number;\n}\n\nexport const NudgeWrapper = styled.div<NudgeWrapperProps>`\n position: absolute;\n top: ${({ $top }) => $top}px;\n left: ${({ $left }) => $left}px;\n height: max-content;\n width: max-content;\n display: flex;\n justify-content: center;\n align-items: end;\n z-index: ${({ $zIndex }) => $zIndex};\n pointer-events: none;\n`;\n\nexport const NudgeLottieContainer = styled(FlexView)`\n overflow: hidden;\n\n & svg {\n transform: scale(3.5) !important;\n }\n`;\n"],"names":["NudgeWrapper","styled","$top","$left","$zIndex","NudgeLottieContainer","FlexView"],"mappings":";;AAUO,MAAMA,IAAeC,EAAO;AAAA;AAAA,SAE1B,CAAC,EAAE,MAAAC,EAAK,MAAMA,CAAI;AAAA,UACjB,CAAC,EAAE,OAAAC,EAAM,MAAMA,CAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAMjB,CAAC,EAAE,SAAAC,EAAQ,MAAMA,CAAO;AAAA;AAAA,GAIxBC,IAAuBJ,EAAOK,CAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;"}
|
@@ -1,18 +1,17 @@
|
|
1
|
-
import { jsxs as
|
2
|
-
import { memo as n } from "react";
|
1
|
+
import { jsxs as n, jsx as t } from "react/jsx-runtime";
|
3
2
|
import { LOTTIE as d } from "../../../assets/lottie/lottie.js";
|
4
|
-
import
|
5
|
-
import { NudgeWrapper as
|
6
|
-
const
|
7
|
-
content:
|
8
|
-
nudgePointerX:
|
9
|
-
nudgePointerY:
|
3
|
+
import m from "../lottie-animation/lottie-animation.js";
|
4
|
+
import { NudgeWrapper as p, NudgeLottieContainer as s } from "./nudge-styled.js";
|
5
|
+
const f = ({
|
6
|
+
content: r,
|
7
|
+
nudgePointerX: e = 0,
|
8
|
+
nudgePointerY: o = 0,
|
10
9
|
zIndex: i = 100
|
11
|
-
}) => /* @__PURE__ */
|
12
|
-
/* @__PURE__ */ t(s, { $height:
|
13
|
-
|
14
|
-
] }),
|
10
|
+
}) => /* @__PURE__ */ n(p, { $top: o, $left: e, $zIndex: i, children: [
|
11
|
+
/* @__PURE__ */ t(s, { $height: 64, $width: 64, children: /* @__PURE__ */ t(m, { src: d.NUDGE_TAP }) }),
|
12
|
+
r
|
13
|
+
] }), g = f;
|
15
14
|
export {
|
16
|
-
|
15
|
+
g as default
|
17
16
|
};
|
18
17
|
//# sourceMappingURL=nudge.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"nudge.js","sources":["../../../../src/features/ui/nudge/nudge.tsx"],"sourcesContent":["import type { INudgeProps } from './nudge-types';\n\nimport React
|
1
|
+
{"version":3,"file":"nudge.js","sources":["../../../../src/features/ui/nudge/nudge.tsx"],"sourcesContent":["import type { INudgeProps } from './nudge-types';\n\nimport React from 'react';\n\nimport { LOTTIE } from '../../../assets/lottie/lottie';\nimport LottieAnimation from '../lottie-animation/lottie-animation';\nimport * as S from './nudge-styled';\n\nconst Nudge: React.FC<INudgeProps> = ({\n content,\n nudgePointerX = 0,\n nudgePointerY = 0,\n zIndex = 100,\n}) => {\n return (\n <S.NudgeWrapper $top={nudgePointerY} $left={nudgePointerX} $zIndex={zIndex}>\n <S.NudgeLottieContainer $height={64} $width={64}>\n <LottieAnimation src={LOTTIE.NUDGE_TAP} />\n </S.NudgeLottieContainer>\n {content}\n </S.NudgeWrapper>\n );\n};\n\nexport default Nudge;\n"],"names":["Nudge","content","nudgePointerX","nudgePointerY","zIndex","jsxs","S.NudgeWrapper","jsx","S.NudgeLottieContainer","LottieAnimation","LOTTIE","Nudge$1"],"mappings":";;;;AAQA,MAAMA,IAA+B,CAAC;AAAA,EACpC,SAAAC;AAAA,EACA,eAAAC,IAAgB;AAAA,EAChB,eAAAC,IAAgB;AAAA,EAChB,QAAAC,IAAS;AACX,MAEI,gBAAAC,EAACC,GAAA,EAAe,MAAMH,GAAe,OAAOD,GAAe,SAASE,GAClE,UAAA;AAAA,EAAA,gBAAAG,EAACC,GAAA,EAAuB,SAAS,IAAI,QAAQ,IAC3C,UAAA,gBAAAD,EAACE,GAAgB,EAAA,KAAKC,EAAO,UAAA,CAAW,EAC1C,CAAA;AAAA,EACCT;AACH,EAAA,CAAA,GAIJU,IAAeX;"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import
|
1
|
+
import t, { keyframes as o } from "styled-components";
|
2
2
|
const n = o`
|
3
3
|
66%{
|
4
4
|
opacity: 0;
|
@@ -6,29 +6,29 @@ const n = o`
|
|
6
6
|
33%{
|
7
7
|
opacity: 1;
|
8
8
|
}
|
9
|
-
`, a =
|
9
|
+
`, a = t.div`
|
10
10
|
height: 32px;
|
11
11
|
width: 32px;
|
12
12
|
display: flex;
|
13
13
|
align-items: center;
|
14
14
|
justify-content: center;
|
15
15
|
position: relative;
|
16
|
-
cursor:
|
17
|
-
`, s =
|
16
|
+
cursor: pointer;
|
17
|
+
`, s = t.div`
|
18
18
|
height: 90%;
|
19
19
|
width: 90%;
|
20
20
|
position: absolute;
|
21
|
-
background: ${({ theme:
|
21
|
+
background: ${({ theme: i }) => i.colors.BLACK_1};
|
22
22
|
border-radius: 24px;
|
23
|
-
`, d =
|
23
|
+
`, d = t.div`
|
24
24
|
height: 90%;
|
25
25
|
width: 90%;
|
26
26
|
position: absolute;
|
27
|
-
background: ${({ theme:
|
27
|
+
background: ${({ theme: i }) => i.colors.RED};
|
28
28
|
border-radius: 32px;
|
29
29
|
animation: ${n}
|
30
|
-
${({ $blinkDelay:
|
31
|
-
`, c =
|
30
|
+
${({ $blinkDelay: i, $blinkDuration: e }) => `${e + i}ms linear infinite`};
|
31
|
+
`, c = t.div`
|
32
32
|
height: 100%;
|
33
33
|
width: 100%;
|
34
34
|
display: flex;
|
@@ -38,22 +38,22 @@ const n = o`
|
|
38
38
|
align-self: center;
|
39
39
|
padding-top: 6px;
|
40
40
|
z-index: 1;
|
41
|
-
`,
|
41
|
+
`, p = t.div`
|
42
42
|
position: absolute;
|
43
43
|
top: 0;
|
44
44
|
left: 0;
|
45
45
|
bottom: 0;
|
46
46
|
right: 0;
|
47
|
-
`,
|
47
|
+
`, l = t.img`
|
48
48
|
width: 100%;
|
49
49
|
height: 100%;
|
50
50
|
`;
|
51
51
|
export {
|
52
52
|
d as StreakBg,
|
53
53
|
c as StreakContent,
|
54
|
-
|
54
|
+
p as StreakImg,
|
55
55
|
s as StreakStaticBg,
|
56
56
|
a as StreakWrapper,
|
57
|
-
|
57
|
+
l as StyledImg
|
58
58
|
};
|
59
59
|
//# sourceMappingURL=streak-icon-styled.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"streak-icon-styled.js","sources":["../../../../src/features/ui/streak-icon/streak-icon-styled.tsx"],"sourcesContent":["import
|
1
|
+
{"version":3,"file":"streak-icon-styled.js","sources":["../../../../src/features/ui/streak-icon/streak-icon-styled.tsx"],"sourcesContent":["import styled, { keyframes } from 'styled-components';\n\nconst fadeInFadeOut = keyframes`\n66%{\n opacity: 0;\n}\n33%{\n opacity: 1;\n}\n`;\n\nexport const StreakWrapper = styled.div`\n height: 32px;\n width: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n cursor: pointer;\n`;\n\nexport const StreakStaticBg = styled.div`\n height: 90%;\n width: 90%;\n position: absolute;\n background: ${({ theme }) => theme.colors.BLACK_1};\n border-radius: 24px;\n`;\n\nexport const StreakBg = styled.div<{ $blinkDuration: number; $blinkDelay: number }>`\n height: 90%;\n width: 90%;\n position: absolute;\n background: ${({ theme }) => theme.colors.RED};\n border-radius: 32px;\n animation: ${fadeInFadeOut}\n ${({ $blinkDelay, $blinkDuration }) => `${$blinkDuration + $blinkDelay}ms linear infinite`};\n`;\n\nexport const StreakContent = styled.div`\n height: 100%;\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n align-self: center;\n padding-top: 6px;\n z-index: 1;\n`;\n\nexport const StreakImg = styled.div`\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n`;\n\nexport const StyledImg = styled.img`\n width: 100%;\n height: 100%;\n`;\n"],"names":["fadeInFadeOut","keyframes","StreakWrapper","styled","StreakStaticBg","theme","StreakBg","$blinkDelay","$blinkDuration","StreakContent","StreakImg","StyledImg"],"mappings":";AAEA,MAAMA,IAAgBC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASTC,IAAgBC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAUvBC,IAAiBD,EAAO;AAAA;AAAA;AAAA;AAAA,gBAIrB,CAAC,EAAE,OAAAE,EAAA,MAAYA,EAAM,OAAO,OAAO;AAAA;AAAA,GAItCC,IAAWH,EAAO;AAAA;AAAA;AAAA;AAAA,gBAIf,CAAC,EAAE,OAAAE,EAAA,MAAYA,EAAM,OAAO,GAAG;AAAA;AAAA,eAEhCL,CAAa;AAAA,MACtB,CAAC,EAAE,aAAAO,GAAa,gBAAAC,QAAqB,GAAGA,IAAiBD,CAAW,oBAAoB;AAAA,GAGjFE,IAAgBN,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAYvBO,IAAYP,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAQnBQ,IAAYR,EAAO;AAAA;AAAA;AAAA;"}
|
@@ -1,22 +1,20 @@
|
|
1
1
|
import { jsxs as e, jsx as r } from "react/jsx-runtime";
|
2
|
-
import { memo as
|
3
|
-
import
|
4
|
-
import
|
5
|
-
import
|
6
|
-
import { BLINK_DURATION as
|
7
|
-
import { StreakWrapper as
|
8
|
-
const
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
/* @__PURE__ */
|
13
|
-
|
14
|
-
/* @__PURE__ */ r(c, { $renderAs: "ab3-bold", $color: "WHITE", $align: "center", children: a })
|
15
|
-
] })
|
2
|
+
import { memo as n } from "react";
|
3
|
+
import i from "../../../assets/illustrations/streak-green.svg.js";
|
4
|
+
import S from "../../../assets/illustrations/streak-white.svg.js";
|
5
|
+
import l from "../text/text.js";
|
6
|
+
import { BLINK_DURATION as c, BLINK_DELAY as k } from "./constants.js";
|
7
|
+
import { StreakWrapper as p, StreakStaticBg as s, StreakBg as f, StreakContent as d, StreakImg as I, StyledImg as o } from "./streak-icon-styled.js";
|
8
|
+
const $ = n(({ value: a, blink: t = !1, ...m }) => /* @__PURE__ */ e(p, { ...m, children: [
|
9
|
+
/* @__PURE__ */ r(s, {}),
|
10
|
+
t && /* @__PURE__ */ r(f, { $blinkDuration: c, $blinkDelay: k }),
|
11
|
+
/* @__PURE__ */ e(d, { children: [
|
12
|
+
/* @__PURE__ */ r(I, { children: t ? /* @__PURE__ */ r(o, { src: S, alt: "Streak" }) : /* @__PURE__ */ r(o, { src: i, alt: "Streak" }) }),
|
13
|
+
/* @__PURE__ */ r(l, { $renderAs: "ab3-bold", $color: "WHITE", $align: "center", children: a })
|
16
14
|
] })
|
17
|
-
),
|
15
|
+
] })), A = $;
|
18
16
|
export {
|
19
|
-
|
20
|
-
|
17
|
+
$ as StreakIcon,
|
18
|
+
A as default
|
21
19
|
};
|
22
20
|
//# sourceMappingURL=streak-icon.js.map
|