@pie-lib/graphing 4.0.5-next.30 → 4.0.5-next.34

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 (453) hide show
  1. package/CHANGELOG.json +1 -0
  2. package/CHANGELOG.md +1469 -0
  3. package/LICENSE.md +5 -0
  4. package/lib/axis/arrow.js +79 -0
  5. package/lib/axis/arrow.js.map +1 -0
  6. package/lib/axis/axes.js +329 -0
  7. package/lib/axis/axes.js.map +1 -0
  8. package/lib/axis/index.js +21 -0
  9. package/lib/axis/index.js.map +1 -0
  10. package/lib/bg.js +114 -0
  11. package/lib/bg.js.map +1 -0
  12. package/lib/container/actions.js +18 -0
  13. package/lib/container/actions.js.map +1 -0
  14. package/lib/container/index.js +127 -0
  15. package/lib/container/index.js.map +1 -0
  16. package/lib/container/marks.js +22 -0
  17. package/lib/container/marks.js.map +1 -0
  18. package/lib/container/middleware.js +19 -0
  19. package/lib/container/middleware.js.map +1 -0
  20. package/lib/container/reducer.js +18 -0
  21. package/lib/container/reducer.js.map +1 -0
  22. package/lib/coordinates-label.js +79 -0
  23. package/lib/coordinates-label.js.map +1 -0
  24. package/lib/graph-with-controls.js +294 -0
  25. package/lib/graph-with-controls.js.map +1 -0
  26. package/lib/graph.js +327 -0
  27. package/lib/graph.js.map +1 -0
  28. package/lib/grid-setup.js +414 -0
  29. package/lib/grid-setup.js.map +1 -0
  30. package/lib/grid.js +131 -0
  31. package/lib/grid.js.map +1 -0
  32. package/lib/index.js +47 -0
  33. package/lib/index.js.map +1 -0
  34. package/lib/key-legend.js +201 -0
  35. package/lib/key-legend.js.map +1 -0
  36. package/lib/label-svg-icon.js +50 -0
  37. package/lib/label-svg-icon.js.map +1 -0
  38. package/lib/labels.js +243 -0
  39. package/lib/labels.js.map +1 -0
  40. package/lib/mark-label.js +285 -0
  41. package/lib/mark-label.js.map +1 -0
  42. package/lib/toggle-bar.js +252 -0
  43. package/lib/toggle-bar.js.map +1 -0
  44. package/lib/tool-menu.js +78 -0
  45. package/lib/tool-menu.js.map +1 -0
  46. package/lib/tools/absolute/component.js +29 -0
  47. package/lib/tools/absolute/component.js.map +1 -0
  48. package/lib/tools/absolute/index.js +50 -0
  49. package/lib/tools/absolute/index.js.map +1 -0
  50. package/lib/tools/circle/bg-circle.js +123 -0
  51. package/lib/tools/circle/bg-circle.js.map +1 -0
  52. package/lib/tools/circle/component.js +321 -0
  53. package/lib/tools/circle/component.js.map +1 -0
  54. package/lib/tools/circle/index.js +41 -0
  55. package/lib/tools/circle/index.js.map +1 -0
  56. package/lib/tools/exponential/component.js +28 -0
  57. package/lib/tools/exponential/component.js.map +1 -0
  58. package/lib/tools/exponential/index.js +56 -0
  59. package/lib/tools/exponential/index.js.map +1 -0
  60. package/lib/tools/index.js +86 -0
  61. package/lib/tools/index.js.map +1 -0
  62. package/lib/tools/line/component.js +97 -0
  63. package/lib/tools/line/component.js.map +1 -0
  64. package/lib/tools/line/index.js +11 -0
  65. package/lib/tools/line/index.js.map +1 -0
  66. package/lib/tools/parabola/component.js +28 -0
  67. package/lib/tools/parabola/component.js.map +1 -0
  68. package/lib/tools/parabola/index.js +50 -0
  69. package/lib/tools/parabola/index.js.map +1 -0
  70. package/lib/tools/point/component.js +148 -0
  71. package/lib/tools/point/component.js.map +1 -0
  72. package/lib/tools/point/index.js +24 -0
  73. package/lib/tools/point/index.js.map +1 -0
  74. package/lib/tools/polygon/component.js +437 -0
  75. package/lib/tools/polygon/component.js.map +1 -0
  76. package/lib/tools/polygon/index.js +89 -0
  77. package/lib/tools/polygon/index.js.map +1 -0
  78. package/lib/tools/polygon/line.js +112 -0
  79. package/lib/tools/polygon/line.js.map +1 -0
  80. package/lib/tools/polygon/polygon.js +130 -0
  81. package/lib/tools/polygon/polygon.js.map +1 -0
  82. package/lib/tools/ray/component.js +95 -0
  83. package/lib/tools/ray/component.js.map +1 -0
  84. package/lib/tools/ray/index.js +11 -0
  85. package/lib/tools/ray/index.js.map +1 -0
  86. package/lib/tools/segment/component.js +71 -0
  87. package/lib/tools/segment/component.js.map +1 -0
  88. package/lib/tools/segment/index.js +11 -0
  89. package/lib/tools/segment/index.js.map +1 -0
  90. package/lib/tools/shared/arrow-head.js +111 -0
  91. package/lib/tools/shared/arrow-head.js.map +1 -0
  92. package/lib/tools/shared/icons/CorrectSVG.js +40 -0
  93. package/lib/tools/shared/icons/CorrectSVG.js.map +1 -0
  94. package/lib/tools/shared/icons/IncorrectSVG.js +40 -0
  95. package/lib/tools/shared/icons/IncorrectSVG.js.map +1 -0
  96. package/lib/tools/shared/icons/MissingSVG.js +39 -0
  97. package/lib/tools/shared/icons/MissingSVG.js.map +1 -0
  98. package/lib/tools/shared/line/index.js +550 -0
  99. package/lib/tools/shared/line/index.js.map +1 -0
  100. package/lib/tools/shared/line/line-path.js +118 -0
  101. package/lib/tools/shared/line/line-path.js.map +1 -0
  102. package/lib/tools/shared/line/with-root-edge.js +121 -0
  103. package/lib/tools/shared/line/with-root-edge.js.map +1 -0
  104. package/lib/tools/shared/point/arrow-point.js +72 -0
  105. package/lib/tools/shared/point/arrow-point.js.map +1 -0
  106. package/lib/tools/shared/point/arrow.js +67 -0
  107. package/lib/tools/shared/point/arrow.js.map +1 -0
  108. package/lib/tools/shared/point/base-point.js +157 -0
  109. package/lib/tools/shared/point/base-point.js.map +1 -0
  110. package/lib/tools/shared/point/index.js +68 -0
  111. package/lib/tools/shared/point/index.js.map +1 -0
  112. package/lib/tools/shared/styles.js +33 -0
  113. package/lib/tools/shared/styles.js.map +1 -0
  114. package/lib/tools/shared/types.js +16 -0
  115. package/lib/tools/shared/types.js.map +1 -0
  116. package/lib/tools/sine/component.js +40 -0
  117. package/lib/tools/sine/component.js.map +1 -0
  118. package/lib/tools/sine/index.js +50 -0
  119. package/lib/tools/sine/index.js.map +1 -0
  120. package/lib/tools/vector/component.js +68 -0
  121. package/lib/tools/vector/component.js.map +1 -0
  122. package/lib/tools/vector/index.js +11 -0
  123. package/lib/tools/vector/index.js.map +1 -0
  124. package/lib/undo-redo.js +86 -0
  125. package/lib/undo-redo.js.map +1 -0
  126. package/lib/use-debounce.js +25 -0
  127. package/lib/use-debounce.js.map +1 -0
  128. package/lib/utils.js +229 -0
  129. package/lib/utils.js.map +1 -0
  130. package/package.json +33 -45
  131. package/src/__tests__/bg.test.jsx +250 -0
  132. package/src/__tests__/coordinates-label.test.jsx +243 -0
  133. package/src/__tests__/graph-with-controls.test.jsx +198 -0
  134. package/src/__tests__/graph.test.jsx +721 -0
  135. package/src/__tests__/grid-setup.test.jsx +645 -0
  136. package/src/__tests__/grid.test.jsx +22 -0
  137. package/src/__tests__/key-legend.test.jsx +260 -0
  138. package/src/__tests__/label-svg-icon.test.jsx +278 -0
  139. package/src/__tests__/labels.test.jsx +55 -0
  140. package/src/__tests__/mark-label.test.jsx +63 -0
  141. package/src/__tests__/toggle-bar.test.jsx +146 -0
  142. package/src/__tests__/tool-menu.test.jsx +115 -0
  143. package/src/__tests__/undo-redo.test.jsx +24 -0
  144. package/src/__tests__/use-debounce.test.js +21 -0
  145. package/src/__tests__/utils.js +41 -0
  146. package/src/__tests__/utils.test.js +105 -0
  147. package/src/axis/__tests__/arrow.test.jsx +38 -0
  148. package/src/axis/__tests__/axes.test.jsx +216 -0
  149. package/src/axis/arrow.jsx +57 -0
  150. package/src/axis/axes.jsx +285 -0
  151. package/src/axis/index.js +3 -0
  152. package/src/bg.jsx +96 -0
  153. package/src/container/__tests__/actions.test.js +105 -0
  154. package/src/container/__tests__/index.test.jsx +319 -0
  155. package/src/container/__tests__/marks.test.js +172 -0
  156. package/src/container/__tests__/middleware.test.js +235 -0
  157. package/src/container/__tests__/reducer.test.js +324 -0
  158. package/src/container/actions.js +8 -0
  159. package/src/container/index.jsx +91 -0
  160. package/src/container/marks.js +14 -0
  161. package/src/container/middleware.js +7 -0
  162. package/src/container/reducer.js +5 -0
  163. package/src/coordinates-label.jsx +63 -0
  164. package/src/graph-with-controls.jsx +239 -0
  165. package/src/graph.jsx +303 -0
  166. package/src/grid-setup.jsx +432 -0
  167. package/src/grid.jsx +133 -0
  168. package/src/index.js +7 -0
  169. package/src/key-legend.jsx +142 -0
  170. package/src/label-svg-icon.jsx +39 -0
  171. package/src/labels.jsx +207 -0
  172. package/src/mark-label.jsx +244 -0
  173. package/src/toggle-bar.jsx +224 -0
  174. package/src/tool-menu.jsx +49 -0
  175. package/src/tools/absolute/__tests__/component.test.jsx +53 -0
  176. package/src/tools/absolute/component.jsx +23 -0
  177. package/src/tools/absolute/index.js +31 -0
  178. package/src/tools/circle/__tests__/bg-circle.test.jsx +26 -0
  179. package/src/tools/circle/__tests__/component.test.jsx +494 -0
  180. package/src/tools/circle/__tests__/index.test.js +480 -0
  181. package/src/tools/circle/bg-circle.jsx +81 -0
  182. package/src/tools/circle/component.jsx +264 -0
  183. package/src/tools/circle/index.js +25 -0
  184. package/src/tools/exponential/__tests__/component.test.jsx +53 -0
  185. package/src/tools/exponential/__tests__/index.test.js +729 -0
  186. package/src/tools/exponential/component.jsx +23 -0
  187. package/src/tools/exponential/index.js +39 -0
  188. package/src/tools/index.js +48 -0
  189. package/src/tools/line/__tests__/component.test.jsx +37 -0
  190. package/src/tools/line/component.jsx +93 -0
  191. package/src/tools/line/index.js +4 -0
  192. package/src/tools/parabola/__tests__/component.test.jsx +48 -0
  193. package/src/tools/parabola/__tests__/index.test.js +470 -0
  194. package/src/tools/parabola/component.jsx +23 -0
  195. package/src/tools/parabola/index.js +31 -0
  196. package/src/tools/point/__tests__/component.test.jsx +349 -0
  197. package/src/tools/point/__tests__/index.test.js +241 -0
  198. package/src/tools/point/component.jsx +126 -0
  199. package/src/tools/point/index.js +11 -0
  200. package/src/tools/polygon/__tests__/component.test.jsx +471 -0
  201. package/src/tools/polygon/__tests__/index.test.js +294 -0
  202. package/src/tools/polygon/__tests__/line.test.jsx +35 -0
  203. package/src/tools/polygon/__tests__/polygon.test.jsx +61 -0
  204. package/src/tools/polygon/component.jsx +409 -0
  205. package/src/tools/polygon/index.js +52 -0
  206. package/src/tools/polygon/line.jsx +74 -0
  207. package/src/tools/polygon/polygon.jsx +110 -0
  208. package/src/tools/ray/__tests__/component.test.jsx +29 -0
  209. package/src/tools/ray/component.jsx +92 -0
  210. package/src/tools/ray/index.js +4 -0
  211. package/src/tools/segment/__tests__/component.test.jsx +28 -0
  212. package/src/tools/segment/component.jsx +65 -0
  213. package/src/tools/segment/index.js +4 -0
  214. package/src/tools/shared/__tests__/arrow-head.test.jsx +31 -0
  215. package/src/tools/shared/arrow-head.jsx +102 -0
  216. package/src/tools/shared/icons/CorrectSVG.jsx +32 -0
  217. package/src/tools/shared/icons/IncorrectSVG.jsx +30 -0
  218. package/src/tools/shared/icons/MissingSVG.jsx +31 -0
  219. package/src/tools/shared/line/__tests__/index.test.jsx +109 -0
  220. package/src/tools/shared/line/__tests__/line-path.test.jsx +53 -0
  221. package/src/tools/shared/line/__tests__/with-root-edge.test.jsx +73 -0
  222. package/src/tools/shared/line/index.jsx +487 -0
  223. package/src/tools/shared/line/line-path.jsx +80 -0
  224. package/src/tools/shared/line/with-root-edge.jsx +97 -0
  225. package/src/tools/shared/point/__tests__/arrow-point.test.jsx +91 -0
  226. package/src/tools/shared/point/__tests__/base-point.test.jsx +87 -0
  227. package/src/tools/shared/point/arrow-point.jsx +46 -0
  228. package/src/tools/shared/point/arrow.jsx +37 -0
  229. package/src/tools/shared/point/base-point.jsx +121 -0
  230. package/src/tools/shared/point/index.jsx +54 -0
  231. package/src/tools/shared/styles.js +27 -0
  232. package/src/tools/shared/types.js +10 -0
  233. package/src/tools/sine/__tests__/component.test.jsx +51 -0
  234. package/src/tools/sine/component.jsx +32 -0
  235. package/src/tools/sine/index.js +33 -0
  236. package/src/tools/vector/__tests__/component.test.jsx +25 -0
  237. package/src/tools/vector/component.jsx +56 -0
  238. package/src/tools/vector/index.js +4 -0
  239. package/src/undo-redo.jsx +45 -0
  240. package/src/use-debounce.js +13 -0
  241. package/src/utils.js +224 -0
  242. package/dist/_virtual/_rolldown/runtime.js +0 -23
  243. package/dist/autosize-input.d.ts +0 -10
  244. package/dist/autosize-input.js +0 -66
  245. package/dist/axis/arrow.d.ts +0 -13
  246. package/dist/axis/arrow.js +0 -34
  247. package/dist/axis/axes.d.ts +0 -132
  248. package/dist/axis/axes.js +0 -214
  249. package/dist/axis/index.d.ts +0 -10
  250. package/dist/bg.d.ts +0 -51
  251. package/dist/bg.js +0 -44
  252. package/dist/container/actions.d.ts +0 -15
  253. package/dist/container/actions.js +0 -7
  254. package/dist/container/index.d.ts +0 -58
  255. package/dist/container/index.js +0 -48
  256. package/dist/container/marks.d.ts +0 -10
  257. package/dist/container/marks.js +0 -11
  258. package/dist/container/middleware.d.ts +0 -10
  259. package/dist/container/middleware.js +0 -4
  260. package/dist/container/reducer.d.ts +0 -14
  261. package/dist/container/reducer.js +0 -7
  262. package/dist/coordinates-label.d.ts +0 -50
  263. package/dist/coordinates-label.js +0 -46
  264. package/dist/graph-with-controls.d.ts +0 -88
  265. package/dist/graph-with-controls.js +0 -154
  266. package/dist/graph.d.ts +0 -126
  267. package/dist/graph.js +0 -209
  268. package/dist/grid-setup.d.ts +0 -27
  269. package/dist/grid-setup.js +0 -307
  270. package/dist/grid.d.ts +0 -43
  271. package/dist/grid.js +0 -59
  272. package/dist/index.d.ts +0 -15
  273. package/dist/index.js +0 -7
  274. package/dist/key-legend.d.ts +0 -21
  275. package/dist/key-legend.js +0 -231
  276. package/dist/label-svg-icon.d.ts +0 -18
  277. package/dist/label-svg-icon.js +0 -42
  278. package/dist/labels.d.ts +0 -37
  279. package/dist/labels.js +0 -152
  280. package/dist/mark-label.d.ts +0 -58
  281. package/dist/mark-label.js +0 -171
  282. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/axis/Axis.js +0 -101
  283. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/axis/AxisRenderer.js +0 -63
  284. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/axis/Ticks.js +0 -44
  285. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/constants/orientation.js +0 -9
  286. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/utils/createPoint.js +0 -14
  287. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/utils/getAxisRangePaddingConfig.js +0 -21
  288. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/utils/getLabelTransform.js +0 -16
  289. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/utils/getTickFormatter.js +0 -8
  290. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/utils/getTickPosition.js +0 -15
  291. package/dist/node_modules/.bun/@visx_curve@3.12.0/node_modules/@visx/curve/esm/index.js +0 -2
  292. package/dist/node_modules/.bun/@visx_grid@3.12.0_f4eacebf2041cd4f/node_modules/@visx/grid/esm/grids/Grid.js +0 -79
  293. package/dist/node_modules/.bun/@visx_grid@3.12.0_f4eacebf2041cd4f/node_modules/@visx/grid/esm/grids/GridColumns.js +0 -79
  294. package/dist/node_modules/.bun/@visx_grid@3.12.0_f4eacebf2041cd4f/node_modules/@visx/grid/esm/grids/GridRows.js +0 -79
  295. package/dist/node_modules/.bun/@visx_grid@3.12.0_f4eacebf2041cd4f/node_modules/@visx/grid/esm/utils/getScaleBandwidth.js +0 -6
  296. package/dist/node_modules/.bun/@visx_group@3.12.0_f4eacebf2041cd4f/node_modules/@visx/group/esm/Group.js +0 -50
  297. package/dist/node_modules/.bun/@visx_point@3.12.0/node_modules/@visx/point/esm/Point.js +0 -18
  298. package/dist/node_modules/.bun/@visx_scale@3.12.0/node_modules/@visx/scale/esm/utils/coerceNumber.js +0 -10
  299. package/dist/node_modules/.bun/@visx_scale@3.12.0/node_modules/@visx/scale/esm/utils/getTicks.js +0 -9
  300. package/dist/node_modules/.bun/@visx_scale@3.12.0/node_modules/@visx/scale/esm/utils/toString.js +0 -6
  301. package/dist/node_modules/.bun/@visx_shape@3.12.0_f4eacebf2041cd4f/node_modules/@visx/shape/esm/shapes/Line.js +0 -47
  302. package/dist/node_modules/.bun/@visx_shape@3.12.0_f4eacebf2041cd4f/node_modules/@visx/shape/esm/shapes/LinePath.js +0 -50
  303. package/dist/node_modules/.bun/@visx_shape@3.12.0_f4eacebf2041cd4f/node_modules/@visx/shape/esm/util/D3ShapeFactories.js +0 -9
  304. package/dist/node_modules/.bun/@visx_shape@3.12.0_f4eacebf2041cd4f/node_modules/@visx/shape/esm/util/setNumberOrNumberAccessor.js +0 -6
  305. package/dist/node_modules/.bun/@visx_shape@3.12.0_f4eacebf2041cd4f/node_modules/@visx/shape/lib/shapes/Line.js +0 -53
  306. package/dist/node_modules/.bun/@visx_text@3.12.0_f4eacebf2041cd4f/node_modules/@visx/text/esm/Text.js +0 -57
  307. package/dist/node_modules/.bun/@visx_text@3.12.0_f4eacebf2041cd4f/node_modules/@visx/text/esm/hooks/useText.js +0 -91
  308. package/dist/node_modules/.bun/@visx_text@3.12.0_f4eacebf2041cd4f/node_modules/@visx/text/esm/util/getStringWidth.js +0 -21
  309. package/dist/node_modules/.bun/balanced-match@0.4.2/node_modules/balanced-match/index.js +0 -32
  310. package/dist/node_modules/.bun/balanced-match@1.0.2/node_modules/balanced-match/index.js +0 -33
  311. package/dist/node_modules/.bun/classnames@2.5.1/node_modules/classnames/index.js +0 -32
  312. package/dist/node_modules/.bun/clsx@2.1.1/node_modules/clsx/dist/clsx.js +0 -16
  313. package/dist/node_modules/.bun/invariant@2.2.4/node_modules/invariant/browser.js +0 -28
  314. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_Hash.js +0 -21
  315. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_ListCache.js +0 -21
  316. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_Map.js +0 -10
  317. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_MapCache.js +0 -21
  318. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_Symbol.js +0 -9
  319. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_assocIndexOf.js +0 -14
  320. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_baseGetTag.js +0 -15
  321. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_baseIsNative.js +0 -16
  322. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_coreJsData.js +0 -9
  323. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_freeGlobal.js +0 -8
  324. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_getMapData.js +0 -14
  325. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_getNative.js +0 -15
  326. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_getRawTag.js +0 -19
  327. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_getValue.js +0 -11
  328. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_hashClear.js +0 -13
  329. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_hashDelete.js +0 -12
  330. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_hashGet.js +0 -18
  331. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_hashHas.js +0 -14
  332. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_hashSet.js +0 -14
  333. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_isKeyable.js +0 -12
  334. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_isMasked.js +0 -16
  335. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_listCacheClear.js +0 -11
  336. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_listCacheDelete.js +0 -14
  337. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_listCacheGet.js +0 -14
  338. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_listCacheHas.js +0 -13
  339. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_listCacheSet.js +0 -14
  340. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_mapCacheClear.js +0 -19
  341. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_mapCacheDelete.js +0 -14
  342. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_mapCacheGet.js +0 -13
  343. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_mapCacheHas.js +0 -13
  344. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_mapCacheSet.js +0 -14
  345. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_nativeCreate.js +0 -9
  346. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_objectToString.js +0 -12
  347. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_root.js +0 -10
  348. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_toSource.js +0 -20
  349. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/eq.js +0 -11
  350. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/isFunction.js +0 -16
  351. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/isObject.js +0 -12
  352. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/memoize.js +0 -20
  353. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/formula_evaluator.js +0 -37
  354. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/lexer.js +0 -509
  355. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/math_function.js +0 -108
  356. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/postfix.js +0 -31
  357. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/postfix_evaluator.js +0 -45
  358. package/dist/node_modules/.bun/react-redux@9.3.0_9e2203c65d1d5fa1/node_modules/react-redux/dist/react-redux.js +0 -471
  359. package/dist/node_modules/.bun/reduce-css-calc@1.3.0/node_modules/reduce-css-calc/index.js +0 -49
  360. package/dist/node_modules/.bun/reduce-function-call@1.0.3/node_modules/reduce-function-call/index.js +0 -34
  361. package/dist/node_modules/.bun/redux-undo@1.1.0/node_modules/redux-undo/dist/redux-undo.js +0 -185
  362. package/dist/node_modules/.bun/redux@5.0.1/node_modules/redux/dist/redux.js +0 -198
  363. package/dist/node_modules/.bun/use-sync-external-store@1.6.0_f4eacebf2041cd4f/node_modules/use-sync-external-store/cjs/use-sync-external-store-with-selector.development.js +0 -53
  364. package/dist/node_modules/.bun/use-sync-external-store@1.6.0_f4eacebf2041cd4f/node_modules/use-sync-external-store/cjs/use-sync-external-store-with-selector.production.js +0 -51
  365. package/dist/node_modules/.bun/use-sync-external-store@1.6.0_f4eacebf2041cd4f/node_modules/use-sync-external-store/with-selector.js +0 -10
  366. package/dist/toggle-bar.d.ts +0 -40
  367. package/dist/toggle-bar.js +0 -155
  368. package/dist/tool-menu.d.ts +0 -29
  369. package/dist/tool-menu.js +0 -41
  370. package/dist/tools/absolute/component.d.ts +0 -16
  371. package/dist/tools/absolute/component.js +0 -15
  372. package/dist/tools/absolute/index.d.ts +0 -20
  373. package/dist/tools/absolute/index.js +0 -32
  374. package/dist/tools/circle/bg-circle.d.ts +0 -116
  375. package/dist/tools/circle/bg-circle.js +0 -72
  376. package/dist/tools/circle/component.d.ts +0 -83
  377. package/dist/tools/circle/component.js +0 -195
  378. package/dist/tools/circle/index.d.ts +0 -20
  379. package/dist/tools/circle/index.js +0 -22
  380. package/dist/tools/exponential/component.d.ts +0 -16
  381. package/dist/tools/exponential/component.js +0 -14
  382. package/dist/tools/exponential/index.d.ts +0 -20
  383. package/dist/tools/exponential/index.js +0 -32
  384. package/dist/tools/index.d.ts +0 -27
  385. package/dist/tools/index.js +0 -55
  386. package/dist/tools/line/component.d.ts +0 -124
  387. package/dist/tools/line/component.js +0 -72
  388. package/dist/tools/line/index.d.ts +0 -13
  389. package/dist/tools/line/index.js +0 -6
  390. package/dist/tools/parabola/component.d.ts +0 -16
  391. package/dist/tools/parabola/component.js +0 -14
  392. package/dist/tools/parabola/index.d.ts +0 -20
  393. package/dist/tools/parabola/index.js +0 -32
  394. package/dist/tools/point/component.d.ts +0 -50
  395. package/dist/tools/point/component.js +0 -85
  396. package/dist/tools/point/index.d.ts +0 -15
  397. package/dist/tools/point/index.js +0 -13
  398. package/dist/tools/polygon/component.d.ts +0 -120
  399. package/dist/tools/polygon/component.js +0 -262
  400. package/dist/tools/polygon/index.d.ts +0 -19
  401. package/dist/tools/polygon/index.js +0 -55
  402. package/dist/tools/polygon/line.d.ts +0 -125
  403. package/dist/tools/polygon/line.js +0 -63
  404. package/dist/tools/polygon/polygon.d.ts +0 -122
  405. package/dist/tools/polygon/polygon.js +0 -74
  406. package/dist/tools/ray/component.d.ts +0 -101
  407. package/dist/tools/ray/component.js +0 -71
  408. package/dist/tools/ray/index.d.ts +0 -13
  409. package/dist/tools/ray/index.js +0 -6
  410. package/dist/tools/segment/component.d.ts +0 -100
  411. package/dist/tools/segment/component.js +0 -52
  412. package/dist/tools/segment/index.d.ts +0 -13
  413. package/dist/tools/segment/index.js +0 -6
  414. package/dist/tools/shared/arrow-head.d.ts +0 -51
  415. package/dist/tools/shared/arrow-head.js +0 -63
  416. package/dist/tools/shared/icons/CorrectSVG.d.ts +0 -26
  417. package/dist/tools/shared/icons/CorrectSVG.js +0 -29
  418. package/dist/tools/shared/icons/IncorrectSVG.d.ts +0 -26
  419. package/dist/tools/shared/icons/IncorrectSVG.js +0 -27
  420. package/dist/tools/shared/icons/MissingSVG.d.ts +0 -26
  421. package/dist/tools/shared/icons/MissingSVG.js +0 -28
  422. package/dist/tools/shared/line/index.d.ts +0 -245
  423. package/dist/tools/shared/line/index.js +0 -319
  424. package/dist/tools/shared/line/line-path.d.ts +0 -57
  425. package/dist/tools/shared/line/line-path.js +0 -71
  426. package/dist/tools/shared/line/with-root-edge.d.ts +0 -142
  427. package/dist/tools/shared/line/with-root-edge.js +0 -73
  428. package/dist/tools/shared/point/arrow-point.d.ts +0 -56
  429. package/dist/tools/shared/point/arrow-point.js +0 -41
  430. package/dist/tools/shared/point/arrow.d.ts +0 -45
  431. package/dist/tools/shared/point/arrow.js +0 -35
  432. package/dist/tools/shared/point/base-point.d.ts +0 -52
  433. package/dist/tools/shared/point/base-point.js +0 -103
  434. package/dist/tools/shared/point/index.d.ts +0 -216
  435. package/dist/tools/shared/point/index.js +0 -45
  436. package/dist/tools/shared/styles.d.ts +0 -29
  437. package/dist/tools/shared/styles.js +0 -20
  438. package/dist/tools/shared/types.d.ts +0 -21
  439. package/dist/tools/shared/types.js +0 -11
  440. package/dist/tools/sine/component.d.ts +0 -16
  441. package/dist/tools/sine/component.js +0 -22
  442. package/dist/tools/sine/index.d.ts +0 -20
  443. package/dist/tools/sine/index.js +0 -32
  444. package/dist/tools/vector/component.d.ts +0 -100
  445. package/dist/tools/vector/component.js +0 -44
  446. package/dist/tools/vector/index.d.ts +0 -13
  447. package/dist/tools/vector/index.js +0 -6
  448. package/dist/undo-redo.d.ts +0 -22
  449. package/dist/undo-redo.js +0 -47
  450. package/dist/use-debounce.d.ts +0 -9
  451. package/dist/use-debounce.js +0 -13
  452. package/dist/utils.d.ts +0 -61
  453. package/dist/utils.js +0 -75
@@ -1,32 +0,0 @@
1
- import { equalPoints as e, sameAxes as t } from "../../utils.js";
2
- import n from "./component.js";
3
- import r from "debug";
4
- //#region src/tools/parabola/index.ts
5
- var i = r("pie-lib:graphing:parabola"), a = () => ({
6
- type: "parabola",
7
- Component: n,
8
- complete: (e, t) => ({
9
- ...t,
10
- building: !1,
11
- closed: !0
12
- }),
13
- addPoint: (n, r) => {
14
- if (i("add point to parabola model: ", n, "mark: ", r), r && (e(r.root, n) || t(r.root, n))) return r;
15
- if (!r) return {
16
- type: "parabola",
17
- root: n,
18
- edge: void 0,
19
- closed: !1,
20
- building: !0
21
- };
22
- if (r && !r.root) throw Error("no root - should never happen");
23
- return {
24
- ...r,
25
- edge: n,
26
- closed: !0,
27
- building: !1
28
- };
29
- }
30
- });
31
- //#endregion
32
- export { a as tool };
@@ -1,50 +0,0 @@
1
- /**
2
- * @synced-from pie-lib/packages/graphing/src/tools/point/component.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
- export declare class Point extends React.Component {
11
- static propTypes: {
12
- mark: import("prop-types").Requireable<any>;
13
- onChange: import("prop-types").Requireable<(...args: any[]) => any>;
14
- onDragStart: import("prop-types").Requireable<(...args: any[]) => any>;
15
- onDragStop: import("prop-types").Requireable<(...args: any[]) => any>;
16
- graphProps: import("prop-types").Validator<NonNullable<import("prop-types").InferProps<{
17
- scale: import("prop-types").Validator<NonNullable<import("prop-types").InferProps<{
18
- x: import("prop-types").Validator<(...args: any[]) => any>;
19
- y: import("prop-types").Validator<(...args: any[]) => any>;
20
- }>>>;
21
- snap: import("prop-types").Validator<NonNullable<import("prop-types").InferProps<{
22
- x: import("prop-types").Validator<(...args: any[]) => any>;
23
- y: import("prop-types").Validator<(...args: any[]) => any>;
24
- }>>>;
25
- domain: import("prop-types").Validator<NonNullable<import("prop-types").InferProps<{
26
- min: import("prop-types").Validator<number>;
27
- max: import("prop-types").Validator<number>;
28
- step: import("prop-types").Requireable<number>;
29
- }>>>;
30
- range: import("prop-types").Validator<NonNullable<import("prop-types").InferProps<{
31
- min: import("prop-types").Validator<number>;
32
- max: import("prop-types").Validator<number>;
33
- step: import("prop-types").Requireable<number>;
34
- }>>>;
35
- size: import("prop-types").Validator<NonNullable<import("prop-types").InferProps<{
36
- width: import("prop-types").Validator<number>;
37
- height: import("prop-types").Validator<number>;
38
- }>>>;
39
- }>>>;
40
- };
41
- static defaultProps: {};
42
- constructor(props: any);
43
- move: any;
44
- startDrag: any;
45
- stopDrag: any;
46
- labelChange: any;
47
- clickPoint: any;
48
- render(): React.JSX.Element;
49
- }
50
- export default Point;
@@ -1,85 +0,0 @@
1
- import { BasePoint as e } from "../shared/point/index.js";
2
- import { ToolPropTypeFields as t } from "../shared/types.js";
3
- import n from "../../mark-label.js";
4
- import r from "react";
5
- import { isEmpty as i, isEqual as a } from "@pie-element/shared-lodash";
6
- import { types as o } from "@pie-lib/plot";
7
- import { jsx as s, jsxs as c } from "react/jsx-runtime";
8
- import l from "react-dom";
9
- //#region src/tools/point/component.tsx
10
- var u = class extends r.Component {
11
- static propTypes = {
12
- graphProps: o.GraphPropsType.isRequired,
13
- ...t
14
- };
15
- static defaultProps = {};
16
- constructor(e) {
17
- super(e), this.state = {};
18
- }
19
- move = (e) => {
20
- let t = {
21
- ...this.state.mark,
22
- ...e
23
- };
24
- this.setState({ mark: t });
25
- };
26
- startDrag = () => {
27
- let { onDragStart: e } = this.props, t = { ...this.props.mark };
28
- t.label === "" && delete t.label, this.setState({ mark: t }), e && e();
29
- };
30
- stopDrag = () => {
31
- let { onChange: e, onDragStop: t } = this.props, n = { ...this.state.mark };
32
- this.setState({ mark: void 0 }, () => {
33
- a(this.props.mark, n) || e(this.props.mark, n), t && t();
34
- });
35
- };
36
- labelChange = (e) => {
37
- let { onChange: t } = this.props, n = {
38
- ...this.props.mark,
39
- label: e
40
- };
41
- (!e || i(e)) && delete n.label, this.setState({ mark: n }, () => {
42
- t(this.props.mark, n);
43
- });
44
- };
45
- clickPoint = () => {
46
- let { labelModeEnabled: e, onChange: t, onClick: n, mark: r } = this.props;
47
- if (!e) {
48
- n(r);
49
- return;
50
- }
51
- r.disabled || (t(r, {
52
- label: "",
53
- ...r
54
- }), setTimeout(() => {
55
- this.input && this.input.focus();
56
- }, 0));
57
- };
58
- render() {
59
- let { coordinatesOnHover: t, graphProps: i, labelNode: a, labelModeEnabled: o } = this.props, u = this.state.mark ? this.state.mark : this.props.mark;
60
- return /* @__PURE__ */ c(r.Fragment, { children: [/* @__PURE__ */ s(e, {
61
- ...u,
62
- coordinatesOnHover: t,
63
- graphProps: i,
64
- labelNode: a,
65
- onDrag: this.move,
66
- onDragStart: this.startDrag,
67
- onDragStop: this.stopDrag,
68
- onClick: this.clickPoint,
69
- onTouchStart: (e) => {
70
- e.stopPropagation(), this.clickPoint();
71
- },
72
- onTouchEnd: (e) => {
73
- e.stopPropagation(), this.clickPoint();
74
- }
75
- }), a && Object.prototype.hasOwnProperty.call(u, "label") && l.createPortal(/* @__PURE__ */ s(n, {
76
- inputRef: (e) => this.input = e,
77
- disabled: !o,
78
- mark: u,
79
- graphProps: i,
80
- onChange: this.labelChange
81
- }), a)] });
82
- }
83
- };
84
- //#endregion
85
- export { u as default };
@@ -1,15 +0,0 @@
1
- /**
2
- * @synced-from pie-lib/packages/graphing/src/tools/point/index.js
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 Point from './component.js';
10
- export declare const tool: () => {
11
- label: string;
12
- type: string;
13
- Component: typeof Point;
14
- addPoint: (point: any) => any;
15
- };
@@ -1,13 +0,0 @@
1
- import e from "./component.js";
2
- //#region src/tools/point/index.ts
3
- var t = () => ({
4
- label: "Point",
5
- type: "point",
6
- Component: e,
7
- addPoint: (e) => ({
8
- type: "point",
9
- ...e
10
- })
11
- });
12
- //#endregion
13
- export { t as tool };
@@ -1,120 +0,0 @@
1
- /**
2
- * @synced-from pie-lib/packages/graphing/src/tools/polygon/component.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 buildLines: (points: any, closed: any) => {
12
- from: unknown;
13
- to: unknown;
14
- }[];
15
- export declare const swap: (arr: any, ...rest: any[]) => any[];
16
- export declare class RawBaseComponent extends React.Component {
17
- static propTypes: {
18
- classes: PropTypes.Requireable<object>;
19
- className: PropTypes.Requireable<string>;
20
- disabled: PropTypes.Requireable<boolean>;
21
- correctness: PropTypes.Requireable<string>;
22
- points: PropTypes.Requireable<(PropTypes.InferProps<{
23
- x: PropTypes.Validator<number>;
24
- y: PropTypes.Validator<number>;
25
- }> | null | undefined)[]>;
26
- closed: PropTypes.Requireable<boolean>;
27
- coordinatesOnHover: PropTypes.Requireable<boolean>;
28
- onChange: PropTypes.Validator<(...args: any[]) => any>;
29
- onClosePolygon: PropTypes.Validator<(...args: any[]) => any>;
30
- onDragStart: PropTypes.Requireable<(...args: any[]) => any>;
31
- onDragStop: PropTypes.Requireable<(...args: any[]) => any>;
32
- onClick: PropTypes.Requireable<(...args: any[]) => any>;
33
- graphProps: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
34
- scale: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
35
- x: PropTypes.Validator<(...args: any[]) => any>;
36
- y: PropTypes.Validator<(...args: any[]) => any>;
37
- }>>>;
38
- snap: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
39
- x: PropTypes.Validator<(...args: any[]) => any>;
40
- y: PropTypes.Validator<(...args: any[]) => any>;
41
- }>>>;
42
- domain: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
43
- min: PropTypes.Validator<number>;
44
- max: PropTypes.Validator<number>;
45
- step: PropTypes.Requireable<number>;
46
- }>>>;
47
- range: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
48
- min: PropTypes.Validator<number>;
49
- max: PropTypes.Validator<number>;
50
- step: PropTypes.Requireable<number>;
51
- }>>>;
52
- size: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
53
- width: PropTypes.Validator<number>;
54
- height: PropTypes.Validator<number>;
55
- }>>>;
56
- }>>>;
57
- isToolActive: PropTypes.Requireable<boolean>;
58
- middle: PropTypes.Requireable<object>;
59
- labelNode: PropTypes.Requireable<object>;
60
- labelModeEnabled: PropTypes.Requireable<boolean>;
61
- limitLabeling: PropTypes.Requireable<boolean>;
62
- onChangeLabelProps: PropTypes.Requireable<(...args: any[]) => any>;
63
- onSetMiddleLabel: PropTypes.Requireable<(...args: any[]) => any>;
64
- onChangeProps: PropTypes.Requireable<(...args: any[]) => any>;
65
- };
66
- static defaultProps: {
67
- points: never[];
68
- };
69
- dragPoint: any;
70
- dragLine: any;
71
- dragPoly: any;
72
- close: any;
73
- labelChange: any;
74
- clickPoint: any;
75
- input: {};
76
- render(): React.JSX.Element;
77
- }
78
- export declare const BaseComponent: typeof RawBaseComponent;
79
- export default class Component extends React.Component {
80
- static propTypes: {
81
- graphProps: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
82
- scale: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
83
- x: PropTypes.Validator<(...args: any[]) => any>;
84
- y: PropTypes.Validator<(...args: any[]) => any>;
85
- }>>>;
86
- snap: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
87
- x: PropTypes.Validator<(...args: any[]) => any>;
88
- y: PropTypes.Validator<(...args: any[]) => any>;
89
- }>>>;
90
- domain: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
91
- min: PropTypes.Validator<number>;
92
- max: PropTypes.Validator<number>;
93
- step: PropTypes.Requireable<number>;
94
- }>>>;
95
- range: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
96
- min: PropTypes.Validator<number>;
97
- max: PropTypes.Validator<number>;
98
- step: PropTypes.Requireable<number>;
99
- }>>>;
100
- size: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
101
- width: PropTypes.Validator<number>;
102
- height: PropTypes.Validator<number>;
103
- }>>>;
104
- }>>>;
105
- mark: PropTypes.Requireable<any>;
106
- onChange: PropTypes.Requireable<(...args: any[]) => any>;
107
- onDragStart: PropTypes.Requireable<(...args: any[]) => any>;
108
- onDragStop: PropTypes.Requireable<(...args: any[]) => any>;
109
- };
110
- static defaultProps: {};
111
- constructor(props: any);
112
- change: any;
113
- changeProps: any;
114
- changeLabelProps: any;
115
- setMiddleLabel: any;
116
- closePolygon: any;
117
- dragStart: () => void;
118
- dragStop: any;
119
- render(): React.JSX.Element;
120
- }
@@ -1,262 +0,0 @@
1
- import { __toESM as e } from "../../_virtual/_rolldown/runtime.js";
2
- import { require_browser as t } from "../../node_modules/.bun/invariant@2.2.4/node_modules/invariant/browser.js";
3
- import { equalPoints as n, getMiddleOfTwoPoints as r, getRightestPoints as i, stripEmptyLabel as a } from "../../utils.js";
4
- import { BasePoint as o } from "../shared/point/index.js";
5
- import { ToolPropTypeFields as s } from "../shared/types.js";
6
- import c from "../../mark-label.js";
7
- import l from "./line.js";
8
- import u, { Polygon as d } from "./polygon.js";
9
- import f from "react";
10
- import p from "prop-types";
11
- import { chunk as m, initial as h, isEmpty as g } from "@pie-element/shared-lodash";
12
- import { types as _ } from "@pie-lib/plot";
13
- import v from "debug";
14
- import { jsx as y, jsxs as b } from "react/jsx-runtime";
15
- import x from "react-dom";
16
- //#region src/tools/polygon/component.tsx
17
- var S = /* @__PURE__ */ e(t(), 1), C = v("pie-lib:graphing:polygon"), w = (e, t) => {
18
- let n = m(e.reduce((t, n, r) => {
19
- t.push({
20
- ...n,
21
- index: r
22
- });
23
- let i = r === e.length - 1 ? 0 : r + 1;
24
- return t.push({
25
- ...e[i],
26
- index: i
27
- }), t;
28
- }, []), 2).map(([e, t]) => ({
29
- from: e,
30
- to: t
31
- }));
32
- return t ? n : h(n);
33
- }, T = (e, ...t) => m(t, 2).reduce((e, t) => {
34
- if (t.length === 2) {
35
- let [n, r] = t;
36
- (0, S.default)(Number.isFinite(n.index), "Index must be defined");
37
- let i = n.index;
38
- return i >= 0 && e.splice(i, 1, r), e;
39
- } else return e;
40
- }, [...e]), E = class extends f.Component {
41
- static propTypes = {
42
- classes: p.object,
43
- className: p.string,
44
- disabled: p.bool,
45
- correctness: p.string,
46
- points: p.arrayOf(_.PointType),
47
- closed: p.bool,
48
- coordinatesOnHover: p.bool,
49
- onChange: p.func.isRequired,
50
- onClosePolygon: p.func.isRequired,
51
- onDragStart: p.func,
52
- onDragStop: p.func,
53
- onClick: p.func,
54
- graphProps: _.GraphPropsType.isRequired,
55
- isToolActive: p.bool,
56
- middle: p.object,
57
- labelNode: p.object,
58
- labelModeEnabled: p.bool,
59
- limitLabeling: p.bool,
60
- onChangeLabelProps: p.func,
61
- onSetMiddleLabel: p.func,
62
- onChangeProps: p.func
63
- };
64
- static defaultProps = { points: [] };
65
- dragPoint = (e, t, r) => {
66
- C("[dragPoint] from, to:", t, r);
67
- let { onChange: i, points: a } = this.props, o = [...a], s = !!(a || []).find((e) => n(e, r));
68
- n(t, r) || s || (a[e].label && (r.label = a[e].label), o.splice(e, 1, r), i(o));
69
- };
70
- dragLine = (e, t) => {
71
- C("[dragLine]: ", e, t);
72
- let { onChange: n } = this.props;
73
- e.from.label && (t.from.label = e.from.label), e.to.label && (t.to.label = e.to.label), n(T(this.props.points, e.from, t.from, e.to, t.to));
74
- };
75
- dragPoly = (e, t) => {
76
- C("[dragPoly] ", e, t);
77
- let { onChange: n } = this.props;
78
- t.forEach((n, r) => {
79
- e[r].label && (t[r].label = e[r].label);
80
- }), n(t);
81
- };
82
- close = () => {
83
- let { points: e, onClosePolygon: t } = this.props;
84
- C("[close] ..."), e.length >= 3 ? t() : C("[close] - nope");
85
- };
86
- labelChange = (e, t) => {
87
- let { points: n, onChangeProps: r } = this.props, i = { ...e };
88
- (!e.label || g(e.label)) && delete i.label;
89
- let a = [...n];
90
- a.splice(t, 1, i), r(a);
91
- };
92
- clickPoint = (e, t, n) => {
93
- let { closed: o, disabled: s, middle: c, onClick: l, isToolActive: u, labelModeEnabled: d, limitLabeling: f, onSetMiddleLabel: p, points: m } = this.props;
94
- if (d) {
95
- if (s || f) return;
96
- if (m && t === m.length) {
97
- let { a: t, b: n } = i(m);
98
- p({
99
- label: "",
100
- ...e,
101
- ...r(t, n)
102
- }, m.map(a));
103
- } else {
104
- let n = m.map(a);
105
- n.splice(t, 1, {
106
- label: "",
107
- ...e
108
- }), p(c && a(c), n);
109
- }
110
- setTimeout(() => {
111
- this.input[t] && this.input[t].focus();
112
- }, 0);
113
- return;
114
- }
115
- if (u && !o && t === 0) {
116
- this.close();
117
- return;
118
- }
119
- l(e || n);
120
- };
121
- input = {};
122
- render() {
123
- let { closed: e, coordinatesOnHover: t, correctness: n, disabled: r, graphProps: i, onChangeLabelProps: a, onDragStart: s, onDragStop: p, points: m, middle: h, labelNode: g, labelModeEnabled: _ } = this.props, v = w(m, e), S = {
124
- onDragStart: s,
125
- onDragStop: p,
126
- graphProps: i,
127
- disabled: r,
128
- correctness: n
129
- }, C = m && m.length || 0, T = null;
130
- return g && h && Object.prototype.hasOwnProperty.call(h, "label") && (T = x.createPortal(/* @__PURE__ */ y(c, {
131
- inputRef: (e) => this.input[C] = e,
132
- disabled: r || !_,
133
- mark: h,
134
- graphProps: i,
135
- onChange: (e) => a({
136
- ...h,
137
- label: e
138
- })
139
- }), g)), /* @__PURE__ */ b("g", { children: [
140
- e ? /* @__PURE__ */ b(f.Fragment, { children: [/* @__PURE__ */ y(u, {
141
- points: m,
142
- onDrag: this.dragPoly.bind(this, m),
143
- closed: e,
144
- ...S,
145
- onClick: this.clickPoint.bind(this, h, C)
146
- }), T] }) : /* @__PURE__ */ y(d, {
147
- points: m,
148
- graphProps: i,
149
- closed: e
150
- }),
151
- (v || []).map((e, t) => /* @__PURE__ */ y(l, {
152
- from: e.from,
153
- to: e.to,
154
- onDrag: this.dragLine.bind(this, e),
155
- ...S,
156
- onClick: this.clickPoint.bind(this, h, C)
157
- }, `line-${t}`)),
158
- (m || []).map((e, n) => [/* @__PURE__ */ y(o, {
159
- coordinatesOnHover: t,
160
- labelNode: g,
161
- x: e.x,
162
- y: e.y,
163
- onDrag: this.dragPoint.bind(this, n, e),
164
- ...S,
165
- onClick: this.clickPoint.bind(this, e, n)
166
- }, `point-${n}`), g && Object.prototype.hasOwnProperty.call(e, "label") ? x.createPortal(/* @__PURE__ */ y(c, {
167
- inputRef: (e) => this.input[n] = e,
168
- disabled: r || !_,
169
- mark: e,
170
- graphProps: i,
171
- onChange: (t) => this.labelChange({
172
- ...e,
173
- label: t
174
- }, n)
175
- }), g) : null])
176
- ] });
177
- }
178
- }, D = class extends f.Component {
179
- static propTypes = {
180
- ...s,
181
- graphProps: _.GraphPropsType.isRequired
182
- };
183
- static defaultProps = {};
184
- constructor(e) {
185
- super(e), this.state = {};
186
- }
187
- change = (e) => {
188
- let { mark: { middle: t } } = this.props, n = {
189
- ...this.state.mark,
190
- points: e
191
- };
192
- if (t) {
193
- let { a, b: o } = i(e);
194
- n.middle = {
195
- ...t,
196
- ...r(a, o)
197
- };
198
- }
199
- this.setState({ mark: n });
200
- };
201
- changeProps = (e) => {
202
- let t = {
203
- ...this.props.mark,
204
- points: e
205
- };
206
- this.props.onChange(this.props.mark, t);
207
- };
208
- changeLabelProps = (e) => {
209
- let { mark: t, onChange: n } = this.props, r = {
210
- ...t.middle,
211
- ...e
212
- };
213
- (!r.label || g(r.label)) && delete r.label, n(t, {
214
- ...t,
215
- middle: r
216
- });
217
- };
218
- setMiddleLabel = (e, t) => {
219
- let { mark: n, onChange: r } = this.props, i = {
220
- ...n,
221
- middle: e
222
- };
223
- t && (i.points = t), r(n, i);
224
- };
225
- closePolygon = () => {
226
- C("[closePolygon] ...");
227
- let { onComplete: e, mark: t } = this.props;
228
- e(t, {
229
- ...t,
230
- closed: !0
231
- });
232
- };
233
- dragStart = () => this.setState({ mark: this.props.mark });
234
- dragStop = () => {
235
- let { onChange: e } = this.props, t = { ...this.state.mark };
236
- this.setState({ mark: void 0 }, () => {
237
- e(this.props.mark, t);
238
- });
239
- };
240
- render() {
241
- let { coordinatesOnHover: e, mark: t, graphProps: n, onClick: r, isToolActive: i, labelNode: a, labelModeEnabled: o, limitLabeling: s } = this.props, { mark: c } = this.state;
242
- return /* @__PURE__ */ y(E, {
243
- ...c || t,
244
- coordinatesOnHover: e,
245
- onChange: this.change,
246
- onChangeLabelProps: this.changeLabelProps,
247
- onSetMiddleLabel: this.setMiddleLabel,
248
- onChangeProps: this.changeProps,
249
- onClosePolygon: this.closePolygon,
250
- onDragStart: this.dragStart,
251
- onDragStop: this.dragStop,
252
- onClick: r,
253
- graphProps: n,
254
- isToolActive: i,
255
- labelNode: a,
256
- labelModeEnabled: o,
257
- limitLabeling: s
258
- });
259
- }
260
- };
261
- //#endregion
262
- export { D as default };
@@ -1,19 +0,0 @@
1
- /**
2
- * @synced-from pie-lib/packages/graphing/src/tools/polygon/index.js
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 Polygon from './component.js';
10
- export declare const addPointToArray: (point: any, arr: any) => {
11
- points: any;
12
- closed: any;
13
- } | undefined;
14
- export declare const tool: () => {
15
- type: string;
16
- Component: typeof Polygon;
17
- complete: (data: any, mark: any) => any;
18
- addPoint: (point: any, mark: any) => any;
19
- };
@@ -1,55 +0,0 @@
1
- import { equalPoints as e } from "../../utils.js";
2
- import t from "./component.js";
3
- //#region src/tools/polygon/index.ts
4
- var n = (t, n) => {
5
- if (n ||= [], n.length === 0) return {
6
- points: [t],
7
- closed: !1
8
- };
9
- if (n.length === 1) return e(t, n[0]) ? {
10
- points: n,
11
- closed: !1
12
- } : {
13
- points: [...n, t],
14
- closed: !1
15
- };
16
- if (n.length >= 2) {
17
- let r = e(t, n[0]);
18
- return r ? {
19
- points: n,
20
- closed: r
21
- } : n.find((n) => e(n, t)) ? {
22
- points: n,
23
- closed: !1
24
- } : {
25
- points: [...n, t],
26
- closed: !1
27
- };
28
- }
29
- }, r = () => ({
30
- type: "polygon",
31
- Component: t,
32
- complete: (e, t) => ({
33
- ...t,
34
- building: !1,
35
- closed: !0
36
- }),
37
- addPoint: (e, t) => {
38
- if (t) {
39
- let { closed: r, points: i } = n(e, t.points);
40
- return {
41
- ...t,
42
- closed: r,
43
- points: i,
44
- building: !r
45
- };
46
- } else return {
47
- type: "polygon",
48
- points: [e],
49
- closed: !1,
50
- building: !0
51
- };
52
- }
53
- });
54
- //#endregion
55
- export { r as tool };