@2112-lab/central-plant 0.1.4 โ 0.1.5
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.
- package/dist/cjs/_virtual/_rollupPluginBabelHelpers.js +432 -1
- package/dist/cjs/node_modules/@2112-lab/pathfinder/dist/index.esm.js +1448 -1
- package/dist/cjs/node_modules/three/examples/jsm/controls/OrbitControls.js +1853 -1
- package/dist/cjs/node_modules/three/examples/jsm/exporters/GLTFExporter.js +3537 -1
- package/dist/cjs/node_modules/three/examples/jsm/exporters/OBJExporter.js +305 -1
- package/dist/cjs/node_modules/three/examples/jsm/exporters/PLYExporter.js +542 -1
- package/dist/cjs/node_modules/three/examples/jsm/exporters/STLExporter.js +218 -1
- package/dist/cjs/node_modules/three/examples/jsm/loaders/DRACOLoader.js +683 -1
- package/dist/cjs/node_modules/three/examples/jsm/loaders/GLTFLoader.js +4811 -1
- package/dist/cjs/node_modules/three/examples/jsm/loaders/RGBELoader.js +480 -1
- package/dist/cjs/node_modules/three/examples/jsm/renderers/CSS2DRenderer.js +309 -1
- package/dist/cjs/node_modules/three/examples/jsm/utils/BufferGeometryUtils.js +120 -1
- package/dist/cjs/src/analysis/analysis.js +560 -1
- package/dist/cjs/src/analysis/testing.js +958 -1
- package/dist/cjs/src/core/centralPlant.js +1149 -1
- package/dist/cjs/src/core/debugLogger.js +175 -1
- package/dist/cjs/src/core/mathUtils.js +574 -1
- package/dist/cjs/src/core/nameUtils.js +93 -1
- package/dist/cjs/src/data/export.js +716 -1
- package/dist/cjs/src/data/import.js +380 -1
- package/dist/cjs/src/data/numerics.js +522 -1
- package/dist/cjs/src/helpers/sceneHelper.js +572 -1
- package/dist/cjs/src/index.js +69 -1
- package/dist/cjs/src/managers/components/animationManager.js +123 -1
- package/dist/cjs/src/managers/components/componentManager.js +332 -1
- package/dist/cjs/src/managers/components/pathfindingManager.js +1441 -1
- package/dist/cjs/src/managers/controls/TransformControls.js +1063 -1
- package/dist/cjs/src/managers/controls/cameraControlsManager.js +79 -1
- package/dist/cjs/src/managers/controls/dragDropManager.js +1026 -1
- package/dist/cjs/src/managers/controls/keyboardControlsManager.js +395 -1
- package/dist/cjs/src/managers/controls/transformControlsManager.js +1807 -1
- package/dist/cjs/src/managers/environment/environmentManager.js +714 -1
- package/dist/cjs/src/managers/environment/textureConfig.js +229 -1
- package/dist/cjs/src/managers/scene/sceneExportManager.js +264 -1
- package/dist/cjs/src/managers/scene/sceneInitializationManager.js +346 -1
- package/dist/cjs/src/managers/scene/sceneOperationsManager.js +1509 -1
- package/dist/cjs/src/managers/scene/sceneTooltipsManager.js +661 -1
- package/dist/cjs/src/managers/system/disposalManager.js +444 -1
- package/dist/cjs/src/managers/system/hotReloadManager.js +291 -1
- package/dist/cjs/src/managers/system/performanceMonitor.js +863 -1
- package/dist/cjs/src/rendering/modelPreloader.js +369 -1
- package/dist/cjs/src/rendering/rendering2D.js +631 -1
- package/dist/cjs/src/rendering/rendering3D.js +685 -1
- package/dist/esm/_virtual/_rollupPluginBabelHelpers.js +396 -1
- package/dist/esm/node_modules/@2112-lab/pathfinder/dist/index.esm.js +1444 -1
- package/dist/esm/node_modules/three/examples/jsm/controls/OrbitControls.js +1849 -1
- package/dist/esm/node_modules/three/examples/jsm/exporters/GLTFExporter.js +3533 -1
- package/dist/esm/node_modules/three/examples/jsm/exporters/OBJExporter.js +301 -1
- package/dist/esm/node_modules/three/examples/jsm/exporters/PLYExporter.js +538 -1
- package/dist/esm/node_modules/three/examples/jsm/exporters/STLExporter.js +214 -1
- package/dist/esm/node_modules/three/examples/jsm/loaders/DRACOLoader.js +679 -1
- package/dist/esm/node_modules/three/examples/jsm/loaders/GLTFLoader.js +4807 -1
- package/dist/esm/node_modules/three/examples/jsm/loaders/RGBELoader.js +476 -1
- package/dist/esm/node_modules/three/examples/jsm/renderers/CSS2DRenderer.js +304 -1
- package/dist/esm/node_modules/three/examples/jsm/utils/BufferGeometryUtils.js +116 -1
- package/dist/esm/src/analysis/analysis.js +536 -1
- package/dist/esm/src/analysis/testing.js +954 -1
- package/dist/esm/src/core/centralPlant.js +1144 -1
- package/dist/esm/src/core/debugLogger.js +167 -1
- package/dist/esm/src/core/mathUtils.js +570 -1
- package/dist/esm/src/core/nameUtils.js +87 -1
- package/dist/esm/src/data/export.js +712 -1
- package/dist/esm/src/data/import.js +356 -1
- package/dist/esm/src/data/numerics.js +518 -1
- package/dist/esm/src/helpers/sceneHelper.js +547 -1
- package/dist/esm/src/index.js +35 -1
- package/dist/esm/src/managers/components/animationManager.js +119 -1
- package/dist/esm/src/managers/components/componentManager.js +328 -1
- package/dist/esm/src/managers/components/pathfindingManager.js +1417 -1
- package/dist/esm/src/managers/controls/TransformControls.js +1057 -1
- package/dist/esm/src/managers/controls/cameraControlsManager.js +75 -1
- package/dist/esm/src/managers/controls/dragDropManager.js +1002 -1
- package/dist/esm/src/managers/controls/keyboardControlsManager.js +371 -1
- package/dist/esm/src/managers/controls/transformControlsManager.js +1782 -1
- package/dist/esm/src/managers/environment/environmentManager.js +690 -1
- package/dist/esm/src/managers/environment/textureConfig.js +202 -1
- package/dist/esm/src/managers/scene/sceneExportManager.js +260 -1
- package/dist/esm/src/managers/scene/sceneInitializationManager.js +322 -1
- package/dist/esm/src/managers/scene/sceneOperationsManager.js +1485 -1
- package/dist/esm/src/managers/scene/sceneTooltipsManager.js +637 -1
- package/dist/esm/src/managers/system/disposalManager.js +440 -1
- package/dist/esm/src/managers/system/hotReloadManager.js +287 -1
- package/dist/esm/src/managers/system/performanceMonitor.js +858 -1
- package/dist/esm/src/rendering/modelPreloader.js +364 -1
- package/dist/esm/src/rendering/rendering2D.js +627 -1
- package/dist/esm/src/rendering/rendering3D.js +661 -1
- package/package.json +1 -1
|
@@ -1 +1,291 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var _rollupPluginBabelHelpers = require('../../../_virtual/_rollupPluginBabelHelpers.js');
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Hot-Reload Manager Class
|
|
9
|
+
* Handles development environment hot-reload detection and cleanup
|
|
10
|
+
*/
|
|
11
|
+
var HotReloadManager = /*#__PURE__*/function () {
|
|
12
|
+
function HotReloadManager(sceneViewer) {
|
|
13
|
+
_rollupPluginBabelHelpers.classCallCheck(this, HotReloadManager);
|
|
14
|
+
// Safety check to ensure sceneViewer is defined
|
|
15
|
+
if (!sceneViewer) {
|
|
16
|
+
console.warn('โ ๏ธ HotReloadManager initialized with undefined scene viewer');
|
|
17
|
+
this.sceneViewer = null;
|
|
18
|
+
} else {
|
|
19
|
+
this.sceneViewer = sceneViewer;
|
|
20
|
+
|
|
21
|
+
// Note: The reference to this manager will be set via CentralPlant.attachToComponent()
|
|
22
|
+
// No need to set it directly here
|
|
23
|
+
}
|
|
24
|
+
this.isDev = process.env.NODE_ENV === 'development';
|
|
25
|
+
this.instanceId = Date.now() + Math.random();
|
|
26
|
+
|
|
27
|
+
// Event handlers
|
|
28
|
+
this.hotReloadCleanupHandler = null;
|
|
29
|
+
this.visibilityChangeHandler = null;
|
|
30
|
+
this.nuxtHotReloadHandler = null;
|
|
31
|
+
this.memoryCheckInterval = null;
|
|
32
|
+
|
|
33
|
+
// Async operation tracking
|
|
34
|
+
this.timeoutIds = new Set();
|
|
35
|
+
this.intervalIds = new Set();
|
|
36
|
+
console.log("\uD83D\uDD27 HotReloadManager initialized (ID: ".concat(this.instanceId.toString().slice(-8), ")"));
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* Setup hot-reload handling for development environment
|
|
41
|
+
*/
|
|
42
|
+
return _rollupPluginBabelHelpers.createClass(HotReloadManager, [{
|
|
43
|
+
key: "setupHotReloadHandling",
|
|
44
|
+
value: function setupHotReloadHandling() {
|
|
45
|
+
var _this = this;
|
|
46
|
+
console.log('๐ง setupHotReloadHandling method called successfully!');
|
|
47
|
+
|
|
48
|
+
// Safety check for component availability
|
|
49
|
+
if (!this.sceneViewer) {
|
|
50
|
+
console.warn('โ ๏ธ Cannot setup hot-reload handling: component is undefined');
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
if (!this.isDev) {
|
|
54
|
+
console.log('Not in development mode, skipping hot-reload setup');
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
console.log('Setting up hot-reload handling...');
|
|
58
|
+
|
|
59
|
+
// Initialize global instance tracking
|
|
60
|
+
if (!window._sceneViewerInstances) {
|
|
61
|
+
window._sceneViewerInstances = new Set();
|
|
62
|
+
console.log('๐ง [Hot-Reload] Initialized global instance tracking');
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// Add this instance to global tracking
|
|
66
|
+
try {
|
|
67
|
+
window._sceneViewerInstances.add(this.sceneViewer);
|
|
68
|
+
console.log('๐ [Hot-Reload] Instance registered:', {
|
|
69
|
+
instanceId: this.instanceId,
|
|
70
|
+
totalInstances: window._sceneViewerInstances.size
|
|
71
|
+
});
|
|
72
|
+
} catch (e) {
|
|
73
|
+
console.error('Error adding component to instance tracking:', e);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
// Enhanced beforeunload handler for development
|
|
77
|
+
this.hotReloadCleanupHandler = function () {
|
|
78
|
+
console.log('๐ [Hot-Reload] Page unload detected, performing enhanced cleanup');
|
|
79
|
+
|
|
80
|
+
// Safety check for component
|
|
81
|
+
if (!_this.sceneViewer) {
|
|
82
|
+
console.warn('โ ๏ธ Cannot perform cleanup: component is undefined');
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// Disable tooltipsManager before disposal to prevent errors
|
|
87
|
+
if (_this.sceneViewer && _this.sceneViewer.tooltipsManager) {
|
|
88
|
+
try {
|
|
89
|
+
console.log('๐ง [Hot-Reload] Disabling tooltipsManager');
|
|
90
|
+
_this.sceneViewer.tooltipsManager.dispose();
|
|
91
|
+
_this.sceneViewer.tooltipsManager = null;
|
|
92
|
+
} catch (e) {
|
|
93
|
+
console.error('Error disabling tooltipsManager:', e);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
try {
|
|
97
|
+
// Check if enhancedDisposal method exists before calling
|
|
98
|
+
if (typeof _this.sceneViewer.enhancedDisposal === 'function') {
|
|
99
|
+
_this.sceneViewer.enhancedDisposal();
|
|
100
|
+
} else {
|
|
101
|
+
console.warn('โ ๏ธ enhancedDisposal method not found on component');
|
|
102
|
+
}
|
|
103
|
+
} catch (e) {
|
|
104
|
+
console.error('Error during enhancedDisposal:', e);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
// Global cleanup of performance monitor UI elements during hot-reload
|
|
108
|
+
try {
|
|
109
|
+
// Import PerformanceUI dynamically to avoid circular imports
|
|
110
|
+
Promise.resolve().then(function () { return require('./performanceMonitor.js'); }).then(function (_ref) {
|
|
111
|
+
var PerformanceUI = _ref.PerformanceUI;
|
|
112
|
+
if (PerformanceUI && typeof PerformanceUI.cleanupAllInstances === 'function') {
|
|
113
|
+
PerformanceUI.cleanupAllInstances();
|
|
114
|
+
}
|
|
115
|
+
}).catch(function (e) {
|
|
116
|
+
console.warn('โ ๏ธ Could not perform global performance monitor cleanup:', e);
|
|
117
|
+
});
|
|
118
|
+
} catch (e) {
|
|
119
|
+
console.error('Error during global performance monitor cleanup:', e);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
// Remove from tracking
|
|
123
|
+
if (window._sceneViewerInstances) {
|
|
124
|
+
try {
|
|
125
|
+
window._sceneViewerInstances.delete(_this.sceneViewer);
|
|
126
|
+
} catch (e) {
|
|
127
|
+
console.error('Error removing component from instance tracking:', e);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
};
|
|
131
|
+
|
|
132
|
+
// Add event listeners
|
|
133
|
+
try {
|
|
134
|
+
window.addEventListener('beforeunload', this.hotReloadCleanupHandler);
|
|
135
|
+
window.addEventListener('pagehide', this.hotReloadCleanupHandler);
|
|
136
|
+
} catch (e) {
|
|
137
|
+
console.error('Error adding event listeners for hot reload:', e);
|
|
138
|
+
}
|
|
139
|
+
console.log('โ
[Hot-Reload] Hot-reload handling setup completed');
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Cleanup hot-reload handlers (development only)
|
|
144
|
+
*/
|
|
145
|
+
}, {
|
|
146
|
+
key: "cleanupHotReloadHandlers",
|
|
147
|
+
value: function cleanupHotReloadHandlers() {
|
|
148
|
+
console.log("\uD83E\uDDF9 Cleaning up hot-reload handlers (Manager ID: ".concat(this.instanceId.toString().slice(-8), ")"));
|
|
149
|
+
if (!this.isDev) return;
|
|
150
|
+
try {
|
|
151
|
+
// Remove event listeners
|
|
152
|
+
if (this.hotReloadCleanupHandler) {
|
|
153
|
+
window.removeEventListener('beforeunload', this.hotReloadCleanupHandler);
|
|
154
|
+
window.removeEventListener('pagehide', this.hotReloadCleanupHandler);
|
|
155
|
+
this.hotReloadCleanupHandler = null;
|
|
156
|
+
}
|
|
157
|
+
if (this.visibilityChangeHandler) {
|
|
158
|
+
document.removeEventListener('visibilitychange', this.visibilityChangeHandler);
|
|
159
|
+
this.visibilityChangeHandler = null;
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
// Remove Nuxt hot-reload handlers
|
|
163
|
+
if (this.nuxtHotReloadHandler && window.$nuxt && window.$nuxt.$off) {
|
|
164
|
+
window.$nuxt.$off('routeChanged', this.nuxtHotReloadHandler);
|
|
165
|
+
window.$nuxt.$off('$nuxtReady', this.nuxtHotReloadHandler);
|
|
166
|
+
this.nuxtHotReloadHandler = null;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
// Clear memory monitoring interval
|
|
170
|
+
if (this.memoryCheckInterval) {
|
|
171
|
+
clearInterval(this.memoryCheckInterval);
|
|
172
|
+
this.memoryCheckInterval = null;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
// Remove reference to component in this manager
|
|
176
|
+
var hadComponent = !!this.sceneViewer;
|
|
177
|
+
|
|
178
|
+
// Remove from global instance tracking (safely)
|
|
179
|
+
if (window._sceneViewerInstances && this.sceneViewer) {
|
|
180
|
+
try {
|
|
181
|
+
window._sceneViewerInstances.delete(this.sceneViewer);
|
|
182
|
+
console.log('๐ [Hot-Reload] Instance removed from tracking:', {
|
|
183
|
+
instanceId: this.instanceId
|
|
184
|
+
});
|
|
185
|
+
} catch (e) {
|
|
186
|
+
console.error('Error removing component from tracking:', e);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
// Clear component reference after using it
|
|
191
|
+
this.sceneViewer = null;
|
|
192
|
+
if (hadComponent) {
|
|
193
|
+
console.log('โ
Component reference cleared from hot-reload manager');
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
// Clean up global tracking if no instances remain
|
|
197
|
+
if (window._sceneViewerInstances && window._sceneViewerInstances.size === 0) {
|
|
198
|
+
delete window._sceneViewerInstances;
|
|
199
|
+
console.log('๐งน [Hot-Reload] Global instance tracking cleaned up');
|
|
200
|
+
}
|
|
201
|
+
} catch (e) {
|
|
202
|
+
console.error('Error during hot-reload handler cleanup:', e);
|
|
203
|
+
}
|
|
204
|
+
console.log('โ
[Hot-Reload] Hot-reload handlers cleanup completed');
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
/**
|
|
208
|
+
* Clear any pending timeouts, intervals, or async operations
|
|
209
|
+
*/
|
|
210
|
+
}, {
|
|
211
|
+
key: "clearPendingOperations",
|
|
212
|
+
value: function clearPendingOperations() {
|
|
213
|
+
// Clear any stored timeout/interval IDs
|
|
214
|
+
if (this.timeoutIds) {
|
|
215
|
+
this.timeoutIds.forEach(function (id) {
|
|
216
|
+
return clearTimeout(id);
|
|
217
|
+
});
|
|
218
|
+
this.timeoutIds.clear();
|
|
219
|
+
}
|
|
220
|
+
if (this.intervalIds) {
|
|
221
|
+
this.intervalIds.forEach(function (id) {
|
|
222
|
+
return clearInterval(id);
|
|
223
|
+
});
|
|
224
|
+
this.intervalIds.clear();
|
|
225
|
+
}
|
|
226
|
+
if (this.isDev) {
|
|
227
|
+
console.log('โฐ [Hot-Reload] Cleared pending operations');
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
/**
|
|
232
|
+
* Force garbage collection hint (development only)
|
|
233
|
+
*/
|
|
234
|
+
}, {
|
|
235
|
+
key: "forceGarbageCollectionHint",
|
|
236
|
+
value: function forceGarbageCollectionHint() {
|
|
237
|
+
if (this.isDev) {
|
|
238
|
+
// Multiple strategies to encourage garbage collection
|
|
239
|
+
setTimeout(function () {
|
|
240
|
+
if (window.gc) {
|
|
241
|
+
window.gc();
|
|
242
|
+
console.log('๐๏ธ [Hot-Reload] Manual garbage collection triggered');
|
|
243
|
+
} else {
|
|
244
|
+
// Force garbage collection through memory pressure
|
|
245
|
+
var dummy = new Array(1000000).fill(0);
|
|
246
|
+
dummy.length = 0;
|
|
247
|
+
console.log('๐๏ธ [Hot-Reload] Memory pressure GC hint applied');
|
|
248
|
+
}
|
|
249
|
+
}, 100);
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
/**
|
|
254
|
+
* Add timeout ID for tracking
|
|
255
|
+
*/
|
|
256
|
+
}, {
|
|
257
|
+
key: "addTimeout",
|
|
258
|
+
value: function addTimeout(id) {
|
|
259
|
+
this.timeoutIds.add(id);
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
/**
|
|
263
|
+
* Add interval ID for tracking
|
|
264
|
+
*/
|
|
265
|
+
}, {
|
|
266
|
+
key: "addInterval",
|
|
267
|
+
value: function addInterval(id) {
|
|
268
|
+
this.intervalIds.add(id);
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
/**
|
|
272
|
+
* Remove timeout ID from tracking
|
|
273
|
+
*/
|
|
274
|
+
}, {
|
|
275
|
+
key: "removeTimeout",
|
|
276
|
+
value: function removeTimeout(id) {
|
|
277
|
+
this.timeoutIds.delete(id);
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
/**
|
|
281
|
+
* Remove interval ID from tracking
|
|
282
|
+
*/
|
|
283
|
+
}, {
|
|
284
|
+
key: "removeInterval",
|
|
285
|
+
value: function removeInterval(id) {
|
|
286
|
+
this.intervalIds.delete(id);
|
|
287
|
+
}
|
|
288
|
+
}]);
|
|
289
|
+
}();
|
|
290
|
+
|
|
291
|
+
exports.HotReloadManager = HotReloadManager;
|