@magmamath/students-features 0.6.5-rc.6 → 0.6.5-rc.8
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/GifCelebrations.js +5 -16
- package/dist/commonjs/features/gifCelebrations/GifCelebrations.js.map +1 -1
- package/dist/commonjs/features/gifCelebrations/model/GifCelebrations.model.js +6 -1
- package/dist/commonjs/features/gifCelebrations/model/GifCelebrations.model.js.map +1 -1
- package/dist/module/features/gifCelebrations/GifCelebrations.js +6 -17
- package/dist/module/features/gifCelebrations/GifCelebrations.js.map +1 -1
- package/dist/module/features/gifCelebrations/model/GifCelebrations.model.js +6 -1
- package/dist/module/features/gifCelebrations/model/GifCelebrations.model.js.map +1 -1
- package/dist/typescript/commonjs/features/gifCelebrations/GifCelebrations.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/gifCelebrations/model/GifCelebrations.model.d.ts +3 -0
- package/dist/typescript/commonjs/features/gifCelebrations/model/GifCelebrations.model.d.ts.map +1 -1
- package/dist/typescript/module/features/gifCelebrations/GifCelebrations.d.ts.map +1 -1
- package/dist/typescript/module/features/gifCelebrations/model/GifCelebrations.model.d.ts +3 -0
- package/dist/typescript/module/features/gifCelebrations/model/GifCelebrations.model.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/features/gifCelebrations/GifCelebrations.tsx +14 -18
- package/src/features/gifCelebrations/model/GifCelebrations.model.ts +22 -2
|
@@ -27,24 +27,13 @@ const GifCelebrations = ({
|
|
|
27
27
|
progress.value = 0;
|
|
28
28
|
};
|
|
29
29
|
const playAnimation = () => {
|
|
30
|
-
progress.value = (0, _reactNativeReanimated.withTiming)(1, {
|
|
30
|
+
progress.value = (0, _reactNativeReanimated.withSequence)((0, _reactNativeReanimated.withTiming)(1, {
|
|
31
31
|
duration: _constants.ANIMATION_DURATION,
|
|
32
32
|
easing: _reactNativeReanimated.Easing.bezier(0.52, 0.16, 0.26, 0.77)
|
|
33
|
-
})
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
// easing: Easing.bezier(0.52, 0.16, 0.26, 0.77),
|
|
38
|
-
// }),
|
|
39
|
-
// withTiming(
|
|
40
|
-
// 2,
|
|
41
|
-
// {
|
|
42
|
-
// duration: ANIMATION_DURATION,
|
|
43
|
-
// easing: Easing.bezier(0.71, 0.09, 0.49, 0.89),
|
|
44
|
-
// },
|
|
45
|
-
// () => runOnJS(stopAnimation)(),
|
|
46
|
-
// ),
|
|
47
|
-
// )
|
|
33
|
+
}), (0, _reactNativeReanimated.withTiming)(2, {
|
|
34
|
+
duration: _constants.ANIMATION_DURATION,
|
|
35
|
+
easing: _reactNativeReanimated.Easing.bezier(0.71, 0.09, 0.49, 0.89)
|
|
36
|
+
}, () => (0, _reactNativeReanimated.runOnJS)(stopAnimation)()));
|
|
48
37
|
};
|
|
49
38
|
(0, _react.useEffect)(() => {
|
|
50
39
|
model.initialize();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_Gif","_Progress","_ContentContainer","_Backdrop","_reactNativeReanimated","_effectorReact","_constants","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","GifCelebrations","model","TextComponent","totalProblems","resolvedProblems","activeGif","useUnit","$totalProblems","$resolvedProblems","$activeGif","completedPercent","Math","round","progress","useSharedValue","stopAnimation","stop","value","playAnimation","withTiming","duration","ANIMATION_DURATION","easing","Easing","bezier","useEffect","initialize","jsx","Backdrop","children","jsxs","ContentContainer","Gif","gifObject","getCachePathMethod","cache","Progress","exports"],"sourceRoot":"../../../../src","sources":["features/gifCelebrations/GifCelebrations.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,sBAAA,GAAAL,OAAA;AACA,IAAAM,cAAA,GAAAN,OAAA;AACA,IAAAO,UAAA,GAAAP,OAAA;AAAgD,IAAAQ,WAAA,GAAAR,OAAA;AAAA,SAAAS,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAX,wBAAAW,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,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,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AASzC,MAAMW,eAAe,GAAGA,CAAC;EAAEC,KAAK;EAAEC;AAAoC,CAAC,KAAK;EACjF,MAAM,CAACC,aAAa,EAAEC,gBAAgB,EAAEC,SAAS,CAAC,GAAG,IAAAC,sBAAO,EAAC,CAC3DL,KAAK,CAACM,cAAc,EACpBN,KAAK,CAACO,iBAAiB,EACvBP,KAAK,CAACQ,UAAU,CACjB,CAAC;EAEF,MAAMC,gBAAgB,GACpBN,gBAAgB,IAAID,aAAa,IAAIQ,IAAI,CAACC,KAAK,CAAER,gBAAgB,GAAGD,aAAa,GAAI,GAAG,CAAC;EAE3F,MAAMU,QAAQ,GAAG,IAAAC,qCAAc,EAAgB,CAAC,CAAC;EAEjD,MAAMC,aAAa,GAAGA,CAAA,KAAM;IAC1Bd,KAAK,CAACe,IAAI,CAAC,CAAC;IACZH,QAAQ,CAACI,KAAK,GAAG,CAAC;EACpB,CAAC;EAED,MAAMC,aAAa,GAAGA,CAAA,KAAM;IAC1BL,QAAQ,CAACI,KAAK,GAAG,IAAAE,iCAAU,EAAC,CAAC,EAAE;
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_Gif","_Progress","_ContentContainer","_Backdrop","_reactNativeReanimated","_effectorReact","_constants","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","GifCelebrations","model","TextComponent","totalProblems","resolvedProblems","activeGif","useUnit","$totalProblems","$resolvedProblems","$activeGif","completedPercent","Math","round","progress","useSharedValue","stopAnimation","stop","value","playAnimation","withSequence","withTiming","duration","ANIMATION_DURATION","easing","Easing","bezier","runOnJS","useEffect","initialize","jsx","Backdrop","children","jsxs","ContentContainer","Gif","gifObject","getCachePathMethod","cache","Progress","exports"],"sourceRoot":"../../../../src","sources":["features/gifCelebrations/GifCelebrations.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -10,6 +10,9 @@ var _GifCelebrationsCache = require("./GifCelebrations.cache.js");
|
|
|
10
10
|
var _helpers = require("../helpers.js");
|
|
11
11
|
var _constants = require("../constants.js");
|
|
12
12
|
class GifCelebrationsModel {
|
|
13
|
+
resetIsGifCelebrationMayBeTriggered = (0, _effector.createEvent)();
|
|
14
|
+
setIsGifCelebrationMayBeTriggered = (0, _effector.createEvent)();
|
|
15
|
+
$isGifCelebrationMayBeTriggered = (0, _effector.createStore)(false).reset(this.resetIsGifCelebrationMayBeTriggered).on(this.setIsGifCelebrationMayBeTriggered, (_, isGifCelebrationMayBeTriggered) => isGifCelebrationMayBeTriggered);
|
|
13
16
|
triggerPlay = (0, _effector.createEvent)();
|
|
14
17
|
stop = (0, _effector.createEvent)();
|
|
15
18
|
resetPercentageTable = (0, _effector.createEvent)();
|
|
@@ -59,15 +62,17 @@ class GifCelebrationsModel {
|
|
|
59
62
|
(0, _effector.sample)({
|
|
60
63
|
clock: this.triggerPlay,
|
|
61
64
|
source: {
|
|
65
|
+
isGifCelebrationMayBeTriggered: this.$isGifCelebrationMayBeTriggered,
|
|
62
66
|
gifsGroups: this.cache.$gifs,
|
|
63
67
|
resolvedProblem: this.$resolvedProblems,
|
|
64
68
|
problemsPercentageTable: this.$problemsPercentageTable
|
|
65
69
|
},
|
|
66
70
|
filter: ({
|
|
71
|
+
isGifCelebrationMayBeTriggered,
|
|
67
72
|
gifsGroups,
|
|
68
73
|
resolvedProblem,
|
|
69
74
|
problemsPercentageTable
|
|
70
|
-
}) => !!(gifsGroups && resolvedProblem !== undefined && problemsPercentageTable),
|
|
75
|
+
}) => !!(isGifCelebrationMayBeTriggered && gifsGroups && resolvedProblem !== undefined && problemsPercentageTable),
|
|
71
76
|
fn: sources => sources,
|
|
72
77
|
target: this.handleGifSelection
|
|
73
78
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_effector","require","_GifCelebrationsApi","_GifCelebrationsCache","_helpers","_constants","GifCelebrationsModel","
|
|
1
|
+
{"version":3,"names":["_effector","require","_GifCelebrationsApi","_GifCelebrationsCache","_helpers","_constants","GifCelebrationsModel","resetIsGifCelebrationMayBeTriggered","createEvent","setIsGifCelebrationMayBeTriggered","$isGifCelebrationMayBeTriggered","createStore","reset","on","_","isGifCelebrationMayBeTriggered","triggerPlay","stop","resetPercentageTable","$problemsPercentageTable","setActiveGif","$activeGif","gif","initialize","resetGroupGifs","constructor","api","totalProblems","resolvedProblems","customPrefetchMethod","customGetCachePathMethod","GifCelebrationsApi","cache","GifCelebrationsCache","$totalProblems","$resolvedProblems","setupEventHandlers","sample","source","getGifsFx","doneData","filter","response","ok","fn","data","target","prefetchGifs","clock","$gifs","gifs","updates","MIN_PROBLEMS_TO_SHOW_GIF","calculatePercentageTable","gifsGroups","resolvedProblem","problemsPercentageTable","undefined","sources","handleGifSelection","createEffect","percentageMilestone","Object","keys","find","key","Number","groupName","findGroupForPercentage","gifsForGroup","length","unusedGifIndex","findIndex","isShown","updatedGifsGroups","map","gifObject","set","selectedGif","percentage","GROUPS_PERCENTAGES","includes","exports"],"sourceRoot":"../../../../../src","sources":["features/gifCelebrations/model/GifCelebrations.model.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,7 +5,7 @@ import { Gif } from "./components/Gif.js";
|
|
|
5
5
|
import { Progress } from "./components/Progress.js";
|
|
6
6
|
import { ContentContainer } from "./components/ContentContainer.js";
|
|
7
7
|
import { Backdrop } from "./components/Backdrop.js";
|
|
8
|
-
import { Easing, useSharedValue, withTiming } from 'react-native-reanimated';
|
|
8
|
+
import { Easing, runOnJS, useSharedValue, withSequence, withTiming } from 'react-native-reanimated';
|
|
9
9
|
import { useUnit } from 'effector-react';
|
|
10
10
|
import { ANIMATION_DURATION } from "./constants.js";
|
|
11
11
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
@@ -21,24 +21,13 @@ export const GifCelebrations = ({
|
|
|
21
21
|
progress.value = 0;
|
|
22
22
|
};
|
|
23
23
|
const playAnimation = () => {
|
|
24
|
-
progress.value = withTiming(1, {
|
|
24
|
+
progress.value = withSequence(withTiming(1, {
|
|
25
25
|
duration: ANIMATION_DURATION,
|
|
26
26
|
easing: Easing.bezier(0.52, 0.16, 0.26, 0.77)
|
|
27
|
-
})
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
// easing: Easing.bezier(0.52, 0.16, 0.26, 0.77),
|
|
32
|
-
// }),
|
|
33
|
-
// withTiming(
|
|
34
|
-
// 2,
|
|
35
|
-
// {
|
|
36
|
-
// duration: ANIMATION_DURATION,
|
|
37
|
-
// easing: Easing.bezier(0.71, 0.09, 0.49, 0.89),
|
|
38
|
-
// },
|
|
39
|
-
// () => runOnJS(stopAnimation)(),
|
|
40
|
-
// ),
|
|
41
|
-
// )
|
|
27
|
+
}), withTiming(2, {
|
|
28
|
+
duration: ANIMATION_DURATION,
|
|
29
|
+
easing: Easing.bezier(0.71, 0.09, 0.49, 0.89)
|
|
30
|
+
}, () => runOnJS(stopAnimation)()));
|
|
42
31
|
};
|
|
43
32
|
useEffect(() => {
|
|
44
33
|
model.initialize();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useEffect","Gif","Progress","ContentContainer","Backdrop","Easing","useSharedValue","withTiming","useUnit","ANIMATION_DURATION","jsx","_jsx","jsxs","_jsxs","GifCelebrations","model","TextComponent","totalProblems","resolvedProblems","activeGif","$totalProblems","$resolvedProblems","$activeGif","completedPercent","Math","round","progress","stopAnimation","stop","value","playAnimation","duration","easing","bezier","initialize","children","gifObject","getCachePathMethod","cache"],"sourceRoot":"../../../../src","sources":["features/gifCelebrations/GifCelebrations.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,SAASC,GAAG,QAAQ,qBAAkB;AACtC,SAASC,QAAQ,QAAQ,0BAAuB;AAChD,SAASC,gBAAgB,QAAQ,kCAA+B;AAChE,SAASC,QAAQ,QAAQ,0BAAuB;AAChD,SAASC,MAAM,
|
|
1
|
+
{"version":3,"names":["React","useEffect","Gif","Progress","ContentContainer","Backdrop","Easing","runOnJS","useSharedValue","withSequence","withTiming","useUnit","ANIMATION_DURATION","jsx","_jsx","jsxs","_jsxs","GifCelebrations","model","TextComponent","totalProblems","resolvedProblems","activeGif","$totalProblems","$resolvedProblems","$activeGif","completedPercent","Math","round","progress","stopAnimation","stop","value","playAnimation","duration","easing","bezier","initialize","children","gifObject","getCachePathMethod","cache"],"sourceRoot":"../../../../src","sources":["features/gifCelebrations/GifCelebrations.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,SAASC,GAAG,QAAQ,qBAAkB;AACtC,SAASC,QAAQ,QAAQ,0BAAuB;AAChD,SAASC,gBAAgB,QAAQ,kCAA+B;AAChE,SAASC,QAAQ,QAAQ,0BAAuB;AAChD,SAASC,MAAM,EAAEC,OAAO,EAAEC,cAAc,EAAEC,YAAY,EAAEC,UAAU,QAAQ,yBAAyB;AACnG,SAASC,OAAO,QAAQ,gBAAgB;AACxC,SAASC,kBAAkB,QAAQ,gBAAa;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAShD,OAAO,MAAMC,eAAe,GAAGA,CAAC;EAAEC,KAAK;EAAEC;AAAoC,CAAC,KAAK;EACjF,MAAM,CAACC,aAAa,EAAEC,gBAAgB,EAAEC,SAAS,CAAC,GAAGX,OAAO,CAAC,CAC3DO,KAAK,CAACK,cAAc,EACpBL,KAAK,CAACM,iBAAiB,EACvBN,KAAK,CAACO,UAAU,CACjB,CAAC;EAEF,MAAMC,gBAAgB,GACpBL,gBAAgB,IAAID,aAAa,IAAIO,IAAI,CAACC,KAAK,CAAEP,gBAAgB,GAAGD,aAAa,GAAI,GAAG,CAAC;EAE3F,MAAMS,QAAQ,GAAGrB,cAAc,CAAgB,CAAC,CAAC;EAEjD,MAAMsB,aAAa,GAAGA,CAAA,KAAM;IAC1BZ,KAAK,CAACa,IAAI,CAAC,CAAC;IACZF,QAAQ,CAACG,KAAK,GAAG,CAAC;EACpB,CAAC;EAED,MAAMC,aAAa,GAAGA,CAAA,KAAM;IAC1BJ,QAAQ,CAACG,KAAK,GAAGvB,YAAY,CAC3BC,UAAU,CAAC,CAAC,EAAE;MACZwB,QAAQ,EAAEtB,kBAAkB;MAC5BuB,MAAM,EAAE7B,MAAM,CAAC8B,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;IAC9C,CAAC,CAAC,EACF1B,UAAU,CACR,CAAC,EACD;MACEwB,QAAQ,EAAEtB,kBAAkB;MAC5BuB,MAAM,EAAE7B,MAAM,CAAC8B,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;IAC9C,CAAC,EACD,MAAM7B,OAAO,CAACuB,aAAa,CAAC,CAAC,CAC/B,CACF,CAAC;EACH,CAAC;EAED7B,SAAS,CAAC,MAAM;IACdiB,KAAK,CAACmB,UAAU,CAAC,CAAC;EACpB,CAAC,EAAE,EAAE,CAAC;EAENpC,SAAS,CAAC,MAAM;IACd,IAAIqB,SAAS,EAAE;MACbW,aAAa,CAAC,CAAC;IACjB;EACF,CAAC,EAAE,CAACX,SAAS,CAAC,CAAC;EAEf,IAAI,CAACA,SAAS,EAAE;IACd,OAAO,IAAI;EACb;EAEA,oBACER,IAAA,CAACT,QAAQ;IAACwB,QAAQ,EAAEA,QAAS;IAAAS,QAAA,eAC3BtB,KAAA,CAACZ,gBAAgB;MAACyB,QAAQ,EAAEA,QAAS;MAAAS,QAAA,gBACnCxB,IAAA,CAACZ,GAAG;QACFqC,SAAS,EAAEjB,SAAU;QACrBkB,kBAAkB,EAAEtB,KAAK,CAACuB,KAAK,CAACD,kBAAmB;QACnDrB,aAAa,EAAEA;MAAc,CAC9B,CAAC,eACFL,IAAA,CAACX,QAAQ;QAAC0B,QAAQ,EAAEA,QAAS;QAACH,gBAAgB,EAAEA;MAAiB,CAAE,CAAC;IAAA,CACpD;EAAC,CACX,CAAC;AAEf,CAAC","ignoreList":[]}
|
|
@@ -6,6 +6,9 @@ import { GifCelebrationsCache } from "./GifCelebrations.cache.js";
|
|
|
6
6
|
import { calculatePercentageTable } from "../helpers.js";
|
|
7
7
|
import { GROUPS_PERCENTAGES, MIN_PROBLEMS_TO_SHOW_GIF } from "../constants.js";
|
|
8
8
|
export class GifCelebrationsModel {
|
|
9
|
+
resetIsGifCelebrationMayBeTriggered = createEvent();
|
|
10
|
+
setIsGifCelebrationMayBeTriggered = createEvent();
|
|
11
|
+
$isGifCelebrationMayBeTriggered = createStore(false).reset(this.resetIsGifCelebrationMayBeTriggered).on(this.setIsGifCelebrationMayBeTriggered, (_, isGifCelebrationMayBeTriggered) => isGifCelebrationMayBeTriggered);
|
|
9
12
|
triggerPlay = createEvent();
|
|
10
13
|
stop = createEvent();
|
|
11
14
|
resetPercentageTable = createEvent();
|
|
@@ -55,15 +58,17 @@ export class GifCelebrationsModel {
|
|
|
55
58
|
sample({
|
|
56
59
|
clock: this.triggerPlay,
|
|
57
60
|
source: {
|
|
61
|
+
isGifCelebrationMayBeTriggered: this.$isGifCelebrationMayBeTriggered,
|
|
58
62
|
gifsGroups: this.cache.$gifs,
|
|
59
63
|
resolvedProblem: this.$resolvedProblems,
|
|
60
64
|
problemsPercentageTable: this.$problemsPercentageTable
|
|
61
65
|
},
|
|
62
66
|
filter: ({
|
|
67
|
+
isGifCelebrationMayBeTriggered,
|
|
63
68
|
gifsGroups,
|
|
64
69
|
resolvedProblem,
|
|
65
70
|
problemsPercentageTable
|
|
66
|
-
}) => !!(gifsGroups && resolvedProblem !== undefined && problemsPercentageTable),
|
|
71
|
+
}) => !!(isGifCelebrationMayBeTriggered && gifsGroups && resolvedProblem !== undefined && problemsPercentageTable),
|
|
67
72
|
fn: sources => sources,
|
|
68
73
|
target: this.handleGifSelection
|
|
69
74
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createEffect","createEvent","createStore","sample","GifCelebrationsApi","GifCelebrationsCache","calculatePercentageTable","GROUPS_PERCENTAGES","MIN_PROBLEMS_TO_SHOW_GIF","GifCelebrationsModel","
|
|
1
|
+
{"version":3,"names":["createEffect","createEvent","createStore","sample","GifCelebrationsApi","GifCelebrationsCache","calculatePercentageTable","GROUPS_PERCENTAGES","MIN_PROBLEMS_TO_SHOW_GIF","GifCelebrationsModel","resetIsGifCelebrationMayBeTriggered","setIsGifCelebrationMayBeTriggered","$isGifCelebrationMayBeTriggered","reset","on","_","isGifCelebrationMayBeTriggered","triggerPlay","stop","resetPercentageTable","$problemsPercentageTable","setActiveGif","$activeGif","gif","initialize","resetGroupGifs","constructor","api","totalProblems","resolvedProblems","customPrefetchMethod","customGetCachePathMethod","cache","$totalProblems","$resolvedProblems","setupEventHandlers","source","getGifsFx","doneData","filter","response","ok","fn","data","target","prefetchGifs","clock","$gifs","gifs","updates","gifsGroups","resolvedProblem","problemsPercentageTable","undefined","sources","handleGifSelection","percentageMilestone","Object","keys","find","key","Number","groupName","findGroupForPercentage","gifsForGroup","length","unusedGifIndex","findIndex","isShown","updatedGifsGroups","map","gifObject","set","selectedGif","percentage","includes"],"sourceRoot":"../../../../../src","sources":["features/gifCelebrations/model/GifCelebrations.model.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GifCelebrations.d.ts","sourceRoot":"","sources":["../../../../../src/features/gifCelebrations/GifCelebrations.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAA;AAQxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,EAAiB,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEtE,KAAK,oBAAoB,GAAG;IAC1B,KAAK,EAAE,oBAAoB,CAAA;IAC3B,aAAa,EAAE,iBAAiB,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,eAAe,6BAA8B,oBAAoB,
|
|
1
|
+
{"version":3,"file":"GifCelebrations.d.ts","sourceRoot":"","sources":["../../../../../src/features/gifCelebrations/GifCelebrations.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAA;AAQxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,EAAiB,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEtE,KAAK,oBAAoB,GAAG;IAC1B,KAAK,EAAE,oBAAoB,CAAA;IAC3B,aAAa,EAAE,iBAAiB,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,eAAe,6BAA8B,oBAAoB,6BA4D7E,CAAA"}
|
|
@@ -7,6 +7,9 @@ export declare class GifCelebrationsModel {
|
|
|
7
7
|
readonly cache: GifCelebrationsCache;
|
|
8
8
|
readonly $totalProblems: Store<number>;
|
|
9
9
|
readonly $resolvedProblems: Store<number>;
|
|
10
|
+
readonly resetIsGifCelebrationMayBeTriggered: import("effector").EventCallable<void>;
|
|
11
|
+
readonly setIsGifCelebrationMayBeTriggered: import("effector").EventCallable<boolean>;
|
|
12
|
+
readonly $isGifCelebrationMayBeTriggered: import("effector").StoreWritable<boolean>;
|
|
10
13
|
readonly triggerPlay: import("effector").EventCallable<void>;
|
|
11
14
|
readonly stop: import("effector").EventCallable<void>;
|
|
12
15
|
readonly resetPercentageTable: import("effector").EventCallable<void>;
|
package/dist/typescript/commonjs/features/gifCelebrations/model/GifCelebrations.model.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GifCelebrations.model.d.ts","sourceRoot":"","sources":["../../../../../../src/features/gifCelebrations/model/GifCelebrations.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkD,KAAK,EAAE,MAAM,UAAU,CAAA;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EACL,yBAAyB,EACzB,SAAS,EAGT,uBAAuB,EACxB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAU9D,qBAAa,oBAAoB;IAC/B,SAAgB,GAAG,EAAE,kBAAkB,CAAA;IACvC,SAAgB,KAAK,EAAE,oBAAoB,CAAA;IAE3C,SAAgB,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IAC7C,SAAgB,iBAAiB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IAEhD,SAAgB,WAAW,yCAAgB;IAC3C,SAAgB,IAAI,yCAAgB;IAEpC,SAAgB,oBAAoB,yCAAgB;IACpD,SAAgB,wBAAwB,mEAEN;IAElC,SAAgB,YAAY,8CAA2B;IACvD,SAAgB,UAAU,qDAEe;IAEzC,SAAgB,UAAU,yCAAgB;IAC1C,SAAgB,cAAc,2CAAwB;gBAE1C,EACV,GAAG,EACH,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,wBAAwB,GACzB,EAAE,yBAAyB;IAU5B,OAAO,CAAC,kBAAkB;
|
|
1
|
+
{"version":3,"file":"GifCelebrations.model.d.ts","sourceRoot":"","sources":["../../../../../../src/features/gifCelebrations/model/GifCelebrations.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkD,KAAK,EAAE,MAAM,UAAU,CAAA;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EACL,yBAAyB,EACzB,SAAS,EAGT,uBAAuB,EACxB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAU9D,qBAAa,oBAAoB;IAC/B,SAAgB,GAAG,EAAE,kBAAkB,CAAA;IACvC,SAAgB,KAAK,EAAE,oBAAoB,CAAA;IAE3C,SAAgB,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IAC7C,SAAgB,iBAAiB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IAEhD,SAAgB,mCAAmC,yCAAgB;IACnE,SAAgB,iCAAiC,4CAAyB;IAC1E,SAAgB,+BAA+B,4CAK5C;IAEH,SAAgB,WAAW,yCAAgB;IAC3C,SAAgB,IAAI,yCAAgB;IAEpC,SAAgB,oBAAoB,yCAAgB;IACpD,SAAgB,wBAAwB,mEAEN;IAElC,SAAgB,YAAY,8CAA2B;IACvD,SAAgB,UAAU,qDAEe;IAEzC,SAAgB,UAAU,yCAAgB;IAC1C,SAAgB,cAAc,2CAAwB;gBAE1C,EACV,GAAG,EACH,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,wBAAwB,GACzB,EAAE,yBAAyB;IAU5B,OAAO,CAAC,kBAAkB;IAkD1B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CA+ClC;IAED,OAAO,CAAC,sBAAsB;CAK/B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GifCelebrations.d.ts","sourceRoot":"","sources":["../../../../../src/features/gifCelebrations/GifCelebrations.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAA;AAQxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,EAAiB,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEtE,KAAK,oBAAoB,GAAG;IAC1B,KAAK,EAAE,oBAAoB,CAAA;IAC3B,aAAa,EAAE,iBAAiB,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,eAAe,6BAA8B,oBAAoB,
|
|
1
|
+
{"version":3,"file":"GifCelebrations.d.ts","sourceRoot":"","sources":["../../../../../src/features/gifCelebrations/GifCelebrations.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAA;AAQxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,EAAiB,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEtE,KAAK,oBAAoB,GAAG;IAC1B,KAAK,EAAE,oBAAoB,CAAA;IAC3B,aAAa,EAAE,iBAAiB,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,eAAe,6BAA8B,oBAAoB,6BA4D7E,CAAA"}
|
|
@@ -7,6 +7,9 @@ export declare class GifCelebrationsModel {
|
|
|
7
7
|
readonly cache: GifCelebrationsCache;
|
|
8
8
|
readonly $totalProblems: Store<number>;
|
|
9
9
|
readonly $resolvedProblems: Store<number>;
|
|
10
|
+
readonly resetIsGifCelebrationMayBeTriggered: import("effector").EventCallable<void>;
|
|
11
|
+
readonly setIsGifCelebrationMayBeTriggered: import("effector").EventCallable<boolean>;
|
|
12
|
+
readonly $isGifCelebrationMayBeTriggered: import("effector").StoreWritable<boolean>;
|
|
10
13
|
readonly triggerPlay: import("effector").EventCallable<void>;
|
|
11
14
|
readonly stop: import("effector").EventCallable<void>;
|
|
12
15
|
readonly resetPercentageTable: import("effector").EventCallable<void>;
|
package/dist/typescript/module/features/gifCelebrations/model/GifCelebrations.model.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GifCelebrations.model.d.ts","sourceRoot":"","sources":["../../../../../../src/features/gifCelebrations/model/GifCelebrations.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkD,KAAK,EAAE,MAAM,UAAU,CAAA;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EACL,yBAAyB,EACzB,SAAS,EAGT,uBAAuB,EACxB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAU9D,qBAAa,oBAAoB;IAC/B,SAAgB,GAAG,EAAE,kBAAkB,CAAA;IACvC,SAAgB,KAAK,EAAE,oBAAoB,CAAA;IAE3C,SAAgB,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IAC7C,SAAgB,iBAAiB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IAEhD,SAAgB,WAAW,yCAAgB;IAC3C,SAAgB,IAAI,yCAAgB;IAEpC,SAAgB,oBAAoB,yCAAgB;IACpD,SAAgB,wBAAwB,mEAEN;IAElC,SAAgB,YAAY,8CAA2B;IACvD,SAAgB,UAAU,qDAEe;IAEzC,SAAgB,UAAU,yCAAgB;IAC1C,SAAgB,cAAc,2CAAwB;gBAE1C,EACV,GAAG,EACH,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,wBAAwB,GACzB,EAAE,yBAAyB;IAU5B,OAAO,CAAC,kBAAkB;
|
|
1
|
+
{"version":3,"file":"GifCelebrations.model.d.ts","sourceRoot":"","sources":["../../../../../../src/features/gifCelebrations/model/GifCelebrations.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkD,KAAK,EAAE,MAAM,UAAU,CAAA;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EACL,yBAAyB,EACzB,SAAS,EAGT,uBAAuB,EACxB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAU9D,qBAAa,oBAAoB;IAC/B,SAAgB,GAAG,EAAE,kBAAkB,CAAA;IACvC,SAAgB,KAAK,EAAE,oBAAoB,CAAA;IAE3C,SAAgB,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IAC7C,SAAgB,iBAAiB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IAEhD,SAAgB,mCAAmC,yCAAgB;IACnE,SAAgB,iCAAiC,4CAAyB;IAC1E,SAAgB,+BAA+B,4CAK5C;IAEH,SAAgB,WAAW,yCAAgB;IAC3C,SAAgB,IAAI,yCAAgB;IAEpC,SAAgB,oBAAoB,yCAAgB;IACpD,SAAgB,wBAAwB,mEAEN;IAElC,SAAgB,YAAY,8CAA2B;IACvD,SAAgB,UAAU,qDAEe;IAEzC,SAAgB,UAAU,yCAAgB;IAC1C,SAAgB,cAAc,2CAAwB;gBAE1C,EACV,GAAG,EACH,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,wBAAwB,GACzB,EAAE,yBAAyB;IAU5B,OAAO,CAAC,kBAAkB;IAkD1B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CA+ClC;IAED,OAAO,CAAC,sBAAsB;CAK/B"}
|
package/package.json
CHANGED
|
@@ -32,24 +32,20 @@ export const GifCelebrations = ({ model, TextComponent }: GifCelebrationsProps)
|
|
|
32
32
|
}
|
|
33
33
|
|
|
34
34
|
const playAnimation = () => {
|
|
35
|
-
progress.value =
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
// },
|
|
50
|
-
// () => runOnJS(stopAnimation)(),
|
|
51
|
-
// ),
|
|
52
|
-
// )
|
|
35
|
+
progress.value = withSequence(
|
|
36
|
+
withTiming(1, {
|
|
37
|
+
duration: ANIMATION_DURATION,
|
|
38
|
+
easing: Easing.bezier(0.52, 0.16, 0.26, 0.77),
|
|
39
|
+
}),
|
|
40
|
+
withTiming(
|
|
41
|
+
2,
|
|
42
|
+
{
|
|
43
|
+
duration: ANIMATION_DURATION,
|
|
44
|
+
easing: Easing.bezier(0.71, 0.09, 0.49, 0.89),
|
|
45
|
+
},
|
|
46
|
+
() => runOnJS(stopAnimation)(),
|
|
47
|
+
),
|
|
48
|
+
)
|
|
53
49
|
}
|
|
54
50
|
|
|
55
51
|
useEffect(() => {
|
|
@@ -24,6 +24,15 @@ export class GifCelebrationsModel {
|
|
|
24
24
|
public readonly $totalProblems: Store<number>
|
|
25
25
|
public readonly $resolvedProblems: Store<number>
|
|
26
26
|
|
|
27
|
+
public readonly resetIsGifCelebrationMayBeTriggered = createEvent()
|
|
28
|
+
public readonly setIsGifCelebrationMayBeTriggered = createEvent<boolean>()
|
|
29
|
+
public readonly $isGifCelebrationMayBeTriggered = createStore<boolean>(false)
|
|
30
|
+
.reset(this.resetIsGifCelebrationMayBeTriggered)
|
|
31
|
+
.on(
|
|
32
|
+
this.setIsGifCelebrationMayBeTriggered,
|
|
33
|
+
(_, isGifCelebrationMayBeTriggered) => isGifCelebrationMayBeTriggered,
|
|
34
|
+
)
|
|
35
|
+
|
|
27
36
|
public readonly triggerPlay = createEvent()
|
|
28
37
|
public readonly stop = createEvent()
|
|
29
38
|
|
|
@@ -84,12 +93,23 @@ export class GifCelebrationsModel {
|
|
|
84
93
|
sample({
|
|
85
94
|
clock: this.triggerPlay,
|
|
86
95
|
source: {
|
|
96
|
+
isGifCelebrationMayBeTriggered: this.$isGifCelebrationMayBeTriggered,
|
|
87
97
|
gifsGroups: this.cache.$gifs,
|
|
88
98
|
resolvedProblem: this.$resolvedProblems,
|
|
89
99
|
problemsPercentageTable: this.$problemsPercentageTable,
|
|
90
100
|
},
|
|
91
|
-
filter: ({
|
|
92
|
-
|
|
101
|
+
filter: ({
|
|
102
|
+
isGifCelebrationMayBeTriggered,
|
|
103
|
+
gifsGroups,
|
|
104
|
+
resolvedProblem,
|
|
105
|
+
problemsPercentageTable,
|
|
106
|
+
}) =>
|
|
107
|
+
!!(
|
|
108
|
+
isGifCelebrationMayBeTriggered &&
|
|
109
|
+
gifsGroups &&
|
|
110
|
+
resolvedProblem !== undefined &&
|
|
111
|
+
problemsPercentageTable
|
|
112
|
+
),
|
|
93
113
|
fn: (sources) => sources as HandleGifSelectionProps,
|
|
94
114
|
target: this.handleGifSelection,
|
|
95
115
|
})
|