x_ite 8.9.3 → 8.9.4

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 (55) hide show
  1. package/dist/assets/components/Annotation.js +13 -13
  2. package/dist/assets/components/Annotation.min.js +1 -1
  3. package/dist/assets/components/CADGeometry.js +13 -13
  4. package/dist/assets/components/CADGeometry.min.js +1 -1
  5. package/dist/assets/components/CubeMapTexturing.js +25 -25
  6. package/dist/assets/components/CubeMapTexturing.min.js +1 -1
  7. package/dist/assets/components/DIS.js +13 -13
  8. package/dist/assets/components/DIS.min.js +1 -1
  9. package/dist/assets/components/EventUtilities.js +9 -9
  10. package/dist/assets/components/EventUtilities.min.js +1 -1
  11. package/dist/assets/components/Geometry2D.js +19 -19
  12. package/dist/assets/components/Geometry2D.min.js +1 -1
  13. package/dist/assets/components/Geospatial.js +33 -33
  14. package/dist/assets/components/Geospatial.min.js +1 -1
  15. package/dist/assets/components/HAnim.js +19 -19
  16. package/dist/assets/components/HAnim.min.js +1 -1
  17. package/dist/assets/components/KeyDeviceSensor.js +8 -8
  18. package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
  19. package/dist/assets/components/Layout.js +27 -27
  20. package/dist/assets/components/Layout.min.js +1 -1
  21. package/dist/assets/components/NURBS.js +24 -24
  22. package/dist/assets/components/NURBS.min.js +1 -1
  23. package/dist/assets/components/ParticleSystems.js +23 -23
  24. package/dist/assets/components/ParticleSystems.min.js +1 -1
  25. package/dist/assets/components/Picking.js +18 -18
  26. package/dist/assets/components/Picking.min.js +1 -1
  27. package/dist/assets/components/RigidBodyPhysics.js +71 -83
  28. package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
  29. package/dist/assets/components/Scripting.js +37 -37
  30. package/dist/assets/components/Scripting.min.js +1 -1
  31. package/dist/assets/components/Text.js +24 -24
  32. package/dist/assets/components/Text.min.js +1 -1
  33. package/dist/assets/components/TextureProjector.js +14 -14
  34. package/dist/assets/components/TextureProjector.min.js +1 -1
  35. package/dist/assets/components/Texturing3D.js +30 -30
  36. package/dist/assets/components/Texturing3D.min.js +1 -1
  37. package/dist/assets/components/VolumeRendering.js +18 -18
  38. package/dist/assets/components/VolumeRendering.min.js +1 -1
  39. package/dist/assets/components/X_ITE.js +9 -9
  40. package/dist/assets/components/X_ITE.min.js +1 -1
  41. package/dist/x_ite.css +1 -1
  42. package/dist/x_ite.js +739 -749
  43. package/dist/x_ite.min.js +1 -1
  44. package/dist/x_ite.zip +0 -0
  45. package/docs/_config.yml +1 -1
  46. package/docs/_posts/getting-started.md +7 -1
  47. package/package.json +1 -1
  48. package/src/x_ite/Browser/VERSION.js +1 -1
  49. package/src/x_ite/Components/Core/X3DPrototypeInstance.js +11 -20
  50. package/src/x_ite/Components/Networking/X3DUrlObject.js +2 -3
  51. package/src/x_ite/Components/RigidBodyPhysics/BallJoint.js +8 -9
  52. package/src/x_ite/Components/RigidBodyPhysics/CollisionSensor.js +8 -4
  53. package/src/x_ite/Components/RigidBodyPhysics/DoubleAxisHingeJoint.js +20 -21
  54. package/src/x_ite/Components/RigidBodyPhysics/SingleAxisHingeJoint.js +12 -13
  55. package/src/x_ite/Components/RigidBodyPhysics/SliderJoint.js +6 -7
package/dist/x_ite.js CHANGED
@@ -1,4 +1,4 @@
1
- /* X_ITE v8.9.3 */(function webpackUniversalModuleDefinition(root, factory) {
1
+ /* X_ITE v8.9.4 */(function webpackUniversalModuleDefinition(root, factory) {
2
2
  if(typeof exports === 'object' && typeof module === 'object')
3
3
  module.exports = factory();
4
4
  else if(typeof define === 'function' && define.amd)
@@ -11,11 +11,11 @@
11
11
  return /******/ (() => { // webpackBootstrap
12
12
  /******/ var __webpack_modules__ = ({
13
13
 
14
- /***/ 30:
14
+ /***/ 395:
15
15
  /***/ (function(module, exports, __webpack_require__) {
16
16
 
17
17
  "use strict";
18
- /* provided dependency */ var jQuery = __webpack_require__(177);
18
+ /* provided dependency */ var jQuery = __webpack_require__(317);
19
19
  var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;
20
20
 
21
21
  /**
@@ -387,10 +387,10 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;
387
387
 
388
388
  /***/ }),
389
389
 
390
- /***/ 515:
390
+ /***/ 437:
391
391
  /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
392
392
 
393
- /* provided dependency */ var jQuery = __webpack_require__(177);
393
+ /* provided dependency */ var jQuery = __webpack_require__(317);
394
394
  /**
395
395
  * @preserve jquery.fullscreen 1.1.5
396
396
  * https://github.com/code-lts/jquery-fullscreen-plugin
@@ -586,7 +586,7 @@ installFullScreenHandlers();
586
586
 
587
587
  /***/ }),
588
588
 
589
- /***/ 615:
589
+ /***/ 727:
590
590
  /***/ ((module, exports, __webpack_require__) => {
591
591
 
592
592
  var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
@@ -600,7 +600,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
600
600
  (function (factory) {
601
601
  if ( true ) {
602
602
  // AMD. Register as an anonymous module.
603
- !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(177)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
603
+ !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(317)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
604
604
  __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
605
605
  (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),
606
606
  __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
@@ -811,7 +811,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
811
811
 
812
812
  /***/ }),
813
813
 
814
- /***/ 177:
814
+ /***/ 317:
815
815
  /***/ (function(module, exports) {
816
816
 
817
817
  var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
@@ -11523,7 +11523,7 @@ return jQuery;
11523
11523
 
11524
11524
  /***/ }),
11525
11525
 
11526
- /***/ 946:
11526
+ /***/ 713:
11527
11527
  /***/ ((module) => {
11528
11528
 
11529
11529
  /**
@@ -16302,7 +16302,7 @@ if (true) {
16302
16302
 
16303
16303
  /***/ }),
16304
16304
 
16305
- /***/ 886:
16305
+ /***/ 848:
16306
16306
  /***/ (function(__unused_webpack_module, exports) {
16307
16307
 
16308
16308
 
@@ -19547,7 +19547,7 @@ if (true) {
19547
19547
 
19548
19548
  /***/ }),
19549
19549
 
19550
- /***/ 660:
19550
+ /***/ 648:
19551
19551
  /***/ (function(module, exports) {
19552
19552
 
19553
19553
  var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*
@@ -34238,7 +34238,7 @@ x_ite_Namespace .set ("x_ite/Base/X3DBaseNode", X3DBaseNode_default_);
34238
34238
  *
34239
34239
  ******************************************************************************/
34240
34240
 
34241
- const VERSION_default_ = "8.9.3";
34241
+ const VERSION_default_ = "8.9.4";
34242
34242
  ;
34243
34243
 
34244
34244
  x_ite_Namespace .set ("x_ite/Browser/VERSION", VERSION_default_);
@@ -37534,6 +37534,300 @@ const ImportedNodesArray_default_ = ImportedNodesArray;
37534
37534
 
37535
37535
  x_ite_Namespace .set ("x_ite/Execution/ImportedNodesArray", ImportedNodesArray_default_);
37536
37536
  /* harmony default export */ const Execution_ImportedNodesArray = (ImportedNodesArray_default_);
37537
+ ;// CONCATENATED MODULE: ./src/x_ite/Components/Networking/X3DUrlObject.js
37538
+ /*******************************************************************************
37539
+ *
37540
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
37541
+ *
37542
+ * Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
37543
+ *
37544
+ * All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
37545
+ *
37546
+ * The copyright notice above does not evidence any actual of intended
37547
+ * publication of such source code, and is an unpublished work by create3000.
37548
+ * This material contains CONFIDENTIAL INFORMATION that is the property of
37549
+ * create3000.
37550
+ *
37551
+ * No permission is granted to copy, distribute, or create derivative works from
37552
+ * the contents of this software, in whole or in part, without the prior written
37553
+ * permission of create3000.
37554
+ *
37555
+ * NON-MILITARY USE ONLY
37556
+ *
37557
+ * All create3000 software are effectively free software with a non-military use
37558
+ * restriction. It is free. Well commented source is provided. You may reuse the
37559
+ * source in any way you please with the exception anything that uses it must be
37560
+ * marked to indicate is contains 'non-military use only' components.
37561
+ *
37562
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
37563
+ *
37564
+ * Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
37565
+ *
37566
+ * This file is part of the X_ITE Project.
37567
+ *
37568
+ * X_ITE is free software: you can redistribute it and/or modify it under the
37569
+ * terms of the GNU General Public License version 3 only, as published by the
37570
+ * Free Software Foundation.
37571
+ *
37572
+ * X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
37573
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
37574
+ * A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
37575
+ * details (a copy is included in the LICENSE file that accompanied this code).
37576
+ *
37577
+ * You should have received a copy of the GNU General Public License version 3
37578
+ * along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
37579
+ * copy of the GPLv3 License.
37580
+ *
37581
+ * For Silvio, Joy and Adi.
37582
+ *
37583
+ ******************************************************************************/
37584
+
37585
+
37586
+
37587
+
37588
+ const
37589
+ X3DUrlObject_cache = Symbol (),
37590
+ _autoRefreshStartTime = Symbol (),
37591
+ _autoRefreshCompleteTime = Symbol (),
37592
+ _autoRefreshId = Symbol ();
37593
+
37594
+ function X3DUrlObject (executionContext)
37595
+ {
37596
+ this .addType (Base_X3DConstants .X3DUrlObject);
37597
+
37598
+ this .addChildObjects ("loadState", new x_ite_Fields .SFInt32 (Base_X3DConstants .NOT_STARTED_STATE),
37599
+ "loadData", new x_ite_Fields .SFTime ());
37600
+
37601
+ this [X3DUrlObject_cache] = true;
37602
+ this [_autoRefreshStartTime] = Date .now ();
37603
+ }
37604
+
37605
+ Object .assign (X3DUrlObject .prototype,
37606
+ {
37607
+ initialize ()
37608
+ {
37609
+ this .getLive () .addInterest ("set_live__", this);
37610
+
37611
+ this ._load .addInterest ("set_load__", this);
37612
+ this ._url .addInterest ("set_url__", this);
37613
+ this ._loadData .addInterest ("loadData", this);
37614
+ this ._autoRefresh .addInterest ("set_autoRefresh__", this);
37615
+ this ._autoRefreshTimeLimit .addInterest ("set_autoRefresh__", this);
37616
+ },
37617
+ setLoadState (value, notify = true)
37618
+ {
37619
+ this ._loadState = value;
37620
+
37621
+ if (value === Base_X3DConstants .COMPLETE_STATE)
37622
+ {
37623
+ this [_autoRefreshCompleteTime] = Date .now ();
37624
+ this .setAutoRefreshTimer (this ._autoRefresh .getValue ());
37625
+ }
37626
+
37627
+ if (!notify)
37628
+ return;
37629
+
37630
+ switch (value)
37631
+ {
37632
+ case Base_X3DConstants .NOT_STARTED_STATE:
37633
+ break;
37634
+ case Base_X3DConstants .IN_PROGRESS_STATE:
37635
+ {
37636
+ this .getScene () .addLoadingObject (this);
37637
+ break;
37638
+ }
37639
+ case Base_X3DConstants .COMPLETE_STATE:
37640
+ case Base_X3DConstants .FAILED_STATE:
37641
+ {
37642
+ this .getScene () .removeLoadingObject (this);
37643
+ break;
37644
+ }
37645
+ }
37646
+ },
37647
+ checkLoadState ()
37648
+ {
37649
+ return this ._loadState .getValue ();
37650
+ },
37651
+ getLoadState ()
37652
+ {
37653
+ return this ._loadState;
37654
+ },
37655
+ setCache (value)
37656
+ {
37657
+ this [X3DUrlObject_cache] = value;
37658
+ },
37659
+ getCache ()
37660
+ {
37661
+ return this [X3DUrlObject_cache] && this .getBrowser () .getBrowserOption ("Cache");
37662
+ },
37663
+ requestImmediateLoad (cache = true)
37664
+ {
37665
+ return new Promise ((resolve, reject) =>
37666
+ {
37667
+ const loading = () =>
37668
+ {
37669
+ const _loading = Symbol ();
37670
+
37671
+ this ._loadState .addFieldCallback (_loading, () =>
37672
+ {
37673
+ switch (this .checkLoadState ())
37674
+ {
37675
+ case Base_X3DConstants .COMPLETE_STATE:
37676
+ this ._loadState .removeFieldCallback (_loading);
37677
+ resolve ();
37678
+ break;
37679
+ case Base_X3DConstants .FAILED_STATE:
37680
+ this ._loadState .removeFieldCallback (_loading);
37681
+ reject ();
37682
+ break;
37683
+ }
37684
+ })
37685
+ };
37686
+
37687
+ const loadState = this .checkLoadState ();
37688
+
37689
+ if (loadState === Base_X3DConstants .COMPLETE_STATE)
37690
+ {
37691
+ resolve ();
37692
+ return;
37693
+ }
37694
+
37695
+ if (loadState === Base_X3DConstants .IN_PROGRESS_STATE)
37696
+ {
37697
+ loading ();
37698
+ return;
37699
+ }
37700
+
37701
+ if (!this ._load .getValue ())
37702
+ {
37703
+ reject ();
37704
+ return;
37705
+ }
37706
+
37707
+ if (this ._url .length === 0)
37708
+ {
37709
+ resolve ();
37710
+ return;
37711
+ }
37712
+
37713
+ this .setCache (cache);
37714
+ this .setLoadState (Base_X3DConstants .IN_PROGRESS_STATE);
37715
+
37716
+ if (this .isInitialized ())
37717
+ // Buffer prevents double load of the scene if load and url field are set at the same time.
37718
+ this ._loadData = this .getBrowser () .getCurrentTime ();
37719
+ else
37720
+ this .loadData ();
37721
+
37722
+ loading ();
37723
+ });
37724
+ },
37725
+ loadNow ()
37726
+ {
37727
+ this .setLoadState (Base_X3DConstants .NOT_STARTED_STATE);
37728
+
37729
+ return this .requestImmediateLoad ();
37730
+ },
37731
+ loadData ()
37732
+ { },
37733
+ requestUnload ()
37734
+ {
37735
+ const loadState = this .checkLoadState ();
37736
+
37737
+ if (loadState === Base_X3DConstants .NOT_STARTED_STATE || loadState === Base_X3DConstants .FAILED_STATE)
37738
+ return;
37739
+
37740
+ this .setLoadState (Base_X3DConstants .NOT_STARTED_STATE);
37741
+ this .unloadData ();
37742
+ },
37743
+ unloadNow ()
37744
+ {
37745
+ this .requestUnload ();
37746
+ },
37747
+ unloadData ()
37748
+ { },
37749
+ setAutoRefreshTimer (autoRefreshInterval)
37750
+ {
37751
+ clearTimeout (this [_autoRefreshId]);
37752
+
37753
+ if (this ._autoRefresh .getValue () <= 0)
37754
+ return;
37755
+
37756
+ const autoRefreshTimeLimit = this ._autoRefreshTimeLimit .getValue ();
37757
+
37758
+ if (autoRefreshTimeLimit !== 0)
37759
+ {
37760
+ if ((Date .now () - this [_autoRefreshStartTime]) / 1000 > autoRefreshTimeLimit - autoRefreshInterval)
37761
+ return;
37762
+ }
37763
+
37764
+ this [_autoRefreshId] = setTimeout (this .performAutoRefresh .bind (this), autoRefreshInterval * 1000);
37765
+ },
37766
+ performAutoRefresh ()
37767
+ {
37768
+ this .setLoadState (Base_X3DConstants .NOT_STARTED_STATE);
37769
+ this .requestImmediateLoad (false) .catch (Function .prototype);
37770
+ },
37771
+ set_live__ ()
37772
+ {
37773
+ if (this .getLive () .getValue ())
37774
+ this .set_autoRefresh__ ();
37775
+ else
37776
+ clearTimeout (this [_autoRefreshId]);
37777
+ },
37778
+ set_load__ ()
37779
+ {
37780
+ if (this ._load .getValue ())
37781
+ this .requestImmediateLoad () .catch (Function .prototype);
37782
+ else
37783
+ this .requestUnload ();
37784
+ },
37785
+ set_url__ ()
37786
+ {
37787
+ if (!this ._load .getValue ())
37788
+ return;
37789
+
37790
+ this .setLoadState (Base_X3DConstants .NOT_STARTED_STATE);
37791
+ this .requestImmediateLoad () .catch (Function .prototype);
37792
+ },
37793
+ set_autoRefresh__ ()
37794
+ {
37795
+ if (this .checkLoadState () !== Base_X3DConstants .COMPLETE_STATE)
37796
+ return;
37797
+
37798
+ const
37799
+ elapsedTime = (Date .now () - this [_autoRefreshCompleteTime]) / 1000,
37800
+ autoRefresh = this ._autoRefresh .getValue ();
37801
+
37802
+ let autoRefreshInterval = autoRefresh - elapsedTime;
37803
+
37804
+ if (autoRefreshInterval < 0)
37805
+ autoRefreshInterval = Math .ceil (elapsedTime / autoRefresh) * autoRefresh - elapsedTime;
37806
+
37807
+ this .setAutoRefreshTimer (autoRefreshInterval);
37808
+ },
37809
+ dispose () { },
37810
+ });
37811
+
37812
+ Object .defineProperties (X3DUrlObject,
37813
+ {
37814
+ typeName:
37815
+ {
37816
+ value: "X3DUrlObject",
37817
+ enumerable: true,
37818
+ },
37819
+ componentName:
37820
+ {
37821
+ value: "Networking",
37822
+ enumerable: true,
37823
+ },
37824
+ });
37825
+
37826
+ const X3DUrlObject_default_ = X3DUrlObject;
37827
+ ;
37828
+
37829
+ x_ite_Namespace .set ("x_ite/Components/Networking/X3DUrlObject", X3DUrlObject_default_);
37830
+ /* harmony default export */ const Networking_X3DUrlObject = (X3DUrlObject_default_);
37537
37831
  ;// CONCATENATED MODULE: ./src/x_ite/Prototype/X3DProtoDeclarationNode.js
37538
37832
  /*******************************************************************************
37539
37833
  *
@@ -37651,6 +37945,254 @@ const X3DProtoDeclarationNode_default_ = X3DProtoDeclarationNode;
37651
37945
 
37652
37946
  x_ite_Namespace .set ("x_ite/Prototype/X3DProtoDeclarationNode", X3DProtoDeclarationNode_default_);
37653
37947
  /* harmony default export */ const Prototype_X3DProtoDeclarationNode = (X3DProtoDeclarationNode_default_);
37948
+ ;// CONCATENATED MODULE: ./src/x_ite/Parser/X3DParser.js
37949
+ /* provided dependency */ var $ = __webpack_require__(317);
37950
+ /*******************************************************************************
37951
+ *
37952
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
37953
+ *
37954
+ * Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
37955
+ *
37956
+ * All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
37957
+ *
37958
+ * The copyright notice above does not evidence any actual of intended
37959
+ * publication of such source code, and is an unpublished work by create3000.
37960
+ * This material contains CONFIDENTIAL INFORMATION that is the property of
37961
+ * create3000.
37962
+ *
37963
+ * No permission is granted to copy, distribute, or create derivative works from
37964
+ * the contents of this software, in whole or in part, without the prior written
37965
+ * permission of create3000.
37966
+ *
37967
+ * NON-MILITARY USE ONLY
37968
+ *
37969
+ * All create3000 software are effectively free software with a non-military use
37970
+ * restriction. It is free. Well commented source is provided. You may reuse the
37971
+ * source in any way you please with the exception anything that uses it must be
37972
+ * marked to indicate is contains 'non-military use only' components.
37973
+ *
37974
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
37975
+ *
37976
+ * Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
37977
+ *
37978
+ * This file is part of the X_ITE Project.
37979
+ *
37980
+ * X_ITE is free software: you can redistribute it and/or modify it under the
37981
+ * terms of the GNU General Public License version 3 only, as published by the
37982
+ * Free Software Foundation.
37983
+ *
37984
+ * X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
37985
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
37986
+ * A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
37987
+ * details (a copy is included in the LICENSE file that accompanied this code).
37988
+ *
37989
+ * You should have received a copy of the GNU General Public License version 3
37990
+ * along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
37991
+ * copy of the GPLv3 License.
37992
+ *
37993
+ * For Silvio, Joy and Adi.
37994
+ *
37995
+ ******************************************************************************/
37996
+
37997
+ function X3DParser (scene)
37998
+ {
37999
+ this .scene = scene;
38000
+ this .executionContexts = [ scene ];
38001
+ this .prototypes = [ ];
38002
+ }
38003
+
38004
+ Object .assign (X3DParser .prototype,
38005
+ {
38006
+ getBrowser ()
38007
+ {
38008
+ return this .scene .getBrowser ();
38009
+ },
38010
+ getScene ()
38011
+ {
38012
+ return this .scene;
38013
+ },
38014
+ getExecutionContext ()
38015
+ {
38016
+ return this .executionContexts .at (-1);
38017
+ },
38018
+ pushExecutionContext (executionContext)
38019
+ {
38020
+ return this .executionContexts .push (executionContext);
38021
+ },
38022
+ popExecutionContext ()
38023
+ {
38024
+ this .executionContexts .pop ();
38025
+ },
38026
+ getPrototype ()
38027
+ {
38028
+ return this .prototypes .at (-1);
38029
+ },
38030
+ pushPrototype (prototype)
38031
+ {
38032
+ return this .prototypes .push (prototype);
38033
+ },
38034
+ popPrototype ()
38035
+ {
38036
+ this .prototypes .pop ();
38037
+ },
38038
+ isInsideProtoDefinition ()
38039
+ {
38040
+ return !! this .prototypes .length;
38041
+ },
38042
+ loadComponents ()
38043
+ {
38044
+ const
38045
+ browser = this .getBrowser (),
38046
+ scene = this .getScene ();
38047
+
38048
+ return Promise .all ([
38049
+ browser .loadComponents (scene .getProfile () || browser .getProfile ("Full")),
38050
+ browser .loadComponents (scene .getComponents ()),
38051
+ ]);
38052
+ },
38053
+ setUnits (units)
38054
+ {
38055
+ if (units)
38056
+ delete this .fromUnit;
38057
+ else
38058
+ this .fromUnit = function (category, value) { return value; };
38059
+ },
38060
+ fromUnit (category, value)
38061
+ {
38062
+ return this .scene .fromUnit (category, value);
38063
+ },
38064
+ convertColor (value, defaultColor = "white")
38065
+ {
38066
+ const
38067
+ wrap = $("<div></div>") .hide () .css ("color", defaultColor) .appendTo ($("body")),
38068
+ div = $("<div></div>").css ("color", value) .appendTo (wrap),
38069
+ rgb = window .getComputedStyle (div [0]) .color,
38070
+ values = rgb .replace (/^rgba?\(|\)$/g, "") .split (/[\s,]+/) .map (s => parseFloat (s));
38071
+
38072
+ wrap .remove ();
38073
+
38074
+ values [0] /= 255;
38075
+ values [1] /= 255;
38076
+ values [2] /= 255;
38077
+
38078
+ if (typeof values [3] !== "number")
38079
+ values [3] = 1;
38080
+
38081
+ return values;
38082
+ },
38083
+ sanitizeName (name = "")
38084
+ {
38085
+ // NonIdFirstChar
38086
+ name = name .replace (/^[\x30-\x39\x00-\x20\x22\x23\x27\x2b\x2c\x2d\x2e\x5b\x5c\x5d\x7b\x7d\x7f]*/, "");
38087
+
38088
+ // NonIdChars
38089
+ name = name .replace (/[\x00-\x20\x22\x23\x27\x2c\x2e\x5b\x5c\x5d\x7b\x7d\x7f]+/g, "-");
38090
+
38091
+ // Spaces
38092
+ name = name .trim () .replace (/[\s_-]+/g, "-");
38093
+
38094
+ // Trim
38095
+ name = name .replace (/^-+|-+$/g, "");
38096
+
38097
+ return name;
38098
+ },
38099
+ });
38100
+
38101
+ const X3DParser_default_ = X3DParser;
38102
+ ;
38103
+
38104
+ x_ite_Namespace .set ("x_ite/Parser/X3DParser", X3DParser_default_);
38105
+ /* harmony default export */ const Parser_X3DParser = (X3DParser_default_);
38106
+ ;// CONCATENATED MODULE: ./src/x_ite/Parser/Expressions.js
38107
+ /*******************************************************************************
38108
+ *
38109
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
38110
+ *
38111
+ * Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
38112
+ *
38113
+ * All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
38114
+ *
38115
+ * The copyright notice above does not evidence any actual of intended
38116
+ * publication of such source code, and is an unpublished work by create3000.
38117
+ * This material contains CONFIDENTIAL INFORMATION that is the property of
38118
+ * create3000.
38119
+ *
38120
+ * No permission is granted to copy, distribute, or create derivative works from
38121
+ * the contents of this software, in whole or in part, without the prior written
38122
+ * permission of create3000.
38123
+ *
38124
+ * NON-MILITARY USE ONLY
38125
+ *
38126
+ * All create3000 software are effectively free software with a non-military use
38127
+ * restriction. It is free. Well commented source is provided. You may reuse the
38128
+ * source in any way you please with the exception anything that uses it must be
38129
+ * marked to indicate is contains 'non-military use only' components.
38130
+ *
38131
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
38132
+ *
38133
+ * Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
38134
+ *
38135
+ * This file is part of the X_ITE Project.
38136
+ *
38137
+ * X_ITE is free software: you can redistribute it and/or modify it under the
38138
+ * terms of the GNU General Public License version 3 only, as published by the
38139
+ * Free Software Foundation.
38140
+ *
38141
+ * X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
38142
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
38143
+ * A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
38144
+ * details (a copy is included in the LICENSE file that accompanied this code).
38145
+ *
38146
+ * You should have received a copy of the GNU General Public License version 3
38147
+ * along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
38148
+ * copy of the GPLv3 License.
38149
+ *
38150
+ * For Silvio, Joy and Adi.
38151
+ *
38152
+ ******************************************************************************/
38153
+
38154
+ function parse (parser)
38155
+ {
38156
+ this .lastIndex = parser .lastIndex;
38157
+
38158
+ parser .result = this .exec (parser .input);
38159
+
38160
+ if (parser .result)
38161
+ {
38162
+ parser .lastIndex = this .lastIndex;
38163
+ return true;
38164
+ }
38165
+
38166
+ return false;
38167
+ }
38168
+
38169
+ function lookahead (parser)
38170
+ {
38171
+ const
38172
+ lastIndex = parser .lastIndex,
38173
+ result = this .parse (parser);
38174
+
38175
+ parser .lastIndex = lastIndex;
38176
+
38177
+ return result;
38178
+ }
38179
+
38180
+ function Expressions (Grammar)
38181
+ {
38182
+ for (const value of Object .values (Grammar))
38183
+ {
38184
+ value .parse = parse;
38185
+ value .lookahead = lookahead;
38186
+ }
38187
+
38188
+ return Grammar;
38189
+ }
38190
+
38191
+ const Expressions_default_ = Expressions;
38192
+ ;
38193
+
38194
+ x_ite_Namespace .set ("x_ite/Parser/Expressions", Expressions_default_);
38195
+ /* harmony default export */ const Parser_Expressions = (Expressions_default_);
37654
38196
  ;// CONCATENATED MODULE: ./src/x_ite/Prototype/X3DProtoDeclaration.js
37655
38197
  /*******************************************************************************
37656
38198
  *
@@ -38055,723 +38597,180 @@ Object .assign (Object .setPrototypeOf (X3DProtoDeclaration .prototype, Prototyp
38055
38597
 
38056
38598
  // Output value
38057
38599
 
38058
- switch (field .getType ())
38059
- {
38060
- case Base_X3DConstants .SFNode:
38061
- {
38062
- generator .string += generator .Indent ();
38063
- generator .string += '"';
38064
- generator .string += "-children";
38065
- generator .string += '"';
38066
- generator .string += ':';
38067
- generator .string += generator .TidySpace ();
38068
- generator .string += '[';
38069
- generator .string += generator .TidyBreak ();
38070
- generator .string += generator .IncIndent ();
38071
- generator .string += generator .Indent ();
38072
-
38073
- field .toJSONStream (generator);
38074
-
38075
- generator .string += generator .TidyBreak ();
38076
- generator .string += generator .DecIndent ();
38077
- generator .string += generator .Indent ();
38078
- generator .string += ']';
38079
- generator .string += generator .TidyBreak ();
38080
- break;
38081
- }
38082
- case Base_X3DConstants .MFNode:
38083
- {
38084
- generator .string += generator .Indent ();
38085
- generator .string += '"';
38086
- generator .string += "-children";
38087
- generator .string += '"';
38088
- generator .string += ':';
38089
- generator .string += generator .TidySpace ();
38090
-
38091
- field .toJSONStream (generator);
38092
-
38093
- generator .string += generator .TidyBreak ();
38094
- break;
38095
- }
38096
- default:
38097
- {
38098
- generator .string += generator .Indent ();
38099
- generator .string += '"';
38100
- generator .string += "@value";
38101
- generator .string += '"';
38102
- generator .string += ':';
38103
- generator .string += generator .TidySpace ();
38104
-
38105
- field .toJSONStream (generator);
38106
-
38107
- generator .string += generator .TidyBreak ();
38108
- break;
38109
- }
38110
- }
38111
- }
38112
-
38113
- generator .string += generator .DecIndent ();
38114
- generator .string += generator .Indent ();
38115
- generator .string += '}';
38116
-
38117
- if (field !== userDefinedFields .at (-1))
38118
- generator .string += ',';
38119
-
38120
- generator .string += generator .TidyBreak ();
38121
- }
38122
-
38123
- generator .string += generator .DecIndent ();
38124
- generator .string += generator .Indent ();
38125
- generator .string += ']';
38126
- }
38127
-
38128
- generator .string += generator .DecIndent ();
38129
- generator .string += generator .TidyBreak ();
38130
- generator .string += generator .Indent ();
38131
- generator .string += '}';
38132
- generator .string += ',';
38133
- generator .string += generator .TidyBreak ();
38134
-
38135
- generator .LeaveScope ();
38136
-
38137
-
38138
- // ProtoBody
38139
-
38140
- generator .string += generator .Indent ();
38141
- generator .string += '"';
38142
- generator .string += "ProtoBody";
38143
- generator .string += '"';
38144
- generator .string += ':';
38145
- generator .string += generator .TidySpace ();
38146
- generator .string += '{';
38147
- generator .string += generator .TidyBreak ();
38148
- generator .string += generator .IncIndent ();
38149
-
38150
- generator .string += generator .Indent ();
38151
- generator .string += '"';
38152
- generator .string += "-children";
38153
- generator .string += '"';
38154
- generator .string += ':';
38155
- generator .string += generator .TidySpace ();
38156
- generator .string += '[';
38157
- generator .string += generator .TidyBreak ();
38158
- generator .string += generator .IncIndent ();
38159
-
38160
- this [_body] .toJSONStream (generator);
38161
-
38162
- generator .JSONRemoveComma ();
38163
-
38164
- generator .string += generator .DecIndent ();
38165
- generator .string += generator .Indent ();
38166
- generator .string += ']';
38167
- generator .string += generator .TidyBreak ();
38168
-
38169
- // End
38170
-
38171
- generator .string += generator .DecIndent ();
38172
- generator .string += generator .Indent ();
38173
- generator .string += '}';
38174
- generator .string += generator .TidyBreak ();
38175
- generator .string += generator .DecIndent ();
38176
- generator .string += generator .Indent ();
38177
- generator .string += '}';
38178
- generator .string += generator .TidyBreak ();
38179
- generator .string += generator .DecIndent ();
38180
- generator .string += generator .Indent ();
38181
- generator .string += '}';
38182
- },
38183
- });
38184
-
38185
- for (const key of Object .keys (X3DProtoDeclaration .prototype))
38186
- Object .defineProperty (X3DProtoDeclaration .prototype, key, { enumerable: false });
38187
-
38188
- Object .defineProperties (X3DProtoDeclaration .prototype,
38189
- {
38190
- name:
38191
- {
38192
- get: X3DProtoDeclaration .prototype .getName,
38193
- enumerable: true,
38194
- },
38195
- fields:
38196
- {
38197
- get: X3DProtoDeclaration .prototype .getFieldDefinitions,
38198
- enumerable: true,
38199
- },
38200
- isExternProto:
38201
- {
38202
- value: false,
38203
- enumerable: true,
38204
- },
38205
- });
38206
-
38207
- Object .defineProperties (X3DProtoDeclaration,
38208
- {
38209
- typeName:
38210
- {
38211
- value: "X3DProtoDeclaration",
38212
- enumerable: true,
38213
- },
38214
- fieldDefinitions:
38215
- {
38216
- value: new Base_FieldDefinitionArray ([
38217
- new Base_X3DFieldDefinition (Base_X3DConstants .inputOutput, "metadata", new x_ite_Fields .SFNode ()),
38218
- ]),
38219
- enumerable: true,
38220
- },
38221
- });
38222
-
38223
- Base_X3DConstants .addNode (X3DProtoDeclaration);
38224
-
38225
- const X3DProtoDeclaration_default_ = X3DProtoDeclaration;
38226
- ;
38227
-
38228
- x_ite_Namespace .set ("x_ite/Prototype/X3DProtoDeclaration", X3DProtoDeclaration_default_);
38229
- /* harmony default export */ const Prototype_X3DProtoDeclaration = (X3DProtoDeclaration_default_);
38230
- ;// CONCATENATED MODULE: ./src/x_ite/Components/Networking/X3DUrlObject.js
38231
- /*******************************************************************************
38232
- *
38233
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
38234
- *
38235
- * Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
38236
- *
38237
- * All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
38238
- *
38239
- * The copyright notice above does not evidence any actual of intended
38240
- * publication of such source code, and is an unpublished work by create3000.
38241
- * This material contains CONFIDENTIAL INFORMATION that is the property of
38242
- * create3000.
38243
- *
38244
- * No permission is granted to copy, distribute, or create derivative works from
38245
- * the contents of this software, in whole or in part, without the prior written
38246
- * permission of create3000.
38247
- *
38248
- * NON-MILITARY USE ONLY
38249
- *
38250
- * All create3000 software are effectively free software with a non-military use
38251
- * restriction. It is free. Well commented source is provided. You may reuse the
38252
- * source in any way you please with the exception anything that uses it must be
38253
- * marked to indicate is contains 'non-military use only' components.
38254
- *
38255
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
38256
- *
38257
- * Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
38258
- *
38259
- * This file is part of the X_ITE Project.
38260
- *
38261
- * X_ITE is free software: you can redistribute it and/or modify it under the
38262
- * terms of the GNU General Public License version 3 only, as published by the
38263
- * Free Software Foundation.
38264
- *
38265
- * X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
38266
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
38267
- * A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
38268
- * details (a copy is included in the LICENSE file that accompanied this code).
38269
- *
38270
- * You should have received a copy of the GNU General Public License version 3
38271
- * along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
38272
- * copy of the GPLv3 License.
38273
- *
38274
- * For Silvio, Joy and Adi.
38275
- *
38276
- ******************************************************************************/
38277
-
38278
-
38279
-
38280
-
38281
-
38282
- const
38283
- X3DUrlObject_cache = Symbol (),
38284
- _autoRefreshStartTime = Symbol (),
38285
- _autoRefreshCompleteTime = Symbol (),
38286
- _autoRefreshId = Symbol ();
38287
-
38288
- function X3DUrlObject (executionContext)
38289
- {
38290
- this .addType (Base_X3DConstants .X3DUrlObject);
38291
-
38292
- this .addChildObjects ("loadState", new x_ite_Fields .SFInt32 (Base_X3DConstants .NOT_STARTED_STATE),
38293
- "loadData", new x_ite_Fields .SFTime ());
38294
-
38295
- this [X3DUrlObject_cache] = true;
38296
- this [_autoRefreshStartTime] = Date .now ();
38297
- }
38298
-
38299
- Object .assign (X3DUrlObject .prototype,
38300
- {
38301
- initialize ()
38302
- {
38303
- this .getLive () .addInterest ("set_live__", this);
38304
-
38305
- this ._load .addInterest ("set_load__", this);
38306
- this ._url .addInterest ("set_url__", this);
38307
- this ._loadData .addInterest ("loadData", this);
38308
- this ._autoRefresh .addInterest ("set_autoRefresh__", this);
38309
- this ._autoRefreshTimeLimit .addInterest ("set_autoRefresh__", this);
38310
- },
38311
- setLoadState (value, notify = true)
38312
- {
38313
- this ._loadState = value;
38314
-
38315
- if (value === Base_X3DConstants .COMPLETE_STATE)
38316
- {
38317
- this [_autoRefreshCompleteTime] = Date .now ();
38318
- this .setAutoRefreshTimer (this ._autoRefresh .getValue ());
38319
- }
38320
-
38321
- if (!notify)
38322
- return;
38323
-
38324
- switch (value)
38325
- {
38326
- case Base_X3DConstants .NOT_STARTED_STATE:
38327
- break;
38328
- case Base_X3DConstants .IN_PROGRESS_STATE:
38329
- {
38330
- this .getScene () .addLoadingObject (this);
38331
- break;
38332
- }
38333
- case Base_X3DConstants .COMPLETE_STATE:
38334
- case Base_X3DConstants .FAILED_STATE:
38335
- {
38336
- this .getScene () .removeLoadingObject (this);
38337
- break;
38338
- }
38339
- }
38340
- },
38341
- checkLoadState ()
38342
- {
38343
- return this ._loadState .getValue ();
38344
- },
38345
- getLoadState ()
38346
- {
38347
- return this ._loadState;
38348
- },
38349
- setCache (value)
38350
- {
38351
- this [X3DUrlObject_cache] = value;
38352
- },
38353
- getCache ()
38354
- {
38355
- return this [X3DUrlObject_cache] && this .getBrowser () .getBrowserOption ("Cache");
38356
- },
38357
- requestImmediateLoad (cache = true)
38358
- {
38359
- return new Promise ((resolve, reject) =>
38360
- {
38361
- const loading = () =>
38362
- {
38363
- const _loading = Symbol ();
38364
-
38365
- this ._loadState .addFieldCallback (_loading, () =>
38366
- {
38367
- switch (this .checkLoadState ())
38600
+ switch (field .getType ())
38368
38601
  {
38369
- case Base_X3DConstants .COMPLETE_STATE:
38370
- this ._loadState .removeFieldCallback (_loading);
38371
- resolve ();
38372
- break;
38373
- case Base_X3DConstants .FAILED_STATE:
38374
- this ._loadState .removeFieldCallback (_loading);
38375
- reject ();
38376
- break;
38377
- }
38378
- })
38379
- };
38602
+ case Base_X3DConstants .SFNode:
38603
+ {
38604
+ generator .string += generator .Indent ();
38605
+ generator .string += '"';
38606
+ generator .string += "-children";
38607
+ generator .string += '"';
38608
+ generator .string += ':';
38609
+ generator .string += generator .TidySpace ();
38610
+ generator .string += '[';
38611
+ generator .string += generator .TidyBreak ();
38612
+ generator .string += generator .IncIndent ();
38613
+ generator .string += generator .Indent ();
38380
38614
 
38381
- const loadState = this .checkLoadState ();
38615
+ field .toJSONStream (generator);
38382
38616
 
38383
- if (loadState === Base_X3DConstants .COMPLETE_STATE)
38384
- {
38385
- resolve ();
38386
- return;
38387
- }
38617
+ generator .string += generator .TidyBreak ();
38618
+ generator .string += generator .DecIndent ();
38619
+ generator .string += generator .Indent ();
38620
+ generator .string += ']';
38621
+ generator .string += generator .TidyBreak ();
38622
+ break;
38623
+ }
38624
+ case Base_X3DConstants .MFNode:
38625
+ {
38626
+ generator .string += generator .Indent ();
38627
+ generator .string += '"';
38628
+ generator .string += "-children";
38629
+ generator .string += '"';
38630
+ generator .string += ':';
38631
+ generator .string += generator .TidySpace ();
38388
38632
 
38389
- if (loadState === Base_X3DConstants .IN_PROGRESS_STATE)
38390
- {
38391
- loading ();
38392
- return;
38393
- }
38633
+ field .toJSONStream (generator);
38394
38634
 
38395
- if (!this ._load .getValue ())
38396
- {
38397
- reject ();
38398
- return;
38399
- }
38635
+ generator .string += generator .TidyBreak ();
38636
+ break;
38637
+ }
38638
+ default:
38639
+ {
38640
+ generator .string += generator .Indent ();
38641
+ generator .string += '"';
38642
+ generator .string += "@value";
38643
+ generator .string += '"';
38644
+ generator .string += ':';
38645
+ generator .string += generator .TidySpace ();
38400
38646
 
38401
- if (this ._url .length === 0)
38402
- {
38403
- resolve ();
38404
- return;
38405
- }
38647
+ field .toJSONStream (generator);
38406
38648
 
38407
- this .setCache (cache);
38408
- this .setLoadState (Base_X3DConstants .IN_PROGRESS_STATE);
38649
+ generator .string += generator .TidyBreak ();
38650
+ break;
38651
+ }
38652
+ }
38653
+ }
38409
38654
 
38410
- if (this .isInitialized ())
38411
- // Buffer prevents double load of the scene if load and url field are set at the same time.
38412
- this ._loadData = this .getBrowser () .getCurrentTime ();
38413
- else
38414
- this .loadData ();
38655
+ generator .string += generator .DecIndent ();
38656
+ generator .string += generator .Indent ();
38657
+ generator .string += '}';
38415
38658
 
38416
- loading ();
38417
- });
38418
- },
38419
- loadNow ()
38420
- {
38421
- this .setLoadState (Base_X3DConstants .NOT_STARTED_STATE);
38659
+ if (field !== userDefinedFields .at (-1))
38660
+ generator .string += ',';
38422
38661
 
38423
- return this .requestImmediateLoad ();
38424
- },
38425
- loadData ()
38426
- { },
38427
- requestUnload ()
38428
- {
38429
- const loadState = this .checkLoadState ();
38662
+ generator .string += generator .TidyBreak ();
38663
+ }
38430
38664
 
38431
- if (loadState === Base_X3DConstants .NOT_STARTED_STATE || loadState === Base_X3DConstants .FAILED_STATE)
38432
- return;
38665
+ generator .string += generator .DecIndent ();
38666
+ generator .string += generator .Indent ();
38667
+ generator .string += ']';
38668
+ }
38433
38669
 
38434
- this .setLoadState (Base_X3DConstants .NOT_STARTED_STATE);
38435
- this .unloadData ();
38436
- },
38437
- unloadNow ()
38438
- {
38439
- this .requestUnload ();
38440
- },
38441
- unloadData ()
38442
- { },
38443
- setAutoRefreshTimer (autoRefreshInterval)
38444
- {
38445
- clearTimeout (this [_autoRefreshId]);
38670
+ generator .string += generator .DecIndent ();
38671
+ generator .string += generator .TidyBreak ();
38672
+ generator .string += generator .Indent ();
38673
+ generator .string += '}';
38674
+ generator .string += ',';
38675
+ generator .string += generator .TidyBreak ();
38446
38676
 
38447
- if (this ._autoRefresh .getValue () <= 0)
38448
- return;
38677
+ generator .LeaveScope ();
38449
38678
 
38450
- const autoRefreshTimeLimit = this ._autoRefreshTimeLimit .getValue ();
38451
38679
 
38452
- if (autoRefreshTimeLimit !== 0)
38453
- {
38454
- if ((Date .now () - this [_autoRefreshStartTime]) / 1000 > autoRefreshTimeLimit - autoRefreshInterval)
38455
- return;
38456
- }
38680
+ // ProtoBody
38457
38681
 
38458
- this [_autoRefreshId] = setTimeout (this .performAutoRefresh .bind (this), autoRefreshInterval * 1000);
38459
- },
38460
- performAutoRefresh ()
38461
- {
38462
- this .setLoadState (Base_X3DConstants .NOT_STARTED_STATE);
38463
- this .requestImmediateLoad (false) .catch (Function .prototype);
38464
- },
38465
- set_live__ ()
38466
- {
38467
- if (this .getLive () .getValue ())
38468
- this .set_autoRefresh__ ();
38469
- else
38470
- clearTimeout (this [_autoRefreshId]);
38471
- },
38472
- set_load__ ()
38473
- {
38474
- if (this ._load .getValue ())
38475
- this .requestImmediateLoad () .catch (Function .prototype);
38476
- else
38477
- this .requestUnload ();
38478
- },
38479
- set_url__ ()
38480
- {
38481
- if (!this ._load .getValue ())
38482
- return;
38682
+ generator .string += generator .Indent ();
38683
+ generator .string += '"';
38684
+ generator .string += "ProtoBody";
38685
+ generator .string += '"';
38686
+ generator .string += ':';
38687
+ generator .string += generator .TidySpace ();
38688
+ generator .string += '{';
38689
+ generator .string += generator .TidyBreak ();
38690
+ generator .string += generator .IncIndent ();
38483
38691
 
38484
- this .setLoadState (Base_X3DConstants .NOT_STARTED_STATE);
38485
- this .requestImmediateLoad () .catch (Function .prototype);
38486
- },
38487
- set_autoRefresh__ ()
38488
- {
38489
- if (this .checkLoadState () !== Base_X3DConstants .COMPLETE_STATE)
38490
- return;
38692
+ generator .string += generator .Indent ();
38693
+ generator .string += '"';
38694
+ generator .string += "-children";
38695
+ generator .string += '"';
38696
+ generator .string += ':';
38697
+ generator .string += generator .TidySpace ();
38698
+ generator .string += '[';
38699
+ generator .string += generator .TidyBreak ();
38700
+ generator .string += generator .IncIndent ();
38491
38701
 
38492
- const
38493
- elapsedTime = (Date .now () - this [_autoRefreshCompleteTime]) / 1000,
38494
- autoRefresh = this ._autoRefresh .getValue ();
38702
+ this [_body] .toJSONStream (generator);
38495
38703
 
38496
- let autoRefreshInterval = autoRefresh - elapsedTime;
38704
+ generator .JSONRemoveComma ();
38497
38705
 
38498
- if (autoRefreshInterval < 0)
38499
- autoRefreshInterval = Math .ceil (elapsedTime / autoRefresh) * autoRefresh - elapsedTime;
38706
+ generator .string += generator .DecIndent ();
38707
+ generator .string += generator .Indent ();
38708
+ generator .string += ']';
38709
+ generator .string += generator .TidyBreak ();
38500
38710
 
38501
- this .setAutoRefreshTimer (autoRefreshInterval);
38502
- },
38503
- dispose () { },
38504
- });
38711
+ // End
38505
38712
 
38506
- Object .defineProperties (X3DUrlObject,
38507
- {
38508
- typeName:
38509
- {
38510
- value: "X3DUrlObject",
38511
- enumerable: true,
38512
- },
38513
- componentName:
38514
- {
38515
- value: "Networking",
38516
- enumerable: true,
38713
+ generator .string += generator .DecIndent ();
38714
+ generator .string += generator .Indent ();
38715
+ generator .string += '}';
38716
+ generator .string += generator .TidyBreak ();
38717
+ generator .string += generator .DecIndent ();
38718
+ generator .string += generator .Indent ();
38719
+ generator .string += '}';
38720
+ generator .string += generator .TidyBreak ();
38721
+ generator .string += generator .DecIndent ();
38722
+ generator .string += generator .Indent ();
38723
+ generator .string += '}';
38517
38724
  },
38518
38725
  });
38519
38726
 
38520
- const X3DUrlObject_default_ = X3DUrlObject;
38521
- ;
38522
-
38523
- x_ite_Namespace .set ("x_ite/Components/Networking/X3DUrlObject", X3DUrlObject_default_);
38524
- /* harmony default export */ const Networking_X3DUrlObject = (X3DUrlObject_default_);
38525
- ;// CONCATENATED MODULE: ./src/x_ite/Parser/X3DParser.js
38526
- /* provided dependency */ var $ = __webpack_require__(177);
38527
- /*******************************************************************************
38528
- *
38529
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
38530
- *
38531
- * Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
38532
- *
38533
- * All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
38534
- *
38535
- * The copyright notice above does not evidence any actual of intended
38536
- * publication of such source code, and is an unpublished work by create3000.
38537
- * This material contains CONFIDENTIAL INFORMATION that is the property of
38538
- * create3000.
38539
- *
38540
- * No permission is granted to copy, distribute, or create derivative works from
38541
- * the contents of this software, in whole or in part, without the prior written
38542
- * permission of create3000.
38543
- *
38544
- * NON-MILITARY USE ONLY
38545
- *
38546
- * All create3000 software are effectively free software with a non-military use
38547
- * restriction. It is free. Well commented source is provided. You may reuse the
38548
- * source in any way you please with the exception anything that uses it must be
38549
- * marked to indicate is contains 'non-military use only' components.
38550
- *
38551
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
38552
- *
38553
- * Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
38554
- *
38555
- * This file is part of the X_ITE Project.
38556
- *
38557
- * X_ITE is free software: you can redistribute it and/or modify it under the
38558
- * terms of the GNU General Public License version 3 only, as published by the
38559
- * Free Software Foundation.
38560
- *
38561
- * X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
38562
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
38563
- * A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
38564
- * details (a copy is included in the LICENSE file that accompanied this code).
38565
- *
38566
- * You should have received a copy of the GNU General Public License version 3
38567
- * along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
38568
- * copy of the GPLv3 License.
38569
- *
38570
- * For Silvio, Joy and Adi.
38571
- *
38572
- ******************************************************************************/
38573
-
38574
- function X3DParser (scene)
38575
- {
38576
- this .scene = scene;
38577
- this .executionContexts = [ scene ];
38578
- this .prototypes = [ ];
38579
- }
38727
+ for (const key of Object .keys (X3DProtoDeclaration .prototype))
38728
+ Object .defineProperty (X3DProtoDeclaration .prototype, key, { enumerable: false });
38580
38729
 
38581
- Object .assign (X3DParser .prototype,
38730
+ Object .defineProperties (X3DProtoDeclaration .prototype,
38582
38731
  {
38583
- getBrowser ()
38584
- {
38585
- return this .scene .getBrowser ();
38586
- },
38587
- getScene ()
38588
- {
38589
- return this .scene;
38590
- },
38591
- getExecutionContext ()
38592
- {
38593
- return this .executionContexts .at (-1);
38594
- },
38595
- pushExecutionContext (executionContext)
38596
- {
38597
- return this .executionContexts .push (executionContext);
38598
- },
38599
- popExecutionContext ()
38600
- {
38601
- this .executionContexts .pop ();
38602
- },
38603
- getPrototype ()
38604
- {
38605
- return this .prototypes .at (-1);
38606
- },
38607
- pushPrototype (prototype)
38732
+ name:
38608
38733
  {
38609
- return this .prototypes .push (prototype);
38734
+ get: X3DProtoDeclaration .prototype .getName,
38735
+ enumerable: true,
38610
38736
  },
38611
- popPrototype ()
38737
+ fields:
38612
38738
  {
38613
- this .prototypes .pop ();
38739
+ get: X3DProtoDeclaration .prototype .getFieldDefinitions,
38740
+ enumerable: true,
38614
38741
  },
38615
- isInsideProtoDefinition ()
38742
+ isExternProto:
38616
38743
  {
38617
- return !! this .prototypes .length;
38744
+ value: false,
38745
+ enumerable: true,
38618
38746
  },
38619
- loadComponents ()
38620
- {
38621
- const
38622
- browser = this .getBrowser (),
38623
- scene = this .getScene ();
38747
+ });
38624
38748
 
38625
- return Promise .all ([
38626
- browser .loadComponents (scene .getProfile () || browser .getProfile ("Full")),
38627
- browser .loadComponents (scene .getComponents ()),
38628
- ]);
38629
- },
38630
- setUnits (units)
38631
- {
38632
- if (units)
38633
- delete this .fromUnit;
38634
- else
38635
- this .fromUnit = function (category, value) { return value; };
38636
- },
38637
- fromUnit (category, value)
38638
- {
38639
- return this .scene .fromUnit (category, value);
38640
- },
38641
- convertColor (value, defaultColor = "white")
38749
+ Object .defineProperties (X3DProtoDeclaration,
38750
+ {
38751
+ typeName:
38642
38752
  {
38643
- const
38644
- wrap = $("<div></div>") .hide () .css ("color", defaultColor) .appendTo ($("body")),
38645
- div = $("<div></div>").css ("color", value) .appendTo (wrap),
38646
- rgb = window .getComputedStyle (div [0]) .color,
38647
- values = rgb .replace (/^rgba?\(|\)$/g, "") .split (/[\s,]+/) .map (s => parseFloat (s));
38648
-
38649
- wrap .remove ();
38650
-
38651
- values [0] /= 255;
38652
- values [1] /= 255;
38653
- values [2] /= 255;
38654
-
38655
- if (typeof values [3] !== "number")
38656
- values [3] = 1;
38657
-
38658
- return values;
38753
+ value: "X3DProtoDeclaration",
38754
+ enumerable: true,
38659
38755
  },
38660
- sanitizeName (name = "")
38756
+ fieldDefinitions:
38661
38757
  {
38662
- // NonIdFirstChar
38663
- name = name .replace (/^[\x30-\x39\x00-\x20\x22\x23\x27\x2b\x2c\x2d\x2e\x5b\x5c\x5d\x7b\x7d\x7f]*/, "");
38664
-
38665
- // NonIdChars
38666
- name = name .replace (/[\x00-\x20\x22\x23\x27\x2c\x2e\x5b\x5c\x5d\x7b\x7d\x7f]+/g, "-");
38667
-
38668
- // Spaces
38669
- name = name .trim () .replace (/[\s_-]+/g, "-");
38670
-
38671
- // Trim
38672
- name = name .replace (/^-+|-+$/g, "");
38673
-
38674
- return name;
38758
+ value: new Base_FieldDefinitionArray ([
38759
+ new Base_X3DFieldDefinition (Base_X3DConstants .inputOutput, "metadata", new x_ite_Fields .SFNode ()),
38760
+ ]),
38761
+ enumerable: true,
38675
38762
  },
38676
38763
  });
38677
38764
 
38678
- const X3DParser_default_ = X3DParser;
38679
- ;
38680
-
38681
- x_ite_Namespace .set ("x_ite/Parser/X3DParser", X3DParser_default_);
38682
- /* harmony default export */ const Parser_X3DParser = (X3DParser_default_);
38683
- ;// CONCATENATED MODULE: ./src/x_ite/Parser/Expressions.js
38684
- /*******************************************************************************
38685
- *
38686
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
38687
- *
38688
- * Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
38689
- *
38690
- * All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
38691
- *
38692
- * The copyright notice above does not evidence any actual of intended
38693
- * publication of such source code, and is an unpublished work by create3000.
38694
- * This material contains CONFIDENTIAL INFORMATION that is the property of
38695
- * create3000.
38696
- *
38697
- * No permission is granted to copy, distribute, or create derivative works from
38698
- * the contents of this software, in whole or in part, without the prior written
38699
- * permission of create3000.
38700
- *
38701
- * NON-MILITARY USE ONLY
38702
- *
38703
- * All create3000 software are effectively free software with a non-military use
38704
- * restriction. It is free. Well commented source is provided. You may reuse the
38705
- * source in any way you please with the exception anything that uses it must be
38706
- * marked to indicate is contains 'non-military use only' components.
38707
- *
38708
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
38709
- *
38710
- * Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
38711
- *
38712
- * This file is part of the X_ITE Project.
38713
- *
38714
- * X_ITE is free software: you can redistribute it and/or modify it under the
38715
- * terms of the GNU General Public License version 3 only, as published by the
38716
- * Free Software Foundation.
38717
- *
38718
- * X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
38719
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
38720
- * A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
38721
- * details (a copy is included in the LICENSE file that accompanied this code).
38722
- *
38723
- * You should have received a copy of the GNU General Public License version 3
38724
- * along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
38725
- * copy of the GPLv3 License.
38726
- *
38727
- * For Silvio, Joy and Adi.
38728
- *
38729
- ******************************************************************************/
38730
-
38731
- function parse (parser)
38732
- {
38733
- this .lastIndex = parser .lastIndex;
38734
-
38735
- parser .result = this .exec (parser .input);
38736
-
38737
- if (parser .result)
38738
- {
38739
- parser .lastIndex = this .lastIndex;
38740
- return true;
38741
- }
38742
-
38743
- return false;
38744
- }
38745
-
38746
- function lookahead (parser)
38747
- {
38748
- const
38749
- lastIndex = parser .lastIndex,
38750
- result = this .parse (parser);
38751
-
38752
- parser .lastIndex = lastIndex;
38753
-
38754
- return result;
38755
- }
38756
-
38757
- function Expressions (Grammar)
38758
- {
38759
- for (const value of Object .values (Grammar))
38760
- {
38761
- value .parse = parse;
38762
- value .lookahead = lookahead;
38763
- }
38764
-
38765
- return Grammar;
38766
- }
38765
+ Base_X3DConstants .addNode (X3DProtoDeclaration);
38767
38766
 
38768
- const Expressions_default_ = Expressions;
38767
+ const X3DProtoDeclaration_default_ = X3DProtoDeclaration;
38769
38768
  ;
38770
38769
 
38771
- x_ite_Namespace .set ("x_ite/Parser/Expressions", Expressions_default_);
38772
- /* harmony default export */ const Parser_Expressions = (Expressions_default_);
38770
+ x_ite_Namespace .set ("x_ite/Prototype/X3DProtoDeclaration", X3DProtoDeclaration_default_);
38771
+ /* harmony default export */ const Prototype_X3DProtoDeclaration = (X3DProtoDeclaration_default_);
38773
38772
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/VRMLParser.js
38774
- /* provided dependency */ var VRMLParser_$ = __webpack_require__(177);
38773
+ /* provided dependency */ var VRMLParser_$ = __webpack_require__(317);
38775
38774
  /*******************************************************************************
38776
38775
  *
38777
38776
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -41323,7 +41322,7 @@ const VRMLParser_default_ = VRMLParser;
41323
41322
  x_ite_Namespace .set ("x_ite/Parser/VRMLParser", VRMLParser_default_);
41324
41323
  /* harmony default export */ const Parser_VRMLParser = (VRMLParser_default_);
41325
41324
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/XMLParser.js
41326
- /* provided dependency */ var XMLParser_$ = __webpack_require__(177);
41325
+ /* provided dependency */ var XMLParser_$ = __webpack_require__(317);
41327
41326
  /*******************************************************************************
41328
41327
  *
41329
41328
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -43295,7 +43294,7 @@ const URLs_default_ = URLs;
43295
43294
  x_ite_Namespace .set ("x_ite/Browser/Networking/URLs", URLs_default_);
43296
43295
  /* harmony default export */ const Networking_URLs = (URLs_default_);
43297
43296
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/GLTF2Parser.js
43298
- /* provided dependency */ var GLTF2Parser_$ = __webpack_require__(177);
43297
+ /* provided dependency */ var GLTF2Parser_$ = __webpack_require__(317);
43299
43298
  /*******************************************************************************
43300
43299
  *
43301
43300
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -46021,7 +46020,7 @@ const GLTF2Parser_default_ = GLTF2Parser;
46021
46020
  x_ite_Namespace .set ("x_ite/Parser/GLTF2Parser", GLTF2Parser_default_);
46022
46021
  /* harmony default export */ const Parser_GLTF2Parser = (GLTF2Parser_default_);
46023
46022
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/GLB2Parser.js
46024
- /* provided dependency */ var GLB2Parser_$ = __webpack_require__(177);
46023
+ /* provided dependency */ var GLB2Parser_$ = __webpack_require__(317);
46025
46024
  /*******************************************************************************
46026
46025
  *
46027
46026
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -46173,7 +46172,7 @@ const GLB2Parser_default_ = GLB2Parser;
46173
46172
  x_ite_Namespace .set ("x_ite/Parser/GLB2Parser", GLB2Parser_default_);
46174
46173
  /* harmony default export */ const Parser_GLB2Parser = (GLB2Parser_default_);
46175
46174
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/OBJParser.js
46176
- /* provided dependency */ var OBJParser_$ = __webpack_require__(177);
46175
+ /* provided dependency */ var OBJParser_$ = __webpack_require__(317);
46177
46176
  /*******************************************************************************
46178
46177
  *
46179
46178
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -49528,8 +49527,8 @@ const MatrixStack_default_ = MatrixStack;
49528
49527
  x_ite_Namespace .set ("standard/Math/Utility/MatrixStack", MatrixStack_default_);
49529
49528
  /* harmony default export */ const Utility_MatrixStack = (MatrixStack_default_);
49530
49529
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/SVGParser.js
49531
- /* provided dependency */ var SVGParser_$ = __webpack_require__(177);
49532
- /* provided dependency */ var libtess = __webpack_require__(946);
49530
+ /* provided dependency */ var SVGParser_$ = __webpack_require__(317);
49531
+ /* provided dependency */ var libtess = __webpack_require__(713);
49533
49532
  /*******************************************************************************
49534
49533
  *
49535
49534
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -52297,7 +52296,7 @@ const SVGParser_default_ = SVGParser;
52297
52296
  x_ite_Namespace .set ("x_ite/Parser/SVGParser", SVGParser_default_);
52298
52297
  /* harmony default export */ const Parser_SVGParser = (SVGParser_default_);
52299
52298
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/GoldenGate.js
52300
- /* provided dependency */ var GoldenGate_$ = __webpack_require__(177);
52299
+ /* provided dependency */ var GoldenGate_$ = __webpack_require__(317);
52301
52300
  /*******************************************************************************
52302
52301
  *
52303
52302
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -52634,7 +52633,7 @@ const Plane3_default_ = Plane3;
52634
52633
  x_ite_Namespace .set ("standard/Math/Geometry/Plane3", Plane3_default_);
52635
52634
  /* harmony default export */ const Geometry_Plane3 = (Plane3_default_);
52636
52635
  ;// CONCATENATED MODULE: ./src/standard/Math/Geometry/Triangle3.js
52637
- /* provided dependency */ var Triangle3_libtess = __webpack_require__(946);
52636
+ /* provided dependency */ var Triangle3_libtess = __webpack_require__(713);
52638
52637
  /*******************************************************************************
52639
52638
  *
52640
52639
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -60037,7 +60036,7 @@ const X3DTexture2DNode_default_ = X3DTexture2DNode;
60037
60036
  x_ite_Namespace .set ("x_ite/Components/Texturing/X3DTexture2DNode", X3DTexture2DNode_default_);
60038
60037
  /* harmony default export */ const Texturing_X3DTexture2DNode = (X3DTexture2DNode_default_);
60039
60038
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Texturing/ImageTexture.js
60040
- /* provided dependency */ var ImageTexture_$ = __webpack_require__(177);
60039
+ /* provided dependency */ var ImageTexture_$ = __webpack_require__(317);
60041
60040
  /*******************************************************************************
60042
60041
  *
60043
60042
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -64577,7 +64576,7 @@ const X3DWorld_default_ = X3DWorld;
64577
64576
  x_ite_Namespace .set ("x_ite/Execution/X3DWorld", X3DWorld_default_);
64578
64577
  /* harmony default export */ const Execution_X3DWorld = (X3DWorld_default_);
64579
64578
  ;// CONCATENATED MODULE: ./src/x_ite/InputOutput/FileLoader.js
64580
- /* provided dependency */ var FileLoader_$ = __webpack_require__(177);
64579
+ /* provided dependency */ var FileLoader_$ = __webpack_require__(317);
64581
64580
  /*******************************************************************************
64582
64581
  *
64583
64582
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -67034,25 +67033,9 @@ Object .assign (Object .setPrototypeOf (X3DPrototypeInstance .prototype, Core_X3
67034
67033
  {
67035
67034
  this [X3DPrototypeInstance_body] ?.dispose ();
67036
67035
 
67037
- const protoNode = this [_protoNode];
67038
-
67039
- if (protoNode .isExternProto)
67040
- {
67041
- if (protoNode .checkLoadState () !== Base_X3DConstants .COMPLETE_STATE)
67042
- {
67043
- this [X3DPrototypeInstance_body] = null;
67044
-
67045
- if (this .isInitialized ())
67046
- Base_X3DChildObject .prototype .addEvent .call (this);
67047
-
67048
- protoNode ._updateInstances .addInterest ("construct", this);
67049
- protoNode .requestImmediateLoad () .catch (Function .prototype);
67050
-
67051
- return;
67052
- }
67053
- }
67054
-
67055
- const proto = protoNode .getProtoDeclaration ();
67036
+ const
67037
+ protoNode = this [_protoNode],
67038
+ proto = protoNode .getProtoDeclaration ();
67056
67039
 
67057
67040
  // If there is a proto, the externproto is completely loaded.
67058
67041
 
@@ -67195,7 +67178,14 @@ Object .assign (Object .setPrototypeOf (X3DPrototypeInstance .prototype, Core_X3
67195
67178
 
67196
67179
  protoNode ._name_changed .addFieldInterest (this ._typeName_changed);
67197
67180
 
67198
- this .construct ();
67181
+ if (protoNode .isExternProto && protoNode .checkLoadState () !== Base_X3DConstants .COMPLETE_STATE)
67182
+ {
67183
+ protoNode ._updateInstances .addInterest ("construct", this);
67184
+ }
67185
+ else
67186
+ {
67187
+ this .construct ();
67188
+ }
67199
67189
  },
67200
67190
  getBody ()
67201
67191
  {
@@ -88182,7 +88172,7 @@ const X3DShaderNode_default_ = X3DShaderNode;
88182
88172
  x_ite_Namespace .set ("x_ite/Components/Shaders/X3DShaderNode", X3DShaderNode_default_);
88183
88173
  /* harmony default export */ const Shaders_X3DShaderNode = (X3DShaderNode_default_);
88184
88174
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js
88185
- /* provided dependency */ var X3DProgrammableShaderObject_$ = __webpack_require__(177);
88175
+ /* provided dependency */ var X3DProgrammableShaderObject_$ = __webpack_require__(317);
88186
88176
  /*******************************************************************************
88187
88177
  *
88188
88178
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -96905,7 +96895,7 @@ const ShaderCompiler_default_ = ShaderCompiler;
96905
96895
  x_ite_Namespace .set ("x_ite/Browser/Shaders/ShaderCompiler", ShaderCompiler_default_);
96906
96896
  /* harmony default export */ const Shaders_ShaderCompiler = (ShaderCompiler_default_);
96907
96897
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Shaders/ShaderPart.js
96908
- /* provided dependency */ var ShaderPart_$ = __webpack_require__(177);
96898
+ /* provided dependency */ var ShaderPart_$ = __webpack_require__(317);
96909
96899
  /*******************************************************************************
96910
96900
  *
96911
96901
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -97564,7 +97554,7 @@ const X3DAppearanceNode_default_ = X3DAppearanceNode;
97564
97554
  x_ite_Namespace .set ("x_ite/Components/Shape/X3DAppearanceNode", X3DAppearanceNode_default_);
97565
97555
  /* harmony default export */ const Shape_X3DAppearanceNode = (X3DAppearanceNode_default_);
97566
97556
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Shape/Appearance.js
97567
- /* provided dependency */ var Appearance_$ = __webpack_require__(177);
97557
+ /* provided dependency */ var Appearance_$ = __webpack_require__(317);
97568
97558
  /*******************************************************************************
97569
97559
  *
97570
97560
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -101259,7 +101249,7 @@ const X3DSoundSourceNode_default_ = X3DSoundSourceNode;
101259
101249
  x_ite_Namespace .set ("x_ite/Components/Sound/X3DSoundSourceNode", X3DSoundSourceNode_default_);
101260
101250
  /* harmony default export */ const Sound_X3DSoundSourceNode = (X3DSoundSourceNode_default_);
101261
101251
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Sound/AudioClip.js
101262
- /* provided dependency */ var AudioClip_$ = __webpack_require__(177);
101252
+ /* provided dependency */ var AudioClip_$ = __webpack_require__(317);
101263
101253
  /*******************************************************************************
101264
101254
  *
101265
101255
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -104370,8 +104360,8 @@ const GIFMedia_default_ = GifMedia;
104370
104360
  x_ite_Namespace .set ("x_ite/Browser/Texturing/GIFMedia", GIFMedia_default_);
104371
104361
  /* harmony default export */ const GIFMedia = (GIFMedia_default_);
104372
104362
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Texturing/MovieTexture.js
104373
- /* provided dependency */ var MovieTexture_$ = __webpack_require__(177);
104374
- /* provided dependency */ var SuperGif = __webpack_require__(660);
104363
+ /* provided dependency */ var MovieTexture_$ = __webpack_require__(317);
104364
+ /* provided dependency */ var SuperGif = __webpack_require__(648);
104375
104365
  /*******************************************************************************
104376
104366
  *
104377
104367
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -105536,7 +105526,7 @@ const MultiTextureTransform_default_ = MultiTextureTransform;
105536
105526
  x_ite_Namespace .set ("x_ite/Components/Texturing/MultiTextureTransform", MultiTextureTransform_default_);
105537
105527
  /* harmony default export */ const Texturing_MultiTextureTransform = (MultiTextureTransform_default_);
105538
105528
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Texturing/PixelTexture.js
105539
- /* provided dependency */ var PixelTexture_$ = __webpack_require__(177);
105529
+ /* provided dependency */ var PixelTexture_$ = __webpack_require__(317);
105540
105530
  /*******************************************************************************
105541
105531
  *
105542
105532
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -107717,7 +107707,7 @@ const gettext_default_ = gettext;
107717
107707
  x_ite_Namespace .set ("locale/gettext", gettext_default_);
107718
107708
  /* harmony default export */ const locale_gettext = (gettext_default_);
107719
107709
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/BrowserTimings.js
107720
- /* provided dependency */ var BrowserTimings_$ = __webpack_require__(177);
107710
+ /* provided dependency */ var BrowserTimings_$ = __webpack_require__(317);
107721
107711
  /*******************************************************************************
107722
107712
  *
107723
107713
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -108147,7 +108137,7 @@ const TextureQuality_default_ = TextureQuality;
108147
108137
  x_ite_Namespace .set ("x_ite/Browser/Core/TextureQuality", TextureQuality_default_);
108148
108138
  /* harmony default export */ const Core_TextureQuality = (TextureQuality_default_);
108149
108139
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/BrowserOptions.js
108150
- /* provided dependency */ var BrowserOptions_$ = __webpack_require__(177);
108140
+ /* provided dependency */ var BrowserOptions_$ = __webpack_require__(317);
108151
108141
  /*******************************************************************************
108152
108142
  *
108153
108143
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -108728,7 +108718,7 @@ const RenderingProperties_default_ = RenderingProperties;
108728
108718
  x_ite_Namespace .set ("x_ite/Browser/Core/RenderingProperties", RenderingProperties_default_);
108729
108719
  /* harmony default export */ const Core_RenderingProperties = (RenderingProperties_default_);
108730
108720
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/Notification.js
108731
- /* provided dependency */ var Notification_$ = __webpack_require__(177);
108721
+ /* provided dependency */ var Notification_$ = __webpack_require__(317);
108732
108722
  /*******************************************************************************
108733
108723
  *
108734
108724
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -108850,8 +108840,8 @@ const Notification_default_ = Notification;
108850
108840
  x_ite_Namespace .set ("x_ite/Browser/Core/Notification", Notification_default_);
108851
108841
  /* harmony default export */ const Core_Notification = (Notification_default_);
108852
108842
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/ContextMenu.js
108853
- /* provided dependency */ var jquery_fullscreen = __webpack_require__(515);
108854
- /* provided dependency */ var ContextMenu_$ = __webpack_require__(177);
108843
+ /* provided dependency */ var jquery_fullscreen = __webpack_require__(437);
108844
+ /* provided dependency */ var ContextMenu_$ = __webpack_require__(317);
108855
108845
  /*******************************************************************************
108856
108846
  *
108857
108847
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -111569,7 +111559,7 @@ const DataStorage_default_ = DataStorage;
111569
111559
  x_ite_Namespace .set ("standard/Utility/DataStorage", DataStorage_default_);
111570
111560
  /* harmony default export */ const Utility_DataStorage = (DataStorage_default_);
111571
111561
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/X3DCoreContext.js
111572
- /* provided dependency */ var X3DCoreContext_$ = __webpack_require__(177);
111562
+ /* provided dependency */ var X3DCoreContext_$ = __webpack_require__(317);
111573
111563
  /*******************************************************************************
111574
111564
  *
111575
111565
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -113604,8 +113594,8 @@ const X3DViewer_default_ = X3DViewer;
113604
113594
  x_ite_Namespace .set ("x_ite/Browser/Navigation/X3DViewer", X3DViewer_default_);
113605
113595
  /* harmony default export */ const Navigation_X3DViewer = (X3DViewer_default_);
113606
113596
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/ExamineViewer.js
113607
- /* provided dependency */ var jquery_mousewheel = __webpack_require__(615);
113608
- /* provided dependency */ var ExamineViewer_$ = __webpack_require__(177);
113597
+ /* provided dependency */ var jquery_mousewheel = __webpack_require__(727);
113598
+ /* provided dependency */ var ExamineViewer_$ = __webpack_require__(317);
113609
113599
  /*******************************************************************************
113610
113600
  *
113611
113601
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -114477,8 +114467,8 @@ const ExamineViewer_default_ = ExamineViewer;
114477
114467
  x_ite_Namespace .set ("x_ite/Browser/Navigation/ExamineViewer", ExamineViewer_default_);
114478
114468
  /* harmony default export */ const Navigation_ExamineViewer = (ExamineViewer_default_);
114479
114469
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/X3DFlyViewer.js
114480
- /* provided dependency */ var X3DFlyViewer_jquery_mousewheel = __webpack_require__(615);
114481
- /* provided dependency */ var X3DFlyViewer_$ = __webpack_require__(177);
114470
+ /* provided dependency */ var X3DFlyViewer_jquery_mousewheel = __webpack_require__(727);
114471
+ /* provided dependency */ var X3DFlyViewer_$ = __webpack_require__(317);
114482
114472
  /*******************************************************************************
114483
114473
  *
114484
114474
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -115448,8 +115438,8 @@ const FlyViewer_default_ = FlyViewer;
115448
115438
  x_ite_Namespace .set ("x_ite/Browser/Navigation/FlyViewer", FlyViewer_default_);
115449
115439
  /* harmony default export */ const Navigation_FlyViewer = (FlyViewer_default_);
115450
115440
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/PlaneViewer.js
115451
- /* provided dependency */ var PlaneViewer_jquery_mousewheel = __webpack_require__(615);
115452
- /* provided dependency */ var PlaneViewer_$ = __webpack_require__(177);
115441
+ /* provided dependency */ var PlaneViewer_jquery_mousewheel = __webpack_require__(727);
115442
+ /* provided dependency */ var PlaneViewer_$ = __webpack_require__(317);
115453
115443
  /*******************************************************************************
115454
115444
  *
115455
115445
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -115780,8 +115770,8 @@ const NoneViewer_default_ = NoneViewer;
115780
115770
  x_ite_Namespace .set ("x_ite/Browser/Navigation/NoneViewer", NoneViewer_default_);
115781
115771
  /* harmony default export */ const Navigation_NoneViewer = (NoneViewer_default_);
115782
115772
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/LookAtViewer.js
115783
- /* provided dependency */ var LookAtViewer_jquery_mousewheel = __webpack_require__(615);
115784
- /* provided dependency */ var LookAtViewer_$ = __webpack_require__(177);
115773
+ /* provided dependency */ var LookAtViewer_jquery_mousewheel = __webpack_require__(727);
115774
+ /* provided dependency */ var LookAtViewer_$ = __webpack_require__(317);
115785
115775
  /*******************************************************************************
115786
115776
  *
115787
115777
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -116918,8 +116908,8 @@ const X3DPickingContext_default_ = X3DPickingContext;
116918
116908
  x_ite_Namespace .set ("x_ite/Browser/Picking/X3DPickingContext", X3DPickingContext_default_);
116919
116909
  /* harmony default export */ const Picking_X3DPickingContext = (X3DPickingContext_default_);
116920
116910
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/PointingDeviceSensor/PointingDevice.js
116921
- /* provided dependency */ var PointingDevice_jquery_mousewheel = __webpack_require__(615);
116922
- /* provided dependency */ var PointingDevice_$ = __webpack_require__(177);
116911
+ /* provided dependency */ var PointingDevice_jquery_mousewheel = __webpack_require__(727);
116912
+ /* provided dependency */ var PointingDevice_$ = __webpack_require__(317);
116923
116913
  /*******************************************************************************
116924
116914
  *
116925
116915
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -117959,8 +117949,8 @@ const MultiSampleFrameBuffer_default_ = MultiSampleFrameBuffer;
117959
117949
  x_ite_Namespace .set ("x_ite/Rendering/MultiSampleFrameBuffer", MultiSampleFrameBuffer_default_);
117960
117950
  /* harmony default export */ const Rendering_MultiSampleFrameBuffer = (MultiSampleFrameBuffer_default_);
117961
117951
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Rendering/X3DRenderingContext.js
117962
- /* provided dependency */ var X3DRenderingContext_$ = __webpack_require__(177);
117963
- /* provided dependency */ var ResizeSensor = __webpack_require__(30);
117952
+ /* provided dependency */ var X3DRenderingContext_$ = __webpack_require__(317);
117953
+ /* provided dependency */ var ResizeSensor = __webpack_require__(395);
117964
117954
  /*******************************************************************************
117965
117955
  *
117966
117956
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -120185,7 +120175,7 @@ const Components_default_ = Components;
120185
120175
  x_ite_Namespace .set ("x_ite/Components", Components_default_);
120186
120176
  /* harmony default export */ const x_ite_Components = ((/* unused pure expression or super */ null && (Components_default_)));
120187
120177
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/DOMIntegration.js
120188
- /* provided dependency */ var DOMIntegration_$ = __webpack_require__(177);
120178
+ /* provided dependency */ var DOMIntegration_$ = __webpack_require__(317);
120189
120179
  /*******************************************************************************
120190
120180
  * MIT License
120191
120181
  *
@@ -120591,7 +120581,7 @@ const DOMIntegration_default_ = DOMIntegration;
120591
120581
  x_ite_Namespace .set ("x_ite/Browser/DOMIntegration", DOMIntegration_default_);
120592
120582
  /* harmony default export */ const Browser_DOMIntegration = (DOMIntegration_default_);
120593
120583
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Legacy.js
120594
- /* provided dependency */ var Legacy_$ = __webpack_require__(177);
120584
+ /* provided dependency */ var Legacy_$ = __webpack_require__(317);
120595
120585
  /*******************************************************************************
120596
120586
  *
120597
120587
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -121422,7 +121412,7 @@ const SupportedProfiles_default_ = SupportedProfiles;
121422
121412
  x_ite_Namespace .set ("x_ite/Configuration/SupportedProfiles", SupportedProfiles_default_);
121423
121413
  /* harmony default export */ const Configuration_SupportedProfiles = (SupportedProfiles_default_);
121424
121414
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/X3DBrowser.js
121425
- /* provided dependency */ var X3DBrowser_$ = __webpack_require__(177);
121415
+ /* provided dependency */ var X3DBrowser_$ = __webpack_require__(317);
121426
121416
  /*******************************************************************************
121427
121417
  *
121428
121418
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -122546,8 +122536,8 @@ const MicroTime_default_ = undefined;
122546
122536
  x_ite_Namespace .set ("standard/Time/MicroTime", MicroTime_default_);
122547
122537
  /* harmony default export */ const MicroTime = ((/* unused pure expression or super */ null && (MicroTime_default_)));
122548
122538
  ;// CONCATENATED MODULE: ./src/lib/jquery.js
122549
- /* provided dependency */ var jquery_$ = __webpack_require__(177);
122550
- /* provided dependency */ var pako = __webpack_require__(886);
122539
+ /* provided dependency */ var jquery_$ = __webpack_require__(317);
122540
+ /* provided dependency */ var pako = __webpack_require__(848);
122551
122541
  Object .assign (jquery_$,
122552
122542
  {
122553
122543
  decodeText (input)
@@ -122612,14 +122602,14 @@ const jquery_default_ = jquery_$;
122612
122602
  x_ite_Namespace .set ("lib/jquery", jquery_default_);
122613
122603
  /* harmony default export */ const jquery = ((/* unused pure expression or super */ null && (jquery_default_)));
122614
122604
  ;// CONCATENATED MODULE: ./src/lib/libtess.js
122615
- /* provided dependency */ var libtess_libtess = __webpack_require__(946);
122605
+ /* provided dependency */ var libtess_libtess = __webpack_require__(713);
122616
122606
  const libtess_default_ = libtess_libtess;
122617
122607
  ;
122618
122608
 
122619
122609
  x_ite_Namespace .set ("lib/libtess", libtess_default_);
122620
122610
  /* harmony default export */ const lib_libtess = ((/* unused pure expression or super */ null && (libtess_default_)));
122621
122611
  ;// CONCATENATED MODULE: ./src/x_ite/X3D.js
122622
- /* provided dependency */ var X3D_$ = __webpack_require__(177);
122612
+ /* provided dependency */ var X3D_$ = __webpack_require__(317);
122623
122613
  /*******************************************************************************
122624
122614
  *
122625
122615
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -122876,7 +122866,7 @@ const X3D_default_ = X3D;
122876
122866
  x_ite_Namespace .set ("x_ite/X3D", X3D_default_);
122877
122867
  /* harmony default export */ const x_ite_X3D = (X3D_default_);
122878
122868
  ;// CONCATENATED MODULE: ./src/x_ite/X3DCanvasElement.js
122879
- /* provided dependency */ var X3DCanvasElement_$ = __webpack_require__(177);
122869
+ /* provided dependency */ var X3DCanvasElement_$ = __webpack_require__(317);
122880
122870
  /*******************************************************************************
122881
122871
  *
122882
122872
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -123145,7 +123135,7 @@ x_ite_Namespace .set ("shim", shim_default_);
123145
123135
 
123146
123136
  // Assign X3D to global namespace.
123147
123137
 
123148
- window [Symbol .for ("X_ITE.X3D-8.9.3")] = x_ite_X3D;
123138
+ window [Symbol .for ("X_ITE.X3D-8.9.4")] = x_ite_X3D;
123149
123139
 
123150
123140
  customElements .define ("x3d-canvas", x_ite_X3DCanvasElement);
123151
123141