@pie-lib/graphing 4.1.0-beta.7 → 5.0.0-next.36

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 (505) hide show
  1. package/dist/_virtual/_rolldown/runtime.js +20 -0
  2. package/dist/autosize-input.d.ts +10 -0
  3. package/dist/autosize-input.js +66 -0
  4. package/dist/axis/arrow.d.ts +13 -0
  5. package/dist/axis/arrow.js +34 -0
  6. package/dist/axis/axes.d.ts +132 -0
  7. package/dist/axis/axes.js +214 -0
  8. package/dist/axis/index.d.ts +10 -0
  9. package/dist/bg.d.ts +51 -0
  10. package/dist/bg.js +44 -0
  11. package/dist/container/actions.d.ts +15 -0
  12. package/dist/container/actions.js +7 -0
  13. package/dist/container/index.d.ts +58 -0
  14. package/dist/container/index.js +48 -0
  15. package/dist/container/marks.d.ts +10 -0
  16. package/dist/container/marks.js +11 -0
  17. package/dist/container/middleware.d.ts +10 -0
  18. package/dist/container/middleware.js +4 -0
  19. package/dist/container/reducer.d.ts +14 -0
  20. package/dist/container/reducer.js +7 -0
  21. package/dist/coordinates-label.d.ts +50 -0
  22. package/dist/coordinates-label.js +46 -0
  23. package/dist/graph-with-controls.d.ts +88 -0
  24. package/dist/graph-with-controls.js +156 -0
  25. package/dist/graph.d.ts +126 -0
  26. package/dist/graph.js +209 -0
  27. package/dist/grid-setup.d.ts +27 -0
  28. package/dist/grid-setup.js +307 -0
  29. package/dist/grid.d.ts +43 -0
  30. package/dist/grid.js +59 -0
  31. package/dist/index.d.ts +15 -0
  32. package/dist/index.js +7 -0
  33. package/dist/key-legend.d.ts +21 -0
  34. package/dist/key-legend.js +231 -0
  35. package/dist/label-svg-icon.d.ts +18 -0
  36. package/dist/label-svg-icon.js +42 -0
  37. package/dist/labels.d.ts +37 -0
  38. package/dist/labels.js +152 -0
  39. package/dist/mark-label.d.ts +60 -0
  40. package/dist/mark-label.js +222 -0
  41. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/axis/Axis.js +67 -0
  42. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/axis/AxisRenderer.js +66 -0
  43. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/axis/Ticks.js +39 -0
  44. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/constants/orientation.js +9 -0
  45. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/utils/createPoint.js +14 -0
  46. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/utils/getAxisRangePaddingConfig.js +13 -0
  47. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/utils/getLabelTransform.js +16 -0
  48. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/utils/getTickFormatter.js +8 -0
  49. package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/utils/getTickPosition.js +14 -0
  50. package/dist/node_modules/.bun/@visx_grid@4.0.0_d84c32d47042070f/node_modules/@visx/grid/esm/grids/Grid.js +43 -0
  51. package/dist/node_modules/.bun/@visx_grid@4.0.0_d84c32d47042070f/node_modules/@visx/grid/esm/grids/GridColumns.js +46 -0
  52. package/dist/node_modules/.bun/@visx_grid@4.0.0_d84c32d47042070f/node_modules/@visx/grid/esm/grids/GridRows.js +46 -0
  53. package/dist/node_modules/.bun/@visx_grid@4.0.0_d84c32d47042070f/node_modules/@visx/grid/esm/utils/getScaleBandwidth.js +6 -0
  54. package/dist/node_modules/.bun/@visx_group@4.0.0_d84c32d47042070f/node_modules/@visx/group/esm/Group.js +17 -0
  55. package/dist/node_modules/.bun/@visx_point@4.0.0/node_modules/@visx/point/esm/Point.js +20 -0
  56. package/dist/node_modules/.bun/@visx_scale@4.0.0/node_modules/@visx/scale/esm/utils/coerceNumber.js +10 -0
  57. package/dist/node_modules/.bun/@visx_scale@4.0.0/node_modules/@visx/scale/esm/utils/getTicks.js +7 -0
  58. package/dist/node_modules/.bun/@visx_scale@4.0.0/node_modules/@visx/scale/esm/utils/toString.js +6 -0
  59. package/dist/node_modules/.bun/@visx_shape@4.0.0_d84c32d47042070f/node_modules/@visx/shape/esm/shapes/Line.js +27 -0
  60. package/dist/node_modules/.bun/@visx_shape@4.0.0_d84c32d47042070f/node_modules/@visx/shape/esm/shapes/LinePath.js +24 -0
  61. package/dist/node_modules/.bun/@visx_shape@4.0.0_d84c32d47042070f/node_modules/@visx/shape/esm/util/D3ShapeFactories.js +9 -0
  62. package/dist/node_modules/.bun/@visx_shape@4.0.0_d84c32d47042070f/node_modules/@visx/shape/esm/util/setNumberOrNumberAccessor.js +6 -0
  63. package/dist/node_modules/.bun/@visx_text@4.0.0_d84c32d47042070f/node_modules/@visx/text/esm/Text.js +27 -0
  64. package/dist/node_modules/.bun/@visx_text@4.0.0_d84c32d47042070f/node_modules/@visx/text/esm/hooks/useText.js +68 -0
  65. package/dist/node_modules/.bun/@visx_text@4.0.0_d84c32d47042070f/node_modules/@visx/text/esm/util/getStringWidth.js +19 -0
  66. package/dist/node_modules/.bun/@visx_text@4.0.0_d84c32d47042070f/node_modules/@visx/text/esm/util/memoize.js +13 -0
  67. package/dist/node_modules/.bun/@visx_vendor@4.0.0/node_modules/@visx/vendor/esm/d3-shape.js +8 -0
  68. package/dist/node_modules/.bun/balanced-match@0.4.2/node_modules/balanced-match/index.js +32 -0
  69. package/dist/node_modules/.bun/balanced-match@1.0.2/node_modules/balanced-match/index.js +33 -0
  70. package/dist/node_modules/.bun/classnames@2.5.1/node_modules/classnames/index.js +32 -0
  71. package/dist/node_modules/.bun/clsx@2.1.1/node_modules/clsx/dist/clsx.js +16 -0
  72. package/dist/node_modules/.bun/invariant@2.2.4/node_modules/invariant/browser.js +28 -0
  73. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/formula_evaluator.js +37 -0
  74. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/lexer.js +509 -0
  75. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/math_function.js +108 -0
  76. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/postfix.js +31 -0
  77. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/postfix_evaluator.js +45 -0
  78. package/dist/node_modules/.bun/reduce-css-calc@1.3.0/node_modules/reduce-css-calc/index.js +49 -0
  79. package/dist/node_modules/.bun/reduce-function-call@1.0.3/node_modules/reduce-function-call/index.js +34 -0
  80. package/dist/node_modules/.bun/redux-undo@1.1.0/node_modules/redux-undo/dist/redux-undo.js +185 -0
  81. package/dist/node_modules/.bun/redux@5.0.1/node_modules/redux/dist/redux.js +198 -0
  82. package/dist/toggle-bar.d.ts +40 -0
  83. package/dist/toggle-bar.js +155 -0
  84. package/dist/tool-menu.d.ts +29 -0
  85. package/dist/tool-menu.js +41 -0
  86. package/dist/tools/absolute/component.d.ts +16 -0
  87. package/dist/tools/absolute/component.js +15 -0
  88. package/dist/tools/absolute/index.d.ts +20 -0
  89. package/dist/tools/absolute/index.js +32 -0
  90. package/dist/tools/circle/bg-circle.d.ts +116 -0
  91. package/dist/tools/circle/bg-circle.js +72 -0
  92. package/dist/tools/circle/component.d.ts +88 -0
  93. package/dist/tools/circle/component.js +208 -0
  94. package/dist/tools/circle/index.d.ts +20 -0
  95. package/dist/tools/circle/index.js +22 -0
  96. package/dist/tools/exponential/component.d.ts +16 -0
  97. package/dist/tools/exponential/component.js +14 -0
  98. package/dist/tools/exponential/index.d.ts +20 -0
  99. package/dist/tools/exponential/index.js +32 -0
  100. package/dist/tools/index.d.ts +27 -0
  101. package/dist/tools/index.js +55 -0
  102. package/dist/tools/line/component.d.ts +124 -0
  103. package/dist/tools/line/component.js +72 -0
  104. package/dist/tools/line/index.d.ts +13 -0
  105. package/dist/tools/line/index.js +6 -0
  106. package/dist/tools/parabola/component.d.ts +16 -0
  107. package/dist/tools/parabola/component.js +14 -0
  108. package/dist/tools/parabola/index.d.ts +20 -0
  109. package/dist/tools/parabola/index.js +32 -0
  110. package/dist/tools/point/component.d.ts +52 -0
  111. package/dist/tools/point/component.js +91 -0
  112. package/dist/tools/point/index.d.ts +15 -0
  113. package/dist/tools/point/index.js +13 -0
  114. package/dist/tools/polygon/component.d.ts +125 -0
  115. package/dist/tools/polygon/component.js +271 -0
  116. package/dist/tools/polygon/index.d.ts +19 -0
  117. package/dist/tools/polygon/index.js +55 -0
  118. package/dist/tools/polygon/line.d.ts +125 -0
  119. package/dist/tools/polygon/line.js +63 -0
  120. package/dist/tools/polygon/polygon.d.ts +122 -0
  121. package/dist/tools/polygon/polygon.js +74 -0
  122. package/dist/tools/ray/component.d.ts +101 -0
  123. package/dist/tools/ray/component.js +71 -0
  124. package/dist/tools/ray/index.d.ts +13 -0
  125. package/dist/tools/ray/index.js +6 -0
  126. package/dist/tools/segment/component.d.ts +100 -0
  127. package/dist/tools/segment/component.js +52 -0
  128. package/dist/tools/segment/index.d.ts +13 -0
  129. package/dist/tools/segment/index.js +6 -0
  130. package/dist/tools/shared/arrow-head.d.ts +51 -0
  131. package/dist/tools/shared/arrow-head.js +63 -0
  132. package/dist/tools/shared/icons/CorrectSVG.d.ts +26 -0
  133. package/dist/tools/shared/icons/CorrectSVG.js +29 -0
  134. package/dist/tools/shared/icons/IncorrectSVG.d.ts +26 -0
  135. package/dist/tools/shared/icons/IncorrectSVG.js +27 -0
  136. package/dist/tools/shared/icons/MissingSVG.d.ts +26 -0
  137. package/dist/tools/shared/icons/MissingSVG.js +28 -0
  138. package/dist/tools/shared/line/index.d.ts +251 -0
  139. package/dist/tools/shared/line/index.js +332 -0
  140. package/dist/tools/shared/line/line-path.d.ts +57 -0
  141. package/dist/tools/shared/line/line-path.js +71 -0
  142. package/dist/tools/shared/line/with-root-edge.d.ts +148 -0
  143. package/dist/tools/shared/line/with-root-edge.js +73 -0
  144. package/dist/tools/shared/point/arrow-point.d.ts +56 -0
  145. package/dist/tools/shared/point/arrow-point.js +41 -0
  146. package/dist/tools/shared/point/arrow.d.ts +45 -0
  147. package/dist/tools/shared/point/arrow.js +35 -0
  148. package/dist/tools/shared/point/base-point.d.ts +52 -0
  149. package/dist/tools/shared/point/base-point.js +103 -0
  150. package/dist/tools/shared/point/index.d.ts +216 -0
  151. package/dist/tools/shared/point/index.js +45 -0
  152. package/dist/tools/shared/styles.d.ts +29 -0
  153. package/dist/tools/shared/styles.js +20 -0
  154. package/dist/tools/shared/types.d.ts +21 -0
  155. package/dist/tools/shared/types.js +11 -0
  156. package/dist/tools/sine/component.d.ts +16 -0
  157. package/dist/tools/sine/component.js +22 -0
  158. package/dist/tools/sine/index.d.ts +20 -0
  159. package/dist/tools/sine/index.js +32 -0
  160. package/dist/tools/vector/component.d.ts +100 -0
  161. package/dist/tools/vector/component.js +44 -0
  162. package/dist/tools/vector/index.d.ts +13 -0
  163. package/dist/tools/vector/index.js +6 -0
  164. package/dist/undo-redo.d.ts +22 -0
  165. package/dist/undo-redo.js +47 -0
  166. package/dist/use-debounce.d.ts +9 -0
  167. package/dist/use-debounce.js +13 -0
  168. package/dist/utils.d.ts +61 -0
  169. package/dist/utils.js +75 -0
  170. package/package.json +51 -41
  171. package/CHANGELOG.json +0 -1
  172. package/CHANGELOG.md +0 -1469
  173. package/lib/__tests__/bg.test.js +0 -282
  174. package/lib/__tests__/bg.test.js.map +0 -1
  175. package/lib/__tests__/coordinates-label.test.js +0 -276
  176. package/lib/__tests__/coordinates-label.test.js.map +0 -1
  177. package/lib/__tests__/graph-with-controls.test.js +0 -275
  178. package/lib/__tests__/graph-with-controls.test.js.map +0 -1
  179. package/lib/__tests__/graph.test.js +0 -927
  180. package/lib/__tests__/graph.test.js.map +0 -1
  181. package/lib/__tests__/grid-setup.test.js +0 -729
  182. package/lib/__tests__/grid-setup.test.js.map +0 -1
  183. package/lib/__tests__/grid.test.js +0 -29
  184. package/lib/__tests__/grid.test.js.map +0 -1
  185. package/lib/__tests__/key-legend.test.js +0 -321
  186. package/lib/__tests__/key-legend.test.js.map +0 -1
  187. package/lib/__tests__/label-svg-icon.test.js +0 -373
  188. package/lib/__tests__/label-svg-icon.test.js.map +0 -1
  189. package/lib/__tests__/labels.test.js +0 -61
  190. package/lib/__tests__/labels.test.js.map +0 -1
  191. package/lib/__tests__/mark-label.test.js +0 -133
  192. package/lib/__tests__/mark-label.test.js.map +0 -1
  193. package/lib/__tests__/toggle-bar.test.js +0 -197
  194. package/lib/__tests__/toggle-bar.test.js.map +0 -1
  195. package/lib/__tests__/tool-menu.test.js +0 -151
  196. package/lib/__tests__/tool-menu.test.js.map +0 -1
  197. package/lib/__tests__/undo-redo.test.js +0 -31
  198. package/lib/__tests__/undo-redo.test.js.map +0 -1
  199. package/lib/__tests__/use-debounce.test.js +0 -24
  200. package/lib/__tests__/use-debounce.test.js.map +0 -1
  201. package/lib/__tests__/utils.js +0 -70
  202. package/lib/__tests__/utils.js.map +0 -1
  203. package/lib/__tests__/utils.test.js +0 -123
  204. package/lib/__tests__/utils.test.js.map +0 -1
  205. package/lib/axis/__tests__/arrow.test.js +0 -60
  206. package/lib/axis/__tests__/arrow.test.js.map +0 -1
  207. package/lib/axis/__tests__/axes.test.js +0 -195
  208. package/lib/axis/__tests__/axes.test.js.map +0 -1
  209. package/lib/axis/arrow.js +0 -79
  210. package/lib/axis/arrow.js.map +0 -1
  211. package/lib/axis/axes.js +0 -329
  212. package/lib/axis/axes.js.map +0 -1
  213. package/lib/axis/index.js +0 -21
  214. package/lib/axis/index.js.map +0 -1
  215. package/lib/bg.js +0 -114
  216. package/lib/bg.js.map +0 -1
  217. package/lib/container/__tests__/actions.test.js +0 -108
  218. package/lib/container/__tests__/actions.test.js.map +0 -1
  219. package/lib/container/__tests__/index.test.js +0 -503
  220. package/lib/container/__tests__/index.test.js.map +0 -1
  221. package/lib/container/__tests__/marks.test.js +0 -259
  222. package/lib/container/__tests__/marks.test.js.map +0 -1
  223. package/lib/container/__tests__/middleware.test.js +0 -244
  224. package/lib/container/__tests__/middleware.test.js.map +0 -1
  225. package/lib/container/__tests__/reducer.test.js +0 -450
  226. package/lib/container/__tests__/reducer.test.js.map +0 -1
  227. package/lib/container/actions.js +0 -18
  228. package/lib/container/actions.js.map +0 -1
  229. package/lib/container/index.js +0 -127
  230. package/lib/container/index.js.map +0 -1
  231. package/lib/container/marks.js +0 -22
  232. package/lib/container/marks.js.map +0 -1
  233. package/lib/container/middleware.js +0 -19
  234. package/lib/container/middleware.js.map +0 -1
  235. package/lib/container/reducer.js +0 -18
  236. package/lib/container/reducer.js.map +0 -1
  237. package/lib/coordinates-label.js +0 -79
  238. package/lib/coordinates-label.js.map +0 -1
  239. package/lib/graph-with-controls.js +0 -294
  240. package/lib/graph-with-controls.js.map +0 -1
  241. package/lib/graph.js +0 -327
  242. package/lib/graph.js.map +0 -1
  243. package/lib/grid-setup.js +0 -414
  244. package/lib/grid-setup.js.map +0 -1
  245. package/lib/grid.js +0 -131
  246. package/lib/grid.js.map +0 -1
  247. package/lib/index.js +0 -47
  248. package/lib/index.js.map +0 -1
  249. package/lib/key-legend.js +0 -201
  250. package/lib/key-legend.js.map +0 -1
  251. package/lib/label-svg-icon.js +0 -50
  252. package/lib/label-svg-icon.js.map +0 -1
  253. package/lib/labels.js +0 -243
  254. package/lib/labels.js.map +0 -1
  255. package/lib/mark-label.js +0 -285
  256. package/lib/mark-label.js.map +0 -1
  257. package/lib/toggle-bar.js +0 -252
  258. package/lib/toggle-bar.js.map +0 -1
  259. package/lib/tool-menu.js +0 -78
  260. package/lib/tool-menu.js.map +0 -1
  261. package/lib/tools/absolute/__tests__/component.test.js +0 -65
  262. package/lib/tools/absolute/__tests__/component.test.js.map +0 -1
  263. package/lib/tools/absolute/component.js +0 -29
  264. package/lib/tools/absolute/component.js.map +0 -1
  265. package/lib/tools/absolute/index.js +0 -50
  266. package/lib/tools/absolute/index.js.map +0 -1
  267. package/lib/tools/circle/__tests__/bg-circle.test.js +0 -33
  268. package/lib/tools/circle/__tests__/bg-circle.test.js.map +0 -1
  269. package/lib/tools/circle/__tests__/component.test.js +0 -615
  270. package/lib/tools/circle/__tests__/component.test.js.map +0 -1
  271. package/lib/tools/circle/__tests__/index.test.js +0 -576
  272. package/lib/tools/circle/__tests__/index.test.js.map +0 -1
  273. package/lib/tools/circle/bg-circle.js +0 -123
  274. package/lib/tools/circle/bg-circle.js.map +0 -1
  275. package/lib/tools/circle/component.js +0 -321
  276. package/lib/tools/circle/component.js.map +0 -1
  277. package/lib/tools/circle/index.js +0 -41
  278. package/lib/tools/circle/index.js.map +0 -1
  279. package/lib/tools/exponential/__tests__/component.test.js +0 -64
  280. package/lib/tools/exponential/__tests__/component.test.js.map +0 -1
  281. package/lib/tools/exponential/__tests__/index.test.js +0 -828
  282. package/lib/tools/exponential/__tests__/index.test.js.map +0 -1
  283. package/lib/tools/exponential/component.js +0 -28
  284. package/lib/tools/exponential/component.js.map +0 -1
  285. package/lib/tools/exponential/index.js +0 -56
  286. package/lib/tools/exponential/index.js.map +0 -1
  287. package/lib/tools/index.js +0 -86
  288. package/lib/tools/index.js.map +0 -1
  289. package/lib/tools/line/__tests__/component.test.js +0 -45
  290. package/lib/tools/line/__tests__/component.test.js.map +0 -1
  291. package/lib/tools/line/component.js +0 -97
  292. package/lib/tools/line/component.js.map +0 -1
  293. package/lib/tools/line/index.js +0 -11
  294. package/lib/tools/line/index.js.map +0 -1
  295. package/lib/tools/parabola/__tests__/component.test.js +0 -64
  296. package/lib/tools/parabola/__tests__/component.test.js.map +0 -1
  297. package/lib/tools/parabola/__tests__/index.test.js +0 -564
  298. package/lib/tools/parabola/__tests__/index.test.js.map +0 -1
  299. package/lib/tools/parabola/component.js +0 -28
  300. package/lib/tools/parabola/component.js.map +0 -1
  301. package/lib/tools/parabola/index.js +0 -50
  302. package/lib/tools/parabola/index.js.map +0 -1
  303. package/lib/tools/point/__tests__/component.test.js +0 -434
  304. package/lib/tools/point/__tests__/component.test.js.map +0 -1
  305. package/lib/tools/point/__tests__/index.test.js +0 -262
  306. package/lib/tools/point/__tests__/index.test.js.map +0 -1
  307. package/lib/tools/point/component.js +0 -148
  308. package/lib/tools/point/component.js.map +0 -1
  309. package/lib/tools/point/index.js +0 -24
  310. package/lib/tools/point/index.js.map +0 -1
  311. package/lib/tools/polygon/__tests__/component.test.js +0 -485
  312. package/lib/tools/polygon/__tests__/component.test.js.map +0 -1
  313. package/lib/tools/polygon/__tests__/index.test.js +0 -303
  314. package/lib/tools/polygon/__tests__/index.test.js.map +0 -1
  315. package/lib/tools/polygon/__tests__/line.test.js +0 -50
  316. package/lib/tools/polygon/__tests__/line.test.js.map +0 -1
  317. package/lib/tools/polygon/__tests__/polygon.test.js +0 -85
  318. package/lib/tools/polygon/__tests__/polygon.test.js.map +0 -1
  319. package/lib/tools/polygon/component.js +0 -437
  320. package/lib/tools/polygon/component.js.map +0 -1
  321. package/lib/tools/polygon/index.js +0 -89
  322. package/lib/tools/polygon/index.js.map +0 -1
  323. package/lib/tools/polygon/line.js +0 -112
  324. package/lib/tools/polygon/line.js.map +0 -1
  325. package/lib/tools/polygon/polygon.js +0 -130
  326. package/lib/tools/polygon/polygon.js.map +0 -1
  327. package/lib/tools/ray/__tests__/component.test.js +0 -35
  328. package/lib/tools/ray/__tests__/component.test.js.map +0 -1
  329. package/lib/tools/ray/component.js +0 -95
  330. package/lib/tools/ray/component.js.map +0 -1
  331. package/lib/tools/ray/index.js +0 -11
  332. package/lib/tools/ray/index.js.map +0 -1
  333. package/lib/tools/segment/__tests__/component.test.js +0 -35
  334. package/lib/tools/segment/__tests__/component.test.js.map +0 -1
  335. package/lib/tools/segment/component.js +0 -71
  336. package/lib/tools/segment/component.js.map +0 -1
  337. package/lib/tools/segment/index.js +0 -11
  338. package/lib/tools/segment/index.js.map +0 -1
  339. package/lib/tools/shared/__tests__/arrow-head.test.js +0 -45
  340. package/lib/tools/shared/__tests__/arrow-head.test.js.map +0 -1
  341. package/lib/tools/shared/arrow-head.js +0 -111
  342. package/lib/tools/shared/arrow-head.js.map +0 -1
  343. package/lib/tools/shared/icons/CorrectSVG.js +0 -40
  344. package/lib/tools/shared/icons/CorrectSVG.js.map +0 -1
  345. package/lib/tools/shared/icons/IncorrectSVG.js +0 -40
  346. package/lib/tools/shared/icons/IncorrectSVG.js.map +0 -1
  347. package/lib/tools/shared/icons/MissingSVG.js +0 -39
  348. package/lib/tools/shared/icons/MissingSVG.js.map +0 -1
  349. package/lib/tools/shared/line/__tests__/index.test.js +0 -124
  350. package/lib/tools/shared/line/__tests__/index.test.js.map +0 -1
  351. package/lib/tools/shared/line/__tests__/line-path.test.js +0 -62
  352. package/lib/tools/shared/line/__tests__/line-path.test.js.map +0 -1
  353. package/lib/tools/shared/line/__tests__/with-root-edge.test.js +0 -90
  354. package/lib/tools/shared/line/__tests__/with-root-edge.test.js.map +0 -1
  355. package/lib/tools/shared/line/index.js +0 -550
  356. package/lib/tools/shared/line/index.js.map +0 -1
  357. package/lib/tools/shared/line/line-path.js +0 -118
  358. package/lib/tools/shared/line/line-path.js.map +0 -1
  359. package/lib/tools/shared/line/with-root-edge.js +0 -121
  360. package/lib/tools/shared/line/with-root-edge.js.map +0 -1
  361. package/lib/tools/shared/point/__tests__/arrow-point.test.js +0 -127
  362. package/lib/tools/shared/point/__tests__/arrow-point.test.js.map +0 -1
  363. package/lib/tools/shared/point/__tests__/base-point.test.js +0 -122
  364. package/lib/tools/shared/point/__tests__/base-point.test.js.map +0 -1
  365. package/lib/tools/shared/point/arrow-point.js +0 -72
  366. package/lib/tools/shared/point/arrow-point.js.map +0 -1
  367. package/lib/tools/shared/point/arrow.js +0 -67
  368. package/lib/tools/shared/point/arrow.js.map +0 -1
  369. package/lib/tools/shared/point/base-point.js +0 -157
  370. package/lib/tools/shared/point/base-point.js.map +0 -1
  371. package/lib/tools/shared/point/index.js +0 -68
  372. package/lib/tools/shared/point/index.js.map +0 -1
  373. package/lib/tools/shared/styles.js +0 -33
  374. package/lib/tools/shared/styles.js.map +0 -1
  375. package/lib/tools/shared/types.js +0 -16
  376. package/lib/tools/shared/types.js.map +0 -1
  377. package/lib/tools/sine/__tests__/component.test.js +0 -72
  378. package/lib/tools/sine/__tests__/component.test.js.map +0 -1
  379. package/lib/tools/sine/component.js +0 -40
  380. package/lib/tools/sine/component.js.map +0 -1
  381. package/lib/tools/sine/index.js +0 -50
  382. package/lib/tools/sine/index.js.map +0 -1
  383. package/lib/tools/vector/__tests__/component.test.js +0 -32
  384. package/lib/tools/vector/__tests__/component.test.js.map +0 -1
  385. package/lib/tools/vector/component.js +0 -68
  386. package/lib/tools/vector/component.js.map +0 -1
  387. package/lib/tools/vector/index.js +0 -11
  388. package/lib/tools/vector/index.js.map +0 -1
  389. package/lib/undo-redo.js +0 -86
  390. package/lib/undo-redo.js.map +0 -1
  391. package/lib/use-debounce.js +0 -25
  392. package/lib/use-debounce.js.map +0 -1
  393. package/lib/utils.js +0 -229
  394. package/lib/utils.js.map +0 -1
  395. package/src/__tests__/bg.test.jsx +0 -250
  396. package/src/__tests__/coordinates-label.test.jsx +0 -243
  397. package/src/__tests__/graph-with-controls.test.jsx +0 -198
  398. package/src/__tests__/graph.test.jsx +0 -721
  399. package/src/__tests__/grid-setup.test.jsx +0 -645
  400. package/src/__tests__/grid.test.jsx +0 -22
  401. package/src/__tests__/key-legend.test.jsx +0 -260
  402. package/src/__tests__/label-svg-icon.test.jsx +0 -278
  403. package/src/__tests__/labels.test.jsx +0 -55
  404. package/src/__tests__/mark-label.test.jsx +0 -63
  405. package/src/__tests__/toggle-bar.test.jsx +0 -146
  406. package/src/__tests__/tool-menu.test.jsx +0 -115
  407. package/src/__tests__/undo-redo.test.jsx +0 -24
  408. package/src/__tests__/use-debounce.test.js +0 -21
  409. package/src/__tests__/utils.js +0 -41
  410. package/src/__tests__/utils.test.js +0 -105
  411. package/src/axis/__tests__/arrow.test.jsx +0 -38
  412. package/src/axis/__tests__/axes.test.jsx +0 -216
  413. package/src/axis/arrow.jsx +0 -57
  414. package/src/axis/axes.jsx +0 -285
  415. package/src/axis/index.js +0 -3
  416. package/src/bg.jsx +0 -96
  417. package/src/container/__tests__/actions.test.js +0 -105
  418. package/src/container/__tests__/index.test.jsx +0 -319
  419. package/src/container/__tests__/marks.test.js +0 -172
  420. package/src/container/__tests__/middleware.test.js +0 -235
  421. package/src/container/__tests__/reducer.test.js +0 -324
  422. package/src/container/actions.js +0 -8
  423. package/src/container/index.jsx +0 -91
  424. package/src/container/marks.js +0 -14
  425. package/src/container/middleware.js +0 -7
  426. package/src/container/reducer.js +0 -5
  427. package/src/coordinates-label.jsx +0 -63
  428. package/src/graph-with-controls.jsx +0 -239
  429. package/src/graph.jsx +0 -303
  430. package/src/grid-setup.jsx +0 -432
  431. package/src/grid.jsx +0 -133
  432. package/src/index.js +0 -7
  433. package/src/key-legend.jsx +0 -142
  434. package/src/label-svg-icon.jsx +0 -39
  435. package/src/labels.jsx +0 -207
  436. package/src/mark-label.jsx +0 -244
  437. package/src/toggle-bar.jsx +0 -224
  438. package/src/tool-menu.jsx +0 -49
  439. package/src/tools/absolute/__tests__/component.test.jsx +0 -53
  440. package/src/tools/absolute/component.jsx +0 -23
  441. package/src/tools/absolute/index.js +0 -31
  442. package/src/tools/circle/__tests__/bg-circle.test.jsx +0 -26
  443. package/src/tools/circle/__tests__/component.test.jsx +0 -494
  444. package/src/tools/circle/__tests__/index.test.js +0 -480
  445. package/src/tools/circle/bg-circle.jsx +0 -81
  446. package/src/tools/circle/component.jsx +0 -264
  447. package/src/tools/circle/index.js +0 -25
  448. package/src/tools/exponential/__tests__/component.test.jsx +0 -53
  449. package/src/tools/exponential/__tests__/index.test.js +0 -729
  450. package/src/tools/exponential/component.jsx +0 -23
  451. package/src/tools/exponential/index.js +0 -39
  452. package/src/tools/index.js +0 -48
  453. package/src/tools/line/__tests__/component.test.jsx +0 -37
  454. package/src/tools/line/component.jsx +0 -93
  455. package/src/tools/line/index.js +0 -4
  456. package/src/tools/parabola/__tests__/component.test.jsx +0 -48
  457. package/src/tools/parabola/__tests__/index.test.js +0 -470
  458. package/src/tools/parabola/component.jsx +0 -23
  459. package/src/tools/parabola/index.js +0 -31
  460. package/src/tools/point/__tests__/component.test.jsx +0 -349
  461. package/src/tools/point/__tests__/index.test.js +0 -241
  462. package/src/tools/point/component.jsx +0 -126
  463. package/src/tools/point/index.js +0 -11
  464. package/src/tools/polygon/__tests__/component.test.jsx +0 -471
  465. package/src/tools/polygon/__tests__/index.test.js +0 -294
  466. package/src/tools/polygon/__tests__/line.test.jsx +0 -35
  467. package/src/tools/polygon/__tests__/polygon.test.jsx +0 -61
  468. package/src/tools/polygon/component.jsx +0 -409
  469. package/src/tools/polygon/index.js +0 -52
  470. package/src/tools/polygon/line.jsx +0 -74
  471. package/src/tools/polygon/polygon.jsx +0 -110
  472. package/src/tools/ray/__tests__/component.test.jsx +0 -29
  473. package/src/tools/ray/component.jsx +0 -92
  474. package/src/tools/ray/index.js +0 -4
  475. package/src/tools/segment/__tests__/component.test.jsx +0 -28
  476. package/src/tools/segment/component.jsx +0 -65
  477. package/src/tools/segment/index.js +0 -4
  478. package/src/tools/shared/__tests__/arrow-head.test.jsx +0 -31
  479. package/src/tools/shared/arrow-head.jsx +0 -102
  480. package/src/tools/shared/icons/CorrectSVG.jsx +0 -32
  481. package/src/tools/shared/icons/IncorrectSVG.jsx +0 -30
  482. package/src/tools/shared/icons/MissingSVG.jsx +0 -31
  483. package/src/tools/shared/line/__tests__/index.test.jsx +0 -109
  484. package/src/tools/shared/line/__tests__/line-path.test.jsx +0 -53
  485. package/src/tools/shared/line/__tests__/with-root-edge.test.jsx +0 -73
  486. package/src/tools/shared/line/index.jsx +0 -487
  487. package/src/tools/shared/line/line-path.jsx +0 -80
  488. package/src/tools/shared/line/with-root-edge.jsx +0 -97
  489. package/src/tools/shared/point/__tests__/arrow-point.test.jsx +0 -91
  490. package/src/tools/shared/point/__tests__/base-point.test.jsx +0 -87
  491. package/src/tools/shared/point/arrow-point.jsx +0 -46
  492. package/src/tools/shared/point/arrow.jsx +0 -37
  493. package/src/tools/shared/point/base-point.jsx +0 -121
  494. package/src/tools/shared/point/index.jsx +0 -54
  495. package/src/tools/shared/styles.js +0 -27
  496. package/src/tools/shared/types.js +0 -10
  497. package/src/tools/sine/__tests__/component.test.jsx +0 -51
  498. package/src/tools/sine/component.jsx +0 -32
  499. package/src/tools/sine/index.js +0 -33
  500. package/src/tools/vector/__tests__/component.test.jsx +0 -25
  501. package/src/tools/vector/component.jsx +0 -56
  502. package/src/tools/vector/index.js +0 -4
  503. package/src/undo-redo.jsx +0 -45
  504. package/src/use-debounce.js +0 -13
  505. package/src/utils.js +0 -224
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.test.js","names":["_index","require","_utils","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","jest","mock","equalPoints","fn","sameAxes","describe","exponentialTool","beforeEach","clearAllMocks","tool","it","expect","toBeDefined","_typeof2","toBe","type","Component","complete","addPoint","hover","toBeUndefined","data","x","y","mark","root","edge","building","closed","result","toEqual","label","correctness","value","originalMark","point","mockReturnValue","undefined","toHaveBeenCalledWith","toBeNull","toThrow","newEdge","not","firstPoint","mark1","secondPoint","mark2","mark3"],"sources":["../../../../src/tools/exponential/__tests__/index.test.js"],"sourcesContent":["import { tool } from '../index';\nimport { equalPoints, sameAxes } from '../../../utils';\n\njest.mock('../../../utils', () => ({\n equalPoints: jest.fn(),\n sameAxes: jest.fn(),\n}));\n\njest.mock('debug', () => {\n return jest.fn(() => jest.fn());\n});\n\ndescribe('exponential tool', () => {\n let exponentialTool;\n\n beforeEach(() => {\n jest.clearAllMocks();\n exponentialTool = tool();\n });\n\n describe('tool configuration', () => {\n it('creates a tool object', () => {\n expect(exponentialTool).toBeDefined();\n expect(typeof exponentialTool).toBe('object');\n });\n\n it('has type exponential', () => {\n expect(exponentialTool.type).toBe('exponential');\n });\n\n it('has a Component', () => {\n expect(exponentialTool.Component).toBeDefined();\n });\n\n it('has complete function', () => {\n expect(typeof exponentialTool.complete).toBe('function');\n });\n\n it('has addPoint function', () => {\n expect(typeof exponentialTool.addPoint).toBe('function');\n });\n\n it('does not have hover function', () => {\n expect(exponentialTool.hover).toBeUndefined();\n });\n });\n\n describe('complete', () => {\n it('marks exponential as complete', () => {\n const data = { x: 5, y: 10 };\n const mark = {\n type: 'exponential',\n root: { x: 0, y: 1 },\n edge: { x: 5, y: 10 },\n building: true,\n closed: false,\n };\n\n const result = exponentialTool.complete(data, mark);\n\n expect(result).toEqual({\n ...mark,\n building: false,\n closed: true,\n });\n });\n\n it('sets building to false', () => {\n const mark = {\n type: 'exponential',\n root: { x: 0, y: 1 },\n building: true,\n };\n\n const result = exponentialTool.complete({}, mark);\n\n expect(result.building).toBe(false);\n });\n\n it('sets closed to true', () => {\n const mark = {\n type: 'exponential',\n root: { x: 0, y: 1 },\n closed: false,\n };\n\n const result = exponentialTool.complete({}, mark);\n\n expect(result.closed).toBe(true);\n });\n\n it('preserves mark properties', () => {\n const mark = {\n type: 'exponential',\n root: { x: 0, y: 1 },\n edge: { x: 5, y: 10 },\n label: 'Exp A',\n correctness: { value: 'correct' },\n };\n\n const result = exponentialTool.complete({}, mark);\n\n expect(result.label).toBe('Exp A');\n expect(result.correctness).toEqual({ value: 'correct' });\n expect(result.root).toEqual(mark.root);\n expect(result.edge).toEqual(mark.edge);\n });\n\n it('does not mutate original mark', () => {\n const mark = {\n type: 'exponential',\n root: { x: 0, y: 1 },\n building: true,\n closed: false,\n };\n const originalMark = { ...mark };\n\n exponentialTool.complete({}, mark);\n\n expect(mark).toEqual(originalMark);\n });\n });\n\n describe('addPoint', () => {\n describe('first point (creating root)', () => {\n it('creates new exponential mark when no mark exists', () => {\n const point = { x: 0, y: 5 };\n const mark = null;\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, mark);\n\n expect(result).toEqual({\n type: 'exponential',\n root: point,\n edge: undefined,\n closed: false,\n building: true,\n });\n });\n\n it('creates mark with building true', () => {\n const point = { x: 2, y: 3 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, null);\n\n expect(result.building).toBe(true);\n });\n\n it('creates mark with closed false', () => {\n const point = { x: 2, y: 3 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, null);\n\n expect(result.closed).toBe(false);\n });\n\n it('creates mark with undefined edge', () => {\n const point = { x: 2, y: 3 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, null);\n\n expect(result.edge).toBeUndefined();\n });\n\n it('works with positive coordinates', () => {\n const point = { x: 5, y: 10 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, null);\n\n expect(result.root).toEqual(point);\n });\n\n it('works with negative y coordinate', () => {\n const point = { x: 5, y: -10 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, null);\n\n expect(result.root).toEqual(point);\n });\n\n it('works with decimal coordinates', () => {\n const point = { x: 3.5, y: 7.25 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, null);\n\n expect(result.root).toEqual(point);\n });\n });\n\n describe('second point (completing exponential)', () => {\n it('completes exponential when adding edge point', () => {\n const root = { x: 0, y: 1 };\n const edge = { x: 5, y: 10 };\n const mark = {\n type: 'exponential',\n root,\n edge: undefined,\n closed: false,\n building: true,\n };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(edge, mark);\n\n expect(result).toEqual({\n ...mark,\n edge,\n closed: true,\n building: false,\n });\n });\n\n it('sets building to false', () => {\n const mark = {\n type: 'exponential',\n root: { x: 0, y: 1 },\n building: true,\n };\n const point = { x: 5, y: 10 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, mark);\n\n expect(result.building).toBe(false);\n });\n\n it('sets closed to true', () => {\n const mark = {\n type: 'exponential',\n root: { x: 0, y: 1 },\n closed: false,\n };\n const point = { x: 5, y: 10 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, mark);\n\n expect(result.closed).toBe(true);\n });\n\n it('preserves root when adding edge', () => {\n const root = { x: 1, y: 2 };\n const mark = {\n type: 'exponential',\n root,\n building: true,\n };\n const edge = { x: 5, y: 8 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(edge, mark);\n\n expect(result.root).toEqual(root);\n expect(result.edge).toEqual(edge);\n });\n\n it('preserves mark properties', () => {\n const mark = {\n type: 'exponential',\n root: { x: 0, y: 1 },\n label: 'Exp 1',\n correctness: { value: 'correct' },\n };\n const point = { x: 5, y: 10 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, mark);\n\n expect(result.label).toBe('Exp 1');\n expect(result.correctness).toEqual({ value: 'correct' });\n });\n });\n\n describe('same point handling', () => {\n it('returns same mark when clicking equal point', () => {\n const point = { x: 5, y: 10 };\n const mark = {\n type: 'exponential',\n root: point,\n building: true,\n };\n equalPoints.mockReturnValue(true);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, mark);\n\n expect(result).toBe(mark);\n });\n\n it('returns same mark when clicking point on same axis', () => {\n const mark = {\n type: 'exponential',\n root: { x: 5, y: 10 },\n building: true,\n };\n const point = { x: 8, y: 10 }; // same y\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(true);\n\n const result = exponentialTool.addPoint(point, mark);\n\n expect(result).toBe(mark);\n });\n\n it('calls equalPoints with correct arguments', () => {\n const point = { x: 5, y: 10 };\n const mark = {\n type: 'exponential',\n root: { x: 5, y: 10 },\n building: true,\n };\n equalPoints.mockReturnValue(true);\n\n exponentialTool.addPoint(point, mark);\n\n expect(equalPoints).toHaveBeenCalledWith(mark.root, point);\n });\n\n it('calls sameAxes with correct arguments', () => {\n const point = { x: 8, y: 10 };\n const mark = {\n type: 'exponential',\n root: { x: 5, y: 10 },\n building: true,\n };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(true);\n\n exponentialTool.addPoint(point, mark);\n\n expect(sameAxes).toHaveBeenCalledWith(mark.root, point);\n });\n });\n\n describe('opposite sign y-coordinates', () => {\n it('returns same mark when root and point have opposite sign y', () => {\n const mark = {\n type: 'exponential',\n root: { x: 0, y: 5 }, // positive y\n building: true,\n };\n const point = { x: 5, y: -10 }; // negative y\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, mark);\n\n expect(result).toBe(mark);\n });\n\n it('returns same mark when root is negative and point is positive', () => {\n const mark = {\n type: 'exponential',\n root: { x: 0, y: -5 }, // negative y\n building: true,\n };\n const point = { x: 5, y: 10 }; // positive y\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, mark);\n\n expect(result).toBe(mark);\n });\n\n it('allows points with same sign y (both positive)', () => {\n const mark = {\n type: 'exponential',\n root: { x: 0, y: 5 },\n building: true,\n };\n const point = { x: 5, y: 10 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, mark);\n\n expect(result.edge).toEqual(point);\n expect(result.building).toBe(false);\n });\n\n it('allows points with same sign y (both negative)', () => {\n const mark = {\n type: 'exponential',\n root: { x: 0, y: -5 },\n building: true,\n };\n const point = { x: 5, y: -10 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, mark);\n\n expect(result.edge).toEqual(point);\n expect(result.building).toBe(false);\n });\n });\n\n describe('zero y-coordinate handling', () => {\n it('returns same mark when point has y = 0', () => {\n const mark = {\n type: 'exponential',\n root: { x: 0, y: 5 },\n building: true,\n };\n const point = { x: 5, y: 0 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, mark);\n\n expect(result).toBe(mark);\n });\n\n it('prevents adding point with zero y', () => {\n const point = { x: 5, y: 0 };\n const mark = {\n type: 'exponential',\n root: { x: 1, y: 2 },\n building: true,\n };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, mark);\n\n expect(result).toBe(mark);\n expect(result.edge).toBeUndefined();\n });\n\n it('prevents creating root with zero y', () => {\n const point = { x: 5, y: 0 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, null);\n\n expect(result).toBeNull();\n });\n\n it('allows positive y values close to zero', () => {\n const point = { x: 5, y: 0.001 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, null);\n\n expect(result.root).toEqual(point);\n });\n\n it('allows negative y values close to zero', () => {\n const point = { x: 5, y: -0.001 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, null);\n\n expect(result.root).toEqual(point);\n });\n });\n\n describe('error handling', () => {\n it('throws error when mark has no root', () => {\n const mark = {\n type: 'exponential',\n building: true,\n // root is missing\n };\n const point = { x: 5, y: 10 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n expect(() => {\n exponentialTool.addPoint(point, mark);\n }).toThrow(); // Will throw TypeError when accessing undefined.y\n });\n\n it('throws error when mark root is null', () => {\n const mark = {\n type: 'exponential',\n root: null,\n building: true,\n };\n const point = { x: 5, y: 10 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n expect(() => {\n exponentialTool.addPoint(point, mark);\n }).toThrow(); // Will throw TypeError when accessing null.y\n });\n\n it('throws error when mark root is undefined', () => {\n const mark = {\n type: 'exponential',\n root: undefined,\n building: true,\n };\n const point = { x: 5, y: 10 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n expect(() => {\n exponentialTool.addPoint(point, mark);\n }).toThrow(); // Will throw TypeError when accessing undefined.y\n });\n });\n\n describe('edge cases', () => {\n it('handles undefined mark on first click', () => {\n const point = { x: 5, y: 10 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, undefined);\n\n expect(result.type).toBe('exponential');\n expect(result.root).toEqual(point);\n expect(result.building).toBe(true);\n });\n\n it('handles very large positive y', () => {\n const point = { x: 5, y: 10000 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, null);\n\n expect(result.root).toEqual(point);\n });\n\n it('handles very large negative y', () => {\n const point = { x: 5, y: -10000 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, null);\n\n expect(result.root).toEqual(point);\n });\n\n it('handles negative x coordinates', () => {\n const point = { x: -5, y: 10 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, null);\n\n expect(result.root).toEqual(point);\n });\n\n it('handles mark with existing edge', () => {\n const mark = {\n type: 'exponential',\n root: { x: 0, y: 1 },\n edge: { x: 3, y: 3 },\n building: false,\n closed: true,\n };\n const newEdge = { x: 5, y: 5 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(newEdge, mark);\n\n expect(result.edge).toEqual(newEdge);\n expect(result.closed).toBe(true);\n expect(result.building).toBe(false);\n });\n });\n\n describe('immutability', () => {\n it('does not mutate original mark when adding edge', () => {\n const mark = {\n type: 'exponential',\n root: { x: 0, y: 1 },\n building: true,\n };\n const originalMark = { ...mark };\n const point = { x: 5, y: 10 };\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const result = exponentialTool.addPoint(point, mark);\n\n expect(mark).toEqual(originalMark);\n expect(result).not.toBe(mark);\n });\n\n it('does not mutate original mark when returning same', () => {\n const mark = {\n type: 'exponential',\n root: { x: 5, y: 10 },\n building: true,\n };\n const point = { x: 5, y: 10 };\n equalPoints.mockReturnValue(true);\n\n const result = exponentialTool.addPoint(point, mark);\n\n expect(result).toBe(mark);\n });\n });\n });\n\n describe('integration scenarios', () => {\n it('handles full exponential creation flow', () => {\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n // First click - create root\n const firstPoint = { x: 0, y: 1 };\n const mark1 = exponentialTool.addPoint(firstPoint, null);\n expect(mark1.root).toEqual(firstPoint);\n expect(mark1.building).toBe(true);\n expect(mark1.closed).toBe(false);\n\n // Second click - complete exponential\n const secondPoint = { x: 5, y: 10 };\n const mark2 = exponentialTool.addPoint(secondPoint, mark1);\n expect(mark2.root).toEqual(firstPoint);\n expect(mark2.edge).toEqual(secondPoint);\n expect(mark2.building).toBe(false);\n expect(mark2.closed).toBe(true);\n\n // Complete\n const mark3 = exponentialTool.complete({}, mark2);\n expect(mark3.building).toBe(false);\n expect(mark3.closed).toBe(true);\n });\n\n it('handles rejected second point (zero y)', () => {\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const firstPoint = { x: 0, y: 1 };\n const mark1 = exponentialTool.addPoint(firstPoint, null);\n\n const secondPoint = { x: 5, y: 0 };\n const mark2 = exponentialTool.addPoint(secondPoint, mark1);\n\n // Should return unchanged mark\n expect(mark2).toBe(mark1);\n expect(mark2.edge).toBeUndefined();\n });\n\n it('handles rejected second point (opposite sign)', () => {\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const firstPoint = { x: 0, y: 5 };\n const mark1 = exponentialTool.addPoint(firstPoint, null);\n\n const secondPoint = { x: 5, y: -10 };\n const mark2 = exponentialTool.addPoint(secondPoint, mark1);\n\n // Should return unchanged mark\n expect(mark2).toBe(mark1);\n expect(mark2.edge).toBeUndefined();\n });\n\n it('handles rejected second point (same axes)', () => {\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(true);\n\n const firstPoint = { x: 0, y: 5 };\n const mark1 = exponentialTool.addPoint(firstPoint, null);\n\n const secondPoint = { x: 10, y: 5 }; // same y\n const mark2 = exponentialTool.addPoint(secondPoint, mark1);\n\n // Should return unchanged mark\n expect(mark2).toBe(mark1);\n });\n\n it('handles exponential with negative y values', () => {\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const firstPoint = { x: 0, y: -1 };\n const mark1 = exponentialTool.addPoint(firstPoint, null);\n\n const secondPoint = { x: 5, y: -10 };\n const mark2 = exponentialTool.addPoint(secondPoint, mark1);\n\n expect(mark2.root).toEqual(firstPoint);\n expect(mark2.edge).toEqual(secondPoint);\n expect(mark2.building).toBe(false);\n expect(mark2.closed).toBe(true);\n });\n\n it('handles exponential with properties', () => {\n equalPoints.mockReturnValue(false);\n sameAxes.mockReturnValue(false);\n\n const firstPoint = { x: 0, y: 1, label: 'Start' };\n const mark1 = exponentialTool.addPoint(firstPoint, null);\n\n // Add properties\n mark1.label = 'Exp A';\n mark1.correctness = { value: 'correct' };\n\n const secondPoint = { x: 5, y: 10 };\n const mark2 = exponentialTool.addPoint(secondPoint, mark1);\n\n expect(mark2.label).toBe('Exp A');\n expect(mark2.correctness).toEqual({ value: 'correct' });\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1,28 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports["default"] = void 0;
8
- var _debug = _interopRequireDefault(require("debug"));
9
- var _graphingUtils = require("@pie-lib/graphing-utils");
10
- var _withRootEdge = require("../shared/line/with-root-edge");
11
- var log = (0, _debug["default"])('pie-lib:graphing:exponential');
12
- var Exponential = (0, _withRootEdge.withRootEdge)(function (props) {
13
- var root = props.root,
14
- edge = props.edge,
15
- graphProps = props.graphProps;
16
- var domain = graphProps.domain,
17
- range = graphProps.range;
18
- var dataPoints = edge && edge.x === root.x ? [] : (0, _graphingUtils.buildDataPoints)(domain, range, root, edge, (0, _graphingUtils.exponentialFromTwoPoints)(root, edge), true);
19
- log('dataPoints:', dataPoints);
20
- return {
21
- root: props.root,
22
- edge: props.edge,
23
- dataPoints: dataPoints
24
- };
25
- });
26
- var Component = (0, _withRootEdge.rootEdgeComponent)(Exponential);
27
- var _default = exports["default"] = Component;
28
- //# sourceMappingURL=component.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"component.js","names":["_debug","_interopRequireDefault","require","_graphingUtils","_withRootEdge","log","debug","Exponential","withRootEdge","props","root","edge","graphProps","domain","range","dataPoints","x","buildDataPoints","exponentialFromTwoPoints","Component","rootEdgeComponent","_default","exports"],"sources":["../../../src/tools/exponential/component.jsx"],"sourcesContent":["import debug from 'debug';\nimport { buildDataPoints, exponentialFromTwoPoints } from '@pie-lib/graphing-utils';\nimport { rootEdgeComponent, withRootEdge } from '../shared/line/with-root-edge';\n\nconst log = debug('pie-lib:graphing:exponential');\n\nconst Exponential = withRootEdge((props) => {\n const { root, edge, graphProps } = props;\n const { domain, range } = graphProps;\n\n const dataPoints =\n edge && edge.x === root.x\n ? []\n : buildDataPoints(domain, range, root, edge, exponentialFromTwoPoints(root, edge), true);\n\n log('dataPoints:', dataPoints);\n\n return { root: props.root, edge: props.edge, dataPoints };\n});\n\nconst Component = rootEdgeComponent(Exponential);\n\nexport default Component;\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AAEA,IAAMG,GAAG,GAAG,IAAAC,iBAAK,EAAC,8BAA8B,CAAC;AAEjD,IAAMC,WAAW,GAAG,IAAAC,0BAAY,EAAC,UAACC,KAAK,EAAK;EAC1C,IAAQC,IAAI,GAAuBD,KAAK,CAAhCC,IAAI;IAAEC,IAAI,GAAiBF,KAAK,CAA1BE,IAAI;IAAEC,UAAU,GAAKH,KAAK,CAApBG,UAAU;EAC9B,IAAQC,MAAM,GAAYD,UAAU,CAA5BC,MAAM;IAAEC,KAAK,GAAKF,UAAU,CAApBE,KAAK;EAErB,IAAMC,UAAU,GACdJ,IAAI,IAAIA,IAAI,CAACK,CAAC,KAAKN,IAAI,CAACM,CAAC,GACrB,EAAE,GACF,IAAAC,8BAAe,EAACJ,MAAM,EAAEC,KAAK,EAAEJ,IAAI,EAAEC,IAAI,EAAE,IAAAO,uCAAwB,EAACR,IAAI,EAAEC,IAAI,CAAC,EAAE,IAAI,CAAC;EAE5FN,GAAG,CAAC,aAAa,EAAEU,UAAU,CAAC;EAE9B,OAAO;IAAEL,IAAI,EAAED,KAAK,CAACC,IAAI;IAAEC,IAAI,EAAEF,KAAK,CAACE,IAAI;IAAEI,UAAU,EAAVA;EAAW,CAAC;AAC3D,CAAC,CAAC;AAEF,IAAMI,SAAS,GAAG,IAAAC,+BAAiB,EAACb,WAAW,CAAC;AAAC,IAAAc,QAAA,GAAAC,OAAA,cAElCH,SAAS","ignoreList":[]}
@@ -1,56 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.tool = void 0;
8
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
- var _component = _interopRequireDefault(require("./component"));
10
- var _debug = _interopRequireDefault(require("debug"));
11
- var _utils = require("../../utils");
12
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
13
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
14
- var log = (0, _debug["default"])('pie-lib:graphing:exponential');
15
- var tool = exports.tool = function tool() {
16
- return {
17
- type: 'exponential',
18
- Component: _component["default"],
19
- complete: function complete(data, mark) {
20
- return _objectSpread(_objectSpread({}, mark), {}, {
21
- building: false,
22
- closed: true
23
- });
24
- },
25
- addPoint: function addPoint(point, mark) {
26
- log('add point to exponential model: ', point, 'mark: ', mark);
27
- if (mark && ((0, _utils.equalPoints)(mark.root, point) || (0, _utils.sameAxes)(mark.root, point))) {
28
- return mark;
29
- }
30
- if (mark && mark.root.y * point.y < 0) {
31
- return mark;
32
- }
33
- if (point.y === 0) {
34
- return mark;
35
- }
36
- if (!mark) {
37
- return {
38
- type: 'exponential',
39
- root: point,
40
- edge: undefined,
41
- closed: false,
42
- building: true
43
- };
44
- } else if (mark && !mark.root) {
45
- throw new Error('no root - should never happen');
46
- } else {
47
- return _objectSpread(_objectSpread({}, mark), {}, {
48
- edge: point,
49
- closed: true,
50
- building: false
51
- });
52
- }
53
- }
54
- };
55
- };
56
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["_component","_interopRequireDefault","require","_debug","_utils","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","log","debug","tool","exports","type","Component","Exponential","complete","data","mark","building","closed","addPoint","point","equalPoints","root","sameAxes","y","edge","undefined","Error"],"sources":["../../../src/tools/exponential/index.js"],"sourcesContent":["import Exponential from './component';\nimport debug from 'debug';\nimport { equalPoints, sameAxes } from '../../utils';\n\nconst log = debug('pie-lib:graphing:exponential');\n\nexport const tool = () => ({\n type: 'exponential',\n Component: Exponential,\n complete: (data, mark) => ({ ...mark, building: false, closed: true }),\n addPoint: (point, mark) => {\n log('add point to exponential model: ', point, 'mark: ', mark);\n if (mark && (equalPoints(mark.root, point) || sameAxes(mark.root, point))) {\n return mark;\n }\n\n if (mark && mark.root.y * point.y < 0) {\n return mark;\n }\n\n if (point.y === 0) {\n return mark;\n }\n\n if (!mark) {\n return {\n type: 'exponential',\n root: point,\n edge: undefined,\n closed: false,\n building: true,\n };\n } else if (mark && !mark.root) {\n throw new Error('no root - should never happen');\n } else {\n return { ...mark, edge: point, closed: true, building: false };\n }\n },\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1,86 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "absolute", {
7
- enumerable: true,
8
- get: function get() {
9
- return _absolute.tool;
10
- }
11
- });
12
- exports.allTools = void 0;
13
- Object.defineProperty(exports, "circle", {
14
- enumerable: true,
15
- get: function get() {
16
- return _circle.tool;
17
- }
18
- });
19
- Object.defineProperty(exports, "exponential", {
20
- enumerable: true,
21
- get: function get() {
22
- return _exponential.tool;
23
- }
24
- });
25
- Object.defineProperty(exports, "line", {
26
- enumerable: true,
27
- get: function get() {
28
- return _line.tool;
29
- }
30
- });
31
- Object.defineProperty(exports, "parabola", {
32
- enumerable: true,
33
- get: function get() {
34
- return _parabola.tool;
35
- }
36
- });
37
- Object.defineProperty(exports, "point", {
38
- enumerable: true,
39
- get: function get() {
40
- return _point.tool;
41
- }
42
- });
43
- Object.defineProperty(exports, "polygon", {
44
- enumerable: true,
45
- get: function get() {
46
- return _polygon.tool;
47
- }
48
- });
49
- Object.defineProperty(exports, "ray", {
50
- enumerable: true,
51
- get: function get() {
52
- return _ray.tool;
53
- }
54
- });
55
- Object.defineProperty(exports, "sine", {
56
- enumerable: true,
57
- get: function get() {
58
- return _sine.tool;
59
- }
60
- });
61
- exports.toolsArr = void 0;
62
- Object.defineProperty(exports, "vector", {
63
- enumerable: true,
64
- get: function get() {
65
- return _vector.tool;
66
- }
67
- });
68
- var _point = require("./point");
69
- var _circle = require("./circle");
70
- var _polygon = require("./polygon");
71
- var _sine = require("./sine");
72
- var _parabola = require("./parabola");
73
- var _line = require("./line");
74
- var _segment = require("./segment");
75
- var _ray = require("./ray");
76
- var _vector = require("./vector");
77
- var _absolute = require("./absolute");
78
- var _exponential = require("./exponential");
79
- var allTools = exports.allTools = ['circle', 'line', 'label', 'parabola', 'point', 'polygon', 'ray', 'segment', 'sine', 'vector', 'absolute', 'exponential'];
80
-
81
- // need this because now we should treat label as other tools PD-3736
82
- var labelTool = {
83
- type: 'label'
84
- };
85
- var toolsArr = exports.toolsArr = [(0, _circle.tool)(), (0, _line.tool)(), (0, _parabola.tool)(), (0, _point.tool)(), (0, _polygon.tool)(), (0, _ray.tool)(), (0, _segment.tool)(), (0, _sine.tool)(), (0, _vector.tool)(), (0, _absolute.tool)(), (0, _exponential.tool)(), labelTool];
86
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["_point","require","_circle","_polygon","_sine","_parabola","_line","_segment","_ray","_vector","_absolute","_exponential","allTools","exports","labelTool","type","toolsArr","circle","line","parabola","point","polygon","ray","segment","sine","vector","absolute","exponential"],"sources":["../../src/tools/index.js"],"sourcesContent":["import { tool as point } from './point';\nimport { tool as circle } from './circle';\nimport { tool as polygon } from './polygon';\nimport { tool as sine } from './sine';\nimport { tool as parabola } from './parabola';\nimport { tool as line } from './line';\nimport { tool as segment } from './segment';\nimport { tool as ray } from './ray';\nimport { tool as vector } from './vector';\nimport { tool as absolute } from './absolute';\nimport { tool as exponential } from './exponential';\n\nconst allTools = [\n 'circle',\n 'line',\n 'label',\n 'parabola',\n 'point',\n 'polygon',\n 'ray',\n 'segment',\n 'sine',\n 'vector',\n 'absolute',\n 'exponential',\n];\n\n// need this because now we should treat label as other tools PD-3736\nconst labelTool = {\n type: 'label',\n};\n\nconst toolsArr = [\n circle(),\n line(),\n parabola(),\n point(),\n polygon(),\n ray(),\n segment(),\n sine(),\n vector(),\n absolute(),\n exponential(),\n labelTool,\n];\n\nexport { allTools, toolsArr, circle, line, point, parabola, polygon, ray, sine, vector, absolute, exponential };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,QAAA,GAAAN,OAAA;AACA,IAAAO,IAAA,GAAAP,OAAA;AACA,IAAAQ,OAAA,GAAAR,OAAA;AACA,IAAAS,SAAA,GAAAT,OAAA;AACA,IAAAU,YAAA,GAAAV,OAAA;AAEA,IAAMW,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAG,CACf,QAAQ,EACR,MAAM,EACN,OAAO,EACP,UAAU,EACV,OAAO,EACP,SAAS,EACT,KAAK,EACL,SAAS,EACT,MAAM,EACN,QAAQ,EACR,UAAU,EACV,aAAa,CACd;;AAED;AACA,IAAME,SAAS,GAAG;EAChBC,IAAI,EAAE;AACR,CAAC;AAED,IAAMC,QAAQ,GAAAH,OAAA,CAAAG,QAAA,GAAG,CACf,IAAAC,YAAM,EAAC,CAAC,EACR,IAAAC,UAAI,EAAC,CAAC,EACN,IAAAC,cAAQ,EAAC,CAAC,EACV,IAAAC,WAAK,EAAC,CAAC,EACP,IAAAC,aAAO,EAAC,CAAC,EACT,IAAAC,SAAG,EAAC,CAAC,EACL,IAAAC,aAAO,EAAC,CAAC,EACT,IAAAC,UAAI,EAAC,CAAC,EACN,IAAAC,YAAM,EAAC,CAAC,EACR,IAAAC,cAAQ,EAAC,CAAC,EACV,IAAAC,iBAAW,EAAC,CAAC,EACbb,SAAS,CACV","ignoreList":[]}
@@ -1,45 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
5
- var _testUtils = require("@pie-lib/test-utils");
6
- var _react = _interopRequireDefault(require("react"));
7
- var _component = require("../component");
8
- var _utils = require("../../../__tests__/utils");
9
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
10
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
11
- jest.mock('@pie-lib/plot', function () {
12
- var a = jest.requireActual('@pie-lib/plot');
13
- return {
14
- types: a.types,
15
- gridDraggable: a.gridDraggable,
16
- utils: a.utils,
17
- trig: {
18
- edges: jest.fn(function () {
19
- return jest.fn().mockReturnValue([0, 0]);
20
- })
21
- }
22
- };
23
- });
24
- describe('ArrowedLine', function () {
25
- var onChange = jest.fn();
26
- var renderComponent = function renderComponent(extras) {
27
- var defaults = {
28
- classes: {},
29
- className: 'className',
30
- onChange: onChange,
31
- markerId: '1',
32
- graphProps: (0, _utils.graphProps)()
33
- };
34
- var props = _objectSpread(_objectSpread({}, defaults), extras);
35
- return (0, _testUtils.render)(/*#__PURE__*/_react["default"].createElement(_component.ArrowedLine, props));
36
- };
37
- describe('rendering', function () {
38
- it('renders without crashing', function () {
39
- var _renderComponent = renderComponent(),
40
- container = _renderComponent.container;
41
- expect(container.firstChild).toBeInTheDocument();
42
- });
43
- });
44
- });
45
- //# sourceMappingURL=component.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"component.test.js","names":["_testUtils","require","_react","_interopRequireDefault","_component","_utils","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","jest","mock","a","requireActual","types","gridDraggable","utils","trig","edges","fn","mockReturnValue","describe","onChange","renderComponent","extras","defaults","classes","className","markerId","graphProps","getGraphProps","props","render","createElement","ArrowedLine","it","_renderComponent","container","expect","firstChild","toBeInTheDocument"],"sources":["../../../../src/tools/line/__tests__/component.test.jsx"],"sourcesContent":["import { render } from '@pie-lib/test-utils';\nimport React from 'react';\nimport { ArrowedLine } from '../component';\nimport { graphProps as getGraphProps } from '../../../__tests__/utils';\n\njest.mock('@pie-lib/plot', () => {\n const a = jest.requireActual('@pie-lib/plot');\n return {\n types: a.types,\n gridDraggable: a.gridDraggable,\n utils: a.utils,\n trig: {\n edges: jest.fn(() => jest.fn().mockReturnValue([0, 0])),\n },\n };\n});\n\ndescribe('ArrowedLine', () => {\n let onChange = jest.fn();\n const renderComponent = (extras) => {\n const defaults = {\n classes: {},\n className: 'className',\n onChange,\n markerId: '1',\n graphProps: getGraphProps(),\n };\n const props = { ...defaults, ...extras };\n return render(<ArrowedLine {...props} />);\n };\n describe('rendering', () => {\n it('renders without crashing', () => {\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1,97 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports["default"] = exports.ArrowedLine = void 0;
8
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
- var _line = require("../shared/line");
13
- var _react = _interopRequireDefault(require("react"));
14
- var _propTypes = _interopRequireDefault(require("prop-types"));
15
- var _plot = require("@pie-lib/plot");
16
- var _classnames = _interopRequireDefault(require("classnames"));
17
- var _arrowHead = require("../shared/arrow-head");
18
- var _utils = require("../../utils");
19
- var _styles = require("@mui/material/styles");
20
- var _excluded = ["className", "correctness", "disabled", "graphProps", "from", "to", "markerId"];
21
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
22
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
23
- var StyledArrowedLineRoot = (0, _styles.styled)('g')(function (_ref) {
24
- var theme = _ref.theme,
25
- disabled = _ref.disabled,
26
- correctness = _ref.correctness;
27
- return {
28
- '& line:not(.hit-area)': _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, _line.styles.line(theme)), disabled && _line.styles.disabledSecondary(theme)), correctness === 'correct' && _line.styles.correct(theme, 'stroke')), correctness === 'incorrect' && _line.styles.incorrect(theme, 'stroke')), correctness === 'missing' && _line.styles.missing(theme, 'stroke')),
29
- '& .enabledArrow': _objectSpread({}, _line.styles.arrow(theme)),
30
- '& .disabledArrow': _objectSpread({}, _line.styles.disabledArrow(theme)),
31
- '& .correctArrow': _objectSpread({}, _line.styles.correct(theme)),
32
- '& .incorrectArrow': _objectSpread({}, _line.styles.incorrect(theme)),
33
- '& .missingArrow': _objectSpread({}, _line.styles.missing(theme))
34
- };
35
- });
36
- var ArrowedLine = exports.ArrowedLine = function ArrowedLine(props) {
37
- var markerId = (0, _arrowHead.genUid)();
38
- var className = props.className,
39
- correctness = props.correctness,
40
- disabled = props.disabled,
41
- graphProps = props.graphProps,
42
- from = props.from,
43
- to = props.to,
44
- propMarkerId = props.markerId,
45
- rest = (0, _objectWithoutProperties2["default"])(props, _excluded);
46
- var scale = graphProps.scale;
47
- var _getAdjustedGraphLimi = (0, _utils.getAdjustedGraphLimits)(graphProps),
48
- domain = _getAdjustedGraphLimi.domain,
49
- range = _getAdjustedGraphLimi.range;
50
- var _trig$edges = _plot.trig.edges(domain, range)(from, to),
51
- _trig$edges2 = (0, _slicedToArray2["default"])(_trig$edges, 2),
52
- eFrom = _trig$edges2[0],
53
- eTo = _trig$edges2[1];
54
- var suffix = correctness || disabled && 'disabled' || 'enabled';
55
- var finalMarkerId = propMarkerId || markerId;
56
- return /*#__PURE__*/_react["default"].createElement(StyledArrowedLineRoot, {
57
- disabled: disabled,
58
- correctness: correctness
59
- }, /*#__PURE__*/_react["default"].createElement("defs", null, /*#__PURE__*/_react["default"].createElement(_arrowHead.ArrowMarker, {
60
- size: (0, _utils.thinnerShapesNeeded)(graphProps) ? 4 : 5,
61
- id: "".concat(finalMarkerId, "-").concat(suffix),
62
- className: (0, _classnames["default"])(suffix === 'enabled' ? 'enabledArrow' : suffix === 'disabled' ? 'disabledArrow' : "".concat(suffix, "Arrow"))
63
- })), /*#__PURE__*/_react["default"].createElement("line", {
64
- x1: scale.x(eFrom.x),
65
- y1: scale.y(eFrom.y),
66
- x2: scale.x(eTo.x),
67
- y2: scale.y(eTo.y),
68
- className: "hit-area",
69
- stroke: "transparent",
70
- strokeWidth: 7,
71
- style: {
72
- cursor: 'pointer',
73
- pointerEvents: 'stroke'
74
- }
75
- }), /*#__PURE__*/_react["default"].createElement("line", (0, _extends2["default"])({
76
- x1: scale.x(eFrom.x),
77
- y1: scale.y(eFrom.y),
78
- x2: scale.x(eTo.x),
79
- y2: scale.y(eTo.y),
80
- className: className,
81
- markerEnd: "url(#".concat(finalMarkerId, "-").concat(suffix, ")"),
82
- markerStart: "url(#".concat(finalMarkerId, "-").concat(suffix, ")")
83
- }, rest)));
84
- };
85
- ArrowedLine.propTypes = {
86
- className: _propTypes["default"].string,
87
- correctness: _propTypes["default"].string,
88
- disabled: _propTypes["default"].bool,
89
- graphProps: _plot.types.GraphPropsType,
90
- from: _plot.types.PointType,
91
- to: _plot.types.PointType,
92
- markerId: _propTypes["default"].string
93
- };
94
- var Line = (0, _line.lineBase)(ArrowedLine);
95
- var Component = (0, _line.lineToolComponent)(Line);
96
- var _default = exports["default"] = Component;
97
- //# sourceMappingURL=component.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"component.js","names":["_line","require","_react","_interopRequireDefault","_propTypes","_plot","_classnames","_arrowHead","_utils","_styles","_excluded","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","StyledArrowedLineRoot","styled","_ref","theme","disabled","correctness","styles","line","disabledSecondary","correct","incorrect","missing","arrow","disabledArrow","ArrowedLine","exports","props","markerId","genUid","className","graphProps","from","to","propMarkerId","rest","_objectWithoutProperties2","scale","_getAdjustedGraphLimi","getAdjustedGraphLimits","domain","range","_trig$edges","trig","edges","_trig$edges2","_slicedToArray2","eFrom","eTo","suffix","finalMarkerId","createElement","ArrowMarker","size","thinnerShapesNeeded","id","concat","classNames","x1","x","y1","y","x2","y2","stroke","strokeWidth","style","cursor","pointerEvents","_extends2","markerEnd","markerStart","propTypes","PropTypes","string","bool","types","GraphPropsType","PointType","Line","lineBase","Component","lineToolComponent","_default"],"sources":["../../../src/tools/line/component.jsx"],"sourcesContent":["import { lineBase, lineToolComponent, styles } from '../shared/line';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { trig, types } from '@pie-lib/plot';\nimport classNames from 'classnames';\nimport { ArrowMarker, genUid } from '../shared/arrow-head';\nimport { getAdjustedGraphLimits, thinnerShapesNeeded } from '../../utils';\nimport { styled } from '@mui/material/styles';\n\nconst StyledArrowedLineRoot = styled('g')(({ theme, disabled, correctness }) => ({\n '& line:not(.hit-area)': {\n ...styles.line(theme),\n ...(disabled && styles.disabledSecondary(theme)),\n ...(correctness === 'correct' && styles.correct(theme, 'stroke')),\n ...(correctness === 'incorrect' && styles.incorrect(theme, 'stroke')),\n ...(correctness === 'missing' && styles.missing(theme, 'stroke')),\n },\n '& .enabledArrow': {\n ...styles.arrow(theme),\n },\n '& .disabledArrow': {\n ...styles.disabledArrow(theme),\n },\n '& .correctArrow': {\n ...styles.correct(theme),\n },\n '& .incorrectArrow': {\n ...styles.incorrect(theme),\n },\n '& .missingArrow': {\n ...styles.missing(theme),\n },\n}));\n\nexport const ArrowedLine = (props) => {\n const markerId = genUid();\n const { className, correctness, disabled, graphProps, from, to, markerId: propMarkerId, ...rest } = props;\n const { scale } = graphProps;\n const { domain, range } = getAdjustedGraphLimits(graphProps);\n const [eFrom, eTo] = trig.edges(domain, range)(from, to);\n const suffix = correctness || (disabled && 'disabled') || 'enabled';\n const finalMarkerId = propMarkerId || markerId;\n\n return (\n <StyledArrowedLineRoot disabled={disabled} correctness={correctness}>\n <defs>\n <ArrowMarker\n size={thinnerShapesNeeded(graphProps) ? 4 : 5}\n id={`${finalMarkerId}-${suffix}`}\n className={classNames(\n suffix === 'enabled' ? 'enabledArrow' : suffix === 'disabled' ? 'disabledArrow' : `${suffix}Arrow`,\n )}\n />\n </defs>\n {/* Transparent wider line captures pointer events (+2px each side) */}\n <line\n x1={scale.x(eFrom.x)}\n y1={scale.y(eFrom.y)}\n x2={scale.x(eTo.x)}\n y2={scale.y(eTo.y)}\n className=\"hit-area\"\n stroke=\"transparent\"\n strokeWidth={7}\n style={{ cursor: 'pointer', pointerEvents: 'stroke' }}\n />\n <line\n x1={scale.x(eFrom.x)}\n y1={scale.y(eFrom.y)}\n x2={scale.x(eTo.x)}\n y2={scale.y(eTo.y)}\n className={className}\n markerEnd={`url(#${finalMarkerId}-${suffix})`}\n markerStart={`url(#${finalMarkerId}-${suffix})`}\n {...rest}\n />\n </StyledArrowedLineRoot>\n );\n};\n\nArrowedLine.propTypes = {\n className: PropTypes.string,\n correctness: PropTypes.string,\n disabled: PropTypes.bool,\n graphProps: types.GraphPropsType,\n from: types.PointType,\n to: types.PointType,\n markerId: PropTypes.string,\n};\n\nconst Line = lineBase(ArrowedLine);\nconst Component = lineToolComponent(Line);\n\nexport default Component;\n"],"mappings":"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","ignoreList":[]}
@@ -1,11 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.tool = void 0;
8
- var _component = _interopRequireDefault(require("./component"));
9
- var _line = require("../shared/line");
10
- var tool = exports.tool = (0, _line.lineTool)('line', _component["default"]);
11
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["_component","_interopRequireDefault","require","_line","tool","exports","lineTool","Line"],"sources":["../../../src/tools/line/index.js"],"sourcesContent":["import Line from './component';\nimport { lineTool } from '../shared/line';\n\nexport const tool = lineTool('line', Line);\n"],"mappings":";;;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAEO,IAAME,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG,IAAAE,cAAQ,EAAC,MAAM,EAAEC,qBAAI,CAAC","ignoreList":[]}
@@ -1,64 +0,0 @@
1
- "use strict";
2
-
3
- var _withRootEdge = require("../../shared/line/with-root-edge");
4
- var _graphingUtils = require("@pie-lib/graphing-utils");
5
- var _plot = require("@pie-lib/plot");
6
- var _utils = require("../../../__tests__/utils");
7
- var xy = _plot.utils.xy;
8
- jest.mock('@pie-lib/graphing-utils', function () {
9
- return {
10
- buildDataPoints: jest.fn().mockReturnValue([]),
11
- parabolaFromTwoPoints: jest.fn(function () {
12
- return jest.fn();
13
- }),
14
- getAmplitudeAndFreq: jest.fn().mockReturnValue({
15
- freq: 4,
16
- amplitude: 1
17
- })
18
- };
19
- });
20
- jest.mock('../../shared/line/with-root-edge', function () {
21
- return {
22
- withRootEdge: jest.fn(),
23
- rootEdgeComponent: jest.fn()
24
- };
25
- });
26
- describe('Parabola', function () {
27
- var fnBody;
28
- var graphProps;
29
- var root;
30
- var edge;
31
- var result;
32
- beforeEach(function () {
33
- require('../component');
34
- fnBody = _withRootEdge.withRootEdge.mock.calls[0][0];
35
- graphProps = (0, _utils.graphProps)();
36
- root = xy(0, 0);
37
- edge = xy(1, 1);
38
- result = fnBody({
39
- graphProps: graphProps,
40
- root: root,
41
- edge: edge
42
- });
43
- });
44
- it('fnBody is not null', function () {
45
- expect(fnBody).toBeDefined();
46
- });
47
- it('calls buildDataPoints', function () {
48
- var _graphProps = graphProps,
49
- domain = _graphProps.domain,
50
- range = _graphProps.range;
51
- expect(_graphingUtils.buildDataPoints).toHaveBeenCalledWith(domain, range, root, edge, expect.anything(), true);
52
- });
53
- it('calls parabolaFromTwoPoints', function () {
54
- expect(_graphingUtils.parabolaFromTwoPoints).toHaveBeenCalledWith(root, edge);
55
- });
56
- it('returns dataPoints', function () {
57
- expect(result).toEqual({
58
- root: root,
59
- edge: edge,
60
- dataPoints: []
61
- });
62
- });
63
- });
64
- //# sourceMappingURL=component.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"component.test.js","names":["_withRootEdge","require","_graphingUtils","_plot","_utils","xy","utils","jest","mock","buildDataPoints","fn","mockReturnValue","parabolaFromTwoPoints","getAmplitudeAndFreq","freq","amplitude","withRootEdge","rootEdgeComponent","describe","fnBody","graphProps","root","edge","result","beforeEach","calls","getGraphProps","it","expect","toBeDefined","_graphProps","domain","range","toHaveBeenCalledWith","anything","toEqual","dataPoints"],"sources":["../../../../src/tools/parabola/__tests__/component.test.jsx"],"sourcesContent":["import { withRootEdge } from '../../shared/line/with-root-edge';\nimport { buildDataPoints, parabolaFromTwoPoints } from '@pie-lib/graphing-utils';\nimport { utils } from '@pie-lib/plot';\n\nimport { graphProps as getGraphProps } from '../../../__tests__/utils';\n\nconst { xy } = utils;\njest.mock('@pie-lib/graphing-utils', () => ({\n buildDataPoints: jest.fn().mockReturnValue([]),\n parabolaFromTwoPoints: jest.fn(() => jest.fn()),\n getAmplitudeAndFreq: jest.fn().mockReturnValue({ freq: 4, amplitude: 1 }),\n}));\n\njest.mock('../../shared/line/with-root-edge', () => ({\n withRootEdge: jest.fn(),\n rootEdgeComponent: jest.fn(),\n}));\ndescribe('Parabola', () => {\n let fnBody;\n let graphProps;\n let root;\n let edge;\n let result;\n beforeEach(() => {\n require('../component');\n fnBody = withRootEdge.mock.calls[0][0];\n graphProps = getGraphProps();\n root = xy(0, 0);\n edge = xy(1, 1);\n\n result = fnBody({ graphProps, root, edge });\n });\n it('fnBody is not null', () => {\n expect(fnBody).toBeDefined();\n });\n\n it('calls buildDataPoints', () => {\n const { domain, range } = graphProps;\n expect(buildDataPoints).toHaveBeenCalledWith(domain, range, root, edge, expect.anything(), true);\n });\n it('calls parabolaFromTwoPoints', () => {\n expect(parabolaFromTwoPoints).toHaveBeenCalledWith(root, edge);\n });\n\n it('returns dataPoints', () => {\n expect(result).toEqual({ root, edge, dataPoints: [] });\n });\n});\n"],"mappings":";;AAAA,IAAAA,aAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AAEA,IAAAG,MAAA,GAAAH,OAAA;AAEA,IAAQI,EAAE,GAAKC,WAAK,CAAZD,EAAE;AACVE,IAAI,CAACC,IAAI,CAAC,yBAAyB,EAAE;EAAA,OAAO;IAC1CC,eAAe,EAAEF,IAAI,CAACG,EAAE,CAAC,CAAC,CAACC,eAAe,CAAC,EAAE,CAAC;IAC9CC,qBAAqB,EAAEL,IAAI,CAACG,EAAE,CAAC;MAAA,OAAMH,IAAI,CAACG,EAAE,CAAC,CAAC;IAAA,EAAC;IAC/CG,mBAAmB,EAAEN,IAAI,CAACG,EAAE,CAAC,CAAC,CAACC,eAAe,CAAC;MAAEG,IAAI,EAAE,CAAC;MAAEC,SAAS,EAAE;IAAE,CAAC;EAC1E,CAAC;AAAA,CAAC,CAAC;AAEHR,IAAI,CAACC,IAAI,CAAC,kCAAkC,EAAE;EAAA,OAAO;IACnDQ,YAAY,EAAET,IAAI,CAACG,EAAE,CAAC,CAAC;IACvBO,iBAAiB,EAAEV,IAAI,CAACG,EAAE,CAAC;EAC7B,CAAC;AAAA,CAAC,CAAC;AACHQ,QAAQ,CAAC,UAAU,EAAE,YAAM;EACzB,IAAIC,MAAM;EACV,IAAIC,UAAU;EACd,IAAIC,IAAI;EACR,IAAIC,IAAI;EACR,IAAIC,MAAM;EACVC,UAAU,CAAC,YAAM;IACfvB,OAAO,CAAC,cAAc,CAAC;IACvBkB,MAAM,GAAGH,0BAAY,CAACR,IAAI,CAACiB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtCL,UAAU,GAAG,IAAAM,iBAAa,EAAC,CAAC;IAC5BL,IAAI,GAAGhB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACfiB,IAAI,GAAGjB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAEfkB,MAAM,GAAGJ,MAAM,CAAC;MAAEC,UAAU,EAAVA,UAAU;MAAEC,IAAI,EAAJA,IAAI;MAAEC,IAAI,EAAJA;IAAK,CAAC,CAAC;EAC7C,CAAC,CAAC;EACFK,EAAE,CAAC,oBAAoB,EAAE,YAAM;IAC7BC,MAAM,CAACT,MAAM,CAAC,CAACU,WAAW,CAAC,CAAC;EAC9B,CAAC,CAAC;EAEFF,EAAE,CAAC,uBAAuB,EAAE,YAAM;IAChC,IAAAG,WAAA,GAA0BV,UAAU;MAA5BW,MAAM,GAAAD,WAAA,CAANC,MAAM;MAAEC,KAAK,GAAAF,WAAA,CAALE,KAAK;IACrBJ,MAAM,CAACnB,8BAAe,CAAC,CAACwB,oBAAoB,CAACF,MAAM,EAAEC,KAAK,EAAEX,IAAI,EAAEC,IAAI,EAAEM,MAAM,CAACM,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC;EAClG,CAAC,CAAC;EACFP,EAAE,CAAC,6BAA6B,EAAE,YAAM;IACtCC,MAAM,CAAChB,oCAAqB,CAAC,CAACqB,oBAAoB,CAACZ,IAAI,EAAEC,IAAI,CAAC;EAChE,CAAC,CAAC;EAEFK,EAAE,CAAC,oBAAoB,EAAE,YAAM;IAC7BC,MAAM,CAACL,MAAM,CAAC,CAACY,OAAO,CAAC;MAAEd,IAAI,EAAJA,IAAI;MAAEC,IAAI,EAAJA,IAAI;MAAEc,UAAU,EAAE;IAAG,CAAC,CAAC;EACxD,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}