@2112-lab/central-plant 0.3.35 → 0.3.36

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.
@@ -11650,7 +11650,8 @@ var SceneExportManager = /*#__PURE__*/function () {
11650
11650
  }, {
11651
11651
  key: "exportSceneData",
11652
11652
  value: function exportSceneData() {
11653
- var _this = this;
11653
+ var _this = this,
11654
+ _this$sceneViewer$cur2;
11654
11655
  console.log('📤 Starting scene export...');
11655
11656
  if (!this.sceneViewer.scene) {
11656
11657
  console.warn('⚠️ No scene available for export');
@@ -11862,6 +11863,12 @@ var SceneExportManager = /*#__PURE__*/function () {
11862
11863
  children: sceneChildren
11863
11864
  }
11864
11865
  };
11866
+
11867
+ // Preserve cross-component behaviors authored in the Behavior window
11868
+ var sceneBehaviors = (_this$sceneViewer$cur2 = this.sceneViewer.currentSceneData) === null || _this$sceneViewer$cur2 === void 0 ? void 0 : _this$sceneViewer$cur2.behaviors;
11869
+ if (sceneBehaviors && sceneBehaviors.length > 0) {
11870
+ exportData.behaviors = sceneBehaviors;
11871
+ }
11865
11872
  console.log('✅ Scene export completed:', exportData);
11866
11873
  console.log("\uD83D\uDCCA Exported ".concat(sceneChildren.length, " components and ").concat(exportData.connections.length, " connections"));
11867
11874
  return exportData;
@@ -11927,7 +11934,7 @@ var SceneExportManager = /*#__PURE__*/function () {
11927
11934
  }, {
11928
11935
  key: "getExportMetadata",
11929
11936
  value: function getExportMetadata() {
11930
- var _this$sceneViewer$cur2;
11937
+ var _this$sceneViewer$cur3;
11931
11938
  if (!this.sceneViewer.scene) {
11932
11939
  return null;
11933
11940
  }
@@ -11938,7 +11945,7 @@ var SceneExportManager = /*#__PURE__*/function () {
11938
11945
  return {
11939
11946
  totalObjects: objectCount,
11940
11947
  hasCurrentSceneData: !!this.sceneViewer.currentSceneData,
11941
- connectionsCount: ((_this$sceneViewer$cur2 = this.sceneViewer.currentSceneData) === null || _this$sceneViewer$cur2 === void 0 || (_this$sceneViewer$cur2 = _this$sceneViewer$cur2.connections) === null || _this$sceneViewer$cur2 === void 0 ? void 0 : _this$sceneViewer$cur2.length) || 0,
11948
+ connectionsCount: ((_this$sceneViewer$cur3 = this.sceneViewer.currentSceneData) === null || _this$sceneViewer$cur3 === void 0 || (_this$sceneViewer$cur3 = _this$sceneViewer$cur3.connections) === null || _this$sceneViewer$cur3 === void 0 ? void 0 : _this$sceneViewer$cur3.length) || 0,
11942
11949
  exportTimestamp: new Date().toISOString()
11943
11950
  };
11944
11951
  }
@@ -19286,17 +19293,14 @@ var ModelPreloader = /*#__PURE__*/function () {
19286
19293
  _context3.n = 1;
19287
19294
  break;
19288
19295
  }
19289
- console.log("\uD83C\uDFAF Model ".concat(modelKey, " already cached, skipping"));
19290
19296
  return _context3.a(2, this.modelCache.get(modelKey));
19291
19297
  case 1:
19292
19298
  if (!this.loadingPromises.has(modelKey)) {
19293
19299
  _context3.n = 2;
19294
19300
  break;
19295
19301
  }
19296
- console.log("\u23F3 Model ".concat(modelKey, " already loading, waiting for completion"));
19297
19302
  return _context3.a(2, this.loadingPromises.get(modelKey));
19298
19303
  case 2:
19299
- console.log("\uD83D\uDD04 Starting preload of GLB model: ".concat(modelKey));
19300
19304
  loadPromise = new Promise(/*#__PURE__*/function () {
19301
19305
  var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(resolve, reject) {
19302
19306
  var modelPath, _t;
@@ -19312,7 +19316,6 @@ var ModelPreloader = /*#__PURE__*/function () {
19312
19316
  return _this2.urlResolver(modelKey);
19313
19317
  case 2:
19314
19318
  modelPath = _context2.v;
19315
- console.log("\uD83D\uDD17 Resolved URL for ".concat(modelKey, ":"), modelPath.substring(0, 100) + '...');
19316
19319
  _context2.n = 4;
19317
19320
  break;
19318
19321
  case 3:
@@ -19326,11 +19329,9 @@ var ModelPreloader = /*#__PURE__*/function () {
19326
19329
  break;
19327
19330
  case 5:
19328
19331
  modelPath = "".concat(_this2.modelsBasePath).concat(modelKey);
19329
- console.log("\uD83D\uDCC2 Loading from: ".concat(modelPath));
19330
19332
  case 6:
19331
19333
  // Load GLB model
19332
19334
  _this2.gltfLoader.load(modelPath, function (gltf) {
19333
- console.log("\u2705 Successfully preloaded GLB model: ".concat(modelKey));
19334
19335
  // Cache the scene for future use
19335
19336
  _this2.modelCache.set(modelKey, gltf.scene);
19336
19337
 
@@ -19349,13 +19350,6 @@ var ModelPreloader = /*#__PURE__*/function () {
19349
19350
  resolve(gltf.scene);
19350
19351
  }, function (progress) {
19351
19352
  // Optional: track loading progress
19352
- if (progress.lengthComputable) {
19353
- var percentage = progress.loaded / progress.total * 100;
19354
- if (percentage % 25 === 0) {
19355
- // Log every 25%
19356
- console.log("\uD83D\uDCCA Loading GLB ".concat(modelKey, ": ").concat(percentage.toFixed(0), "%"));
19357
- }
19358
- }
19359
19353
  }, function (error) {
19360
19354
  console.error("\u274C Failed to preload GLB model ".concat(modelKey, ":"), error);
19361
19355
  // Remove from loading promises
@@ -19393,13 +19387,10 @@ var ModelPreloader = /*#__PURE__*/function () {
19393
19387
  value: function getCachedModel(modelKey) {
19394
19388
  var useIndexedGeometry = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
19395
19389
  if (this.modelCache.has(modelKey)) {
19396
- console.log("\uD83C\uDFAF Returning cached model: ".concat(modelKey));
19397
19390
  var cachedData = this.modelCache.get(modelKey);
19398
19391
 
19399
19392
  // Handle OBJ models with processed geometry
19400
19393
  if (cachedData && cachedData.isObjModel && useIndexedGeometry && cachedData.processedGeometry) {
19401
- console.log("\uD83D\uDD27 Using indexed BufferGeometry for OBJ: ".concat(modelKey));
19402
-
19403
19394
  // Create a mesh from the processed indexed geometry
19404
19395
  var mesh = new THREE__namespace.Mesh(cachedData.processedGeometry.clone(), cachedData.materials.clone());
19405
19396
 
@@ -19635,7 +19626,7 @@ var ModelPreloader = /*#__PURE__*/function () {
19635
19626
  }
19636
19627
 
19637
19628
  // Model not cached, need to load it
19638
- console.log("\uD83D\uDD04 Loading model for library ID ".concat(libraryId, ": ").concat(modelKey));
19629
+ // Loading model for library ID
19639
19630
  this.preloadSingleModel(modelKey).then(function (model) {
19640
19631
  if (model) {
19641
19632
  var _clonedModel = model.clone();
@@ -20302,7 +20293,7 @@ var ComponentDataManager = /*#__PURE__*/function (_BaseDisposable) {
20302
20293
  value: (function () {
20303
20294
  var _extendComponentDictionary = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(additionalComponents) {
20304
20295
  var _this3 = this;
20305
- var _this$sceneViewer, newComponents, skippedCount, addedCount, modelPreloader, _t;
20296
+ var _this$sceneViewer, newComponents, modelPreloader, _t;
20306
20297
  return _regenerator().w(function (_context3) {
20307
20298
  while (1) switch (_context3.n) {
20308
20299
  case 0:
@@ -20326,7 +20317,6 @@ var ComponentDataManager = /*#__PURE__*/function (_BaseDisposable) {
20326
20317
  _context3.p = 3;
20327
20318
  // Filter out components that already exist in the dictionary (deduplication)
20328
20319
  newComponents = {};
20329
- skippedCount = 0;
20330
20320
  Object.entries(additionalComponents).forEach(function (_ref3) {
20331
20321
  var _ref4 = _slicedToArray(_ref3, 2),
20332
20322
  key = _ref4[0],
@@ -20334,13 +20324,12 @@ var ComponentDataManager = /*#__PURE__*/function (_BaseDisposable) {
20334
20324
  if (!_this3.componentDictionary[key]) {
20335
20325
  newComponents[key] = component;
20336
20326
  } else {
20337
- skippedCount++;
20338
20327
  console.log("\u26A0\uFE0F Skipping duplicate component: ".concat(key, " (").concat(component.name || 'unnamed', ")"));
20339
20328
  }
20340
20329
  });
20341
20330
 
20342
20331
  // Merge only new components into dictionary
20343
- addedCount = Object.keys(newComponents).length;
20332
+ Object.keys(newComponents).length;
20344
20333
  Object.assign(this.componentDictionary, newComponents);
20345
20334
 
20346
20335
  // Update ModelPreloader's dictionary reference
@@ -20348,12 +20337,10 @@ var ComponentDataManager = /*#__PURE__*/function (_BaseDisposable) {
20348
20337
  modelPreloader = (_this$sceneViewer = this.sceneViewer) === null || _this$sceneViewer === void 0 || (_this$sceneViewer = _this$sceneViewer.centralPlant) === null || _this$sceneViewer === void 0 || (_this$sceneViewer = _this$sceneViewer.utilities) === null || _this$sceneViewer === void 0 ? void 0 : _this$sceneViewer.modelPreloader;
20349
20338
  if (modelPreloader) {
20350
20339
  modelPreloader.componentDictionary = this.componentDictionary;
20351
- console.log("\uD83D\uDD04 Updated ModelPreloader's dictionary reference (".concat(Object.keys(this.componentDictionary).length, " total components)"));
20352
20340
  }
20353
20341
 
20354
20342
  // Clear cache to force refresh
20355
20343
  this.clearCache();
20356
- console.log("\u2705 extendComponentDictionary(): Added ".concat(addedCount, " new components (").concat(skippedCount, " duplicates skipped)"));
20357
20344
  return _context3.a(2, true);
20358
20345
  case 4:
20359
20346
  _context3.p = 4;
@@ -29875,7 +29862,6 @@ function _attachIODevicesToComponent() {
29875
29862
  _context.n = 10;
29876
29863
  break;
29877
29864
  }
29878
- console.log("\uD83D\uDD04 IO device model not in cache, preloading: ".concat(deviceData.modelKey));
29879
29865
  _context.p = 5;
29880
29866
  if (!((_modelPreloader$loadi = modelPreloader.loadingPromises) !== null && _modelPreloader$loadi !== void 0 && _modelPreloader$loadi.has(deviceData.modelKey))) {
29881
29867
  _context.n = 7;
@@ -29957,10 +29943,6 @@ function _attachIODevicesToComponent() {
29957
29943
 
29958
29944
  // Add as child of the component
29959
29945
  componentModel.add(deviceModel);
29960
- console.log("\u2705 Attached IO device: ".concat(attachment.attachmentLabel || attachment.deviceId, " at"), {
29961
- position: deviceModel.position,
29962
- scale: deviceModel.scale
29963
- });
29964
29946
  _context.n = 13;
29965
29947
  break;
29966
29948
  case 12:
@@ -33506,7 +33488,6 @@ var SceneOperationsManager = /*#__PURE__*/function () {
33506
33488
 
33507
33489
  // Check if dictionary has connector children and component doesn't already have them
33508
33490
  if (dictEntry !== null && dictEntry !== void 0 && dictEntry.children && Array.isArray(dictEntry.children) && dictEntry.children.length > 0) {
33509
- // Only inject if the component doesn't already have children
33510
33491
  if (!child.children || child.children.length === 0) {
33511
33492
  // Get component rotation (in degrees from JSON)
33512
33493
  var rotation = child.rotation || {
@@ -33536,7 +33517,6 @@ var SceneOperationsManager = /*#__PURE__*/function () {
33536
33517
  connectorsInjected++;
33537
33518
  return clonedConnector;
33538
33519
  });
33539
- console.log("\uD83D\uDD0C Injected ".concat(child.children.length, " connectors for ").concat(child.uuid, " (").concat(libraryId, ") with rotation [").concat(rotation.x, "\xB0, ").concat(rotation.y, "\xB0, ").concat(rotation.z, "\xB0]"));
33540
33520
  componentsProcessed++;
33541
33521
  }
33542
33522
  }
@@ -37510,9 +37490,7 @@ var IoBehaviorManager = /*#__PURE__*/function (_BaseDisposable) {
37510
37490
  }
37511
37491
  if (entries.length) {
37512
37492
  this._entries.set(key, entries);
37513
- console.log("[IoBehaviorManager] Loaded ".concat(entries.length, " animation(s) for attachment \"").concat(attachmentId, "\" (parent: ").concat(parentUuid, ") \u2014 stateVariables: ").concat(entries.map(function (e) {
37514
- return e.anim.stateVariable;
37515
- }).join(', ')));
37493
+ // Loaded ${entries.length} animation(s) for attachment "${attachmentId}"
37516
37494
  } else {
37517
37495
  console.warn("[IoBehaviorManager] No mesh entries resolved for attachment \"".concat(attachmentId, "\" \u2014 behaviorConfig had ").concat(anims.length, " entries but none matched a mesh"));
37518
37496
  }
@@ -37530,13 +37508,8 @@ var IoBehaviorManager = /*#__PURE__*/function (_BaseDisposable) {
37530
37508
  }, {
37531
37509
  key: "triggerState",
37532
37510
  value: function triggerState(attachmentId, dataPointId, value, parentUuid) {
37533
- var _this$_crossComponent;
37534
- console.log("[Behavior] triggerState called:", {
37535
- attachmentId: attachmentId,
37536
- dataPointId: dataPointId,
37537
- value: value,
37538
- parentUuid: parentUuid
37539
- });
37511
+ // triggerState: ${attachmentId}.${dataPointId} = ${value}
37512
+
37540
37513
  if (parentUuid) {
37541
37514
  var key = this._key(parentUuid, attachmentId);
37542
37515
  var entries = this._entries.get(key);
@@ -37591,12 +37564,12 @@ var IoBehaviorManager = /*#__PURE__*/function (_BaseDisposable) {
37591
37564
  // Evaluate component-level behaviors (intra-component io-device linking)
37592
37565
  if (parentUuid && this._componentBehaviors.has(parentUuid)) {
37593
37566
  var componentBehaviors = this._componentBehaviors.get(parentUuid);
37594
- console.log("[Behavior] Checking component-level behaviors for ".concat(parentUuid, " (count: ").concat(componentBehaviors.length, ")"));
37567
+ // Checking component-level behaviors (count: ${componentBehaviors.length})
37595
37568
  this.triggerCrossComponentBehaviors(componentBehaviors, parentUuid, attachmentId, dataPointId, value);
37596
37569
  }
37597
37570
 
37598
37571
  // Evaluate cross-component behaviors if any are registered
37599
- console.log("[Behavior] Checking cross-component behaviors (count: ".concat(((_this$_crossComponent = this._crossComponentBehaviors) === null || _this$_crossComponent === void 0 ? void 0 : _this$_crossComponent.length) || 0, ")"));
37572
+ // Checking cross-component behaviors (count: ${this._crossComponentBehaviors?.length || 0})
37600
37573
  if (this._crossComponentBehaviors && this._crossComponentBehaviors.length > 0) {
37601
37574
  this.triggerCrossComponentBehaviors(this._crossComponentBehaviors, parentUuid, attachmentId, dataPointId, value);
37602
37575
  }
@@ -37615,7 +37588,7 @@ var IoBehaviorManager = /*#__PURE__*/function (_BaseDisposable) {
37615
37588
  this._crossComponentBehaviors = (behaviors || []).map(function (b) {
37616
37589
  return _this2._normalizeBehavior(b);
37617
37590
  });
37618
- console.log("[Behavior] Loaded ".concat(this._crossComponentBehaviors.length, " cross-component behavior(s)"), this._crossComponentBehaviors);
37591
+ // Loaded ${this._crossComponentBehaviors.length} cross-component behavior(s)
37619
37592
  }
37620
37593
 
37621
37594
  /**
@@ -37634,7 +37607,7 @@ var IoBehaviorManager = /*#__PURE__*/function (_BaseDisposable) {
37634
37607
  return _this3._normalizeBehavior(b);
37635
37608
  });
37636
37609
  this._componentBehaviors.set(componentUuid, normalized);
37637
- console.log("[Behavior] Registered ".concat(normalized.length, " component-level behavior(s) for component ").concat(componentUuid), normalized);
37610
+ // Registered ${normalized.length} component-level behavior(s) for component ${componentUuid}
37638
37611
  }
37639
37612
 
37640
37613
  /**
@@ -37745,7 +37718,7 @@ var IoBehaviorManager = /*#__PURE__*/function (_BaseDisposable) {
37745
37718
  key: "configure",
37746
37719
  value: function configure(stateAdapter) {
37747
37720
  this._stateAdapter = stateAdapter || null;
37748
- console.log('[Behavior] State adapter configured:', !!this._stateAdapter);
37721
+ // State adapter configured
37749
37722
  }
37750
37723
 
37751
37724
  /**
@@ -37761,10 +37734,10 @@ var IoBehaviorManager = /*#__PURE__*/function (_BaseDisposable) {
37761
37734
  key: "triggerCrossComponentBehaviors",
37762
37735
  value: function triggerCrossComponentBehaviors(behaviors, triggerParentUuid, triggerAttachmentId, triggerStateId, value) {
37763
37736
  if (!behaviors || !Array.isArray(behaviors)) {
37764
- console.log('[Behavior] No behaviors to evaluate');
37765
37737
  return;
37766
37738
  }
37767
- console.log("[Behavior] Evaluating ".concat(behaviors.length, " behavior(s) for trigger: ").concat(triggerParentUuid, ".").concat(triggerAttachmentId, ".").concat(triggerStateId, " = ").concat(value));
37739
+
37740
+ // Evaluating ${behaviors.length} behavior(s)
37768
37741
  var _iterator5 = _createForOfIteratorHelper(behaviors),
37769
37742
  _step5;
37770
37743
  try {
@@ -37799,7 +37772,7 @@ var IoBehaviorManager = /*#__PURE__*/function (_BaseDisposable) {
37799
37772
 
37800
37773
  // Verify that the input matches the triggering source
37801
37774
  if (inputComponent === triggerParentUuid && input.attachment === triggerAttachmentId && input.state === triggerStateId) {
37802
- console.log("[Behavior] \u2713 Behavior \"".concat(behavior.id, "\" matched!"));
37775
+ // Behavior "${behavior.id}" matched
37803
37776
 
37804
37777
  // Collect all outputs (single or multiple)
37805
37778
  var outputs = _outputs || (output ? [output] : []);
@@ -37817,14 +37790,13 @@ var IoBehaviorManager = /*#__PURE__*/function (_BaseDisposable) {
37817
37790
 
37818
37791
  // Direct state mapping without conditions
37819
37792
  if (this._stateAdapter) {
37820
- console.log("[Behavior] Dispatching state-to-state: ".concat(out.attachment, ".").concat(out.state, " = ").concat(value));
37793
+ // Dispatching state-to-state: ${out.attachment}.${out.state} = ${value}
37821
37794
  this._stateAdapter.setState(out.attachment, out.state, value);
37822
- console.log("[Behavior] \u2713 State-to-state triggered: ".concat(input.attachment, ".").concat(input.state, " (").concat(value, ") \u2192 ").concat(out.attachment, ".").concat(out.state));
37823
37795
 
37824
37796
  // Trigger animations on the output component
37825
37797
  // triggerState(attachmentId, dataPointId, value, parentUuid)
37826
37798
  if (outputComponent) {
37827
- console.log("[Behavior] Triggering animations on output component: ".concat(outputComponent, ".").concat(out.attachment, ".").concat(out.state));
37799
+ // Triggering animations on output component
37828
37800
  this.triggerState(out.attachment, out.state, value, outputComponent);
37829
37801
  } else {
37830
37802
  console.warn("[Behavior] Could not find component for attachment \"".concat(out.attachment, "\""));
@@ -37835,7 +37807,7 @@ var IoBehaviorManager = /*#__PURE__*/function (_BaseDisposable) {
37835
37807
  }
37836
37808
  // LEGACY: Mesh-based pattern with conditions
37837
37809
  else if (conditions && out.child) {
37838
- console.log('[Behavior] Using legacy mesh-based pattern with conditions');
37810
+ // Using legacy mesh-based pattern with conditions
37839
37811
  // Evaluate conditions
37840
37812
  var _iterator7 = _createForOfIteratorHelper(conditions),
37841
37813
  _step7;
@@ -38936,12 +38908,10 @@ var CentralPlantInternals = /*#__PURE__*/function () {
38936
38908
  if (this.centralPlant.sceneViewer.$refs.container && this.centralPlant.sceneViewer.camera && this.centralPlant.sceneViewer.scene) {
38937
38909
  this.centralPlant.managers.tooltipsManager = new SceneTooltipsManager(this.centralPlant.sceneViewer.$refs.container, this.centralPlant.sceneViewer.camera, this.centralPlant.sceneViewer.scene);
38938
38910
  this.centralPlant.sceneViewer.tooltipsManager = this.centralPlant.managers.tooltipsManager;
38939
- console.log('🔍 Tooltip manager initialized:', this.centralPlant.managers.tooltipsManager);
38940
38911
 
38941
38912
  // Initialize the component tooltip manager (screen-space tooltip on selection)
38942
38913
  this.centralPlant.managers.componentTooltipManager = new ComponentTooltipManager(this.centralPlant.sceneViewer);
38943
38914
  this.centralPlant.sceneViewer.componentTooltipManager = this.centralPlant.managers.componentTooltipManager;
38944
- console.log('🔍 Component tooltip manager initialized');
38945
38915
  }
38946
38916
  }
38947
38917
 
@@ -39877,7 +39847,7 @@ var CentralPlantInternals = /*#__PURE__*/function () {
39877
39847
 
39878
39848
  // Register component-level behaviors (intra-component io-device linking)
39879
39849
  if (componentData.behaviors && componentData.behaviors.length > 0) {
39880
- console.log("[DragDrop] Registering ".concat(componentData.behaviors.length, " component-level behavior(s) for ").concat(componentId));
39850
+ // Registering ${componentData.behaviors.length} component-level behavior(s)
39881
39851
  ioBehavMgr.registerComponentBehaviors(componentId, componentData.behaviors);
39882
39852
  }
39883
39853
  }
@@ -40181,7 +40151,7 @@ var CentralPlant = /*#__PURE__*/function (_BaseDisposable) {
40181
40151
  * Initialize the CentralPlant manager
40182
40152
  *
40183
40153
  * @constructor
40184
- * @version 0.3.35
40154
+ * @version 0.3.36
40185
40155
  * @updated 2025-10-22
40186
40156
  *
40187
40157
  * @description Creates a new CentralPlant instance and initializes internal managers and utilities.
@@ -40370,12 +40340,13 @@ var CentralPlant = /*#__PURE__*/function (_BaseDisposable) {
40370
40340
  behaviors: ((_this$importedSceneDa3 = this.importedSceneData.behaviors) === null || _this$importedSceneDa3 === void 0 ? void 0 : _this$importedSceneDa3.length) || 0,
40371
40341
  timestamp: new Date().toISOString()
40372
40342
  });
40373
- console.log('[Behavior] Scene behaviors detail:', this.importedSceneData.behaviors);
40343
+
40344
+ // Scene behaviors loaded
40374
40345
 
40375
40346
  // Register behaviors with IoBehaviorManager
40376
40347
  ioBehavMgr = (_this$sceneViewer = this.sceneViewer) === null || _this$sceneViewer === void 0 || (_this$sceneViewer = _this$sceneViewer.managers) === null || _this$sceneViewer === void 0 ? void 0 : _this$sceneViewer.ioBehaviorManager;
40377
40348
  if (ioBehavMgr) {
40378
- console.log('[Behavior] Calling setCrossComponentBehaviors with:', this.importedSceneData.behaviors || []);
40349
+ // Setting cross-component behaviors
40379
40350
  ioBehavMgr.setCrossComponentBehaviors(this.importedSceneData.behaviors || []);
40380
40351
  } else {
40381
40352
  console.warn('[Behavior] ioBehaviorManager not available!');
@@ -40874,7 +40845,6 @@ var CentralPlant = /*#__PURE__*/function (_BaseDisposable) {
40874
40845
 
40875
40846
  // Enable drag functionality for the specific element
40876
40847
  this.sceneViewer.managers.componentDragManager.enableElementDrag(element, componentId);
40877
- console.log("\u2705 enableDragDrop(): Enabled drag and drop for ".concat(componentId));
40878
40848
  return true;
40879
40849
  } catch (error) {
40880
40850
  console.error('❌ enableDragDrop(): Error enabling drag and drop:', error);
@@ -40910,7 +40880,6 @@ var CentralPlant = /*#__PURE__*/function (_BaseDisposable) {
40910
40880
  }
40911
40881
  try {
40912
40882
  this.sceneViewer.managers.componentDragManager.disableElementDrag(element);
40913
- console.log('✅ disableDragDrop(): Disabled drag and drop for element');
40914
40883
  return true;
40915
40884
  } catch (error) {
40916
40885
  console.error('❌ disableDragDrop(): Error disabling drag and drop:', error);
@@ -40944,7 +40913,6 @@ var CentralPlant = /*#__PURE__*/function (_BaseDisposable) {
40944
40913
  if (this.sceneViewer.managers.componentDragManager) {
40945
40914
  this.sceneViewer.managers.componentDragManager.setEnabled(enabled);
40946
40915
  }
40947
- console.log("\u2705 setDragDropEnabled(): Drag and drop ".concat(enabled ? 'enabled' : 'disabled'));
40948
40916
  return true;
40949
40917
  } catch (error) {
40950
40918
  console.error('❌ setDragDropEnabled(): Error setting drag and drop state:', error);
@@ -46189,7 +46157,6 @@ function _findInAllCachePartitions() {
46189
46157
  _context16.n = 7;
46190
46158
  break;
46191
46159
  }
46192
- console.log("\u2705 [findInAllCachePartitions] Found in ".concat(cacheName, " (exact match): ").concat(cacheKey.substring(0, 80), "..."));
46193
46160
  return _context16.a(2, response);
46194
46161
  case 7:
46195
46162
  if (!(encodedCacheKey !== cacheKey)) {
@@ -46204,7 +46171,6 @@ function _findInAllCachePartitions() {
46204
46171
  _context16.n = 9;
46205
46172
  break;
46206
46173
  }
46207
- console.log("\u2705 [findInAllCachePartitions] Found in ".concat(cacheName, " (encoded match): ").concat(encodedCacheKey.substring(0, 80), "..."));
46208
46174
  return _context16.a(2, response);
46209
46175
  case 9:
46210
46176
  _context16.n = 4;
@@ -46239,8 +46205,6 @@ function _getCachedS3Object() {
46239
46205
  cachedResponse,
46240
46206
  cachedTime,
46241
46207
  age,
46242
- _allKeys,
46243
- matchingKeys,
46244
46208
  _args19 = arguments;
46245
46209
  return _regenerator().w(function (_context19) {
46246
46210
  while (1) switch (_context19.n) {
@@ -46248,50 +46212,26 @@ function _getCachedS3Object() {
46248
46212
  storageOptions = _args19.length > 1 && _args19[1] !== undefined ? _args19[1] : {};
46249
46213
  expiryMs = _args19.length > 2 && _args19[2] !== undefined ? _args19[2] : null;
46250
46214
  cacheKey = "https://s3.cache/".concat(s3Key);
46251
- expiry = expiryMs || cacheManager.getExpiryForPath(s3Key);
46252
- console.log("\uD83D\uDD0D [S3Cache] Checking for cached S3 object:", {
46253
- s3Key: s3Key,
46254
- cacheKey: cacheKey
46255
- });
46256
-
46257
- // First, check ALL app cache partitions for a hit (handles auth race condition)
46215
+ expiry = expiryMs || cacheManager.getExpiryForPath(s3Key); // First, check ALL app cache partitions for a hit (handles auth race condition)
46258
46216
  _context19.n = 1;
46259
46217
  return findInAllCachePartitions(cacheKey);
46260
46218
  case 1:
46261
46219
  cachedResponse = _context19.v;
46262
46220
  if (!cachedResponse) {
46263
- _context19.n = 4;
46221
+ _context19.n = 3;
46264
46222
  break;
46265
46223
  }
46266
46224
  cachedTime = cachedResponse.headers.get('x-cached-time');
46267
46225
  age = Date.now() - parseInt(cachedTime || '0');
46268
- console.log("\u2705 [S3Cache] Found in cache partition, age: ".concat(Math.round(age / 1000), "s, expiry: ").concat(Math.round(expiry / 1000), "s"));
46269
46226
  if (!(age < expiry)) {
46270
46227
  _context19.n = 3;
46271
46228
  break;
46272
46229
  }
46273
- console.log("\u2705 [S3Cache] Returning cached blob for: ".concat(s3Key));
46274
46230
  _context19.n = 2;
46275
46231
  return cachedResponse.blob();
46276
46232
  case 2:
46277
46233
  return _context19.a(2, _context19.v);
46278
46234
  case 3:
46279
- console.log("\u23F0 [S3Cache] Cache entry expired, will re-fetch");
46280
- _context19.n = 6;
46281
- break;
46282
- case 4:
46283
- console.log("\u274C [S3Cache] Not found in any cache partition");
46284
- _context19.n = 5;
46285
- return getAllCacheKeys();
46286
- case 5:
46287
- _allKeys = _context19.v;
46288
- matchingKeys = _toConsumableArray(_allKeys).filter(function (k) {
46289
- return k.includes('24dd6a7a') || k.includes('.glb');
46290
- });
46291
- if (matchingKeys.length > 0) {
46292
- console.log("\uD83D\uDD0D [S3Cache] Available GLB cache keys:", matchingKeys.slice(0, 5));
46293
- }
46294
- case 6:
46295
46235
  return _context19.a(2, cacheManager.execute({
46296
46236
  cacheKey: cacheKey,
46297
46237
  sourceKey: s3Key,
@@ -46450,7 +46390,6 @@ function _preloadS3Objects() {
46450
46390
  };
46451
46391
  }()));
46452
46392
  case 1:
46453
- console.log("\u2705 Preload complete: ".concat(results.success, " success, ").concat(results.failed, " failed"));
46454
46393
  return _context22.a(2, results);
46455
46394
  }
46456
46395
  }, _callee22);
@@ -46628,7 +46567,6 @@ function _preloadLocalFiles() {
46628
46567
  return _regenerator().w(function (_context29) {
46629
46568
  while (1) switch (_context29.n) {
46630
46569
  case 0:
46631
- console.log("preloadLocalFiles started");
46632
46570
  results = {
46633
46571
  success: 0,
46634
46572
  failed: 0,
@@ -46667,7 +46605,6 @@ function _preloadLocalFiles() {
46667
46605
  };
46668
46606
  }()));
46669
46607
  case 1:
46670
- console.log("preloadLocalFiles finished");
46671
46608
  if (results.failed > 0) {
46672
46609
  console.warn("\u26A0\uFE0F preloadLocalFiles Cache priming finished with errors: ".concat(results.failed, " failed"), results.errors);
46673
46610
  }
@@ -47329,7 +47266,6 @@ var S3MetadataCacheService = /*#__PURE__*/function () {
47329
47266
  // Update memory cache
47330
47267
  this._memoryCache = metadata;
47331
47268
  this._memoryCacheTime = Date.now();
47332
- console.log("\uD83D\uDCBE S3MetadataCacheService: Set ".concat(components.length, " components"));
47333
47269
  return _context9.a(2, true);
47334
47270
  case 4:
47335
47271
  _context9.p = 4;
@@ -35,7 +35,7 @@ var CentralPlant = /*#__PURE__*/function (_BaseDisposable) {
35
35
  * Initialize the CentralPlant manager
36
36
  *
37
37
  * @constructor
38
- * @version 0.3.35
38
+ * @version 0.3.36
39
39
  * @updated 2025-10-22
40
40
  *
41
41
  * @description Creates a new CentralPlant instance and initializes internal managers and utilities.
@@ -224,12 +224,13 @@ var CentralPlant = /*#__PURE__*/function (_BaseDisposable) {
224
224
  behaviors: ((_this$importedSceneDa3 = this.importedSceneData.behaviors) === null || _this$importedSceneDa3 === void 0 ? void 0 : _this$importedSceneDa3.length) || 0,
225
225
  timestamp: new Date().toISOString()
226
226
  });
227
- console.log('[Behavior] Scene behaviors detail:', this.importedSceneData.behaviors);
227
+
228
+ // Scene behaviors loaded
228
229
 
229
230
  // Register behaviors with IoBehaviorManager
230
231
  ioBehavMgr = (_this$sceneViewer = this.sceneViewer) === null || _this$sceneViewer === void 0 || (_this$sceneViewer = _this$sceneViewer.managers) === null || _this$sceneViewer === void 0 ? void 0 : _this$sceneViewer.ioBehaviorManager;
231
232
  if (ioBehavMgr) {
232
- console.log('[Behavior] Calling setCrossComponentBehaviors with:', this.importedSceneData.behaviors || []);
233
+ // Setting cross-component behaviors
233
234
  ioBehavMgr.setCrossComponentBehaviors(this.importedSceneData.behaviors || []);
234
235
  } else {
235
236
  console.warn('[Behavior] ioBehaviorManager not available!');
@@ -728,7 +729,6 @@ var CentralPlant = /*#__PURE__*/function (_BaseDisposable) {
728
729
 
729
730
  // Enable drag functionality for the specific element
730
731
  this.sceneViewer.managers.componentDragManager.enableElementDrag(element, componentId);
731
- console.log("\u2705 enableDragDrop(): Enabled drag and drop for ".concat(componentId));
732
732
  return true;
733
733
  } catch (error) {
734
734
  console.error('❌ enableDragDrop(): Error enabling drag and drop:', error);
@@ -764,7 +764,6 @@ var CentralPlant = /*#__PURE__*/function (_BaseDisposable) {
764
764
  }
765
765
  try {
766
766
  this.sceneViewer.managers.componentDragManager.disableElementDrag(element);
767
- console.log('✅ disableDragDrop(): Disabled drag and drop for element');
768
767
  return true;
769
768
  } catch (error) {
770
769
  console.error('❌ disableDragDrop(): Error disabling drag and drop:', error);
@@ -798,7 +797,6 @@ var CentralPlant = /*#__PURE__*/function (_BaseDisposable) {
798
797
  if (this.sceneViewer.managers.componentDragManager) {
799
798
  this.sceneViewer.managers.componentDragManager.setEnabled(enabled);
800
799
  }
801
- console.log("\u2705 setDragDropEnabled(): Drag and drop ".concat(enabled ? 'enabled' : 'disabled'));
802
800
  return true;
803
801
  } catch (error) {
804
802
  console.error('❌ setDragDropEnabled(): Error setting drag and drop state:', error);
@@ -236,12 +236,10 @@ var CentralPlantInternals = /*#__PURE__*/function () {
236
236
  if (this.centralPlant.sceneViewer.$refs.container && this.centralPlant.sceneViewer.camera && this.centralPlant.sceneViewer.scene) {
237
237
  this.centralPlant.managers.tooltipsManager = new sceneTooltipsManager.SceneTooltipsManager(this.centralPlant.sceneViewer.$refs.container, this.centralPlant.sceneViewer.camera, this.centralPlant.sceneViewer.scene);
238
238
  this.centralPlant.sceneViewer.tooltipsManager = this.centralPlant.managers.tooltipsManager;
239
- console.log('🔍 Tooltip manager initialized:', this.centralPlant.managers.tooltipsManager);
240
239
 
241
240
  // Initialize the component tooltip manager (screen-space tooltip on selection)
242
241
  this.centralPlant.managers.componentTooltipManager = new componentTooltipManager.ComponentTooltipManager(this.centralPlant.sceneViewer);
243
242
  this.centralPlant.sceneViewer.componentTooltipManager = this.centralPlant.managers.componentTooltipManager;
244
- console.log('🔍 Component tooltip manager initialized');
245
243
  }
246
244
  }
247
245
 
@@ -1177,7 +1175,7 @@ var CentralPlantInternals = /*#__PURE__*/function () {
1177
1175
 
1178
1176
  // Register component-level behaviors (intra-component io-device linking)
1179
1177
  if (componentData.behaviors && componentData.behaviors.length > 0) {
1180
- console.log("[DragDrop] Registering ".concat(componentData.behaviors.length, " component-level behavior(s) for ").concat(componentId));
1178
+ // Registering ${componentData.behaviors.length} component-level behavior(s)
1181
1179
  ioBehavMgr.registerComponentBehaviors(componentId, componentData.behaviors);
1182
1180
  }
1183
1181
  }