@jingyi0605/codingns 0.8.0 → 0.8.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (620) hide show
  1. package/bin/codingns.mjs +180 -0
  2. package/dist/public/assets/{AdaptiveButlerPage-BsgVNRAa.js → AdaptiveButlerPage-CJw8Ae62.js} +3 -3
  3. package/dist/public/assets/App-BOHBGFOd.js +30 -0
  4. package/dist/public/assets/{BootstrapPage--MDOigQi.js → BootstrapPage-BxHQT4nA.js} +1 -1
  5. package/dist/public/assets/{ConversationPage-BBss5ED8.js → ConversationPage-DWFsF6BB.js} +6 -6
  6. package/dist/public/assets/{DesktopDetachPreviewPage-CB8DoqwU.js → DesktopDetachPreviewPage-DOgEjYEf.js} +1 -1
  7. package/dist/public/assets/DesktopModal-D_A8sgQU.js +1 -0
  8. package/dist/public/assets/DesktopWindowPage-DK7L7osV.js +2 -0
  9. package/dist/public/assets/FileContextPanel-BdCoubcJ.js +1 -0
  10. package/dist/public/assets/GitSidebar-BeZ0hj7A.js +6 -0
  11. package/dist/public/assets/MobileCreateSessionSheet-DfLMVu8q.js +1 -0
  12. package/dist/public/assets/MobileSheet-5kZ-w-gU.js +1 -0
  13. package/dist/public/assets/{MobileTopHeaderFrame-DGVOzXyg.js → MobileTopHeaderFrame-lcp2GscV.js} +1 -1
  14. package/dist/public/assets/MobileWorkspaceSwitcherHeader-C6JMiOq_.js +1 -0
  15. package/dist/public/assets/PluginAccessOverview-DGcKAMQl.js +1 -0
  16. package/dist/public/assets/PluginContainerPage-BlY-xJDh.js +1 -0
  17. package/dist/public/assets/PluginDetailPage-CAJ7LFpD.js +1 -0
  18. package/dist/public/assets/PluginsListPage-BxZG1NyT.js +1 -0
  19. package/dist/public/assets/{RelayConnectEntryPage-0MPPjxtQ.js → RelayConnectEntryPage-CfNO_TIl.js} +1 -1
  20. package/dist/public/assets/ServerSettingsModal-by36Z_5k.js +1 -0
  21. package/dist/public/assets/SessionIndexPage-DkBp9Mqz.js +1 -0
  22. package/dist/public/assets/SettingsPage-C-ASmJAG.js +2 -0
  23. package/dist/public/assets/TerminalManagerPanel-NVZRxxmH.js +1 -0
  24. package/dist/public/assets/{TerminalPage-B6Rdhylx.js → TerminalPage-C4LNoPBp.js} +3 -3
  25. package/dist/public/assets/TerminalRuntimeFallbackModal-Bzum5nZ0.js +1 -0
  26. package/dist/public/assets/ToolFilesPage-47zbdgTW.js +1 -0
  27. package/dist/public/assets/ToolGitPage-Fuk_b_jg.js +1 -0
  28. package/dist/public/assets/ToolProcessesPage-sWSMWD-9.js +1 -0
  29. package/dist/public/assets/ToolsHomePage-R1mZlbZi.js +1 -0
  30. package/dist/public/assets/WorkbenchLandingPage-CqmiFH2u.js +1 -0
  31. package/dist/public/assets/WorkbenchLayout-OFi6CWgH.js +244 -0
  32. package/dist/public/assets/WorkbenchModal-C7qoQElW.js +1 -0
  33. package/dist/public/assets/WorkbenchShellRoute-BAQe_E0O.js +1 -0
  34. package/dist/public/assets/WorkspaceDebugDetailPage-DhKa6e9y.js +1 -0
  35. package/dist/public/assets/WorkspaceDetailPage-BPsrFffw.js +1 -0
  36. package/dist/public/assets/WorkspaceHomePage-KAtqZOAb.js +1 -0
  37. package/dist/public/assets/{client-runtime-manager-DGdKvYzx.js → client-runtime-manager-wmCJZKYd.js} +1 -1
  38. package/dist/public/assets/file-tree-icon-Mg1DiBRX.js +590 -0
  39. package/dist/public/assets/{index-CcaQt50x.css → index-C4t-vvqk.css} +1 -1
  40. package/dist/public/assets/index-CL97fwWB.js +42 -0
  41. package/dist/public/assets/{login-direct-candidate-resolver-DEP_xCmR.js → login-direct-candidate-resolver-BOAgTuUf.js} +1 -1
  42. package/dist/public/assets/plugin-permission-copy-Cq99cnzV.js +1 -0
  43. package/dist/public/assets/plugins-api-BQTV5DOp.js +1 -0
  44. package/dist/public/assets/{preferences-service-CV6Ih0BG.js → preferences-service-DJxbEEeg.js} +1 -1
  45. package/dist/public/assets/realtime-client-CLafKzzJ.js +1 -0
  46. package/dist/public/assets/{relay-entry-C751A-Sm.js → relay-entry-D-LfvdiX.js} +1 -1
  47. package/dist/public/assets/{terminal-runtime-meta-CRAVR-8G.js → terminal-runtime-meta-BJmy8dyK.js} +1 -1
  48. package/dist/public/assets/useRegisteredDebugTemplates-DQAWVdCo.js +1 -0
  49. package/dist/public/assets/workbench-navigation-MEzCSmsK.js +1 -0
  50. package/dist/public/index.html +2 -2
  51. package/dist/server/config/env.d.ts +1 -0
  52. package/dist/server/config/env.js +4 -0
  53. package/dist/server/config/env.js.map +1 -1
  54. package/dist/server/helpers/wechat-claw-runtime/modules/runtime-state-store.js +1 -1
  55. package/dist/server/helpers/wechat-claw-runtime/modules/runtime-state-store.js.map +1 -1
  56. package/dist/server/main.js +2 -0
  57. package/dist/server/main.js.map +1 -1
  58. package/dist/server/modules/assistant-capability/assistant-capability-controller.d.ts +1 -0
  59. package/dist/server/modules/assistant-capability/assistant-capability-controller.js +1 -0
  60. package/dist/server/modules/assistant-capability/assistant-capability-controller.js.map +1 -1
  61. package/dist/server/modules/assistant-capability/assistant-capability-service.d.ts +1 -0
  62. package/dist/server/modules/assistant-capability/assistant-capability-service.js +1 -0
  63. package/dist/server/modules/assistant-capability/assistant-capability-service.js.map +1 -1
  64. package/dist/server/modules/browser-runtime/browser-runtime-controller.d.ts +2 -1
  65. package/dist/server/modules/browser-runtime/browser-runtime-controller.js +1 -0
  66. package/dist/server/modules/browser-runtime/browser-runtime-controller.js.map +1 -1
  67. package/dist/server/modules/browser-runtime/browser-runtime-service.d.ts +4 -1
  68. package/dist/server/modules/browser-runtime/browser-runtime-service.js +40 -0
  69. package/dist/server/modules/browser-runtime/browser-runtime-service.js.map +1 -1
  70. package/dist/server/modules/browser-runtime/browser-task-payload.d.ts +2 -0
  71. package/dist/server/modules/browser-runtime/browser-task-payload.js.map +1 -1
  72. package/dist/server/modules/file/file-access-guard.d.ts +2 -0
  73. package/dist/server/modules/file/file-access-guard.js +24 -2
  74. package/dist/server/modules/file/file-access-guard.js.map +1 -1
  75. package/dist/server/modules/file/file-controller.d.ts +153 -1
  76. package/dist/server/modules/file/file-controller.js +215 -1
  77. package/dist/server/modules/file/file-controller.js.map +1 -1
  78. package/dist/server/modules/file/file-preview-link-service.d.ts +2 -0
  79. package/dist/server/modules/file/file-preview-link-service.js +5 -1
  80. package/dist/server/modules/file/file-preview-link-service.js.map +1 -1
  81. package/dist/server/modules/file/runtime/codingns-workspace-bridge.js +911 -0
  82. package/dist/server/modules/file/workspace-file-bridge-service.d.ts +126 -0
  83. package/dist/server/modules/file/workspace-file-bridge-service.js +471 -0
  84. package/dist/server/modules/file/workspace-file-bridge-service.js.map +1 -0
  85. package/dist/server/modules/file/workspace-file-bridge-watch-service.d.ts +42 -0
  86. package/dist/server/modules/file/workspace-file-bridge-watch-service.js +304 -0
  87. package/dist/server/modules/file/workspace-file-bridge-watch-service.js.map +1 -0
  88. package/dist/server/modules/git/git-command-helper-process.js +0 -18
  89. package/dist/server/modules/git/git-command-helper-process.js.map +1 -1
  90. package/dist/server/modules/git/git-command-runner.js +0 -18
  91. package/dist/server/modules/git/git-command-runner.js.map +1 -1
  92. package/dist/server/modules/model-switch/cc-switch-adapter.js +1 -1
  93. package/dist/server/modules/model-switch/cc-switch-adapter.js.map +1 -1
  94. package/dist/server/modules/plugins/plugin-controller.d.ts +131 -0
  95. package/dist/server/modules/plugins/plugin-controller.js +277 -0
  96. package/dist/server/modules/plugins/plugin-controller.js.map +1 -0
  97. package/dist/server/modules/plugins/plugin-file-gateway-service.d.ts +38 -0
  98. package/dist/server/modules/plugins/plugin-file-gateway-service.js +178 -0
  99. package/dist/server/modules/plugins/plugin-file-gateway-service.js.map +1 -0
  100. package/dist/server/modules/plugins/plugin-manifest.d.ts +8 -0
  101. package/dist/server/modules/plugins/plugin-manifest.js +420 -0
  102. package/dist/server/modules/plugins/plugin-manifest.js.map +1 -0
  103. package/dist/server/modules/plugins/plugin-permission-service.d.ts +49 -0
  104. package/dist/server/modules/plugins/plugin-permission-service.js +267 -0
  105. package/dist/server/modules/plugins/plugin-permission-service.js.map +1 -0
  106. package/dist/server/modules/plugins/plugin-process-runner.d.ts +21 -0
  107. package/dist/server/modules/plugins/plugin-process-runner.js +127 -0
  108. package/dist/server/modules/plugins/plugin-process-runner.js.map +1 -0
  109. package/dist/server/modules/plugins/plugin-registry-service.d.ts +41 -0
  110. package/dist/server/modules/plugins/plugin-registry-service.js +238 -0
  111. package/dist/server/modules/plugins/plugin-registry-service.js.map +1 -0
  112. package/dist/server/modules/plugins/plugin-runtime-service.d.ts +55 -0
  113. package/dist/server/modules/plugins/plugin-runtime-service.js +252 -0
  114. package/dist/server/modules/plugins/plugin-runtime-service.js.map +1 -0
  115. package/dist/server/modules/plugins/plugin-runtime-session-service.d.ts +21 -0
  116. package/dist/server/modules/plugins/plugin-runtime-session-service.js +83 -0
  117. package/dist/server/modules/plugins/plugin-runtime-session-service.js.map +1 -0
  118. package/dist/server/modules/plugins/plugin-scheduler-service.d.ts +31 -0
  119. package/dist/server/modules/plugins/plugin-scheduler-service.js +232 -0
  120. package/dist/server/modules/plugins/plugin-scheduler-service.js.map +1 -0
  121. package/dist/server/modules/plugins/plugin-static-service.d.ts +11 -0
  122. package/dist/server/modules/plugins/plugin-static-service.js +145 -0
  123. package/dist/server/modules/plugins/plugin-static-service.js.map +1 -0
  124. package/dist/server/modules/presentation/presentation-controller.d.ts +3 -0
  125. package/dist/server/modules/presentation/presentation-controller.js +11 -0
  126. package/dist/server/modules/presentation/presentation-controller.js.map +1 -1
  127. package/dist/server/modules/presentation/presentation-export-task-service.d.ts +6 -0
  128. package/dist/server/modules/presentation/presentation-export-task-service.js +52 -8
  129. package/dist/server/modules/presentation/presentation-export-task-service.js.map +1 -1
  130. package/dist/server/modules/presentation/presentation-pptx-export-service.js +200 -14
  131. package/dist/server/modules/presentation/presentation-pptx-export-service.js.map +1 -1
  132. package/dist/server/modules/presentation/presentation-renderer.d.ts +50 -0
  133. package/dist/server/modules/presentation/presentation-renderer.js +450 -37
  134. package/dist/server/modules/presentation/presentation-renderer.js.map +1 -1
  135. package/dist/server/modules/sessions/session-live-runtime-service.js +46 -3
  136. package/dist/server/modules/sessions/session-live-runtime-service.js.map +1 -1
  137. package/dist/server/modules/sessions/workspace-session-runtime-context-service.d.ts +1 -0
  138. package/dist/server/modules/sessions/workspace-session-runtime-context-service.js +11 -2
  139. package/dist/server/modules/sessions/workspace-session-runtime-context-service.js.map +1 -1
  140. package/dist/server/modules/skills/builtin-skills/codingns-workspace-session/SKILL.md +2 -2
  141. package/dist/server/modules/tasks/task-types.d.ts +2 -0
  142. package/dist/server/modules/tasks/task-types.js +2 -0
  143. package/dist/server/modules/tasks/task-types.js.map +1 -1
  144. package/dist/server/modules/terminal/runtime/terminal-log-writer-process.js +1 -1
  145. package/dist/server/modules/terminal/runtime/terminal-log-writer-process.js.map +1 -1
  146. package/dist/server/routes/files.js +40 -0
  147. package/dist/server/routes/files.js.map +1 -1
  148. package/dist/server/routes/plugins-public.d.ts +3 -0
  149. package/dist/server/routes/plugins-public.js +5 -0
  150. package/dist/server/routes/plugins-public.js.map +1 -0
  151. package/dist/server/routes/plugins.d.ts +3 -0
  152. package/dist/server/routes/plugins.js +19 -0
  153. package/dist/server/routes/plugins.js.map +1 -0
  154. package/dist/server/routes/presentation.js +1 -0
  155. package/dist/server/routes/presentation.js.map +1 -1
  156. package/dist/server/server/create-server.d.ts +20 -0
  157. package/dist/server/server/create-server.js +47 -1
  158. package/dist/server/server/create-server.js.map +1 -1
  159. package/dist/server/shared/http/error-handler.js +63 -25
  160. package/dist/server/shared/http/error-handler.js.map +1 -1
  161. package/dist/server/shared/runtime/better-sqlite3.d.ts +5 -0
  162. package/dist/server/shared/runtime/better-sqlite3.js +6 -0
  163. package/dist/server/shared/runtime/better-sqlite3.js.map +1 -0
  164. package/dist/server/shared/utils/install-console-timestamp-prefix.d.ts +1 -0
  165. package/dist/server/shared/utils/install-console-timestamp-prefix.js +28 -0
  166. package/dist/server/shared/utils/install-console-timestamp-prefix.js.map +1 -0
  167. package/dist/server/storage/repositories/plugin-audit-event-repository.d.ts +8 -0
  168. package/dist/server/storage/repositories/plugin-audit-event-repository.js +49 -0
  169. package/dist/server/storage/repositories/plugin-audit-event-repository.js.map +1 -0
  170. package/dist/server/storage/repositories/plugin-definition-repository.d.ts +10 -0
  171. package/dist/server/storage/repositories/plugin-definition-repository.js +84 -0
  172. package/dist/server/storage/repositories/plugin-definition-repository.js.map +1 -0
  173. package/dist/server/storage/repositories/plugin-enablement-repository.d.ts +9 -0
  174. package/dist/server/storage/repositories/plugin-enablement-repository.js +74 -0
  175. package/dist/server/storage/repositories/plugin-enablement-repository.js.map +1 -0
  176. package/dist/server/storage/repositories/plugin-permission-grant-repository.d.ts +12 -0
  177. package/dist/server/storage/repositories/plugin-permission-grant-repository.js +142 -0
  178. package/dist/server/storage/repositories/plugin-permission-grant-repository.js.map +1 -0
  179. package/dist/server/storage/repositories/plugin-run-repository.d.ts +10 -0
  180. package/dist/server/storage/repositories/plugin-run-repository.js +111 -0
  181. package/dist/server/storage/repositories/plugin-run-repository.js.map +1 -0
  182. package/dist/server/storage/repositories/plugin-runtime-session-repository.d.ts +10 -0
  183. package/dist/server/storage/repositories/plugin-runtime-session-repository.js +86 -0
  184. package/dist/server/storage/repositories/plugin-runtime-session-repository.js.map +1 -0
  185. package/dist/server/storage/sqlite/client.d.ts +2 -2
  186. package/dist/server/storage/sqlite/client.js +250 -1
  187. package/dist/server/storage/sqlite/client.js.map +1 -1
  188. package/dist/server/storage/sqlite/schema.sql +140 -0
  189. package/dist/server/types/domain.d.ts +122 -0
  190. package/node_modules/@codingns/session-sync-core/dist/claude-message-utils.d.ts +42 -0
  191. package/node_modules/@codingns/session-sync-core/dist/claude-message-utils.js +346 -0
  192. package/node_modules/@codingns/session-sync-core/dist/claude-message-utils.js.map +1 -0
  193. package/node_modules/@codingns/session-sync-core/dist/codex-resume-history.d.ts +1 -0
  194. package/node_modules/@codingns/session-sync-core/dist/codex-resume-history.js +80 -0
  195. package/node_modules/@codingns/session-sync-core/dist/codex-resume-history.js.map +1 -0
  196. package/node_modules/@codingns/session-sync-core/dist/index.d.ts +18 -0
  197. package/node_modules/@codingns/session-sync-core/dist/index.js +19 -0
  198. package/node_modules/@codingns/session-sync-core/dist/index.js.map +1 -0
  199. package/node_modules/@codingns/session-sync-core/dist/kimi-message-normalizer.d.ts +18 -0
  200. package/node_modules/@codingns/session-sync-core/dist/kimi-message-normalizer.js +659 -0
  201. package/node_modules/@codingns/session-sync-core/dist/kimi-message-normalizer.js.map +1 -0
  202. package/node_modules/@codingns/session-sync-core/dist/kimi-shared.d.ts +11 -0
  203. package/node_modules/@codingns/session-sync-core/dist/kimi-shared.js +72 -0
  204. package/node_modules/@codingns/session-sync-core/dist/kimi-shared.js.map +1 -0
  205. package/node_modules/@codingns/session-sync-core/dist/patch-builder.d.ts +67 -0
  206. package/node_modules/@codingns/session-sync-core/dist/patch-builder.js +752 -0
  207. package/node_modules/@codingns/session-sync-core/dist/patch-builder.js.map +1 -0
  208. package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.d.ts +48 -0
  209. package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.js +1184 -0
  210. package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.js.map +1 -0
  211. package/node_modules/@codingns/session-sync-core/dist/providers/claude-session-store.d.ts +11 -0
  212. package/node_modules/@codingns/session-sync-core/dist/providers/claude-session-store.js +105 -0
  213. package/node_modules/@codingns/session-sync-core/dist/providers/claude-session-store.js.map +1 -0
  214. package/node_modules/@codingns/session-sync-core/dist/providers/codex.d.ts +84 -0
  215. package/node_modules/@codingns/session-sync-core/dist/providers/codex.js +2436 -0
  216. package/node_modules/@codingns/session-sync-core/dist/providers/codex.js.map +1 -0
  217. package/node_modules/@codingns/session-sync-core/dist/providers/gemini.d.ts +47 -0
  218. package/node_modules/@codingns/session-sync-core/dist/providers/gemini.js +1480 -0
  219. package/node_modules/@codingns/session-sync-core/dist/providers/gemini.js.map +1 -0
  220. package/node_modules/@codingns/session-sync-core/dist/providers/kimi.d.ts +33 -0
  221. package/node_modules/@codingns/session-sync-core/dist/providers/kimi.js +684 -0
  222. package/node_modules/@codingns/session-sync-core/dist/providers/kimi.js.map +1 -0
  223. package/node_modules/@codingns/session-sync-core/dist/providers/legna-code.d.ts +9 -0
  224. package/node_modules/@codingns/session-sync-core/dist/providers/legna-code.js +17 -0
  225. package/node_modules/@codingns/session-sync-core/dist/providers/legna-code.js.map +1 -0
  226. package/node_modules/@codingns/session-sync-core/dist/providers/opencode-permissions.d.ts +1 -0
  227. package/node_modules/@codingns/session-sync-core/dist/providers/opencode-permissions.js +8 -0
  228. package/node_modules/@codingns/session-sync-core/dist/providers/opencode-permissions.js.map +1 -0
  229. package/node_modules/@codingns/session-sync-core/dist/providers/opencode-shared.d.ts +48 -0
  230. package/node_modules/@codingns/session-sync-core/dist/providers/opencode-shared.js +373 -0
  231. package/node_modules/@codingns/session-sync-core/dist/providers/opencode-shared.js.map +1 -0
  232. package/node_modules/@codingns/session-sync-core/dist/providers/opencode.d.ts +61 -0
  233. package/node_modules/@codingns/session-sync-core/dist/providers/opencode.js +1191 -0
  234. package/node_modules/@codingns/session-sync-core/dist/providers/opencode.js.map +1 -0
  235. package/node_modules/@codingns/session-sync-core/dist/providers/utils.d.ts +27 -0
  236. package/node_modules/@codingns/session-sync-core/dist/providers/utils.js +415 -0
  237. package/node_modules/@codingns/session-sync-core/dist/providers/utils.js.map +1 -0
  238. package/node_modules/@codingns/session-sync-core/dist/registry.d.ts +7 -0
  239. package/node_modules/@codingns/session-sync-core/dist/registry.js +22 -0
  240. package/node_modules/@codingns/session-sync-core/dist/registry.js.map +1 -0
  241. package/node_modules/@codingns/session-sync-core/dist/runtime/active-run-registry.d.ts +24 -0
  242. package/node_modules/@codingns/session-sync-core/dist/runtime/active-run-registry.js +329 -0
  243. package/node_modules/@codingns/session-sync-core/dist/runtime/active-run-registry.js.map +1 -0
  244. package/node_modules/@codingns/session-sync-core/dist/runtime/claude-runtime.d.ts +30 -0
  245. package/node_modules/@codingns/session-sync-core/dist/runtime/claude-runtime.js +939 -0
  246. package/node_modules/@codingns/session-sync-core/dist/runtime/claude-runtime.js.map +1 -0
  247. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-permissions.d.ts +1 -0
  248. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-permissions.js +16 -0
  249. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-permissions.js.map +1 -0
  250. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.d.ts +70 -0
  251. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js +2571 -0
  252. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js.map +1 -0
  253. package/node_modules/@codingns/session-sync-core/dist/runtime/gemini-runtime.d.ts +21 -0
  254. package/node_modules/@codingns/session-sync-core/dist/runtime/gemini-runtime.js +561 -0
  255. package/node_modules/@codingns/session-sync-core/dist/runtime/gemini-runtime.js.map +1 -0
  256. package/node_modules/@codingns/session-sync-core/dist/runtime/kimi-runtime.d.ts +38 -0
  257. package/node_modules/@codingns/session-sync-core/dist/runtime/kimi-runtime.js +911 -0
  258. package/node_modules/@codingns/session-sync-core/dist/runtime/kimi-runtime.js.map +1 -0
  259. package/node_modules/@codingns/session-sync-core/dist/runtime/legna-runtime.d.ts +15 -0
  260. package/node_modules/@codingns/session-sync-core/dist/runtime/legna-runtime.js +16 -0
  261. package/node_modules/@codingns/session-sync-core/dist/runtime/legna-runtime.js.map +1 -0
  262. package/node_modules/@codingns/session-sync-core/dist/runtime/opencode-runtime.d.ts +38 -0
  263. package/node_modules/@codingns/session-sync-core/dist/runtime/opencode-runtime.js +970 -0
  264. package/node_modules/@codingns/session-sync-core/dist/runtime/opencode-runtime.js.map +1 -0
  265. package/node_modules/@codingns/session-sync-core/dist/runtime/provider-runtime-service.d.ts +21 -0
  266. package/node_modules/@codingns/session-sync-core/dist/runtime/provider-runtime-service.js +168 -0
  267. package/node_modules/@codingns/session-sync-core/dist/runtime/provider-runtime-service.js.map +1 -0
  268. package/node_modules/@codingns/session-sync-core/dist/runtime/types.d.ts +152 -0
  269. package/node_modules/@codingns/session-sync-core/dist/runtime/types.js +2 -0
  270. package/node_modules/@codingns/session-sync-core/dist/runtime/types.js.map +1 -0
  271. package/node_modules/@codingns/session-sync-core/dist/services.d.ts +28 -0
  272. package/node_modules/@codingns/session-sync-core/dist/services.js +148 -0
  273. package/node_modules/@codingns/session-sync-core/dist/services.js.map +1 -0
  274. package/node_modules/@codingns/session-sync-core/dist/sqlite/node-sqlite.d.ts +6 -0
  275. package/node_modules/@codingns/session-sync-core/dist/sqlite/node-sqlite.js +9 -0
  276. package/node_modules/@codingns/session-sync-core/dist/sqlite/node-sqlite.js.map +1 -0
  277. package/node_modules/@codingns/session-sync-core/dist/types.d.ts +198 -0
  278. package/node_modules/@codingns/session-sync-core/dist/types.js +2 -0
  279. package/node_modules/@codingns/session-sync-core/dist/types.js.map +1 -0
  280. package/node_modules/@codingns/session-sync-core/package.json +33 -0
  281. package/package.json +15 -6
  282. package/scripts/postinstall.mjs +248 -11
  283. package/vendor/better-sqlite3-win32-x64-node22/LICENSE +21 -0
  284. package/vendor/better-sqlite3-win32-x64-node22/README.md +12 -0
  285. package/vendor/better-sqlite3-win32-x64-node22/README.upstream.md +99 -0
  286. package/vendor/better-sqlite3-win32-x64-node22/binding.gyp +38 -0
  287. package/vendor/better-sqlite3-win32-x64-node22/build/Release/better_sqlite3.node +0 -0
  288. package/vendor/better-sqlite3-win32-x64-node22/deps/common.gypi +68 -0
  289. package/vendor/better-sqlite3-win32-x64-node22/deps/copy.js +31 -0
  290. package/vendor/better-sqlite3-win32-x64-node22/deps/defines.gypi +41 -0
  291. package/vendor/better-sqlite3-win32-x64-node22/deps/download.sh +122 -0
  292. package/vendor/better-sqlite3-win32-x64-node22/deps/patches/1208.patch +15 -0
  293. package/vendor/better-sqlite3-win32-x64-node22/deps/sqlite3/sqlite3.c +265994 -0
  294. package/vendor/better-sqlite3-win32-x64-node22/deps/sqlite3/sqlite3.h +13968 -0
  295. package/vendor/better-sqlite3-win32-x64-node22/deps/sqlite3/sqlite3ext.h +730 -0
  296. package/vendor/better-sqlite3-win32-x64-node22/deps/sqlite3.gyp +80 -0
  297. package/vendor/better-sqlite3-win32-x64-node22/deps/test_extension.c +21 -0
  298. package/vendor/better-sqlite3-win32-x64-node22/lib/database.js +90 -0
  299. package/vendor/better-sqlite3-win32-x64-node22/lib/index.js +3 -0
  300. package/vendor/better-sqlite3-win32-x64-node22/lib/methods/aggregate.js +43 -0
  301. package/vendor/better-sqlite3-win32-x64-node22/lib/methods/backup.js +67 -0
  302. package/vendor/better-sqlite3-win32-x64-node22/lib/methods/function.js +31 -0
  303. package/vendor/better-sqlite3-win32-x64-node22/lib/methods/inspect.js +7 -0
  304. package/vendor/better-sqlite3-win32-x64-node22/lib/methods/pragma.js +12 -0
  305. package/vendor/better-sqlite3-win32-x64-node22/lib/methods/serialize.js +16 -0
  306. package/vendor/better-sqlite3-win32-x64-node22/lib/methods/table.js +189 -0
  307. package/vendor/better-sqlite3-win32-x64-node22/lib/methods/transaction.js +78 -0
  308. package/vendor/better-sqlite3-win32-x64-node22/lib/methods/wrappers.js +54 -0
  309. package/vendor/better-sqlite3-win32-x64-node22/lib/sqlite-error.js +20 -0
  310. package/vendor/better-sqlite3-win32-x64-node22/lib/util.js +12 -0
  311. package/vendor/better-sqlite3-win32-x64-node22/package.json +38 -0
  312. package/vendor/better-sqlite3-win32-x64-node22/scripts/verify-runtime.cjs +42 -0
  313. package/vendor/better-sqlite3-win32-x64-node22/src/addon.cpp +47 -0
  314. package/vendor/better-sqlite3-win32-x64-node22/src/better_sqlite3.cpp +74 -0
  315. package/vendor/better-sqlite3-win32-x64-node22/src/objects/backup.cpp +120 -0
  316. package/vendor/better-sqlite3-win32-x64-node22/src/objects/backup.hpp +36 -0
  317. package/vendor/better-sqlite3-win32-x64-node22/src/objects/database.cpp +417 -0
  318. package/vendor/better-sqlite3-win32-x64-node22/src/objects/database.hpp +103 -0
  319. package/vendor/better-sqlite3-win32-x64-node22/src/objects/statement-iterator.cpp +113 -0
  320. package/vendor/better-sqlite3-win32-x64-node22/src/objects/statement-iterator.hpp +50 -0
  321. package/vendor/better-sqlite3-win32-x64-node22/src/objects/statement.cpp +383 -0
  322. package/vendor/better-sqlite3-win32-x64-node22/src/objects/statement.hpp +58 -0
  323. package/vendor/better-sqlite3-win32-x64-node22/src/util/bind-map.cpp +73 -0
  324. package/vendor/better-sqlite3-win32-x64-node22/src/util/binder.cpp +193 -0
  325. package/vendor/better-sqlite3-win32-x64-node22/src/util/constants.cpp +172 -0
  326. package/vendor/better-sqlite3-win32-x64-node22/src/util/custom-aggregate.cpp +121 -0
  327. package/vendor/better-sqlite3-win32-x64-node22/src/util/custom-function.cpp +59 -0
  328. package/vendor/better-sqlite3-win32-x64-node22/src/util/custom-table.cpp +409 -0
  329. package/vendor/better-sqlite3-win32-x64-node22/src/util/data-converter.cpp +17 -0
  330. package/vendor/better-sqlite3-win32-x64-node22/src/util/data.cpp +194 -0
  331. package/vendor/better-sqlite3-win32-x64-node22/src/util/helpers.cpp +109 -0
  332. package/vendor/better-sqlite3-win32-x64-node22/src/util/macros.cpp +83 -0
  333. package/vendor/better-sqlite3-win32-x64-node22/src/util/query-macros.cpp +71 -0
  334. package/vendor/better-sqlite3-win32-x64-node22/src/util/row-builder.cpp +49 -0
  335. package/vendor/node-pty-fork/LICENSE +69 -0
  336. package/vendor/node-pty-fork/README.md +92 -0
  337. package/vendor/node-pty-fork/binding.gyp +117 -0
  338. package/vendor/node-pty-fork/deps/.editorconfig +2 -0
  339. package/vendor/node-pty-fork/deps/winpty/.drone.yml +17 -0
  340. package/vendor/node-pty-fork/deps/winpty/.gitattributes +19 -0
  341. package/vendor/node-pty-fork/deps/winpty/LICENSE +21 -0
  342. package/vendor/node-pty-fork/deps/winpty/Makefile +166 -0
  343. package/vendor/node-pty-fork/deps/winpty/README.md +151 -0
  344. package/vendor/node-pty-fork/deps/winpty/RELEASES.md +280 -0
  345. package/vendor/node-pty-fork/deps/winpty/VERSION.txt +1 -0
  346. package/vendor/node-pty-fork/deps/winpty/configure +167 -0
  347. package/vendor/node-pty-fork/deps/winpty/misc/BufferResizeTests.cc +90 -0
  348. package/vendor/node-pty-fork/deps/winpty/misc/ChangeScreenBuffer.cc +53 -0
  349. package/vendor/node-pty-fork/deps/winpty/misc/ClearConsole.cc +72 -0
  350. package/vendor/node-pty-fork/deps/winpty/misc/ConinMode.cc +117 -0
  351. package/vendor/node-pty-fork/deps/winpty/misc/ConinMode.ps1 +116 -0
  352. package/vendor/node-pty-fork/deps/winpty/misc/ConoutMode.cc +113 -0
  353. package/vendor/node-pty-fork/deps/winpty/misc/DebugClient.py +42 -0
  354. package/vendor/node-pty-fork/deps/winpty/misc/DebugServer.py +63 -0
  355. package/vendor/node-pty-fork/deps/winpty/misc/DumpLines.py +5 -0
  356. package/vendor/node-pty-fork/deps/winpty/misc/EnableExtendedFlags.txt +46 -0
  357. package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/CP437-Consolas.txt +528 -0
  358. package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/CP437-Lucida.txt +633 -0
  359. package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/CP932.txt +630 -0
  360. package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/CP936.txt +630 -0
  361. package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/CP949.txt +630 -0
  362. package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/CP950.txt +630 -0
  363. package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/MinimumWindowWidths.txt +16 -0
  364. package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/Results.txt +4 -0
  365. package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/Windows10SetFontBugginess.txt +144 -0
  366. package/vendor/node-pty-fork/deps/winpty/misc/FontSurvey.cc +100 -0
  367. package/vendor/node-pty-fork/deps/winpty/misc/FormatChar.h +21 -0
  368. package/vendor/node-pty-fork/deps/winpty/misc/FreezePerfTest.cc +62 -0
  369. package/vendor/node-pty-fork/deps/winpty/misc/GetCh.cc +20 -0
  370. package/vendor/node-pty-fork/deps/winpty/misc/GetConsolePos.cc +41 -0
  371. package/vendor/node-pty-fork/deps/winpty/misc/GetFont.cc +261 -0
  372. package/vendor/node-pty-fork/deps/winpty/misc/IdentifyConsoleWindow.ps1 +51 -0
  373. package/vendor/node-pty-fork/deps/winpty/misc/IsNewConsole.cc +87 -0
  374. package/vendor/node-pty-fork/deps/winpty/misc/MouseInputNotes.txt +90 -0
  375. package/vendor/node-pty-fork/deps/winpty/misc/MoveConsoleWindow.cc +34 -0
  376. package/vendor/node-pty-fork/deps/winpty/misc/Notes.txt +219 -0
  377. package/vendor/node-pty-fork/deps/winpty/misc/OSVersion.cc +27 -0
  378. package/vendor/node-pty-fork/deps/winpty/misc/ScreenBufferFreezeInactive.cc +101 -0
  379. package/vendor/node-pty-fork/deps/winpty/misc/ScreenBufferTest.cc +671 -0
  380. package/vendor/node-pty-fork/deps/winpty/misc/ScreenBufferTest2.cc +151 -0
  381. package/vendor/node-pty-fork/deps/winpty/misc/SelectAllTest.cc +45 -0
  382. package/vendor/node-pty-fork/deps/winpty/misc/SetBufferSize.cc +32 -0
  383. package/vendor/node-pty-fork/deps/winpty/misc/SetCursorPos.cc +10 -0
  384. package/vendor/node-pty-fork/deps/winpty/misc/SetFont.cc +145 -0
  385. package/vendor/node-pty-fork/deps/winpty/misc/SetWindowRect.cc +36 -0
  386. package/vendor/node-pty-fork/deps/winpty/misc/ShowArgv.cc +12 -0
  387. package/vendor/node-pty-fork/deps/winpty/misc/ShowConsoleInput.cc +40 -0
  388. package/vendor/node-pty-fork/deps/winpty/misc/Spew.py +5 -0
  389. package/vendor/node-pty-fork/deps/winpty/misc/TestUtil.cc +172 -0
  390. package/vendor/node-pty-fork/deps/winpty/misc/UnicodeDoubleWidthTest.cc +102 -0
  391. package/vendor/node-pty-fork/deps/winpty/misc/UnicodeWideTest1.cc +246 -0
  392. package/vendor/node-pty-fork/deps/winpty/misc/UnicodeWideTest2.cc +130 -0
  393. package/vendor/node-pty-fork/deps/winpty/misc/UnixEcho.cc +89 -0
  394. package/vendor/node-pty-fork/deps/winpty/misc/Utf16Echo.cc +46 -0
  395. package/vendor/node-pty-fork/deps/winpty/misc/VeryLargeRead.cc +122 -0
  396. package/vendor/node-pty-fork/deps/winpty/misc/VkEscapeTest.cc +56 -0
  397. package/vendor/node-pty-fork/deps/winpty/misc/Win10ResizeWhileFrozen.cc +52 -0
  398. package/vendor/node-pty-fork/deps/winpty/misc/Win10WrapTest1.cc +57 -0
  399. package/vendor/node-pty-fork/deps/winpty/misc/Win10WrapTest2.cc +30 -0
  400. package/vendor/node-pty-fork/deps/winpty/misc/Win32Echo1.cc +26 -0
  401. package/vendor/node-pty-fork/deps/winpty/misc/Win32Echo2.cc +19 -0
  402. package/vendor/node-pty-fork/deps/winpty/misc/Win32Test1.cc +46 -0
  403. package/vendor/node-pty-fork/deps/winpty/misc/Win32Test2.cc +70 -0
  404. package/vendor/node-pty-fork/deps/winpty/misc/Win32Test3.cc +78 -0
  405. package/vendor/node-pty-fork/deps/winpty/misc/Win32Write1.cc +44 -0
  406. package/vendor/node-pty-fork/deps/winpty/misc/WindowsBugCrashReader.cc +27 -0
  407. package/vendor/node-pty-fork/deps/winpty/misc/WriteConsole.cc +106 -0
  408. package/vendor/node-pty-fork/deps/winpty/misc/build32.sh +9 -0
  409. package/vendor/node-pty-fork/deps/winpty/misc/build64.sh +9 -0
  410. package/vendor/node-pty-fork/deps/winpty/misc/color-test.sh +212 -0
  411. package/vendor/node-pty-fork/deps/winpty/misc/font-notes.txt +300 -0
  412. package/vendor/node-pty-fork/deps/winpty/misc/winbug-15048.cc +201 -0
  413. package/vendor/node-pty-fork/deps/winpty/ship/build-pty4j-libpty.bat +36 -0
  414. package/vendor/node-pty-fork/deps/winpty/ship/common_ship.py +53 -0
  415. package/vendor/node-pty-fork/deps/winpty/ship/make_msvc_package.py +165 -0
  416. package/vendor/node-pty-fork/deps/winpty/ship/ship.py +108 -0
  417. package/vendor/node-pty-fork/deps/winpty/src/agent/Agent.cc +605 -0
  418. package/vendor/node-pty-fork/deps/winpty/src/agent/Agent.h +103 -0
  419. package/vendor/node-pty-fork/deps/winpty/src/agent/AgentCreateDesktop.cc +84 -0
  420. package/vendor/node-pty-fork/deps/winpty/src/agent/AgentCreateDesktop.h +28 -0
  421. package/vendor/node-pty-fork/deps/winpty/src/agent/ConsoleFont.cc +632 -0
  422. package/vendor/node-pty-fork/deps/winpty/src/agent/ConsoleFont.h +28 -0
  423. package/vendor/node-pty-fork/deps/winpty/src/agent/ConsoleInput.cc +852 -0
  424. package/vendor/node-pty-fork/deps/winpty/src/agent/ConsoleInput.h +109 -0
  425. package/vendor/node-pty-fork/deps/winpty/src/agent/ConsoleInputReencoding.cc +121 -0
  426. package/vendor/node-pty-fork/deps/winpty/src/agent/ConsoleInputReencoding.h +36 -0
  427. package/vendor/node-pty-fork/deps/winpty/src/agent/ConsoleLine.cc +152 -0
  428. package/vendor/node-pty-fork/deps/winpty/src/agent/ConsoleLine.h +41 -0
  429. package/vendor/node-pty-fork/deps/winpty/src/agent/Coord.h +87 -0
  430. package/vendor/node-pty-fork/deps/winpty/src/agent/DebugShowInput.cc +239 -0
  431. package/vendor/node-pty-fork/deps/winpty/src/agent/DebugShowInput.h +32 -0
  432. package/vendor/node-pty-fork/deps/winpty/src/agent/DefaultInputMap.cc +422 -0
  433. package/vendor/node-pty-fork/deps/winpty/src/agent/DefaultInputMap.h +28 -0
  434. package/vendor/node-pty-fork/deps/winpty/src/agent/DsrSender.h +30 -0
  435. package/vendor/node-pty-fork/deps/winpty/src/agent/EventLoop.cc +99 -0
  436. package/vendor/node-pty-fork/deps/winpty/src/agent/EventLoop.h +47 -0
  437. package/vendor/node-pty-fork/deps/winpty/src/agent/InputMap.cc +246 -0
  438. package/vendor/node-pty-fork/deps/winpty/src/agent/InputMap.h +114 -0
  439. package/vendor/node-pty-fork/deps/winpty/src/agent/LargeConsoleRead.cc +71 -0
  440. package/vendor/node-pty-fork/deps/winpty/src/agent/LargeConsoleRead.h +68 -0
  441. package/vendor/node-pty-fork/deps/winpty/src/agent/NamedPipe.cc +378 -0
  442. package/vendor/node-pty-fork/deps/winpty/src/agent/NamedPipe.h +125 -0
  443. package/vendor/node-pty-fork/deps/winpty/src/agent/Scraper.cc +699 -0
  444. package/vendor/node-pty-fork/deps/winpty/src/agent/Scraper.h +103 -0
  445. package/vendor/node-pty-fork/deps/winpty/src/agent/SimplePool.h +75 -0
  446. package/vendor/node-pty-fork/deps/winpty/src/agent/SmallRect.h +143 -0
  447. package/vendor/node-pty-fork/deps/winpty/src/agent/Terminal.cc +535 -0
  448. package/vendor/node-pty-fork/deps/winpty/src/agent/Terminal.h +69 -0
  449. package/vendor/node-pty-fork/deps/winpty/src/agent/UnicodeEncoding.h +157 -0
  450. package/vendor/node-pty-fork/deps/winpty/src/agent/UnicodeEncodingTest.cc +189 -0
  451. package/vendor/node-pty-fork/deps/winpty/src/agent/Win32Console.cc +107 -0
  452. package/vendor/node-pty-fork/deps/winpty/src/agent/Win32Console.h +67 -0
  453. package/vendor/node-pty-fork/deps/winpty/src/agent/Win32ConsoleBuffer.cc +193 -0
  454. package/vendor/node-pty-fork/deps/winpty/src/agent/Win32ConsoleBuffer.h +99 -0
  455. package/vendor/node-pty-fork/deps/winpty/src/agent/main.cc +114 -0
  456. package/vendor/node-pty-fork/deps/winpty/src/agent/subdir.mk +61 -0
  457. package/vendor/node-pty-fork/deps/winpty/src/configurations.gypi +60 -0
  458. package/vendor/node-pty-fork/deps/winpty/src/debugserver/DebugServer.cc +117 -0
  459. package/vendor/node-pty-fork/deps/winpty/src/debugserver/subdir.mk +41 -0
  460. package/vendor/node-pty-fork/deps/winpty/src/include/winpty.h +242 -0
  461. package/vendor/node-pty-fork/deps/winpty/src/include/winpty_constants.h +131 -0
  462. package/vendor/node-pty-fork/deps/winpty/src/libwinpty/AgentLocation.cc +75 -0
  463. package/vendor/node-pty-fork/deps/winpty/src/libwinpty/AgentLocation.h +28 -0
  464. package/vendor/node-pty-fork/deps/winpty/src/libwinpty/LibWinptyException.h +54 -0
  465. package/vendor/node-pty-fork/deps/winpty/src/libwinpty/WinptyInternal.h +72 -0
  466. package/vendor/node-pty-fork/deps/winpty/src/libwinpty/subdir.mk +46 -0
  467. package/vendor/node-pty-fork/deps/winpty/src/libwinpty/winpty.cc +970 -0
  468. package/vendor/node-pty-fork/deps/winpty/src/shared/AgentMsg.h +38 -0
  469. package/vendor/node-pty-fork/deps/winpty/src/shared/BackgroundDesktop.cc +122 -0
  470. package/vendor/node-pty-fork/deps/winpty/src/shared/BackgroundDesktop.h +73 -0
  471. package/vendor/node-pty-fork/deps/winpty/src/shared/Buffer.cc +103 -0
  472. package/vendor/node-pty-fork/deps/winpty/src/shared/Buffer.h +102 -0
  473. package/vendor/node-pty-fork/deps/winpty/src/shared/DebugClient.cc +187 -0
  474. package/vendor/node-pty-fork/deps/winpty/src/shared/DebugClient.h +38 -0
  475. package/vendor/node-pty-fork/deps/winpty/src/shared/GenRandom.cc +138 -0
  476. package/vendor/node-pty-fork/deps/winpty/src/shared/GenRandom.h +55 -0
  477. package/vendor/node-pty-fork/deps/winpty/src/shared/GetCommitHash.bat +13 -0
  478. package/vendor/node-pty-fork/deps/winpty/src/shared/Mutex.h +54 -0
  479. package/vendor/node-pty-fork/deps/winpty/src/shared/OsModule.h +63 -0
  480. package/vendor/node-pty-fork/deps/winpty/src/shared/OwnedHandle.cc +36 -0
  481. package/vendor/node-pty-fork/deps/winpty/src/shared/OwnedHandle.h +45 -0
  482. package/vendor/node-pty-fork/deps/winpty/src/shared/PrecompiledHeader.h +43 -0
  483. package/vendor/node-pty-fork/deps/winpty/src/shared/StringBuilder.h +227 -0
  484. package/vendor/node-pty-fork/deps/winpty/src/shared/StringBuilderTest.cc +114 -0
  485. package/vendor/node-pty-fork/deps/winpty/src/shared/StringUtil.cc +55 -0
  486. package/vendor/node-pty-fork/deps/winpty/src/shared/StringUtil.h +80 -0
  487. package/vendor/node-pty-fork/deps/winpty/src/shared/TimeMeasurement.h +63 -0
  488. package/vendor/node-pty-fork/deps/winpty/src/shared/UnixCtrlChars.h +45 -0
  489. package/vendor/node-pty-fork/deps/winpty/src/shared/UpdateGenVersion.bat +20 -0
  490. package/vendor/node-pty-fork/deps/winpty/src/shared/WindowsSecurity.cc +460 -0
  491. package/vendor/node-pty-fork/deps/winpty/src/shared/WindowsSecurity.h +104 -0
  492. package/vendor/node-pty-fork/deps/winpty/src/shared/WindowsVersion.cc +252 -0
  493. package/vendor/node-pty-fork/deps/winpty/src/shared/WindowsVersion.h +29 -0
  494. package/vendor/node-pty-fork/deps/winpty/src/shared/WinptyAssert.cc +55 -0
  495. package/vendor/node-pty-fork/deps/winpty/src/shared/WinptyAssert.h +64 -0
  496. package/vendor/node-pty-fork/deps/winpty/src/shared/WinptyException.cc +57 -0
  497. package/vendor/node-pty-fork/deps/winpty/src/shared/WinptyException.h +43 -0
  498. package/vendor/node-pty-fork/deps/winpty/src/shared/WinptyVersion.cc +42 -0
  499. package/vendor/node-pty-fork/deps/winpty/src/shared/WinptyVersion.h +27 -0
  500. package/vendor/node-pty-fork/deps/winpty/src/shared/winpty_snprintf.h +99 -0
  501. package/vendor/node-pty-fork/deps/winpty/src/subdir.mk +5 -0
  502. package/vendor/node-pty-fork/deps/winpty/src/tests/subdir.mk +28 -0
  503. package/vendor/node-pty-fork/deps/winpty/src/tests/trivial_test.cc +158 -0
  504. package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/InputHandler.cc +114 -0
  505. package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/InputHandler.h +56 -0
  506. package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/OutputHandler.cc +80 -0
  507. package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/OutputHandler.h +53 -0
  508. package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/Util.cc +86 -0
  509. package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/Util.h +31 -0
  510. package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/WakeupFd.cc +70 -0
  511. package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/WakeupFd.h +42 -0
  512. package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/main.cc +729 -0
  513. package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/subdir.mk +41 -0
  514. package/vendor/node-pty-fork/deps/winpty/src/winpty.gyp +206 -0
  515. package/vendor/node-pty-fork/deps/winpty/vcbuild.bat +83 -0
  516. package/vendor/node-pty-fork/lib/conpty_console_list_agent.js +20 -0
  517. package/vendor/node-pty-fork/lib/conpty_console_list_agent.js.map +1 -0
  518. package/vendor/node-pty-fork/lib/eventEmitter2.js +47 -0
  519. package/vendor/node-pty-fork/lib/eventEmitter2.js.map +1 -0
  520. package/vendor/node-pty-fork/lib/eventEmitter2.test.js +30 -0
  521. package/vendor/node-pty-fork/lib/eventEmitter2.test.js.map +1 -0
  522. package/vendor/node-pty-fork/lib/index.js +51 -0
  523. package/vendor/node-pty-fork/lib/index.js.map +1 -0
  524. package/vendor/node-pty-fork/lib/interfaces.js +7 -0
  525. package/vendor/node-pty-fork/lib/interfaces.js.map +1 -0
  526. package/vendor/node-pty-fork/lib/shared/conout.js +11 -0
  527. package/vendor/node-pty-fork/lib/shared/conout.js.map +1 -0
  528. package/vendor/node-pty-fork/lib/terminal.js +190 -0
  529. package/vendor/node-pty-fork/lib/terminal.js.map +1 -0
  530. package/vendor/node-pty-fork/lib/terminal.test.js +139 -0
  531. package/vendor/node-pty-fork/lib/terminal.test.js.map +1 -0
  532. package/vendor/node-pty-fork/lib/testUtils.test.js +28 -0
  533. package/vendor/node-pty-fork/lib/testUtils.test.js.map +1 -0
  534. package/vendor/node-pty-fork/lib/types.js +7 -0
  535. package/vendor/node-pty-fork/lib/types.js.map +1 -0
  536. package/vendor/node-pty-fork/lib/unixTerminal.js +304 -0
  537. package/vendor/node-pty-fork/lib/unixTerminal.js.map +1 -0
  538. package/vendor/node-pty-fork/lib/unixTerminal.test.js +330 -0
  539. package/vendor/node-pty-fork/lib/unixTerminal.test.js.map +1 -0
  540. package/vendor/node-pty-fork/lib/utils.js +17 -0
  541. package/vendor/node-pty-fork/lib/utils.js.map +1 -0
  542. package/vendor/node-pty-fork/lib/windowsConoutConnection.js +122 -0
  543. package/vendor/node-pty-fork/lib/windowsConoutConnection.js.map +1 -0
  544. package/vendor/node-pty-fork/lib/windowsPtyAgent.js +324 -0
  545. package/vendor/node-pty-fork/lib/windowsPtyAgent.js.map +1 -0
  546. package/vendor/node-pty-fork/lib/windowsPtyAgent.test.js +90 -0
  547. package/vendor/node-pty-fork/lib/windowsPtyAgent.test.js.map +1 -0
  548. package/vendor/node-pty-fork/lib/windowsTerminal.js +201 -0
  549. package/vendor/node-pty-fork/lib/windowsTerminal.js.map +1 -0
  550. package/vendor/node-pty-fork/lib/windowsTerminal.test.js +203 -0
  551. package/vendor/node-pty-fork/lib/windowsTerminal.test.js.map +1 -0
  552. package/vendor/node-pty-fork/lib/worker/conoutSocketWorker.js +22 -0
  553. package/vendor/node-pty-fork/lib/worker/conoutSocketWorker.js.map +1 -0
  554. package/vendor/node-pty-fork/package.json +35 -0
  555. package/vendor/node-pty-fork/scripts/apply-patches.mjs +341 -0
  556. package/vendor/node-pty-fork/scripts/fetch-upstream.mjs +41 -0
  557. package/vendor/node-pty-fork/scripts/install-smoke.cjs +59 -0
  558. package/vendor/node-pty-fork/scripts/runtime-install-context.cjs +24 -0
  559. package/vendor/node-pty-fork/scripts/smoke-load.cjs +10 -0
  560. package/vendor/node-pty-fork/scripts/sync-upstream.mjs +29 -0
  561. package/vendor/node-pty-fork/scripts/verify-runtime.cjs +62 -0
  562. package/vendor/node-pty-fork/scripts/verify-runtime.test.cjs +52 -0
  563. package/vendor/node-pty-fork/scripts/verify-tarball.cjs +80 -0
  564. package/vendor/node-pty-fork/src/conpty_console_list_agent.ts +19 -0
  565. package/vendor/node-pty-fork/src/eventEmitter2.test.ts +30 -0
  566. package/vendor/node-pty-fork/src/eventEmitter2.ts +48 -0
  567. package/vendor/node-pty-fork/src/index.ts +51 -0
  568. package/vendor/node-pty-fork/src/interfaces.ts +129 -0
  569. package/vendor/node-pty-fork/src/native.d.ts +56 -0
  570. package/vendor/node-pty-fork/src/shared/conout.ts +15 -0
  571. package/vendor/node-pty-fork/src/terminal.test.ts +119 -0
  572. package/vendor/node-pty-fork/src/terminal.ts +211 -0
  573. package/vendor/node-pty-fork/src/testUtils.test.ts +23 -0
  574. package/vendor/node-pty-fork/src/tsconfig.json +22 -0
  575. package/vendor/node-pty-fork/src/types.ts +15 -0
  576. package/vendor/node-pty-fork/src/unix/pty.cc +826 -0
  577. package/vendor/node-pty-fork/src/unix/spawn-helper.cc +23 -0
  578. package/vendor/node-pty-fork/src/unixTerminal.test.ts +335 -0
  579. package/vendor/node-pty-fork/src/unixTerminal.ts +320 -0
  580. package/vendor/node-pty-fork/src/utils.ts +9 -0
  581. package/vendor/node-pty-fork/src/win/conpty.cc +500 -0
  582. package/vendor/node-pty-fork/src/win/conpty_console_list.cc +43 -0
  583. package/vendor/node-pty-fork/src/win/path_util.cc +73 -0
  584. package/vendor/node-pty-fork/src/win/path_util.h +22 -0
  585. package/vendor/node-pty-fork/src/win/winpty.cc +322 -0
  586. package/vendor/node-pty-fork/src/windowsConoutConnection.ts +79 -0
  587. package/vendor/node-pty-fork/src/windowsPtyAgent.test.ts +94 -0
  588. package/vendor/node-pty-fork/src/windowsPtyAgent.ts +323 -0
  589. package/vendor/node-pty-fork/src/windowsTerminal.test.ts +214 -0
  590. package/vendor/node-pty-fork/src/windowsTerminal.ts +208 -0
  591. package/vendor/node-pty-fork/src/worker/conoutSocketWorker.ts +22 -0
  592. package/vendor/node-pty-fork/typings/node-pty.d.ts +203 -0
  593. package/vendor-src/better-sqlite3-win32-x64-node22/README.md +12 -0
  594. package/dist/public/assets/App-tPcbyRdS.js +0 -30
  595. package/dist/public/assets/DesktopWindowPage-GtIx5m8K.js +0 -2
  596. package/dist/public/assets/FileContextPanel-BcM7AIT4.js +0 -1
  597. package/dist/public/assets/GitSidebar-CMtkaxuI.js +0 -6
  598. package/dist/public/assets/MobileCreateSessionSheet-CrFY41_8.js +0 -1
  599. package/dist/public/assets/MobileWorkspaceSwitcherHeader-DLkACTnQ.js +0 -1
  600. package/dist/public/assets/ServerSettingsModal-vgOhwus4.js +0 -1
  601. package/dist/public/assets/SessionIndexPage-KK626Ra9.js +0 -1
  602. package/dist/public/assets/SettingsPage-B3edBJIo.js +0 -2
  603. package/dist/public/assets/TerminalManagerPanel-BxlhZp8c.js +0 -1
  604. package/dist/public/assets/TerminalRuntimeFallbackModal-BVLfrpSa.js +0 -1
  605. package/dist/public/assets/ToolFilesPage-N_gwwUjD.js +0 -1
  606. package/dist/public/assets/ToolGitPage-DOcuuWM1.js +0 -1
  607. package/dist/public/assets/ToolProcessesPage-D-FfJ7Re.js +0 -1
  608. package/dist/public/assets/ToolsHomePage-CHfPxd20.js +0 -1
  609. package/dist/public/assets/WorkbenchLandingPage-CTTnfovY.js +0 -1
  610. package/dist/public/assets/WorkbenchLayout-CbpJg0g1.js +0 -244
  611. package/dist/public/assets/WorkbenchModal-Bt_1fYmM.js +0 -1
  612. package/dist/public/assets/WorkbenchShellRoute-DyaMnPfS.js +0 -1
  613. package/dist/public/assets/WorkspaceDebugDetailPage-s7yuDIxR.js +0 -1
  614. package/dist/public/assets/WorkspaceDetailPage-Cf-gVpqK.js +0 -1
  615. package/dist/public/assets/WorkspaceHomePage-COf6I8sT.js +0 -1
  616. package/dist/public/assets/file-tree-icon-BeHqeru9.js +0 -590
  617. package/dist/public/assets/index-CuzMc7q2.js +0 -42
  618. package/dist/public/assets/model-switch-api-c6kcbBGm.js +0 -1
  619. package/dist/public/assets/realtime-client-CRCx5xBt.js +0 -1
  620. package/dist/public/assets/useRegisteredDebugTemplates-D6YtNS0r.js +0 -1
@@ -0,0 +1,911 @@
1
+ (function () {
2
+ if (typeof window === "undefined") {
3
+ return;
4
+ }
5
+
6
+ if (window.CodingNSWorkspace) {
7
+ return;
8
+ }
9
+
10
+ var REQUEST_TIMEOUT_MS = 3000;
11
+ var WATCH_POLL_INTERVAL_MS = 700;
12
+ var RESPONSE_TYPE = "codingns.workspace.response";
13
+ var REQUEST_TYPE = "codingns.workspace.request";
14
+ var EVENT_TYPE = "codingns.workspace.event";
15
+ var DEBUG_TYPE = "codingns.workspace.debug";
16
+ var bootstrapConfig = readBootstrapConfig();
17
+ var parentOrigin = null;
18
+ var pendingRequests = Object.create(null);
19
+ var watchListeners = Object.create(null);
20
+ var activeWatchPollers = Object.create(null);
21
+ var requestSeq = 0;
22
+ var debugEvents = [];
23
+ var debugState = createDebugState();
24
+ var iframeHostBridge = createIframeHostBridge();
25
+ var iframeBridgeUnavailable = false;
26
+ debugLog("init", {
27
+ href: window.location.href,
28
+ referrer: document.referrer || "",
29
+ context: readWorkspaceContext(),
30
+ parentOrigin: isIframe() ? ensureParentOrigin() : null
31
+ });
32
+
33
+ function readBootstrapConfig() {
34
+ var raw = window.__CODINGNS_WORKSPACE_BRIDGE_BOOTSTRAP__;
35
+ if (raw && typeof raw === "object") {
36
+ return raw;
37
+ }
38
+
39
+ var script = document.currentScript;
40
+ if (!script || typeof script.getAttribute !== "function") {
41
+ return {};
42
+ }
43
+
44
+ var workspaceId = script.getAttribute("data-codingns-workspace-id") || "";
45
+ var hostOrigin = script.getAttribute("data-codingns-host-origin") || "";
46
+ var parentOrigin = script.getAttribute("data-codingns-parent-origin") || "";
47
+ var runtimeVersion = script.getAttribute("data-codingns-runtime-version") || "";
48
+ return {
49
+ workspaceId: workspaceId,
50
+ hostOrigin: hostOrigin,
51
+ parentOrigin: parentOrigin,
52
+ runtimeVersion: runtimeVersion,
53
+ runtimeScriptPath: script.getAttribute("src") || ""
54
+ };
55
+ }
56
+
57
+ function createDebugState() {
58
+ return {
59
+ initializedAt: Date.now(),
60
+ runtimeUrl: window.location.href,
61
+ referrer: document.referrer || "",
62
+ bootstrapParentOrigin: typeof bootstrapConfig.parentOrigin === "string" ? bootstrapConfig.parentOrigin : "",
63
+ bootstrapHostOrigin: typeof bootstrapConfig.hostOrigin === "string" ? bootstrapConfig.hostOrigin : "",
64
+ runtimeVersion: typeof bootstrapConfig.runtimeVersion === "string" ? bootstrapConfig.runtimeVersion : "",
65
+ isIframe: isIframe(),
66
+ lastRequestId: null,
67
+ lastRequestAction: null,
68
+ lastRequestTargetOrigin: null,
69
+ lastResponseId: null,
70
+ lastResponseOrigin: null,
71
+ lastResponseAccepted: false,
72
+ lastEventType: null,
73
+ lastDropReason: null,
74
+ lastTimeoutRequestId: null,
75
+ lastTimeoutAction: null,
76
+ lastTimeoutTargetOrigin: null,
77
+ pendingRequestCount: 0,
78
+ pendingRequestIds: [],
79
+ iframeBridgeUnavailable: false,
80
+ lastHttpFallbackAction: null,
81
+ lastHttpRequestAction: null,
82
+ lastHttpRequestUrl: null,
83
+ debugEventCount: 0
84
+ };
85
+ }
86
+
87
+ function updatePendingRequestCount() {
88
+ var ids = Object.keys(pendingRequests);
89
+ debugState.pendingRequestCount = ids.length;
90
+ debugState.pendingRequestIds = ids;
91
+ }
92
+
93
+ function debugLog(stage, payload) {
94
+ var entry = {
95
+ at: new Date().toISOString(),
96
+ source: "workspace-runtime",
97
+ stage: stage,
98
+ payload: payload || {}
99
+ };
100
+ debugEvents.push(entry);
101
+ if (debugEvents.length > 200) {
102
+ debugEvents.shift();
103
+ }
104
+ debugState.debugEventCount = debugEvents.length;
105
+
106
+ if (!window.console || typeof window.console.debug !== "function") {
107
+ return;
108
+ }
109
+
110
+ window.console.debug("[workspace-bridge] " + stage, payload);
111
+ }
112
+
113
+ function isIframe() {
114
+ return window.parent && window.parent !== window;
115
+ }
116
+
117
+ function ensureParentOrigin() {
118
+ if (parentOrigin) {
119
+ return parentOrigin;
120
+ }
121
+
122
+ var context = readWorkspaceContext();
123
+ if (context.parentOrigin) {
124
+ parentOrigin = context.parentOrigin;
125
+ return parentOrigin;
126
+ }
127
+
128
+ if (typeof bootstrapConfig.parentOrigin === "string" && bootstrapConfig.parentOrigin) {
129
+ parentOrigin = bootstrapConfig.parentOrigin;
130
+ return parentOrigin;
131
+ }
132
+
133
+ if (document.referrer) {
134
+ try {
135
+ parentOrigin = new URL(document.referrer).origin;
136
+ } catch (_error) {
137
+ parentOrigin = window.location.origin;
138
+ }
139
+ } else {
140
+ parentOrigin = window.location.origin;
141
+ }
142
+
143
+ return parentOrigin;
144
+ }
145
+
146
+ function readWorkspaceContext() {
147
+ var currentUrl;
148
+
149
+ try {
150
+ currentUrl = new URL(window.location.href);
151
+ } catch (_error) {
152
+ currentUrl = null;
153
+ }
154
+
155
+ var workspaceId = typeof bootstrapConfig.workspaceId === "string" && bootstrapConfig.workspaceId
156
+ ? bootstrapConfig.workspaceId
157
+ : currentUrl ? currentUrl.searchParams.get("workspaceId") : null;
158
+ var previewPath = currentUrl ? currentUrl.pathname : "";
159
+ var previewToken = "";
160
+ var parentOriginFromQuery = currentUrl
161
+ ? currentUrl.searchParams.get("_cns_parent_origin") || ""
162
+ : "";
163
+
164
+ if (previewPath.indexOf("/preview/files/") === 0) {
165
+ var prefix = "/preview/files/";
166
+ var remaining = previewPath.slice(prefix.length);
167
+ previewToken = remaining.split("/")[0] || "";
168
+ }
169
+
170
+ if (!workspaceId && previewToken) {
171
+ workspaceId = readWorkspaceIdFromPreviewToken(previewToken);
172
+ }
173
+
174
+ return {
175
+ workspaceId: workspaceId || "",
176
+ previewToken: previewToken,
177
+ hostOrigin: window.location.origin,
178
+ parentOrigin: parentOriginFromQuery
179
+ };
180
+ }
181
+
182
+ function readWorkspaceIdFromPreviewToken(token) {
183
+ var payload = token.split(".")[0];
184
+ if (!payload) {
185
+ return "";
186
+ }
187
+
188
+ try {
189
+ var jsonText = decodeBase64Url(payload);
190
+ var parsed = JSON.parse(jsonText);
191
+ return parsed && typeof parsed.workspaceId === "string" ? parsed.workspaceId : "";
192
+ } catch (_error) {
193
+ return "";
194
+ }
195
+ }
196
+
197
+ function decodeBase64Url(input) {
198
+ var normalized = input.replace(/-/g, "+").replace(/_/g, "/");
199
+ var remainder = normalized.length % 4;
200
+
201
+ if (remainder === 2) {
202
+ normalized += "==";
203
+ } else if (remainder === 3) {
204
+ normalized += "=";
205
+ } else if (remainder === 1) {
206
+ return "";
207
+ }
208
+
209
+ try {
210
+ return decodeURIComponent(escape(window.atob(normalized)));
211
+ } catch (_error) {
212
+ return "";
213
+ }
214
+ }
215
+
216
+ function buildApiUrl(pathname, params) {
217
+ var url = new URL(pathname, window.location.origin);
218
+ if (params) {
219
+ Object.keys(params).forEach(function (key) {
220
+ var value = params[key];
221
+ if (value !== undefined && value !== null && value !== "") {
222
+ url.searchParams.set(key, String(value));
223
+ }
224
+ });
225
+ }
226
+ return url.toString();
227
+ }
228
+
229
+ function ensureWorkspaceId(context) {
230
+ if (!context.workspaceId) {
231
+ throw new Error("当前 HTML 预览缺少 workspaceId,无法使用 CodingNSWorkspace");
232
+ }
233
+ return context.workspaceId;
234
+ }
235
+
236
+ function requestHost(action, payload) {
237
+ var context = readWorkspaceContext();
238
+
239
+ // 预览 token 已经能安全限定 workspace。静态 HTML 预览页直接走同源 HTTP,
240
+ // 不再先撞 Tauri postMessage 这条在 macOS WebView 中可能沉默超时的链路。
241
+ if (context.previewToken) {
242
+ debugLog("preview-token-http-first", {
243
+ action: action,
244
+ payload: payload || {}
245
+ });
246
+ return requestHttp(action, payload);
247
+ }
248
+
249
+ if (iframeHostBridge && !iframeBridgeUnavailable) {
250
+ return iframeHostBridge.request(action, payload).catch(function (error) {
251
+ if (!shouldFallbackToHttp(error)) {
252
+ debugLog("iframe-request-error-no-fallback", {
253
+ action: action,
254
+ message: error && error.message ? error.message : String(error || ""),
255
+ code: error && error.code ? error.code : null
256
+ });
257
+ throw error;
258
+ }
259
+
260
+ iframeBridgeUnavailable = true;
261
+ debugState.iframeBridgeUnavailable = true;
262
+ debugState.lastHttpFallbackAction = action;
263
+ debugLog("iframe-timeout-fallback-http", {
264
+ action: action,
265
+ payload: payload || {},
266
+ message: error.message || ""
267
+ });
268
+ return requestHttp(action, payload);
269
+ });
270
+ }
271
+
272
+ if (iframeHostBridge && iframeBridgeUnavailable) {
273
+ debugLog("iframe-skipped-http-fallback", {
274
+ action: action,
275
+ payload: payload || {}
276
+ });
277
+ }
278
+
279
+ return requestHttp(action, payload);
280
+ }
281
+
282
+ function shouldFallbackToHttp(error) {
283
+ var message = error && typeof error.message === "string" ? error.message : "";
284
+ return message.indexOf("等待宿主 workspace bridge 响应超时") >= 0;
285
+ }
286
+
287
+ function requestHttp(action, payload) {
288
+ var context = readWorkspaceContext();
289
+ var workspaceId = ensureWorkspaceId(context);
290
+ var usePreviewBridge = Boolean(context.previewToken);
291
+ var requestBody = usePreviewBridge
292
+ ? Object.assign({}, payload || {})
293
+ : Object.assign({ workspaceId: workspaceId }, payload || {});
294
+ var requestConfig;
295
+
296
+ function bridgeUrl(pathname, params) {
297
+ if (usePreviewBridge) {
298
+ return buildApiUrl("/preview/workspace-bridge" + pathname, Object.assign({
299
+ token: context.previewToken
300
+ }, params || {}));
301
+ }
302
+
303
+ return buildApiUrl("/api/files/workspace-bridge" + pathname, Object.assign({
304
+ workspaceId: workspaceId
305
+ }, params || {}));
306
+ }
307
+
308
+ function bridgePost(pathname, body) {
309
+ var url = bridgeUrl(pathname);
310
+ debugState.lastHttpRequestAction = action;
311
+ debugState.lastHttpRequestUrl = url;
312
+ debugLog("http-request", {
313
+ action: action,
314
+ url: url,
315
+ previewTokenMode: usePreviewBridge
316
+ });
317
+ return fetchJson(url, {
318
+ method: "POST",
319
+ body: JSON.stringify(body)
320
+ });
321
+ }
322
+
323
+ function bridgeGet(pathname, params) {
324
+ var url = bridgeUrl(pathname, params);
325
+ debugState.lastHttpRequestAction = action;
326
+ debugState.lastHttpRequestUrl = url;
327
+ debugLog("http-request", {
328
+ action: action,
329
+ url: url,
330
+ previewTokenMode: usePreviewBridge
331
+ });
332
+ return fetchJson(url);
333
+ }
334
+
335
+ switch (action) {
336
+ case "capabilities":
337
+ return bridgeGet("/capabilities");
338
+ case "listDir":
339
+ requestConfig = requestBody;
340
+ return bridgePost("/list-dir", requestConfig);
341
+ case "readText":
342
+ requestConfig = requestBody;
343
+ return bridgePost("/read-text", requestConfig);
344
+ case "readTexts":
345
+ requestConfig = requestBody;
346
+ return bridgePost("/read-texts", requestConfig);
347
+ case "writeText":
348
+ requestConfig = requestBody;
349
+ return bridgePost("/write-text", requestConfig);
350
+ case "deleteFile":
351
+ requestConfig = requestBody;
352
+ return bridgePost("/delete-file", requestConfig);
353
+ case "stat":
354
+ return bridgeGet("/stat", {
355
+ path: payload && payload.path ? payload.path : ""
356
+ });
357
+ case "exists":
358
+ return bridgeGet("/exists", {
359
+ path: payload && payload.path ? payload.path : ""
360
+ });
361
+ case "openWorkspaceFile":
362
+ requestConfig = requestBody;
363
+ return bridgePost("/open-file", requestConfig).then(function (prepared) {
364
+ return runDesktopAction("openFile", prepared, "DESKTOP_OPEN_UNAVAILABLE", "当前环境不支持打开本地文件");
365
+ });
366
+ case "revealWorkspaceFile":
367
+ requestConfig = requestBody;
368
+ return bridgePost("/reveal-in-file-manager", requestConfig).then(function (prepared) {
369
+ return runDesktopAction("revealInFileManager", prepared, "DESKTOP_REVEAL_UNAVAILABLE", "当前环境不支持在文件管理器中定位文件");
370
+ });
371
+ case "watchDir":
372
+ requestConfig = requestBody;
373
+ return bridgePost("/watch-dir", requestConfig);
374
+ case "unwatch":
375
+ requestConfig = payload || {};
376
+ return bridgePost("/unwatch", requestConfig);
377
+ case "watchPoll":
378
+ return bridgeGet("/watch-events", {
379
+ watchId: payload && payload.watchId ? payload.watchId : "",
380
+ cursor: payload && typeof payload.cursor === "number" ? payload.cursor : ""
381
+ });
382
+ default:
383
+ return Promise.reject(new Error("不支持的 workspace bridge 动作: " + action));
384
+ }
385
+ }
386
+
387
+ function fetchJson(input, init) {
388
+ return fetch(input, Object.assign({
389
+ credentials: "include",
390
+ headers: {
391
+ "content-type": "application/json"
392
+ }
393
+ }, init || {})).then(function (response) {
394
+ return response.text().then(function (text) {
395
+ var body = null;
396
+
397
+ if (text) {
398
+ try {
399
+ body = JSON.parse(text);
400
+ } catch (parseError) {
401
+ debugLog("http-response-parse-error", {
402
+ url: typeof input === "string" ? input : "",
403
+ status: response.status,
404
+ statusText: response.statusText,
405
+ bodyPreview: text.slice(0, 500),
406
+ message: parseError && parseError.message ? parseError.message : String(parseError || "")
407
+ });
408
+ }
409
+ }
410
+
411
+ debugLog("http-response", {
412
+ url: typeof input === "string" ? input : "",
413
+ ok: response.ok,
414
+ status: response.status,
415
+ statusText: response.statusText,
416
+ errorCode: body && body.error_code ? body.error_code : null,
417
+ detail: body && body.detail ? body.detail : null,
418
+ bodyPreview: body ? null : text.slice(0, 500)
419
+ });
420
+
421
+ if (!response.ok) {
422
+ var error = new Error(body && body.detail ? body.detail : "请求失败 HTTP " + String(response.status));
423
+ error.code = body && body.error_code ? body.error_code : "HTTP_" + String(response.status);
424
+ error.status = response.status;
425
+ error.path = body && body.data && typeof body.data.path === "string" ? body.data.path : undefined;
426
+ error.bodyPreview = body ? undefined : text.slice(0, 500);
427
+ throw error;
428
+ }
429
+
430
+ if (!body) {
431
+ var invalidJsonError = new Error("响应不是有效 JSON");
432
+ invalidJsonError.code = "INVALID_JSON_RESPONSE";
433
+ invalidJsonError.status = response.status;
434
+ invalidJsonError.bodyPreview = text.slice(0, 500);
435
+ throw invalidJsonError;
436
+ }
437
+
438
+ return body;
439
+ });
440
+ });
441
+ }
442
+
443
+ function createIframeHostBridge() {
444
+ if (!isIframe()) {
445
+ return null;
446
+ }
447
+
448
+ window.addEventListener("message", function (event) {
449
+ var payload = event.data;
450
+ debugState.lastEventType = payload && typeof payload === "object" && typeof payload.type === "string"
451
+ ? payload.type
452
+ : null;
453
+ debugState.lastResponseOrigin = event.origin || null;
454
+ debugLog("message", {
455
+ origin: event.origin,
456
+ expectedOrigin: ensureParentOrigin(),
457
+ fromParent: event.source === window.parent,
458
+ type: payload && payload.type ? payload.type : null
459
+ });
460
+
461
+ if (event.source !== window.parent) {
462
+ debugState.lastDropReason = "message source is not parent";
463
+ debugLog("drop-message", {
464
+ reason: debugState.lastDropReason,
465
+ origin: event.origin,
466
+ expectedOrigin: ensureParentOrigin(),
467
+ type: payload && payload.type ? payload.type : null
468
+ });
469
+ return;
470
+ }
471
+
472
+ if (event.origin !== ensureParentOrigin()) {
473
+ debugState.lastDropReason = "origin mismatch";
474
+ debugLog("drop-message", {
475
+ reason: debugState.lastDropReason,
476
+ origin: event.origin,
477
+ expectedOrigin: ensureParentOrigin(),
478
+ type: payload && payload.type ? payload.type : null
479
+ });
480
+ return;
481
+ }
482
+
483
+ if (!payload || typeof payload !== "object") {
484
+ debugState.lastDropReason = "payload is not object";
485
+ debugLog("drop-message", {
486
+ reason: debugState.lastDropReason,
487
+ origin: event.origin
488
+ });
489
+ return;
490
+ }
491
+
492
+ if (payload.type === DEBUG_TYPE) {
493
+ debugLog("host-debug", {
494
+ origin: event.origin,
495
+ detail: payload.payload || null
496
+ });
497
+ return;
498
+ }
499
+
500
+ if (payload.type === EVENT_TYPE && typeof payload.watchId === "string") {
501
+ debugLog("watch-event", {
502
+ watchId: payload.watchId,
503
+ origin: event.origin
504
+ });
505
+ dispatchWatchEvent(payload.watchId, payload.payload);
506
+ return;
507
+ }
508
+
509
+ if (payload.type !== RESPONSE_TYPE || typeof payload.id !== "string") {
510
+ debugState.lastDropReason = "not response payload";
511
+ debugLog("drop-message", {
512
+ reason: debugState.lastDropReason,
513
+ origin: event.origin,
514
+ type: payload.type || null,
515
+ id: payload.id || null
516
+ });
517
+ return;
518
+ }
519
+
520
+ var pending = pendingRequests[payload.id];
521
+ if (!pending) {
522
+ debugState.lastDropReason = "no pending request for response";
523
+ debugLog("drop-response", {
524
+ reason: debugState.lastDropReason,
525
+ id: payload.id,
526
+ origin: event.origin,
527
+ pendingRequestIds: Object.keys(pendingRequests)
528
+ });
529
+ return;
530
+ }
531
+
532
+ delete pendingRequests[payload.id];
533
+ updatePendingRequestCount();
534
+ window.clearTimeout(pending.timer);
535
+ debugState.lastResponseId = payload.id;
536
+ debugState.lastResponseAccepted = true;
537
+
538
+ debugLog("response-accepted", {
539
+ id: payload.id,
540
+ ok: payload.ok !== false,
541
+ origin: event.origin
542
+ });
543
+
544
+ if (payload.ok === false) {
545
+ var bridgeError = new Error(payload.error && payload.error.message ? payload.error.message : "宿主桥调用失败");
546
+ bridgeError.code = payload.error && payload.error.code ? payload.error.code : "INTERNAL_ERROR";
547
+ bridgeError.path = payload.error && payload.error.path ? payload.error.path : undefined;
548
+ pending.reject(bridgeError);
549
+ return;
550
+ }
551
+
552
+ pending.resolve(payload.payload);
553
+ });
554
+
555
+ return {
556
+ request: function (action, payload) {
557
+ return new Promise(function (resolve, reject) {
558
+ requestSeq += 1;
559
+ var requestId = "workspace-bridge-" + String(Date.now()) + "-" + String(requestSeq);
560
+ var targetOrigin = ensureParentOrigin();
561
+ pendingRequests[requestId] = {
562
+ resolve: resolve,
563
+ reject: reject,
564
+ timer: window.setTimeout(function () {
565
+ delete pendingRequests[requestId];
566
+ updatePendingRequestCount();
567
+ debugState.lastTimeoutRequestId = requestId;
568
+ debugState.lastTimeoutAction = action;
569
+ debugState.lastTimeoutTargetOrigin = targetOrigin;
570
+ debugLog("request-timeout", {
571
+ requestId: requestId,
572
+ action: action,
573
+ targetOrigin: targetOrigin,
574
+ pendingRequestIds: Object.keys(pendingRequests),
575
+ lastResponseId: debugState.lastResponseId,
576
+ lastResponseOrigin: debugState.lastResponseOrigin,
577
+ lastDropReason: debugState.lastDropReason
578
+ });
579
+ var timeoutError = new Error("等待宿主 workspace bridge 响应超时");
580
+ timeoutError.code = "INTERNAL_ERROR";
581
+ reject(timeoutError);
582
+ }, REQUEST_TIMEOUT_MS)
583
+ };
584
+ updatePendingRequestCount();
585
+ debugState.lastRequestId = requestId;
586
+ debugState.lastRequestAction = action;
587
+ debugState.lastRequestTargetOrigin = targetOrigin;
588
+ debugLog("request", {
589
+ requestId: requestId,
590
+ action: action,
591
+ targetOrigin: targetOrigin,
592
+ payload: payload || {}
593
+ });
594
+
595
+ window.parent.postMessage({
596
+ type: REQUEST_TYPE,
597
+ id: requestId,
598
+ action: action,
599
+ payload: payload || {}
600
+ }, targetOrigin);
601
+ });
602
+ }
603
+ };
604
+ }
605
+
606
+ function createBridgeError(code, message, path) {
607
+ var error = new Error(message);
608
+ error.code = code;
609
+ error.path = path;
610
+ return error;
611
+ }
612
+
613
+ function getDesktopFsBridge() {
614
+ var desktop = window.CodingNSDesktop;
615
+ if (!desktop || !desktop.fs) {
616
+ return null;
617
+ }
618
+
619
+ return desktop.fs;
620
+ }
621
+
622
+ function runDesktopAction(actionName, prepared, unavailableCode, unavailableMessage) {
623
+ if (!prepared || typeof prepared !== "object" || typeof prepared.absolutePath !== "string") {
624
+ return Promise.reject(createBridgeError("INTERNAL_ERROR", "桌面动作预处理结果无效"));
625
+ }
626
+
627
+ var fsBridge = getDesktopFsBridge();
628
+ if (!fsBridge || typeof fsBridge[actionName] !== "function") {
629
+ return Promise.reject(createBridgeError(unavailableCode, unavailableMessage, prepared.relativePath));
630
+ }
631
+
632
+ return fsBridge[actionName](prepared.absolutePath).then(function (result) {
633
+ if (!result || result.ok !== true) {
634
+ throw createBridgeError(
635
+ result && result.errorCode ? result.errorCode : "INTERNAL_ERROR",
636
+ result && result.detail ? result.detail : unavailableMessage,
637
+ prepared.relativePath
638
+ );
639
+ }
640
+
641
+ return prepared;
642
+ });
643
+ }
644
+
645
+ function dispatchWatchEvent(watchId, payload) {
646
+ var listeners = watchListeners[watchId];
647
+ if (!listeners || listeners.length === 0) {
648
+ return;
649
+ }
650
+
651
+ listeners.slice().forEach(function (listener) {
652
+ try {
653
+ listener(payload);
654
+ } catch (_error) {
655
+ // ignore listener error
656
+ }
657
+ });
658
+ }
659
+
660
+ function ensureWatchListenerBucket(watchId) {
661
+ if (!watchListeners[watchId]) {
662
+ watchListeners[watchId] = [];
663
+ }
664
+
665
+ return watchListeners[watchId];
666
+ }
667
+
668
+ function addWatchListener(watchId, callback) {
669
+ if (typeof callback !== "function") {
670
+ return;
671
+ }
672
+
673
+ ensureWatchListenerBucket(watchId).push(callback);
674
+ }
675
+
676
+ function removeWatchListener(watchId, callback) {
677
+ var listeners = watchListeners[watchId];
678
+ if (!listeners || listeners.length === 0) {
679
+ return;
680
+ }
681
+
682
+ watchListeners[watchId] = listeners.filter(function (item) {
683
+ return item !== callback;
684
+ });
685
+
686
+ if (watchListeners[watchId].length === 0) {
687
+ delete watchListeners[watchId];
688
+ }
689
+ }
690
+
691
+ function startDirectWatchPolling(watchId) {
692
+ if (iframeHostBridge || activeWatchPollers[watchId]) {
693
+ return;
694
+ }
695
+
696
+ var state = {
697
+ stopped: false,
698
+ cursor: 0
699
+ };
700
+ activeWatchPollers[watchId] = state;
701
+
702
+ function loop() {
703
+ if (state.stopped) {
704
+ delete activeWatchPollers[watchId];
705
+ return;
706
+ }
707
+
708
+ requestHost("watchPoll", {
709
+ watchId: watchId,
710
+ cursor: state.cursor
711
+ }).then(function (result) {
712
+ if (!result || typeof result !== "object") {
713
+ return;
714
+ }
715
+
716
+ if (typeof result.nextCursor === "number") {
717
+ state.cursor = result.nextCursor;
718
+ }
719
+
720
+ if (Array.isArray(result.events)) {
721
+ result.events.forEach(function (eventPayload) {
722
+ dispatchWatchEvent(watchId, eventPayload);
723
+ });
724
+ }
725
+ }).catch(function (error) {
726
+ if (error && error.code === "WATCH_NOT_FOUND") {
727
+ state.stopped = true;
728
+ }
729
+ }).finally(function () {
730
+ if (!state.stopped) {
731
+ window.setTimeout(loop, WATCH_POLL_INTERVAL_MS);
732
+ } else {
733
+ delete activeWatchPollers[watchId];
734
+ }
735
+ });
736
+ }
737
+
738
+ loop();
739
+ }
740
+
741
+ function stopDirectWatchPolling(watchId) {
742
+ if (!activeWatchPollers[watchId]) {
743
+ return;
744
+ }
745
+
746
+ activeWatchPollers[watchId].stopped = true;
747
+ delete activeWatchPollers[watchId];
748
+ }
749
+
750
+ function createWatchHandle(watchId, callback) {
751
+ return {
752
+ watchId: watchId,
753
+ unsubscribe: function () {
754
+ if (typeof callback === "function") {
755
+ removeWatchListener(watchId, callback);
756
+ }
757
+
758
+ stopDirectWatchPolling(watchId);
759
+ return requestHost("unwatch", {
760
+ watchId: watchId
761
+ }).catch(function (error) {
762
+ if (error && error.code === "WATCH_NOT_FOUND") {
763
+ return {
764
+ ok: true,
765
+ watchId: watchId
766
+ };
767
+ }
768
+ throw error;
769
+ });
770
+ }
771
+ };
772
+ }
773
+
774
+ var workspace = {
775
+ capabilities: function () {
776
+ return requestHost("capabilities");
777
+ },
778
+ requestPermission: function (_input) {
779
+ return Promise.resolve({
780
+ ok: true,
781
+ granted: true,
782
+ scope: "workspace"
783
+ });
784
+ },
785
+ listDir: function (relativePath, options) {
786
+ return requestHost("listDir", {
787
+ path: typeof relativePath === "string" ? relativePath : "",
788
+ options: options || {}
789
+ });
790
+ },
791
+ readText: function (relativePath, options) {
792
+ return requestHost("readText", {
793
+ path: typeof relativePath === "string" ? relativePath : "",
794
+ options: options || {}
795
+ });
796
+ },
797
+ readTexts: function (paths, options) {
798
+ return requestHost("readTexts", {
799
+ paths: Array.isArray(paths) ? paths : [],
800
+ options: options || {}
801
+ });
802
+ },
803
+ writeText: function (relativePath, content, options) {
804
+ return requestHost("writeText", {
805
+ path: typeof relativePath === "string" ? relativePath : "",
806
+ content: typeof content === "string" ? content : "",
807
+ options: options || {}
808
+ });
809
+ },
810
+ writeTexts: function () {
811
+ return Promise.reject(createBridgeError("INTERNAL_ERROR", "当前版本暂不支持批量写入"));
812
+ },
813
+ deleteFile: function (relativePath, options) {
814
+ return requestHost("deleteFile", {
815
+ path: typeof relativePath === "string" ? relativePath : "",
816
+ options: options || {}
817
+ });
818
+ },
819
+ stat: function (relativePath) {
820
+ return requestHost("stat", {
821
+ path: typeof relativePath === "string" ? relativePath : ""
822
+ });
823
+ },
824
+ exists: function (relativePath) {
825
+ return requestHost("exists", {
826
+ path: typeof relativePath === "string" ? relativePath : ""
827
+ });
828
+ },
829
+ openWorkspaceFile: function (relativePath) {
830
+ return requestHost("openWorkspaceFile", {
831
+ path: typeof relativePath === "string" ? relativePath : ""
832
+ });
833
+ },
834
+ revealWorkspaceFile: function (relativePath) {
835
+ return requestHost("revealWorkspaceFile", {
836
+ path: typeof relativePath === "string" ? relativePath : ""
837
+ });
838
+ },
839
+ watchDir: function (relativePath, options, callback) {
840
+ var resolvedOptions = options;
841
+ var resolvedCallback = callback;
842
+
843
+ if (typeof options === "function") {
844
+ resolvedCallback = options;
845
+ resolvedOptions = {};
846
+ }
847
+
848
+ return requestHost("watchDir", {
849
+ path: typeof relativePath === "string" ? relativePath : "",
850
+ options: resolvedOptions || {}
851
+ }).then(function (result) {
852
+ var watchId = result && typeof result.watchId === "string" ? result.watchId : "";
853
+ if (!watchId) {
854
+ throw createBridgeError("INTERNAL_ERROR", "目录监听返回了无效 watchId");
855
+ }
856
+
857
+ if (typeof resolvedCallback === "function") {
858
+ addWatchListener(watchId, resolvedCallback);
859
+ }
860
+
861
+ startDirectWatchPolling(watchId);
862
+ return createWatchHandle(watchId, resolvedCallback);
863
+ });
864
+ },
865
+ unwatch: function (watchIdOrHandle) {
866
+ if (watchIdOrHandle && typeof watchIdOrHandle === "object" && typeof watchIdOrHandle.unsubscribe === "function") {
867
+ return watchIdOrHandle.unsubscribe();
868
+ }
869
+
870
+ var watchId = typeof watchIdOrHandle === "string"
871
+ ? watchIdOrHandle
872
+ : watchIdOrHandle && typeof watchIdOrHandle.watchId === "string"
873
+ ? watchIdOrHandle.watchId
874
+ : "";
875
+
876
+ if (!watchId) {
877
+ return Promise.reject(createBridgeError("INVALID_WATCH_ID", "必须提供 watchId"));
878
+ }
879
+
880
+ stopDirectWatchPolling(watchId);
881
+ delete watchListeners[watchId];
882
+ return requestHost("unwatch", {
883
+ watchId: watchId
884
+ }).catch(function (error) {
885
+ if (error && error.code === "WATCH_NOT_FOUND") {
886
+ return {
887
+ ok: true,
888
+ watchId: watchId
889
+ };
890
+ }
891
+ throw error;
892
+ });
893
+ },
894
+ bridgeProtocol: {
895
+ requestType: REQUEST_TYPE,
896
+ responseType: RESPONSE_TYPE,
897
+ eventType: EVENT_TYPE,
898
+ debugType: DEBUG_TYPE,
899
+ runtimeVersion: typeof bootstrapConfig.runtimeVersion === "string" ? bootstrapConfig.runtimeVersion : "",
900
+ parentOrigin: isIframe() ? ensureParentOrigin() : null
901
+ },
902
+ debug: debugState,
903
+ debugEvents: debugEvents
904
+ };
905
+
906
+ Object.defineProperty(window, "CodingNSWorkspace", {
907
+ configurable: true,
908
+ writable: false,
909
+ value: workspace
910
+ });
911
+ })();