janusweb 1.5.30 → 1.5.34

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 (84) hide show
  1. package/CHANGELOG +39 -0
  2. package/LICENSE +1 -1
  3. package/media/assets/janus-avatar-animations.glb +0 -0
  4. package/media/assets/janus-avatar-base.glb +0 -0
  5. package/media/assets/webui/apps/avatar/avatar.css +6 -2
  6. package/media/assets/webui/apps/avatar/avatar.js +99 -11
  7. package/media/assets/webui/apps/buttons/buttons.html +2 -2
  8. package/media/assets/webui/apps/buttons/buttons.js +3 -3
  9. package/media/assets/webui/apps/comms/comms.js +7 -4
  10. package/media/assets/webui/apps/comms/voip.js +133 -57
  11. package/media/assets/webui/apps/editor/codemirror/addon/hint/javascript-hint.js +162 -0
  12. package/media/assets/webui/apps/editor/codemirror/addon/hint/show-hint.css +36 -0
  13. package/media/assets/webui/apps/editor/codemirror/addon/hint/show-hint.js +529 -0
  14. package/media/assets/webui/apps/editor/codemirror/addon/hint/xml-hint.js +140 -0
  15. package/media/assets/webui/apps/editor/codemirror/keymap/vim.js +5734 -0
  16. package/media/assets/webui/apps/editor/codemirror/lib/codemirror.css +350 -0
  17. package/media/assets/webui/apps/editor/codemirror/lib/codemirror.js +9800 -0
  18. package/media/assets/webui/apps/editor/codemirror/lib/jmldark.css +33 -0
  19. package/media/assets/webui/apps/editor/codemirror/mode/css/css.js +864 -0
  20. package/media/assets/webui/apps/editor/codemirror/mode/htmlmixed/htmlmixed.js +153 -0
  21. package/media/assets/webui/apps/editor/codemirror/mode/javascript/javascript.js +942 -0
  22. package/media/assets/webui/apps/editor/codemirror/mode/xml/xml.js +413 -0
  23. package/media/assets/webui/apps/editor/editor.css +3 -0
  24. package/media/assets/webui/apps/editor/editor.js +409 -9
  25. package/media/assets/webui/apps/editor/editor.json +6 -3
  26. package/media/assets/webui/apps/inventory/inventory.html +7 -4
  27. package/media/assets/webui/apps/inventory/inventory.js +2 -2
  28. package/media/assets/webui/apps/locomotion/teleporter.js +10 -9
  29. package/media/assets/webui/apps/navigation/navigation.js +12 -12
  30. package/media/assets/webui/apps/settings/settings.html +1 -1
  31. package/media/assets/webui/apps/vfs/browserfs/browserfs.js +8 -0
  32. package/media/assets/webui/apps/vfs/vfs.css +52 -0
  33. package/media/assets/webui/apps/vfs/vfs.js +452 -0
  34. package/media/assets/webui/apps/vfs/vfs.json +10 -0
  35. package/media/assets/webui/apps/virtualgamepad/virtualgamepad.js +9 -7
  36. package/media/assets/webui/apps/xrmenu/xrmenu.js +13 -4
  37. package/media/assets/webui/default.json +2 -1
  38. package/media/assets/webui/none.json +1 -0
  39. package/media/assets/webui/themes/default.css +29 -2
  40. package/media/assets.json +2 -1
  41. package/media/index.html +1 -1
  42. package/media/lib/draco/README.md +32 -0
  43. package/media/lib/draco/draco_decoder.js +52 -0
  44. package/media/lib/draco/draco_decoder.wasm +0 -0
  45. package/media/lib/draco/draco_encoder.js +33 -0
  46. package/media/lib/draco/draco_wasm_wrapper.js +104 -0
  47. package/media/lib/draco/gltf/draco_decoder.js +48 -0
  48. package/media/lib/draco/gltf/draco_decoder.wasm +0 -0
  49. package/media/lib/draco/gltf/draco_encoder.js +33 -0
  50. package/media/lib/draco/gltf/draco_wasm_wrapper.js +104 -0
  51. package/media/lib/physx/physx.release.js +21 -0
  52. package/media/lib/physx/physx.release.wasm +0 -0
  53. package/media/manifest.json +5 -5
  54. package/media/service-worker.js +7 -0
  55. package/package.json +2 -9
  56. package/scripts/client.js +67 -46
  57. package/scripts/config.js +2 -0
  58. package/scripts/elements/linesegments.js +10 -3
  59. package/scripts/external/JanusFireboxParser.js +1 -0
  60. package/scripts/image.js +7 -1
  61. package/scripts/janusbase.js +104 -43
  62. package/scripts/janusghost.js +314 -16
  63. package/scripts/januslight.js +11 -2
  64. package/scripts/janusparagraph.js +8 -6
  65. package/scripts/janusparticle.js +26 -16
  66. package/scripts/janusplayer.js +126 -37
  67. package/scripts/janusweb.js +26 -2
  68. package/scripts/janusxrplayer.js +5 -3
  69. package/scripts/multiplayermanager.js +6 -4
  70. package/scripts/object.js +246 -88
  71. package/scripts/portal.js +23 -14
  72. package/scripts/remoteplayer.js +1 -25
  73. package/scripts/room.js +199 -77
  74. package/scripts/sound.js +8 -6
  75. package/scripts/text.js +13 -5
  76. package/scripts/translators/janusvfs.js +20 -0
  77. package/scripts/video.js +1 -1
  78. package/scripts/websurface.js +17 -3
  79. package/utils/build.sh +3 -0
  80. package/utils/init.sh +2 -2
  81. package/scripts/chat.js +0 -80
  82. package/scripts/ui.js +0 -265
  83. package/scripts/urlbar.js +0 -93
  84. package/templates/janusweb.tpl +0 -3
@@ -71,6 +71,10 @@ ui-list>ui-item[hover],
71
71
  ui-checklist>ui-checklistitem[hover] {
72
72
  background-color: rgba(128,128,255,.05);
73
73
  }
74
+ ui-list[selectable]>ui-item[hover] {
75
+ background-color: rgba(128,128,255,.2);
76
+ cursor: pointer;
77
+ }
74
78
  ui-list>ui-item.state_selected,
75
79
  ui-checklist>ui-checklistitem.state_selected {
76
80
  background: rgba(128,128,255,.5);
@@ -184,6 +188,10 @@ ui-tabs>ui-tabbar>ui-tabcountbutton {
184
188
  margin-bottom: 0;
185
189
  white-space: nowrap;
186
190
  display: inline-block;
191
+ max-width:10em;
192
+ text-overflow: ellipsis;
193
+ direction: rtl;
194
+ overflow: hidden;
187
195
  }
188
196
  ui-tabs>ui-tabbar>ui-button[selected],
189
197
  ui-tabs>ui-tabbar>ui-button[selected][hover],
@@ -272,6 +280,8 @@ ui-window {
272
280
  border: 1px solid #666;
273
281
  box-shadow: 1px 1px 10px rgba(0,0,0,1);
274
282
  color: white;
283
+ display: flex;
284
+ flex-direction: column;
275
285
  }
276
286
  ui-window>ui-window-titlebar {
277
287
  display: flex;
@@ -286,6 +296,7 @@ ui-window>ui-window-titlebar {
286
296
  white-space: nowrap;
287
297
  vertical-align: middle;
288
298
  border-bottom: 1px solid #666;
299
+ order: 0;
289
300
  }
290
301
  ui-window.state_movable>ui-window-titlebar:hover {
291
302
  cursor: -webkit-grab;
@@ -331,6 +342,9 @@ ui-window>.ui_window_content {
331
342
  -moz-box-sizing: border-box;
332
343
  position: relative;
333
344
  }
345
+ ui-window>ui-window-content {
346
+ order: 1;
347
+ }
334
348
  ui-window[scrollable]>ui-window-content {
335
349
  overflow: auto;
336
350
  display: block;
@@ -673,6 +687,7 @@ ui-button,
673
687
  ui-togglebutton,
674
688
  ui-dropdownbutton,
675
689
  ui-tabcountbutton,
690
+ ui-popupbutton,
676
691
  ui-notificationbutton {
677
692
  display: inline-block;
678
693
  border: none;
@@ -687,11 +702,13 @@ ui-notificationbutton {
687
702
 
688
703
  background-image: linear-gradient(#484e55, #3a3f44 60%, #313539);
689
704
  background-color: transparent;
705
+ position: relative;
690
706
  }
691
707
  ui-button[hover],
692
708
  ui-togglebutton[hover],
693
709
  ui-dropdownbutton[hover],
694
710
  ui-tabcountbutton[hover],
711
+ ui-popupbutton[hover],
695
712
  ui-notificationbutton[hover] {
696
713
  background-image: linear-gradient(#323232, #404142 40%, #393b3d);
697
714
  }
@@ -699,6 +716,7 @@ ui-button:active,
699
716
  ui-togglebutton:active,
700
717
  ui-dropdownbutton:active,
701
718
  ui-tabcountbutton:active,
719
+ ui-popupbutton:active,
702
720
  ui-notificationbutton:active {
703
721
  background-image: linear-gradient(#020202, #101112 40%, #191b1d);
704
722
  }
@@ -706,9 +724,10 @@ ui-button[disabled],
706
724
  ui-togglebutton:disabled,
707
725
  ui-dropdownbutton:disabled,
708
726
  ui-tabcountbutton:disabled,
727
+ ui-popupbutton:disabled,
709
728
  ui-notificationbutton:disabled {
710
729
  color: #999;
711
- background-image: linear-gradient(#484e55, #3a3f44 60%, #313539);
730
+ background-image: linear-gradient(#383e45, #2a2f34 60%, #212549);
712
731
  cursor: not-allowed;
713
732
  }
714
733
 
@@ -1034,6 +1053,7 @@ ui-treeview {
1034
1053
  background: black;
1035
1054
  color: white;
1036
1055
  */
1056
+ display: block;
1037
1057
  }
1038
1058
  ui-treeview ui-list {
1039
1059
  /*background: rgba(0,0,0,.8);*/
@@ -1060,8 +1080,12 @@ ui-treeview ui-treeviewitem {
1060
1080
  order: 2;
1061
1081
  padding-left: 1em;
1062
1082
  }
1083
+ ui-treeview ui-treeviewitem[collapsed]>ui-treeviewitem {
1084
+ display: none;
1085
+ }
1063
1086
  ui-treeview ui-treeviewitem>ui-text {
1064
1087
  order: 1;
1088
+ user-select: none;
1065
1089
  }
1066
1090
  ui-treeview ui-treeviewitem:hover>ui-text {
1067
1091
  color: #9c9;
@@ -1083,11 +1107,14 @@ ui-treeview ui-treeviewitem ui-text:before {
1083
1107
  float: left;
1084
1108
  clear: left;
1085
1109
  width: .8em;
1086
- margin-left: -1.2em;
1110
+ padding-right: .5em;
1087
1111
  }
1088
1112
  ui-treeview ui-treeviewitem.haschildren>ui-text:before {
1089
1113
  content: '▼';
1090
1114
  }
1115
+ ui-treeview ui-treeviewitem.haschildren[collapsed]>ui-text:before {
1116
+ content: '▶';
1117
+ }
1091
1118
  ui-treeview ui-treeviewitem:last-child>ul {
1092
1119
  border-left: 0;
1093
1120
  }
package/media/assets.json CHANGED
@@ -101,7 +101,8 @@
101
101
 
102
102
  { "assettype":"model", "name":"avatar", "src":"assets/avatar.obj", "tex0": "avatar_tex0" },
103
103
  { "assettype":"model", "name":"avatar_head", "src":"assets/avatar_head.obj", "tex0": "avatar_head_tex0" },
104
- { "assettype":"model", "name":"avatar_gltf", "src":"assets/Beta.gltf/Beta.gltf" },
104
+ { "assettype":"model", "name":"avatar_gltf", "src":"assets/janus-avatar-base.glb" },
105
+ { "assettype":"model", "name":"avatar_animations", "src":"assets/janus-avatar-animations.glb" },
105
106
 
106
107
  { "assettype":"image", "name":"avatar_tex0", "src":"assets/avatar.png", "preload": false },
107
108
  { "assettype":"image", "name":"avatar_head_tex0", "src":"assets/avatar_head.png", "preload": false },
package/media/index.html CHANGED
@@ -34,7 +34,7 @@
34
34
  <script src="janusweb.js"></script>
35
35
  </head>
36
36
  <body>
37
- <janus-viewer src="https://vesta.janusxr.org/"></janus-viewer>
37
+ <janus-viewer src="https://www.janusxr.org/"></janus-viewer>
38
38
  </body>
39
39
  </html>
40
40
 
@@ -0,0 +1,32 @@
1
+ # Draco 3D Data Compression
2
+
3
+ Draco is an open-source library for compressing and decompressing 3D geometric meshes and point clouds. It is intended to improve the storage and transmission of 3D graphics.
4
+
5
+ [Website](https://google.github.io/draco/) | [GitHub](https://github.com/google/draco)
6
+
7
+ ## Contents
8
+
9
+ This folder contains three utilities:
10
+
11
+ * `draco_decoder.js` — Emscripten-compiled decoder, compatible with any modern browser.
12
+ * `draco_decoder.wasm` — WebAssembly decoder, compatible with newer browsers and devices.
13
+ * `draco_wasm_wrapper.js` — JavaScript wrapper for the WASM decoder.
14
+
15
+ Each file is provided in two variations:
16
+
17
+ * **Default:** Latest stable builds, tracking the project's [master branch](https://github.com/google/draco).
18
+ * **glTF:** Builds targeted by the [glTF mesh compression extension](https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_draco_mesh_compression), tracking the [corresponding Draco branch](https://github.com/google/draco/tree/gltf_2.0_draco_extension).
19
+
20
+ Either variation may be used with `THREE.DRACOLoader`:
21
+
22
+ ```js
23
+ var dracoLoader = new THREE.DRACOLoader();
24
+ dracoLoader.setDecoderPath('path/to/decoders/');
25
+ dracoLoader.setDecoderConfig({type: 'js'}); // (Optional) Override detection of WASM support.
26
+ ```
27
+
28
+ Further [documentation on GitHub](https://github.com/google/draco/tree/master/javascript/example#static-loading-javascript-decoder).
29
+
30
+ ## License
31
+
32
+ [Apache License 2.0](https://github.com/google/draco/blob/master/LICENSE)