@khanacademy/perseus 4.0.2 → 6.0.0

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 (249) hide show
  1. package/CHANGELOG.md +57 -0
  2. package/dist/components/fixed-to-responsive.d.ts +27 -1
  3. package/dist/components/fixed-to-responsive.js.flow +27 -1
  4. package/dist/components/graph.d.ts +42 -26
  5. package/dist/components/graph.js.flow +42 -28
  6. package/dist/components/graphie.d.ts +34 -22
  7. package/dist/components/graphie.js.flow +37 -24
  8. package/dist/components/highlighting/highlightable-content.d.ts +4 -4
  9. package/dist/components/highlighting/highlightable-content.js.flow +4 -7
  10. package/dist/components/highlighting/ui/highlight-renderer.d.ts +6 -6
  11. package/dist/components/highlighting/ui/highlight-renderer.js.flow +6 -8
  12. package/dist/components/highlighting/ui/highlight-set-renderer.d.ts +5 -5
  13. package/dist/components/highlighting/ui/highlight-set-renderer.js.flow +5 -8
  14. package/dist/components/highlighting/ui/highlight-tooltip.d.ts +2 -2
  15. package/dist/components/highlighting/ui/highlight-tooltip.js.flow +2 -4
  16. package/dist/components/highlighting/ui/highlighting-ui.d.ts +2 -2
  17. package/dist/components/highlighting/ui/highlighting-ui.js.flow +2 -2
  18. package/dist/components/highlighting/ui/selection-tracker.d.ts +5 -5
  19. package/dist/components/highlighting/ui/selection-tracker.js.flow +5 -7
  20. package/dist/components/highlighting/word-indexer.d.ts +2 -2
  21. package/dist/components/highlighting/word-indexer.js.flow +2 -2
  22. package/dist/components/hud.d.ts +8 -14
  23. package/dist/components/hud.js.flow +7 -14
  24. package/dist/components/inline-icon.d.ts +27 -3
  25. package/dist/components/inline-icon.js.flow +26 -3
  26. package/dist/components/lint.d.ts +41 -13
  27. package/dist/components/lint.js.flow +42 -13
  28. package/dist/components/math-output.d.ts +15 -11
  29. package/dist/components/math-output.js.flow +15 -11
  30. package/dist/components/simple-keypad-input.d.ts +1 -1
  31. package/dist/components/simple-keypad-input.js.flow +1 -1
  32. package/dist/components/sortable.d.ts +17 -9
  33. package/dist/components/sortable.js.flow +22 -9
  34. package/dist/components/svg-image.d.ts +5 -3
  35. package/dist/components/svg-image.js.flow +5 -3
  36. package/dist/components/tex-buttons.d.ts +2 -2
  37. package/dist/components/tex-buttons.js.flow +2 -2
  38. package/dist/components/tooltip.d.ts +45 -4
  39. package/dist/components/tooltip.js.flow +44 -31
  40. package/dist/error-boundary.d.ts +4 -4
  41. package/dist/error-boundary.js.flow +4 -6
  42. package/dist/es/index.css +0 -3
  43. package/dist/es/index.js +484 -658
  44. package/dist/es/index.js.map +1 -1
  45. package/dist/index.css +0 -3
  46. package/dist/index.js +488 -655
  47. package/dist/index.js.map +1 -1
  48. package/dist/perseus-types.d.ts +11 -10
  49. package/dist/perseus-types.js.flow +11 -10
  50. package/dist/renderer.d.ts +2 -2
  51. package/dist/renderer.js.flow +1 -3
  52. package/dist/styles/shared.d.ts +0 -1
  53. package/dist/styles/shared.js.flow +0 -1
  54. package/dist/types.d.ts +0 -10
  55. package/dist/types.js.flow +0 -13
  56. package/dist/util/a11y.d.ts +0 -1
  57. package/dist/util/a11y.js.flow +0 -1
  58. package/dist/util/interactive.d.ts +2 -0
  59. package/dist/util/interactive.js.flow +2 -0
  60. package/dist/util.d.ts +3 -3
  61. package/dist/util.js.flow +4 -3
  62. package/dist/widgets/__stories__/test-keypad-context-wrapper.d.ts +2 -2
  63. package/dist/widgets/__stories__/test-keypad-context-wrapper.js.flow +2 -4
  64. package/dist/widgets/expression.d.ts +2 -2
  65. package/dist/widgets/expression.js.flow +2 -2
  66. package/dist/widgets/grapher.d.ts +1 -1
  67. package/dist/widgets/grapher.js.flow +12 -3
  68. package/dist/widgets/interaction/element-container.d.ts +5 -4
  69. package/dist/widgets/interaction/element-container.js.flow +6 -11
  70. package/dist/widgets/label-image/marker.d.ts +4 -4
  71. package/dist/widgets/label-image/marker.js.flow +4 -6
  72. package/dist/widgets/matcher.d.ts +7 -3
  73. package/dist/widgets/matcher.js.flow +7 -3
  74. package/dist/widgets/number-line.d.ts +1 -1
  75. package/dist/widgets/number-line.js.flow +1 -1
  76. package/dist/widgets/numeric-input.d.ts +0 -2
  77. package/dist/widgets/numeric-input.js.flow +0 -4
  78. package/dist/widgets/radio/base-radio.d.ts +7 -1
  79. package/dist/widgets/radio/base-radio.js.flow +7 -1
  80. package/dist/widgets/radio/choice-icon/choice-icon.d.ts +1 -1
  81. package/dist/widgets/radio/choice-icon/choice-icon.js.flow +1 -1
  82. package/dist/widgets/radio/choice-icon/cross-out-line.d.ts +2 -2
  83. package/dist/widgets/radio/choice-icon/cross-out-line.js.flow +2 -2
  84. package/dist/widgets/radio/focus-ring.d.ts +8 -1
  85. package/dist/widgets/radio/focus-ring.js.flow +8 -1
  86. package/dist/widgets/radio/option-status.d.ts +2 -2
  87. package/dist/widgets/radio/option-status.js.flow +2 -2
  88. package/dist/widgets/video-transcript-link.d.ts +1 -1
  89. package/dist/widgets/video-transcript-link.js.flow +1 -1
  90. package/package.json +4 -4
  91. package/src/__stories__/item-renderer.stories.tsx +2 -6
  92. package/src/__stories__/server-item-renderer.stories.tsx +2 -6
  93. package/src/__tests__/__snapshots__/item-renderer.test.tsx.snap +151 -159
  94. package/src/__tests__/__snapshots__/renderer.test.tsx.snap +358 -394
  95. package/src/__tests__/__snapshots__/server-item-renderer.test.tsx.snap +169 -189
  96. package/src/components/__stories__/button-group.stories.tsx +2 -6
  97. package/src/components/__stories__/fixed-to-responsive.stories.tsx +14 -16
  98. package/src/components/__stories__/graph.stories.tsx +3 -5
  99. package/src/components/__stories__/graphie.stories.tsx +3 -5
  100. package/src/components/__stories__/hud.stories.tsx +2 -6
  101. package/src/components/__stories__/icon.stories.tsx +1 -1
  102. package/src/components/__stories__/image-loader.stories.tsx +4 -4
  103. package/src/components/__stories__/info-tip.stories.tsx +2 -6
  104. package/src/components/__stories__/inline-icon.stories.tsx +4 -8
  105. package/src/components/__stories__/input-with-examples.stories.tsx +6 -10
  106. package/src/components/__stories__/lint.stories.tsx +62 -27
  107. package/src/components/__stories__/math-input.stories.tsx +4 -8
  108. package/src/components/__stories__/math-output.stories.tsx +3 -5
  109. package/src/components/__stories__/multi-button-group.stories.tsx +2 -6
  110. package/src/components/__stories__/number-input.stories.tsx +6 -8
  111. package/src/components/__stories__/prop-check-box.stories.tsx +9 -9
  112. package/src/components/__stories__/range-input.stories.tsx +4 -6
  113. package/src/components/__stories__/simple-keypad-input.stories.tsx +2 -4
  114. package/src/components/__stories__/sortable.stories.tsx +20 -20
  115. package/src/components/__stories__/stub-tag-editor.stories.tsx +5 -9
  116. package/src/components/__stories__/svg-image.stories.tsx +10 -18
  117. package/src/components/__stories__/tex.stories.tsx +1 -3
  118. package/src/components/__stories__/text-buttons.stories.tsx +10 -22
  119. package/src/components/__stories__/text-input.stories.tsx +4 -10
  120. package/src/components/__stories__/text-list-editor.stories.tsx +1 -3
  121. package/src/components/__stories__/tooltip.stories.tsx +52 -0
  122. package/src/components/__stories__/zoomable-tex.stories.tsx +6 -4
  123. package/src/components/__stories__/zoomable.stories.tsx +1 -3
  124. package/src/components/__tests__/__snapshots__/sortable.test.tsx.snap +114 -30
  125. package/src/components/__tests__/__snapshots__/sorter.test.tsx.snap +172 -204
  126. package/src/components/__tests__/sortable.test.tsx +54 -16
  127. package/src/components/__tests__/sorter.test.tsx +12 -9
  128. package/src/components/fixed-to-responsive.tsx +43 -38
  129. package/src/components/graph.tsx +95 -81
  130. package/src/components/graphie.tsx +62 -32
  131. package/src/components/highlighting/highlightable-content.tsx +4 -7
  132. package/src/components/highlighting/ui/highlight-renderer.tsx +6 -9
  133. package/src/components/highlighting/ui/highlight-set-renderer.tsx +5 -8
  134. package/src/components/highlighting/ui/highlight-tooltip.tsx +2 -2
  135. package/src/components/highlighting/ui/highlighting-ui.tsx +2 -2
  136. package/src/components/highlighting/ui/selection-tracker.tsx +5 -8
  137. package/src/components/highlighting/word-indexer.tsx +2 -2
  138. package/src/components/hud.tsx +104 -115
  139. package/src/components/inline-icon.tsx +17 -34
  140. package/src/components/input-with-examples.tsx +4 -4
  141. package/src/components/lint.tsx +47 -41
  142. package/src/components/math-output.tsx +17 -11
  143. package/src/components/simple-keypad-input.tsx +4 -4
  144. package/src/components/sortable.tsx +134 -94
  145. package/src/components/svg-image.tsx +10 -11
  146. package/src/components/tex-buttons.tsx +2 -2
  147. package/src/components/tooltip.tsx +189 -171
  148. package/src/components/visibility-observer/__stories__/visibility-observer.stories.tsx +1 -3
  149. package/src/error-boundary.tsx +4 -7
  150. package/src/interactive2/types.ts +2 -2
  151. package/src/multi-items/__stories__/multi-renderer.stories.tsx +1 -1
  152. package/src/multi-items/__tests__/__snapshots__/multi-renderer.test.tsx.snap +708 -764
  153. package/src/multi-items/__tests__/multi-renderer.test.tsx +2 -3
  154. package/src/perseus-types.ts +13 -12
  155. package/src/renderer.tsx +11 -22
  156. package/src/types.ts +0 -18
  157. package/src/util/graphie.ts +3 -3
  158. package/src/util/interactive.ts +18 -5
  159. package/src/util/tex.ts +13 -77
  160. package/src/util.ts +3 -4
  161. package/src/widgets/__stories__/categorizer.stories.tsx +1 -1
  162. package/src/widgets/__stories__/cs-program.stories.tsx +1 -1
  163. package/src/widgets/__stories__/definition.stories.tsx +3 -7
  164. package/src/widgets/__stories__/dropdown.stories.tsx +1 -1
  165. package/src/widgets/__stories__/explanation.stories.tsx +2 -2
  166. package/src/widgets/__stories__/expression.stories.tsx +5 -11
  167. package/src/widgets/__stories__/graded-group-set.stories.tsx +1 -1
  168. package/src/widgets/__stories__/graded-group.stories.tsx +1 -1
  169. package/src/widgets/__stories__/grapher.stories.tsx +7 -21
  170. package/src/widgets/__stories__/group.stories.tsx +1 -1
  171. package/src/widgets/__stories__/iframe.stories.tsx +1 -1
  172. package/src/widgets/__stories__/image.stories.tsx +1 -1
  173. package/src/widgets/__stories__/input-number.stories.tsx +3 -12
  174. package/src/widgets/__stories__/interaction.stories.tsx +1 -1
  175. package/src/widgets/__stories__/interactive-graph.stories.tsx +9 -9
  176. package/src/widgets/__stories__/matcher.stories.tsx +1 -1
  177. package/src/widgets/__stories__/matrix.stories.tsx +1 -1
  178. package/src/widgets/__stories__/number-line.stories.tsx +1 -1
  179. package/src/widgets/__stories__/numeric-input.stories.tsx +3 -5
  180. package/src/widgets/__stories__/orderer.stories.tsx +1 -1
  181. package/src/widgets/__stories__/passage-ref.stories.tsx +2 -2
  182. package/src/widgets/__stories__/passage.stories.tsx +3 -9
  183. package/src/widgets/__stories__/radio.stories.tsx +3 -5
  184. package/src/widgets/__stories__/sorter.stories.tsx +1 -1
  185. package/src/widgets/__stories__/test-keypad-context-wrapper.tsx +2 -4
  186. package/src/widgets/__stories__/transformer.stories.tsx +1 -1
  187. package/src/widgets/__stories__/unit.stories.tsx +1 -3
  188. package/src/widgets/__stories__/video-transcript-link.stories.tsx +2 -6
  189. package/src/widgets/__stories__/video.stories.tsx +1 -1
  190. package/src/widgets/__testdata__/group.testdata.ts +0 -2
  191. package/src/widgets/__tests__/__snapshots__/categorizer.test.ts.snap +717 -773
  192. package/src/widgets/__tests__/__snapshots__/cs-program.test.ts.snap +28 -36
  193. package/src/widgets/__tests__/__snapshots__/definition.test.ts.snap +52 -60
  194. package/src/widgets/__tests__/__snapshots__/dropdown.test.ts.snap +100 -108
  195. package/src/widgets/__tests__/__snapshots__/explanation.test.ts.snap +212 -260
  196. package/src/widgets/__tests__/__snapshots__/graded-group-set-jipt.test.ts.snap +613 -641
  197. package/src/widgets/__tests__/__snapshots__/graded-group-set.test.ts.snap +249 -261
  198. package/src/widgets/__tests__/__snapshots__/graded-group.test.ts.snap +671 -735
  199. package/src/widgets/__tests__/__snapshots__/grapher.test.ts.snap +2676 -2684
  200. package/src/widgets/__tests__/__snapshots__/group.test.tsx.snap +938 -1002
  201. package/src/widgets/__tests__/__snapshots__/iframe.test.ts.snap +28 -36
  202. package/src/widgets/__tests__/__snapshots__/image.test.ts.snap +227 -255
  203. package/src/widgets/__tests__/__snapshots__/input-number.test.ts.snap +353 -357
  204. package/src/widgets/__tests__/__snapshots__/interaction.test.ts.snap +255 -259
  205. package/src/widgets/__tests__/__snapshots__/interactive-graph.test.ts.snap +2401 -2433
  206. package/src/widgets/__tests__/__snapshots__/matcher.test.tsx.snap +600 -756
  207. package/src/widgets/__tests__/__snapshots__/matrix.test.ts.snap +420 -428
  208. package/src/widgets/__tests__/__snapshots__/number-line.test.ts.snap +762 -770
  209. package/src/widgets/__tests__/__snapshots__/numeric-input.test.ts.snap +373 -393
  210. package/src/widgets/__tests__/__snapshots__/orderer.test.ts.snap +116 -148
  211. package/src/widgets/__tests__/__snapshots__/passage-ref.test.ts.snap +289 -301
  212. package/src/widgets/__tests__/__snapshots__/passage.test.tsx.snap +1679 -1711
  213. package/src/widgets/__tests__/__snapshots__/radio.test.ts.snap +2692 -2960
  214. package/src/widgets/__tests__/__snapshots__/video.test.ts.snap +90 -98
  215. package/src/widgets/__tests__/group.test.tsx +0 -2
  216. package/src/widgets/__tests__/matcher.test.tsx +33 -9
  217. package/src/widgets/__tests__/radio/focus-ring.test.tsx +0 -1
  218. package/src/widgets/expression.tsx +12 -9
  219. package/src/widgets/grapher.tsx +3 -3
  220. package/src/widgets/image.tsx +2 -2
  221. package/src/widgets/interaction/element-container.tsx +7 -8
  222. package/src/widgets/interactive-graph.tsx +5 -5
  223. package/src/widgets/label-image/__stories__/answer-choices.stories.tsx +2 -4
  224. package/src/widgets/label-image/__stories__/marker.stories.tsx +9 -19
  225. package/src/widgets/label-image/marker.tsx +4 -4
  226. package/src/widgets/matcher.tsx +43 -24
  227. package/src/widgets/number-line.tsx +1 -1
  228. package/src/widgets/numeric-input.tsx +0 -3
  229. package/src/widgets/passage/passage-markdown.tsx +2 -2
  230. package/src/widgets/radio/__stories__/base-radio.stories.tsx +11 -19
  231. package/src/widgets/radio/__stories__/choice-icon.stories.tsx +9 -11
  232. package/src/widgets/radio/__stories__/choice-none-above.stories.tsx +1 -1
  233. package/src/widgets/radio/__stories__/choice.stories.tsx +4 -4
  234. package/src/widgets/radio/__stories__/focus-ring.stories.tsx +1 -1
  235. package/src/widgets/radio/__stories__/option-status.stories.tsx +2 -4
  236. package/src/widgets/radio/base-radio.tsx +1 -1
  237. package/src/widgets/radio/choice-icon/choice-icon.tsx +5 -5
  238. package/src/widgets/radio/choice-icon/cross-out-line.tsx +1 -3
  239. package/src/widgets/radio/choice-none-above.tsx +2 -2
  240. package/src/widgets/radio/choice.tsx +1 -3
  241. package/src/widgets/radio/focus-ring.tsx +1 -1
  242. package/src/widgets/radio/option-status.tsx +2 -4
  243. package/src/widgets/radio/widget.tsx +0 -1
  244. package/src/widgets/reaction-diagram.tsx +2 -2
  245. package/src/widgets/simulator.tsx +4 -6
  246. package/src/widgets/video-transcript-link.tsx +1 -1
  247. package/{tsconfig.json → tsconfig-build.json} +6 -6
  248. package/tsconfig-build.tsbuildinfo +1 -0
  249. package/tsconfig.tsbuildinfo +0 -1
@@ -2,310 +2,306 @@
2
2
 
3
3
  exports[`interaction widget should render 1`] = `
4
4
  <div>
5
- <span
6
- class="mock-KatexProvider"
5
+ <div
6
+ class="perseus-renderer perseus-renderer-responsive"
7
7
  >
8
8
  <div
9
- class="perseus-renderer perseus-renderer-responsive"
9
+ class="paragraph"
10
+ data-perseus-paragraph-index="0"
10
11
  >
11
12
  <div
12
13
  class="paragraph"
13
- data-perseus-paragraph-index="0"
14
14
  >
15
- <div
16
- class="paragraph"
17
- >
18
- Drag the dot all the way to the right.
19
- </div>
15
+ Drag the dot all the way to the right.
20
16
  </div>
17
+ </div>
18
+ <div
19
+ class="paragraph"
20
+ data-perseus-paragraph-index="1"
21
+ >
21
22
  <div
22
23
  class="paragraph"
23
- data-perseus-paragraph-index="1"
24
24
  >
25
25
  <div
26
- class="paragraph"
26
+ class="perseus-widget-container widget-nohighlight widget-block"
27
27
  >
28
28
  <div
29
- class="perseus-widget-container widget-nohighlight widget-block"
29
+ class="graphie-container"
30
30
  >
31
31
  <div
32
- class="graphie-container"
32
+ class="graphie"
33
+ style="position: relative; width: 479.99999999999994px; height: 120.00000000000001px;"
33
34
  >
34
- <div
35
- class="graphie"
36
- style="position: relative; width: 479.99999999999994px; height: 120.00000000000001px;"
35
+ <svg
36
+ height="120.00000000000001"
37
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); z-index: 2;"
38
+ version="1.1"
39
+ width="479.99999999999994"
40
+ xmlns="http://www.w3.org/2000/svg"
37
41
  >
38
- <svg
39
- height="120.00000000000001"
40
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); z-index: 2;"
41
- version="1.1"
42
- width="479.99999999999994"
43
- xmlns="http://www.w3.org/2000/svg"
42
+ <desc
43
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
44
44
  >
45
- <desc
46
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
47
- >
48
- Created with Raphaël
49
- </desc>
50
- <defs
51
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
52
- />
53
- </svg>
54
- <svg
55
- height="120.00000000000001"
45
+ Created with Raphaël
46
+ </desc>
47
+ <defs
48
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
49
+ />
50
+ </svg>
51
+ <svg
52
+ height="120.00000000000001"
53
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
54
+ version="1.1"
55
+ width="479.99999999999994"
56
+ xmlns="http://www.w3.org/2000/svg"
57
+ >
58
+ <desc
56
59
  style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
57
- version="1.1"
58
- width="479.99999999999994"
59
- xmlns="http://www.w3.org/2000/svg"
60
60
  >
61
- <desc
62
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
63
- >
64
- Created with Raphaël
65
- </desc>
66
- <defs
67
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
68
- />
69
- <path
70
- d="M254.59459459459455,636.5217391304348L254.5785950953643,635.6596267341514L254.53065974038762,634.8009167016342L254.45097770861094,633.9489979690746L254.33986346861047,633.1072326705054L254.19775553752822,632.2789428689938L254.02521475044523,631.467397445977L253.82292204702173,630.6757992004796L253.5916757841394,629.9072722091297L253.33238858515142,629.1648494968558L253.04608373817518,628.4514610669225L252.73389115764147,627.7699223375465L252.39704292503845,627.1229230307273L252.0368684264488,626.513016557143L251.6547891060704,625.9426099390051L251.25231285642542,625.4139543106413L250.8310280673972,624.9291360342974L250.39259735758142,624.4900684662169L249.93875101268972,624.0984844055008L249.47128015690274,623.755929255539L248.99202968412115,623.4637549250093L248.5028909770123,623.2231144925131L248.0057944425869,623.0349576558989L247.5027018937646,622.9000269842405L246.99559880699437,622.8188549872548L246.48648648648643,622.7917620137299L245.9773741659785,622.8188549872548L245.4702710792083,622.9000269842405L244.96717853038598,623.0349576558989L244.47008199596056,623.2231144925131L243.9809432888517,623.4637549250093L243.50169281607012,623.755929255539L243.03422196028313,624.0984844055008L242.58037561539143,624.4900684662169L242.14194490557566,624.9291360342974L241.72066011654746,625.4139543106413L241.31818386690247,625.9426099390051L240.9361045465241,626.513016557143L240.57593004793443,627.1229230307273L240.23908181533136,627.7699223375465L239.92688923479767,628.4514610669225L239.64058438782146,629.1648494968558L239.38129718883349,629.9072722091297L239.15005092595115,630.6757992004796L238.94775822252765,631.467397445977L238.77521743544466,632.2789428689938L238.6331095043624,633.1072326705055L238.52199526436195,633.9489979690746L238.44231323258526,634.8009167016344L238.39437787760858,635.6596267341514L238.37837837837833,636.5217391304348L238.39437787760858,637.3838515267182L238.44231323258526,638.2425615592352L238.52199526436195,639.094480291795L238.6331095043624,639.9362455903641L238.77521743544466,640.7645353918757L238.94775822252765,641.5760808148926L239.15005092595115,642.3676790603901L239.3812971888335,643.1362060517399L239.64058438782146,643.8786287640137L239.9268892347977,644.592017193947L240.23908181533142,645.2735559233231L240.57593004793446,645.9205552301422L240.93610454652412,646.5304617037265L241.3181838669025,647.1008683218645L241.7206601165475,647.6295239502281L242.14194490557568,648.1143422265723L242.5803756153915,648.5534097946527L243.03422196028316,648.9449938553686L243.50169281607015,649.2875490053307L243.98094328885173,649.5797233358603L244.47008199596058,649.8203637683565L244.96717853038598,650.0085206049705L245.4702710792083,650.1434512766289L245.9773741659785,650.2246232736147L246.48648648648643,650.2517162471395L246.99559880699437,650.2246232736147L247.5027018937646,650.1434512766289L248.0057944425869,650.0085206049705L248.5028909770123,649.8203637683565L248.99202968412115,649.5797233358603L249.47128015690274,649.2875490053307L249.93875101268972,648.9449938553686L250.3925973575814,648.5534097946527L250.8310280673972,648.1143422265723L251.2523128564254,647.6295239502281L251.65478910607038,647.1008683218645L252.03686842644876,646.5304617037265L252.39704292503842,645.9205552301422L252.73389115764144,645.2735559233231L253.04608373817516,644.5920171939471L253.3323885851514,643.8786287640137L253.59167578413937,643.1362060517399L253.82292204702173,642.3676790603901L254.0252147504452,641.5760808148926L254.1977555375282,640.7645353918758L254.33986346861045,639.9362455903643L254.45097770861094,639.094480291795L254.53065974038762,638.2425615592355L254.5785950953643,637.3838515267184L254.59459459459455,636.5217391304349"
71
- fill="none"
72
- stroke="#6495ed"
73
- stroke-dasharray="0"
74
- stroke-width="4"
75
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 4;"
76
- />
77
- <path
78
- d="M19.459459459459445,62.60869565217392L19.459459459459445,114.78260869565217"
79
- fill="none"
80
- stroke="none"
81
- stroke-dasharray="4,3"
82
- stroke-width="1"
83
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 1;"
84
- />
85
- <path
86
- d="M84.3243243243243,62.60869565217392L84.3243243243243,114.78260869565217"
87
- fill="none"
88
- stroke="none"
89
- stroke-dasharray="4,3"
90
- stroke-width="1"
91
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 1;"
92
- />
93
- <path
94
- d="M149.18918918918916,62.60869565217392L149.18918918918916,114.78260869565217"
95
- fill="none"
96
- stroke="none"
97
- stroke-dasharray="4,3"
98
- stroke-width="1"
99
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 1;"
100
- />
101
- <path
102
- d="M214.054054054054,62.60869565217392L214.054054054054,114.78260869565217"
103
- fill="none"
104
- stroke="none"
105
- stroke-dasharray="4,3"
106
- stroke-width="1"
107
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 1;"
108
- />
109
- <path
110
- d="M278.91891891891885,62.60869565217392L278.91891891891885,114.78260869565217"
111
- fill="none"
112
- stroke="none"
113
- stroke-dasharray="4,3"
114
- stroke-width="1"
115
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 1;"
116
- />
117
- <path
118
- d="M343.78378378378375,62.60869565217392L343.78378378378375,114.78260869565217"
119
- fill="none"
120
- stroke="none"
121
- stroke-dasharray="4,3"
122
- stroke-width="1"
123
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 1;"
124
- />
125
- <path
126
- d="M408.6486486486486,62.60869565217392L408.6486486486486,114.78260869565217"
127
- fill="none"
128
- stroke="none"
129
- stroke-dasharray="4,3"
130
- stroke-width="1"
131
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 1;"
132
- />
133
- <path
134
- d="M473.51351351351343,62.60869565217392L473.51351351351343,114.78260869565217"
135
- fill="none"
136
- stroke="none"
137
- stroke-dasharray="4,3"
138
- stroke-width="1"
139
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 1;"
140
- />
141
- <path
142
- d="M19.459459459459445,10.434782608695661L149.18918918918916,10.434782608695661"
143
- fill="none"
144
- stroke="none"
145
- stroke-dasharray="0"
146
- stroke-width="2"
147
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 2;"
148
- />
149
- <ellipse
150
- cx="278.91891891891885"
151
- cy="104.34782608695652"
152
- fill="none"
153
- rx="4"
154
- ry="4"
155
- stroke="none"
156
- stroke-width="2"
157
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 2;"
158
- />
159
- </svg>
61
+ Created with Raphaël
62
+ </desc>
63
+ <defs
64
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
65
+ />
66
+ <path
67
+ d="M254.59459459459455,636.5217391304348L254.5785950953643,635.6596267341514L254.53065974038762,634.8009167016342L254.45097770861094,633.9489979690746L254.33986346861047,633.1072326705054L254.19775553752822,632.2789428689938L254.02521475044523,631.467397445977L253.82292204702173,630.6757992004796L253.5916757841394,629.9072722091297L253.33238858515142,629.1648494968558L253.04608373817518,628.4514610669225L252.73389115764147,627.7699223375465L252.39704292503845,627.1229230307273L252.0368684264488,626.513016557143L251.6547891060704,625.9426099390051L251.25231285642542,625.4139543106413L250.8310280673972,624.9291360342974L250.39259735758142,624.4900684662169L249.93875101268972,624.0984844055008L249.47128015690274,623.755929255539L248.99202968412115,623.4637549250093L248.5028909770123,623.2231144925131L248.0057944425869,623.0349576558989L247.5027018937646,622.9000269842405L246.99559880699437,622.8188549872548L246.48648648648643,622.7917620137299L245.9773741659785,622.8188549872548L245.4702710792083,622.9000269842405L244.96717853038598,623.0349576558989L244.47008199596056,623.2231144925131L243.9809432888517,623.4637549250093L243.50169281607012,623.755929255539L243.03422196028313,624.0984844055008L242.58037561539143,624.4900684662169L242.14194490557566,624.9291360342974L241.72066011654746,625.4139543106413L241.31818386690247,625.9426099390051L240.9361045465241,626.513016557143L240.57593004793443,627.1229230307273L240.23908181533136,627.7699223375465L239.92688923479767,628.4514610669225L239.64058438782146,629.1648494968558L239.38129718883349,629.9072722091297L239.15005092595115,630.6757992004796L238.94775822252765,631.467397445977L238.77521743544466,632.2789428689938L238.6331095043624,633.1072326705055L238.52199526436195,633.9489979690746L238.44231323258526,634.8009167016344L238.39437787760858,635.6596267341514L238.37837837837833,636.5217391304348L238.39437787760858,637.3838515267182L238.44231323258526,638.2425615592352L238.52199526436195,639.094480291795L238.6331095043624,639.9362455903641L238.77521743544466,640.7645353918757L238.94775822252765,641.5760808148926L239.15005092595115,642.3676790603901L239.3812971888335,643.1362060517399L239.64058438782146,643.8786287640137L239.9268892347977,644.592017193947L240.23908181533142,645.2735559233231L240.57593004793446,645.9205552301422L240.93610454652412,646.5304617037265L241.3181838669025,647.1008683218645L241.7206601165475,647.6295239502281L242.14194490557568,648.1143422265723L242.5803756153915,648.5534097946527L243.03422196028316,648.9449938553686L243.50169281607015,649.2875490053307L243.98094328885173,649.5797233358603L244.47008199596058,649.8203637683565L244.96717853038598,650.0085206049705L245.4702710792083,650.1434512766289L245.9773741659785,650.2246232736147L246.48648648648643,650.2517162471395L246.99559880699437,650.2246232736147L247.5027018937646,650.1434512766289L248.0057944425869,650.0085206049705L248.5028909770123,649.8203637683565L248.99202968412115,649.5797233358603L249.47128015690274,649.2875490053307L249.93875101268972,648.9449938553686L250.3925973575814,648.5534097946527L250.8310280673972,648.1143422265723L251.2523128564254,647.6295239502281L251.65478910607038,647.1008683218645L252.03686842644876,646.5304617037265L252.39704292503842,645.9205552301422L252.73389115764144,645.2735559233231L253.04608373817516,644.5920171939471L253.3323885851514,643.8786287640137L253.59167578413937,643.1362060517399L253.82292204702173,642.3676790603901L254.0252147504452,641.5760808148926L254.1977555375282,640.7645353918758L254.33986346861045,639.9362455903643L254.45097770861094,639.094480291795L254.53065974038762,638.2425615592355L254.5785950953643,637.3838515267184L254.59459459459455,636.5217391304349"
68
+ fill="none"
69
+ stroke="#6495ed"
70
+ stroke-dasharray="0"
71
+ stroke-width="4"
72
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 4;"
73
+ />
74
+ <path
75
+ d="M19.459459459459445,62.60869565217392L19.459459459459445,114.78260869565217"
76
+ fill="none"
77
+ stroke="none"
78
+ stroke-dasharray="4,3"
79
+ stroke-width="1"
80
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 1;"
81
+ />
82
+ <path
83
+ d="M84.3243243243243,62.60869565217392L84.3243243243243,114.78260869565217"
84
+ fill="none"
85
+ stroke="none"
86
+ stroke-dasharray="4,3"
87
+ stroke-width="1"
88
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 1;"
89
+ />
90
+ <path
91
+ d="M149.18918918918916,62.60869565217392L149.18918918918916,114.78260869565217"
92
+ fill="none"
93
+ stroke="none"
94
+ stroke-dasharray="4,3"
95
+ stroke-width="1"
96
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 1;"
97
+ />
98
+ <path
99
+ d="M214.054054054054,62.60869565217392L214.054054054054,114.78260869565217"
100
+ fill="none"
101
+ stroke="none"
102
+ stroke-dasharray="4,3"
103
+ stroke-width="1"
104
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 1;"
105
+ />
106
+ <path
107
+ d="M278.91891891891885,62.60869565217392L278.91891891891885,114.78260869565217"
108
+ fill="none"
109
+ stroke="none"
110
+ stroke-dasharray="4,3"
111
+ stroke-width="1"
112
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 1;"
113
+ />
114
+ <path
115
+ d="M343.78378378378375,62.60869565217392L343.78378378378375,114.78260869565217"
116
+ fill="none"
117
+ stroke="none"
118
+ stroke-dasharray="4,3"
119
+ stroke-width="1"
120
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 1;"
121
+ />
122
+ <path
123
+ d="M408.6486486486486,62.60869565217392L408.6486486486486,114.78260869565217"
124
+ fill="none"
125
+ stroke="none"
126
+ stroke-dasharray="4,3"
127
+ stroke-width="1"
128
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 1;"
129
+ />
130
+ <path
131
+ d="M473.51351351351343,62.60869565217392L473.51351351351343,114.78260869565217"
132
+ fill="none"
133
+ stroke="none"
134
+ stroke-dasharray="4,3"
135
+ stroke-width="1"
136
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 1;"
137
+ />
138
+ <path
139
+ d="M19.459459459459445,10.434782608695661L149.18918918918916,10.434782608695661"
140
+ fill="none"
141
+ stroke="none"
142
+ stroke-dasharray="0"
143
+ stroke-width="2"
144
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 2;"
145
+ />
146
+ <ellipse
147
+ cx="278.91891891891885"
148
+ cy="104.34782608695652"
149
+ fill="none"
150
+ rx="4"
151
+ ry="4"
152
+ stroke="none"
153
+ stroke-width="2"
154
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); stroke-width: 2;"
155
+ />
156
+ </svg>
157
+ <div
158
+ style="position: absolute; left: 0px; top: 0px;"
159
+ >
160
160
  <div
161
- style="position: absolute; left: 0px; top: 0px;"
161
+ style="position: absolute; width: 26px; height: 26px; left: 6.459459459459445px; top: -2.565217391304339px; transform: translateX(0px) translateY(0px) translateZ(0);"
162
162
  >
163
- <div
164
- style="position: absolute; width: 26px; height: 26px; left: 6.459459459459445px; top: -2.565217391304339px; transform: translateX(0px) translateY(0px) translateZ(0);"
163
+ <svg
164
+ height="26"
165
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
166
+ version="1.1"
167
+ width="26"
168
+ xmlns="http://www.w3.org/2000/svg"
165
169
  >
166
- <svg
167
- height="26"
170
+ <desc
168
171
  style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
169
- version="1.1"
170
- width="26"
171
- xmlns="http://www.w3.org/2000/svg"
172
172
  >
173
- <desc
174
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
175
- >
176
- Created with Raphaël
177
- </desc>
178
- <defs
179
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
180
- />
181
- <ellipse
182
- cx="NaN"
183
- cy="NaN"
184
- fill="#71b307"
185
- r="NaN"
186
- rx="4"
187
- ry="4"
188
- stroke="#71b307"
189
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
190
- transform=""
191
- />
192
- </svg>
193
- </div>
173
+ Created with Raphaël
174
+ </desc>
175
+ <defs
176
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
177
+ />
178
+ <ellipse
179
+ cx="NaN"
180
+ cy="NaN"
181
+ fill="#71b307"
182
+ r="NaN"
183
+ rx="4"
184
+ ry="4"
185
+ stroke="#71b307"
186
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
187
+ transform=""
188
+ />
189
+ </svg>
194
190
  </div>
191
+ </div>
192
+ <div
193
+ style="position: absolute; left: 0px; top: 0px; z-index: 2;"
194
+ >
195
195
  <div
196
- style="position: absolute; left: 0px; top: 0px; z-index: 2;"
196
+ data-interactive-kind-for-testing="movable-point"
197
+ style="position: absolute; width: 48px; height: 48px; left: -4.540540540540555px; top: -13.565217391304339px; transform: translateX(0px) translateY(0px) translateZ(0);"
197
198
  >
198
- <div
199
- data-interactive-kind-for-testing="movable-point"
200
- style="position: absolute; width: 48px; height: 48px; left: -4.540540540540555px; top: -13.565217391304339px; transform: translateX(0px) translateY(0px) translateZ(0);"
199
+ <svg
200
+ height="48"
201
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
202
+ version="1.1"
203
+ width="48"
204
+ xmlns="http://www.w3.org/2000/svg"
201
205
  >
202
- <svg
203
- height="48"
206
+ <desc
204
207
  style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
205
- version="1.1"
206
- width="48"
207
- xmlns="http://www.w3.org/2000/svg"
208
208
  >
209
- <desc
210
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
211
- >
212
- Created with Raphaël
213
- </desc>
214
- <defs
215
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
216
- />
217
- <ellipse
218
- cx="24"
219
- cy="24"
220
- fill="#000000"
221
- opacity="0"
222
- rx="24"
223
- ry="24"
224
- stroke="#000"
225
- style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); opacity: 0; cursor: move;"
226
- />
227
- </svg>
228
- </div>
209
+ Created with Raphaël
210
+ </desc>
211
+ <defs
212
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"
213
+ />
214
+ <ellipse
215
+ cx="24"
216
+ cy="24"
217
+ fill="#000000"
218
+ opacity="0"
219
+ rx="24"
220
+ ry="24"
221
+ stroke="#000"
222
+ style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0); opacity: 0; cursor: move;"
223
+ />
224
+ </svg>
229
225
  </div>
226
+ </div>
227
+ <span
228
+ class="graphie-label"
229
+ data-math-formula="\\Huge 2"
230
+ style="position: absolute; padding: 7px; color: rgb(100, 149, 237); left: 116.59637038983988px; top: 88.69565217391305px; fill: none;"
231
+ >
230
232
  <span
231
- class="graphie-label"
232
- data-math-formula="\\Huge 2"
233
- style="position: absolute; padding: 7px; color: rgb(100, 149, 237); left: 116.59637038983988px; top: 88.69565217391305px; fill: none;"
234
- >
235
- <span
236
- class="katex-holder"
237
- />
238
- <span
239
- class="mathjax-holder"
240
- />
241
- </span>
233
+ class="katex-holder"
234
+ />
242
235
  <span
243
- class="graphie-label"
244
- data-math-formula="\\Huge 5"
245
- style="position: absolute; padding: 7px; color: rgb(100, 149, 237); left: 181.46123525470475px; top: 88.69565217391305px; fill: none;"
246
- >
247
- <span
248
- class="katex-holder"
249
- />
250
- <span
251
- class="mathjax-holder"
252
- />
253
- </span>
236
+ class="mathjax-holder"
237
+ />
238
+ </span>
239
+ <span
240
+ class="graphie-label"
241
+ data-math-formula="\\Huge 5"
242
+ style="position: absolute; padding: 7px; color: rgb(100, 149, 237); left: 181.46123525470475px; top: 88.69565217391305px; fill: none;"
243
+ >
254
244
  <span
255
- class="graphie-label"
256
- data-math-formula="\\Huge 9"
257
- style="position: absolute; padding: 7px; color: rgb(100, 149, 237); left: 246.3261001195696px; top: 88.69565217391305px; fill: none;"
258
- >
259
- <span
260
- class="katex-holder"
261
- />
262
- <span
263
- class="mathjax-holder"
264
- />
265
- </span>
245
+ class="katex-holder"
246
+ />
266
247
  <span
267
- class="graphie-label"
268
- data-math-formula="\\small 259"
269
- style="position: absolute; padding: 7px; color: gray; left: 19.459459459459445px; top: 26.08695652173914px; fill: none;"
270
- >
271
- <span
272
- class="katex-holder"
273
- />
274
- <span
275
- class="mathjax-holder"
276
- />
277
- </span>
248
+ class="mathjax-holder"
249
+ />
250
+ </span>
251
+ <span
252
+ class="graphie-label"
253
+ data-math-formula="\\Huge 9"
254
+ style="position: absolute; padding: 7px; color: rgb(100, 149, 237); left: 246.3261001195696px; top: 88.69565217391305px; fill: none;"
255
+ >
278
256
  <span
279
- class="graphie-label"
280
- data-math-formula="\\small 259 \\times 10"
281
- style="position: absolute; padding: 7px; color: gray; left: 149.18918918918916px; top: 26.08695652173914px; fill: none;"
282
- >
283
- <span
284
- class="katex-holder"
285
- />
286
- <span
287
- class="mathjax-holder"
288
- />
289
- </span>
290
- </div>
257
+ class="katex-holder"
258
+ />
259
+ <span
260
+ class="mathjax-holder"
261
+ />
262
+ </span>
263
+ <span
264
+ class="graphie-label"
265
+ data-math-formula="\\small 259"
266
+ style="position: absolute; padding: 7px; color: gray; left: 19.459459459459445px; top: 26.08695652173914px; fill: none;"
267
+ >
268
+ <span
269
+ class="katex-holder"
270
+ />
271
+ <span
272
+ class="mathjax-holder"
273
+ />
274
+ </span>
275
+ <span
276
+ class="graphie-label"
277
+ data-math-formula="\\small 259 \\times 10"
278
+ style="position: absolute; padding: 7px; color: gray; left: 149.18918918918916px; top: 26.08695652173914px; fill: none;"
279
+ >
280
+ <span
281
+ class="katex-holder"
282
+ />
283
+ <span
284
+ class="mathjax-holder"
285
+ />
286
+ </span>
291
287
  </div>
292
288
  </div>
293
289
  </div>
294
290
  </div>
291
+ </div>
292
+ <div
293
+ class="paragraph"
294
+ data-perseus-paragraph-index="2"
295
+ >
295
296
  <div
296
297
  class="paragraph"
297
- data-perseus-paragraph-index="2"
298
298
  >
299
- <div
300
- class="paragraph"
301
- >
302
- <em>
303
- Notice that we add a zero to the empty place value.
304
- </em>
305
-
306
- </div>
299
+ <em>
300
+ Notice that we add a zero to the empty place value.
301
+ </em>
302
+
307
303
  </div>
308
304
  </div>
309
- </span>
305
+ </div>
310
306
  </div>
311
307
  `;