@decido/shell-vscode-core 1.0.0 → 4.0.1

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 (207) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/README.md +31 -0
  3. package/package.json +2 -2
  4. package/dist/appState.d.ts +0 -23
  5. package/dist/appState.d.ts.map +0 -1
  6. package/dist/appState.js +0 -138
  7. package/dist/core/AIService.d.ts +0 -33
  8. package/dist/core/AIService.d.ts.map +0 -1
  9. package/dist/core/AIService.js +0 -73
  10. package/dist/core/ApiService.d.ts +0 -34
  11. package/dist/core/ApiService.d.ts.map +0 -1
  12. package/dist/core/ApiService.js +0 -32
  13. package/dist/core/AuthService.d.ts +0 -31
  14. package/dist/core/AuthService.d.ts.map +0 -1
  15. package/dist/core/AuthService.js +0 -56
  16. package/dist/core/BaseService.d.ts +0 -29
  17. package/dist/core/BaseService.d.ts.map +0 -1
  18. package/dist/core/BaseService.js +0 -33
  19. package/dist/core/CalendarService.d.ts +0 -15
  20. package/dist/core/CalendarService.d.ts.map +0 -1
  21. package/dist/core/CalendarService.js +0 -32
  22. package/dist/core/CommandService.d.ts +0 -25
  23. package/dist/core/CommandService.d.ts.map +0 -1
  24. package/dist/core/CommandService.js +0 -52
  25. package/dist/core/DebugPanelService.d.ts +0 -12
  26. package/dist/core/DebugPanelService.d.ts.map +0 -1
  27. package/dist/core/DebugPanelService.js +0 -29
  28. package/dist/core/DebugService.d.ts +0 -57
  29. package/dist/core/DebugService.d.ts.map +0 -1
  30. package/dist/core/DebugService.js +0 -134
  31. package/dist/core/EventBus.d.ts +0 -32
  32. package/dist/core/EventBus.d.ts.map +0 -1
  33. package/dist/core/EventBus.js +0 -51
  34. package/dist/core/EventHandler.d.ts +0 -3
  35. package/dist/core/EventHandler.d.ts.map +0 -1
  36. package/dist/core/EventHandler.js +0 -82
  37. package/dist/core/GamificationService.d.ts +0 -19
  38. package/dist/core/GamificationService.d.ts.map +0 -1
  39. package/dist/core/GamificationService.js +0 -102
  40. package/dist/core/HookService.d.ts +0 -34
  41. package/dist/core/HookService.d.ts.map +0 -1
  42. package/dist/core/HookService.js +0 -64
  43. package/dist/core/LayoutService.d.ts +0 -61
  44. package/dist/core/LayoutService.d.ts.map +0 -1
  45. package/dist/core/LayoutService.js +0 -223
  46. package/dist/core/ModalService.d.ts +0 -21
  47. package/dist/core/ModalService.d.ts.map +0 -1
  48. package/dist/core/ModalService.js +0 -71
  49. package/dist/core/NotificationService.d.ts +0 -7
  50. package/dist/core/NotificationService.d.ts.map +0 -1
  51. package/dist/core/NotificationService.js +0 -42
  52. package/dist/core/RouterService.d.ts +0 -13
  53. package/dist/core/RouterService.d.ts.map +0 -1
  54. package/dist/core/RouterService.js +0 -54
  55. package/dist/core/ServiceContainer.d.ts +0 -18
  56. package/dist/core/ServiceContainer.d.ts.map +0 -1
  57. package/dist/core/ServiceContainer.js +0 -27
  58. package/dist/core/ShortcutService.d.ts +0 -17
  59. package/dist/core/ShortcutService.d.ts.map +0 -1
  60. package/dist/core/ShortcutService.js +0 -37
  61. package/dist/core/StorageService.d.ts +0 -36
  62. package/dist/core/StorageService.d.ts.map +0 -1
  63. package/dist/core/StorageService.js +0 -101
  64. package/dist/core/ThemeService.d.ts +0 -12
  65. package/dist/core/ThemeService.d.ts.map +0 -1
  66. package/dist/core/ThemeService.js +0 -60
  67. package/dist/core/WebSocketService.d.ts +0 -16
  68. package/dist/core/WebSocketService.d.ts.map +0 -1
  69. package/dist/core/WebSocketService.js +0 -22
  70. package/dist/core/api.d.ts +0 -70
  71. package/dist/core/api.d.ts.map +0 -1
  72. package/dist/core/api.js +0 -1
  73. package/dist/core/app/ModuleManager copy.d.ts +0 -23
  74. package/dist/core/app/ModuleManager copy.js +0 -52
  75. package/dist/core/app/ModuleManager.d.ts +0 -60
  76. package/dist/core/app/ModuleManager.d.ts.map +0 -1
  77. package/dist/core/app/ModuleManager.js +0 -217
  78. package/dist/core/app/apiFactory.d.ts +0 -4
  79. package/dist/core/app/apiFactory.d.ts.map +0 -1
  80. package/dist/core/app/apiFactory.js +0 -120
  81. package/dist/core/app/commandManager.d.ts +0 -3
  82. package/dist/core/app/commandManager.d.ts.map +0 -1
  83. package/dist/core/app/commandManager.js +0 -195
  84. package/dist/core/app/moduleLoader.d.ts +0 -11
  85. package/dist/core/app/moduleLoader.d.ts.map +0 -1
  86. package/dist/core/app/moduleLoader.js +0 -30
  87. package/dist/core/app/routeManager.d.ts +0 -2
  88. package/dist/core/app/routeManager.d.ts.map +0 -1
  89. package/dist/core/app/routeManager.js +0 -7
  90. package/dist/core/index.d.ts +0 -16
  91. package/dist/core/index.d.ts.map +0 -1
  92. package/dist/core/index.js +0 -15
  93. package/dist/core/layout/dragDropManager.d.ts +0 -8
  94. package/dist/core/layout/dragDropManager.d.ts.map +0 -1
  95. package/dist/core/layout/dragDropManager.js +0 -8
  96. package/dist/core/layout/paneManager.d.ts +0 -7
  97. package/dist/core/layout/paneManager.d.ts.map +0 -1
  98. package/dist/core/layout/paneManager.js +0 -7
  99. package/dist/core/layout/renderer.d.ts +0 -8
  100. package/dist/core/layout/renderer.d.ts.map +0 -1
  101. package/dist/core/layout/renderer.js +0 -8
  102. package/dist/core/layout/resizeManager.d.ts +0 -5
  103. package/dist/core/layout/resizeManager.d.ts.map +0 -1
  104. package/dist/core/layout/resizeManager.js +0 -5
  105. package/dist/core/signals.d.ts +0 -20
  106. package/dist/core/signals.d.ts.map +0 -1
  107. package/dist/core/signals.js +0 -66
  108. package/dist/core/uiState.d.ts +0 -9
  109. package/dist/core/uiState.d.ts.map +0 -1
  110. package/dist/core/uiState.js +0 -11
  111. package/dist/index.d.ts +0 -17
  112. package/dist/index.d.ts.map +0 -1
  113. package/dist/index.js +0 -15
  114. package/dist/lib/local-db.d.ts +0 -43
  115. package/dist/lib/local-db.d.ts.map +0 -1
  116. package/dist/lib/local-db.js +0 -23
  117. package/dist/lib/sync-service.d.ts +0 -7
  118. package/dist/lib/sync-service.d.ts.map +0 -1
  119. package/dist/lib/sync-service.js +0 -41
  120. package/dist/platform/ILayoutService.d.ts +0 -63
  121. package/dist/platform/ILayoutService.d.ts.map +0 -1
  122. package/dist/platform/ILayoutService.js +0 -1
  123. package/dist/platform/IRenderer.d.ts +0 -16
  124. package/dist/platform/IRenderer.d.ts.map +0 -1
  125. package/dist/platform/IRenderer.js +0 -1
  126. package/dist/platform/ServiceRegistry.d.ts +0 -43
  127. package/dist/platform/ServiceRegistry.d.ts.map +0 -1
  128. package/dist/platform/ServiceRegistry.js +0 -2
  129. package/dist/platform/extensionPoints.d.ts +0 -70
  130. package/dist/platform/extensionPoints.d.ts.map +0 -1
  131. package/dist/platform/extensionPoints.js +0 -22
  132. package/dist/platform/index.d.ts +0 -5
  133. package/dist/platform/index.d.ts.map +0 -1
  134. package/dist/platform/index.js +0 -4
  135. package/dist/stores/editorStore.d.ts +0 -5
  136. package/dist/stores/editorStore.d.ts.map +0 -1
  137. package/dist/stores/editorStore.js +0 -4
  138. package/dist/stores/gamificationStore.d.ts +0 -3
  139. package/dist/stores/gamificationStore.d.ts.map +0 -1
  140. package/dist/stores/gamificationStore.js +0 -2
  141. package/dist/stores/historyStore.d.ts +0 -12
  142. package/dist/stores/historyStore.d.ts.map +0 -1
  143. package/dist/stores/historyStore.js +0 -6
  144. package/dist/stores/workspaceStore.d.ts +0 -13
  145. package/dist/stores/workspaceStore.d.ts.map +0 -1
  146. package/dist/stores/workspaceStore.js +0 -6
  147. package/dist/types/app.d.ts +0 -31
  148. package/dist/types/app.d.ts.map +0 -1
  149. package/dist/types/app.js +0 -1
  150. package/dist/types/debug.d.ts +0 -68
  151. package/dist/types/debug.d.ts.map +0 -1
  152. package/dist/types/debug.js +0 -1
  153. package/dist/types/entities.d.ts +0 -42
  154. package/dist/types/entities.js +0 -2
  155. package/dist/types/index.d.ts +0 -3
  156. package/dist/types/index.d.ts.map +0 -1
  157. package/dist/types/index.js +0 -3
  158. package/dist/types/modules.d.ts +0 -66
  159. package/dist/types/modules.js +0 -2
  160. package/dist/types/platform.d.ts +0 -95
  161. package/dist/types/platform.d.ts.map +0 -1
  162. package/dist/types/platform.js +0 -2
  163. package/dist/ui/Palette.d.ts +0 -38
  164. package/dist/ui/Palette.d.ts.map +0 -1
  165. package/dist/ui/Palette.js +0 -144
  166. package/dist/ui/debug-panel/dragAndResize.d.ts +0 -6
  167. package/dist/ui/debug-panel/dragAndResize.d.ts.map +0 -1
  168. package/dist/ui/debug-panel/dragAndResize.js +0 -140
  169. package/dist/ui/debug-panel/eventBinder.d.ts +0 -5
  170. package/dist/ui/debug-panel/eventBinder.d.ts.map +0 -1
  171. package/dist/ui/debug-panel/eventBinder.js +0 -120
  172. package/dist/ui/debug-panel/layoutManager.d.ts +0 -16
  173. package/dist/ui/debug-panel/layoutManager.d.ts.map +0 -1
  174. package/dist/ui/debug-panel/layoutManager.js +0 -73
  175. package/dist/ui/debug-panel/main.d.ts +0 -12
  176. package/dist/ui/debug-panel/main.d.ts.map +0 -1
  177. package/dist/ui/debug-panel/main.js +0 -42
  178. package/dist/ui/debug-panel/panelManager.d.ts +0 -17
  179. package/dist/ui/debug-panel/panelManager.d.ts.map +0 -1
  180. package/dist/ui/debug-panel/panelManager.js +0 -123
  181. package/dist/ui/debug-panel/renderer.d.ts +0 -4
  182. package/dist/ui/debug-panel/renderer.d.ts.map +0 -1
  183. package/dist/ui/debug-panel/renderer.js +0 -181
  184. package/dist/ui/debug-panel/services.d.ts +0 -4
  185. package/dist/ui/debug-panel/services.d.ts.map +0 -1
  186. package/dist/ui/debug-panel/services.js +0 -134
  187. package/dist/ui/debug-panel/settings.d.ts +0 -5
  188. package/dist/ui/debug-panel/settings.d.ts.map +0 -1
  189. package/dist/ui/debug-panel/settings.js +0 -35
  190. package/dist/ui/debug-panel/state.d.ts +0 -128
  191. package/dist/ui/debug-panel/state.d.ts.map +0 -1
  192. package/dist/ui/debug-panel/state.js +0 -42
  193. package/dist/ui/debug-panel/stateEditor.d.ts +0 -9
  194. package/dist/ui/debug-panel/stateEditor.d.ts.map +0 -1
  195. package/dist/ui/debug-panel/stateEditor.js +0 -158
  196. package/dist/ui/debug-panel/types.d.ts +0 -68
  197. package/dist/ui/debug-panel/types.d.ts.map +0 -1
  198. package/dist/ui/debug-panel/types.js +0 -1
  199. package/dist/ui/debug-panel/ui.d.ts +0 -10
  200. package/dist/ui/debug-panel/ui.d.ts.map +0 -1
  201. package/dist/ui/debug-panel/ui.js +0 -199
  202. package/dist/ui/debug-panel/utils.d.ts +0 -16
  203. package/dist/ui/debug-panel/utils.d.ts.map +0 -1
  204. package/dist/ui/debug-panel/utils.js +0 -104
  205. package/dist/utils.d.ts +0 -22
  206. package/dist/utils.d.ts.map +0 -1
  207. package/dist/utils.js +0 -58
@@ -1,181 +0,0 @@
1
- import { createEffect } from '../../core/signals.js';
2
- import { consoleLogs, consoleFilter, networkLogs, networkFilter, eventLogs, performanceLogs, fpsCounter, capitalize } from './state.js';
3
- import * as appState from '../../appState.js';
4
- import * as uiState from '../../core/uiState.js';
5
- import { formatLogMessage, getLogIcon } from './utils.js';
6
- import { renderStateTree } from './stateEditor.js';
7
- // ===================================================================
8
- // Funciones de Vista Puras (Generan HTML, no tocan el DOM)
9
- // ===================================================================
10
- function createConsoleViewHTML(logs, settings) {
11
- return logs.map(log => `
12
- <div class="log-entry log-level-${log.type}" data-log-id="${log.id}">
13
- ${settings.showTimestamps ? `<span class="log-time">${log.timestamp.toLocaleTimeString()}</span>` : ''}
14
- <span class="log-type-icon">${getLogIcon(log.type)}</span>
15
- <div class="log-content">
16
- <div class="log-message">${formatLogMessage(log.message)}</div>
17
- ${log.stack ? `<div class="log-stack">${log.stack}</div>` : ''}
18
- </div>
19
- </div>
20
- `).join('');
21
- }
22
- function createNetworkViewHTML(logs, settings) {
23
- return logs.map(log => `
24
- <div class="log-entry network-entry ${log.status >= 400 ? 'error' : 'success'}" data-log-id="${log.id}">
25
- ${settings.showTimestamps ? `<span class="log-time">${log.timestamp.toLocaleTimeString()}</span>` : ''}
26
- <span class="network-status status-${Math.floor(log.status / 100)}xx">${log.status || 'ERR'}</span>
27
- <span class="network-method">${log.method}</span>
28
- <span class="network-duration">${log.duration.toFixed(0)}ms</span>
29
- <div class="network-url">${log.url}</div>
30
- ${log.error ? `<div class="network-error">${log.error}</div>` : ''}
31
- </div>
32
- `).join('');
33
- }
34
- function createEventsViewHTML(logs, settings) {
35
- if (logs.length === 0) {
36
- return '<div class="placeholder">No events have occurred yet.</div>';
37
- }
38
- return logs.map(log => `
39
- <div class="log-entry event-entry event-${log.direction}">
40
- ${settings.showTimestamps ? `<span class="log-time">${log.timestamp.toLocaleTimeString()}</span>` : ''}
41
- <span class="event-direction">${log.direction === 'emitted' ? '📤' : '📥'}</span>
42
- <span class="event-name">${log.name}</span>
43
- <div class="event-data">${log.data ? JSON.stringify(log.data, null, 2) : 'No data'}</div>
44
- </div>
45
- `).join('');
46
- }
47
- function createPerformanceViewHTML(logs, settings) {
48
- return logs.map(log => `
49
- <div class="log-entry performance-entry" data-log-id="${log.id}">
50
- ${settings.showTimestamps ? `<span class="log-time">${log.timestamp.toLocaleTimeString()}</span>` : ''}
51
- <span class="performance-type type-${log.type}">${log.type.toUpperCase()}</span>
52
- <span class="performance-duration">${log.duration.toFixed(2)}ms</span>
53
- <div class="performance-name">${log.name}</div>
54
- </div>
55
- `).join('');
56
- }
57
- // ===================================================================
58
- // Función Principal para Configurar la Reactividad del Panel
59
- // ===================================================================
60
- export function setupPanelRenderEffects(panelId, settingsSignal) {
61
- const [settings] = settingsSignal;
62
- const panelEl = document.getElementById(`debug-panel-${panelId}`);
63
- if (!panelEl)
64
- return;
65
- // --- Efecto para la pestaña de Consola ---
66
- createEffect(() => {
67
- const currentLogs = consoleLogs();
68
- const currentFilter = consoleFilter();
69
- const currentSettings = settings();
70
- const filteredLogs = currentLogs.filter(log => currentFilter.has(log.type));
71
- const viewHTML = createConsoleViewHTML(filteredLogs, currentSettings);
72
- const container = panelEl.querySelector(`#debug-panel-${panelId}-console .console-logs`);
73
- if (container) {
74
- container.innerHTML = viewHTML;
75
- if (currentSettings.autoScroll) {
76
- container.scrollTop = container.scrollHeight;
77
- }
78
- }
79
- });
80
- // --- Efecto para la pestaña de Red ---
81
- createEffect(() => {
82
- const currentLogs = networkLogs();
83
- const currentFilter = networkFilter();
84
- const currentSettings = settings();
85
- const filteredLogs = currentLogs.filter(log => log.url.toLowerCase().includes(currentFilter.toLowerCase()));
86
- const viewHTML = createNetworkViewHTML(filteredLogs, currentSettings);
87
- const container = panelEl.querySelector(`#debug-panel-${panelId}-network .network-logs`);
88
- if (container) {
89
- container.innerHTML = viewHTML;
90
- if (currentSettings.autoScroll) {
91
- container.scrollTop = container.scrollHeight;
92
- }
93
- }
94
- });
95
- // --- Efecto para la pestaña de Eventos ---
96
- createEffect(() => {
97
- const currentLogs = eventLogs();
98
- const currentSettings = settings();
99
- const viewHTML = createEventsViewHTML(currentLogs, currentSettings);
100
- const container = panelEl.querySelector(`#debug-panel-${panelId}-events .events-log`);
101
- if (container) {
102
- container.innerHTML = viewHTML;
103
- if (currentSettings.autoScroll) {
104
- container.scrollTop = container.scrollHeight;
105
- }
106
- }
107
- });
108
- // --- Efecto para la pestaña de Performance ---
109
- createEffect(() => {
110
- const currentLogs = performanceLogs();
111
- const currentSettings = settings();
112
- const viewHTML = createPerformanceViewHTML(currentLogs, currentSettings);
113
- const container = panelEl.querySelector(`#debug-panel-${panelId}-performance .performance-logs`);
114
- if (container) {
115
- container.innerHTML = viewHTML;
116
- if (currentSettings.autoScroll) {
117
- container.scrollTop = container.scrollHeight;
118
- }
119
- }
120
- });
121
- // --- Efecto para las estadísticas de Performance (FPS, Memoria, etc.) ---
122
- createEffect(() => {
123
- // Depende de fpsCounter para re-renderizarse
124
- const currentFps = fpsCounter().fps;
125
- // Actualiza el DOM directamente para estas estadísticas de alta frecuencia
126
- const memoryEl = panelEl.querySelector(`#memory-usage-${panelId}`);
127
- if (memoryEl && 'memory' in performance) {
128
- const memory = performance.memory;
129
- memoryEl.textContent = (memory.usedJSHeapSize / 1024 / 1024).toFixed(1);
130
- }
131
- const domNodesEl = panelEl.querySelector(`#dom-nodes-${panelId}`);
132
- if (domNodesEl) {
133
- domNodesEl.textContent = document.querySelectorAll('*').length.toString();
134
- }
135
- const fpsEl = panelEl.querySelector(`#fps-${panelId}`);
136
- if (fpsEl) {
137
- fpsEl.textContent = currentFps.toString();
138
- }
139
- });
140
- // --- Efecto para la pestaña de Estado (State) ---
141
- // NOTA: Este efecto es más complejo porque depende del estado de toda tu aplicación.
142
- // Deberás asegurarte de que `appState` y `uiState` sean reactivos si quieres que esta
143
- // pestaña se actualice automáticamente.
144
- createEffect(() => {
145
- const container = panelEl.querySelector(`#debug-panel-${panelId}-state .state-tree`);
146
- if (!container)
147
- return;
148
- // 1. Define qué hacer cuando un valor del estado cambie
149
- const handleStateChange = (path, newValue) => {
150
- console.log('State change requested:', { path, newValue });
151
- // Aquí iría tu lógica para llamar a los setters de appState o uiState
152
- const stateModule = path[0] === 'App' ? appState : uiState;
153
- const setterName = `set${capitalize(path[1])}`;
154
- if (typeof stateModule[setterName] === 'function') {
155
- stateModule[setterName](newValue);
156
- }
157
- };
158
- try {
159
- // Este bloque se re-ejecutará si los signals dentro de appState/uiState cambian.
160
- const fullState = {
161
- App: {
162
- ...Object.fromEntries(Object
163
- .entries(appState)
164
- .filter(([, fn]) => typeof fn === 'function' &&
165
- fn.length === 0 // solo getters sin argumentos
166
- )
167
- //@ts-ignore
168
- .map(([key, get]) => [key, get()]))
169
- },
170
- UI: {
171
- ...Object.fromEntries(Object.entries(uiState).map(([key, signalTuple]) => [key, signalTuple[0]()]))
172
- }
173
- };
174
- // 3. Llama a la función de renderizado desacoplada
175
- renderStateTree(fullState, container, settings(), handleStateChange);
176
- }
177
- catch (error) {
178
- container.innerHTML = `<div class="error">Error rendering state: ${error}</div>`;
179
- }
180
- });
181
- }
@@ -1,4 +0,0 @@
1
- export declare function setupInterceptors(): void;
2
- export declare function startPerformanceMonitoring(): void;
3
- export declare function startFPSCounter(): void;
4
- //# sourceMappingURL=services.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../src/ui/debug-panel/services.ts"],"names":[],"mappings":"AAiBA,wBAAgB,iBAAiB,IAAI,IAAI,CAIxC;AAiFD,wBAAgB,0BAA0B,IAAI,IAAI,CAqBjD;AAGD,wBAAgB,eAAe,IAAI,IAAI,CAqBtC"}
@@ -1,134 +0,0 @@
1
- import { originalMethods, generateId, setConsoleLogs, setNetworkLogs, setPerformanceLogs, setPerformanceObserver, setFpsCounter, consoleLogs, networkLogs, performanceLogs, performanceObserver, fpsCounter } from './state.js';
2
- // import { DebugPanel } from './main.js';
3
- export function setupInterceptors() {
4
- interceptConsole();
5
- interceptFetch();
6
- interceptErrors();
7
- }
8
- function interceptConsole() {
9
- ['log', 'info', 'warn', 'error'].forEach(level => {
10
- window.console[level] = (...args) => {
11
- const log = {
12
- id: generateId(),
13
- type: level,
14
- timestamp: new Date(),
15
- message: args,
16
- stack: level === 'error' ? new Error().stack : undefined
17
- };
18
- setConsoleLogs([...consoleLogs(), log]);
19
- originalMethods.console[level](...args);
20
- };
21
- });
22
- }
23
- function interceptFetch() {
24
- window.fetch = async (input, init) => {
25
- const startTime = performance.now();
26
- const url = input instanceof Request ? input.url : input.toString();
27
- const method = init?.method || 'GET';
28
- try {
29
- const response = await originalMethods.fetch(input, init);
30
- const duration = performance.now() - startTime;
31
- const log = {
32
- id: generateId(),
33
- url,
34
- method,
35
- status: response.status,
36
- timestamp: new Date(),
37
- duration,
38
- size: getResponseSize(response)
39
- };
40
- setNetworkLogs([...networkLogs(), log]);
41
- return response;
42
- }
43
- catch (error) {
44
- const duration = performance.now() - startTime;
45
- const log = {
46
- id: generateId(),
47
- url,
48
- method,
49
- status: 0,
50
- timestamp: new Date(),
51
- duration,
52
- error: error instanceof Error ? error.message : 'Unknown error'
53
- };
54
- setNetworkLogs([...networkLogs(), log]);
55
- throw error;
56
- }
57
- };
58
- }
59
- function interceptErrors() {
60
- window.addEventListener('error', (event) => {
61
- const log = {
62
- id: generateId(),
63
- type: 'error',
64
- timestamp: new Date(),
65
- message: [`${event.filename}:${event.lineno}:${event.colno}`, event.message],
66
- stack: event.error?.stack
67
- };
68
- setConsoleLogs([...consoleLogs(), log]);
69
- });
70
- window.addEventListener('unhandledrejection', (event) => {
71
- const log = {
72
- id: generateId(),
73
- type: 'error',
74
- timestamp: new Date(),
75
- message: ['Unhandled Promise Rejection:', event.reason],
76
- stack: event.reason?.stack
77
- };
78
- setConsoleLogs([...consoleLogs(), log]);
79
- });
80
- }
81
- export function startPerformanceMonitoring() {
82
- if ('PerformanceObserver' in window) {
83
- setPerformanceObserver(new PerformanceObserver((list) => {
84
- list.getEntries().forEach((entry) => {
85
- const log = {
86
- id: generateId(),
87
- name: entry.name,
88
- duration: entry.duration,
89
- timestamp: new Date(entry.startTime),
90
- type: getPerformanceType(entry.entryType)
91
- };
92
- setPerformanceLogs([...performanceLogs(), log]);
93
- });
94
- }));
95
- try {
96
- performanceObserver()?.observe({ entryTypes: ['navigation', 'resource', 'measure', 'mark'] });
97
- }
98
- catch (e) {
99
- console.warn('Performance monitoring not fully supported');
100
- }
101
- }
102
- }
103
- // services.ts (startFPSCounter CORREGIDO)
104
- export function startFPSCounter() {
105
- const updateFPS = () => {
106
- const now = performance.now();
107
- const previousCounter = fpsCounter(); // Lee el estado una vez
108
- // Crea un objeto nuevo con el frame incrementado
109
- const newCounter = { ...previousCounter, frames: previousCounter.frames + 1 };
110
- if (now >= previousCounter.lastTime + 1000) {
111
- // Si es tiempo de actualizar el FPS, calcula y actualiza el resto de las propiedades
112
- newCounter.fps = Math.round((newCounter.frames * 1000) / (now - previousCounter.lastTime));
113
- newCounter.frames = 0;
114
- newCounter.lastTime = now;
115
- }
116
- // Llama al setter con el nuevo objeto de estado
117
- setFpsCounter(newCounter);
118
- requestAnimationFrame(updateFPS);
119
- };
120
- requestAnimationFrame(updateFPS);
121
- }
122
- function getResponseSize(response) {
123
- const contentLength = response.headers.get('content-length');
124
- return contentLength ? parseInt(contentLength) : undefined;
125
- }
126
- function getPerformanceType(entryType) {
127
- switch (entryType) {
128
- case 'navigation': return 'navigation';
129
- case 'resource': return 'resource';
130
- case 'measure': return 'measure';
131
- case 'mark': return 'mark';
132
- default: return 'measure';
133
- }
134
- }
@@ -1,5 +0,0 @@
1
- import { DebugSettings } from './types.js';
2
- export declare const DEFAULT_SETTINGS: DebugSettings;
3
- export declare function loadSettings(): DebugSettings;
4
- export declare function saveSettings(settings: DebugSettings): void;
5
- //# sourceMappingURL=settings.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../../src/ui/debug-panel/settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,eAAO,MAAM,gBAAgB,EAAE,aAkB9B,CAAC;AAEF,wBAAgB,YAAY,IAAI,aAAa,CAW5C;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,CAE1D"}
@@ -1,35 +0,0 @@
1
- export const DEFAULT_SETTINGS = {
2
- maxLogs: 1000,
3
- autoScroll: true,
4
- showTimestamps: true,
5
- position: 'floating',
6
- isMinimized: false,
7
- layout: 'single',
8
- panels: [{
9
- id: 'main',
10
- activeTab: 'state',
11
- position: { x: 50, y: 50 },
12
- size: { width: 800, height: 600 },
13
- isMinimized: false,
14
- zIndex: 1000
15
- }],
16
- enableStateEditing: true,
17
- autoSaveState: false,
18
- theme: 'dark'
19
- };
20
- export function loadSettings() {
21
- const saved = localStorage.getItem('debugPanel:settings');
22
- if (saved) {
23
- try {
24
- const parsed = JSON.parse(saved);
25
- return { ...DEFAULT_SETTINGS, ...parsed };
26
- }
27
- catch (e) {
28
- console.warn('Failed to load debug panel settings');
29
- }
30
- }
31
- return DEFAULT_SETTINGS;
32
- }
33
- export function saveSettings(settings) {
34
- localStorage.setItem('debugPanel:settings', JSON.stringify(settings));
35
- }
@@ -1,128 +0,0 @@
1
- import { ConsoleLog, NetworkLog, PerformanceLog, EventLog, LogLevel, StateEditContext } from './types.js';
2
- export declare const consoleLogs: () => ConsoleLog[], setConsoleLogs: import("../../core/signals.js").Setter<ConsoleLog[]>;
3
- export declare const networkLogs: () => NetworkLog[], setNetworkLogs: import("../../core/signals.js").Setter<NetworkLog[]>;
4
- export declare const performanceLogs: () => PerformanceLog[], setPerformanceLogs: import("../../core/signals.js").Setter<PerformanceLog[]>;
5
- export declare const eventLogs: () => EventLog[], setEventLogs: import("../../core/signals.js").Setter<EventLog[]>;
6
- export declare const consoleFilter: () => Set<LogLevel>, setConsoleFilter: import("../../core/signals.js").Setter<Set<LogLevel>>;
7
- export declare const networkFilter: () => string, setNetworkFilter: import("../../core/signals.js").Setter<string>;
8
- export declare const performanceFilter: () => string, setPerformanceFilter: import("../../core/signals.js").Setter<string>;
9
- export declare const eventsFilter: () => string, setEventsFilter: import("../../core/signals.js").Setter<string>;
10
- export declare const dragState: () => {
11
- isDragging: boolean;
12
- activePanel: string | undefined;
13
- startPos: {
14
- x: number;
15
- y: number;
16
- };
17
- startPanelPos: {
18
- x: number;
19
- y: number;
20
- };
21
- }, setDragState: import("../../core/signals.js").Setter<{
22
- isDragging: boolean;
23
- activePanel: string | undefined;
24
- startPos: {
25
- x: number;
26
- y: number;
27
- };
28
- startPanelPos: {
29
- x: number;
30
- y: number;
31
- };
32
- }>;
33
- export declare const resizeState: () => {
34
- isResizing: boolean;
35
- activePanel: string | undefined;
36
- startPos: {
37
- x: number;
38
- y: number;
39
- };
40
- startSize: {
41
- width: number;
42
- height: number;
43
- };
44
- startPanelPos: {
45
- x: number;
46
- y: number;
47
- };
48
- handle: string | undefined;
49
- }, setResizeState: import("../../core/signals.js").Setter<{
50
- isResizing: boolean;
51
- activePanel: string | undefined;
52
- startPos: {
53
- x: number;
54
- y: number;
55
- };
56
- startSize: {
57
- width: number;
58
- height: number;
59
- };
60
- startPanelPos: {
61
- x: number;
62
- y: number;
63
- };
64
- handle: string | undefined;
65
- }>;
66
- export declare const highestZIndex: () => number, setHighestZIndex: import("../../core/signals.js").Setter<number>;
67
- export declare const stateEditContext: () => StateEditContext | null, setStateEditContext: import("../../core/signals.js").Setter<StateEditContext | null>;
68
- export declare const fpsCounter: () => {
69
- frames: number;
70
- lastTime: number;
71
- fps: number;
72
- }, setFpsCounter: import("../../core/signals.js").Setter<{
73
- frames: number;
74
- lastTime: number;
75
- fps: number;
76
- }>;
77
- export declare const performanceObserver: () => PerformanceObserver | undefined, setPerformanceObserver: import("../../core/signals.js").Setter<PerformanceObserver | undefined>;
78
- export declare const originalMethods: {
79
- console: {
80
- assert(condition?: boolean, ...data: any[]): void;
81
- assert(value: any, message?: string, ...optionalParams: any[]): void;
82
- clear(): void;
83
- clear(): void;
84
- count(label?: string): void;
85
- count(label?: string): void;
86
- countReset(label?: string): void;
87
- countReset(label?: string): void;
88
- debug(...data: any[]): void;
89
- debug(message?: any, ...optionalParams: any[]): void;
90
- dir(item?: any, options?: any): void;
91
- dir(obj: any, options?: import("util").InspectOptions): void;
92
- dirxml(...data: any[]): void;
93
- dirxml(...data: any[]): void;
94
- error(...data: any[]): void;
95
- error(message?: any, ...optionalParams: any[]): void;
96
- group(...data: any[]): void;
97
- group(...label: any[]): void;
98
- groupCollapsed(...data: any[]): void;
99
- groupCollapsed(...label: any[]): void;
100
- groupEnd(): void;
101
- groupEnd(): void;
102
- info(...data: any[]): void;
103
- info(message?: any, ...optionalParams: any[]): void;
104
- log(...data: any[]): void;
105
- log(message?: any, ...optionalParams: any[]): void;
106
- table(tabularData?: any, properties?: string[]): void;
107
- table(tabularData: any, properties?: readonly string[]): void;
108
- time(label?: string): void;
109
- time(label?: string): void;
110
- timeEnd(label?: string): void;
111
- timeEnd(label?: string): void;
112
- timeLog(label?: string, ...data: any[]): void;
113
- timeLog(label?: string, ...data: any[]): void;
114
- timeStamp(label?: string): void;
115
- timeStamp(label?: string): void;
116
- trace(...data: any[]): void;
117
- trace(message?: any, ...optionalParams: any[]): void;
118
- warn(...data: any[]): void;
119
- warn(message?: any, ...optionalParams: any[]): void;
120
- Console: console.ConsoleConstructor;
121
- profile(label?: string): void;
122
- profileEnd(label?: string): void;
123
- };
124
- fetch: ((input: RequestInfo | URL, init?: RequestInit) => Promise<Response>) & typeof fetch;
125
- };
126
- export declare function generateId(): string;
127
- export declare function capitalize(str: string): string;
128
- //# sourceMappingURL=state.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/ui/debug-panel/state.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAG1G,eAAO,MAAO,WAAW,sBAAE,cAAc,sDAAkC,CAAC;AAC5E,eAAO,MAAO,WAAW,sBAAE,cAAc,sDAAkC,CAAC;AAC5E,eAAO,MAAO,eAAe,0BAAE,kBAAkB,0DAAsC,CAAC;AACxF,eAAO,MAAO,SAAS,oBAAE,YAAY,oDAAgC,CAAC;AAGtE,eAAO,MAAO,aAAa,uBAAE,gBAAgB,uDAAqE,CAAC;AACnH,eAAO,MAAO,aAAa,gBAAE,gBAAgB,gDAAoB,CAAC;AAClE,eAAO,MAAO,iBAAiB,gBAAE,oBAAoB,gDAAoB,CAAC;AAC1E,eAAO,MAAO,YAAY,gBAAE,eAAe,gDAAoB,CAAC;AAGhE,eAAO,MAAO,SAAS;;iBAEO,MAAM,GAAG,SAAS;;;;;;;;;GAFvB,YAAY;;iBAEP,MAAM,GAAG,SAAS;;;;;;;;;EAG9C,CAAC;AAEH,eAAO,MAAO,WAAW;;iBAEK,MAAM,GAAG,SAAS;;;;;;;;;;;;;YAIvB,MAAM,GAAG,SAAS;GANhB,cAAc;;iBAEX,MAAM,GAAG,SAAS;;;;;;;;;;;;;YAIvB,MAAM,GAAG,SAAS;EACzC,CAAC;AAEH,eAAO,MAAO,aAAa,gBAAE,gBAAgB,gDAAsB,CAAC;AACpE,eAAO,MAAO,gBAAgB,iCAAE,mBAAmB,iEAA+C,CAAC;AACnG,eAAO,MAAO,UAAU;;;;GAAE,aAAa;;;;EAAoD,CAAC;AAC5F,eAAO,MAAO,mBAAmB,yCAAE,sBAAsB,yEAA4D,CAAC;AAItH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAG3B,CAAC;AAGF,wBAAgB,UAAU,IAAI,MAAM,CAEnC;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE9C"}
@@ -1,42 +0,0 @@
1
- import { createSignal } from '../../core/signals.js';
2
- // Logs
3
- export const [consoleLogs, setConsoleLogs] = createSignal([]);
4
- export const [networkLogs, setNetworkLogs] = createSignal([]);
5
- export const [performanceLogs, setPerformanceLogs] = createSignal([]);
6
- export const [eventLogs, setEventLogs] = createSignal([]);
7
- // Filters
8
- export const [consoleFilter, setConsoleFilter] = createSignal(new Set(['log', 'info', 'warn', 'error']));
9
- export const [networkFilter, setNetworkFilter] = createSignal('');
10
- export const [performanceFilter, setPerformanceFilter] = createSignal('');
11
- export const [eventsFilter, setEventsFilter] = createSignal('');
12
- // UI State
13
- export const [dragState, setDragState] = createSignal({
14
- isDragging: false,
15
- activePanel: undefined,
16
- startPos: { x: 0, y: 0 },
17
- startPanelPos: { x: 0, y: 0 }
18
- });
19
- export const [resizeState, setResizeState] = createSignal({
20
- isResizing: false,
21
- activePanel: undefined,
22
- startPos: { x: 0, y: 0 },
23
- startSize: { width: 0, height: 0 },
24
- startPanelPos: { x: 0, y: 0 },
25
- handle: undefined
26
- });
27
- export const [highestZIndex, setHighestZIndex] = createSignal(1000);
28
- export const [stateEditContext, setStateEditContext] = createSignal(null);
29
- export const [fpsCounter, setFpsCounter] = createSignal({ frames: 0, lastTime: 0, fps: 0 });
30
- export const [performanceObserver, setPerformanceObserver] = createSignal(undefined);
31
- // Static original methods
32
- export const originalMethods = {
33
- console: { ...window.console },
34
- fetch: window.fetch.bind(window)
35
- };
36
- // Helper functions
37
- export function generateId() {
38
- return `log_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
39
- }
40
- export function capitalize(str) {
41
- return str.charAt(0).toUpperCase() + str.slice(1);
42
- }
@@ -1,9 +0,0 @@
1
- import { DebugSettings } from './types.js';
2
- export type StateChangeCallback = (path: string[], newValue: any) => void;
3
- /**
4
- * Función principal y recursiva que construye el árbol de estado en el DOM.
5
- * Ya no depende de `DebugPanel`, recibe las dependencias que necesita.
6
- */
7
- export declare function renderStateTree(data: any, container: HTMLElement, settings: DebugSettings, onStateChange: StateChangeCallback, path?: string[]): void;
8
- export declare function cancelEditing(): void;
9
- //# sourceMappingURL=stateEditor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stateEditor.d.ts","sourceRoot":"","sources":["../../../src/ui/debug-panel/stateEditor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAK3C,MAAM,MAAM,mBAAmB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,GAAG,KAAK,IAAI,CAAC;AAM1E;;;GAGG;AACH,wBAAgB,eAAe,CAC3B,IAAI,EAAE,GAAG,EACT,SAAS,EAAE,WAAW,EACtB,QAAQ,EAAE,aAAa,EACvB,aAAa,EAAE,mBAAmB,EAClC,IAAI,GAAE,MAAM,EAAO,GACpB,IAAI,CA0DN;AAuGD,wBAAgB,aAAa,IAAI,IAAI,CAKpC"}