lido-player 0.0.2-beta-15-dev → 0.0.2-beta-17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (238) hide show
  1. package/LICENSE +21 -21
  2. package/dist/cjs/{decode-Xh5IDmFh.js → decode-BPWgujpW.js} +1 -1
  3. package/dist/cjs/{index-B9AON0kM.js → index-BnfJD-Dp.js} +145 -96
  4. package/dist/cjs/{index-Dy19zuTX.js → index-CACb9dlg.js} +1 -1
  5. package/dist/cjs/index.cjs.js +2 -2
  6. package/dist/cjs/lido-avatar_22.cjs.entry.js +56 -43
  7. package/dist/cjs/lido-player.cjs.js +1 -1
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/collection/components/avatar/lido-avatar.css +4 -4
  10. package/dist/collection/components/avatar/lido-avatar.js +1 -1
  11. package/dist/collection/components/avatar/lido-avatar.tsx +207 -207
  12. package/dist/collection/components/avatar/readme.md +49 -49
  13. package/dist/collection/components/calculator/lido-calculator.css +89 -89
  14. package/dist/collection/components/calculator/lido-calculator.js +4 -4
  15. package/dist/collection/components/canvas/lido-canvas.css +33 -33
  16. package/dist/collection/components/canvas/lido-canvas.js +1 -1
  17. package/dist/collection/components/cell/lido-cell.css +100 -100
  18. package/dist/collection/components/cell/lido-cell.js +12 -12
  19. package/dist/collection/components/column/lido-col.css +19 -19
  20. package/dist/collection/components/column/lido-col.js +6 -6
  21. package/dist/collection/components/container/lido-container.css +10 -10
  22. package/dist/collection/components/container/lido-container.js +8 -8
  23. package/dist/collection/components/flashCard/lido-flash-card.css +28 -28
  24. package/dist/collection/components/flashCard/lido-flash-card.js +4 -4
  25. package/dist/collection/components/float/lido-float.css +30 -30
  26. package/dist/collection/components/float/lido-float.js +2 -2
  27. package/dist/collection/components/home/lido-home.css +309 -309
  28. package/dist/collection/components/home/lido-home.js +5 -5
  29. package/dist/collection/components/image/lido-image.css +17 -17
  30. package/dist/collection/components/image/lido-image.js +6 -6
  31. package/dist/collection/components/keyboard/lido-keyboard.css +38 -38
  32. package/dist/collection/components/keyboard/lido-keyboard.js +3 -3
  33. package/dist/collection/components/mathMatrix/lido-math-matrix.css +56 -56
  34. package/dist/collection/components/mathMatrix/lido-math-matrix.js +12 -2
  35. package/dist/collection/components/position/lido-pos.css +16 -16
  36. package/dist/collection/components/position/lido-pos.js +2 -2
  37. package/dist/collection/components/random/lido-random.css +8 -8
  38. package/dist/collection/components/random/lido-random.js +2 -2
  39. package/dist/collection/components/root/lido-root.js +5 -5
  40. package/dist/collection/components/row/lido-row.css +10 -10
  41. package/dist/collection/components/row/lido-row.js +6 -6
  42. package/dist/collection/components/scale/assets/Shadow.svg +9 -0
  43. package/dist/collection/components/scale/lido-balance.css +145 -145
  44. package/dist/collection/components/scale/lido-balance.js +25 -23
  45. package/dist/collection/components/shape/lido-shape.css +216 -216
  46. package/dist/collection/components/shape/lido-shape.js +6 -6
  47. package/dist/collection/components/slideFill/lido-slide-fill.css +3 -3
  48. package/dist/collection/components/slideFill/lido-slide-fill.js +13 -13
  49. package/dist/collection/components/text/lido-text.css +53 -53
  50. package/dist/collection/components/text/lido-text.js +6 -5
  51. package/dist/collection/components/trace/assets/Tracing-hand.svg +8 -0
  52. package/dist/collection/components/trace/lido-trace.css +97 -97
  53. package/dist/collection/components/trace/lido-trace.js +6 -6
  54. package/dist/collection/components/wrap/lido-wrap.css +18 -18
  55. package/dist/collection/components/wrap/lido-wrap.js +6 -6
  56. package/dist/collection/css/animation.css +211 -211
  57. package/dist/collection/css/index.css +315 -312
  58. package/dist/collection/stories/Templates/Fill-Up/fill-up.stories.js +61 -61
  59. package/dist/collection/stories/Templates/LetterPairing/LetterPairing.stories.js +123 -123
  60. package/dist/collection/stories/Templates/RocketGame/rocketGame.stories.js +48 -48
  61. package/dist/collection/stories/Templates/Tag/tagGame.stories.js +39 -39
  62. package/dist/collection/stories/Templates/arrangeLetters/arrangeLetters.stories.js +44 -44
  63. package/dist/collection/stories/Templates/balancing/balancing.stories.js +35 -35
  64. package/dist/collection/stories/Templates/balloonPop/balloonPop.stories.js +38 -38
  65. package/dist/collection/stories/Templates/blender/blender.stories.js +58 -58
  66. package/dist/collection/stories/Templates/bubbleType/bubbleType.stories.js +42 -42
  67. package/dist/collection/stories/Templates/calculator/calculator.stories.js +28 -28
  68. package/dist/collection/stories/Templates/categorize/categorize.stories.js +37 -37
  69. package/dist/collection/stories/Templates/categorize2/categorize2.stories.js +67 -67
  70. package/dist/collection/stories/Templates/checker-block/checkerBlock.stories.js +29 -29
  71. package/dist/collection/stories/Templates/checkerBlock/checkerBlock.stories.js +13 -13
  72. package/dist/collection/stories/Templates/create-sentence/createSentence.stories.js +74 -74
  73. package/dist/collection/stories/Templates/dragAndDrop/drag-drop.stories.js +69 -69
  74. package/dist/collection/stories/Templates/fillAnswer/fill-answer.stories.js +43 -43
  75. package/dist/collection/stories/Templates/fillBlank/fill-blank.stories.js +282 -282
  76. package/dist/collection/stories/Templates/foodJar/food-jar.stories.js +35 -35
  77. package/dist/collection/stories/Templates/grid/grid.stories.js +118 -118
  78. package/dist/collection/stories/Templates/gridGame/grid-game.stories.js +57 -57
  79. package/dist/collection/stories/Templates/imageMatch/imageMatch.stories.js +44 -44
  80. package/dist/collection/stories/Templates/jumpSentence/jumpSentence.stories.js +41 -41
  81. package/dist/collection/stories/Templates/letterboard/letterboard.stories.js +183 -183
  82. package/dist/collection/stories/Templates/makeSentence/make-sentence.stories.js +36 -36
  83. package/dist/collection/stories/Templates/matchBox/matchBox.stories.js +69 -69
  84. package/dist/collection/stories/Templates/matchBox/matchBox2.stories.js +84 -84
  85. package/dist/collection/stories/Templates/matchingCard/matching-card.stories.js +31 -31
  86. package/dist/collection/stories/Templates/multipleOption/mcqWithQuestionImage.stories.js +112 -112
  87. package/dist/collection/stories/Templates/multipleOption/multiple-option.stories.js +47 -47
  88. package/dist/collection/stories/Templates/multiplyBeeds/multiplyBeeds.stories.js +57 -57
  89. package/dist/collection/stories/Templates/nimbleTable/nimbleTable.stories.js +53 -53
  90. package/dist/collection/stories/Templates/numberBoard/numberBoard.stories.js +46 -46
  91. package/dist/collection/stories/Templates/numberBoardTwo/numberBoardTwo.stories.js +45 -45
  92. package/dist/collection/stories/Templates/numberIdentification/numberIdentificationimageTotext.stories.js +56 -56
  93. package/dist/collection/stories/Templates/numberIdentification/numberIdentificationtextTotext.stories.js +53 -53
  94. package/dist/collection/stories/Templates/numberPair/numberPair.stories.js +127 -127
  95. package/dist/collection/stories/Templates/openwindow/openwindow.stories.js +47 -47
  96. package/dist/collection/stories/Templates/openwindow/openwindow2.stories.js +38 -38
  97. package/dist/collection/stories/Templates/order-tractor/order-tractor-ascending-order.stories.js +97 -97
  98. package/dist/collection/stories/Templates/order-tractor/order-tractor.stories.js +90 -90
  99. package/dist/collection/stories/Templates/palEgmaCalculateSum/palEgmaMultiOption.stories.js +63 -63
  100. package/dist/collection/stories/Templates/palEgmaCalculateSum/palEgmaSumTogether.stories.js +45 -45
  101. package/dist/collection/stories/Templates/palEgmaPatternMatching/palEgmaPatternMatching.stories.js +63 -63
  102. package/dist/collection/stories/Templates/palEgmaWordProblem/palEgmaWordProblem.stories.js +79 -79
  103. package/dist/collection/stories/Templates/palEgraInventedSpelling/pal_egra_invented_spelling_schema.stories.js +32 -32
  104. package/dist/collection/stories/Templates/palEgraMCQWithImage/palEgraMCQWithImage.stories.js +42 -42
  105. package/dist/collection/stories/Templates/palEgraOptionWithAudio/palEgraOptionWithAudio.stories.js +63 -63
  106. package/dist/collection/stories/Templates/palEgraStoryMaking/pal_egra_story_making.stories.js +44 -44
  107. package/dist/collection/stories/Templates/palEgraTemplate1/palEgraLetterIdentification.stories.js +34 -34
  108. package/dist/collection/stories/Templates/palEgraWordMatch/palEgraWordMatch.stories.js +52 -52
  109. package/dist/collection/stories/Templates/palEgra_OddOneOut/palEgra_oddOneOut.stories.js +33 -33
  110. package/dist/collection/stories/Templates/palEgra_arrange_pictures/palEgra_arrange_pictures.stories.js +40 -40
  111. package/dist/collection/stories/Templates/palEgra_build_word/palEgra_build_word.stories.js +48 -48
  112. package/dist/collection/stories/Templates/palEgra_word_formation/palEgra_WordFormation.stories.js +48 -48
  113. package/dist/collection/stories/Templates/palStorytale/palStorytale.stories.js +18 -18
  114. package/dist/collection/stories/Templates/phonic-tractor/phonic-tractor.stories.js +44 -44
  115. package/dist/collection/stories/Templates/pictureClues/pictureClues.stories.js +34 -34
  116. package/dist/collection/stories/Templates/pictureWordMatch/pictureWordMatch1.stories.js +36 -36
  117. package/dist/collection/stories/Templates/pictureWordMatch/pictureWordMatch2.stories.js +30 -30
  118. package/dist/collection/stories/Templates/picturemeaning/pictureMeaningCocos.stories.js +20 -20
  119. package/dist/collection/stories/Templates/puzzleGame/puzzleGame.stories.js +17 -17
  120. package/dist/collection/stories/Templates/questionBoard/questionBoard.stories.js +58 -58
  121. package/dist/collection/stories/Templates/quizLiteracy/quizLiteracy.stories.js +50 -50
  122. package/dist/collection/stories/Templates/quizLiteracy/quizLiteracyImageWithText.stories.js +36 -36
  123. package/dist/collection/stories/Templates/quizLiteracy/quizLiteracyImageWord.stories.js +43 -43
  124. package/dist/collection/stories/Templates/quizMaths/quizMaths.stories.js +631 -631
  125. package/dist/collection/stories/Templates/reorder/reorder.stories.js +63 -63
  126. package/dist/collection/stories/Templates/rowBlocks/rowBlocks.stories.js +47 -47
  127. package/dist/collection/stories/Templates/sentenceMatch/sentenceMatch.stories.js +29 -29
  128. package/dist/collection/stories/Templates/sequenceBox/sequenceBox1.stories.js +64 -64
  129. package/dist/collection/stories/Templates/sequenceBox/sequenceBox2.stories.js +62 -62
  130. package/dist/collection/stories/Templates/shapePair/shape-pair.stories.js +106 -106
  131. package/dist/collection/stories/Templates/shapeTractor/shape-tractor.stories.js +50 -50
  132. package/dist/collection/stories/Templates/spellDoor/spellDoor.stories.js +41 -41
  133. package/dist/collection/stories/Templates/storyTale/storyTale.stories.js +39 -39
  134. package/dist/collection/stories/Templates/substraction/substractionWithimg.stories.js +62 -62
  135. package/dist/collection/stories/Templates/substraction/substractionWithoutImg.stories.js +42 -42
  136. package/dist/collection/stories/Templates/sumTogether/sumTogether.stories.js +50 -50
  137. package/dist/collection/stories/Templates/tenBox/tenBox.stories.js +88 -88
  138. package/dist/collection/stories/Templates/total/total.stories.js +28 -28
  139. package/dist/collection/stories/Templates/wordBuilding/wordBuildingwithimg.stories.js +35 -35
  140. package/dist/collection/stories/Templates/wordBuilding/wordBuildingwithoutimg.stories.js +34 -34
  141. package/dist/collection/stories/Templates/writeCard/writeCard.stories.js +31 -31
  142. package/dist/collection/stories/Templates/writeLetter/writeLetter.stories.js +58 -58
  143. package/dist/collection/stories/Templates/writeNumber/writeNumber.stories.js +44 -44
  144. package/dist/collection/stories/Templates/writeSet/writeSet.stories.js +31 -31
  145. package/dist/collection/stories/Templates/writeWord/writeWord.stories.js +34 -34
  146. package/dist/collection/stories/components/flash-card.stories.js +48 -48
  147. package/dist/collection/stories/components/keyboard.stories.js +10 -10
  148. package/dist/collection/stories/components/slider.stories.js +4 -4
  149. package/dist/collection/stories/components/trace.stories.js +5 -5
  150. package/dist/collection/utils/audioPlayer.js +31 -9
  151. package/dist/collection/utils/constants.js +1 -0
  152. package/dist/collection/utils/utils.js +8 -7
  153. package/dist/collection/utils/utilsHandlers/animationHandler.js +29 -11
  154. package/dist/collection/utils/utilsHandlers/clickHandler.js +8 -0
  155. package/dist/collection/utils/utilsHandlers/dragDropHandler.js +8 -8
  156. package/dist/collection/utils/utilsHandlers/highlightHandler.js +54 -54
  157. package/dist/collection/utils/utilsHandlers/lidoCalculatorHandler.js +12 -15
  158. package/dist/collection/utils/utilsHandlers/slideHandler.js +10 -8
  159. package/dist/collection/utils/utilsHandlers/sortHandler.js +10 -10
  160. package/dist/components/index.js +1 -1
  161. package/dist/components/lido-avatar.js +1 -1
  162. package/dist/components/lido-balance.js +1 -1
  163. package/dist/components/lido-calculator.js +1 -1
  164. package/dist/components/lido-canvas.js +1 -1
  165. package/dist/components/lido-cell.js +1 -1
  166. package/dist/components/lido-col.js +1 -1
  167. package/dist/components/lido-container.js +1 -1
  168. package/dist/components/lido-flash-card.js +1 -1
  169. package/dist/components/lido-float.js +1 -1
  170. package/dist/components/lido-home.js +1 -1
  171. package/dist/components/lido-keyboard.js +1 -1
  172. package/dist/components/lido-math-matrix.js +1 -1
  173. package/dist/components/lido-pos.js +1 -1
  174. package/dist/components/lido-random.js +1 -1
  175. package/dist/components/lido-root.js +1 -1
  176. package/dist/components/lido-row.js +1 -1
  177. package/dist/components/lido-shape.js +1 -1
  178. package/dist/components/lido-slide-fill.js +1 -1
  179. package/dist/components/lido-text.js +1 -1
  180. package/dist/components/lido-trace.js +1 -1
  181. package/dist/components/lido-wrap.js +1 -1
  182. package/dist/components/p-B8nzzM8c.js +1 -0
  183. package/dist/components/{p-Sl9R-E6h.js → p-BBHM059l.js} +1 -1
  184. package/dist/components/p-BXvoOUIv.js +1 -0
  185. package/dist/components/{p-CwDTdXe5.js → p-BeRr8u5m.js} +1 -1
  186. package/dist/components/p-BfqihbR6.js +1 -0
  187. package/dist/components/{p-CPYnt0P-.js → p-C5WmmkI6.js} +1 -1
  188. package/dist/components/{p-useuhkjH.js → p-C70ykycD.js} +1 -1
  189. package/dist/components/{p-BE25wHoo.js → p-CCR42e0i.js} +1 -1
  190. package/dist/components/{p-C2p0KZh4.js → p-CIbBOu51.js} +1 -1
  191. package/dist/components/{p-BfwUqpXc.js → p-CTlcpv4a.js} +1 -1
  192. package/dist/components/{p-CyGxEcn7.js → p-CXHPZN3m.js} +1 -1
  193. package/dist/components/{p-Bw-OC9iR.js → p-CgsPIpg0.js} +1 -1
  194. package/dist/components/p-CwIlwnQk.js +1 -0
  195. package/dist/components/{p-D-IYWSAa.js → p-CxkH5UIf.js} +1 -1
  196. package/dist/components/{p-DGvzMlyn.js → p-DBbLGy4y.js} +2 -2
  197. package/dist/components/p-DLyacZap.js +1 -0
  198. package/dist/components/p-DONbWJGn.js +1 -0
  199. package/dist/components/p-DVTigdH_.js +1 -0
  200. package/dist/components/{p-Uluc7jQ7.js → p-DuvxecDX.js} +1 -1
  201. package/dist/components/p-Dv1cIsyS.js +1 -0
  202. package/dist/esm/{decode-C-vVYHke.js → decode-To5V_Qqp.js} +1 -1
  203. package/dist/esm/{index-BswlHnsY.js → index-CEJsA_x_.js} +145 -96
  204. package/dist/esm/{index-Dq-Z8Dx0.js → index-Dnvog_Mm.js} +2 -2
  205. package/dist/esm/index.js +2 -2
  206. package/dist/esm/lido-avatar_22.entry.js +56 -43
  207. package/dist/esm/lido-player.js +2 -2
  208. package/dist/esm/loader.js +2 -2
  209. package/dist/lido-player/assets/Shadow.svg +9 -0
  210. package/dist/lido-player/assets/Tracing-hand.svg +8 -0
  211. package/dist/lido-player/index.esm.js +1 -1
  212. package/dist/lido-player/lido-avatar.css +4 -4
  213. package/dist/lido-player/lido-avatar.tsx +207 -207
  214. package/dist/lido-player/lido-player.css +7 -7
  215. package/dist/lido-player/lido-player.esm.js +1 -1
  216. package/dist/lido-player/p-3b6e3b51.entry.js +12 -0
  217. package/dist/lido-player/{p-CYMdg2_E.js → p-DUx4nii8.js} +1 -1
  218. package/dist/lido-player/p-Dnvog_Mm.js +2 -0
  219. package/dist/lido-player/p-gkKsw3a6.js +1 -0
  220. package/dist/lido-player/readme.md +49 -49
  221. package/dist/types/components/scale/lido-balance.d.ts +2 -2
  222. package/dist/types/components.d.ts +10 -10
  223. package/dist/types/types/json.d.ts +3 -3
  224. package/dist/types/utils/audioPlayer.d.ts +2 -0
  225. package/dist/types/utils/constants.d.ts +1 -0
  226. package/package.json +73 -74
  227. package/readme.md +113 -113
  228. package/dist/components/p-BSV5U72F.js +0 -1
  229. package/dist/components/p-C7U1h9gI.js +0 -1
  230. package/dist/components/p-CS6iRQJh.js +0 -1
  231. package/dist/components/p-D-B1groh.js +0 -1
  232. package/dist/components/p-DPAlnts-.js +0 -1
  233. package/dist/components/p-DYs8s-uh.js +0 -1
  234. package/dist/components/p-DbR5sNOj.js +0 -1
  235. package/dist/components/p-leIEepjl.js +0 -1
  236. package/dist/lido-player/p-0l6uR1lH.js +0 -1
  237. package/dist/lido-player/p-Dq-Z8Dx0.js +0 -2
  238. package/dist/lido-player/p-b2c60372.entry.js +0 -12
@@ -8,32 +8,32 @@ export function showWrongAnswerAnimation(elements) {
8
8
  if (!document.querySelector(styleId)) {
9
9
  const style = document.createElement('style');
10
10
  style.id = styleId;
11
- style.innerHTML = `
12
- @keyframes enhanced-shake {
13
- 0% { left: 0; }
14
- 10% { left: -8px; }
15
- 20% { left: 8px; }
16
- 30% { left: -8px; }
17
- 40% { left: 8px; }
18
- 50% { left: -6px; }
19
- 60% { left: 6px; }
20
- 70% { left: -4px; }
21
- 80% { left: 4px; }
22
- 90% { left: -2px; }
23
- 100% { left: 0; }
24
- }
25
-
26
-
27
- .wrong-answer {
28
- position: relative; /* Enable relative positioning to move the element */
29
- animation: enhanced-shake 0.6s cubic-bezier(0.36, 0.07, 0.19, 0.97);
30
- background-color: #ffdddd; /* Flash red background to indicate wrong answer */
31
- box-shadow: 0 0 10px rgba(255, 0, 0, 0.5); /* Subtle red shadow */
32
-
33
- border: 4px solid red;
34
- }
35
-
36
-
11
+ style.innerHTML = `
12
+ @keyframes enhanced-shake {
13
+ 0% { left: 0; }
14
+ 10% { left: -8px; }
15
+ 20% { left: 8px; }
16
+ 30% { left: -8px; }
17
+ 40% { left: 8px; }
18
+ 50% { left: -6px; }
19
+ 60% { left: 6px; }
20
+ 70% { left: -4px; }
21
+ 80% { left: 4px; }
22
+ 90% { left: -2px; }
23
+ 100% { left: 0; }
24
+ }
25
+
26
+
27
+ .wrong-answer {
28
+ position: relative; /* Enable relative positioning to move the element */
29
+ animation: enhanced-shake 0.6s cubic-bezier(0.36, 0.07, 0.19, 0.97);
30
+ background-color: #ffdddd; /* Flash red background to indicate wrong answer */
31
+ box-shadow: 0 0 10px rgba(255, 0, 0, 0.5); /* Subtle red shadow */
32
+
33
+ border: 4px solid red;
34
+ }
35
+
36
+
37
37
  `;
38
38
  document.head.appendChild(style);
39
39
  }
@@ -61,34 +61,34 @@ export function highlightSpeakingElement(element) {
61
61
  if (!document.getElementById(styleId)) {
62
62
  const style = document.createElement('style');
63
63
  style.id = styleId;
64
- style.innerHTML = `
65
- .speaking-highlight {
66
- --base-transform: ${element.style.transform};
67
- box-shadow: 0 0 20px 10px rgba(255, 165, 0, 0.9) !important; /* Stronger orange glow effect */
68
- // border: 3px solid green !important;
69
- // transition: box-shadow 0.5s ease-in-out, transform 0.5s ease-in-out;
70
- // transform: scale(1.05); /* Subtle scale effect to pop the element */
71
- // animation: pulseEffect 1.5s infinite; /* Pulsing animation */
72
-
73
- }
74
-
75
- @keyframes pulseEffect {
76
- 0% {
77
- box-shadow: 0 0 20px 10px rgba(255, 165, 0, 0.9);
78
- // transform: var(--base-transform) scale(1.05);
79
- // background-color: #FFFF0B;
80
- }
81
- 50% {
82
- box-shadow: 0 0 30px 15px rgba(255, 165, 0, 1);
83
- // transform: var(--base-transform) scale(1.1);
84
- // background-color: #FFFF0B;
85
- }
86
- 100% {
87
- box-shadow: 0 0 20px 10px rgba(255, 165, 0, 0.9);
88
- // transform: var(--base-transform) scale(1.05);
89
- // background-color: #FFFF0B;
90
- }
91
- }
64
+ style.innerHTML = `
65
+ .speaking-highlight {
66
+ --base-transform: ${element.style.transform};
67
+ box-shadow: 0 0 20px 10px rgba(255, 165, 0, 0.9) !important; /* Stronger orange glow effect */
68
+ // border: 3px solid green !important;
69
+ // transition: box-shadow 0.5s ease-in-out, transform 0.5s ease-in-out;
70
+ // transform: scale(1.05); /* Subtle scale effect to pop the element */
71
+ // animation: pulseEffect 1.5s infinite; /* Pulsing animation */
72
+
73
+ }
74
+
75
+ @keyframes pulseEffect {
76
+ 0% {
77
+ box-shadow: 0 0 20px 10px rgba(255, 165, 0, 0.9);
78
+ // transform: var(--base-transform) scale(1.05);
79
+ // background-color: #FFFF0B;
80
+ }
81
+ 50% {
82
+ box-shadow: 0 0 30px 15px rgba(255, 165, 0, 1);
83
+ // transform: var(--base-transform) scale(1.1);
84
+ // background-color: #FFFF0B;
85
+ }
86
+ 100% {
87
+ box-shadow: 0 0 20px 10px rgba(255, 165, 0, 0.9);
88
+ // transform: var(--base-transform) scale(1.05);
89
+ // background-color: #FFFF0B;
90
+ }
91
+ }
92
92
  `;
93
93
  document.head.appendChild(style);
94
94
  }
@@ -4,27 +4,24 @@ const wait = (ms) => new Promise(resolve => setTimeout(resolve, ms));
4
4
  /* ------------------ animation ------------------ */
5
5
  const animationToRemoveEquationSolvedCellForNimbleTable = (activeCell, container) => {
6
6
  return new Promise((resolve) => {
7
- const keyframes = `
8
- @keyframes widthDecrease {
9
- 0% {
10
- background-color: ${activeCell.style.backgroundColor};
11
- height: ${activeCell.style.height};
12
- margin: ${activeCell.style.margin};
13
- }
14
- 100% { background-color: transparent; height: 0px; margin: 0px; }
15
- }`;
16
- const styleSheet = document.styleSheets[0];
17
- styleSheet.insertRule(keyframes, styleSheet.cssRules.length);
18
- activeCell.style.animation = `widthDecrease 0s`;
19
- activeCell.addEventListener("animationend", () => {
20
- activeCell.remove();
7
+ let removed = false;
8
+ const removeActiveCell = () => {
9
+ if (removed)
10
+ return;
11
+ removed = true;
12
+ if (activeCell.isConnected) {
13
+ activeCell.remove();
14
+ }
21
15
  // Trigger next container only after the last calculate cell is removed
22
16
  const remainingCalculateTypes = container.querySelectorAll("[type='calculate']");
23
17
  if (remainingCalculateTypes.length === 0) {
24
18
  setTimeout(() => triggerNextContainer(), 2000);
25
19
  }
26
20
  resolve();
27
- }, { once: true });
21
+ };
22
+ // Nimble uses a zero-duration removal; remove synchronously so progression
23
+ // does not depend on a browser animationend event.
24
+ removeActiveCell();
28
25
  });
29
26
  };
30
27
  /* ------------------ PRACTICE MODE ------------------ */
@@ -21,6 +21,12 @@ const slideNumbers = (element) => {
21
21
  }
22
22
  };
23
23
  const delay = (ms) => new Promise(res => setTimeout(res, ms));
24
+ const syncSlideOrder = (container) => {
25
+ const slideOrder = Array.from(container.querySelectorAll("[type='slide']"))
26
+ .map(item => item['value']);
27
+ container.setAttribute(SelectedValuesKey, JSON.stringify(slideOrder));
28
+ return slideOrder;
29
+ };
24
30
  export const slideAnimation = async () => {
25
31
  const container = document.getElementById(LidoContainer);
26
32
  if (!container)
@@ -81,6 +87,9 @@ export function slidingWithScaling(element) {
81
87
  const container = document.getElementById(LidoContainer);
82
88
  if (container.getAttribute('canplay') === 'false')
83
89
  return;
90
+ // Slide activities can start in the correct order. Keep their initial DOM
91
+ // order available to the Next/check validation before the first swap occurs.
92
+ syncSlideOrder(container);
84
93
  let verticalDistance;
85
94
  let horizontalDistance;
86
95
  const onStart = (event) => {
@@ -260,15 +269,8 @@ export function slidingWithScaling(element) {
260
269
  element.addEventListener(LIDO_INTERACTION_CLEANUP_EVENT, cleanup);
261
270
  }
262
271
  const slideCompleted = (slideElement) => {
263
- var _a;
264
272
  const container = document.getElementById(LidoContainer);
265
- const slideArr = JSON.parse((_a = container.getAttribute(SelectedValuesKey)) !== null && _a !== void 0 ? _a : '[]');
266
- const allSlideElements = document.querySelectorAll("[type='slide']");
267
- let index = 0;
268
- allSlideElements.forEach(item => {
269
- slideArr[index++] = item['value'];
270
- });
271
- container.setAttribute(SelectedValuesKey, JSON.stringify(slideArr));
273
+ const slideArr = syncSlideOrder(container);
272
274
  const objectiveString = document.getElementById(LidoContainer)['objective'];
273
275
  const objectiveArray = objectiveString.split(',');
274
276
  const elementIndex = slideArr.indexOf(slideElement['value']);
@@ -161,11 +161,11 @@ export function enableReorderDrag(element) {
161
161
  onDropToCategory(element, category);
162
162
  }
163
163
  if (divEl) {
164
- const keyframes = `
165
- @keyframes widthDecrease {
166
- 0% { width: ${divEl.offsetWidth}px; height: ${divEl.offsetHeight}px; }
167
- 100% { width: 0px; height: 0px;}
168
- }
164
+ const keyframes = `
165
+ @keyframes widthDecrease {
166
+ 0% { width: ${divEl.offsetWidth}px; height: ${divEl.offsetHeight}px; }
167
+ 100% { width: 0px; height: 0px;}
168
+ }
169
169
  `;
170
170
  const styleSheet = document.styleSheets[0];
171
171
  styleSheet.insertRule(keyframes, styleSheet.cssRules.length);
@@ -378,11 +378,11 @@ function moveWithAnimation(target, overlapped) {
378
378
  const dummy = createDummyElement(target);
379
379
  dummy.style.visibility = 'hidden';
380
380
  dummy.setAttribute('type', 'dummy');
381
- const keyframes = `
382
- @keyframes widthIncrease {
383
- 0% { width: 0px; height: 0px; }
384
- 100% { width: ${target.offsetWidth}px; height: ${target.offsetHeight}px;}
385
- }
381
+ const keyframes = `
382
+ @keyframes widthIncrease {
383
+ 0% { width: 0px; height: 0px; }
384
+ 100% { width: ${target.offsetWidth}px; height: ${target.offsetHeight}px;}
385
+ }
386
386
  `;
387
387
  if (!overlapped) {
388
388
  const overlapCategory = findMostoverlappedElement(target, 'category');