@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
@@ -0,0 +1,332 @@
1
+ import { equalPoints as e, getMiddleOfTwoPoints as t, sameAxes as n, stripEmptyLabel as r } from "../../../utils.js";
2
+ import { correct as i, disabled as a, disabledSecondary as o, incorrect as s, missing as c } from "../styles.js";
3
+ import { BasePoint as l } from "../point/index.js";
4
+ import { MarkLabel as u } from "../../../mark-label.js";
5
+ import d from "react";
6
+ import f from "prop-types";
7
+ import { cloneDeep as p, isEmpty as m, isEqual as h } from "@pie-element/shared-lodash";
8
+ import { gridDraggable as g, trig as _, types as v, utils as y } from "@pie-lib/plot";
9
+ import { jsx as b, jsxs as x } from "react/jsx-runtime";
10
+ import { styled as S } from "@mui/material/styles";
11
+ import { color as C } from "@pie-lib/render-ui";
12
+ import w from "react-dom";
13
+ //#region src/tools/shared/line/index.tsx
14
+ var T = S("g")(({ disabled: e, correctness: t }) => ({
15
+ "& line:not(.hit-area)": {
16
+ fill: "transparent",
17
+ stroke: C.defaults.BLACK,
18
+ strokeWidth: 3,
19
+ transition: "stroke 200ms ease-in, stroke-width 200ms ease-in",
20
+ "&:hover": {
21
+ strokeWidth: 6,
22
+ stroke: C.defaults.PRIMARY_DARK
23
+ }
24
+ },
25
+ ...e && { "& line:not(.hit-area)": {
26
+ ...o("stroke"),
27
+ strokeWidth: 2
28
+ } },
29
+ ...t === "correct" && { "& line:not(.hit-area)": { ...i("stroke") } },
30
+ ...t === "incorrect" && { "& line:not(.hit-area)": { ...s("stroke") } },
31
+ ...t === "missing" && { "& line:not(.hit-area)": {
32
+ ...c("stroke"),
33
+ strokeWidth: 1,
34
+ strokeDasharray: "4 3"
35
+ } }
36
+ })), E = (t, n) => () => ({
37
+ type: t,
38
+ Component: n,
39
+ addPoint: (n, r) => r && e(r.root, n) ? r : r ? e(n, r.from) ? { ...r } : {
40
+ ...r,
41
+ building: !1,
42
+ to: n
43
+ } : {
44
+ type: t,
45
+ building: !0,
46
+ from: n
47
+ }
48
+ }), D = (e) => class extends d.Component {
49
+ static propTypes = {
50
+ ...v.ToolPropTypeFields,
51
+ graphProps: v.GraphPropsType.isRequired,
52
+ limitLabeling: f.bool,
53
+ changeMarkProps: f.func,
54
+ disabled: f.bool,
55
+ from: v.PointType,
56
+ to: v.PointType,
57
+ labelModeEnabled: f.bool,
58
+ onClick: f.func
59
+ };
60
+ constructor(e) {
61
+ super(e), this.state = {};
62
+ }
63
+ startDrag = () => {
64
+ let { onDragStart: e } = this.props;
65
+ this.setState({ mark: { ...this.props.mark } }), e && e();
66
+ };
67
+ stopDrag = () => {
68
+ let { onChange: e, mark: t, onDragStop: r } = this.props, i = { ...this.state.mark };
69
+ this.setState({ mark: void 0 }, () => {
70
+ let { type: a } = i, o = a && (a === "parabola" || a === "sine" || a === "absolute" || a === "exponential") && n(i.from, i.to);
71
+ !o && a && a === "exponential" && i.from && i.to && (o = i.from.y === 0 || i.to.y === 0 || i.from.y * i.to.y < 0), !h(t, i) && !o && e(t, i), r && r();
72
+ });
73
+ };
74
+ changeMark = ({ from: e, to: t, middle: n }) => {
75
+ let r = {
76
+ ...this.state.mark,
77
+ from: e,
78
+ to: t
79
+ };
80
+ n && (r = {
81
+ ...r,
82
+ middle: n
83
+ }), this.setState({ mark: r });
84
+ };
85
+ changeMarkProps = ({ from: e, to: t, middle: n }) => {
86
+ let { onChange: r, mark: i } = this.props, a = {
87
+ ...i,
88
+ ...this.state.mark
89
+ };
90
+ e && (a = {
91
+ ...a,
92
+ from: e
93
+ }), t && (a = {
94
+ ...a,
95
+ to: t
96
+ }), n && (a = {
97
+ ...a,
98
+ middle: n
99
+ }), h(i, a) || r(i, a);
100
+ };
101
+ render() {
102
+ let { graphProps: t, onClick: n, labelNode: r, labelModeEnabled: i, coordinatesOnHover: a, limitLabeling: o } = this.props, s = this.state.mark ? this.state.mark : this.props.mark, c = p(s.from), l = p(s.to), u = p(s.middle);
103
+ return c && s.isBackground && (c.disabled = !0), l && s.isBackground && (l.disabled = !0), u && s.isBackground && (u.disabled = !0), /* @__PURE__ */ b(e, {
104
+ disabled: s.disabled,
105
+ coordinatesOnHover: a,
106
+ correctness: s.correctness,
107
+ from: c,
108
+ to: l,
109
+ middle: u,
110
+ graphProps: t,
111
+ onChange: this.changeMark,
112
+ changeMarkProps: this.changeMarkProps,
113
+ onClick: n,
114
+ onDragStart: this.startDrag,
115
+ onDragStop: this.stopDrag,
116
+ labelNode: r,
117
+ labelModeEnabled: i,
118
+ limitLabeling: o
119
+ });
120
+ }
121
+ }, O = () => ({
122
+ bounds: (e, { domain: t, range: n }) => {
123
+ let r = y.lineToArea(e.from, e.to);
124
+ return y.bounds(r, t, n);
125
+ },
126
+ anchorPoint: (e) => {
127
+ let { from: t } = e;
128
+ return t;
129
+ },
130
+ fromDelta: (e, t) => {
131
+ let { from: n, to: r } = e;
132
+ return {
133
+ from: y.point(n).add(y.point(t)),
134
+ to: y.point(r).add(y.point(t))
135
+ };
136
+ }
137
+ }), k = (n, i) => {
138
+ let a = g(O())(n), o = i && i.from ? i.from : l, s = i && i.to ? i.to : l;
139
+ class c extends d.Component {
140
+ static propTypes = {
141
+ coordinatesOnHover: f.bool,
142
+ graphProps: v.GraphPropsType,
143
+ from: v.PointType,
144
+ to: v.PointType,
145
+ middle: v.PointType,
146
+ onChange: f.func,
147
+ onDragStart: f.func,
148
+ onDragStop: f.func,
149
+ onClick: f.func,
150
+ correctness: f.string,
151
+ disabled: f.bool,
152
+ limitLabeling: f.bool,
153
+ changeMarkProps: f.func,
154
+ labelModeEnabled: f.bool,
155
+ labelNode: f.object
156
+ };
157
+ state = { editingLabel: null };
158
+ componentDidUpdate(e) {
159
+ e.labelModeEnabled && !this.props.labelModeEnabled && this.state.editingLabel !== null && this.setState({ editingLabel: null });
160
+ }
161
+ onChangePoint = (n) => {
162
+ let { middle: r, onChange: i } = this.props, { from: a, to: o } = n;
163
+ e(a, o) || (r && (n.middle = {
164
+ ...r,
165
+ ...t(a, o)
166
+ }), i(n));
167
+ };
168
+ dragComp = ({ from: e, to: n }) => {
169
+ let { from: r, to: i, onChange: a, middle: o } = this.props;
170
+ r.label && (e.label = r.label), i.label && (n.label = i.label);
171
+ let s = {
172
+ from: e,
173
+ to: n
174
+ };
175
+ o && (s.middle = {
176
+ ...o,
177
+ ...t(e, n)
178
+ }), a(s);
179
+ };
180
+ dragFrom = (t) => {
181
+ let { from: n, to: r } = this.props;
182
+ n.label && (t.label = n.label), e(t, r) || this.onChangePoint({
183
+ from: t,
184
+ to: r
185
+ });
186
+ };
187
+ dragTo = (t) => {
188
+ let { from: n, to: r } = this.props;
189
+ r.label && (t.label = r.label), e(n, t) || this.onChangePoint({
190
+ from: n,
191
+ to: t
192
+ });
193
+ };
194
+ labelChange = (e, t) => {
195
+ let { changeMarkProps: n } = this.props, r = { ...e };
196
+ (!e.label || m(e.label)) && delete r.label, n({ [t]: r });
197
+ };
198
+ stopEditingLabel = () => {
199
+ this.state.editingLabel !== null && this.setState({ editingLabel: null });
200
+ };
201
+ clickPoint = (e, n, i) => {
202
+ let { changeMarkProps: a, disabled: o, from: s, to: c, middle: l, labelModeEnabled: u, limitLabeling: d, onClick: f } = this.props;
203
+ if (!u) {
204
+ f(e || i);
205
+ return;
206
+ }
207
+ o || d || (n === "middle" && !e && s && c && (e = {
208
+ ...e,
209
+ ...t(s, c)
210
+ }), a({
211
+ from: r(s),
212
+ to: r(c),
213
+ middle: r(l),
214
+ [n]: {
215
+ label: "",
216
+ ...e
217
+ }
218
+ }), this.setState({ editingLabel: n }));
219
+ };
220
+ input = {};
221
+ render() {
222
+ let { coordinatesOnHover: e, graphProps: t, onDragStart: n, onDragStop: r, from: i, to: c, middle: l, disabled: d, correctness: f, onClick: p, labelNode: m, labelModeEnabled: h } = this.props, { editingLabel: g } = this.state, v = {
223
+ graphProps: t,
224
+ onDragStart: n,
225
+ onDragStop: r,
226
+ disabled: d,
227
+ correctness: f,
228
+ onClick: p
229
+ }, y = c ? _.toDegrees(_.angle(i, c)) : 0, S = null, C = null, E = null;
230
+ return m && (i && Object.prototype.hasOwnProperty.call(i, "label") && (S = w.createPortal(/* @__PURE__ */ b(u, {
231
+ inputRef: (e) => this.input.from = e,
232
+ autoFocus: g === "from",
233
+ disabled: !h,
234
+ mark: i,
235
+ graphProps: t,
236
+ onBlur: this.stopEditingLabel,
237
+ onChange: (e) => this.labelChange({
238
+ ...i,
239
+ label: e
240
+ }, "from")
241
+ }), m)), c && Object.prototype.hasOwnProperty.call(c, "label") && (C = w.createPortal(/* @__PURE__ */ b(u, {
242
+ inputRef: (e) => this.input.to = e,
243
+ autoFocus: g === "to",
244
+ disabled: !h,
245
+ mark: c,
246
+ graphProps: t,
247
+ onBlur: this.stopEditingLabel,
248
+ onChange: (e) => this.labelChange({
249
+ ...c,
250
+ label: e
251
+ }, "to")
252
+ }), m)), l && Object.prototype.hasOwnProperty.call(l, "label") && (E = w.createPortal(/* @__PURE__ */ b(u, {
253
+ inputRef: (e) => this.input.middle = e,
254
+ autoFocus: g === "middle",
255
+ disabled: !h,
256
+ mark: l,
257
+ graphProps: t,
258
+ onBlur: this.stopEditingLabel,
259
+ onChange: (e) => this.labelChange({
260
+ ...l,
261
+ label: e
262
+ }, "middle")
263
+ }), m))), /* @__PURE__ */ x(T, {
264
+ disabled: d,
265
+ correctness: f,
266
+ children: [
267
+ c && /* @__PURE__ */ b(a, {
268
+ from: i,
269
+ to: c,
270
+ middle: l,
271
+ onDrag: this.dragComp,
272
+ ...v,
273
+ onClick: (e) => this.clickPoint(l, "middle", e)
274
+ }),
275
+ E,
276
+ /* @__PURE__ */ b(o, {
277
+ x: i.x,
278
+ y: i.y,
279
+ labelNode: m,
280
+ coordinatesOnHover: e,
281
+ onDrag: this.dragFrom,
282
+ ...v,
283
+ onClick: (e) => this.clickPoint(i, "from", e)
284
+ }),
285
+ S,
286
+ c && /* @__PURE__ */ b(s, {
287
+ x: c.x,
288
+ y: c.y,
289
+ angle: y,
290
+ labelNode: m,
291
+ coordinatesOnHover: e,
292
+ onDrag: this.dragTo,
293
+ ...v,
294
+ onClick: (e) => this.clickPoint(c, "to", e)
295
+ }),
296
+ C
297
+ ]
298
+ });
299
+ }
300
+ }
301
+ return c;
302
+ }, A = {
303
+ line: () => ({
304
+ fill: "transparent",
305
+ stroke: C.defaults.BLACK,
306
+ strokeWidth: 3,
307
+ transition: "stroke 200ms ease-in, stroke-width 200ms ease-in",
308
+ "&:hover": {
309
+ strokeWidth: 6,
310
+ stroke: C.defaults.PRIMARY_DARK
311
+ }
312
+ }),
313
+ arrow: () => ({ fill: C.defaults.BLACK }),
314
+ disabledArrow: () => ({ ...o() }),
315
+ disabledSecondary: () => ({
316
+ ...o("stroke"),
317
+ strokeWidth: 2
318
+ }),
319
+ disabled: () => ({
320
+ ...a("stroke"),
321
+ strokeWidth: 2
322
+ }),
323
+ correct: (e, t) => ({ ...i(t) }),
324
+ incorrect: (e, t) => ({ ...s(t) }),
325
+ missing: (e, t) => ({
326
+ ...c(t),
327
+ strokeWidth: 1,
328
+ strokeDasharray: "4 3"
329
+ })
330
+ };
331
+ //#endregion
332
+ export { k as lineBase, E as lineTool, D as lineToolComponent, A as styles };
@@ -0,0 +1,57 @@
1
+ /**
2
+ * @synced-from pie-lib/packages/graphing/src/tools/shared/line/line-path.jsx
3
+ * @auto-generated
4
+ *
5
+ * This file is automatically synced from pie-elements and converted to TypeScript.
6
+ * Manual edits will be overwritten on next sync.
7
+ * To make changes, edit the upstream JavaScript file and run sync again.
8
+ */
9
+ import React from 'react';
10
+ import PropTypes from 'prop-types';
11
+ export declare class RawLinePath extends React.Component {
12
+ static propTypes: {
13
+ className: PropTypes.Requireable<string>;
14
+ data: PropTypes.Requireable<((number | null | undefined)[] | null | undefined)[]>;
15
+ graphProps: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
16
+ scale: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
17
+ x: PropTypes.Validator<(...args: any[]) => any>;
18
+ y: PropTypes.Validator<(...args: any[]) => any>;
19
+ }>>>;
20
+ snap: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
21
+ x: PropTypes.Validator<(...args: any[]) => any>;
22
+ y: PropTypes.Validator<(...args: any[]) => any>;
23
+ }>>>;
24
+ domain: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
25
+ min: PropTypes.Validator<number>;
26
+ max: PropTypes.Validator<number>;
27
+ step: PropTypes.Requireable<number>;
28
+ }>>>;
29
+ range: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
30
+ min: PropTypes.Validator<number>;
31
+ max: PropTypes.Validator<number>;
32
+ step: PropTypes.Requireable<number>;
33
+ }>>>;
34
+ size: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
35
+ width: PropTypes.Validator<number>;
36
+ height: PropTypes.Validator<number>;
37
+ }>>>;
38
+ }>>>;
39
+ disabled: PropTypes.Requireable<boolean>;
40
+ correctness: PropTypes.Requireable<string>;
41
+ from: PropTypes.Requireable<PropTypes.InferProps<{
42
+ x: PropTypes.Validator<number>;
43
+ y: PropTypes.Validator<number>;
44
+ }>>;
45
+ to: PropTypes.Requireable<PropTypes.InferProps<{
46
+ x: PropTypes.Validator<number>;
47
+ y: PropTypes.Validator<number>;
48
+ }>>;
49
+ isDragging: PropTypes.Requireable<boolean>;
50
+ };
51
+ static defaultProps: {
52
+ from: {};
53
+ to: {};
54
+ };
55
+ render(): React.JSX.Element;
56
+ }
57
+ export declare const LinePath: typeof RawLinePath;
@@ -0,0 +1,71 @@
1
+ import e from "../../../node_modules/.bun/@visx_shape@4.0.0_d84c32d47042070f/node_modules/@visx/shape/esm/shapes/LinePath.js";
2
+ import { correct as t, disabledSecondary as n, incorrect as r, missing as i } from "../styles.js";
3
+ import a from "react";
4
+ import o from "prop-types";
5
+ import { types as s } from "@pie-lib/plot";
6
+ import { jsx as c, jsxs as l } from "react/jsx-runtime";
7
+ import { styled as u } from "@mui/material/styles";
8
+ import { color as d } from "@pie-lib/render-ui";
9
+ //#region src/tools/shared/line/line-path.tsx
10
+ var f = () => ({
11
+ strokeWidth: 4,
12
+ stroke: d.defaults.BLACK
13
+ }), p = u(e)(({ disabled: e, correctness: a }) => ({
14
+ fill: "none",
15
+ strokeWidth: 3,
16
+ stroke: d.black(),
17
+ ...e && {
18
+ ...n("stroke"),
19
+ strokeWidth: 2
20
+ },
21
+ ...a === "correct" && t("stroke"),
22
+ ...a === "incorrect" && r("stroke"),
23
+ ...a === "missing" && {
24
+ ...i("stroke"),
25
+ strokeWidth: 1,
26
+ strokeDasharray: "4 3"
27
+ }
28
+ })), m = u(e)(({ theme: e, disabled: t, correctness: n, isDragging: r }) => ({
29
+ strokeWidth: 7,
30
+ fill: "none",
31
+ transition: "stroke-width 200ms ease-in, stroke 200ms ease-in",
32
+ stroke: "transparent",
33
+ pointerEvents: "stroke",
34
+ "&:hover": f(e),
35
+ ...r && f(e),
36
+ ...(t || n) && { pointerEvents: "none" }
37
+ })), h = class extends a.Component {
38
+ static propTypes = {
39
+ className: o.string,
40
+ data: o.arrayOf(o.arrayOf(o.number)),
41
+ graphProps: s.GraphPropsType.isRequired,
42
+ disabled: o.bool,
43
+ correctness: o.string,
44
+ from: s.PointType,
45
+ to: s.PointType,
46
+ isDragging: o.bool
47
+ };
48
+ static defaultProps = {
49
+ from: {},
50
+ to: {}
51
+ };
52
+ render() {
53
+ let { data: e, className: t, disabled: n, correctness: r, from: i, to: o, graphProps: s, isDragging: u, ...d } = this.props;
54
+ return /* @__PURE__ */ l(a.Fragment, { children: [/* @__PURE__ */ c(p, {
55
+ data: e,
56
+ className: t,
57
+ disabled: n,
58
+ correctness: r,
59
+ ...d
60
+ }), /* @__PURE__ */ c(m, {
61
+ data: e,
62
+ className: t,
63
+ isDragging: u,
64
+ disabled: n,
65
+ correctness: r,
66
+ ...d
67
+ })] });
68
+ }
69
+ }, g = h;
70
+ //#endregion
71
+ export { g as LinePath, h as RawLinePath };
@@ -0,0 +1,148 @@
1
+ /**
2
+ * @synced-from pie-lib/packages/graphing/src/tools/shared/line/with-root-edge.jsx
3
+ * @auto-generated
4
+ *
5
+ * This file is automatically synced from pie-elements and converted to TypeScript.
6
+ * Manual edits will be overwritten on next sync.
7
+ * To make changes, edit the upstream JavaScript file and run sync again.
8
+ */
9
+ import React from 'react';
10
+ import PropTypes from 'prop-types';
11
+ export declare const rootEdgeToFromToWrapper: (BaseComp: any) => {
12
+ (props: any): React.JSX.Element;
13
+ propTypes: {
14
+ onChange: PropTypes.Requireable<(...args: any[]) => any>;
15
+ mark: PropTypes.Requireable<object>;
16
+ };
17
+ };
18
+ export declare const rootEdgeComponent: (RootEdgeComp: any) => {
19
+ (props: any): React.JSX.Element;
20
+ propTypes: {
21
+ onChange: PropTypes.Requireable<(...args: any[]) => any>;
22
+ mark: PropTypes.Requireable<object>;
23
+ };
24
+ };
25
+ export declare const withRootEdge: (getPoints: any) => {
26
+ new (props: {}): {
27
+ state: {
28
+ editingLabel: null;
29
+ };
30
+ componentDidUpdate(prevProps: any): void;
31
+ onChangePoint: any;
32
+ dragComp: ({ from: draggedFrom, to: draggedTo }: {
33
+ from: any;
34
+ to: any;
35
+ }) => void;
36
+ dragFrom: any;
37
+ dragTo: any;
38
+ labelChange: any;
39
+ stopEditingLabel: any;
40
+ clickPoint: any;
41
+ input: {};
42
+ render(): React.JSX.Element;
43
+ context: unknown;
44
+ setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<{}>) => {} | Pick<{}, K> | null) | Pick<{}, K> | null, callback?: (() => void) | undefined): void;
45
+ forceUpdate(callback?: (() => void) | undefined): void;
46
+ readonly props: Readonly<{}>;
47
+ refs: {
48
+ [key: string]: React.ReactInstance;
49
+ };
50
+ componentDidMount?(): void;
51
+ shouldComponentUpdate?(nextProps: Readonly<{}>, nextState: Readonly<{}>, nextContext: any): boolean;
52
+ componentWillUnmount?(): void;
53
+ componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
54
+ getSnapshotBeforeUpdate?(prevProps: Readonly<{}>, prevState: Readonly<{}>): any;
55
+ componentWillMount?(): void;
56
+ UNSAFE_componentWillMount?(): void;
57
+ componentWillReceiveProps?(nextProps: Readonly<{}>, nextContext: any): void;
58
+ UNSAFE_componentWillReceiveProps?(nextProps: Readonly<{}>, nextContext: any): void;
59
+ componentWillUpdate?(nextProps: Readonly<{}>, nextState: Readonly<{}>, nextContext: any): void;
60
+ UNSAFE_componentWillUpdate?(nextProps: Readonly<{}>, nextState: Readonly<{}>, nextContext: any): void;
61
+ };
62
+ new (props: {}, context: any): {
63
+ state: {
64
+ editingLabel: null;
65
+ };
66
+ componentDidUpdate(prevProps: any): void;
67
+ onChangePoint: any;
68
+ dragComp: ({ from: draggedFrom, to: draggedTo }: {
69
+ from: any;
70
+ to: any;
71
+ }) => void;
72
+ dragFrom: any;
73
+ dragTo: any;
74
+ labelChange: any;
75
+ stopEditingLabel: any;
76
+ clickPoint: any;
77
+ input: {};
78
+ render(): React.JSX.Element;
79
+ context: unknown;
80
+ setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<{}>) => {} | Pick<{}, K> | null) | Pick<{}, K> | null, callback?: (() => void) | undefined): void;
81
+ forceUpdate(callback?: (() => void) | undefined): void;
82
+ readonly props: Readonly<{}>;
83
+ refs: {
84
+ [key: string]: React.ReactInstance;
85
+ };
86
+ componentDidMount?(): void;
87
+ shouldComponentUpdate?(nextProps: Readonly<{}>, nextState: Readonly<{}>, nextContext: any): boolean;
88
+ componentWillUnmount?(): void;
89
+ componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
90
+ getSnapshotBeforeUpdate?(prevProps: Readonly<{}>, prevState: Readonly<{}>): any;
91
+ componentWillMount?(): void;
92
+ UNSAFE_componentWillMount?(): void;
93
+ componentWillReceiveProps?(nextProps: Readonly<{}>, nextContext: any): void;
94
+ UNSAFE_componentWillReceiveProps?(nextProps: Readonly<{}>, nextContext: any): void;
95
+ componentWillUpdate?(nextProps: Readonly<{}>, nextState: Readonly<{}>, nextContext: any): void;
96
+ UNSAFE_componentWillUpdate?(nextProps: Readonly<{}>, nextState: Readonly<{}>, nextContext: any): void;
97
+ };
98
+ propTypes: {
99
+ coordinatesOnHover: PropTypes.Requireable<boolean>;
100
+ graphProps: PropTypes.Requireable<PropTypes.InferProps<{
101
+ scale: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
102
+ x: PropTypes.Validator<(...args: any[]) => any>;
103
+ y: PropTypes.Validator<(...args: any[]) => any>;
104
+ }>>>;
105
+ snap: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
106
+ x: PropTypes.Validator<(...args: any[]) => any>;
107
+ y: PropTypes.Validator<(...args: any[]) => any>;
108
+ }>>>;
109
+ domain: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
110
+ min: PropTypes.Validator<number>;
111
+ max: PropTypes.Validator<number>;
112
+ step: PropTypes.Requireable<number>;
113
+ }>>>;
114
+ range: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
115
+ min: PropTypes.Validator<number>;
116
+ max: PropTypes.Validator<number>;
117
+ step: PropTypes.Requireable<number>;
118
+ }>>>;
119
+ size: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
120
+ width: PropTypes.Validator<number>;
121
+ height: PropTypes.Validator<number>;
122
+ }>>>;
123
+ }>>;
124
+ from: PropTypes.Requireable<PropTypes.InferProps<{
125
+ x: PropTypes.Validator<number>;
126
+ y: PropTypes.Validator<number>;
127
+ }>>;
128
+ to: PropTypes.Requireable<PropTypes.InferProps<{
129
+ x: PropTypes.Validator<number>;
130
+ y: PropTypes.Validator<number>;
131
+ }>>;
132
+ middle: PropTypes.Requireable<PropTypes.InferProps<{
133
+ x: PropTypes.Validator<number>;
134
+ y: PropTypes.Validator<number>;
135
+ }>>;
136
+ onChange: PropTypes.Requireable<(...args: any[]) => any>;
137
+ onDragStart: PropTypes.Requireable<(...args: any[]) => any>;
138
+ onDragStop: PropTypes.Requireable<(...args: any[]) => any>;
139
+ onClick: PropTypes.Requireable<(...args: any[]) => any>;
140
+ correctness: PropTypes.Requireable<string>;
141
+ disabled: PropTypes.Requireable<boolean>;
142
+ limitLabeling: PropTypes.Requireable<boolean>;
143
+ changeMarkProps: PropTypes.Requireable<(...args: any[]) => any>;
144
+ labelModeEnabled: PropTypes.Requireable<boolean>;
145
+ labelNode: PropTypes.Requireable<object>;
146
+ };
147
+ contextType?: React.Context<any> | undefined;
148
+ };
@@ -0,0 +1,73 @@
1
+ import { d3_shape_exports as e } from "../../../node_modules/.bun/@visx_vendor@4.0.0/node_modules/@visx/vendor/esm/d3-shape.js";
2
+ import { LinePath as t } from "./line-path.js";
3
+ import { lineBase as n, lineToolComponent as r } from "./index.js";
4
+ import "react";
5
+ import i from "prop-types";
6
+ import { types as a } from "@pie-lib/plot";
7
+ import { jsx as o } from "react/jsx-runtime";
8
+ //#region src/tools/shared/line/with-root-edge.tsx
9
+ var s = (e) => {
10
+ let t = { ...e };
11
+ return t.root = { ...e.from }, t.edge = e.to ? { ...e.to } : void 0, delete t.from, delete t.to, t;
12
+ }, c = (e) => {
13
+ let t = { ...e };
14
+ return t.from = { ...e.root }, t.to = e.edge ? { ...e.edge } : void 0, delete t.root, delete t.edge, t;
15
+ }, l = (e) => {
16
+ let t = (t) => {
17
+ let n = c(t.mark), r = (e, n) => {
18
+ t.onChange(s(e), s(n));
19
+ };
20
+ return /* @__PURE__ */ o(e, {
21
+ ...t,
22
+ mark: n,
23
+ onChange: r
24
+ });
25
+ };
26
+ return t.propTypes = {
27
+ onChange: i.func,
28
+ mark: i.object
29
+ }, t;
30
+ }, u = (e) => l(r(e)), d = (n) => {
31
+ let r = (r) => {
32
+ let { graphProps: i, from: a, to: s, onClick: c, onDragStart: l, onDragStop: u, onChange: d, disabled: f, correctness: p, ...m } = r, { dataPoints: h, enableCurve: g = !0 } = n({
33
+ graphProps: r.graphProps,
34
+ root: a,
35
+ edge: s
36
+ }), _ = h.map((e) => [i.scale.x(e.x), i.scale.y(e.y)]), v = {
37
+ onClick: c,
38
+ graphProps: i,
39
+ onDragStart: l,
40
+ onDragStop: u,
41
+ onChange: d,
42
+ disabled: f,
43
+ correctness: p
44
+ };
45
+ return g ? /* @__PURE__ */ o(t, {
46
+ data: _,
47
+ from: a,
48
+ to: s,
49
+ curve: e.curveMonotoneX,
50
+ ...v,
51
+ ...m
52
+ }) : /* @__PURE__ */ o(t, {
53
+ data: _,
54
+ from: a,
55
+ to: s,
56
+ ...v,
57
+ ...m
58
+ });
59
+ };
60
+ return r.propTypes = {
61
+ graphProps: a.GraphPropsType.isRequired,
62
+ from: a.PointType.isRequired,
63
+ to: a.PointType,
64
+ onClick: i.func,
65
+ onDragStart: i.func,
66
+ onDragStop: i.func,
67
+ onChange: i.func,
68
+ disabled: i.bool,
69
+ correctness: i.string
70
+ }, r;
71
+ }, f = (e) => n(d(e));
72
+ //#endregion
73
+ export { u as rootEdgeComponent, l as rootEdgeToFromToWrapper, f as withRootEdge };