@pie-lib/graphing 4.1.0-beta.7 → 4.1.0-beta.8

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 (97) hide show
  1. package/package.json +3 -3
  2. package/lib/__tests__/bg.test.js +0 -282
  3. package/lib/__tests__/bg.test.js.map +0 -1
  4. package/lib/__tests__/coordinates-label.test.js +0 -276
  5. package/lib/__tests__/coordinates-label.test.js.map +0 -1
  6. package/lib/__tests__/graph-with-controls.test.js +0 -275
  7. package/lib/__tests__/graph-with-controls.test.js.map +0 -1
  8. package/lib/__tests__/graph.test.js +0 -927
  9. package/lib/__tests__/graph.test.js.map +0 -1
  10. package/lib/__tests__/grid-setup.test.js +0 -729
  11. package/lib/__tests__/grid-setup.test.js.map +0 -1
  12. package/lib/__tests__/grid.test.js +0 -29
  13. package/lib/__tests__/grid.test.js.map +0 -1
  14. package/lib/__tests__/key-legend.test.js +0 -321
  15. package/lib/__tests__/key-legend.test.js.map +0 -1
  16. package/lib/__tests__/label-svg-icon.test.js +0 -373
  17. package/lib/__tests__/label-svg-icon.test.js.map +0 -1
  18. package/lib/__tests__/labels.test.js +0 -61
  19. package/lib/__tests__/labels.test.js.map +0 -1
  20. package/lib/__tests__/mark-label.test.js +0 -133
  21. package/lib/__tests__/mark-label.test.js.map +0 -1
  22. package/lib/__tests__/toggle-bar.test.js +0 -197
  23. package/lib/__tests__/toggle-bar.test.js.map +0 -1
  24. package/lib/__tests__/tool-menu.test.js +0 -151
  25. package/lib/__tests__/tool-menu.test.js.map +0 -1
  26. package/lib/__tests__/undo-redo.test.js +0 -31
  27. package/lib/__tests__/undo-redo.test.js.map +0 -1
  28. package/lib/__tests__/use-debounce.test.js +0 -24
  29. package/lib/__tests__/use-debounce.test.js.map +0 -1
  30. package/lib/__tests__/utils.js +0 -70
  31. package/lib/__tests__/utils.js.map +0 -1
  32. package/lib/__tests__/utils.test.js +0 -123
  33. package/lib/__tests__/utils.test.js.map +0 -1
  34. package/lib/axis/__tests__/arrow.test.js +0 -60
  35. package/lib/axis/__tests__/arrow.test.js.map +0 -1
  36. package/lib/axis/__tests__/axes.test.js +0 -195
  37. package/lib/axis/__tests__/axes.test.js.map +0 -1
  38. package/lib/container/__tests__/actions.test.js +0 -108
  39. package/lib/container/__tests__/actions.test.js.map +0 -1
  40. package/lib/container/__tests__/index.test.js +0 -503
  41. package/lib/container/__tests__/index.test.js.map +0 -1
  42. package/lib/container/__tests__/marks.test.js +0 -259
  43. package/lib/container/__tests__/marks.test.js.map +0 -1
  44. package/lib/container/__tests__/middleware.test.js +0 -244
  45. package/lib/container/__tests__/middleware.test.js.map +0 -1
  46. package/lib/container/__tests__/reducer.test.js +0 -450
  47. package/lib/container/__tests__/reducer.test.js.map +0 -1
  48. package/lib/tools/absolute/__tests__/component.test.js +0 -65
  49. package/lib/tools/absolute/__tests__/component.test.js.map +0 -1
  50. package/lib/tools/circle/__tests__/bg-circle.test.js +0 -33
  51. package/lib/tools/circle/__tests__/bg-circle.test.js.map +0 -1
  52. package/lib/tools/circle/__tests__/component.test.js +0 -615
  53. package/lib/tools/circle/__tests__/component.test.js.map +0 -1
  54. package/lib/tools/circle/__tests__/index.test.js +0 -576
  55. package/lib/tools/circle/__tests__/index.test.js.map +0 -1
  56. package/lib/tools/exponential/__tests__/component.test.js +0 -64
  57. package/lib/tools/exponential/__tests__/component.test.js.map +0 -1
  58. package/lib/tools/exponential/__tests__/index.test.js +0 -828
  59. package/lib/tools/exponential/__tests__/index.test.js.map +0 -1
  60. package/lib/tools/line/__tests__/component.test.js +0 -45
  61. package/lib/tools/line/__tests__/component.test.js.map +0 -1
  62. package/lib/tools/parabola/__tests__/component.test.js +0 -64
  63. package/lib/tools/parabola/__tests__/component.test.js.map +0 -1
  64. package/lib/tools/parabola/__tests__/index.test.js +0 -564
  65. package/lib/tools/parabola/__tests__/index.test.js.map +0 -1
  66. package/lib/tools/point/__tests__/component.test.js +0 -434
  67. package/lib/tools/point/__tests__/component.test.js.map +0 -1
  68. package/lib/tools/point/__tests__/index.test.js +0 -262
  69. package/lib/tools/point/__tests__/index.test.js.map +0 -1
  70. package/lib/tools/polygon/__tests__/component.test.js +0 -485
  71. package/lib/tools/polygon/__tests__/component.test.js.map +0 -1
  72. package/lib/tools/polygon/__tests__/index.test.js +0 -303
  73. package/lib/tools/polygon/__tests__/index.test.js.map +0 -1
  74. package/lib/tools/polygon/__tests__/line.test.js +0 -50
  75. package/lib/tools/polygon/__tests__/line.test.js.map +0 -1
  76. package/lib/tools/polygon/__tests__/polygon.test.js +0 -85
  77. package/lib/tools/polygon/__tests__/polygon.test.js.map +0 -1
  78. package/lib/tools/ray/__tests__/component.test.js +0 -35
  79. package/lib/tools/ray/__tests__/component.test.js.map +0 -1
  80. package/lib/tools/segment/__tests__/component.test.js +0 -35
  81. package/lib/tools/segment/__tests__/component.test.js.map +0 -1
  82. package/lib/tools/shared/__tests__/arrow-head.test.js +0 -45
  83. package/lib/tools/shared/__tests__/arrow-head.test.js.map +0 -1
  84. package/lib/tools/shared/line/__tests__/index.test.js +0 -124
  85. package/lib/tools/shared/line/__tests__/index.test.js.map +0 -1
  86. package/lib/tools/shared/line/__tests__/line-path.test.js +0 -62
  87. package/lib/tools/shared/line/__tests__/line-path.test.js.map +0 -1
  88. package/lib/tools/shared/line/__tests__/with-root-edge.test.js +0 -90
  89. package/lib/tools/shared/line/__tests__/with-root-edge.test.js.map +0 -1
  90. package/lib/tools/shared/point/__tests__/arrow-point.test.js +0 -127
  91. package/lib/tools/shared/point/__tests__/arrow-point.test.js.map +0 -1
  92. package/lib/tools/shared/point/__tests__/base-point.test.js +0 -122
  93. package/lib/tools/shared/point/__tests__/base-point.test.js.map +0 -1
  94. package/lib/tools/sine/__tests__/component.test.js +0 -72
  95. package/lib/tools/sine/__tests__/component.test.js.map +0 -1
  96. package/lib/tools/vector/__tests__/component.test.js +0 -32
  97. package/lib/tools/vector/__tests__/component.test.js.map +0 -1
@@ -1,262 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _index = require("../index");
5
- var _component = _interopRequireDefault(require("../component"));
6
- describe('point tool', function () {
7
- var pointTool;
8
- beforeEach(function () {
9
- pointTool = (0, _index.tool)();
10
- });
11
- describe('tool structure', function () {
12
- it('returns an object with required properties', function () {
13
- expect(pointTool).toHaveProperty('label', 'Point');
14
- expect(pointTool).toHaveProperty('type', 'point');
15
- expect(pointTool).toHaveProperty('Component', _component["default"]);
16
- expect(pointTool).toHaveProperty('addPoint');
17
- });
18
- it('has correct label', function () {
19
- expect(pointTool.label).toBe('Point');
20
- });
21
- it('has correct type', function () {
22
- expect(pointTool.type).toBe('point');
23
- });
24
- it('uses Point component', function () {
25
- expect(pointTool.Component).toBe(_component["default"]);
26
- });
27
- it('does not have complete method', function () {
28
- expect(pointTool.complete).toBeUndefined();
29
- });
30
- });
31
- describe('addPoint', function () {
32
- it('creates a point mark from coordinates', function () {
33
- var point = {
34
- x: 1,
35
- y: 2
36
- };
37
- var result = pointTool.addPoint(point);
38
- expect(result).toEqual({
39
- type: 'point',
40
- x: 1,
41
- y: 2
42
- });
43
- });
44
- it('creates point with integer coordinates', function () {
45
- var point = {
46
- x: 5,
47
- y: 10
48
- };
49
- var result = pointTool.addPoint(point);
50
- expect(result).toEqual({
51
- type: 'point',
52
- x: 5,
53
- y: 10
54
- });
55
- });
56
- it('creates point with decimal coordinates', function () {
57
- var point = {
58
- x: 1.5,
59
- y: 2.75
60
- };
61
- var result = pointTool.addPoint(point);
62
- expect(result).toEqual({
63
- type: 'point',
64
- x: 1.5,
65
- y: 2.75
66
- });
67
- });
68
- it('creates point with negative coordinates', function () {
69
- var point = {
70
- x: -3,
71
- y: -7
72
- };
73
- var result = pointTool.addPoint(point);
74
- expect(result).toEqual({
75
- type: 'point',
76
- x: -3,
77
- y: -7
78
- });
79
- });
80
- it('creates point with zero coordinates', function () {
81
- var point = {
82
- x: 0,
83
- y: 0
84
- };
85
- var result = pointTool.addPoint(point);
86
- expect(result).toEqual({
87
- type: 'point',
88
- x: 0,
89
- y: 0
90
- });
91
- });
92
- it('creates point at origin', function () {
93
- var result = pointTool.addPoint({
94
- x: 0,
95
- y: 0
96
- });
97
- expect(result.x).toBe(0);
98
- expect(result.y).toBe(0);
99
- });
100
- it('spreads all point properties', function () {
101
- var point = {
102
- x: 1,
103
- y: 2,
104
- label: 'A',
105
- color: 'red'
106
- };
107
- var result = pointTool.addPoint(point);
108
- expect(result).toEqual({
109
- type: 'point',
110
- x: 1,
111
- y: 2,
112
- label: 'A',
113
- color: 'red'
114
- });
115
- });
116
- it('preserves additional properties from point object', function () {
117
- var point = {
118
- x: 3,
119
- y: 4,
120
- id: 'point-1',
121
- fill: 'blue',
122
- stroke: 'black'
123
- };
124
- var result = pointTool.addPoint(point);
125
- expect(result.type).toBe('point');
126
- expect(result.x).toBe(3);
127
- expect(result.y).toBe(4);
128
- expect(result.id).toBe('point-1');
129
- expect(result.fill).toBe('blue');
130
- expect(result.stroke).toBe('black');
131
- });
132
- it('ignores existing mark parameter', function () {
133
- var point = {
134
- x: 1,
135
- y: 2
136
- };
137
- var existingMark = {
138
- type: 'point',
139
- x: 5,
140
- y: 5
141
- };
142
- var result = pointTool.addPoint(point, existingMark);
143
-
144
- // Point tool always creates new mark, ignoring existing
145
- expect(result).toEqual({
146
- type: 'point',
147
- x: 1,
148
- y: 2
149
- });
150
- });
151
- it('creates new point even with same coordinates', function () {
152
- var point = {
153
- x: 1,
154
- y: 2
155
- };
156
- var result1 = pointTool.addPoint(point);
157
- var result2 = pointTool.addPoint(point);
158
- expect(result1).toEqual(result2);
159
- expect(result1).not.toBe(result2); // Different object references
160
- });
161
- it('handles very large coordinates', function () {
162
- var point = {
163
- x: 1000000,
164
- y: -1000000
165
- };
166
- var result = pointTool.addPoint(point);
167
- expect(result.x).toBe(1000000);
168
- expect(result.y).toBe(-1000000);
169
- });
170
- it('handles very small coordinates', function () {
171
- var point = {
172
- x: 0.0001,
173
- y: 0.0002
174
- };
175
- var result = pointTool.addPoint(point);
176
- expect(result.x).toBe(0.0001);
177
- expect(result.y).toBe(0.0002);
178
- });
179
- });
180
- describe('edge cases', function () {
181
- it('handles point with only x coordinate', function () {
182
- var point = {
183
- x: 5
184
- };
185
- var result = pointTool.addPoint(point);
186
- expect(result.type).toBe('point');
187
- expect(result.x).toBe(5);
188
- expect(result.y).toBeUndefined();
189
- });
190
- it('handles point with only y coordinate', function () {
191
- var point = {
192
- y: 5
193
- };
194
- var result = pointTool.addPoint(point);
195
- expect(result.type).toBe('point');
196
- expect(result.x).toBeUndefined();
197
- expect(result.y).toBe(5);
198
- });
199
- it('handles empty point object', function () {
200
- var point = {};
201
- var result = pointTool.addPoint(point);
202
- expect(result).toEqual({
203
- type: 'point'
204
- });
205
- });
206
- it('handles NaN coordinates', function () {
207
- var point = {
208
- x: NaN,
209
- y: NaN
210
- };
211
- var result = pointTool.addPoint(point);
212
- expect(result.type).toBe('point');
213
- expect(Number.isNaN(result.x)).toBe(true);
214
- expect(Number.isNaN(result.y)).toBe(true);
215
- });
216
- it('handles Infinity coordinates', function () {
217
- var point = {
218
- x: Infinity,
219
- y: -Infinity
220
- };
221
- var result = pointTool.addPoint(point);
222
- expect(result.x).toBe(Infinity);
223
- expect(result.y).toBe(-Infinity);
224
- });
225
- });
226
- describe('multiple points', function () {
227
- it('creates multiple distinct points', function () {
228
- var points = [{
229
- x: 1,
230
- y: 1
231
- }, {
232
- x: 2,
233
- y: 2
234
- }, {
235
- x: 3,
236
- y: 3
237
- }];
238
- var results = points.map(function (p) {
239
- return pointTool.addPoint(p);
240
- });
241
- expect(results).toHaveLength(3);
242
- results.forEach(function (result, i) {
243
- expect(result.type).toBe('point');
244
- expect(result.x).toBe(points[i].x);
245
- expect(result.y).toBe(points[i].y);
246
- });
247
- });
248
- it('each point is independent', function () {
249
- var point1 = pointTool.addPoint({
250
- x: 1,
251
- y: 1
252
- });
253
- var point2 = pointTool.addPoint({
254
- x: 2,
255
- y: 2
256
- });
257
- point1.label = 'A';
258
- expect(point2.label).toBeUndefined();
259
- });
260
- });
261
- });
262
- //# sourceMappingURL=index.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.test.js","names":["_index","require","_component","_interopRequireDefault","describe","pointTool","beforeEach","tool","it","expect","toHaveProperty","Point","label","toBe","type","Component","complete","toBeUndefined","point","x","y","result","addPoint","toEqual","color","id","fill","stroke","existingMark","result1","result2","not","NaN","Number","isNaN","Infinity","points","results","map","p","toHaveLength","forEach","i","point1","point2"],"sources":["../../../../src/tools/point/__tests__/index.test.js"],"sourcesContent":["import { tool } from '../index';\nimport Point from '../component';\n\ndescribe('point tool', () => {\n let pointTool;\n\n beforeEach(() => {\n pointTool = tool();\n });\n\n describe('tool structure', () => {\n it('returns an object with required properties', () => {\n expect(pointTool).toHaveProperty('label', 'Point');\n expect(pointTool).toHaveProperty('type', 'point');\n expect(pointTool).toHaveProperty('Component', Point);\n expect(pointTool).toHaveProperty('addPoint');\n });\n\n it('has correct label', () => {\n expect(pointTool.label).toBe('Point');\n });\n\n it('has correct type', () => {\n expect(pointTool.type).toBe('point');\n });\n\n it('uses Point component', () => {\n expect(pointTool.Component).toBe(Point);\n });\n\n it('does not have complete method', () => {\n expect(pointTool.complete).toBeUndefined();\n });\n });\n\n describe('addPoint', () => {\n it('creates a point mark from coordinates', () => {\n const point = { x: 1, y: 2 };\n const result = pointTool.addPoint(point);\n\n expect(result).toEqual({\n type: 'point',\n x: 1,\n y: 2,\n });\n });\n\n it('creates point with integer coordinates', () => {\n const point = { x: 5, y: 10 };\n const result = pointTool.addPoint(point);\n\n expect(result).toEqual({\n type: 'point',\n x: 5,\n y: 10,\n });\n });\n\n it('creates point with decimal coordinates', () => {\n const point = { x: 1.5, y: 2.75 };\n const result = pointTool.addPoint(point);\n\n expect(result).toEqual({\n type: 'point',\n x: 1.5,\n y: 2.75,\n });\n });\n\n it('creates point with negative coordinates', () => {\n const point = { x: -3, y: -7 };\n const result = pointTool.addPoint(point);\n\n expect(result).toEqual({\n type: 'point',\n x: -3,\n y: -7,\n });\n });\n\n it('creates point with zero coordinates', () => {\n const point = { x: 0, y: 0 };\n const result = pointTool.addPoint(point);\n\n expect(result).toEqual({\n type: 'point',\n x: 0,\n y: 0,\n });\n });\n\n it('creates point at origin', () => {\n const result = pointTool.addPoint({ x: 0, y: 0 });\n\n expect(result.x).toBe(0);\n expect(result.y).toBe(0);\n });\n\n it('spreads all point properties', () => {\n const point = { x: 1, y: 2, label: 'A', color: 'red' };\n const result = pointTool.addPoint(point);\n\n expect(result).toEqual({\n type: 'point',\n x: 1,\n y: 2,\n label: 'A',\n color: 'red',\n });\n });\n\n it('preserves additional properties from point object', () => {\n const point = {\n x: 3,\n y: 4,\n id: 'point-1',\n fill: 'blue',\n stroke: 'black',\n };\n const result = pointTool.addPoint(point);\n\n expect(result.type).toBe('point');\n expect(result.x).toBe(3);\n expect(result.y).toBe(4);\n expect(result.id).toBe('point-1');\n expect(result.fill).toBe('blue');\n expect(result.stroke).toBe('black');\n });\n\n it('ignores existing mark parameter', () => {\n const point = { x: 1, y: 2 };\n const existingMark = { type: 'point', x: 5, y: 5 };\n const result = pointTool.addPoint(point, existingMark);\n\n // Point tool always creates new mark, ignoring existing\n expect(result).toEqual({\n type: 'point',\n x: 1,\n y: 2,\n });\n });\n\n it('creates new point even with same coordinates', () => {\n const point = { x: 1, y: 2 };\n const result1 = pointTool.addPoint(point);\n const result2 = pointTool.addPoint(point);\n\n expect(result1).toEqual(result2);\n expect(result1).not.toBe(result2); // Different object references\n });\n\n it('handles very large coordinates', () => {\n const point = { x: 1000000, y: -1000000 };\n const result = pointTool.addPoint(point);\n\n expect(result.x).toBe(1000000);\n expect(result.y).toBe(-1000000);\n });\n\n it('handles very small coordinates', () => {\n const point = { x: 0.0001, y: 0.0002 };\n const result = pointTool.addPoint(point);\n\n expect(result.x).toBe(0.0001);\n expect(result.y).toBe(0.0002);\n });\n });\n\n describe('edge cases', () => {\n it('handles point with only x coordinate', () => {\n const point = { x: 5 };\n const result = pointTool.addPoint(point);\n\n expect(result.type).toBe('point');\n expect(result.x).toBe(5);\n expect(result.y).toBeUndefined();\n });\n\n it('handles point with only y coordinate', () => {\n const point = { y: 5 };\n const result = pointTool.addPoint(point);\n\n expect(result.type).toBe('point');\n expect(result.x).toBeUndefined();\n expect(result.y).toBe(5);\n });\n\n it('handles empty point object', () => {\n const point = {};\n const result = pointTool.addPoint(point);\n\n expect(result).toEqual({\n type: 'point',\n });\n });\n\n it('handles NaN coordinates', () => {\n const point = { x: NaN, y: NaN };\n const result = pointTool.addPoint(point);\n\n expect(result.type).toBe('point');\n expect(Number.isNaN(result.x)).toBe(true);\n expect(Number.isNaN(result.y)).toBe(true);\n });\n\n it('handles Infinity coordinates', () => {\n const point = { x: Infinity, y: -Infinity };\n const result = pointTool.addPoint(point);\n\n expect(result.x).toBe(Infinity);\n expect(result.y).toBe(-Infinity);\n });\n });\n\n describe('multiple points', () => {\n it('creates multiple distinct points', () => {\n const points = [\n { x: 1, y: 1 },\n { x: 2, y: 2 },\n { x: 3, y: 3 },\n ];\n\n const results = points.map((p) => pointTool.addPoint(p));\n\n expect(results).toHaveLength(3);\n results.forEach((result, i) => {\n expect(result.type).toBe('point');\n expect(result.x).toBe(points[i].x);\n expect(result.y).toBe(points[i].y);\n });\n });\n\n it('each point is independent', () => {\n const point1 = pointTool.addPoint({ x: 1, y: 1 });\n const point2 = pointTool.addPoint({ x: 2, y: 2 });\n\n point1.label = 'A';\n expect(point2.label).toBeUndefined();\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}