@magmamath/students-features 0.6.6-rc.6 → 0.6.6-rc.7
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/commonjs/features/gifCelebrations/assets/gifFallback.gif +0 -0
- package/dist/commonjs/features/gifCelebrations/components/ContentContainer.js +2 -2
- package/dist/commonjs/features/gifCelebrations/components/ContentContainer.js.map +1 -1
- package/dist/commonjs/features/gifCelebrations/components/Gif.js +36 -4
- package/dist/commonjs/features/gifCelebrations/components/Gif.js.map +1 -1
- package/dist/commonjs/features/gifCelebrations/components/Progress.js +3 -13
- package/dist/commonjs/features/gifCelebrations/components/Progress.js.map +1 -1
- package/dist/commonjs/features/gifCelebrations/constants.js +4 -2
- package/dist/commonjs/features/gifCelebrations/constants.js.map +1 -1
- package/dist/commonjs/features/gifCelebrations/helpers.js +26 -1
- package/dist/commonjs/features/gifCelebrations/helpers.js.map +1 -1
- package/dist/commonjs/features/gifCelebrations/model/GifCelebrations.cache.js +6 -3
- package/dist/commonjs/features/gifCelebrations/model/GifCelebrations.cache.js.map +1 -1
- package/dist/commonjs/features/gifCelebrations/model/GifCelebrations.model.js +8 -15
- package/dist/commonjs/features/gifCelebrations/model/GifCelebrations.model.js.map +1 -1
- package/dist/commonjs/shared/constants.js +9 -0
- package/dist/commonjs/shared/constants.js.map +1 -0
- package/dist/module/features/gifCelebrations/assets/gifFallback.gif +0 -0
- package/dist/module/features/gifCelebrations/components/ContentContainer.js +2 -2
- package/dist/module/features/gifCelebrations/components/ContentContainer.js.map +1 -1
- package/dist/module/features/gifCelebrations/components/Gif.js +35 -4
- package/dist/module/features/gifCelebrations/components/Gif.js.map +1 -1
- package/dist/module/features/gifCelebrations/components/Progress.js +4 -14
- package/dist/module/features/gifCelebrations/components/Progress.js.map +1 -1
- package/dist/module/features/gifCelebrations/constants.js +3 -1
- package/dist/module/features/gifCelebrations/constants.js.map +1 -1
- package/dist/module/features/gifCelebrations/helpers.js +24 -0
- package/dist/module/features/gifCelebrations/helpers.js.map +1 -1
- package/dist/module/features/gifCelebrations/model/GifCelebrations.cache.js +6 -3
- package/dist/module/features/gifCelebrations/model/GifCelebrations.cache.js.map +1 -1
- package/dist/module/features/gifCelebrations/model/GifCelebrations.model.js +10 -17
- package/dist/module/features/gifCelebrations/model/GifCelebrations.model.js.map +1 -1
- package/dist/module/shared/constants.js +5 -0
- package/dist/module/shared/constants.js.map +1 -0
- package/dist/typescript/commonjs/features/gifCelebrations/components/Gif.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/gifCelebrations/components/Progress.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/gifCelebrations/constants.d.ts +3 -1
- package/dist/typescript/commonjs/features/gifCelebrations/constants.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/gifCelebrations/helpers.d.ts +6 -0
- package/dist/typescript/commonjs/features/gifCelebrations/helpers.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/gifCelebrations/model/GifCelebrations.cache.d.ts +4 -6
- package/dist/typescript/commonjs/features/gifCelebrations/model/GifCelebrations.cache.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/gifCelebrations/model/GifCelebrations.model.d.ts +1 -3
- package/dist/typescript/commonjs/features/gifCelebrations/model/GifCelebrations.model.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/gifCelebrations/types/model.types.d.ts +0 -5
- package/dist/typescript/commonjs/features/gifCelebrations/types/model.types.d.ts.map +1 -1
- package/dist/typescript/commonjs/shared/constants.d.ts +2 -0
- package/dist/typescript/commonjs/shared/constants.d.ts.map +1 -0
- package/dist/typescript/module/features/gifCelebrations/components/Gif.d.ts.map +1 -1
- package/dist/typescript/module/features/gifCelebrations/components/Progress.d.ts.map +1 -1
- package/dist/typescript/module/features/gifCelebrations/constants.d.ts +3 -1
- package/dist/typescript/module/features/gifCelebrations/constants.d.ts.map +1 -1
- package/dist/typescript/module/features/gifCelebrations/helpers.d.ts +6 -0
- package/dist/typescript/module/features/gifCelebrations/helpers.d.ts.map +1 -1
- package/dist/typescript/module/features/gifCelebrations/model/GifCelebrations.cache.d.ts +4 -6
- package/dist/typescript/module/features/gifCelebrations/model/GifCelebrations.cache.d.ts.map +1 -1
- package/dist/typescript/module/features/gifCelebrations/model/GifCelebrations.model.d.ts +1 -3
- package/dist/typescript/module/features/gifCelebrations/model/GifCelebrations.model.d.ts.map +1 -1
- package/dist/typescript/module/features/gifCelebrations/types/model.types.d.ts +0 -5
- package/dist/typescript/module/features/gifCelebrations/types/model.types.d.ts.map +1 -1
- package/dist/typescript/module/shared/constants.d.ts +2 -0
- package/dist/typescript/module/shared/constants.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/features/gifCelebrations/assets/gifFallback.gif +0 -0
- package/src/features/gifCelebrations/components/ContentContainer.tsx +2 -2
- package/src/features/gifCelebrations/components/Gif.tsx +39 -10
- package/src/features/gifCelebrations/components/Progress.tsx +3 -13
- package/src/features/gifCelebrations/constants.ts +4 -1
- package/src/features/gifCelebrations/helpers.ts +25 -0
- package/src/features/gifCelebrations/model/GifCelebrations.cache.ts +9 -11
- package/src/features/gifCelebrations/model/GifCelebrations.model.ts +16 -25
- package/src/features/gifCelebrations/types/model.types.ts +0 -5
- package/src/react-app-env.d.ts +1 -0
- package/src/shared/constants.ts +3 -0
|
Binary file
|
|
@@ -20,8 +20,8 @@ const ContentContainer = ({
|
|
|
20
20
|
const {
|
|
21
21
|
width
|
|
22
22
|
} = (0, _reactNative.useWindowDimensions)();
|
|
23
|
-
const RIGHT_POSITION = width / 2 + _constants.CONTENT_CONTAINER.CONTAINER_WIDTH / 2 + _constants.CONTENT_CONTAINER.
|
|
24
|
-
const LEFT_POSITION = -RIGHT_POSITION - _constants.CONTENT_CONTAINER.
|
|
23
|
+
const RIGHT_POSITION = width / 2 + _constants.CONTENT_CONTAINER.CONTAINER_WIDTH / 2 + _constants.CONTENT_CONTAINER.ROTATION_PADDING;
|
|
24
|
+
const LEFT_POSITION = -RIGHT_POSITION - _constants.CONTENT_CONTAINER.ROTATION_PADDING;
|
|
25
25
|
const animatedStyles = (0, _reactNativeReanimated.useAnimatedStyle)(() => ({
|
|
26
26
|
transform: [{
|
|
27
27
|
translateX: (0, _reactNativeReanimated.interpolate)(progress.value, [0, 1, 2], [LEFT_POSITION, 0, RIGHT_POSITION])
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_react","_interopRequireDefault","_reactNativeUi","_reactNativeReanimated","_interopRequireWildcard","_constants","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ContentContainer","children","progress","width","useWindowDimensions","RIGHT_POSITION","CONTENT_CONTAINER","CONTAINER_WIDTH","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_react","_interopRequireDefault","_reactNativeUi","_reactNativeReanimated","_interopRequireWildcard","_constants","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ContentContainer","children","progress","width","useWindowDimensions","RIGHT_POSITION","CONTENT_CONTAINER","CONTAINER_WIDTH","ROTATION_PADDING","LEFT_POSITION","animatedStyles","useAnimatedStyle","transform","translateX","interpolate","value","rotate","ANGLE","jsx","View","style","styles","container","exports","StyleSheet","create","alignItems","gap","SPACING","position"],"sourceRoot":"../../../../../src","sources":["features/gifCelebrations/components/ContentContainer.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -10,9 +10,18 @@ var _reactNativeUi = require("@magmamath/react-native-ui");
|
|
|
10
10
|
var _constants = require("../constants.js");
|
|
11
11
|
var _index = require("../../../shared/translation/index.js");
|
|
12
12
|
var _helpers = require("../helpers.js");
|
|
13
|
+
var _gifFallback = _interopRequireDefault(require("../assets/gifFallback.gif"));
|
|
14
|
+
var _constants2 = require("../../../shared/constants.js");
|
|
13
15
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
17
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
15
18
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
19
|
+
// IS_WEB
|
|
20
|
+
// ? {
|
|
21
|
+
// uri: confettiImage,
|
|
22
|
+
// }
|
|
23
|
+
// : require('../assets/confetti.webp')
|
|
24
|
+
|
|
16
25
|
const Gif = ({
|
|
17
26
|
gifObject,
|
|
18
27
|
getCachePathMethod,
|
|
@@ -21,15 +30,38 @@ const Gif = ({
|
|
|
21
30
|
const [size, setSize] = (0, _react.useState)(null);
|
|
22
31
|
const [pathOrUri, setPathOrUri] = (0, _react.useState)('');
|
|
23
32
|
const t = (0, _index.useText)();
|
|
33
|
+
const gifGroupNumber = Number(gifObject.group.replace('group', ''));
|
|
34
|
+
const gifLabel = (0, _helpers.getGifLabel)(gifGroupNumber);
|
|
24
35
|
(0, _react.useLayoutEffect)(() => {
|
|
25
36
|
const loadImageSize = async () => {
|
|
26
|
-
|
|
27
|
-
|
|
37
|
+
let localPath = null;
|
|
38
|
+
/**
|
|
39
|
+
* Image.queryCache works only for WEB, so we need to use a custom method (Expo Image) for React Native
|
|
40
|
+
*/
|
|
41
|
+
try {
|
|
42
|
+
throw new Error('Image not found in cache');
|
|
43
|
+
if (getCachePathMethod) {
|
|
44
|
+
//@ts-ignore
|
|
45
|
+
localPath = await getCachePathMethod(gifObject.url);
|
|
46
|
+
} else {
|
|
47
|
+
//@ts-ignore
|
|
48
|
+
localPath = await _reactNative.Image.queryCache([gifObject.url]).then(result => result[gifObject.url]);
|
|
49
|
+
}
|
|
50
|
+
if (!localPath) {
|
|
51
|
+
throw new Error('Image not found in cache');
|
|
52
|
+
}
|
|
53
|
+
} catch (error) {
|
|
54
|
+
console.warn('Error fetching image from cache:', error);
|
|
55
|
+
localPath = _constants2.IS_WEB ? _gifFallback.default : require('../assets/gifFallback.gif');
|
|
56
|
+
}
|
|
57
|
+
//@ts-ignore
|
|
58
|
+
_reactNative.Image.getSize(localPath, (width, height) => {
|
|
28
59
|
setSize({
|
|
29
60
|
width: Math.max(_constants.MIN_GIF_SIZE, Math.min(_constants.MAX_GIF_SIZE.WIDTH, width)),
|
|
30
61
|
height: Math.max(_constants.MIN_GIF_SIZE, Math.min(_constants.MAX_GIF_SIZE.HEIGHT, height))
|
|
31
62
|
});
|
|
32
|
-
|
|
63
|
+
//@ts-ignore
|
|
64
|
+
setPathOrUri(localPath);
|
|
33
65
|
});
|
|
34
66
|
};
|
|
35
67
|
loadImageSize();
|
|
@@ -51,7 +83,7 @@ const Gif = ({
|
|
|
51
83
|
}] //this sizes duplication is needed for compatibility with web and rn
|
|
52
84
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
53
85
|
style: styles.textContainer,
|
|
54
|
-
children: TextComponent(t(
|
|
86
|
+
children: TextComponent(t(gifLabel))
|
|
55
87
|
})]
|
|
56
88
|
})
|
|
57
89
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_react","_interopRequireWildcard","_reactNativeUi","_constants","_index","_helpers","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_react","_interopRequireWildcard","_reactNativeUi","_constants","_index","_helpers","_gifFallback","_interopRequireDefault","_constants2","_jsxRuntime","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Gif","gifObject","getCachePathMethod","TextComponent","size","setSize","useState","pathOrUri","setPathOrUri","useText","gifGroupNumber","Number","group","replace","gifLabel","getGifLabel","useLayoutEffect","loadImageSize","localPath","Error","url","Image","queryCache","then","result","error","console","warn","IS_WEB","gifFallback","getSize","width","height","Math","max","MIN_GIF_SIZE","min","MAX_GIF_SIZE","WIDTH","HEIGHT","jsx","View","style","styles","backgroundContainer","children","jsxs","container","alt","source","uri","image","textContainer","exports","StyleSheet","create","backgroundColor","borderRadius","padding","SPACING","BORDER_RADIUS","COLORS","NEUTRAL_1","position","bottom","alignSelf"],"sourceRoot":"../../../../../src","sources":["features/gifCelebrations/components/Gif.tsx"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,uBAAA,CAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AAEA,IAAAI,UAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,QAAA,GAAAN,OAAA;AACA,IAAAO,YAAA,GAAAC,sBAAA,CAAAR,OAAA;AACA,IAAAS,WAAA,GAAAT,OAAA;AAAkD,IAAAU,WAAA,GAAAV,OAAA;AAAA,SAAAQ,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,yBAAAH,CAAA,6BAAAI,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAD,wBAAA,YAAAA,CAAAH,CAAA,WAAAA,CAAA,GAAAM,CAAA,GAAAD,CAAA,KAAAL,CAAA;AAAA,SAAAT,wBAAAS,CAAA,EAAAK,CAAA,SAAAA,CAAA,IAAAL,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAE,OAAA,EAAAF,CAAA,QAAAM,CAAA,GAAAH,wBAAA,CAAAE,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAC,GAAA,CAAAP,CAAA,UAAAM,CAAA,CAAAE,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAf,CAAA,oBAAAe,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAe,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAe,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAf,CAAA,CAAAe,CAAA,YAAAN,CAAA,CAAAP,OAAA,GAAAF,CAAA,EAAAM,CAAA,IAAAA,CAAA,CAAAa,GAAA,CAAAnB,CAAA,EAAAS,CAAA,GAAAA,CAAA;AAalD;AACA;AACA;AACA;AACA;;AAEO,MAAMW,GAAG,GAAGA,CAAC;EAAEC,SAAS;EAAEC,kBAAkB;EAAEC;AAAwB,CAAC,KAAK;EACjF,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAC,eAAQ,EAAc,IAAI,CAAC;EACnD,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAF,eAAQ,EAAS,EAAE,CAAC;EAEtD,MAAMpB,CAAC,GAAG,IAAAuB,cAAO,EAAC,CAAC;EAEnB,MAAMC,cAAc,GAAGC,MAAM,CAACV,SAAS,CAACW,KAAK,CAACC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;EACnE,MAAMC,QAAQ,GAAG,IAAAC,oBAAW,EAACL,cAAc,CAAC;EAE5C,IAAAM,sBAAe,EAAC,MAAM;IACpB,MAAMC,aAAa,GAAG,MAAAA,CAAA,KAAY;MAChC,IAAIC,SAAwB,GAAG,IAAI;MACnC;AACN;AACA;MACM,IAAI;QACF,MAAM,IAAIC,KAAK,CAAC,0BAA0B,CAAC;QAE3C,IAAIjB,kBAAkB,EAAE;UACtB;UACAgB,SAAS,GAAG,MAAMhB,kBAAkB,CAACD,SAAS,CAACmB,GAAG,CAAC;QACrD,CAAC,MAAM;UACL;UACAF,SAAS,GAAG,MAAMG,kBAAK,CAACC,UAAU,CAAC,CAACrB,SAAS,CAACmB,GAAG,CAAC,CAAC,CAACG,IAAI,CACrDC,MAAM,IAAKA,MAAM,CAACvB,SAAS,CAACmB,GAAG,CAClC,CAAC;QACH;QACA,IAAI,CAACF,SAAS,EAAE;UACd,MAAM,IAAIC,KAAK,CAAC,0BAA0B,CAAC;QAC7C;MACF,CAAC,CAAC,OAAOM,KAAK,EAAE;QACdC,OAAO,CAACC,IAAI,CAAC,kCAAkC,EAAEF,KAAK,CAAC;QACvDP,SAAS,GAAGU,kBAAM,GAAGC,oBAAW,GAAG5D,OAAO,CAAC,2BAA2B,CAAC;MACzE;MACA;MACAoD,kBAAK,CAACS,OAAO,CAACZ,SAAS,EAAE,CAACa,KAAK,EAAEC,MAAM,KAAK;QAC1C3B,OAAO,CAAC;UACN0B,KAAK,EAAEE,IAAI,CAACC,GAAG,CAACC,uBAAY,EAAEF,IAAI,CAACG,GAAG,CAACC,uBAAY,CAACC,KAAK,EAAEP,KAAK,CAAC,CAAC;UAClEC,MAAM,EAAEC,IAAI,CAACC,GAAG,CAACC,uBAAY,EAAEF,IAAI,CAACG,GAAG,CAACC,uBAAY,CAACE,MAAM,EAAEP,MAAM,CAAC;QACtE,CAAC,CAAC;QACF;QACAxB,YAAY,CAACU,SAAS,CAAC;MACzB,CAAC,CAAC;IACJ,CAAC;IAEDD,aAAa,CAAC,CAAC;EACjB,CAAC,EAAE,CAAChB,SAAS,CAACmB,GAAG,CAAC,CAAC;EAEnB,oBACE,IAAAzC,WAAA,CAAA6D,GAAA,EAACxE,YAAA,CAAAyE,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC,mBAAoB;IAAAC,QAAA,eACtC,IAAAlE,WAAA,CAAAmE,IAAA,EAAC9E,YAAA,CAAAyE,IAAI;MAACC,KAAK,EAAEC,MAAM,CAACI,SAAU;MAAAF,QAAA,GAC3BzC,IAAI,IAAIG,SAAS,iBAChB,IAAA5B,WAAA,CAAA6D,GAAA,EAACxE,YAAA,CAAAqD,KAAK;QACJ2B,GAAG,EAAC,kCAAkC;QACtCC,MAAM,EAAE;UACNC,GAAG,EAAE3C;QACP,CAAE;QACFwB,KAAK,EAAE3B,IAAI,CAAC2B,KAAM;QAClBC,MAAM,EAAE5B,IAAI,CAAC4B,MAAO;QACpBU,KAAK,EAAE,CAACC,MAAM,CAACQ,KAAK,EAAE;UAAEpB,KAAK,EAAE3B,IAAI,CAAC2B,KAAK;UAAEC,MAAM,EAAE5B,IAAI,CAAC4B;QAAO,CAAC,CAAE,CAAC;MAAA,CACpE,CACF,eACD,IAAArD,WAAA,CAAA6D,GAAA,EAACxE,YAAA,CAAAyE,IAAI;QAACC,KAAK,EAAEC,MAAM,CAACS,aAAc;QAAAP,QAAA,EAAE1C,aAAa,CAACjB,CAAC,CAAC4B,QAAQ,CAAC;MAAC,CAAO,CAAC;IAAA,CAClE;EAAC,CACH,CAAC;AAEX,CAAC;AAAAuC,OAAA,CAAArD,GAAA,GAAAA,GAAA;AAED,MAAM2C,MAAM,GAAGW,uBAAU,CAACC,MAAM,CAAC;EAC/BX,mBAAmB,EAAE;IACnBY,eAAe,EAAE,0BAA0B;IAC3CC,YAAY,EAAE,EAAE;IAChBC,OAAO,EAAEC,sBAAO,CAAC,GAAG;EACtB,CAAC;EACDZ,SAAS,EAAE;IACTW,OAAO,EAAEC,sBAAO,CAAC,IAAI,CAAC;IACtBF,YAAY,EAAEG,4BAAa,CAAC,GAAG,CAAC;IAChCJ,eAAe,EAAEK,qBAAM,CAACC;EAC1B,CAAC;EACDX,KAAK,EAAE;IACLM,YAAY,EAAEG,4BAAa,CAAC,GAAG;EACjC,CAAC;EACDR,aAAa,EAAE;IACbW,QAAQ,EAAE,UAAU;IACpBC,MAAM,EAAE,EAAE;IACVC,SAAS,EAAE;EACb;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -9,26 +9,16 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
9
9
|
var _reactNativeUi = require("@magmamath/react-native-ui");
|
|
10
10
|
var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
|
|
11
11
|
var _confetti = _interopRequireDefault(require("../assets/confetti.webp"));
|
|
12
|
+
var _helpers = require("../helpers.js");
|
|
12
13
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
13
14
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
14
15
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
15
16
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
16
|
-
const MIN_WIDTH_FOR_ONE_DIGIT = 12;
|
|
17
|
-
const MIN_WIDTH_FOR_TWO_DIGITS = 15;
|
|
18
|
-
const IS_WEB = _reactNative.Platform.OS === 'web';
|
|
19
17
|
const Progress = ({
|
|
20
18
|
progress,
|
|
21
19
|
completedPercent
|
|
22
20
|
}) => {
|
|
23
|
-
const progressLineWidth = (()
|
|
24
|
-
if (completedPercent <= 9) {
|
|
25
|
-
return MIN_WIDTH_FOR_ONE_DIGIT;
|
|
26
|
-
}
|
|
27
|
-
if (completedPercent <= 15) {
|
|
28
|
-
return MIN_WIDTH_FOR_TWO_DIGITS;
|
|
29
|
-
}
|
|
30
|
-
return completedPercent;
|
|
31
|
-
})();
|
|
21
|
+
const progressLineWidth = (0, _helpers.getProgressLineWidth)(completedPercent);
|
|
32
22
|
const animatedStyles = (0, _reactNativeReanimated.useAnimatedStyle)(() => ({
|
|
33
23
|
width: `${(0, _reactNativeReanimated.interpolate)(progress.value, [0, 1, 2], [0, progressLineWidth, progressLineWidth])}%`
|
|
34
24
|
}), [progress, progressLineWidth]);
|
|
@@ -47,7 +37,7 @@ const Progress = ({
|
|
|
47
37
|
})
|
|
48
38
|
})
|
|
49
39
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Image, {
|
|
50
|
-
source: IS_WEB ? {
|
|
40
|
+
source: _reactNativeUi.IS_WEB ? {
|
|
51
41
|
uri: _confetti.default
|
|
52
42
|
} : require('../assets/confetti.webp'),
|
|
53
43
|
style: styles.confetti
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_react","_interopRequireDefault","_reactNativeUi","_reactNativeReanimated","_interopRequireWildcard","_confetti","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_react","_interopRequireDefault","_reactNativeUi","_reactNativeReanimated","_interopRequireWildcard","_confetti","_helpers","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Progress","progress","completedPercent","progressLineWidth","getProgressLineWidth","animatedStyles","useAnimatedStyle","width","interpolate","value","jsx","View","style","styles","backgroundContainer","children","jsxs","container","progressContainer","Typography","variant","HeadingVariants","H1","percent","Image","source","IS_WEB","uri","confettiImage","confetti","exports","StyleSheet","create","backgroundColor","borderRadius","padding","SPACING","height","flexDirection","alignItems","BORDER_RADIUS","COLORS","NEUTRAL_1","paddingLeft","paddingRight","gap","flexGrow","NEUTRAL_5","overflow","position","PRIMARY_BLUE","justifyContent","marginHorizontal","color","fontWeight"],"sourceRoot":"../../../../../src","sources":["features/gifCelebrations/components/Progress.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.MIN_PROBLEMS_TO_SHOW_GIF = exports.MIN_GIF_SIZE = exports.MAX_GIF_SIZE = exports.GROUPS_PERCENTAGES = exports.CONTENT_CONTAINER = exports.BACKDROP_COLOR = exports.ANIMATION_DURATION = void 0;
|
|
6
|
+
exports.MIN_WIDTH_FOR_TWO_DIGITS = exports.MIN_WIDTH_FOR_ONE_DIGIT = exports.MIN_PROBLEMS_TO_SHOW_GIF = exports.MIN_GIF_SIZE = exports.MAX_GIF_SIZE = exports.GROUPS_PERCENTAGES = exports.CONTENT_CONTAINER = exports.BACKDROP_COLOR = exports.ANIMATION_DURATION = void 0;
|
|
7
7
|
const BACKDROP_COLOR = exports.BACKDROP_COLOR = {
|
|
8
8
|
INITIAL: 'rgba(51, 51, 51, 0)',
|
|
9
9
|
FINAL: 'rgba(51, 51, 51, 0.66)'
|
|
@@ -11,7 +11,7 @@ const BACKDROP_COLOR = exports.BACKDROP_COLOR = {
|
|
|
11
11
|
const CONTENT_CONTAINER = exports.CONTENT_CONTAINER = {
|
|
12
12
|
ANGLE: 5,
|
|
13
13
|
CONTAINER_WIDTH: 769,
|
|
14
|
-
|
|
14
|
+
ROTATION_PADDING: 44 // to be sure that the content is not cut off on the edges because of rotate transform
|
|
15
15
|
};
|
|
16
16
|
const ANIMATION_DURATION = exports.ANIMATION_DURATION = 1750;
|
|
17
17
|
const MIN_PROBLEMS_TO_SHOW_GIF = exports.MIN_PROBLEMS_TO_SHOW_GIF = 7;
|
|
@@ -27,4 +27,6 @@ const GROUPS_PERCENTAGES = exports.GROUPS_PERCENTAGES = {
|
|
|
27
27
|
// Mid celebrations
|
|
28
28
|
group3: [60, 66, 75, 80] // Party
|
|
29
29
|
};
|
|
30
|
+
const MIN_WIDTH_FOR_ONE_DIGIT = exports.MIN_WIDTH_FOR_ONE_DIGIT = 12;
|
|
31
|
+
const MIN_WIDTH_FOR_TWO_DIGITS = exports.MIN_WIDTH_FOR_TWO_DIGITS = 15;
|
|
30
32
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BACKDROP_COLOR","exports","INITIAL","FINAL","CONTENT_CONTAINER","ANGLE","CONTAINER_WIDTH","
|
|
1
|
+
{"version":3,"names":["BACKDROP_COLOR","exports","INITIAL","FINAL","CONTENT_CONTAINER","ANGLE","CONTAINER_WIDTH","ROTATION_PADDING","ANIMATION_DURATION","MIN_PROBLEMS_TO_SHOW_GIF","MAX_GIF_SIZE","WIDTH","HEIGHT","MIN_GIF_SIZE","GROUPS_PERCENTAGES","group1","group2","group3","MIN_WIDTH_FOR_ONE_DIGIT","MIN_WIDTH_FOR_TWO_DIGITS"],"sourceRoot":"../../../../src","sources":["features/gifCelebrations/constants.ts"],"mappings":";;;;;;AAAO,MAAMA,cAAc,GAAAC,OAAA,CAAAD,cAAA,GAAG;EAC5BE,OAAO,EAAE,qBAAqB;EAC9BC,KAAK,EAAE;AACT,CAAC;AAEM,MAAMC,iBAAiB,GAAAH,OAAA,CAAAG,iBAAA,GAAG;EAC/BC,KAAK,EAAE,CAAC;EACRC,eAAe,EAAE,GAAG;EACpBC,gBAAgB,EAAE,EAAE,CAAE;AACxB,CAAC;AAEM,MAAMC,kBAAkB,GAAAP,OAAA,CAAAO,kBAAA,GAAG,IAAI;AAC/B,MAAMC,wBAAwB,GAAAR,OAAA,CAAAQ,wBAAA,GAAG,CAAC;AAElC,MAAMC,YAAY,GAAAT,OAAA,CAAAS,YAAA,GAAG;EAC1BC,KAAK,EAAE,GAAG;EACVC,MAAM,EAAE;AACV,CAAC;AACM,MAAMC,YAAY,GAAAZ,OAAA,CAAAY,YAAA,GAAG,GAAG;AAExB,MAAMC,kBAAkB,GAAAb,OAAA,CAAAa,kBAAA,GAAG;EAChCC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;EAAE;EAC1BC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;EAAE;EAC1BC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAE;AAC5B,CAAC;AAEM,MAAMC,uBAAuB,GAAAjB,OAAA,CAAAiB,uBAAA,GAAG,EAAE;AAClC,MAAMC,wBAAwB,GAAAlB,OAAA,CAAAkB,wBAAA,GAAG,EAAE","ignoreList":[]}
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.getGifLabel = exports.generateGifsStructure = exports.calculatePercentageTable = void 0;
|
|
6
|
+
exports.getProgressLineWidth = exports.getGifLabel = exports.generateGifsStructure = exports.findGroupForPercentage = exports.calculatePercentageTable = void 0;
|
|
7
|
+
var _constants = require("./constants.js");
|
|
7
8
|
/**
|
|
8
9
|
* Number of problems When we show gif
|
|
9
10
|
* <6 Never
|
|
@@ -17,6 +18,10 @@ exports.getGifLabel = exports.generateGifsStructure = exports.calculatePercentag
|
|
|
17
18
|
* Group 1: 15%, 20%, 25%, 30% - Early celebrations
|
|
18
19
|
* Group 2: 33%, 40%, 45%, 50% - Mid celebrations
|
|
19
20
|
* Group 3: 60%, 66%, 75%, 80% - Party
|
|
21
|
+
* or
|
|
22
|
+
* Group 1: <=30% - Early celebrations
|
|
23
|
+
* Group 2: >30% <60% - Mid celebrations
|
|
24
|
+
* Group 3: >=60% - Party
|
|
20
25
|
*/
|
|
21
26
|
const calculatePercentageTable = totalProblems => {
|
|
22
27
|
if (totalProblems <= 12) return {
|
|
@@ -68,4 +73,24 @@ const getGifLabel = relatedGroup => {
|
|
|
68
73
|
return 'gifCelebrations.greatStart';
|
|
69
74
|
};
|
|
70
75
|
exports.getGifLabel = getGifLabel;
|
|
76
|
+
const getProgressLineWidth = completedPercent => {
|
|
77
|
+
if (completedPercent <= 9) {
|
|
78
|
+
return _constants.MIN_WIDTH_FOR_ONE_DIGIT;
|
|
79
|
+
}
|
|
80
|
+
if (completedPercent <= 15) {
|
|
81
|
+
return _constants.MIN_WIDTH_FOR_TWO_DIGITS;
|
|
82
|
+
}
|
|
83
|
+
return completedPercent;
|
|
84
|
+
};
|
|
85
|
+
exports.getProgressLineWidth = getProgressLineWidth;
|
|
86
|
+
const findGroupForPercentage = percentage => {
|
|
87
|
+
if (percentage <= 30) {
|
|
88
|
+
return 'group1';
|
|
89
|
+
}
|
|
90
|
+
if (percentage < 60) {
|
|
91
|
+
return 'group2';
|
|
92
|
+
}
|
|
93
|
+
return 'group3';
|
|
94
|
+
};
|
|
95
|
+
exports.findGroupForPercentage = findGroupForPercentage;
|
|
71
96
|
//# sourceMappingURL=helpers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["calculatePercentageTable","totalProblems","Math","ceil","exports","generateGifsStructure","gifs","Object","fromEntries","entries","map","key","value","url","isShown","group","getGifLabel","relatedGroup"],"sourceRoot":"../../../../src","sources":["features/gifCelebrations/helpers.ts"],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"names":["_constants","require","calculatePercentageTable","totalProblems","Math","ceil","exports","generateGifsStructure","gifs","Object","fromEntries","entries","map","key","value","url","isShown","group","getGifLabel","relatedGroup","getProgressLineWidth","completedPercent","MIN_WIDTH_FOR_ONE_DIGIT","MIN_WIDTH_FOR_TWO_DIGITS","findGroupForPercentage","percentage"],"sourceRoot":"../../../../src","sources":["features/gifCelebrations/helpers.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -11,7 +11,7 @@ class GifCelebrationsCache {
|
|
|
11
11
|
initialSet = (0, _effector.createEvent)();
|
|
12
12
|
set = (0, _effector.createEvent)();
|
|
13
13
|
reset = (0, _effector.createEvent)();
|
|
14
|
-
|
|
14
|
+
prefetchAllGifs = (0, _effector.createEffect)(data => {
|
|
15
15
|
Object.values(data).forEach(group => {
|
|
16
16
|
group.forEach(gifUrl => {
|
|
17
17
|
_reactNative.Image.prefetch(gifUrl);
|
|
@@ -19,12 +19,15 @@ class GifCelebrationsCache {
|
|
|
19
19
|
});
|
|
20
20
|
this.initialSet(data);
|
|
21
21
|
});
|
|
22
|
+
prefetchGifs = (0, _effector.createEffect)(gifs => {
|
|
23
|
+
gifs.forEach(gifUrl => {
|
|
24
|
+
_reactNative.Image.prefetch(gifUrl);
|
|
25
|
+
});
|
|
26
|
+
});
|
|
22
27
|
$gifs = (0, _effector.createStore)(null).reset(this.reset).on(this.initialSet, (_, gifs) => (0, _helpers.generateGifsStructure)(gifs)).on(this.set, (_, gifs) => gifs);
|
|
23
28
|
constructor({
|
|
24
|
-
customPrefetchMethod,
|
|
25
29
|
customGetCachePathMethod
|
|
26
30
|
}) {
|
|
27
|
-
this.prefetchMethod = customPrefetchMethod || _reactNative.Image.prefetch;
|
|
28
31
|
this.getCachePathMethod = customGetCachePathMethod;
|
|
29
32
|
}
|
|
30
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_effector","require","_helpers","_reactNative","GifCelebrationsCache","initialSet","createEvent","set","reset","
|
|
1
|
+
{"version":3,"names":["_effector","require","_helpers","_reactNative","GifCelebrationsCache","initialSet","createEvent","set","reset","prefetchAllGifs","createEffect","data","Object","values","forEach","group","gifUrl","Image","prefetch","prefetchGifs","gifs","$gifs","createStore","on","_","generateGifsStructure","constructor","customGetCachePathMethod","getCachePathMethod","exports"],"sourceRoot":"../../../../../src","sources":["features/gifCelebrations/model/GifCelebrations.cache.ts"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAEA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AAMO,MAAMG,oBAAoB,CAAC;EAChBC,UAAU,GAAG,IAAAC,qBAAW,EAAa,CAAC;EACtCC,GAAG,GAAG,IAAAD,qBAAW,EAAgB,CAAC;EAClCE,KAAK,GAAG,IAAAF,qBAAW,EAAC,CAAC;EAIrBG,eAAe,GAAG,IAAAC,sBAAY,EAAoBC,IAAI,IAAK;IACzEC,MAAM,CAACC,MAAM,CAACF,IAAI,CAAC,CAACG,OAAO,CAAEC,KAAK,IAAK;MACrCA,KAAK,CAACD,OAAO,CAAEE,MAAM,IAAK;QACxBC,kBAAK,CAACC,QAAQ,CAACF,MAAM,CAAC;MACxB,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,IAAI,CAACX,UAAU,CAACM,IAAI,CAAC;EACvB,CAAC,CAAC;EAEcQ,YAAY,GAAG,IAAAT,sBAAY,EAAkBU,IAAI,IAAK;IACpEA,IAAI,CAACN,OAAO,CAAEE,MAAM,IAAK;MACvBC,kBAAK,CAACC,QAAQ,CAACF,MAAM,CAAC;IACxB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEcK,KAAK,GAAG,IAAAC,qBAAW,EAAuB,IAAI,CAAC,CAC5Dd,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC,CACjBe,EAAE,CAAC,IAAI,CAAClB,UAAU,EAAE,CAACmB,CAAC,EAAEJ,IAAI,KAAK,IAAAK,8BAAqB,EAACL,IAAI,CAAC,CAAC,CAC7DG,EAAE,CAAC,IAAI,CAAChB,GAAG,EAAE,CAACiB,CAAC,EAAEJ,IAAI,KAAKA,IAAI,CAAC;EAElCM,WAAWA,CAAC;IAAEC;EAAoD,CAAC,EAAE;IACnE,IAAI,CAACC,kBAAkB,GAAGD,wBAAwB;EACpD;AACF;AAACE,OAAA,CAAAzB,oBAAA,GAAAA,oBAAA","ignoreList":[]}
|
|
@@ -20,17 +20,14 @@ class GifCelebrationsModel {
|
|
|
20
20
|
setActiveGif = (0, _effector.createEvent)();
|
|
21
21
|
$activeGif = (0, _effector.createStore)(null).reset(this.stop).reset(this.resetGifTriggerable).on(this.setActiveGif, (_, gif) => gif);
|
|
22
22
|
initialize = (0, _effector.createEvent)();
|
|
23
|
-
resetGroupGifs = (0, _effector.createEvent)();
|
|
24
23
|
constructor({
|
|
25
24
|
api,
|
|
26
25
|
totalProblems,
|
|
27
26
|
resolvedProblems,
|
|
28
|
-
customPrefetchMethod,
|
|
29
27
|
customGetCachePathMethod
|
|
30
28
|
}) {
|
|
31
29
|
this.api = new _GifCelebrationsApi.GifCelebrationsApi(api);
|
|
32
30
|
this.cache = new _GifCelebrationsCache.GifCelebrationsCache({
|
|
33
|
-
customPrefetchMethod,
|
|
34
31
|
customGetCachePathMethod
|
|
35
32
|
});
|
|
36
33
|
this.$totalProblems = totalProblems;
|
|
@@ -38,23 +35,24 @@ class GifCelebrationsModel {
|
|
|
38
35
|
this.setupEventHandlers();
|
|
39
36
|
}
|
|
40
37
|
setupEventHandlers() {
|
|
41
|
-
(0, _effector.sample)({
|
|
42
|
-
source: this.api.getGifsFx.doneData,
|
|
43
|
-
filter: response => response.ok,
|
|
44
|
-
fn: response => response.data,
|
|
45
|
-
target: this.cache.prefetchGifs
|
|
46
|
-
});
|
|
47
38
|
(0, _effector.sample)({
|
|
48
39
|
clock: this.initialize,
|
|
49
40
|
source: this.cache.$gifs,
|
|
50
41
|
filter: gifs => !gifs,
|
|
51
42
|
target: this.api.getGifsFx
|
|
52
43
|
});
|
|
44
|
+
(0, _effector.sample)({
|
|
45
|
+
source: this.api.getGifsFx.doneData,
|
|
46
|
+
filter: response => response.ok,
|
|
47
|
+
fn: response => response.data,
|
|
48
|
+
target: this.cache.prefetchAllGifs
|
|
49
|
+
});
|
|
53
50
|
(0, _effector.sample)({
|
|
54
51
|
clock: [this.initialize, this.$totalProblems.updates],
|
|
55
52
|
source: this.$totalProblems,
|
|
56
53
|
fn: totalProblems => {
|
|
57
54
|
if (totalProblems && totalProblems >= _constants.MIN_PROBLEMS_TO_SHOW_GIF) {
|
|
55
|
+
console.log('calculatePercentageTable(totalProblems): ', (0, _helpers.calculatePercentageTable)(totalProblems));
|
|
58
56
|
return (0, _helpers.calculatePercentageTable)(totalProblems);
|
|
59
57
|
}
|
|
60
58
|
return null;
|
|
@@ -86,10 +84,8 @@ class GifCelebrationsModel {
|
|
|
86
84
|
}) => {
|
|
87
85
|
const percentageMilestone = Object.keys(problemsPercentageTable).find(key => problemsPercentageTable[Number(key)] === resolvedProblem);
|
|
88
86
|
if (!percentageMilestone) return null;
|
|
89
|
-
const groupName =
|
|
90
|
-
if (!groupName) return null;
|
|
87
|
+
const groupName = (0, _helpers.findGroupForPercentage)(Number(percentageMilestone));
|
|
91
88
|
const gifsForGroup = gifsGroups[groupName];
|
|
92
|
-
if (!gifsForGroup || gifsForGroup.length === 0) return null;
|
|
93
89
|
const unusedGifIndex = gifsForGroup.findIndex(gif => !gif.isShown);
|
|
94
90
|
if (unusedGifIndex === -1) {
|
|
95
91
|
const updatedGifsGroups = {
|
|
@@ -119,9 +115,6 @@ class GifCelebrationsModel {
|
|
|
119
115
|
this.cache.set(updatedGifsGroups);
|
|
120
116
|
this.setActiveGif(gifObject);
|
|
121
117
|
});
|
|
122
|
-
findGroupForPercentage(percentage) {
|
|
123
|
-
return Object.keys(_constants.GROUPS_PERCENTAGES).find(key => _constants.GROUPS_PERCENTAGES[key].includes(percentage));
|
|
124
|
-
}
|
|
125
118
|
}
|
|
126
119
|
exports.GifCelebrationsModel = GifCelebrationsModel;
|
|
127
120
|
//# sourceMappingURL=GifCelebrations.model.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_effector","require","_GifCelebrationsApi","_GifCelebrationsCache","_helpers","_constants","GifCelebrationsModel","play","createEvent","stop","resetGifTriggerable","setGifTriggerable","$isGifTriggerable","createStore","reset","on","_","isGifCelebrationMayBeTriggered","resetPercentageTable","$problemsPercentageTable","setActiveGif","$activeGif","gif","initialize","
|
|
1
|
+
{"version":3,"names":["_effector","require","_GifCelebrationsApi","_GifCelebrationsCache","_helpers","_constants","GifCelebrationsModel","play","createEvent","stop","resetGifTriggerable","setGifTriggerable","$isGifTriggerable","createStore","reset","on","_","isGifCelebrationMayBeTriggered","resetPercentageTable","$problemsPercentageTable","setActiveGif","$activeGif","gif","initialize","constructor","api","totalProblems","resolvedProblems","customGetCachePathMethod","GifCelebrationsApi","cache","GifCelebrationsCache","$totalProblems","$resolvedProblems","setupEventHandlers","sample","clock","source","$gifs","filter","gifs","target","getGifsFx","doneData","response","ok","fn","data","prefetchAllGifs","updates","MIN_PROBLEMS_TO_SHOW_GIF","console","log","calculatePercentageTable","gifsGroups","resolvedProblem","problemsPercentageTable","undefined","sources","handleGifSelection","createEffect","percentageMilestone","Object","keys","find","key","Number","groupName","findGroupForPercentage","gifsForGroup","unusedGifIndex","findIndex","isShown","updatedGifsGroups","map","gifObject","set","selectedGif","exports"],"sourceRoot":"../../../../../src","sources":["features/gifCelebrations/model/GifCelebrations.model.ts"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,mBAAA,GAAAD,OAAA;AAOA,IAAAE,qBAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AAQO,MAAMK,oBAAoB,CAAC;EAOhBC,IAAI,GAAG,IAAAC,qBAAW,EAAC,CAAC;EACpBC,IAAI,GAAG,IAAAD,qBAAW,EAAC,CAAC;EAEpBE,mBAAmB,GAAG,IAAAF,qBAAW,EAAC,CAAC;EACnCG,iBAAiB,GAAG,IAAAH,qBAAW,EAAU,CAAC;EAC1CI,iBAAiB,GAAG,IAAAC,qBAAW,EAAU,KAAK,CAAC,CAC5DC,KAAK,CAAC,IAAI,CAACJ,mBAAmB,CAAC,CAC/BI,KAAK,CAAC,IAAI,CAACL,IAAI,CAAC,CAChBM,EAAE,CACD,IAAI,CAACJ,iBAAiB,EACtB,CAACK,CAAC,EAAEC,8BAA8B,KAAKA,8BACzC,CAAC;EAEaC,oBAAoB,GAAG,IAAAV,qBAAW,EAAC,CAAC;EACpCW,wBAAwB,GAAG,IAAAN,qBAAW,EACpD,IACF,CAAC,CAACC,KAAK,CAAC,IAAI,CAACI,oBAAoB,CAAC;EAElBE,YAAY,GAAG,IAAAZ,qBAAW,EAAY,CAAC;EACvCa,UAAU,GAAG,IAAAR,qBAAW,EAAmB,IAAI,CAAC,CAC7DC,KAAK,CAAC,IAAI,CAACL,IAAI,CAAC,CAChBK,KAAK,CAAC,IAAI,CAACJ,mBAAmB,CAAC,CAC/BK,EAAE,CAAC,IAAI,CAACK,YAAY,EAAE,CAACJ,CAAC,EAAEM,GAAG,KAAKA,GAAG,CAAC;EAEzBC,UAAU,GAAG,IAAAf,qBAAW,EAAC,CAAC;EAE1CgB,WAAWA,CAAC;IACVC,GAAG;IACHC,aAAa;IACbC,gBAAgB;IAChBC;EACyB,CAAC,EAAE;IAC5B,IAAI,CAACH,GAAG,GAAG,IAAII,sCAAkB,CAACJ,GAAG,CAAC;IACtC,IAAI,CAACK,KAAK,GAAG,IAAIC,0CAAoB,CAAC;MAAEH;IAAyB,CAAC,CAAC;IAEnE,IAAI,CAACI,cAAc,GAAGN,aAAa;IACnC,IAAI,CAACO,iBAAiB,GAAGN,gBAAgB;IAEzC,IAAI,CAACO,kBAAkB,CAAC,CAAC;EAC3B;EAEQA,kBAAkBA,CAAA,EAAG;IAC3B,IAAAC,gBAAM,EAAC;MACLC,KAAK,EAAE,IAAI,CAACb,UAAU;MACtBc,MAAM,EAAE,IAAI,CAACP,KAAK,CAACQ,KAAK;MACxBC,MAAM,EAAGC,IAAI,IAAK,CAACA,IAAI;MACvBC,MAAM,EAAE,IAAI,CAAChB,GAAG,CAACiB;IACnB,CAAC,CAAC;IAEF,IAAAP,gBAAM,EAAC;MACLE,MAAM,EAAE,IAAI,CAACZ,GAAG,CAACiB,SAAS,CAACC,QAAQ;MACnCJ,MAAM,EAAGK,QAAQ,IAAKA,QAAQ,CAACC,EAAE;MACjCC,EAAE,EAAGF,QAAQ,IAAKA,QAAQ,CAACG,IAAI;MAC/BN,MAAM,EAAE,IAAI,CAACX,KAAK,CAACkB;IACrB,CAAC,CAAC;IAEF,IAAAb,gBAAM,EAAC;MACLC,KAAK,EAAE,CAAC,IAAI,CAACb,UAAU,EAAE,IAAI,CAACS,cAAc,CAACiB,OAAO,CAAC;MACrDZ,MAAM,EAAE,IAAI,CAACL,cAAc;MAC3Bc,EAAE,EAAGpB,aAAa,IAAK;QACrB,IAAIA,aAAa,IAAIA,aAAa,IAAIwB,mCAAwB,EAAE;UAC9DC,OAAO,CAACC,GAAG,CACT,2CAA2C,EAC3C,IAAAC,iCAAwB,EAAC3B,aAAa,CACxC,CAAC;UAED,OAAO,IAAA2B,iCAAwB,EAAC3B,aAAa,CAAC;QAChD;QACA,OAAO,IAAI;MACb,CAAC;MACDe,MAAM,EAAE,IAAI,CAACtB;IACf,CAAC,CAAC;IAEF,IAAAgB,gBAAM,EAAC;MACLC,KAAK,EAAE,IAAI,CAAC7B,IAAI;MAChB8B,MAAM,EAAE;QACNpB,8BAA8B,EAAE,IAAI,CAACL,iBAAiB;QACtD0C,UAAU,EAAE,IAAI,CAACxB,KAAK,CAACQ,KAAK;QAC5BiB,eAAe,EAAE,IAAI,CAACtB,iBAAiB;QACvCuB,uBAAuB,EAAE,IAAI,CAACrC;MAChC,CAAC;MACDoB,MAAM,EAAEA,CAAC;QACPtB,8BAA8B;QAC9BqC,UAAU;QACVC,eAAe;QACfC;MACF,CAAC,KACC,CAAC,EACCvC,8BAA8B,IAC9BqC,UAAU,IACVC,eAAe,KAAKE,SAAS,IAC7BD,uBAAuB,CACxB;MACHV,EAAE,EAAGY,OAAO,IAAKA,OAAkC;MACnDjB,MAAM,EAAE,IAAI,CAACkB;IACf,CAAC,CAAC;EACJ;EAEiBA,kBAAkB,GAAG,IAAAC,sBAAY,EAChD,CAAC;IAAEN,UAAU;IAAEC,eAAe;IAAEC;EAAiD,CAAC,KAAK;IACrF,MAAMK,mBAAmB,GAAGC,MAAM,CAACC,IAAI,CAACP,uBAAuB,CAAC,CAACQ,IAAI,CAClEC,GAAG,IAAKT,uBAAuB,CAACU,MAAM,CAACD,GAAG,CAAC,CAAC,KAAKV,eACpD,CAAC;IAED,IAAI,CAACM,mBAAmB,EAAE,OAAO,IAAI;IAErC,MAAMM,SAAS,GAAG,IAAAC,+BAAsB,EAACF,MAAM,CAACL,mBAAmB,CAAC,CAAC;IAErE,MAAMQ,YAAY,GAAGf,UAAU,CAACa,SAAS,CAAC;IAC1C,MAAMG,cAAc,GAAGD,YAAY,CAACE,SAAS,CAAEjD,GAAG,IAAK,CAACA,GAAG,CAACkD,OAAO,CAAC;IAEpE,IAAIF,cAAc,KAAK,CAAC,CAAC,EAAE;MACzB,MAAMG,iBAAiB,GAAG;QAAE,GAAGnB;MAAW,CAAC;MAC3CmB,iBAAiB,CAACN,SAAS,CAAC,GAAGb,UAAU,CAACa,SAAS,CAAC,CAACO,GAAG,CAAEpD,GAAG,KAAM;QACjE,GAAGA,GAAG;QACNkD,OAAO,EAAE;MACX,CAAC,CAAC,CAAC;MACH,MAAMG,SAAoB,GAAG;QAC3B,GAAGF,iBAAiB,CAACN,SAAS,CAAC,CAAC,CAAC,CAAC;QAClCK,OAAO,EAAE;MACX,CAAC;MACDC,iBAAiB,CAACN,SAAS,CAAC,CAAC,CAAC,CAAC,CAACK,OAAO,GAAG,IAAI;MAE9C,IAAI,CAACpD,YAAY,CAACuD,SAAS,CAAC;MAC5B,IAAI,CAAC7C,KAAK,CAAC8C,GAAG,CAACH,iBAAiB,CAAC;IACnC;IAEA,MAAMI,WAAW,GAAGR,YAAY,CAACC,cAAc,CAAC;IAEhD,MAAMK,SAAoB,GAAG;MAC3B,GAAGE,WAAW;MACdL,OAAO,EAAE;IACX,CAAC;IAED,MAAMC,iBAAiB,GAAG;MAAE,GAAGnB;IAAW,CAAC;IAC3CmB,iBAAiB,CAACN,SAAS,CAAC,CAACG,cAAc,CAAC,CAACE,OAAO,GAAG,IAAI;IAC3D,IAAI,CAAC1C,KAAK,CAAC8C,GAAG,CAACH,iBAAiB,CAAC;IAEjC,IAAI,CAACrD,YAAY,CAACuD,SAAS,CAAC;EAC9B,CACF,CAAC;AACH;AAACG,OAAA,CAAAxE,oBAAA,GAAAA,oBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.IS_WEB = void 0;
|
|
7
|
+
var _reactNative = require("react-native");
|
|
8
|
+
const IS_WEB = exports.IS_WEB = _reactNative.Platform.OS === 'web';
|
|
9
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","IS_WEB","exports","Platform","OS"],"sourceRoot":"../../../src","sources":["shared/constants.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEO,MAAMC,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAGE,qBAAQ,CAACC,EAAE,KAAK,KAAK","ignoreList":[]}
|
|
Binary file
|
|
@@ -13,8 +13,8 @@ export const ContentContainer = ({
|
|
|
13
13
|
const {
|
|
14
14
|
width
|
|
15
15
|
} = useWindowDimensions();
|
|
16
|
-
const RIGHT_POSITION = width / 2 + CONTENT_CONTAINER.CONTAINER_WIDTH / 2 + CONTENT_CONTAINER.
|
|
17
|
-
const LEFT_POSITION = -RIGHT_POSITION - CONTENT_CONTAINER.
|
|
16
|
+
const RIGHT_POSITION = width / 2 + CONTENT_CONTAINER.CONTAINER_WIDTH / 2 + CONTENT_CONTAINER.ROTATION_PADDING;
|
|
17
|
+
const LEFT_POSITION = -RIGHT_POSITION - CONTENT_CONTAINER.ROTATION_PADDING;
|
|
18
18
|
const animatedStyles = useAnimatedStyle(() => ({
|
|
19
19
|
transform: [{
|
|
20
20
|
translateX: interpolate(progress.value, [0, 1, 2], [LEFT_POSITION, 0, RIGHT_POSITION])
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["StyleSheet","useWindowDimensions","React","SPACING","Animated","useAnimatedStyle","interpolate","CONTENT_CONTAINER","jsx","_jsx","ContentContainer","children","progress","width","RIGHT_POSITION","CONTAINER_WIDTH","
|
|
1
|
+
{"version":3,"names":["StyleSheet","useWindowDimensions","React","SPACING","Animated","useAnimatedStyle","interpolate","CONTENT_CONTAINER","jsx","_jsx","ContentContainer","children","progress","width","RIGHT_POSITION","CONTAINER_WIDTH","ROTATION_PADDING","LEFT_POSITION","animatedStyles","transform","translateX","value","rotate","ANGLE","View","style","styles","container","create","alignItems","gap","position"],"sourceRoot":"../../../../../src","sources":["features/gifCelebrations/components/ContentContainer.tsx"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,mBAAmB,QAAQ,cAAc;AAC9D,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,OAAO,QAAQ,4BAA4B;AACpD,OAAOC,QAAQ,IAAIC,gBAAgB,EAAEC,WAAW,QAAqB,yBAAyB;AAC9F,SAASC,iBAAiB,QAAQ,iBAAc;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAQhD,OAAO,MAAMC,gBAAgB,GAAGA,CAAC;EAAEC,QAAQ;EAAEC;AAAgC,CAAC,KAAK;EACjF,MAAM;IAAEC;EAAM,CAAC,GAAGZ,mBAAmB,CAAC,CAAC;EAEvC,MAAMa,cAAc,GAClBD,KAAK,GAAG,CAAC,GAAGN,iBAAiB,CAACQ,eAAe,GAAG,CAAC,GAAGR,iBAAiB,CAACS,gBAAgB;EACxF,MAAMC,aAAa,GAAG,CAACH,cAAc,GAAGP,iBAAiB,CAACS,gBAAgB;EAE1E,MAAME,cAAc,GAAGb,gBAAgB,CACrC,OAAO;IACLc,SAAS,EAAE,CACT;MACEC,UAAU,EAAEd,WAAW,CAACM,QAAQ,CAACS,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAACJ,aAAa,EAAE,CAAC,EAAEH,cAAc,CAAC;IACvF,CAAC,EACD;MACEQ,MAAM,EAAE,GAAGhB,WAAW,CAACM,QAAQ,CAACS,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAACd,iBAAiB,CAACgB,KAAK,EAAE,CAAC,EAAEhB,iBAAiB,CAACgB,KAAK,CAAC,CAAC;IAC3G,CAAC;EAEL,CAAC,CAAC,EACF,CAACX,QAAQ,EAAEE,cAAc,EAAEG,aAAa,CAC1C,CAAC;EAED,oBAAOR,IAAA,CAACL,QAAQ,CAACoB,IAAI;IAACC,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAET,cAAc,CAAE;IAAAP,QAAA,EAAEA;EAAQ,CAAgB,CAAC;AAC7F,CAAC;AAED,MAAMe,MAAM,GAAG1B,UAAU,CAAC4B,MAAM,CAAC;EAC/BD,SAAS,EAAE;IACTd,KAAK,EAAEN,iBAAiB,CAACQ,eAAe;IACxCc,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAE3B,OAAO,CAAC,GAAG,CAAC;IACjB4B,QAAQ,EAAE;EACZ;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -6,7 +6,15 @@ import { BORDER_RADIUS, COLORS, SPACING } from '@magmamath/react-native-ui';
|
|
|
6
6
|
import { MAX_GIF_SIZE, MIN_GIF_SIZE } from "../constants.js";
|
|
7
7
|
import { useText } from "../../../shared/translation/index.js";
|
|
8
8
|
import { getGifLabel } from "../helpers.js";
|
|
9
|
+
import gifFallback from '../assets/gifFallback.gif';
|
|
10
|
+
import { IS_WEB } from "../../../shared/constants.js";
|
|
9
11
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
12
|
+
// IS_WEB
|
|
13
|
+
// ? {
|
|
14
|
+
// uri: confettiImage,
|
|
15
|
+
// }
|
|
16
|
+
// : require('../assets/confetti.webp')
|
|
17
|
+
|
|
10
18
|
export const Gif = ({
|
|
11
19
|
gifObject,
|
|
12
20
|
getCachePathMethod,
|
|
@@ -15,15 +23,38 @@ export const Gif = ({
|
|
|
15
23
|
const [size, setSize] = useState(null);
|
|
16
24
|
const [pathOrUri, setPathOrUri] = useState('');
|
|
17
25
|
const t = useText();
|
|
26
|
+
const gifGroupNumber = Number(gifObject.group.replace('group', ''));
|
|
27
|
+
const gifLabel = getGifLabel(gifGroupNumber);
|
|
18
28
|
useLayoutEffect(() => {
|
|
19
29
|
const loadImageSize = async () => {
|
|
20
|
-
|
|
21
|
-
|
|
30
|
+
let localPath = null;
|
|
31
|
+
/**
|
|
32
|
+
* Image.queryCache works only for WEB, so we need to use a custom method (Expo Image) for React Native
|
|
33
|
+
*/
|
|
34
|
+
try {
|
|
35
|
+
throw new Error('Image not found in cache');
|
|
36
|
+
if (getCachePathMethod) {
|
|
37
|
+
//@ts-ignore
|
|
38
|
+
localPath = await getCachePathMethod(gifObject.url);
|
|
39
|
+
} else {
|
|
40
|
+
//@ts-ignore
|
|
41
|
+
localPath = await Image.queryCache([gifObject.url]).then(result => result[gifObject.url]);
|
|
42
|
+
}
|
|
43
|
+
if (!localPath) {
|
|
44
|
+
throw new Error('Image not found in cache');
|
|
45
|
+
}
|
|
46
|
+
} catch (error) {
|
|
47
|
+
console.warn('Error fetching image from cache:', error);
|
|
48
|
+
localPath = IS_WEB ? gifFallback : require('../assets/gifFallback.gif');
|
|
49
|
+
}
|
|
50
|
+
//@ts-ignore
|
|
51
|
+
Image.getSize(localPath, (width, height) => {
|
|
22
52
|
setSize({
|
|
23
53
|
width: Math.max(MIN_GIF_SIZE, Math.min(MAX_GIF_SIZE.WIDTH, width)),
|
|
24
54
|
height: Math.max(MIN_GIF_SIZE, Math.min(MAX_GIF_SIZE.HEIGHT, height))
|
|
25
55
|
});
|
|
26
|
-
|
|
56
|
+
//@ts-ignore
|
|
57
|
+
setPathOrUri(localPath);
|
|
27
58
|
});
|
|
28
59
|
};
|
|
29
60
|
loadImageSize();
|
|
@@ -45,7 +76,7 @@ export const Gif = ({
|
|
|
45
76
|
}] //this sizes duplication is needed for compatibility with web and rn
|
|
46
77
|
}), /*#__PURE__*/_jsx(View, {
|
|
47
78
|
style: styles.textContainer,
|
|
48
|
-
children: TextComponent(t(
|
|
79
|
+
children: TextComponent(t(gifLabel))
|
|
49
80
|
})]
|
|
50
81
|
})
|
|
51
82
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["StyleSheet","View","Image","React","useLayoutEffect","useState","BORDER_RADIUS","COLORS","SPACING","MAX_GIF_SIZE","MIN_GIF_SIZE","useText","getGifLabel","jsx","_jsx","jsxs","_jsxs","Gif","gifObject","getCachePathMethod","TextComponent","size","setSize","pathOrUri","setPathOrUri","t","loadImageSize","
|
|
1
|
+
{"version":3,"names":["StyleSheet","View","Image","React","useLayoutEffect","useState","BORDER_RADIUS","COLORS","SPACING","MAX_GIF_SIZE","MIN_GIF_SIZE","useText","getGifLabel","gifFallback","IS_WEB","jsx","_jsx","jsxs","_jsxs","Gif","gifObject","getCachePathMethod","TextComponent","size","setSize","pathOrUri","setPathOrUri","t","gifGroupNumber","Number","group","replace","gifLabel","loadImageSize","localPath","Error","url","queryCache","then","result","error","console","warn","require","getSize","width","height","Math","max","min","WIDTH","HEIGHT","style","styles","backgroundContainer","children","container","alt","source","uri","image","textContainer","create","backgroundColor","borderRadius","padding","NEUTRAL_1","position","bottom","alignSelf"],"sourceRoot":"../../../../../src","sources":["features/gifCelebrations/components/Gif.tsx"],"mappings":"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","ignoreList":[]}
|