mathbox-react 0.2.3-rc1 → 0.2.3-rc2
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/build/esm/components/ContainedMathbox.js +33 -27
- package/build/esm/components/ContainedMathbox.js.map +1 -1
- package/build/esm/components/Mathbox.js +49 -40
- package/build/esm/components/Mathbox.js.map +1 -1
- package/build/esm/components/MathboxAPIContext.js +9 -6
- package/build/esm/components/MathboxAPIContext.js.map +1 -1
- package/build/esm/components/components.js +116 -97
- package/build/esm/components/components.js.map +1 -1
- package/build/esm/components/components.spec.js +167 -212
- package/build/esm/components/components.spec.js.map +1 -1
- package/build/esm/components/index.js +27 -4
- package/build/esm/components/index.js.map +1 -1
- package/build/esm/components/types.js +2 -1
- package/build/esm/components/util.js +26 -18
- package/build/esm/components/util.js.map +1 -1
- package/build/esm/index.js +32 -3
- package/build/esm/index.js.map +1 -1
- package/build/esm/testSetup.js +4 -2
- package/build/esm/testSetup.js.map +1 -1
- package/build/esm/testUtils.js +14 -10
- package/build/esm/testUtils.js.map +1 -1
- package/build/esm/threestrap/Controls.js +24 -23
- package/build/esm/threestrap/Controls.js.map +1 -1
- package/build/esm/threestrap/Renderer.js +8 -6
- package/build/esm/threestrap/Renderer.js.map +1 -1
- package/build/esm/threestrap/ThreestrapContext.js +9 -6
- package/build/esm/threestrap/ThreestrapContext.js.map +1 -1
- package/build/esm/threestrap/index.js +12 -3
- package/build/esm/threestrap/index.js.map +1 -1
- package/build/esm/threestrap/threestrap.js +2 -1
- package/package.json +7 -7
|
@@ -1,31 +1,37 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
11
24
|
};
|
|
12
|
-
var
|
|
13
|
-
|
|
14
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
15
|
-
t[p] = s[p];
|
|
16
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
17
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
18
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
19
|
-
t[p[i]] = s[p[i]];
|
|
20
|
-
}
|
|
21
|
-
return t;
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
22
27
|
};
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
const react_1 = __importStar(require("react"));
|
|
30
|
+
const Mathbox_1 = __importDefault(require("./Mathbox"));
|
|
31
|
+
const ContainedMathbox = (props, ref) => {
|
|
32
|
+
const { children, containerId, containerClass, containerStyle, ...others } = props;
|
|
33
|
+
const [container, setContainer] = (0, react_1.useState)(null);
|
|
34
|
+
return (react_1.default.createElement("div", { ref: setContainer, id: containerId, className: containerClass, style: containerStyle }, container && (react_1.default.createElement(Mathbox_1.default, { ref: ref, container: container, ...others }, children))));
|
|
29
35
|
};
|
|
30
|
-
|
|
36
|
+
exports.default = (0, react_1.forwardRef)(ContainedMathbox);
|
|
31
37
|
//# sourceMappingURL=ContainedMathbox.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContainedMathbox.js","sourceRoot":"","sources":["../../../src/components/ContainedMathbox.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ContainedMathbox.js","sourceRoot":"","sources":["../../../src/components/ContainedMathbox.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAmD;AAEnD,wDAA+B;AAY/B,MAAM,gBAAgB,GAAG,CACvB,KAAY,EACZ,GAAwC,EACxC,EAAE;IACF,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAE,GAAG,MAAM,EAAE,GACxE,KAAK,CAAA;IACP,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,IAAA,gBAAQ,EAAwB,IAAI,CAAC,CAAA;IACvE,OAAO,CACL,uCACE,GAAG,EAAE,YAAY,EACjB,EAAE,EAAE,WAAW,EACf,SAAS,EAAE,cAAc,EACzB,KAAK,EAAE,cAAc,IAEpB,SAAS,IAAI,CACZ,8BAAC,iBAAO,IAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,KAAM,MAAM,IAChD,QAAQ,CACD,CACX,CACG,CACP,CAAA;AACH,CAAC,CAAA;AAED,kBAAe,IAAA,kBAAU,EAAC,gBAAgB,CAAC,CAAA"}
|
|
@@ -1,59 +1,68 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
11
24
|
};
|
|
12
|
-
var
|
|
13
|
-
|
|
14
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
15
|
-
t[p] = s[p];
|
|
16
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
17
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
18
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
19
|
-
t[p[i]] = s[p[i]];
|
|
20
|
-
}
|
|
21
|
-
return t;
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
22
27
|
};
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
const react_1 = __importStar(require("react"));
|
|
30
|
+
const three_1 = require("three");
|
|
31
|
+
const mathbox_1 = require("mathbox");
|
|
32
|
+
const MathboxAPIContext_1 = __importDefault(require("./MathboxAPIContext"));
|
|
33
|
+
const util_1 = require("./util");
|
|
34
|
+
const ThreestrapContext_1 = __importDefault(require("../threestrap/ThreestrapContext"));
|
|
35
|
+
const Mathbox = (props, ref) => {
|
|
36
|
+
const { container, children, options, ...rootProps } = props;
|
|
37
|
+
const mathboxOptions = (0, util_1.useDeepCompareMemo)(options ?? {}, {});
|
|
38
|
+
const [selection, setSelection] = (0, react_1.useState)(null);
|
|
39
|
+
(0, react_1.useEffect)(() => {
|
|
34
40
|
if (!container)
|
|
35
|
-
return
|
|
36
|
-
|
|
41
|
+
return () => { };
|
|
42
|
+
const mathbox = (0, mathbox_1.mathBox)({
|
|
43
|
+
...mathboxOptions,
|
|
44
|
+
element: container,
|
|
45
|
+
});
|
|
37
46
|
setSelection(mathbox);
|
|
38
47
|
/**
|
|
39
48
|
* TODO: Should Mathbox component allow setting these more easily?
|
|
40
49
|
*/
|
|
41
|
-
mathbox.three.renderer.setClearColor(new Color(0xffffff), 1.0);
|
|
50
|
+
mathbox.three.renderer.setClearColor(new three_1.Color(0xffffff), 1.0);
|
|
42
51
|
mathbox.three.camera.position.set(1, 1, 2);
|
|
43
|
-
return
|
|
52
|
+
return () => {
|
|
44
53
|
mathbox.select("*").remove();
|
|
45
54
|
mathbox.three.destroy();
|
|
46
55
|
setSelection(null);
|
|
47
56
|
};
|
|
48
57
|
}, [container, mathboxOptions]);
|
|
49
|
-
|
|
58
|
+
(0, react_1.useEffect)(() => {
|
|
50
59
|
if (!selection)
|
|
51
60
|
return;
|
|
52
61
|
selection.set(rootProps);
|
|
53
62
|
}, [selection, rootProps]);
|
|
54
|
-
useImperativeHandle(ref,
|
|
55
|
-
return (selection && (
|
|
56
|
-
|
|
63
|
+
(0, react_1.useImperativeHandle)(ref, () => selection, [selection]);
|
|
64
|
+
return (selection && (react_1.default.createElement(MathboxAPIContext_1.default.Provider, { value: selection },
|
|
65
|
+
react_1.default.createElement(ThreestrapContext_1.default.Provider, { value: selection.three }, children))));
|
|
57
66
|
};
|
|
58
|
-
|
|
67
|
+
exports.default = (0, react_1.forwardRef)(Mathbox);
|
|
59
68
|
//# sourceMappingURL=Mathbox.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Mathbox.js","sourceRoot":"","sources":["../../../src/components/Mathbox.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Mathbox.js","sourceRoot":"","sources":["../../../src/components/Mathbox.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAKc;AACd,iCAA6B;AAC7B,qCAA8E;AAC9E,4EAAmD;AAEnD,iCAA2C;AAC3C,wFAA+D;AAS/D,MAAM,OAAO,GAAG,CACd,KAAY,EACZ,GAA+C,EAC/C,EAAE;IACF,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,GAAG,KAAK,CAAA;IAC5D,MAAM,cAAc,GAAG,IAAA,yBAAkB,EAAC,OAAO,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;IAC5D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,IAAA,gBAAQ,EACxC,IAAI,CACL,CAAA;IACD,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,CAAC,SAAS;YAAE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAA;QAE/B,MAAM,OAAO,GAAG,IAAA,iBAAO,EAAC;YACtB,GAAG,cAAc;YACjB,OAAO,EAAE,SAAS;SACnB,CAAC,CAAA;QACF,YAAY,CAAC,OAAO,CAAC,CAAA;QAErB;;WAEG;QACH,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,aAAK,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAA;QAC9D,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAC1C,OAAO,GAAG,EAAE;YACV,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAA;YAC5B,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAA;YACvB,YAAY,CAAC,IAAI,CAAC,CAAA;QACpB,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAAA;IAE/B,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,CAAC,SAAS;YAAE,OAAM;QACtB,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IAC1B,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAA;IAE1B,IAAA,2BAAmB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IACtD,OAAO,CACL,SAAS,IAAI,CACX,8BAAC,2BAAiB,CAAC,QAAQ,IAAC,KAAK,EAAE,SAAS;QAC1C,8BAAC,2BAAiB,CAAC,QAAQ,IAAC,KAAK,EAAE,SAAS,CAAC,KAAK,IAC/C,QAAQ,CACkB,CACF,CAC9B,CACF,CAAA;AACH,CAAC,CAAA;AAED,kBAAe,IAAA,kBAAU,EAAC,OAAO,CAAC,CAAA"}
|
|
@@ -1,15 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useMathbox = void 0;
|
|
4
|
+
const react_1 = require("react");
|
|
5
|
+
const MathboxAPIContext = (0, react_1.createContext)(null);
|
|
3
6
|
/**
|
|
4
7
|
* Returns Mathbox API Selection object for the nearest enclosing Mathbox node.
|
|
5
8
|
*/
|
|
6
|
-
|
|
7
|
-
|
|
9
|
+
const useMathbox = () => {
|
|
10
|
+
const selection = (0, react_1.useContext)(MathboxAPIContext);
|
|
8
11
|
if (!selection) {
|
|
9
12
|
throw new Error("useMathbox must be used within Mathbox or ContainedMathbox");
|
|
10
13
|
}
|
|
11
14
|
return selection;
|
|
12
15
|
};
|
|
13
|
-
|
|
14
|
-
|
|
16
|
+
exports.useMathbox = useMathbox;
|
|
17
|
+
exports.default = MathboxAPIContext;
|
|
15
18
|
//# sourceMappingURL=MathboxAPIContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MathboxAPIContext.js","sourceRoot":"","sources":["../../../src/components/MathboxAPIContext.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"MathboxAPIContext.js","sourceRoot":"","sources":["../../../src/components/MathboxAPIContext.ts"],"names":[],"mappings":";;;AAAA,iCAAiD;AAGjD,MAAM,iBAAiB,GAAG,IAAA,qBAAa,EAAoC,IAAI,CAAC,CAAA;AAEhF;;GAEG;AACH,MAAM,UAAU,GAAG,GAAG,EAAE;IACtB,MAAM,SAAS,GAAG,IAAA,kBAAU,EAAC,iBAAiB,CAAC,CAAA;IAC/C,IAAI,CAAC,SAAS,EAAE;QACd,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAA;KACF;IACD,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAIQ,gCAAU;AAFnB,kBAAe,iBAAiB,CAAA"}
|