@iwer/devui 0.2.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/build/iwer-devui.js +5190 -2892
  2. package/build/iwer-devui.min.js +268 -127
  3. package/build/iwer-devui.module.js +5190 -2892
  4. package/build/iwer-devui.module.min.js +268 -127
  5. package/lib/components/analog.d.ts.map +1 -1
  6. package/lib/components/analog.js +11 -13
  7. package/lib/components/analog.js.map +1 -1
  8. package/lib/components/binary.d.ts.map +1 -1
  9. package/lib/components/binary.js +15 -17
  10. package/lib/components/binary.js.map +1 -1
  11. package/lib/components/controls.d.ts +11 -2
  12. package/lib/components/controls.d.ts.map +1 -1
  13. package/lib/components/controls.js +61 -27
  14. package/lib/components/controls.js.map +1 -1
  15. package/lib/components/fov.d.ts.map +1 -1
  16. package/lib/components/fov.js +0 -1
  17. package/lib/components/fov.js.map +1 -1
  18. package/lib/components/header.d.ts +0 -4
  19. package/lib/components/header.d.ts.map +1 -1
  20. package/lib/components/header.js +75 -61
  21. package/lib/components/header.js.map +1 -1
  22. package/lib/components/headset.d.ts +17 -0
  23. package/lib/components/headset.d.ts.map +1 -0
  24. package/lib/components/headset.js +91 -0
  25. package/lib/components/headset.js.map +1 -0
  26. package/lib/components/icons.d.ts +8 -1
  27. package/lib/components/icons.d.ts.map +1 -1
  28. package/lib/components/icons.js +53 -27
  29. package/lib/components/icons.js.map +1 -1
  30. package/lib/components/joystick.d.ts.map +1 -1
  31. package/lib/components/joystick.js +56 -60
  32. package/lib/components/joystick.js.map +1 -1
  33. package/lib/components/mapper.d.ts +7 -3
  34. package/lib/components/mapper.d.ts.map +1 -1
  35. package/lib/components/mapper.js +34 -60
  36. package/lib/components/mapper.js.map +1 -1
  37. package/lib/components/styled.d.ts +48 -6
  38. package/lib/components/styled.d.ts.map +1 -1
  39. package/lib/components/styled.js +215 -36
  40. package/lib/components/styled.js.map +1 -1
  41. package/lib/components/vec3.d.ts +25 -0
  42. package/lib/components/vec3.d.ts.map +1 -0
  43. package/lib/components/vec3.js +90 -0
  44. package/lib/components/vec3.js.map +1 -0
  45. package/lib/index.d.ts +8 -12
  46. package/lib/index.d.ts.map +1 -1
  47. package/lib/index.js +71 -56
  48. package/lib/index.js.map +1 -1
  49. package/lib/package.json +55 -0
  50. package/lib/scene.d.ts +23 -40
  51. package/lib/scene.d.ts.map +1 -1
  52. package/lib/scene.js +160 -192
  53. package/lib/scene.js.map +1 -1
  54. package/lib/src/components/analog.d.ts +17 -0
  55. package/lib/src/components/analog.d.ts.map +1 -0
  56. package/lib/src/components/analog.js +111 -0
  57. package/lib/src/components/analog.js.map +1 -0
  58. package/lib/src/components/binary.d.ts +17 -0
  59. package/lib/src/components/binary.d.ts.map +1 -0
  60. package/lib/src/components/binary.js +77 -0
  61. package/lib/src/components/binary.js.map +1 -0
  62. package/lib/src/components/controls.d.ts +29 -0
  63. package/lib/src/components/controls.d.ts.map +1 -0
  64. package/lib/src/components/controls.js +139 -0
  65. package/lib/src/components/controls.js.map +1 -0
  66. package/lib/src/components/fov.d.ts +16 -0
  67. package/lib/src/components/fov.d.ts.map +1 -0
  68. package/lib/src/components/fov.js +30 -0
  69. package/lib/src/components/fov.js.map +1 -0
  70. package/lib/src/components/header.d.ts +20 -0
  71. package/lib/src/components/header.d.ts.map +1 -0
  72. package/lib/src/components/header.js +47 -0
  73. package/lib/src/components/header.js.map +1 -0
  74. package/lib/src/components/headset.d.ts +17 -0
  75. package/lib/src/components/headset.d.ts.map +1 -0
  76. package/lib/src/components/headset.js +29 -0
  77. package/lib/src/components/headset.js.map +1 -0
  78. package/lib/src/components/icons.d.ts +37 -0
  79. package/lib/src/components/icons.d.ts.map +1 -0
  80. package/lib/src/components/icons.js +265 -0
  81. package/lib/src/components/icons.js.map +1 -0
  82. package/lib/src/components/joystick.d.ts +21 -0
  83. package/lib/src/components/joystick.d.ts.map +1 -0
  84. package/lib/src/components/joystick.js +245 -0
  85. package/lib/src/components/joystick.js.map +1 -0
  86. package/lib/src/components/keys.d.ts +10 -0
  87. package/lib/src/components/keys.d.ts.map +1 -0
  88. package/lib/src/components/keys.js +74 -0
  89. package/lib/src/components/keys.js.map +1 -0
  90. package/lib/src/components/mapper.d.ts +22 -0
  91. package/lib/src/components/mapper.d.ts.map +1 -0
  92. package/lib/src/components/mapper.js +108 -0
  93. package/lib/src/components/mapper.js.map +1 -0
  94. package/lib/src/components/styled.d.ts +70 -0
  95. package/lib/src/components/styled.d.ts.map +1 -0
  96. package/lib/src/components/styled.js +272 -0
  97. package/lib/src/components/styled.js.map +1 -0
  98. package/lib/src/components/vec3.d.ts +22 -0
  99. package/lib/src/components/vec3.d.ts.map +1 -0
  100. package/lib/src/components/vec3.js +123 -0
  101. package/lib/src/components/vec3.js.map +1 -0
  102. package/lib/src/index.d.ts +22 -0
  103. package/lib/src/index.d.ts.map +1 -0
  104. package/lib/src/index.js +92 -0
  105. package/lib/src/index.js.map +1 -0
  106. package/lib/src/scene.d.ts +51 -0
  107. package/lib/src/scene.d.ts.map +1 -0
  108. package/lib/src/scene.js +250 -0
  109. package/lib/src/scene.js.map +1 -0
  110. package/lib/version.d.ts +2 -0
  111. package/lib/version.d.ts.map +1 -0
  112. package/lib/version.js +2 -0
  113. package/lib/version.js.map +1 -0
  114. package/package.json +6 -3
  115. package/build/iwe.min.js +0 -180
  116. package/lib/components/settings.d.ts +0 -50
  117. package/lib/components/settings.d.ts.map +0 -1
  118. package/lib/components/settings.js +0 -103
  119. package/lib/components/settings.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"analog.d.ts","sourceRoot":"","sources":["../../src/components/analog.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAUH,OAAO,KAA8B,MAAM,OAAO,CAAC;AAInD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAI5D,UAAU,iBAAiB;IAC1B,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA0IpD,CAAC"}
1
+ {"version":3,"file":"analog.d.ts","sourceRoot":"","sources":["../../src/components/analog.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,OAAO,KAA8B,MAAM,OAAO,CAAC;AAInD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAG5D,UAAU,iBAAiB;IAC1B,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA0IpD,CAAC"}
@@ -5,14 +5,12 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
5
5
  * This source code is licensed under the MIT license found in the
6
6
  * LICENSE file in the root directory of this source tree.
7
7
  */
8
- import { Button, ButtonContainer, ButtonGroup, FAIcon, MappedKeyBlock, RangeSelector, } from './styled.js';
8
+ import { Button, ButtonContainer, ButtonGroup, Colors, ControlButtonStyles, FAIcon, MappedKeyBlock, RangeSelector, } from './styled.js';
9
9
  import { useEffect, useState } from 'react';
10
10
  import { GamepadIcon } from './icons.js';
11
11
  import { MappedKeyDisplay } from './keys.js';
12
12
  import { faFingerprint } from '@fortawesome/free-solid-svg-icons';
13
- import { useDevUIConfig } from '../index.js';
14
13
  export const AnalogButton = ({ xrController, buttonId, pointerLocked, mappedKey, }) => {
15
- const devuiConfig = useDevUIConfig();
16
14
  const [isTouched, setIsTouched] = useState(false);
17
15
  const [isPressed, setIsPressed] = useState(false);
18
16
  const [isKeyPressed, setIsKeyPressed] = useState(false);
@@ -83,22 +81,22 @@ export const AnalogButton = ({ xrController, buttonId, pointerLocked, mappedKey,
83
81
  };
84
82
  }, [mappedKey, pointerLocked, buttonId, xrController]);
85
83
  return (_jsxs(ButtonContainer, { "$reverse": handedness === 'right', children: [_jsx(GamepadIcon, { buttonName: buttonId, handedness: handedness }), _jsx(ButtonGroup, { "$reverse": handedness === 'right', children: pointerLocked ? (_jsx(MappedKeyBlock, { "$pressed": isKeyPressed, children: MappedKeyDisplay[mappedKey] })) : (_jsxs(_Fragment, { children: [_jsx(Button, { "$reverse": handedness === 'right', style: {
86
- backgroundColor: isPressed
87
- ? 'rgba(255, 255, 255, 0.6)'
88
- : 'rgba(255, 255, 255, 0.3)',
89
- width: '50px',
84
+ background: isPressed
85
+ ? Colors.gradientLightGreyTranslucent
86
+ : Colors.gradientGreyTranslucent,
87
+ width: ControlButtonStyles.widthLong,
90
88
  }, onClick: () => {
91
89
  setIsPressed(true);
92
90
  xrController.updateButtonValue(buttonId, 1);
93
91
  setTimeout(() => {
94
92
  setIsPressed(false);
95
93
  xrController.updateButtonValue(buttonId, 0);
96
- }, devuiConfig.buttonPressDuration);
97
- }, children: "Press" }), _jsx(Button, { "$reverse": handedness === 'right', style: {
98
- backgroundColor: isTouched
99
- ? 'rgba(255, 255, 255, 0.6)'
100
- : 'rgba(255, 255, 255, 0.3)',
101
- width: '29px',
94
+ }, 250);
95
+ }, children: "Press" }), _jsx(Button, { title: "Click to toggle touch state", "$reverse": handedness === 'right', style: {
96
+ background: isTouched
97
+ ? Colors.gradientLightGreyTranslucent
98
+ : Colors.gradientGreyTranslucent,
99
+ width: ControlButtonStyles.widthShort,
102
100
  }, onClick: () => {
103
101
  setIsTouched(!isTouched);
104
102
  xrController.updateButtonTouch(buttonId, !isTouched);
@@ -1 +1 @@
1
- {"version":3,"file":"analog.js","sourceRoot":"","sources":["../../src/components/analog.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analog.js","sourceRoot":"","sources":["../../src/components/analog.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"binary.d.ts","sourceRoot":"","sources":["../../src/components/binary.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,OAAO,KAA8B,MAAM,OAAO,CAAC;AAInD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAI5D,UAAU,iBAAiB;IAC1B,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA2GpD,CAAC"}
1
+ {"version":3,"file":"binary.d.ts","sourceRoot":"","sources":["../../src/components/binary.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAWH,OAAO,KAA8B,MAAM,OAAO,CAAC;AAInD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAG5D,UAAU,iBAAiB;IAC1B,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA4GpD,CAAC"}
@@ -5,14 +5,12 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
5
5
  * This source code is licensed under the MIT license found in the
6
6
  * LICENSE file in the root directory of this source tree.
7
7
  */
8
- import { Button, ButtonContainer, ButtonGroup, FAIcon, MappedKeyBlock, } from './styled.js';
8
+ import { Button, ButtonContainer, ButtonGroup, Colors, ControlButtonStyles, FAIcon, MappedKeyBlock, } from './styled.js';
9
9
  import { useEffect, useState } from 'react';
10
10
  import { GamepadIcon } from './icons.js';
11
11
  import { MappedKeyDisplay } from './keys.js';
12
12
  import { faFingerprint } from '@fortawesome/free-solid-svg-icons';
13
- import { useDevUIConfig } from '../index.js';
14
13
  export const BinaryButton = ({ xrController, buttonId, pointerLocked, mappedKey, }) => {
15
- const devuiConfig = useDevUIConfig();
16
14
  const [isTouched, setIsTouched] = useState(false);
17
15
  const [isOnHold, setIsOnHold] = useState(false);
18
16
  const [isPressed, setIsPressed] = useState(false);
@@ -45,30 +43,30 @@ export const BinaryButton = ({ xrController, buttonId, pointerLocked, mappedKey,
45
43
  };
46
44
  }, [mappedKey, pointerLocked, buttonId, xrController]);
47
45
  return (_jsxs(ButtonContainer, { "$reverse": handedness === 'right', children: [_jsx(GamepadIcon, { buttonName: buttonId, handedness: handedness }), _jsx(ButtonGroup, { "$reverse": handedness === 'right', children: pointerLocked ? (_jsx(MappedKeyBlock, { "$pressed": isKeyPressed, children: MappedKeyDisplay[mappedKey] })) : (_jsxs(_Fragment, { children: [_jsx(Button, { "$reverse": handedness === 'right', style: {
48
- backgroundColor: isPressed
49
- ? 'rgba(255, 255, 255, 0.6)'
50
- : 'rgba(255, 255, 255, 0.3)',
51
- width: '50px',
46
+ background: isPressed
47
+ ? Colors.gradientLightGreyTranslucent
48
+ : Colors.gradientGreyTranslucent,
49
+ width: ControlButtonStyles.widthLong,
52
50
  }, onClick: () => {
53
51
  setIsPressed(true);
54
52
  xrController.updateButtonValue(buttonId, 1);
55
53
  setTimeout(() => {
56
54
  setIsPressed(false);
57
55
  xrController.updateButtonValue(buttonId, 0);
58
- }, devuiConfig.buttonPressDuration);
59
- }, children: "Press" }), _jsx(Button, { "$reverse": handedness === 'right', style: {
60
- backgroundColor: isTouched
61
- ? 'rgba(255, 255, 255, 0.6)'
62
- : 'rgba(255, 255, 255, 0.3)',
63
- width: '29px',
56
+ }, 250);
57
+ }, children: "Press" }), _jsx(Button, { title: "Click to toggle touch state", "$reverse": handedness === 'right', style: {
58
+ background: isTouched
59
+ ? Colors.gradientLightGreyTranslucent
60
+ : Colors.gradientGreyTranslucent,
61
+ width: ControlButtonStyles.widthShort,
64
62
  }, onClick: () => {
65
63
  setIsTouched(!isTouched);
66
64
  xrController.updateButtonTouch(buttonId, !isTouched);
67
65
  }, children: _jsx(FAIcon, { icon: faFingerprint }) }), _jsx(Button, { "$reverse": handedness === 'right', style: {
68
- backgroundColor: isOnHold
69
- ? 'rgba(255, 255, 255, 0.6)'
70
- : 'rgba(255, 255, 255, 0.3)',
71
- width: '49px',
66
+ background: isOnHold
67
+ ? Colors.gradientLightGreyTranslucent
68
+ : Colors.gradientGreyTranslucent,
69
+ width: ControlButtonStyles.widthLong,
72
70
  }, onClick: () => {
73
71
  setIsOnHold(!isOnHold);
74
72
  xrController.updateButtonValue(buttonId, isOnHold ? 0 : 1);
@@ -1 +1 @@
1
- {"version":3,"file":"binary.js","sourceRoot":"","sources":["../../src/components/binary.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"binary.js","sourceRoot":"","sources":["../../src/components/binary.tsx"],"names":[],"mappings":";AAAA;;;;;GAKG;AAEH,OAAO,EACN,MAAM,EACN,eAAe,EACf,WAAW,EACX,MAAM,EACN,mBAAmB,EACnB,MAAM,EACN,cAAc,GACd,MAAM,aAAa,CAAC;AACrB,OAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE7C,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AASlE,MAAM,CAAC,MAAM,YAAY,GAAgC,CAAC,EACzD,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,SAAS,GACT,EAAE,EAAE;IACJ,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExD,MAAM,UAAU,GAAG,YAAY,CAAC,WAAW,CAAC,UAAU,CAAC;IAEvD,SAAS,CAAC,GAAG,EAAE;QACd,MAAM,aAAa,GAAG,CAAC,KAAoB,EAAE,EAAE;YAC9C,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC9B,YAAY,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gBAC5C,eAAe,CAAC,IAAI,CAAC,CAAC;YACvB,CAAC;QACF,CAAC,CAAC;QAEF,MAAM,WAAW,GAAG,CAAC,KAAoB,EAAE,EAAE;YAC5C,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC9B,YAAY,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gBAC5C,eAAe,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC;QACF,CAAC,CAAC;QAEF,IAAI,aAAa,EAAE,CAAC;YACnB,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YAClD,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAC/C,CAAC;aAAM,CAAC;YACP,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YACrD,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAClD,CAAC;QAED,OAAO,GAAG,EAAE;YACX,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YACrD,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAClD,CAAC,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;IAEvD,OAAO,CACN,MAAC,eAAe,gBAAW,UAAU,KAAK,OAAO,aAChD,KAAC,WAAW,IAAC,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,GAAI,EAC7D,KAAC,WAAW,gBAAW,UAAU,KAAK,OAAO,YAC3C,aAAa,CAAC,CAAC,CAAC,CAChB,KAAC,cAAc,gBAAW,YAAY,YACpC,gBAAgB,CAAC,SAAS,CAAC,GACZ,CACjB,CAAC,CAAC,CAAC,CACH,8BACC,KAAC,MAAM,gBACI,UAAU,KAAK,OAAO,EAChC,KAAK,EAAE;gCACN,UAAU,EAAE,SAAS;oCACpB,CAAC,CAAC,MAAM,CAAC,4BAA4B;oCACrC,CAAC,CAAC,MAAM,CAAC,uBAAuB;gCACjC,KAAK,EAAE,mBAAmB,CAAC,SAAS;6BACpC,EACD,OAAO,EAAE,GAAG,EAAE;gCACb,YAAY,CAAC,IAAI,CAAC,CAAC;gCACnB,YAAY,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gCAC5C,UAAU,CAAC,GAAG,EAAE;oCACf,YAAY,CAAC,KAAK,CAAC,CAAC;oCACpB,YAAY,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gCAC7C,CAAC,EAAE,GAAG,CAAC,CAAC;4BACT,CAAC,sBAGO,EACT,KAAC,MAAM,IACN,KAAK,EAAC,6BAA6B,cACzB,UAAU,KAAK,OAAO,EAChC,KAAK,EAAE;gCACN,UAAU,EAAE,SAAS;oCACpB,CAAC,CAAC,MAAM,CAAC,4BAA4B;oCACrC,CAAC,CAAC,MAAM,CAAC,uBAAuB;gCAEjC,KAAK,EAAE,mBAAmB,CAAC,UAAU;6BACrC,EACD,OAAO,EAAE,GAAG,EAAE;gCACb,YAAY,CAAC,CAAC,SAAS,CAAC,CAAC;gCACzB,YAAY,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC;4BACtD,CAAC,YAED,KAAC,MAAM,IAAC,IAAI,EAAE,aAAa,GAAI,GACvB,EACT,KAAC,MAAM,gBACI,UAAU,KAAK,OAAO,EAChC,KAAK,EAAE;gCACN,UAAU,EAAE,QAAQ;oCACnB,CAAC,CAAC,MAAM,CAAC,4BAA4B;oCACrC,CAAC,CAAC,MAAM,CAAC,uBAAuB;gCACjC,KAAK,EAAE,mBAAmB,CAAC,SAAS;6BACpC,EACD,OAAO,EAAE,GAAG,EAAE;gCACb,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;gCACvB,YAAY,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BAC5D,CAAC,qBAGO,IACP,CACH,GACY,IACG,CAClB,CAAC;AACH,CAAC,CAAC"}
@@ -4,14 +4,23 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
- import { KeyMapType } from './mapper.js';
7
+ import { InputLayer } from '../scene.js';
8
8
  import React from 'react';
9
+ import { TransformHandles } from '@pmndrs/handle';
10
+ import type { XRController } from 'iwer/lib/device/XRController.js';
9
11
  import { XRDevice } from 'iwer';
10
12
  interface ControlsProps {
11
13
  xrDevice: XRDevice;
12
- keyMap: KeyMapType;
14
+ inputLayer: InputLayer;
13
15
  pointerLocked: boolean;
14
16
  }
15
17
  export declare const ControlsUI: React.FC<ControlsProps>;
18
+ interface ControllerProps {
19
+ controller: XRController;
20
+ handle: TransformHandles;
21
+ handedness: string;
22
+ pointerLocked: boolean;
23
+ }
24
+ export declare const ControllerUI: React.FC<ControllerProps>;
16
25
  export {};
17
26
  //# sourceMappingURL=controls.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../../src/components/controls.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAahC,UAAU,aAAa;IACtB,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,UAAU,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;CACvB;AAuCD,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CA+D9C,CAAC"}
1
+ {"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../../src/components/controls.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuBH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEhC,UAAU,aAAa;IACtB,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;CACvB;AAuCD,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAoB9C,CAAC;AAEF,UAAU,eAAe;IACxB,UAAU,EAAE,YAAY,CAAC;IACzB,MAAM,EAAE,gBAAgB,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;CACvB;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAgKlD,CAAC"}
@@ -1,16 +1,18 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ */
8
+ import { ControlButtonStyles, ControlPanel, FAIcon, PanelHeaderButton, SectionBreak, } from './styled.js';
9
+ import { ControllerMapper, useKeyMapStore } from './mapper.js';
10
+ import { faCircleXmark, faGamepad, faGear, faPlug, } from '@fortawesome/free-solid-svg-icons';
2
11
  import { AnalogButton } from './analog.js';
3
12
  import { BinaryButton } from './binary.js';
4
13
  import { Joystick } from './joystick.js';
5
- import { styled } from 'styled-components';
6
- const ControlsContainer = styled.div `
7
- padding: ${({ $reverse }) => $reverse ? '6px 2px 3px 5px' : '6px 5px 3px 2px'};
8
- pointer-events: all;
9
- background-color: rgba(43, 43, 43, 0.5);
10
- backdrop-filter: blur(10px);
11
- -webkit-backdrop-filter: blur(10px);
12
- border-radius: ${({ $reverse }) => ($reverse ? '12px 0 0 0' : '0 12px 0 0')};
13
- `;
14
+ import React from 'react';
15
+ import { Vector3Input } from './vec3.js';
14
16
  function transformGamepadConfig(gamepadConfig) {
15
17
  const axesSet = new Set();
16
18
  // Add all axis ids to the set
@@ -37,22 +39,54 @@ function transformGamepadConfig(gamepadConfig) {
37
39
  });
38
40
  return transformed;
39
41
  }
40
- export const ControlsUI = ({ xrDevice, keyMap, pointerLocked, }) => {
41
- return (_jsx("div", { style: {
42
- display: 'flex',
43
- justifyContent: 'space-between',
44
- flexDirection: 'row',
45
- }, children: Object.entries(xrDevice.controllers).map(([handedness, controller]) => (_jsx(ControlsContainer, { "$reverse": handedness !== 'left', children: transformGamepadConfig(controller.gamepadConfig).map((buttonConfig) => {
46
- const mapping = keyMap[handedness];
47
- if (buttonConfig.hasAxes) {
48
- return (_jsx(Joystick, { xrController: controller, pointerLocked: pointerLocked, buttonId: buttonConfig.id, mappedKeyUp: keyMap[handedness][`${buttonConfig.id}-up`], mappedKeyDown: mapping[`${buttonConfig.id}-down`], mappedKeyLeft: mapping[`${buttonConfig.id}-left`], mappedKeyRight: mapping[`${buttonConfig.id}-right`], mappedKeyPressed: mapping[buttonConfig.id] }, buttonConfig.id));
49
- }
50
- else if (buttonConfig.type === 'analog') {
51
- return (_jsx(AnalogButton, { xrController: controller, buttonId: buttonConfig.id, mappedKey: mapping[buttonConfig.id], pointerLocked: pointerLocked }, buttonConfig.id));
52
- }
53
- else {
54
- return (_jsx(BinaryButton, { xrController: controller, buttonId: buttonConfig.id, mappedKey: mapping[buttonConfig.id], pointerLocked: pointerLocked }, buttonConfig.id));
55
- }
56
- }) }, handedness))) }));
42
+ export const ControlsUI = ({ xrDevice, inputLayer, pointerLocked, }) => {
43
+ return (_jsx(_Fragment, { children: Object.entries(xrDevice.controllers).map(([handedness, controller]) => (_jsx(ControllerUI, { controller: controller, handle: inputLayer.transformHandles.get(handedness), handedness: handedness, pointerLocked: pointerLocked }, `controller-${handedness}`))) }));
44
+ };
45
+ export const ControllerUI = ({ controller, handle, handedness, pointerLocked, }) => {
46
+ const { keyMap } = useKeyMapStore();
47
+ const [connected, setConnected] = React.useState(controller.connected);
48
+ const [settingsOpen, setSettingsOpen] = React.useState(false);
49
+ React.useEffect(() => {
50
+ if (pointerLocked) {
51
+ setSettingsOpen(false);
52
+ }
53
+ }, [pointerLocked]);
54
+ return (_jsxs(ControlPanel, { style: handedness === 'left'
55
+ ? { left: '8px', bottom: '8px' }
56
+ : { right: '8px', bottom: '8px' }, children: [!pointerLocked && (_jsx(_Fragment, { children: _jsxs("div", { style: {
57
+ display: 'flex',
58
+ flexDirection: 'row',
59
+ justifyContent: 'space-between',
60
+ alignItems: 'center',
61
+ }, children: [_jsxs("div", { style: {
62
+ fontSize: '13px',
63
+ display: 'flex',
64
+ flexDirection: 'row',
65
+ alignItems: 'center',
66
+ }, children: [_jsx(FAIcon, { icon: faGamepad, style: { marginRight: '5px' } }), "Controller\u00A0", _jsxs("span", { style: { fontWeight: 'bold' }, children: ["[", handedness === 'left' ? 'L' : 'R', "]"] })] }), _jsx("div", { style: {
67
+ display: 'flex',
68
+ flexDirection: 'row',
69
+ gap: '1px',
70
+ }, children: connected ? (_jsxs(_Fragment, { children: [_jsx(PanelHeaderButton, { title: `Click to ${settingsOpen ? 'close' : 'change'} key bindings`, onClick: () => {
71
+ setSettingsOpen(!settingsOpen);
72
+ }, children: _jsx(FAIcon, { icon: faGear }) }), _jsx(PanelHeaderButton, { title: `Click to disconnect ${handedness} controller`, "$isRed": true, onClick: () => {
73
+ controller.connected = false;
74
+ setConnected(false);
75
+ }, children: _jsx(FAIcon, { icon: faCircleXmark }) })] })) : (_jsx(PanelHeaderButton, { title: `Click to reconnect ${handedness} controller`, onClick: () => {
76
+ controller.connected = true;
77
+ setConnected(true);
78
+ }, style: { marginLeft: '5px' }, children: _jsx(FAIcon, { icon: faPlug }) })) })] }) })), connected && !pointerLocked && (_jsxs(_Fragment, { children: [!settingsOpen && (_jsxs(_Fragment, { children: [_jsx(SectionBreak, {}), _jsx(Vector3Input, { vector: handle.position, label: "Position", marginBottom: ControlButtonStyles.gap }), _jsx(Vector3Input, { vector: handle.rotation, label: "Rotation" })] })), _jsx(SectionBreak, {})] })), connected &&
79
+ (settingsOpen ? (_jsx(ControllerMapper, { handedness: handedness })) : (transformGamepadConfig(controller.gamepadConfig).map((buttonConfig) => {
80
+ const mapping = keyMap[handedness];
81
+ if (buttonConfig.hasAxes) {
82
+ return (_jsx(Joystick, { xrController: controller, pointerLocked: pointerLocked, buttonId: buttonConfig.id, mappedKeyUp: keyMap[handedness][`${buttonConfig.id}-up`], mappedKeyDown: mapping[`${buttonConfig.id}-down`], mappedKeyLeft: mapping[`${buttonConfig.id}-left`], mappedKeyRight: mapping[`${buttonConfig.id}-right`], mappedKeyPressed: mapping[buttonConfig.id] }, buttonConfig.id));
83
+ }
84
+ else if (buttonConfig.type === 'analog') {
85
+ return (_jsx(AnalogButton, { xrController: controller, buttonId: buttonConfig.id, mappedKey: mapping[buttonConfig.id], pointerLocked: pointerLocked }, buttonConfig.id));
86
+ }
87
+ else {
88
+ return (_jsx(BinaryButton, { xrController: controller, buttonId: buttonConfig.id, mappedKey: mapping[buttonConfig.id], pointerLocked: pointerLocked }, buttonConfig.id));
89
+ }
90
+ })))] }, handedness));
57
91
  };
58
92
  //# sourceMappingURL=controls.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"controls.js","sourceRoot":"","sources":["../../src/components/controls.tsx"],"names":[],"mappings":";AASA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAIzC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAuB;YAC/C,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAC3B,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,iBAAiB;;;;;kBAKhC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC;CAC3E,CAAC;AAcF,SAAS,sBAAsB,CAC9B,aAA4B;IAE5B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAElC,8BAA8B;IAC9B,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;QACvC,IAAI,IAAI,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC;IACF,CAAC;IAED,0CAA0C;IAC1C,MAAM,WAAW,GAAG,aAAa,CAAC,OAAO;SACvC,MAAM,CAAC,CAAC,MAAM,EAAoB,EAAE,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,yBAAyB;SAC/E,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACjB,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;KAC/B,CAAC,CAAC,CAAC;IAEL,4BAA4B;IAC5B,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACzB,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO;YAAE,OAAO,CAAC,CAAC,CAAC;QACvC,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO;YAAE,OAAO,CAAC,CAAC;QACtC,OAAO,CAAC,CAAC;IACV,CAAC,CAAC,CAAC;IAEH,OAAO,WAAW,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAA4B,CAAC,EACnD,QAAQ,EACR,MAAM,EACN,aAAa,GACb,EAAE,EAAE;IACJ,OAAO,CACN,cACC,KAAK,EAAE;YACN,OAAO,EAAE,MAAM;YACf,cAAc,EAAE,eAAe;YAC/B,aAAa,EAAE,KAAK;SACpB,YAEA,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CACvE,KAAC,iBAAiB,gBAAW,UAAU,KAAK,MAAM,YAChD,sBAAsB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,GAAG,CACpD,CAAC,YAAY,EAAE,EAAE;gBAChB,MAAM,OAAO,GAAG,MAAM,CAAC,UAA0B,CAAE,CAAC;gBACpD,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;oBAC1B,OAAO,CACN,KAAC,QAAQ,IACR,YAAY,EAAE,UAAU,EACxB,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,YAAY,CAAC,EAAE,EACzB,WAAW,EACV,MAAM,CAAC,UAA0B,CAAE,CAClC,GAAG,YAAY,CAAC,EAAE,KAAK,CACvB,EAEF,aAAa,EAAE,OAAO,CAAC,GAAG,YAAY,CAAC,EAAE,OAAO,CAAC,EACjD,aAAa,EAAE,OAAO,CAAC,GAAG,YAAY,CAAC,EAAE,OAAO,CAAC,EACjD,cAAc,EAAE,OAAO,CAAC,GAAG,YAAY,CAAC,EAAE,QAAQ,CAAC,EACnD,gBAAgB,EAAE,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,IACrC,YAAY,CAAC,EAAE,CACnB,CACF,CAAC;gBACH,CAAC;qBAAM,IAAI,YAAY,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC3C,OAAO,CACN,KAAC,YAAY,IACZ,YAAY,EAAE,UAAU,EACxB,QAAQ,EAAE,YAAY,CAAC,EAAE,EACzB,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,EACnC,aAAa,EAAE,aAAa,IACvB,YAAY,CAAC,EAAE,CACnB,CACF,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACP,OAAO,CACN,KAAC,YAAY,IACZ,YAAY,EAAE,UAAU,EACxB,QAAQ,EAAE,YAAY,CAAC,EAAE,EACzB,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,EACnC,aAAa,EAAE,aAAa,IACvB,YAAY,CAAC,EAAE,CACnB,CACF,CAAC;gBACH,CAAC;YACF,CAAC,CACD,IA5CuD,UAAU,CA6C/C,CACpB,CAAC,GACG,CACN,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"controls.js","sourceRoot":"","sources":["../../src/components/controls.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"fov.d.ts","sourceRoot":"","sources":["../../src/components/fov.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAmB,MAAM,OAAO,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAGhC,UAAU,YAAY;IACrB,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;CACvB;AAaD,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CA6B1C,CAAC"}
1
+ {"version":3,"file":"fov.d.ts","sourceRoot":"","sources":["../../src/components/fov.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAmB,MAAM,OAAO,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAGhC,UAAU,YAAY;IACrB,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;CACvB;AAaD,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CA4B1C,CAAC"}
@@ -25,7 +25,6 @@ export const FOVMenu = ({ xrDevice, inputLayer }) => {
25
25
  setFovy(value);
26
26
  xrDevice.fovy = value;
27
27
  inputLayer.syncFovy();
28
- inputLayer.renderScene();
29
28
  }, min: Math.PI / 6, max: Math.PI / 1.5, step: Math.PI / 48 }), _jsxs(Button, { "$reverse": false, disabled: true, children: [((fovy / Math.PI) * 180).toFixed(2), "\u00B0"] })] }) }));
30
29
  };
31
30
  //# sourceMappingURL=fov.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fov.js","sourceRoot":"","sources":["../../src/components/fov.tsx"],"names":[],"mappings":";AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjE,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAIxC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAO3C,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;CASrC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAA2B,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;IAC3E,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAChD,OAAO,CACN,KAAC,mBAAmB,cACnB,MAAC,WAAW,gBAAW,KAAK,aAC3B,KAAC,MAAM,gBAAW,KAAK,EAAE,QAAQ,EAAE,IAAI,sBAE9B,EACT,KAAC,aAAa,gBACH,KAAK,EACf,KAAK,EAAE,IAAI,EACX,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,EAC9C,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;wBACf,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBACrC,OAAO,CAAC,KAAK,CAAC,CAAC;wBACf,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC;wBACtB,UAAU,CAAC,QAAQ,EAAE,CAAC;wBACtB,UAAU,CAAC,WAAW,EAAE,CAAC;oBAC1B,CAAC,EACD,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,EAChB,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,EAClB,IAAI,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,GACjB,EACF,MAAC,MAAM,gBAAW,KAAK,EAAE,QAAQ,EAAE,IAAI,aACrC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,cAC5B,IACI,GACO,CACtB,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"fov.js","sourceRoot":"","sources":["../../src/components/fov.tsx"],"names":[],"mappings":";AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjE,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAIxC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAO3C,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;CASrC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAA2B,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;IAC3E,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAChD,OAAO,CACN,KAAC,mBAAmB,cACnB,MAAC,WAAW,gBAAW,KAAK,aAC3B,KAAC,MAAM,gBAAW,KAAK,EAAE,QAAQ,EAAE,IAAI,sBAE9B,EACT,KAAC,aAAa,gBACH,KAAK,EACf,KAAK,EAAE,IAAI,EACX,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,EAC9C,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;wBACf,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBACrC,OAAO,CAAC,KAAK,CAAC,CAAC;wBACf,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC;wBACtB,UAAU,CAAC,QAAQ,EAAE,CAAC;oBACvB,CAAC,EACD,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,EAChB,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,EAClB,IAAI,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,GACjB,EACF,MAAC,MAAM,gBAAW,KAAK,EAAE,QAAQ,EAAE,IAAI,aACrC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,cAC5B,IACI,GACO,CACtB,CAAC;AACH,CAAC,CAAC"}
@@ -10,10 +10,6 @@ import { XRDevice } from 'iwer';
10
10
  interface HeaderUIProps {
11
11
  xrDevice: XRDevice;
12
12
  inputLayer: InputLayer;
13
- keyMapOpen: boolean;
14
- setKeyMapOpen: React.Dispatch<React.SetStateAction<boolean>>;
15
- fovSettingOpen: boolean;
16
- setFovSettingOpen: React.Dispatch<React.SetStateAction<boolean>>;
17
13
  }
18
14
  export declare const HeaderUI: React.FC<HeaderUIProps>;
19
15
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../src/components/header.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgBH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AA4ChC,UAAU,aAAa;IACtB,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7D,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;CACjE;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAiH5C,CAAC"}
1
+ {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../src/components/header.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAsBH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAgBhC,UAAU,aAAa;IACtB,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;CACvB;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAqN5C,CAAC"}
@@ -1,76 +1,90 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  /**
3
3
  * Copyright (c) Meta Platforms, Inc. and affiliates.
4
4
  *
5
5
  * This source code is licensed under the MIT license found in the
6
6
  * LICENSE file in the root directory of this source tree.
7
7
  */
8
- import { Button, FAIcon, MappedKeyBlock } from './styled.js';
9
- import { faArrowsUpDown, faCaretDown, faCaretUp, faCirclePlay, faKeyboard, faRightFromBracket, faRotateLeft, faSquareArrowUpRight, faVideo, } from '@fortawesome/free-solid-svg-icons';
10
- import { IWERIcon } from './icons.js';
8
+ import { BoxIcon, IWERIcon, MeshIcon, PlaneIcon } from './icons.js';
9
+ import { Button, Colors, ControlButtonStyles, ControlPanel, FAIcon, HeaderButton, HeaderButtonsContainer, PanelHeaderButton, SectionBreak, } from './styled.js';
10
+ import { faBug, faCirclePlay, faCircleXmark, faRightFromBracket, faRotateLeft, } from '@fortawesome/free-solid-svg-icons';
11
+ import React from 'react';
11
12
  import { styled } from 'styled-components';
12
- const HeaderButtonsContainer = styled.div `
13
- padding: 6px 5px;
14
- display: flex;
15
- background-color: rgba(43, 43, 43, 0.5);
16
- backdrop-filter: blur(10px);
17
- -webkit-backdrop-filter: blur(10px);
18
- justify-content: center;
19
- pointer-events: all;
20
- border-radius: 0 0 12px 12px;
21
- align-items: center;
22
- height: 24px;
13
+ const VersionTableCol1 = styled.td `
14
+ text-align: right;
15
+ color: ${Colors.textWhite};
16
+ padding: 0 8px 0 0;
17
+ font-weight: bold;
23
18
  `;
24
- const MovementInstructionsContainer = styled.div `
25
- background-color: rgba(43, 43, 43, 0.5);
26
- backdrop-filter: blur(10px);
27
- -webkit-backdrop-filter: blur(10px);
28
- border: none;
29
- display: flex;
30
- flex-direction: column;
31
- align-items: flex-start;
32
- justify-content: center;
33
- cursor: pointer;
34
- color: white;
35
- white-space: nowrap;
36
- font-size: 14px;
37
- text-transform: none;
38
- box-shadow: none;
39
- font-family: Arial, sans-serif;
40
- border-radius: ${({ $reverse }) => ($reverse ? '0 0 0 12px' : '0 0 12px 0')};
41
- padding: 5px;
42
-
43
- > div {
44
- display: flex;
45
- flex-direction: row;
46
- align-items: center;
47
- gap: 2px;
48
- margin: 2px;
49
- }
19
+ const VersionTableCol2 = styled.td `
20
+ text-align: left;
21
+ color: ${Colors.textGrey};
22
+ padding: 0;
50
23
  `;
51
- export const HeaderUI = ({ xrDevice, inputLayer, keyMapOpen, setKeyMapOpen, fovSettingOpen, setFovSettingOpen, }) => {
24
+ export const HeaderUI = ({ xrDevice, inputLayer }) => {
25
+ var _a, _b, _c;
26
+ const [planesVisible, setPlanesVisible] = React.useState(Boolean((_a = xrDevice.sem) === null || _a === void 0 ? void 0 : _a.planesVisible));
27
+ const [boxesVisible, setBoxesVisible] = React.useState(Boolean((_b = xrDevice.sem) === null || _b === void 0 ? void 0 : _b.boundingBoxesVisible));
28
+ const [meshesVisible, setMeshesVisible] = React.useState(Boolean((_c = xrDevice.sem) === null || _c === void 0 ? void 0 : _c.meshesVisible));
29
+ const [infoPanelOpen, setInfoPanelOpen] = React.useState(false);
52
30
  return (_jsxs("div", { style: {
53
31
  display: 'flex',
54
32
  justifyContent: 'center',
55
- }, children: [_jsxs(HeaderButtonsContainer, { children: [_jsx(IWERIcon, {}), _jsxs("div", { style: {
33
+ flexDirection: 'row',
34
+ alignItems: 'center',
35
+ gap: '6px',
36
+ padding: '8px',
37
+ }, children: [_jsx(HeaderButtonsContainer, { children: _jsxs("div", { style: {
38
+ display: 'flex',
39
+ flexDirection: 'row',
40
+ gap: '1px',
41
+ }, children: [_jsx(HeaderButton, { title: "Click to reset device transforms", onClick: () => {
42
+ inputLayer.resetDeviceTransforms();
43
+ }, children: _jsx(FAIcon, { icon: faRotateLeft, "$size": 16 }) }), _jsx(HeaderButton, { title: "Click to activate play mode", onClick: () => {
44
+ inputLayer.lockPointer();
45
+ }, children: _jsx(FAIcon, { icon: faCirclePlay, "$size": 16 }) }), xrDevice.sem && (_jsxs(_Fragment, { children: [_jsx(SectionBreak, { "$horizontal": false }), _jsx(HeaderButton, { title: "Click to toggle visibility of planes", onClick: () => {
46
+ xrDevice.sem.planesVisible = !planesVisible;
47
+ setPlanesVisible(!planesVisible);
48
+ }, children: _jsx(PlaneIcon, { size: 16, color: planesVisible ? Colors.textWhite : Colors.textGrey }) }), _jsx(HeaderButton, { title: "Click to toggle visibility of bounding boxes", onClick: () => {
49
+ xrDevice.sem.boundingBoxesVisible = !boxesVisible;
50
+ setBoxesVisible(!boxesVisible);
51
+ }, children: _jsx(BoxIcon, { size: 16, color: boxesVisible ? Colors.textWhite : Colors.textGrey }) }), _jsx(HeaderButton, { title: "Click to toggle visibility of meshes", onClick: () => {
52
+ xrDevice.sem.meshesVisible = !meshesVisible;
53
+ setMeshesVisible(!meshesVisible);
54
+ }, children: _jsx(MeshIcon, { size: 16, color: meshesVisible ? Colors.textWhite : Colors.textGrey }) })] })), _jsx(SectionBreak, { "$horizontal": false }), _jsx(HeaderButton, { title: "Click to exit XR session", onClick: () => {
55
+ const xrSession = xrDevice.activeSession;
56
+ xrSession === null || xrSession === void 0 ? void 0 : xrSession.end();
57
+ }, children: _jsx(FAIcon, { icon: faRightFromBracket, "$size": 16 }) })] }) }), _jsx(HeaderButtonsContainer, { children: _jsxs("div", { style: {
58
+ display: 'flex',
59
+ flexDirection: 'row',
60
+ gap: '1px',
61
+ }, children: [_jsx(HeaderButton, { title: "About IWER", onClick: () => {
62
+ setInfoPanelOpen(!infoPanelOpen);
63
+ }, children: _jsx(IWERIcon, { size: 16 }) }), _jsx(HeaderButton, { title: "Report issues", onClick: () => {
64
+ window.open('https://github.com/meta-quest/immersive-web-emulation-runtime/issues', '_blank');
65
+ }, children: _jsx(FAIcon, { icon: faBug, "$size": 16 }) })] }) }), infoPanelOpen && (_jsxs(ControlPanel, { style: {
66
+ top: '50vh',
67
+ left: '50vw',
68
+ transform: 'translate(-50%, -50%)',
69
+ maxWidth: '240px',
70
+ gap: '4px',
71
+ }, children: [_jsx("div", { style: { display: 'flex', justifyContent: 'end' }, children: _jsx(PanelHeaderButton, { "$isRed": true, onClick: () => {
72
+ setInfoPanelOpen(false);
73
+ }, children: _jsx(FAIcon, { icon: faCircleXmark }) }) }), _jsx("div", { style: { display: 'flex', justifyContent: 'center' }, children: _jsx(IWERIcon, { size: 100 }) }), _jsxs("p", { style: { textAlign: 'center', padding: '0 5px', margin: '0' }, children: [_jsx("b", { children: "Immersive Web Emulation Runtime" }), " (IWER) is a free, open-source WebXR developer tool created by Meta Platforms, Inc."] }), _jsx("table", { style: {
74
+ width: '100%',
75
+ borderCollapse: 'collapse',
56
76
  display: 'flex',
57
- flexDirection: 'row',
58
- marginLeft: '4px',
59
- }, children: [_jsx(Button, { "$reverse": false, onClick: () => {
60
- inputLayer.resetDeviceTransforms();
61
- }, children: _jsx(FAIcon, { icon: faRotateLeft }) }), _jsx(Button, { "$reverse": false, onClick: () => {
62
- inputLayer.lockPointer();
63
- setKeyMapOpen(false);
64
- setFovSettingOpen(false);
65
- }, children: _jsx(FAIcon, { icon: faCirclePlay }) }), _jsx(Button, { "$reverse": false, onClick: () => {
66
- setKeyMapOpen(!keyMapOpen);
67
- setFovSettingOpen(false);
68
- }, children: _jsx(FAIcon, { icon: faKeyboard }) }), _jsx(Button, { "$reverse": false, onClick: () => {
69
- setFovSettingOpen(!fovSettingOpen);
70
- setKeyMapOpen(false);
71
- }, children: _jsx(FAIcon, { icon: faVideo }) }), _jsx(Button, { "$reverse": false, onClick: () => {
72
- const xrSession = xrDevice.activeSession;
73
- xrSession === null || xrSession === void 0 ? void 0 : xrSession.end();
74
- }, children: _jsx(FAIcon, { icon: faRightFromBracket }) })] })] }), _jsxs(MovementInstructionsContainer, { "$reverse": false, style: { position: 'fixed', left: '0', top: '0' }, children: [_jsxs("div", { children: [_jsx(FAIcon, { icon: faSquareArrowUpRight, style: { marginRight: '4px' } }), ' ', "Roomscale Movement"] }), _jsxs("div", { children: [_jsx(MappedKeyBlock, { "$pressed": false, style: { width: '50px' }, children: "L Shift" }), _jsx("span", { style: { margin: '0 4px' }, children: "+" }), _jsx(MappedKeyBlock, { "$pressed": false, children: "W" }), _jsx(MappedKeyBlock, { "$pressed": false, children: "A" }), _jsx(MappedKeyBlock, { "$pressed": false, children: "S" }), _jsx(MappedKeyBlock, { "$pressed": false, children: "D" })] })] }), _jsxs(MovementInstructionsContainer, { "$reverse": true, style: { position: 'fixed', right: '0', top: '0' }, children: [_jsxs("div", { children: [_jsx(FAIcon, { icon: faArrowsUpDown, style: { marginRight: '4px' } }), " Camera Height"] }), _jsxs("div", { children: [_jsx(MappedKeyBlock, { "$pressed": false, style: { width: '50px' }, children: "L Shift" }), _jsx("span", { style: { margin: '0 4px' }, children: "+" }), _jsx(MappedKeyBlock, { "$pressed": false, children: _jsx(FAIcon, { icon: faCaretUp }) }), _jsx(MappedKeyBlock, { "$pressed": false, children: _jsx(FAIcon, { icon: faCaretDown }) })] })] })] }));
77
+ justifyContent: 'center',
78
+ fontSize: '12px',
79
+ padding: '8px',
80
+ }, children: _jsxs("tbody", { children: [_jsxs("tr", { children: [_jsx(VersionTableCol1, { children: "IWER" }), _jsxs(VersionTableCol2, { children: ["v", xrDevice.version] })] }), _jsxs("tr", { children: [_jsx(VersionTableCol1, { children: "DevUI" }), _jsxs(VersionTableCol2, { children: ["v", xrDevice.devui.version] })] }), xrDevice.sem && (_jsxs("tr", { children: [_jsx(VersionTableCol1, { children: "SEM" }), _jsxs(VersionTableCol2, { children: ["v", xrDevice.sem.version] })] }))] }) }), _jsx(Button, { style: {
81
+ borderRadius: ControlButtonStyles.radiusSolo,
82
+ }, onClick: () => {
83
+ window.open('https://github.com/meta-quest/immersive-web-emulation-runtime/blob/main/LICENSE', '_blank');
84
+ }, children: "MIT License" }), _jsx(Button, { style: {
85
+ borderRadius: ControlButtonStyles.radiusSolo,
86
+ }, onClick: () => {
87
+ window.open('https://github.com/meta-quest/immersive-web-emulation-runtime', '_blank');
88
+ }, children: "View Source on GitHub" })] }))] }));
75
89
  };
76
90
  //# sourceMappingURL=header.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"header.js","sourceRoot":"","sources":["../../src/components/header.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"header.js","sourceRoot":"","sources":["../../src/components/header.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import { InputLayer } from '../scene.js';
8
+ import React from 'react';
9
+ import { XRDevice } from 'iwer';
10
+ interface HeadsetProps {
11
+ xrDevice: XRDevice;
12
+ inputLayer: InputLayer;
13
+ pointerLocked: boolean;
14
+ }
15
+ export declare const HeadsetUI: React.FC<HeadsetProps>;
16
+ export {};
17
+ //# sourceMappingURL=headset.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headset.d.ts","sourceRoot":"","sources":["../../src/components/headset.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAGhC,UAAU,YAAY;IACrB,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;CACvB;AAmDD,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAsF5C,CAAC"}