@2112-lab/central-plant 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -0
- package/dist/bundle/index.js +14259 -0
- package/dist/cjs/_virtual/_rollupPluginBabelHelpers.js +353 -0
- package/dist/cjs/node_modules/three/examples/jsm/controls/OrbitControls.js +1292 -0
- package/dist/cjs/node_modules/three/examples/jsm/controls/TransformControls.js +1543 -0
- package/dist/cjs/node_modules/three/examples/jsm/loaders/GLTFLoader.js +4374 -0
- package/dist/cjs/node_modules/three/examples/jsm/loaders/RGBELoader.js +465 -0
- package/dist/cjs/node_modules/three/examples/jsm/utils/BufferGeometryUtils.js +117 -0
- package/dist/cjs/src/ConnectionManager.js +114 -0
- package/dist/cjs/src/Pathfinder.js +88 -0
- package/dist/cjs/src/animationManager.js +121 -0
- package/dist/cjs/src/componentManager.js +151 -0
- package/dist/cjs/src/debugLogger.js +176 -0
- package/dist/cjs/src/disposalManager.js +185 -0
- package/dist/cjs/src/environmentManager.js +1015 -0
- package/dist/cjs/src/hotReloadManager.js +252 -0
- package/dist/cjs/src/index.js +126 -0
- package/dist/cjs/src/keyboardControlsManager.js +206 -0
- package/dist/cjs/src/modelPreloader.js +360 -0
- package/dist/cjs/src/nameUtils.js +106 -0
- package/dist/cjs/src/pathfindingManager.js +321 -0
- package/dist/cjs/src/performanceMonitor.js +718 -0
- package/dist/cjs/src/sceneExportManager.js +292 -0
- package/dist/cjs/src/sceneInitializationManager.js +540 -0
- package/dist/cjs/src/sceneOperationsManager.js +560 -0
- package/dist/cjs/src/textureConfig.js +195 -0
- package/dist/cjs/src/transformControlsManager.js +851 -0
- package/dist/esm/_virtual/_rollupPluginBabelHelpers.js +328 -0
- package/dist/esm/node_modules/three/examples/jsm/controls/OrbitControls.js +1287 -0
- package/dist/esm/node_modules/three/examples/jsm/controls/TransformControls.js +1537 -0
- package/dist/esm/node_modules/three/examples/jsm/loaders/GLTFLoader.js +4370 -0
- package/dist/esm/node_modules/three/examples/jsm/loaders/RGBELoader.js +461 -0
- package/dist/esm/node_modules/three/examples/jsm/utils/BufferGeometryUtils.js +113 -0
- package/dist/esm/src/ConnectionManager.js +110 -0
- package/dist/esm/src/Pathfinder.js +84 -0
- package/dist/esm/src/animationManager.js +112 -0
- package/dist/esm/src/componentManager.js +123 -0
- package/dist/esm/src/debugLogger.js +167 -0
- package/dist/esm/src/disposalManager.js +155 -0
- package/dist/esm/src/environmentManager.js +989 -0
- package/dist/esm/src/hotReloadManager.js +244 -0
- package/dist/esm/src/index.js +117 -0
- package/dist/esm/src/keyboardControlsManager.js +196 -0
- package/dist/esm/src/modelPreloader.js +337 -0
- package/dist/esm/src/nameUtils.js +99 -0
- package/dist/esm/src/pathfindingManager.js +295 -0
- package/dist/esm/src/performanceMonitor.js +712 -0
- package/dist/esm/src/sceneExportManager.js +286 -0
- package/dist/esm/src/sceneInitializationManager.js +513 -0
- package/dist/esm/src/sceneOperationsManager.js +536 -0
- package/dist/esm/src/textureConfig.js +168 -0
- package/dist/esm/src/transformControlsManager.js +827 -0
- package/dist/index.d.ts +259 -0
- package/package.json +53 -0
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var _rollupPluginBabelHelpers = require('../_virtual/_rollupPluginBabelHelpers.js');
|
|
6
|
+
var THREE = require('three');
|
|
7
|
+
var debugLogger = require('./debugLogger.js');
|
|
8
|
+
|
|
9
|
+
function _interopNamespace(e) {
|
|
10
|
+
if (e && e.__esModule) return e;
|
|
11
|
+
var n = Object.create(null);
|
|
12
|
+
if (e) {
|
|
13
|
+
Object.keys(e).forEach(function (k) {
|
|
14
|
+
if (k !== 'default') {
|
|
15
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
16
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
get: function () { return e[k]; }
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
n["default"] = e;
|
|
24
|
+
return Object.freeze(n);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
var THREE__namespace = /*#__PURE__*/_interopNamespace(THREE);
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Dispose a Three.js object including geometry, material, and textures
|
|
31
|
+
*/
|
|
32
|
+
function disposeObject(object) {
|
|
33
|
+
if (!object) return;
|
|
34
|
+
|
|
35
|
+
// Dispose geometry
|
|
36
|
+
if (object.geometry) {
|
|
37
|
+
object.geometry.dispose();
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// Dispose material(s)
|
|
41
|
+
if (object.material) {
|
|
42
|
+
if (Array.isArray(object.material)) {
|
|
43
|
+
object.material.forEach(function (material) {
|
|
44
|
+
return disposeMaterial(material);
|
|
45
|
+
});
|
|
46
|
+
} else {
|
|
47
|
+
disposeMaterial(object.material);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
// Dispose any children
|
|
52
|
+
if (object.children && object.children.length > 0) {
|
|
53
|
+
// Work with a copy of the children array to avoid issues during iteration
|
|
54
|
+
var children = _rollupPluginBabelHelpers.toConsumableArray(object.children);
|
|
55
|
+
children.forEach(function (child) {
|
|
56
|
+
return disposeObject(child);
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Dispose a Three.js material and its textures
|
|
63
|
+
*/
|
|
64
|
+
function disposeMaterial(material) {
|
|
65
|
+
if (!material) return;
|
|
66
|
+
|
|
67
|
+
// Dispose textures
|
|
68
|
+
Object.keys(material).forEach(function (key) {
|
|
69
|
+
var value = material[key];
|
|
70
|
+
if (value && value instanceof THREE__namespace.Texture) {
|
|
71
|
+
value.dispose();
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
// Dispose the material itself
|
|
76
|
+
material.dispose();
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Clean up a Three.js scene
|
|
81
|
+
*/
|
|
82
|
+
function cleanupScene(scene) {
|
|
83
|
+
if (!scene) {
|
|
84
|
+
debugLogger.logger.warn('Cannot cleanup: scene not provided');
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
// Dispose all objects in the scene
|
|
89
|
+
while (scene.children.length > 0) {
|
|
90
|
+
var object = scene.children[0];
|
|
91
|
+
scene.remove(object);
|
|
92
|
+
disposeObject(object);
|
|
93
|
+
}
|
|
94
|
+
debugLogger.logger.info('Scene cleared and disposed');
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Clean up a Three.js renderer
|
|
99
|
+
*/
|
|
100
|
+
function cleanupRenderer(renderer) {
|
|
101
|
+
if (!renderer) {
|
|
102
|
+
debugLogger.logger.warn('Cannot cleanup: renderer not provided');
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
renderer.dispose();
|
|
106
|
+
|
|
107
|
+
// Remove from DOM if possible
|
|
108
|
+
var canvas = renderer.domElement;
|
|
109
|
+
if (canvas && canvas.parentNode) {
|
|
110
|
+
canvas.parentNode.removeChild(canvas);
|
|
111
|
+
}
|
|
112
|
+
debugLogger.logger.info('Renderer disposed');
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* Clean up Nuxt-specific event listeners
|
|
117
|
+
*/
|
|
118
|
+
function cleanupNuxtEventListeners() {
|
|
119
|
+
if (typeof window === 'undefined' || !window.$nuxt) {
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
// Clean up any registered event listeners
|
|
124
|
+
if (window.$nuxt.$off) {
|
|
125
|
+
// This is a simple placeholder - actual implementation would need to track
|
|
126
|
+
// specific listeners that were registered
|
|
127
|
+
debugLogger.logger.info('Nuxt event listeners cleaned up');
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* Comprehensive cleanup of Three.js resources
|
|
133
|
+
*/
|
|
134
|
+
function cleanupThreeJsResources(component) {
|
|
135
|
+
if (!component) return;
|
|
136
|
+
|
|
137
|
+
// Stop animation if it's running
|
|
138
|
+
if (component.stopAnimation) {
|
|
139
|
+
component.stopAnimation();
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
// Clean up controls
|
|
143
|
+
if (component.controls) {
|
|
144
|
+
if (component.controls.dispose) {
|
|
145
|
+
component.controls.dispose();
|
|
146
|
+
}
|
|
147
|
+
component.controls = null;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
// Clean up scene
|
|
151
|
+
if (component.scene) {
|
|
152
|
+
cleanupScene(component.scene);
|
|
153
|
+
component.scene = null;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
// Clean up renderer
|
|
157
|
+
if (component.renderer) {
|
|
158
|
+
cleanupRenderer(component.renderer);
|
|
159
|
+
component.renderer = null;
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
// Clean up camera
|
|
163
|
+
component.camera = null;
|
|
164
|
+
|
|
165
|
+
// Cleanup other resources
|
|
166
|
+
component.textureLoader = null;
|
|
167
|
+
component.gltfLoader = null;
|
|
168
|
+
debugLogger.logger.info('All Three.js resources cleaned up');
|
|
169
|
+
}
|
|
170
|
+
var disposalManager = {
|
|
171
|
+
disposeObject: disposeObject,
|
|
172
|
+
disposeMaterial: disposeMaterial,
|
|
173
|
+
cleanupScene: cleanupScene,
|
|
174
|
+
cleanupRenderer: cleanupRenderer,
|
|
175
|
+
cleanupNuxtEventListeners: cleanupNuxtEventListeners,
|
|
176
|
+
cleanupThreeJsResources: cleanupThreeJsResources
|
|
177
|
+
};
|
|
178
|
+
|
|
179
|
+
exports.cleanupNuxtEventListeners = cleanupNuxtEventListeners;
|
|
180
|
+
exports.cleanupRenderer = cleanupRenderer;
|
|
181
|
+
exports.cleanupScene = cleanupScene;
|
|
182
|
+
exports.cleanupThreeJsResources = cleanupThreeJsResources;
|
|
183
|
+
exports["default"] = disposalManager;
|
|
184
|
+
exports.disposeMaterial = disposeMaterial;
|
|
185
|
+
exports.disposeObject = disposeObject;
|