@2112-lab/central-plant 0.1.1 → 0.1.3
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/bundle/index.js +1 -15140
- package/dist/cjs/_virtual/_rollupPluginBabelHelpers.js +1 -353
- package/dist/cjs/node_modules/@2112-lab/pathfinder/dist/index.esm.js +1 -0
- package/dist/cjs/node_modules/three/examples/jsm/controls/OrbitControls.js +1 -1292
- package/dist/cjs/node_modules/three/examples/jsm/controls/TransformControls.js +1 -1543
- package/dist/cjs/node_modules/three/examples/jsm/loaders/GLTFLoader.js +1 -4374
- package/dist/cjs/node_modules/three/examples/jsm/loaders/RGBELoader.js +1 -465
- package/dist/cjs/node_modules/three/examples/jsm/utils/BufferGeometryUtils.js +1 -117
- package/dist/cjs/src/animationManager.js +1 -121
- package/dist/cjs/src/componentManager.js +1 -151
- package/dist/cjs/src/debugLogger.js +1 -176
- package/dist/cjs/src/disposalManager.js +1 -185
- package/dist/cjs/src/environmentManager.js +1 -1308
- package/dist/cjs/src/hotReloadManager.js +1 -252
- package/dist/cjs/src/index.js +1 -128
- package/dist/cjs/src/keyboardControlsManager.js +1 -206
- package/dist/cjs/src/nameUtils.js +1 -106
- package/dist/cjs/src/pathfindingManager.js +1 -321
- package/dist/cjs/src/performanceMonitor.js +1 -718
- package/dist/cjs/src/sceneExportManager.js +1 -292
- package/dist/cjs/src/sceneInitializationManager.js +1 -540
- package/dist/cjs/src/textureConfig.js +1 -624
- package/dist/cjs/src/transformControlsManager.js +1 -851
- package/dist/esm/_virtual/_rollupPluginBabelHelpers.js +1 -328
- package/dist/esm/node_modules/@2112-lab/pathfinder/dist/index.esm.js +1 -0
- package/dist/esm/node_modules/three/examples/jsm/controls/OrbitControls.js +1 -1287
- package/dist/esm/node_modules/three/examples/jsm/controls/TransformControls.js +1 -1537
- package/dist/esm/node_modules/three/examples/jsm/loaders/GLTFLoader.js +1 -4370
- package/dist/esm/node_modules/three/examples/jsm/loaders/RGBELoader.js +1 -461
- package/dist/esm/node_modules/three/examples/jsm/utils/BufferGeometryUtils.js +1 -113
- package/dist/esm/src/animationManager.js +1 -112
- package/dist/esm/src/componentManager.js +1 -123
- package/dist/esm/src/debugLogger.js +1 -167
- package/dist/esm/src/disposalManager.js +1 -155
- package/dist/esm/src/environmentManager.js +1 -1282
- package/dist/esm/src/hotReloadManager.js +1 -244
- package/dist/esm/src/index.js +1 -118
- package/dist/esm/src/keyboardControlsManager.js +1 -196
- package/dist/esm/src/nameUtils.js +1 -99
- package/dist/esm/src/pathfindingManager.js +1 -295
- package/dist/esm/src/performanceMonitor.js +1 -712
- package/dist/esm/src/sceneExportManager.js +1 -286
- package/dist/esm/src/sceneInitializationManager.js +1 -513
- package/dist/esm/src/textureConfig.js +1 -595
- package/dist/esm/src/transformControlsManager.js +1 -827
- package/dist/index.d.ts +0 -4
- package/package.json +1 -1
- package/dist/cjs/src/ConnectionManager.js +0 -114
- package/dist/cjs/src/Pathfinder.js +0 -88
- package/dist/cjs/src/modelPreloader.js +0 -488
- package/dist/cjs/src/sceneOperationsManager.js +0 -596
- package/dist/esm/src/ConnectionManager.js +0 -110
- package/dist/esm/src/Pathfinder.js +0 -84
- package/dist/esm/src/modelPreloader.js +0 -464
- package/dist/esm/src/sceneOperationsManager.js +0 -572
|
@@ -1,151 +1 @@
|
|
|
1
|
-
|
|
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
|
-
* Load a component from data
|
|
31
|
-
*/
|
|
32
|
-
function loadComponent(_x) {
|
|
33
|
-
return _loadComponent.apply(this, arguments);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
/**
|
|
37
|
-
* Place a component in the scene
|
|
38
|
-
*/
|
|
39
|
-
function _loadComponent() {
|
|
40
|
-
_loadComponent = _rollupPluginBabelHelpers.asyncToGenerator(/*#__PURE__*/_rollupPluginBabelHelpers.regenerator().m(function _callee(componentData) {
|
|
41
|
-
var component;
|
|
42
|
-
return _rollupPluginBabelHelpers.regenerator().w(function (_context) {
|
|
43
|
-
while (1) switch (_context.n) {
|
|
44
|
-
case 0:
|
|
45
|
-
debugLogger.logger.info("Loading component: ".concat(componentData.id || 'Unknown'));
|
|
46
|
-
|
|
47
|
-
// This is a stub implementation that will need to be expanded
|
|
48
|
-
component = {
|
|
49
|
-
id: componentData.id || 'unknown-component',
|
|
50
|
-
type: componentData.type || 'generic',
|
|
51
|
-
data: componentData,
|
|
52
|
-
object: new THREE__namespace.Group(),
|
|
53
|
-
position: componentData.position || {
|
|
54
|
-
x: 0,
|
|
55
|
-
y: 0,
|
|
56
|
-
z: 0
|
|
57
|
-
},
|
|
58
|
-
rotation: componentData.rotation || {
|
|
59
|
-
x: 0,
|
|
60
|
-
y: 0,
|
|
61
|
-
z: 0
|
|
62
|
-
},
|
|
63
|
-
scale: componentData.scale || {
|
|
64
|
-
x: 1,
|
|
65
|
-
y: 1,
|
|
66
|
-
z: 1
|
|
67
|
-
}
|
|
68
|
-
};
|
|
69
|
-
return _context.a(2, component);
|
|
70
|
-
}
|
|
71
|
-
}, _callee);
|
|
72
|
-
}));
|
|
73
|
-
return _loadComponent.apply(this, arguments);
|
|
74
|
-
}
|
|
75
|
-
function placeComponent(component, position, rotation, scene) {
|
|
76
|
-
if (!component || !component.object) {
|
|
77
|
-
debugLogger.logger.error('Cannot place component: invalid component object');
|
|
78
|
-
return null;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
// Set position
|
|
82
|
-
if (position) {
|
|
83
|
-
component.object.position.set(position.x || 0, position.y || 0, position.z || 0);
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
// Set rotation
|
|
87
|
-
if (rotation) {
|
|
88
|
-
component.object.rotation.set(rotation.x || 0, rotation.y || 0, rotation.z || 0);
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
// Add to scene if provided
|
|
92
|
-
if (scene && scene.add) {
|
|
93
|
-
scene.add(component.object);
|
|
94
|
-
}
|
|
95
|
-
return component;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
/**
|
|
99
|
-
* Remove a component from the scene
|
|
100
|
-
*/
|
|
101
|
-
function removeComponent(componentId, scene) {
|
|
102
|
-
if (!scene) {
|
|
103
|
-
debugLogger.logger.error('Cannot remove component: scene not provided');
|
|
104
|
-
return false;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
// Find the component by ID
|
|
108
|
-
var componentObject = null;
|
|
109
|
-
scene.traverse(function (object) {
|
|
110
|
-
if (object.userData && object.userData.id === componentId) {
|
|
111
|
-
componentObject = object;
|
|
112
|
-
}
|
|
113
|
-
});
|
|
114
|
-
if (componentObject && componentObject.parent) {
|
|
115
|
-
componentObject.parent.remove(componentObject);
|
|
116
|
-
debugLogger.logger.info("Component removed: ".concat(componentId));
|
|
117
|
-
return true;
|
|
118
|
-
} else {
|
|
119
|
-
debugLogger.logger.warn("Component not found: ".concat(componentId));
|
|
120
|
-
return false;
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
/**
|
|
125
|
-
* Get a component by ID
|
|
126
|
-
*/
|
|
127
|
-
function getComponentById(id, scene) {
|
|
128
|
-
if (!scene) {
|
|
129
|
-
debugLogger.logger.error('Cannot get component: scene not provided');
|
|
130
|
-
return null;
|
|
131
|
-
}
|
|
132
|
-
var component = null;
|
|
133
|
-
scene.traverse(function (object) {
|
|
134
|
-
if (object.userData && object.userData.id === id) {
|
|
135
|
-
component = object;
|
|
136
|
-
}
|
|
137
|
-
});
|
|
138
|
-
return component;
|
|
139
|
-
}
|
|
140
|
-
var componentManager = {
|
|
141
|
-
loadComponent: loadComponent,
|
|
142
|
-
placeComponent: placeComponent,
|
|
143
|
-
removeComponent: removeComponent,
|
|
144
|
-
getComponentById: getComponentById
|
|
145
|
-
};
|
|
146
|
-
|
|
147
|
-
exports["default"] = componentManager;
|
|
148
|
-
exports.getComponentById = getComponentById;
|
|
149
|
-
exports.loadComponent = loadComponent;
|
|
150
|
-
exports.placeComponent = placeComponent;
|
|
151
|
-
exports.removeComponent = removeComponent;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"t",{value:!0});var n=require("../_virtual/_rollupPluginBabelHelpers.js"),e=require("three"),t=require("./debugLogger.js");function o(n){if(n&&n.t)return n;var e=Object.create(null);return n&&Object.keys(n).forEach(function(t){if("default"!==t){var o=Object.getOwnPropertyDescriptor(n,t);Object.defineProperty(e,t,o.get?o:{enumerable:!0,get:function(){return n[t]}})}}),e.default=n,Object.freeze(e)}var r=o(e);function u(n){return i.apply(this,arguments)}function i(){return(i=n.asyncToGenerator(n.regenerator().m(function e(o){var u;return n.regenerator().w(function(n){for(;;)if(0===n.n)return t.logger.info("Loading component: ".concat(o.id||"Unknown")),u={id:o.id||"unknown-component",type:o.type||"generic",data:o,object:new r.Group,position:o.position||{x:0,y:0,z:0},rotation:o.rotation||{x:0,y:0,z:0},scale:o.scale||{x:1,y:1,z:1}},n.a(2,u)},e)}))).apply(this,arguments)}function c(n,e,o,r){return n&&n.object?(e&&n.object.position.set(e.x||0,e.y||0,e.z||0),o&&n.object.rotation.set(o.x||0,o.y||0,o.z||0),r&&r.add&&r.add(n.object),n):(t.logger.error("Cannot place component: invalid component object"),null)}function p(n,e){if(!e)return t.logger.error("Cannot remove component: scene not provided"),!1;var o=null;return e.traverse(function(e){e.userData&&e.userData.id===n&&(o=e)}),o&&o.parent?(o.parent.remove(o),t.logger.info("Component removed: ".concat(n)),!0):(t.logger.warn("Component not found: ".concat(n)),!1)}function a(n,e){if(!e)return t.logger.error("Cannot get component: scene not provided"),null;var o=null;return e.traverse(function(e){e.userData&&e.userData.id===n&&(o=e)}),o}var l={loadComponent:u,placeComponent:c,removeComponent:p,getComponentById:a};exports.default=l,exports.getComponentById=a,exports.loadComponent=u,exports.placeComponent=c,exports.removeComponent=p;
|
|
@@ -1,176 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var _rollupPluginBabelHelpers = require('../_virtual/_rollupPluginBabelHelpers.js');
|
|
6
|
-
|
|
7
|
-
// Debug logging utility to reduce excessive console statements
|
|
8
|
-
// Provides conditional logging based on environment and debug levels
|
|
9
|
-
|
|
10
|
-
var DebugLogger = /*#__PURE__*/function () {
|
|
11
|
-
function DebugLogger() {
|
|
12
|
-
var namespace = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'SceneViewer';
|
|
13
|
-
var debugLevel = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'info';
|
|
14
|
-
_rollupPluginBabelHelpers.classCallCheck(this, DebugLogger);
|
|
15
|
-
this.namespace = namespace;
|
|
16
|
-
this.debugLevel = debugLevel;
|
|
17
|
-
this.isProduction = typeof process !== 'undefined' && process.env.NODE_ENV === 'production';
|
|
18
|
-
this.enabled = !this.isProduction;
|
|
19
|
-
|
|
20
|
-
// Debug levels: 'error', 'warn', 'info', 'debug', 'verbose'
|
|
21
|
-
this.levels = {
|
|
22
|
-
error: 0,
|
|
23
|
-
warn: 1,
|
|
24
|
-
info: 2,
|
|
25
|
-
debug: 3,
|
|
26
|
-
verbose: 4
|
|
27
|
-
};
|
|
28
|
-
this.currentLevel = this.levels[debugLevel] || this.levels.info;
|
|
29
|
-
}
|
|
30
|
-
return _rollupPluginBabelHelpers.createClass(DebugLogger, [{
|
|
31
|
-
key: "setLevel",
|
|
32
|
-
value: function setLevel(level) {
|
|
33
|
-
this.currentLevel = this.levels[level] || this.levels.info;
|
|
34
|
-
return this;
|
|
35
|
-
}
|
|
36
|
-
}, {
|
|
37
|
-
key: "enable",
|
|
38
|
-
value: function enable() {
|
|
39
|
-
this.enabled = true;
|
|
40
|
-
return this;
|
|
41
|
-
}
|
|
42
|
-
}, {
|
|
43
|
-
key: "disable",
|
|
44
|
-
value: function disable() {
|
|
45
|
-
this.enabled = false;
|
|
46
|
-
return this;
|
|
47
|
-
}
|
|
48
|
-
}, {
|
|
49
|
-
key: "_shouldLog",
|
|
50
|
-
value: function _shouldLog(level) {
|
|
51
|
-
return this.enabled && this.levels[level] <= this.currentLevel;
|
|
52
|
-
}
|
|
53
|
-
}, {
|
|
54
|
-
key: "_formatMessage",
|
|
55
|
-
value: function _formatMessage(level, message) {
|
|
56
|
-
var prefix = "[".concat(this.namespace, ":").concat(level.toUpperCase(), "]");
|
|
57
|
-
for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
|
|
58
|
-
args[_key - 2] = arguments[_key];
|
|
59
|
-
}
|
|
60
|
-
return [prefix, message].concat(args);
|
|
61
|
-
}
|
|
62
|
-
}, {
|
|
63
|
-
key: "error",
|
|
64
|
-
value: function error(message) {
|
|
65
|
-
if (this._shouldLog('error')) {
|
|
66
|
-
var _console;
|
|
67
|
-
for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
|
|
68
|
-
args[_key2 - 1] = arguments[_key2];
|
|
69
|
-
}
|
|
70
|
-
(_console = console).error.apply(_console, _rollupPluginBabelHelpers.toConsumableArray(this._formatMessage.apply(this, ['error', message].concat(args))));
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
}, {
|
|
74
|
-
key: "warn",
|
|
75
|
-
value: function warn(message) {
|
|
76
|
-
if (this._shouldLog('warn')) {
|
|
77
|
-
var _console2;
|
|
78
|
-
for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
|
|
79
|
-
args[_key3 - 1] = arguments[_key3];
|
|
80
|
-
}
|
|
81
|
-
(_console2 = console).warn.apply(_console2, _rollupPluginBabelHelpers.toConsumableArray(this._formatMessage.apply(this, ['warn', message].concat(args))));
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
}, {
|
|
85
|
-
key: "info",
|
|
86
|
-
value: function info(message) {
|
|
87
|
-
if (this._shouldLog('info')) {
|
|
88
|
-
var _console3;
|
|
89
|
-
for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {
|
|
90
|
-
args[_key4 - 1] = arguments[_key4];
|
|
91
|
-
}
|
|
92
|
-
(_console3 = console).log.apply(_console3, _rollupPluginBabelHelpers.toConsumableArray(this._formatMessage.apply(this, ['info', message].concat(args))));
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
}, {
|
|
96
|
-
key: "debug",
|
|
97
|
-
value: function debug(message) {
|
|
98
|
-
if (this._shouldLog('debug')) {
|
|
99
|
-
var _console4;
|
|
100
|
-
for (var _len5 = arguments.length, args = new Array(_len5 > 1 ? _len5 - 1 : 0), _key5 = 1; _key5 < _len5; _key5++) {
|
|
101
|
-
args[_key5 - 1] = arguments[_key5];
|
|
102
|
-
}
|
|
103
|
-
(_console4 = console).debug.apply(_console4, _rollupPluginBabelHelpers.toConsumableArray(this._formatMessage.apply(this, ['debug', message].concat(args))));
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
}, {
|
|
107
|
-
key: "verbose",
|
|
108
|
-
value: function verbose(message) {
|
|
109
|
-
if (this._shouldLog('verbose')) {
|
|
110
|
-
var _console5;
|
|
111
|
-
for (var _len6 = arguments.length, args = new Array(_len6 > 1 ? _len6 - 1 : 0), _key6 = 1; _key6 < _len6; _key6++) {
|
|
112
|
-
args[_key6 - 1] = arguments[_key6];
|
|
113
|
-
}
|
|
114
|
-
(_console5 = console).debug.apply(_console5, _rollupPluginBabelHelpers.toConsumableArray(this._formatMessage.apply(this, ['verbose', message].concat(args))));
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
// Special methods for common patterns
|
|
119
|
-
}, {
|
|
120
|
-
key: "phase",
|
|
121
|
-
value: function phase(phaseNumber, message) {
|
|
122
|
-
for (var _len7 = arguments.length, args = new Array(_len7 > 2 ? _len7 - 2 : 0), _key7 = 2; _key7 < _len7; _key7++) {
|
|
123
|
-
args[_key7 - 2] = arguments[_key7];
|
|
124
|
-
}
|
|
125
|
-
this.info.apply(this, ["\uD83D\uDD0D PHASE ".concat(phaseNumber, ": ").concat(message)].concat(args));
|
|
126
|
-
}
|
|
127
|
-
}, {
|
|
128
|
-
key: "success",
|
|
129
|
-
value: function success(message) {
|
|
130
|
-
for (var _len8 = arguments.length, args = new Array(_len8 > 1 ? _len8 - 1 : 0), _key8 = 1; _key8 < _len8; _key8++) {
|
|
131
|
-
args[_key8 - 1] = arguments[_key8];
|
|
132
|
-
}
|
|
133
|
-
this.info.apply(this, ["\u2705 ".concat(message)].concat(args));
|
|
134
|
-
}
|
|
135
|
-
}, {
|
|
136
|
-
key: "failure",
|
|
137
|
-
value: function failure(message) {
|
|
138
|
-
for (var _len9 = arguments.length, args = new Array(_len9 > 1 ? _len9 - 1 : 0), _key9 = 1; _key9 < _len9; _key9++) {
|
|
139
|
-
args[_key9 - 1] = arguments[_key9];
|
|
140
|
-
}
|
|
141
|
-
this.error.apply(this, ["\u274C ".concat(message)].concat(args));
|
|
142
|
-
}
|
|
143
|
-
}, {
|
|
144
|
-
key: "loading",
|
|
145
|
-
value: function loading(message) {
|
|
146
|
-
for (var _len0 = arguments.length, args = new Array(_len0 > 1 ? _len0 - 1 : 0), _key0 = 1; _key0 < _len0; _key0++) {
|
|
147
|
-
args[_key0 - 1] = arguments[_key0];
|
|
148
|
-
}
|
|
149
|
-
this.debug.apply(this, ["\uD83D\uDD04 ".concat(message)].concat(args));
|
|
150
|
-
}
|
|
151
|
-
}, {
|
|
152
|
-
key: "timing",
|
|
153
|
-
value: function timing(message) {
|
|
154
|
-
for (var _len1 = arguments.length, args = new Array(_len1 > 1 ? _len1 - 1 : 0), _key1 = 1; _key1 < _len1; _key1++) {
|
|
155
|
-
args[_key1 - 1] = arguments[_key1];
|
|
156
|
-
}
|
|
157
|
-
this.debug.apply(this, ["\u23F1\uFE0F ".concat(message)].concat(args));
|
|
158
|
-
}
|
|
159
|
-
}]);
|
|
160
|
-
}();
|
|
161
|
-
|
|
162
|
-
// Create default logger instance
|
|
163
|
-
var logger = new DebugLogger('SceneViewer', 'info');
|
|
164
|
-
|
|
165
|
-
// Create specialized loggers for different subsystems
|
|
166
|
-
var transformLogger = new DebugLogger('Transform', 'warn');
|
|
167
|
-
var pathfinderLogger = new DebugLogger('Pathfinder', 'info');
|
|
168
|
-
var modelLogger = new DebugLogger('Models', 'info');
|
|
169
|
-
var materialLogger = new DebugLogger('Materials', 'warn');
|
|
170
|
-
|
|
171
|
-
exports.DebugLogger = DebugLogger;
|
|
172
|
-
exports.logger = logger;
|
|
173
|
-
exports.materialLogger = materialLogger;
|
|
174
|
-
exports.modelLogger = modelLogger;
|
|
175
|
-
exports.pathfinderLogger = pathfinderLogger;
|
|
176
|
-
exports.transformLogger = transformLogger;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"i",{value:!0});var e=require("../_virtual/_rollupPluginBabelHelpers.js"),r=function(){return e.createClass(function r(){var i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"SceneViewer",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"info";e.classCallCheck(this,r),this.namespace=i,this.debugLevel=t,this.isProduction="undefined"!=typeof process&&"production"===process.env.NODE_ENV,this.enabled=!this.isProduction,this.levels={error:0,warn:1,info:2,debug:3,verbose:4},this.currentLevel=this.levels[t]||this.levels.info},[{key:"setLevel",value:function(e){return this.currentLevel=this.levels[e]||this.levels.info,this}},{key:"enable",value:function(){return this.enabled=!0,this}},{key:"disable",value:function(){return this.enabled=!1,this}},{key:"_shouldLog",value:function(e){return this.enabled&&this.levels[e]<=this.currentLevel}},{key:"_formatMessage",value:function(e,r){for(var i="[".concat(this.namespace,":").concat(e.toUpperCase(),"]"),t=arguments.length,n=new Array(t>2?t-2:0),s=2;s<t;s++)n[s-2]=arguments[s];return[i,r].concat(n)}},{key:"error",value:function(r){if(this.t("error")){for(var i,t=arguments.length,n=new Array(t>1?t-1:0),s=1;s<t;s++)n[s-1]=arguments[s];(i=console).error.apply(i,e.toConsumableArray(this.o.apply(this,["error",r].concat(n))))}}},{key:"warn",value:function(r){if(this.t("warn")){for(var i,t=arguments.length,n=new Array(t>1?t-1:0),s=1;s<t;s++)n[s-1]=arguments[s];(i=console).warn.apply(i,e.toConsumableArray(this.o.apply(this,["warn",r].concat(n))))}}},{key:"info",value:function(r){if(this.t("info")){for(var i,t=arguments.length,n=new Array(t>1?t-1:0),s=1;s<t;s++)n[s-1]=arguments[s];(i=console).log.apply(i,e.toConsumableArray(this.o.apply(this,["info",r].concat(n))))}}},{key:"debug",value:function(r){if(this.t("debug")){for(var i,t=arguments.length,n=new Array(t>1?t-1:0),s=1;s<t;s++)n[s-1]=arguments[s];(i=console).debug.apply(i,e.toConsumableArray(this.o.apply(this,["debug",r].concat(n))))}}},{key:"verbose",value:function(r){if(this.t("verbose")){for(var i,t=arguments.length,n=new Array(t>1?t-1:0),s=1;s<t;s++)n[s-1]=arguments[s];(i=console).debug.apply(i,e.toConsumableArray(this.o.apply(this,["verbose",r].concat(n))))}}},{key:"phase",value:function(e,r){for(var i=arguments.length,t=new Array(i>2?i-2:0),n=2;n<i;n++)t[n-2]=arguments[n];this.info.apply(this,["🔍 PHASE ".concat(e,": ").concat(r)].concat(t))}},{key:"success",value:function(e){for(var r=arguments.length,i=new Array(r>1?r-1:0),t=1;t<r;t++)i[t-1]=arguments[t];this.info.apply(this,["✅ ".concat(e)].concat(i))}},{key:"failure",value:function(e){for(var r=arguments.length,i=new Array(r>1?r-1:0),t=1;t<r;t++)i[t-1]=arguments[t];this.error.apply(this,["❌ ".concat(e)].concat(i))}},{key:"loading",value:function(e){for(var r=arguments.length,i=new Array(r>1?r-1:0),t=1;t<r;t++)i[t-1]=arguments[t];this.debug.apply(this,["🔄 ".concat(e)].concat(i))}},{key:"timing",value:function(e){for(var r=arguments.length,i=new Array(r>1?r-1:0),t=1;t<r;t++)i[t-1]=arguments[t];this.debug.apply(this,["⏱️ ".concat(e)].concat(i))}}])}(),i=new r("SceneViewer","info"),t=new r("Transform","warn"),n=new r("Pathfinder","info"),s=new r("Models","info"),o=new r("Materials","warn");exports.DebugLogger=r,exports.logger=i,exports.materialLogger=o,exports.modelLogger=s,exports.pathfinderLogger=n,exports.transformLogger=t;
|
|
@@ -1,185 +1 @@
|
|
|
1
|
-
|
|
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;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"t",{value:!0});var e=require("../_virtual/_rollupPluginBabelHelpers.js"),n=require("three"),r=require("./debugLogger.js");function t(e){if(e&&e.t)return e;var n=Object.create(null);return e&&Object.keys(e).forEach(function(r){if("default"!==r){var t=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(n,r,t.get?t:{enumerable:!0,get:function(){return e[r]}})}}),n.default=e,Object.freeze(n)}var u=t(n);function o(n){n&&(n.geometry&&n.geometry.dispose(),n.material&&(Array.isArray(n.material)?n.material.forEach(function(e){return l(e)}):l(n.material)),n.children&&n.children.length>0&&e.toConsumableArray(n.children).forEach(function(e){return o(e)}))}function l(e){e&&(Object.keys(e).forEach(function(n){var r=e[n];r&&r instanceof u.Texture&&r.dispose()}),e.dispose())}function c(e){if(e){for(;e.children.length>0;){var n=e.children[0];e.remove(n),o(n)}r.logger.info("Scene cleared and disposed")}else r.logger.warn("Cannot cleanup: scene not provided")}function i(e){if(e){e.dispose();var n=e.domElement;n&&n.parentNode&&n.parentNode.removeChild(n),r.logger.info("Renderer disposed")}else r.logger.warn("Cannot cleanup: renderer not provided")}function s(){"undefined"!=typeof window&&window.$nuxt&&window.$nuxt.$off&&r.logger.info("Nuxt event listeners cleaned up")}function a(e){e&&(e.stopAnimation&&e.stopAnimation(),e.controls&&(e.controls.dispose&&e.controls.dispose(),e.controls=null),e.scene&&(c(e.scene),e.scene=null),e.renderer&&(i(e.renderer),e.renderer=null),e.camera=null,e.textureLoader=null,e.gltfLoader=null,r.logger.info("All Three.js resources cleaned up"))}var d={disposeObject:o,disposeMaterial:l,cleanupScene:c,cleanupRenderer:i,cleanupNuxtEventListeners:s,cleanupThreeJsResources:a};exports.cleanupNuxtEventListeners=s,exports.cleanupRenderer=i,exports.cleanupScene=c,exports.cleanupThreeJsResources=a,exports.default=d,exports.disposeMaterial=l,exports.disposeObject=o;
|