@dimina-kit/devtools 0.1.0 → 0.2.0-dev.20260424031451

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 (190) hide show
  1. package/dist/main/api.d.ts +3 -1
  2. package/dist/main/api.js +2 -0
  3. package/dist/main/app/app.d.ts +2 -0
  4. package/dist/main/app/app.js +29 -7
  5. package/dist/main/index.bundle.js +2716 -0
  6. package/dist/main/services/automation/index.d.ts +2 -1
  7. package/dist/main/services/automation/index.js +28 -4
  8. package/dist/main/services/projects/project-repository.js +6 -0
  9. package/dist/main/services/simulator-storage/index.d.ts +20 -0
  10. package/dist/main/services/simulator-storage/index.js +136 -0
  11. package/dist/main/services/update/github-release-checker.d.ts +49 -0
  12. package/dist/main/services/update/github-release-checker.js +248 -0
  13. package/dist/main/services/update/index.d.ts +5 -0
  14. package/dist/main/services/update/index.js +3 -0
  15. package/dist/main/services/update/update-manager.d.ts +37 -0
  16. package/dist/main/services/update/update-manager.js +90 -0
  17. package/dist/main/services/workspace/workspace-service.js +12 -0
  18. package/dist/preload/instrumentation/index.d.ts +0 -1
  19. package/dist/preload/instrumentation/index.js +0 -1
  20. package/dist/preload/windows/main.d.ts +0 -1
  21. package/dist/preload/windows/main.js +0 -1
  22. package/dist/preload/windows/simulator.js +1 -109
  23. package/dist/renderer/assets/index-D_HFRqZA.js +46 -0
  24. package/dist/renderer/assets/{input-B7sz4y1r.js → input-VLotwer2.js} +2 -2
  25. package/dist/renderer/assets/ipc-transport-6Gy3FXIL.css +1 -0
  26. package/dist/renderer/assets/{ipc-transport-L_WD9x12.js → ipc-transport-COKIC6Ny.js} +6 -6
  27. package/dist/renderer/assets/{popover-CzMIs2j4.js → popover-Dn0RwMLI.js} +2 -2
  28. package/dist/renderer/assets/{select-BBXJVe8R.js → select-DzIsLaKX.js} +2 -2
  29. package/dist/renderer/assets/{settings-Db1pvrBJ.js → settings-CD-dacWB.js} +2 -2
  30. package/dist/renderer/assets/settings-api-BV9MPckG.js +2 -0
  31. package/dist/renderer/assets/{workbenchSettings-BnQsvWkQ.js → workbenchSettings-ClwgsvJL.js} +2 -2
  32. package/dist/renderer/entries/main/index.html +5 -5
  33. package/dist/renderer/entries/popover/index.html +5 -5
  34. package/dist/renderer/entries/settings/index.html +5 -5
  35. package/dist/renderer/entries/workbench-settings/index.html +4 -4
  36. package/dist/shared/ipc-channels.d.ts +26 -3
  37. package/dist/shared/ipc-channels.js +10 -3
  38. package/dist/shared/types.d.ts +27 -0
  39. package/package.json +6 -4
  40. package/dist/main/api.d.ts.map +0 -1
  41. package/dist/main/api.js.map +0 -1
  42. package/dist/main/app/app.d.ts.map +0 -1
  43. package/dist/main/app/app.js.map +0 -1
  44. package/dist/main/app/bootstrap.d.ts.map +0 -1
  45. package/dist/main/app/bootstrap.js.map +0 -1
  46. package/dist/main/app/launch.d.ts.map +0 -1
  47. package/dist/main/app/launch.js.map +0 -1
  48. package/dist/main/app/lifecycle.d.ts.map +0 -1
  49. package/dist/main/app/lifecycle.js.map +0 -1
  50. package/dist/main/index.d.ts.map +0 -1
  51. package/dist/main/index.js.map +0 -1
  52. package/dist/main/ipc/app.d.ts.map +0 -1
  53. package/dist/main/ipc/app.js.map +0 -1
  54. package/dist/main/ipc/index.d.ts.map +0 -1
  55. package/dist/main/ipc/index.js.map +0 -1
  56. package/dist/main/ipc/panels.d.ts.map +0 -1
  57. package/dist/main/ipc/panels.js.map +0 -1
  58. package/dist/main/ipc/popover.d.ts.map +0 -1
  59. package/dist/main/ipc/popover.js.map +0 -1
  60. package/dist/main/ipc/projects.d.ts.map +0 -1
  61. package/dist/main/ipc/projects.js.map +0 -1
  62. package/dist/main/ipc/session.d.ts.map +0 -1
  63. package/dist/main/ipc/session.js.map +0 -1
  64. package/dist/main/ipc/settings.d.ts.map +0 -1
  65. package/dist/main/ipc/settings.js.map +0 -1
  66. package/dist/main/ipc/simulator.d.ts.map +0 -1
  67. package/dist/main/ipc/simulator.js.map +0 -1
  68. package/dist/main/ipc/toolbar.d.ts.map +0 -1
  69. package/dist/main/ipc/toolbar.js.map +0 -1
  70. package/dist/main/menu/index.d.ts.map +0 -1
  71. package/dist/main/menu/index.js.map +0 -1
  72. package/dist/main/services/automation/exec.d.ts.map +0 -1
  73. package/dist/main/services/automation/exec.js.map +0 -1
  74. package/dist/main/services/automation/handlers/app.d.ts.map +0 -1
  75. package/dist/main/services/automation/handlers/app.js.map +0 -1
  76. package/dist/main/services/automation/handlers/element.d.ts.map +0 -1
  77. package/dist/main/services/automation/handlers/element.js.map +0 -1
  78. package/dist/main/services/automation/handlers/page.d.ts.map +0 -1
  79. package/dist/main/services/automation/handlers/page.js.map +0 -1
  80. package/dist/main/services/automation/handlers/tool.d.ts.map +0 -1
  81. package/dist/main/services/automation/handlers/tool.js.map +0 -1
  82. package/dist/main/services/automation/index.d.ts.map +0 -1
  83. package/dist/main/services/automation/index.js.map +0 -1
  84. package/dist/main/services/automation/registry.d.ts.map +0 -1
  85. package/dist/main/services/automation/registry.js.map +0 -1
  86. package/dist/main/services/automation/shared.d.ts.map +0 -1
  87. package/dist/main/services/automation/shared.js.map +0 -1
  88. package/dist/main/services/default-adapter.d.ts.map +0 -1
  89. package/dist/main/services/default-adapter.js.map +0 -1
  90. package/dist/main/services/layout/index.d.ts.map +0 -1
  91. package/dist/main/services/layout/index.js.map +0 -1
  92. package/dist/main/services/mcp/index.d.ts.map +0 -1
  93. package/dist/main/services/mcp/index.js.map +0 -1
  94. package/dist/main/services/mcp/server.d.ts.map +0 -1
  95. package/dist/main/services/mcp/server.js.map +0 -1
  96. package/dist/main/services/mcp/target-manager.d.ts.map +0 -1
  97. package/dist/main/services/mcp/target-manager.js.map +0 -1
  98. package/dist/main/services/mcp/tool-registry.d.ts.map +0 -1
  99. package/dist/main/services/mcp/tool-registry.js.map +0 -1
  100. package/dist/main/services/mcp/tools/context-tools.d.ts.map +0 -1
  101. package/dist/main/services/mcp/tools/context-tools.js.map +0 -1
  102. package/dist/main/services/mcp/tools/simulator-tools.d.ts.map +0 -1
  103. package/dist/main/services/mcp/tools/simulator-tools.js.map +0 -1
  104. package/dist/main/services/mcp/tools/workbench-tools.d.ts.map +0 -1
  105. package/dist/main/services/mcp/tools/workbench-tools.js.map +0 -1
  106. package/dist/main/services/notifications/renderer-notifier.d.ts.map +0 -1
  107. package/dist/main/services/notifications/renderer-notifier.js.map +0 -1
  108. package/dist/main/services/projects/index.d.ts.map +0 -1
  109. package/dist/main/services/projects/index.js.map +0 -1
  110. package/dist/main/services/projects/project-repository.d.ts.map +0 -1
  111. package/dist/main/services/projects/project-repository.js.map +0 -1
  112. package/dist/main/services/settings/index.d.ts.map +0 -1
  113. package/dist/main/services/settings/index.js.map +0 -1
  114. package/dist/main/services/simulator/dir.d.ts.map +0 -1
  115. package/dist/main/services/simulator/dir.js.map +0 -1
  116. package/dist/main/services/simulator/referer.d.ts.map +0 -1
  117. package/dist/main/services/simulator/referer.js.map +0 -1
  118. package/dist/main/services/views/view-manager.d.ts.map +0 -1
  119. package/dist/main/services/views/view-manager.js.map +0 -1
  120. package/dist/main/services/workbench-context.d.ts.map +0 -1
  121. package/dist/main/services/workbench-context.js.map +0 -1
  122. package/dist/main/services/workspace/index.d.ts.map +0 -1
  123. package/dist/main/services/workspace/index.js.map +0 -1
  124. package/dist/main/services/workspace/workspace-service.d.ts.map +0 -1
  125. package/dist/main/services/workspace/workspace-service.js.map +0 -1
  126. package/dist/main/utils/logger.d.ts.map +0 -1
  127. package/dist/main/utils/logger.js.map +0 -1
  128. package/dist/main/utils/paths.d.ts.map +0 -1
  129. package/dist/main/utils/paths.js.map +0 -1
  130. package/dist/main/utils/theme.d.ts.map +0 -1
  131. package/dist/main/utils/theme.js.map +0 -1
  132. package/dist/main/windows/main-window/create.d.ts.map +0 -1
  133. package/dist/main/windows/main-window/create.js.map +0 -1
  134. package/dist/main/windows/main-window/events.d.ts.map +0 -1
  135. package/dist/main/windows/main-window/events.js.map +0 -1
  136. package/dist/main/windows/main-window/index.d.ts.map +0 -1
  137. package/dist/main/windows/main-window/index.js.map +0 -1
  138. package/dist/main/windows/settings-window/create.d.ts.map +0 -1
  139. package/dist/main/windows/settings-window/create.js.map +0 -1
  140. package/dist/main/windows/settings-window/events.d.ts.map +0 -1
  141. package/dist/main/windows/settings-window/events.js.map +0 -1
  142. package/dist/main/windows/settings-window/index.d.ts.map +0 -1
  143. package/dist/main/windows/settings-window/index.js.map +0 -1
  144. package/dist/preload/instrumentation/app-data.d.ts.map +0 -1
  145. package/dist/preload/instrumentation/app-data.js.map +0 -1
  146. package/dist/preload/instrumentation/console.d.ts.map +0 -1
  147. package/dist/preload/instrumentation/console.js.map +0 -1
  148. package/dist/preload/instrumentation/disposable.d.ts.map +0 -1
  149. package/dist/preload/instrumentation/disposable.js.map +0 -1
  150. package/dist/preload/instrumentation/index.d.ts.map +0 -1
  151. package/dist/preload/instrumentation/index.js.map +0 -1
  152. package/dist/preload/instrumentation/storage.d.ts +0 -2
  153. package/dist/preload/instrumentation/storage.d.ts.map +0 -1
  154. package/dist/preload/instrumentation/storage.js +0 -106
  155. package/dist/preload/instrumentation/storage.js.map +0 -1
  156. package/dist/preload/instrumentation/wxml-extract.d.ts.map +0 -1
  157. package/dist/preload/instrumentation/wxml-extract.js.map +0 -1
  158. package/dist/preload/instrumentation/wxml.d.ts.map +0 -1
  159. package/dist/preload/instrumentation/wxml.js.map +0 -1
  160. package/dist/preload/runtime/bridge.d.ts.map +0 -1
  161. package/dist/preload/runtime/bridge.js.map +0 -1
  162. package/dist/preload/runtime/host.d.ts.map +0 -1
  163. package/dist/preload/runtime/host.js.map +0 -1
  164. package/dist/preload/shared/api-compat.d.ts.map +0 -1
  165. package/dist/preload/shared/api-compat.js.map +0 -1
  166. package/dist/preload/shared/constants.d.ts.map +0 -1
  167. package/dist/preload/shared/constants.js.map +0 -1
  168. package/dist/preload/shared/types.d.ts.map +0 -1
  169. package/dist/preload/shared/types.js.map +0 -1
  170. package/dist/preload/windows/main.d.ts.map +0 -1
  171. package/dist/preload/windows/main.js.map +0 -1
  172. package/dist/preload/windows/simulator.js.map +0 -7
  173. package/dist/renderer/assets/index-kcmIQPCg.js +0 -2
  174. package/dist/renderer/assets/index-kcmIQPCg.js.map +0 -1
  175. package/dist/renderer/assets/input-B7sz4y1r.js.map +0 -1
  176. package/dist/renderer/assets/ipc-transport-C9-PPTGn.css +0 -1
  177. package/dist/renderer/assets/ipc-transport-L_WD9x12.js.map +0 -1
  178. package/dist/renderer/assets/popover-CzMIs2j4.js.map +0 -1
  179. package/dist/renderer/assets/select-BBXJVe8R.js.map +0 -1
  180. package/dist/renderer/assets/settings-Db1pvrBJ.js.map +0 -1
  181. package/dist/renderer/assets/settings-api-DJ1M-CNt.js +0 -2
  182. package/dist/renderer/assets/settings-api-DJ1M-CNt.js.map +0 -1
  183. package/dist/renderer/assets/workbenchSettings-BnQsvWkQ.js.map +0 -1
  184. package/dist/shared/constants.d.ts.map +0 -1
  185. package/dist/shared/constants.js.map +0 -1
  186. package/dist/shared/ipc-channels.d.ts.map +0 -1
  187. package/dist/shared/ipc-channels.js.map +0 -1
  188. package/dist/shared/types.d.ts.map +0 -1
  189. package/dist/shared/types.js.map +0 -1
  190. package/dist/simulator/assets/simulator-C1eHXnuq.js.map +0 -1
@@ -17,5 +17,7 @@ export { registerSessionIpc } from './ipc/session.js';
17
17
  export { registerToolbarIpc } from './ipc/toolbar.js';
18
18
  export { rendererDir, defaultPreloadPath, getRendererDir, getPreloadDir, getRendererHtml } from './utils/paths.js';
19
19
  export { simulatorDir } from './services/simulator/dir.js';
20
- export type { WorkbenchConfig, WorkbenchAppConfig, CompilationAdapter, ProjectSession, ToolbarAction, BuiltinPanelId, BuiltinModuleId, } from '../shared/types.js';
20
+ export { UpdateManager, createGitHubReleaseChecker } from './services/update/index.js';
21
+ export type { UpdateManagerOptions, GitHubReleaseCheckerOptions, PickAssetContext, VersionScheme, } from './services/update/index.js';
22
+ export type { WorkbenchConfig, WorkbenchAppConfig, CompilationAdapter, ProjectSession, ToolbarAction, BuiltinPanelId, BuiltinModuleId, UpdateChecker, UpdateInfo, } from '../shared/types.js';
21
23
  //# sourceMappingURL=api.d.ts.map
package/dist/main/api.js CHANGED
@@ -19,4 +19,6 @@ export { registerToolbarIpc } from './ipc/toolbar.js';
19
19
  // ── Paths ────────────────────────────────────────────────────────────────
20
20
  export { rendererDir, defaultPreloadPath, getRendererDir, getPreloadDir, getRendererHtml } from './utils/paths.js';
21
21
  export { simulatorDir } from './services/simulator/dir.js';
22
+ // ── Update checker ───────────────────────────────────────────────────────
23
+ export { UpdateManager, createGitHubReleaseChecker } from './services/update/index.js';
22
24
  //# sourceMappingURL=api.js.map
@@ -2,10 +2,12 @@ import { BrowserWindow } from 'electron';
2
2
  import type { WorkbenchAppConfig } from '../../shared/types.js';
3
3
  import { type WorkbenchContext } from '../services/workbench-context.js';
4
4
  import { type AutomationServer } from '../services/automation/index.js';
5
+ import { UpdateManager } from '../services/update/index.js';
5
6
  export interface WorkbenchAppInstance {
6
7
  mainWindow: BrowserWindow;
7
8
  context: WorkbenchContext;
8
9
  automationServer?: AutomationServer;
10
+ updateManager?: UpdateManager;
9
11
  dispose: () => Promise<void>;
10
12
  }
11
13
  export declare function createWorkbenchApp(config?: WorkbenchAppConfig): {
@@ -11,6 +11,8 @@ import { installAppMenu } from '../menu/index.js';
11
11
  import { registerAppIpc, registerSimulatorIpc, registerPanelsIpc, registerPopoverIpc, registerProjectsIpc, registerSessionIpc, registerSettingsIpc, registerToolbarIpc, } from '../ipc/index.js';
12
12
  import { startAutomationServer } from '../services/automation/index.js';
13
13
  import { startMcpServer } from '../services/mcp/index.js';
14
+ import { setupSimulatorStorage } from '../services/simulator-storage/index.js';
15
+ import { UpdateManager } from '../services/update/index.js';
14
16
  const DEFAULT_MODULES = {
15
17
  projects: true,
16
18
  session: true,
@@ -39,7 +41,10 @@ function parseAutoArgs() {
39
41
  if (argv[i] === 'auto' || argv[i] === '--auto')
40
42
  auto = true;
41
43
  if ((argv[i] === '--auto-port' || argv[i] === '--auto_port') && argv[i + 1]) {
42
- autoPort = parseInt(argv[i + 1], 10);
44
+ const parsed = parseInt(argv[i + 1], 10);
45
+ // 0 → OS-assigned free port (used by parallel e2e workers)
46
+ if (Number.isFinite(parsed) && parsed >= 0)
47
+ autoPort = parsed;
43
48
  }
44
49
  if (argv[i] === '--project' && argv[i + 1]) {
45
50
  projectPath = argv[i + 1];
@@ -53,7 +58,8 @@ function resolveModules(config) {
53
58
  ...config.modules,
54
59
  };
55
60
  }
56
- async function disposeContext(ctx) {
61
+ async function disposeContext(ctx, updateManager) {
62
+ updateManager?.dispose();
57
63
  await ctx.workspace.closeProject();
58
64
  }
59
65
  function createConfiguredMainWindow(config, rendererDir) {
@@ -102,12 +108,14 @@ function installMenu(config, mainWindow, context) {
102
108
  installAppMenu(context);
103
109
  }
104
110
  }
105
- function setupAutomation(instance) {
111
+ async function setupAutomation(instance) {
106
112
  // Start automation server if --auto flag is present
107
113
  const autoArgs = parseAutoArgs();
108
114
  if (autoArgs.auto) {
109
- instance.automationServer = startAutomationServer(instance.context, autoArgs.autoPort);
110
- console.log(`[Automation] WebSocket server listening on ws://127.0.0.1:${autoArgs.autoPort}`);
115
+ const server = await startAutomationServer(instance.context, autoArgs.autoPort);
116
+ instance.automationServer = server;
117
+ // Stable, parseable line for e2e harnesses that scrape stdout.
118
+ console.log(`[automation] listening on ws://127.0.0.1:${server.port}`);
111
119
  }
112
120
  }
113
121
  function setupMcp() {
@@ -165,12 +173,26 @@ export function createWorkbenchApp(config = {}) {
165
173
  registerAppIpc(context);
166
174
  registerBuiltinModules(config, context);
167
175
  installMenu(config, mainWindow, context);
168
- const instance = { mainWindow, context, dispose: () => disposeContext(context) };
176
+ const instance = {
177
+ mainWindow,
178
+ context,
179
+ dispose: () => disposeContext(context, instance.updateManager),
180
+ };
169
181
  if (config.onSetup) {
170
182
  await config.onSetup(instance);
171
183
  }
172
- setupAutomation(instance);
184
+ if (config.updateChecker) {
185
+ instance.updateManager = new UpdateManager({
186
+ checker: config.updateChecker,
187
+ mainWindow,
188
+ checkInterval: config.updateOptions?.checkInterval,
189
+ initialDelay: config.updateOptions?.initialDelay,
190
+ getCurrentVersion: config.updateOptions?.getCurrentVersion,
191
+ });
192
+ }
193
+ await setupAutomation(instance);
173
194
  setupMcp();
195
+ setupSimulatorStorage(mainWindow.webContents);
174
196
  wireAppWindowEvents(config, instance);
175
197
  enableDevRendererAutoReload(rendererDir);
176
198
  return instance;