@plurid/plurid-react 0.0.0-26 → 0.0.0-27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. package/distribution/components/links/Link/components/Preview/index.d.ts +19 -0
  2. package/distribution/components/links/Link/components/Preview/styled.d.ts +7 -0
  3. package/distribution/components/links/Link/index.d.ts +24 -0
  4. package/distribution/components/links/Link/styled.d.ts +7 -0
  5. package/distribution/components/links/RouterLink/index.d.ts +20 -0
  6. package/distribution/components/links/RouterLink/styled.d.ts +6 -0
  7. package/distribution/components/planes/ExternalPlane/index.d.ts +14 -0
  8. package/distribution/components/planes/ExternalPlane/styled.d.ts +5 -0
  9. package/distribution/components/planes/IframePlane/index.d.ts +14 -0
  10. package/distribution/components/planes/IframePlane/styled.d.ts +5 -0
  11. package/distribution/components/structural/Plane/components/PlaneBridge/index.d.ts +17 -0
  12. package/distribution/components/structural/Plane/components/PlaneBridge/styled.d.ts +9 -0
  13. package/distribution/components/structural/Plane/components/PlaneContent/index.d.ts +6 -0
  14. package/distribution/components/structural/Plane/components/PlaneContent/styled.d.ts +1 -0
  15. package/distribution/components/structural/Plane/components/PlaneControls/components/ControlIsolate/index.d.ts +9 -0
  16. package/distribution/components/structural/Plane/components/PlaneControls/components/ControlRefresh/index.d.ts +9 -0
  17. package/distribution/components/structural/Plane/components/PlaneControls/components/SearchItem/index.d.ts +19 -0
  18. package/distribution/components/structural/Plane/components/PlaneControls/components/SearchItem/styled.d.ts +1 -0
  19. package/distribution/components/structural/Plane/components/PlaneControls/components/SearchList/index.d.ts +18 -0
  20. package/distribution/components/structural/Plane/components/PlaneControls/components/SearchList/styled.d.ts +2 -0
  21. package/distribution/components/structural/Plane/components/PlaneControls/index.d.ts +29 -0
  22. package/distribution/components/structural/Plane/components/PlaneControls/styled.d.ts +11 -0
  23. package/distribution/components/structural/Plane/components/PlaneDebugger/index.d.ts +13 -0
  24. package/distribution/components/structural/Plane/components/PlaneDebugger/styled.d.ts +1 -0
  25. package/distribution/components/structural/Plane/index.d.ts +27 -0
  26. package/distribution/components/structural/Plane/styled.d.ts +11 -0
  27. package/distribution/components/structural/Root/index.d.ts +15 -0
  28. package/distribution/components/structural/Root/styled.d.ts +1 -0
  29. package/distribution/components/structural/Roots/index.d.ts +18 -0
  30. package/distribution/components/structural/Roots/styled.d.ts +3 -0
  31. package/distribution/components/structural/Space/components/SpaceDebugger/index.d.ts +13 -0
  32. package/distribution/components/structural/Space/components/SpaceDebugger/styled.d.ts +1 -0
  33. package/distribution/components/structural/Space/index.d.ts +14 -0
  34. package/distribution/components/structural/Space/styled.d.ts +8 -0
  35. package/distribution/components/utilities/ApplicationConfigurator/index.d.ts +18 -0
  36. package/distribution/components/utilities/ApplicationConfigurator/styled.d.ts +1 -0
  37. package/distribution/components/utilities/ErrorBoundary/index.d.ts +18 -0
  38. package/distribution/components/utilities/NotFound/index.d.ts +13 -0
  39. package/distribution/components/utilities/NotFound/styled.d.ts +1 -0
  40. package/distribution/components/utilities/Origin/index.d.ts +15 -0
  41. package/distribution/components/utilities/Origin/styled.d.ts +7 -0
  42. package/distribution/components/utilities/PlaneConfigurator/index.d.ts +13 -0
  43. package/distribution/components/utilities/PlaneConfigurator/styled.d.ts +1 -0
  44. package/distribution/components/utilities/Portal/index.d.ts +15 -0
  45. package/distribution/components/utilities/Toolbar/Button/index.d.ts +15 -0
  46. package/distribution/components/utilities/Toolbar/Button/styled.d.ts +13 -0
  47. package/distribution/components/utilities/Toolbar/General/components/Drawer/index.d.ts +18 -0
  48. package/distribution/components/utilities/Toolbar/General/components/Drawer/styled.d.ts +3 -0
  49. package/distribution/components/utilities/Toolbar/General/components/MenuMore/components/Global/index.d.ts +22 -0
  50. package/distribution/components/utilities/Toolbar/General/components/MenuMore/components/Shortcuts/index.d.ts +14 -0
  51. package/distribution/components/utilities/Toolbar/General/components/MenuMore/components/Space/index.d.ts +21 -0
  52. package/distribution/components/utilities/Toolbar/General/components/MenuMore/components/Technical/index.d.ts +18 -0
  53. package/distribution/components/utilities/Toolbar/General/components/MenuMore/components/Toolbar/index.d.ts +23 -0
  54. package/distribution/components/utilities/Toolbar/General/components/MenuMore/components/Transform/index.d.ts +20 -0
  55. package/distribution/components/utilities/Toolbar/General/components/MenuMore/components/Viewcube/index.d.ts +21 -0
  56. package/distribution/components/utilities/Toolbar/General/components/MenuMore/data.d.ts +9 -0
  57. package/distribution/components/utilities/Toolbar/General/components/MenuMore/index.d.ts +22 -0
  58. package/distribution/components/utilities/Toolbar/General/components/MenuMore/styled.d.ts +3 -0
  59. package/distribution/components/utilities/Toolbar/General/components/MenuUniverses/index.d.ts +16 -0
  60. package/distribution/components/utilities/Toolbar/General/components/MenuUniverses/styled.d.ts +4 -0
  61. package/distribution/components/utilities/Toolbar/General/components/ToolbarRotate/index.d.ts +24 -0
  62. package/distribution/components/utilities/Toolbar/General/components/ToolbarRotate/styled.d.ts +1 -0
  63. package/distribution/components/utilities/Toolbar/General/components/ToolbarScale/index.d.ts +22 -0
  64. package/distribution/components/utilities/Toolbar/General/components/ToolbarScale/styled.d.ts +1 -0
  65. package/distribution/components/utilities/Toolbar/General/components/ToolbarTranslate/index.d.ts +26 -0
  66. package/distribution/components/utilities/Toolbar/General/components/ToolbarTranslate/styled.d.ts +1 -0
  67. package/distribution/components/utilities/Toolbar/General/components/TransformArrow/data.d.ts +7 -0
  68. package/distribution/components/utilities/Toolbar/General/components/TransformArrow/index.d.ts +16 -0
  69. package/distribution/components/utilities/Toolbar/General/components/TransformArrow/styled.d.ts +6 -0
  70. package/distribution/components/utilities/Toolbar/General/data.d.ts +6 -0
  71. package/distribution/components/utilities/Toolbar/General/index.d.ts +21 -0
  72. package/distribution/components/utilities/Toolbar/General/styled.d.ts +29 -0
  73. package/distribution/components/utilities/UniverseExplorer/index.d.ts +16 -0
  74. package/distribution/components/utilities/UniverseExplorer/styled.d.ts +2 -0
  75. package/distribution/components/utilities/Viewcube/components/ViewcubeFace/data.d.ts +391 -0
  76. package/distribution/components/utilities/Viewcube/components/ViewcubeFace/index.d.ts +27 -0
  77. package/distribution/components/utilities/Viewcube/components/ViewcubeFace/styled.d.ts +16 -0
  78. package/distribution/components/utilities/Viewcube/components/ViewcubeModel/index.d.ts +17 -0
  79. package/distribution/components/utilities/Viewcube/components/ViewcubeModel/styled.d.ts +3 -0
  80. package/distribution/components/utilities/Viewcube/components/ViewcubeTransformAreas/TransformArea/data.d.ts +5 -0
  81. package/distribution/components/utilities/Viewcube/components/ViewcubeTransformAreas/TransformArea/index.d.ts +11 -0
  82. package/distribution/components/utilities/Viewcube/components/ViewcubeTransformAreas/TransformArea/styled.d.ts +17 -0
  83. package/distribution/components/utilities/Viewcube/components/ViewcubeTransformAreas/index.d.ts +13 -0
  84. package/distribution/components/utilities/Viewcube/components/ViewcubeTransformAreas/styled.d.ts +13 -0
  85. package/distribution/components/utilities/Viewcube/index.d.ts +23 -0
  86. package/distribution/components/utilities/Viewcube/styled.d.ts +19 -0
  87. package/distribution/components/virtuals/List/components/ListItem/index.d.ts +9 -0
  88. package/distribution/components/virtuals/List/index.d.ts +15 -0
  89. package/distribution/components/virtuals/List/styled.d.ts +1 -0
  90. package/distribution/containers/Application/View/Container/index.d.ts +5 -0
  91. package/distribution/containers/Application/View/index.d.ts +48 -0
  92. package/distribution/containers/Application/View/styled.d.ts +8 -0
  93. package/distribution/containers/Application/index.d.ts +18 -0
  94. package/distribution/containers/Provider/context.d.ts +4 -0
  95. package/distribution/containers/Provider/index.d.ts +12 -0
  96. package/distribution/containers/RouterBrowser/index.d.ts +7 -0
  97. package/distribution/containers/RouterBrowser/styled.d.ts +1 -0
  98. package/distribution/containers/RouterStatic/index.d.ts +18 -0
  99. package/distribution/data/constants/index.d.ts +3 -0
  100. package/distribution/data/interfaces/index.d.ts +20 -0
  101. package/distribution/data/interfaces/utility.d.ts +3 -0
  102. package/distribution/index.d.ts +117 -0
  103. package/distribution/index.es.js +6474 -0
  104. package/distribution/index.es.js.map +1 -0
  105. package/distribution/index.js +6611 -0
  106. package/distribution/index.js.map +1 -0
  107. package/distribution/index.min.js +562 -0
  108. package/distribution/index.min.js.map +1 -0
  109. package/distribution/services/context/index.d.ts +5 -0
  110. package/distribution/services/engine/index.d.ts +22 -0
  111. package/distribution/services/hooks/event/index.d.ts +4 -0
  112. package/distribution/services/hooks/index.d.ts +2 -0
  113. package/distribution/services/hooks/router/index.d.ts +1 -0
  114. package/distribution/services/logic/animation/index.d.ts +16 -0
  115. package/distribution/services/logic/computing/index.d.ts +17 -0
  116. package/distribution/services/logic/router/index.d.ts +40 -0
  117. package/distribution/services/logic/router/styled.d.ts +5 -0
  118. package/distribution/services/logic/server/index.d.ts +3 -0
  119. package/distribution/services/logic/shortcuts/index.d.ts +15 -0
  120. package/distribution/services/logic/shortcuts/logic.d.ts +6 -0
  121. package/distribution/services/logic/state/index.d.ts +3 -0
  122. package/distribution/services/logic/transform/index.d.ts +3 -0
  123. package/distribution/services/state/actions/index.d.ts +247 -0
  124. package/distribution/services/state/context/index.d.ts +3 -0
  125. package/distribution/services/state/hooks/index.d.ts +4 -0
  126. package/distribution/services/state/modules/configuration/index.d.ts +66 -0
  127. package/distribution/services/state/modules/general/index.d.ts +10 -0
  128. package/distribution/services/state/modules/index.d.ts +16 -0
  129. package/distribution/services/state/modules/shortcuts/index.d.ts +16 -0
  130. package/distribution/services/state/modules/space/index.d.ts +147 -0
  131. package/distribution/services/state/modules/space/selectors.d.ts +22 -0
  132. package/distribution/services/state/modules/space/types.d.ts +41 -0
  133. package/distribution/services/state/modules/themes/index.d.ts +22 -0
  134. package/distribution/services/state/modules/ui/index.d.ts +16 -0
  135. package/distribution/services/state/selectors/index.d.ts +62 -0
  136. package/distribution/services/state/store/development/index.d.ts +5 -0
  137. package/distribution/services/state/store/index.d.ts +23 -0
  138. package/distribution/services/state/store/production/index.d.ts +5 -0
  139. package/distribution/services/state/store/reducer/index.d.ts +10 -0
  140. package/distribution/services/styled/index.d.ts +2 -0
  141. package/distribution/services/utilities/environment/index.d.ts +7 -0
  142. package/distribution/services/utilities/imports/index.d.ts +49 -0
  143. package/distribution/services/utilities/react/index.d.ts +3 -0
  144. package/package.json +2 -2
@@ -0,0 +1,562 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@plurid/plurid-data"),t=require("@plurid/plurid-engine"),a=require("@plurid/plurid-pubsub"),n=require("react"),r=require("react-redux"),o=require("@reduxjs/toolkit"),i=require("@plurid/plurid-functions"),l=require("@plurid/plurid-themes"),s=require("styled-components"),c=require("@plurid/plurid-functions-react"),u=require("@plurid/plurid-icons-react"),d=require("@plurid/plurid-ui-components-react"),f=require("react-dom"),p=require("cross-fetch"),m=require("@plurid/elementql-client-react"),g=require("hammerjs");function h(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var T=h(e),E=h(t),S=h(a),v=h(n),P=h(r),b=h(o),R=h(i),I=h(l),C=h(s),w=h(c),O=h(u),_=h(d),y=h(f),L=h(p),A=h(m),U=h(g);var D={};!function(e){Object.defineProperty(e,"__esModule",{value:!0});var t=T.default,a=E.default,n=S.default,r=v.default,o=P.default,i=b.default,l=R.default,s=I.default,c=C.default,u=w.default,d=O.default,f=_.default,p=y.default,m=L.default,g=A.default;function h(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var D=h(n),x=h(r),N=h(s),M=h(c),k=h(m);const F=x.default.createContext(void 0),B=Object.assign({},t.defaultConfiguration),Y=i.createSlice({name:"configuration",initialState:B,reducers:{setConfiguration:(e,t)=>{e=Object.assign(Object.assign({},e),t.payload)},setConfigurationMicro:e=>{e.elements.toolbar.show=!1,e.elements.plane.controls.show=!1,e.elements.viewcube.show=!1},setConfigurationPlaneControls:(e,t)=>{e.elements.plane.controls.show=t.payload},setConfigurationPlaneOpacity:(e,t)=>{e.elements.plane.opacity=t.payload},setConfigurationThemeGeneral:(e,t)=>{const a={general:t.payload,interaction:"object"==typeof e.global.theme?e.global.theme.interaction:"plurid"};e.global.theme=a},setConfigurationThemeInteraction:(e,t)=>{const a={general:"object"==typeof e.global.theme?e.global.theme.general:"plurid",interaction:t.payload};e.global.theme=a},setConfigurationLanguage:(e,t)=>{e.global.language=t.payload},toggleConfigurationViewcubeHide:(e,t)=>{e.elements.viewcube.show=t.payload},toggleConfigurationViewcubeButtons:(e,t)=>{e.elements.viewcube.buttons=t.payload},toggleConfigurationViewcubeOpaque:(e,t)=>{e.elements.viewcube.opaque=t.payload},toggleConfigurationViewcubeConceal:e=>{const{conceal:t}=e.elements.viewcube;e.elements.viewcube.conceal=!t},toggleConfigurationToolbarConceal:e=>{const{conceal:t}=e.elements.toolbar;e.elements.toolbar.conceal=!t},toggleConfigurationToolbarTransformIcons:e=>{const{transformIcons:t}=e.elements.toolbar;e.elements.toolbar.transformIcons=!t},toggleConfigurationToolbarTransformButtons:e=>{const{transformButtons:t}=e.elements.toolbar;e.elements.toolbar.transformButtons=!t},toggleConfigurationShowTransformOrigin:e=>{const{show:t}=e.space.transformOrigin;e.space.transformOrigin.show=!t},toggleConfigurationToolbarOpaque:e=>{const{opaque:t}=e.elements.toolbar;e.elements.toolbar.opaque=!t},toggleConfigurationSpaceTransparentUI:e=>{e.global.transparentUI=!e.global.transparentUI},setConfigurationSpaceTransformOriginSize:(e,t)=>{e.space.transformOrigin.size=t.payload},setConfigurationSpaceTransformMode:(e,a)=>{e.space.transformMode!==a.payload?e.space.transformMode=a.payload:e.space.transformMode=t.TRANSFORM_MODES.ALL},toggleConfigurationSpaceTransformMultimode:(e,t)=>{e.space.transformMultimode=t.payload},setConfigurationSpaceTransformTouch:(e,t)=>{e.space.transformTouch=t.payload},toggleConfigurationSpaceFirstPerson:e=>{const{firstPerson:t}=e.space;e.space.firstPerson=!t},toggleConfigurationToolbarToggleDrawer:(e,t)=>{const{toggledDrawers:a}=e.elements.toolbar;if(a.includes(t.payload)){const n=a.filter((e=>e!==t.payload));e.elements.toolbar.toggledDrawers=[...n]}else e.elements.toolbar.toggledDrawers=[...a,t.payload]},setConfigurationSpaceTransformLocks:(e,t)=>{const{transformLocks:a}=e.space,n=Object.assign({},a);n[t.payload]=!a[t.payload],e.space.transformLocks=Object.assign({},n)},setConfigurationSpaceLayout:(e,a)=>{const n={type:t.LAYOUT_TYPES[a.payload]};e.space.layout=Object.assign({},n)},setConfigurationSpaceCullingDistance:(e,t)=>{e.space.cullingDistance=t.payload}}}),$=Y.actions,X=e=>e.configuration,V={getConfiguration:X},z=Y.reducer;var K=Object.freeze({__proto__:null,configuration:Y,actions:$,getConfiguration:X,selectors:V,reducer:z});const Z=i.createSlice({name:"general",initialState:{},reducers:{}}),j=Z.actions,G=e=>e.general,W={getGeneral:G},H=Z.reducer;var q=Object.freeze({__proto__:null,general:Z,actions:j,getGeneral:G,selectors:W,reducer:H});const J=i.createSlice({name:"shortcuts",initialState:{global:!0},reducers:{setGlobalShortcuts:(e,t)=>{e.global=t.payload}}}),Q=J.actions,ee=e=>e.shortcuts.global,te={getGlobal:ee},ae=J.reducer;var ne=Object.freeze({__proto__:null,shortcuts:J,actions:Q,getGlobal:ee,selectors:te,reducer:ae});const{registerPlanes:re,getRegisteredPlanes:oe,getPlanesRegistrar:ie,getPluridPlaneIDByData:le,getRegisteredPlane:se,resolvePluridRoutePlaneData:ce,resolvePluridPlaneData:ue,Registrar:de}=a.planes,{IsoMatcher:fe,resolveRoute:pe,computePlaneAddress:me}=a.routing,{quaternion:ge,matrix:he}=a.interaction,{degToRad:Te}=ge,{matrixArrayToCSSMatrix:Ee,rotateMatrix:Se,multiplyArrayOfMatrices:ve,scaleMatrix:Pe,translateMatrix:be}=he,Re=e=>{const{translationX:t,translationY:a,translationZ:n,rotationX:r,rotationY:o,scale:i}=e,l=-1*t+("undefined"==typeof window?720:window.innerWidth/2),s=-1*a+("undefined"==typeof window?400:window.innerHeight/2),c=-1*n,u=Se(Te(-r),Te(-o)),d=be(t,a,n),f=Pe(i),p=ve([d,be(l,s,c),u,be(-l,-s,-c),f]);return Ee(p)};var Ie=Object.freeze({__proto__:null,getSpace:e=>e.space,getLoading:e=>e.space.loading,getTransformMatrix:e=>e.space.transform,getAnimatedTransform:e=>e.space.animatedTransform,getTransformTime:e=>e.space.transformTime,getRotationX:e=>e.space.rotationX,getRotationY:e=>e.space.rotationY,getTranslationX:e=>e.space.translationX,getTranslationY:e=>e.space.translationY,getTranslationZ:e=>e.space.translationZ,getScale:e=>e.space.scale,getTree:e=>e.space.tree,getTransform:e=>({rotationX:e.space.rotationX,rotationY:e.space.rotationY,translationX:e.space.translationX,translationY:e.space.translationY,translationZ:e.space.translationZ,scale:e.space.scale}),getActiveUniverseID:e=>e.space.activeUniverseID,getView:e=>e.space.view,getViewSize:e=>e.space.viewSize,getCulledView:e=>e.space.culledView,getActivePlaneID:e=>e.space.activePlaneID,getIsolatePlane:e=>e.space.isolatePlane,getLastClosedPlane:e=>e.space.lastClosedPlane});const{toRadians:Ce}=l.mathematics.geometry,we={loading:!0,transform:"matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1)",animatedTransform:!1,transformTime:450,scale:1,rotationX:0,rotationY:0,translationX:0,translationY:0,translationZ:0,tree:[],activeUniverseID:"",camera:{x:0,y:0,z:0},viewSize:{width:"undefined"==typeof window?1440:window.innerWidth,height:"undefined"==typeof window?821:window.innerHeight},spaceSize:{width:"undefined"==typeof window?1440:window.innerWidth,height:"undefined"==typeof window?821:window.innerHeight,depth:0,topCorner:{x:0,y:0,z:0}},view:[],culledView:[],activePlaneID:"",isolatePlane:"",lastClosedPlane:""},Oe="space",_e=i.createSlice({name:Oe,initialState:we,reducers:{setSpaceField:(e,t)=>{const{field:a,value:n}=t.payload;e[a]=n},setSpaceLoading:(e,t)=>{e.loading=t.payload},changeTransform:(e,t)=>{},setTransform:(e,t)=>{const{translationX:a,translationY:n,translationZ:r,rotationX:o,rotationY:i,scale:l}=t.payload,s=null!=a?a:e.translationX,c=null!=n?n:e.translationY,u=null!=r?r:e.translationZ,d=null!=o?o:e.rotationX,f=null!=i?i:e.rotationY,p=null!=l?l:e.scale;e.translationX=s,e.translationY=c,e.translationZ=u,e.rotationX=d,e.rotationY=f,e.scale=p},setAnimatedTransform:(e,t)=>{e.animatedTransform=t.payload},setTransformTime:(e,t)=>{e.transformTime=t.payload},setSpaceLocation:(e,t)=>{const a=Object.assign(Object.assign({},e),t.payload),n=Re(a);return Object.assign(Object.assign({},a),{transform:n})},viewCameraMoveForward:e=>{e.translationZ=e.translationZ+6*t.TRANSLATION_STEP*Math.cos(Ce(-e.rotationY)),e.translationX=e.translationX+6*t.TRANSLATION_STEP*Math.sin(Ce(-e.rotationY)),e.transform=Re(e)},viewCameraMoveBackward:e=>{e.translationZ=e.translationZ-6*t.TRANSLATION_STEP*Math.cos(Ce(-e.rotationY)),e.translationX=e.translationX-6*t.TRANSLATION_STEP*Math.sin(Ce(-e.rotationY)),e.transform=Re(e)},viewCameraMoveLeft:e=>{e.translationX=e.translationX+3*t.TRANSLATION_STEP*Math.cos(Ce(e.rotationY)),e.translationZ=e.translationZ+3*t.TRANSLATION_STEP*Math.sin(Ce(e.rotationY)),e.transform=Re(e)},viewCameraMoveRight:e=>{e.translationX=e.translationX-3*t.TRANSLATION_STEP*Math.cos(Ce(e.rotationY)),e.translationZ=e.translationZ-3*t.TRANSLATION_STEP*Math.sin(Ce(e.rotationY)),e.transform=Re(e)},viewCameraMoveUp:e=>{e.translationY=e.translationY+3*t.TRANSLATION_STEP,e.transform=Re(e)},viewCameraMoveDown:e=>{e.translationY=e.translationY-3*t.TRANSLATION_STEP,e.transform=Re(e)},viewCameraTurnUp:e=>{e.rotationX=(e.rotationX+t.ROTATION_STEP)%360,e.transform=Re(e)},viewCameraTurnDown:e=>{e.rotationX=(e.rotationX-t.ROTATION_STEP)%360,e.transform=Re(e)},viewCameraTurnLeft:e=>{e.rotationY=(e.rotationY-t.ROTATION_STEP)%360,e.transform=Re(e)},viewCameraTurnRight:e=>{e.rotationY=(e.rotationY+t.ROTATION_STEP)%360,e.transform=Re(e)},rotateUp:e=>{e.rotationX=(e.rotationX+t.ROTATION_STEP)%360,e.transform=Re(e)},rotateDown:e=>{e.rotationX=(e.rotationX-t.ROTATION_STEP)%360,e.transform=Re(e)},rotateX:(e,t)=>{e.rotationX=t.payload,e.transform=Re(e)},rotateXWith:(e,t)=>{e.rotationX=e.rotationX+t.payload,e.transform=Re(e)},rotateLeft:e=>{e.rotationY=(e.rotationY+t.ROTATION_STEP)%360,e.transform=Re(e)},rotateRight:e=>{e.rotationY=(e.rotationY-t.ROTATION_STEP)%360,e.transform=Re(e)},rotateY:(e,t)=>{e.rotationY=t.payload,e.transform=Re(e)},rotateYWith:(e,t)=>{e.rotationY=e.rotationY+t.payload,e.transform=Re(e)},translateUp:e=>{e.translationY=e.translationY-t.TRANSLATION_STEP,e.transform=Re(e)},translateDown:e=>{e.translationY=e.translationY+t.TRANSLATION_STEP,e.transform=Re(e)},translateLeft:e=>{e.translationX=e.translationX-t.TRANSLATION_STEP*Math.cos(Ce(e.rotationY)),e.translationZ=e.translationZ-t.TRANSLATION_STEP*Math.sin(Ce(e.rotationY)),e.transform=Re(e)},translateRight:e=>{e.translationX=e.translationX+t.TRANSLATION_STEP*Math.cos(Ce(e.rotationY)),e.translationZ=e.translationZ+t.TRANSLATION_STEP*Math.sin(Ce(e.rotationY)),e.transform=Re(e)},translateIn:e=>{e.translationZ=e.translationZ-3*t.TRANSLATION_STEP*Math.cos(Ce(-e.rotationY)),e.translationX=e.translationX-3*t.TRANSLATION_STEP*Math.sin(Ce(-e.rotationY)),e.transform=Re(e)},translateOut:e=>{e.translationZ=e.translationZ+3*t.TRANSLATION_STEP*Math.cos(Ce(-e.rotationY)),e.translationX=e.translationX+3*t.TRANSLATION_STEP*Math.sin(Ce(-e.rotationY)),e.transform=Re(e)},translateXWith:(e,t)=>{e.translationX=e.translationX+t.payload*Math.cos(Ce(e.rotationY)),e.translationZ=e.translationZ+t.payload*Math.sin(Ce(e.rotationY)),e.transform=Re(e)},translateYWith:(e,t)=>{e.translationY=e.translationY+t.payload,e.transform=Re(e)},translateZWith:(e,t)=>{e.translationZ=e.translationZ+t.payload,e.transform=Re(e)},scaleUp:e=>{const a=e.scale+t.SCALE_STEP,n=a<t.SCALE_UPPER_LIMIT?a:t.SCALE_UPPER_LIMIT;e.scale=n,e.transform=Re(e)},scaleDown:e=>{const a=e.scale-t.SCALE_STEP,n=a>t.SCALE_LOWER_LIMIT?a:t.SCALE_LOWER_LIMIT;e.scale=n,e.transform=Re(e)},scaleUpWith:(e,a)=>{const n=e.scale+Math.abs(a.payload),r=n<t.SCALE_UPPER_LIMIT?n:t.SCALE_UPPER_LIMIT;e.scale=r,e.transform=Re(e)},scaleDownWith:(e,a)=>{const n=e.scale-Math.abs(a.payload),r=n>t.SCALE_LOWER_LIMIT?n:t.SCALE_LOWER_LIMIT;e.scale=r,e.transform=Re(e)},setTree:(e,t)=>{e.tree=[...t.payload]},setActiveUniverse:(e,t)=>{e.activeUniverseID=t.payload},spaceResetTransform:e=>{e.scale=1,e.rotationX=0,e.rotationY=0,e.translationX=0,e.translationY=0,e.translationZ=0,e.transform=Re(e)},setViewSize:(e,t)=>{e.viewSize=t.payload},setSpaceSize:(e,t)=>{e.spaceSize=t.payload},updateSpaceTreePlane:(e,t)=>{const n=a.general.tree.updateTreePlane(e.tree,t.payload);e.tree=n},updateSpaceLinkCoordinates:(e,t)=>{const{planeID:n,linkCoordinates:r}=t.payload,o=a.general.tree.updateTreeByPlaneIDWithLinkCoordinates(e.tree,n,r);e.tree=o},spaceSetView:(e,t)=>{e.view=t.payload},spaceSetCulledView:(e,t)=>{e.culledView=t.payload}}}),ye=_e.actions,Le=_e.reducer;var Ae=Object.freeze({__proto__:null,name:Oe,space:_e,actions:ye,selectors:Ie,reducer:Le});const Ue={general:s.plurid,interaction:s.plurid},De=i.createSlice({name:"themes",initialState:Ue,reducers:{setGeneralTheme:(e,t)=>{e.general=t.payload},setInteractionTheme:(e,t)=>{e.interaction=t.payload}}}),xe=De.actions,Ne=e=>e.themes.general,Me=e=>e.themes.general,ke={getGeneralTheme:Ne,getInteractionTheme:Me},Fe=De.reducer;var Be=Object.freeze({__proto__:null,themes:De,actions:xe,getGeneralTheme:Ne,getInteractionTheme:Me,selectors:ke,reducer:Fe});const Ye=i.createSlice({name:"ui",initialState:{toolbarScrollPosition:0},reducers:{setUIToolbarScrollPosition:(e,t)=>{e.toolbarScrollPosition=t.payload}}}),$e=Ye.actions,Xe=e=>e.ui.toolbarScrollPosition,Ve={getToolbarScrollPosition:Xe},ze=Ye.reducer;var Ke={configuration:K,general:q,shortcuts:ne,space:Ae,themes:Be,ui:Object.freeze({__proto__:null,ui:Ye,actions:$e,getToolbarScrollPosition:Xe,selectors:Ve,reducer:ze})};const Ze=i.combineReducers({configuration:Ke.configuration.reducer,general:Ke.general.reducer,shortcuts:Ke.shortcuts.reducer,space:Ke.space.reducer,themes:Ke.themes.reducer,ui:Ke.ui.reducer}),je=e=>i.configureStore({preloadedState:e,reducer:Ze,devTools:!1}),Ge=x.default.createContext({});function We(e,t,a,n){return new(a||(a=Promise))((function(r,o){function i(e){try{s(n.next(e))}catch(e){o(e)}}function l(e){try{s(n.throw(e))}catch(e){o(e)}}function s(e){var t;e.done?r(e.value):(t=e.value,t instanceof a?t:new a((function(e){e(t)}))).then(i,l)}s((n=n.apply(e,t||[])).next())}))}const He=x.default.createContext(null);var qe={configuration:Ke.configuration.actions,general:Ke.general.actions,shortcuts:Ke.shortcuts.actions,space:Ke.space.actions,themes:Ke.themes.actions,ui:Ke.ui.actions};const{quaternion:Je,transform:Qe,matrix:et}=a.interaction,{degToRad:tt,radToDeg:at}=Je,{multiplyMatricesArray:nt,translateMatrix:rt,rotateYMatrix:ot,matrixToCSSMatrix:it,arrayToMatrix:lt,inverseMatrix:st}=Qe.general,{getTransformRotate:ct,getTransformTranslate:ut,getTransformScale:dt}=Qe.matrix3d,{rotateMatrix:ft,translateMatrix:pt,scaleMatrix:mt,multiplyArrayOfMatrices:gt}=et,ht=(e,t,n)=>{const r=a.general.configuration.merge(t);if(e)for(const t of e){const e=ue(t);a.routing.resolveRoute(e.route)}const o=n||[],i=[];for(const e of o)if("string"==typeof e){const t=a.routing.resolveRoute(e);if(!t)continue;i.push(t.route)}const l="localhost:63000",s=new de(e,l).getAll();return{computedTree:new a.space.tree.Tree({planes:s,configuration:r,view:i},l).compute(),appConfiguration:r}},Tt=(()=>{let e;return a=>{const n=e=>a(qe.space.setAnimatedTransform(e));n(!0),e&&clearTimeout(e),e=setTimeout((()=>{n(!1)}),t.PLURID_DEFAULT_ANIMATED_TRANSFORM_TIMEOUT)}})(),Et=(e,a,n,r=!0)=>{if(n&&(n.ctrlKey||n.metaKey))return;if(!a)return;const o=t=>e(qe.space.setSpaceField(t)),{matrix3d:i,transform:l}=(e=>{const{location:t}=e,{translateX:a,translateY:n,translateZ:r,rotateY:o}=t;return{transform:(()=>{const e="undefined"==typeof window?720:window.innerWidth/2,t="undefined"==typeof window?400:window.innerHeight/2,i=-1*a+e,l=-1*n+t,s=-1*r,c=ft(0,tt(o)),u=pt(a,n,r),d=mt(1),f=gt([u,pt(i,l,s),c,pt(-i,-l,-s),d]),p=st(lt(f)),m=it(p),g=ct(m),h=ut(m),T=dt(m);return{translationX:h.translateX,translationY:h.translateY,translationZ:h.translateZ,rotationX:at(g.rotateX),rotationY:at(g.rotateY),scale:T.scale}})(),matrix3d:(()=>{const t=o<100?1:-1,i=o<100?-1:1,l=o<100&&e.parentPlaneID?200:0,s=nt([rt(-a,-n,t*r),ot(tt(o)),rt(a,n,i*r),rt(-(a+l),-n,t*r)]);return it(s)})()}})(a);var s;Tt(e),o({field:"transform",value:i}),s=Object.assign({},l),e(qe.space.setTransform(s)),r&&o({field:"isolatePlane",value:""}),setTimeout((()=>{(e=>{const a=`[id='${e+t.FOCUS_ANCHOR_SUFFIX}']`,n=document.querySelector(a);n&&n.focus()})(a.planeID),o({field:"activePlaneID",value:a.planeID})}),t.PLURID_DEFAULT_ANIMATED_TRANSFORM_TIMEOUT)},St=e=>{const{activePlaneID:t,tree:n}=e.space;if(!t)return;return a.space.tree.logic.getTreePlaneByID(n,t)},vt=(e,t,a)=>{for(const[n,r]of e.entries()){if(r.planeID===t)return null!=a?a:n;if(r.children){const e=vt(r.children,t,n);if("number"==typeof e)return e}}},Pt=(e,t,a)=>{const{activePlaneID:n,tree:r}=t.space,o=vt(r,n);if("number"!=typeof o)return;let i=r["previous"===a?o-1||0:o+1];(i||(i="previous"===a?r[r.length-1]:r[0],i))&&Et(e,i,void 0,!0)},bt=(e,t)=>{Pt(e,t,"previous")},Rt=(e,t)=>{Pt(e,t,"next")},It=(e,t,a)=>{const{tree:n}=t.space,r=n[a];r&&Et(e,r,void 0,!0)},{direction:Ct}=a.interaction,wt=(e,n,r,o,i,s)=>{if(o.defaultPrevented)return;if(l.dom.verifyPathInputElement(l.dom.getEventPath(o)))return;const c=!(o.shiftKey||o.altKey||o.ctrlKey||o.metaKey),u=()=>{o.preventDefault()};if("KeyF"===o.code&&c)return u(),e(qe.configuration.toggleConfigurationSpaceFirstPerson());if(i){if("KeyW"===o.code&&c&&s.translationZ)return u(),e(qe.space.viewCameraMoveForward());if("KeyS"===o.code&&c&&s.translationZ)return u(),e(qe.space.viewCameraMoveBackward());if("KeyA"===o.code&&c&&s.translationX)return u(),e(qe.space.viewCameraMoveLeft());if("KeyA"===o.code&&o.shiftKey&&s.rotationY)return u(),e(qe.space.viewCameraTurnLeft());if("KeyD"===o.code&&c&&s.translationX)return u(),e(qe.space.viewCameraMoveRight());if("KeyD"===o.code&&o.shiftKey&&s.rotationY)return u(),e(qe.space.viewCameraTurnRight());if("KeyQ"===o.code&&c&&s.rotationX)return u(),e(qe.space.viewCameraTurnUp());if("KeyZ"===o.code&&c&&s.rotationX)return u(),e(qe.space.viewCameraTurnDown());if("KeyE"===o.code&&c&&s.translationY)return u(),e(qe.space.viewCameraMoveUp());if("KeyC"===o.code&&c&&s.translationY)return u(),e(qe.space.viewCameraMoveDown())}if("KeyR"===o.code&&c)return u(),e(qe.configuration.setConfigurationSpaceTransformMode(t.TRANSFORM_MODES.ROTATION));if("KeyT"===o.code&&c)return u(),e(qe.configuration.setConfigurationSpaceTransformMode(t.TRANSFORM_MODES.TRANSLATION));if("KeyS"===o.code&&c&&!i)return u(),e(qe.configuration.setConfigurationSpaceTransformMode(t.TRANSFORM_MODES.SCALE));if("ArrowRight"===o.key){if(o.shiftKey&&s.rotationY)return u(),e(qe.space.rotateLeft());if(o.altKey&&s.translationX)return u(),e(qe.space.translateRight())}if("ArrowLeft"===o.key){if(o.shiftKey&&s.rotationY)return u(),e(qe.space.rotateRight());if(o.altKey&&s.translationX)return u(),e(qe.space.translateLeft())}if("ArrowUp"===o.key){if(o.shiftKey&&o.altKey&&s.translationZ)return u(),e(qe.space.translateIn());if(o.shiftKey&&!o.altKey&&s.rotationX)return u(),e(qe.space.rotateUp());if(o.altKey&&!o.shiftKey&&s.translationY)return u(),e(qe.space.translateUp());if(o.metaKey||o.ctrlKey&&s.scale)return u(),e(qe.space.scaleUp())}if("ArrowDown"===o.key){if(o.shiftKey&&o.altKey&&s.translationZ)return u(),e(qe.space.translateOut());if(o.shiftKey&&!o.altKey&&s.rotationX)return u(),e(qe.space.rotateDown());if(o.altKey&&!o.shiftKey&&s.translationY)return u(),e(qe.space.translateDown());if(o.metaKey||o.ctrlKey&&s.scale)return u(),e(qe.space.scaleDown())}if(o.altKey&&"KeyF"===o.code)return u(),void((e,t)=>{const a=St(t);if(!a)return;Et(e,a,void 0,!1)})(e,n);if(o.altKey&&"KeyB"===o.code)return u(),void((e,t)=>{const n=St(t);if(!n||!n.parentPlaneID)return;const r=a.space.tree.logic.getTreePlaneByID(t.space.tree,n.parentPlaneID);r&&Et(e,r)})(e,n);if(o.altKey&&"KeyR"===o.code)return u(),void((e,a)=>{const{activePlaneID:n}=e.space;n&&a.publish({topic:t.PLURID_PUBSUB_TOPIC.REFRESH_PLANE,data:{id:n}})})(n,r);if(o.altKey&&"KeyE"===o.code)return u(),void((e,a)=>{const{activePlaneID:n,isolatePlane:r}=e.space;r?a.publish({topic:t.PLURID_PUBSUB_TOPIC.ISOLATE_PLANE,data:{id:""}}):n&&a.publish({topic:t.PLURID_PUBSUB_TOPIC.ISOLATE_PLANE,data:{id:n}})})(n,r);if(o.altKey&&o.shiftKey&&"KeyT"===o.code)return u(),void(e=>{e.publish({topic:t.PLURID_PUBSUB_TOPIC.OPEN_CLOSED_PLANE})})(r);if(o.altKey&&"KeyW"===o.code)return u(),void((e,a)=>{const{activePlaneID:n}=e.space;n&&a.publish({topic:t.PLURID_PUBSUB_TOPIC.CLOSE_PLANE,data:{id:n}})})(n,r);if(o.altKey&&"KeyA"===o.code)return u(),void bt(e,n);if(o.altKey&&"KeyD"===o.code)return u(),void Rt(e,n);if(o.altKey&&"Tab"===o.code)return u(),void(o.shiftKey?bt(e,n):Rt(e,n));if(o.altKey&&o.code.startsWith("Digit")){u();const t=parseInt(o.code.replace("Digit",""))-1;It(e,n,t)}else;},Ot=()=>We(void 0,void 0,void 0,(function*(){return yield Promise.resolve().then((function(){return function(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(a){if("default"!==a){var n=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,n.get?n:{enumerable:!0,get:function(){return e[a]}})}})),t.default=e,Object.freeze(t)}(U.default)}))}));var _t={configuration:Ke.configuration.selectors,general:Ke.general.selectors,shortcuts:Ke.shortcuts.selectors,space:Ke.space.selectors,themes:Ke.themes.selectors,ui:Ke.ui.selectors};const yt=c.createGlobalStyle`
2
+ *,
3
+ *:after,
4
+ *:before {
5
+ box-sizing: border-box;
6
+ font-kerning: auto;
7
+ text-rendering: optimizeLegibility;
8
+ }
9
+
10
+ html, body {
11
+ margin: 0;
12
+ height: 100%;
13
+ width: 100%;
14
+ overscroll-behavior-x: ${({preventOverscroll:e})=>e?"none":"auto"};
15
+ }
16
+
17
+ html {
18
+ overflow: hidden;
19
+ background: black;
20
+ color: white;
21
+ font-family: ${({theme:e})=>e.fontFamilySansSerif}
22
+ }
23
+ `,Lt=M.default.div`
24
+ height: 100%;
25
+ min-height: ${e=>e.fullHeight?"100vh":"100%"};
26
+ min-height: ${e=>e.fullHeight?"-webkit-fill-available":"100%"};
27
+
28
+ width: 100%;
29
+ position: relative;
30
+ scroll-snap-align: start;
31
+ outline: none;
32
+ overflow: hidden;
33
+
34
+ cursor: ${e=>e.transformMode===t.TRANSFORM_MODES.TRANSLATION||e.transformMode===t.TRANSFORM_MODES.ROTATION?"all-scroll":e.transformMode===t.TRANSFORM_MODES.SCALE?"ns-resize":"initial"};
35
+ user-select: ${e=>"ALL"!==e.transformMode?"none":"initial !important"};
36
+ touch-action: ${e=>"ALL"!==e.transformMode?"none !important":"initial !important"};
37
+ -webkit-user-drag: ${e=>"ALL"!==e.transformMode?"none":"initial !important"};
38
+ -webkit-tap-highlight-color: ${e=>"ALL"!==e.transformMode?"rgba(0, 0, 0, 0)":"initial !important"};
39
+ `;M.default.div`
40
+ outline: none;
41
+ background: ${e=>{if(e.opaque){return`radial-gradient(\n ellipse at center,\n ${"dark"===e.theme.type?e.theme.backgroundColorTertiary:e.theme.backgroundColorPrimary} 0%,\n ${"dark"===e.theme.type?e.theme.backgroundColorPrimary:e.theme.backgroundColorTertiary} 100%)\n `}return"transparent"}};
42
+ `;class At extends x.default.Component{constructor(e){super(e),this.state={hasError:!1}}static getDerivedStateFromError(e){return{hasError:!0}}componentDidCatch(e,t){}render(){return this.state.hasError?this.props.renderError?this.props.renderError:x.default.createElement("h1",null,"Something went wrong."):this.props.children}}const Ut=M.default.div`
43
+ background-color: ${({transparentUI:e,mouseOver:t,theme:a,planeOpacity:n})=>{if(e&&!t)return a.backgroundColorPrimaryAlpha;if(1!==n){const e=s.decomposeColor(a.backgroundColorPrimary);if(e){return`hsla(${e.hue}, ${e.saturation}%, ${e.lightness}%, ${n})`}return"transparent"}return a.backgroundColorPrimary}};
44
+ box-shadow: ${({planeOpacity:e,theme:t})=>0===e?"none":t.boxShadowUmbra};
45
+ color: ${({theme:e})=>e.colorPrimary};
46
+ opacity: ${({show:e})=>e?"1":"0"};
47
+ user-select: ${({show:e})=>e?"auto":"none"};
48
+
49
+ position: absolute;
50
+ height: auto;
51
+ width: 100%;
52
+ font-size: 0.9rem;
53
+ font-family: ${({theme:e})=>e.fontFamilySansSerif};
54
+ transition: background-color 300ms linear;
55
+
56
+ display: grid;
57
+ grid-template-columns: 1fr;
58
+ grid-template-rows: ${({planeControls:e})=>e?"56px auto":"auto"};
59
+
60
+ transform-origin: 0 0 0;
61
+ `,Dt=M.default.a`
62
+ position: absolute;
63
+ top: 0;
64
+ left: 0;
65
+ height: 0;
66
+ width: 0;
67
+ pointer-events: none;
68
+ user-select: none;
69
+ `,xt=M.default.div`
70
+ background-color: ${({theme:e,planeControls:t,planeOpacity:a,transparentUI:n,mouseOver:r})=>n&&!r?e.backgroundColorPrimaryAlpha:0===a?"transparent":t?e.backgroundColorDark:e.backgroundColorPrimary};
71
+
72
+ position: absolute;
73
+ top: 0;
74
+ left: -100px;
75
+ height: 30px;
76
+ width: 100px;
77
+ opacity: 0.5;
78
+
79
+ display: flex;
80
+ align-items: center;
81
+ justify-content: center;
82
+ `,Nt=o.connect((e=>({stateGeneralTheme:_t.themes.getGeneralTheme(e),stateConfiguration:_t.configuration.getConfiguration(e)})),(e=>({})),null,{context:Ge})((e=>{const{mouseOver:a,stateGeneralTheme:n,stateConfiguration:r}=e,{controls:o,opacity:i}=r.elements.plane,{transparentUI:l}=r.global;return x.default.createElement(xt,{theme:n,planeControls:o.show,planeOpacity:i,transparentUI:l,mouseOver:a,"data-plurid-entity":t.PLURID_ENTITY_PLANE_BRIDGE})})),Mt=e=>{const{theme:t,refreshing:a,refreshPlane:n}=e;return x.default.createElement(d.PluridIconReset,{atClick:()=>{n()},theme:t,title:"refresh",style:{opacity:a?"0":"1",pointerEvents:a?"none":void 0}})},kt=e=>{const{theme:t,isolated:a,isolatePlane:n}=e,r=a?"isolated":"isolate",o=!!a;return x.default.createElement(d.PluridIconRectangle,{atClick:()=>{n()},theme:t,title:r,fill:o})},Ft=M.default.div`
83
+ background-color: ${({transparentUI:e,mouseOver:t,theme:a})=>e&&!t?"transparent":a.backgroundColorDark};
84
+ box-shadow: ${({theme:e})=>e.boxShadowUmbraInset};
85
+
86
+ width: 100%;
87
+ display: grid;
88
+ align-items: center;
89
+ justify-content: center;
90
+ grid-template-rows: 1fr;
91
+ grid-template-columns: 1fr 2fr 1fr;
92
+ transition: background-color 300ms linear;
93
+
94
+ @media (max-width: 800px) {
95
+ grid-template-columns: 1fr 3fr 1fr;
96
+ }
97
+ `,Bt=c.css`
98
+ margin: 0 1rem;
99
+ display: flex;
100
+ align-items: center;
101
+ gap: 1rem;
102
+ `,Yt=M.default.div`
103
+ ${Bt}
104
+ `,$t=M.default.div`
105
+ width: 100%;
106
+ position: relative;
107
+ display: flex;
108
+ align-items: center;
109
+ justify-content: center;
110
+ word-break: break-all;
111
+ `,Xt=M.default.div`
112
+ ${Bt}
113
+ justify-content: right;
114
+ `,Vt=o.connect((e=>({configuration:_t.configuration.getConfiguration(e),stateGeneralTheme:_t.themes.getGeneralTheme(e),stateInteractionTheme:_t.themes.getInteractionTheme(e),stateIsolatePlane:_t.space.getIsolatePlane(e)})),(e=>({dispatch:e})),null,{context:Ge})((e=>{const{plane:a,treePlane:n,parentTreePlane:o,mouseOver:i,refreshing:l,refreshPlane:s,isolatePlane:c,closePlane:u,configuration:f,stateGeneralTheme:p,stateIsolatePlane:m,dispatch:g}=e,{global:h,elements:T}=f,{transparentUI:E}=h,{title:S,pathbar:v}=T.plane.controls,{planeID:P,route:b,routeDivisions:R}=n,{protocol:I,host:C}=R;C.value,encodeURIComponent(b);const w=m===P,[O,_]=r.useState(n.route);return r.useState(!1),r.useState(!1),x.default.createElement(Ft,{theme:p,mouseOver:i,transparentUI:E,"data-plurid-entity":t.PLURID_ENTITY_PLANE_CONTROLS},x.default.createElement(Yt,null,o&&x.default.createElement(d.PluridIconArrowLeft,{atClick:e=>{Et(g,o,e)},theme:p,title:"back"}),x.default.createElement(d.PluridIconFrame,{atClick:e=>{Et(g,n,e,!1)},theme:p,title:"focus"}),x.default.createElement(Mt,{theme:p,refreshing:l,refreshPlane:s}),x.default.createElement(kt,{theme:p,isolated:w,isolatePlane:c})),x.default.createElement($t,null,S&&x.default.createElement(x.default.Fragment,null,O)),x.default.createElement(Xt,null,x.default.createElement(d.PluridIconDelete,{atClick:()=>{u()},theme:p,title:"close"})))})),zt=M.default.div`
115
+ position: relative;
116
+ `,Kt=e=>{const{children:a}=e,n=r.useRef(null);return x.default.createElement(zt,{ref:n,"data-plurid-entity":t.PLURID_ENTITY_PLANE_CONTENT},a)},Zt=o.connect((e=>({stateTree:_t.space.getTree(e),stateViewSize:_t.space.getViewSize(e),stateActivePlaneID:_t.space.getActivePlaneID(e),stateIsolatePlane:_t.space.getIsolatePlane(e),stateGeneralTheme:_t.themes.getGeneralTheme(e),stateConfiguration:_t.configuration.getConfiguration(e)})),(e=>({dispatchSetSpaceField:t=>e(qe.space.setSpaceField(t)),dispatchUpdateSpaceTreePlane:t=>e(qe.space.updateSpaceTreePlane(t))})),null,{context:Ge})((e=>{const n=r.useContext(He);if(!n)return x.default.createElement(x.default.Fragment,null);const{planeRenderError:o,defaultPubSub:i}=n,{planeID:s,plane:c,treePlane:d,children:f,stateTree:p,stateViewSize:m,stateActivePlaneID:g,stateIsolatePlane:h,stateGeneralTheme:T,stateConfiguration:E,dispatchSetSpaceField:S,dispatchUpdateSpaceTreePlane:v}=e,{global:P,elements:b}=E,{transparentUI:R}=P,{controls:I,width:C,opacity:w}=b.plane,O=I.show;l.mathematics.numbers.checkIntegerNonUnit(C)||m.width;const _=a.space.tree.logic.getTreePlaneByID(p,d.parentPlaneID),y=r.useRef(null),[L,A]=r.useState(0),[U,D]=r.useState(!1),[N,M]=r.useState(!1),k=()=>{D(!0),setTimeout((()=>{A((e=>++e)),D(!1)}),250)},F=u.useDebouncedCallback((()=>{if(g===s)return;S({field:"activePlaneID",value:s})}),500);r.useEffect((()=>{S({field:"activePlaneID",value:N?s:""})}),[s,N]),r.useEffect((()=>{const e=i.subscribe({topic:t.PLURID_PUBSUB_TOPIC.REFRESH_PLANE,callback:e=>{const{id:t}=e;t===s&&k()}});return()=>{i.unsubscribe(e)}}),[L,s]);const B=s+"-"+L,Y=s+t.FOCUS_ANCHOR_SUFFIX,$=(()=>{if(d.show&&h)return h===s?"1":"0"})(),X=(()=>{if(d.show&&h&&h!==s)return"none"})(),V=a.cleanTemplate(`\n translateX(${d.location.translateX}px)\n translateY(${d.location.translateY}px)\n translateZ(${d.location.translateZ}px)\n rotateX(${d.location.rotateX}deg)\n rotateY(${d.location.rotateY}deg)\n `),z={};return x.default.createElement(Ut,{key:B,ref:y,theme:T,planeControls:O,planeOpacity:w,show:d.show,id:s,style:{width:"100%",transform:V,opacity:$,pointerEvents:X},onMouseEnter:()=>M(!0),onMouseLeave:()=>M(!1),onMouseOver:()=>F(),onMouseMove:()=>F(),transparentUI:R,mouseOver:N,"data-plurid-plane":s,"data-plurid-entity":t.PLURID_ENTITY_PLANE},x.default.createElement(Dt,{tabIndex:0,id:Y}),d.show&&x.default.createElement(x.default.Fragment,null,d.parentPlaneID&&x.default.createElement(Nt,{mouseOver:N}),O&&x.default.createElement(Vt,{plane:c,treePlane:d,parentTreePlane:_,mouseOver:N,refreshing:U,refreshPlane:k,isolatePlane:()=>{const e=h!==s?s:"";i.publish({topic:t.PLURID_PUBSUB_TOPIC.ISOLATE_PLANE,data:{id:e}})},closePlane:()=>{i.publish({topic:t.PLURID_PUBSUB_TOPIC.CLOSE_PLANE,data:{id:s}})}}),o?x.default.createElement(At,{renderError:"boolean"!=typeof o?o:void 0},x.default.createElement(Kt,Object.assign({},z),f)):x.default.createElement(Kt,Object.assign({},z),f)))})),jt=e=>!!e&&("string"!=typeof e&&!e.url),Gt=M.default.div`
117
+ transform-style: preserve-3d;
118
+ `,Wt=o.connect((e=>({stateTree:_t.space.getTree(e)})),(e=>({})),null,{context:Ge})((e=>{const{plane:a,stateTree:n}=e,{location:o}=a,i=r.useContext(He);if(!i)return x.default.createElement(x.default.Fragment,null);const{planesRegistrar:l,planeContext:s,planeContextValue:c,customPlane:u,matchedRoute:d,defaultPubSub:f}=i,p=u,m=e=>{if(!e.children||0===e.children.length)return[];const t=[],a=ie(l);return e.children.forEach((e=>{if(!a)return;const n=e.sourceID,r=a.get(n);if(r){const a=()=>{const t=r.component,a={plane:{value:r.route.absolute,planeID:e.planeID,parentPlaneID:e.parentPlaneID,fragments:r.route.fragments,parameters:r.route.parameters,query:r.route.query},route:{value:(null==d?void 0:d.match.value)||"",parameters:(null==d?void 0:d.match.parameters)||{},query:(null==d?void 0:d.match.query)||{}},pubSub:f},n={plurid:Object.assign({},a),key:"plurid-plane-"+e.planeID},o=jt(t),i=jt(p),l={key:"plurid-plane-child-"+e.planeID,plane:r,treePlane:e,planeID:e.planeID,location:e.location};return p&&i?x.default.createElement(p,Object.assign({},l)):o?x.default.createElement(Zt,Object.assign({},l),s?x.default.createElement(s.Provider,{value:c},x.default.createElement(t,Object.assign({},n))):x.default.createElement(t,Object.assign({},n))):x.default.createElement(x.default.Fragment,null)},n=a();t.push(n)}if(e.children){const a=m(e);a&&t.push(...a)}})),t},g=r.useMemo((()=>m(a)),[JSON.stringify(a),JSON.stringify(n)]),h=a.sourceID;if(!h)return x.default.createElement(x.default.Fragment,null);const T=se(h,l);if(!T)return x.default.createElement(x.default.Fragment,null);const E=T.component,S={plane:{value:T.route.absolute,planeID:a.planeID,parentPlaneID:a.parentPlaneID,fragments:T.route.fragments,parameters:T.route.parameters,query:T.route.query},route:{value:(null==d?void 0:d.match.value)||"",parameters:(null==d?void 0:d.match.parameters)||{},query:(null==d?void 0:d.match.query)||{}},pubSub:f},v={plurid:Object.assign({},S),key:"plurid-plane-"+a.planeID};return p?"function"!=typeof p?x.default.createElement(x.default.Fragment,null):x.default.createElement(Gt,{"data-plurid-entity":t.PLURID_ENTITY_ROOT},x.default.createElement(p,{plane:T,treePlane:a,planeID:a.planeID,location:o}),g):x.default.createElement(Gt,{"data-plurid-entity":t.PLURID_ENTITY_ROOT},x.default.createElement(Zt,{plane:T,treePlane:a,planeID:a.planeID,location:o},s?x.default.createElement(s.Provider,{value:c},x.default.createElement(E,Object.assign({},v))):x.default.createElement(E,Object.assign({},v))),g)})),Ht=M.default.div`
119
+ transform-style: preserve-3d;
120
+ transform-origin: 0 0 0;
121
+ `,qt=o.connect((e=>({stateConfiguration:_t.configuration.getConfiguration(e),spaceTransformMatrix:_t.space.getTransformMatrix(e),spaceAnimatedTransform:_t.space.getAnimatedTransform(e),spaceTransformTime:_t.space.getTransformTime(e),stateTree:_t.space.getTree(e)})),(e=>({})),null,{context:Ge})((e=>{const{spaceTransformMatrix:a,spaceAnimatedTransform:n,spaceTransformTime:r,stateTree:o}=e;return x.default.createElement(Ht,{style:{width:"100%",height:"undefined"!=typeof window?window.innerHeight+"px":"821px",transform:a,transition:n?`transform ${r}ms ease-in-out`:"initial"},"data-plurid-entity":t.PLURID_ENTITY_ROOTS},o.map((e=>x.default.createElement(Wt,{key:e.planeID,plane:e}))))})),Jt=c.keyframes`
122
+ from {
123
+ opacity: 0%;
124
+ }
125
+
126
+ to {
127
+ opacity: 100%;
128
+ }
129
+ `,Qt=e=>c.css`${Jt} ${e}ms linear 100ms forwards`,ea=M.default.div`
130
+ position: relative;
131
+ height: 100%;
132
+ overflow: hidden;
133
+ perspective: 2000px;
134
+ outline: none;
135
+
136
+ background: ${({opaque:e,theme:t})=>{if(e){return`radial-gradient(\n ellipse at center,\n ${"dark"===t.type?t.backgroundColorTertiary:t.backgroundColorPrimary} 0%,\n ${"dark"===t.type?t.backgroundColorPrimary:t.backgroundColorTertiary} 100%)\n `}return"transparent"}};
137
+
138
+ /* TOFIX */
139
+ /* opacity: ${({fadeInTime:e})=>e?"0":"1"};
140
+ animation: ${({isMounted:e,fadeInTime:t})=>e&&t?Qt(t):""}; */
141
+ `,ta=o.connect((e=>({stateConfiguration:_t.configuration.getConfiguration(e),stateGeneralTheme:_t.themes.getGeneralTheme(e)})),(e=>({})),null,{context:Ge})((e=>{const{stateConfiguration:a,stateGeneralTheme:n}=e,{space:o}=a,{opaque:i,fadeInTime:l}=o,[s,c]=r.useState(!1);return r.useEffect((()=>{c(!0)}),[]),x.default.createElement(ea,{theme:n,opaque:i,isMounted:s,fadeInTime:l,"data-plurid-entity":t.PLURID_ENTITY_SPACE},x.default.createElement(qt,null))})),aa=({size:e})=>{switch(e){case t.SIZES.SMALL:return"5px";case t.SIZES.NORMAL:return"10px";case t.SIZES.LARGE:return"15px";default:return"10px"}},na=M.default.div`
142
+ background-color: ${({theme:e})=>e.backgroundColorTertiaryAlpha};
143
+ height: ${aa};
144
+ width: ${aa};
145
+
146
+ position: absolute;
147
+ top: 50%;
148
+ left: 50%;
149
+ transform: translateX(-50%) translateY(-50%);
150
+ z-index: 99999;
151
+ border-radius: 100px;
152
+ user-select: none;
153
+ pointer-events: none;
154
+ touch-action: none;
155
+ `,ra=o.connect((e=>({stateGeneralTheme:_t.themes.getGeneralTheme(e),stateInteractionTheme:_t.themes.getInteractionTheme(e),stateConfiguration:_t.configuration.getConfiguration(e)})),(e=>({})),null,{context:Ge})((e=>{const{stateGeneralTheme:a,stateConfiguration:n}=e,{space:r}=n,{transformOrigin:o}=r,{show:i,size:l}=o;return i?x.default.createElement(na,{theme:a,size:l,"data-plurid-entity":t.PLURID_ENTITY_TRANSFORM_ORIGIN}):x.default.createElement(x.default.Fragment,null)}));var oa;!function(e){e.NONE="NONE",e.UNIVERSES="UNIVERSES",e.MORE="MORE"}(oa||(oa={}));const ia=M.default.div`
156
+ bottom: ${({conceal:e,mouseIn:t})=>e?t?"-5px":"-55px":"-5px"};
157
+ pointer-events: ${({showMenu:e})=>e!==oa.NONE?"all":"none"};
158
+ opacity: ${({fadeInTime:e})=>e?"0":"1"};
159
+ animation: ${({fadeInTime:e,isMounted:t})=>t&&e?Qt(e):""};
160
+
161
+ display: grid;
162
+ position: absolute;
163
+ left: 0;
164
+ right: 0;
165
+ height: 75px;
166
+ z-index: 9999;
167
+ transition: bottom 300ms ease-in-out;
168
+ `,la=M.default.div`
169
+ color: ${({theme:e})=>e.colorPrimary};
170
+ background-color: ${({theme:e,transparentUI:t})=>t?e.backgroundColorPrimaryAlpha:e.backgroundColorSecondary};
171
+ box-shadow: ${({theme:e})=>e.boxShadowUmbra};
172
+ grid-template-columns: ${({showIcons:e,showTransformButtons:t,documentsBased:a})=>e&&!t?a?"repeat(6, minmax(min-content, 40px))":"repeat(5, minmax(min-content, 40px))":t?a?"40px 200px 200px 200px 40px 40px":"40px 200px 200px 200px 40px":a?"repeat(6, minmax(min-content, 40px))":"repeat(5, minmax(min-content, 40px))"};
173
+ opacity: ${({opaque:e,mouseIn:t})=>e||t?"1":"0.4"};
174
+
175
+ z-index: 9999;
176
+ user-select: none;
177
+ /* height: 75px; */
178
+ display: grid;
179
+ pointer-events: all;
180
+ display: grid;
181
+ align-items: center;
182
+ justify-content: center;
183
+ justify-items: center;
184
+ border-radius: 22.5px;
185
+ margin: 0 auto;
186
+ margin-top: 10px;
187
+ margin-bottom: 20px;
188
+ padding: 0 22.5px;
189
+ font-size: 12px;
190
+ height: 45px;
191
+ transition: opacity 300ms ease-in-out;
192
+
193
+ :after {
194
+ content: '';
195
+ position: absolute;
196
+ top: 55px;
197
+ height: 20px;
198
+ left: 0;
199
+ right: 20%;
200
+ }
201
+
202
+ @media (max-width: 900px) {
203
+ :after {
204
+ right: 0;
205
+ }
206
+ }
207
+ `,sa=M.default.div`
208
+ padding: ${({button:e,showIcons:t,showTransformButtons:a})=>e||t&&!a?"0":"0 7px"};
209
+ background-color: ${({active:e,theme:t})=>e?t.backgroundColorTertiary:"transparent"};
210
+ min-width: ${({button:e})=>e?"40px":"70px"};
211
+
212
+ height: 45px;
213
+ display: grid;
214
+ align-items: center;
215
+ justify-content: center;
216
+ cursor: pointer;
217
+ user-select: none;
218
+
219
+ @media (hover: hover) {
220
+ :hover {
221
+ background: ${({theme:e})=>e.backgroundColorTertiary};
222
+ }
223
+ }
224
+ `,ca=M.default.div`
225
+ width: 40px;
226
+ display: grid;
227
+ place-content: center;
228
+
229
+ /* svg {
230
+ height: 15px;
231
+ width: 15px;
232
+ fill: white;
233
+ } */
234
+ `,ua=M.default.div`
235
+ position: absolute;
236
+ bottom: 75px;
237
+ max-height: 250px;
238
+ width: 380px;
239
+ left: 50%;
240
+ transform: translateX(-50%);
241
+ border-radius: 22.5px;
242
+ padding: 22px;
243
+ font-size: 0.8rem;
244
+ overflow: hidden;
245
+
246
+ background-color: ${e=>e.theme.backgroundColorSecondary};
247
+ box-shadow: ${e=>e.theme.boxShadowUmbra};
248
+
249
+ ul {
250
+ padding: 0;
251
+ list-style: none;
252
+ }
253
+ `;M.default.div`
254
+ display: flex;
255
+ justify-content: space-between;
256
+ align-items: center;
257
+ position: relative;
258
+
259
+ margin-bottom: ${e=>e.afterline?"30px":"10px"};
260
+
261
+ ${e=>e.afterline?"\n ::after {\n position: absolute;\n content: '';\n left: 0;\n right: 0;\n bottom: -15px;\n height: 1px;\n background-color: white;\n }\n ":""};
262
+ `;const da=M.default.div`
263
+ max-height: 210px;
264
+ overflow: scroll;
265
+ padding: 0 5px;
266
+
267
+ /* Hide Scrollbar */
268
+ scrollbar-width: none; /* Firefox 64 */
269
+ -ms-overflow-style: none; /* Internet Explorer 11 */
270
+ ::-webkit-scrollbar { /** WebKit */
271
+ display: none;
272
+ }
273
+
274
+ h5::first-child {
275
+ margin-top: 0;
276
+ }
277
+ `;M.default.li`
278
+ margin: 10px 0;
279
+ padding: 10px 20px;
280
+ border-radius: 100px;
281
+
282
+ cursor: ${e=>e.active?"initial":"pointer"};
283
+ background-color: ${e=>e.active?e.theme.backgroundColorTertiary:""};
284
+ box-shadow: ${e=>e.active?"inset 0px -1px 6px 0px "+e.theme.boxShadowUmbraColor:""};
285
+
286
+ :hover {
287
+ background-color: ${e=>e.theme.backgroundColorTertiary};
288
+ box-shadow: ${e=>e.active?"inset 0px -1px 6px 0px "+e.theme.boxShadowUmbraColor:e.theme.boxShadowUmbra};
289
+ }
290
+ `;const fa=o.connect((e=>({interactionTheme:_t.themes.getInteractionTheme(e),activeUniverseID:_t.space.getActiveUniverseID(e)})),(e=>({dispatchSetActiveUniverse:t=>e(qe.space.setActiveUniverse(t))})),null,{context:Ge})((e=>{const{interactionTheme:t,activeUniverseID:a,dispatchSetActiveUniverse:n}=e;return x.default.createElement(ua,{theme:t},x.default.createElement(da,null))})),pa=M.default.div`
291
+ h5 {
292
+ font-size: 1rem;
293
+ margin: 0;
294
+ }
295
+
296
+ margin-bottom: 2rem;
297
+ border-top-left-radius: 15px;
298
+ border-top-right-radius: 15px;
299
+
300
+ padding-bottom: ${e=>e.transparentUI&&e.toggled?"0.5rem":"0"};
301
+ background-color: ${e=>e.transparentUI&&e.mouseOver?e.theme.backgroundColorSecondary:"transparent"};
302
+ box-shadow: ${e=>e.transparentUI&&e.mouseOver?e.theme.boxShadowUmbra:"none"};
303
+ color: ${e=>e.theme.colorPrimary};
304
+ `,ma=M.default.div`
305
+ user-select: none;
306
+ cursor: pointer;
307
+ padding: 0.5rem;
308
+ margin-bottom: 0.5rem;
309
+ border-bottom: 1px solid transparent;
310
+ text-align: left;
311
+
312
+ :hover {
313
+ border-bottom: 1px solid ${e=>e.theme.colorPrimary};
314
+ }
315
+ `,ga=M.default.div`
316
+ `,{typography:{Heading:ha}}=f.universal,Ta=o.connect((e=>({interactionTheme:_t.themes.getInteractionTheme(e),configuration:_t.configuration.getConfiguration(e)})),(e=>({})),null,{context:Ge})((e=>{const{heading:t,items:a,toggled:n,toggle:o,interactionTheme:i,configuration:l}=e,{global:s}=l,{transparentUI:c}=s,[u,d]=r.useState(!1);return x.default.createElement(pa,{theme:i,onMouseEnter:()=>d(!0),onMouseLeave:()=>d(!1),transparentUI:c,mouseOver:u,toggled:n},x.default.createElement(ma,{theme:i,onClick:()=>o()},x.default.createElement(ha,{theme:i,type:"h5"},t)),n&&x.default.createElement(ga,null,a))})),Ea=M.default.div`
317
+ position: absolute;
318
+ bottom: 75px;
319
+ height: 280px;
320
+ width: 380px;
321
+ left: 50%;
322
+ transform: translateX(-50%);
323
+ border-radius: 22.5px;
324
+ padding: 22px;
325
+ font-size: 0.8rem;
326
+ overflow: hidden;
327
+
328
+ background-color: ${e=>e.transparentUI?e.theme.backgroundColorPrimaryAlpha:e.theme.backgroundColorSecondary};
329
+ box-shadow: ${e=>e.theme.boxShadowUmbra};
330
+ `,Sa=M.default.div`
331
+ display: flex;
332
+ justify-content: space-between;
333
+ align-items: center;
334
+ position: relative;
335
+ min-height: 30px;
336
+ padding: 0 0.5rem;
337
+
338
+ margin-bottom: ${e=>e.last?"0":e.afterline?"30px":"10px"};
339
+
340
+ ${e=>e.afterline?`\n ::after {\n position: absolute;\n content: '';\n left: 0;\n right: 0;\n bottom: -15px;\n height: 1px;\n background-color: ${e.theme?e.theme.colorPrimary:"white"};\n }\n `:""};
341
+ `,va=M.default.div`
342
+ height: 240px;
343
+ overflow: scroll;
344
+ padding: 0 5px;
345
+
346
+ /* Hide Scrollbar */
347
+ scrollbar-width: none; /* Firefox 64 */
348
+ -ms-overflow-style: none; /* Internet Explorer 11 */
349
+ ::-webkit-scrollbar { /** WebKit */
350
+ display: none;
351
+ }
352
+
353
+ h5::first-child {
354
+ margin-top: 0;
355
+ }
356
+ `,{inputs:{Dropdown:Pa}}=f.universal,ba=o.connect((e=>({stateLanguage:_t.configuration.getConfiguration(e).global.language,interactionTheme:_t.themes.getInteractionTheme(e),configuration:_t.configuration.getConfiguration(e)})),(e=>({dispatchSetConfigurationThemeGeneralAction:t=>e(qe.configuration.setConfigurationThemeGeneral(t)),dispatchSetConfigurationThemeInteractionAction:t=>e(qe.configuration.setConfigurationThemeInteraction(t)),dispatchSetConfigurationLanguage:t=>e(qe.configuration.setConfigurationLanguage(t)),dispatchSetGeneralTheme:t=>e(qe.themes.setGeneralTheme(t)),dispatchSetInteractionTheme:t=>e(qe.themes.setInteractionTheme(t))})),null,{context:Ge})((e=>{const{stateLanguage:n,interactionTheme:o,configuration:i,dispatchSetGeneralTheme:l,dispatchSetInteractionTheme:s,dispatchSetConfigurationThemeGeneralAction:c,dispatchSetConfigurationThemeInteractionAction:u,dispatchSetConfigurationLanguage:d}=e,f=i.global.theme,[p,m]=r.useState("object"==typeof f?f.general:f),[g,h]=r.useState("object"==typeof f?f.interaction:f);return r.useEffect((()=>{"object"==typeof f?(m(f.general),h(f.interaction)):(m(f),h(f))}),[f]),x.default.createElement(x.default.Fragment,null,x.default.createElement(Sa,null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerGlobalGeneralTheme),x.default.createElement(Pa,{selectables:Object.keys(N.default),selected:"string"==typeof p?p:"",atSelect:e=>(e=>{l(N.default[e]),c(e)})(e),theme:o,filterable:!0,heightItems:3,width:90,style:{fontSize:"0.8rem"}})),x.default.createElement(Sa,null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerGlobalInteractionTheme),x.default.createElement(Pa,{selectables:Object.keys(N.default),selected:"string"==typeof g?g:"",atSelect:e=>(e=>{s(N.default[e]),u(e)})(e),theme:o,heightItems:3,filterable:!0,width:90,style:{fontSize:"0.8rem"}})),x.default.createElement(Sa,{last:!0},a.internatiolate(n,t.internationalization.fields.toolbarDrawerGlobalLanguage),x.default.createElement(Pa,{selectables:t.internationalization.languages,selected:n,atSelect:e=>{d(e)},theme:o,heightItems:3,width:90,style:{fontSize:"0.8rem"}})))})),{inputs:{Switch:Ra}}=f.universal,Ia=o.connect((e=>({stateLanguage:_t.configuration.getConfiguration(e).global.language,interactionTheme:_t.themes.getInteractionTheme(e),configuration:_t.configuration.getConfiguration(e)})),(e=>({dispatchToggleConfigurationSpaceTransformMultimode:t=>e(qe.configuration.toggleConfigurationSpaceTransformMultimode(t)),dispatchSetConfigurationSpaceTransformTouch:t=>e(qe.configuration.setConfigurationSpaceTransformTouch(t)),dispatchSetConfigurationSpaceTransformLocks:t=>e(qe.configuration.setConfigurationSpaceTransformLocks(t))})),null,{context:Ge})((e=>{const{stateLanguage:n,interactionTheme:r,configuration:o,dispatchToggleConfigurationSpaceTransformMultimode:i,dispatchSetConfigurationSpaceTransformTouch:l,dispatchSetConfigurationSpaceTransformLocks:s}=e,{transformMultimode:c,transformLocks:u,transformTouch:d}=o.space;return x.default.createElement(x.default.Fragment,null,x.default.createElement(Sa,null,x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerTransformMultiModeTransform)),x.default.createElement(Ra,{theme:r,checked:c,atChange:()=>i(!c),exclusive:!0,level:2})),x.default.createElement(Sa,null,x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerTransformAllowRotationX)),x.default.createElement(Ra,{theme:r,checked:u.rotationX,atChange:()=>s("rotationX"),exclusive:!0,level:2})),x.default.createElement(Sa,null,x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerTransformAllowRotationY)),x.default.createElement(Ra,{theme:r,checked:u.rotationY,atChange:()=>s("rotationY"),exclusive:!0,level:2})),x.default.createElement(Sa,null,x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerTransformAllowTranslationX)),x.default.createElement(Ra,{theme:r,checked:u.translationX,atChange:()=>s("translationX"),exclusive:!0,level:2})),x.default.createElement(Sa,null,x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerTransformAllowTranslationY)),x.default.createElement(Ra,{theme:r,checked:u.translationY,atChange:()=>s("translationY"),exclusive:!0,level:2})),x.default.createElement(Sa,null,x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerTransformAllowTranslationZ)),x.default.createElement(Ra,{theme:r,checked:u.translationZ,atChange:()=>s("translationZ"),exclusive:!0,level:2})),x.default.createElement(Sa,null,x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerTransformAllowScale)),x.default.createElement(Ra,{theme:r,checked:u.scale,atChange:()=>s("scale"),exclusive:!0,level:2})),x.default.createElement(Sa,{last:!0},x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerTransformTouchTransform),": ",d===t.TRANSFORM_TOUCHES.PAN?"pan":"swipe"),x.default.createElement(Ra,{theme:r,checked:d===t.TRANSFORM_TOUCHES.PAN,atChange:()=>d===t.TRANSFORM_TOUCHES.PAN?l(t.TRANSFORM_TOUCHES.SWIPE):l(t.TRANSFORM_TOUCHES.PAN),level:2})))})),{inputs:{Dropdown:Ca,Switch:wa,Slider:Oa}}=f.universal,_a=o.connect((e=>({interactionTheme:_t.themes.getInteractionTheme(e),configuration:_t.configuration.getConfiguration(e)})),(e=>({dispatchSetConfigurationPlaneOpacity:t=>e(qe.configuration.setConfigurationPlaneOpacity(t)),dispatchToggleConfigurationSpaceTransparentUI:()=>e(qe.configuration.toggleConfigurationSpaceTransparentUI()),dispatchToggleConfigurationSpaceShowTransformOrigin:()=>e(qe.configuration.toggleConfigurationShowTransformOrigin()),dispatchSetConfigurationSpaceTransformOriginSize:t=>e(qe.configuration.setConfigurationSpaceTransformOriginSize(t)),dispatchSetConfigurationSpaceLayoutType:t=>e(qe.configuration.setConfigurationSpaceLayout(t))})),null,{context:Ge})((e=>{const{interactionTheme:n,configuration:r,dispatchSetConfigurationPlaneOpacity:o,dispatchToggleConfigurationSpaceTransparentUI:i,dispatchToggleConfigurationSpaceShowTransformOrigin:l,dispatchSetConfigurationSpaceTransformOriginSize:s,dispatchSetConfigurationSpaceLayoutType:c}=e,{global:u,space:d,elements:f}=r,{transparentUI:p,language:m}=u,{layout:g,transformOrigin:h}=d,T=t.layoutNames[g.type],{show:E,size:S}=h,v=f.plane.opacity;return x.default.createElement(x.default.Fragment,null,x.default.createElement(Sa,null,a.internatiolate(m,t.internationalization.fields.toolbarDrawerSpaceTransparentUserInterface),x.default.createElement(wa,{checked:p,atChange:()=>i(),exclusive:!0,level:2,theme:n})),x.default.createElement(Sa,null,a.internatiolate(m,t.internationalization.fields.toolbarDrawerSpaceShowTransformOrigin),x.default.createElement(wa,{checked:E,atChange:()=>l(),exclusive:!0,level:2,theme:n})),x.default.createElement(Sa,null,a.internatiolate(m,t.internationalization.fields.toolbarDrawerSpaceTransformOriginSize),x.default.createElement(Ca,{selectables:["small","normal","large"],selected:S.toLowerCase(),atSelect:e=>{const a=e.toUpperCase();a!==t.SIZES.SMALL&&a!==t.SIZES.NORMAL&&a!==t.SIZES.LARGE||s(a)},heightItems:3,theme:n})),x.default.createElement(Sa,null,a.internatiolate(m,t.internationalization.fields.toolbarDrawerSpacePlaneOpacity),x.default.createElement(Oa,{value:v,max:1,min:0,step:.1,defaultValue:100,atChange:e=>o(e),thumbSize:"large",level:2,theme:n})),x.default.createElement(Sa,{last:!0},a.internatiolate(m,t.internationalization.fields.toolbarDrawerSpaceLayoutType),x.default.createElement(Ca,{selectables:[...Object.values(t.layoutNames)],selected:T,atSelect:e=>{const t=e.toUpperCase().replace(/\s/g,"_");c(t)},heightItems:3,theme:n,width:100})))})),{inputs:{Switch:ya}}=f.universal,La=o.connect((e=>({stateLanguage:_t.configuration.getConfiguration(e).global.language,interactionTheme:_t.themes.getInteractionTheme(e),configuration:_t.configuration.getConfiguration(e),viewSize:_t.space.getViewSize(e)})),(e=>({dispatchToggleConfigurationToolbarConceal:()=>e(qe.configuration.toggleConfigurationToolbarConceal()),dispatchToggleConfigurationToolbarTransformIcons:()=>e(qe.configuration.toggleConfigurationToolbarTransformIcons()),dispatchToggleConfigurationToolbarTransformButtons:()=>e(qe.configuration.toggleConfigurationToolbarTransformButtons()),dispatchToggleConfigurationToolbarOpaque:()=>e(qe.configuration.toggleConfigurationToolbarOpaque())})),null,{context:Ge})((e=>{const{stateLanguage:n,interactionTheme:o,configuration:i,viewSize:l,dispatchToggleConfigurationToolbarConceal:s,dispatchToggleConfigurationToolbarTransformIcons:c,dispatchToggleConfigurationToolbarTransformButtons:u,dispatchToggleConfigurationToolbarOpaque:d}=e,{toolbar:f}=i.elements,{conceal:p,opaque:m,transformIcons:g,transformButtons:h}=f,[T,E]=r.useState(!1);return r.useEffect((()=>{l.width<800?E(!0):E(!1)}),[l.width]),x.default.createElement(x.default.Fragment,null,x.default.createElement(Sa,null,x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerToolbarAlwaysOpaque)),x.default.createElement(ya,{theme:o,checked:m,atChange:()=>d(),exclusive:!0,level:2})),x.default.createElement(Sa,null,x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerToolbarShowTransformIcons)),x.default.createElement(ya,{theme:o,checked:g,atChange:()=>c(),exclusive:!0,level:2})),!T&&x.default.createElement(Sa,null,x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerToolbarShowTransformArrows)),x.default.createElement(ya,{theme:o,checked:h,atChange:()=>u(),exclusive:!0,level:2})),x.default.createElement(Sa,{last:!0},x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerToolbarConcealToolbar)),x.default.createElement(ya,{theme:o,checked:p,atChange:()=>s(),exclusive:!0,level:2})))})),{inputs:{Switch:Aa}}=f.universal,Ua=o.connect((e=>({stateLanguage:_t.configuration.getConfiguration(e).global.language,interactionTheme:_t.themes.getInteractionTheme(e),configuration:_t.configuration.getConfiguration(e)})),(e=>({dispatchToggleConfigurationViewcubeHide:t=>e(qe.configuration.toggleConfigurationViewcubeHide(t)),dispatchToggleConfigurationViewcubeButtons:t=>e(qe.configuration.toggleConfigurationViewcubeButtons(t)),dispatchToggleConfigurationViewcubeOpaque:t=>e(qe.configuration.toggleConfigurationViewcubeOpaque(t)),dispatchToggleConfigurationViewcubeConceal:()=>e(qe.configuration.toggleConfigurationViewcubeConceal())})),null,{context:Ge})((e=>{const{stateLanguage:n,interactionTheme:r,configuration:o,dispatchToggleConfigurationViewcubeHide:i,dispatchToggleConfigurationViewcubeButtons:l,dispatchToggleConfigurationViewcubeOpaque:s,dispatchToggleConfigurationViewcubeConceal:c}=e,{viewcube:u}=o.elements,{show:d,buttons:f,opaque:p,conceal:m}=u;return x.default.createElement(x.default.Fragment,null,x.default.createElement(Sa,{last:!d},x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerViewcubeShowViewcube)),x.default.createElement(Aa,{theme:r,checked:d,atChange:()=>i(!d),exclusive:!0,level:2})),d&&x.default.createElement(x.default.Fragment,null,x.default.createElement(Sa,null,x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerViewcubeShowTransformButtons)),x.default.createElement(Aa,{theme:r,checked:f,atChange:()=>l(!f),exclusive:!0,level:2})),x.default.createElement(Sa,null,x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerViewcubeAlwaysOpaque)),x.default.createElement(Aa,{theme:r,checked:p,atChange:()=>s(!p),exclusive:!0,level:2})),x.default.createElement(Sa,{last:!0},x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerViewcubeConcealViewcube)),x.default.createElement(Aa,{theme:r,checked:m,atChange:()=>c(),exclusive:!0,level:2}))))})),{inputs:{Slider:Da}}=f.universal,xa=o.connect((e=>({stateLanguage:_t.configuration.getConfiguration(e).global.language,stateConfiguration:_t.configuration.getConfiguration(e),stateInteractionTheme:_t.themes.getInteractionTheme(e)})),(e=>({dispatchSetConfigurationSpaceCullingDistance:t=>e(qe.configuration.setConfigurationSpaceCullingDistance(t))})),null,{context:Ge})((e=>{const{stateLanguage:n,stateConfiguration:o,stateInteractionTheme:i,dispatchSetConfigurationSpaceCullingDistance:l}=e,{cullingDistance:s}=o.space,[c,d]=r.useState(s),f=u.useDebouncedCallback((e=>{l(e)}),300);return x.default.createElement(x.default.Fragment,null,x.default.createElement(Sa,null,x.default.createElement("div",null,a.internatiolate(n,t.internationalization.fields.toolbarDrawerTechnicalCullingDistance)),x.default.createElement(Da,{theme:i,value:c,atChange:e=>{d(e),f(e)},min:1e3,max:5e3,defaultValue:1500})))})),Na=o.connect((e=>({interactionTheme:_t.themes.getInteractionTheme(e),configuration:_t.configuration.getConfiguration(e)})),(e=>({})),null,{context:Ge})((e=>{const{interactionTheme:n,configuration:r}=e,{global:o}=r,{language:i}=o;return x.default.createElement(x.default.Fragment,null,t.defaultShortcuts.map(((e,r)=>{const{type:o}=e,l=t.shortcutsNames[o],{name:s,internationalizedKey:c,key:u,modifier:d}=l,f=Array.isArray(d)?d.reduce(((e,t)=>e+" + "+t))+" +":"string"==typeof d?d+" +":"",p=a.internatiolate(i,s),m=u,g=c?a.internatiolate(i,m):u,h="TURN_DOWN"===o||"TOGGLE_ROTATE"===o||"TOGGLE_TRANSLATE"===o||"TOGGLE_SCALE"===o;return x.default.createElement(Sa,{key:s,theme:n,afterline:h,last:r===t.defaultShortcuts.length-1},x.default.createElement("div",null,p),x.default.createElement("div",null,f," ",g))})))})),Ma={GLOBAL:{name:t.internationalization.fields.toolbarDrawerGlobalTitle,drawer:t.TOOLBAR_DRAWERS.GLOBAL,component:x.default.createElement(ba,null)},TRANSFORM:{name:t.internationalization.fields.toolbarDrawerTransformTitle,drawer:t.TOOLBAR_DRAWERS.TRANSFORM,component:x.default.createElement(Ia,null)},SPACE:{name:t.internationalization.fields.toolbarDrawerSpaceTitle,drawer:t.TOOLBAR_DRAWERS.SPACE,component:x.default.createElement(_a,null)},TOOLBAR:{name:t.internationalization.fields.toolbarDrawerToolbarTitle,drawer:t.TOOLBAR_DRAWERS.TOOLBAR,component:x.default.createElement(La,null)},VIEWCUBE:{name:t.internationalization.fields.toolbarDrawerViewcubeTitle,drawer:t.TOOLBAR_DRAWERS.VIEWCUBE,component:x.default.createElement(Ua,null)},TECHNICAL:{name:t.internationalization.fields.toolbarDrawerTechnicalTitle,drawer:t.TOOLBAR_DRAWERS.TECHNICAL,component:x.default.createElement(xa,null)},SHORTCUTS:{name:t.internationalization.fields.toolbarDrawerShortcutsTitle,drawer:t.TOOLBAR_DRAWERS.SHORTCUTS,component:x.default.createElement(Na,null)}},ka=Object.values(Ma),Fa=o.connect((e=>({stateLanguage:_t.configuration.getConfiguration(e).global.language,stateInteractionTheme:_t.themes.getInteractionTheme(e),stateConfiguration:_t.configuration.getConfiguration(e),stateToolbarMenuScrollPosition:_t.ui.getToolbarScrollPosition(e)})),(e=>({dispatchToggleConfigurationToolbarToggleDrawer:t=>e(qe.configuration.toggleConfigurationToolbarToggleDrawer(t)),dispatchSetUIToolbarScrollPosition:t=>e(qe.ui.setUIToolbarScrollPosition(t))})),null,{context:Ge})((e=>{const{stateLanguage:t,stateInteractionTheme:n,stateConfiguration:o,stateToolbarMenuScrollPosition:i,dispatchToggleConfigurationToolbarToggleDrawer:l,dispatchSetUIToolbarScrollPosition:s}=e,{global:c,elements:d}=o,{transparentUI:f}=c,{toolbar:p}=d,{drawers:m,toggledDrawers:g}=p,h=(e=>{if(0===e.length||e.includes("ALL"))return ka;const t=[];for(const a of e){const e=Ma[a];t.push(e)}return t})(m),T=r.useRef(null),E=u.useDebouncedCallback((e=>{if(T.current){const e=T.current.scrollTop;s(e)}}),100);return r.useEffect((()=>(T.current&&T.current.addEventListener("wheel",E),()=>{T.current&&T.current.removeEventListener("wheel",E)})),[T.current]),r.useEffect((()=>{T.current&&(T.current.scrollTop=i)}),[i,T.current]),x.default.createElement(Ea,{theme:n,transparentUI:f},x.default.createElement(va,{ref:T},h.map((e=>{const{name:n,drawer:r,component:o}=e,i=a.internatiolate(t,n);return x.default.createElement(Ta,{key:n,heading:i,items:x.default.createElement(x.default.Fragment,null,o),toggled:g.includes("ALL")||g.includes(r),toggle:()=>l(r)})}))))})),Ba=M.default.div`
357
+ display: grid;
358
+ align-items: center;
359
+ justify-items: center;
360
+ grid-template-columns: ${e=>e.showTransformButtons?"30px 30px 60px 30px 30px":"1fr"};
361
+ `,Ya=M.default.div`
362
+ user-select: none;
363
+ cursor: pointer;
364
+ border-radius: 50px;
365
+ width: 25px;
366
+ height: 25px;
367
+ display: grid;
368
+ place-content: center;
369
+ padding: 2px;
370
+
371
+ background-color: ${({pressed:e,theme:t})=>e?t.backgroundColorTertiary:"initial"};
372
+
373
+ :hover {
374
+ background-color: ${({theme:e})=>e.backgroundColorTertiary};
375
+ }
376
+ `,$a={left:"◀",right:"▶",up:"▲",down:"▼"},Xa="tap press pressup",Va=o.connect((e=>({interactionTheme:_t.themes.getInteractionTheme(e)})),(e=>({})),null,{context:Ge})((e=>{const{direction:t,transform:a,interactionTheme:n}=e,o=$a[t]||"",i=r.useRef(null),l=r.useRef(null),[s,c]=r.useState(!1),u=e=>{const t={altKey:e.srcEvent.altKey};switch(e.type){case"tap":a(t),i.current&&(c(!1),clearInterval(i.current));break;case"press":c(!0),i.current=setInterval((()=>{a(t)}),30);break;case"pressup":c(!1),i.current&&clearInterval(i.current)}};return r.useEffect((()=>{if("undefined"==typeof window)return;let e;return We(void 0,void 0,void 0,(function*(){const t=(yield Ot()).default;e=new t(l.current),e.on(Xa,u)})),()=>{e&&e.off(Xa,u)}}),[l.current]),x.default.createElement(Ya,{ref:l,theme:n,pressed:s,onMouseLeave:()=>{i.current&&(c(!1),clearInterval(i.current))}},o)})),za=o.connect((e=>({stateLanguage:_t.configuration.getConfiguration(e).global.language,interactionTheme:_t.themes.getInteractionTheme(e)})),(e=>({rotateUp:()=>e(qe.space.rotateUp()),rotateDown:()=>e(qe.space.rotateDown()),rotateLeft:()=>e(qe.space.rotateLeft()),rotateRight:()=>e(qe.space.rotateRight())})),null,{context:Ge})((e=>{const{showTransformButtons:n,showIcons:r,transformMode:o,toggleTransform:i,stateLanguage:l,interactionTheme:s,rotateUp:c,rotateDown:u,rotateLeft:f,rotateRight:p}=e;return x.default.createElement(Ba,{showTransformButtons:n},n&&x.default.createElement(x.default.Fragment,null,x.default.createElement(Va,{direction:"left",transform:()=>p()}),x.default.createElement(Va,{direction:"up",transform:()=>c()})),x.default.createElement(sa,{theme:s,onClick:()=>i(t.TRANSFORM_MODES.ROTATION),active:o===t.TRANSFORM_MODES.ROTATION,showIcons:r,showTransformButtons:n,button:r},r?x.default.createElement(ca,null,x.default.createElement(d.PluridIconRotate,null)):x.default.createElement(x.default.Fragment,null,a.internatiolate(l,t.internationalization.fields.toolbarTransformRotate))),n&&x.default.createElement(x.default.Fragment,null,x.default.createElement(Va,{direction:"down",transform:()=>u()}),x.default.createElement(Va,{direction:"right",transform:()=>f()})))})),Ka=M.default.div`
377
+ display: grid;
378
+ align-items: center;
379
+ justify-items: center;
380
+ grid-template-columns: ${e=>e.showTransformButtons?"30px 60px 30px":"1fr"};
381
+ `,Za=o.connect((e=>({stateLanguage:_t.configuration.getConfiguration(e).global.language,interactionTheme:_t.themes.getInteractionTheme(e)})),(e=>({scaleUp:()=>e(qe.space.scaleUp()),scaleDown:()=>e(qe.space.scaleDown())})),null,{context:Ge})((e=>{const{showTransformButtons:n,showIcons:r,transformMode:o,toggleTransform:i,stateLanguage:l,interactionTheme:s,scaleUp:c,scaleDown:u}=e;return x.default.createElement(Ka,{showTransformButtons:n},n&&x.default.createElement(Va,{direction:"up",transform:()=>c()}),x.default.createElement(sa,{theme:s,onClick:()=>i(t.TRANSFORM_MODES.SCALE),active:o===t.TRANSFORM_MODES.SCALE,showIcons:r,showTransformButtons:n,button:r},r?x.default.createElement(ca,null,x.default.createElement(d.PluridIconScale,null)):x.default.createElement(x.default.Fragment,null,a.internatiolate(l,t.internationalization.fields.toolbarTransformScale))),n&&x.default.createElement(Va,{direction:"down",transform:()=>u()}))})),ja=M.default.div`
382
+ display: grid;
383
+ align-items: center;
384
+ justify-items: center;
385
+ grid-template-columns: ${e=>e.showTransformButtons?"30px 30px 60px 30px 30px":"1fr"};
386
+ `,Ga=o.connect((e=>({stateLanguage:_t.configuration.getConfiguration(e).global.language,interactionTheme:_t.themes.getInteractionTheme(e)})),(e=>({translateUp:()=>e(qe.space.translateUp()),translateDown:()=>e(qe.space.translateDown()),translateLeft:()=>e(qe.space.translateLeft()),translateRight:()=>e(qe.space.translateRight()),translateIn:()=>e(qe.space.translateIn()),translateOut:()=>e(qe.space.translateOut())})),null,{context:Ge})((e=>{const{showTransformButtons:n,showIcons:r,transformMode:o,toggleTransform:i,stateLanguage:l,interactionTheme:s,translateUp:c,translateDown:u,translateLeft:f,translateRight:p,translateIn:m,translateOut:g}=e;return x.default.createElement(ja,{showTransformButtons:n},n&&x.default.createElement(x.default.Fragment,null,x.default.createElement(Va,{direction:"left",transform:()=>f()}),x.default.createElement(Va,{direction:"up",transform:e=>{e.altKey?g():c()}})),x.default.createElement(sa,{theme:s,onClick:()=>i(t.TRANSFORM_MODES.TRANSLATION),active:o===t.TRANSFORM_MODES.TRANSLATION,showIcons:r,showTransformButtons:n,button:r},r?x.default.createElement(ca,null,x.default.createElement(d.PluridIconTranslate,null)):x.default.createElement(x.default.Fragment,null,a.internatiolate(l,t.internationalization.fields.toolbarTransformTranslate))),n&&x.default.createElement(x.default.Fragment,null,x.default.createElement(Va,{direction:"down",transform:e=>{e.altKey?m():u()}}),x.default.createElement(Va,{direction:"right",transform:()=>p()})))})),Wa=o.connect((e=>({configuration:_t.configuration.getConfiguration(e),theme:_t.themes.getInteractionTheme(e),viewSize:_t.space.getViewSize(e)})),(e=>({dispatchToggleConfigurationSpaceFirstPerson:()=>e(qe.configuration.toggleConfigurationSpaceFirstPerson()),dispatchSetConfigurationSpaceTransformMode:t=>e(qe.configuration.setConfigurationSpaceTransformMode(t))})),null,{context:Ge})((e=>{const{theme:a,configuration:n,viewSize:o,dispatchToggleConfigurationSpaceFirstPerson:i,dispatchSetConfigurationSpaceTransformMode:l}=e,{global:s,elements:c,space:u}=n,{transparentUI:f}=s,{firstPerson:p,transformMode:m,fadeInTime:g}=u,{toolbar:h}=c,{conceal:T,opaque:E,transformIcons:S,transformButtons:v}=h,P=h.show,b=r.useRef(null),[R,I]=r.useState(!1),[C,w]=r.useState(oa.NONE),[O,_]=r.useState(S),[y,L]=r.useState(v),[A,U]=r.useState(!1),D=e=>{C!==oa.NONE&&w(oa.NONE),l(e)};return r.useEffect((()=>{U(!0)}),[]),r.useEffect((()=>{o.width<800&&v&&L(!1),o.width>800&&L(v)}),[o.width]),r.useEffect((()=>{_(S),L(v)}),[S,v]),r.useEffect((()=>(R&&b.current&&clearTimeout(b.current),R||(b.current=setTimeout((()=>{w(oa.NONE)}),400)),()=>{b.current&&clearTimeout(b.current)})),[R]),P?x.default.createElement(ia,{onMouseEnter:()=>I(!0),onMouseLeave:()=>I(!1),mouseIn:R,conceal:T,showMenu:C,isMounted:A,fadeInTime:g,"data-plurid-entity":t.PLURID_ENTITY_TOOLBAR},x.default.createElement(la,{theme:a,showIcons:O,showTransformButtons:y,documentsBased:!1,mouseIn:R,opaque:E,transparentUI:f},x.default.createElement(sa,{theme:a,onClick:()=>i(void 0),active:p,button:!0,showIcons:O,showTransformButtons:y},x.default.createElement(ca,null,x.default.createElement(d.PluridIconFirstPerson,null))),x.default.createElement(za,{showTransformButtons:y,showIcons:O,transformMode:m,toggleTransform:D}),x.default.createElement(Za,{showTransformButtons:y,showIcons:O,transformMode:m,toggleTransform:D}),x.default.createElement(Ga,{showTransformButtons:y,showIcons:O,transformMode:m,toggleTransform:D}),x.default.createElement(sa,{theme:a,onClick:()=>{return e=oa.MORE,void(C===e?w(oa.NONE):(l(t.TRANSFORM_MODES.ALL),w(e)));var e},active:C===oa.MORE,button:!0,showIcons:O,showTransformButtons:y},x.default.createElement(ca,null,x.default.createElement(d.PluridIconMore,null)))),C===oa.UNIVERSES&&x.default.createElement(fa,null),C===oa.MORE&&x.default.createElement(Fa,null)):x.default.createElement(x.default.Fragment,null)})),Ha=M.default.div`
387
+ position: absolute;
388
+ @media (max-width: 800px) {
389
+ top: ${({conceal:e,mouseOver:t})=>e&&!t?"-90px":"0"};
390
+ }
391
+ bottom: ${({conceal:e,mouseOver:t})=>e&&!t?"-90px":"0"};
392
+ right: ${({conceal:e,mouseOver:t})=>e&&!t?"-100px":"0"};
393
+ position: absolute;
394
+ user-select: none;
395
+ transition: all 300ms ease-in-out;
396
+ z-index: 9998;
397
+ height: 175px;
398
+ display: grid;
399
+ grid-template-areas: "PVScale PVScale PVScale PVScale"
400
+ "PVEmptyOne PVRotateUp PVEmptyTwo PVTranslateY"
401
+ "PVRotateLeft PVModel PVRotateRight PVTranslateY"
402
+ "PVEmptyThree PVRotateDown PVFitview PVTranslateY"
403
+ "PVTranslateX PVTranslateX PVTranslateX PVTranslateX";
404
+ grid-template-rows: 20px 15px 105px 15px 20px;
405
+ grid-template-columns: 15px 100px 15px 20px;
406
+
407
+ opacity: ${({fadeInTime:e})=>e?"0":"1"};
408
+ animation: ${({fadeInTime:e,isMounted:t})=>t&&e?Qt(e):""};
409
+
410
+ :hover {
411
+ opacity: 1;
412
+ }
413
+ `,qa=M.default.div`
414
+ display: grid;
415
+ place-content: center;
416
+
417
+ /* TODO
418
+ * Themed color
419
+ */
420
+ color: white;
421
+ `,Ja=M.default.div`
422
+ user-select: none;
423
+ font-size: 0.6rem;
424
+ width: 1.2rem;
425
+ height: 1.2rem;
426
+ border-radius: 0.6rem;
427
+ display: grid;
428
+ place-content: center;
429
+ cursor: pointer;
430
+
431
+ :hover {
432
+ background-color: ${({theme:e})=>e.backgroundColorTertiary};
433
+ }
434
+ `,Qa=M.default.div`
435
+ grid-area: PVFitview;
436
+ display: grid;
437
+ place-content: center;
438
+ cursor: pointer;
439
+ user-select: none;
440
+
441
+ svg {
442
+ height: 0.8rem;
443
+ width: 0.8rem;
444
+ fill: white;
445
+ }
446
+ `,en=M.default.div`
447
+ font-size: 0.6rem;
448
+ position: absolute;
449
+ height: 50px;
450
+ width: 50px;
451
+ pointer-events: none;
452
+ display: grid;
453
+ transform-style: preserve-3d;
454
+ grid-template-areas: "PVFTopLeft PVFTopCenter PVFTopRight"
455
+ "PVFMiddleLeft PVFMiddleCenter PVFMiddleRight"
456
+ "PVFBottomLeft PVFBottomCenter PVFBottomRight";
457
+ grid-template-rows: 10px 30px 10px;
458
+ grid-template-columns: 10px 30px 10px;
459
+ box-sizing: content-box;
460
+ transition: all 300ms linear;
461
+
462
+ border: 1px solid ${({mouseOver:e,theme:t})=>e?t.colorTertiary:t.backgroundColorSecondary};
463
+ box-shadow: ${({face:e,theme:t})=>"base"===e?"0px 0px 12px 2px "+t.boxShadowPenumbraColor:""};
464
+ opacity: ${({opaque:e,mouseOver:t})=>{if(!e){if(t)return"0.8";if(!t)return"0.4"}return"1"}};
465
+ transform: ${({face:e})=>{switch(e){case"front":return"translateZ(25px) rotateY(0deg)";case"back":return"translateZ(-25px) rotateY(-180deg)";case"left":return"translateX(-25px) rotateY(-90deg)";case"right":return"translateX(25px) rotateY(90deg)";case"top":return"translateY(-25px) rotateX(90deg)";case"base":return"translateY(25px) rotateX(-90deg)"}return""}};
466
+ `,tn=M.default.div`
467
+ display: grid;
468
+ place-content: center;
469
+ cursor: pointer;
470
+ pointer-events: all;
471
+
472
+ grid-area: ${({type:e})=>`PVF${e}`};
473
+ color: ${({theme:e,hovered:t})=>t?e.colorPrimary:e.colorSecondary};
474
+ background-color: ${({theme:e,transparentUI:t,hovered:a,active:n})=>t&&!a?e.backgroundColorPrimaryAlpha:n||a?e.backgroundColorTertiary:e.backgroundColorSecondary};
475
+ border: 1px solid ${({theme:e,transparentUI:t,hovered:a})=>t&&!a?"transparent":a?e.colorTertiary:e.backgroundColorSecondary};
476
+
477
+ :hover {
478
+ background-color: ${({theme:e})=>e.backgroundColorTertiary};
479
+ }
480
+ `,an="TopLeft",nn="TopCenter",rn="TopRight",on="MiddleLeft",ln="MiddleCenter",sn="MiddleRight",cn="BottomLeft",un="BottomCenter",dn="BottomRight",fn={frontTopLeft:"A1",frontTopCenter:"A2",frontTopRight:"A3",frontMiddleLeft:"B1",frontMiddleCenter:"B2",frontMiddleRight:"B3",frontBottomLeft:"C1",frontBottomCenter:"C2",frontBottomRight:"C3",rightTopLeft:"A3",rightTopCenter:"A4",rightTopRight:"A5",rightMiddleLeft:"B3",rightMiddleCenter:"B4",rightMiddleRight:"B5",rightBottomLeft:"C3",rightBottomCenter:"C4",rightBottomRight:"C5",backTopLeft:"A5",backTopCenter:"A6",backTopRight:"A7",backMiddleLeft:"B5",backMiddleCenter:"B6",backMiddleRight:"B7",backBottomLeft:"C5",backBottomCenter:"C6",backBottomRight:"C7",leftTopLeft:"A7",leftTopCenter:"A8",leftTopRight:"A1",leftMiddleLeft:"B7",leftMiddleCenter:"B8",leftMiddleRight:"B1",leftBottomLeft:"C7",leftBottomCenter:"C8",leftBottomRight:"C1",topTopLeft:"A7",topTopCenter:"A6",topTopRight:"A5",topMiddleLeft:"A8",topMiddleCenter:"D1",topMiddleRight:"A4",topBottomLeft:"A1",topBottomCenter:"A2",topBottomRight:"A3",baseTopLeft:"C1",baseTopCenter:"C2",baseTopRight:"C3",baseMiddleLeft:"C8",baseMiddleCenter:"E1",baseMiddleRight:"C4",baseBottomLeft:"C7",baseBottomCenter:"C6",baseBottomRight:"C5"},pn={A1:{rotateX:-45,rotateY:45},A2:{rotateX:-45,rotateY:0},A3:{rotateX:-45,rotateY:-45},B1:{rotateX:0,rotateY:45},B2:{rotateX:0,rotateY:0},B3:{rotateX:0,rotateY:-45},C1:{rotateX:45,rotateY:45},C2:{rotateX:45,rotateY:0},C3:{rotateX:45,rotateY:-45},A4:{rotateX:-45,rotateY:270.1},A5:{rotateX:-45,rotateY:225},B4:{rotateX:0,rotateY:270.1},B5:{rotateX:0,rotateY:225},C4:{rotateX:45,rotateY:270.1},C5:{rotateX:45,rotateY:225},A6:{rotateX:-45,rotateY:180},A7:{rotateX:-45,rotateY:135},B6:{rotateX:0,rotateY:180.1},B7:{rotateX:0,rotateY:135},C6:{rotateX:45,rotateY:180.1},C7:{rotateX:45,rotateY:135},A8:{rotateX:-45,rotateY:90.1},B8:{rotateX:0,rotateY:90.1},C8:{rotateX:45,rotateY:90.1},D1:{rotateX:-90.1,rotateY:0},E1:{rotateX:90.1,rotateY:0}},mn=o.connect((e=>({generalTheme:_t.themes.getGeneralTheme(e),interactionTheme:_t.themes.getInteractionTheme(e),configuration:_t.configuration.getConfiguration(e)})),(e=>({dispatchRotateX:t=>e(qe.space.rotateX(t)),dispatchRotateY:t=>e(qe.space.rotateY(t)),dispatchSetAnimatedTransform:t=>e(qe.space.setAnimatedTransform(t))})),null,{context:Ge})((e=>{const{face:t,faceText:a,mouseOver:n,hoveredZone:r,setHoveredZone:o,activeZone:i,setActiveZone:l,generalTheme:s,interactionTheme:c,configuration:u,dispatchRotateX:d,dispatchRotateY:f,dispatchSetAnimatedTransform:p}=e,{global:m,elements:g}=u,{transparentUI:h}=m,T=g.viewcube.opaque,E=e=>{const a=fn[`${t}${e}`],n=pn[a];l(a),p(!0),d(n.rotateX),f(n.rotateY),setTimeout((()=>{p(!1)}),450)};return x.default.createElement(en,{theme:s,face:t,opaque:T,mouseOver:n},x.default.createElement(tn,{theme:c,type:an,active:i===fn[`${t}${an}`],hovered:r===fn[`${t}${an}`],onClick:()=>E(an),onMouseEnter:()=>o(fn[`${t}${an}`]),transparentUI:h}),x.default.createElement(tn,{theme:c,type:nn,active:i===fn[`${t}${nn}`],hovered:r===fn[`${t}${nn}`],onClick:()=>E(nn),onMouseEnter:()=>o(fn[`${t}${nn}`]),transparentUI:h}),x.default.createElement(tn,{theme:c,type:rn,active:i===fn[`${t}${rn}`],hovered:r===fn[`${t}${rn}`],onClick:()=>E(rn),onMouseEnter:()=>o(fn[`${t}${rn}`]),transparentUI:h}),x.default.createElement(tn,{theme:c,type:on,active:i===fn[`${t}${on}`],hovered:r===fn[`${t}${on}`],onClick:()=>E(on),onMouseEnter:()=>o(fn[`${t}${on}`]),transparentUI:h}),x.default.createElement(tn,{theme:c,type:ln,active:i===fn[`${t}${ln}`],hovered:r===fn[`${t}${ln}`],onClick:()=>E(ln),onMouseEnter:()=>o(fn[`${t}${ln}`]),transparentUI:h},a),x.default.createElement(tn,{theme:c,type:sn,active:i===fn[`${t}${sn}`],hovered:r===fn[`${t}${sn}`],onClick:()=>E(sn),onMouseEnter:()=>o(fn[`${t}${sn}`]),transparentUI:h}),x.default.createElement(tn,{theme:c,type:cn,active:i===fn[`${t}${cn}`],hovered:r===fn[`${t}${cn}`],onClick:()=>E(cn),onMouseEnter:()=>o(fn[`${t}${cn}`]),transparentUI:h}),x.default.createElement(tn,{theme:c,type:un,active:i===fn[`${t}${un}`],hovered:r===fn[`${t}${un}`],onClick:()=>E(un),onMouseEnter:()=>o(fn[`${t}${un}`]),transparentUI:h}),x.default.createElement(tn,{theme:c,type:dn,active:i===fn[`${t}${dn}`],hovered:r===fn[`${t}${dn}`],onClick:()=>E(dn),onMouseEnter:()=>o(fn[`${t}${dn}`]),transparentUI:h}))})),gn=M.default.div`
481
+ grid-area: PVModel;
482
+ margin-left: -7px;
483
+ margin-top: 5px;
484
+ `,hn=M.default.div`
485
+ perspective: 2000px;
486
+ perspective-origin: 50% 50%;
487
+ `,Tn=M.default.div`
488
+ transform-style: preserve-3d;
489
+ width: 50px;
490
+ height: 50px;
491
+ `,{matrixArrayToCSSMatrix:En,rotateMatrix:Sn,multiplyArrayOfMatrices:vn,scaleMatrix:Pn,translateMatrix:bn}=a.interaction.matrix,{degToRad:Rn}=a.interaction.quaternion,In=o.connect((e=>({stateLanguage:_t.configuration.getConfiguration(e).global.language,spaceRotationX:_t.space.getRotationX(e),spaceRotationY:_t.space.getRotationY(e),stateAnimatedTransform:_t.space.getAnimatedTransform(e),stateTransformTime:_t.space.getTransformTime(e)})),(e=>({})),null,{context:Ge})((e=>{const{mouseOver:n,stateLanguage:o,spaceRotationX:i,spaceRotationY:l,stateAnimatedTransform:s,stateTransformTime:c}=e,[u,d]=r.useState(""),[f,p]=r.useState("");r.useEffect((()=>{u||p("")}),[i,l]);const m=(()=>{const e=32,t=23,a=0,n=0,r=0,o=0,s=Sn(Rn(-i),Rn(-l)),c=bn(e,t,a),u=Pn(1),d=vn([c,vn([bn(n,r,o),s,bn(-n,-r,-o)]),u]);return En(d)})();return x.default.createElement(gn,null,x.default.createElement(hn,null,x.default.createElement(Tn,{suppressHydrationWarning:!0,style:{transform:m,transition:n||s?`transform ${c}ms ease-in-out`:""},onMouseLeave:()=>{d("")}},x.default.createElement(mn,{face:"front",faceText:a.internatiolate(o,t.internationalization.fields.viewcubeFront),mouseOver:n,hoveredZone:u,setHoveredZone:d,activeZone:f,setActiveZone:p}),x.default.createElement(mn,{face:"back",faceText:a.internatiolate(o,t.internationalization.fields.viewcubeBack),mouseOver:n,hoveredZone:u,setHoveredZone:d,activeZone:f,setActiveZone:p}),x.default.createElement(mn,{face:"left",faceText:a.internatiolate(o,t.internationalization.fields.viewcubeLeft),mouseOver:n,hoveredZone:u,setHoveredZone:d,activeZone:f,setActiveZone:p}),x.default.createElement(mn,{face:"right",faceText:a.internatiolate(o,t.internationalization.fields.viewcubeRight),mouseOver:n,hoveredZone:u,setHoveredZone:d,activeZone:f,setActiveZone:p}),x.default.createElement(mn,{face:"top",faceText:a.internatiolate(o,t.internationalization.fields.viewcubeTop),mouseOver:n,hoveredZone:u,setHoveredZone:d,activeZone:f,setActiveZone:p}),x.default.createElement(mn,{face:"base",faceText:a.internatiolate(o,t.internationalization.fields.viewcubeBase),mouseOver:n,hoveredZone:u,setHoveredZone:d,activeZone:f,setActiveZone:p}))))})),Cn=o.connect((e=>({stateConfiguration:_t.configuration.getConfiguration(e),stateInteractionTheme:_t.themes.getInteractionTheme(e),stateTransformTime:_t.space.getTransformTime(e)})),(e=>({dispatchRotateXWith:t=>e(qe.space.rotateXWith(t)),dispatchRotateYWith:t=>e(qe.space.rotateYWith(t)),dispatchSetAnimatedTransform:t=>e(qe.space.setAnimatedTransform(t)),dispatchSpaceResetTransform:()=>e(qe.space.spaceResetTransform())})),null,{context:Ge})((e=>{const{stateConfiguration:a,stateInteractionTheme:n,stateTransformTime:o,dispatchRotateXWith:i,dispatchRotateYWith:l,dispatchSetAnimatedTransform:s,dispatchSpaceResetTransform:c}=e,{elements:u,space:f}=a,{viewcube:p}=u,{buttons:m,conceal:g}=p,{fadeInTime:h}=f,T=p.show,[E,S]=r.useState(!1),[v,P]=r.useState(!1),b=(e,t)=>{switch(s(!0),e){case"rotateX":i(t);break;case"rotateY":l(t)}setTimeout((()=>{s(!1)}),o)};return r.useEffect((()=>{P(!0)}),[]),T?x.default.createElement(Ha,{onMouseEnter:()=>S(!0),onMouseLeave:()=>S(!1),onMouseMove:()=>E?null:S(!0),conceal:g,mouseOver:E,isMounted:v,fadeInTime:h,"data-plurid-entity":t.PLURID_ENTITY_VIEWCUBE},x.default.createElement(In,{mouseOver:E}),E&&m&&x.default.createElement(x.default.Fragment,null,x.default.createElement(qa,{style:{gridArea:"PVRotateUp"}},x.default.createElement(Ja,{theme:n,onClick:()=>b("rotateX",-90.1)},"▲")),x.default.createElement(qa,{theme:n,style:{gridArea:"PVRotateDown"}},x.default.createElement(Ja,{theme:n,onClick:()=>b("rotateX",90.1)},"▼")),x.default.createElement(qa,{theme:n,style:{gridArea:"PVRotateLeft"}},x.default.createElement(Ja,{theme:n,onClick:()=>b("rotateY",90.1)},"◀")),x.default.createElement(qa,{theme:n,style:{gridArea:"PVRotateRight"}},x.default.createElement(Ja,{theme:n,onClick:()=>b("rotateY",-90.1)},"▶")),x.default.createElement(Qa,{onClick:e=>{e.ctrlKey||e.metaKey||(s(!0),c(),setTimeout((()=>{s(!1)}),o))}},x.default.createElement(d.PluridIconGlobal,null)))):x.default.createElement(x.default.Fragment,null)})),wn=e=>x.default.createElement(x.default.Fragment,null,x.default.createElement(ta,null),x.default.createElement(ra,null),x.default.createElement(Wa,null),x.default.createElement(Cn,null)),On=o.connect((e=>({state:e,stateConfiguration:_t.configuration.getConfiguration(e),stateTransform:_t.space.getTransform(e),stateTree:_t.space.getTree(e),stateSpaceLoading:_t.space.getLoading(e),stateSpaceView:_t.space.getView(e),stateGeneralTheme:_t.themes.getGeneralTheme(e)})),(e=>({dispatch:e,dispatchSetConfiguration:t=>e(qe.configuration.setConfiguration(t)),dispatchSetConfigurationMicro:()=>e(qe.configuration.setConfigurationMicro()),dispatchSetSpaceField:t=>e(qe.space.setSpaceField(t)),dispatchSpaceSetViewSize:t=>e(qe.space.setViewSize(t)),dispatchSetSpaceLoading:t=>e(qe.space.setSpaceLoading(t)),dispatchSetAnimatedTransform:t=>e(qe.space.setAnimatedTransform(t)),dispatchSetTransformTime:t=>e(qe.space.setTransformTime(t)),dispatchSetSpaceLocation:t=>e(qe.space.setSpaceLocation(t)),dispatchSetTree:t=>e(qe.space.setTree(t)),dispatchSetGeneralTheme:t=>e(qe.themes.setGeneralTheme(t)),dispatchSetInteractionTheme:t=>e(qe.themes.setInteractionTheme(t)),dispatchRotateX:t=>e(qe.space.rotateX(t)),dispatchRotateXWith:t=>e(qe.space.rotateXWith(t)),dispatchRotateY:t=>e(qe.space.rotateY(t)),dispatchRotateYWith:t=>e(qe.space.rotateYWith(t)),dispatchTranslateXWith:t=>e(qe.space.translateXWith(t)),dispatchTranslateYWith:t=>e(qe.space.translateYWith(t)),dispatchTranslateZWith:t=>e(qe.space.translateZWith(t)),dispatchScaleUpWith:t=>e(qe.space.scaleUpWith(t)),dispatchScaleDownWith:t=>e(qe.space.scaleDownWith(t)),dispatchSpaceSetView:t=>e(qe.space.spaceSetView(t))})),null,{context:Ge})((e=>{const{planesRegistrar:n,customPlane:o,planeContext:i,planeContextValue:s,pubsub:c,planeNotFound:u,planeRenderError:d,matchedRoute:f,hostname:p,state:m,stateConfiguration:g,stateTransform:h,stateSpaceView:T,stateTree:E,stateGeneralTheme:S,dispatch:v,dispatchSetConfiguration:P,dispatchSetGeneralTheme:b,dispatchSetInteractionTheme:R,dispatchSetSpaceField:I,dispatchSetSpaceLocation:C,dispatchSetAnimatedTransform:w,dispatchSetTransformTime:O,dispatchSetTree:_,dispatchRotateXWith:y,dispatchRotateX:L,dispatchRotateYWith:A,dispatchRotateY:U,dispatchTranslateXWith:M,dispatchTranslateYWith:k,dispatchTranslateZWith:F,dispatchScaleUpWith:B,dispatchScaleDownWith:Y,dispatchSpaceSetViewSize:$,dispatchSpaceSetView:X}=e,V=r.useRef(null),z=r.useRef(),[K,Z]=r.useState(c?[c]:[new D.default]),[j,G]=r.useState(!1),W=r.useCallback((e=>{const{transformLocks:t}=g.space;wt(v,m,K[0],e,g.space.firstPerson,t)}),[JSON.stringify(m),g.space.firstPerson,g.space.transformLocks,v]),H=r.useCallback((e=>{(e=>{(e.shiftKey||e.altKey||e.metaKey||e.ctrlKey)&&G(!0),clearTimeout(z.current),z.current=setTimeout((()=>{G(!1)}),t.PLURID_DEFAULT_PREVENT_OVERSCROLL_TIMEOUT)})(e);const{transformMode:a,transformLocks:n}=g.space,r={rotation:a===t.TRANSFORM_MODES.ROTATION,translation:a===t.TRANSFORM_MODES.TRANSLATION,scale:a===t.TRANSFORM_MODES.SCALE};((e,a,n,r)=>{(a.shiftKey||a.metaKey||a.altKey||a.ctrlKey||n.rotation||n.translation||n.scale)&&a.preventDefault();const o={deltaX:a.deltaX,deltaY:a.deltaY},i=Ct.getWheelDirection(o,100);if(n.rotation){if(i===t.directions.left&&r.rotationY)return e(qe.space.rotateLeft());if(i===t.directions.right&&r.rotationY)return e(qe.space.rotateRight());if(i===t.directions.up&&r.rotationX)return e(qe.space.rotateUp());if(i===t.directions.down&&r.rotationX)return e(qe.space.rotateDown())}if(a.shiftKey&&!a.altKey){if(i===t.directions.up&&r.rotationX)return e(qe.space.rotateUp());if(i===t.directions.down&&r.rotationX)return e(qe.space.rotateDown());if(i===t.directions.left&&r.rotationY)return e(qe.space.rotateLeft());if(i===t.directions.right&&r.rotationY)return e(qe.space.rotateRight())}if(n.translation){if(a.metaKey||a.ctrlKey)return i===t.directions.up?e(qe.space.translateDown()):i===t.directions.down?e(qe.space.translateUp()):void 0;if(a.altKey){if(i===t.directions.up&&r.translationZ)return e(qe.space.translateIn());if(i===t.directions.down&&r.translationZ)return e(qe.space.translateOut())}if(i===t.directions.up&&r.translationY)return e(qe.space.translateDown());if(i===t.directions.down&&r.translationY)return e(qe.space.translateUp());if(i===t.directions.left&&r.translationX)return e(qe.space.translateRight());if(i===t.directions.right&&r.translationX)return e(qe.space.translateLeft())}if(a.altKey&&a.shiftKey){if(i===t.directions.up&&r.translationZ)return e(qe.space.translateIn());if(i===t.directions.down&&r.translationZ)return e(qe.space.translateOut())}if(a.altKey&&!a.shiftKey){if(a.metaKey||a.ctrlKey)return i===t.directions.up?e(qe.space.translateDown()):i===t.directions.down?e(qe.space.translateUp()):void 0;if(i===t.directions.up&&r.translationY)return e(qe.space.translateDown());if(i===t.directions.down&&r.translationY)return e(qe.space.translateUp());if(i===t.directions.left&&r.translationX)return e(qe.space.translateRight());if(i===t.directions.right&&r.translationX)return e(qe.space.translateLeft())}if(n.scale){if(i===t.directions.down&&r.scale)return e(qe.space.scaleUp());if(i===t.directions.up&&r.scale)return e(qe.space.scaleDown())}if(a.metaKey||a.ctrlKey){if(i===t.directions.down&&r.scale)return e(qe.space.scaleUp());if(i===t.directions.up&&r.scale)e(qe.space.scaleDown())}})(v,e,r,n)}),[v,g.space.transformMode,g.space.transformLocks]),q=(e,t=g)=>{const r=oe(n),o=new a.space.tree.Tree({planes:r,configuration:t,view:e},p).compute();for(const e of E)for(const[t,a]of o.entries())e.route===a.route&&l.objects.equals(e.location,a.location)&&(a.planeID=e.planeID,e.children&&(o[t].children=e.children));_(o)},J=r.useCallback((()=>{q(T)}),[p,T,g,JSON.stringify(E)]),Q=e=>{const n=[{topic:t.PLURID_PUBSUB_TOPIC.CONFIGURATION,callback:e=>{if(e.internal)return;const t=a.general.configuration.merge(e,g);"object"==typeof t.global.theme?("string"==typeof t.global.theme.general?b(N.default[t.global.theme.general]):b(t.global.theme.general),"string"==typeof t.global.theme.interaction?R(N.default[t.global.theme.interaction]):R(t.global.theme.interaction)):"string"==typeof t.global.theme&&(b(N.default[t.global.theme]),R(N.default[t.global.theme])),P(t)}},{topic:t.PLURID_PUBSUB_TOPIC.SPACE_TRANSFORM,callback:e=>{const{value:t,internal:a}=e;a||C(t)}},{topic:t.PLURID_PUBSUB_TOPIC.SPACE_ANIMATED_TRANSFORM,callback:e=>{const{value:t}=e;w(t.active),t.time?O(t.time):O(450)}},{topic:t.PLURID_PUBSUB_TOPIC.SPACE_ROTATE_X_WITH,callback:e=>{const{value:t}=e;y(t)}},{topic:t.PLURID_PUBSUB_TOPIC.SPACE_ROTATE_X_TO,callback:e=>{const{value:t}=e;L(t)}},{topic:t.PLURID_PUBSUB_TOPIC.SPACE_ROTATE_Y_WITH,callback:e=>{const{value:t}=e;A(t)}},{topic:t.PLURID_PUBSUB_TOPIC.SPACE_ROTATE_Y_TO,callback:e=>{const{value:t}=e;U(t)}},{topic:t.PLURID_PUBSUB_TOPIC.SPACE_TRANSLATE_X_WITH,callback:e=>{const{value:t}=e;M(t)}},{topic:t.PLURID_PUBSUB_TOPIC.SPACE_TRANSLATE_X_TO,callback:e=>{}},{topic:t.PLURID_PUBSUB_TOPIC.SPACE_TRANSLATE_Y_WITH,callback:e=>{const{value:t}=e;k(t)}},{topic:t.PLURID_PUBSUB_TOPIC.SPACE_TRANSLATE_Y_TO,callback:e=>{}},{topic:t.PLURID_PUBSUB_TOPIC.SPACE_TRANSLATE_Z_WITH,callback:e=>{const{value:t}=e;F(t)}},{topic:t.PLURID_PUBSUB_TOPIC.SPACE_TRANSLATE_Z_TO,callback:e=>{}},{topic:t.PLURID_PUBSUB_TOPIC.VIEW_ADD_PLANE,callback:e=>{const{plane:t}=e,a=[...T,t];X(a),q(a)}},{topic:t.PLURID_PUBSUB_TOPIC.VIEW_SET_PLANES,callback:e=>{const{view:t}=e;X([...t]),q(t)}},{topic:t.PLURID_PUBSUB_TOPIC.VIEW_REMOVE_PLANE,callback:e=>{const{plane:t}=e,a=T.filter((e=>"string"!=typeof e||e===t));X(a),q(a)}},{topic:t.PLURID_PUBSUB_TOPIC.NAVIGATE_TO_PLANE,callback:e=>{const{id:t}=e,n=a.space.tree.logic.getTreePlaneByID(E,t);Et(v,n)}},{topic:t.PLURID_PUBSUB_TOPIC.ISOLATE_PLANE,callback:e=>{const{id:t}=e;"string"==typeof t&&I({field:"isolatePlane",value:t})}},{topic:t.PLURID_PUBSUB_TOPIC.OPEN_CLOSED_PLANE,callback:()=>{const e=E.find((e=>e.planeID===m.space.lastClosedPlane));if(e){const t=!0,{updatedTree:n}=a.space.tree.logic.togglePlaneFromTree(E,e.planeID,t);_(n),I({field:"lastClosedPlane",value:""})}}},{topic:t.PLURID_PUBSUB_TOPIC.CLOSE_PLANE,callback:e=>{const{id:t}=e,n=E.find((e=>e.planeID===t));if(n){const e=!1,{updatedTree:r}=a.space.tree.logic.togglePlaneFromTree(E,n.planeID,e);_(r),setTimeout((()=>{_(r)}),50),I({field:"lastClosedPlane",value:t})}}},{topic:t.PLURID_PUBSUB_TOPIC.PREVIOUS_ROOT,callback:()=>{bt(v,m)}},{topic:t.PLURID_PUBSUB_TOPIC.NEXT_ROOT,callback:()=>{Rt(v,m)}},{topic:t.PLURID_PUBSUB_TOPIC.NAVIGATE_TO_ROOT,callback:e=>{const t=e.index;if(void 0!==t)return void It(v,m,t);const a=e.id;((e,t,a)=>{const{tree:n}=t.space,r=n.find((e=>e.planeID===a));r&&Et(e,r,void 0,!0)})(v,m,a)}}],r=[];for(const t of n){const a=e.subscribe(t);r.push(a)}return()=>{for(const t of r)e.unsubscribe(t)}},ee=e=>{const a={value:Object.assign({},h),internal:!0};e.publish({topic:t.PLURID_PUBSUB_TOPIC.SPACE_TRANSFORM,data:a}),e.publish({topic:t.PLURID_PUBSUB_TOPIC.CONFIGURATION,data:Object.assign(Object.assign({},g),{internal:!0})})},te=e=>{const{transformMode:a}=g.space;if(a===t.TRANSFORM_MODES.ALL)return;const{velocity:n,distance:r,direction:o}=e,{altKey:i}=e.srcEvent,l=a===t.TRANSFORM_MODES.ROTATION,s=a===t.TRANSFORM_MODES.TRANSLATION,c=a===t.TRANSFORM_MODES.SCALE;switch(Tt(v),o){case 2:l&&A(60*n),s&&M(-1*r);break;case 4:l&&A(60*n),s&&M(r);break;case 8:l&&y(60*n),s&&(i?F(-1*r):k(-1*r)),c&&B(n);break;case 16:l&&y(60*n),s&&(i?F(r):k(r)),c&&Y(n)}},ae=e=>{const{transformMode:a}=g.space;if(a===t.TRANSFORM_MODES.ALL)return;const{velocity:n,distance:r,direction:o}=e,{altKey:i}=e.srcEvent,l=a===t.TRANSFORM_MODES.ROTATION,s=a===t.TRANSFORM_MODES.TRANSLATION,c=a===t.TRANSFORM_MODES.SCALE,u=20*n,d=r/5,f=n/4;switch(o){case 2:l&&A(u),s&&M(-1*d);break;case 4:l&&A(u),s&&M(d);break;case 8:l&&y(u),s&&(i?F(-1*d):k(-1*d)),c&&B(f);break;case 16:l&&y(u),s&&(i?F(d):k(d)),c&&Y(f)}},ne=(e,t)=>{const{transformMode:a}=g.space;if("TRANSLATION"!==a)return;F(20*("in"===t?1:-1))},re=e=>{ne(0,"in")},ie=e=>{ne(0,"out")};r.useEffect((()=>(V.current&&(V.current.addEventListener("keydown",W,{passive:!1}),V.current.addEventListener("wheel",H,{passive:!1})),()=>{V.current&&(V.current.removeEventListener("keydown",W),V.current.removeEventListener("wheel",H))})),[JSON.stringify(m),V.current,g.space.transformMode,g.space.firstPerson]),r.useEffect((()=>{const e=l.meta.debounce((()=>{if(V&&V.current){const e=V.current.offsetWidth,t=V.current.offsetHeight;$({width:e,height:t})}}),t.PLURID_DEFAULT_RESIZE_DEBOUNCE_TIME);return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}}),[]),r.useEffect((()=>(window.addEventListener("resize",J),()=>{window.removeEventListener("resize",J)})),[T,g,JSON.stringify(E)]),r.useEffect((()=>{if("undefined"==typeof window)return;let e;return We(void 0,void 0,void 0,(function*(){const a=(yield Ot()).default,{transformTouch:n}=g.space;delete a.defaults.cssProps.userSelect,delete a.defaults.cssProps.userDrag,delete a.defaults.cssProps.tapHighlightColor,delete a.defaults.cssProps.touchSelect,V.current&&(e=new a(V.current),e.get("pan").set({direction:a.DIRECTION_ALL}),e.get("swipe").set({direction:a.DIRECTION_ALL}),e.get("pinch").set({enable:!0}),n===t.TRANSFORM_TOUCHES.PAN?e.on("pan",ae):e.on("swipe",te),e.on("pinchin",re),e.on("pinchout",ie))})),()=>{if(!e)return;const{transformTouch:a}=g.space;a===t.TRANSFORM_TOUCHES.PAN?e.off("pan",ae):e.off("swipe",te),e.off("pinchin",re),e.off("pinchout",ie)}}),[V.current,g.space.transformTouch,g.space.transformMode]),r.useEffect((()=>{const e=e=>{navigator.getGamepads()[e.gamepad.index]},t=e=>{navigator.getGamepads()[e.gamepad.index]};return window.addEventListener("gamepadconnected",e),window.addEventListener("gamepaddisconnected",t),()=>{window.removeEventListener("gamepadconnected",e),window.removeEventListener("gamepaddisconnected",t)}}),[]),r.useEffect((()=>{const e=[];for(const t of K){const a=Q(t);e.push(a)}return()=>{for(const t of e)t()}}),[m.space.lastClosedPlane,K.length,JSON.stringify(E)]),r.useEffect((()=>{for(const e of K)ee(e)}),[K.length,g,h]),r.useEffect((()=>{J()}),[]);const le={planesRegistrar:n,planeContext:i,planeContextValue:s,customPlane:o,planeNotFound:u,planeRenderError:d,matchedRoute:f,hostname:p,defaultPubSub:K[0],registerPubSub:e=>{const t=[...K,e];Z(t)}};return x.default.createElement(Lt,{ref:V,tabIndex:0,transformMode:g.space.transformMode,"data-plurid-entity":t.PLURID_ENTITY_VIEW},x.default.createElement(yt,{theme:S,preventOverscroll:j}),x.default.createElement(He.Provider,{value:le},0!==T.length?x.default.createElement(wn,null):x.default.createElement(x.default.Fragment,null)))}));class _n extends r.Component{constructor(e,t){super(e),this.storeID=e.id||"default",this.context=t;const a=this.computeStore();this.store=je(a),this.subscribeStore()}componentDidUpdate(){const e=this.computeStore();this.store.dispatch({type:"SET_STATE",payload:e})}componentWillUnmount(){this.storeUnubscriber&&this.storeUnubscriber()}render(){return x.default.createElement(o.Provider,{store:this.store,context:Ge},x.default.createElement(On,Object.assign({},this.props)))}computeStore(){const{view:e,planes:t,configuration:n,precomputedState:r,planesRegistrar:o,useLocalStorage:i,hostname:l,space:s}=this.props;re(t,o,l);const c=this.store?this.store.getState():void 0,u=a.state.local.load(this.storeID,i),d=((e,t)=>{if(e){if(!t){if("undefined"==typeof window)return;return e.states[window.location.pathname]}return e.states[t]}})(this.context,s);return a.state.compute(e,n,o,c,u,r,d,l)}subscribeStore(){this.store&&"undefined"!=typeof localStorage&&this.props.useLocalStorage&&(this.storeUnubscriber=this.store.subscribe((()=>{const e=this.store.getState(),t=JSON.stringify(e);localStorage.setItem("pluridState-"+this.storeID,t)})))}}_n.contextType=F;const yn=M.default.div`
492
+ scroll-snap-type: ${e=>{const{alignment:t,snapType:a}=e;return"none"===a?"none":t+" "+a}};
493
+
494
+ flex-direction: ${e=>{const{alignment:t}=e;return"x"===t?"row":"column"}};
495
+
496
+ outline: none;
497
+ overflow: auto;
498
+ /* display: flex; */
499
+ height: 100vh;
500
+ height: -webkit-fill-available;
501
+ width: 100vw;
502
+ `,Ln=(e,n,r,o,i="origin")=>{if(o||"RoutePlane"===(null==e?void 0:e.kind)){const t=o||e;if(!t)return()=>()=>x.default.createElement(x.default.Fragment,null);return An(t,n,i)}if(!e){const e=r.match("/not-found","route");if(e&&"Route"===e.kind){return Ln(e,n,r,void 0,i)}return()=>()=>x.default.createElement(x.default.Fragment,null)}const{exterior:s,view:c,planes:u,spaces:d,defaultConfiguration:f,slotted:p,resolver:m}=e.data;m&&m(void 0);const g={value:e.match.value,parameters:e.match.parameters,query:e.match.query};let h;return jt(s)&&(h=s,h&&(h.displayName="PluridRouteExterior")),!s||!h||c||u||d?c?()=>{const t=new D.default,a=e.data.value,r=x.default.createElement(_n,{view:c,planesRegistrar:n,configuration:f,pubsub:t,matchedRoute:e,hostname:i,space:a});return()=>x.default.createElement(x.default.Fragment,null,h&&x.default.createElement(h,{plurid:g,pubsub:t,spaces:p?[r]:void 0}),!p&&x.default.createElement(x.default.Fragment,null,r))}:((e,n="origin")=>{var r,o,i,s,c,u;if("Route"!==e.kind)return()=>()=>x.default.createElement(x.default.Fragment,null);const d="http",f=n,{match:p,data:m}=e,{parameters:g,query:h}=p,T={value:p.value,parameters:g,query:h},{exterior:E,planes:S,spaces:v,slotted:P}=e.data,b=(null===(r=m.multispace)||void 0===r?void 0:r.alignment)||"y",R=(null===(o=m.multispace)||void 0===o?void 0:o.snapType)||"mandatory";let I=()=>x.default.createElement(x.default.Fragment,null);jt(E)&&(I=E);let C=()=>x.default.createElement(x.default.Fragment,null);const w=[];if(v)for(const e of v){const r=[],o=[];if(e.planes)for(const n of e.planes){const i=ce(n),{component:l}=i,s=[d,f,m.value===t.PLURID_ROUTE_DEFAULT_PATH_VALUE?t.PLURID_ROUTE_DEFAULT_PATH:a.utilities.cleanPathElement(m.value),e.value===t.PLURID_ROUTE_DEFAULT_SPACE_VALUE?t.PLURID_ROUTE_DEFAULT_SPACE:a.utilities.cleanPathElement(e.value),t.PLURID_ROUTE_DEFAULT_UNIVERSE,t.PLURID_ROUTE_DEFAULT_CLUSTER,a.utilities.cleanPathElement(i.value)].join(t.PLURID_ROUTE_SEPARATOR),c={component:l,route:s};r.push(c),o.push(s)}if(e.universes)for(const n of e.universes)if(n.planes)for(const i of n.planes){const l=ce(i),{component:s}=l,c=[d,f,m.value===t.PLURID_ROUTE_DEFAULT_PATH_VALUE?t.PLURID_ROUTE_DEFAULT_PATH:a.utilities.cleanPathElement(m.value),e.value===t.PLURID_ROUTE_DEFAULT_SPACE_VALUE?t.PLURID_ROUTE_DEFAULT_SPACE:a.utilities.cleanPathElement(e.value),n.value===t.PLURID_ROUTE_DEFAULT_UNIVERSE_VALUE?t.PLURID_ROUTE_DEFAULT_UNIVERSE:a.utilities.cleanPathElement(n.value),t.PLURID_ROUTE_DEFAULT_CLUSTER,a.utilities.cleanPathElement(l.value)].join(t.PLURID_ROUTE_SEPARATOR),u={component:s,route:c};r.push(u),o.push(c)}const i=new de([],"localhost:63000"),s=x.default.createElement(_n,{key:l.uuid.generate(),id:m.value,planes:r,view:o,configuration:e.configuration,planesRegistrar:i,hostname:n});w.push(s)}if(S){const e=[],r=[];for(const n of S){const o=ce(n),{component:i}=o,l=[d,f,m.value===t.PLURID_ROUTE_DEFAULT_PATH_VALUE?t.PLURID_ROUTE_DEFAULT_PATH:a.utilities.cleanPathElement(m.value),t.PLURID_ROUTE_DEFAULT_SPACE,t.PLURID_ROUTE_DEFAULT_UNIVERSE,t.PLURID_ROUTE_DEFAULT_CLUSTER,a.utilities.cleanPathElement(o.value)].join(t.PLURID_ROUTE_SEPARATOR),s={component:i,route:l};e.push(s),m.view?m.view.includes(o.value)&&r.push(l):r.push(l)}const o=x.default.createElement(_n,{key:l.uuid.generate(),id:m.value,planes:e,view:r,configuration:m.defaultConfiguration,hostname:n});w.push(o)}let O,_;return jt(null===(i=m.multispace)||void 0===i?void 0:i.header)&&(O=null===(s=m.multispace)||void 0===s?void 0:s.header),jt(null===(c=m.multispace)||void 0===c?void 0:c.footer)&&(_=null===(u=m.multispace)||void 0===u?void 0:u.footer),C=()=>x.default.createElement(yn,{alignment:b,snapType:R,"data-plurid-entity":t.PLURID_ENTITY_MULTISPACE},O&&x.default.createElement(O,{plurid:T}),w,_&&x.default.createElement(_,{plurid:T})),()=>()=>x.default.createElement(x.default.Fragment,null,E&&x.default.createElement(I,{spaces:P?w:void 0,plurid:T}),(v||S)&&!P&&x.default.createElement(C,null))})(e):()=>()=>x.default.createElement(x.default.Fragment,null,h&&x.default.createElement(h,{plurid:g}))},An=(e,t,a="origin")=>{if(e.match.query.flat){const a=e.match.query.flat.toLowerCase();if("true"===a||"1"===a){const a=t.get(e.match.value);if(a){const e=a.component;if("function"!=typeof e)return()=>()=>x.default.createElement(x.default.Fragment,null);return()=>()=>x.default.createElement(x.default.Fragment,null,x.default.createElement(e,null))}}}const{defaultConfiguration:n}=null==e?void 0:e.data;return()=>()=>x.default.createElement(x.default.Fragment,null,x.default.createElement(_n,{view:[e.match.value],planesRegistrar:t,configuration:n,hostname:a}))},Un=M.default.div`
503
+ height: 0;
504
+ width: 0;
505
+ `,Dn=e=>{const{routes:a,planes:n,exterior:o,shell:i,hostname:s,scrollToTop:c,static:d,view:f,cleanNavigation:p,notFoundPath:m}=e,g=m||"/not-found",h=((e,t)=>{const a=[];for(const t of e){if(t.planes)for(const e of t.planes){const n=ce(e),r={route:n.link?n.link:n.value.startsWith("/")?n.value:t.value+"/"+n.value,component:n.component};a.push(r)}t.spaces}if(t)for(const e of t){const t=ce(e),n={route:t.value,component:t.component};a.push(n)}return a})(a,n),T=r.useRef(null),E=r.useRef(new de(h,s)),S=r.useRef(new fe({routes:a,routePlanes:n},s)),v=u.useMounted(),[P,b]=r.useState((e=>e?e.path:"undefined"!=typeof window?window.location.pathname+window.location.search:"/")(d)),[R,I]=r.useState(S.current.match(P,"route")),[C,w]=r.useState(Ln(R,E.current,S.current,d&&d.directPlane?S.current.match(d.directPlane,"route"):void 0,s)),O=e=>{let t;e&&e.detail&&e.detail.path&&!t&&(t=e.detail.path),p&&f&&!t&&(t=f);const a=window.location.pathname;t||(t=a+window.location.search),b(t),(()=>{if(!T.current||!1===c)return;const e=void 0===c||!0===c||"smooth"===c?"smooth":"auto";T.current.scrollIntoView({behavior:e})})()};let _;r.useEffect((()=>(window.addEventListener("popstate",O),window.addEventListener(t.PLURID_ROUTER_LOCATION_CHANGED,O),()=>{window.removeEventListener("popstate",O),window.removeEventListener(t.PLURID_ROUTER_LOCATION_CHANGED,O)})),[]),r.useEffect((()=>{if(!v)return;p||location.pathname!==P&&history.pushState(null,"",P);let e=S.current.match(P,"route");if(e&&"RoutePlane"===e.kind){const t=An(e,E.current,s);return I(e),void w(t)}e||(e=S.current.match(g,"route")),I(e),w(Ln(e,E.current,S.current,void 0,s))}),[v,P]),r.useEffect((()=>{if(!R)return;if("Route"!==R.kind)return;const e=R.match.value;l.storage.saveState(e,t.PLURID_ROUTER_STORAGE);const a=new CustomEvent(t.PLURID_ROUTER_LOCATION_STORED,{detail:{path:e}});window.dispatchEvent(a)}),[p,R]),jt(o)&&(_=o,_&&(_.displayName="PluridRouterExterior"));let y=({children:e})=>x.default.createElement(x.default.Fragment,null,e);return jt(i)&&(y=i,y&&(y.displayName="PluridRouterShell")),x.default.createElement(x.default.Fragment,null,x.default.createElement(Un,{ref:T}),_&&x.default.createElement(_,{matchedRoute:R}),x.default.createElement(y,{matchedRoute:R},x.default.createElement(C,null)))},xn=e=>{const{path:t,directPlane:a,routes:n,planes:r,exterior:o,shell:i,protocol:l,hostname:s,gateway:c,gatewayQuery:u,gatewayEndpoint:d}=e,f=l||"http",p=s||"origin";return x.default.createElement(Dn,{routes:n,planes:r,exterior:o,shell:i,static:{path:t,directPlane:a},protocol:f,hostname:p})};class Nn extends r.Component{constructor(e){super(e),this.properties=e}render(){const{metastate:e,children:t}=this.properties;return x.default.createElement(F.Provider,{value:e},t)}}Nn.displayName="PluridProvider";const Mn={x:0,y:0},kn=e=>{const{elementID:t,rootID:a,children:n}=e,r=u.usePortal(t,a);return p.createPortal(n,r)},Fn=M.default.div`
506
+ position: absolute;
507
+ min-width: 600px;
508
+ min-height: 300px;
509
+ z-index: 99999;
510
+
511
+ top: ${({linkCoordinates:e})=>e.y+"px"};
512
+ left: ${({linkCoordinates:e})=>e.x+5+"px"};
513
+ background-color: ${({theme:e})=>e.backgroundColorSecondary};
514
+ box-shadow: ${({theme:e})=>e.boxShadowUmbra};
515
+ `,Bn=o.connect((e=>({stateGeneralTheme:_t.themes.getGeneralTheme(e),stateInteractionTheme:_t.themes.getInteractionTheme(e)})),(e=>({})),null,{context:Ge})((e=>{const{planeRoute:t,linkCoordinates:a,previewComponent:n,previewOffsetX:o,previewOffsetY:i,stateGeneralTheme:l}=e,s={x:a.x+(null!=o?o:0),y:a.y+(null!=i?i:0)},c=r.useContext(He);if(!c)return x.default.createElement(x.default.Fragment,null);const{planesRegistrar:u}=c,d=ie(u);if(!d)return x.default.createElement(x.default.Fragment,null);const f=d.get(t);if(!f)return x.default.createElement(x.default.Fragment,null);const p=null!=n?n:f.component;return"function"!=typeof p?x.default.createElement(x.default.Fragment,null):x.default.createElement(Fn,{theme:l,linkCoordinates:s},x.default.createElement(p,null))})),Yn=M.default.a`
516
+ /**
517
+ * Forces element to go to the second row if inlined.
518
+ */
519
+ display: inline-block;
520
+
521
+ cursor: pointer;
522
+ color: ${({theme:e})=>e.colorTertiary};
523
+
524
+ :hover {
525
+ color: ${({theme:e})=>e.colorPrimary};
526
+ }
527
+
528
+ ::after {
529
+ content: "${({devisible:e,suffix:t})=>e?"":t||"'"}";
530
+ }
531
+ `,$n=o.connect((e=>({stateTree:_t.space.getTree(e),stateLastClosedPlane:_t.space.getLastClosedPlane(e),stateGeneralTheme:_t.themes.getGeneralTheme(e),stateConfiguration:_t.configuration.getConfiguration(e),stateViewSize:_t.space.getViewSize(e)})),(e=>({dispatch:e,dispatchSetTree:t=>e(qe.space.setTree(t)),dispatchSetSpaceField:t=>e(qe.space.setSpaceField(t)),dispatchUpdateSpaceLinkCoordinates:t=>e(qe.space.updateSpaceLinkCoordinates(t))})),null,{context:Ge})((e=>{const n=r.useContext(He);if(!n)return x.default.createElement(x.default.Fragment,null,e.children);const{hostname:o,planesRegistrar:i,defaultPubSub:s}=n,c=ie(i);if(!c)return x.default.createElement(x.default.Fragment,null,e.children);const{children:d,route:f,devisible:p,suffix:m,atClick:g,style:h,className:T,preview:E,previewComponent:S,previewFadeIn:v,previewFadeOut:P,previewOffsetX:b,previewOffsetY:R,stateTree:I,stateLastClosedPlane:C,stateGeneralTheme:w,stateConfiguration:O,stateViewSize:_,dispatch:y,dispatchSetTree:L,dispatchSetSpaceField:A,dispatchUpdateSpaceLinkCoordinates:U}=e,D=O.elements.plane.controls.show,N=v||t.PLURID_DEFAULT_CONFIGURATION_LINK_PREVIEW_FADE_IN,M=P||t.PLURID_DEFAULT_CONFIGURATION_LINK_PREVIEW_FADE_OUT,k=me(f),F=pe(k,O.network.protocol,o||O.network.host),B=null!=m?m:t.PLURID_DEFAULT_CONFIGURATION_LINK_SUFFIX,Y=null!=p&&p,$=r.useRef(null),X=r.useRef(null),V=r.useRef(null),[z,K]=r.useState(!1),[Z,j]=r.useState(!1),[G,W]=r.useState(!1),[H,q]=r.useState(""),[J,Q]=r.useState(le($.current)),[ee,te]=r.useState(Mn),ae=()=>{const e=$.current;if(!e)return Object.assign({},Mn);let t=0,a=0,n=!1,r=e,o=!0,i=0,l=0;for(;o;)if("static"!==window.getComputedStyle(r).position||n||(t+=r.offsetTop,a+=r.offsetLeft,n=!0),"relative"===window.getComputedStyle(r).position&&(i+=t,l+=a,t=0,a=0,n=!1),r.scrollLeft&&(l+=-r.scrollLeft),r.scrollTop&&(i+=-r.scrollTop),r.parentElement){"PluridPlane"===r.parentElement.dataset.pluridEntity&&(o=!1),r=r.parentElement}else o=!1;const s=D?56:0;return{x:l+e.offsetWidth,y:i+s}},ne=u.useDebouncedCallback((()=>{(()=>{const e=ae();U({planeID:H,linkCoordinates:e});const t=a.space.tree.logic.updatePlaneLocation(l.objects.clone(I),J,H,l.objects.clone(e));L(t)})()}),t.PLURID_DEFAULT_RESIZE_DEBOUNCE_TIME),re=e=>{const{updatedTree:t,updatedPlane:n}=a.space.tree.logic.togglePlaneFromTree(l.objects.clone(I),H,e);return L(t),W((e=>!e)),j(!1),{updatedPlane:n}},oe=(e,t)=>{t&&(G||(A({field:"isolatePlane",value:""}),Et(y,t,e)))},se=e=>{if(e.altKey&&G&&H){const t=a.space.tree.logic.getTreePlaneByID(I,H);Et(y,t,e)}else G||H?(e=>{const{updatedPlane:t}=re();oe(e,t)})(e):(e=>{if(!J||!F)return;const{route:t}=F,n=ae(),{pluridPlaneID:r,updatedTree:i,updatedTreePlane:s}=a.space.tree.logic.updateTreeWithNewPlane(t,J,n,l.objects.clone(I),c.getAll(),O,o);r&&(oe(e,s),L(i),W(!0),q(r))})(e)},ce=()=>{$.current&&$.current.blur()},ue=r.useCallback((e=>{e.preventDefault(),void 0!==g&&g(e),se(e),ce()}),[J,JSON.stringify(I),$.current]);return r.useEffect((()=>{const e=le($.current);Q(e);const t=ae();te(t)}),[]),r.useEffect((()=>{G&&ne()}),[G,JSON.stringify(_),JSON.stringify(I)]),r.useEffect((()=>{if(E)return z&&V.current&&(X.current=setTimeout((()=>{j(!0)}),N),clearTimeout(V.current)),z||(V.current=setTimeout((()=>{j(!1),X.current&&clearTimeout(X.current)}),M)),()=>{V.current&&clearTimeout(V.current),X.current&&clearTimeout(X.current)}}),[E,z]),r.useEffect((()=>{}),[]),r.useEffect((()=>{const e=s.subscribe({topic:t.PLURID_PUBSUB_TOPIC.OPEN_CLOSED_PLANE,callback:()=>{C===H&&(re(),A({field:"lastClosedPlane",value:""}))}});return()=>{s.unsubscribe(e)}}),[G,H,JSON.stringify(I)]),r.useEffect((()=>{const e=s.subscribe({topic:t.PLURID_PUBSUB_TOPIC.CLOSE_PLANE,callback:e=>{const{id:t}=e;if(t===H&&G){re(!1),A({field:"lastClosedPlane",value:t})}}});return()=>{s.unsubscribe(e)}}),[G,H,JSON.stringify(I)]),r.useEffect((()=>()=>{G&&null===$.current&&(()=>{const e=a.space.tree.logic.removePlaneFromTree(l.objects.clone(I),H);L(e),W((e=>!e)),j(!1)})()}),[G,Z,H,J,JSON.stringify(I)]),x.default.createElement(Yn,{ref:$,onClick:e=>ue(e),onMouseEnter:()=>K(!0),onMouseLeave:()=>K(!1),onKeyUp:e=>(e=>{if("Enter"===e.code)return ue(e),void ce()})(e),theme:w,suffix:B,devisible:Y,style:Object.assign({},h),className:T,"data-plurid-entity":t.PLURID_ENTITY_LINK,tabIndex:0},d,Z&&!G&&x.default.createElement(kn,{elementID:`preview-${J}`,rootID:J},x.default.createElement(Bn,{planeRoute:k,linkCoordinates:ee,previewComponent:S,previewOffsetX:b,previewOffsetY:R})))})),Xn=c.css`
532
+ color: ${({theme:e})=>e.colorTertiary};
533
+
534
+ @media (hover:hover) {
535
+ :hover {
536
+ color: ${({theme:e})=>e.colorPrimary};
537
+ }
538
+ }
539
+ `,Vn=M.default.a`
540
+ ${Xn}
541
+ `,zn=M.default.div`
542
+ cursor: pointer;
543
+
544
+ ${Xn}
545
+ `,Kn=e=>{const{route:t,children:n,asAnchor:r,target:o,theme:i,style:l,className:c,atClick:u}=e,d=null==r||r,f=i||s.plurid,p=e=>{if(u){if(u(e))return}e.preventDefault(),"_blank"!==o?a.pluridRouterNavigate(t):window.open(t)},m={tabIndex:0,theme:f,style:l,className:c,onClick:p,onKeyUp:e=>{"Enter"!==e.code||p(e)}};return d?x.default.createElement(Vn,Object.assign({href:t},m),n):x.default.createElement(zn,Object.assign({},m),n)},Zn=M.default.div`
546
+ position: absolute;
547
+ height: 0;
548
+ width: 0;
549
+ user-select: none;
550
+ pointer-events: none;
551
+ `,jn=o.connect((e=>({stateConfiguration:_t.configuration.getConfiguration(e)})),(e=>({dispatchSetConfiguration:t=>e(qe.configuration.setConfiguration(t))})),null,{context:Ge})((e=>{const n=r.useContext(He);if(!n)return x.default.createElement(x.default.Fragment,null);const{registerPubSub:o}=n,{configuration:i,pubsub:l,stateConfiguration:s,dispatchSetConfiguration:c}=e,u=r.useRef(null);return r.useEffect((()=>{const e=a.general.configuration.merge(i,s);c(e)}),[i]),r.useEffect((()=>{l&&o(l)}),[l]),x.default.createElement(Zn,{ref:u,"data-plurid-entity":t.PLURID_ENTITY_APPLICATION_CONFIGURATOR})})),Gn=M.default.div`
552
+ position: absolute;
553
+ height: 0;
554
+ width: 0;
555
+ user-select: none;
556
+ pointer-events: none;
557
+ `,{getPluridPlaneIDByData:Wn}=a.planes,Hn=o.connect((e=>({})),(e=>({})),null,{context:Ge})((e=>{const a=r.useRef(null),[n,o]=r.useState("");return r.useEffect((()=>{const e=Wn(a.current);o(e)}),[]),x.default.createElement(Gn,{ref:a,"data-plurid-entity":t.PLURID_ENTITY_PLANE_CONFIGURATOR})})),qn=M.default.div`
558
+ `,Jn=o.connect((e=>({stateGeneralTheme:_t.themes.getGeneralTheme(e),stateInteractionTheme:_t.themes.getInteractionTheme(e)})),(e=>({})),null,{context:Ge})((e=>{const{plurid:t}=e,a=t.value,n=r.useRef(!1),[o,i]=r.useState();return r.useEffect((()=>(n.current=!0,()=>{n.current=!1}))),r.useEffect((()=>{let e=!1;We(void 0,void 0,void 0,(function*(){if(!e){e=!0;try{const{domain:e,url:t}=(e=>{const t=e.match(/^pttp:\/\/(\w+(\.|:)\w+)\/?/);if(!t)return{domain:"",url:""};const a=t[1];return{domain:a,url:`http://${a}/pttp`}})(a),r=((e,t)=>{if(e)return t.replace(`pttp://${e}`,"")})(e,a);if(!t||!r)return;const o=yield((e,t)=>We(void 0,void 0,void 0,(function*(){try{const a=yield k.default(e,{method:"post",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify({path:t}),credentials:"include"}),n=yield a.json();if(!n.element)return;const{element:r}=n,o=new g.ElementQLClient({url:r.url}),{status:i,Elements:l}=yield o.get(r.json,"json");if(!i)return;const s=l[r.name];return()=>s}catch(e){return}})))(t,r);if(!n.current)return;o&&i(o)}catch(e){return}}}))}),[]),x.default.createElement(qn,null,o&&x.default.createElement(o,null))})),Qn=M.default.div`
559
+ `,er=o.connect((e=>({stateGeneralTheme:_t.themes.getGeneralTheme(e),stateInteractionTheme:_t.themes.getInteractionTheme(e)})),(e=>({})),null,{context:Ge})((e=>{const{plurid:t}=e,a=t.value;return x.default.createElement(Qn,null,x.default.createElement("iframe",{src:a}))})),tr=e=>{const{top:t,index:a,element:n,setHeight:o}=e,i=r.useRef(null);return r.useEffect((()=>{i.current&&o(i.current.offsetHeight,a)}),[i.current]),x.default.createElement("div",{ref:i,style:{position:"absolute",top:t+"px"}},n)},{markers:{Spinner:ar}}=f.universal,nr=o.connect((e=>({translationY:_t.space.getTranslationY(e),viewSize:_t.space.getViewSize(e)})),(e=>({})),null,{context:Ge})((e=>{const{items:t,generalHeight:a,translationY:n,viewSize:o}=e,i=a||100,s=r.useRef(null),c=r.useRef([]),u=r.useRef(Array(t.length).fill(i)),[d,f]=r.useState(0),[p,m]=r.useState(Math.floor(1e3/i)),[g,h]=r.useState(i*(p-d)),[T,E]=r.useState(!1),S=(e,t)=>{u.current[t]=e};return r.useEffect((()=>{if(u.current){const e=l.mathematics.arithmetic.sum(u.current,u.current.length);h(e)}}),[d,p,u.current]),r.useEffect((()=>{let e=0;for(const[t,a]of u.current.entries())e+=a,n<0?(e<Math.abs(n)&&f(t),e>Math.abs(n)+o.height&&e<Math.abs(n)+o.height+400&&m(t)):(f(0),m(10))}),[o.height,n]),r.useEffect((()=>{E(!0),setTimeout((()=>{const e=l.mathematics.arithmetic.sum(u.current,u.current.length);h(e),E(!1)}),400)}),[o]),x.default.createElement("div",{style:{height:g},ref:s},T&&x.default.createElement(x.default.Fragment,null,x.default.createElement(ar,null)),!T&&x.default.createElement(x.default.Fragment,null,(()=>{c.current=[];for(let e=d;e<=p;e++){const a=t[e];c.current.push(x.default.createElement(tr,{key:e+Math.random(),index:e,top:l.mathematics.arithmetic.sum(u.current,e),element:a,setHeight:S}))}return c.current})()))})),rr=M.default.div`
560
+ `,or=o.connect((e=>({stateGeneralTheme:_t.themes.getGeneralTheme(e),stateInteractionTheme:_t.themes.getInteractionTheme(e)})),(e=>({})),null,{context:Ge})((e=>x.default.createElement(rr,null,"PluridPlaneDebugger"))),ir=M.default.div`
561
+ `,lr=o.connect((e=>({stateGeneralTheme:_t.themes.getGeneralTheme(e),stateInteractionTheme:_t.themes.getInteractionTheme(e)})),(e=>({})),null,{context:Ge})((e=>x.default.createElement(ir,null,"PluridSpaceDebugger"))),sr=(e,n,r)=>We(void 0,void 0,void 0,(function*(){const n=yield((e,n,r,o)=>We(void 0,void 0,void 0,(function*(){const n={planes:[],spaces:[],view:[],value:""};let r;if("Route"===e.kind){let t=e.data;r=t.defaultConfiguration,e.data.resolver&&(t=yield e.data.resolver(o)),n.planes=t.planes||[],n.spaces=t.spaces||[],n.view=t.view||[],n.value=e.data.value||""}const{planes:i,spaces:l,view:s}=n,c=[];if(l)for(const e of l){const o=[],i=[];if(e.planes)for(const r of e.planes){const o=ce(r);n.value===t.PLURID_ROUTE_DEFAULT_PATH_VALUE?t.PLURID_ROUTE_DEFAULT_PATH:a.utilities.cleanPathElement(n.value),e.value===t.PLURID_ROUTE_DEFAULT_SPACE_VALUE?t.PLURID_ROUTE_DEFAULT_SPACE:a.utilities.cleanPathElement(e.value),a.utilities.cleanPathElement(o.value)}if(e.universes)for(const r of e.universes){if(r.clusters)for(const o of r.clusters)for(const i of o.planes){const l=ce(i);n.value===t.PLURID_ROUTE_DEFAULT_PATH_VALUE?t.PLURID_ROUTE_DEFAULT_PATH:a.utilities.cleanPathElement(n.value),e.value===t.PLURID_ROUTE_DEFAULT_SPACE_VALUE?t.PLURID_ROUTE_DEFAULT_SPACE:a.utilities.cleanPathElement(e.value),r.value===t.PLURID_ROUTE_DEFAULT_UNIVERSE_VALUE?t.PLURID_ROUTE_DEFAULT_UNIVERSE:a.utilities.cleanPathElement(r.value),o.value===t.PLURID_ROUTE_DEFAULT_CLUSTER_VALUE?t.PLURID_ROUTE_DEFAULT_CLUSTER:a.utilities.cleanPathElement(o.value),a.utilities.cleanPathElement(l.value)}if(r.planes)for(const o of r.planes){const i=ce(o);n.value===t.PLURID_ROUTE_DEFAULT_PATH_VALUE?t.PLURID_ROUTE_DEFAULT_PATH:a.utilities.cleanPathElement(n.value),e.value===t.PLURID_ROUTE_DEFAULT_SPACE_VALUE?t.PLURID_ROUTE_DEFAULT_SPACE:a.utilities.cleanPathElement(e.value),r.value===t.PLURID_ROUTE_DEFAULT_UNIVERSE_VALUE?t.PLURID_ROUTE_DEFAULT_UNIVERSE:a.utilities.cleanPathElement(r.value),a.utilities.cleanPathElement(i.value)}}const l={planes:o,view:i,configuration:r};c.push(l)}if(i){const e=[];for(const r of i){const o=ce(r),{value:i,component:l}=o;n.value===t.PLURID_ROUTE_DEFAULT_PATH_VALUE?t.PLURID_ROUTE_DEFAULT_PATH:a.utilities.cleanPathElement(n.value),a.utilities.cleanPathElement(o.value);const s={component:l,route:i};e.push(s)}const o={planes:e,view:s,configuration:r};c.push(o)}return c})))(e,0,0,r),o={};for(const t of n){const{planes:a,view:n,configuration:r}=t,{computedTree:i,appConfiguration:l}=ht(a,e.data.defaultConfiguration,n),s={configuration:Object.assign({},l),shortcuts:{global:!0},themes:{general:N.default.plurid,interaction:N.default.plurid},ui:{toolbarScrollPosition:50},space:{loading:!1,animatedTransform:!1,transform:"matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1)",scale:1,rotationX:0,rotationY:0,translationX:0,translationY:0,translationZ:0,tree:i,activeUniverseID:"",camera:{x:0,y:0,z:0},viewSize:{width:1440,height:821},spaceSize:{width:1440,height:821,depth:0,topCorner:{x:0,y:0,z:0}},view:n,culledView:[]}};o[e.data.value]=s}return{states:o}})),{IsoMatcher:cr,RouteParser:ur}=a.routing,dr={PluridPlaneBridge:Nt,PluridPlaneContent:Kt,PluridPlaneControls:Vt,PluridPlaneDebugger:or,PluridSpaceDebugger:lr},fr={Application:_n,RouterStatic:xn,RouterBrowser:Dn,Provider:Nn,Link:$n,RouterLink:Kn,ApplicationConfigurator:jn,PlaneConfigurator:Hn,ExternalPlane:Jn,IframePlane:er,VirtualList:nr,SPACE_LAYOUT:t.LAYOUT_TYPES,SIZES:t.SIZES,TRANSFORM_MODES:t.TRANSFORM_MODES,TRANSFORM_TOUCHES:t.TRANSFORM_TOUCHES,PubSub:D.default,PUBSUB_TOPIC:t.PLURID_PUBSUB_TOPIC,serverComputeMetastate:sr,IsoMatcher:cr,routerNavigate:a.pluridRouterNavigate,internals:dr};Object.defineProperty(e,"PLURID_PUBSUB_TOPIC",{enumerable:!0,get:function(){return t.PLURID_PUBSUB_TOPIC}}),Object.defineProperty(e,"PLURID_ROUTER_LOCATION_CHANGED",{enumerable:!0,get:function(){return t.PLURID_ROUTER_LOCATION_CHANGED}}),Object.defineProperty(e,"PLURID_ROUTER_LOCATION_STORED",{enumerable:!0,get:function(){return t.PLURID_ROUTER_LOCATION_STORED}}),Object.defineProperty(e,"SIZES",{enumerable:!0,get:function(){return t.SIZES}}),Object.defineProperty(e,"SPACE_LAYOUT",{enumerable:!0,get:function(){return t.LAYOUT_TYPES}}),Object.defineProperty(e,"TRANSFORM_MODES",{enumerable:!0,get:function(){return t.TRANSFORM_MODES}}),Object.defineProperty(e,"TRANSFORM_TOUCHES",{enumerable:!0,get:function(){return t.TRANSFORM_TOUCHES}}),Object.defineProperty(e,"pluridRouterNavigate",{enumerable:!0,get:function(){return a.pluridRouterNavigate}}),Object.defineProperty(e,"PluridPubSub",{enumerable:!0,get:function(){return D.default}}),e.PluridApplication=_n,e.PluridApplicationConfigurator=jn,e.PluridExternalPlane=Jn,e.PluridIframePlane=er,e.PluridIsoMatcher=cr,e.PluridLink=$n,e.PluridPlaneConfigurator=Hn,e.PluridProvider=Nn,e.PluridRouteParser=ur,e.PluridRouterBrowser=Dn,e.PluridRouterLink=Kn,e.PluridRouterStatic=xn,e.PluridVirtualList=nr,e.default=fr,e.getDirectPlaneMatch=(e,t,a)=>{let n,r,o;for(const a of t){if(a.planes)for(const t of a.planes){const n=ce(t),i="/"===a.value?n.value:a.value+n.value;if(o=i,e===i){r=t;break}}if(r){n=a;break}}if(a)for(const t of a){if(e===ce(t).value){r=t;break}}return{matchRoute:n,matchPlane:r,matchPath:o}},e.internals=dr,e.pluridStateModules=Ke,e.serverComputeMetastate=sr,e.usePluridRouter=()=>{const[e,a]=r.useState("");return r.useEffect((()=>{const e=()=>{const e=l.storage.loadState(t.PLURID_ROUTER_STORAGE);e&&a(e)};return e(),window.addEventListener(t.PLURID_ROUTER_LOCATION_STORED,e),()=>{window.removeEventListener(t.PLURID_ROUTER_LOCATION_STORED,e)}}),[]),e}}(D);var x,N=(x=D)&&x.__esModule&&Object.prototype.hasOwnProperty.call(x,"default")?x.default:x;exports.default=N;
562
+ //# sourceMappingURL=index.min.js.map