mathbox-react 0.0.14 → 0.2.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 (139) hide show
  1. package/build/cjs/{types/components → components}/ContainedMathbox.d.ts +0 -0
  2. package/build/cjs/components/ContainedMathbox.js +59 -0
  3. package/build/cjs/components/ContainedMathbox.js.map +1 -0
  4. package/build/cjs/{types/components → components}/Mathbox.d.ts +0 -0
  5. package/build/cjs/components/Mathbox.js +87 -0
  6. package/build/cjs/components/Mathbox.js.map +1 -0
  7. package/build/{esm/types/components/MathboxNodeContext.d.ts → cjs/components/MathboxAPIContext.d.ts} +5 -0
  8. package/build/cjs/components/MathboxAPIContext.js +18 -0
  9. package/build/cjs/components/MathboxAPIContext.js.map +1 -0
  10. package/build/cjs/{types/components → components}/components.d.ts +0 -0
  11. package/build/cjs/components/components.js +383 -0
  12. package/build/cjs/components/components.js.map +1 -0
  13. package/build/cjs/{types/testSetup.d.ts → components/components.spec.d.ts} +0 -0
  14. package/build/cjs/components/components.spec.js +310 -0
  15. package/build/cjs/components/components.spec.js.map +1 -0
  16. package/build/cjs/{types/components → components}/index.d.ts +1 -0
  17. package/build/cjs/components/index.js +25 -0
  18. package/build/cjs/components/index.js.map +1 -0
  19. package/build/cjs/{types/components → components}/types.d.ts +0 -0
  20. package/build/cjs/components/types.js +3 -0
  21. package/build/cjs/components/types.js.map +1 -0
  22. package/build/cjs/{types/components → components}/util.d.ts +0 -0
  23. package/build/cjs/components/util.js +107 -0
  24. package/build/cjs/components/util.js.map +1 -0
  25. package/build/cjs/{types/index.d.ts → index.d.ts} +0 -0
  26. package/build/cjs/index.js +18 -2
  27. package/build/cjs/index.js.map +1 -1
  28. package/build/cjs/stories/Area.stories.d.ts +69 -0
  29. package/build/cjs/stories/Area.stories.js +53 -0
  30. package/build/cjs/stories/Area.stories.js.map +1 -0
  31. package/build/cjs/stories/Cartesian.stories.d.ts +35 -0
  32. package/build/cjs/stories/Cartesian.stories.js +47 -0
  33. package/build/cjs/stories/Cartesian.stories.js.map +1 -0
  34. package/build/cjs/stories/Grid.stories.d.ts +263 -0
  35. package/build/cjs/stories/Grid.stories.js +45 -0
  36. package/build/cjs/stories/Grid.stories.js.map +1 -0
  37. package/build/cjs/stories/Mathbox.stories.d.ts +19 -0
  38. package/build/cjs/stories/Mathbox.stories.js +16 -0
  39. package/build/cjs/stories/Mathbox.stories.js.map +1 -0
  40. package/build/cjs/stories/Play.stories.d.ts +37 -0
  41. package/build/cjs/stories/Play.stories.js +35 -0
  42. package/build/cjs/stories/Play.stories.js.map +1 -0
  43. package/build/cjs/stories/Point.stories.d.ts +102 -0
  44. package/build/cjs/stories/Point.stories.js +103 -0
  45. package/build/cjs/stories/Point.stories.js.map +1 -0
  46. package/build/cjs/stories/Surface.stories.d.ts +69 -0
  47. package/build/cjs/stories/Surface.stories.js +49 -0
  48. package/build/cjs/stories/Surface.stories.js.map +1 -0
  49. package/build/cjs/stories/utils.d.ts +5 -0
  50. package/build/cjs/stories/utils.js +69 -0
  51. package/build/cjs/stories/utils.js.map +1 -0
  52. package/build/{esm/types → cjs}/testSetup.d.ts +0 -0
  53. package/build/cjs/testSetup.js +5 -0
  54. package/build/cjs/testSetup.js.map +1 -0
  55. package/build/cjs/{types/testUtils.d.ts → testUtils.d.ts} +0 -0
  56. package/build/cjs/testUtils.js +46 -0
  57. package/build/cjs/testUtils.js.map +1 -0
  58. package/build/cjs/threestrap/Renderer.d.ts +7 -0
  59. package/build/cjs/threestrap/Renderer.js +15 -0
  60. package/build/cjs/threestrap/Renderer.js.map +1 -0
  61. package/build/cjs/threestrap/ThreestrapContext.d.ts +6 -0
  62. package/build/cjs/threestrap/ThreestrapContext.js +15 -0
  63. package/build/cjs/threestrap/ThreestrapContext.js.map +1 -0
  64. package/build/cjs/threestrap/index.d.ts +2 -0
  65. package/build/cjs/threestrap/index.js +17 -0
  66. package/build/cjs/threestrap/index.js.map +1 -0
  67. package/build/cjs/threestrap/threestrap.d.ts +13 -0
  68. package/build/cjs/threestrap/threestrap.js +3 -0
  69. package/build/cjs/threestrap/threestrap.js.map +1 -0
  70. package/build/esm/{types/components → components}/ContainedMathbox.d.ts +0 -0
  71. package/build/esm/components/ContainedMathbox.js +31 -0
  72. package/build/esm/components/ContainedMathbox.js.map +1 -0
  73. package/build/esm/{types/components → components}/Mathbox.d.ts +0 -0
  74. package/build/esm/components/Mathbox.js +59 -0
  75. package/build/esm/components/Mathbox.js.map +1 -0
  76. package/build/{cjs/types/components/MathboxNodeContext.d.ts → esm/components/MathboxAPIContext.d.ts} +5 -0
  77. package/build/esm/components/MathboxAPIContext.js +15 -0
  78. package/build/esm/components/MathboxAPIContext.js.map +1 -0
  79. package/build/esm/{types/components → components}/components.d.ts +0 -0
  80. package/build/{index.d.ts → esm/components/components.js} +160 -98
  81. package/build/esm/components/components.js.map +1 -0
  82. package/build/esm/components/components.spec.d.ts +1 -0
  83. package/build/esm/components/components.spec.js +282 -0
  84. package/build/esm/components/components.spec.js.map +1 -0
  85. package/build/esm/{types/components → components}/index.d.ts +1 -0
  86. package/build/esm/components/index.js +5 -0
  87. package/build/esm/components/index.js.map +1 -0
  88. package/build/esm/{types/components → components}/types.d.ts +0 -0
  89. package/build/esm/components/types.js +2 -0
  90. package/build/esm/components/types.js.map +1 -0
  91. package/build/esm/{types/components → components}/util.d.ts +0 -0
  92. package/build/esm/components/util.js +96 -0
  93. package/build/esm/components/util.js.map +1 -0
  94. package/build/esm/{types/index.d.ts → index.d.ts} +0 -0
  95. package/build/esm/index.js +2 -2
  96. package/build/esm/index.js.map +1 -1
  97. package/build/esm/stories/Area.stories.d.ts +69 -0
  98. package/build/esm/stories/Area.stories.js +47 -0
  99. package/build/esm/stories/Area.stories.js.map +1 -0
  100. package/build/esm/stories/Cartesian.stories.d.ts +35 -0
  101. package/build/esm/stories/Cartesian.stories.js +41 -0
  102. package/build/esm/stories/Cartesian.stories.js.map +1 -0
  103. package/build/esm/stories/Grid.stories.d.ts +263 -0
  104. package/build/esm/stories/Grid.stories.js +39 -0
  105. package/build/esm/stories/Grid.stories.js.map +1 -0
  106. package/build/esm/stories/Mathbox.stories.d.ts +19 -0
  107. package/build/esm/stories/Mathbox.stories.js +10 -0
  108. package/build/esm/stories/Mathbox.stories.js.map +1 -0
  109. package/build/esm/stories/Play.stories.d.ts +37 -0
  110. package/build/esm/stories/Play.stories.js +29 -0
  111. package/build/esm/stories/Play.stories.js.map +1 -0
  112. package/build/esm/stories/Point.stories.d.ts +102 -0
  113. package/build/esm/stories/Point.stories.js +77 -0
  114. package/build/esm/stories/Point.stories.js.map +1 -0
  115. package/build/esm/stories/Surface.stories.d.ts +69 -0
  116. package/build/esm/stories/Surface.stories.js +43 -0
  117. package/build/esm/stories/Surface.stories.js.map +1 -0
  118. package/build/esm/stories/utils.d.ts +5 -0
  119. package/build/esm/stories/utils.js +42 -0
  120. package/build/esm/stories/utils.js.map +1 -0
  121. package/build/esm/testSetup.d.ts +1 -0
  122. package/build/esm/testSetup.js +3 -0
  123. package/build/esm/testSetup.js.map +1 -0
  124. package/build/esm/{types/testUtils.d.ts → testUtils.d.ts} +0 -0
  125. package/build/esm/testUtils.js +42 -0
  126. package/build/esm/testUtils.js.map +1 -0
  127. package/build/esm/threestrap/Renderer.d.ts +7 -0
  128. package/build/esm/threestrap/Renderer.js +13 -0
  129. package/build/esm/threestrap/Renderer.js.map +1 -0
  130. package/build/esm/threestrap/ThreestrapContext.d.ts +6 -0
  131. package/build/esm/threestrap/ThreestrapContext.js +12 -0
  132. package/build/esm/threestrap/ThreestrapContext.js.map +1 -0
  133. package/build/esm/threestrap/index.d.ts +2 -0
  134. package/build/esm/threestrap/index.js +2 -0
  135. package/build/esm/threestrap/index.js.map +1 -0
  136. package/build/esm/threestrap/threestrap.d.ts +13 -0
  137. package/build/esm/threestrap/threestrap.js +2 -0
  138. package/build/esm/threestrap/threestrap.js.map +1 -0
  139. package/package.json +37 -29
@@ -0,0 +1,282 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
+ return new (P || (P = Promise))(function (resolve, reject) {
15
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
19
+ });
20
+ };
21
+ var __generator = (this && this.__generator) || function (thisArg, body) {
22
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
23
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
+ function verb(n) { return function (v) { return step([n, v]); }; }
25
+ function step(op) {
26
+ if (f) throw new TypeError("Generator is already executing.");
27
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
28
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
29
+ if (y = 0, t) op = [op[0] & 2, t.value];
30
+ switch (op[0]) {
31
+ case 0: case 1: t = op; break;
32
+ case 4: _.label++; return { value: op[1], done: false };
33
+ case 5: _.label++; y = op[1]; op = [0]; continue;
34
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
+ default:
36
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
+ if (t[2]) _.ops.pop();
41
+ _.trys.pop(); continue;
42
+ }
43
+ op = body.call(thisArg, _);
44
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
+ }
47
+ };
48
+ import React, { useState } from "react";
49
+ import { render, act } from "@testing-library/react";
50
+ import ContainedMathbox from "./ContainedMathbox";
51
+ import Mathbox from "./Mathbox";
52
+ import { Cartesian, Grid, Voxel } from "./components";
53
+ function assertNotNil(value) {
54
+ if (value === undefined) {
55
+ throw new Error("Unexpected undefined value");
56
+ }
57
+ if (value === null) {
58
+ throw new Error("Unexpected null value");
59
+ }
60
+ }
61
+ /**
62
+ * Assert that two mathbox selections have the same nodes in the same order.
63
+ */
64
+ var assertSelectionsEqual = function (s1, s2) {
65
+ expect(s1.length).toBe(s2.length);
66
+ Array(s1.length)
67
+ .fill(null)
68
+ .forEach(function (_, i) {
69
+ expect(s1[i]).toBe(s2[i]);
70
+ });
71
+ };
72
+ describe("ContainedMathbox", function () {
73
+ it("makes a new mathbox instance only if the options have changed", function () {
74
+ var mbRef = { current: null };
75
+ var rerender = render(React.createElement(ContainedMathbox, { options: {}, ref: mbRef })).rerender;
76
+ var mb0 = mbRef.current;
77
+ assertNotNil(mb0);
78
+ rerender(React.createElement(ContainedMathbox, { options: {}, ref: mbRef }));
79
+ var mb1 = mbRef.current;
80
+ expect(mb1).toBe(mb0);
81
+ assertNotNil(mb1);
82
+ rerender(React.createElement(ContainedMathbox, { options: { plugins: ["core"] }, ref: mbRef }));
83
+ var mb2 = mbRef.current;
84
+ assertNotNil(mb2);
85
+ expect(mb2).not.toBe(mb1);
86
+ });
87
+ });
88
+ describe("Cartesian", function () {
89
+ it("exposes Mathbox instance via ref", function () {
90
+ var _a, _b;
91
+ var mbRef = { current: null };
92
+ var cartesianRef = { current: null };
93
+ render(React.createElement(ContainedMathbox, { ref: mbRef },
94
+ React.createElement(Cartesian, { ref: cartesianRef })));
95
+ expect((_a = mbRef.current) === null || _a === void 0 ? void 0 : _a[0].type).toBe("root");
96
+ expect((_b = cartesianRef.current) === null || _b === void 0 ? void 0 : _b[0].type).toBe("cartesian");
97
+ });
98
+ it("creates a cartesian instance as child of root", function () {
99
+ var _a;
100
+ var mbRef = { current: null };
101
+ render(React.createElement(ContainedMathbox, { ref: mbRef },
102
+ React.createElement(Cartesian, null)));
103
+ expect((_a = mbRef.current) === null || _a === void 0 ? void 0 : _a.select("cartesian").length).toBe(1);
104
+ });
105
+ it("creates mathbox children as children of itself", function () {
106
+ var _a, _b, _c;
107
+ var mbRef = { current: null };
108
+ render(React.createElement(ContainedMathbox, { ref: mbRef },
109
+ React.createElement(Cartesian, null,
110
+ React.createElement(Grid, null),
111
+ React.createElement(Grid, null))));
112
+ (_a = mbRef.current) === null || _a === void 0 ? void 0 : _a.print();
113
+ expect((_b = mbRef.current) === null || _b === void 0 ? void 0 : _b.select("cartesian").length).toBe(1);
114
+ expect((_c = mbRef.current) === null || _c === void 0 ? void 0 : _c.select("cartesian grid").length).toBe(2);
115
+ });
116
+ it("removes its mathbox instance when unmounted", function () {
117
+ var _a, _b;
118
+ var mbRef = { current: null };
119
+ var rerender = render(React.createElement(ContainedMathbox, { ref: mbRef },
120
+ React.createElement(Cartesian, null))).rerender;
121
+ expect((_a = mbRef.current) === null || _a === void 0 ? void 0 : _a.select("cartesian").length).toBe(1);
122
+ rerender(React.createElement(ContainedMathbox, { ref: mbRef }));
123
+ expect((_b = mbRef.current) === null || _b === void 0 ? void 0 : _b.select("cartesian").length).toBe(0);
124
+ });
125
+ it.each([
126
+ { props: { visible: true, scale: [3, 2, 1] } },
127
+ { props: { visible: false, scale: [1, 2, 3] } },
128
+ ])("passes appropriate props to its mathbox instance", function (_a) {
129
+ var _b;
130
+ var props = _a.props;
131
+ var mbRef = { current: null };
132
+ render(React.createElement(ContainedMathbox, { ref: mbRef },
133
+ React.createElement(Cartesian, __assign({}, props))));
134
+ var cartesian = (_b = mbRef.current) === null || _b === void 0 ? void 0 : _b.select("cartesian");
135
+ assertNotNil(cartesian);
136
+ expect(cartesian.get("visible")).toBe(props.visible);
137
+ // Mathbox converts scale to a ThreeJS Vec3
138
+ expect(cartesian.get("scale").toArray()).toStrictEqual(props.scale);
139
+ });
140
+ it("updates props on its mathbox instance when rerendered", function () {
141
+ var _a;
142
+ var mbRef = { current: null };
143
+ var rerender = render(React.createElement(ContainedMathbox, { ref: mbRef },
144
+ React.createElement(Cartesian, null))).rerender;
145
+ var cartesian = (_a = mbRef.current) === null || _a === void 0 ? void 0 : _a.select("cartesian");
146
+ assertNotNil(cartesian);
147
+ expect(cartesian.get("visible")).toBe(true);
148
+ rerender(React.createElement(ContainedMathbox, { ref: mbRef },
149
+ React.createElement(Cartesian, { visible: false })));
150
+ expect(cartesian.get("visible")).toBe(false);
151
+ });
152
+ it("updates liveProps on its mathbox instance when rerendered", function () { return __awaiter(void 0, void 0, void 0, function () {
153
+ var mbRef, rerender, grid, w1, w2;
154
+ var _a;
155
+ return __generator(this, function (_b) {
156
+ switch (_b.label) {
157
+ case 0:
158
+ mbRef = { current: null };
159
+ rerender = render(React.createElement(ContainedMathbox, { ref: mbRef },
160
+ React.createElement(Cartesian, null,
161
+ React.createElement(Grid, { liveProps: {
162
+ width: function (t) { return 1 + t; }
163
+ } })))).rerender;
164
+ grid = (_a = mbRef.current) === null || _a === void 0 ? void 0 : _a.select("grid");
165
+ assertNotNil(grid);
166
+ w1 = grid.get("width");
167
+ return [4 /*yield*/, new Promise(function (resolve) {
168
+ setTimeout(resolve, 500);
169
+ })];
170
+ case 1:
171
+ _b.sent();
172
+ w2 = grid.get("width");
173
+ expect(w1).toBe(1);
174
+ // Mathbox uses seconds
175
+ expect(w2 - w1).toBeGreaterThan(0.45);
176
+ expect(w2 - w1).toBeLessThanOrEqual(0.5);
177
+ rerender(React.createElement(ContainedMathbox, { ref: mbRef },
178
+ React.createElement(Cartesian, null,
179
+ React.createElement(Grid, { width: 10 }))));
180
+ expect(grid.get("width")).toBe(10);
181
+ return [2 /*return*/];
182
+ }
183
+ });
184
+ }); });
185
+ it("re-renders inside new instance when root changes", function () {
186
+ var mbRef = { current: null };
187
+ var cartesianRef = { current: null };
188
+ var gridRef = { current: null };
189
+ var options1 = {};
190
+ var rerender = render(React.createElement(ContainedMathbox, { ref: mbRef, options: options1 },
191
+ React.createElement(Cartesian, { ref: cartesianRef },
192
+ React.createElement(Grid, { ref: gridRef })))).rerender;
193
+ var mb1 = mbRef.current;
194
+ var cartesian1 = cartesianRef.current;
195
+ var grid1 = gridRef.current;
196
+ assertNotNil(mb1);
197
+ assertNotNil(cartesian1);
198
+ assertNotNil(grid1);
199
+ expect(cartesian1).toHaveLength(1);
200
+ assertSelectionsEqual(mb1.select("cartesian"), cartesian1);
201
+ expect(grid1).toHaveLength(1);
202
+ assertSelectionsEqual(mb1.select("grid"), grid1);
203
+ /**
204
+ * When re-rendered, this will create a new mathBox since the options
205
+ * object prop will have changed.
206
+ */
207
+ var options2 = { plugins: ["core"] };
208
+ expect(options1).not.toBe(options2);
209
+ rerender(React.createElement(ContainedMathbox, { ref: mbRef, options: options2 },
210
+ React.createElement(Cartesian, { ref: cartesianRef },
211
+ React.createElement(Grid, { ref: gridRef }))));
212
+ var mb2 = mbRef.current;
213
+ var cartesian2 = cartesianRef.current;
214
+ var grid2 = gridRef.current;
215
+ assertNotNil(mb2);
216
+ assertNotNil(cartesian2);
217
+ assertNotNil(grid2);
218
+ // The options have changed (via deep equal) so a new instance is created
219
+ expect(mb1).not.toBe(mb2);
220
+ expect(cartesian2).toHaveLength(1);
221
+ assertSelectionsEqual(mb2.select("cartesian"), cartesian2);
222
+ expect(grid2).toHaveLength(1);
223
+ assertSelectionsEqual(mb2.select("grid"), grid2);
224
+ });
225
+ it("Can render a new instance without error", function () { return __awaiter(void 0, void 0, void 0, function () {
226
+ var mbRef, containerDiv, setKey, KeyedMathbox;
227
+ return __generator(this, function (_a) {
228
+ mbRef = { current: null };
229
+ containerDiv = null;
230
+ KeyedMathbox = function () {
231
+ var _a = useState(null), container = _a[0], setContainer = _a[1];
232
+ var _b = useState("key-0"), key = _b[0], setKeyState = _b[1];
233
+ setKey = setKeyState;
234
+ containerDiv = container;
235
+ return (React.createElement("div", { ref: setContainer, key: key }, container && (React.createElement(Mathbox, { ref: mbRef, container: container },
236
+ React.createElement(Cartesian, null)))));
237
+ };
238
+ render(React.createElement(KeyedMathbox, null));
239
+ assertNotNil(mbRef.current);
240
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
241
+ act(function () { return setKey("key-2"); });
242
+ assertNotNil(containerDiv);
243
+ expect(mbRef.current.three.element).toBe(containerDiv);
244
+ expect(mbRef.current.select("cartesian").length).toBe(1);
245
+ return [2 /*return*/];
246
+ });
247
+ }); });
248
+ it("Can add and remove children without error", function () { return __awaiter(void 0, void 0, void 0, function () {
249
+ var mbRef, rerender;
250
+ return __generator(this, function (_a) {
251
+ mbRef = { current: null };
252
+ rerender = render(React.createElement(ContainedMathbox, { ref: mbRef, options: {} },
253
+ React.createElement(Cartesian, null,
254
+ React.createElement(Grid, null)))).rerender;
255
+ assertNotNil(mbRef.current);
256
+ expect(mbRef.current.select("grid").length).toBe(1);
257
+ rerender(React.createElement(ContainedMathbox, { ref: mbRef, options: {} },
258
+ React.createElement(Cartesian, null,
259
+ React.createElement(Grid, null),
260
+ React.createElement(Grid, null))));
261
+ assertNotNil(mbRef.current);
262
+ expect(mbRef.current.select("grid").length).toBe(2);
263
+ rerender(React.createElement(ContainedMathbox, { ref: mbRef, options: {} },
264
+ React.createElement(Cartesian, null)));
265
+ assertNotNil(mbRef.current);
266
+ expect(mbRef.current.select("grid").length).toBe(0);
267
+ return [2 /*return*/];
268
+ });
269
+ }); });
270
+ });
271
+ describe("<Voxel />", function () {
272
+ it("throws a runtime error if it has children", function () {
273
+ var willThrow = function () {
274
+ return render(React.createElement(ContainedMathbox, null,
275
+ React.createElement(Cartesian, null,
276
+ React.createElement(Voxel, null,
277
+ React.createElement(Grid, null)))));
278
+ };
279
+ expect(willThrow).toThrow("Component <Voxel /> cannot have children.");
280
+ });
281
+ });
282
+ //# sourceMappingURL=components.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components.spec.js","sourceRoot":"","sources":["../../../src/components/components.spec.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export * from "./components";
2
2
  export { default as Mathbox } from "./Mathbox";
3
3
  export { default as ContainedMathbox } from "./ContainedMathbox";
4
+ export { useMathbox } from "./MathboxAPIContext";
@@ -0,0 +1,5 @@
1
+ export * from "./components";
2
+ export { default as Mathbox } from "./Mathbox";
3
+ export { default as ContainedMathbox } from "./ContainedMathbox";
4
+ export { useMathbox } from "./MathboxAPIContext";
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAEhE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,96 @@
1
+ /* eslint-disable no-underscore-dangle */
2
+ import isEqual from "lodash/isEqual";
3
+ import { useRef, useMemo } from "react";
4
+ /**
5
+ * Get root node given any node in Mathbox tree
6
+ */
7
+ var getRoot = function (selection) {
8
+ var current = selection;
9
+ while (current._up) {
10
+ current = current._up;
11
+ }
12
+ return current;
13
+ };
14
+ export var isRootDestroyed = function (selection) {
15
+ var root = getRoot(selection);
16
+ return root.three === undefined;
17
+ };
18
+ /**
19
+ * Check that parent is actually the selection's parent.
20
+ * The mathbox components occasionally render with a selection value whose
21
+ * parent does not match the parent specified in MathboxContext.
22
+ *
23
+ * I believe this fundamentally this is happening because
24
+ * - we store parent value in context...
25
+ * - we update the context parent value using useEffect hooks..
26
+ * - useEffect hooks are called children before parents.
27
+ *
28
+ * One wonders whether we really need to be using useEffect hooks for the
29
+ * mathbox components, or if we can just put all the node creation/removal stuff
30
+ * in a render function. Hooks seem nice for dependencies, but mathbox is pretty
31
+ * smart about diffing out the actual changes.
32
+ */
33
+ export var isSelectionParent = function (selection, parent) {
34
+ var _a;
35
+ var selectionParentNode = (_a = selection._up) === null || _a === void 0 ? void 0 : _a[0];
36
+ return selectionParentNode === parent[0];
37
+ };
38
+ var CAN_HAVE_CHILDREN = [
39
+ "view",
40
+ "cartesian",
41
+ "cartesian4",
42
+ "polar",
43
+ "spherical",
44
+ "stereographic",
45
+ "stereographic4",
46
+ "transform",
47
+ "transform4",
48
+ "vertex",
49
+ "fragment",
50
+ "layer",
51
+ "mask",
52
+ "group",
53
+ "inherit",
54
+ "root",
55
+ "unit",
56
+ "rtt",
57
+ "clock",
58
+ "now",
59
+ "move",
60
+ "present",
61
+ "reveal",
62
+ "slide",
63
+ ];
64
+ export var canNodeHaveChildren = function (type) {
65
+ return CAN_HAVE_CHILDREN.includes(type);
66
+ };
67
+ export var capitalize = function (s) {
68
+ if (!s)
69
+ return "";
70
+ return s[0].toLocaleUpperCase() + s.slice(1);
71
+ };
72
+ /**
73
+ * Returns the same reference to `value` as long as the the given values are
74
+ * deep equal.
75
+ *
76
+ * This is, in general, not a great idea. See
77
+ * https://github.com/facebook/react/issues/14476#issuecomment-471199055
78
+ *
79
+ * This should work OK for mathbox options because the objects in question are
80
+ * either shallow, or are deep equal at a fairly shallow level.
81
+ * E.g., OrbitControls may not be a shall object, but if it's not, it will at
82
+ * least be deep equal between renders.
83
+ *
84
+ * But should work OK for mathbox options.
85
+ */
86
+ export var useDeepCompareMemo = function (value, initial) {
87
+ var oldValue = useRef(initial);
88
+ var memoOptions = useMemo(function () {
89
+ if (isEqual(value, oldValue.current))
90
+ return oldValue.current;
91
+ oldValue.current = value;
92
+ return value;
93
+ }, [value]);
94
+ return memoOptions;
95
+ };
96
+ //# sourceMappingURL=util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/components/util.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,OAAO,OAAO,MAAM,gBAAgB,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAKvC;;GAEG;AACH,IAAM,OAAO,GAAG,UAAC,SAA2B;IAC1C,IAAI,OAAO,GAAG,SAA0B,CAAA;IACxC,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,OAAO,GAAG,OAAO,CAAC,GAAG,CAAA;KACtB;IACD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,CAAC,IAAM,eAAe,GAAG,UAAC,SAA2B;IACzD,IAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;IAC/B,OAAO,IAAI,CAAC,KAAK,KAAK,SAAS,CAAA;AACjC,CAAC,CAAA;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,IAAM,iBAAiB,GAAG,UAC/B,SAA2B,EAC3B,MAAwB;;IAExB,IAAM,mBAAmB,GAAG,MAAC,SAA2B,CAAC,GAAG,0CAAG,CAAC,CAAC,CAAA;IACjE,OAAO,mBAAmB,KAAK,MAAM,CAAC,CAAC,CAAC,CAAA;AAC1C,CAAC,CAAA;AAED,IAAM,iBAAiB,GAAG;IACxB,MAAM;IACN,WAAW;IACX,YAAY;IACZ,OAAO;IACP,WAAW;IACX,eAAe;IACf,gBAAgB;IAChB,WAAW;IACX,YAAY;IACZ,QAAQ;IACR,UAAU;IACV,OAAO;IACP,MAAM;IACN,OAAO;IACP,SAAS;IACT,MAAM;IACN,MAAM;IACN,KAAK;IACL,OAAO;IACP,KAAK;IACL,MAAM;IACN,SAAS;IACT,QAAQ;IACR,OAAO;CACC,CAAA;AAIV,MAAM,CAAC,IAAM,mBAAmB,GAAG,UAAC,IAAc;IAChD,OAAC,iBAAuC,CAAC,QAAQ,CAAC,IAAI,CAAC;AAAvD,CAAuD,CAAA;AAEzD,MAAM,CAAC,IAAM,UAAU,GAAG,UAAC,CAAS;IAClC,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,CAAA;IACjB,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAC9C,CAAC,CAAA;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,IAAM,kBAAkB,GAAG,UAAI,KAAQ,EAAE,OAAU;IACxD,IAAM,QAAQ,GAAG,MAAM,CAAI,OAAO,CAAC,CAAA;IACnC,IAAM,WAAW,GAAG,OAAO,CAAC;QAC1B,IAAI,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC;YAAE,OAAO,QAAQ,CAAC,OAAO,CAAA;QAC7D,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAA;QACxB,OAAO,KAAK,CAAA;IACd,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IACX,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA"}
File without changes
@@ -1,2 +1,2 @@
1
- import t,{createContext as r,useRef as e,useMemo as n,forwardRef as o,useReducer as a,useContext as i,useEffect as c,useImperativeHandle as u,useState as s}from"react";import{Color as l}from"three";import{mathBox as f}from"mathbox";var p=function(){return p=Object.assign||function(t){for(var r,e=1,n=arguments.length;e<n;e++)for(var o in r=arguments[e])Object.prototype.hasOwnProperty.call(r,o)&&(t[o]=r[o]);return t},p.apply(this,arguments)};function v(t,r){var e={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&r.indexOf(n)<0&&(e[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(t);o<n.length;o++)r.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(t,n[o])&&(e[n[o]]=t[n[o]])}return e}var h=r(null),y="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};var b=function(){this.__data__=[],this.size=0};var _=function(t,r){return t===r||t!=t&&r!=r},d=_;var j=function(t,r){for(var e=t.length;e--;)if(d(t[e][0],r))return e;return-1},g=j,m=Array.prototype.splice;var O=j;var w=j;var x=j;var A=b,z=function(t){var r=this.__data__,e=g(r,t);return!(e<0)&&(e==r.length-1?r.pop():m.call(r,e,1),--this.size,!0)},P=function(t){var r=this.__data__,e=O(r,t);return e<0?void 0:r[e][1]},S=function(t){return w(this.__data__,t)>-1},k=function(t,r){var e=this.__data__,n=x(e,t);return n<0?(++this.size,e.push([t,r])):e[n][1]=r,this};function E(t){var r=-1,e=null==t?0:t.length;for(this.clear();++r<e;){var n=t[r];this.set(n[0],n[1])}}E.prototype.clear=A,E.prototype.delete=z,E.prototype.get=P,E.prototype.has=S,E.prototype.set=k;var T=E,C=T;var F=function(){this.__data__=new C,this.size=0};var I=function(t){var r=this.__data__,e=r.delete(t);return this.size=r.size,e};var M=function(t){return this.__data__.get(t)};var B=function(t){return this.__data__.has(t)},U="object"==typeof y&&y&&y.Object===Object&&y,$=U,D="object"==typeof self&&self&&self.Object===Object&&self,L=$||D||Function("return this")(),N=L.Symbol,R=N,V=Object.prototype,W=V.hasOwnProperty,q=V.toString,G=R?R.toStringTag:void 0;var H=function(t){var r=W.call(t,G),e=t[G];try{t[G]=void 0;var n=!0}catch(t){}var o=q.call(t);return n&&(r?t[G]=e:delete t[G]),o},J=Object.prototype.toString;var K=H,Q=function(t){return J.call(t)},X=N?N.toStringTag:void 0;var Y=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":X&&X in Object(t)?K(t):Q(t)};var Z=function(t){var r=typeof t;return null!=t&&("object"==r||"function"==r)},tt=Y,rt=Z;var et,nt=function(t){if(!rt(t))return!1;var r=tt(t);return"[object Function]"==r||"[object GeneratorFunction]"==r||"[object AsyncFunction]"==r||"[object Proxy]"==r},ot=L["__core-js_shared__"],at=(et=/[^.]+$/.exec(ot&&ot.keys&&ot.keys.IE_PROTO||""))?"Symbol(src)_1."+et:"";var it=function(t){return!!at&&at in t},ct=Function.prototype.toString;var ut=function(t){if(null!=t){try{return ct.call(t)}catch(t){}try{return t+""}catch(t){}}return""},st=nt,lt=it,ft=Z,pt=ut,vt=/^\[object .+?Constructor\]$/,ht=Function.prototype,yt=Object.prototype,bt=ht.toString,_t=yt.hasOwnProperty,dt=RegExp("^"+bt.call(_t).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");var jt=function(t){return!(!ft(t)||lt(t))&&(st(t)?dt:vt).test(pt(t))},gt=function(t,r){return null==t?void 0:t[r]};var mt=function(t,r){var e=gt(t,r);return jt(e)?e:void 0},Ot=mt(L,"Map"),wt=mt(Object,"create"),xt=wt;var At=function(){this.__data__=xt?xt(null):{},this.size=0};var zt=function(t){var r=this.has(t)&&delete this.__data__[t];return this.size-=r?1:0,r},Pt=wt,St=Object.prototype.hasOwnProperty;var kt=function(t){var r=this.__data__;if(Pt){var e=r[t];return"__lodash_hash_undefined__"===e?void 0:e}return St.call(r,t)?r[t]:void 0},Et=wt,Tt=Object.prototype.hasOwnProperty;var Ct=wt;var Ft=At,It=zt,Mt=kt,Bt=function(t){var r=this.__data__;return Et?void 0!==r[t]:Tt.call(r,t)},Ut=function(t,r){var e=this.__data__;return this.size+=this.has(t)?0:1,e[t]=Ct&&void 0===r?"__lodash_hash_undefined__":r,this};function $t(t){var r=-1,e=null==t?0:t.length;for(this.clear();++r<e;){var n=t[r];this.set(n[0],n[1])}}$t.prototype.clear=Ft,$t.prototype.delete=It,$t.prototype.get=Mt,$t.prototype.has=Bt,$t.prototype.set=Ut;var Dt=$t,Lt=T,Nt=Ot;var Rt=function(t){var r=typeof t;return"string"==r||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==t:null===t};var Vt=function(t,r){var e=t.__data__;return Rt(r)?e["string"==typeof r?"string":"hash"]:e.map},Wt=Vt;var qt=Vt;var Gt=Vt;var Ht=Vt;var Jt=function(){this.size=0,this.__data__={hash:new Dt,map:new(Nt||Lt),string:new Dt}},Kt=function(t){var r=Wt(this,t).delete(t);return this.size-=r?1:0,r},Qt=function(t){return qt(this,t).get(t)},Xt=function(t){return Gt(this,t).has(t)},Yt=function(t,r){var e=Ht(this,t),n=e.size;return e.set(t,r),this.size+=e.size==n?0:1,this};function Zt(t){var r=-1,e=null==t?0:t.length;for(this.clear();++r<e;){var n=t[r];this.set(n[0],n[1])}}Zt.prototype.clear=Jt,Zt.prototype.delete=Kt,Zt.prototype.get=Qt,Zt.prototype.has=Xt,Zt.prototype.set=Yt;var tr=Zt,rr=T,er=Ot,nr=tr;var or=T,ar=F,ir=I,cr=M,ur=B,sr=function(t,r){var e=this.__data__;if(e instanceof rr){var n=e.__data__;if(!er||n.length<199)return n.push([t,r]),this.size=++e.size,this;e=this.__data__=new nr(n)}return e.set(t,r),this.size=e.size,this};function lr(t){var r=this.__data__=new or(t);this.size=r.size}lr.prototype.clear=ar,lr.prototype.delete=ir,lr.prototype.get=cr,lr.prototype.has=ur,lr.prototype.set=sr;var fr=lr;var pr=tr,vr=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},hr=function(t){return this.__data__.has(t)};function yr(t){var r=-1,e=null==t?0:t.length;for(this.__data__=new pr;++r<e;)this.add(t[r])}yr.prototype.add=yr.prototype.push=vr,yr.prototype.has=hr;var br=yr,_r=function(t,r){for(var e=-1,n=null==t?0:t.length;++e<n;)if(r(t[e],e,t))return!0;return!1},dr=function(t,r){return t.has(r)};var jr=function(t,r,e,n,o,a){var i=1&e,c=t.length,u=r.length;if(c!=u&&!(i&&u>c))return!1;var s=a.get(t),l=a.get(r);if(s&&l)return s==r&&l==t;var f=-1,p=!0,v=2&e?new br:void 0;for(a.set(t,r),a.set(r,t);++f<c;){var h=t[f],y=r[f];if(n)var b=i?n(y,h,f,r,t,a):n(h,y,f,t,r,a);if(void 0!==b){if(b)continue;p=!1;break}if(v){if(!_r(r,(function(t,r){if(!dr(v,r)&&(h===t||o(h,t,e,n,a)))return v.push(r)}))){p=!1;break}}else if(h!==y&&!o(h,y,e,n,a)){p=!1;break}}return a.delete(t),a.delete(r),p};var gr=L.Uint8Array,mr=_,Or=jr,wr=function(t){var r=-1,e=Array(t.size);return t.forEach((function(t,n){e[++r]=[n,t]})),e},xr=function(t){var r=-1,e=Array(t.size);return t.forEach((function(t){e[++r]=t})),e},Ar=N?N.prototype:void 0,zr=Ar?Ar.valueOf:void 0;var Pr=function(t,r,e,n,o,a,i){switch(e){case"[object DataView]":if(t.byteLength!=r.byteLength||t.byteOffset!=r.byteOffset)return!1;t=t.buffer,r=r.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=r.byteLength||!a(new gr(t),new gr(r)));case"[object Boolean]":case"[object Date]":case"[object Number]":return mr(+t,+r);case"[object Error]":return t.name==r.name&&t.message==r.message;case"[object RegExp]":case"[object String]":return t==r+"";case"[object Map]":var c=wr;case"[object Set]":var u=1&n;if(c||(c=xr),t.size!=r.size&&!u)return!1;var s=i.get(t);if(s)return s==r;n|=2,i.set(t,r);var l=Or(c(t),c(r),n,o,a,i);return i.delete(t),l;case"[object Symbol]":if(zr)return zr.call(t)==zr.call(r)}return!1};var Sr=function(t,r){for(var e=-1,n=r.length,o=t.length;++e<n;)t[o+e]=r[e];return t},kr=Array.isArray,Er=Sr,Tr=kr;var Cr=function(t,r,e){var n=r(t);return Tr(t)?n:Er(n,e(t))};var Fr=function(t,r){for(var e=-1,n=null==t?0:t.length,o=0,a=[];++e<n;){var i=t[e];r(i,e,t)&&(a[o++]=i)}return a},Ir=function(){return[]},Mr=Object.prototype.propertyIsEnumerable,Br=Object.getOwnPropertySymbols,Ur=Br?function(t){return null==t?[]:(t=Object(t),Fr(Br(t),(function(r){return Mr.call(t,r)})))}:Ir;var $r=function(t,r){for(var e=-1,n=Array(t);++e<t;)n[e]=r(e);return n};var Dr=function(t){return null!=t&&"object"==typeof t},Lr=Y,Nr=Dr;var Rr=function(t){return Nr(t)&&"[object Arguments]"==Lr(t)},Vr=Dr,Wr=Object.prototype,qr=Wr.hasOwnProperty,Gr=Wr.propertyIsEnumerable,Hr=Rr(function(){return arguments}())?Rr:function(t){return Vr(t)&&qr.call(t,"callee")&&!Gr.call(t,"callee")},Jr={exports:{}};var Kr=function(){return!1};!function(t,r){var e=L,n=Kr,o=r&&!r.nodeType&&r,a=o&&t&&!t.nodeType&&t,i=a&&a.exports===o?e.Buffer:void 0,c=(i?i.isBuffer:void 0)||n;t.exports=c}(Jr,Jr.exports);var Qr=/^(?:0|[1-9]\d*)$/;var Xr=function(t,r){var e=typeof t;return!!(r=null==r?9007199254740991:r)&&("number"==e||"symbol"!=e&&Qr.test(t))&&t>-1&&t%1==0&&t<r};var Yr=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991},Zr=Y,te=Yr,re=Dr,ee={};ee["[object Float32Array]"]=ee["[object Float64Array]"]=ee["[object Int8Array]"]=ee["[object Int16Array]"]=ee["[object Int32Array]"]=ee["[object Uint8Array]"]=ee["[object Uint8ClampedArray]"]=ee["[object Uint16Array]"]=ee["[object Uint32Array]"]=!0,ee["[object Arguments]"]=ee["[object Array]"]=ee["[object ArrayBuffer]"]=ee["[object Boolean]"]=ee["[object DataView]"]=ee["[object Date]"]=ee["[object Error]"]=ee["[object Function]"]=ee["[object Map]"]=ee["[object Number]"]=ee["[object Object]"]=ee["[object RegExp]"]=ee["[object Set]"]=ee["[object String]"]=ee["[object WeakMap]"]=!1;var ne=function(t){return re(t)&&te(t.length)&&!!ee[Zr(t)]};var oe=function(t){return function(r){return t(r)}},ae={exports:{}};!function(t,r){var e=U,n=r&&!r.nodeType&&r,o=n&&t&&!t.nodeType&&t,a=o&&o.exports===n&&e.process,i=function(){try{var t=o&&o.require&&o.require("util").types;return t||a&&a.binding&&a.binding("util")}catch(t){}}();t.exports=i}(ae,ae.exports);var ie=ne,ce=oe,ue=ae.exports,se=ue&&ue.isTypedArray,le=se?ce(se):ie,fe=$r,pe=Hr,ve=kr,he=Jr.exports,ye=Xr,be=le,_e=Object.prototype.hasOwnProperty;var de=function(t,r){var e=ve(t),n=!e&&pe(t),o=!e&&!n&&he(t),a=!e&&!n&&!o&&be(t),i=e||n||o||a,c=i?fe(t.length,String):[],u=c.length;for(var s in t)!r&&!_e.call(t,s)||i&&("length"==s||o&&("offset"==s||"parent"==s)||a&&("buffer"==s||"byteLength"==s||"byteOffset"==s)||ye(s,u))||c.push(s);return c},je=Object.prototype;var ge=function(t){var r=t&&t.constructor;return t===("function"==typeof r&&r.prototype||je)};var me=function(t,r){return function(e){return t(r(e))}}(Object.keys,Object),Oe=ge,we=me,xe=Object.prototype.hasOwnProperty;var Ae=nt,ze=Yr;var Pe=de,Se=function(t){if(!Oe(t))return we(t);var r=[];for(var e in Object(t))xe.call(t,e)&&"constructor"!=e&&r.push(e);return r},ke=function(t){return null!=t&&ze(t.length)&&!Ae(t)};var Ee=Cr,Te=Ur,Ce=function(t){return ke(t)?Pe(t):Se(t)};var Fe=function(t){return Ee(t,Ce,Te)},Ie=Object.prototype.hasOwnProperty;var Me=function(t,r,e,n,o,a){var i=1&e,c=Fe(t),u=c.length;if(u!=Fe(r).length&&!i)return!1;for(var s=u;s--;){var l=c[s];if(!(i?l in r:Ie.call(r,l)))return!1}var f=a.get(t),p=a.get(r);if(f&&p)return f==r&&p==t;var v=!0;a.set(t,r),a.set(r,t);for(var h=i;++s<u;){var y=t[l=c[s]],b=r[l];if(n)var _=i?n(b,y,l,r,t,a):n(y,b,l,t,r,a);if(!(void 0===_?y===b||o(y,b,e,n,a):_)){v=!1;break}h||(h="constructor"==l)}if(v&&!h){var d=t.constructor,j=r.constructor;d==j||!("constructor"in t)||!("constructor"in r)||"function"==typeof d&&d instanceof d&&"function"==typeof j&&j instanceof j||(v=!1)}return a.delete(t),a.delete(r),v},Be=mt(L,"DataView"),Ue=Ot,$e=mt(L,"Promise"),De=mt(L,"Set"),Le=mt(L,"WeakMap"),Ne=Y,Re=ut,Ve="[object Map]",We="[object Promise]",qe="[object Set]",Ge="[object WeakMap]",He="[object DataView]",Je=Re(Be),Ke=Re(Ue),Qe=Re($e),Xe=Re(De),Ye=Re(Le),Ze=Ne;(Be&&Ze(new Be(new ArrayBuffer(1)))!=He||Ue&&Ze(new Ue)!=Ve||$e&&Ze($e.resolve())!=We||De&&Ze(new De)!=qe||Le&&Ze(new Le)!=Ge)&&(Ze=function(t){var r=Ne(t),e="[object Object]"==r?t.constructor:void 0,n=e?Re(e):"";if(n)switch(n){case Je:return He;case Ke:return Ve;case Qe:return We;case Xe:return qe;case Ye:return Ge}return r});var tn=fr,rn=jr,en=Pr,nn=Me,on=Ze,an=kr,cn=Jr.exports,un=le,sn="[object Arguments]",ln="[object Array]",fn="[object Object]",pn=Object.prototype.hasOwnProperty;var vn=function(t,r,e,n,o,a){var i=an(t),c=an(r),u=i?ln:on(t),s=c?ln:on(r),l=(u=u==sn?fn:u)==fn,f=(s=s==sn?fn:s)==fn,p=u==s;if(p&&cn(t)){if(!cn(r))return!1;i=!0,l=!1}if(p&&!l)return a||(a=new tn),i||un(t)?rn(t,r,e,n,o,a):en(t,r,u,e,n,o,a);if(!(1&e)){var v=l&&pn.call(t,"__wrapped__"),h=f&&pn.call(r,"__wrapped__");if(v||h){var y=v?t.value():t,b=h?r.value():r;return a||(a=new tn),o(y,b,e,n,a)}}return!!p&&(a||(a=new tn),nn(t,r,e,n,o,a))},hn=Dr;var yn=function t(r,e,n,o,a){return r===e||(null==r||null==e||!hn(r)&&!hn(e)?r!=r&&e!=e:vn(r,e,n,o,t,a))},bn=yn;var _n=function(t,r){return bn(t,r)},dn=["view","cartesian","cartesian4","polar","spherical","stereographic","stereographic4","transform","transform4","vertex","fragment","layer","mask","group","inherit","root","unit","rtt","clock","now","move","present","reveal","slide"],jn=function(r){var n,s=function(t){return dn.includes(t)}(r),l=(n=r)?n[0].toLocaleUpperCase()+n.slice(1):"";return o((function(n,o){var f=a((function(t){return t+1}),0);f[0];var p=f[1],y=i(h),b=e(null),_=e(void 0);c((function(){return function(){b.current&&(b.current.remove(),b.current=null)}}),[]),u(o,(function(){return b.current})),n.children;var d=n.liveProps,j=v(n,["children","liveProps"]);if(c((function(){y&&(!function(t){var r=function(t){for(var r=t;r._up;)r=r._up;return r}(t);return void 0===r.three}(y)?(b.current&&(function(t,r){var e;return(null===(e=t._up)||void 0===e?void 0:e[0])===r[0]}(b.current,y)||(b.current.remove(),b.current=null,p())),b.current?(_.current&&d!==_.current&&Object.keys(_.current).forEach((function(t){b.current.unbind(t)})),d&&d!==_.current&&b.current.bind(d),b.current.set(j)):(b.current=y[r](j,d),p()),_.current=d):p())}),[y,j,d]),!s){if(n.children)throw new Error("Component <".concat(l," /> cannot have children."));return null}return t.createElement(h.Provider,{value:b.current},n.children)}))},gn=jn("area"),mn=jn("array"),On=jn("axis"),wn=jn("camera"),xn=jn("cartesian"),An=jn("cartesian4"),zn=jn("clamp"),Pn=jn("clock"),Sn=jn("compose"),kn=jn("dom"),En=jn("face"),Tn=jn("format"),Cn=jn("fragment"),Fn=jn("grid"),In=jn("group"),Mn=jn("grow"),Bn=jn("html"),Un=jn("inherit"),$n=jn("interval"),Dn=jn("join"),Ln=jn("label"),Nn=jn("layer"),Rn=jn("lerp"),Vn=jn("line"),Wn=jn("mask"),qn=jn("matrix"),Gn=jn("memo"),Hn=jn("move"),Jn=jn("now"),Kn=jn("play"),Qn=jn("point"),Xn=jn("polar"),Yn=jn("present"),Zn=jn("readback"),to=jn("repeat"),ro=jn("resample"),eo=jn("retext"),no=jn("reveal"),oo=jn("rtt"),ao=jn("scale"),io=jn("shader"),co=jn("slice"),uo=jn("slide"),so=jn("spherical"),lo=jn("split"),fo=jn("spread"),po=jn("step"),vo=jn("stereographic"),ho=jn("stereographic4"),yo=jn("strip"),bo=jn("subdivide"),_o=jn("surface"),jo=jn("swizzle"),go=jn("text"),mo=jn("ticks"),Oo=jn("transform"),wo=jn("transform4"),xo=jn("transpose"),Ao=jn("unit"),zo=jn("vector"),Po=jn("vertex"),So=jn("view"),ko=jn("volume"),Eo=jn("voxel"),To=o((function(r,o){var a,i,y=r.container,b=r.children,_=r.options,d=v(r,["container","children","options"]),j=(a=null!=_?_:{},i=e({}),n((function(){return _n(a,i.current)?i.current:(i.current=a,a)}),[a])),g=s(null),m=g[0],O=g[1];return c((function(){if(!y)return function(){};var t=f(p(p({},j),{element:y}));return O(t),t.three.renderer.setClearColor(new l(16777215),1),t.three.camera.position.set(1,1,2),function(){t.select("*").remove(),t.three.destroy(),O(null)}}),[y,j]),c((function(){m&&m.set(d)}),[m,d]),u(o,(function(){return m}),[m]),t.createElement(h.Provider,{value:m},b)})),Co=o((function(r,e){var n=r.children,o=r.containerId,a=r.containerClass,i=r.containerStyle,c=v(r,["children","containerId","containerClass","containerStyle"]),u=s(null),l=u[0],f=u[1];return t.createElement("div",{ref:f,id:o,className:a,style:i},l&&t.createElement(To,p({ref:e,container:l},c),n))}));export{gn as Area,mn as Array,On as Axis,wn as Camera,xn as Cartesian,An as Cartesian4,zn as Clamp,Pn as Clock,Sn as Compose,Co as ContainedMathbox,kn as Dom,En as Face,Tn as Format,Cn as Fragment,Fn as Grid,In as Group,Mn as Grow,Bn as Html,Un as Inherit,$n as Interval,Dn as Join,Ln as Label,Nn as Layer,Rn as Lerp,Vn as Line,Wn as Mask,To as Mathbox,qn as Matrix,Gn as Memo,Hn as Move,Jn as Now,Kn as Play,Qn as Point,Xn as Polar,Yn as Present,Zn as Readback,to as Repeat,ro as Resample,eo as Retext,no as Reveal,oo as Rtt,ao as Scale,io as Shader,co as Slice,uo as Slide,so as Spherical,lo as Split,fo as Spread,po as Step,vo as Stereographic,ho as Stereographic4,yo as Strip,bo as Subdivide,_o as Surface,jo as Swizzle,go as Text,mo as Ticks,Oo as Transform,wo as Transform4,xo as Transpose,Ao as Unit,zo as Vector,Po as Vertex,So as View,ko as Volume,Eo as Voxel};
2
- //# sourceMappingURL=index.js.map
1
+ export * from "./components";
2
+ //# sourceMappingURL=index.js.map