@realsee/five 5.0.0-alpha.116 → 5.0.0-alpha.119
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/docs/classes/five.AnimationFrameLoop.html +1 -1
- package/docs/classes/five.BVH.html +1 -1
- package/docs/classes/five.BVHIntersect.html +1 -1
- package/docs/classes/five.BVHNode.html +1 -1
- package/docs/classes/five.BVHVector3.html +1 -1
- package/docs/classes/five.Camera.html +1 -1
- package/docs/classes/five.Five.html +1 -1
- package/docs/classes/five.InternalWebGLRenderer.html +1 -1
- package/docs/classes/five.IntersectMesh.html +1 -1
- package/docs/classes/five.LegacyPanoCircleMesh.html +1 -1
- package/docs/classes/five.Model.html +1 -1
- package/docs/classes/five.NetworkSubscribe.html +1 -1
- package/docs/classes/five.PBMContainer.html +1 -1
- package/docs/classes/five.PBMGroup.html +1 -1
- package/docs/classes/five.PBMMaterial.html +1 -1
- package/docs/classes/five.PBMMesh.html +1 -1
- package/docs/classes/five.PanoCircleMesh.html +1 -1
- package/docs/classes/five.Scene.html +1 -1
- package/docs/classes/five.Subscribe.html +1 -1
- package/docs/classes/five.Work.html +1 -1
- package/docs/classes/gltf_loader.GLTFLoader.html +1 -1
- package/docs/classes/gltf_loader.GLTFObject.html +1 -1
- package/docs/classes/line.Line.html +1 -1
- package/docs/classes/line.LineGeometry.html +1 -1
- package/docs/classes/line.LineMaterial.html +1 -1
- package/docs/classes/line.LineSegmentsGeometry.html +1 -1
- package/docs/classes/line.THREE_Line2.html +1 -1
- package/docs/classes/line.THREE_LineSegments2.html +1 -1
- package/docs/classes/react.Store.html +6 -6
- package/docs/classes/server.BVH.html +1 -1
- package/docs/classes/server.BVHIntersect.html +1 -1
- package/docs/classes/server.BVHNode.html +1 -1
- package/docs/classes/server.BVHVector3.html +1 -1
- package/docs/classes/server.Model.html +1 -1
- package/docs/classes/server.PBMGroup.html +1 -1
- package/docs/classes/server.PBMMesh.html +1 -1
- package/docs/classes/sticker.Sticker.html +1 -1
- package/docs/index.html +1 -1
- package/docs/interfaces/five.AddableObject.html +1 -1
- package/docs/interfaces/five.AnimationFrame.html +1 -1
- package/docs/interfaces/five.CameraPose.html +1 -1
- package/docs/interfaces/five.DepthPanoramaControllerCustomInitArgs.html +1 -1
- package/docs/interfaces/five.EventCallback.html +1 -1
- package/docs/interfaces/five.FiveInitArgs.html +1 -1
- package/docs/interfaces/five.FloorplanControllerCustomInitArgs.html +1 -1
- package/docs/interfaces/five.ImageOptions.html +1 -1
- package/docs/interfaces/five.ImageURLOptions.html +1 -1
- package/docs/interfaces/five.IntersectMeshInterface.html +1 -1
- package/docs/interfaces/five.Intersection.html +1 -1
- package/docs/interfaces/five.ModelControllerCustomInitArgs.html +1 -1
- package/docs/interfaces/five.ModelEventCallback.html +1 -1
- package/docs/interfaces/five.MovePanoOptions.html +1 -1
- package/docs/interfaces/five.PBMPanoPicture.html +1 -1
- package/docs/interfaces/five.PBMParameters.html +1 -1
- package/docs/interfaces/five.PanoCircleMeshInterface.html +1 -1
- package/docs/interfaces/five.PanoramaControllerCustomInitArgs.html +1 -1
- package/docs/interfaces/five.PanoramaLikeControllerCustomInitArgs.html +1 -1
- package/docs/interfaces/five.Pose.html +1 -1
- package/docs/interfaces/five.Scissor.html +1 -1
- package/docs/interfaces/five.State.html +1 -1
- package/docs/interfaces/five.SubscribeMixinType.emit.html +1 -1
- package/docs/interfaces/five.SubscribeMixinType.hasListener.html +1 -1
- package/docs/interfaces/five.SubscribeMixinType.off.html +1 -1
- package/docs/interfaces/five.SubscribeMixinType.on.html +1 -1
- package/docs/interfaces/five.SubscribeMixinType.once.html +1 -1
- package/docs/interfaces/five.TextureOptions.html +1 -1
- package/docs/interfaces/five.TopviewControllerCustomInitArgs.html +1 -1
- package/docs/interfaces/five.VRPanoramaControllerCustomInitArgs.html +1 -1
- package/docs/interfaces/five.WorkCubeImage.html +1 -1
- package/docs/interfaces/five.WorkImage.html +1 -1
- package/docs/interfaces/five.WorkInitial.html +1 -1
- package/docs/interfaces/five.WorkModel.html +1 -1
- package/docs/interfaces/five.WorkObserver.html +1 -1
- package/docs/interfaces/five.WorkTile.html +1 -1
- package/docs/interfaces/five.WorkVideo.html +1 -1
- package/docs/interfaces/gltf_loader.GLTF.html +1 -1
- package/docs/interfaces/react.FiveActionReactCallbacks.html +1 -1
- package/docs/interfaces/react.FiveInjectionTypes.html +19 -19
- package/docs/interfaces/react.PropTypeOfFiveFeatures.html +1 -1
- package/docs/interfaces/server.Intersection.html +1 -1
- package/docs/interfaces/server.ModelEventCallback.html +1 -1
- package/docs/interfaces/sticker.IntersectionLike.html +1 -1
- package/docs/modules/five.SubscribeMixinType.html +1 -1
- package/docs/modules/five.html +1 -1
- package/docs/modules/gltf_loader.html +1 -1
- package/docs/modules/line.html +1 -1
- package/docs/modules/react.html +6 -6
- package/docs/modules/server.html +1 -1
- package/docs/modules/sticker.html +1 -1
- package/docs/modules.html +1 -1
- package/exporters/staticify.js +14 -7
- package/five/index.js +3 -3
- package/gltf-loader/index.js +2 -2
- package/line/index.js +2 -2
- package/package.json +2 -1
- package/react/index.d.ts +5 -2
- package/react/index.js +3 -3
- package/scripts/five-staticify.js +7 -2
- package/server/index.js +2 -2
- package/sticker/index.js +2 -2
- package/umd/five-react.js +1 -1
- package/umd/five.js +1 -1
package/gltf-loader/index.js
CHANGED
package/line/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@realsee/five",
|
|
3
|
-
"version": "5.0.0-alpha.
|
|
3
|
+
"version": "5.0.0-alpha.119",
|
|
4
4
|
"description": "Realsee Renderer SDK",
|
|
5
5
|
"bin": {
|
|
6
6
|
"five-plugin-init": "./scripts/five-plugin-init.js",
|
|
@@ -27,6 +27,7 @@
|
|
|
27
27
|
"archiver": "^5.3.0",
|
|
28
28
|
"commander": "^9.0.0",
|
|
29
29
|
"copyfiles": "^2.4.1",
|
|
30
|
+
"ejs": "^3.1.6",
|
|
30
31
|
"glob": "^7.2.0",
|
|
31
32
|
"protobufjs": "^6.8.8",
|
|
32
33
|
"tslib": "^2.3.0"
|
package/react/index.d.ts
CHANGED
|
@@ -41,7 +41,10 @@ export declare function createFiveProvider(fiveInitArgs?: Omit<FiveInitArgs, "re
|
|
|
41
41
|
loadWork(work: Work, state?: "inherit" | "initial" | Partial<Omit<State, "offset">>, duration?: number, userAction?: boolean): Promise<void>;
|
|
42
42
|
shouldComponentUpdate(nextProps: FiveProviderPropTypes): boolean;
|
|
43
43
|
componentWillUnmount(): void;
|
|
44
|
-
render():
|
|
44
|
+
render(): React_2.FunctionComponentElement<React_2.ProviderProps<{
|
|
45
|
+
five: Five;
|
|
46
|
+
loadWork: (work: Work, state?: "inherit" | "initial" | Partial<Omit<State, "offset">>, duration?: number, userAction?: boolean) => Promise<void>;
|
|
47
|
+
}>>;
|
|
45
48
|
context: any;
|
|
46
49
|
setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<FiveProviderPropTypes>) => {} | Pick<{}, K>) | Pick<{}, K>, callback?: () => void): void;
|
|
47
50
|
forceUpdate(callback?: () => void): void;
|
|
@@ -103,7 +106,7 @@ export declare function createStore<T extends StoreValueMapType, A extends Store
|
|
|
103
106
|
onValuesChange?: (value: T, prevValue: T) => void;
|
|
104
107
|
children: React_2.ReactNode;
|
|
105
108
|
}): boolean;
|
|
106
|
-
render():
|
|
109
|
+
render(): React_2.FunctionComponentElement<React_2.ProviderProps<Store<T>>>;
|
|
107
110
|
context: any;
|
|
108
111
|
setState<K_3 extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<{
|
|
109
112
|
initialValue: T;
|
package/react/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @realsee/five
|
|
3
3
|
*
|
|
4
|
-
* Generated: 2022-04-
|
|
5
|
-
* Version: 5.0.0-alpha.
|
|
4
|
+
* Generated: 2022-04-19
|
|
5
|
+
* Version: 5.0.0-alpha.119
|
|
6
6
|
*
|
|
7
7
|
* Terms:
|
|
8
8
|
* Realsee SDK License Agreement
|
|
@@ -257,4 +257,4 @@
|
|
|
257
257
|
* Agreement and all related documents shall be drafted in English.
|
|
258
258
|
*/
|
|
259
259
|
|
|
260
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),t=require("react"),n=require("three"),r=require("@realsee/five");function o(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var u=o(t),i=o(n),a=[];var f=u.createContext(null);function s(){var e=u.useContext(f);if(!e)throw new Error("FiveProvider never found.");return e.five}function c(){var e=u.useContext(f);if(!e)throw new Error("FiveProvider never found.");return e.loadWork}var l={display:"inline-block",overflow:"hidden"};function d(e,t){var n=s(),r=[n];void 0!==t&&(r=r.concat(t)),u.useLayoutEffect((function(){return e(n.scene)}),r)}var v=d;function p(t){return e.__assign({},t.state)}function h(e){var t=e.camera.getWorldDirection(new i.Vector3);return new i.Raycaster(e.camera.position,t)}function m(e){return e.camera.getWorldDirection(new i.Vector3)}function y(e){return e.model.empty?"Empty":"Loaded"}function S(e,t){return t.indexOf(e)>=0}function g(e,t){for(var n=0,r=Object.keys(t);n<r.length;n++){var o=r[n];void 0!==t[o]&&(e[o]=t[o])}}function C(e,t){if(S("loadWork",t))return e}function b(e,t){if(S("setState",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.setState.apply(e,t)}}function w(e,t){if(S("on",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.on.apply(e,t)}}function E(e,t){if(S("on",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.once.apply(e,t)}}function k(e,t){if(S("off",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.off.apply(e,t)}}function x(e,t){if(S("intersectRaycaster",t))return function(){for(var t,n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];return(t=e.model).intersectRaycaster.apply(t,n)}}function L(e,t){if(S("project2d",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.project2d.apply(e,t)}}function F(e,t){if(S("updateCamera",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.updateCamera.apply(e,t)}}function _(e,t){if(S("initBasisLoader",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.initBasisLoader.apply(e,t)}}function P(e,t){if(S("getPixels",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.getPixels.apply(e,t)}}function R(e,t){if(S("render",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.render.apply(e,t)}}function V(e,t){if(S("needsRender",t))return function(){e.needsRender=!0}}function M(e,t){if(S("preloadPano",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.preloadPano.apply(e,t)}}function W(e,t){if(S("showFloor",t))return function(t){"number"==typeof t?e.model.show(t):e.model.show()}}function O(e,t){if(S("toggleHelperVisible",t))return function(t){e.helperVisible=t}}function j(e,t){for(var n={},r=t.length,o=-1;++o<r;){var u=t[o];u in e&&(n[u]=e[u])}return n}function N(e,t){for(var n=0;n<e.length;n++)for(var r=0;r<t.length;r++)if(e[n]===t[r])return!0;return!1}var A=function(){function t(e,t){this.values=e,this.listeners=[],this.onValuesChange=t}return t.prototype.on=function(e,t){var n=this,r=[e,t];return this.listeners.push(r),function(){var e=n.listeners.indexOf(r);e>=0&&n.listeners.splice(e,1)}},t.prototype.getValues=function(e){return j(this.values,e)},t.prototype.setValues=function(t,n){var r,o,u=[];for(var i in n)t.indexOf(i)>=0&&(r=n[i],o=this.values[i],!("number"==typeof r&&"number"==typeof o&&isNaN(r)&&isNaN(o)||r===o))&&u.push(i);if(0!==u.length){for(var a=e.__assign({},this.values),f=0,s=u;f<s.length;f++){var c=s[f];this.values[c]=n[c]}this.onValuesChange&&this.onValuesChange(this.values,a);for(var l=0,d=this.listeners;l<d.length;l++){var v=d[l],p=v[0],h=v[1];if(N(p,u)){var m=j(a,p);h(j(this.values,p),m)}}}},t}();exports.FiveCanvas=function(t){var n=t.width,r=t.height,o=s(),i=u.createRef(),a=e.__assign({width:n,height:r},l);return u.useLayoutEffect((function(){if(i.current&&o.renderer){if(null!==o.renderer.domElement.parentNode&&o.renderer.domElement.parentNode!==i.current)throw new Error("There are more than 2 fiveCanvas in this context.");o.renderer.domElement.parentNode!==i.current&&i.current.appendChild(o.renderer.domElement),o.camera.aspect=n/r,o.camera.updateProjectionMatrix(),o.renderer.setSize(n,r),o.needsRender=!0}}),[n,r,i.current]),u.createElement("div",{ref:i,style:a})},exports.INJECTION_PROPNAME="$five",exports.Store=A,exports.createFiveFeature=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return e},exports.createFiveProvider=function(t){return void 0===t&&(t={}),function(n){function o(o){var u,f=this;f=n.call(this,o)||this;var s=function(e){var t=void 0===e?{}:e,n=t.backgroundColor,r=void 0===n?1579548:n,o=t.backgroundAlpha,u=void 0===o?1:o,f=t.pixelRatio,s=void 0===f?1:f;if("undefined"!=typeof window){var c=a.shift();return c||((c=new i.WebGLRenderer({antialias:!1,alpha:!0})).outputEncoding=i.sRGBEncoding),c.setPixelRatio(s),c.setClearColor(r,u),c.autoClear=!0,c}}({pixelRatio:1===r.getViewportScale()?window.devicePixelRatio:1});return f.five=new r.Five(e.__assign({renderer:s},t)),(o.work||o.initialWork)&&f.five.load(o.work||o.initialWork,o.initialState,void 0,null===(u=o.initialUserAction)||void 0===u||u),f.five.on("load",(function(){var e;f.props.onWorkChange&&f.props.onWorkChange(null===(e=f.five)||void 0===e?void 0:e.work)})),f.five.on("stateChange",(function(e,t){f.props.onStateChange&&f.props.onStateChange(e,t)})),f.five.on("currentStateChange",(function(e,t){f.props.onCurrentStateChange&&f.props.onCurrentStateChange(e,t)})),f.five.on("error",(function(e){f.props.onError?f.props.onError(e):console.warn(e.message)})),f}return e.__extends(o,n),o.prototype.loadWork=function(e,t,n,r){if(void 0===r&&(r=!0),this.props.work)throw new Error("props 'work' is set in fiveProvider, if you need modify work internal, use 'initialWork' instead.");return this.five.load(e,t,n,r)},o.prototype.shouldComponentUpdate=function(e){var t,n;return e.work&&e.work!==(null===(t=this.five)||void 0===t?void 0:t.work)&&(null===(n=this.five)||void 0===n||n.load(e.work,e.initialState)),!0},o.prototype.componentWillUnmount=function(){var e;this.five&&(this.five.dispose(),(e=this.five.renderer)&&-1===a.indexOf(e)&&a.push(e),delete this.five)},o.prototype.render=function(){var e=this;return u.createElement(f.Provider,{value:{five:this.five,loadWork:function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.loadWork.apply(e,t)}}},this.props.children)},o}(u.Component)},exports.createStore=function(t){var n=u.createContext(null);return{useStore:function(t){var r=u.useContext(n);if(null===r)throw new Error("StoreProvider never found.");var o=u.useRef(!0),i=u.useState(r.getValues(t)),a=i[0],f=i[1],s=e.__spreadArray([r],t,!0);return u.useLayoutEffect((function(){return o.current?o.current=!1:f(r.getValues(t)),r.on(t,(function(e){return f(e)}))}),s),[a,u.useCallback((function(e){return r.setValues(t,e)}),s)]},useStoreSetter:function(t){var r=u.useContext(n);if(null===r)throw new Error("StoreProvider never found.");return u.useCallback((function(e){return r.setValues(t,e)}),e.__spreadArray([r],t,!0))},watchStore:function(t,r,o){var i=u.useContext(n);if(null===i)throw new Error("StoreProvider never found.");var a=e.__spreadArray([i],t,!0);void 0!==o&&(a=a.concat(o)),u.useLayoutEffect((function(){return i.on(t,r)}),a)},useStoreAction:function(r){var o=u.useContext(n);if(null===o)throw new Error("StoreProvider never found.");return u.useCallback((function(){for(var n=[],u=0;u<arguments.length;u++)n[u]=arguments[u];var i=t[r],a=i[0],f=i.slice(1),s=function(){return o.getValues(f)},c=function(e){return o.setValues(f,e)};return a.apply(void 0,e.__spreadArray([s,c],n,!1))}),[])},StoreProvider:function(t){function r(e){var n=t.call(this,e)||this;return n.store=new A(e.initialValue,(function(){for(var e,t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];n.props.onValuesChange&&(e=n.props).onValuesChange.apply(e,t)})),n}return e.__extends(r,t),r.prototype.shouldComponentUpdate=function(e){return e.children!==this.props.children},r.prototype.render=function(){return u.createElement(n.Provider,{value:this.store},this.props.children)},r}(u.Component)}},exports.unsafe__useFiveInstance=function(){return s()},exports.useFiveAction=function(){var e=s();return{updateCamera:u.useCallback((function(t,n){return e.updateCamera(t,n)}),[e]),initBasisLoader:u.useCallback((function(t){return e.initBasisLoader(t)}),[e]),getPixels:u.useCallback((function(t,n,r,o,u){return e.getPixels(t,n,r,o,u)}),[e]),render:u.useCallback((function(t){return e.render(t)}),[e]),needsRender:u.useCallback((function(){return e.needsRender=!0}),[e]),preloadPano:u.useCallback((function(t,n){return e.preloadPano(t,n)}),[e])}},exports.useFiveCameraDirection=function(){var e=s(),t=u.useState((function(){return m(e)})),n=t[0],r=t[1];return u.useLayoutEffect((function(){return e.on("cameraUpdate",(function(){return r(m(e))}))}),[e]),n},exports.useFiveCameraRaycaster=function(){var e=s(),t=u.useState((function(){return h(e)})),n=t[0],r=t[1];return u.useLayoutEffect((function(){return e.on("cameraUpdate",(function(){return r(h(e))}))}),[e]),n},exports.useFiveCurrentObserver=function(){var e=s(),t=u.useState((function(){return e.getCurrentState()})),n=t[0],r=t[1];return u.useLayoutEffect((function(){return e.on("currentStateChange",(function(){return r(e.getCurrentState())}))}),[e]),e.work?e.work.observers[n.panoIndex]:null},exports.useFiveCurrentState=function(){var e=s(),t=u.useState((function(){return e.getCurrentState()})),n=t[0],r=t[1],o=u.useCallback((function(t,n,r){void 0===n&&(n=!1),void 0===r&&(r=!0);var o="function"==typeof t?t(e.getCurrentState()):t;e.setState(o,n,r)}),[e]);return u.useLayoutEffect((function(){return e.on("currentStateChange",(function(){return r(e.getCurrentState())}))}),[e]),[n,o]},exports.useFiveEventCallback=function(e,t,n){var r=s(),o=[r,e];void 0!==n&&(o=o.concat(n)),u.useLayoutEffect((function(){return r.on(e,t)}),o)},exports.useFiveFloor=function(){var e=s(),t=u.useState(e.model.shownFloor),n=t[0],r=t[1],o=u.useState(e.model.floorLength),i=o[0],a=o[1],f=u.useCallback((function(t){"number"==typeof t?e.model.show(t):e.model.show()}),[e]);return u.useLayoutEffect((function(){var t=[];return t.push(e.on("modelShownFloorChange",(function(){return r(e.model.shownFloor)}))),t.push(e.on("modelLoaded",(function(){return a(e.model.floorLength)}))),function(){for(var e;e=t.shift();)e()}}),[e]),[n,i,f]},exports.useFiveHelper=function(){var e=s(),t=u.useState(e.helperVisible),n=t[0],r=t[1],o=u.useCallback((function(t){e.helperVisible=t}),[e]);return u.useLayoutEffect((function(){return e.on("helpersVisibleChange",(function(e){return r(e)}))}),[e]),[n,o]},exports.useFiveModelIntersectRaycaster=function(){var e=s();return u.useCallback((function(t){return e.model.intersectRaycaster(t)}),[e])},exports.useFiveModelReadyState=function(){var e=s(),t=u.useState((function(){return y(e)})),n=t[0],r=t[1];return u.useLayoutEffect((function(){return e.on("modelLoaded",(function(){return r(y(e))}))}),[e]),n},exports.useFiveProject2d=function(){var e=s(),t=u.useState((function(){return Symbol()}));t[0];var n=t[1];return u.useLayoutEffect((function(){return e.on("cameraUpdate",(function(){return n(Symbol())}))}),[e]),u.useCallback((function(t,n){return e.project2d(t,n)}),[e])},exports.useFiveScene=v,exports.useFiveSceneEffect=d,exports.useFiveState=function(){var e=s(),t=u.useState((function(){return p(e)})),n=t[0],r=t[1],o=u.useCallback((function(t,n,r){void 0===n&&(n=!1),void 0===r&&(r=!0);var o="function"==typeof t?t(e.getCurrentState()):t;e.setState(o,n,r)}),[e]);return u.useLayoutEffect((function(){return e.on("stateChange",(function(){return r(p(e))}))}),[e]),[n,o]},exports.useFiveWork=function(){var e=s(),t=c(),n=u.useState((function(){return e.work})),r=n[0],o=n[1];return u.useLayoutEffect((function(){return e.on("load",(function(){return o(e.work)}))}),[e]),[r,t]},exports.withFive=function(t){return function(n){return u.forwardRef((function(r,o){var a=s(),f=c(),l=function(e,t){return[S("unsafe__fiveInstance",t)?e:void 0]}(a,t)[0],d=function(t,n){var r=S("state",n),o=u.useState(Symbol()),i=o[0],a=o[1],f=u.useMemo((function(){if(r)return e.__assign({},t.state)}),[t,i]);return u.useLayoutEffect((function(){if(r)return t.on("stateChange",(function(){return a(Symbol())}))}),[t]),[f,i]}(a,t),v=d[0],p=d[1],h=function(e,t){var n=S("currentState",t),r=u.useState(Symbol()),o=r[0],i=r[1],a=u.useMemo((function(){if(n)return e.getCurrentState()}),[e,o]);return u.useLayoutEffect((function(){if(n)return e.on("currentStateChange",(function(){return i(Symbol())}))}),[e]),[a,o]}(a,t),m=h[0],y=h[1],j=function(e,t){var n=S("currentObserver",t),r=u.useState(Symbol()),o=r[0],i=r[1],a=u.useMemo((function(){if(n)return e.getCurrentState()}),[e,o]);return u.useLayoutEffect((function(){if(n)return e.on("currentStateChange",(function(){return i(Symbol())}))}),[e]),[a?e.work?e.work.observers[a.panoIndex]:null:void 0,o]}(a,t),N=j[0],A=j[1],U=function(e,t){var n=S("work",t),r=u.useState(Symbol()),o=r[0],i=r[1],a=u.useMemo((function(){if(n)return e.work}),[e,o]);return u.useLayoutEffect((function(){if(n)return e.on("load",(function(){return i(Symbol())}))}),[e]),[a,o]}(a,t),D=U[0],I=U[1],B=function(e,t){var n=S("model",t),r=u.useState(Symbol()),o=r[0],i=r[1],a=u.useMemo((function(){if(n)return e.model}),[e,o]);return u.useLayoutEffect((function(){if(n)return e.on("modelLoaded",(function(){return i(Symbol())}))}),[e]),[a,o]}(a,t),q=B[0],H=B[1],z=function(e,t){return[S("scene",t)?e.scene:void 0]}(a,t)[0],G=function(e,t){var n=S("cameraDirection",t),r=u.useState(Symbol()),o=r[0],a=r[1],f=u.useMemo((function(){if(n)return e.camera.getWorldDirection(new i.Vector3)}),[e,o]);return u.useLayoutEffect((function(){if(n)return e.on("cameraUpdate",(function(){return a(Symbol())}))}),[e]),[f,o]}(a,t),T=G[0],$=G[1],J=function(e,t){var n=S("cameraRaycaster",t),r=u.useState(Symbol()),o=r[0],a=r[1],f=u.useMemo((function(){if(n){var t=e.camera.getWorldDirection(new i.Vector3);return new i.Raycaster(e.camera.position,t)}}),[e,o]);return u.useLayoutEffect((function(){if(n)return e.on("cameraUpdate",(function(){return a(Symbol())}))}),[e]),[f,o]}(a,t),K=J[0],Q=J[1],X=function(e,t){var n=S("modelReadyState",t),r=u.useState(Symbol()),o=r[0],i=r[1],a=u.useMemo((function(){if(n)return e.model.empty?"Empty":"Loaded"}),[e,o]);return u.useLayoutEffect((function(){if(n)return e.on("modelLoaded",(function(){return i(Symbol())}))}),[e]),[a,o]}(a,t),Y=X[0],Z=X[1],ee=function(e,t){var n=S("shownFloor",t),r=u.useState(Symbol()),o=r[0],i=r[1],a=u.useMemo((function(){if(n)return e.model.shownFloor}),[e,o]);return u.useLayoutEffect((function(){if(n)return e.on("modelShownFloorChange",(function(){return i(Symbol())}))}),[e]),[a,o]}(a,t),te=ee[0],ne=ee[1],re=function(e,t){var n=S("totalFloorLength",t),r=u.useState(Symbol()),o=r[0],i=r[1],a=u.useMemo((function(){if(n)return e.model.hasFloors()}),[e,o]);return u.useLayoutEffect((function(){if(n)return e.on("modelLoaded",(function(){return i(Symbol())}))}),[e]),[a,o]}(a,t),oe=re[0],ue=re[1],ie=function(e,t){var n=S("helperVisible",t),r=u.useState(Symbol()),o=r[0],i=r[1],a=u.useMemo((function(){if(n)return e.helperVisible}),[e,o]);return u.useLayoutEffect((function(){if(n)return e.on("helpersVisibleChange",(function(){return i(Symbol())}))}),[e]),[a,o]}(a,t),ae=ie[0],fe=ie[1],se=u.useMemo((function(){var e={};return g(e,{setState:b(a,t),loadWork:C(f,t),on:w(a,t),once:E(a,t),off:k(a,t),intersectRaycaster:x(a,t),project2d:L(a,t),updateCamera:F(a,t),initBasisLoader:_(a,t),getPixels:P(a,t),render:R(a,t),needsRender:V(a,t),preloadPano:M(a,t),showFloor:W(a,t),toggleHelperVisible:O(a,t)}),e}),[a,f]),ce=u.useMemo((function(){var t=e.__assign({},se);return g(t,{unsafe__fiveInstance:l,state:v,currentState:m,currentObserver:N,work:D,model:q,scene:z,cameraDirection:T,cameraRaycaster:K,modelReadyState:Y,shownFloor:te,totalFloorLength:oe,helperVisible:ae}),t}),[a,se,p,y,A,I,H,$,Q,Z,ne,ue,fe]);return u.createElement(n,e.__assign({ref:o,$five:ce},r))}))}};
|
|
260
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),t=require("react"),r=require("three"),n=require("@realsee/five");function o(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var u=o(t),i=o(r),a=[];var f=u.createContext(null);function c(){var e=u.useContext(f);if(!e)throw new Error("FiveProvider never found.");return e.five}function s(){var e=u.useContext(f);if(!e)throw new Error("FiveProvider never found.");return e.loadWork}var l={display:"inline-block",overflow:"hidden"};function d(e,t){var r=c(),n=[r];void 0!==t&&(n=n.concat(t)),u.useLayoutEffect((function(){return e(r.scene)}),n)}var v=d;function p(t){return e.__assign({},t.state)}function h(e){var t=e.camera.getWorldDirection(new i.Vector3);return new i.Raycaster(e.camera.position,t)}function m(e){return e.camera.getWorldDirection(new i.Vector3)}function y(e){return e.model.empty?"Empty":"Loaded"}function g(e,t){return t.indexOf(e)>=0}function S(e,t){for(var r=0,n=Object.keys(t);r<n.length;r++){var o=n[r];void 0!==t[o]&&(e[o]=t[o])}}function C(e,t){if(g("loadWork",t))return e}function b(e,t){if(g("setState",t))return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return e.setState.apply(e,t)}}function w(e,t){if(g("on",t))return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return e.on.apply(e,t)}}function k(e,t){if(g("on",t))return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return e.once.apply(e,t)}}function E(e,t){if(g("off",t))return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return e.off.apply(e,t)}}function x(e,t){if(g("intersectRaycaster",t))return function(){for(var t,r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];return(t=e.model).intersectRaycaster.apply(t,r)}}function L(e,t){if(g("project2d",t))return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return e.project2d.apply(e,t)}}function F(e,t){if(g("updateCamera",t))return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return e.updateCamera.apply(e,t)}}function _(e,t){if(g("initBasisLoader",t))return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return e.initBasisLoader.apply(e,t)}}function P(e,t){if(g("getPixels",t))return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return e.getPixels.apply(e,t)}}function R(e,t){if(g("render",t))return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return e.render.apply(e,t)}}function V(e,t){if(g("needsRender",t))return function(){e.needsRender=!0}}function M(e,t){if(g("preloadPano",t))return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return e.preloadPano.apply(e,t)}}function W(e,t){if(g("showFloor",t))return function(t){"number"==typeof t?e.model.show(t):e.model.show()}}function O(e,t){if(g("toggleHelperVisible",t))return function(t){e.helperVisible=t}}function j(e,t){for(var r={},n=t.length,o=-1;++o<n;){var u=t[o];u in e&&(r[u]=e[u])}return r}function A(e,t){for(var r=0;r<e.length;r++)for(var n=0;n<t.length;n++)if(e[r]===t[n])return!0;return!1}var N=function(){function t(e,t){this.values=e,this.listeners=[],this.onValuesChange=t}return t.prototype.on=function(e,t){var r=this,n=[e,t];return this.listeners.push(n),function(){var e=r.listeners.indexOf(n);e>=0&&r.listeners.splice(e,1)}},t.prototype.getValues=function(e){return j(this.values,e)},t.prototype.setValues=function(t,r){var n,o,u=[];for(var i in r)t.indexOf(i)>=0&&(n=r[i],o=this.values[i],!("number"==typeof n&&"number"==typeof o&&isNaN(n)&&isNaN(o)||n===o))&&u.push(i);if(0!==u.length){for(var a=e.__assign({},this.values),f=0,c=u;f<c.length;f++){var s=c[f];this.values[s]=r[s]}this.onValuesChange&&this.onValuesChange(this.values,a);for(var l=0,d=this.listeners;l<d.length;l++){var v=d[l],p=v[0],h=v[1];if(A(p,u)){var m=j(a,p);h(j(this.values,p),m)}}}},t}();exports.FiveCanvas=function(t){var r=t.width,n=t.height,o=c(),i=u.createRef(),a=e.__assign({width:r,height:n},l);return u.useLayoutEffect((function(){if(i.current&&o.renderer){if(null!==o.renderer.domElement.parentNode&&o.renderer.domElement.parentNode!==i.current)throw new Error("There are more than 2 fiveCanvas in this context.");o.renderer.domElement.parentNode!==i.current&&i.current.appendChild(o.renderer.domElement),o.camera.aspect=r/n,o.camera.updateProjectionMatrix(),o.renderer.setSize(r,n),o.needsRender=!0}}),[r,n,i.current]),u.createElement("div",{ref:i,style:a})},exports.INJECTION_PROPNAME="$five",exports.Store=N,exports.createFiveFeature=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return e},exports.createFiveProvider=function(t){return void 0===t&&(t={}),function(r){function o(o){var u,f=this;f=r.call(this,o)||this;var c=function(e){var t=void 0===e?{}:e,r=t.backgroundColor,n=void 0===r?1579548:r,o=t.backgroundAlpha,u=void 0===o?1:o,f=t.pixelRatio,c=void 0===f?1:f;if("undefined"!=typeof window){var s=a.shift();return s||((s=new i.WebGLRenderer({antialias:!1,alpha:!0})).outputEncoding=i.sRGBEncoding),s.setPixelRatio(c),s.setClearColor(n,u),s.autoClear=!0,s}}({pixelRatio:1===n.getViewportScale()?window.devicePixelRatio:1,backgroundAlpha:t.backgroundAlpha,backgroundColor:t.backgroundColor});return f.five=new n.Five(e.__assign({renderer:c},t)),(o.work||o.initialWork)&&f.five.load(o.work||o.initialWork,o.initialState,void 0,null===(u=o.initialUserAction)||void 0===u||u),f.five.on("load",(function(){var e;f.props.onWorkChange&&f.props.onWorkChange(null===(e=f.five)||void 0===e?void 0:e.work)})),f.five.on("stateChange",(function(e,t){f.props.onStateChange&&f.props.onStateChange(e,t)})),f.five.on("currentStateChange",(function(e,t){f.props.onCurrentStateChange&&f.props.onCurrentStateChange(e,t)})),f.five.on("error",(function(e){f.props.onError?f.props.onError(e):console.warn(e.message)})),f}return e.__extends(o,r),o.prototype.loadWork=function(e,t,r,n){if(void 0===n&&(n=!0),this.props.work)throw new Error("props 'work' is set in fiveProvider, if you need modify work internal, use 'initialWork' instead.");return this.five.load(e,t,r,n)},o.prototype.shouldComponentUpdate=function(e){var t,r;return e.work&&e.work!==(null===(t=this.five)||void 0===t?void 0:t.work)&&(null===(r=this.five)||void 0===r||r.load(e.work,e.initialState)),!0},o.prototype.componentWillUnmount=function(){var e;this.five&&(this.five.dispose(),(e=this.five.renderer)&&-1===a.indexOf(e)&&a.push(e),delete this.five)},o.prototype.render=function(){var e=this;return u.createElement(f.Provider,{value:{five:this.five,loadWork:function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return e.loadWork.apply(e,t)}}},this.props.children)},o}(u.Component)},exports.createStore=function(t){var r=u.createContext(null);return{useStore:function(t){var n=u.useContext(r);if(null===n)throw new Error("StoreProvider never found.");var o=u.useRef(!0),i=u.useState(n.getValues(t)),a=i[0],f=i[1],c=e.__spreadArray([n],t,!0);return u.useLayoutEffect((function(){return o.current?o.current=!1:f(n.getValues(t)),n.on(t,(function(e){return f(e)}))}),c),[a,u.useCallback((function(e){return n.setValues(t,e)}),c)]},useStoreSetter:function(t){var n=u.useContext(r);if(null===n)throw new Error("StoreProvider never found.");return u.useCallback((function(e){return n.setValues(t,e)}),e.__spreadArray([n],t,!0))},watchStore:function(t,n,o){var i=u.useContext(r);if(null===i)throw new Error("StoreProvider never found.");var a=e.__spreadArray([i],t,!0);void 0!==o&&(a=a.concat(o)),u.useLayoutEffect((function(){return i.on(t,n)}),a)},useStoreAction:function(n){var o=u.useContext(r);if(null===o)throw new Error("StoreProvider never found.");return u.useCallback((function(){for(var r=[],u=0;u<arguments.length;u++)r[u]=arguments[u];var i=t[n],a=i[0],f=i.slice(1),c=function(){return o.getValues(f)},s=function(e){return o.setValues(f,e)};return a.apply(void 0,e.__spreadArray([c,s],r,!1))}),[])},StoreProvider:function(t){function n(e){var r=t.call(this,e)||this;return r.store=new N(e.initialValue,(function(){for(var e,t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];r.props.onValuesChange&&(e=r.props).onValuesChange.apply(e,t)})),r}return e.__extends(n,t),n.prototype.shouldComponentUpdate=function(e){return e.children!==this.props.children},n.prototype.render=function(){return u.createElement(r.Provider,{value:this.store},this.props.children)},n}(u.Component)}},exports.unsafe__useFiveInstance=function(){return c()},exports.useFiveAction=function(){var e=c();return{updateCamera:u.useCallback((function(t,r){return e.updateCamera(t,r)}),[e]),initBasisLoader:u.useCallback((function(t){return e.initBasisLoader(t)}),[e]),getPixels:u.useCallback((function(t,r,n,o,u){return e.getPixels(t,r,n,o,u)}),[e]),render:u.useCallback((function(t){return e.render(t)}),[e]),needsRender:u.useCallback((function(){return e.needsRender=!0}),[e]),preloadPano:u.useCallback((function(t,r){return e.preloadPano(t,r)}),[e])}},exports.useFiveCameraDirection=function(){var e=c(),t=u.useState((function(){return m(e)})),r=t[0],n=t[1];return u.useLayoutEffect((function(){return e.on("cameraUpdate",(function(){return n(m(e))}))}),[e]),r},exports.useFiveCameraRaycaster=function(){var e=c(),t=u.useState((function(){return h(e)})),r=t[0],n=t[1];return u.useLayoutEffect((function(){return e.on("cameraUpdate",(function(){return n(h(e))}))}),[e]),r},exports.useFiveCurrentObserver=function(){var e=c(),t=u.useState((function(){return e.getCurrentState()})),r=t[0],n=t[1];return u.useLayoutEffect((function(){return e.on("currentStateChange",(function(){return n(e.getCurrentState())}))}),[e]),e.work?e.work.observers[r.panoIndex]:null},exports.useFiveCurrentState=function(){var e=c(),t=u.useState((function(){return e.getCurrentState()})),r=t[0],n=t[1],o=u.useCallback((function(t,r,n){void 0===r&&(r=!1),void 0===n&&(n=!0);var o="function"==typeof t?t(e.getCurrentState()):t;e.setState(o,r,n)}),[e]);return u.useLayoutEffect((function(){return e.on("currentStateChange",(function(){return n(e.getCurrentState())}))}),[e]),[r,o]},exports.useFiveEventCallback=function(e,t,r){var n=c(),o=[n,e];void 0!==r&&(o=o.concat(r)),u.useLayoutEffect((function(){return n.on(e,t)}),o)},exports.useFiveFloor=function(){var e=c(),t=u.useState(e.model.shownFloor),r=t[0],n=t[1],o=u.useState(e.model.floorLength),i=o[0],a=o[1],f=u.useCallback((function(t){"number"==typeof t?e.model.show(t):e.model.show()}),[e]);return u.useLayoutEffect((function(){var t=[];return t.push(e.on("modelShownFloorChange",(function(){return n(e.model.shownFloor)}))),t.push(e.on("modelLoaded",(function(){return a(e.model.floorLength)}))),function(){for(var e;e=t.shift();)e()}}),[e]),[r,i,f]},exports.useFiveHelper=function(){var e=c(),t=u.useState(e.helperVisible),r=t[0],n=t[1],o=u.useCallback((function(t){e.helperVisible=t}),[e]);return u.useLayoutEffect((function(){return e.on("helpersVisibleChange",(function(e){return n(e)}))}),[e]),[r,o]},exports.useFiveModelIntersectRaycaster=function(){var e=c();return u.useCallback((function(t){return e.model.intersectRaycaster(t)}),[e])},exports.useFiveModelReadyState=function(){var e=c(),t=u.useState((function(){return y(e)})),r=t[0],n=t[1];return u.useLayoutEffect((function(){return e.on("modelLoaded",(function(){return n(y(e))}))}),[e]),r},exports.useFiveProject2d=function(){var e=c(),t=u.useState((function(){return Symbol()}));t[0];var r=t[1];return u.useLayoutEffect((function(){return e.on("cameraUpdate",(function(){return r(Symbol())}))}),[e]),u.useCallback((function(t,r){return e.project2d(t,r)}),[e])},exports.useFiveScene=v,exports.useFiveSceneEffect=d,exports.useFiveState=function(){var e=c(),t=u.useState((function(){return p(e)})),r=t[0],n=t[1],o=u.useCallback((function(t,r,n){void 0===r&&(r=!1),void 0===n&&(n=!0);var o="function"==typeof t?t(e.getCurrentState()):t;e.setState(o,r,n)}),[e]);return u.useLayoutEffect((function(){return e.on("stateChange",(function(){return n(p(e))}))}),[e]),[r,o]},exports.useFiveWork=function(){var e=c(),t=s(),r=u.useState((function(){return e.work})),n=r[0],o=r[1];return u.useLayoutEffect((function(){return e.on("load",(function(){return o(e.work)}))}),[e]),[n,t]},exports.withFive=function(t){return function(r){return u.forwardRef((function(n,o){var a=c(),f=s(),l=function(e,t){return[g("unsafe__fiveInstance",t)?e:void 0]}(a,t)[0],d=function(t,r){var n=g("state",r),o=u.useState(Symbol()),i=o[0],a=o[1],f=u.useMemo((function(){if(n)return e.__assign({},t.state)}),[t,i]);return u.useLayoutEffect((function(){if(n)return t.on("stateChange",(function(){return a(Symbol())}))}),[t]),[f,i]}(a,t),v=d[0],p=d[1],h=function(e,t){var r=g("currentState",t),n=u.useState(Symbol()),o=n[0],i=n[1],a=u.useMemo((function(){if(r)return e.getCurrentState()}),[e,o]);return u.useLayoutEffect((function(){if(r)return e.on("currentStateChange",(function(){return i(Symbol())}))}),[e]),[a,o]}(a,t),m=h[0],y=h[1],j=function(e,t){var r=g("currentObserver",t),n=u.useState(Symbol()),o=n[0],i=n[1],a=u.useMemo((function(){if(r)return e.getCurrentState()}),[e,o]);return u.useLayoutEffect((function(){if(r)return e.on("currentStateChange",(function(){return i(Symbol())}))}),[e]),[a?e.work?e.work.observers[a.panoIndex]:null:void 0,o]}(a,t),A=j[0],N=j[1],U=function(e,t){var r=g("work",t),n=u.useState(Symbol()),o=n[0],i=n[1],a=u.useMemo((function(){if(r)return e.work}),[e,o]);return u.useLayoutEffect((function(){if(r)return e.on("load",(function(){return i(Symbol())}))}),[e]),[a,o]}(a,t),D=U[0],I=U[1],B=function(e,t){var r=g("model",t),n=u.useState(Symbol()),o=n[0],i=n[1],a=u.useMemo((function(){if(r)return e.model}),[e,o]);return u.useLayoutEffect((function(){if(r)return e.on("modelLoaded",(function(){return i(Symbol())}))}),[e]),[a,o]}(a,t),q=B[0],H=B[1],z=function(e,t){return[g("scene",t)?e.scene:void 0]}(a,t)[0],G=function(e,t){var r=g("cameraDirection",t),n=u.useState(Symbol()),o=n[0],a=n[1],f=u.useMemo((function(){if(r)return e.camera.getWorldDirection(new i.Vector3)}),[e,o]);return u.useLayoutEffect((function(){if(r)return e.on("cameraUpdate",(function(){return a(Symbol())}))}),[e]),[f,o]}(a,t),T=G[0],$=G[1],J=function(e,t){var r=g("cameraRaycaster",t),n=u.useState(Symbol()),o=n[0],a=n[1],f=u.useMemo((function(){if(r){var t=e.camera.getWorldDirection(new i.Vector3);return new i.Raycaster(e.camera.position,t)}}),[e,o]);return u.useLayoutEffect((function(){if(r)return e.on("cameraUpdate",(function(){return a(Symbol())}))}),[e]),[f,o]}(a,t),K=J[0],Q=J[1],X=function(e,t){var r=g("modelReadyState",t),n=u.useState(Symbol()),o=n[0],i=n[1],a=u.useMemo((function(){if(r)return e.model.empty?"Empty":"Loaded"}),[e,o]);return u.useLayoutEffect((function(){if(r)return e.on("modelLoaded",(function(){return i(Symbol())}))}),[e]),[a,o]}(a,t),Y=X[0],Z=X[1],ee=function(e,t){var r=g("shownFloor",t),n=u.useState(Symbol()),o=n[0],i=n[1],a=u.useMemo((function(){if(r)return e.model.shownFloor}),[e,o]);return u.useLayoutEffect((function(){if(r)return e.on("modelShownFloorChange",(function(){return i(Symbol())}))}),[e]),[a,o]}(a,t),te=ee[0],re=ee[1],ne=function(e,t){var r=g("totalFloorLength",t),n=u.useState(Symbol()),o=n[0],i=n[1],a=u.useMemo((function(){if(r)return e.model.hasFloors()}),[e,o]);return u.useLayoutEffect((function(){if(r)return e.on("modelLoaded",(function(){return i(Symbol())}))}),[e]),[a,o]}(a,t),oe=ne[0],ue=ne[1],ie=function(e,t){var r=g("helperVisible",t),n=u.useState(Symbol()),o=n[0],i=n[1],a=u.useMemo((function(){if(r)return e.helperVisible}),[e,o]);return u.useLayoutEffect((function(){if(r)return e.on("helpersVisibleChange",(function(){return i(Symbol())}))}),[e]),[a,o]}(a,t),ae=ie[0],fe=ie[1],ce=u.useMemo((function(){var e={};return S(e,{setState:b(a,t),loadWork:C(f,t),on:w(a,t),once:k(a,t),off:E(a,t),intersectRaycaster:x(a,t),project2d:L(a,t),updateCamera:F(a,t),initBasisLoader:_(a,t),getPixels:P(a,t),render:R(a,t),needsRender:V(a,t),preloadPano:M(a,t),showFloor:W(a,t),toggleHelperVisible:O(a,t)}),e}),[a,f]),se=u.useMemo((function(){var t=e.__assign({},ce);return S(t,{unsafe__fiveInstance:l,state:v,currentState:m,currentObserver:A,work:D,model:q,scene:z,cameraDirection:T,cameraRaycaster:K,modelReadyState:Y,shownFloor:te,totalFloorLength:oe,helperVisible:ae}),t}),[a,ce,p,y,N,I,H,$,Q,Z,re,ue,fe]);return u.createElement(r,e.__assign({ref:o,$five:se},n))}))}};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
const { program } = require("commander");
|
|
4
|
-
|
|
4
|
+
const staticify = require("../exporters/staticify");
|
|
5
5
|
|
|
6
6
|
program
|
|
7
7
|
.requiredOption("--work <work>", "work 的 json 文件")
|
|
@@ -9,11 +9,16 @@ program
|
|
|
9
9
|
.option("--shortPath", "简化路径 可选")
|
|
10
10
|
.option("--jsonp", "使用jsonp的方式加载文件 可选")
|
|
11
11
|
.option("--no-preview", "不生成预览文件")
|
|
12
|
+
.option("--template <template>", "html模版文件ejs 参数为 work_json, short_path, jsonp")
|
|
12
13
|
|
|
13
14
|
program.parse(process.argv);
|
|
14
15
|
|
|
15
16
|
async function main(program) {
|
|
16
|
-
|
|
17
|
+
let { work, output, shortPath, jsonp, preview, template } = program.opts();
|
|
18
|
+
console.log(template)
|
|
19
|
+
if (preview !== false && template) {
|
|
20
|
+
preview = template;
|
|
21
|
+
}
|
|
17
22
|
await staticify(work, output, shortPath, jsonp, preview);
|
|
18
23
|
}
|
|
19
24
|
|
package/server/index.js
CHANGED
package/sticker/index.js
CHANGED
package/umd/five-react.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/*! For license information please see five-react.js.LICENSE.txt */
|
|
2
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.FiveSDK_React=t():e.FiveSDK_React=t()}(self,(function(){return(()=>{var e={348:e=>{if(!("FiveSDK"in window))throw new Error('"FiveSDK" is not available. Please include "five" in your HTML.');e.exports=window.FiveSDK},751:e=>{if(!("React"in window))throw new Error('"React" is not available. Please include "react" in your HTML.');e.exports=window.React},438:e=>{if(!("THREE"in window))throw new Error('"THREE" is not available. Please include "three.js" in your HTML.');const t=Number(THREE.REVISION);if(t<115||t>117)throw new Error('"Five" needs "THREE.js" version between 125 - 117.');e.exports=window.THREE}},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var u=t[r]={exports:{}};return e[r](u,u.exports,n),u.exports}n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{"use strict";n.r(r),n.d(r,{FiveCanvas:()=>h,INJECTION_PROPNAME:()=>T,Store:()=>oe,createFiveFeature:()=>te,createFiveProvider:()=>v,createStore:()=>ue,unsafe__useFiveInstance:()=>y,useFiveAction:()=>L,useFiveCameraDirection:()=>V,useFiveCameraRaycaster:()=>x,useFiveCurrentObserver:()=>E,useFiveCurrentState:()=>C,useFiveEventCallback:()=>k,useFiveFloor:()=>_,useFiveHelper:()=>W,useFiveModelIntersectRaycaster:()=>O,useFiveModelReadyState:()=>M,useFiveProject2d:()=>F,useFiveScene:()=>S,useFiveSceneEffect:()=>m,useFiveState:()=>b,useFiveWork:()=>w,withFive:()=>ee});var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(t,n)};function t(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}var o=function(){return(o=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function u(e,t,n){if(n||2===arguments.length)for(var r,o=0,u=t.length;o<u;o++)!r&&o in t||(r||(r=Array.prototype.slice.call(t,0,o)),r[o]=t[o]);return e.concat(r||Array.prototype.slice.call(t))}Object.create,Object.create;var i=n(751),a=n(438),f=[],c=i.createContext(null);function s(){var e=i.useContext(c);if(!e)throw new Error("FiveProvider never found.");return e.five}function l(){var e=i.useContext(c);if(!e)throw new Error("FiveProvider never found.");return e.loadWork}var d=n(348);function v(e){return void 0===e&&(e={}),function(n){function r(t){var r,u=this;u=n.call(this,t)||this;var i=function(e){var t=void 0===e?{}:e,n=t.backgroundColor,r=void 0===n?1579548:n,o=t.backgroundAlpha,u=void 0===o?1:o,i=t.pixelRatio,c=void 0===i?1:i;if("undefined"!=typeof window){var s=f.shift();return s||((s=new a.WebGLRenderer({antialias:!1,alpha:!0})).outputEncoding=a.sRGBEncoding),s.setPixelRatio(c),s.setClearColor(r,u),s.autoClear=!0,s}}({pixelRatio:1===(0,d.getViewportScale)()?window.devicePixelRatio:1});return u.five=new d.Five(o({renderer:i},e)),(t.work||t.initialWork)&&u.five.load(t.work||t.initialWork,t.initialState,void 0,null===(r=t.initialUserAction)||void 0===r||r),u.five.on("load",(function(){var e;u.props.onWorkChange&&u.props.onWorkChange(null===(e=u.five)||void 0===e?void 0:e.work)})),u.five.on("stateChange",(function(e,t){u.props.onStateChange&&u.props.onStateChange(e,t)})),u.five.on("currentStateChange",(function(e,t){u.props.onCurrentStateChange&&u.props.onCurrentStateChange(e,t)})),u.five.on("error",(function(e){u.props.onError?u.props.onError(e):console.warn(e.message)})),u}return t(r,n),r.prototype.loadWork=function(e,t,n,r){if(void 0===r&&(r=!0),this.props.work)throw new Error("props 'work' is set in fiveProvider, if you need modify work internal, use 'initialWork' instead.");return this.five.load(e,t,n,r)},r.prototype.shouldComponentUpdate=function(e){var t,n;return e.work&&e.work!==(null===(t=this.five)||void 0===t?void 0:t.work)&&(null===(n=this.five)||void 0===n||n.load(e.work,e.initialState)),!0},r.prototype.componentWillUnmount=function(){var e;this.five&&(this.five.dispose(),(e=this.five.renderer)&&-1===f.indexOf(e)&&f.push(e),delete this.five)},r.prototype.render=function(){var e=this;return i.createElement(c.Provider,{value:{five:this.five,loadWork:function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.loadWork.apply(e,t)}}},this.props.children)},r}(i.Component)}var p={display:"inline-block",overflow:"hidden"},h=function(e){var t=e.width,n=e.height,r=s(),u=i.createRef(),a=o({width:t,height:n},p);return i.useLayoutEffect((function(){if(u.current&&r.renderer){if(null!==r.renderer.domElement.parentNode&&r.renderer.domElement.parentNode!==u.current)throw new Error("There are more than 2 fiveCanvas in this context.");r.renderer.domElement.parentNode!==u.current&&u.current.appendChild(r.renderer.domElement),r.camera.aspect=t/n,r.camera.updateProjectionMatrix(),r.renderer.setSize(t,n),r.needsRender=!0}}),[t,n,u.current]),i.createElement("div",{ref:u,style:a})};function y(){return s()}function m(e,t){var n=s(),r=[n];void 0!==t&&(r=r.concat(t)),i.useLayoutEffect((function(){return e(n.scene)}),r)}var S=m;function w(){var e=s(),t=l(),n=i.useState((function(){return e.work})),r=n[0],o=n[1];return i.useLayoutEffect((function(){return e.on("load",(function(){return o(e.work)}))}),[e]),[r,t]}function g(e){return o({},e.state)}function b(){var e=s(),t=i.useState((function(){return g(e)})),n=t[0],r=t[1],o=i.useCallback((function(t,n,r){void 0===n&&(n=!1),void 0===r&&(r=!0);var o="function"==typeof t?t(e.getCurrentState()):t;e.setState(o,n,r)}),[e]);return i.useLayoutEffect((function(){return e.on("stateChange",(function(){return r(g(e))}))}),[e]),[n,o]}function C(){var e=s(),t=i.useState((function(){return e.getCurrentState()})),n=t[0],r=t[1],o=i.useCallback((function(t,n,r){void 0===n&&(n=!1),void 0===r&&(r=!0);var o="function"==typeof t?t(e.getCurrentState()):t;e.setState(o,n,r)}),[e]);return i.useLayoutEffect((function(){return e.on("currentStateChange",(function(){return r(e.getCurrentState())}))}),[e]),[n,o]}function E(){var e=s(),t=i.useState((function(){return e.getCurrentState()})),n=t[0],r=t[1];return i.useLayoutEffect((function(){return e.on("currentStateChange",(function(){return r(e.getCurrentState())}))}),[e]),e.work?e.work.observers[n.panoIndex]:null}function k(e,t,n){var r=s(),o=[r,e];void 0!==n&&(o=o.concat(n)),i.useLayoutEffect((function(){return r.on(e,t)}),o)}function L(){var e=s();return{updateCamera:i.useCallback((function(t,n){return e.updateCamera(t,n)}),[e]),initBasisLoader:i.useCallback((function(t){return e.initBasisLoader(t)}),[e]),getPixels:i.useCallback((function(t,n,r,o,u){return e.getPixels(t,n,r,o,u)}),[e]),render:i.useCallback((function(t){return e.render(t)}),[e]),needsRender:i.useCallback((function(){return e.needsRender=!0}),[e]),preloadPano:i.useCallback((function(t,n){return e.preloadPano(t,n)}),[e])}}function F(){var e=s(),t=i.useState((function(){return Symbol()})),n=(t[0],t[1]);return i.useLayoutEffect((function(){return e.on("cameraUpdate",(function(){return n(Symbol())}))}),[e]),i.useCallback((function(t,n){return e.project2d(t,n)}),[e])}function R(e){var t=e.camera.getWorldDirection(new a.Vector3);return new a.Raycaster(e.camera.position,t)}function x(){var e=s(),t=i.useState((function(){return R(e)})),n=t[0],r=t[1];return i.useLayoutEffect((function(){return e.on("cameraUpdate",(function(){return r(R(e))}))}),[e]),n}function P(e){return e.camera.getWorldDirection(new a.Vector3)}function V(){var e=s(),t=i.useState((function(){return P(e)})),n=t[0],r=t[1];return i.useLayoutEffect((function(){return e.on("cameraUpdate",(function(){return r(P(e))}))}),[e]),n}function O(){var e=s();return i.useCallback((function(t){return e.model.intersectRaycaster(t)}),[e])}function j(e){return e.model.empty?"Empty":"Loaded"}function M(){var e=s(),t=i.useState((function(){return j(e)})),n=t[0],r=t[1];return i.useLayoutEffect((function(){return e.on("modelLoaded",(function(){return r(j(e))}))}),[e]),n}function _(){var e=s(),t=i.useState(e.model.shownFloor),n=t[0],r=t[1],o=i.useState(e.model.floorLength),u=o[0],a=o[1],f=i.useCallback((function(t){"number"==typeof t?e.model.show(t):e.model.show()}),[e]);return i.useLayoutEffect((function(){var t=[];return t.push(e.on("modelShownFloorChange",(function(){return r(e.model.shownFloor)}))),t.push(e.on("modelLoaded",(function(){return a(e.model.floorLength)}))),function(){for(var e;e=t.shift();)e()}}),[e]),[n,u,f]}function W(){var e=s(),t=i.useState(e.helperVisible),n=t[0],r=t[1],o=i.useCallback((function(t){e.helperVisible=t}),[e]);return i.useLayoutEffect((function(){return e.on("helpersVisibleChange",(function(e){return r(e)}))}),[e]),[n,o]}var T="$five";function D(e,t){return t.indexOf(e)>=0}function N(e,t){for(var n=0,r=Object.keys(t);n<r.length;n++){var o=r[n];void 0!==t[o]&&(e[o]=t[o])}}function H(e,t){if(D("loadWork",t))return e}function I(e,t){if(D("setState",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.setState.apply(e,t)}}function U(e,t){if(D("on",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.on.apply(e,t)}}function A(e,t){if(D("on",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.once.apply(e,t)}}function B(e,t){if(D("off",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.off.apply(e,t)}}function K(e,t){if(D("intersectRaycaster",t))return function(){for(var t,n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];return(t=e.model).intersectRaycaster.apply(t,n)}}function G(e,t){if(D("project2d",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.project2d.apply(e,t)}}function $(e,t){if(D("updateCamera",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.updateCamera.apply(e,t)}}function z(e,t){if(D("initBasisLoader",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.initBasisLoader.apply(e,t)}}function J(e,t){if(D("getPixels",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.getPixels.apply(e,t)}}function q(e,t){if(D("render",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.render.apply(e,t)}}function Q(e,t){if(D("needsRender",t))return function(){e.needsRender=!0}}function X(e,t){if(D("preloadPano",t))return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e.preloadPano.apply(e,t)}}function Y(e,t){if(D("showFloor",t))return function(t){"number"==typeof t?e.model.show(t):e.model.show()}}function Z(e,t){if(D("toggleHelperVisible",t))return function(t){e.helperVisible=t}}function ee(e){return function(t){return i.forwardRef((function(n,r){var u=s(),f=l(),c=function(e,t){return[D("unsafe__fiveInstance",t)?e:void 0]}(u,e)[0],d=function(e,t){var n=D("state",t),r=i.useState(Symbol()),u=r[0],a=r[1],f=i.useMemo((function(){if(n)return o({},e.state)}),[e,u]);return i.useLayoutEffect((function(){if(n)return e.on("stateChange",(function(){return a(Symbol())}))}),[e]),[f,u]}(u,e),v=d[0],p=d[1],h=function(e,t){var n=D("currentState",t),r=i.useState(Symbol()),o=r[0],u=r[1],a=i.useMemo((function(){if(n)return e.getCurrentState()}),[e,o]);return i.useLayoutEffect((function(){if(n)return e.on("currentStateChange",(function(){return u(Symbol())}))}),[e]),[a,o]}(u,e),y=h[0],m=h[1],S=function(e,t){var n=D("currentObserver",t),r=i.useState(Symbol()),o=r[0],u=r[1],a=i.useMemo((function(){if(n)return e.getCurrentState()}),[e,o]);return i.useLayoutEffect((function(){if(n)return e.on("currentStateChange",(function(){return u(Symbol())}))}),[e]),[a?e.work?e.work.observers[a.panoIndex]:null:void 0,o]}(u,e),w=S[0],g=S[1],b=function(e,t){var n=D("work",t),r=i.useState(Symbol()),o=r[0],u=r[1],a=i.useMemo((function(){if(n)return e.work}),[e,o]);return i.useLayoutEffect((function(){if(n)return e.on("load",(function(){return u(Symbol())}))}),[e]),[a,o]}(u,e),C=b[0],E=b[1],k=function(e,t){var n=D("model",t),r=i.useState(Symbol()),o=r[0],u=r[1],a=i.useMemo((function(){if(n)return e.model}),[e,o]);return i.useLayoutEffect((function(){if(n)return e.on("modelLoaded",(function(){return u(Symbol())}))}),[e]),[a,o]}(u,e),L=k[0],F=k[1],R=function(e,t){return[D("scene",t)?e.scene:void 0]}(u,e)[0],x=function(e,t){var n=D("cameraDirection",t),r=i.useState(Symbol()),o=r[0],u=r[1],f=i.useMemo((function(){if(n)return e.camera.getWorldDirection(new a.Vector3)}),[e,o]);return i.useLayoutEffect((function(){if(n)return e.on("cameraUpdate",(function(){return u(Symbol())}))}),[e]),[f,o]}(u,e),P=x[0],V=x[1],O=function(e,t){var n=D("cameraRaycaster",t),r=i.useState(Symbol()),o=r[0],u=r[1],f=i.useMemo((function(){if(n){var t=e.camera.getWorldDirection(new a.Vector3);return new a.Raycaster(e.camera.position,t)}}),[e,o]);return i.useLayoutEffect((function(){if(n)return e.on("cameraUpdate",(function(){return u(Symbol())}))}),[e]),[f,o]}(u,e),j=O[0],M=O[1],_=function(e,t){var n=D("modelReadyState",t),r=i.useState(Symbol()),o=r[0],u=r[1],a=i.useMemo((function(){if(n)return e.model.empty?"Empty":"Loaded"}),[e,o]);return i.useLayoutEffect((function(){if(n)return e.on("modelLoaded",(function(){return u(Symbol())}))}),[e]),[a,o]}(u,e),W=_[0],T=_[1],ee=function(e,t){var n=D("shownFloor",t),r=i.useState(Symbol()),o=r[0],u=r[1],a=i.useMemo((function(){if(n)return e.model.shownFloor}),[e,o]);return i.useLayoutEffect((function(){if(n)return e.on("modelShownFloorChange",(function(){return u(Symbol())}))}),[e]),[a,o]}(u,e),te=ee[0],ne=ee[1],re=function(e,t){var n=D("totalFloorLength",t),r=i.useState(Symbol()),o=r[0],u=r[1],a=i.useMemo((function(){if(n)return e.model.hasFloors()}),[e,o]);return i.useLayoutEffect((function(){if(n)return e.on("modelLoaded",(function(){return u(Symbol())}))}),[e]),[a,o]}(u,e),oe=re[0],ue=re[1],ie=function(e,t){var n=D("helperVisible",t),r=i.useState(Symbol()),o=r[0],u=r[1],a=i.useMemo((function(){if(n)return e.helperVisible}),[e,o]);return i.useLayoutEffect((function(){if(n)return e.on("helpersVisibleChange",(function(){return u(Symbol())}))}),[e]),[a,o]}(u,e),ae=ie[0],fe=ie[1],ce=i.useMemo((function(){var t={};return N(t,{setState:I(u,e),loadWork:H(f,e),on:U(u,e),once:A(u,e),off:B(u,e),intersectRaycaster:K(u,e),project2d:G(u,e),updateCamera:$(u,e),initBasisLoader:z(u,e),getPixels:J(u,e),render:q(u,e),needsRender:Q(u,e),preloadPano:X(u,e),showFloor:Y(u,e),toggleHelperVisible:Z(u,e)}),t}),[u,f]),se=i.useMemo((function(){var e=o({},ce);return N(e,{unsafe__fiveInstance:c,state:v,currentState:y,currentObserver:w,work:C,model:L,scene:R,cameraDirection:P,cameraRaycaster:j,modelReadyState:W,shownFloor:te,totalFloorLength:oe,helperVisible:ae}),e}),[u,ce,p,m,g,E,F,V,M,T,ne,ue,fe]);return i.createElement(t,o({ref:r,$five:se},n))}))}}function te(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return e}function ne(e,t){for(var n={},r=t.length,o=-1;++o<r;){var u=t[o];u in e&&(n[u]=e[u])}return n}function re(e,t){for(var n=0;n<e.length;n++)for(var r=0;r<t.length;r++)if(e[n]===t[r])return!0;return!1}var oe=function(){function e(e,t){this.values=e,this.listeners=[],this.onValuesChange=t}return e.prototype.on=function(e,t){var n=this,r=[e,t];return this.listeners.push(r),function(){var e=n.listeners.indexOf(r);e>=0&&n.listeners.splice(e,1)}},e.prototype.getValues=function(e){return ne(this.values,e)},e.prototype.setValues=function(e,t){var n,r,u=[];for(var i in t)e.indexOf(i)>=0&&(n=t[i],r=this.values[i],!("number"==typeof n&&"number"==typeof r&&isNaN(n)&&isNaN(r)||n===r))&&u.push(i);if(0!==u.length){for(var a=o({},this.values),f=0,c=u;f<c.length;f++){var s=c[f];this.values[s]=t[s]}this.onValuesChange&&this.onValuesChange(this.values,a);for(var l=0,d=this.listeners;l<d.length;l++){var v=d[l],p=v[0],h=v[1];if(re(p,u)){var y=ne(a,p);h(ne(this.values,p),y)}}}},e}();function ue(e){var n=i.createContext(null);return{useStore:function(e){var t=i.useContext(n);if(null===t)throw new Error("StoreProvider never found.");var r=i.useRef(!0),o=i.useState(t.getValues(e)),a=o[0],f=o[1],c=u([t],e,!0);return i.useLayoutEffect((function(){return r.current?r.current=!1:f(t.getValues(e)),t.on(e,(function(e){return f(e)}))}),c),[a,i.useCallback((function(n){return t.setValues(e,n)}),c)]},useStoreSetter:function(e){var t=i.useContext(n);if(null===t)throw new Error("StoreProvider never found.");return i.useCallback((function(n){return t.setValues(e,n)}),u([t],e,!0))},watchStore:function(e,t,r){var o=i.useContext(n);if(null===o)throw new Error("StoreProvider never found.");var a=u([o],e,!0);void 0!==r&&(a=a.concat(r)),i.useLayoutEffect((function(){return o.on(e,t)}),a)},useStoreAction:function(t){var r=i.useContext(n);if(null===r)throw new Error("StoreProvider never found.");return i.useCallback((function(){for(var n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];var i=e[t],a=i[0],f=i.slice(1),c=function(){return r.getValues(f)},s=function(e){return r.setValues(f,e)};return a.apply(void 0,u([c,s],n,!1))}),[])},StoreProvider:function(e){function r(t){var n=e.call(this,t)||this;return n.store=new oe(t.initialValue,(function(){for(var e,t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];n.props.onValuesChange&&(e=n.props).onValuesChange.apply(e,t)})),n}return t(r,e),r.prototype.shouldComponentUpdate=function(e){return e.children!==this.props.children},r.prototype.render=function(){return i.createElement(n.Provider,{value:this.store},this.props.children)},r}(i.Component)}}})(),r})()}));
|
|
2
|
+
!function(e,n){"object"==typeof exports&&"object"==typeof module?module.exports=n():"function"==typeof define&&define.amd?define([],n):"object"==typeof exports?exports.FiveSDK_React=n():e.FiveSDK_React=n()}(self,(function(){return(()=>{var e={348:e=>{if(!("FiveSDK"in window))throw new Error('"FiveSDK" is not available. Please include "five" in your HTML.');e.exports=window.FiveSDK},751:e=>{if(!("React"in window))throw new Error('"React" is not available. Please include "react" in your HTML.');e.exports=window.React},438:e=>{if(!("THREE"in window))throw new Error('"THREE" is not available. Please include "three.js" in your HTML.');const n=Number(THREE.REVISION);if(n<115||n>117)throw new Error('"Five" needs "THREE.js" version between 125 - 117.');e.exports=window.THREE}},n={};function t(r){var o=n[r];if(void 0!==o)return o.exports;var u=n[r]={exports:{}};return e[r](u,u.exports,t),u.exports}t.d=(e,n)=>{for(var r in n)t.o(n,r)&&!t.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:n[r]})},t.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),t.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{"use strict";t.r(r),t.d(r,{FiveCanvas:()=>h,INJECTION_PROPNAME:()=>T,Store:()=>oe,createFiveFeature:()=>ne,createFiveProvider:()=>v,createStore:()=>ue,unsafe__useFiveInstance:()=>y,useFiveAction:()=>L,useFiveCameraDirection:()=>V,useFiveCameraRaycaster:()=>x,useFiveCurrentObserver:()=>E,useFiveCurrentState:()=>C,useFiveEventCallback:()=>k,useFiveFloor:()=>_,useFiveHelper:()=>W,useFiveModelIntersectRaycaster:()=>O,useFiveModelReadyState:()=>M,useFiveProject2d:()=>F,useFiveScene:()=>S,useFiveSceneEffect:()=>m,useFiveState:()=>b,useFiveWork:()=>g,withFive:()=>ee});var e=function(n,t){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,n){e.__proto__=n}||function(e,n){for(var t in n)Object.prototype.hasOwnProperty.call(n,t)&&(e[t]=n[t])})(n,t)};function n(n,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=n}e(n,t),n.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var o=function(){return(o=Object.assign||function(e){for(var n,t=1,r=arguments.length;t<r;t++)for(var o in n=arguments[t])Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o]);return e}).apply(this,arguments)};function u(e,n,t){if(t||2===arguments.length)for(var r,o=0,u=n.length;o<u;o++)!r&&o in n||(r||(r=Array.prototype.slice.call(n,0,o)),r[o]=n[o]);return e.concat(r||Array.prototype.slice.call(n))}Object.create,Object.create;var i=t(751),a=t(438),f=[],c=i.createContext(null);function s(){var e=i.useContext(c);if(!e)throw new Error("FiveProvider never found.");return e.five}function l(){var e=i.useContext(c);if(!e)throw new Error("FiveProvider never found.");return e.loadWork}var d=t(348);function v(e){return void 0===e&&(e={}),function(t){function r(n){var r,u=this;u=t.call(this,n)||this;var i=function(e){var n=void 0===e?{}:e,t=n.backgroundColor,r=void 0===t?1579548:t,o=n.backgroundAlpha,u=void 0===o?1:o,i=n.pixelRatio,c=void 0===i?1:i;if("undefined"!=typeof window){var s=f.shift();return s||((s=new a.WebGLRenderer({antialias:!1,alpha:!0})).outputEncoding=a.sRGBEncoding),s.setPixelRatio(c),s.setClearColor(r,u),s.autoClear=!0,s}}({pixelRatio:1===(0,d.getViewportScale)()?window.devicePixelRatio:1,backgroundAlpha:e.backgroundAlpha,backgroundColor:e.backgroundColor});return u.five=new d.Five(o({renderer:i},e)),(n.work||n.initialWork)&&u.five.load(n.work||n.initialWork,n.initialState,void 0,null===(r=n.initialUserAction)||void 0===r||r),u.five.on("load",(function(){var e;u.props.onWorkChange&&u.props.onWorkChange(null===(e=u.five)||void 0===e?void 0:e.work)})),u.five.on("stateChange",(function(e,n){u.props.onStateChange&&u.props.onStateChange(e,n)})),u.five.on("currentStateChange",(function(e,n){u.props.onCurrentStateChange&&u.props.onCurrentStateChange(e,n)})),u.five.on("error",(function(e){u.props.onError?u.props.onError(e):console.warn(e.message)})),u}return n(r,t),r.prototype.loadWork=function(e,n,t,r){if(void 0===r&&(r=!0),this.props.work)throw new Error("props 'work' is set in fiveProvider, if you need modify work internal, use 'initialWork' instead.");return this.five.load(e,n,t,r)},r.prototype.shouldComponentUpdate=function(e){var n,t;return e.work&&e.work!==(null===(n=this.five)||void 0===n?void 0:n.work)&&(null===(t=this.five)||void 0===t||t.load(e.work,e.initialState)),!0},r.prototype.componentWillUnmount=function(){var e;this.five&&(this.five.dispose(),(e=this.five.renderer)&&-1===f.indexOf(e)&&f.push(e),delete this.five)},r.prototype.render=function(){var e=this;return i.createElement(c.Provider,{value:{five:this.five,loadWork:function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return e.loadWork.apply(e,n)}}},this.props.children)},r}(i.Component)}var p={display:"inline-block",overflow:"hidden"},h=function(e){var n=e.width,t=e.height,r=s(),u=i.createRef(),a=o({width:n,height:t},p);return i.useLayoutEffect((function(){if(u.current&&r.renderer){if(null!==r.renderer.domElement.parentNode&&r.renderer.domElement.parentNode!==u.current)throw new Error("There are more than 2 fiveCanvas in this context.");r.renderer.domElement.parentNode!==u.current&&u.current.appendChild(r.renderer.domElement),r.camera.aspect=n/t,r.camera.updateProjectionMatrix(),r.renderer.setSize(n,t),r.needsRender=!0}}),[n,t,u.current]),i.createElement("div",{ref:u,style:a})};function y(){return s()}function m(e,n){var t=s(),r=[t];void 0!==n&&(r=r.concat(n)),i.useLayoutEffect((function(){return e(t.scene)}),r)}var S=m;function g(){var e=s(),n=l(),t=i.useState((function(){return e.work})),r=t[0],o=t[1];return i.useLayoutEffect((function(){return e.on("load",(function(){return o(e.work)}))}),[e]),[r,n]}function w(e){return o({},e.state)}function b(){var e=s(),n=i.useState((function(){return w(e)})),t=n[0],r=n[1],o=i.useCallback((function(n,t,r){void 0===t&&(t=!1),void 0===r&&(r=!0);var o="function"==typeof n?n(e.getCurrentState()):n;e.setState(o,t,r)}),[e]);return i.useLayoutEffect((function(){return e.on("stateChange",(function(){return r(w(e))}))}),[e]),[t,o]}function C(){var e=s(),n=i.useState((function(){return e.getCurrentState()})),t=n[0],r=n[1],o=i.useCallback((function(n,t,r){void 0===t&&(t=!1),void 0===r&&(r=!0);var o="function"==typeof n?n(e.getCurrentState()):n;e.setState(o,t,r)}),[e]);return i.useLayoutEffect((function(){return e.on("currentStateChange",(function(){return r(e.getCurrentState())}))}),[e]),[t,o]}function E(){var e=s(),n=i.useState((function(){return e.getCurrentState()})),t=n[0],r=n[1];return i.useLayoutEffect((function(){return e.on("currentStateChange",(function(){return r(e.getCurrentState())}))}),[e]),e.work?e.work.observers[t.panoIndex]:null}function k(e,n,t){var r=s(),o=[r,e];void 0!==t&&(o=o.concat(t)),i.useLayoutEffect((function(){return r.on(e,n)}),o)}function L(){var e=s();return{updateCamera:i.useCallback((function(n,t){return e.updateCamera(n,t)}),[e]),initBasisLoader:i.useCallback((function(n){return e.initBasisLoader(n)}),[e]),getPixels:i.useCallback((function(n,t,r,o,u){return e.getPixels(n,t,r,o,u)}),[e]),render:i.useCallback((function(n){return e.render(n)}),[e]),needsRender:i.useCallback((function(){return e.needsRender=!0}),[e]),preloadPano:i.useCallback((function(n,t){return e.preloadPano(n,t)}),[e])}}function F(){var e=s(),n=i.useState((function(){return Symbol()})),t=(n[0],n[1]);return i.useLayoutEffect((function(){return e.on("cameraUpdate",(function(){return t(Symbol())}))}),[e]),i.useCallback((function(n,t){return e.project2d(n,t)}),[e])}function R(e){var n=e.camera.getWorldDirection(new a.Vector3);return new a.Raycaster(e.camera.position,n)}function x(){var e=s(),n=i.useState((function(){return R(e)})),t=n[0],r=n[1];return i.useLayoutEffect((function(){return e.on("cameraUpdate",(function(){return r(R(e))}))}),[e]),t}function P(e){return e.camera.getWorldDirection(new a.Vector3)}function V(){var e=s(),n=i.useState((function(){return P(e)})),t=n[0],r=n[1];return i.useLayoutEffect((function(){return e.on("cameraUpdate",(function(){return r(P(e))}))}),[e]),t}function O(){var e=s();return i.useCallback((function(n){return e.model.intersectRaycaster(n)}),[e])}function j(e){return e.model.empty?"Empty":"Loaded"}function M(){var e=s(),n=i.useState((function(){return j(e)})),t=n[0],r=n[1];return i.useLayoutEffect((function(){return e.on("modelLoaded",(function(){return r(j(e))}))}),[e]),t}function _(){var e=s(),n=i.useState(e.model.shownFloor),t=n[0],r=n[1],o=i.useState(e.model.floorLength),u=o[0],a=o[1],f=i.useCallback((function(n){"number"==typeof n?e.model.show(n):e.model.show()}),[e]);return i.useLayoutEffect((function(){var n=[];return n.push(e.on("modelShownFloorChange",(function(){return r(e.model.shownFloor)}))),n.push(e.on("modelLoaded",(function(){return a(e.model.floorLength)}))),function(){for(var e;e=n.shift();)e()}}),[e]),[t,u,f]}function W(){var e=s(),n=i.useState(e.helperVisible),t=n[0],r=n[1],o=i.useCallback((function(n){e.helperVisible=n}),[e]);return i.useLayoutEffect((function(){return e.on("helpersVisibleChange",(function(e){return r(e)}))}),[e]),[t,o]}var T="$five";function D(e,n){return n.indexOf(e)>=0}function N(e,n){for(var t=0,r=Object.keys(n);t<r.length;t++){var o=r[t];void 0!==n[o]&&(e[o]=n[o])}}function H(e,n){if(D("loadWork",n))return e}function A(e,n){if(D("setState",n))return function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return e.setState.apply(e,n)}}function I(e,n){if(D("on",n))return function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return e.on.apply(e,n)}}function U(e,n){if(D("on",n))return function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return e.once.apply(e,n)}}function B(e,n){if(D("off",n))return function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return e.off.apply(e,n)}}function K(e,n){if(D("intersectRaycaster",n))return function(){for(var n,t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return(n=e.model).intersectRaycaster.apply(n,t)}}function G(e,n){if(D("project2d",n))return function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return e.project2d.apply(e,n)}}function $(e,n){if(D("updateCamera",n))return function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return e.updateCamera.apply(e,n)}}function z(e,n){if(D("initBasisLoader",n))return function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return e.initBasisLoader.apply(e,n)}}function J(e,n){if(D("getPixels",n))return function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return e.getPixels.apply(e,n)}}function q(e,n){if(D("render",n))return function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return e.render.apply(e,n)}}function Q(e,n){if(D("needsRender",n))return function(){e.needsRender=!0}}function X(e,n){if(D("preloadPano",n))return function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return e.preloadPano.apply(e,n)}}function Y(e,n){if(D("showFloor",n))return function(n){"number"==typeof n?e.model.show(n):e.model.show()}}function Z(e,n){if(D("toggleHelperVisible",n))return function(n){e.helperVisible=n}}function ee(e){return function(n){return i.forwardRef((function(t,r){var u=s(),f=l(),c=function(e,n){return[D("unsafe__fiveInstance",n)?e:void 0]}(u,e)[0],d=function(e,n){var t=D("state",n),r=i.useState(Symbol()),u=r[0],a=r[1],f=i.useMemo((function(){if(t)return o({},e.state)}),[e,u]);return i.useLayoutEffect((function(){if(t)return e.on("stateChange",(function(){return a(Symbol())}))}),[e]),[f,u]}(u,e),v=d[0],p=d[1],h=function(e,n){var t=D("currentState",n),r=i.useState(Symbol()),o=r[0],u=r[1],a=i.useMemo((function(){if(t)return e.getCurrentState()}),[e,o]);return i.useLayoutEffect((function(){if(t)return e.on("currentStateChange",(function(){return u(Symbol())}))}),[e]),[a,o]}(u,e),y=h[0],m=h[1],S=function(e,n){var t=D("currentObserver",n),r=i.useState(Symbol()),o=r[0],u=r[1],a=i.useMemo((function(){if(t)return e.getCurrentState()}),[e,o]);return i.useLayoutEffect((function(){if(t)return e.on("currentStateChange",(function(){return u(Symbol())}))}),[e]),[a?e.work?e.work.observers[a.panoIndex]:null:void 0,o]}(u,e),g=S[0],w=S[1],b=function(e,n){var t=D("work",n),r=i.useState(Symbol()),o=r[0],u=r[1],a=i.useMemo((function(){if(t)return e.work}),[e,o]);return i.useLayoutEffect((function(){if(t)return e.on("load",(function(){return u(Symbol())}))}),[e]),[a,o]}(u,e),C=b[0],E=b[1],k=function(e,n){var t=D("model",n),r=i.useState(Symbol()),o=r[0],u=r[1],a=i.useMemo((function(){if(t)return e.model}),[e,o]);return i.useLayoutEffect((function(){if(t)return e.on("modelLoaded",(function(){return u(Symbol())}))}),[e]),[a,o]}(u,e),L=k[0],F=k[1],R=function(e,n){return[D("scene",n)?e.scene:void 0]}(u,e)[0],x=function(e,n){var t=D("cameraDirection",n),r=i.useState(Symbol()),o=r[0],u=r[1],f=i.useMemo((function(){if(t)return e.camera.getWorldDirection(new a.Vector3)}),[e,o]);return i.useLayoutEffect((function(){if(t)return e.on("cameraUpdate",(function(){return u(Symbol())}))}),[e]),[f,o]}(u,e),P=x[0],V=x[1],O=function(e,n){var t=D("cameraRaycaster",n),r=i.useState(Symbol()),o=r[0],u=r[1],f=i.useMemo((function(){if(t){var n=e.camera.getWorldDirection(new a.Vector3);return new a.Raycaster(e.camera.position,n)}}),[e,o]);return i.useLayoutEffect((function(){if(t)return e.on("cameraUpdate",(function(){return u(Symbol())}))}),[e]),[f,o]}(u,e),j=O[0],M=O[1],_=function(e,n){var t=D("modelReadyState",n),r=i.useState(Symbol()),o=r[0],u=r[1],a=i.useMemo((function(){if(t)return e.model.empty?"Empty":"Loaded"}),[e,o]);return i.useLayoutEffect((function(){if(t)return e.on("modelLoaded",(function(){return u(Symbol())}))}),[e]),[a,o]}(u,e),W=_[0],T=_[1],ee=function(e,n){var t=D("shownFloor",n),r=i.useState(Symbol()),o=r[0],u=r[1],a=i.useMemo((function(){if(t)return e.model.shownFloor}),[e,o]);return i.useLayoutEffect((function(){if(t)return e.on("modelShownFloorChange",(function(){return u(Symbol())}))}),[e]),[a,o]}(u,e),ne=ee[0],te=ee[1],re=function(e,n){var t=D("totalFloorLength",n),r=i.useState(Symbol()),o=r[0],u=r[1],a=i.useMemo((function(){if(t)return e.model.hasFloors()}),[e,o]);return i.useLayoutEffect((function(){if(t)return e.on("modelLoaded",(function(){return u(Symbol())}))}),[e]),[a,o]}(u,e),oe=re[0],ue=re[1],ie=function(e,n){var t=D("helperVisible",n),r=i.useState(Symbol()),o=r[0],u=r[1],a=i.useMemo((function(){if(t)return e.helperVisible}),[e,o]);return i.useLayoutEffect((function(){if(t)return e.on("helpersVisibleChange",(function(){return u(Symbol())}))}),[e]),[a,o]}(u,e),ae=ie[0],fe=ie[1],ce=i.useMemo((function(){var n={};return N(n,{setState:A(u,e),loadWork:H(f,e),on:I(u,e),once:U(u,e),off:B(u,e),intersectRaycaster:K(u,e),project2d:G(u,e),updateCamera:$(u,e),initBasisLoader:z(u,e),getPixels:J(u,e),render:q(u,e),needsRender:Q(u,e),preloadPano:X(u,e),showFloor:Y(u,e),toggleHelperVisible:Z(u,e)}),n}),[u,f]),se=i.useMemo((function(){var e=o({},ce);return N(e,{unsafe__fiveInstance:c,state:v,currentState:y,currentObserver:g,work:C,model:L,scene:R,cameraDirection:P,cameraRaycaster:j,modelReadyState:W,shownFloor:ne,totalFloorLength:oe,helperVisible:ae}),e}),[u,ce,p,m,w,E,F,V,M,T,te,ue,fe]);return i.createElement(n,o({ref:r,$five:se},t))}))}}function ne(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return e}function te(e,n){for(var t={},r=n.length,o=-1;++o<r;){var u=n[o];u in e&&(t[u]=e[u])}return t}function re(e,n){for(var t=0;t<e.length;t++)for(var r=0;r<n.length;r++)if(e[t]===n[r])return!0;return!1}var oe=function(){function e(e,n){this.values=e,this.listeners=[],this.onValuesChange=n}return e.prototype.on=function(e,n){var t=this,r=[e,n];return this.listeners.push(r),function(){var e=t.listeners.indexOf(r);e>=0&&t.listeners.splice(e,1)}},e.prototype.getValues=function(e){return te(this.values,e)},e.prototype.setValues=function(e,n){var t,r,u=[];for(var i in n)e.indexOf(i)>=0&&(t=n[i],r=this.values[i],!("number"==typeof t&&"number"==typeof r&&isNaN(t)&&isNaN(r)||t===r))&&u.push(i);if(0!==u.length){for(var a=o({},this.values),f=0,c=u;f<c.length;f++){var s=c[f];this.values[s]=n[s]}this.onValuesChange&&this.onValuesChange(this.values,a);for(var l=0,d=this.listeners;l<d.length;l++){var v=d[l],p=v[0],h=v[1];if(re(p,u)){var y=te(a,p);h(te(this.values,p),y)}}}},e}();function ue(e){var t=i.createContext(null);return{useStore:function(e){var n=i.useContext(t);if(null===n)throw new Error("StoreProvider never found.");var r=i.useRef(!0),o=i.useState(n.getValues(e)),a=o[0],f=o[1],c=u([n],e,!0);return i.useLayoutEffect((function(){return r.current?r.current=!1:f(n.getValues(e)),n.on(e,(function(e){return f(e)}))}),c),[a,i.useCallback((function(t){return n.setValues(e,t)}),c)]},useStoreSetter:function(e){var n=i.useContext(t);if(null===n)throw new Error("StoreProvider never found.");return i.useCallback((function(t){return n.setValues(e,t)}),u([n],e,!0))},watchStore:function(e,n,r){var o=i.useContext(t);if(null===o)throw new Error("StoreProvider never found.");var a=u([o],e,!0);void 0!==r&&(a=a.concat(r)),i.useLayoutEffect((function(){return o.on(e,n)}),a)},useStoreAction:function(n){var r=i.useContext(t);if(null===r)throw new Error("StoreProvider never found.");return i.useCallback((function(){for(var t=[],o=0;o<arguments.length;o++)t[o]=arguments[o];var i=e[n],a=i[0],f=i.slice(1),c=function(){return r.getValues(f)},s=function(e){return r.setValues(f,e)};return a.apply(void 0,u([c,s],t,!1))}),[])},StoreProvider:function(e){function r(n){var t=e.call(this,n)||this;return t.store=new oe(n.initialValue,(function(){for(var e,n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];t.props.onValuesChange&&(e=t.props).onValuesChange.apply(e,n)})),t}return n(r,e),r.prototype.shouldComponentUpdate=function(e){return e.children!==this.props.children},r.prototype.render=function(){return i.createElement(t.Provider,{value:this.store},this.props.children)},r}(i.Component)}}})(),r})()}));
|