@cyberismo/backend 1.2.0 → 1.3.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 (472) hide show
  1. package/dist/app.d.ts +5 -15
  2. package/dist/app.js +31 -44
  3. package/dist/app.js.map +1 -1
  4. package/dist/auth/index.d.ts +0 -12
  5. package/dist/auth/index.js +2 -12
  6. package/dist/auth/index.js.map +1 -1
  7. package/dist/auth/keycloak.d.ts +0 -12
  8. package/dist/auth/keycloak.js +2 -12
  9. package/dist/auth/keycloak.js.map +1 -1
  10. package/dist/auth/mock.d.ts +0 -12
  11. package/dist/auth/mock.js +2 -12
  12. package/dist/auth/mock.js.map +1 -1
  13. package/dist/auth/types.d.ts +0 -12
  14. package/dist/auth/types.js +2 -12
  15. package/dist/auth/types.js.map +1 -1
  16. package/dist/common/errors.d.ts +12 -0
  17. package/dist/common/errors.js +31 -0
  18. package/dist/common/errors.js.map +1 -0
  19. package/dist/common/validationSchemas.d.ts +0 -12
  20. package/dist/common/validationSchemas.js +2 -12
  21. package/dist/common/validationSchemas.js.map +1 -1
  22. package/dist/domain/auth/index.d.ts +0 -12
  23. package/dist/domain/auth/index.js +2 -12
  24. package/dist/domain/auth/index.js.map +1 -1
  25. package/dist/domain/calculations/index.d.ts +0 -12
  26. package/dist/domain/calculations/index.js +4 -14
  27. package/dist/domain/calculations/index.js.map +1 -1
  28. package/dist/domain/calculations/schema.d.ts +0 -12
  29. package/dist/domain/calculations/schema.js +2 -12
  30. package/dist/domain/calculations/schema.js.map +1 -1
  31. package/dist/domain/calculations/service.d.ts +2 -14
  32. package/dist/domain/calculations/service.js +7 -17
  33. package/dist/domain/calculations/service.js.map +1 -1
  34. package/dist/domain/cardTypes/index.d.ts +0 -12
  35. package/dist/domain/cardTypes/index.js +10 -20
  36. package/dist/domain/cardTypes/index.js.map +1 -1
  37. package/dist/domain/cardTypes/schema.d.ts +0 -12
  38. package/dist/domain/cardTypes/schema.js +2 -12
  39. package/dist/domain/cardTypes/schema.js.map +1 -1
  40. package/dist/domain/cardTypes/service.d.ts +4 -16
  41. package/dist/domain/cardTypes/service.js +17 -25
  42. package/dist/domain/cardTypes/service.js.map +1 -1
  43. package/dist/domain/cards/index.d.ts +0 -12
  44. package/dist/domain/cards/index.js +120 -102
  45. package/dist/domain/cards/index.js.map +1 -1
  46. package/dist/domain/cards/lib.d.ts +6 -23
  47. package/dist/domain/cards/lib.js +7 -126
  48. package/dist/domain/cards/lib.js.map +1 -1
  49. package/dist/domain/cards/mermaid.d.ts +8 -0
  50. package/dist/domain/cards/mermaid.js +23 -0
  51. package/dist/domain/cards/mermaid.js.map +1 -0
  52. package/dist/domain/cards/schema.d.ts +6 -12
  53. package/dist/domain/cards/schema.js +6 -12
  54. package/dist/domain/cards/schema.js.map +1 -1
  55. package/dist/domain/cards/service.d.ts +28 -32
  56. package/dist/domain/cards/service.js +119 -83
  57. package/dist/domain/cards/service.js.map +1 -1
  58. package/dist/domain/connectors/index.d.ts +0 -12
  59. package/dist/domain/connectors/index.js +4 -14
  60. package/dist/domain/connectors/index.js.map +1 -1
  61. package/dist/domain/connectors/service.d.ts +2 -14
  62. package/dist/domain/connectors/service.js +4 -14
  63. package/dist/domain/connectors/service.js.map +1 -1
  64. package/dist/domain/events/events-by-project.d.ts +19 -0
  65. package/dist/domain/events/events-by-project.js +57 -0
  66. package/dist/domain/events/events-by-project.js.map +1 -0
  67. package/dist/domain/events/index.d.ts +0 -12
  68. package/dist/domain/events/index.js +3 -13
  69. package/dist/domain/events/index.js.map +1 -1
  70. package/dist/domain/events/lifetime.d.ts +0 -12
  71. package/dist/domain/events/lifetime.js +2 -12
  72. package/dist/domain/events/lifetime.js.map +1 -1
  73. package/dist/domain/events/project-events.d.ts +10 -14
  74. package/dist/domain/events/project-events.js +22 -18
  75. package/dist/domain/events/project-events.js.map +1 -1
  76. package/dist/domain/events/schema.d.ts +0 -12
  77. package/dist/domain/events/schema.js +2 -12
  78. package/dist/domain/events/schema.js.map +1 -1
  79. package/dist/domain/fieldTypes/index.d.ts +0 -12
  80. package/dist/domain/fieldTypes/index.js +6 -16
  81. package/dist/domain/fieldTypes/index.js.map +1 -1
  82. package/dist/domain/fieldTypes/schema.d.ts +0 -12
  83. package/dist/domain/fieldTypes/schema.js +2 -12
  84. package/dist/domain/fieldTypes/schema.js.map +1 -1
  85. package/dist/domain/fieldTypes/service.d.ts +4 -16
  86. package/dist/domain/fieldTypes/service.js +7 -17
  87. package/dist/domain/fieldTypes/service.js.map +1 -1
  88. package/dist/domain/graphModels/index.d.ts +0 -12
  89. package/dist/domain/graphModels/index.js +4 -14
  90. package/dist/domain/graphModels/index.js.map +1 -1
  91. package/dist/domain/graphModels/schema.d.ts +0 -12
  92. package/dist/domain/graphModels/schema.js +2 -12
  93. package/dist/domain/graphModels/schema.js.map +1 -1
  94. package/dist/domain/graphModels/service.d.ts +2 -14
  95. package/dist/domain/graphModels/service.js +4 -14
  96. package/dist/domain/graphModels/service.js.map +1 -1
  97. package/dist/domain/graphViews/index.d.ts +0 -12
  98. package/dist/domain/graphViews/index.js +4 -14
  99. package/dist/domain/graphViews/index.js.map +1 -1
  100. package/dist/domain/graphViews/schema.js +2 -0
  101. package/dist/domain/graphViews/schema.js.map +1 -1
  102. package/dist/domain/graphViews/service.d.ts +2 -14
  103. package/dist/domain/graphViews/service.js +4 -14
  104. package/dist/domain/graphViews/service.js.map +1 -1
  105. package/dist/domain/labels/index.d.ts +0 -12
  106. package/dist/domain/labels/index.js +4 -14
  107. package/dist/domain/labels/index.js.map +1 -1
  108. package/dist/domain/labels/service.d.ts +3 -15
  109. package/dist/domain/labels/service.js +5 -15
  110. package/dist/domain/labels/service.js.map +1 -1
  111. package/dist/domain/linkTypes/index.d.ts +0 -12
  112. package/dist/domain/linkTypes/index.js +6 -16
  113. package/dist/domain/linkTypes/index.js.map +1 -1
  114. package/dist/domain/linkTypes/schema.d.ts +0 -12
  115. package/dist/domain/linkTypes/schema.js +2 -12
  116. package/dist/domain/linkTypes/schema.js.map +1 -1
  117. package/dist/domain/linkTypes/service.d.ts +3 -15
  118. package/dist/domain/linkTypes/service.js +7 -17
  119. package/dist/domain/linkTypes/service.js.map +1 -1
  120. package/dist/domain/logicPrograms/index.d.ts +0 -12
  121. package/dist/domain/logicPrograms/index.js +4 -14
  122. package/dist/domain/logicPrograms/index.js.map +1 -1
  123. package/dist/domain/logicPrograms/service.d.ts +2 -14
  124. package/dist/domain/logicPrograms/service.js +5 -3
  125. package/dist/domain/logicPrograms/service.js.map +1 -1
  126. package/dist/domain/mcp/index.d.ts +3 -15
  127. package/dist/domain/mcp/index.js +27 -21
  128. package/dist/domain/mcp/index.js.map +1 -1
  129. package/dist/domain/project/index.d.ts +0 -12
  130. package/dist/domain/project/index.js +30 -40
  131. package/dist/domain/project/index.js.map +1 -1
  132. package/dist/domain/project/schema.d.ts +0 -12
  133. package/dist/domain/project/schema.js +2 -12
  134. package/dist/domain/project/schema.js.map +1 -1
  135. package/dist/domain/project/service.d.ts +16 -28
  136. package/dist/domain/project/service.js +48 -58
  137. package/dist/domain/project/service.js.map +1 -1
  138. package/dist/domain/projects/index.d.ts +2 -14
  139. package/dist/domain/projects/index.js +19 -36
  140. package/dist/domain/projects/index.js.map +1 -1
  141. package/dist/domain/projects/schema.d.ts +1 -12
  142. package/dist/domain/projects/schema.js +3 -12
  143. package/dist/domain/projects/schema.js.map +1 -1
  144. package/dist/domain/projects/service.d.ts +9 -35
  145. package/dist/domain/projects/service.js +12 -48
  146. package/dist/domain/projects/service.js.map +1 -1
  147. package/dist/domain/reports/index.d.ts +0 -12
  148. package/dist/domain/reports/index.js +4 -14
  149. package/dist/domain/reports/index.js.map +1 -1
  150. package/dist/domain/reports/schema.d.ts +0 -12
  151. package/dist/domain/reports/schema.js +2 -12
  152. package/dist/domain/reports/schema.js.map +1 -1
  153. package/dist/domain/reports/service.d.ts +2 -14
  154. package/dist/domain/reports/service.js +4 -14
  155. package/dist/domain/reports/service.js.map +1 -1
  156. package/dist/domain/resources/index.d.ts +0 -12
  157. package/dist/domain/resources/index.js +19 -26
  158. package/dist/domain/resources/index.js.map +1 -1
  159. package/dist/domain/resources/schema.js +2 -0
  160. package/dist/domain/resources/schema.js.map +1 -1
  161. package/dist/domain/resources/service.d.ts +11 -23
  162. package/dist/domain/resources/service.js +48 -59
  163. package/dist/domain/resources/service.js.map +1 -1
  164. package/dist/domain/skills/index.d.ts +0 -12
  165. package/dist/domain/skills/index.js +4 -14
  166. package/dist/domain/skills/index.js.map +1 -1
  167. package/dist/domain/skills/schema.d.ts +0 -12
  168. package/dist/domain/skills/schema.js +2 -12
  169. package/dist/domain/skills/schema.js.map +1 -1
  170. package/dist/domain/skills/service.d.ts +2 -14
  171. package/dist/domain/skills/service.js +4 -14
  172. package/dist/domain/skills/service.js.map +1 -1
  173. package/dist/domain/templates/index.d.ts +0 -12
  174. package/dist/domain/templates/index.js +8 -18
  175. package/dist/domain/templates/index.js.map +1 -1
  176. package/dist/domain/templates/schema.d.ts +0 -12
  177. package/dist/domain/templates/schema.js +2 -12
  178. package/dist/domain/templates/schema.js.map +1 -1
  179. package/dist/domain/templates/service.d.ts +4 -16
  180. package/dist/domain/templates/service.js +8 -18
  181. package/dist/domain/templates/service.js.map +1 -1
  182. package/dist/domain/tree/index.d.ts +0 -12
  183. package/dist/domain/tree/index.js +4 -14
  184. package/dist/domain/tree/index.js.map +1 -1
  185. package/dist/domain/tree/service.d.ts +3 -15
  186. package/dist/domain/tree/service.js +8 -15
  187. package/dist/domain/tree/service.js.map +1 -1
  188. package/dist/domain/workflows/index.d.ts +0 -12
  189. package/dist/domain/workflows/index.js +4 -14
  190. package/dist/domain/workflows/index.js.map +1 -1
  191. package/dist/domain/workflows/schema.d.ts +0 -12
  192. package/dist/domain/workflows/schema.js +2 -12
  193. package/dist/domain/workflows/schema.js.map +1 -1
  194. package/dist/domain/workflows/service.d.ts +2 -14
  195. package/dist/domain/workflows/service.js +4 -14
  196. package/dist/domain/workflows/service.js.map +1 -1
  197. package/dist/export.d.ts +6 -20
  198. package/dist/export.js +19 -29
  199. package/dist/export.js.map +1 -1
  200. package/dist/frontend.d.ts +22 -0
  201. package/dist/frontend.js +51 -0
  202. package/dist/frontend.js.map +1 -0
  203. package/dist/index.d.ts +3 -5
  204. package/dist/index.js +22 -48
  205. package/dist/index.js.map +1 -1
  206. package/dist/main.js +19 -30
  207. package/dist/main.js.map +1 -1
  208. package/dist/middleware/auth.d.ts +0 -12
  209. package/dist/middleware/auth.js +2 -12
  210. package/dist/middleware/auth.js.map +1 -1
  211. package/dist/middleware/commandManager.d.ts +15 -20
  212. package/dist/middleware/commandManager.js +27 -36
  213. package/dist/middleware/commandManager.js.map +1 -1
  214. package/dist/middleware/tree.js +2 -0
  215. package/dist/middleware/tree.js.map +1 -1
  216. package/dist/middleware/zvalidator.js +2 -0
  217. package/dist/middleware/zvalidator.js.map +1 -1
  218. package/dist/overlay.d.ts +4 -16
  219. package/dist/overlay.js +22 -17
  220. package/dist/overlay.js.map +1 -1
  221. package/dist/public/THIRD-PARTY.txt +1397 -286
  222. package/dist/public/assets/__vite-browser-external-DGgK3jMU.js +1 -0
  223. package/dist/public/assets/abnfDiagram-WEYOIA3C-B3qq7PKv.js +1 -0
  224. package/dist/public/assets/architecture-WOLXFQ4H-Bzau2LI0.js +1 -0
  225. package/dist/public/assets/architectureDiagram-ZHVYKT53-Bg0cUwdb.js +36 -0
  226. package/dist/public/assets/blockDiagram-RJAE7QA3-0RJB-ra-.js +140 -0
  227. package/dist/public/assets/c4Diagram-XDPPPE54-BzoQcLvf.js +38 -0
  228. package/dist/public/assets/channel-6BNdw4Ax.js +1 -0
  229. package/dist/public/assets/{chunk-SVP7TREG-CIQMl7hl.js → chunk-2E7WHVMD-6aqPk-Hk.js} +4 -4
  230. package/dist/public/assets/chunk-4EMNKR2T-vovNSAaE.js +1 -0
  231. package/dist/public/assets/{chunk-F27PBJKO-tDfs6zeO.js → chunk-55XCU76K-DXkKnt2y.js} +1 -1
  232. package/dist/public/assets/chunk-7S6XSTFO-B9bfO0l3.js +2 -0
  233. package/dist/public/assets/chunk-AQDTSKZB-ilLy_cYP.js +72 -0
  234. package/dist/public/assets/chunk-DSNLSHJZ-DAudglXu.js +129 -0
  235. package/dist/public/assets/chunk-DUW6YSOI-Dgx8z5s3.js +1 -0
  236. package/dist/public/assets/chunk-HAGFOTED-CSKFgs6b.js +62 -0
  237. package/dist/public/assets/chunk-HNE4Q36P-Cu5gPBVk.js +1 -0
  238. package/dist/public/assets/chunk-J5ZVWO5B-oDCd-gWO.js +1 -0
  239. package/dist/public/assets/chunk-NGNAAXSQ-DI_UYJZ4.js +136 -0
  240. package/dist/public/assets/chunk-NQOKRVIF-Bpcvhq1n.js +213 -0
  241. package/dist/public/assets/chunk-UHW7PFBP-BDjvOaTH.js +1 -0
  242. package/dist/public/assets/chunk-VQ5W62QI-DHTcO93W.js +1 -0
  243. package/dist/public/assets/chunk-WQQL4CDK-H6nAhuck.js +10 -0
  244. package/dist/public/assets/{chunk-XXDRQBXY-B7bWyHjt.js → chunk-XXDRQBXY-BUghdEVl.js} +1 -1
  245. package/dist/public/assets/chunk-YZO67HFG-D13E0_Yh.js +1 -0
  246. package/dist/public/assets/chunk-ZAUX2LTX-Dp5y-2wt.js +1 -0
  247. package/dist/public/assets/chunk-ZCHMQSOR-RJjlln1D.js +2 -0
  248. package/dist/public/assets/classDiagram-v2-4MYWR3UA-CAqiFCSv.js +217 -0
  249. package/dist/public/assets/cose-bilkent-JH36ORCC-C_VOHzoP.js +1 -0
  250. package/dist/public/assets/cynefin-EF2NZ3EQ-Dyk4ZPjK.js +1 -0
  251. package/dist/public/assets/{cynefinDiagram-5FMLGOSQ-_V_nrIhD.js → cynefinDiagram-WF24UDRP-b_Ia8gQX.js} +1 -1
  252. package/dist/public/assets/cytoscape.esm-GRKmfDkD.js +321 -0
  253. package/dist/public/assets/dagre-NK4GIZVX-CH1K1yF8.js +4 -0
  254. package/dist/public/assets/{diagram-VX7I27RA-De_UQv8C.js → diagram-CBK3MWTC-OaKd5avy.js} +13 -13
  255. package/dist/public/assets/diagram-I5XIIV2D-Cmu5z1ad.js +24 -0
  256. package/dist/public/assets/{diagram-S7CK7UJ4-25IjIKyo.js → diagram-ODIL2UCW-Cz1kkDDX.js} +7 -7
  257. package/dist/public/assets/diagram-PFBEJUXE-faMkmqUW.js +3 -0
  258. package/dist/public/assets/{diagram-UQ7AKVKN-C5VvsV7x.js → diagram-RJA3I4VV-nycvfte-.js} +2 -2
  259. package/dist/public/assets/diagram-TYUNFSNR-CjEv5QCm.js +200 -0
  260. package/dist/public/assets/{dist-BDCdLWk4.js → dist-DGs_yUrP.js} +1 -1
  261. package/dist/public/assets/ebnfDiagram-V4P3TTPT-DN-IIxCy.js +1 -0
  262. package/dist/public/assets/elk-QONTBCTQ-Bsam88GP.js +27 -0
  263. package/dist/public/assets/erDiagram-KYQIGQAA-DEU_qqNK.js +99 -0
  264. package/dist/public/assets/eventmodeling-K75KTNOO-Bl6NCM9E.js +1 -0
  265. package/dist/public/assets/flowDiagram-IUGLLWBU-Cl4qZ-36.js +1 -0
  266. package/dist/public/assets/ganttDiagram-R7GPNTJY-BmMd4aGi.js +292 -0
  267. package/dist/public/assets/gitGraph-VSP46ZUC-Q0H2PWek.js +1 -0
  268. package/dist/public/assets/gitGraphDiagram-PDYL7XHY-BlCTBYTj.js +106 -0
  269. package/dist/public/assets/index-CuBJ0hof.css +1 -0
  270. package/dist/public/assets/index-D701BZPh.js +2219 -0
  271. package/dist/public/assets/info-OHQRW6UA-D0TMPJxW.js +1 -0
  272. package/dist/public/assets/infoDiagram-MVDRKAX5-CljbtJXu.js +2 -0
  273. package/dist/public/assets/{ishikawaDiagram-5VMMS53U-KvT4DU1u.js → ishikawaDiagram-HPEHV2GE-_Y3Fr0hu.js} +6 -6
  274. package/dist/public/assets/{journeyDiagram-3NMN7TZE-PhGRkXkq.js → journeyDiagram-BOSHW7O7-Bo55jJ4m.js} +39 -39
  275. package/dist/public/assets/kanban-definition-FNSA4HC5-Cd-10MtF.js +89 -0
  276. package/dist/public/assets/katex-MEuSR36T.js +257 -0
  277. package/dist/public/assets/line-BDmh4sWC.js +1 -0
  278. package/dist/public/assets/linear-Dt7xjMrI.js +1 -0
  279. package/dist/public/assets/mermaid-parser.core-BJ1yyzvV.js +7 -0
  280. package/dist/public/assets/mindmap-definition-6OY57UG3-CRgumPuN.js +98 -0
  281. package/dist/public/assets/packet-JDAUHWVQ-DsTMT3Kw.js +1 -0
  282. package/dist/public/assets/pegDiagram-ECIUJNBX-BEGI5k3m.js +1 -0
  283. package/dist/public/assets/pie-XZMESJXO-COyqzA3N.js +1 -0
  284. package/dist/public/assets/pieDiagram-GNMPY74T-CrLJhZJJ.js +39 -0
  285. package/dist/public/assets/{quadrantDiagram-AXDQQJYC-B9dlNtZl.js → quadrantDiagram-D57K4MC3-Fl7HMHxK.js} +6 -6
  286. package/dist/public/assets/radar-ABXABTNO-DeXHKowk.js +1 -0
  287. package/dist/public/assets/railroad-I3PHUGI6-CUjKUdPz.js +1 -0
  288. package/dist/public/assets/railroad-abnf-LNEFI6M7-B1aEgHE6.js +1 -0
  289. package/dist/public/assets/railroad-ebnf-DWYD2UWJ-DmmI3Voz.js +1 -0
  290. package/dist/public/assets/railroad-peg-JR7BVNR7-BHzi9m7r.js +1 -0
  291. package/dist/public/assets/railroadDiagram-Y72NRBL7-D1oeE5fy.js +1 -0
  292. package/dist/public/assets/requirementDiagram-EQYSW5RA-BJDKK1aS.js +84 -0
  293. package/dist/public/assets/rolldown-runtime-BCiCTKAo.js +1 -0
  294. package/dist/public/assets/{sankeyDiagram-P5KCCOFB-C4rb2pZ9.js → sankeyDiagram-SY24JHO5-C4g0OwZ9.js} +7 -7
  295. package/dist/public/assets/sequenceDiagram-BLEHNHQU-CEvy4P-b.js +169 -0
  296. package/dist/public/assets/src-MPsEqXxq.js +1 -0
  297. package/dist/public/assets/stateDiagram-v2-A6IESKWZ-BFhvw4Gl.js +291 -0
  298. package/dist/public/assets/swimlanes-B3ENRKFQ-BIl_Q-FM.js +1 -0
  299. package/dist/public/assets/swimlanesDiagram-AYQRV4AK-rvDbKEHQ.js +8 -0
  300. package/dist/public/assets/timeline-definition-JXYKGLGB-qAoWTH4N.js +120 -0
  301. package/dist/public/assets/treeView-D4JQ5SDB-vq16JKkJ.js +1 -0
  302. package/dist/public/assets/treemap-SAJKECNS-C0IZTaDk.js +1 -0
  303. package/dist/public/assets/usecaseDiagram-WPOLBNNX-Dq8iz49r.js +328 -0
  304. package/dist/public/assets/vennDiagram-Q3Y3IDCW-Br4JmRjM.js +34 -0
  305. package/dist/public/assets/wardley-7MLQ67FV-CEPlAQ79.js +1 -0
  306. package/dist/public/assets/{wardleyDiagram-VM6X3IG4-BOXpwLCv.js → wardleyDiagram-IVAIDKWA-DURB7Ue6.js} +4 -4
  307. package/dist/public/assets/xychartDiagram-4URNHDU4-BiZywfhy.js +7 -0
  308. package/dist/public/index.html +27 -21
  309. package/dist/public/sbom.cdx.json +1 -1
  310. package/dist/types.d.ts +0 -12
  311. package/dist/types.js +2 -12
  312. package/dist/types.js.map +1 -1
  313. package/dist/utils.d.ts +12 -5
  314. package/dist/utils.js +18 -43
  315. package/dist/utils.js.map +1 -1
  316. package/package.json +13 -12
  317. package/src/app.ts +37 -52
  318. package/src/auth/index.ts +2 -12
  319. package/src/auth/keycloak.ts +2 -12
  320. package/src/auth/mock.ts +2 -12
  321. package/src/auth/types.ts +2 -12
  322. package/src/common/errors.ts +45 -0
  323. package/src/common/validationSchemas.ts +3 -12
  324. package/src/domain/auth/index.ts +2 -12
  325. package/src/domain/calculations/index.ts +4 -14
  326. package/src/domain/calculations/schema.ts +2 -12
  327. package/src/domain/calculations/service.ts +8 -21
  328. package/src/domain/cardTypes/index.ts +10 -20
  329. package/src/domain/cardTypes/schema.ts +3 -12
  330. package/src/domain/cardTypes/service.ts +22 -29
  331. package/src/domain/cards/index.ts +158 -128
  332. package/src/domain/cards/lib.ts +9 -161
  333. package/src/domain/cards/mermaid.ts +25 -0
  334. package/src/domain/cards/schema.ts +8 -12
  335. package/src/domain/cards/service.ts +165 -118
  336. package/src/domain/connectors/index.ts +5 -14
  337. package/src/domain/connectors/service.ts +5 -20
  338. package/src/domain/events/events-by-project.ts +59 -0
  339. package/src/domain/events/index.ts +3 -13
  340. package/src/domain/events/lifetime.ts +2 -12
  341. package/src/domain/events/project-events.ts +30 -18
  342. package/src/domain/events/schema.ts +2 -12
  343. package/src/domain/fieldTypes/index.ts +6 -16
  344. package/src/domain/fieldTypes/schema.ts +3 -12
  345. package/src/domain/fieldTypes/service.ts +9 -21
  346. package/src/domain/graphModels/index.ts +4 -14
  347. package/src/domain/graphModels/schema.ts +3 -12
  348. package/src/domain/graphModels/service.ts +5 -18
  349. package/src/domain/graphViews/index.ts +4 -14
  350. package/src/domain/graphViews/schema.ts +3 -0
  351. package/src/domain/graphViews/service.ts +5 -18
  352. package/src/domain/labels/index.ts +4 -14
  353. package/src/domain/labels/service.ts +6 -16
  354. package/src/domain/linkTypes/index.ts +6 -16
  355. package/src/domain/linkTypes/schema.ts +2 -12
  356. package/src/domain/linkTypes/service.ts +8 -21
  357. package/src/domain/logicPrograms/index.ts +5 -17
  358. package/src/domain/logicPrograms/service.ts +7 -16
  359. package/src/domain/mcp/index.ts +33 -24
  360. package/src/domain/project/index.ts +34 -40
  361. package/src/domain/project/schema.ts +2 -12
  362. package/src/domain/project/service.ts +56 -71
  363. package/src/domain/projects/index.ts +34 -50
  364. package/src/domain/projects/schema.ts +3 -12
  365. package/src/domain/projects/service.ts +18 -88
  366. package/src/domain/reports/index.ts +4 -14
  367. package/src/domain/reports/schema.ts +2 -12
  368. package/src/domain/reports/service.ts +5 -18
  369. package/src/domain/resources/index.ts +19 -30
  370. package/src/domain/resources/schema.ts +3 -0
  371. package/src/domain/resources/service.ts +55 -90
  372. package/src/domain/skills/index.ts +4 -14
  373. package/src/domain/skills/schema.ts +2 -12
  374. package/src/domain/skills/service.ts +5 -15
  375. package/src/domain/templates/index.ts +8 -18
  376. package/src/domain/templates/schema.ts +2 -12
  377. package/src/domain/templates/service.ts +9 -22
  378. package/src/domain/tree/index.ts +4 -14
  379. package/src/domain/tree/service.ts +10 -21
  380. package/src/domain/workflows/index.ts +4 -14
  381. package/src/domain/workflows/schema.ts +2 -12
  382. package/src/domain/workflows/service.ts +5 -18
  383. package/src/export.ts +24 -33
  384. package/src/frontend.ts +58 -0
  385. package/src/index.ts +32 -53
  386. package/src/main.ts +25 -35
  387. package/src/middleware/auth.ts +2 -12
  388. package/src/middleware/commandManager.ts +35 -50
  389. package/src/middleware/tree.ts +3 -0
  390. package/src/middleware/zvalidator.ts +3 -0
  391. package/src/overlay.ts +29 -19
  392. package/src/types.ts +2 -12
  393. package/src/utils.ts +26 -46
  394. package/dist/project-errors.d.ts +0 -18
  395. package/dist/project-errors.js +0 -25
  396. package/dist/project-errors.js.map +0 -1
  397. package/dist/project-registry.d.ts +0 -65
  398. package/dist/project-registry.js +0 -121
  399. package/dist/project-registry.js.map +0 -1
  400. package/dist/public/assets/__vite-browser-external-PaJ7c2l8.js +0 -1
  401. package/dist/public/assets/abnfDiagram-VCTEODGH-DB2dfOGe.js +0 -1
  402. package/dist/public/assets/architecture-7GRP2DOG-2V0X8hxt.js +0 -1
  403. package/dist/public/assets/architectureDiagram-5GKGNRK7-CRhUR2Ul.js +0 -36
  404. package/dist/public/assets/blockDiagram-I7D4REHJ-DJKsYF1v.js +0 -129
  405. package/dist/public/assets/c4Diagram-7LVT6UL2-BTwMzoAF.js +0 -38
  406. package/dist/public/assets/channel-C0JtPpMA.js +0 -1
  407. package/dist/public/assets/chunk-4HAMMTFA-DjjgrBsB.js +0 -62
  408. package/dist/public/assets/chunk-75Z2AOVW-CKqXRGJV.js +0 -2
  409. package/dist/public/assets/chunk-DU6HZSFF-iJGdiRt7.js +0 -127
  410. package/dist/public/assets/chunk-FOHPRMQF-DzxwRta7.js +0 -161
  411. package/dist/public/assets/chunk-GMAD6QVW-DxHVEaGj.js +0 -72
  412. package/dist/public/assets/chunk-GVQU2GXP-AMxD4_Ta.js +0 -1
  413. package/dist/public/assets/chunk-IMKFNOWR-0rz8QrYC.js +0 -231
  414. package/dist/public/assets/chunk-L3NEJ4N5-BK3KAKMe.js +0 -1
  415. package/dist/public/assets/chunk-OSK3NFVY-B8MdrI_M.js +0 -10
  416. package/dist/public/assets/chunk-P2QGCYS3-D3J5AcHg.js +0 -1
  417. package/dist/public/assets/chunk-POPQ4Y6H-CsYg_XkK.js +0 -1
  418. package/dist/public/assets/chunk-PWAF6VOD-D9cdEIZp.js +0 -1
  419. package/dist/public/assets/chunk-SHT3W25Y-1jjokCf3.js +0 -168
  420. package/dist/public/assets/chunk-TICWLB2K-Ccsy2PYz.js +0 -206
  421. package/dist/public/assets/classDiagram-ZZMXUADV-mWyXNAXi.js +0 -1
  422. package/dist/public/assets/classDiagram-v2-VYDZK3BY-mWyXNAXi.js +0 -1
  423. package/dist/public/assets/cose-bilkent-JH36ORCC-DPzc3Pv4.js +0 -1
  424. package/dist/public/assets/cynefin-OW5HDTMX-BIVDCYOU.js +0 -1
  425. package/dist/public/assets/cytoscape.esm-NgwPT4ez.js +0 -321
  426. package/dist/public/assets/dagre-C-rnJpZF.js +0 -1
  427. package/dist/public/assets/dagre-GXQ25YYZ-CJc0wc6f.js +0 -4
  428. package/dist/public/assets/diagram-VSXAHHWV-Dw3rKVL_.js +0 -3
  429. package/dist/public/assets/diagram-Z3DM3KII-Bd-65QQW.js +0 -24
  430. package/dist/public/assets/ebnfDiagram-PWID7BFC-CrxdET5U.js +0 -1
  431. package/dist/public/assets/erDiagram-RLTQ6QDP-BKo0Uyna.js +0 -99
  432. package/dist/public/assets/eventmodeling-NTZA5JFV-DKkAdJZd.js +0 -1
  433. package/dist/public/assets/flowDiagram-HODETNUW-CEE2wjdt.js +0 -1
  434. package/dist/public/assets/ganttDiagram-EL5Y4UJY-BHFn8vk0.js +0 -292
  435. package/dist/public/assets/gitGraph-4MIJSDKK-Bpvnb45u.js +0 -1
  436. package/dist/public/assets/gitGraphDiagram-WWUBYQGX-Bw0EoxBY.js +0 -106
  437. package/dist/public/assets/index-D3HS7YxF.js +0 -2228
  438. package/dist/public/assets/index-Sv3WxZ_8.css +0 -1
  439. package/dist/public/assets/info-A6RAGUB7-BvvG_zrk.js +0 -1
  440. package/dist/public/assets/infoDiagram-27XIBGKW-CtpdJmtL.js +0 -2
  441. package/dist/public/assets/kanban-definition-UXKFOSKX-Oyx5QgRq.js +0 -89
  442. package/dist/public/assets/katex-ZlcWpGUi.js +0 -257
  443. package/dist/public/assets/line-Dr41HTk1.js +0 -1
  444. package/dist/public/assets/linear-DDBi9FwZ.js +0 -1
  445. package/dist/public/assets/mermaid-parser.core-DsIAxDBa.js +0 -7
  446. package/dist/public/assets/mindmap-definition-YA3MSWOX-r8hvd6gP.js +0 -96
  447. package/dist/public/assets/packet-AYTQ26CC-B0EpJ2Sc.js +0 -1
  448. package/dist/public/assets/pegDiagram-XKGWAZYB-DaNkQTQF.js +0 -1
  449. package/dist/public/assets/pie-WAS4IAKB-Dt2zttL9.js +0 -1
  450. package/dist/public/assets/pieDiagram-E7YTZNPT-x0XWEGbd.js +0 -39
  451. package/dist/public/assets/radar-RG4KPBEZ-DjbR4-5l.js +0 -1
  452. package/dist/public/assets/railroad-74A4TZTK-Bk3B5r_R.js +0 -1
  453. package/dist/public/assets/railroad-abnf-HS5TGJTU-DxaWfACD.js +0 -1
  454. package/dist/public/assets/railroad-ebnf-LZEXJU2U-DscxXZO0.js +0 -1
  455. package/dist/public/assets/railroad-peg-WCYAUIDC-BCWzRFzw.js +0 -1
  456. package/dist/public/assets/railroadDiagram-O6MQD6OU-DhwsoX6A.js +0 -1
  457. package/dist/public/assets/requirementDiagram-BXWQKSXE-BiqZ6axf.js +0 -84
  458. package/dist/public/assets/rolldown-runtime-B0Z9INg1.js +0 -1
  459. package/dist/public/assets/sequenceDiagram-WJ2MYXX4-DRKTnGD7.js +0 -162
  460. package/dist/public/assets/src-an_qrnIj.js +0 -1
  461. package/dist/public/assets/stateDiagram-D77RDMKH-xxdybg5Z.js +0 -1
  462. package/dist/public/assets/stateDiagram-v2-MP3YSRHH-CXzmJy_a.js +0 -1
  463. package/dist/public/assets/swimlanes-42K2YHIH-DyGI1gI6.js +0 -1
  464. package/dist/public/assets/swimlanesDiagram-VR7AAH4N-7hqb6VoW.js +0 -8
  465. package/dist/public/assets/timeline-definition-24CTP7MA-C2pIp77Q.js +0 -120
  466. package/dist/public/assets/treeView-Q6P3EWNA-CxRtaaB8.js +0 -1
  467. package/dist/public/assets/treemap-WGGIJYW6-G1IHiwTa.js +0 -1
  468. package/dist/public/assets/vennDiagram-4TSXK5OY-CwimQRR9.js +0 -34
  469. package/dist/public/assets/wardley-WFR3VGLG-DkQ3TjZX.js +0 -1
  470. package/dist/public/assets/xychartDiagram-S5SC5T6Z-ChOPYsHc.js +0 -7
  471. package/src/project-errors.ts +0 -33
  472. package/src/project-registry.ts +0 -161
@@ -1,23 +1,14 @@
1
- /**
2
- Cyberismo
3
- Copyright © Cyberismo Ltd and contributors 2026
4
- This program is free software: you can redistribute it and/or modify it under
5
- the terms of the GNU Affero General Public License version 3 as published by
6
- the Free Software Foundation.
7
- This program is distributed in the hope that it will be useful, but WITHOUT
8
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
9
- FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
10
- details. You should have received a copy of the GNU Affero General Public
11
- License along with this program. If not, see <https://www.gnu.org/licenses/>.
12
- */
1
+ // SPDX-FileCopyrightText: Cyberismo Ltd and contributors
2
+ // SPDX-License-Identifier: AGPL-3.0-only
13
3
  import { Hono } from 'hono';
14
4
  import { zValidator } from '../../middleware/zvalidator.js';
5
+ import { errorBody, errorResponse } from '../../common/errors.js';
15
6
  import { requireRole, getCurrentUser } from '../../middleware/auth.js';
16
7
  import { isProjectReadOnly } from '../../overlay.js';
17
8
  import { UserRole } from '../../types.js';
18
9
  import { createProjectSchema, cloneProjectSchema } from './schema.js';
19
10
  import * as projectsService from './service.js';
20
- export function createProjectsRouter(registry, multiProjectRoot) {
11
+ export function createProjectsRouter(directory, multiProjectRoot) {
21
12
  const router = new Hono();
22
13
  /**
23
14
  * @swagger
@@ -31,9 +22,9 @@ export function createProjectsRouter(registry, multiProjectRoot) {
31
22
  * 401:
32
23
  * description: Unauthorized
33
24
  */
34
- router.get('/', requireRole(UserRole.Reader), (c) => {
25
+ router.get('/', requireRole(UserRole.Reader), async (c) => {
35
26
  return c.json({
36
- projects: registry.list().map((project) => ({
27
+ projects: (await directory.list()).map((project) => ({
37
28
  ...project,
38
29
  readOnly: isProjectReadOnly(project.prefix),
39
30
  })),
@@ -49,22 +40,19 @@ export function createProjectsRouter(registry, multiProjectRoot) {
49
40
  */
50
41
  router.post('/', requireRole(UserRole.Editor), zValidator('json', createProjectSchema), async (c) => {
51
42
  if (!multiProjectRoot) {
52
- return c.json({ error: 'Project creation is not available in single-project mode' }, 403);
43
+ return c.json(errorBody('permission-denied', 'Project creation is not available in single-project mode'), 403);
53
44
  }
54
45
  const params = c.req.valid('json');
55
- if (registry.has(params.prefix)) {
56
- return c.json({ error: `Project with prefix '${params.prefix}' already exists` }, 409);
57
- }
58
46
  try {
59
- const result = await projectsService.createProject(registry, multiProjectRoot, params, getCurrentUser(c));
47
+ const result = await projectsService.createProject(directory, params, getCurrentUser(c));
60
48
  return c.json(result, 201);
61
49
  }
62
50
  catch (error) {
63
- return c.json({
64
- error: error instanceof Error
65
- ? error.message
66
- : 'Failed to create project',
67
- }, 500);
51
+ // A taken prefix is the directory's ProjectExistsError: a 409.
52
+ const { status, body } = errorResponse(error instanceof Error
53
+ ? error
54
+ : new Error('Failed to create project'));
55
+ return c.json(body, status);
68
56
  }
69
57
  });
70
58
  /**
@@ -76,25 +64,20 @@ export function createProjectsRouter(registry, multiProjectRoot) {
76
64
  */
77
65
  router.post('/clone', requireRole(UserRole.Editor), zValidator('json', cloneProjectSchema), async (c) => {
78
66
  if (!multiProjectRoot) {
79
- return c.json({ error: 'Project cloning is not available in single-project mode' }, 403);
67
+ return c.json(errorBody('permission-denied', 'Project cloning is not available in single-project mode'), 403);
80
68
  }
81
69
  const { url } = c.req.valid('json');
82
70
  try {
83
- const result = await projectsService.cloneProject(registry, multiProjectRoot, url);
71
+ const result = await directory.clone(url);
84
72
  if (result.projects.length === 0) {
85
- return c.json({
86
- error: 'All projects in the cloned repository already exist',
87
- skippedDuplicates: result.skippedDuplicates,
88
- }, 409);
73
+ return c.json(errorBody('conflict', 'All projects in the cloned repository already exist', { skippedDuplicates: result.skippedDuplicates }), 409);
89
74
  }
90
75
  return c.json(result, 201);
91
76
  }
92
77
  catch (error) {
93
- return c.json({
94
- error: error instanceof Error
95
- ? error.message
96
- : 'Failed to clone repository',
97
- }, 500);
78
+ return c.json(errorBody('internal', error instanceof Error
79
+ ? error.message
80
+ : 'Failed to clone repository'), 500);
98
81
  }
99
82
  });
100
83
  return router;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/projects/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/projects/index.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,10 @@
1
- /**
2
- Cyberismo
3
- Copyright © Cyberismo Ltd and contributors 2026
4
- This program is free software: you can redistribute it and/or modify it under
5
- the terms of the GNU Affero General Public License version 3 as published by
6
- the Free Software Foundation.
7
- This program is distributed in the hope that it will be useful, but WITHOUT
8
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
9
- FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
10
- details. You should have received a copy of the GNU Affero General Public
11
- License along with this program. If not, see <https://www.gnu.org/licenses/>.
12
- */
13
1
  import { z } from 'zod';
14
2
  export declare const createProjectSchema: z.ZodObject<{
15
3
  name: z.ZodString;
16
4
  prefix: z.ZodString;
17
5
  category: z.ZodDefault<z.ZodOptional<z.ZodString>>;
18
6
  description: z.ZodDefault<z.ZodOptional<z.ZodString>>;
7
+ skipDefaultHub: z.ZodOptional<z.ZodBoolean>;
19
8
  }, z.core.$strip>;
20
9
  export declare const cloneProjectSchema: z.ZodObject<{
21
10
  url: z.ZodString;
@@ -1,15 +1,5 @@
1
- /**
2
- Cyberismo
3
- Copyright © Cyberismo Ltd and contributors 2026
4
- This program is free software: you can redistribute it and/or modify it under
5
- the terms of the GNU Affero General Public License version 3 as published by
6
- the Free Software Foundation.
7
- This program is distributed in the hope that it will be useful, but WITHOUT
8
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
9
- FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
10
- details. You should have received a copy of the GNU Affero General Public
11
- License along with this program. If not, see <https://www.gnu.org/licenses/>.
12
- */
1
+ // SPDX-FileCopyrightText: Cyberismo Ltd and contributors
2
+ // SPDX-License-Identifier: AGPL-3.0-only
13
3
  import { z } from 'zod';
14
4
  import { Validate } from '@cyberismo/data-handler';
15
5
  export const createProjectSchema = z.object({
@@ -28,6 +18,7 @@ export const createProjectSchema = z.object({
28
18
  }),
29
19
  category: z.string().optional().default(''),
30
20
  description: z.string().optional().default(''),
21
+ skipDefaultHub: z.boolean().optional(),
31
22
  });
32
23
  export const cloneProjectSchema = z.object({
33
24
  url: z
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/domain/projects/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAEF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;SAClC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE;QAC7C,OAAO,EAAE,sBAAsB;KAChC,CAAC;IACJ,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,sCAAsC,CAAC;SAC9C,GAAG,CAAC,EAAE,EAAE,sCAAsC,CAAC;SAC/C,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;QACzC,OAAO,EAAE,4CAA4C;KACtD,CAAC;IACJ,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC3C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CAC/C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,GAAG,EAAE,CAAC;SACH,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,4BAA4B,CAAC;SACpC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QAC/D,OAAO,EAAE,sCAAsC;KAChD,CAAC;CACL,CAAC,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/domain/projects/schema.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,yCAAyC;AAEzC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;SAClC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE;QAC7C,OAAO,EAAE,sBAAsB;KAChC,CAAC;IACJ,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,sCAAsC,CAAC;SAC9C,GAAG,CAAC,EAAE,EAAE,sCAAsC,CAAC;SAC/C,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;QACzC,OAAO,EAAE,4CAA4C;KACtD,CAAC;IACJ,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC3C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC9C,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,GAAG,EAAE,CAAC;SACH,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,4BAA4B,CAAC;SACpC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QAC/D,OAAO,EAAE,sCAAsC;KAChD,CAAC;CACL,CAAC,CAAC"}
@@ -1,37 +1,11 @@
1
- /**
2
- Cyberismo
3
- Copyright © Cyberismo Ltd and contributors 2026
4
- This program is free software: you can redistribute it and/or modify it under
5
- the terms of the GNU Affero General Public License version 3 as published by
6
- the Free Software Foundation.
7
- This program is distributed in the hope that it will be useful, but WITHOUT
8
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
9
- FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
10
- details. You should have received a copy of the GNU Affero General Public
11
- License along with this program. If not, see <https://www.gnu.org/licenses/>.
12
- */
13
- import type { ProjectRegistry } from '../../project-registry.js';
14
- export interface CreateProjectParams {
15
- name: string;
16
- prefix: string;
17
- category?: string;
18
- description?: string;
19
- }
20
- export interface CreateProjectResult {
1
+ import { type ProjectDirectory } from '@cyberismo/data-handler';
2
+ import type { CreateProjectParams } from '@cyberismo/model';
3
+ import type { UserInfo } from '../../types.js';
4
+ export declare function createProject(directory: ProjectDirectory, params: CreateProjectParams, user?: UserInfo | null): Promise<{
21
5
  prefix: string;
22
6
  name: string;
23
- category?: string;
24
- description?: string;
25
- }
26
- export declare function createProject(registry: ProjectRegistry, rootPath: string, params: CreateProjectParams, user?: {
27
- name: string;
28
- email: string;
29
- } | null): Promise<CreateProjectResult>;
30
- export interface CloneProjectResult {
31
- projects: {
32
- prefix: string;
33
- name: string;
34
- }[];
35
- skippedDuplicates?: string[];
36
- }
37
- export declare function cloneProject(registry: ProjectRegistry, rootPath: string, url: string): Promise<CloneProjectResult>;
7
+ category: string | undefined;
8
+ description: string | undefined;
9
+ failures: string[];
10
+ warnings: string[];
11
+ }>;
@@ -1,53 +1,17 @@
1
- /**
2
- Cyberismo
3
- Copyright © Cyberismo Ltd and contributors 2026
4
- This program is free software: you can redistribute it and/or modify it under
5
- the terms of the GNU Affero General Public License version 3 as published by
6
- the Free Software Foundation.
7
- This program is distributed in the hope that it will be useful, but WITHOUT
8
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
9
- FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
10
- details. You should have received a copy of the GNU Affero General Public
11
- License along with this program. If not, see <https://www.gnu.org/licenses/>.
12
- */
13
- import { join } from 'node:path';
14
- import { CommandManager, Create, scanForProjects, } from '@cyberismo/data-handler';
15
- export async function createProject(registry, rootPath, params, user) {
16
- const { name, prefix, category, description } = params;
17
- const projectPath = join(rootPath, prefix);
18
- const commands = await CommandManager.createProjectWithDefaults(projectPath, params, {
19
- ...registry.options,
20
- gitUser: user ?? undefined,
21
- });
22
- registry.add(prefix, commands);
1
+ // SPDX-FileCopyrightText: Cyberismo Ltd and contributors
2
+ // SPDX-License-Identifier: AGPL-3.0-only
3
+ import { SYSTEM_ACTOR } from '@cyberismo/data-handler';
4
+ import { actorOf } from '../../middleware/commandManager.js';
5
+ export async function createProject(directory, params, user) {
6
+ const { prefix, failures, warnings } = await directory.create(params, user ? actorOf(user) : SYSTEM_ACTOR, user ? { name: user.name, email: user.email } : undefined);
7
+ // The project's path stays on the server.
23
8
  return {
24
9
  prefix,
25
- name,
26
- category: category || undefined,
27
- description: description || undefined,
28
- };
29
- }
30
- export async function cloneProject(registry, rootPath, url) {
31
- const clonedPath = await Create.cloneProject(url, rootPath);
32
- const scanned = await scanForProjects(clonedPath);
33
- const registered = [];
34
- const skippedDuplicates = [];
35
- for (const project of scanned) {
36
- if (registry.has(project.prefix)) {
37
- skippedDuplicates.push(project.prefix);
38
- continue;
39
- }
40
- const commands = new CommandManager(project.path, registry.options);
41
- await commands.initialize();
42
- registry.add(project.prefix, commands);
43
- registered.push({
44
- prefix: project.prefix,
45
- name: project.name,
46
- });
47
- }
48
- return {
49
- projects: registered,
50
- ...(skippedDuplicates.length > 0 && { skippedDuplicates }),
10
+ name: params.name,
11
+ category: params.category || undefined,
12
+ description: params.description || undefined,
13
+ failures,
14
+ warnings,
51
15
  };
52
16
  }
53
17
  //# sourceMappingURL=service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/domain/projects/service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAEF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EACL,cAAc,EACd,MAAM,EACN,eAAe,GAChB,MAAM,yBAAyB,CAAC;AAiBjC,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,QAAyB,EACzB,QAAgB,EAChB,MAA2B,EAC3B,IAA6C;IAE7C,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;IACvD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAE3C,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,yBAAyB,CAC7D,WAAW,EACX,MAAM,EACN;QACE,GAAG,QAAQ,CAAC,OAAO;QACnB,OAAO,EAAE,IAAI,IAAI,SAAS;KAC3B,CACF,CAAC;IAEF,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAE/B,OAAO;QACL,MAAM;QACN,IAAI;QACJ,QAAQ,EAAE,QAAQ,IAAI,SAAS;QAC/B,WAAW,EAAE,WAAW,IAAI,SAAS;KACtC,CAAC;AACJ,CAAC;AAOD,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,QAAyB,EACzB,QAAgB,EAChB,GAAW;IAEX,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,UAAU,CAAC,CAAC;IAElD,MAAM,UAAU,GAAuC,EAAE,CAAC;IAC1D,MAAM,iBAAiB,GAAa,EAAE,CAAC;IAEvC,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;QAC9B,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACjC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACvC,SAAS;QACX,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpE,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC5B,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACvC,UAAU,CAAC,IAAI,CAAC;YACd,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,UAAU;QACpB,GAAG,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,iBAAiB,EAAE,CAAC;KAC3D,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/domain/projects/service.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,yCAAyC;AAEzC,OAAO,EAAE,YAAY,EAAyB,MAAM,yBAAyB,CAAC;AAE9E,OAAO,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAG7D,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,SAA2B,EAC3B,MAA2B,EAC3B,IAAsB;IAEtB,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,MAAM,SAAS,CAAC,MAAM,CAC3D,MAAM,EACN,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,EACnC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAC1D,CAAC;IACF,0CAA0C;IAC1C,OAAO;QACL,MAAM;QACN,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,SAAS;QACtC,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,SAAS;QAC5C,QAAQ;QACR,QAAQ;KACT,CAAC;AACJ,CAAC"}
@@ -1,15 +1,3 @@
1
- /**
2
- Cyberismo
3
- Copyright © Cyberismo Ltd and contributors 2025
4
- This program is free software: you can redistribute it and/or modify it under
5
- the terms of the GNU Affero General Public License version 3 as published by
6
- the Free Software Foundation.
7
- This program is distributed in the hope that it will be useful, but WITHOUT
8
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
9
- FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
10
- details. You should have received a copy of the GNU Affero General Public
11
- License along with this program. If not, see <https://www.gnu.org/licenses/>.
12
- */
13
1
  import { Hono } from 'hono';
14
2
  declare const router: Hono<import("hono/types").BlankEnv, import("hono/types").BlankSchema, "/">;
15
3
  export default router;
@@ -1,15 +1,5 @@
1
- /**
2
- Cyberismo
3
- Copyright © Cyberismo Ltd and contributors 2025
4
- This program is free software: you can redistribute it and/or modify it under
5
- the terms of the GNU Affero General Public License version 3 as published by
6
- the Free Software Foundation.
7
- This program is distributed in the hope that it will be useful, but WITHOUT
8
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
9
- FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
10
- details. You should have received a copy of the GNU Affero General Public
11
- License along with this program. If not, see <https://www.gnu.org/licenses/>.
12
- */
1
+ // SPDX-FileCopyrightText: Cyberismo Ltd and contributors
2
+ // SPDX-License-Identifier: AGPL-3.0-only
13
3
  import { Hono } from 'hono';
14
4
  import * as reportService from './service.js';
15
5
  import { createReportSchema } from './schema.js';
@@ -43,9 +33,9 @@ const router = new Hono();
43
33
  * description: Server error
44
34
  */
45
35
  router.post('/', requireRole(UserRole.Admin), zValidator('json', createReportSchema), async (c) => {
46
- const commands = c.get('commands');
36
+ const ws = c.get('ws');
47
37
  const { identifier } = c.req.valid('json');
48
- await reportService.createReport(commands, identifier);
38
+ await reportService.createReport(ws, identifier);
49
39
  return c.json({ message: 'Report created successfully' });
50
40
  });
51
41
  export default router;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/reports/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAEF,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,aAAa,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;AAE1B;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,IAAI,CACT,GAAG,EACH,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC3B,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC,EACtC,KAAK,EAAE,CAAC,EAAE,EAAE;IACV,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAE3C,MAAM,aAAa,CAAC,YAAY,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACvD,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC,CAAC;AAC5D,CAAC,CACF,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/reports/index.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,yCAAyC;AAEzC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,aAAa,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;AAE1B;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,IAAI,CACT,GAAG,EACH,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC3B,UAAU,CAAC,MAAM,EAAE,kBAAkB,CAAC,EACtC,KAAK,EAAE,CAAC,EAAE,EAAE;IACV,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACvB,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAE3C,MAAM,aAAa,CAAC,YAAY,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;IACjD,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC,CAAC;AAC5D,CAAC,CACF,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -1,15 +1,3 @@
1
- /**
2
- Cyberismo
3
- Copyright © Cyberismo Ltd and contributors 2025
4
- This program is free software: you can redistribute it and/or modify it under
5
- the terms of the GNU Affero General Public License version 3 as published by
6
- the Free Software Foundation.
7
- This program is distributed in the hope that it will be useful, but WITHOUT
8
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
9
- FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
10
- details. You should have received a copy of the GNU Affero General Public
11
- License along with this program. If not, see <https://www.gnu.org/licenses/>.
12
- */
13
1
  import { z } from 'zod';
14
2
  export declare const createReportSchema: z.ZodObject<{
15
3
  identifier: z.ZodString;
@@ -1,15 +1,5 @@
1
- /**
2
- Cyberismo
3
- Copyright © Cyberismo Ltd and contributors 2025
4
- This program is free software: you can redistribute it and/or modify it under
5
- the terms of the GNU Affero General Public License version 3 as published by
6
- the Free Software Foundation.
7
- This program is distributed in the hope that it will be useful, but WITHOUT
8
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
9
- FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
10
- details. You should have received a copy of the GNU Affero General Public
11
- License along with this program. If not, see <https://www.gnu.org/licenses/>.
12
- */
1
+ // SPDX-FileCopyrightText: Cyberismo Ltd and contributors
2
+ // SPDX-License-Identifier: AGPL-3.0-only
13
3
  import { z } from 'zod';
14
4
  import { identifierSchema } from '../../common/validationSchemas.js';
15
5
  export const createReportSchema = z.object({
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/domain/reports/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAEF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAErE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,UAAU,EAAE,gBAAgB;CAC7B,CAAC,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/domain/reports/schema.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,yCAAyC;AAEzC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAErE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,UAAU,EAAE,gBAAgB;CAC7B,CAAC,CAAC"}
@@ -1,14 +1,2 @@
1
- /**
2
- Cyberismo
3
- Copyright © Cyberismo Ltd and contributors 2025
4
- This program is free software: you can redistribute it and/or modify it under
5
- the terms of the GNU Affero General Public License version 3 as published by
6
- the Free Software Foundation.
7
- This program is distributed in the hope that it will be useful, but WITHOUT
8
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
9
- FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
10
- details. You should have received a copy of the GNU Affero General Public
11
- License along with this program. If not, see <https://www.gnu.org/licenses/>.
12
- */
13
- import type { CommandManager } from '@cyberismo/data-handler';
14
- export declare function createReport(commands: CommandManager, reportName: string): Promise<void>;
1
+ import type { Workspace } from '@cyberismo/data-handler';
2
+ export declare function createReport(ws: Workspace, reportName: string): Promise<void>;
@@ -1,16 +1,6 @@
1
- /**
2
- Cyberismo
3
- Copyright © Cyberismo Ltd and contributors 2025
4
- This program is free software: you can redistribute it and/or modify it under
5
- the terms of the GNU Affero General Public License version 3 as published by
6
- the Free Software Foundation.
7
- This program is distributed in the hope that it will be useful, but WITHOUT
8
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
9
- FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
10
- details. You should have received a copy of the GNU Affero General Public
11
- License along with this program. If not, see <https://www.gnu.org/licenses/>.
12
- */
13
- export async function createReport(commands, reportName) {
14
- await commands.createCmd.createReport(reportName);
1
+ // SPDX-FileCopyrightText: Cyberismo Ltd and contributors
2
+ // SPDX-License-Identifier: AGPL-3.0-only
3
+ export async function createReport(ws, reportName) {
4
+ await ws.resources.create(reportName, 'reports', {});
15
5
  }
16
6
  //# sourceMappingURL=service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/domain/reports/service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAIF,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,QAAwB,EACxB,UAAkB;IAElB,MAAM,QAAQ,CAAC,SAAS,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/domain/reports/service.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,yCAAyC;AAIzC,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,EAAa,EAAE,UAAkB;IAClE,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;AACvD,CAAC"}
@@ -1,15 +1,3 @@
1
- /**
2
- Cyberismo
3
- Copyright © Cyberismo Ltd and contributors 2025
4
- This program is free software: you can redistribute it and/or modify it under
5
- the terms of the GNU Affero General Public License version 3 as published by
6
- the Free Software Foundation.
7
- This program is distributed in the hope that it will be useful, but WITHOUT
8
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
9
- FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
10
- details. You should have received a copy of the GNU Affero General Public
11
- License along with this program. If not, see <https://www.gnu.org/licenses/>.
12
- */
13
1
  import { Hono } from 'hono';
14
2
  declare const router: Hono<import("hono/types").BlankEnv, import("hono/types").BlankSchema, "/">;
15
3
  export default router;
@@ -1,15 +1,5 @@
1
- /**
2
- Cyberismo
3
- Copyright © Cyberismo Ltd and contributors 2025
4
- This program is free software: you can redistribute it and/or modify it under
5
- the terms of the GNU Affero General Public License version 3 as published by
6
- the Free Software Foundation.
7
- This program is distributed in the hope that it will be useful, but WITHOUT
8
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
9
- FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
10
- details. You should have received a copy of the GNU Affero General Public
11
- License along with this program. If not, see <https://www.gnu.org/licenses/>.
12
- */
1
+ // SPDX-FileCopyrightText: Cyberismo Ltd and contributors
2
+ // SPDX-License-Identifier: AGPL-3.0-only
13
3
  import { Hono } from 'hono';
14
4
  import { ssgParams } from 'hono/ssg';
15
5
  import * as resourceService from './service.js';
@@ -32,9 +22,9 @@ const router = new Hono();
32
22
  * description: project_path not set or other internal error
33
23
  */
34
24
  router.get('/tree', requireRole(UserRole.Reader), async (c) => {
35
- const commands = c.get('commands');
25
+ const ws = c.get('ws');
36
26
  try {
37
- const tree = await resourceService.buildResourceTree(commands);
27
+ const tree = await resourceService.buildResourceTree(ws);
38
28
  return c.json(tree);
39
29
  }
40
30
  catch (error) {
@@ -88,10 +78,10 @@ router.get('/tree', requireRole(UserRole.Reader), async (c) => {
88
78
  * description: Internal server error
89
79
  */
90
80
  router.get('/:prefix/:type/:identifier/validate', requireRole(UserRole.Reader), zValidator('param', validateResourceParamsSchema), async (c) => {
91
- const commands = c.get('commands');
81
+ const ws = c.get('ws');
92
82
  const resourceParams = c.req.valid('param');
93
83
  try {
94
- const response = await resourceService.validateResource(commands, resourceParams);
84
+ const response = await resourceService.validateResource(ws, resourceParams);
95
85
  return c.json(response);
96
86
  }
97
87
  catch (error) {
@@ -102,9 +92,9 @@ router.get('/:prefix/:type/:identifier/validate', requireRole(UserRole.Reader),
102
92
  }
103
93
  });
104
94
  router.delete('/:prefix/:type/:identifier', requireRole(UserRole.Admin), zValidator('param', resourceParamsSchema), async (c) => {
105
- const commands = c.get('commands');
95
+ const ws = c.get('ws');
106
96
  const resourceParams = c.req.valid('param');
107
- await resourceService.deleteResource(commands, resourceParams);
97
+ await resourceService.deleteResource(ws, resourceParams);
108
98
  return c.json({
109
99
  message: 'Resource deleted',
110
100
  });
@@ -156,15 +146,15 @@ router.delete('/:prefix/:type/:identifier', requireRole(UserRole.Admin), zValida
156
146
  * description: Server error
157
147
  */
158
148
  router.get('/:prefix/workflows/:identifier/graph', requireRole(UserRole.Reader), ssgParams(async (c) => {
159
- const commands = c.get('commands');
160
- return resourceService.listWorkflowGraphParams(commands);
149
+ const ws = c.get('ws');
150
+ return resourceService.listWorkflowGraphParams(ws);
161
151
  }), zValidator('param', prefixIdentifierParamsSchema), zValidator('query', workflowGraphQuerySchema), async (c) => {
162
- const commands = c.get('commands');
152
+ const ws = c.get('ws');
163
153
  const { prefix, identifier } = c.req.valid('param');
164
154
  const { card } = c.req.valid('query');
165
155
  const workflowName = `${prefix}/workflows/${identifier}`;
166
156
  try {
167
- const svg = await resourceService.getWorkflowGraph(commands, workflowName, card);
157
+ const svg = await resourceService.getWorkflowGraph(ws, workflowName, card);
168
158
  return c.json({ svg });
169
159
  }
170
160
  catch (error) {
@@ -230,12 +220,12 @@ router.get('/:prefix/workflows/:identifier/graph', requireRole(UserRole.Reader),
230
220
  * description: Skill or card not found
231
221
  */
232
222
  router.post('/:prefix/skills/:identifier/preview', requireRole(UserRole.Admin), zValidator('param', prefixIdentifierParamsSchema), zValidator('json', skillPreviewBodySchema), async (c) => {
233
- const commands = c.get('commands');
223
+ const ws = c.get('ws');
234
224
  const { prefix, identifier } = c.req.valid('param');
235
225
  const body = c.req.valid('json');
236
226
  const skillName = `${prefix}/skills/${identifier}`;
237
227
  try {
238
- const instructions = await resourceService.previewSkill(commands, skillName, body);
228
+ const instructions = await resourceService.previewSkill(ws, skillName, body);
239
229
  return c.json({ instructions });
240
230
  }
241
231
  catch (error) {
@@ -247,10 +237,13 @@ router.post('/:prefix/skills/:identifier/preview', requireRole(UserRole.Admin),
247
237
  }
248
238
  });
249
239
  router.post('/:prefix/:type/:identifier/operation', requireRole(UserRole.Admin, [UserRole.Connector]), zValidator('param', resourceParamsSchema), zValidator('json', updateOperationBodySchema), async (c) => {
250
- const commands = c.get('commands');
240
+ const ws = c.get('ws');
251
241
  const resourceParams = c.req.valid('param');
252
242
  const { updateKey, operation } = c.req.valid('json');
253
- await resourceService.updateResourceWithOperation(commands, resourceParams, { updateKey, operation });
243
+ await resourceService.updateResourceWithOperation(ws, resourceParams, {
244
+ updateKey,
245
+ operation,
246
+ });
254
247
  return c.json({ message: 'Updated' });
255
248
  });
256
249
  export default router;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/resources/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAEF,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,KAAK,eAAe,MAAM,cAAc,CAAC;AAEhD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,EAC5B,sBAAsB,EACtB,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;AAE1B;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAC5D,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAEnC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC/D,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,CAAC,IAAI,CACX;YACE,KAAK,EAAE,kCAAkC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE;SACpG,EACD,GAAG,CACJ,CAAC;IACJ,CAAC;AACH,CAAC,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,MAAM,CAAC,GAAG,CACR,qCAAqC,EACrC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,EAC5B,UAAU,CAAC,OAAO,EAAE,4BAA4B,CAAC,EACjD,KAAK,EAAE,CAAC,EAAE,EAAE;IACV,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,MAAM,cAAc,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAE5C,IAAI,CAAC;QACH,MAAM,QAAQ,GACZ,MAAM,eAAe,CAAC,gBAAgB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QACnE,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAClE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/C,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,CACX,4BAA4B,EAC5B,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC3B,UAAU,CAAC,OAAO,EAAE,oBAAoB,CAAC,EACzC,KAAK,EAAE,CAAC,EAAE,EAAE;IACV,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,MAAM,cAAc,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,eAAe,CAAC,cAAc,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAC/D,OAAO,CAAC,CAAC,IAAI,CAAC;QACZ,OAAO,EAAE,kBAAkB;KAC5B,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,MAAM,CAAC,GAAG,CACR,sCAAsC,EACtC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,EAC5B,SAAS,CAAC,KAAK,EAAE,CAAa,EAAE,EAAE;IAChC,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,OAAO,eAAe,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;AAC3D,CAAC,CAAC,EACF,UAAU,CAAC,OAAO,EAAE,4BAA4B,CAAC,EACjD,UAAU,CAAC,OAAO,EAAE,wBAAwB,CAAC,EAC7C,KAAK,EAAE,CAAC,EAAE,EAAE;IACV,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,YAAY,GAAG,GAAG,MAAM,cAAc,UAAU,EAAE,CAAC;IACzD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,eAAe,CAAC,gBAAgB,CAChD,QAAQ,EACR,YAAY,EACZ,IAAI,CACL,CAAC;QACF,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAClE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/C,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CACF,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACH,MAAM,CAAC,IAAI,CACT,qCAAqC,EACrC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC3B,UAAU,CAAC,OAAO,EAAE,4BAA4B,CAAC,EACjD,UAAU,CAAC,MAAM,EAAE,sBAAsB,CAAC,EAC1C,KAAK,EAAE,CAAC,EAAE,EAAE;IACV,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,SAAS,GAAG,GAAG,MAAM,WAAW,UAAU,EAAE,CAAC;IACnD,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,YAAY,CACrD,QAAQ,EACR,SAAS,EACT,IAAI,CACL,CAAC;QACF,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QACzE,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAClC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;IACzC,CAAC;AACH,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,sCAAsC,EACtC,WAAW,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EACjD,UAAU,CAAC,OAAO,EAAE,oBAAoB,CAAC,EACzC,UAAU,CAAC,MAAM,EAAE,yBAAyB,CAAC,EAC7C,KAAK,EAAE,CAAC,EAAE,EAAE;IACV,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACnC,MAAM,cAAc,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAErD,MAAM,eAAe,CAAC,2BAA2B,CAC/C,QAAQ,EACR,cAAc,EACd,EAAE,SAAS,EAAE,SAAS,EAAE,CACzB,CAAC;IACF,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;AACxC,CAAC,CACF,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/resources/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ // SPDX-FileCopyrightText: Cyberismo Ltd and contributors
2
+ // SPDX-License-Identifier: AGPL-3.0-only
1
3
  import { z } from 'zod';
2
4
  import { identifierSchema, resourceParamsSchema, resourceTypes, } from '../../common/validationSchemas.js';
3
5
  export const prefixIdentifierParamsSchema = z.object({
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/domain/resources/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,GACd,MAAM,mCAAmC,CAAC;AAE3C,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,UAAU,EAAE,gBAAgB;CAC7B,CAAC,CAAC;AAMH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC5B,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,wBAAwB,GAAG,oBAAoB,CAAC,MAAM,CAAC;IAClE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;CACjB,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,4BAA4B,GAAG,oBAAoB,CAAC,MAAM,CAAC;IACtE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;CAC5B,CAAC,CAAC;AAMH,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC;IACxB,CAAC,CAAC,MAAM,CAAC;QACP,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;QACzB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;KACnB,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,EAAE;YAC7C,OAAO,EAAE,8BAA8B;SACxC,CAAC;KACH,CAAC;CACH,CAAC,CAAC;AAEH,yDAAyD;AACzD,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,SAAS;IACT,SAAS,EAAE,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;QACtC,CAAC,CAAC,MAAM,CAAC;YACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;YACtB,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;SACpB,CAAC;QACF,CAAC,CAAC,MAAM,CAAC;YACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;YACzB,oEAAoE;YACpE,kEAAkE;YAClE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YAC9B,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE;YACf,YAAY,EAAE,CAAC;iBACZ,MAAM,CAAC;gBACN,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;aAC/C,CAAC;iBACD,QAAQ,EAAE;SACd,CAAC;QACF,CAAC,CAAC,MAAM,CAAC;YACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;YACzB,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;YACnB,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;SACzC,CAAC;QACF,CAAC,CAAC,MAAM,CAAC;YACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;YACvB,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;YACnB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;SACrB,CAAC;KACH,CAAC;CACH,CAAC,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/domain/resources/schema.ts"],"names":[],"mappings":"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"}