@pie-lib/graphing 4.1.0-beta.7 → 5.0.0-next.36
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/_rolldown/runtime.js +20 -0
- package/dist/autosize-input.d.ts +10 -0
- package/dist/autosize-input.js +66 -0
- package/dist/axis/arrow.d.ts +13 -0
- package/dist/axis/arrow.js +34 -0
- package/dist/axis/axes.d.ts +132 -0
- package/dist/axis/axes.js +214 -0
- package/dist/axis/index.d.ts +10 -0
- package/dist/bg.d.ts +51 -0
- package/dist/bg.js +44 -0
- package/dist/container/actions.d.ts +15 -0
- package/dist/container/actions.js +7 -0
- package/dist/container/index.d.ts +58 -0
- package/dist/container/index.js +48 -0
- package/dist/container/marks.d.ts +10 -0
- package/dist/container/marks.js +11 -0
- package/dist/container/middleware.d.ts +10 -0
- package/dist/container/middleware.js +4 -0
- package/dist/container/reducer.d.ts +14 -0
- package/dist/container/reducer.js +7 -0
- package/dist/coordinates-label.d.ts +50 -0
- package/dist/coordinates-label.js +46 -0
- package/dist/graph-with-controls.d.ts +88 -0
- package/dist/graph-with-controls.js +156 -0
- package/dist/graph.d.ts +126 -0
- package/dist/graph.js +209 -0
- package/dist/grid-setup.d.ts +27 -0
- package/dist/grid-setup.js +307 -0
- package/dist/grid.d.ts +43 -0
- package/dist/grid.js +59 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.js +7 -0
- package/dist/key-legend.d.ts +21 -0
- package/dist/key-legend.js +231 -0
- package/dist/label-svg-icon.d.ts +18 -0
- package/dist/label-svg-icon.js +42 -0
- package/dist/labels.d.ts +37 -0
- package/dist/labels.js +152 -0
- package/dist/mark-label.d.ts +60 -0
- package/dist/mark-label.js +222 -0
- package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/axis/Axis.js +67 -0
- package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/axis/AxisRenderer.js +66 -0
- package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/axis/Ticks.js +39 -0
- package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/constants/orientation.js +9 -0
- package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/utils/createPoint.js +14 -0
- package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/utils/getAxisRangePaddingConfig.js +13 -0
- package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/utils/getLabelTransform.js +16 -0
- package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/utils/getTickFormatter.js +8 -0
- package/dist/node_modules/.bun/@visx_axis@4.0.0_d84c32d47042070f/node_modules/@visx/axis/esm/utils/getTickPosition.js +14 -0
- package/dist/node_modules/.bun/@visx_grid@4.0.0_d84c32d47042070f/node_modules/@visx/grid/esm/grids/Grid.js +43 -0
- package/dist/node_modules/.bun/@visx_grid@4.0.0_d84c32d47042070f/node_modules/@visx/grid/esm/grids/GridColumns.js +46 -0
- package/dist/node_modules/.bun/@visx_grid@4.0.0_d84c32d47042070f/node_modules/@visx/grid/esm/grids/GridRows.js +46 -0
- package/dist/node_modules/.bun/@visx_grid@4.0.0_d84c32d47042070f/node_modules/@visx/grid/esm/utils/getScaleBandwidth.js +6 -0
- package/dist/node_modules/.bun/@visx_group@4.0.0_d84c32d47042070f/node_modules/@visx/group/esm/Group.js +17 -0
- package/dist/node_modules/.bun/@visx_point@4.0.0/node_modules/@visx/point/esm/Point.js +20 -0
- package/dist/node_modules/.bun/@visx_scale@4.0.0/node_modules/@visx/scale/esm/utils/coerceNumber.js +10 -0
- package/dist/node_modules/.bun/@visx_scale@4.0.0/node_modules/@visx/scale/esm/utils/getTicks.js +7 -0
- package/dist/node_modules/.bun/@visx_scale@4.0.0/node_modules/@visx/scale/esm/utils/toString.js +6 -0
- package/dist/node_modules/.bun/@visx_shape@4.0.0_d84c32d47042070f/node_modules/@visx/shape/esm/shapes/Line.js +27 -0
- package/dist/node_modules/.bun/@visx_shape@4.0.0_d84c32d47042070f/node_modules/@visx/shape/esm/shapes/LinePath.js +24 -0
- package/dist/node_modules/.bun/@visx_shape@4.0.0_d84c32d47042070f/node_modules/@visx/shape/esm/util/D3ShapeFactories.js +9 -0
- package/dist/node_modules/.bun/@visx_shape@4.0.0_d84c32d47042070f/node_modules/@visx/shape/esm/util/setNumberOrNumberAccessor.js +6 -0
- package/dist/node_modules/.bun/@visx_text@4.0.0_d84c32d47042070f/node_modules/@visx/text/esm/Text.js +27 -0
- package/dist/node_modules/.bun/@visx_text@4.0.0_d84c32d47042070f/node_modules/@visx/text/esm/hooks/useText.js +68 -0
- package/dist/node_modules/.bun/@visx_text@4.0.0_d84c32d47042070f/node_modules/@visx/text/esm/util/getStringWidth.js +19 -0
- package/dist/node_modules/.bun/@visx_text@4.0.0_d84c32d47042070f/node_modules/@visx/text/esm/util/memoize.js +13 -0
- package/dist/node_modules/.bun/@visx_vendor@4.0.0/node_modules/@visx/vendor/esm/d3-shape.js +8 -0
- package/dist/node_modules/.bun/balanced-match@0.4.2/node_modules/balanced-match/index.js +32 -0
- package/dist/node_modules/.bun/balanced-match@1.0.2/node_modules/balanced-match/index.js +33 -0
- package/dist/node_modules/.bun/classnames@2.5.1/node_modules/classnames/index.js +32 -0
- package/dist/node_modules/.bun/clsx@2.1.1/node_modules/clsx/dist/clsx.js +16 -0
- package/dist/node_modules/.bun/invariant@2.2.4/node_modules/invariant/browser.js +28 -0
- package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/formula_evaluator.js +37 -0
- package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/lexer.js +509 -0
- package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/math_function.js +108 -0
- package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/postfix.js +31 -0
- package/dist/node_modules/.bun/math-expression-evaluator@1.4.0/node_modules/math-expression-evaluator/src/postfix_evaluator.js +45 -0
- package/dist/node_modules/.bun/reduce-css-calc@1.3.0/node_modules/reduce-css-calc/index.js +49 -0
- package/dist/node_modules/.bun/reduce-function-call@1.0.3/node_modules/reduce-function-call/index.js +34 -0
- package/dist/node_modules/.bun/redux-undo@1.1.0/node_modules/redux-undo/dist/redux-undo.js +185 -0
- package/dist/node_modules/.bun/redux@5.0.1/node_modules/redux/dist/redux.js +198 -0
- package/dist/toggle-bar.d.ts +40 -0
- package/dist/toggle-bar.js +155 -0
- package/dist/tool-menu.d.ts +29 -0
- package/dist/tool-menu.js +41 -0
- package/dist/tools/absolute/component.d.ts +16 -0
- package/dist/tools/absolute/component.js +15 -0
- package/dist/tools/absolute/index.d.ts +20 -0
- package/dist/tools/absolute/index.js +32 -0
- package/dist/tools/circle/bg-circle.d.ts +116 -0
- package/dist/tools/circle/bg-circle.js +72 -0
- package/dist/tools/circle/component.d.ts +88 -0
- package/dist/tools/circle/component.js +208 -0
- package/dist/tools/circle/index.d.ts +20 -0
- package/dist/tools/circle/index.js +22 -0
- package/dist/tools/exponential/component.d.ts +16 -0
- package/dist/tools/exponential/component.js +14 -0
- package/dist/tools/exponential/index.d.ts +20 -0
- package/dist/tools/exponential/index.js +32 -0
- package/dist/tools/index.d.ts +27 -0
- package/dist/tools/index.js +55 -0
- package/dist/tools/line/component.d.ts +124 -0
- package/dist/tools/line/component.js +72 -0
- package/dist/tools/line/index.d.ts +13 -0
- package/dist/tools/line/index.js +6 -0
- package/dist/tools/parabola/component.d.ts +16 -0
- package/dist/tools/parabola/component.js +14 -0
- package/dist/tools/parabola/index.d.ts +20 -0
- package/dist/tools/parabola/index.js +32 -0
- package/dist/tools/point/component.d.ts +52 -0
- package/dist/tools/point/component.js +91 -0
- package/dist/tools/point/index.d.ts +15 -0
- package/dist/tools/point/index.js +13 -0
- package/dist/tools/polygon/component.d.ts +125 -0
- package/dist/tools/polygon/component.js +271 -0
- package/dist/tools/polygon/index.d.ts +19 -0
- package/dist/tools/polygon/index.js +55 -0
- package/dist/tools/polygon/line.d.ts +125 -0
- package/dist/tools/polygon/line.js +63 -0
- package/dist/tools/polygon/polygon.d.ts +122 -0
- package/dist/tools/polygon/polygon.js +74 -0
- package/dist/tools/ray/component.d.ts +101 -0
- package/dist/tools/ray/component.js +71 -0
- package/dist/tools/ray/index.d.ts +13 -0
- package/dist/tools/ray/index.js +6 -0
- package/dist/tools/segment/component.d.ts +100 -0
- package/dist/tools/segment/component.js +52 -0
- package/dist/tools/segment/index.d.ts +13 -0
- package/dist/tools/segment/index.js +6 -0
- package/dist/tools/shared/arrow-head.d.ts +51 -0
- package/dist/tools/shared/arrow-head.js +63 -0
- package/dist/tools/shared/icons/CorrectSVG.d.ts +26 -0
- package/dist/tools/shared/icons/CorrectSVG.js +29 -0
- package/dist/tools/shared/icons/IncorrectSVG.d.ts +26 -0
- package/dist/tools/shared/icons/IncorrectSVG.js +27 -0
- package/dist/tools/shared/icons/MissingSVG.d.ts +26 -0
- package/dist/tools/shared/icons/MissingSVG.js +28 -0
- package/dist/tools/shared/line/index.d.ts +251 -0
- package/dist/tools/shared/line/index.js +332 -0
- package/dist/tools/shared/line/line-path.d.ts +57 -0
- package/dist/tools/shared/line/line-path.js +71 -0
- package/dist/tools/shared/line/with-root-edge.d.ts +148 -0
- package/dist/tools/shared/line/with-root-edge.js +73 -0
- package/dist/tools/shared/point/arrow-point.d.ts +56 -0
- package/dist/tools/shared/point/arrow-point.js +41 -0
- package/dist/tools/shared/point/arrow.d.ts +45 -0
- package/dist/tools/shared/point/arrow.js +35 -0
- package/dist/tools/shared/point/base-point.d.ts +52 -0
- package/dist/tools/shared/point/base-point.js +103 -0
- package/dist/tools/shared/point/index.d.ts +216 -0
- package/dist/tools/shared/point/index.js +45 -0
- package/dist/tools/shared/styles.d.ts +29 -0
- package/dist/tools/shared/styles.js +20 -0
- package/dist/tools/shared/types.d.ts +21 -0
- package/dist/tools/shared/types.js +11 -0
- package/dist/tools/sine/component.d.ts +16 -0
- package/dist/tools/sine/component.js +22 -0
- package/dist/tools/sine/index.d.ts +20 -0
- package/dist/tools/sine/index.js +32 -0
- package/dist/tools/vector/component.d.ts +100 -0
- package/dist/tools/vector/component.js +44 -0
- package/dist/tools/vector/index.d.ts +13 -0
- package/dist/tools/vector/index.js +6 -0
- package/dist/undo-redo.d.ts +22 -0
- package/dist/undo-redo.js +47 -0
- package/dist/use-debounce.d.ts +9 -0
- package/dist/use-debounce.js +13 -0
- package/dist/utils.d.ts +61 -0
- package/dist/utils.js +75 -0
- package/package.json +51 -41
- package/CHANGELOG.json +0 -1
- package/CHANGELOG.md +0 -1469
- package/lib/__tests__/bg.test.js +0 -282
- package/lib/__tests__/bg.test.js.map +0 -1
- package/lib/__tests__/coordinates-label.test.js +0 -276
- package/lib/__tests__/coordinates-label.test.js.map +0 -1
- package/lib/__tests__/graph-with-controls.test.js +0 -275
- package/lib/__tests__/graph-with-controls.test.js.map +0 -1
- package/lib/__tests__/graph.test.js +0 -927
- package/lib/__tests__/graph.test.js.map +0 -1
- package/lib/__tests__/grid-setup.test.js +0 -729
- package/lib/__tests__/grid-setup.test.js.map +0 -1
- package/lib/__tests__/grid.test.js +0 -29
- package/lib/__tests__/grid.test.js.map +0 -1
- package/lib/__tests__/key-legend.test.js +0 -321
- package/lib/__tests__/key-legend.test.js.map +0 -1
- package/lib/__tests__/label-svg-icon.test.js +0 -373
- package/lib/__tests__/label-svg-icon.test.js.map +0 -1
- package/lib/__tests__/labels.test.js +0 -61
- package/lib/__tests__/labels.test.js.map +0 -1
- package/lib/__tests__/mark-label.test.js +0 -133
- package/lib/__tests__/mark-label.test.js.map +0 -1
- package/lib/__tests__/toggle-bar.test.js +0 -197
- package/lib/__tests__/toggle-bar.test.js.map +0 -1
- package/lib/__tests__/tool-menu.test.js +0 -151
- package/lib/__tests__/tool-menu.test.js.map +0 -1
- package/lib/__tests__/undo-redo.test.js +0 -31
- package/lib/__tests__/undo-redo.test.js.map +0 -1
- package/lib/__tests__/use-debounce.test.js +0 -24
- package/lib/__tests__/use-debounce.test.js.map +0 -1
- package/lib/__tests__/utils.js +0 -70
- package/lib/__tests__/utils.js.map +0 -1
- package/lib/__tests__/utils.test.js +0 -123
- package/lib/__tests__/utils.test.js.map +0 -1
- package/lib/axis/__tests__/arrow.test.js +0 -60
- package/lib/axis/__tests__/arrow.test.js.map +0 -1
- package/lib/axis/__tests__/axes.test.js +0 -195
- package/lib/axis/__tests__/axes.test.js.map +0 -1
- package/lib/axis/arrow.js +0 -79
- package/lib/axis/arrow.js.map +0 -1
- package/lib/axis/axes.js +0 -329
- package/lib/axis/axes.js.map +0 -1
- package/lib/axis/index.js +0 -21
- package/lib/axis/index.js.map +0 -1
- package/lib/bg.js +0 -114
- package/lib/bg.js.map +0 -1
- package/lib/container/__tests__/actions.test.js +0 -108
- package/lib/container/__tests__/actions.test.js.map +0 -1
- package/lib/container/__tests__/index.test.js +0 -503
- package/lib/container/__tests__/index.test.js.map +0 -1
- package/lib/container/__tests__/marks.test.js +0 -259
- package/lib/container/__tests__/marks.test.js.map +0 -1
- package/lib/container/__tests__/middleware.test.js +0 -244
- package/lib/container/__tests__/middleware.test.js.map +0 -1
- package/lib/container/__tests__/reducer.test.js +0 -450
- package/lib/container/__tests__/reducer.test.js.map +0 -1
- package/lib/container/actions.js +0 -18
- package/lib/container/actions.js.map +0 -1
- package/lib/container/index.js +0 -127
- package/lib/container/index.js.map +0 -1
- package/lib/container/marks.js +0 -22
- package/lib/container/marks.js.map +0 -1
- package/lib/container/middleware.js +0 -19
- package/lib/container/middleware.js.map +0 -1
- package/lib/container/reducer.js +0 -18
- package/lib/container/reducer.js.map +0 -1
- package/lib/coordinates-label.js +0 -79
- package/lib/coordinates-label.js.map +0 -1
- package/lib/graph-with-controls.js +0 -294
- package/lib/graph-with-controls.js.map +0 -1
- package/lib/graph.js +0 -327
- package/lib/graph.js.map +0 -1
- package/lib/grid-setup.js +0 -414
- package/lib/grid-setup.js.map +0 -1
- package/lib/grid.js +0 -131
- package/lib/grid.js.map +0 -1
- package/lib/index.js +0 -47
- package/lib/index.js.map +0 -1
- package/lib/key-legend.js +0 -201
- package/lib/key-legend.js.map +0 -1
- package/lib/label-svg-icon.js +0 -50
- package/lib/label-svg-icon.js.map +0 -1
- package/lib/labels.js +0 -243
- package/lib/labels.js.map +0 -1
- package/lib/mark-label.js +0 -285
- package/lib/mark-label.js.map +0 -1
- package/lib/toggle-bar.js +0 -252
- package/lib/toggle-bar.js.map +0 -1
- package/lib/tool-menu.js +0 -78
- package/lib/tool-menu.js.map +0 -1
- package/lib/tools/absolute/__tests__/component.test.js +0 -65
- package/lib/tools/absolute/__tests__/component.test.js.map +0 -1
- package/lib/tools/absolute/component.js +0 -29
- package/lib/tools/absolute/component.js.map +0 -1
- package/lib/tools/absolute/index.js +0 -50
- package/lib/tools/absolute/index.js.map +0 -1
- package/lib/tools/circle/__tests__/bg-circle.test.js +0 -33
- package/lib/tools/circle/__tests__/bg-circle.test.js.map +0 -1
- package/lib/tools/circle/__tests__/component.test.js +0 -615
- package/lib/tools/circle/__tests__/component.test.js.map +0 -1
- package/lib/tools/circle/__tests__/index.test.js +0 -576
- package/lib/tools/circle/__tests__/index.test.js.map +0 -1
- package/lib/tools/circle/bg-circle.js +0 -123
- package/lib/tools/circle/bg-circle.js.map +0 -1
- package/lib/tools/circle/component.js +0 -321
- package/lib/tools/circle/component.js.map +0 -1
- package/lib/tools/circle/index.js +0 -41
- package/lib/tools/circle/index.js.map +0 -1
- package/lib/tools/exponential/__tests__/component.test.js +0 -64
- package/lib/tools/exponential/__tests__/component.test.js.map +0 -1
- package/lib/tools/exponential/__tests__/index.test.js +0 -828
- package/lib/tools/exponential/__tests__/index.test.js.map +0 -1
- package/lib/tools/exponential/component.js +0 -28
- package/lib/tools/exponential/component.js.map +0 -1
- package/lib/tools/exponential/index.js +0 -56
- package/lib/tools/exponential/index.js.map +0 -1
- package/lib/tools/index.js +0 -86
- package/lib/tools/index.js.map +0 -1
- package/lib/tools/line/__tests__/component.test.js +0 -45
- package/lib/tools/line/__tests__/component.test.js.map +0 -1
- package/lib/tools/line/component.js +0 -97
- package/lib/tools/line/component.js.map +0 -1
- package/lib/tools/line/index.js +0 -11
- package/lib/tools/line/index.js.map +0 -1
- package/lib/tools/parabola/__tests__/component.test.js +0 -64
- package/lib/tools/parabola/__tests__/component.test.js.map +0 -1
- package/lib/tools/parabola/__tests__/index.test.js +0 -564
- package/lib/tools/parabola/__tests__/index.test.js.map +0 -1
- package/lib/tools/parabola/component.js +0 -28
- package/lib/tools/parabola/component.js.map +0 -1
- package/lib/tools/parabola/index.js +0 -50
- package/lib/tools/parabola/index.js.map +0 -1
- package/lib/tools/point/__tests__/component.test.js +0 -434
- package/lib/tools/point/__tests__/component.test.js.map +0 -1
- package/lib/tools/point/__tests__/index.test.js +0 -262
- package/lib/tools/point/__tests__/index.test.js.map +0 -1
- package/lib/tools/point/component.js +0 -148
- package/lib/tools/point/component.js.map +0 -1
- package/lib/tools/point/index.js +0 -24
- package/lib/tools/point/index.js.map +0 -1
- package/lib/tools/polygon/__tests__/component.test.js +0 -485
- package/lib/tools/polygon/__tests__/component.test.js.map +0 -1
- package/lib/tools/polygon/__tests__/index.test.js +0 -303
- package/lib/tools/polygon/__tests__/index.test.js.map +0 -1
- package/lib/tools/polygon/__tests__/line.test.js +0 -50
- package/lib/tools/polygon/__tests__/line.test.js.map +0 -1
- package/lib/tools/polygon/__tests__/polygon.test.js +0 -85
- package/lib/tools/polygon/__tests__/polygon.test.js.map +0 -1
- package/lib/tools/polygon/component.js +0 -437
- package/lib/tools/polygon/component.js.map +0 -1
- package/lib/tools/polygon/index.js +0 -89
- package/lib/tools/polygon/index.js.map +0 -1
- package/lib/tools/polygon/line.js +0 -112
- package/lib/tools/polygon/line.js.map +0 -1
- package/lib/tools/polygon/polygon.js +0 -130
- package/lib/tools/polygon/polygon.js.map +0 -1
- package/lib/tools/ray/__tests__/component.test.js +0 -35
- package/lib/tools/ray/__tests__/component.test.js.map +0 -1
- package/lib/tools/ray/component.js +0 -95
- package/lib/tools/ray/component.js.map +0 -1
- package/lib/tools/ray/index.js +0 -11
- package/lib/tools/ray/index.js.map +0 -1
- package/lib/tools/segment/__tests__/component.test.js +0 -35
- package/lib/tools/segment/__tests__/component.test.js.map +0 -1
- package/lib/tools/segment/component.js +0 -71
- package/lib/tools/segment/component.js.map +0 -1
- package/lib/tools/segment/index.js +0 -11
- package/lib/tools/segment/index.js.map +0 -1
- package/lib/tools/shared/__tests__/arrow-head.test.js +0 -45
- package/lib/tools/shared/__tests__/arrow-head.test.js.map +0 -1
- package/lib/tools/shared/arrow-head.js +0 -111
- package/lib/tools/shared/arrow-head.js.map +0 -1
- package/lib/tools/shared/icons/CorrectSVG.js +0 -40
- package/lib/tools/shared/icons/CorrectSVG.js.map +0 -1
- package/lib/tools/shared/icons/IncorrectSVG.js +0 -40
- package/lib/tools/shared/icons/IncorrectSVG.js.map +0 -1
- package/lib/tools/shared/icons/MissingSVG.js +0 -39
- package/lib/tools/shared/icons/MissingSVG.js.map +0 -1
- package/lib/tools/shared/line/__tests__/index.test.js +0 -124
- package/lib/tools/shared/line/__tests__/index.test.js.map +0 -1
- package/lib/tools/shared/line/__tests__/line-path.test.js +0 -62
- package/lib/tools/shared/line/__tests__/line-path.test.js.map +0 -1
- package/lib/tools/shared/line/__tests__/with-root-edge.test.js +0 -90
- package/lib/tools/shared/line/__tests__/with-root-edge.test.js.map +0 -1
- package/lib/tools/shared/line/index.js +0 -550
- package/lib/tools/shared/line/index.js.map +0 -1
- package/lib/tools/shared/line/line-path.js +0 -118
- package/lib/tools/shared/line/line-path.js.map +0 -1
- package/lib/tools/shared/line/with-root-edge.js +0 -121
- package/lib/tools/shared/line/with-root-edge.js.map +0 -1
- package/lib/tools/shared/point/__tests__/arrow-point.test.js +0 -127
- package/lib/tools/shared/point/__tests__/arrow-point.test.js.map +0 -1
- package/lib/tools/shared/point/__tests__/base-point.test.js +0 -122
- package/lib/tools/shared/point/__tests__/base-point.test.js.map +0 -1
- package/lib/tools/shared/point/arrow-point.js +0 -72
- package/lib/tools/shared/point/arrow-point.js.map +0 -1
- package/lib/tools/shared/point/arrow.js +0 -67
- package/lib/tools/shared/point/arrow.js.map +0 -1
- package/lib/tools/shared/point/base-point.js +0 -157
- package/lib/tools/shared/point/base-point.js.map +0 -1
- package/lib/tools/shared/point/index.js +0 -68
- package/lib/tools/shared/point/index.js.map +0 -1
- package/lib/tools/shared/styles.js +0 -33
- package/lib/tools/shared/styles.js.map +0 -1
- package/lib/tools/shared/types.js +0 -16
- package/lib/tools/shared/types.js.map +0 -1
- package/lib/tools/sine/__tests__/component.test.js +0 -72
- package/lib/tools/sine/__tests__/component.test.js.map +0 -1
- package/lib/tools/sine/component.js +0 -40
- package/lib/tools/sine/component.js.map +0 -1
- package/lib/tools/sine/index.js +0 -50
- package/lib/tools/sine/index.js.map +0 -1
- package/lib/tools/vector/__tests__/component.test.js +0 -32
- package/lib/tools/vector/__tests__/component.test.js.map +0 -1
- package/lib/tools/vector/component.js +0 -68
- package/lib/tools/vector/component.js.map +0 -1
- package/lib/tools/vector/index.js +0 -11
- package/lib/tools/vector/index.js.map +0 -1
- package/lib/undo-redo.js +0 -86
- package/lib/undo-redo.js.map +0 -1
- package/lib/use-debounce.js +0 -25
- package/lib/use-debounce.js.map +0 -1
- package/lib/utils.js +0 -229
- package/lib/utils.js.map +0 -1
- package/src/__tests__/bg.test.jsx +0 -250
- package/src/__tests__/coordinates-label.test.jsx +0 -243
- package/src/__tests__/graph-with-controls.test.jsx +0 -198
- package/src/__tests__/graph.test.jsx +0 -721
- package/src/__tests__/grid-setup.test.jsx +0 -645
- package/src/__tests__/grid.test.jsx +0 -22
- package/src/__tests__/key-legend.test.jsx +0 -260
- package/src/__tests__/label-svg-icon.test.jsx +0 -278
- package/src/__tests__/labels.test.jsx +0 -55
- package/src/__tests__/mark-label.test.jsx +0 -63
- package/src/__tests__/toggle-bar.test.jsx +0 -146
- package/src/__tests__/tool-menu.test.jsx +0 -115
- package/src/__tests__/undo-redo.test.jsx +0 -24
- package/src/__tests__/use-debounce.test.js +0 -21
- package/src/__tests__/utils.js +0 -41
- package/src/__tests__/utils.test.js +0 -105
- package/src/axis/__tests__/arrow.test.jsx +0 -38
- package/src/axis/__tests__/axes.test.jsx +0 -216
- package/src/axis/arrow.jsx +0 -57
- package/src/axis/axes.jsx +0 -285
- package/src/axis/index.js +0 -3
- package/src/bg.jsx +0 -96
- package/src/container/__tests__/actions.test.js +0 -105
- package/src/container/__tests__/index.test.jsx +0 -319
- package/src/container/__tests__/marks.test.js +0 -172
- package/src/container/__tests__/middleware.test.js +0 -235
- package/src/container/__tests__/reducer.test.js +0 -324
- package/src/container/actions.js +0 -8
- package/src/container/index.jsx +0 -91
- package/src/container/marks.js +0 -14
- package/src/container/middleware.js +0 -7
- package/src/container/reducer.js +0 -5
- package/src/coordinates-label.jsx +0 -63
- package/src/graph-with-controls.jsx +0 -239
- package/src/graph.jsx +0 -303
- package/src/grid-setup.jsx +0 -432
- package/src/grid.jsx +0 -133
- package/src/index.js +0 -7
- package/src/key-legend.jsx +0 -142
- package/src/label-svg-icon.jsx +0 -39
- package/src/labels.jsx +0 -207
- package/src/mark-label.jsx +0 -244
- package/src/toggle-bar.jsx +0 -224
- package/src/tool-menu.jsx +0 -49
- package/src/tools/absolute/__tests__/component.test.jsx +0 -53
- package/src/tools/absolute/component.jsx +0 -23
- package/src/tools/absolute/index.js +0 -31
- package/src/tools/circle/__tests__/bg-circle.test.jsx +0 -26
- package/src/tools/circle/__tests__/component.test.jsx +0 -494
- package/src/tools/circle/__tests__/index.test.js +0 -480
- package/src/tools/circle/bg-circle.jsx +0 -81
- package/src/tools/circle/component.jsx +0 -264
- package/src/tools/circle/index.js +0 -25
- package/src/tools/exponential/__tests__/component.test.jsx +0 -53
- package/src/tools/exponential/__tests__/index.test.js +0 -729
- package/src/tools/exponential/component.jsx +0 -23
- package/src/tools/exponential/index.js +0 -39
- package/src/tools/index.js +0 -48
- package/src/tools/line/__tests__/component.test.jsx +0 -37
- package/src/tools/line/component.jsx +0 -93
- package/src/tools/line/index.js +0 -4
- package/src/tools/parabola/__tests__/component.test.jsx +0 -48
- package/src/tools/parabola/__tests__/index.test.js +0 -470
- package/src/tools/parabola/component.jsx +0 -23
- package/src/tools/parabola/index.js +0 -31
- package/src/tools/point/__tests__/component.test.jsx +0 -349
- package/src/tools/point/__tests__/index.test.js +0 -241
- package/src/tools/point/component.jsx +0 -126
- package/src/tools/point/index.js +0 -11
- package/src/tools/polygon/__tests__/component.test.jsx +0 -471
- package/src/tools/polygon/__tests__/index.test.js +0 -294
- package/src/tools/polygon/__tests__/line.test.jsx +0 -35
- package/src/tools/polygon/__tests__/polygon.test.jsx +0 -61
- package/src/tools/polygon/component.jsx +0 -409
- package/src/tools/polygon/index.js +0 -52
- package/src/tools/polygon/line.jsx +0 -74
- package/src/tools/polygon/polygon.jsx +0 -110
- package/src/tools/ray/__tests__/component.test.jsx +0 -29
- package/src/tools/ray/component.jsx +0 -92
- package/src/tools/ray/index.js +0 -4
- package/src/tools/segment/__tests__/component.test.jsx +0 -28
- package/src/tools/segment/component.jsx +0 -65
- package/src/tools/segment/index.js +0 -4
- package/src/tools/shared/__tests__/arrow-head.test.jsx +0 -31
- package/src/tools/shared/arrow-head.jsx +0 -102
- package/src/tools/shared/icons/CorrectSVG.jsx +0 -32
- package/src/tools/shared/icons/IncorrectSVG.jsx +0 -30
- package/src/tools/shared/icons/MissingSVG.jsx +0 -31
- package/src/tools/shared/line/__tests__/index.test.jsx +0 -109
- package/src/tools/shared/line/__tests__/line-path.test.jsx +0 -53
- package/src/tools/shared/line/__tests__/with-root-edge.test.jsx +0 -73
- package/src/tools/shared/line/index.jsx +0 -487
- package/src/tools/shared/line/line-path.jsx +0 -80
- package/src/tools/shared/line/with-root-edge.jsx +0 -97
- package/src/tools/shared/point/__tests__/arrow-point.test.jsx +0 -91
- package/src/tools/shared/point/__tests__/base-point.test.jsx +0 -87
- package/src/tools/shared/point/arrow-point.jsx +0 -46
- package/src/tools/shared/point/arrow.jsx +0 -37
- package/src/tools/shared/point/base-point.jsx +0 -121
- package/src/tools/shared/point/index.jsx +0 -54
- package/src/tools/shared/styles.js +0 -27
- package/src/tools/shared/types.js +0 -10
- package/src/tools/sine/__tests__/component.test.jsx +0 -51
- package/src/tools/sine/component.jsx +0 -32
- package/src/tools/sine/index.js +0 -33
- package/src/tools/vector/__tests__/component.test.jsx +0 -25
- package/src/tools/vector/component.jsx +0 -56
- package/src/tools/vector/index.js +0 -4
- package/src/undo-redo.jsx +0 -45
- package/src/use-debounce.js +0 -13
- package/src/utils.js +0 -224
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"graph.test.js","names":["_react","_interopRequireDefault","require","_testUtils","_utils","_graph","_interopRequireWildcard","_tools","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","describe","marks","type","x","y","label","showLabel","from","to","building","it","expect","removeBuildingToolIfCurrentToolDiffers","currentTool","toEqual","onChangeMarks","jest","fn","defaultProps","className","tools","toolsArr","domain","min","max","step","range","size","width","height","graphProps","beforeEach","mockClear","_render","render","createElement","container","firstChild","toBeInTheDocument","props","_render2","_render3","_render4","labelModeEnabled","_render5","_render6","rerender","newMarks","_extends2","not","toHaveBeenCalled","undefined","_render7","marksWithBuilding","_render8","wrapper","updatedMarks","duplicatedMarks","_render9","_render0","_render1","_render10","_render11","completedMarks","_render12","_render13","_render14","_render15","_render16","propsWithoutMarks","_render17","emptyContainer","_render18","propsWithUndefinedTools","graphInstance","Graph","mark","component","getComponent","toBeNull","propsWithEmptyTools","toolWithoutComponent","propsWithCustomTool","toBeTruthy","pointMark","lineMark","circleMark","center","edge","pointComponent","lineComponent","circleComponent","existing","updateMarks","updated","toHaveBeenCalledTimes","mock","calls","toBe","initialMarks","_render19","querySelector","_render20","_render21"],"sources":["../../src/__tests__/graph.test.jsx"],"sourcesContent":["import React from 'react';\nimport { render } from '@pie-lib/test-utils';\nimport { graphProps } from './utils';\nimport Graph, { removeBuildingToolIfCurrentToolDiffers } from '../graph';\nimport { toolsArr } from '../tools';\n\ndescribe('removeBuildingToolIfCurrentToolDiffers', () => {\n let marks = [\n {\n type: 'point',\n x: 2,\n y: 2,\n label: 'Point',\n showLabel: true,\n },\n {\n type: 'line',\n from: { x: 0, y: 0 },\n to: { x: 1, y: 1 },\n label: 'Line',\n building: true,\n },\n ];\n\n it('keeps all marks if currentTool is the same', () => {\n expect(removeBuildingToolIfCurrentToolDiffers({ marks, currentTool: { type: 'line' } })).toEqual(marks);\n });\n\n it('removes building marks if currentTool is different', () => {\n expect(removeBuildingToolIfCurrentToolDiffers({ marks, currentTool: { type: 'different' } })).toEqual([marks[0]]);\n });\n});\n\ndescribe('Graph', () => {\n let onChangeMarks = jest.fn();\n\n const defaultProps = {\n className: 'className',\n onChangeMarks,\n tools: toolsArr,\n domain: { min: 0, max: 1, step: 1 },\n range: { min: 0, max: 1, step: 1 },\n size: { width: 400, height: 400 },\n marks: [\n {\n type: 'point',\n x: 2,\n y: 2,\n label: 'Point',\n showLabel: true,\n },\n {\n type: 'line',\n from: { x: 0, y: 0 },\n to: { x: 1, y: 1 },\n label: 'Line',\n },\n ],\n ...graphProps(),\n };\n\n beforeEach(() => {\n onChangeMarks.mockClear();\n });\n\n describe('rendering', () => {\n it('renders without crashing', () => {\n const { container } = render(<Graph {...defaultProps} />);\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with currentTool', () => {\n const props = {\n ...defaultProps,\n currentTool: toolsArr[0],\n };\n const { container } = render(<Graph {...props} />);\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with marks', () => {\n const { container } = render(<Graph {...defaultProps} />);\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with empty marks array', () => {\n const props = {\n ...defaultProps,\n marks: [],\n };\n const { container } = render(<Graph {...props} />);\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with labelModeEnabled', () => {\n const props = {\n ...defaultProps,\n labelModeEnabled: true,\n };\n const { container } = render(<Graph {...props} />);\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('props handling', () => {\n it('calls onChangeMarks when marks prop changes', () => {\n const { rerender } = render(<Graph {...defaultProps} />);\n\n const newMarks = [\n {\n type: 'point',\n x: 3,\n y: 3,\n label: 'New Point',\n showLabel: true,\n },\n ];\n\n rerender(<Graph {...defaultProps} marks={newMarks} />);\n\n // Component should render with new marks\n // Note: onChangeMarks is called internally when marks are changed through user interaction,\n // not when props change, so we just verify the component renders correctly\n expect(onChangeMarks).not.toHaveBeenCalled();\n });\n\n it('handles undefined onChangeMarks gracefully', () => {\n const props = {\n ...defaultProps,\n onChangeMarks: undefined,\n };\n const { container } = render(<Graph {...props} />);\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('removeBuildingToolIfCurrentToolDiffers integration', () => {\n it('removes building marks when currentTool changes', () => {\n const marksWithBuilding = [\n {\n type: 'point',\n x: 2,\n y: 2,\n label: 'Point',\n showLabel: true,\n },\n {\n type: 'line',\n from: { x: 0, y: 0 },\n to: { x: 1, y: 1 },\n building: true,\n },\n ];\n\n const props = {\n ...defaultProps,\n marks: marksWithBuilding,\n currentTool: { type: 'point' }, // Different from building mark type\n };\n\n const { container } = render(<Graph {...props} />);\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('updateMarks method', () => {\n it('updates an existing mark', () => {\n const wrapper = render(<Graph {...defaultProps} />);\n\n const { rerender } = wrapper;\n\n const updatedMarks = [\n {\n type: 'point',\n x: 3,\n y: 3,\n label: 'Updated Point',\n showLabel: true,\n },\n {\n type: 'line',\n from: { x: 0, y: 0 },\n to: { x: 1, y: 1 },\n label: 'Line',\n },\n ];\n\n rerender(<Graph {...defaultProps} marks={updatedMarks} />);\n\n // Component should render with updated marks\n expect(wrapper.container.firstChild).toBeInTheDocument();\n });\n\n it('does not update if mark is duplicated', () => {\n const duplicatedMarks = [\n {\n type: 'point',\n x: 2,\n y: 2,\n label: 'Point',\n showLabel: true,\n },\n {\n type: 'point',\n x: 2,\n y: 2,\n label: 'Point',\n showLabel: true,\n },\n ];\n\n const { container } = render(<Graph {...defaultProps} marks={duplicatedMarks} />);\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('adds mark if addIfMissing is true and mark does not exist', () => {\n const { container } = render(<Graph {...defaultProps} />);\n\n // The component should handle adding new marks through user interaction\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('does not update if mark has no building flag and is duplicated', () => {\n const marks = [\n {\n type: 'point',\n x: 2,\n y: 2,\n label: 'Point',\n showLabel: true,\n },\n ];\n\n const { container } = render(<Graph {...defaultProps} marks={marks} />);\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles building marks correctly', () => {\n const marksWithBuilding = [\n {\n type: 'line',\n from: { x: 0, y: 0 },\n building: true,\n },\n ];\n\n const { container } = render(<Graph {...defaultProps} marks={marksWithBuilding} />);\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('updates building mark to completed mark', () => {\n const marksWithBuilding = [\n {\n type: 'line',\n from: { x: 0, y: 0 },\n building: true,\n },\n ];\n\n const { rerender, container } = render(<Graph {...defaultProps} marks={marksWithBuilding} />);\n\n const completedMarks = [\n {\n type: 'line',\n from: { x: 0, y: 0 },\n to: { x: 1, y: 1 },\n building: false,\n },\n ];\n\n rerender(<Graph {...defaultProps} marks={completedMarks} />);\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('does not call onChangeMarks if update is undefined', () => {\n const { container } = render(<Graph {...defaultProps} />);\n\n // If update is undefined, onChangeMarks should not be called\n // This is handled internally by the component\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('does not add mark if existing is not found and addIfMissing is false', () => {\n const { container } = render(<Graph {...defaultProps} />);\n\n // By default, marks are not added if they don't exist and addIfMissing is false\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('calls onChangeMarks with correct marks when updating', () => {\n const marks = [\n {\n type: 'point',\n x: 2,\n y: 2,\n label: 'Point',\n showLabel: true,\n },\n ];\n\n const { rerender } = render(<Graph {...defaultProps} marks={marks} />);\n\n const updatedMarks = [\n {\n type: 'point',\n x: 3,\n y: 3,\n label: 'Updated Point',\n showLabel: true,\n },\n ];\n\n rerender(<Graph {...defaultProps} marks={updatedMarks} />);\n\n // The component handles mark updates internally\n // onChangeMarks is called through user interactions\n });\n\n it('preserves other marks when updating a specific mark', () => {\n const marks = [\n {\n type: 'point',\n x: 2,\n y: 2,\n label: 'Point 1',\n showLabel: true,\n },\n {\n type: 'point',\n x: 3,\n y: 3,\n label: 'Point 2',\n showLabel: true,\n },\n ];\n\n const { container } = render(<Graph {...defaultProps} marks={marks} />);\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('getComponent method', () => {\n it('returns null if mark is null', () => {\n const { container } = render(<Graph {...defaultProps} />);\n\n // getComponent returns null for null marks\n // This is tested by rendering with undefined marks\n const propsWithoutMarks = { ...defaultProps, marks: [] };\n const { container: emptyContainer } = render(<Graph {...propsWithoutMarks} />);\n expect(emptyContainer.firstChild).toBeInTheDocument();\n });\n\n it('returns null if mark is undefined', () => {\n const { container } = render(<Graph {...defaultProps} />);\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('returns null if tools is undefined', () => {\n const propsWithUndefinedTools = { ...defaultProps, tools: undefined };\n const graphInstance = new Graph(propsWithUndefinedTools);\n const mark = { type: 'point', x: 1, y: 1 };\n const component = graphInstance.getComponent(mark);\n expect(component).toBeNull();\n });\n\n it('returns null if tools is empty array', () => {\n const propsWithEmptyTools = { ...defaultProps, tools: [] };\n const graphInstance = new Graph(propsWithEmptyTools);\n const mark = { type: 'point', x: 1, y: 1 };\n const component = graphInstance.getComponent(mark);\n expect(component).toBeNull();\n });\n\n it('returns null if mark type is not found in tools', () => {\n const graphInstance = new Graph(defaultProps);\n const mark = { type: 'nonexistent-type', x: 1, y: 1 };\n const component = graphInstance.getComponent(mark);\n expect(component).toBeNull();\n });\n\n it('returns component if tool has no Component property', () => {\n const toolWithoutComponent = [{ type: 'custom', label: 'Custom' }];\n const propsWithCustomTool = { ...defaultProps, tools: toolWithoutComponent };\n const graphInstance = new Graph(propsWithCustomTool);\n const mark = { type: 'custom', x: 1, y: 1 };\n const component = graphInstance.getComponent(mark);\n expect(component).toBeNull();\n });\n\n it('returns correct component for point mark', () => {\n const graphInstance = new Graph(defaultProps);\n const mark = { type: 'point', x: 1, y: 1 };\n const component = graphInstance.getComponent(mark);\n expect(component).toBeTruthy();\n });\n\n it('returns correct component for line mark', () => {\n const graphInstance = new Graph(defaultProps);\n const mark = { type: 'line', from: { x: 0, y: 0 }, to: { x: 1, y: 1 } };\n const component = graphInstance.getComponent(mark);\n expect(component).toBeTruthy();\n });\n\n it('returns correct component for different mark types', () => {\n const graphInstance = new Graph(defaultProps);\n\n const pointMark = { type: 'point', x: 1, y: 1 };\n const lineMark = { type: 'line', from: { x: 0, y: 0 }, to: { x: 1, y: 1 } };\n const circleMark = { type: 'circle', center: { x: 0, y: 0 }, edge: { x: 1, y: 1 } };\n\n const pointComponent = graphInstance.getComponent(pointMark);\n const lineComponent = graphInstance.getComponent(lineMark);\n const circleComponent = graphInstance.getComponent(circleMark);\n\n expect(pointComponent).toBeTruthy();\n expect(lineComponent).toBeTruthy();\n expect(circleComponent).toBeTruthy();\n });\n });\n\n describe('getComponent method - unit tests', () => {\n it('returns null if mark is null', () => {\n const graphInstance = new Graph(defaultProps);\n const component = graphInstance.getComponent(null);\n expect(component).toBeNull();\n });\n\n it('returns null if mark is undefined', () => {\n const graphInstance = new Graph(defaultProps);\n const component = graphInstance.getComponent(undefined);\n expect(component).toBeNull();\n });\n\n it('returns null if tools is undefined', () => {\n const propsWithUndefinedTools = { ...defaultProps, tools: undefined };\n const graphInstance = new Graph(propsWithUndefinedTools);\n const mark = { type: 'point', x: 1, y: 1 };\n const component = graphInstance.getComponent(mark);\n expect(component).toBeNull();\n });\n\n it('returns null if tools is empty array', () => {\n const propsWithEmptyTools = { ...defaultProps, tools: [] };\n const graphInstance = new Graph(propsWithEmptyTools);\n const mark = { type: 'point', x: 1, y: 1 };\n const component = graphInstance.getComponent(mark);\n expect(component).toBeNull();\n });\n\n it('returns null if mark type is not found in tools', () => {\n const graphInstance = new Graph(defaultProps);\n const mark = { type: 'nonexistent-type', x: 1, y: 1 };\n const component = graphInstance.getComponent(mark);\n expect(component).toBeNull();\n });\n\n it('returns component if tool has no Component property', () => {\n const toolWithoutComponent = [{ type: 'custom', label: 'Custom' }];\n const propsWithCustomTool = { ...defaultProps, tools: toolWithoutComponent };\n const graphInstance = new Graph(propsWithCustomTool);\n const mark = { type: 'custom', x: 1, y: 1 };\n const component = graphInstance.getComponent(mark);\n expect(component).toBeNull();\n });\n\n it('returns correct component for point mark', () => {\n const graphInstance = new Graph(defaultProps);\n const mark = { type: 'point', x: 1, y: 1 };\n const component = graphInstance.getComponent(mark);\n expect(component).toBeTruthy();\n });\n\n it('returns correct component for line mark', () => {\n const graphInstance = new Graph(defaultProps);\n const mark = { type: 'line', from: { x: 0, y: 0 }, to: { x: 1, y: 1 } };\n const component = graphInstance.getComponent(mark);\n expect(component).toBeTruthy();\n });\n\n it('returns correct component for different mark types', () => {\n const graphInstance = new Graph(defaultProps);\n\n const pointMark = { type: 'point', x: 1, y: 1 };\n const lineMark = { type: 'line', from: { x: 0, y: 0 }, to: { x: 1, y: 1 } };\n const circleMark = { type: 'circle', center: { x: 0, y: 0 }, edge: { x: 1, y: 1 } };\n\n const pointComponent = graphInstance.getComponent(pointMark);\n const lineComponent = graphInstance.getComponent(lineMark);\n const circleComponent = graphInstance.getComponent(circleMark);\n\n expect(pointComponent).toBeTruthy();\n expect(lineComponent).toBeTruthy();\n expect(circleComponent).toBeTruthy();\n });\n });\n\n describe('updateMarks method - unit tests', () => {\n it('does not update if update parameter is null', () => {\n const onChangeMarks = jest.fn();\n const marks = [{ type: 'point', x: 1, y: 1 }];\n const props = { ...defaultProps, onChangeMarks, marks };\n const graphInstance = new Graph(props);\n\n const existing = marks[0];\n graphInstance.updateMarks(existing, null);\n\n expect(onChangeMarks).not.toHaveBeenCalled();\n });\n\n it('does not update if update parameter is undefined', () => {\n const onChangeMarks = jest.fn();\n const marks = [{ type: 'point', x: 1, y: 1 }];\n const props = { ...defaultProps, onChangeMarks, marks };\n const graphInstance = new Graph(props);\n\n const existing = marks[0];\n graphInstance.updateMarks(existing, undefined);\n\n expect(onChangeMarks).not.toHaveBeenCalled();\n });\n\n it('updates existing mark when found', () => {\n const onChangeMarks = jest.fn();\n const marks = [\n { type: 'point', x: 1, y: 1 },\n { type: 'point', x: 2, y: 2 },\n ];\n const props = { ...defaultProps, onChangeMarks, marks };\n const graphInstance = new Graph(props);\n\n const existing = marks[0];\n const updated = { type: 'point', x: 1, y: 3 };\n\n graphInstance.updateMarks(existing, updated);\n\n expect(onChangeMarks).toHaveBeenCalledTimes(1);\n const updatedMarks = onChangeMarks.mock.calls[0][0];\n expect(updatedMarks[0]).toEqual(updated);\n expect(updatedMarks[1]).toEqual(marks[1]);\n });\n\n it('adds mark if addIfMissing is true and mark not found', () => {\n const onChangeMarks = jest.fn();\n const marks = [{ type: 'point', x: 1, y: 1 }];\n const props = { ...defaultProps, onChangeMarks, marks };\n const graphInstance = new Graph(props);\n\n const existing = { type: 'point', x: 5, y: 5 };\n const updated = { type: 'point', x: 2, y: 2 };\n\n graphInstance.updateMarks(existing, updated, true);\n\n expect(onChangeMarks).toHaveBeenCalledTimes(1);\n const updatedMarks = onChangeMarks.mock.calls[0][0];\n expect(updatedMarks.length).toBe(2);\n expect(updatedMarks[1]).toEqual(updated);\n });\n\n it('does not add mark if addIfMissing is false and mark not found', () => {\n const onChangeMarks = jest.fn();\n const marks = [{ type: 'point', x: 1, y: 1 }];\n const props = { ...defaultProps, onChangeMarks, marks };\n const graphInstance = new Graph(props);\n\n const existing = { type: 'point', x: 5, y: 5 };\n const updated = { type: 'point', x: 2, y: 2 };\n\n graphInstance.updateMarks(existing, updated, false);\n\n expect(onChangeMarks).not.toHaveBeenCalled();\n });\n\n it('does not update if mark is still building', () => {\n const onChangeMarks = jest.fn();\n const marks = [{ type: 'point', x: 1, y: 1, building: true }];\n const props = { ...defaultProps, onChangeMarks, marks };\n const graphInstance = new Graph(props);\n\n const existing = marks[0];\n const updated = { type: 'point', x: 2, y: 2 };\n\n graphInstance.updateMarks(existing, updated);\n\n expect(onChangeMarks).toHaveBeenCalled();\n });\n\n it('preserves mark order when updating', () => {\n const onChangeMarks = jest.fn();\n const marks = [\n { type: 'point', x: 1, y: 1 },\n { type: 'point', x: 2, y: 2 },\n { type: 'point', x: 3, y: 3 },\n ];\n const props = { ...defaultProps, onChangeMarks, marks };\n const graphInstance = new Graph(props);\n\n const existing = marks[1];\n const updated = { type: 'point', x: 2, y: 5 };\n\n graphInstance.updateMarks(existing, updated);\n\n const updatedMarks = onChangeMarks.mock.calls[0][0];\n expect(updatedMarks[0]).toEqual(marks[0]);\n expect(updatedMarks[1]).toEqual(updated);\n expect(updatedMarks[2]).toEqual(marks[2]);\n });\n\n it('handles empty marks array', () => {\n const onChangeMarks = jest.fn();\n const props = { ...defaultProps, onChangeMarks, marks: [] };\n const graphInstance = new Graph(props);\n\n const existing = { type: 'point', x: 1, y: 1 };\n const updated = { type: 'point', x: 2, y: 2 };\n\n graphInstance.updateMarks(existing, updated, true);\n\n expect(onChangeMarks).toHaveBeenCalledTimes(1);\n const updatedMarks = onChangeMarks.mock.calls[0][0];\n expect(updatedMarks.length).toBe(1);\n expect(updatedMarks[0]).toEqual(updated);\n });\n });\n\n describe('updateMarks and getComponent integration', () => {\n it('updates marks and renders with correct components', () => {\n const initialMarks = [\n {\n type: 'point',\n x: 2,\n y: 2,\n label: 'Point',\n showLabel: true,\n },\n ];\n\n const { rerender, container } = render(<Graph {...defaultProps} marks={initialMarks} />);\n\n const updatedMarks = [\n {\n type: 'line',\n from: { x: 0, y: 0 },\n to: { x: 1, y: 1 },\n label: 'Line',\n },\n ];\n\n rerender(<Graph {...defaultProps} marks={updatedMarks} />);\n\n expect(container.querySelector('#marks')).toBeInTheDocument();\n });\n\n it('handles adding new marks with different types', () => {\n const initialMarks = [\n {\n type: 'point',\n x: 2,\n y: 2,\n label: 'Point',\n showLabel: true,\n },\n ];\n\n const { rerender, container } = render(<Graph {...defaultProps} marks={initialMarks} />);\n\n const updatedMarks = [\n {\n type: 'point',\n x: 2,\n y: 2,\n label: 'Point',\n showLabel: true,\n },\n {\n type: 'line',\n from: { x: 0, y: 0 },\n to: { x: 1, y: 1 },\n label: 'Line',\n },\n ];\n\n rerender(<Graph {...defaultProps} marks={updatedMarks} />);\n\n expect(container.querySelector('#marks')).toBeInTheDocument();\n });\n\n it('handles removing marks', () => {\n const initialMarks = [\n {\n type: 'point',\n x: 2,\n y: 2,\n label: 'Point',\n showLabel: true,\n },\n {\n type: 'line',\n from: { x: 0, y: 0 },\n to: { x: 1, y: 1 },\n label: 'Line',\n },\n ];\n\n const { rerender, container } = render(<Graph {...defaultProps} marks={initialMarks} />);\n\n const updatedMarks = [\n {\n type: 'point',\n x: 2,\n y: 2,\n label: 'Point',\n showLabel: true,\n },\n ];\n\n rerender(<Graph {...defaultProps} marks={updatedMarks} />);\n\n expect(container.querySelector('#marks')).toBeInTheDocument();\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|