@creezio/electron-shell 0.22.0 → 0.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (417) hide show
  1. package/README.md +1 -1
  2. package/dist/.creezio-src-hash.json +2 -2
  3. package/dist/index.d.ts +2 -2
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +2 -2
  6. package/dist/index.js.map +1 -1
  7. package/dist/meili.d.ts +1 -1
  8. package/dist/meili.d.ts.map +1 -1
  9. package/dist/meili.js +1 -1
  10. package/dist/meili.js.map +1 -1
  11. package/dist-cjs/index.js +6 -8
  12. package/dist-cjs/index.js.map +1 -1
  13. package/dist-cjs/meili.js +1 -2
  14. package/dist-cjs/meili.js.map +1 -1
  15. package/package.json +9 -9
  16. package/dist/desktop/legacy-brand-compat.d.ts +0 -45
  17. package/dist/desktop/legacy-brand-compat.d.ts.map +0 -1
  18. package/dist/desktop/legacy-brand-compat.js +0 -49
  19. package/dist/desktop/legacy-brand-compat.js.map +0 -1
  20. package/dist/factory-reset-runtime.d.ts +0 -11
  21. package/dist/factory-reset-runtime.d.ts.map +0 -1
  22. package/dist/factory-reset-runtime.js +0 -77
  23. package/dist/factory-reset-runtime.js.map +0 -1
  24. package/dist/host/ai-workspace/actions.d.ts +0 -12
  25. package/dist/host/ai-workspace/actions.d.ts.map +0 -1
  26. package/dist/host/ai-workspace/actions.js +0 -243
  27. package/dist/host/ai-workspace/actions.js.map +0 -1
  28. package/dist/host/ai-workspace/bindings.d.ts +0 -51
  29. package/dist/host/ai-workspace/bindings.d.ts.map +0 -1
  30. package/dist/host/ai-workspace/bindings.js +0 -40
  31. package/dist/host/ai-workspace/bindings.js.map +0 -1
  32. package/dist/host/ai-workspace/index.d.ts +0 -11
  33. package/dist/host/ai-workspace/index.d.ts.map +0 -1
  34. package/dist/host/ai-workspace/index.js +0 -6
  35. package/dist/host/ai-workspace/index.js.map +0 -1
  36. package/dist/host/ai-workspace/manager.d.ts +0 -128
  37. package/dist/host/ai-workspace/manager.d.ts.map +0 -1
  38. package/dist/host/ai-workspace/manager.js +0 -519
  39. package/dist/host/ai-workspace/manager.js.map +0 -1
  40. package/dist/host/ai-workspace/profile-window.d.ts +0 -37
  41. package/dist/host/ai-workspace/profile-window.d.ts.map +0 -1
  42. package/dist/host/ai-workspace/profile-window.js +0 -121
  43. package/dist/host/ai-workspace/profile-window.js.map +0 -1
  44. package/dist/host/ai-workspace/screencast.d.ts +0 -56
  45. package/dist/host/ai-workspace/screencast.d.ts.map +0 -1
  46. package/dist/host/ai-workspace/screencast.js +0 -245
  47. package/dist/host/ai-workspace/screencast.js.map +0 -1
  48. package/dist/host/ai-workspace/types.d.ts +0 -40
  49. package/dist/host/ai-workspace/types.d.ts.map +0 -1
  50. package/dist/host/ai-workspace/types.js +0 -6
  51. package/dist/host/ai-workspace/types.js.map +0 -1
  52. package/dist/host/brand-host-runtime.d.ts +0 -107
  53. package/dist/host/brand-host-runtime.d.ts.map +0 -1
  54. package/dist/host/brand-host-runtime.js +0 -274
  55. package/dist/host/brand-host-runtime.js.map +0 -1
  56. package/dist/host/brand-host-stack.d.ts +0 -117
  57. package/dist/host/brand-host-stack.d.ts.map +0 -1
  58. package/dist/host/brand-host-stack.js +0 -253
  59. package/dist/host/brand-host-stack.js.map +0 -1
  60. package/dist/host/brand-kernel-http.d.ts +0 -34
  61. package/dist/host/brand-kernel-http.d.ts.map +0 -1
  62. package/dist/host/brand-kernel-http.js +0 -95
  63. package/dist/host/brand-kernel-http.js.map +0 -1
  64. package/dist/host/brand-meili-boot.d.ts +0 -67
  65. package/dist/host/brand-meili-boot.d.ts.map +0 -1
  66. package/dist/host/brand-meili-boot.js +0 -100
  67. package/dist/host/brand-meili-boot.js.map +0 -1
  68. package/dist/host/bridge-client.d.ts +0 -54
  69. package/dist/host/bridge-client.d.ts.map +0 -1
  70. package/dist/host/bridge-client.js +0 -187
  71. package/dist/host/bridge-client.js.map +0 -1
  72. package/dist/host/context.d.ts +0 -70
  73. package/dist/host/context.d.ts.map +0 -1
  74. package/dist/host/context.js +0 -16
  75. package/dist/host/context.js.map +0 -1
  76. package/dist/host/contracts.d.ts +0 -39
  77. package/dist/host/contracts.d.ts.map +0 -1
  78. package/dist/host/contracts.js +0 -26
  79. package/dist/host/contracts.js.map +0 -1
  80. package/dist/host/crash-reporter.d.ts +0 -65
  81. package/dist/host/crash-reporter.d.ts.map +0 -1
  82. package/dist/host/crash-reporter.js +0 -371
  83. package/dist/host/crash-reporter.js.map +0 -1
  84. package/dist/host/ensure-kit-binaries.d.ts +0 -17
  85. package/dist/host/ensure-kit-binaries.d.ts.map +0 -1
  86. package/dist/host/ensure-kit-binaries.js +0 -205
  87. package/dist/host/ensure-kit-binaries.js.map +0 -1
  88. package/dist/host/feature-off-host.d.ts +0 -130
  89. package/dist/host/feature-off-host.d.ts.map +0 -1
  90. package/dist/host/feature-off-host.js +0 -138
  91. package/dist/host/feature-off-host.js.map +0 -1
  92. package/dist/host/hermes/crm-key.d.ts +0 -49
  93. package/dist/host/hermes/crm-key.d.ts.map +0 -1
  94. package/dist/host/hermes/crm-key.js +0 -126
  95. package/dist/host/hermes/crm-key.js.map +0 -1
  96. package/dist/host/hermes/ensure-crm-key-db.d.ts +0 -7
  97. package/dist/host/hermes/ensure-crm-key-db.d.ts.map +0 -1
  98. package/dist/host/hermes/ensure-crm-key-db.js +0 -84
  99. package/dist/host/hermes/ensure-crm-key-db.js.map +0 -1
  100. package/dist/host/hermes/launcher.d.ts +0 -98
  101. package/dist/host/hermes/launcher.d.ts.map +0 -1
  102. package/dist/host/hermes/launcher.js +0 -972
  103. package/dist/host/hermes/launcher.js.map +0 -1
  104. package/dist/host/hermes/runtime-bootstrap.d.ts +0 -172
  105. package/dist/host/hermes/runtime-bootstrap.d.ts.map +0 -1
  106. package/dist/host/hermes/runtime-bootstrap.js +0 -789
  107. package/dist/host/hermes/runtime-bootstrap.js.map +0 -1
  108. package/dist/host/hermes/skills-seed.d.ts +0 -40
  109. package/dist/host/hermes/skills-seed.d.ts.map +0 -1
  110. package/dist/host/hermes/skills-seed.js +0 -100
  111. package/dist/host/hermes/skills-seed.js.map +0 -1
  112. package/dist/host/host-stack.d.ts +0 -35
  113. package/dist/host/host-stack.d.ts.map +0 -1
  114. package/dist/host/host-stack.js +0 -38
  115. package/dist/host/host-stack.js.map +0 -1
  116. package/dist/host/kit-os-resources.d.ts +0 -6
  117. package/dist/host/kit-os-resources.d.ts.map +0 -1
  118. package/dist/host/kit-os-resources.js +0 -88
  119. package/dist/host/kit-os-resources.js.map +0 -1
  120. package/dist/host/load-electron.d.ts +0 -2
  121. package/dist/host/load-electron.d.ts.map +0 -1
  122. package/dist/host/load-electron.js +0 -44
  123. package/dist/host/load-electron.js.map +0 -1
  124. package/dist/host/local-config.d.ts +0 -120
  125. package/dist/host/local-config.d.ts.map +0 -1
  126. package/dist/host/local-config.js +0 -633
  127. package/dist/host/local-config.js.map +0 -1
  128. package/dist/host/meili/browse.d.ts +0 -58
  129. package/dist/host/meili/browse.d.ts.map +0 -1
  130. package/dist/host/meili/browse.js +0 -98
  131. package/dist/host/meili/browse.js.map +0 -1
  132. package/dist/host/meili/coherence-db.d.ts +0 -35
  133. package/dist/host/meili/coherence-db.d.ts.map +0 -1
  134. package/dist/host/meili/coherence-db.js +0 -129
  135. package/dist/host/meili/coherence-db.js.map +0 -1
  136. package/dist/host/meili/coherence-query.d.ts +0 -10
  137. package/dist/host/meili/coherence-query.d.ts.map +0 -1
  138. package/dist/host/meili/coherence-query.js +0 -23
  139. package/dist/host/meili/coherence-query.js.map +0 -1
  140. package/dist/host/meili/coherence.d.ts +0 -53
  141. package/dist/host/meili/coherence.d.ts.map +0 -1
  142. package/dist/host/meili/coherence.js +0 -148
  143. package/dist/host/meili/coherence.js.map +0 -1
  144. package/dist/host/meili/feed.d.ts +0 -82
  145. package/dist/host/meili/feed.d.ts.map +0 -1
  146. package/dist/host/meili/feed.js +0 -100
  147. package/dist/host/meili/feed.js.map +0 -1
  148. package/dist/host/meili/generic-indexer.d.ts +0 -34
  149. package/dist/host/meili/generic-indexer.d.ts.map +0 -1
  150. package/dist/host/meili/generic-indexer.js +0 -333
  151. package/dist/host/meili/generic-indexer.js.map +0 -1
  152. package/dist/host/meili/index-schema.d.ts +0 -64
  153. package/dist/host/meili/index-schema.d.ts.map +0 -1
  154. package/dist/host/meili/index-schema.js +0 -70
  155. package/dist/host/meili/index-schema.js.map +0 -1
  156. package/dist/host/meili/index.d.ts +0 -13
  157. package/dist/host/meili/index.d.ts.map +0 -1
  158. package/dist/host/meili/index.js +0 -8
  159. package/dist/host/meili/index.js.map +0 -1
  160. package/dist/host/meili/indexer.d.ts +0 -31
  161. package/dist/host/meili/indexer.d.ts.map +0 -1
  162. package/dist/host/meili/indexer.js +0 -49
  163. package/dist/host/meili/indexer.js.map +0 -1
  164. package/dist/host/meili-launcher.d.ts +0 -30
  165. package/dist/host/meili-launcher.d.ts.map +0 -1
  166. package/dist/host/meili-launcher.js +0 -115
  167. package/dist/host/meili-launcher.js.map +0 -1
  168. package/dist/host/n8n/agent-isolation.d.ts +0 -55
  169. package/dist/host/n8n/agent-isolation.d.ts.map +0 -1
  170. package/dist/host/n8n/agent-isolation.js +0 -158
  171. package/dist/host/n8n/agent-isolation.js.map +0 -1
  172. package/dist/host/n8n/api-key.d.ts +0 -67
  173. package/dist/host/n8n/api-key.d.ts.map +0 -1
  174. package/dist/host/n8n/api-key.js +0 -297
  175. package/dist/host/n8n/api-key.js.map +0 -1
  176. package/dist/host/n8n/launcher.d.ts +0 -126
  177. package/dist/host/n8n/launcher.d.ts.map +0 -1
  178. package/dist/host/n8n/launcher.js +0 -1170
  179. package/dist/host/n8n/launcher.js.map +0 -1
  180. package/dist/host/n8n/runtime-bootstrap.d.ts +0 -44
  181. package/dist/host/n8n/runtime-bootstrap.d.ts.map +0 -1
  182. package/dist/host/n8n/runtime-bootstrap.js +0 -230
  183. package/dist/host/n8n/runtime-bootstrap.js.map +0 -1
  184. package/dist/host/node-runtime.d.ts +0 -52
  185. package/dist/host/node-runtime.d.ts.map +0 -1
  186. package/dist/host/node-runtime.js +0 -257
  187. package/dist/host/node-runtime.js.map +0 -1
  188. package/dist/host/npm-cli.d.ts +0 -43
  189. package/dist/host/npm-cli.d.ts.map +0 -1
  190. package/dist/host/npm-cli.js +0 -213
  191. package/dist/host/npm-cli.js.map +0 -1
  192. package/dist/host/plugins/accept-check.d.ts +0 -19
  193. package/dist/host/plugins/accept-check.d.ts.map +0 -1
  194. package/dist/host/plugins/accept-check.js +0 -172
  195. package/dist/host/plugins/accept-check.js.map +0 -1
  196. package/dist/host/plugins/brand-bindings.d.ts +0 -103
  197. package/dist/host/plugins/brand-bindings.d.ts.map +0 -1
  198. package/dist/host/plugins/brand-bindings.js +0 -65
  199. package/dist/host/plugins/brand-bindings.js.map +0 -1
  200. package/dist/host/plugins/control-adapters.d.ts +0 -11
  201. package/dist/host/plugins/control-adapters.d.ts.map +0 -1
  202. package/dist/host/plugins/control-adapters.js +0 -83
  203. package/dist/host/plugins/control-adapters.js.map +0 -1
  204. package/dist/host/plugins/control-extras.d.ts +0 -61
  205. package/dist/host/plugins/control-extras.d.ts.map +0 -1
  206. package/dist/host/plugins/control-extras.js +0 -382
  207. package/dist/host/plugins/control-extras.js.map +0 -1
  208. package/dist/host/plugins/control-plane.d.ts +0 -42
  209. package/dist/host/plugins/control-plane.d.ts.map +0 -1
  210. package/dist/host/plugins/control-plane.js +0 -124
  211. package/dist/host/plugins/control-plane.js.map +0 -1
  212. package/dist/host/plugins/control-token.d.ts +0 -24
  213. package/dist/host/plugins/control-token.d.ts.map +0 -1
  214. package/dist/host/plugins/control-token.js +0 -77
  215. package/dist/host/plugins/control-token.js.map +0 -1
  216. package/dist/host/plugins/crm-key.d.ts +0 -25
  217. package/dist/host/plugins/crm-key.d.ts.map +0 -1
  218. package/dist/host/plugins/crm-key.js +0 -126
  219. package/dist/host/plugins/crm-key.js.map +0 -1
  220. package/dist/host/plugins/data.d.ts +0 -21
  221. package/dist/host/plugins/data.d.ts.map +0 -1
  222. package/dist/host/plugins/data.js +0 -100
  223. package/dist/host/plugins/data.js.map +0 -1
  224. package/dist/host/plugins/events.d.ts +0 -6
  225. package/dist/host/plugins/events.d.ts.map +0 -1
  226. package/dist/host/plugins/events.js +0 -6
  227. package/dist/host/plugins/events.js.map +0 -1
  228. package/dist/host/plugins/execution-grant.d.ts +0 -6
  229. package/dist/host/plugins/execution-grant.d.ts.map +0 -1
  230. package/dist/host/plugins/execution-grant.js +0 -6
  231. package/dist/host/plugins/execution-grant.js.map +0 -1
  232. package/dist/host/plugins/git.d.ts +0 -56
  233. package/dist/host/plugins/git.d.ts.map +0 -1
  234. package/dist/host/plugins/git.js +0 -357
  235. package/dist/host/plugins/git.js.map +0 -1
  236. package/dist/host/plugins/host.d.ts +0 -68
  237. package/dist/host/plugins/host.d.ts.map +0 -1
  238. package/dist/host/plugins/host.js +0 -276
  239. package/dist/host/plugins/host.js.map +0 -1
  240. package/dist/host/plugins/launcher.d.ts +0 -146
  241. package/dist/host/plugins/launcher.d.ts.map +0 -1
  242. package/dist/host/plugins/launcher.js +0 -489
  243. package/dist/host/plugins/launcher.js.map +0 -1
  244. package/dist/host/plugins/runtime.d.ts +0 -28
  245. package/dist/host/plugins/runtime.d.ts.map +0 -1
  246. package/dist/host/plugins/runtime.js +0 -430
  247. package/dist/host/plugins/runtime.js.map +0 -1
  248. package/dist/host/plugins/test-runner.d.ts +0 -15
  249. package/dist/host/plugins/test-runner.d.ts.map +0 -1
  250. package/dist/host/plugins/test-runner.js +0 -106
  251. package/dist/host/plugins/test-runner.js.map +0 -1
  252. package/dist/host/safe-storage.d.ts +0 -21
  253. package/dist/host/safe-storage.d.ts.map +0 -1
  254. package/dist/host/safe-storage.js +0 -55
  255. package/dist/host/safe-storage.js.map +0 -1
  256. package/dist/host/sandbox/embed-sandbox.d.ts +0 -133
  257. package/dist/host/sandbox/embed-sandbox.d.ts.map +0 -1
  258. package/dist/host/sandbox/embed-sandbox.js +0 -378
  259. package/dist/host/sandbox/embed-sandbox.js.map +0 -1
  260. package/dist/host/sandbox/os-sandbox.d.ts +0 -41
  261. package/dist/host/sandbox/os-sandbox.d.ts.map +0 -1
  262. package/dist/host/sandbox/os-sandbox.js +0 -98
  263. package/dist/host/sandbox/os-sandbox.js.map +0 -1
  264. package/dist/host/server-env.d.ts +0 -50
  265. package/dist/host/server-env.d.ts.map +0 -1
  266. package/dist/host/server-env.js +0 -64
  267. package/dist/host/server-env.js.map +0 -1
  268. package/dist/host/server-launcher.d.ts +0 -49
  269. package/dist/host/server-launcher.d.ts.map +0 -1
  270. package/dist/host/server-launcher.js +0 -43
  271. package/dist/host/server-launcher.js.map +0 -1
  272. package/dist/host/tunnel/cloudflared-respawn.d.ts +0 -58
  273. package/dist/host/tunnel/cloudflared-respawn.d.ts.map +0 -1
  274. package/dist/host/tunnel/cloudflared-respawn.js +0 -73
  275. package/dist/host/tunnel/cloudflared-respawn.js.map +0 -1
  276. package/dist/host/tunnel/tunnel.d.ts +0 -72
  277. package/dist/host/tunnel/tunnel.d.ts.map +0 -1
  278. package/dist/host/tunnel/tunnel.js +0 -462
  279. package/dist/host/tunnel/tunnel.js.map +0 -1
  280. package/dist/logger.d.ts +0 -44
  281. package/dist/logger.d.ts.map +0 -1
  282. package/dist/logger.js +0 -252
  283. package/dist/logger.js.map +0 -1
  284. package/dist-cjs/desktop/legacy-brand-compat.js +0 -56
  285. package/dist-cjs/desktop/legacy-brand-compat.js.map +0 -1
  286. package/dist-cjs/factory-reset-runtime.js +0 -117
  287. package/dist-cjs/factory-reset-runtime.js.map +0 -1
  288. package/dist-cjs/host/ai-workspace/actions.js +0 -247
  289. package/dist-cjs/host/ai-workspace/actions.js.map +0 -1
  290. package/dist-cjs/host/ai-workspace/bindings.js +0 -49
  291. package/dist-cjs/host/ai-workspace/bindings.js.map +0 -1
  292. package/dist-cjs/host/ai-workspace/index.js +0 -21
  293. package/dist-cjs/host/ai-workspace/index.js.map +0 -1
  294. package/dist-cjs/host/ai-workspace/manager.js +0 -528
  295. package/dist-cjs/host/ai-workspace/manager.js.map +0 -1
  296. package/dist-cjs/host/ai-workspace/profile-window.js +0 -125
  297. package/dist-cjs/host/ai-workspace/profile-window.js.map +0 -1
  298. package/dist-cjs/host/ai-workspace/screencast.js +0 -249
  299. package/dist-cjs/host/ai-workspace/screencast.js.map +0 -1
  300. package/dist-cjs/host/ai-workspace/types.js +0 -7
  301. package/dist-cjs/host/ai-workspace/types.js.map +0 -1
  302. package/dist-cjs/host/brand-host-runtime.js +0 -286
  303. package/dist-cjs/host/brand-host-runtime.js.map +0 -1
  304. package/dist-cjs/host/brand-host-stack.js +0 -259
  305. package/dist-cjs/host/brand-host-stack.js.map +0 -1
  306. package/dist-cjs/host/brand-kernel-http.js +0 -101
  307. package/dist-cjs/host/brand-kernel-http.js.map +0 -1
  308. package/dist-cjs/host/brand-meili-boot.js +0 -106
  309. package/dist-cjs/host/brand-meili-boot.js.map +0 -1
  310. package/dist-cjs/host/bridge-client.js +0 -191
  311. package/dist-cjs/host/bridge-client.js.map +0 -1
  312. package/dist-cjs/host/context.js +0 -20
  313. package/dist-cjs/host/context.js.map +0 -1
  314. package/dist-cjs/host/contracts.js +0 -32
  315. package/dist-cjs/host/contracts.js.map +0 -1
  316. package/dist-cjs/host/crash-reporter.js +0 -422
  317. package/dist-cjs/host/crash-reporter.js.map +0 -1
  318. package/dist-cjs/host/ensure-kit-binaries.js +0 -212
  319. package/dist-cjs/host/ensure-kit-binaries.js.map +0 -1
  320. package/dist-cjs/host/feature-off-host.js +0 -144
  321. package/dist-cjs/host/feature-off-host.js.map +0 -1
  322. package/dist-cjs/host/hermes/crm-key.js +0 -137
  323. package/dist-cjs/host/hermes/crm-key.js.map +0 -1
  324. package/dist-cjs/host/hermes/ensure-crm-key-db.js +0 -89
  325. package/dist-cjs/host/hermes/ensure-crm-key-db.js.map +0 -1
  326. package/dist-cjs/host/hermes/launcher.js +0 -981
  327. package/dist-cjs/host/hermes/launcher.js.map +0 -1
  328. package/dist-cjs/host/hermes/runtime-bootstrap.js +0 -853
  329. package/dist-cjs/host/hermes/runtime-bootstrap.js.map +0 -1
  330. package/dist-cjs/host/hermes/skills-seed.js +0 -110
  331. package/dist-cjs/host/hermes/skills-seed.js.map +0 -1
  332. package/dist-cjs/host/host-stack.js +0 -42
  333. package/dist-cjs/host/host-stack.js.map +0 -1
  334. package/dist-cjs/host/kit-os-resources.js +0 -96
  335. package/dist-cjs/host/kit-os-resources.js.map +0 -1
  336. package/dist-cjs/host/load-electron.js +0 -47
  337. package/dist-cjs/host/load-electron.js.map +0 -1
  338. package/dist-cjs/host/local-config.js +0 -640
  339. package/dist-cjs/host/local-config.js.map +0 -1
  340. package/dist-cjs/host/meili/browse.js +0 -103
  341. package/dist-cjs/host/meili/browse.js.map +0 -1
  342. package/dist-cjs/host/meili/coherence-db.js +0 -139
  343. package/dist-cjs/host/meili/coherence-db.js.map +0 -1
  344. package/dist-cjs/host/meili/coherence-query.js +0 -25
  345. package/dist-cjs/host/meili/coherence-query.js.map +0 -1
  346. package/dist-cjs/host/meili/coherence.js +0 -158
  347. package/dist-cjs/host/meili/coherence.js.map +0 -1
  348. package/dist-cjs/host/meili/feed.js +0 -108
  349. package/dist-cjs/host/meili/feed.js.map +0 -1
  350. package/dist-cjs/host/meili/generic-indexer.js +0 -340
  351. package/dist-cjs/host/meili/generic-indexer.js.map +0 -1
  352. package/dist-cjs/host/meili/index-schema.js +0 -79
  353. package/dist-cjs/host/meili/index-schema.js.map +0 -1
  354. package/dist-cjs/host/meili/index.js +0 -45
  355. package/dist-cjs/host/meili/index.js.map +0 -1
  356. package/dist-cjs/host/meili/indexer.js +0 -85
  357. package/dist-cjs/host/meili/indexer.js.map +0 -1
  358. package/dist-cjs/host/meili-launcher.js +0 -121
  359. package/dist-cjs/host/meili-launcher.js.map +0 -1
  360. package/dist-cjs/host/n8n/agent-isolation.js +0 -173
  361. package/dist-cjs/host/n8n/agent-isolation.js.map +0 -1
  362. package/dist-cjs/host/n8n/api-key.js +0 -314
  363. package/dist-cjs/host/n8n/api-key.js.map +0 -1
  364. package/dist-cjs/host/n8n/launcher.js +0 -1209
  365. package/dist-cjs/host/n8n/launcher.js.map +0 -1
  366. package/dist-cjs/host/n8n/runtime-bootstrap.js +0 -244
  367. package/dist-cjs/host/n8n/runtime-bootstrap.js.map +0 -1
  368. package/dist-cjs/host/node-runtime.js +0 -274
  369. package/dist-cjs/host/node-runtime.js.map +0 -1
  370. package/dist-cjs/host/npm-cli.js +0 -224
  371. package/dist-cjs/host/npm-cli.js.map +0 -1
  372. package/dist-cjs/host/plugins/accept-check.js +0 -176
  373. package/dist-cjs/host/plugins/accept-check.js.map +0 -1
  374. package/dist-cjs/host/plugins/brand-bindings.js +0 -78
  375. package/dist-cjs/host/plugins/brand-bindings.js.map +0 -1
  376. package/dist-cjs/host/plugins/control-adapters.js +0 -89
  377. package/dist-cjs/host/plugins/control-adapters.js.map +0 -1
  378. package/dist-cjs/host/plugins/control-extras.js +0 -397
  379. package/dist-cjs/host/plugins/control-extras.js.map +0 -1
  380. package/dist-cjs/host/plugins/control-plane.js +0 -130
  381. package/dist-cjs/host/plugins/control-plane.js.map +0 -1
  382. package/dist-cjs/host/plugins/control-token.js +0 -90
  383. package/dist-cjs/host/plugins/control-token.js.map +0 -1
  384. package/dist-cjs/host/plugins/crm-key.js +0 -135
  385. package/dist-cjs/host/plugins/crm-key.js.map +0 -1
  386. package/dist-cjs/host/plugins/data.js +0 -107
  387. package/dist-cjs/host/plugins/data.js.map +0 -1
  388. package/dist-cjs/host/plugins/events.js +0 -19
  389. package/dist-cjs/host/plugins/events.js.map +0 -1
  390. package/dist-cjs/host/plugins/execution-grant.js +0 -11
  391. package/dist-cjs/host/plugins/execution-grant.js.map +0 -1
  392. package/dist-cjs/host/plugins/git.js +0 -371
  393. package/dist-cjs/host/plugins/git.js.map +0 -1
  394. package/dist-cjs/host/plugins/host.js +0 -283
  395. package/dist-cjs/host/plugins/host.js.map +0 -1
  396. package/dist-cjs/host/plugins/launcher.js +0 -514
  397. package/dist-cjs/host/plugins/launcher.js.map +0 -1
  398. package/dist-cjs/host/plugins/runtime.js +0 -446
  399. package/dist-cjs/host/plugins/runtime.js.map +0 -1
  400. package/dist-cjs/host/plugins/test-runner.js +0 -112
  401. package/dist-cjs/host/plugins/test-runner.js.map +0 -1
  402. package/dist-cjs/host/safe-storage.js +0 -95
  403. package/dist-cjs/host/safe-storage.js.map +0 -1
  404. package/dist-cjs/host/sandbox/embed-sandbox.js +0 -396
  405. package/dist-cjs/host/sandbox/embed-sandbox.js.map +0 -1
  406. package/dist-cjs/host/sandbox/os-sandbox.js +0 -106
  407. package/dist-cjs/host/sandbox/os-sandbox.js.map +0 -1
  408. package/dist-cjs/host/server-env.js +0 -69
  409. package/dist-cjs/host/server-env.js.map +0 -1
  410. package/dist-cjs/host/server-launcher.js +0 -52
  411. package/dist-cjs/host/server-launcher.js.map +0 -1
  412. package/dist-cjs/host/tunnel/cloudflared-respawn.js +0 -80
  413. package/dist-cjs/host/tunnel/cloudflared-respawn.js.map +0 -1
  414. package/dist-cjs/host/tunnel/tunnel.js +0 -470
  415. package/dist-cjs/host/tunnel/tunnel.js.map +0 -1
  416. package/dist-cjs/logger.js +0 -269
  417. package/dist-cjs/logger.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"brand-host-stack.js","sourceRoot":"","sources":["../../src/host/brand-host-stack.ts"],"names":[],"mappings":"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"}
@@ -1,34 +0,0 @@
1
- /**
2
- * Listener HTTP mince sur api-kernel — même façade que le harness Node.
3
- * Utilisé par Electron main (SPA) et smokes sans Electron GUI.
4
- */
5
- import http from "node:http";
6
- export type BrandKernelHttpHandle = {
7
- port: number;
8
- baseUrl: string;
9
- server: http.Server;
10
- close: () => Promise<void>;
11
- };
12
- export type BrandKernelLike = {
13
- handle(req: {
14
- method: string;
15
- path: string;
16
- body?: unknown;
17
- query?: Record<string, string | string[] | undefined>;
18
- headers?: Record<string, string | string[] | undefined>;
19
- }): Promise<{
20
- status?: number;
21
- body?: unknown;
22
- headers?: Record<string, string>;
23
- }>;
24
- };
25
- /**
26
- * Ouvre un serveur HTTP qui délègue à `api.handle`.
27
- * Bind Docker : `CREEZIO_HTTP_HOST=0.0.0.0`.
28
- */
29
- export declare function listenBrandKernelHttp(opts: {
30
- api: BrandKernelLike;
31
- port?: number;
32
- host?: string;
33
- }): Promise<BrandKernelHttpHandle>;
34
- //# sourceMappingURL=brand-kernel-http.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"brand-kernel-http.d.ts","sourceRoot":"","sources":["../../src/host/brand-kernel-http.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,CAAC,GAAG,EAAE;QACV,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;QACtD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;KACzD,GAAG,OAAO,CAAC;QACV,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAClC,CAAC,CAAC;CACJ,CAAC;AAmCF;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAChD,GAAG,EAAE,eAAe,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAuDjC"}
@@ -1,95 +0,0 @@
1
- /**
2
- * Listener HTTP mince sur api-kernel — même façade que le harness Node.
3
- * Utilisé par Electron main (SPA) et smokes sans Electron GUI.
4
- */
5
- import http from "node:http";
6
- import { findFreePort } from "@creezio/platform-core";
7
- function readBody(req) {
8
- return new Promise((resolve, reject) => {
9
- const chunks = [];
10
- req.on("data", (c) => chunks.push(c));
11
- req.on("end", () => {
12
- const raw = Buffer.concat(chunks).toString("utf8");
13
- if (!raw)
14
- return resolve(undefined);
15
- try {
16
- resolve(JSON.parse(raw));
17
- }
18
- catch (err) {
19
- reject(err);
20
- }
21
- });
22
- req.on("error", reject);
23
- });
24
- }
25
- function resolveKernelHttpHost(explicit) {
26
- const raw = String(explicit ||
27
- process.env.CREEZIO_HTTP_HOST ||
28
- process.env.METIER_HOST ||
29
- "127.0.0.1").trim();
30
- if (raw === "0.0.0.0" || raw === "*" || raw === "::")
31
- return "0.0.0.0";
32
- return raw || "127.0.0.1";
33
- }
34
- function advertiseBaseUrl(host, port) {
35
- const advertise = host === "0.0.0.0" ? "127.0.0.1" : host;
36
- return `http://${advertise}:${port}`;
37
- }
38
- /**
39
- * Ouvre un serveur HTTP qui délègue à `api.handle`.
40
- * Bind Docker : `CREEZIO_HTTP_HOST=0.0.0.0`.
41
- */
42
- export async function listenBrandKernelHttp(opts) {
43
- const host = resolveKernelHttpHost(opts.host);
44
- const port = opts.port && opts.port > 0 ? opts.port : await findFreePort();
45
- const server = http.createServer(async (req, res) => {
46
- try {
47
- if (req.method === "OPTIONS") {
48
- res.writeHead(204, {
49
- "access-control-allow-origin": "*",
50
- "access-control-allow-methods": "GET,POST,PATCH,DELETE,OPTIONS",
51
- "access-control-allow-headers": "content-type",
52
- });
53
- res.end();
54
- return;
55
- }
56
- const url = new URL(req.url || "/", `http://${host}:${port}`);
57
- const query = Object.fromEntries(url.searchParams.entries());
58
- const body = ["POST", "PUT", "PATCH"].includes(req.method || "")
59
- ? await readBody(req)
60
- : undefined;
61
- const result = await opts.api.handle({
62
- method: req.method || "GET",
63
- path: url.pathname,
64
- body,
65
- query,
66
- headers: req.headers,
67
- });
68
- const payload = JSON.stringify(result.body ?? {});
69
- res.writeHead(result.status || 200, {
70
- "content-type": "application/json; charset=utf-8",
71
- "access-control-allow-origin": "*",
72
- ...(result.headers || {}),
73
- });
74
- res.end(payload);
75
- }
76
- catch (err) {
77
- const message = err instanceof Error ? err.message : String(err);
78
- res.writeHead(500, { "content-type": "application/json" });
79
- res.end(JSON.stringify({ error: message }));
80
- }
81
- });
82
- await new Promise((resolve, reject) => {
83
- server.once("error", reject);
84
- server.listen(port, host, () => resolve());
85
- });
86
- return {
87
- port,
88
- baseUrl: advertiseBaseUrl(host, port),
89
- server,
90
- close: () => new Promise((resolve, reject) => {
91
- server.close((err) => (err ? reject(err) : resolve()));
92
- }),
93
- };
94
- }
95
- //# sourceMappingURL=brand-kernel-http.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"brand-kernel-http.js","sourceRoot":"","sources":["../../src/host/brand-kernel-http.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAuBtD,SAAS,QAAQ,CAAC,GAAyB;IACzC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACtC,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;YACjB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,CAAC,GAAG;gBAAE,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC;YACpC,IAAI,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CAAC;QACH,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,QAAiB;IAC9C,MAAM,GAAG,GAAG,MAAM,CAChB,QAAQ;QACN,OAAO,CAAC,GAAG,CAAC,iBAAiB;QAC7B,OAAO,CAAC,GAAG,CAAC,WAAW;QACvB,WAAW,CACd,CAAC,IAAI,EAAE,CAAC;IACT,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IACvE,OAAO,GAAG,IAAI,WAAW,CAAC;AAC5B,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAY,EAAE,IAAY;IAClD,MAAM,SAAS,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1D,OAAO,UAAU,SAAS,IAAI,IAAI,EAAE,CAAC;AACvC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,IAI3C;IACC,MAAM,IAAI,GAAG,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC;IAE3E,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QAClD,IAAI,CAAC;YACH,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC7B,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;oBACjB,6BAA6B,EAAE,GAAG;oBAClC,8BAA8B,EAAE,+BAA+B;oBAC/D,8BAA8B,EAAE,cAAc;iBAC/C,CAAC,CAAC;gBACH,GAAG,CAAC,GAAG,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YACD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,UAAU,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;YAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7D,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;gBAC9D,CAAC,CAAC,MAAM,QAAQ,CAAC,GAAG,CAAC;gBACrB,CAAC,CAAC,SAAS,CAAC;YACd,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;gBACnC,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,KAAK;gBAC3B,IAAI,EAAE,GAAG,CAAC,QAAQ;gBAClB,IAAI;gBACJ,KAAK;gBACL,OAAO,EAAE,GAAG,CAAC,OAAwD;aACtE,CAAC,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YAClD,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,IAAI,GAAG,EAAE;gBAClC,cAAc,EAAE,iCAAiC;gBACjD,6BAA6B,EAAE,GAAG;gBAClC,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;aAC1B,CAAC,CAAC;YACH,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACnB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC1C,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,IAAI;QACJ,OAAO,EAAE,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC;QACrC,MAAM;QACN,KAAK,EAAE,GAAG,EAAE,CACV,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC9B,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACzD,CAAC,CAAC;KACL,CAAC;AACJ,CAAC"}
@@ -1,67 +0,0 @@
1
- /**
2
- * Boot Meili des marques — composant CORE (comme SQLite), fail-closed.
3
- *
4
- * Contrat (décision plateforme 2026-08-28) : si le feed déclare ≥ 1 index,
5
- * l'absence de binaire Meili ou un échec de démarrage = **échec de boot
6
- * explicite** (throw `MEILI_REQUIRED`), comme une DB absente. Plus jamais
7
- * de `engine:"sql-fallback"` silencieux pour le browse catalogue.
8
- *
9
- * Unique échappatoire : env `CREEZIO_ALLOW_NO_MEILI=1` (dev / tests
10
- * hors-browse uniquement) — warning bruyant + `engine:"sql-fallback"`
11
- * assumé (les listes indexées répondent alors en SQL visible côté
12
- * entity-list, jamais en prod).
13
- */
14
- import type { BrandMeiliFeed } from "./meili/feed.js";
15
- import { type RunningMeili } from "./meili-launcher.js";
16
- import { type MeiliCoherencePaths } from "./meili/coherence.js";
17
- /** Erreur fail-closed du boot Meili (binaire absent / start KO). */
18
- export declare class MeiliRequiredError extends Error {
19
- readonly code = "MEILI_REQUIRED";
20
- constructor(message: string);
21
- }
22
- export declare function isMeiliRequiredError(err: unknown): err is MeiliRequiredError;
23
- export type BrandMeiliBootResult = {
24
- meili: RunningMeili | null;
25
- /** `sql-fallback` n'existe plus qu'avec `CREEZIO_ALLOW_NO_MEILI=1`. */
26
- engine: "meili" | "sql-fallback";
27
- indexed?: Record<string, number>;
28
- /**
29
- * Mode background : résolue à la fin de l'indexation (null si échec).
30
- * Le boot ne doit PAS l'attendre — une réindexation complète (bump de
31
- * schemaVersion sur un gros catalogue) peut dépasser les timeouts de
32
- * health des updates flotte ; /search sert `source:"indexing"` entre-temps.
33
- */
34
- indexation?: Promise<Record<string, number> | null>;
35
- /**
36
- * true quand l'indexation a été sautée parce que le fingerprint persisté
37
- * est à jour (option `skipIfCoherent`) — aucune fenêtre dégradée au boot.
38
- */
39
- indexSkipped?: boolean;
40
- };
41
- /**
42
- * Démarre Meili (fail-closed si le feed déclare des index), indexe le feed,
43
- * pose MEILI_HOST/KEY. Throw `MeiliRequiredError` si binaire absent / start
44
- * KO sans `CREEZIO_ALLOW_NO_MEILI=1`.
45
- */
46
- export declare function maybeBootBrandMeili(opts: {
47
- binaryPath: string | null;
48
- dataDir: string;
49
- userDataDir: string;
50
- dbPath: string;
51
- feed: BrandMeiliFeed;
52
- log?: (line: string) => void;
53
- /** Si false, ne lance pas l'indexation (défaut true). */
54
- index?: boolean;
55
- /** Si true, l'indexation part en tâche de fond (résultat via `indexation`). */
56
- backgroundIndex?: boolean;
57
- /**
58
- * Si true, sonde la cohérence fingerprint + compteurs (stricts) avant
59
- * d'indexer : index persistant à jour → indexation sautée (les ~7 min de
60
- * réindexation complète à chaque boot de container sur un gros catalogue
61
- * dégradent tout le serveur pour rien). Nécessite `coherencePaths`.
62
- */
63
- skipIfCoherent?: boolean;
64
- /** Chemins de la sonde de cohérence (harness serveur : Node courant). */
65
- coherencePaths?: MeiliCoherencePaths;
66
- }): Promise<BrandMeiliBootResult>;
67
- //# sourceMappingURL=brand-meili-boot.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"brand-meili-boot.d.ts","sourceRoot":"","sources":["../../src/host/brand-meili-boot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,EAAc,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEpE,OAAO,EAGL,KAAK,mBAAmB,EACzB,MAAM,sBAAsB,CAAC;AAE9B,oEAAoE;AACpE,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,IAAI,oBAAoB;gBACrB,OAAO,EAAE,MAAM;CAI5B;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,kBAAkB,CAK5E;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,YAAY,GAAG,IAAI,CAAC;IAC3B,uEAAuE;IACvE,MAAM,EAAE,OAAO,GAAG,cAAc,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;IACpD;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,cAAc,CAAC;IACrB,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,yDAAyD;IACzD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,+EAA+E;IAC/E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yEAAyE;IACzE,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA0FhC"}
@@ -1,100 +0,0 @@
1
- import { configureMeiliBrandFeed } from "./meili/feed.js";
2
- import { startMeili } from "./meili-launcher.js";
3
- import { runFeedIndexation } from "./meili/generic-indexer.js";
4
- import { configureMeiliCoherencePaths, decideMeiliReady, } from "./meili/coherence.js";
5
- /** Erreur fail-closed du boot Meili (binaire absent / start KO). */
6
- export class MeiliRequiredError extends Error {
7
- code = "MEILI_REQUIRED";
8
- constructor(message) {
9
- super(message);
10
- this.name = "MeiliRequiredError";
11
- }
12
- }
13
- export function isMeiliRequiredError(err) {
14
- return (err instanceof Error &&
15
- err.code === "MEILI_REQUIRED");
16
- }
17
- /**
18
- * Démarre Meili (fail-closed si le feed déclare des index), indexe le feed,
19
- * pose MEILI_HOST/KEY. Throw `MeiliRequiredError` si binaire absent / start
20
- * KO sans `CREEZIO_ALLOW_NO_MEILI=1`.
21
- */
22
- export async function maybeBootBrandMeili(opts) {
23
- const log = opts.log ?? ((l) => console.log(`[meili-boot] ${l}`));
24
- const meili = await startMeili({
25
- binaryPath: opts.binaryPath,
26
- dataDir: opts.dataDir,
27
- userDataDir: opts.userDataDir,
28
- log,
29
- });
30
- if (!meili) {
31
- delete process.env.MEILI_HOST;
32
- delete process.env.MEILI_MASTER_KEY;
33
- const indexUids = (opts.feed.indexes ?? []).map((i) => i.uid);
34
- if (indexUids.length > 0) {
35
- if (process.env.CREEZIO_ALLOW_NO_MEILI === "1") {
36
- log("⚠️ CREEZIO_ALLOW_NO_MEILI=1 — Meili absent ACCEPTÉ (dev/tests " +
37
- `hors-browse uniquement). Index non servis : ${indexUids.join(", ")}. ` +
38
- "INTERDIT en production : le browse catalogue répondra en SQL visible.");
39
- return { meili: null, engine: "sql-fallback" };
40
- }
41
- throw new MeiliRequiredError(`Meili est un composant core : le feed déclare ${indexUids.length} index ` +
42
- `(${indexUids.join(", ")}) mais le binaire Meilisearch est absent ou n'a pas démarré ` +
43
- `(binaryPath=${opts.binaryPath ?? "null"}). ` +
44
- "Correctifs : installer le binaire kit (ensure-kit-binaries → " +
45
- "electron-shell/resources/bin/meili), poser MEILI_BINARY sur un binaire valide " +
46
- "(image Docker : /opt/creezio/bin/meilisearch), ou — dev/tests hors-browse " +
47
- "UNIQUEMENT — CREEZIO_ALLOW_NO_MEILI=1.");
48
- }
49
- return { meili: null, engine: "sql-fallback" };
50
- }
51
- process.env.MEILI_HOST = meili.host;
52
- process.env.MEILI_MASTER_KEY = meili.masterKey;
53
- if (opts.index === false)
54
- return { meili, engine: "meili" };
55
- if (opts.skipIfCoherent) {
56
- try {
57
- if (!opts.coherencePaths) {
58
- throw new Error("coherencePaths requis pour skipIfCoherent");
59
- }
60
- configureMeiliCoherencePaths(opts.coherencePaths);
61
- configureMeiliBrandFeed(opts.feed);
62
- const decision = await decideMeiliReady(meili, opts.dbPath, {
63
- strictCounts: true,
64
- });
65
- if (decision.ready) {
66
- log(`fingerprint à jour (${decision.reason}) — indexation sautée, ` +
67
- `compteurs ${JSON.stringify(decision.meili)}`);
68
- return { meili, engine: "meili", indexSkipped: true };
69
- }
70
- log(`réindexation requise: ${decision.reason}`);
71
- }
72
- catch (err) {
73
- // La sonde est une optimisation : indécidable → comportement historique.
74
- log(`cohérence indécidable (${err instanceof Error ? err.message : err}) — indexation complète`);
75
- }
76
- }
77
- const runOnce = async () => {
78
- try {
79
- const result = await runFeedIndexation({
80
- feed: opts.feed,
81
- dbPath: opts.dbPath,
82
- meiliHost: meili.host,
83
- masterKey: meili.masterKey,
84
- log,
85
- });
86
- return result.indexed;
87
- }
88
- catch (err) {
89
- log(`indexation échouée — browse catalogue en erreur (meili_unavailable) ` +
90
- `jusqu'à réindexation (${err instanceof Error ? err.message : err})`);
91
- return null;
92
- }
93
- };
94
- if (opts.backgroundIndex) {
95
- return { meili, engine: "meili", indexation: runOnce() };
96
- }
97
- const indexed = await runOnce();
98
- return { meili, engine: "meili", indexed: indexed ?? undefined };
99
- }
100
- //# sourceMappingURL=brand-meili-boot.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"brand-meili-boot.js","sourceRoot":"","sources":["../../src/host/brand-meili-boot.ts"],"names":[],"mappings":"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"}
@@ -1,54 +0,0 @@
1
- /**
2
- * Pont serveur local ↔ Electron pour le pilotage bot des onglets fournisseurs.
3
- *
4
- * - S'authentifie auprès du serveur Next local (POST /api/v1/auth/login avec
5
- * les credentials bootstrappés) et conserve le cookie de session.
6
- * - S'abonne au flux SSE GET /api/v1/assistant/supplier-actions/stream
7
- * (nouvelle route — voir src/server/routes/assistant.ts dans le fork).
8
- * - Pour chaque événement `supplier_action`, exécute l'action via
9
- * supplier-driver puis POST le résultat sur la route EXISTANTE
10
- * /api/v1/assistant/ui-actions/:id/result (résout la promesse serveur).
11
- * - Reconnexion automatique avec backoff.
12
- */
13
- import type { SupplierActionRequest } from "./ai-workspace/types.js";
14
- export type BridgeOptions = {
15
- baseUrl: string;
16
- /** Auth « credentials » (serveur local) : login POST /api/v1/auth/login. */
17
- authUser?: string;
18
- authPassword?: string;
19
- /**
20
- * Auth « session » (client remote) : lit le cookie session déjà posé par le
21
- * login UI (partition appView Electron). Prioritaire sur authUser/Password.
22
- * `null` = pas encore connecté → le loop retente avec backoff.
23
- */
24
- getSessionCookie?: () => Promise<string | null>;
25
- executor: (req: SupplierActionRequest) => Promise<Record<string, unknown>>;
26
- onLog?: (line: string) => void;
27
- /** Cookie session CRM (ex. tempoflow2_crm_session). */
28
- sessionCookieName: string;
29
- /** Méta présence device (headers x-device-id / x-device-label du stream). */
30
- deviceId?: string;
31
- deviceLabel?: string;
32
- };
33
- export declare class BridgeClient {
34
- private opts;
35
- private cookie;
36
- private stopped;
37
- private abort;
38
- constructor(opts: BridgeOptions);
39
- private log;
40
- start(): Promise<void>;
41
- stop(): void;
42
- /**
43
- * POST JSON authentifié avec la session bridge (frames screencast…).
44
- * Retourne le JSON de réponse, ou null en cas d'échec (l'appelant décide
45
- * de retenter / s'arrêter — jamais de throw).
46
- */
47
- postJson(path: string, body: unknown): Promise<Record<string, unknown> | null>;
48
- private loop;
49
- private login;
50
- private consumeStream;
51
- private handleSseEvent;
52
- private execute;
53
- }
54
- //# sourceMappingURL=bridge-client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bridge-client.d.ts","sourceRoot":"","sources":["../../src/host/bridge-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAErE,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAChD,QAAQ,EAAE,CAAC,GAAG,EAAE,qBAAqB,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC3E,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,uDAAuD;IACvD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,qBAAa,YAAY;IAKX,OAAO,CAAC,IAAI;IAJxB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,KAAK,CAAgC;gBAEzB,IAAI,EAAE,aAAa;IAEvC,OAAO,CAAC,GAAG;IAIL,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B,IAAI,IAAI,IAAI;IAKZ;;;;OAIG;IACG,QAAQ,CACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;YAsB5B,IAAI;YAgBJ,KAAK;YA0BL,aAAa;IAqC3B,OAAO,CAAC,cAAc;YAkBR,OAAO;CAuBtB"}
@@ -1,187 +0,0 @@
1
- /**
2
- * Pont serveur local ↔ Electron pour le pilotage bot des onglets fournisseurs.
3
- *
4
- * - S'authentifie auprès du serveur Next local (POST /api/v1/auth/login avec
5
- * les credentials bootstrappés) et conserve le cookie de session.
6
- * - S'abonne au flux SSE GET /api/v1/assistant/supplier-actions/stream
7
- * (nouvelle route — voir src/server/routes/assistant.ts dans le fork).
8
- * - Pour chaque événement `supplier_action`, exécute l'action via
9
- * supplier-driver puis POST le résultat sur la route EXISTANTE
10
- * /api/v1/assistant/ui-actions/:id/result (résout la promesse serveur).
11
- * - Reconnexion automatique avec backoff.
12
- */
13
- export class BridgeClient {
14
- opts;
15
- cookie = null;
16
- stopped = false;
17
- abort = null;
18
- constructor(opts) {
19
- this.opts = opts;
20
- }
21
- log(line) {
22
- (this.opts.onLog || ((l) => console.log(`[bridge] ${l}`)))(line);
23
- }
24
- async start() {
25
- this.stopped = false;
26
- void this.loop();
27
- }
28
- stop() {
29
- this.stopped = true;
30
- this.abort?.abort();
31
- }
32
- /**
33
- * POST JSON authentifié avec la session bridge (frames screencast…).
34
- * Retourne le JSON de réponse, ou null en cas d'échec (l'appelant décide
35
- * de retenter / s'arrêter — jamais de throw).
36
- */
37
- async postJson(path, body) {
38
- try {
39
- if (this.cookie === null)
40
- await this.login();
41
- const res = await fetch(`${this.opts.baseUrl}${path}`, {
42
- method: "POST",
43
- headers: {
44
- "Content-Type": "application/json",
45
- ...(this.cookie ? { Cookie: this.cookie } : {}),
46
- },
47
- body: JSON.stringify(body),
48
- });
49
- if (res.status === 401) {
50
- this.cookie = null; // relogin au prochain appel
51
- return null;
52
- }
53
- if (!res.ok)
54
- return null;
55
- return (await res.json().catch(() => ({})));
56
- }
57
- catch {
58
- return null;
59
- }
60
- }
61
- async loop() {
62
- let backoffMs = 1000;
63
- while (!this.stopped) {
64
- try {
65
- if (!this.cookie)
66
- await this.login();
67
- await this.consumeStream();
68
- backoffMs = 1000; // stream terminé proprement → retry rapide
69
- }
70
- catch (e) {
71
- if (this.stopped)
72
- return;
73
- this.log(`connexion perdue (${e instanceof Error ? e.message : e}) — retry ${backoffMs}ms`);
74
- }
75
- await new Promise((r) => setTimeout(r, backoffMs));
76
- backoffMs = Math.min(backoffMs * 2, 15000);
77
- }
78
- }
79
- async login() {
80
- // Mode session : réutilise le cookie posé par le login UI (client remote).
81
- if (this.opts.getSessionCookie) {
82
- const cookie = await this.opts.getSessionCookie();
83
- if (!cookie) {
84
- throw new Error("session CRM absente — en attente du login utilisateur");
85
- }
86
- this.cookie = cookie;
87
- this.log("session bridge reprise (cookie appView)");
88
- return;
89
- }
90
- const res = await fetch(`${this.opts.baseUrl}/api/v1/auth/login`, {
91
- method: "POST",
92
- headers: { "Content-Type": "application/json" },
93
- body: JSON.stringify({ email: this.opts.authUser, password: this.opts.authPassword }),
94
- });
95
- if (!res.ok)
96
- throw new Error(`login bridge échoué (HTTP ${res.status})`);
97
- const setCookie = res.headers.get("set-cookie") || "";
98
- const name = this.opts.sessionCookieName;
99
- const re = new RegExp(`${name.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")}=([^;]+)`);
100
- const m = setCookie.match(re);
101
- // AUTH_DISABLED=1 : pas de cookie posé, la session n'est pas requise.
102
- this.cookie = m ? `${name}=${m[1]}` : "";
103
- this.log("session bridge établie");
104
- }
105
- async consumeStream() {
106
- this.abort = new AbortController();
107
- const res = await fetch(`${this.opts.baseUrl}/api/v1/assistant/supplier-actions/stream`, {
108
- headers: {
109
- Accept: "text/event-stream",
110
- ...(this.cookie ? { Cookie: this.cookie } : {}),
111
- ...(this.opts.deviceId ? { "x-device-id": this.opts.deviceId } : {}),
112
- ...(this.opts.deviceLabel
113
- ? { "x-device-label": this.opts.deviceLabel }
114
- : {}),
115
- },
116
- signal: this.abort.signal,
117
- });
118
- if (res.status === 401) {
119
- this.cookie = null;
120
- throw new Error("session expirée");
121
- }
122
- if (!res.ok || !res.body)
123
- throw new Error(`stream HTTP ${res.status}`);
124
- this.log("abonné au flux supplier-actions");
125
- const reader = res.body.getReader();
126
- const decoder = new TextDecoder();
127
- let buffer = "";
128
- for (;;) {
129
- const { done, value } = await reader.read();
130
- if (done)
131
- break;
132
- buffer += decoder.decode(value, { stream: true });
133
- // Découpage SSE : événements séparés par une ligne vide.
134
- let idx;
135
- while ((idx = buffer.indexOf("\n\n")) !== -1) {
136
- const rawEvent = buffer.slice(0, idx);
137
- buffer = buffer.slice(idx + 2);
138
- this.handleSseEvent(rawEvent);
139
- }
140
- }
141
- }
142
- handleSseEvent(raw) {
143
- let event = "message";
144
- const dataLines = [];
145
- for (const line of raw.split("\n")) {
146
- if (line.startsWith("event:"))
147
- event = line.slice(6).trim();
148
- else if (line.startsWith("data:"))
149
- dataLines.push(line.slice(5).trim());
150
- }
151
- if (event !== "supplier_action" || dataLines.length === 0)
152
- return;
153
- let req;
154
- try {
155
- req = JSON.parse(dataLines.join("\n"));
156
- }
157
- catch {
158
- return;
159
- }
160
- if (!req?.actionId || !req.type)
161
- return;
162
- void this.execute(req);
163
- }
164
- async execute(req) {
165
- let result;
166
- try {
167
- result = await this.opts.executor(req);
168
- }
169
- catch (e) {
170
- result = { ok: false, error: e instanceof Error ? e.message : "erreur exécuteur" };
171
- }
172
- try {
173
- await fetch(`${this.opts.baseUrl}/api/v1/assistant/ui-actions/${encodeURIComponent(req.actionId)}/result`, {
174
- method: "POST",
175
- headers: {
176
- "Content-Type": "application/json",
177
- ...(this.cookie ? { Cookie: this.cookie } : {}),
178
- },
179
- body: JSON.stringify(result),
180
- });
181
- }
182
- catch {
183
- this.log(`POST résultat ${req.actionId} échoué — le serveur timeoutera`);
184
- }
185
- }
186
- }
187
- //# sourceMappingURL=bridge-client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bridge-client.js","sourceRoot":"","sources":["../../src/host/bridge-client.ts"],"names":[],"mappings":"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"}