@pie-lib/graphing 4.0.4-next.9 → 4.0.5-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (475) hide show
  1. package/dist/_virtual/_rolldown/runtime.js +23 -0
  2. package/dist/axis/arrow.d.ts +13 -0
  3. package/dist/axis/arrow.js +34 -0
  4. package/dist/axis/axes.d.ts +132 -0
  5. package/dist/axis/axes.js +214 -0
  6. package/dist/axis/index.d.ts +10 -0
  7. package/dist/bg.d.ts +51 -0
  8. package/dist/bg.js +44 -0
  9. package/dist/container/actions.d.ts +15 -0
  10. package/dist/container/actions.js +7 -0
  11. package/dist/container/index.d.ts +26 -0
  12. package/dist/container/index.js +50 -0
  13. package/dist/container/marks.d.ts +10 -0
  14. package/dist/container/marks.js +11 -0
  15. package/dist/container/middleware.d.ts +10 -0
  16. package/dist/container/middleware.js +4 -0
  17. package/dist/container/reducer.d.ts +12 -0
  18. package/dist/container/reducer.js +7 -0
  19. package/dist/coordinates-label.d.ts +50 -0
  20. package/dist/coordinates-label.js +46 -0
  21. package/dist/graph-with-controls.d.ts +88 -0
  22. package/dist/graph-with-controls.js +154 -0
  23. package/dist/graph.d.ts +126 -0
  24. package/dist/graph.js +209 -0
  25. package/dist/grid-setup.d.ts +27 -0
  26. package/dist/grid-setup.js +307 -0
  27. package/dist/grid.d.ts +43 -0
  28. package/dist/grid.js +59 -0
  29. package/dist/index.d.ts +15 -0
  30. package/dist/index.js +7 -0
  31. package/dist/key-legend.d.ts +21 -0
  32. package/dist/key-legend.js +231 -0
  33. package/dist/label-svg-icon.d.ts +18 -0
  34. package/dist/label-svg-icon.js +42 -0
  35. package/dist/labels.d.ts +37 -0
  36. package/dist/labels.js +152 -0
  37. package/dist/mark-label.d.ts +58 -0
  38. package/dist/mark-label.js +172 -0
  39. package/dist/node_modules/.bun/@babel_runtime@7.29.7/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js +7 -0
  40. package/dist/node_modules/.bun/@babel_runtime@7.29.7/node_modules/@babel/runtime/helpers/esm/defineProperty.js +12 -0
  41. package/dist/node_modules/.bun/@babel_runtime@7.29.7/node_modules/@babel/runtime/helpers/esm/extends.js +12 -0
  42. package/dist/node_modules/.bun/@babel_runtime@7.29.7/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js +7 -0
  43. package/dist/node_modules/.bun/@babel_runtime@7.29.7/node_modules/@babel/runtime/helpers/esm/objectSpread2.js +25 -0
  44. package/dist/node_modules/.bun/@babel_runtime@7.29.7/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +12 -0
  45. package/dist/node_modules/.bun/@babel_runtime@7.29.7/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +8 -0
  46. package/dist/node_modules/.bun/@babel_runtime@7.29.7/node_modules/@babel/runtime/helpers/esm/toPrimitive.js +14 -0
  47. package/dist/node_modules/.bun/@babel_runtime@7.29.7/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js +9 -0
  48. package/dist/node_modules/.bun/@babel_runtime@7.29.7/node_modules/@babel/runtime/helpers/esm/typeof.js +11 -0
  49. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/axis/Axis.js +100 -0
  50. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/axis/AxisRenderer.js +61 -0
  51. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/axis/Ticks.js +42 -0
  52. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/constants/orientation.js +9 -0
  53. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/utils/createPoint.js +14 -0
  54. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/utils/getAxisRangePaddingConfig.js +21 -0
  55. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/utils/getLabelTransform.js +16 -0
  56. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/utils/getTickFormatter.js +8 -0
  57. package/dist/node_modules/.bun/@visx_axis@3.12.0_f4eacebf2041cd4f/node_modules/@visx/axis/esm/utils/getTickPosition.js +15 -0
  58. package/dist/node_modules/.bun/@visx_curve@3.12.0/node_modules/@visx/curve/esm/index.js +2 -0
  59. package/dist/node_modules/.bun/@visx_grid@3.12.0_f4eacebf2041cd4f/node_modules/@visx/grid/esm/grids/Grid.js +78 -0
  60. package/dist/node_modules/.bun/@visx_grid@3.12.0_f4eacebf2041cd4f/node_modules/@visx/grid/esm/grids/GridColumns.js +79 -0
  61. package/dist/node_modules/.bun/@visx_grid@3.12.0_f4eacebf2041cd4f/node_modules/@visx/grid/esm/grids/GridRows.js +79 -0
  62. package/dist/node_modules/.bun/@visx_grid@3.12.0_f4eacebf2041cd4f/node_modules/@visx/grid/esm/utils/getScaleBandwidth.js +6 -0
  63. package/dist/node_modules/.bun/@visx_group@3.12.0_f4eacebf2041cd4f/node_modules/@visx/group/esm/Group.js +49 -0
  64. package/dist/node_modules/.bun/@visx_point@3.12.0/node_modules/@visx/point/esm/Point.js +18 -0
  65. package/dist/node_modules/.bun/@visx_scale@3.12.0/node_modules/@visx/scale/esm/utils/coerceNumber.js +10 -0
  66. package/dist/node_modules/.bun/@visx_scale@3.12.0/node_modules/@visx/scale/esm/utils/getTicks.js +9 -0
  67. package/dist/node_modules/.bun/@visx_scale@3.12.0/node_modules/@visx/scale/esm/utils/toString.js +6 -0
  68. package/dist/node_modules/.bun/@visx_shape@3.12.0_f4eacebf2041cd4f/node_modules/@visx/shape/esm/shapes/Line.js +46 -0
  69. package/dist/node_modules/.bun/@visx_shape@3.12.0_f4eacebf2041cd4f/node_modules/@visx/shape/esm/shapes/LinePath.js +49 -0
  70. package/dist/node_modules/.bun/@visx_shape@3.12.0_f4eacebf2041cd4f/node_modules/@visx/shape/esm/util/D3ShapeFactories.js +9 -0
  71. package/dist/node_modules/.bun/@visx_shape@3.12.0_f4eacebf2041cd4f/node_modules/@visx/shape/esm/util/setNumberOrNumberAccessor.js +6 -0
  72. package/dist/node_modules/.bun/@visx_shape@3.12.0_f4eacebf2041cd4f/node_modules/@visx/shape/lib/shapes/Line.js +52 -0
  73. package/dist/node_modules/.bun/@visx_text@3.12.0_f4eacebf2041cd4f/node_modules/@visx/text/esm/Text.js +57 -0
  74. package/dist/node_modules/.bun/@visx_text@3.12.0_f4eacebf2041cd4f/node_modules/@visx/text/esm/hooks/useText.js +91 -0
  75. package/dist/node_modules/.bun/@visx_text@3.12.0_f4eacebf2041cd4f/node_modules/@visx/text/esm/util/getStringWidth.js +21 -0
  76. package/dist/node_modules/.bun/balanced-match@0.4.2/node_modules/balanced-match/index.js +32 -0
  77. package/dist/node_modules/.bun/balanced-match@1.0.2/node_modules/balanced-match/index.js +33 -0
  78. package/dist/node_modules/.bun/hoist-non-react-statics@3.3.2/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js +68 -0
  79. package/dist/node_modules/.bun/invariant@2.2.4/node_modules/invariant/browser.js +28 -0
  80. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_Hash.js +21 -0
  81. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_ListCache.js +21 -0
  82. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_Map.js +10 -0
  83. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_MapCache.js +21 -0
  84. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_Symbol.js +9 -0
  85. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_assocIndexOf.js +14 -0
  86. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_baseGetTag.js +15 -0
  87. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_baseIsNative.js +16 -0
  88. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_coreJsData.js +9 -0
  89. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_freeGlobal.js +8 -0
  90. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_getMapData.js +14 -0
  91. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_getNative.js +15 -0
  92. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_getRawTag.js +19 -0
  93. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_getValue.js +11 -0
  94. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_hashClear.js +13 -0
  95. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_hashDelete.js +12 -0
  96. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_hashGet.js +18 -0
  97. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_hashHas.js +14 -0
  98. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_hashSet.js +14 -0
  99. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_isKeyable.js +12 -0
  100. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_isMasked.js +16 -0
  101. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_listCacheClear.js +11 -0
  102. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_listCacheDelete.js +14 -0
  103. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_listCacheGet.js +14 -0
  104. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_listCacheHas.js +13 -0
  105. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_listCacheSet.js +14 -0
  106. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_mapCacheClear.js +19 -0
  107. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_mapCacheDelete.js +14 -0
  108. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_mapCacheGet.js +13 -0
  109. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_mapCacheHas.js +13 -0
  110. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_mapCacheSet.js +14 -0
  111. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_nativeCreate.js +9 -0
  112. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_objectToString.js +12 -0
  113. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_root.js +10 -0
  114. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/_toSource.js +20 -0
  115. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/eq.js +11 -0
  116. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/isFunction.js +16 -0
  117. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/isObject.js +12 -0
  118. package/dist/node_modules/.bun/lodash@4.18.1/node_modules/lodash/memoize.js +20 -0
  119. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/formula_evaluator.js +37 -0
  120. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/lexer.js +509 -0
  121. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/math_function.js +108 -0
  122. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/postfix.js +31 -0
  123. package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/postfix_evaluator.js +45 -0
  124. package/dist/node_modules/.bun/react-input-autosize@2.2.2_f4eacebf2041cd4f/node_modules/react-input-autosize/lib/AutosizeInput.js +216 -0
  125. package/dist/node_modules/.bun/react-is@16.13.1/node_modules/react-is/cjs/react-is.development.js +82 -0
  126. package/dist/node_modules/.bun/react-is@16.13.1/node_modules/react-is/cjs/react-is.production.min.js +62 -0
  127. package/dist/node_modules/.bun/react-is@16.13.1/node_modules/react-is/index.js +10 -0
  128. package/dist/node_modules/.bun/react-redux@6.0.1_926323a638b43722/node_modules/react-redux/es/components/Context.js +5 -0
  129. package/dist/node_modules/.bun/react-redux@6.0.1_926323a638b43722/node_modules/react-redux/es/components/Provider.js +47 -0
  130. package/dist/node_modules/.bun/react-redux@6.0.1_926323a638b43722/node_modules/react-redux/es/components/connectAdvanced.js +95 -0
  131. package/dist/node_modules/.bun/react-redux@6.0.1_926323a638b43722/node_modules/react-redux/es/connect/connect.js +52 -0
  132. package/dist/node_modules/.bun/react-redux@6.0.1_926323a638b43722/node_modules/react-redux/es/connect/mapDispatchToProps.js +23 -0
  133. package/dist/node_modules/.bun/react-redux@6.0.1_926323a638b43722/node_modules/react-redux/es/connect/mapStateToProps.js +13 -0
  134. package/dist/node_modules/.bun/react-redux@6.0.1_926323a638b43722/node_modules/react-redux/es/connect/mergeProps.js +26 -0
  135. package/dist/node_modules/.bun/react-redux@6.0.1_926323a638b43722/node_modules/react-redux/es/connect/selectorFactory.js +41 -0
  136. package/dist/node_modules/.bun/react-redux@6.0.1_926323a638b43722/node_modules/react-redux/es/connect/verifySubselectors.js +11 -0
  137. package/dist/node_modules/.bun/react-redux@6.0.1_926323a638b43722/node_modules/react-redux/es/connect/wrapMapToProps.js +28 -0
  138. package/dist/node_modules/.bun/react-redux@6.0.1_926323a638b43722/node_modules/react-redux/es/index.js +4 -0
  139. package/dist/node_modules/.bun/react-redux@6.0.1_926323a638b43722/node_modules/react-redux/es/utils/isPlainObject.js +10 -0
  140. package/dist/node_modules/.bun/react-redux@6.0.1_926323a638b43722/node_modules/react-redux/es/utils/shallowEqual.js +15 -0
  141. package/dist/node_modules/.bun/react-redux@6.0.1_926323a638b43722/node_modules/react-redux/es/utils/verifyPlainObject.js +8 -0
  142. package/dist/node_modules/.bun/react-redux@6.0.1_926323a638b43722/node_modules/react-redux/es/utils/warning.js +9 -0
  143. package/dist/node_modules/.bun/reduce-css-calc@1.3.0/node_modules/reduce-css-calc/index.js +49 -0
  144. package/dist/node_modules/.bun/reduce-function-call@1.0.3/node_modules/reduce-function-call/index.js +34 -0
  145. package/dist/node_modules/.bun/redux-undo@1.1.0/node_modules/redux-undo/dist/redux-undo.js +185 -0
  146. package/dist/node_modules/.bun/redux@4.2.1/node_modules/redux/es/redux.js +225 -0
  147. package/dist/toggle-bar.d.ts +40 -0
  148. package/dist/toggle-bar.js +155 -0
  149. package/dist/tool-menu.d.ts +29 -0
  150. package/dist/tool-menu.js +41 -0
  151. package/dist/tools/absolute/component.d.ts +16 -0
  152. package/dist/tools/absolute/component.js +15 -0
  153. package/dist/tools/absolute/index.d.ts +20 -0
  154. package/dist/tools/absolute/index.js +32 -0
  155. package/dist/tools/circle/bg-circle.d.ts +116 -0
  156. package/dist/tools/circle/bg-circle.js +72 -0
  157. package/dist/tools/circle/component.d.ts +83 -0
  158. package/dist/tools/circle/component.js +195 -0
  159. package/dist/tools/circle/index.d.ts +20 -0
  160. package/dist/tools/circle/index.js +22 -0
  161. package/dist/tools/exponential/component.d.ts +16 -0
  162. package/dist/tools/exponential/component.js +14 -0
  163. package/dist/tools/exponential/index.d.ts +20 -0
  164. package/dist/tools/exponential/index.js +32 -0
  165. package/dist/tools/index.d.ts +27 -0
  166. package/dist/tools/index.js +55 -0
  167. package/dist/tools/line/component.d.ts +124 -0
  168. package/dist/tools/line/component.js +72 -0
  169. package/dist/tools/line/index.d.ts +13 -0
  170. package/dist/tools/line/index.js +6 -0
  171. package/dist/tools/parabola/component.d.ts +16 -0
  172. package/dist/tools/parabola/component.js +14 -0
  173. package/dist/tools/parabola/index.d.ts +20 -0
  174. package/dist/tools/parabola/index.js +32 -0
  175. package/dist/tools/point/component.d.ts +50 -0
  176. package/dist/tools/point/component.js +85 -0
  177. package/dist/tools/point/index.d.ts +15 -0
  178. package/dist/tools/point/index.js +13 -0
  179. package/dist/tools/polygon/component.d.ts +117 -0
  180. package/dist/tools/polygon/component.js +262 -0
  181. package/dist/tools/polygon/index.d.ts +19 -0
  182. package/dist/tools/polygon/index.js +55 -0
  183. package/dist/tools/polygon/line.d.ts +125 -0
  184. package/dist/tools/polygon/line.js +63 -0
  185. package/dist/tools/polygon/polygon.d.ts +122 -0
  186. package/dist/tools/polygon/polygon.js +74 -0
  187. package/dist/tools/ray/component.d.ts +101 -0
  188. package/dist/tools/ray/component.js +71 -0
  189. package/dist/tools/ray/index.d.ts +13 -0
  190. package/dist/tools/ray/index.js +6 -0
  191. package/dist/tools/segment/component.d.ts +100 -0
  192. package/dist/tools/segment/component.js +52 -0
  193. package/dist/tools/segment/index.d.ts +13 -0
  194. package/dist/tools/segment/index.js +6 -0
  195. package/dist/tools/shared/arrow-head.d.ts +51 -0
  196. package/dist/tools/shared/arrow-head.js +63 -0
  197. package/dist/tools/shared/icons/CorrectSVG.d.ts +26 -0
  198. package/dist/tools/shared/icons/CorrectSVG.js +29 -0
  199. package/dist/tools/shared/icons/IncorrectSVG.d.ts +26 -0
  200. package/dist/tools/shared/icons/IncorrectSVG.js +27 -0
  201. package/dist/tools/shared/icons/MissingSVG.d.ts +26 -0
  202. package/dist/tools/shared/icons/MissingSVG.js +28 -0
  203. package/dist/tools/shared/line/index.d.ts +245 -0
  204. package/dist/tools/shared/line/index.js +319 -0
  205. package/dist/tools/shared/line/line-path.d.ts +57 -0
  206. package/dist/tools/shared/line/line-path.js +71 -0
  207. package/dist/tools/shared/line/with-root-edge.d.ts +142 -0
  208. package/dist/tools/shared/line/with-root-edge.js +73 -0
  209. package/dist/tools/shared/point/arrow-point.d.ts +56 -0
  210. package/dist/tools/shared/point/arrow-point.js +41 -0
  211. package/dist/tools/shared/point/arrow.d.ts +45 -0
  212. package/dist/tools/shared/point/arrow.js +35 -0
  213. package/dist/tools/shared/point/base-point.d.ts +52 -0
  214. package/dist/tools/shared/point/base-point.js +103 -0
  215. package/dist/tools/shared/point/index.d.ts +216 -0
  216. package/dist/tools/shared/point/index.js +45 -0
  217. package/dist/tools/shared/styles.d.ts +29 -0
  218. package/dist/tools/shared/styles.js +20 -0
  219. package/dist/tools/shared/types.d.ts +21 -0
  220. package/dist/tools/shared/types.js +11 -0
  221. package/dist/tools/sine/component.d.ts +16 -0
  222. package/dist/tools/sine/component.js +22 -0
  223. package/dist/tools/sine/index.d.ts +20 -0
  224. package/dist/tools/sine/index.js +32 -0
  225. package/dist/tools/vector/component.d.ts +100 -0
  226. package/dist/tools/vector/component.js +44 -0
  227. package/dist/tools/vector/index.d.ts +13 -0
  228. package/dist/tools/vector/index.js +6 -0
  229. package/dist/undo-redo.d.ts +22 -0
  230. package/dist/undo-redo.js +47 -0
  231. package/dist/use-debounce.d.ts +9 -0
  232. package/dist/use-debounce.js +13 -0
  233. package/dist/utils.d.ts +61 -0
  234. package/dist/utils.js +75 -0
  235. package/package.json +35 -25
  236. package/CHANGELOG.json +0 -1
  237. package/CHANGELOG.md +0 -1461
  238. package/LICENSE.md +0 -5
  239. package/lib/axis/arrow.js +0 -79
  240. package/lib/axis/arrow.js.map +0 -1
  241. package/lib/axis/axes.js +0 -329
  242. package/lib/axis/axes.js.map +0 -1
  243. package/lib/axis/index.js +0 -21
  244. package/lib/axis/index.js.map +0 -1
  245. package/lib/bg.js +0 -114
  246. package/lib/bg.js.map +0 -1
  247. package/lib/container/actions.js +0 -18
  248. package/lib/container/actions.js.map +0 -1
  249. package/lib/container/index.js +0 -118
  250. package/lib/container/index.js.map +0 -1
  251. package/lib/container/marks.js +0 -22
  252. package/lib/container/marks.js.map +0 -1
  253. package/lib/container/middleware.js +0 -19
  254. package/lib/container/middleware.js.map +0 -1
  255. package/lib/container/reducer.js +0 -18
  256. package/lib/container/reducer.js.map +0 -1
  257. package/lib/coordinates-label.js +0 -79
  258. package/lib/coordinates-label.js.map +0 -1
  259. package/lib/graph-with-controls.js +0 -294
  260. package/lib/graph-with-controls.js.map +0 -1
  261. package/lib/graph.js +0 -327
  262. package/lib/graph.js.map +0 -1
  263. package/lib/grid-setup.js +0 -414
  264. package/lib/grid-setup.js.map +0 -1
  265. package/lib/grid.js +0 -131
  266. package/lib/grid.js.map +0 -1
  267. package/lib/index.js +0 -47
  268. package/lib/index.js.map +0 -1
  269. package/lib/key-legend.js +0 -201
  270. package/lib/key-legend.js.map +0 -1
  271. package/lib/label-svg-icon.js +0 -50
  272. package/lib/label-svg-icon.js.map +0 -1
  273. package/lib/labels.js +0 -243
  274. package/lib/labels.js.map +0 -1
  275. package/lib/mark-label.js +0 -285
  276. package/lib/mark-label.js.map +0 -1
  277. package/lib/toggle-bar.js +0 -252
  278. package/lib/toggle-bar.js.map +0 -1
  279. package/lib/tool-menu.js +0 -78
  280. package/lib/tool-menu.js.map +0 -1
  281. package/lib/tools/absolute/component.js +0 -29
  282. package/lib/tools/absolute/component.js.map +0 -1
  283. package/lib/tools/absolute/index.js +0 -50
  284. package/lib/tools/absolute/index.js.map +0 -1
  285. package/lib/tools/circle/bg-circle.js +0 -123
  286. package/lib/tools/circle/bg-circle.js.map +0 -1
  287. package/lib/tools/circle/component.js +0 -321
  288. package/lib/tools/circle/component.js.map +0 -1
  289. package/lib/tools/circle/index.js +0 -41
  290. package/lib/tools/circle/index.js.map +0 -1
  291. package/lib/tools/exponential/component.js +0 -28
  292. package/lib/tools/exponential/component.js.map +0 -1
  293. package/lib/tools/exponential/index.js +0 -56
  294. package/lib/tools/exponential/index.js.map +0 -1
  295. package/lib/tools/index.js +0 -86
  296. package/lib/tools/index.js.map +0 -1
  297. package/lib/tools/line/component.js +0 -97
  298. package/lib/tools/line/component.js.map +0 -1
  299. package/lib/tools/line/index.js +0 -11
  300. package/lib/tools/line/index.js.map +0 -1
  301. package/lib/tools/parabola/component.js +0 -28
  302. package/lib/tools/parabola/component.js.map +0 -1
  303. package/lib/tools/parabola/index.js +0 -50
  304. package/lib/tools/parabola/index.js.map +0 -1
  305. package/lib/tools/point/component.js +0 -148
  306. package/lib/tools/point/component.js.map +0 -1
  307. package/lib/tools/point/index.js +0 -24
  308. package/lib/tools/point/index.js.map +0 -1
  309. package/lib/tools/polygon/component.js +0 -437
  310. package/lib/tools/polygon/component.js.map +0 -1
  311. package/lib/tools/polygon/index.js +0 -89
  312. package/lib/tools/polygon/index.js.map +0 -1
  313. package/lib/tools/polygon/line.js +0 -115
  314. package/lib/tools/polygon/line.js.map +0 -1
  315. package/lib/tools/polygon/polygon.js +0 -130
  316. package/lib/tools/polygon/polygon.js.map +0 -1
  317. package/lib/tools/ray/component.js +0 -95
  318. package/lib/tools/ray/component.js.map +0 -1
  319. package/lib/tools/ray/index.js +0 -11
  320. package/lib/tools/ray/index.js.map +0 -1
  321. package/lib/tools/segment/component.js +0 -70
  322. package/lib/tools/segment/component.js.map +0 -1
  323. package/lib/tools/segment/index.js +0 -11
  324. package/lib/tools/segment/index.js.map +0 -1
  325. package/lib/tools/shared/arrow-head.js +0 -111
  326. package/lib/tools/shared/arrow-head.js.map +0 -1
  327. package/lib/tools/shared/icons/CorrectSVG.js +0 -40
  328. package/lib/tools/shared/icons/CorrectSVG.js.map +0 -1
  329. package/lib/tools/shared/icons/IncorrectSVG.js +0 -40
  330. package/lib/tools/shared/icons/IncorrectSVG.js.map +0 -1
  331. package/lib/tools/shared/icons/MissingSVG.js +0 -39
  332. package/lib/tools/shared/icons/MissingSVG.js.map +0 -1
  333. package/lib/tools/shared/line/index.js +0 -550
  334. package/lib/tools/shared/line/index.js.map +0 -1
  335. package/lib/tools/shared/line/line-path.js +0 -121
  336. package/lib/tools/shared/line/line-path.js.map +0 -1
  337. package/lib/tools/shared/line/with-root-edge.js +0 -121
  338. package/lib/tools/shared/line/with-root-edge.js.map +0 -1
  339. package/lib/tools/shared/point/arrow-point.js +0 -72
  340. package/lib/tools/shared/point/arrow-point.js.map +0 -1
  341. package/lib/tools/shared/point/arrow.js +0 -67
  342. package/lib/tools/shared/point/arrow.js.map +0 -1
  343. package/lib/tools/shared/point/base-point.js +0 -157
  344. package/lib/tools/shared/point/base-point.js.map +0 -1
  345. package/lib/tools/shared/point/index.js +0 -68
  346. package/lib/tools/shared/point/index.js.map +0 -1
  347. package/lib/tools/shared/styles.js +0 -33
  348. package/lib/tools/shared/styles.js.map +0 -1
  349. package/lib/tools/shared/types.js +0 -16
  350. package/lib/tools/shared/types.js.map +0 -1
  351. package/lib/tools/sine/component.js +0 -40
  352. package/lib/tools/sine/component.js.map +0 -1
  353. package/lib/tools/sine/index.js +0 -50
  354. package/lib/tools/sine/index.js.map +0 -1
  355. package/lib/tools/vector/component.js +0 -68
  356. package/lib/tools/vector/component.js.map +0 -1
  357. package/lib/tools/vector/index.js +0 -11
  358. package/lib/tools/vector/index.js.map +0 -1
  359. package/lib/undo-redo.js +0 -86
  360. package/lib/undo-redo.js.map +0 -1
  361. package/lib/use-debounce.js +0 -25
  362. package/lib/use-debounce.js.map +0 -1
  363. package/lib/utils.js +0 -229
  364. package/lib/utils.js.map +0 -1
  365. package/src/__tests__/bg.test.jsx +0 -250
  366. package/src/__tests__/coordinates-label.test.jsx +0 -243
  367. package/src/__tests__/graph-with-controls.test.jsx +0 -198
  368. package/src/__tests__/graph.test.jsx +0 -721
  369. package/src/__tests__/grid-setup.test.jsx +0 -645
  370. package/src/__tests__/grid.test.jsx +0 -22
  371. package/src/__tests__/key-legend.test.jsx +0 -260
  372. package/src/__tests__/label-svg-icon.test.jsx +0 -278
  373. package/src/__tests__/labels.test.jsx +0 -55
  374. package/src/__tests__/mark-label.test.jsx +0 -63
  375. package/src/__tests__/toggle-bar.test.jsx +0 -146
  376. package/src/__tests__/tool-menu.test.jsx +0 -115
  377. package/src/__tests__/undo-redo.test.jsx +0 -24
  378. package/src/__tests__/use-debounce.test.js +0 -21
  379. package/src/__tests__/utils.js +0 -41
  380. package/src/__tests__/utils.test.js +0 -105
  381. package/src/axis/__tests__/arrow.test.jsx +0 -38
  382. package/src/axis/__tests__/axes.test.jsx +0 -216
  383. package/src/axis/arrow.jsx +0 -57
  384. package/src/axis/axes.jsx +0 -285
  385. package/src/axis/index.js +0 -3
  386. package/src/bg.jsx +0 -96
  387. package/src/container/__tests__/actions.test.js +0 -105
  388. package/src/container/__tests__/index.test.jsx +0 -319
  389. package/src/container/__tests__/marks.test.js +0 -172
  390. package/src/container/__tests__/middleware.test.js +0 -235
  391. package/src/container/__tests__/reducer.test.js +0 -324
  392. package/src/container/actions.js +0 -8
  393. package/src/container/index.jsx +0 -83
  394. package/src/container/marks.js +0 -14
  395. package/src/container/middleware.js +0 -7
  396. package/src/container/reducer.js +0 -5
  397. package/src/coordinates-label.jsx +0 -63
  398. package/src/graph-with-controls.jsx +0 -239
  399. package/src/graph.jsx +0 -303
  400. package/src/grid-setup.jsx +0 -432
  401. package/src/grid.jsx +0 -133
  402. package/src/index.js +0 -7
  403. package/src/key-legend.jsx +0 -142
  404. package/src/label-svg-icon.jsx +0 -39
  405. package/src/labels.jsx +0 -207
  406. package/src/mark-label.jsx +0 -244
  407. package/src/toggle-bar.jsx +0 -224
  408. package/src/tool-menu.jsx +0 -49
  409. package/src/tools/absolute/__tests__/component.test.jsx +0 -53
  410. package/src/tools/absolute/component.jsx +0 -23
  411. package/src/tools/absolute/index.js +0 -31
  412. package/src/tools/circle/__tests__/bg-circle.test.jsx +0 -26
  413. package/src/tools/circle/__tests__/component.test.jsx +0 -494
  414. package/src/tools/circle/__tests__/index.test.js +0 -480
  415. package/src/tools/circle/bg-circle.jsx +0 -81
  416. package/src/tools/circle/component.jsx +0 -264
  417. package/src/tools/circle/index.js +0 -25
  418. package/src/tools/exponential/__tests__/component.test.jsx +0 -53
  419. package/src/tools/exponential/__tests__/index.test.js +0 -729
  420. package/src/tools/exponential/component.jsx +0 -23
  421. package/src/tools/exponential/index.js +0 -39
  422. package/src/tools/index.js +0 -48
  423. package/src/tools/line/__tests__/component.test.jsx +0 -37
  424. package/src/tools/line/component.jsx +0 -93
  425. package/src/tools/line/index.js +0 -4
  426. package/src/tools/parabola/__tests__/component.test.jsx +0 -48
  427. package/src/tools/parabola/__tests__/index.test.js +0 -470
  428. package/src/tools/parabola/component.jsx +0 -23
  429. package/src/tools/parabola/index.js +0 -31
  430. package/src/tools/point/__tests__/component.test.jsx +0 -349
  431. package/src/tools/point/__tests__/index.test.js +0 -241
  432. package/src/tools/point/component.jsx +0 -126
  433. package/src/tools/point/index.js +0 -11
  434. package/src/tools/polygon/__tests__/component.test.jsx +0 -471
  435. package/src/tools/polygon/__tests__/index.test.js +0 -294
  436. package/src/tools/polygon/__tests__/line.test.jsx +0 -35
  437. package/src/tools/polygon/__tests__/polygon.test.jsx +0 -61
  438. package/src/tools/polygon/component.jsx +0 -409
  439. package/src/tools/polygon/index.js +0 -52
  440. package/src/tools/polygon/line.jsx +0 -84
  441. package/src/tools/polygon/polygon.jsx +0 -110
  442. package/src/tools/ray/__tests__/component.test.jsx +0 -29
  443. package/src/tools/ray/component.jsx +0 -92
  444. package/src/tools/ray/index.js +0 -4
  445. package/src/tools/segment/__tests__/component.test.jsx +0 -28
  446. package/src/tools/segment/component.jsx +0 -53
  447. package/src/tools/segment/index.js +0 -4
  448. package/src/tools/shared/__tests__/arrow-head.test.jsx +0 -31
  449. package/src/tools/shared/arrow-head.jsx +0 -102
  450. package/src/tools/shared/icons/CorrectSVG.jsx +0 -32
  451. package/src/tools/shared/icons/IncorrectSVG.jsx +0 -30
  452. package/src/tools/shared/icons/MissingSVG.jsx +0 -31
  453. package/src/tools/shared/line/__tests__/index.test.jsx +0 -109
  454. package/src/tools/shared/line/__tests__/line-path.test.jsx +0 -53
  455. package/src/tools/shared/line/__tests__/with-root-edge.test.jsx +0 -73
  456. package/src/tools/shared/line/index.jsx +0 -487
  457. package/src/tools/shared/line/line-path.jsx +0 -90
  458. package/src/tools/shared/line/with-root-edge.jsx +0 -97
  459. package/src/tools/shared/point/__tests__/arrow-point.test.jsx +0 -91
  460. package/src/tools/shared/point/__tests__/base-point.test.jsx +0 -87
  461. package/src/tools/shared/point/arrow-point.jsx +0 -46
  462. package/src/tools/shared/point/arrow.jsx +0 -37
  463. package/src/tools/shared/point/base-point.jsx +0 -121
  464. package/src/tools/shared/point/index.jsx +0 -54
  465. package/src/tools/shared/styles.js +0 -27
  466. package/src/tools/shared/types.js +0 -10
  467. package/src/tools/sine/__tests__/component.test.jsx +0 -51
  468. package/src/tools/sine/component.jsx +0 -32
  469. package/src/tools/sine/index.js +0 -33
  470. package/src/tools/vector/__tests__/component.test.jsx +0 -25
  471. package/src/tools/vector/component.jsx +0 -56
  472. package/src/tools/vector/index.js +0 -4
  473. package/src/undo-redo.jsx +0 -45
  474. package/src/use-debounce.js +0 -13
  475. package/src/utils.js +0 -224
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @synced-from pie-lib/packages/graphing/src/container/reducer.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
+ declare const _default: () => import("redux").Reducer<import("redux").CombinedState<{
10
+ marks: import("redux-undo").StateWithHistory<never[]>;
11
+ }>, import("redux").AnyAction>;
12
+ export default _default;
@@ -0,0 +1,7 @@
1
+ import { combineReducers as e } from "../node_modules/.bun/redux@4.2.1/node_modules/redux/es/redux.js";
2
+ import t from "./marks.js";
3
+ import { C as n } from "../node_modules/.bun/redux-undo@1.1.0/node_modules/redux-undo/dist/redux-undo.js";
4
+ //#region src/container/reducer.ts
5
+ var r = () => e({ marks: n(t, { debug: !1 }) });
6
+ //#endregion
7
+ export { r as default };
@@ -0,0 +1,50 @@
1
+ /**
2
+ * @synced-from pie-lib/packages/graphing/src/coordinates-label.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 getLabelPosition: (graphProps: any, x: any, y: any, labelLength: any) => {
12
+ left: any;
13
+ top: number;
14
+ };
15
+ export declare const CoordinatesLabel: {
16
+ ({ x, y, graphProps }: {
17
+ x: any;
18
+ y: any;
19
+ graphProps: any;
20
+ }): React.JSX.Element;
21
+ propTypes: {
22
+ graphProps: PropTypes.Requireable<PropTypes.InferProps<{
23
+ scale: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
24
+ x: PropTypes.Validator<(...args: any[]) => any>;
25
+ y: PropTypes.Validator<(...args: any[]) => any>;
26
+ }>>>;
27
+ snap: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
28
+ x: PropTypes.Validator<(...args: any[]) => any>;
29
+ y: PropTypes.Validator<(...args: any[]) => any>;
30
+ }>>>;
31
+ domain: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
32
+ min: PropTypes.Validator<number>;
33
+ max: PropTypes.Validator<number>;
34
+ step: PropTypes.Requireable<number>;
35
+ }>>>;
36
+ range: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
37
+ min: PropTypes.Validator<number>;
38
+ max: PropTypes.Validator<number>;
39
+ step: PropTypes.Requireable<number>;
40
+ }>>>;
41
+ size: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
42
+ width: PropTypes.Validator<number>;
43
+ height: PropTypes.Validator<number>;
44
+ }>>>;
45
+ }>>;
46
+ x: PropTypes.Requireable<number>;
47
+ y: PropTypes.Requireable<number>;
48
+ };
49
+ };
50
+ export default CoordinatesLabel;
@@ -0,0 +1,46 @@
1
+ import { roundNumber as e } from "./utils.js";
2
+ import "react";
3
+ import t from "prop-types";
4
+ import { types as n } from "@pie-lib/plot";
5
+ import { styled as r } from "@mui/material/styles";
6
+ import { jsx as i } from "react/jsx-runtime";
7
+ import { color as a } from "@pie-lib/render-ui";
8
+ import o from "@mui/material/InputBase";
9
+ //#region src/coordinates-label.tsx
10
+ var s = r(o)(({ theme: e }) => ({
11
+ fontFamily: e.typography.fontFamily,
12
+ fontSize: e.typography.fontSize,
13
+ borderRadius: "8px",
14
+ background: e.palette.common.white,
15
+ color: a.defaults.PRIMARY_DARK,
16
+ "& .MuiInputBase-input": { padding: 0 }
17
+ })), c = (e, t, n, r) => {
18
+ let { scale: i, domain: a, range: o } = e, s = n === o.min ? 16 : n === o.max ? 0 : 8;
19
+ return i.x(t) + r + 10 >= i.x(a.max) ? {
20
+ left: i.x(t) - 10 - r,
21
+ top: i.y(n) - s
22
+ } : {
23
+ left: i.x(t) + 10,
24
+ top: i.y(n) - s
25
+ };
26
+ }, l = ({ x: t, y: n, graphProps: r }) => {
27
+ let a = `(${e(t)}, ${e(n)})`, o = (a.length || 0) * 6;
28
+ return /* @__PURE__ */ i(s, {
29
+ style: {
30
+ position: "absolute",
31
+ pointerEvents: "auto",
32
+ width: o,
33
+ padding: 0,
34
+ ...c(r, t, n, o)
35
+ },
36
+ value: a,
37
+ inputProps: { ariaLabel: "naked" }
38
+ });
39
+ };
40
+ l.propTypes = {
41
+ graphProps: n.GraphPropsType,
42
+ x: t.number,
43
+ y: t.number
44
+ };
45
+ //#endregion
46
+ export { l as default };
@@ -0,0 +1,88 @@
1
+ /**
2
+ * @synced-from pie-lib/packages/graphing/src/graph-with-controls.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 setToolbarAvailability: (toolbarTools: any) => ({
12
+ toolbar: boolean;
13
+ type: any;
14
+ Component: any;
15
+ addPoint: (point: any, mark: any) => any;
16
+ } | {
17
+ toolbar: boolean;
18
+ type: string;
19
+ })[];
20
+ export declare const toolIsAvailable: (tools: any, currentTool: any) => any;
21
+ export declare const getAvailableTool: (tools: any) => any;
22
+ export declare const filterByValidToolTypes: (backgroundMarks: any) => any;
23
+ export declare const filterByVisibleToolTypes: (toolbarTools: any, marks: any) => any;
24
+ export declare class GraphWithControls extends React.Component {
25
+ static propTypes: {
26
+ onUndo: PropTypes.Requireable<(...args: any[]) => any>;
27
+ onRedo: PropTypes.Requireable<(...args: any[]) => any>;
28
+ onReset: PropTypes.Requireable<(...args: any[]) => any>;
29
+ toolbarTools: PropTypes.Requireable<(string | null | undefined)[]>;
30
+ language: PropTypes.Requireable<string>;
31
+ axesSettings: PropTypes.Requireable<PropTypes.InferProps<{
32
+ includeArrows: PropTypes.Requireable<object>;
33
+ graphProps: PropTypes.Requireable<object>;
34
+ }>>;
35
+ backgroundMarks: PropTypes.Requireable<any[]>;
36
+ className: PropTypes.Requireable<string>;
37
+ collapsibleToolbar: PropTypes.Requireable<boolean>;
38
+ collapsibleToolbarTitle: PropTypes.Requireable<string>;
39
+ disabledLabels: PropTypes.Requireable<boolean>;
40
+ disabledTitle: PropTypes.Requireable<boolean>;
41
+ domain: PropTypes.Requireable<PropTypes.InferProps<{
42
+ min: PropTypes.Validator<number>;
43
+ max: PropTypes.Validator<number>;
44
+ step: PropTypes.Requireable<number>;
45
+ }>>;
46
+ labels: PropTypes.Requireable<PropTypes.InferProps<{
47
+ left: PropTypes.Requireable<string>;
48
+ top: PropTypes.Requireable<string>;
49
+ bottom: PropTypes.Requireable<string>;
50
+ right: PropTypes.Requireable<string>;
51
+ }>>;
52
+ labelModeEnabled: PropTypes.Requireable<boolean>;
53
+ coordinatesOnHover: PropTypes.Requireable<boolean>;
54
+ marks: PropTypes.Requireable<any[]>;
55
+ onChangeLabels: PropTypes.Requireable<(...args: any[]) => any>;
56
+ onChangeMarks: PropTypes.Requireable<(...args: any[]) => any>;
57
+ onChangeTitle: PropTypes.Requireable<(...args: any[]) => any>;
58
+ range: PropTypes.Requireable<PropTypes.InferProps<{
59
+ min: PropTypes.Validator<number>;
60
+ max: PropTypes.Validator<number>;
61
+ step: PropTypes.Requireable<number>;
62
+ }>>;
63
+ size: PropTypes.Requireable<PropTypes.InferProps<{
64
+ width: PropTypes.Validator<number>;
65
+ height: PropTypes.Validator<number>;
66
+ }>>;
67
+ showLabels: PropTypes.Requireable<boolean>;
68
+ showPixelGuides: PropTypes.Requireable<boolean>;
69
+ showTitle: PropTypes.Requireable<boolean>;
70
+ title: PropTypes.Requireable<string>;
71
+ tools: PropTypes.Requireable<any[]>;
72
+ limitLabeling: PropTypes.Requireable<boolean>;
73
+ };
74
+ static defaultProps: {
75
+ collapsibleToolbar: boolean;
76
+ collapsibleToolbarTitle: string;
77
+ disabledLabels: boolean;
78
+ disabledTitle: boolean;
79
+ showLabels: boolean;
80
+ showTitle: boolean;
81
+ toolbarTools: never[];
82
+ };
83
+ constructor(props: any);
84
+ componentDidUpdate(prevProps: any): void;
85
+ changeCurrentTool: (tool: any, tools: any) => void;
86
+ render(): React.JSX.Element;
87
+ }
88
+ export default GraphWithControls;
@@ -0,0 +1,154 @@
1
+ import e, { graphPropTypes as t } from "./graph.js";
2
+ import { allTools as n, toolsArr as r } from "./tools/index.js";
3
+ import i from "./tool-menu.js";
4
+ import a from "./undo-redo.js";
5
+ import o from "react";
6
+ import s from "prop-types";
7
+ import { isString as c, uniq as l } from "lodash-es";
8
+ import { styled as u } from "@mui/material/styles";
9
+ import { jsx as d, jsxs as f } from "react/jsx-runtime";
10
+ import { color as p } from "@pie-lib/render-ui";
11
+ import { Accordion as m, AccordionDetails as h, AccordionSummary as g, Typography as _ } from "@mui/material";
12
+ import v from "@mui/icons-material/ExpandMore";
13
+ //#region src/graph-with-controls.tsx
14
+ var y = u("div")({
15
+ display: "flex",
16
+ flexDirection: "column",
17
+ width: "min-content"
18
+ }), b = u("div")(({ theme: e }) => ({
19
+ display: "flex",
20
+ justifyContent: "space-between",
21
+ padding: e.spacing(1),
22
+ color: p.text(),
23
+ backgroundColor: p.primaryLight(),
24
+ "& button": { fontSize: e.typography.fontSize }
25
+ })), x = u(m)({
26
+ backgroundColor: p.primaryLight(),
27
+ width: "100%"
28
+ }), S = u(g)(({ theme: e }) => ({
29
+ padding: `0 ${e.spacing(1)}`,
30
+ minHeight: "32px !important",
31
+ "& .MuiAccordionSummary-content": { margin: "4px 0 !important" }
32
+ })), C = u(h)(({ theme: e }) => ({
33
+ padding: 0,
34
+ marginTop: e.spacing(1),
35
+ display: "flex",
36
+ justifyContent: "space-between"
37
+ })), w = (e) => r.map((t) => ({
38
+ ...t,
39
+ toolbar: !!e.find((e) => e === t.type)
40
+ })) || [], T = (e, t) => t && e && (e.find((e) => e.type === t.type) || {}).toolbar, E = (e) => e.find((e) => e.toolbar), D = (e) => e.filter((e) => !!n.find((t) => t === e.type)), O = (e, t) => t.filter((t) => !!e.find((e) => e === t.type)), k = (e) => r.find((t) => t.type === e) || null, A = ({ children: e, title: t }) => /* @__PURE__ */ f(x, {
41
+ elevation: 0,
42
+ disableGutters: !0,
43
+ square: !0,
44
+ TransitionProps: { timeout: {
45
+ enter: 225,
46
+ exit: 195
47
+ } },
48
+ children: [/* @__PURE__ */ d(S, {
49
+ expandIcon: /* @__PURE__ */ d(v, {}),
50
+ children: /* @__PURE__ */ d(_, {
51
+ variant: "subheading",
52
+ children: t
53
+ })
54
+ }), /* @__PURE__ */ d(C, { children: e })]
55
+ });
56
+ A.propTypes = {
57
+ children: s.array,
58
+ title: s.string
59
+ };
60
+ var j = class extends o.Component {
61
+ static propTypes = {
62
+ ...t,
63
+ onUndo: s.func,
64
+ onRedo: s.func,
65
+ onReset: s.func,
66
+ toolbarTools: s.arrayOf(s.string),
67
+ language: s.string
68
+ };
69
+ static defaultProps = {
70
+ collapsibleToolbar: !1,
71
+ collapsibleToolbarTitle: "",
72
+ disabledLabels: !1,
73
+ disabledTitle: !1,
74
+ showLabels: !0,
75
+ showTitle: !0,
76
+ toolbarTools: []
77
+ };
78
+ constructor(e) {
79
+ super(e), this.state = {
80
+ currentTool: k(e.defaultTool),
81
+ labelModeEnabled: !1
82
+ };
83
+ }
84
+ componentDidUpdate(e) {
85
+ let { defaultTool: t } = this.props;
86
+ if (e.defaultTool !== t) {
87
+ let e = k(t);
88
+ this.setState({ currentTool: e });
89
+ }
90
+ }
91
+ changeCurrentTool = (e, t) => this.setState({
92
+ currentTool: t.find((t) => t.type === e),
93
+ labelModeEnabled: e === "label"
94
+ });
95
+ render() {
96
+ let { currentTool: t, labelModeEnabled: n } = this.state, { axesSettings: r, className: s, coordinatesOnHover: u, collapsibleToolbar: p, collapsibleToolbarTitle: m, disabled: h, disabledLabels: g, disabledTitle: _, domain: v, draggableTools: x, labels: S, labelsPlaceholders: C, onChangeLabels: k, onChangeMarks: j, onChangeTitle: M, onChangeTools: N, onUndo: P, onRedo: F, onReset: I, range: L, size: R, showLabels: z, showPixelGuides: B, showTitle: V, title: H, titlePlaceholder: U, language: W, removeIncompleteTool: G, limitLabeling: K } = this.props, { backgroundMarks: q, marks: J, toolbarTools: Y } = this.props;
97
+ Y = l(Y || []).filter((e) => !!c(e)) || [], q = D(q || []), J = O(Y, J || []);
98
+ let X = w(Y);
99
+ (!t || !T(X, t)) && (t = E(X));
100
+ let Z = /* @__PURE__ */ f(o.Fragment, { children: [/* @__PURE__ */ d(i, {
101
+ currentToolType: t && t.type,
102
+ disabled: !!h,
103
+ draggableTools: x,
104
+ labelModeEnabled: n,
105
+ onChange: (e) => this.changeCurrentTool(e, X),
106
+ toolbarTools: Y,
107
+ onChangeTools: N,
108
+ language: W
109
+ }), !h && /* @__PURE__ */ d(a, {
110
+ onUndo: P,
111
+ onRedo: F,
112
+ onReset: I,
113
+ language: W
114
+ })] });
115
+ return /* @__PURE__ */ f(y, {
116
+ className: s,
117
+ children: [
118
+ /* @__PURE__ */ d(b, { children: p ? /* @__PURE__ */ d(A, {
119
+ title: m,
120
+ children: Z
121
+ }) : Z }),
122
+ /* @__PURE__ */ d("div", { ref: (e) => this.labelNode = e }),
123
+ /* @__PURE__ */ d(e, {
124
+ axesSettings: r,
125
+ backgroundMarks: q,
126
+ coordinatesOnHover: u,
127
+ currentTool: t,
128
+ disabledLabels: g,
129
+ disabledTitle: _,
130
+ domain: v,
131
+ labels: S,
132
+ labelModeEnabled: n,
133
+ labelsPlaceholders: C,
134
+ marks: J,
135
+ onChangeMarks: h ? void 0 : j,
136
+ onChangeLabels: k,
137
+ onChangeTitle: M,
138
+ range: L,
139
+ size: R,
140
+ showLabels: z,
141
+ showPixelGuides: B,
142
+ showTitle: V,
143
+ title: H,
144
+ titlePlaceholder: U,
145
+ tools: X,
146
+ removeIncompleteTool: G,
147
+ limitLabeling: K
148
+ })
149
+ ]
150
+ });
151
+ }
152
+ };
153
+ //#endregion
154
+ export { j as default };
@@ -0,0 +1,126 @@
1
+ /**
2
+ * @synced-from pie-lib/packages/graphing/src/graph.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 graphPropTypes: {
12
+ axesSettings: PropTypes.Requireable<PropTypes.InferProps<{
13
+ includeArrows: PropTypes.Requireable<object>;
14
+ graphProps: PropTypes.Requireable<object>;
15
+ }>>;
16
+ backgroundMarks: PropTypes.Requireable<any[]>;
17
+ className: PropTypes.Requireable<string>;
18
+ collapsibleToolbar: PropTypes.Requireable<boolean>;
19
+ collapsibleToolbarTitle: PropTypes.Requireable<string>;
20
+ disabledLabels: PropTypes.Requireable<boolean>;
21
+ disabledTitle: PropTypes.Requireable<boolean>;
22
+ domain: PropTypes.Requireable<PropTypes.InferProps<{
23
+ min: PropTypes.Validator<number>;
24
+ max: PropTypes.Validator<number>;
25
+ step: PropTypes.Requireable<number>;
26
+ }>>;
27
+ labels: PropTypes.Requireable<PropTypes.InferProps<{
28
+ left: PropTypes.Requireable<string>;
29
+ top: PropTypes.Requireable<string>;
30
+ bottom: PropTypes.Requireable<string>;
31
+ right: PropTypes.Requireable<string>;
32
+ }>>;
33
+ labelModeEnabled: PropTypes.Requireable<boolean>;
34
+ coordinatesOnHover: PropTypes.Requireable<boolean>;
35
+ marks: PropTypes.Requireable<any[]>;
36
+ onChangeLabels: PropTypes.Requireable<(...args: any[]) => any>;
37
+ onChangeMarks: PropTypes.Requireable<(...args: any[]) => any>;
38
+ onChangeTitle: PropTypes.Requireable<(...args: any[]) => any>;
39
+ range: PropTypes.Requireable<PropTypes.InferProps<{
40
+ min: PropTypes.Validator<number>;
41
+ max: PropTypes.Validator<number>;
42
+ step: PropTypes.Requireable<number>;
43
+ }>>;
44
+ size: PropTypes.Requireable<PropTypes.InferProps<{
45
+ width: PropTypes.Validator<number>;
46
+ height: PropTypes.Validator<number>;
47
+ }>>;
48
+ showLabels: PropTypes.Requireable<boolean>;
49
+ showPixelGuides: PropTypes.Requireable<boolean>;
50
+ showTitle: PropTypes.Requireable<boolean>;
51
+ title: PropTypes.Requireable<string>;
52
+ tools: PropTypes.Requireable<any[]>;
53
+ limitLabeling: PropTypes.Requireable<boolean>;
54
+ };
55
+ export declare const removeBuildingToolIfCurrentToolDiffers: ({ marks, currentTool, onChangeMarks, removeIncompleteTool }: {
56
+ marks: any;
57
+ currentTool: any;
58
+ onChangeMarks: any;
59
+ removeIncompleteTool: any;
60
+ }) => any;
61
+ export declare class Graph extends React.Component {
62
+ constructor(props: any);
63
+ static propTypes: {
64
+ currentTool: PropTypes.Requireable<object>;
65
+ axesSettings: PropTypes.Requireable<PropTypes.InferProps<{
66
+ includeArrows: PropTypes.Requireable<object>;
67
+ graphProps: PropTypes.Requireable<object>;
68
+ }>>;
69
+ backgroundMarks: PropTypes.Requireable<any[]>;
70
+ className: PropTypes.Requireable<string>;
71
+ collapsibleToolbar: PropTypes.Requireable<boolean>;
72
+ collapsibleToolbarTitle: PropTypes.Requireable<string>;
73
+ disabledLabels: PropTypes.Requireable<boolean>;
74
+ disabledTitle: PropTypes.Requireable<boolean>;
75
+ domain: PropTypes.Requireable<PropTypes.InferProps<{
76
+ min: PropTypes.Validator<number>;
77
+ max: PropTypes.Validator<number>;
78
+ step: PropTypes.Requireable<number>;
79
+ }>>;
80
+ labels: PropTypes.Requireable<PropTypes.InferProps<{
81
+ left: PropTypes.Requireable<string>;
82
+ top: PropTypes.Requireable<string>;
83
+ bottom: PropTypes.Requireable<string>;
84
+ right: PropTypes.Requireable<string>;
85
+ }>>;
86
+ labelModeEnabled: PropTypes.Requireable<boolean>;
87
+ coordinatesOnHover: PropTypes.Requireable<boolean>;
88
+ marks: PropTypes.Requireable<any[]>;
89
+ onChangeLabels: PropTypes.Requireable<(...args: any[]) => any>;
90
+ onChangeMarks: PropTypes.Requireable<(...args: any[]) => any>;
91
+ onChangeTitle: PropTypes.Requireable<(...args: any[]) => any>;
92
+ range: PropTypes.Requireable<PropTypes.InferProps<{
93
+ min: PropTypes.Validator<number>;
94
+ max: PropTypes.Validator<number>;
95
+ step: PropTypes.Requireable<number>;
96
+ }>>;
97
+ size: PropTypes.Requireable<PropTypes.InferProps<{
98
+ width: PropTypes.Validator<number>;
99
+ height: PropTypes.Validator<number>;
100
+ }>>;
101
+ showLabels: PropTypes.Requireable<boolean>;
102
+ showPixelGuides: PropTypes.Requireable<boolean>;
103
+ showTitle: PropTypes.Requireable<boolean>;
104
+ title: PropTypes.Requireable<string>;
105
+ tools: PropTypes.Requireable<any[]>;
106
+ limitLabeling: PropTypes.Requireable<boolean>;
107
+ };
108
+ static defaultProps: {
109
+ onChangeMarks: () => void;
110
+ disabledLabels: boolean;
111
+ disabledTitle: boolean;
112
+ };
113
+ state: {};
114
+ _justDragged: boolean;
115
+ startDrag: any;
116
+ stopDrag: any;
117
+ generateMaskId(): string;
118
+ componentDidMount: () => void;
119
+ changeMark: any;
120
+ completeMark: any;
121
+ updateMarks: any;
122
+ getComponent: any;
123
+ onBgClick: any;
124
+ render(): React.JSX.Element;
125
+ }
126
+ export default Graph;
package/dist/graph.js ADDED
@@ -0,0 +1,209 @@
1
+ import { isDuplicatedMark as e } from "./utils.js";
2
+ import t, { AxisPropTypes as n } from "./axis/axes.js";
3
+ import r from "./grid.js";
4
+ import { LabelType as i } from "./labels.js";
5
+ import a from "./bg.js";
6
+ import o from "react";
7
+ import s from "prop-types";
8
+ import { cloneDeep as c, isEqual as l } from "lodash-es";
9
+ import { Root as u, createGraphProps as d, types as f } from "@pie-lib/plot";
10
+ import p from "debug";
11
+ import { jsx as m, jsxs as h } from "react/jsx-runtime";
12
+ //#region src/graph.tsx
13
+ var g = p("pie-lib:graphing:graph"), _ = {
14
+ axesSettings: s.shape(n),
15
+ backgroundMarks: s.array,
16
+ className: s.string,
17
+ collapsibleToolbar: s.bool,
18
+ collapsibleToolbarTitle: s.string,
19
+ disabledLabels: s.bool,
20
+ disabledTitle: s.bool,
21
+ domain: f.DomainType,
22
+ labels: s.shape(i),
23
+ labelModeEnabled: s.bool,
24
+ coordinatesOnHover: s.bool,
25
+ marks: s.array,
26
+ onChangeLabels: s.func,
27
+ onChangeMarks: s.func,
28
+ onChangeTitle: s.func,
29
+ range: f.DomainType,
30
+ size: s.shape({
31
+ width: s.number.isRequired,
32
+ height: s.number.isRequired
33
+ }),
34
+ showLabels: s.bool,
35
+ showPixelGuides: s.bool,
36
+ showTitle: s.bool,
37
+ title: s.string,
38
+ tools: s.array,
39
+ limitLabeling: s.bool
40
+ }, v = (e) => ({
41
+ x: -23,
42
+ y: -23,
43
+ width: e.width + 46,
44
+ height: e.height + 46
45
+ }), y = ({ marks: e, currentTool: t, onChangeMarks: n, removeIncompleteTool: r }) => {
46
+ let i = e.filter((e) => e.building)[0], a = c(e);
47
+ if (i && t && i.type !== t.type) {
48
+ let e = a.findIndex((e) => l(e, i));
49
+ e >= 0 && a.splice(e, 1);
50
+ }
51
+ return r && !l(a, e) && n(a), a;
52
+ }, b = class extends o.Component {
53
+ constructor(e) {
54
+ super(e), this.maskUid = this.generateMaskId();
55
+ }
56
+ static propTypes = {
57
+ ..._,
58
+ currentTool: s.object
59
+ };
60
+ static defaultProps = {
61
+ onChangeMarks: () => {},
62
+ disabledLabels: !1,
63
+ disabledTitle: !1
64
+ };
65
+ state = {};
66
+ _justDragged = !1;
67
+ startDrag = () => {
68
+ this._justDragged = !1;
69
+ };
70
+ stopDrag = () => {
71
+ this._justDragged = !0, setTimeout(() => {
72
+ this._justDragged = !1;
73
+ }, 300);
74
+ };
75
+ generateMaskId() {
76
+ return "graph-" + (Math.random() * 1e4).toFixed();
77
+ }
78
+ componentDidMount = () => this.setState({ labelNode: this.labelNode });
79
+ changeMark = (t, n) => {
80
+ let { onChangeMarks: r, marks: i } = this.props, a = c(i), o = a.findIndex((e) => l(e, t));
81
+ o >= 0 && !e(n, i, t) && (a.splice(o, 1, n), r(a));
82
+ };
83
+ completeMark = (e) => {
84
+ let { currentTool: t, marks: n } = this.props, r = n.filter((e) => e.building)[0];
85
+ if (!r || !t) return;
86
+ let i = t.complete(r, e);
87
+ this.updateMarks(r, i);
88
+ };
89
+ updateMarks = (t, n, r = !1) => {
90
+ let { onChangeMarks: i, marks: a } = this.props, o = c(a);
91
+ if (!n || !n.building && e(n, a)) return;
92
+ let s = o.findIndex((e) => l(e, t));
93
+ s >= 0 ? (o.splice(s, 1, n), i(o)) : r && i([...o, n]);
94
+ };
95
+ getComponent = (e) => {
96
+ if (!e) return null;
97
+ let t = (this.props.tools || []).find((t) => t.type === e.type);
98
+ return t && t.Component || null;
99
+ };
100
+ onBgClick = (e) => {
101
+ let { x: t, y: n } = e || {}, { labelModeEnabled: r, currentTool: i, marks: a } = this.props;
102
+ if (this._justDragged || r || !i || [null, void 0].includes(t) || [null, void 0].includes(n)) return;
103
+ g("[onBgClick] x,y: ", t, n);
104
+ let o = a.filter((e) => e.building)[0], s;
105
+ s = o && i && o.type === i.type ? i.addPoint({
106
+ x: t,
107
+ y: n
108
+ }, { ...o }) : i.addPoint({
109
+ x: t,
110
+ y: n
111
+ }, void 0), this.updateMarks(o, s, !0);
112
+ };
113
+ render() {
114
+ let { axesSettings: e, currentTool: n, coordinatesOnHover: i, size: o, disabledLabels: s, disabledTitle: c, domain: l, backgroundMarks: f, range: p, title: g, labels: _, labelModeEnabled: b, labelsPlaceholders: x, limitLabeling: S, showLabels: C, showPixelGuides: w, showTitle: T, titlePlaceholder: E, onChangeLabels: D, onChangeTitle: O, mathMlOptions: k = {}, onChangeMarks: A, removeIncompleteTool: j } = this.props, { marks: M } = this.props, N = d(l, p, o, () => this.rootNode), P = v(o), F = {
115
+ graphProps: N,
116
+ labelModeEnabled: b,
117
+ limitLabeling: S
118
+ };
119
+ return M = y({
120
+ marks: M || [],
121
+ currentTool: n,
122
+ onChangeMarks: A,
123
+ removeIncompleteTool: j
124
+ }), /* @__PURE__ */ m(u, {
125
+ rootRef: (e) => this.rootNode = e,
126
+ disabledTitle: c,
127
+ disabledLabels: s,
128
+ labels: _,
129
+ labelsPlaceholders: x || {},
130
+ showPixelGuides: w,
131
+ showLabels: C,
132
+ showTitle: T,
133
+ title: g,
134
+ titlePlaceholder: E,
135
+ onChangeTitle: O,
136
+ onChangeLabels: D,
137
+ mathMlOptions: k,
138
+ ...F,
139
+ children: /* @__PURE__ */ h("g", {
140
+ transform: l && l.padding && l.range ? `translate(${l.padding}, ${p.padding})` : void 0,
141
+ children: [
142
+ /* @__PURE__ */ m(r, { ...F }),
143
+ /* @__PURE__ */ m(t, {
144
+ ...e,
145
+ ...F
146
+ }),
147
+ /* @__PURE__ */ m(a, {
148
+ ...o,
149
+ onClick: this.onBgClick,
150
+ ...F
151
+ }),
152
+ /* @__PURE__ */ h("mask", {
153
+ id: `${this.maskUid}`,
154
+ children: [/* @__PURE__ */ m("rect", {
155
+ ...P,
156
+ fill: "white"
157
+ }), " "]
158
+ }),
159
+ /* @__PURE__ */ h("g", {
160
+ id: "marks",
161
+ mask: `url('#${this.maskUid}')`,
162
+ children: [
163
+ (f || []).map((e, t) => {
164
+ let n = this.getComponent(e), r = e.type;
165
+ return /* @__PURE__ */ m(n, {
166
+ mark: {
167
+ ...e,
168
+ disabled: !0,
169
+ isBackground: !0
170
+ },
171
+ labelNode: this.state.labelNode,
172
+ onClick: this.onBgClick,
173
+ ...F
174
+ }, `${r}-${t}-bg`);
175
+ }),
176
+ M.map((e, t) => {
177
+ let r = this.getComponent(e), a = e.type;
178
+ return /* @__PURE__ */ m(r, {
179
+ mark: e,
180
+ coordinatesOnHover: i,
181
+ onChange: this.changeMark,
182
+ onComplete: this.completeMark,
183
+ onClick: this.onBgClick,
184
+ onDragStart: this.startDrag,
185
+ onDragStop: this.stopDrag,
186
+ labelNode: this.state.labelNode,
187
+ isToolActive: n && a === n.type,
188
+ ...F
189
+ }, `${a}-${t}`);
190
+ }),
191
+ /* @__PURE__ */ m("foreignObject", {
192
+ ref: (e) => this.labelNode = e,
193
+ x: "0",
194
+ y: "0",
195
+ ...o,
196
+ style: {
197
+ pointerEvents: "none",
198
+ fontSize: "14px"
199
+ }
200
+ })
201
+ ]
202
+ })
203
+ ]
204
+ })
205
+ });
206
+ }
207
+ };
208
+ //#endregion
209
+ export { b as default, _ as graphPropTypes };