mathbox-react 0.2.1-rc1 → 0.2.1-rc3

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.
@@ -1 +1,3 @@
1
+ import * as Threestrap from "./threestrap";
1
2
  export * from "./components";
3
+ export { Threestrap };
@@ -10,9 +10,24 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
10
10
  if (k2 === undefined) k2 = k;
11
11
  o[k2] = m[k];
12
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;
24
+ };
13
25
  var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
26
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
27
  };
16
28
  exports.__esModule = true;
29
+ exports.Threestrap = void 0;
30
+ var Threestrap = __importStar(require("./threestrap"));
31
+ exports.Threestrap = Threestrap;
17
32
  __exportStar(require("./components"), exports);
18
33
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAA0C;AAGjC,gCAAU;AADnB,+CAA4B"}
@@ -8,10 +8,10 @@ declare const _default: Meta<React.ForwardRefExoticComponent<{
8
8
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
9
9
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
10
10
  range?: ((t: number, dt: number) => (number | number[] | import("three").Vector2)[] | undefined) | undefined;
11
- position?: ((t: number, dt: number) => number | number[] | import("three").Vector3 | undefined) | undefined;
11
+ position?: ((t: number, dt: number) => number | import("three").Vector3 | number[] | undefined) | undefined;
12
12
  quaternion?: ((t: number, dt: number) => number | number[] | import("three").Vector4 | import("three").Quaternion | undefined) | undefined;
13
- rotation?: ((t: number, dt: number) => number | number[] | import("three").Vector3 | undefined) | undefined;
14
- scale?: ((t: number, dt: number) => number | number[] | import("three").Vector3 | undefined) | undefined;
13
+ rotation?: ((t: number, dt: number) => number | import("three").Vector3 | number[] | undefined) | undefined;
14
+ scale?: ((t: number, dt: number) => number | import("three").Vector3 | number[] | undefined) | undefined;
15
15
  eulerOrder?: ((t: number, dt: number) => import("mathbox").Optional<string | import("mathbox").Axes[]>) | undefined;
16
16
  pass?: ((t: number, dt: number) => unknown) | undefined;
17
17
  } | undefined;
@@ -25,10 +25,10 @@ export declare const DefaultCartesian: Story<{
25
25
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
26
26
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
27
27
  range?: ((t: number, dt: number) => (number | number[] | import("three").Vector2)[] | undefined) | undefined;
28
- position?: ((t: number, dt: number) => number | number[] | import("three").Vector3 | undefined) | undefined;
28
+ position?: ((t: number, dt: number) => number | import("three").Vector3 | number[] | undefined) | undefined;
29
29
  quaternion?: ((t: number, dt: number) => number | number[] | import("three").Vector4 | import("three").Quaternion | undefined) | undefined;
30
- rotation?: ((t: number, dt: number) => number | number[] | import("three").Vector3 | undefined) | undefined;
31
- scale?: ((t: number, dt: number) => number | number[] | import("three").Vector3 | undefined) | undefined;
30
+ rotation?: ((t: number, dt: number) => number | import("three").Vector3 | number[] | undefined) | undefined;
31
+ scale?: ((t: number, dt: number) => number | import("three").Vector3 | number[] | undefined) | undefined;
32
32
  eulerOrder?: ((t: number, dt: number) => import("mathbox").Optional<string | import("mathbox").Axes[]>) | undefined;
33
33
  pass?: ((t: number, dt: number) => unknown) | undefined;
34
34
  } | undefined;
@@ -6,7 +6,7 @@ declare const _default: Meta<React.ForwardRefExoticComponent<import("mathbox").G
6
6
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
7
7
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
8
8
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
9
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
9
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
10
10
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
11
11
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
12
12
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -59,7 +59,7 @@ export declare const DefaultGrid: Story<import("mathbox").GridProps & React.RefA
59
59
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
60
60
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
61
61
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
62
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
62
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
63
63
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
64
64
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
65
65
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -111,7 +111,7 @@ export declare const GridXY: Story<import("mathbox").GridProps & React.RefAttrib
111
111
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
112
112
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
113
113
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
114
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
114
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
115
115
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
116
116
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
117
117
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -163,7 +163,7 @@ export declare const GridYZ: Story<import("mathbox").GridProps & React.RefAttrib
163
163
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
164
164
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
165
165
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
166
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
166
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
167
167
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
168
168
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
169
169
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -215,7 +215,7 @@ export declare const GridZX: Story<import("mathbox").GridProps & React.RefAttrib
215
215
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
216
216
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
217
217
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
218
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
218
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
219
219
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
220
220
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
221
221
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -7,7 +7,7 @@ declare const _default: Meta<React.ForwardRefExoticComponent<import("mathbox").G
7
7
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
8
8
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
9
9
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
10
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
10
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
11
11
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
12
12
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
13
13
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -60,7 +60,7 @@ export declare const DefaultPoint: Story<import("mathbox").PointProps & React.Re
60
60
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
61
61
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
62
62
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
63
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
63
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
64
64
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
65
65
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
66
66
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -83,7 +83,7 @@ export declare const LiveProps: Story<import("mathbox").PointProps & React.RefAt
83
83
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
84
84
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
85
85
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
86
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
86
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
87
87
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
88
88
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
89
89
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -6,7 +6,7 @@ declare const _default: Meta<React.ForwardRefExoticComponent<import("mathbox").S
6
6
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
7
7
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
8
8
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
9
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
9
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
10
10
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
11
11
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
12
12
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -40,7 +40,7 @@ export declare const DefaultCartesian: Story<import("mathbox").SurfaceProps & Re
40
40
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
41
41
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
42
42
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
43
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
43
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
44
44
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
45
45
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
46
46
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -1,9 +1,18 @@
1
1
  import React from "react";
2
+ import type { OrbitControls } from "three/examples/jsm/controls/OrbitControls";
2
3
  type OrbitControlsProps = {
3
4
  type: "orbit";
4
5
  enablePan?: boolean;
5
6
  enableRotate?: boolean;
6
7
  enableZoom?: boolean;
8
+ onStart?: (event: {
9
+ type: "end";
10
+ target: OrbitControls;
11
+ }) => void;
12
+ onEnd?: (event: {
13
+ type: "end";
14
+ target: OrbitControls;
15
+ }) => void;
7
16
  };
8
17
  type ControlsProps = OrbitControlsProps;
9
18
  declare const Controls: React.FC<ControlsProps>;
@@ -4,23 +4,54 @@ exports.__esModule = true;
4
4
  var react_1 = require("react");
5
5
  var ThreestrapContext_1 = require("./ThreestrapContext");
6
6
  var ALLOWED_CONTROLS = ["orbit"];
7
- var useOrbitControls = function (threestrap, props) {
7
+ var useOrbitControls = function (threestrap, _a) {
8
+ var type = _a.type, enablePan = _a.enablePan, enableRotate = _a.enableRotate, enableZoom = _a.enableZoom, onStart = _a.onStart, onEnd = _a.onEnd;
8
9
  (0, react_1.useEffect)(function () {
9
- if (props.type !== "orbit")
10
+ if (type !== "orbit")
10
11
  return;
11
12
  if (!threestrap.controls)
12
13
  return;
13
14
  var controls = threestrap.controls;
14
- if (props.enablePan !== undefined) {
15
- controls.enablePan = props.enablePan;
15
+ if (enablePan !== undefined) {
16
+ controls.enablePan = enablePan;
16
17
  }
17
- if (props.enableZoom !== undefined) {
18
- controls.enableZoom = props.enableZoom;
18
+ if (enableZoom !== undefined) {
19
+ controls.enableZoom = enableZoom;
19
20
  }
20
- if (props.enableRotate !== undefined) {
21
- controls.enableRotate = props.enableRotate;
21
+ if (enableRotate !== undefined) {
22
+ controls.enableRotate = enableRotate;
22
23
  }
23
- });
24
+ }, [type, enablePan, enableRotate, enableZoom, threestrap.controls]);
25
+ (0, react_1.useEffect)(function () {
26
+ if (type !== "orbit")
27
+ return function () { };
28
+ if (!threestrap.controls)
29
+ return function () { };
30
+ var controls = threestrap.controls;
31
+ if (onStart) {
32
+ controls.addEventListener("start", onStart);
33
+ }
34
+ return function () {
35
+ if (onStart) {
36
+ controls.removeEventListener("start", onStart);
37
+ }
38
+ };
39
+ }, [type, onStart, threestrap.controls]);
40
+ (0, react_1.useEffect)(function () {
41
+ if (type !== "orbit")
42
+ return function () { };
43
+ if (!threestrap.controls)
44
+ return function () { };
45
+ var controls = threestrap.controls;
46
+ if (onEnd) {
47
+ controls.addEventListener("end", onEnd);
48
+ }
49
+ return function () {
50
+ if (onEnd) {
51
+ controls.removeEventListener("end", onEnd);
52
+ }
53
+ };
54
+ }, [type, onEnd, threestrap.controls]);
24
55
  };
25
56
  var Controls = function (props) {
26
57
  if (!ALLOWED_CONTROLS.includes(props.type)) {
@@ -1 +1 @@
1
- {"version":3,"file":"Controls.js","sourceRoot":"","sources":["../../../src/threestrap/Controls.ts"],"names":[],"mappings":";;AAAA,+CAA+C;AAC/C,+BAAwC;AAExC,yDAAmD;AAWnD,IAAM,gBAAgB,GAAG,CAAC,OAAO,CAAC,CAAA;AAElC,IAAM,gBAAgB,GAAG,UAAC,UAAsB,EAAE,KAAoB;IACpE,IAAA,iBAAS,EAAC;QACR,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;YAAE,OAAM;QAClC,IAAI,CAAC,UAAU,CAAC,QAAQ;YAAE,OAAM;QAChC,IAAM,QAAQ,GAAG,UAAU,CAAC,QAAyB,CAAA;QACrD,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE;YACjC,QAAQ,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;SACrC;QACD,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE;YAClC,QAAQ,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAA;SACvC;QACD,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE;YACpC,QAAQ,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAA;SAC3C;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,IAAM,QAAQ,GAA4B,UAAC,KAAK;IAC9C,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;QAC1C,MAAM,IAAI,KAAK,CAAC,+BAAwB,KAAK,CAAC,IAAI,CAAE,CAAC,CAAA;KACtD;IACD,IAAM,UAAU,GAAG,IAAA,iCAAa,GAAE,CAAA;IAClC,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;IACnC,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,qBAAe,QAAQ,CAAA"}
1
+ {"version":3,"file":"Controls.js","sourceRoot":"","sources":["../../../src/threestrap/Controls.ts"],"names":[],"mappings":";;AAAA,+CAA+C;AAC/C,+BAAwC;AAExC,yDAAmD;AAanD,IAAM,gBAAgB,GAAG,CAAC,OAAO,CAAC,CAAA;AAElC,IAAM,gBAAgB,GAAG,UACvB,UAAsB,EACtB,EAA4E;QAA1E,IAAI,UAAA,EAAE,SAAS,eAAA,EAAE,YAAY,kBAAA,EAAE,UAAU,gBAAA,EAAE,OAAO,aAAA,EAAE,KAAK,WAAA;IAE3D,IAAA,iBAAS,EAAC;QACR,IAAI,IAAI,KAAK,OAAO;YAAE,OAAM;QAC5B,IAAI,CAAC,UAAU,CAAC,QAAQ;YAAE,OAAM;QAChC,IAAM,QAAQ,GAAG,UAAU,CAAC,QAAyB,CAAA;QACrD,IAAI,SAAS,KAAK,SAAS,EAAE;YAC3B,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAA;SAC/B;QACD,IAAI,UAAU,KAAK,SAAS,EAAE;YAC5B,QAAQ,CAAC,UAAU,GAAG,UAAU,CAAA;SACjC;QACD,IAAI,YAAY,KAAK,SAAS,EAAE;YAC9B,QAAQ,CAAC,YAAY,GAAG,YAAY,CAAA;SACrC;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEpE,IAAA,iBAAS,EAAC;QACR,IAAI,IAAI,KAAK,OAAO;YAAE,OAAO,cAAO,CAAC,CAAA;QACrC,IAAI,CAAC,UAAU,CAAC,QAAQ;YAAE,OAAO,cAAO,CAAC,CAAA;QACzC,IAAM,QAAQ,GAAG,UAAU,CAAC,QAAyB,CAAA;QACrD,IAAI,OAAO,EAAE;YACX,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;SAC5C;QACD,OAAO;YACL,IAAI,OAAO,EAAE;gBACX,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;aAC/C;QACH,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAA;IAExC,IAAA,iBAAS,EAAC;QACR,IAAI,IAAI,KAAK,OAAO;YAAE,OAAO,cAAO,CAAC,CAAA;QACrC,IAAI,CAAC,UAAU,CAAC,QAAQ;YAAE,OAAO,cAAO,CAAC,CAAA;QACzC,IAAM,QAAQ,GAAG,UAAU,CAAC,QAAyB,CAAA;QACrD,IAAI,KAAK,EAAE;YACT,QAAQ,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;SACxC;QACD,OAAO;YACL,IAAI,KAAK,EAAE;gBACT,QAAQ,CAAC,mBAAmB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;aAC3C;QACH,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAA;AACxC,CAAC,CAAA;AAED,IAAM,QAAQ,GAA4B,UAAC,KAAK;IAC9C,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;QAC1C,MAAM,IAAI,KAAK,CAAC,+BAAwB,KAAK,CAAC,IAAI,CAAE,CAAC,CAAA;KACtD;IACD,IAAM,UAAU,GAAG,IAAA,iCAAa,GAAE,CAAA;IAClC,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;IACnC,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,qBAAe,QAAQ,CAAA"}
@@ -1 +1,3 @@
1
+ import * as Threestrap from "./threestrap";
1
2
  export * from "./components";
3
+ export { Threestrap };
@@ -1,2 +1,4 @@
1
+ import * as Threestrap from "./threestrap";
1
2
  export * from "./components";
3
+ export { Threestrap };
2
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAA;AAE1C,cAAc,cAAc,CAAA;AAC5B,OAAO,EAAE,UAAU,EAAE,CAAA"}
@@ -8,10 +8,10 @@ declare const _default: Meta<React.ForwardRefExoticComponent<{
8
8
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
9
9
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
10
10
  range?: ((t: number, dt: number) => (number | number[] | import("three").Vector2)[] | undefined) | undefined;
11
- position?: ((t: number, dt: number) => number | number[] | import("three").Vector3 | undefined) | undefined;
11
+ position?: ((t: number, dt: number) => number | import("three").Vector3 | number[] | undefined) | undefined;
12
12
  quaternion?: ((t: number, dt: number) => number | number[] | import("three").Vector4 | import("three").Quaternion | undefined) | undefined;
13
- rotation?: ((t: number, dt: number) => number | number[] | import("three").Vector3 | undefined) | undefined;
14
- scale?: ((t: number, dt: number) => number | number[] | import("three").Vector3 | undefined) | undefined;
13
+ rotation?: ((t: number, dt: number) => number | import("three").Vector3 | number[] | undefined) | undefined;
14
+ scale?: ((t: number, dt: number) => number | import("three").Vector3 | number[] | undefined) | undefined;
15
15
  eulerOrder?: ((t: number, dt: number) => import("mathbox").Optional<string | import("mathbox").Axes[]>) | undefined;
16
16
  pass?: ((t: number, dt: number) => unknown) | undefined;
17
17
  } | undefined;
@@ -25,10 +25,10 @@ export declare const DefaultCartesian: Story<{
25
25
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
26
26
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
27
27
  range?: ((t: number, dt: number) => (number | number[] | import("three").Vector2)[] | undefined) | undefined;
28
- position?: ((t: number, dt: number) => number | number[] | import("three").Vector3 | undefined) | undefined;
28
+ position?: ((t: number, dt: number) => number | import("three").Vector3 | number[] | undefined) | undefined;
29
29
  quaternion?: ((t: number, dt: number) => number | number[] | import("three").Vector4 | import("three").Quaternion | undefined) | undefined;
30
- rotation?: ((t: number, dt: number) => number | number[] | import("three").Vector3 | undefined) | undefined;
31
- scale?: ((t: number, dt: number) => number | number[] | import("three").Vector3 | undefined) | undefined;
30
+ rotation?: ((t: number, dt: number) => number | import("three").Vector3 | number[] | undefined) | undefined;
31
+ scale?: ((t: number, dt: number) => number | import("three").Vector3 | number[] | undefined) | undefined;
32
32
  eulerOrder?: ((t: number, dt: number) => import("mathbox").Optional<string | import("mathbox").Axes[]>) | undefined;
33
33
  pass?: ((t: number, dt: number) => unknown) | undefined;
34
34
  } | undefined;
@@ -6,7 +6,7 @@ declare const _default: Meta<React.ForwardRefExoticComponent<import("mathbox").G
6
6
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
7
7
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
8
8
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
9
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
9
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
10
10
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
11
11
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
12
12
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -59,7 +59,7 @@ export declare const DefaultGrid: Story<import("mathbox").GridProps & React.RefA
59
59
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
60
60
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
61
61
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
62
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
62
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
63
63
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
64
64
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
65
65
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -111,7 +111,7 @@ export declare const GridXY: Story<import("mathbox").GridProps & React.RefAttrib
111
111
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
112
112
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
113
113
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
114
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
114
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
115
115
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
116
116
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
117
117
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -163,7 +163,7 @@ export declare const GridYZ: Story<import("mathbox").GridProps & React.RefAttrib
163
163
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
164
164
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
165
165
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
166
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
166
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
167
167
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
168
168
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
169
169
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -215,7 +215,7 @@ export declare const GridZX: Story<import("mathbox").GridProps & React.RefAttrib
215
215
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
216
216
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
217
217
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
218
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
218
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
219
219
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
220
220
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
221
221
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -7,7 +7,7 @@ declare const _default: Meta<React.ForwardRefExoticComponent<import("mathbox").G
7
7
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
8
8
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
9
9
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
10
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
10
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
11
11
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
12
12
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
13
13
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -60,7 +60,7 @@ export declare const DefaultPoint: Story<import("mathbox").PointProps & React.Re
60
60
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
61
61
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
62
62
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
63
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
63
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
64
64
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
65
65
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
66
66
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -83,7 +83,7 @@ export declare const LiveProps: Story<import("mathbox").PointProps & React.RefAt
83
83
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
84
84
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
85
85
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
86
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
86
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
87
87
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
88
88
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
89
89
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -6,7 +6,7 @@ declare const _default: Meta<React.ForwardRefExoticComponent<import("mathbox").S
6
6
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
7
7
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
8
8
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
9
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
9
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
10
10
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
11
11
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
12
12
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -40,7 +40,7 @@ export declare const DefaultCartesian: Story<import("mathbox").SurfaceProps & Re
40
40
  classes?: ((t: number, dt: number) => import("mathbox").Optional<string | string[]>) | undefined;
41
41
  visible?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
42
42
  opacity?: ((t: number, dt: number) => import("mathbox").Optional<number>) | undefined;
43
- color?: ((t: number, dt: number) => string | number | number[] | import("three").Color | undefined) | undefined;
43
+ color?: ((t: number, dt: number) => string | number | import("three").Color | number[] | undefined) | undefined;
44
44
  blending?: ((t: number, dt: number) => import("mathbox").Optional<import("mathbox").BlendingModes>) | undefined;
45
45
  zWrite?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
46
46
  zTest?: ((t: number, dt: number) => import("mathbox").Optional<boolean>) | undefined;
@@ -1,9 +1,18 @@
1
1
  import React from "react";
2
+ import type { OrbitControls } from "three/examples/jsm/controls/OrbitControls";
2
3
  type OrbitControlsProps = {
3
4
  type: "orbit";
4
5
  enablePan?: boolean;
5
6
  enableRotate?: boolean;
6
7
  enableZoom?: boolean;
8
+ onStart?: (event: {
9
+ type: "end";
10
+ target: OrbitControls;
11
+ }) => void;
12
+ onEnd?: (event: {
13
+ type: "end";
14
+ target: OrbitControls;
15
+ }) => void;
7
16
  };
8
17
  type ControlsProps = OrbitControlsProps;
9
18
  declare const Controls: React.FC<ControlsProps>;
@@ -2,23 +2,54 @@
2
2
  import { useEffect } from "react";
3
3
  import { useThreestrap } from "./ThreestrapContext";
4
4
  var ALLOWED_CONTROLS = ["orbit"];
5
- var useOrbitControls = function (threestrap, props) {
5
+ var useOrbitControls = function (threestrap, _a) {
6
+ var type = _a.type, enablePan = _a.enablePan, enableRotate = _a.enableRotate, enableZoom = _a.enableZoom, onStart = _a.onStart, onEnd = _a.onEnd;
6
7
  useEffect(function () {
7
- if (props.type !== "orbit")
8
+ if (type !== "orbit")
8
9
  return;
9
10
  if (!threestrap.controls)
10
11
  return;
11
12
  var controls = threestrap.controls;
12
- if (props.enablePan !== undefined) {
13
- controls.enablePan = props.enablePan;
13
+ if (enablePan !== undefined) {
14
+ controls.enablePan = enablePan;
14
15
  }
15
- if (props.enableZoom !== undefined) {
16
- controls.enableZoom = props.enableZoom;
16
+ if (enableZoom !== undefined) {
17
+ controls.enableZoom = enableZoom;
17
18
  }
18
- if (props.enableRotate !== undefined) {
19
- controls.enableRotate = props.enableRotate;
19
+ if (enableRotate !== undefined) {
20
+ controls.enableRotate = enableRotate;
20
21
  }
21
- });
22
+ }, [type, enablePan, enableRotate, enableZoom, threestrap.controls]);
23
+ useEffect(function () {
24
+ if (type !== "orbit")
25
+ return function () { };
26
+ if (!threestrap.controls)
27
+ return function () { };
28
+ var controls = threestrap.controls;
29
+ if (onStart) {
30
+ controls.addEventListener("start", onStart);
31
+ }
32
+ return function () {
33
+ if (onStart) {
34
+ controls.removeEventListener("start", onStart);
35
+ }
36
+ };
37
+ }, [type, onStart, threestrap.controls]);
38
+ useEffect(function () {
39
+ if (type !== "orbit")
40
+ return function () { };
41
+ if (!threestrap.controls)
42
+ return function () { };
43
+ var controls = threestrap.controls;
44
+ if (onEnd) {
45
+ controls.addEventListener("end", onEnd);
46
+ }
47
+ return function () {
48
+ if (onEnd) {
49
+ controls.removeEventListener("end", onEnd);
50
+ }
51
+ };
52
+ }, [type, onEnd, threestrap.controls]);
22
53
  };
23
54
  var Controls = function (props) {
24
55
  if (!ALLOWED_CONTROLS.includes(props.type)) {
@@ -1 +1 @@
1
- {"version":3,"file":"Controls.js","sourceRoot":"","sources":["../../../src/threestrap/Controls.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAExC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAWnD,IAAM,gBAAgB,GAAG,CAAC,OAAO,CAAC,CAAA;AAElC,IAAM,gBAAgB,GAAG,UAAC,UAAsB,EAAE,KAAoB;IACpE,SAAS,CAAC;QACR,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;YAAE,OAAM;QAClC,IAAI,CAAC,UAAU,CAAC,QAAQ;YAAE,OAAM;QAChC,IAAM,QAAQ,GAAG,UAAU,CAAC,QAAyB,CAAA;QACrD,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE;YACjC,QAAQ,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;SACrC;QACD,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE;YAClC,QAAQ,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAA;SACvC;QACD,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE;YACpC,QAAQ,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAA;SAC3C;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,IAAM,QAAQ,GAA4B,UAAC,KAAK;IAC9C,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;QAC1C,MAAM,IAAI,KAAK,CAAC,+BAAwB,KAAK,CAAC,IAAI,CAAE,CAAC,CAAA;KACtD;IACD,IAAM,UAAU,GAAG,aAAa,EAAE,CAAA;IAClC,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;IACnC,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,eAAe,QAAQ,CAAA"}
1
+ {"version":3,"file":"Controls.js","sourceRoot":"","sources":["../../../src/threestrap/Controls.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAExC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAanD,IAAM,gBAAgB,GAAG,CAAC,OAAO,CAAC,CAAA;AAElC,IAAM,gBAAgB,GAAG,UACvB,UAAsB,EACtB,EAA4E;QAA1E,IAAI,UAAA,EAAE,SAAS,eAAA,EAAE,YAAY,kBAAA,EAAE,UAAU,gBAAA,EAAE,OAAO,aAAA,EAAE,KAAK,WAAA;IAE3D,SAAS,CAAC;QACR,IAAI,IAAI,KAAK,OAAO;YAAE,OAAM;QAC5B,IAAI,CAAC,UAAU,CAAC,QAAQ;YAAE,OAAM;QAChC,IAAM,QAAQ,GAAG,UAAU,CAAC,QAAyB,CAAA;QACrD,IAAI,SAAS,KAAK,SAAS,EAAE;YAC3B,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAA;SAC/B;QACD,IAAI,UAAU,KAAK,SAAS,EAAE;YAC5B,QAAQ,CAAC,UAAU,GAAG,UAAU,CAAA;SACjC;QACD,IAAI,YAAY,KAAK,SAAS,EAAE;YAC9B,QAAQ,CAAC,YAAY,GAAG,YAAY,CAAA;SACrC;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEpE,SAAS,CAAC;QACR,IAAI,IAAI,KAAK,OAAO;YAAE,OAAO,cAAO,CAAC,CAAA;QACrC,IAAI,CAAC,UAAU,CAAC,QAAQ;YAAE,OAAO,cAAO,CAAC,CAAA;QACzC,IAAM,QAAQ,GAAG,UAAU,CAAC,QAAyB,CAAA;QACrD,IAAI,OAAO,EAAE;YACX,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;SAC5C;QACD,OAAO;YACL,IAAI,OAAO,EAAE;gBACX,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;aAC/C;QACH,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAA;IAExC,SAAS,CAAC;QACR,IAAI,IAAI,KAAK,OAAO;YAAE,OAAO,cAAO,CAAC,CAAA;QACrC,IAAI,CAAC,UAAU,CAAC,QAAQ;YAAE,OAAO,cAAO,CAAC,CAAA;QACzC,IAAM,QAAQ,GAAG,UAAU,CAAC,QAAyB,CAAA;QACrD,IAAI,KAAK,EAAE;YACT,QAAQ,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;SACxC;QACD,OAAO;YACL,IAAI,KAAK,EAAE;gBACT,QAAQ,CAAC,mBAAmB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;aAC3C;QACH,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAA;AACxC,CAAC,CAAA;AAED,IAAM,QAAQ,GAA4B,UAAC,KAAK;IAC9C,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;QAC1C,MAAM,IAAI,KAAK,CAAC,+BAAwB,KAAK,CAAC,IAAI,CAAE,CAAC,CAAA;KACtD;IACD,IAAM,UAAU,GAAG,aAAa,EAAE,CAAA;IAClC,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;IACnC,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,eAAe,QAAQ,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mathbox-react",
3
- "version": "0.2.1-rc1",
3
+ "version": "0.2.1-rc3",
4
4
  "description": "React wrapper for Mathbox",
5
5
  "license": "ISC",
6
6
  "repository": {