@fidelios/server 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (743) hide show
  1. package/dist/adapters/codex-models.d.ts +4 -0
  2. package/dist/adapters/codex-models.d.ts.map +1 -0
  3. package/dist/adapters/codex-models.js +98 -0
  4. package/dist/adapters/codex-models.js.map +1 -0
  5. package/dist/adapters/cursor-models.d.ts +13 -0
  6. package/dist/adapters/cursor-models.d.ts.map +1 -0
  7. package/dist/adapters/cursor-models.js +148 -0
  8. package/dist/adapters/cursor-models.js.map +1 -0
  9. package/dist/adapters/http/execute.d.ts +3 -0
  10. package/dist/adapters/http/execute.d.ts.map +1 -0
  11. package/dist/adapters/http/execute.js +39 -0
  12. package/dist/adapters/http/execute.js.map +1 -0
  13. package/dist/adapters/http/index.d.ts +3 -0
  14. package/dist/adapters/http/index.d.ts.map +1 -0
  15. package/dist/adapters/http/index.js +20 -0
  16. package/dist/adapters/http/index.js.map +1 -0
  17. package/dist/adapters/http/test.d.ts +3 -0
  18. package/dist/adapters/http/test.d.ts.map +1 -0
  19. package/dist/adapters/http/test.js +106 -0
  20. package/dist/adapters/http/test.js.map +1 -0
  21. package/dist/adapters/index.d.ts +4 -0
  22. package/dist/adapters/index.d.ts.map +1 -0
  23. package/dist/adapters/index.js +3 -0
  24. package/dist/adapters/index.js.map +1 -0
  25. package/dist/adapters/process/execute.d.ts +3 -0
  26. package/dist/adapters/process/execute.d.ts.map +1 -0
  27. package/dist/adapters/process/execute.js +63 -0
  28. package/dist/adapters/process/execute.js.map +1 -0
  29. package/dist/adapters/process/index.d.ts +3 -0
  30. package/dist/adapters/process/index.d.ts.map +1 -0
  31. package/dist/adapters/process/index.js +23 -0
  32. package/dist/adapters/process/index.js.map +1 -0
  33. package/dist/adapters/process/test.d.ts +3 -0
  34. package/dist/adapters/process/test.d.ts.map +1 -0
  35. package/dist/adapters/process/test.js +77 -0
  36. package/dist/adapters/process/test.js.map +1 -0
  37. package/dist/adapters/registry.d.ts +14 -0
  38. package/dist/adapters/registry.d.ts.map +1 -0
  39. package/dist/adapters/registry.js +164 -0
  40. package/dist/adapters/registry.js.map +1 -0
  41. package/dist/adapters/types.d.ts +2 -0
  42. package/dist/adapters/types.d.ts.map +1 -0
  43. package/dist/adapters/types.js +2 -0
  44. package/dist/adapters/types.js.map +1 -0
  45. package/dist/adapters/utils.d.ts +10 -0
  46. package/dist/adapters/utils.d.ts.map +1 -0
  47. package/dist/adapters/utils.js +14 -0
  48. package/dist/adapters/utils.js.map +1 -0
  49. package/dist/agent-auth-jwt.d.ts +14 -0
  50. package/dist/agent-auth-jwt.d.ts.map +1 -0
  51. package/dist/agent-auth-jwt.js +117 -0
  52. package/dist/agent-auth-jwt.js.map +1 -0
  53. package/dist/app.d.ts +25 -0
  54. package/dist/app.d.ts.map +1 -0
  55. package/dist/app.js +265 -0
  56. package/dist/app.js.map +1 -0
  57. package/dist/attachment-types.d.ts +33 -0
  58. package/dist/attachment-types.d.ts.map +1 -0
  59. package/dist/attachment-types.js +67 -0
  60. package/dist/attachment-types.js.map +1 -0
  61. package/dist/auth/better-auth.d.ts +24 -0
  62. package/dist/auth/better-auth.d.ts.map +1 -0
  63. package/dist/auth/better-auth.js +108 -0
  64. package/dist/auth/better-auth.js.map +1 -0
  65. package/dist/board-claim.d.ts +23 -0
  66. package/dist/board-claim.d.ts.map +1 -0
  67. package/dist/board-claim.js +115 -0
  68. package/dist/board-claim.js.map +1 -0
  69. package/dist/config-file.d.ts +3 -0
  70. package/dist/config-file.d.ts.map +1 -0
  71. package/dist/config-file.js +16 -0
  72. package/dist/config-file.js.map +1 -0
  73. package/dist/config.d.ts +45 -0
  74. package/dist/config.d.ts.map +1 -0
  75. package/dist/config.js +171 -0
  76. package/dist/config.js.map +1 -0
  77. package/dist/dev-server-status.d.ts +27 -0
  78. package/dist/dev-server-status.d.ts.map +1 -0
  79. package/dist/dev-server-status.js +70 -0
  80. package/dist/dev-server-status.js.map +1 -0
  81. package/dist/dev-watch-ignore.d.ts +2 -0
  82. package/dist/dev-watch-ignore.d.ts.map +1 -0
  83. package/dist/dev-watch-ignore.js +33 -0
  84. package/dist/dev-watch-ignore.js.map +1 -0
  85. package/dist/errors.d.ts +12 -0
  86. package/dist/errors.d.ts.map +1 -0
  87. package/dist/errors.js +28 -0
  88. package/dist/errors.js.map +1 -0
  89. package/dist/home-paths.d.ts +17 -0
  90. package/dist/home-paths.d.ts.map +1 -0
  91. package/dist/home-paths.js +75 -0
  92. package/dist/home-paths.js.map +1 -0
  93. package/dist/index.d.ts +10 -0
  94. package/dist/index.d.ts.map +1 -0
  95. package/dist/index.js +642 -0
  96. package/dist/index.js.map +1 -0
  97. package/dist/log-redaction.d.ts +11 -0
  98. package/dist/log-redaction.d.ts.map +1 -0
  99. package/dist/log-redaction.js +118 -0
  100. package/dist/log-redaction.js.map +1 -0
  101. package/dist/middleware/auth.d.ts +12 -0
  102. package/dist/middleware/auth.d.ts.map +1 -0
  103. package/dist/middleware/auth.js +144 -0
  104. package/dist/middleware/auth.js.map +1 -0
  105. package/dist/middleware/board-mutation-guard.d.ts +3 -0
  106. package/dist/middleware/board-mutation-guard.d.ts.map +1 -0
  107. package/dist/middleware/board-mutation-guard.js +59 -0
  108. package/dist/middleware/board-mutation-guard.js.map +1 -0
  109. package/dist/middleware/error-handler.d.ts +17 -0
  110. package/dist/middleware/error-handler.d.ts.map +1 -0
  111. package/dist/middleware/error-handler.js +37 -0
  112. package/dist/middleware/error-handler.js.map +1 -0
  113. package/dist/middleware/index.d.ts +4 -0
  114. package/dist/middleware/index.d.ts.map +1 -0
  115. package/dist/middleware/index.js +4 -0
  116. package/dist/middleware/index.js.map +1 -0
  117. package/dist/middleware/logger.d.ts +4 -0
  118. package/dist/middleware/logger.d.ts.map +1 -0
  119. package/dist/middleware/logger.js +87 -0
  120. package/dist/middleware/logger.js.map +1 -0
  121. package/dist/middleware/private-hostname-guard.d.ts +11 -0
  122. package/dist/middleware/private-hostname-guard.d.ts.map +1 -0
  123. package/dist/middleware/private-hostname-guard.js +78 -0
  124. package/dist/middleware/private-hostname-guard.js.map +1 -0
  125. package/dist/middleware/validate.d.ts +4 -0
  126. package/dist/middleware/validate.d.ts.map +1 -0
  127. package/dist/middleware/validate.js +7 -0
  128. package/dist/middleware/validate.js.map +1 -0
  129. package/dist/onboarding-assets/ceo/AGENTS.md +54 -0
  130. package/dist/onboarding-assets/ceo/HEARTBEAT.md +72 -0
  131. package/dist/onboarding-assets/ceo/SOUL.md +33 -0
  132. package/dist/onboarding-assets/ceo/TOOLS.md +3 -0
  133. package/dist/onboarding-assets/default/AGENTS.md +3 -0
  134. package/dist/paths.d.ts +3 -0
  135. package/dist/paths.d.ts.map +1 -0
  136. package/dist/paths.js +31 -0
  137. package/dist/paths.js.map +1 -0
  138. package/dist/realtime/live-events-ws.d.ts +28 -0
  139. package/dist/realtime/live-events-ws.d.ts.map +1 -0
  140. package/dist/realtime/live-events-ws.js +187 -0
  141. package/dist/realtime/live-events-ws.js.map +1 -0
  142. package/dist/redaction.d.ts +4 -0
  143. package/dist/redaction.d.ts.map +1 -0
  144. package/dist/redaction.js +63 -0
  145. package/dist/redaction.js.map +1 -0
  146. package/dist/routes/access.d.ts +61 -0
  147. package/dist/routes/access.d.ts.map +1 -0
  148. package/dist/routes/access.js +2265 -0
  149. package/dist/routes/access.js.map +1 -0
  150. package/dist/routes/activity.d.ts +3 -0
  151. package/dist/routes/activity.d.ts.map +1 -0
  152. package/dist/routes/activity.js +78 -0
  153. package/dist/routes/activity.js.map +1 -0
  154. package/dist/routes/agents.d.ts +3 -0
  155. package/dist/routes/agents.d.ts.map +1 -0
  156. package/dist/routes/agents.js +1828 -0
  157. package/dist/routes/agents.js.map +1 -0
  158. package/dist/routes/approvals.d.ts +3 -0
  159. package/dist/routes/approvals.d.ts.map +1 -0
  160. package/dist/routes/approvals.js +275 -0
  161. package/dist/routes/approvals.js.map +1 -0
  162. package/dist/routes/assets.d.ts +4 -0
  163. package/dist/routes/assets.d.ts.map +1 -0
  164. package/dist/routes/assets.js +309 -0
  165. package/dist/routes/assets.js.map +1 -0
  166. package/dist/routes/authz.d.ts +16 -0
  167. package/dist/routes/authz.d.ts.map +1 -0
  168. package/dist/routes/authz.js +47 -0
  169. package/dist/routes/authz.js.map +1 -0
  170. package/dist/routes/companies.d.ts +4 -0
  171. package/dist/routes/companies.d.ts.map +1 -0
  172. package/dist/routes/companies.js +303 -0
  173. package/dist/routes/companies.js.map +1 -0
  174. package/dist/routes/company-skills.d.ts +3 -0
  175. package/dist/routes/company-skills.d.ts.map +1 -0
  176. package/dist/routes/company-skills.js +228 -0
  177. package/dist/routes/company-skills.js.map +1 -0
  178. package/dist/routes/costs.d.ts +3 -0
  179. package/dist/routes/costs.d.ts.map +1 -0
  180. package/dist/routes/costs.js +268 -0
  181. package/dist/routes/costs.js.map +1 -0
  182. package/dist/routes/dashboard.d.ts +3 -0
  183. package/dist/routes/dashboard.d.ts.map +1 -0
  184. package/dist/routes/dashboard.js +15 -0
  185. package/dist/routes/dashboard.js.map +1 -0
  186. package/dist/routes/execution-workspaces.d.ts +3 -0
  187. package/dist/routes/execution-workspaces.d.ts.map +1 -0
  188. package/dist/routes/execution-workspaces.js +165 -0
  189. package/dist/routes/execution-workspaces.js.map +1 -0
  190. package/dist/routes/goals.d.ts +3 -0
  191. package/dist/routes/goals.d.ts.map +1 -0
  192. package/dist/routes/goals.js +95 -0
  193. package/dist/routes/goals.js.map +1 -0
  194. package/dist/routes/health.d.ts +9 -0
  195. package/dist/routes/health.d.ts.map +1 -0
  196. package/dist/routes/health.js +69 -0
  197. package/dist/routes/health.js.map +1 -0
  198. package/dist/routes/index.d.ts +18 -0
  199. package/dist/routes/index.d.ts.map +1 -0
  200. package/dist/routes/index.js +18 -0
  201. package/dist/routes/index.js.map +1 -0
  202. package/dist/routes/instance-settings.d.ts +3 -0
  203. package/dist/routes/instance-settings.d.ts.map +1 -0
  204. package/dist/routes/instance-settings.js +71 -0
  205. package/dist/routes/instance-settings.js.map +1 -0
  206. package/dist/routes/issues-checkout-wakeup.d.ts +9 -0
  207. package/dist/routes/issues-checkout-wakeup.d.ts.map +1 -0
  208. package/dist/routes/issues-checkout-wakeup.js +12 -0
  209. package/dist/routes/issues-checkout-wakeup.js.map +1 -0
  210. package/dist/routes/issues.d.ts +4 -0
  211. package/dist/routes/issues.d.ts.map +1 -0
  212. package/dist/routes/issues.js +1520 -0
  213. package/dist/routes/issues.js.map +1 -0
  214. package/dist/routes/llms.d.ts +3 -0
  215. package/dist/routes/llms.d.ts.map +1 -0
  216. package/dist/routes/llms.js +78 -0
  217. package/dist/routes/llms.js.map +1 -0
  218. package/dist/routes/org-chart-svg.d.ts +25 -0
  219. package/dist/routes/org-chart-svg.d.ts.map +1 -0
  220. package/dist/routes/org-chart-svg.js +656 -0
  221. package/dist/routes/org-chart-svg.js.map +1 -0
  222. package/dist/routes/plugin-ui-static.d.ts +69 -0
  223. package/dist/routes/plugin-ui-static.d.ts.map +1 -0
  224. package/dist/routes/plugin-ui-static.js +411 -0
  225. package/dist/routes/plugin-ui-static.js.map +1 -0
  226. package/dist/routes/plugins.d.ts +120 -0
  227. package/dist/routes/plugins.d.ts.map +1 -0
  228. package/dist/routes/plugins.js +1784 -0
  229. package/dist/routes/plugins.js.map +1 -0
  230. package/dist/routes/projects.d.ts +3 -0
  231. package/dist/routes/projects.d.ts.map +1 -0
  232. package/dist/routes/projects.js +257 -0
  233. package/dist/routes/projects.js.map +1 -0
  234. package/dist/routes/routines.d.ts +3 -0
  235. package/dist/routes/routines.d.ts.map +1 -0
  236. package/dist/routes/routines.js +277 -0
  237. package/dist/routes/routines.js.map +1 -0
  238. package/dist/routes/secrets.d.ts +3 -0
  239. package/dist/routes/secrets.d.ts.map +1 -0
  240. package/dist/routes/secrets.js +128 -0
  241. package/dist/routes/secrets.js.map +1 -0
  242. package/dist/routes/sidebar-badges.d.ts +3 -0
  243. package/dist/routes/sidebar-badges.d.ts.map +1 -0
  244. package/dist/routes/sidebar-badges.js +45 -0
  245. package/dist/routes/sidebar-badges.js.map +1 -0
  246. package/dist/secrets/external-stub-providers.d.ts +5 -0
  247. package/dist/secrets/external-stub-providers.d.ts.map +1 -0
  248. package/dist/secrets/external-stub-providers.js +21 -0
  249. package/dist/secrets/external-stub-providers.js.map +1 -0
  250. package/dist/secrets/local-encrypted-provider.d.ts +3 -0
  251. package/dist/secrets/local-encrypted-provider.d.ts.map +1 -0
  252. package/dist/secrets/local-encrypted-provider.js +116 -0
  253. package/dist/secrets/local-encrypted-provider.js.map +1 -0
  254. package/dist/secrets/provider-registry.d.ts +5 -0
  255. package/dist/secrets/provider-registry.d.ts.map +1 -0
  256. package/dist/secrets/provider-registry.js +20 -0
  257. package/dist/secrets/provider-registry.js.map +1 -0
  258. package/dist/secrets/types.d.ts +21 -0
  259. package/dist/secrets/types.d.ts.map +1 -0
  260. package/dist/secrets/types.js +2 -0
  261. package/dist/secrets/types.js.map +1 -0
  262. package/dist/services/access.d.ts +113 -0
  263. package/dist/services/access.d.ts.map +1 -0
  264. package/dist/services/access.js +247 -0
  265. package/dist/services/access.js.map +1 -0
  266. package/dist/services/activity-log.d.ts +17 -0
  267. package/dist/services/activity-log.d.ts.map +1 -0
  268. package/dist/services/activity-log.js +74 -0
  269. package/dist/services/activity-log.js.map +1 -0
  270. package/dist/services/activity.d.ts +764 -0
  271. package/dist/services/activity.d.ts.map +1 -0
  272. package/dist/services/activity.js +105 -0
  273. package/dist/services/activity.js.map +1 -0
  274. package/dist/services/agent-instructions.d.ts +91 -0
  275. package/dist/services/agent-instructions.d.ts.map +1 -0
  276. package/dist/services/agent-instructions.js +580 -0
  277. package/dist/services/agent-instructions.js.map +1 -0
  278. package/dist/services/agent-permissions.d.ts +6 -0
  279. package/dist/services/agent-permissions.d.ts.map +1 -0
  280. package/dist/services/agent-permissions.js +18 -0
  281. package/dist/services/agent-permissions.js.map +1 -0
  282. package/dist/services/agents.d.ts +1670 -0
  283. package/dist/services/agents.d.ts.map +1 -0
  284. package/dist/services/agents.js +566 -0
  285. package/dist/services/agents.js.map +1 -0
  286. package/dist/services/approvals.d.ts +546 -0
  287. package/dist/services/approvals.d.ts.map +1 -0
  288. package/dist/services/approvals.js +212 -0
  289. package/dist/services/approvals.js.map +1 -0
  290. package/dist/services/assets.d.ts +33 -0
  291. package/dist/services/assets.d.ts.map +1 -0
  292. package/dist/services/assets.js +17 -0
  293. package/dist/services/assets.js.map +1 -0
  294. package/dist/services/board-auth.d.ts +234 -0
  295. package/dist/services/board-auth.d.ts.map +1 -0
  296. package/dist/services/board-auth.js +295 -0
  297. package/dist/services/board-auth.js.map +1 -0
  298. package/dist/services/budgets.d.ts +38 -0
  299. package/dist/services/budgets.d.ts.map +1 -0
  300. package/dist/services/budgets.js +784 -0
  301. package/dist/services/budgets.js.map +1 -0
  302. package/dist/services/companies.d.ts +124 -0
  303. package/dist/services/companies.d.ts.map +1 -0
  304. package/dist/services/companies.js +256 -0
  305. package/dist/services/companies.js.map +1 -0
  306. package/dist/services/company-export-readme.d.ts +17 -0
  307. package/dist/services/company-export-readme.d.ts.map +1 -0
  308. package/dist/services/company-export-readme.js +148 -0
  309. package/dist/services/company-export-readme.js.map +1 -0
  310. package/dist/services/company-portability.d.ts +23 -0
  311. package/dist/services/company-portability.d.ts.map +1 -0
  312. package/dist/services/company-portability.js +3739 -0
  313. package/dist/services/company-portability.js.map +1 -0
  314. package/dist/services/company-skills.d.ts +77 -0
  315. package/dist/services/company-skills.d.ts.map +1 -0
  316. package/dist/services/company-skills.js +2042 -0
  317. package/dist/services/company-skills.js.map +1 -0
  318. package/dist/services/costs.d.ts +114 -0
  319. package/dist/services/costs.d.ts.map +1 -0
  320. package/dist/services/costs.js +294 -0
  321. package/dist/services/costs.js.map +1 -0
  322. package/dist/services/cron.d.ts +80 -0
  323. package/dist/services/cron.d.ts.map +1 -0
  324. package/dist/services/cron.js +300 -0
  325. package/dist/services/cron.js.map +1 -0
  326. package/dist/services/dashboard.d.ts +26 -0
  327. package/dist/services/dashboard.d.ts.map +1 -0
  328. package/dist/services/dashboard.js +98 -0
  329. package/dist/services/dashboard.js.map +1 -0
  330. package/dist/services/default-agent-instructions.d.ts +9 -0
  331. package/dist/services/default-agent-instructions.d.ts.map +1 -0
  332. package/dist/services/default-agent-instructions.js +20 -0
  333. package/dist/services/default-agent-instructions.js.map +1 -0
  334. package/dist/services/documents.d.ts +164 -0
  335. package/dist/services/documents.d.ts.map +1 -0
  336. package/dist/services/documents.js +382 -0
  337. package/dist/services/documents.js.map +1 -0
  338. package/dist/services/execution-workspace-policy.d.ts +21 -0
  339. package/dist/services/execution-workspace-policy.d.ts.map +1 -0
  340. package/dist/services/execution-workspace-policy.js +177 -0
  341. package/dist/services/execution-workspace-policy.js.map +1 -0
  342. package/dist/services/execution-workspaces.d.ts +19 -0
  343. package/dist/services/execution-workspaces.d.ts.map +1 -0
  344. package/dist/services/execution-workspaces.js +87 -0
  345. package/dist/services/execution-workspaces.js.map +1 -0
  346. package/dist/services/finance.d.ts +93 -0
  347. package/dist/services/finance.d.ts.map +1 -0
  348. package/dist/services/finance.js +120 -0
  349. package/dist/services/finance.js.map +1 -0
  350. package/dist/services/goals.d.ts +433 -0
  351. package/dist/services/goals.d.ts.map +1 -0
  352. package/dist/services/goals.js +54 -0
  353. package/dist/services/goals.js.map +1 -0
  354. package/dist/services/heartbeat-run-summary.d.ts +2 -0
  355. package/dist/services/heartbeat-run-summary.d.ts.map +1 -0
  356. package/dist/services/heartbeat-run-summary.js +30 -0
  357. package/dist/services/heartbeat-run-summary.js.map +1 -0
  358. package/dist/services/heartbeat.d.ts +812 -0
  359. package/dist/services/heartbeat.d.ts.map +1 -0
  360. package/dist/services/heartbeat.js +3156 -0
  361. package/dist/services/heartbeat.js.map +1 -0
  362. package/dist/services/hire-hook.d.ts +14 -0
  363. package/dist/services/hire-hook.d.ts.map +1 -0
  364. package/dist/services/hire-hook.js +85 -0
  365. package/dist/services/hire-hook.js.map +1 -0
  366. package/dist/services/index.d.ts +33 -0
  367. package/dist/services/index.d.ts.map +1 -0
  368. package/dist/services/index.js +33 -0
  369. package/dist/services/index.js.map +1 -0
  370. package/dist/services/instance-settings.d.ts +11 -0
  371. package/dist/services/instance-settings.d.ts.map +1 -0
  372. package/dist/services/instance-settings.js +116 -0
  373. package/dist/services/instance-settings.js.map +1 -0
  374. package/dist/services/issue-approvals.d.ts +56 -0
  375. package/dist/services/issue-approvals.d.ts.map +1 -0
  376. package/dist/services/issue-approvals.js +153 -0
  377. package/dist/services/issue-approvals.js.map +1 -0
  378. package/dist/services/issue-assignment-wakeup.d.ts +29 -0
  379. package/dist/services/issue-assignment-wakeup.d.ts.map +1 -0
  380. package/dist/services/issue-assignment-wakeup.js +22 -0
  381. package/dist/services/issue-assignment-wakeup.js.map +1 -0
  382. package/dist/services/issue-goal-fallback.d.ts +18 -0
  383. package/dist/services/issue-goal-fallback.d.ts.map +1 -0
  384. package/dist/services/issue-goal-fallback.js +33 -0
  385. package/dist/services/issue-goal-fallback.js.map +1 -0
  386. package/dist/services/issues.d.ts +560 -0
  387. package/dist/services/issues.d.ts.map +1 -0
  388. package/dist/services/issues.js +1478 -0
  389. package/dist/services/issues.js.map +1 -0
  390. package/dist/services/live-events.d.ts +17 -0
  391. package/dist/services/live-events.d.ts.map +1 -0
  392. package/dist/services/live-events.js +33 -0
  393. package/dist/services/live-events.js.map +1 -0
  394. package/dist/services/plugin-capability-validator.d.ts +108 -0
  395. package/dist/services/plugin-capability-validator.d.ts.map +1 -0
  396. package/dist/services/plugin-capability-validator.js +268 -0
  397. package/dist/services/plugin-capability-validator.js.map +1 -0
  398. package/dist/services/plugin-config-validator.d.ts +26 -0
  399. package/dist/services/plugin-config-validator.d.ts.map +1 -0
  400. package/dist/services/plugin-config-validator.js +41 -0
  401. package/dist/services/plugin-config-validator.js.map +1 -0
  402. package/dist/services/plugin-dev-watcher.d.ts +30 -0
  403. package/dist/services/plugin-dev-watcher.d.ts.map +1 -0
  404. package/dist/services/plugin-dev-watcher.js +241 -0
  405. package/dist/services/plugin-dev-watcher.js.map +1 -0
  406. package/dist/services/plugin-event-bus.d.ts +149 -0
  407. package/dist/services/plugin-event-bus.d.ts.map +1 -0
  408. package/dist/services/plugin-event-bus.js +258 -0
  409. package/dist/services/plugin-event-bus.js.map +1 -0
  410. package/dist/services/plugin-host-service-cleanup.d.ts +14 -0
  411. package/dist/services/plugin-host-service-cleanup.d.ts.map +1 -0
  412. package/dist/services/plugin-host-service-cleanup.js +37 -0
  413. package/dist/services/plugin-host-service-cleanup.js.map +1 -0
  414. package/dist/services/plugin-host-services.d.ts +13 -0
  415. package/dist/services/plugin-host-services.d.ts.map +1 -0
  416. package/dist/services/plugin-host-services.js +969 -0
  417. package/dist/services/plugin-host-services.js.map +1 -0
  418. package/dist/services/plugin-job-coordinator.d.ts +81 -0
  419. package/dist/services/plugin-job-coordinator.d.ts.map +1 -0
  420. package/dist/services/plugin-job-coordinator.js +172 -0
  421. package/dist/services/plugin-job-coordinator.js.map +1 -0
  422. package/dist/services/plugin-job-scheduler.d.ts +163 -0
  423. package/dist/services/plugin-job-scheduler.d.ts.map +1 -0
  424. package/dist/services/plugin-job-scheduler.js +454 -0
  425. package/dist/services/plugin-job-scheduler.js.map +1 -0
  426. package/dist/services/plugin-job-store.d.ts +208 -0
  427. package/dist/services/plugin-job-store.d.ts.map +1 -0
  428. package/dist/services/plugin-job-store.js +350 -0
  429. package/dist/services/plugin-job-store.js.map +1 -0
  430. package/dist/services/plugin-lifecycle.d.ts +203 -0
  431. package/dist/services/plugin-lifecycle.d.ts.map +1 -0
  432. package/dist/services/plugin-lifecycle.js +476 -0
  433. package/dist/services/plugin-lifecycle.js.map +1 -0
  434. package/dist/services/plugin-loader.d.ts +441 -0
  435. package/dist/services/plugin-loader.d.ts.map +1 -0
  436. package/dist/services/plugin-loader.js +1192 -0
  437. package/dist/services/plugin-loader.js.map +1 -0
  438. package/dist/services/plugin-log-retention.d.ts +20 -0
  439. package/dist/services/plugin-log-retention.d.ts.map +1 -0
  440. package/dist/services/plugin-log-retention.js +63 -0
  441. package/dist/services/plugin-log-retention.js.map +1 -0
  442. package/dist/services/plugin-manifest-validator.d.ts +79 -0
  443. package/dist/services/plugin-manifest-validator.d.ts.map +1 -0
  444. package/dist/services/plugin-manifest-validator.js +84 -0
  445. package/dist/services/plugin-manifest-validator.js.map +1 -0
  446. package/dist/services/plugin-registry.d.ts +2542 -0
  447. package/dist/services/plugin-registry.d.ts.map +1 -0
  448. package/dist/services/plugin-registry.js +539 -0
  449. package/dist/services/plugin-registry.js.map +1 -0
  450. package/dist/services/plugin-runtime-sandbox.d.ts +40 -0
  451. package/dist/services/plugin-runtime-sandbox.d.ts.map +1 -0
  452. package/dist/services/plugin-runtime-sandbox.js +154 -0
  453. package/dist/services/plugin-runtime-sandbox.js.map +1 -0
  454. package/dist/services/plugin-secrets-handler.d.ts +81 -0
  455. package/dist/services/plugin-secrets-handler.d.ts.map +1 -0
  456. package/dist/services/plugin-secrets-handler.js +275 -0
  457. package/dist/services/plugin-secrets-handler.js.map +1 -0
  458. package/dist/services/plugin-state-store.d.ts +92 -0
  459. package/dist/services/plugin-state-store.d.ts.map +1 -0
  460. package/dist/services/plugin-state-store.js +190 -0
  461. package/dist/services/plugin-state-store.js.map +1 -0
  462. package/dist/services/plugin-stream-bus.d.ts +29 -0
  463. package/dist/services/plugin-stream-bus.d.ts.map +1 -0
  464. package/dist/services/plugin-stream-bus.js +48 -0
  465. package/dist/services/plugin-stream-bus.js.map +1 -0
  466. package/dist/services/plugin-tool-dispatcher.d.ts +180 -0
  467. package/dist/services/plugin-tool-dispatcher.d.ts.map +1 -0
  468. package/dist/services/plugin-tool-dispatcher.js +224 -0
  469. package/dist/services/plugin-tool-dispatcher.js.map +1 -0
  470. package/dist/services/plugin-tool-registry.d.ts +192 -0
  471. package/dist/services/plugin-tool-registry.d.ts.map +1 -0
  472. package/dist/services/plugin-tool-registry.js +224 -0
  473. package/dist/services/plugin-tool-registry.js.map +1 -0
  474. package/dist/services/plugin-worker-manager.d.ts +260 -0
  475. package/dist/services/plugin-worker-manager.d.ts.map +1 -0
  476. package/dist/services/plugin-worker-manager.js +835 -0
  477. package/dist/services/plugin-worker-manager.js.map +1 -0
  478. package/dist/services/projects.d.ts +87 -0
  479. package/dist/services/projects.d.ts.map +1 -0
  480. package/dist/services/projects.js +656 -0
  481. package/dist/services/projects.js.map +1 -0
  482. package/dist/services/quota-windows.d.ts +9 -0
  483. package/dist/services/quota-windows.d.ts.map +1 -0
  484. package/dist/services/quota-windows.js +56 -0
  485. package/dist/services/quota-windows.js.map +1 -0
  486. package/dist/services/routines.d.ts +135 -0
  487. package/dist/services/routines.d.ts.map +1 -0
  488. package/dist/services/routines.js +1105 -0
  489. package/dist/services/routines.js.map +1 -0
  490. package/dist/services/run-log-store.d.ts +34 -0
  491. package/dist/services/run-log-store.d.ts.map +1 -0
  492. package/dist/services/run-log-store.js +109 -0
  493. package/dist/services/run-log-store.js.map +1 -0
  494. package/dist/services/secrets.d.ts +511 -0
  495. package/dist/services/secrets.d.ts.map +1 -0
  496. package/dist/services/secrets.js +289 -0
  497. package/dist/services/secrets.js.map +1 -0
  498. package/dist/services/sidebar-badges.d.ts +9 -0
  499. package/dist/services/sidebar-badges.d.ts.map +1 -0
  500. package/dist/services/sidebar-badges.js +33 -0
  501. package/dist/services/sidebar-badges.js.map +1 -0
  502. package/dist/services/work-products.d.ts +14 -0
  503. package/dist/services/work-products.d.ts.map +1 -0
  504. package/dist/services/work-products.js +100 -0
  505. package/dist/services/work-products.js.map +1 -0
  506. package/dist/services/workspace-operation-log-store.d.ts +33 -0
  507. package/dist/services/workspace-operation-log-store.d.ts.map +1 -0
  508. package/dist/services/workspace-operation-log-store.js +110 -0
  509. package/dist/services/workspace-operation-log-store.js.map +1 -0
  510. package/dist/services/workspace-operations.d.ts +44 -0
  511. package/dist/services/workspace-operations.d.ts.map +1 -0
  512. package/dist/services/workspace-operations.js +211 -0
  513. package/dist/services/workspace-operations.js.map +1 -0
  514. package/dist/services/workspace-runtime.d.ts +164 -0
  515. package/dist/services/workspace-runtime.d.ts.map +1 -0
  516. package/dist/services/workspace-runtime.js +1235 -0
  517. package/dist/services/workspace-runtime.js.map +1 -0
  518. package/dist/startup-banner.d.ts +31 -0
  519. package/dist/startup-banner.d.ts.map +1 -0
  520. package/dist/startup-banner.js +117 -0
  521. package/dist/startup-banner.js.map +1 -0
  522. package/dist/storage/index.d.ts +6 -0
  523. package/dist/storage/index.d.ts.map +1 -0
  524. package/dist/storage/index.js +29 -0
  525. package/dist/storage/index.js.map +1 -0
  526. package/dist/storage/local-disk-provider.d.ts +3 -0
  527. package/dist/storage/local-disk-provider.d.ts.map +1 -0
  528. package/dist/storage/local-disk-provider.js +79 -0
  529. package/dist/storage/local-disk-provider.js.map +1 -0
  530. package/dist/storage/provider-registry.d.ts +4 -0
  531. package/dist/storage/provider-registry.d.ts.map +1 -0
  532. package/dist/storage/provider-registry.js +15 -0
  533. package/dist/storage/provider-registry.js.map +1 -0
  534. package/dist/storage/s3-provider.d.ts +11 -0
  535. package/dist/storage/s3-provider.d.ts.map +1 -0
  536. package/dist/storage/s3-provider.js +123 -0
  537. package/dist/storage/s3-provider.js.map +1 -0
  538. package/dist/storage/service.d.ts +3 -0
  539. package/dist/storage/service.d.ts.map +1 -0
  540. package/dist/storage/service.js +120 -0
  541. package/dist/storage/service.js.map +1 -0
  542. package/dist/storage/types.d.ts +55 -0
  543. package/dist/storage/types.d.ts.map +1 -0
  544. package/dist/storage/types.js +2 -0
  545. package/dist/storage/types.js.map +1 -0
  546. package/dist/ui-branding.d.ts +13 -0
  547. package/dist/ui-branding.d.ts.map +1 -0
  548. package/dist/ui-branding.js +187 -0
  549. package/dist/ui-branding.js.map +1 -0
  550. package/dist/version.d.ts +2 -0
  551. package/dist/version.d.ts.map +1 -0
  552. package/dist/version.js +5 -0
  553. package/dist/version.js.map +1 -0
  554. package/dist/worktree-config.d.ts +19 -0
  555. package/dist/worktree-config.d.ts.map +1 -0
  556. package/dist/worktree-config.js +365 -0
  557. package/dist/worktree-config.js.map +1 -0
  558. package/package.json +95 -0
  559. package/ui-dist/android-chrome-192x192.png +0 -0
  560. package/ui-dist/android-chrome-512x512.png +0 -0
  561. package/ui-dist/apple-touch-icon.png +0 -0
  562. package/ui-dist/assets/_basePickBy-BB1S19s0.js +1 -0
  563. package/ui-dist/assets/_baseUniq-BNk0p-bq.js +1 -0
  564. package/ui-dist/assets/apl-B4CMkyY2.js +1 -0
  565. package/ui-dist/assets/arc-Ds13x1NW.js +1 -0
  566. package/ui-dist/assets/architectureDiagram-VXUJARFQ-D8Br-_jt.js +36 -0
  567. package/ui-dist/assets/asciiarmor-Df11BRmG.js +1 -0
  568. package/ui-dist/assets/asn1-EdZsLKOL.js +1 -0
  569. package/ui-dist/assets/asterisk-B-8jnY81.js +1 -0
  570. package/ui-dist/assets/blockDiagram-VD42YOAC-CCYsAhQ5.js +122 -0
  571. package/ui-dist/assets/brainfuck-C4LP7Hcl.js +1 -0
  572. package/ui-dist/assets/c4Diagram-YG6GDRKO-CsrnTJYB.js +10 -0
  573. package/ui-dist/assets/channel-Df4ReTUQ.js +1 -0
  574. package/ui-dist/assets/chunk-4BX2VUAB-s-S3bm2a.js +1 -0
  575. package/ui-dist/assets/chunk-55IACEB6-AlPeSG3C.js +1 -0
  576. package/ui-dist/assets/chunk-B4BG7PRW-Dlv3zmp0.js +165 -0
  577. package/ui-dist/assets/chunk-DI55MBZ5-y3Hfc2F6.js +220 -0
  578. package/ui-dist/assets/chunk-FMBD7UC4-ZbmFZ8uD.js +15 -0
  579. package/ui-dist/assets/chunk-QN33PNHL-g7XrAaL5.js +1 -0
  580. package/ui-dist/assets/chunk-QZHKN3VN-DQz2X_ZR.js +1 -0
  581. package/ui-dist/assets/chunk-TZMSLE5B-NRbDhryd.js +1 -0
  582. package/ui-dist/assets/classDiagram-2ON5EDUG-CdLb01dH.js +1 -0
  583. package/ui-dist/assets/classDiagram-v2-WZHVMYZB-CdLb01dH.js +1 -0
  584. package/ui-dist/assets/clike-B9uivgTg.js +1 -0
  585. package/ui-dist/assets/clojure-BMjYHr_A.js +1 -0
  586. package/ui-dist/assets/clone-ycTwxHSX.js +1 -0
  587. package/ui-dist/assets/cmake-BQqOBYOt.js +1 -0
  588. package/ui-dist/assets/cobol-CWcv1MsR.js +1 -0
  589. package/ui-dist/assets/coffeescript-S37ZYGWr.js +1 -0
  590. package/ui-dist/assets/commonlisp-DBKNyK5s.js +1 -0
  591. package/ui-dist/assets/cose-bilkent-S5V4N54A-CifA3UGC.js +1 -0
  592. package/ui-dist/assets/crystal-SjHAIU92.js +1 -0
  593. package/ui-dist/assets/css-BnMrqG3P.js +1 -0
  594. package/ui-dist/assets/cypher-C_CwsFkJ.js +1 -0
  595. package/ui-dist/assets/cytoscape.esm-BQaXIfA_.js +331 -0
  596. package/ui-dist/assets/d-pRatUO7H.js +1 -0
  597. package/ui-dist/assets/dagre-6UL2VRFP-Cy4_402x.js +4 -0
  598. package/ui-dist/assets/defaultLocale-DX6XiGOO.js +1 -0
  599. package/ui-dist/assets/diagram-PSM6KHXK-CUA-Vqxe.js +24 -0
  600. package/ui-dist/assets/diagram-QEK2KX5R-D763Ackt.js +43 -0
  601. package/ui-dist/assets/diagram-S2PKOQOG-Cu1xEKHt.js +24 -0
  602. package/ui-dist/assets/diff-DbItnlRl.js +1 -0
  603. package/ui-dist/assets/dockerfile-BKs6k2Af.js +1 -0
  604. package/ui-dist/assets/dtd-DF_7sFjM.js +1 -0
  605. package/ui-dist/assets/dylan-DwRh75JA.js +1 -0
  606. package/ui-dist/assets/ebnf-CDyGwa7X.js +1 -0
  607. package/ui-dist/assets/ecl-Cabwm37j.js +1 -0
  608. package/ui-dist/assets/eiffel-CnydiIhH.js +1 -0
  609. package/ui-dist/assets/elm-vLlmbW-K.js +1 -0
  610. package/ui-dist/assets/erDiagram-Q2GNP2WA-9RlN9oCi.js +60 -0
  611. package/ui-dist/assets/erlang-BNw1qcRV.js +1 -0
  612. package/ui-dist/assets/factor-kuTfRLto.js +1 -0
  613. package/ui-dist/assets/fcl-Kvtd6kyn.js +1 -0
  614. package/ui-dist/assets/flowDiagram-NV44I4VS-Ddv1tq-H.js +162 -0
  615. package/ui-dist/assets/forth-Ffai-XNe.js +1 -0
  616. package/ui-dist/assets/fortran-DYz_wnZ1.js +1 -0
  617. package/ui-dist/assets/ganttDiagram-JELNMOA3-DAw7UfVT.js +267 -0
  618. package/ui-dist/assets/gas-Bneqetm1.js +1 -0
  619. package/ui-dist/assets/gherkin-heZmZLOM.js +1 -0
  620. package/ui-dist/assets/gitGraphDiagram-V2S2FVAM-CLPkzwpF.js +65 -0
  621. package/ui-dist/assets/graph-B1ThnnK5.js +1 -0
  622. package/ui-dist/assets/groovy-D9Dt4D0W.js +1 -0
  623. package/ui-dist/assets/haskell-Cw1EW3IL.js +1 -0
  624. package/ui-dist/assets/haxe-H-WmDvRZ.js +1 -0
  625. package/ui-dist/assets/http-DBlCnlav.js +1 -0
  626. package/ui-dist/assets/idl-BEugSyMb.js +1 -0
  627. package/ui-dist/assets/index-0DYmQxT3.js +2 -0
  628. package/ui-dist/assets/index-1BRIjwwa.js +1 -0
  629. package/ui-dist/assets/index-4pxn9bje.js +1 -0
  630. package/ui-dist/assets/index-B02pjBpR.js +7 -0
  631. package/ui-dist/assets/index-BGjMkZzC.js +1 -0
  632. package/ui-dist/assets/index-BHsjaYJ1.js +1 -0
  633. package/ui-dist/assets/index-BTwpjL-6.js +1 -0
  634. package/ui-dist/assets/index-BZ72uG4K.js +6 -0
  635. package/ui-dist/assets/index-BpC8VHcj.js +3 -0
  636. package/ui-dist/assets/index-BrvXvCkd.js +1 -0
  637. package/ui-dist/assets/index-CEBcI-2f.js +1 -0
  638. package/ui-dist/assets/index-CkmjCahV.js +1 -0
  639. package/ui-dist/assets/index-Cp84QmJD.css +1 -0
  640. package/ui-dist/assets/index-CpVjtxma.js +1 -0
  641. package/ui-dist/assets/index-D3AJPUjv.js +1 -0
  642. package/ui-dist/assets/index-DRkeP4vs.js +13 -0
  643. package/ui-dist/assets/index-DXeNhnre.js +1180 -0
  644. package/ui-dist/assets/index-DXvXmooU.js +1 -0
  645. package/ui-dist/assets/index-DZdwValG.js +1 -0
  646. package/ui-dist/assets/index-DbWj5-qO.js +1 -0
  647. package/ui-dist/assets/index-DbcKBTbp.js +1 -0
  648. package/ui-dist/assets/index-DdAQdjTR.js +1 -0
  649. package/ui-dist/assets/index-DlImcHKo.js +1 -0
  650. package/ui-dist/assets/index-X9LdJDbl.js +1 -0
  651. package/ui-dist/assets/infoDiagram-HS3SLOUP-CbJm6kuq.js +2 -0
  652. package/ui-dist/assets/init-Gi6I4Gst.js +1 -0
  653. package/ui-dist/assets/javascript-iXu5QeM3.js +1 -0
  654. package/ui-dist/assets/journeyDiagram-XKPGCS4Q-CeNVFpGu.js +139 -0
  655. package/ui-dist/assets/julia-DuME0IfC.js +1 -0
  656. package/ui-dist/assets/kanban-definition-3W4ZIXB7-DRqPoDRI.js +89 -0
  657. package/ui-dist/assets/katex-O9d3_IXG.js +261 -0
  658. package/ui-dist/assets/layout-CZTKj8OD.js +1 -0
  659. package/ui-dist/assets/linear-BDJjeIco.js +1 -0
  660. package/ui-dist/assets/livescript-BwQOo05w.js +1 -0
  661. package/ui-dist/assets/lua-BgMRiT3U.js +1 -0
  662. package/ui-dist/assets/mathematica-DTrFuWx2.js +1 -0
  663. package/ui-dist/assets/mbox-CNhZ1qSd.js +1 -0
  664. package/ui-dist/assets/mermaid.core-B5v7dPHY.js +256 -0
  665. package/ui-dist/assets/mindmap-definition-VGOIOE7T-zjw0AyzL.js +68 -0
  666. package/ui-dist/assets/mirc-CjQqDB4T.js +1 -0
  667. package/ui-dist/assets/mllike-CXdrOF99.js +1 -0
  668. package/ui-dist/assets/modelica-Dc1JOy9r.js +1 -0
  669. package/ui-dist/assets/mscgen-BA5vi2Kp.js +1 -0
  670. package/ui-dist/assets/mumps-BT43cFF4.js +1 -0
  671. package/ui-dist/assets/nginx-DdIZxoE0.js +1 -0
  672. package/ui-dist/assets/nsis-LdVXkNf5.js +1 -0
  673. package/ui-dist/assets/ntriples-BfvgReVJ.js +1 -0
  674. package/ui-dist/assets/octave-Ck1zUtKM.js +1 -0
  675. package/ui-dist/assets/ordinal-Cboi1Yqb.js +1 -0
  676. package/ui-dist/assets/oz-BzwKVEFT.js +1 -0
  677. package/ui-dist/assets/pascal--L3eBynH.js +1 -0
  678. package/ui-dist/assets/perl-CdXCOZ3F.js +1 -0
  679. package/ui-dist/assets/pieDiagram-ADFJNKIX-ojNQ8Ukr.js +30 -0
  680. package/ui-dist/assets/pig-CevX1Tat.js +1 -0
  681. package/ui-dist/assets/powershell-CFHJl5sT.js +1 -0
  682. package/ui-dist/assets/properties-C78fOPTZ.js +1 -0
  683. package/ui-dist/assets/protobuf-ChK-085T.js +1 -0
  684. package/ui-dist/assets/pug-DeIclll2.js +1 -0
  685. package/ui-dist/assets/puppet-DMA9R1ak.js +1 -0
  686. package/ui-dist/assets/python-BuPzkPfP.js +1 -0
  687. package/ui-dist/assets/q-pXgVlZs6.js +1 -0
  688. package/ui-dist/assets/quadrantDiagram-AYHSOK5B-B8K2F86x.js +7 -0
  689. package/ui-dist/assets/r-B6wPVr8A.js +1 -0
  690. package/ui-dist/assets/requirementDiagram-UZGBJVZJ-DA_Bjcpk.js +64 -0
  691. package/ui-dist/assets/rpm-CTu-6PCP.js +1 -0
  692. package/ui-dist/assets/ruby-B2Rjki9n.js +1 -0
  693. package/ui-dist/assets/sankeyDiagram-TZEHDZUN-yQfMgroQ.js +10 -0
  694. package/ui-dist/assets/sas-B4kiWyti.js +1 -0
  695. package/ui-dist/assets/scheme-C41bIUwD.js +1 -0
  696. package/ui-dist/assets/sequenceDiagram-WL72ISMW-CWQm0UQc.js +145 -0
  697. package/ui-dist/assets/shell-CjFT_Tl9.js +1 -0
  698. package/ui-dist/assets/sieve-C3Gn_uJK.js +1 -0
  699. package/ui-dist/assets/simple-mode-GW_nhZxv.js +1 -0
  700. package/ui-dist/assets/smalltalk-CnHTOXQT.js +1 -0
  701. package/ui-dist/assets/solr-DehyRSwq.js +1 -0
  702. package/ui-dist/assets/sparql-DkYu6x3z.js +1 -0
  703. package/ui-dist/assets/spreadsheet-BCZA_wO0.js +1 -0
  704. package/ui-dist/assets/sql-D0XecflT.js +1 -0
  705. package/ui-dist/assets/stateDiagram-FKZM4ZOC-C9L_ELvE.js +1 -0
  706. package/ui-dist/assets/stateDiagram-v2-4FDKWEC3-D3i22gRM.js +1 -0
  707. package/ui-dist/assets/stex-C3f8Ysf7.js +1 -0
  708. package/ui-dist/assets/stylus-B533Al4x.js +1 -0
  709. package/ui-dist/assets/swift-BzpIVaGY.js +1 -0
  710. package/ui-dist/assets/tcl-DVfN8rqt.js +1 -0
  711. package/ui-dist/assets/textile-CnDTJFAw.js +1 -0
  712. package/ui-dist/assets/tiddlywiki-DO-Gjzrf.js +1 -0
  713. package/ui-dist/assets/tiki-DGYXhP31.js +1 -0
  714. package/ui-dist/assets/timeline-definition-IT6M3QCI-Bfva-2zq.js +61 -0
  715. package/ui-dist/assets/toml-Bm5Em-hy.js +1 -0
  716. package/ui-dist/assets/treemap-GDKQZRPO-6wTQWQt4.js +162 -0
  717. package/ui-dist/assets/troff-wAsdV37c.js +1 -0
  718. package/ui-dist/assets/ttcn-CfJYG6tj.js +1 -0
  719. package/ui-dist/assets/ttcn-cfg-B9xdYoR4.js +1 -0
  720. package/ui-dist/assets/turtle-B1tBg_DP.js +1 -0
  721. package/ui-dist/assets/vb-CmGdzxic.js +1 -0
  722. package/ui-dist/assets/vbscript-BuJXcnF6.js +1 -0
  723. package/ui-dist/assets/velocity-D8B20fx6.js +1 -0
  724. package/ui-dist/assets/verilog-C6RDOZhf.js +1 -0
  725. package/ui-dist/assets/vhdl-lSbBsy5d.js +1 -0
  726. package/ui-dist/assets/webidl-ZXfAyPTL.js +1 -0
  727. package/ui-dist/assets/xquery-DzFWVndE.js +1 -0
  728. package/ui-dist/assets/xychartDiagram-PRI3JC2R-DNsmIw3v.js +7 -0
  729. package/ui-dist/assets/yacas-BJ4BC0dw.js +1 -0
  730. package/ui-dist/assets/z80-Hz9HOZM7.js +1 -0
  731. package/ui-dist/brands/opencode-logo-dark-square.svg +18 -0
  732. package/ui-dist/brands/opencode-logo-light-square.svg +18 -0
  733. package/ui-dist/favicon-16x16.png +0 -0
  734. package/ui-dist/favicon-32x32.png +0 -0
  735. package/ui-dist/favicon.ico +0 -0
  736. package/ui-dist/favicon.svg +9 -0
  737. package/ui-dist/index.html +48 -0
  738. package/ui-dist/site.webmanifest +30 -0
  739. package/ui-dist/sw.js +42 -0
  740. package/ui-dist/worktree-favicon-16x16.png +0 -0
  741. package/ui-dist/worktree-favicon-32x32.png +0 -0
  742. package/ui-dist/worktree-favicon.ico +0 -0
  743. package/ui-dist/worktree-favicon.svg +9 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-registry.d.ts","sourceRoot":"","sources":["../../src/services/plugin-registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,539 @@
1
+ import { asc, eq, ne, sql, and } from "drizzle-orm";
2
+ import { plugins, pluginConfig, pluginEntities, pluginJobs, pluginJobRuns, pluginWebhookDeliveries, } from "@fidelios/db";
3
+ import { conflict, notFound } from "../errors.js";
4
+ // ---------------------------------------------------------------------------
5
+ // Helpers
6
+ // ---------------------------------------------------------------------------
7
+ /**
8
+ * Detect if a Postgres error is a unique-constraint violation on the
9
+ * `plugins_plugin_key_idx` unique index.
10
+ */
11
+ function isPluginKeyConflict(error) {
12
+ if (typeof error !== "object" || error === null)
13
+ return false;
14
+ const err = error;
15
+ const constraint = err.constraint ?? err.constraint_name;
16
+ return err.code === "23505" && constraint === "plugins_plugin_key_idx";
17
+ }
18
+ // ---------------------------------------------------------------------------
19
+ // Service
20
+ // ---------------------------------------------------------------------------
21
+ /**
22
+ * PluginRegistry – CRUD operations for the `plugins` and `plugin_config`
23
+ * tables. Follows the same factory-function pattern used by the rest of
24
+ * the FideliOS service layer.
25
+ *
26
+ * This is the lowest-level persistence layer for plugins. Higher-level
27
+ * concerns such as lifecycle state-machine enforcement and capability
28
+ * gating are handled by {@link pluginLifecycleManager} and
29
+ * {@link pluginCapabilityValidator} respectively.
30
+ *
31
+ * @see PLUGIN_SPEC.md §21.3 — Required Tables
32
+ */
33
+ export function pluginRegistryService(db) {
34
+ // -----------------------------------------------------------------------
35
+ // Internal helpers
36
+ // -----------------------------------------------------------------------
37
+ async function getById(id) {
38
+ return db
39
+ .select()
40
+ .from(plugins)
41
+ .where(eq(plugins.id, id))
42
+ .then((rows) => rows[0] ?? null);
43
+ }
44
+ async function getByKey(pluginKey) {
45
+ return db
46
+ .select()
47
+ .from(plugins)
48
+ .where(eq(plugins.pluginKey, pluginKey))
49
+ .then((rows) => rows[0] ?? null);
50
+ }
51
+ async function nextInstallOrder() {
52
+ const result = await db
53
+ .select({ maxOrder: sql `coalesce(max(${plugins.installOrder}), 0)` })
54
+ .from(plugins);
55
+ return (result[0]?.maxOrder ?? 0) + 1;
56
+ }
57
+ // -----------------------------------------------------------------------
58
+ // Public API
59
+ // -----------------------------------------------------------------------
60
+ return {
61
+ // ----- Read -----------------------------------------------------------
62
+ /** List all registered plugins ordered by install order. */
63
+ list: () => db
64
+ .select()
65
+ .from(plugins)
66
+ .orderBy(asc(plugins.installOrder)),
67
+ /**
68
+ * List installed plugins (excludes soft-deleted/uninstalled).
69
+ * Use for Plugin Manager and default API list so uninstalled plugins do not appear.
70
+ */
71
+ listInstalled: () => db
72
+ .select()
73
+ .from(plugins)
74
+ .where(ne(plugins.status, "uninstalled"))
75
+ .orderBy(asc(plugins.installOrder)),
76
+ /** List plugins filtered by status. */
77
+ listByStatus: (status) => db
78
+ .select()
79
+ .from(plugins)
80
+ .where(eq(plugins.status, status))
81
+ .orderBy(asc(plugins.installOrder)),
82
+ /** Get a single plugin by primary key. */
83
+ getById,
84
+ /** Get a single plugin by its unique `pluginKey`. */
85
+ getByKey,
86
+ // ----- Install / Register --------------------------------------------
87
+ /**
88
+ * Register (install) a new plugin.
89
+ *
90
+ * The caller is expected to have already resolved and validated the
91
+ * manifest from the package. This method persists the plugin row and
92
+ * assigns the next install order.
93
+ */
94
+ install: async (input, manifest) => {
95
+ const existing = await getByKey(manifest.id);
96
+ if (existing) {
97
+ if (existing.status !== "uninstalled") {
98
+ throw conflict(`Plugin already installed: ${manifest.id}`);
99
+ }
100
+ // Reinstall after soft-delete: reactivate the existing row so plugin-scoped
101
+ // data and references remain stable across uninstall/reinstall cycles.
102
+ return db
103
+ .update(plugins)
104
+ .set({
105
+ packageName: input.packageName,
106
+ packagePath: input.packagePath ?? null,
107
+ version: manifest.version,
108
+ apiVersion: manifest.apiVersion,
109
+ categories: manifest.categories,
110
+ manifestJson: manifest,
111
+ status: "installed",
112
+ lastError: null,
113
+ updatedAt: new Date(),
114
+ })
115
+ .where(eq(plugins.id, existing.id))
116
+ .returning()
117
+ .then((rows) => rows[0] ?? null);
118
+ }
119
+ const installOrder = await nextInstallOrder();
120
+ try {
121
+ const rows = await db
122
+ .insert(plugins)
123
+ .values({
124
+ pluginKey: manifest.id,
125
+ packageName: input.packageName,
126
+ version: manifest.version,
127
+ apiVersion: manifest.apiVersion,
128
+ categories: manifest.categories,
129
+ manifestJson: manifest,
130
+ status: "installed",
131
+ installOrder,
132
+ packagePath: input.packagePath ?? null,
133
+ })
134
+ .returning();
135
+ return rows[0];
136
+ }
137
+ catch (error) {
138
+ if (isPluginKeyConflict(error)) {
139
+ throw conflict(`Plugin already installed: ${manifest.id}`);
140
+ }
141
+ throw error;
142
+ }
143
+ },
144
+ // ----- Update ---------------------------------------------------------
145
+ /**
146
+ * Update a plugin's manifest and version (e.g. on upgrade).
147
+ * The plugin must already exist.
148
+ */
149
+ update: async (id, data) => {
150
+ const plugin = await getById(id);
151
+ if (!plugin)
152
+ throw notFound("Plugin not found");
153
+ const setClause = {
154
+ updatedAt: new Date(),
155
+ };
156
+ if (data.packageName !== undefined)
157
+ setClause.packageName = data.packageName;
158
+ if (data.version !== undefined)
159
+ setClause.version = data.version;
160
+ if (data.manifest !== undefined) {
161
+ setClause.manifestJson = data.manifest;
162
+ setClause.apiVersion = data.manifest.apiVersion;
163
+ setClause.categories = data.manifest.categories;
164
+ }
165
+ return db
166
+ .update(plugins)
167
+ .set(setClause)
168
+ .where(eq(plugins.id, id))
169
+ .returning()
170
+ .then((rows) => rows[0] ?? null);
171
+ },
172
+ // ----- Status ---------------------------------------------------------
173
+ /** Update a plugin's lifecycle status and optional error message. */
174
+ updateStatus: async (id, input) => {
175
+ const plugin = await getById(id);
176
+ if (!plugin)
177
+ throw notFound("Plugin not found");
178
+ return db
179
+ .update(plugins)
180
+ .set({
181
+ status: input.status,
182
+ lastError: input.lastError ?? null,
183
+ updatedAt: new Date(),
184
+ })
185
+ .where(eq(plugins.id, id))
186
+ .returning()
187
+ .then((rows) => rows[0] ?? null);
188
+ },
189
+ // ----- Uninstall / Remove --------------------------------------------
190
+ /**
191
+ * Uninstall a plugin.
192
+ *
193
+ * When `removeData` is true the plugin row (and cascaded config) is
194
+ * hard-deleted. Otherwise the status is set to `"uninstalled"` for
195
+ * a soft-delete that preserves the record.
196
+ */
197
+ uninstall: async (id, removeData = false) => {
198
+ const plugin = await getById(id);
199
+ if (!plugin)
200
+ throw notFound("Plugin not found");
201
+ if (removeData) {
202
+ // Hard delete – plugin_config cascades via FK onDelete
203
+ return db
204
+ .delete(plugins)
205
+ .where(eq(plugins.id, id))
206
+ .returning()
207
+ .then((rows) => rows[0] ?? null);
208
+ }
209
+ // Soft delete – mark as uninstalled
210
+ return db
211
+ .update(plugins)
212
+ .set({
213
+ status: "uninstalled",
214
+ updatedAt: new Date(),
215
+ })
216
+ .where(eq(plugins.id, id))
217
+ .returning()
218
+ .then((rows) => rows[0] ?? null);
219
+ },
220
+ // ----- Config ---------------------------------------------------------
221
+ /** Retrieve a plugin's instance configuration. */
222
+ getConfig: (pluginId) => db
223
+ .select()
224
+ .from(pluginConfig)
225
+ .where(eq(pluginConfig.pluginId, pluginId))
226
+ .then((rows) => rows[0] ?? null),
227
+ /**
228
+ * Create or fully replace a plugin's instance configuration.
229
+ * If a config row already exists for the plugin it is replaced;
230
+ * otherwise a new row is inserted.
231
+ */
232
+ upsertConfig: async (pluginId, input) => {
233
+ const plugin = await getById(pluginId);
234
+ if (!plugin)
235
+ throw notFound("Plugin not found");
236
+ const existing = await db
237
+ .select()
238
+ .from(pluginConfig)
239
+ .where(eq(pluginConfig.pluginId, pluginId))
240
+ .then((rows) => rows[0] ?? null);
241
+ if (existing) {
242
+ return db
243
+ .update(pluginConfig)
244
+ .set({
245
+ configJson: input.configJson,
246
+ lastError: null,
247
+ updatedAt: new Date(),
248
+ })
249
+ .where(eq(pluginConfig.pluginId, pluginId))
250
+ .returning()
251
+ .then((rows) => rows[0]);
252
+ }
253
+ return db
254
+ .insert(pluginConfig)
255
+ .values({
256
+ pluginId,
257
+ configJson: input.configJson,
258
+ })
259
+ .returning()
260
+ .then((rows) => rows[0]);
261
+ },
262
+ /**
263
+ * Partially update a plugin's instance configuration via shallow merge.
264
+ * If no config row exists yet one is created with the supplied values.
265
+ */
266
+ patchConfig: async (pluginId, input) => {
267
+ const plugin = await getById(pluginId);
268
+ if (!plugin)
269
+ throw notFound("Plugin not found");
270
+ const existing = await db
271
+ .select()
272
+ .from(pluginConfig)
273
+ .where(eq(pluginConfig.pluginId, pluginId))
274
+ .then((rows) => rows[0] ?? null);
275
+ if (existing) {
276
+ const merged = { ...existing.configJson, ...input.configJson };
277
+ return db
278
+ .update(pluginConfig)
279
+ .set({
280
+ configJson: merged,
281
+ lastError: null,
282
+ updatedAt: new Date(),
283
+ })
284
+ .where(eq(pluginConfig.pluginId, pluginId))
285
+ .returning()
286
+ .then((rows) => rows[0]);
287
+ }
288
+ return db
289
+ .insert(pluginConfig)
290
+ .values({
291
+ pluginId,
292
+ configJson: input.configJson,
293
+ })
294
+ .returning()
295
+ .then((rows) => rows[0]);
296
+ },
297
+ /**
298
+ * Record an error against a plugin's config (e.g. validation failure
299
+ * against the plugin's instanceConfigSchema).
300
+ */
301
+ setConfigError: async (pluginId, lastError) => {
302
+ const rows = await db
303
+ .update(pluginConfig)
304
+ .set({ lastError, updatedAt: new Date() })
305
+ .where(eq(pluginConfig.pluginId, pluginId))
306
+ .returning();
307
+ if (rows.length === 0)
308
+ throw notFound("Plugin config not found");
309
+ return rows[0];
310
+ },
311
+ /** Delete a plugin's config row. */
312
+ deleteConfig: async (pluginId) => {
313
+ const rows = await db
314
+ .delete(pluginConfig)
315
+ .where(eq(pluginConfig.pluginId, pluginId))
316
+ .returning();
317
+ return rows[0] ?? null;
318
+ },
319
+ // ----- Entities -------------------------------------------------------
320
+ /**
321
+ * List persistent entity mappings owned by a specific plugin, with filtering and pagination.
322
+ *
323
+ * @param pluginId - The UUID of the plugin.
324
+ * @param query - Optional filters (type, externalId) and pagination (limit, offset).
325
+ * @returns A list of matching `PluginEntityRecord` objects.
326
+ */
327
+ listEntities: (pluginId, query) => {
328
+ const conditions = [eq(pluginEntities.pluginId, pluginId)];
329
+ if (query?.entityType)
330
+ conditions.push(eq(pluginEntities.entityType, query.entityType));
331
+ if (query?.externalId)
332
+ conditions.push(eq(pluginEntities.externalId, query.externalId));
333
+ return db
334
+ .select()
335
+ .from(pluginEntities)
336
+ .where(and(...conditions))
337
+ .orderBy(asc(pluginEntities.createdAt))
338
+ .limit(query?.limit ?? 100)
339
+ .offset(query?.offset ?? 0);
340
+ },
341
+ /**
342
+ * Look up a plugin-owned entity mapping by its external identifier.
343
+ *
344
+ * @param pluginId - The UUID of the plugin.
345
+ * @param entityType - The type of entity (e.g., 'project', 'issue').
346
+ * @param externalId - The identifier in the external system.
347
+ * @returns The matching `PluginEntityRecord` or null.
348
+ */
349
+ getEntityByExternalId: (pluginId, entityType, externalId) => db
350
+ .select()
351
+ .from(pluginEntities)
352
+ .where(and(eq(pluginEntities.pluginId, pluginId), eq(pluginEntities.entityType, entityType), eq(pluginEntities.externalId, externalId)))
353
+ .then((rows) => rows[0] ?? null),
354
+ /**
355
+ * Create or update a persistent mapping between a FideliOS object and an
356
+ * external entity.
357
+ *
358
+ * @param pluginId - The UUID of the plugin.
359
+ * @param input - The entity data to persist.
360
+ * @returns The newly created or updated `PluginEntityRecord`.
361
+ */
362
+ upsertEntity: async (pluginId, input) => {
363
+ // Drizzle doesn't support pg-specific onConflictDoUpdate easily in the insert() call
364
+ // with complex where clauses, so we do it manually.
365
+ const existing = await db
366
+ .select()
367
+ .from(pluginEntities)
368
+ .where(and(eq(pluginEntities.pluginId, pluginId), eq(pluginEntities.entityType, input.entityType), eq(pluginEntities.externalId, input.externalId ?? "")))
369
+ .then((rows) => rows[0] ?? null);
370
+ if (existing) {
371
+ return db
372
+ .update(pluginEntities)
373
+ .set({
374
+ ...input,
375
+ updatedAt: new Date(),
376
+ })
377
+ .where(eq(pluginEntities.id, existing.id))
378
+ .returning()
379
+ .then((rows) => rows[0]);
380
+ }
381
+ return db
382
+ .insert(pluginEntities)
383
+ .values({
384
+ ...input,
385
+ pluginId,
386
+ })
387
+ .returning()
388
+ .then((rows) => rows[0]);
389
+ },
390
+ /**
391
+ * Delete a specific plugin-owned entity mapping by its internal UUID.
392
+ *
393
+ * @param id - The UUID of the entity record.
394
+ * @returns The deleted record, or null if not found.
395
+ */
396
+ deleteEntity: async (id) => {
397
+ const rows = await db
398
+ .delete(pluginEntities)
399
+ .where(eq(pluginEntities.id, id))
400
+ .returning();
401
+ return rows[0] ?? null;
402
+ },
403
+ // ----- Jobs -----------------------------------------------------------
404
+ /**
405
+ * List all scheduled jobs registered for a specific plugin.
406
+ *
407
+ * @param pluginId - The UUID of the plugin.
408
+ * @returns A list of `PluginJobRecord` objects.
409
+ */
410
+ listJobs: (pluginId) => db
411
+ .select()
412
+ .from(pluginJobs)
413
+ .where(eq(pluginJobs.pluginId, pluginId))
414
+ .orderBy(asc(pluginJobs.jobKey)),
415
+ /**
416
+ * Look up a plugin job by its unique job key.
417
+ *
418
+ * @param pluginId - The UUID of the plugin.
419
+ * @param jobKey - The key defined in the plugin manifest.
420
+ * @returns The matching `PluginJobRecord` or null.
421
+ */
422
+ getJobByKey: (pluginId, jobKey) => db
423
+ .select()
424
+ .from(pluginJobs)
425
+ .where(and(eq(pluginJobs.pluginId, pluginId), eq(pluginJobs.jobKey, jobKey)))
426
+ .then((rows) => rows[0] ?? null),
427
+ /**
428
+ * Register or update a scheduled job for a plugin.
429
+ *
430
+ * @param pluginId - The UUID of the plugin.
431
+ * @param jobKey - The unique key for the job.
432
+ * @param input - The schedule (cron) and optional status.
433
+ * @returns The updated or created `PluginJobRecord`.
434
+ */
435
+ upsertJob: async (pluginId, jobKey, input) => {
436
+ const existing = await db
437
+ .select()
438
+ .from(pluginJobs)
439
+ .where(and(eq(pluginJobs.pluginId, pluginId), eq(pluginJobs.jobKey, jobKey)))
440
+ .then((rows) => rows[0] ?? null);
441
+ if (existing) {
442
+ return db
443
+ .update(pluginJobs)
444
+ .set({
445
+ schedule: input.schedule,
446
+ status: input.status ?? existing.status,
447
+ updatedAt: new Date(),
448
+ })
449
+ .where(eq(pluginJobs.id, existing.id))
450
+ .returning()
451
+ .then((rows) => rows[0]);
452
+ }
453
+ return db
454
+ .insert(pluginJobs)
455
+ .values({
456
+ pluginId,
457
+ jobKey,
458
+ schedule: input.schedule,
459
+ status: input.status ?? "active",
460
+ })
461
+ .returning()
462
+ .then((rows) => rows[0]);
463
+ },
464
+ /**
465
+ * Record the start of a specific job execution.
466
+ *
467
+ * @param pluginId - The UUID of the plugin.
468
+ * @param jobId - The UUID of the parent job record.
469
+ * @param trigger - What triggered this run (e.g., 'schedule', 'manual').
470
+ * @returns The newly created `PluginJobRunRecord` in 'pending' status.
471
+ */
472
+ createJobRun: async (pluginId, jobId, trigger) => {
473
+ return db
474
+ .insert(pluginJobRuns)
475
+ .values({
476
+ pluginId,
477
+ jobId,
478
+ trigger,
479
+ status: "pending",
480
+ })
481
+ .returning()
482
+ .then((rows) => rows[0]);
483
+ },
484
+ /**
485
+ * Update the status, duration, and logs of a job execution record.
486
+ *
487
+ * @param runId - The UUID of the job run.
488
+ * @param input - The update fields (status, error, duration, etc.).
489
+ * @returns The updated `PluginJobRunRecord`.
490
+ */
491
+ updateJobRun: async (runId, input) => {
492
+ return db
493
+ .update(pluginJobRuns)
494
+ .set(input)
495
+ .where(eq(pluginJobRuns.id, runId))
496
+ .returning()
497
+ .then((rows) => rows[0] ?? null);
498
+ },
499
+ // ----- Webhooks -------------------------------------------------------
500
+ /**
501
+ * Create a record for an incoming webhook delivery.
502
+ *
503
+ * @param pluginId - The UUID of the receiving plugin.
504
+ * @param webhookKey - The endpoint key defined in the manifest.
505
+ * @param input - The payload, headers, and optional external ID.
506
+ * @returns The newly created `PluginWebhookDeliveryRecord` in 'pending' status.
507
+ */
508
+ createWebhookDelivery: async (pluginId, webhookKey, input) => {
509
+ return db
510
+ .insert(pluginWebhookDeliveries)
511
+ .values({
512
+ pluginId,
513
+ webhookKey,
514
+ externalId: input.externalId,
515
+ payload: input.payload,
516
+ headers: input.headers ?? {},
517
+ status: "pending",
518
+ })
519
+ .returning()
520
+ .then((rows) => rows[0]);
521
+ },
522
+ /**
523
+ * Update the status and processing metrics of a webhook delivery.
524
+ *
525
+ * @param deliveryId - The UUID of the delivery record.
526
+ * @param input - The update fields (status, error, duration, etc.).
527
+ * @returns The updated `PluginWebhookDeliveryRecord`.
528
+ */
529
+ updateWebhookDelivery: async (deliveryId, input) => {
530
+ return db
531
+ .update(pluginWebhookDeliveries)
532
+ .set(input)
533
+ .where(eq(pluginWebhookDeliveries.id, deliveryId))
534
+ .returning()
535
+ .then((rows) => rows[0] ?? null);
536
+ },
537
+ };
538
+ }
539
+ //# sourceMappingURL=plugin-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-registry.js","sourceRoot":"","sources":["../../src/services/plugin-registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import type { FideliOSPluginManifestV1 } from "@fidelios/shared";
2
+ import type { PluginCapabilityValidator } from "./plugin-capability-validator.js";
3
+ export declare class PluginSandboxError extends Error {
4
+ constructor(message: string);
5
+ }
6
+ /**
7
+ * Sandbox runtime options used when loading a plugin worker module.
8
+ *
9
+ * `allowedModuleSpecifiers` controls which bare module specifiers are permitted.
10
+ * `allowedModules` provides concrete host-provided bindings for those specifiers.
11
+ */
12
+ export interface PluginSandboxOptions {
13
+ entrypointPath: string;
14
+ allowedModuleSpecifiers?: ReadonlySet<string>;
15
+ allowedModules?: Readonly<Record<string, Record<string, unknown>>>;
16
+ allowedGlobals?: Record<string, unknown>;
17
+ timeoutMs?: number;
18
+ }
19
+ /**
20
+ * Operation-level runtime gate for plugin host API calls.
21
+ * Every host operation must be checked against manifest capabilities before execution.
22
+ */
23
+ export interface CapabilityScopedInvoker {
24
+ invoke<T>(operation: string, fn: () => Promise<T> | T): Promise<T>;
25
+ }
26
+ interface LoadedModule {
27
+ namespace: Record<string, unknown>;
28
+ }
29
+ export declare function createCapabilityScopedInvoker(manifest: FideliOSPluginManifestV1, validator: PluginCapabilityValidator): CapabilityScopedInvoker;
30
+ /**
31
+ * Load a CommonJS plugin module in a VM context with explicit module import allow-listing.
32
+ *
33
+ * Security properties:
34
+ * - no implicit access to host globals like `process`
35
+ * - no unrestricted built-in module imports
36
+ * - relative imports are resolved only inside the plugin root directory
37
+ */
38
+ export declare function loadPluginModuleInSandbox(options: PluginSandboxOptions): Promise<LoadedModule>;
39
+ export {};
40
+ //# sourceMappingURL=plugin-runtime-sandbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-runtime-sandbox.d.ts","sourceRoot":"","sources":["../../src/services/plugin-runtime-sandbox.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAElF,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,OAAO,EAAE,MAAM;CAI5B;AAED;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,cAAc,EAAE,MAAM,CAAC;IACvB,uBAAuB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9C,cAAc,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACnE,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACpE;AAED,UAAU,YAAY;IACpB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAkBD,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,wBAAwB,EAClC,SAAS,EAAE,yBAAyB,GACnC,uBAAuB,CAOzB;AAED;;;;;;;GAOG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,YAAY,CAAC,CAkGvB"}