@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,564 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _index = require("../index");
5
- var _component = _interopRequireDefault(require("../component"));
6
- describe('parabola tool', function () {
7
- var parabolaTool;
8
- beforeEach(function () {
9
- parabolaTool = (0, _index.tool)();
10
- });
11
- describe('tool structure', function () {
12
- it('returns an object with required properties', function () {
13
- expect(parabolaTool).toHaveProperty('type', 'parabola');
14
- expect(parabolaTool).toHaveProperty('Component', _component["default"]);
15
- expect(parabolaTool).toHaveProperty('complete');
16
- expect(parabolaTool).toHaveProperty('addPoint');
17
- });
18
- it('has correct type', function () {
19
- expect(parabolaTool.type).toBe('parabola');
20
- });
21
- it('uses Parabola component', function () {
22
- expect(parabolaTool.Component).toBe(_component["default"]);
23
- });
24
- });
25
- describe('addPoint', function () {
26
- describe('no existing mark', function () {
27
- it('creates new parabola with root point', function () {
28
- var point = {
29
- x: 1,
30
- y: 2
31
- };
32
- var result = parabolaTool.addPoint(point, null);
33
- expect(result).toEqual({
34
- type: 'parabola',
35
- root: point,
36
- edge: undefined,
37
- closed: false,
38
- building: true
39
- });
40
- });
41
- it('creates parabola with undefined argument', function () {
42
- var point = {
43
- x: 3,
44
- y: 4
45
- };
46
- var result = parabolaTool.addPoint(point);
47
- expect(result).toEqual({
48
- type: 'parabola',
49
- root: point,
50
- edge: undefined,
51
- closed: false,
52
- building: true
53
- });
54
- });
55
- it('marks parabola as building', function () {
56
- var result = parabolaTool.addPoint({
57
- x: 0,
58
- y: 0
59
- });
60
- expect(result.building).toBe(true);
61
- expect(result.closed).toBe(false);
62
- });
63
- it('initializes with undefined edge', function () {
64
- var result = parabolaTool.addPoint({
65
- x: 1,
66
- y: 1
67
- });
68
- expect(result.edge).toBeUndefined();
69
- });
70
- });
71
- describe('existing mark with root', function () {
72
- it('adds edge point to complete parabola', function () {
73
- var root = {
74
- x: 1,
75
- y: 2
76
- };
77
- var edge = {
78
- x: 3,
79
- y: 4
80
- };
81
- var mark = {
82
- type: 'parabola',
83
- root: root,
84
- edge: undefined,
85
- closed: false,
86
- building: true
87
- };
88
- var result = parabolaTool.addPoint(edge, mark);
89
- expect(result).toEqual({
90
- type: 'parabola',
91
- root: root,
92
- edge: edge,
93
- closed: true,
94
- building: false
95
- });
96
- });
97
- it('closes parabola when edge is added', function () {
98
- var mark = {
99
- type: 'parabola',
100
- root: {
101
- x: 0,
102
- y: 0
103
- },
104
- edge: undefined,
105
- closed: false,
106
- building: true
107
- };
108
- var result = parabolaTool.addPoint({
109
- x: 1,
110
- y: 1
111
- }, mark);
112
- expect(result.closed).toBe(true);
113
- expect(result.building).toBe(false);
114
- });
115
- it('preserves other mark properties when adding edge', function () {
116
- var mark = {
117
- type: 'parabola',
118
- root: {
119
- x: 1,
120
- y: 2
121
- },
122
- edge: undefined,
123
- closed: false,
124
- building: true,
125
- label: 'My Parabola',
126
- color: 'blue'
127
- };
128
- var result = parabolaTool.addPoint({
129
- x: 3,
130
- y: 4
131
- }, mark);
132
- expect(result.label).toBe('My Parabola');
133
- expect(result.color).toBe('blue');
134
- });
135
- });
136
- describe('duplicate points', function () {
137
- it('returns same mark when clicking root point again', function () {
138
- var root = {
139
- x: 1,
140
- y: 2
141
- };
142
- var mark = {
143
- type: 'parabola',
144
- root: root,
145
- edge: undefined,
146
- closed: false,
147
- building: true
148
- };
149
- var result = parabolaTool.addPoint(root, mark);
150
- expect(result).toBe(mark);
151
- });
152
- it('returns same mark when clicking near root point', function () {
153
- var root = {
154
- x: 1.00001,
155
- y: 2.00001
156
- };
157
- var nearRoot = {
158
- x: 1.00002,
159
- y: 2.00002
160
- };
161
- var mark = {
162
- type: 'parabola',
163
- root: root,
164
- edge: undefined,
165
- closed: false,
166
- building: true
167
- };
168
- var result = parabolaTool.addPoint(nearRoot, mark);
169
- expect(result).toBe(mark);
170
- });
171
- });
172
- describe('same axes constraint', function () {
173
- it('returns same mark when clicking on same x-axis as root', function () {
174
- var root = {
175
- x: 5,
176
- y: 3
177
- };
178
- var sameXPoint = {
179
- x: 5,
180
- y: 7
181
- };
182
- var mark = {
183
- type: 'parabola',
184
- root: root,
185
- edge: undefined,
186
- closed: false,
187
- building: true
188
- };
189
- var result = parabolaTool.addPoint(sameXPoint, mark);
190
- expect(result).toBe(mark);
191
- });
192
- it('returns same mark when clicking on same y-axis as root', function () {
193
- var root = {
194
- x: 3,
195
- y: 5
196
- };
197
- var sameYPoint = {
198
- x: 7,
199
- y: 5
200
- };
201
- var mark = {
202
- type: 'parabola',
203
- root: root,
204
- edge: undefined,
205
- closed: false,
206
- building: true
207
- };
208
- var result = parabolaTool.addPoint(sameYPoint, mark);
209
- expect(result).toBe(mark);
210
- });
211
- it('allows edge point on different axes', function () {
212
- var root = {
213
- x: 3,
214
- y: 5
215
- };
216
- var edge = {
217
- x: 7,
218
- y: 9
219
- };
220
- var mark = {
221
- type: 'parabola',
222
- root: root,
223
- edge: undefined,
224
- closed: false,
225
- building: true
226
- };
227
- var result = parabolaTool.addPoint(edge, mark);
228
- expect(result).not.toBe(mark);
229
- expect(result.edge).toEqual(edge);
230
- });
231
- it('handles points within rounding tolerance on same x-axis', function () {
232
- var root = {
233
- x: 5.00001,
234
- y: 3
235
- };
236
- var nearSameX = {
237
- x: 5.00002,
238
- y: 7
239
- };
240
- var mark = {
241
- type: 'parabola',
242
- root: root,
243
- edge: undefined,
244
- closed: false,
245
- building: true
246
- };
247
- var result = parabolaTool.addPoint(nearSameX, mark);
248
- expect(result).toBe(mark);
249
- });
250
- it('handles points within rounding tolerance on same y-axis', function () {
251
- var root = {
252
- x: 3,
253
- y: 5.00001
254
- };
255
- var nearSameY = {
256
- x: 7,
257
- y: 5.00002
258
- };
259
- var mark = {
260
- type: 'parabola',
261
- root: root,
262
- edge: undefined,
263
- closed: false,
264
- building: true
265
- };
266
- var result = parabolaTool.addPoint(nearSameY, mark);
267
- expect(result).toBe(mark);
268
- });
269
- });
270
- describe('error handling', function () {
271
- it('throws error when mark exists but has no root', function () {
272
- var mark = {
273
- type: 'parabola',
274
- edge: undefined,
275
- closed: false,
276
- building: true
277
- };
278
- expect(function () {
279
- parabolaTool.addPoint({
280
- x: 1,
281
- y: 2
282
- }, mark);
283
- }).toThrow('no root - should never happen');
284
- });
285
- it('throws error when mark has null root', function () {
286
- var mark = {
287
- type: 'parabola',
288
- root: null,
289
- edge: undefined,
290
- closed: false,
291
- building: true
292
- };
293
- expect(function () {
294
- parabolaTool.addPoint({
295
- x: 1,
296
- y: 2
297
- }, mark);
298
- }).toThrow('no root - should never happen');
299
- });
300
- it('throws error when mark has undefined root', function () {
301
- var mark = {
302
- type: 'parabola',
303
- root: undefined,
304
- edge: undefined,
305
- closed: false,
306
- building: true
307
- };
308
- expect(function () {
309
- parabolaTool.addPoint({
310
- x: 1,
311
- y: 2
312
- }, mark);
313
- }).toThrow('no root - should never happen');
314
- });
315
- });
316
- describe('coordinates', function () {
317
- it('handles negative coordinates', function () {
318
- var root = {
319
- x: -3,
320
- y: -5
321
- };
322
- var result = parabolaTool.addPoint(root);
323
- expect(result.root).toEqual(root);
324
- });
325
- it('handles zero coordinates', function () {
326
- var root = {
327
- x: 0,
328
- y: 0
329
- };
330
- var result = parabolaTool.addPoint(root);
331
- expect(result.root).toEqual(root);
332
- });
333
- it('handles decimal coordinates', function () {
334
- var root = {
335
- x: 1.5,
336
- y: 2.75
337
- };
338
- var result = parabolaTool.addPoint(root);
339
- expect(result.root).toEqual(root);
340
- });
341
- it('creates parabola with negative root and positive edge', function () {
342
- var mark = parabolaTool.addPoint({
343
- x: -2,
344
- y: -3
345
- });
346
- var result = parabolaTool.addPoint({
347
- x: 1,
348
- y: 2
349
- }, mark);
350
- expect(result.root).toEqual({
351
- x: -2,
352
- y: -3
353
- });
354
- expect(result.edge).toEqual({
355
- x: 1,
356
- y: 2
357
- });
358
- });
359
- });
360
- });
361
- describe('complete', function () {
362
- it('marks parabola as complete and closed', function () {
363
- var mark = {
364
- type: 'parabola',
365
- root: {
366
- x: 1,
367
- y: 2
368
- },
369
- edge: {
370
- x: 3,
371
- y: 4
372
- },
373
- closed: false,
374
- building: true
375
- };
376
- var result = parabolaTool.complete(null, mark);
377
- expect(result).toEqual({
378
- type: 'parabola',
379
- root: mark.root,
380
- edge: mark.edge,
381
- closed: true,
382
- building: false
383
- });
384
- });
385
- it('sets building to false', function () {
386
- var mark = {
387
- type: 'parabola',
388
- root: {
389
- x: 0,
390
- y: 0
391
- },
392
- edge: undefined,
393
- closed: false,
394
- building: true
395
- };
396
- var result = parabolaTool.complete(null, mark);
397
- expect(result.building).toBe(false);
398
- });
399
- it('sets closed to true', function () {
400
- var mark = {
401
- type: 'parabola',
402
- root: {
403
- x: 0,
404
- y: 0
405
- },
406
- edge: undefined,
407
- closed: false,
408
- building: true
409
- };
410
- var result = parabolaTool.complete(null, mark);
411
- expect(result.closed).toBe(true);
412
- });
413
- it('preserves all mark properties', function () {
414
- var mark = {
415
- type: 'parabola',
416
- root: {
417
- x: 1,
418
- y: 2
419
- },
420
- edge: {
421
- x: 3,
422
- y: 4
423
- },
424
- closed: false,
425
- building: true,
426
- label: 'Test Parabola',
427
- color: 'green',
428
- id: 456
429
- };
430
- var result = parabolaTool.complete(null, mark);
431
- expect(result.label).toBe('Test Parabola');
432
- expect(result.color).toBe('green');
433
- expect(result.id).toBe(456);
434
- });
435
- it('can force complete parabola with only root', function () {
436
- var mark = {
437
- type: 'parabola',
438
- root: {
439
- x: 1,
440
- y: 2
441
- },
442
- edge: undefined,
443
- closed: false,
444
- building: true
445
- };
446
- var result = parabolaTool.complete(null, mark);
447
- expect(result.closed).toBe(true);
448
- expect(result.building).toBe(false);
449
- expect(result.edge).toBeUndefined();
450
- });
451
- });
452
- describe('integration scenarios', function () {
453
- it('creates complete parabola with two clicks', function () {
454
- var root = {
455
- x: 0,
456
- y: 0
457
- };
458
- var edge = {
459
- x: 2,
460
- y: 4
461
- };
462
- var mark = parabolaTool.addPoint(root);
463
- expect(mark.building).toBe(true);
464
- expect(mark.closed).toBe(false);
465
- mark = parabolaTool.addPoint(edge, mark);
466
- expect(mark.root).toEqual(root);
467
- expect(mark.edge).toEqual(edge);
468
- expect(mark.building).toBe(false);
469
- expect(mark.closed).toBe(true);
470
- });
471
- it('ignores clicks on same axis during construction', function () {
472
- var root = {
473
- x: 0,
474
- y: 0
475
- };
476
- var mark = parabolaTool.addPoint(root);
477
-
478
- // Try to add point on same x-axis
479
- var sameXMark = parabolaTool.addPoint({
480
- x: 0,
481
- y: 5
482
- }, mark);
483
- expect(sameXMark).toBe(mark);
484
- expect(sameXMark.edge).toBeUndefined();
485
-
486
- // Try to add point on same y-axis
487
- var sameYMark = parabolaTool.addPoint({
488
- x: 5,
489
- y: 0
490
- }, mark);
491
- expect(sameYMark).toBe(mark);
492
- expect(sameYMark.edge).toBeUndefined();
493
-
494
- // Add valid edge point
495
- var finalMark = parabolaTool.addPoint({
496
- x: 2,
497
- y: 4
498
- }, mark);
499
- expect(finalMark.edge).toEqual({
500
- x: 2,
501
- y: 4
502
- });
503
- expect(finalMark.closed).toBe(true);
504
- });
505
- it('ignores duplicate clicks on root', function () {
506
- var root = {
507
- x: 1,
508
- y: 2
509
- };
510
- var mark = parabolaTool.addPoint(root);
511
-
512
- // Click root again
513
- var sameMark = parabolaTool.addPoint(root, mark);
514
- expect(sameMark).toBe(mark);
515
- expect(sameMark.edge).toBeUndefined();
516
- });
517
- it('handles typical parabola in different quadrants', function () {
518
- // Quadrant 1
519
- var mark1 = parabolaTool.addPoint({
520
- x: 1,
521
- y: 1
522
- });
523
- mark1 = parabolaTool.addPoint({
524
- x: 2,
525
- y: 3
526
- }, mark1);
527
- expect(mark1.closed).toBe(true);
528
-
529
- // Quadrant 2
530
- var mark2 = parabolaTool.addPoint({
531
- x: -1,
532
- y: 1
533
- });
534
- mark2 = parabolaTool.addPoint({
535
- x: -2,
536
- y: 3
537
- }, mark2);
538
- expect(mark2.closed).toBe(true);
539
-
540
- // Quadrant 3
541
- var mark3 = parabolaTool.addPoint({
542
- x: -1,
543
- y: -1
544
- });
545
- mark3 = parabolaTool.addPoint({
546
- x: -2,
547
- y: -3
548
- }, mark3);
549
- expect(mark3.closed).toBe(true);
550
-
551
- // Quadrant 4
552
- var mark4 = parabolaTool.addPoint({
553
- x: 1,
554
- y: -1
555
- });
556
- mark4 = parabolaTool.addPoint({
557
- x: 2,
558
- y: -3
559
- }, mark4);
560
- expect(mark4.closed).toBe(true);
561
- });
562
- });
563
- });
564
- //# sourceMappingURL=index.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.test.js","names":["_index","require","_component","_interopRequireDefault","describe","parabolaTool","beforeEach","tool","it","expect","toHaveProperty","Parabola","type","toBe","Component","point","x","y","result","addPoint","toEqual","root","edge","undefined","closed","building","toBeUndefined","mark","label","color","nearRoot","sameXPoint","sameYPoint","not","nearSameX","nearSameY","toThrow","complete","id","sameXMark","sameYMark","finalMark","sameMark","mark1","mark2","mark3","mark4"],"sources":["../../../../src/tools/parabola/__tests__/index.test.js"],"sourcesContent":["import { tool } from '../index';\nimport Parabola from '../component';\n\ndescribe('parabola tool', () => {\n let parabolaTool;\n\n beforeEach(() => {\n parabolaTool = tool();\n });\n\n describe('tool structure', () => {\n it('returns an object with required properties', () => {\n expect(parabolaTool).toHaveProperty('type', 'parabola');\n expect(parabolaTool).toHaveProperty('Component', Parabola);\n expect(parabolaTool).toHaveProperty('complete');\n expect(parabolaTool).toHaveProperty('addPoint');\n });\n\n it('has correct type', () => {\n expect(parabolaTool.type).toBe('parabola');\n });\n\n it('uses Parabola component', () => {\n expect(parabolaTool.Component).toBe(Parabola);\n });\n });\n\n describe('addPoint', () => {\n describe('no existing mark', () => {\n it('creates new parabola with root point', () => {\n const point = { x: 1, y: 2 };\n const result = parabolaTool.addPoint(point, null);\n\n expect(result).toEqual({\n type: 'parabola',\n root: point,\n edge: undefined,\n closed: false,\n building: true,\n });\n });\n\n it('creates parabola with undefined argument', () => {\n const point = { x: 3, y: 4 };\n const result = parabolaTool.addPoint(point);\n\n expect(result).toEqual({\n type: 'parabola',\n root: point,\n edge: undefined,\n closed: false,\n building: true,\n });\n });\n\n it('marks parabola as building', () => {\n const result = parabolaTool.addPoint({ x: 0, y: 0 });\n\n expect(result.building).toBe(true);\n expect(result.closed).toBe(false);\n });\n\n it('initializes with undefined edge', () => {\n const result = parabolaTool.addPoint({ x: 1, y: 1 });\n\n expect(result.edge).toBeUndefined();\n });\n });\n\n describe('existing mark with root', () => {\n it('adds edge point to complete parabola', () => {\n const root = { x: 1, y: 2 };\n const edge = { x: 3, y: 4 };\n const mark = {\n type: 'parabola',\n root,\n edge: undefined,\n closed: false,\n building: true,\n };\n\n const result = parabolaTool.addPoint(edge, mark);\n\n expect(result).toEqual({\n type: 'parabola',\n root,\n edge,\n closed: true,\n building: false,\n });\n });\n\n it('closes parabola when edge is added', () => {\n const mark = {\n type: 'parabola',\n root: { x: 0, y: 0 },\n edge: undefined,\n closed: false,\n building: true,\n };\n\n const result = parabolaTool.addPoint({ x: 1, y: 1 }, mark);\n\n expect(result.closed).toBe(true);\n expect(result.building).toBe(false);\n });\n\n it('preserves other mark properties when adding edge', () => {\n const mark = {\n type: 'parabola',\n root: { x: 1, y: 2 },\n edge: undefined,\n closed: false,\n building: true,\n label: 'My Parabola',\n color: 'blue',\n };\n\n const result = parabolaTool.addPoint({ x: 3, y: 4 }, mark);\n\n expect(result.label).toBe('My Parabola');\n expect(result.color).toBe('blue');\n });\n });\n\n describe('duplicate points', () => {\n it('returns same mark when clicking root point again', () => {\n const root = { x: 1, y: 2 };\n const mark = {\n type: 'parabola',\n root,\n edge: undefined,\n closed: false,\n building: true,\n };\n\n const result = parabolaTool.addPoint(root, mark);\n\n expect(result).toBe(mark);\n });\n\n it('returns same mark when clicking near root point', () => {\n const root = { x: 1.00001, y: 2.00001 };\n const nearRoot = { x: 1.00002, y: 2.00002 };\n const mark = {\n type: 'parabola',\n root,\n edge: undefined,\n closed: false,\n building: true,\n };\n\n const result = parabolaTool.addPoint(nearRoot, mark);\n\n expect(result).toBe(mark);\n });\n });\n\n describe('same axes constraint', () => {\n it('returns same mark when clicking on same x-axis as root', () => {\n const root = { x: 5, y: 3 };\n const sameXPoint = { x: 5, y: 7 };\n const mark = {\n type: 'parabola',\n root,\n edge: undefined,\n closed: false,\n building: true,\n };\n\n const result = parabolaTool.addPoint(sameXPoint, mark);\n\n expect(result).toBe(mark);\n });\n\n it('returns same mark when clicking on same y-axis as root', () => {\n const root = { x: 3, y: 5 };\n const sameYPoint = { x: 7, y: 5 };\n const mark = {\n type: 'parabola',\n root,\n edge: undefined,\n closed: false,\n building: true,\n };\n\n const result = parabolaTool.addPoint(sameYPoint, mark);\n\n expect(result).toBe(mark);\n });\n\n it('allows edge point on different axes', () => {\n const root = { x: 3, y: 5 };\n const edge = { x: 7, y: 9 };\n const mark = {\n type: 'parabola',\n root,\n edge: undefined,\n closed: false,\n building: true,\n };\n\n const result = parabolaTool.addPoint(edge, mark);\n\n expect(result).not.toBe(mark);\n expect(result.edge).toEqual(edge);\n });\n\n it('handles points within rounding tolerance on same x-axis', () => {\n const root = { x: 5.00001, y: 3 };\n const nearSameX = { x: 5.00002, y: 7 };\n const mark = {\n type: 'parabola',\n root,\n edge: undefined,\n closed: false,\n building: true,\n };\n\n const result = parabolaTool.addPoint(nearSameX, mark);\n\n expect(result).toBe(mark);\n });\n\n it('handles points within rounding tolerance on same y-axis', () => {\n const root = { x: 3, y: 5.00001 };\n const nearSameY = { x: 7, y: 5.00002 };\n const mark = {\n type: 'parabola',\n root,\n edge: undefined,\n closed: false,\n building: true,\n };\n\n const result = parabolaTool.addPoint(nearSameY, mark);\n\n expect(result).toBe(mark);\n });\n });\n\n describe('error handling', () => {\n it('throws error when mark exists but has no root', () => {\n const mark = {\n type: 'parabola',\n edge: undefined,\n closed: false,\n building: true,\n };\n\n expect(() => {\n parabolaTool.addPoint({ x: 1, y: 2 }, mark);\n }).toThrow('no root - should never happen');\n });\n\n it('throws error when mark has null root', () => {\n const mark = {\n type: 'parabola',\n root: null,\n edge: undefined,\n closed: false,\n building: true,\n };\n\n expect(() => {\n parabolaTool.addPoint({ x: 1, y: 2 }, mark);\n }).toThrow('no root - should never happen');\n });\n\n it('throws error when mark has undefined root', () => {\n const mark = {\n type: 'parabola',\n root: undefined,\n edge: undefined,\n closed: false,\n building: true,\n };\n\n expect(() => {\n parabolaTool.addPoint({ x: 1, y: 2 }, mark);\n }).toThrow('no root - should never happen');\n });\n });\n\n describe('coordinates', () => {\n it('handles negative coordinates', () => {\n const root = { x: -3, y: -5 };\n const result = parabolaTool.addPoint(root);\n\n expect(result.root).toEqual(root);\n });\n\n it('handles zero coordinates', () => {\n const root = { x: 0, y: 0 };\n const result = parabolaTool.addPoint(root);\n\n expect(result.root).toEqual(root);\n });\n\n it('handles decimal coordinates', () => {\n const root = { x: 1.5, y: 2.75 };\n const result = parabolaTool.addPoint(root);\n\n expect(result.root).toEqual(root);\n });\n\n it('creates parabola with negative root and positive edge', () => {\n const mark = parabolaTool.addPoint({ x: -2, y: -3 });\n const result = parabolaTool.addPoint({ x: 1, y: 2 }, mark);\n\n expect(result.root).toEqual({ x: -2, y: -3 });\n expect(result.edge).toEqual({ x: 1, y: 2 });\n });\n });\n });\n\n describe('complete', () => {\n it('marks parabola as complete and closed', () => {\n const mark = {\n type: 'parabola',\n root: { x: 1, y: 2 },\n edge: { x: 3, y: 4 },\n closed: false,\n building: true,\n };\n\n const result = parabolaTool.complete(null, mark);\n\n expect(result).toEqual({\n type: 'parabola',\n root: mark.root,\n edge: mark.edge,\n closed: true,\n building: false,\n });\n });\n\n it('sets building to false', () => {\n const mark = {\n type: 'parabola',\n root: { x: 0, y: 0 },\n edge: undefined,\n closed: false,\n building: true,\n };\n\n const result = parabolaTool.complete(null, mark);\n\n expect(result.building).toBe(false);\n });\n\n it('sets closed to true', () => {\n const mark = {\n type: 'parabola',\n root: { x: 0, y: 0 },\n edge: undefined,\n closed: false,\n building: true,\n };\n\n const result = parabolaTool.complete(null, mark);\n\n expect(result.closed).toBe(true);\n });\n\n it('preserves all mark properties', () => {\n const mark = {\n type: 'parabola',\n root: { x: 1, y: 2 },\n edge: { x: 3, y: 4 },\n closed: false,\n building: true,\n label: 'Test Parabola',\n color: 'green',\n id: 456,\n };\n\n const result = parabolaTool.complete(null, mark);\n\n expect(result.label).toBe('Test Parabola');\n expect(result.color).toBe('green');\n expect(result.id).toBe(456);\n });\n\n it('can force complete parabola with only root', () => {\n const mark = {\n type: 'parabola',\n root: { x: 1, y: 2 },\n edge: undefined,\n closed: false,\n building: true,\n };\n\n const result = parabolaTool.complete(null, mark);\n\n expect(result.closed).toBe(true);\n expect(result.building).toBe(false);\n expect(result.edge).toBeUndefined();\n });\n });\n\n describe('integration scenarios', () => {\n it('creates complete parabola with two clicks', () => {\n const root = { x: 0, y: 0 };\n const edge = { x: 2, y: 4 };\n\n let mark = parabolaTool.addPoint(root);\n expect(mark.building).toBe(true);\n expect(mark.closed).toBe(false);\n\n mark = parabolaTool.addPoint(edge, mark);\n expect(mark.root).toEqual(root);\n expect(mark.edge).toEqual(edge);\n expect(mark.building).toBe(false);\n expect(mark.closed).toBe(true);\n });\n\n it('ignores clicks on same axis during construction', () => {\n const root = { x: 0, y: 0 };\n let mark = parabolaTool.addPoint(root);\n\n // Try to add point on same x-axis\n const sameXMark = parabolaTool.addPoint({ x: 0, y: 5 }, mark);\n expect(sameXMark).toBe(mark);\n expect(sameXMark.edge).toBeUndefined();\n\n // Try to add point on same y-axis\n const sameYMark = parabolaTool.addPoint({ x: 5, y: 0 }, mark);\n expect(sameYMark).toBe(mark);\n expect(sameYMark.edge).toBeUndefined();\n\n // Add valid edge point\n const finalMark = parabolaTool.addPoint({ x: 2, y: 4 }, mark);\n expect(finalMark.edge).toEqual({ x: 2, y: 4 });\n expect(finalMark.closed).toBe(true);\n });\n\n it('ignores duplicate clicks on root', () => {\n const root = { x: 1, y: 2 };\n let mark = parabolaTool.addPoint(root);\n\n // Click root again\n const sameMark = parabolaTool.addPoint(root, mark);\n expect(sameMark).toBe(mark);\n expect(sameMark.edge).toBeUndefined();\n });\n\n it('handles typical parabola in different quadrants', () => {\n // Quadrant 1\n let mark1 = parabolaTool.addPoint({ x: 1, y: 1 });\n mark1 = parabolaTool.addPoint({ x: 2, y: 3 }, mark1);\n expect(mark1.closed).toBe(true);\n\n // Quadrant 2\n let mark2 = parabolaTool.addPoint({ x: -1, y: 1 });\n mark2 = parabolaTool.addPoint({ x: -2, y: 3 }, mark2);\n expect(mark2.closed).toBe(true);\n\n // Quadrant 3\n let mark3 = parabolaTool.addPoint({ x: -1, y: -1 });\n mark3 = parabolaTool.addPoint({ x: -2, y: -3 }, mark3);\n expect(mark3.closed).toBe(true);\n\n // Quadrant 4\n let mark4 = parabolaTool.addPoint({ x: 1, y: -1 });\n mark4 = parabolaTool.addPoint({ x: 2, y: -3 }, mark4);\n expect(mark4.closed).toBe(true);\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:parabola');
12
- var Parabola = (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.parabolaFromTwoPoints)(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)(Parabola);
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","Parabola","withRootEdge","props","root","edge","graphProps","domain","range","dataPoints","x","buildDataPoints","parabolaFromTwoPoints","Component","rootEdgeComponent","_default","exports"],"sources":["../../../src/tools/parabola/component.jsx"],"sourcesContent":["import debug from 'debug';\nimport { buildDataPoints, parabolaFromTwoPoints } from '@pie-lib/graphing-utils';\nimport { rootEdgeComponent, withRootEdge } from '../shared/line/with-root-edge';\n\nconst log = debug('pie-lib:graphing:parabola');\n\nconst Parabola = 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, parabolaFromTwoPoints(root, edge), true);\n\n log('dataPoints:', dataPoints);\n\n return { root: props.root, edge: props.edge, dataPoints };\n});\n\nconst Component = rootEdgeComponent(Parabola);\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,2BAA2B,CAAC;AAE9C,IAAMC,QAAQ,GAAG,IAAAC,0BAAY,EAAC,UAACC,KAAK,EAAK;EACvC,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,oCAAqB,EAACR,IAAI,EAAEC,IAAI,CAAC,EAAE,IAAI,CAAC;EAEzFN,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,QAAQ,CAAC;AAAC,IAAAc,QAAA,GAAAC,OAAA,cAE/BH,SAAS","ignoreList":[]}