@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,29 +1,20 @@
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
-
14
- import type { AnyResourceContent } from '@cyberismo/data-handler/interfaces/resource-interfaces';
1
+ // SPDX-FileCopyrightText: Cyberismo Ltd and contributors
2
+ // SPDX-License-Identifier: AGPL-3.0-only
3
+
15
4
  import type {
5
+ AnyResourceContent,
16
6
  Card,
17
7
  CardWithChildrenCards,
18
8
  ResourceFolderType,
19
- RemovableResourceTypes,
20
- } from '@cyberismo/data-handler/interfaces/project-interfaces';
9
+ } from '@cyberismo/model';
21
10
  import {
22
- type CommandManager,
11
+ type Workspace,
12
+ CardNotFoundError,
23
13
  isResourceFolderType,
24
14
  moduleNameFromCardKey,
25
15
  resourceName,
26
16
  resourceNameToString,
17
+ ResourceNotFoundError,
27
18
  } from '@cyberismo/data-handler';
28
19
  import type { ResourceParams } from '../../common/validationSchemas.js';
29
20
  import type {
@@ -45,13 +36,13 @@ const resourceTypes: ResourceFolderType[] = [
45
36
  'workflows',
46
37
  ];
47
38
 
48
- async function getModules(commands: CommandManager) {
39
+ async function getModules(ws: Workspace) {
49
40
  try {
50
- const modules = await commands.modulesCmd.list();
41
+ const modules = await ws.modules.list();
51
42
  return Promise.all(
52
43
  modules.map(async (mod) => {
53
44
  try {
54
- const module = await commands.modulesCmd.show(mod.name);
45
+ const module = await ws.modules.show(mod.name);
55
46
  return { name: module.name, cardKeyPrefix: module.cardKeyPrefix };
56
47
  } catch {
57
48
  return { name: mod.name, cardKeyPrefix: mod.name };
@@ -81,9 +72,9 @@ function sortTemplateCardsByRank(
81
72
  }));
82
73
  }
83
74
 
84
- export async function buildResourceTree(commands: CommandManager) {
85
- return commands.consistent(async () => {
86
- const project = await commands.showCmd.showProject();
75
+ export async function buildResourceTree(ws: Workspace) {
76
+ return ws.consistent(async () => {
77
+ const project = await ws.settings.info();
87
78
  const tree: unknown[] = [];
88
79
 
89
80
  const sortByDisplayName = (
@@ -95,7 +86,7 @@ export async function buildResourceTree(commands: CommandManager) {
95
86
  ),
96
87
  );
97
88
 
98
- const modules = await getModules(commands);
89
+ const modules = await getModules(ws);
99
90
 
100
91
  // General section first (single node with project + modules metadata)
101
92
  tree.push({
@@ -117,12 +108,12 @@ export async function buildResourceTree(commands: CommandManager) {
117
108
 
118
109
  if (resourceType === 'templates') {
119
110
  ({ rootResources, moduleResources } = await processTemplates(
120
- commands,
111
+ ws,
121
112
  project.prefix,
122
113
  ));
123
114
  } else {
124
115
  ({ rootResources, moduleResources } = await groupResourcesByPrefix(
125
- commands,
116
+ ws,
126
117
  resourceType,
127
118
  project.prefix,
128
119
  ));
@@ -200,7 +191,7 @@ function parseResourcePrefix(resource: string): {
200
191
  // Helper function to create resource node with all data from showResource
201
192
  // TODO: The types should be shared between backend and frontend
202
193
  async function createResourceNode(
203
- commands: CommandManager,
194
+ ws: Workspace,
204
195
  resourceType: ResourceFolderType,
205
196
  name: string,
206
197
  projectPrefix: string,
@@ -213,7 +204,7 @@ async function createResourceNode(
213
204
  children?: unknown[];
214
205
  readOnly?: boolean;
215
206
  }> {
216
- const resourceData = await commands.showCmd.showResource(name);
207
+ const resourceData = await ws.resources.show(name);
217
208
  const node: {
218
209
  id: string;
219
210
  type: ResourceFolderType;
@@ -302,12 +293,9 @@ function createCardNode(
302
293
  }
303
294
 
304
295
  // Helper function to process templates using templateTree query
305
- async function processTemplates(
306
- commands: CommandManager,
307
- projectPrefix: string,
308
- ) {
309
- const templates = await commands.showCmd.showResources('templates');
310
- const templateTree = await commands.showCmd.showAllTemplateCards();
296
+ async function processTemplates(ws: Workspace, projectPrefix: string) {
297
+ const templates = await ws.resources.list('templates');
298
+ const templateTree = await ws.cards.templateCards();
311
299
 
312
300
  const rootTemplates: { [templateName: string]: unknown[] } = {};
313
301
  const moduleTemplates: {
@@ -341,13 +329,7 @@ async function processTemplates(
341
329
 
342
330
  const rootResources = await Promise.all(
343
331
  Object.entries(rootTemplates).map(([templateName, cards]) =>
344
- createResourceNode(
345
- commands,
346
- 'templates',
347
- templateName,
348
- projectPrefix,
349
- cards,
350
- ),
332
+ createResourceNode(ws, 'templates', templateName, projectPrefix, cards),
351
333
  ),
352
334
  );
353
335
 
@@ -355,13 +337,7 @@ async function processTemplates(
355
337
  for (const [prefix, templates] of Object.entries(moduleTemplates)) {
356
338
  moduleResources[prefix] = await Promise.all(
357
339
  Object.entries(templates).map(([templateName, cards]) =>
358
- createResourceNode(
359
- commands,
360
- 'templates',
361
- templateName,
362
- projectPrefix,
363
- cards,
364
- ),
340
+ createResourceNode(ws, 'templates', templateName, projectPrefix, cards),
365
341
  ),
366
342
  );
367
343
  }
@@ -373,7 +349,7 @@ async function processTemplates(
373
349
  if (!rootResources.find((resource) => resource.name === template)) {
374
350
  rootResources.push(
375
351
  await createResourceNode(
376
- commands,
352
+ ws,
377
353
  'templates',
378
354
  template,
379
355
  projectPrefix,
@@ -392,7 +368,7 @@ async function processTemplates(
392
368
  ) {
393
369
  moduleResources[prefix].push(
394
370
  await createResourceNode(
395
- commands,
371
+ ws,
396
372
  'templates',
397
373
  template,
398
374
  projectPrefix,
@@ -408,14 +384,14 @@ async function processTemplates(
408
384
 
409
385
  // Helper function to group regular resources by prefix
410
386
  async function groupResourcesByPrefix(
411
- commands: CommandManager,
387
+ ws: Workspace,
412
388
  resourceType: ResourceFolderType,
413
389
  projectPrefix: string,
414
390
  ) {
415
- const resourceNames = await commands.showCmd.showResources(resourceType);
391
+ const resourceNames = await ws.resources.list(resourceType);
416
392
  const resources = await Promise.all(
417
393
  resourceNames.map((name: string) =>
418
- createResourceNode(commands, resourceType, name, projectPrefix),
394
+ createResourceNode(ws, resourceType, name, projectPrefix),
419
395
  ),
420
396
  );
421
397
 
@@ -439,35 +415,27 @@ async function groupResourcesByPrefix(
439
415
 
440
416
  /**
441
417
  * Delete a resource.
442
- * @param commands Command manager.
418
+ * @param ws Command manager.
443
419
  * @param resource Resource to delete.
444
420
  */
445
- export async function deleteResource(
446
- commands: CommandManager,
447
- resource: ResourceParams,
448
- ) {
449
- return commands.removeCmd.remove(
450
- resource.type.substring(
451
- 0,
452
- resource.type.length - 1,
453
- ) as RemovableResourceTypes,
421
+ export async function deleteResource(ws: Workspace, resource: ResourceParams) {
422
+ return ws.resources.remove(
454
423
  resourceNameToString(resource),
424
+ resource.type.substring(0, resource.type.length - 1),
455
425
  );
456
426
  }
457
427
 
458
428
  /**
459
429
  * Validate a single resource.
460
- * @param commands Command manager.
430
+ * @param ws Command manager.
461
431
  * @param resource Resource to validate.
462
432
  * @returns Validation result with errors and validity status.
463
433
  */
464
434
  export async function validateResource(
465
- commands: CommandManager,
435
+ ws: Workspace,
466
436
  resource: ValidateResourceParams,
467
437
  ) {
468
- const errors = await commands.consistent(() =>
469
- commands.validateCmd.validateResource(resource, commands.project),
470
- );
438
+ const errors = await ws.resources.validate(resource);
471
439
 
472
440
  return {
473
441
  errors: errors.split('\n\n').filter((error) => error !== ''),
@@ -476,13 +444,13 @@ export async function validateResource(
476
444
 
477
445
  /**
478
446
  * Lists the path params for every workflow resource in the project.
479
- * @param commands Command manager.
447
+ * @param ws Command manager.
480
448
  * @returns One `{ prefix, identifier }` entry per workflow resource.
481
449
  */
482
450
  export async function listWorkflowGraphParams(
483
- commands: CommandManager,
451
+ ws: Workspace,
484
452
  ): Promise<{ prefix: string; identifier: string }[]> {
485
- const workflows = await commands.showCmd.showResources('workflows');
453
+ const workflows = await ws.resources.list('workflows');
486
454
  return workflows.map((name) => {
487
455
  const { prefix, identifier } = resourceName(name);
488
456
  return { prefix, identifier };
@@ -501,15 +469,15 @@ export async function listWorkflowGraphParams(
501
469
  * card cannot be resolved.
502
470
  */
503
471
  export async function getWorkflowGraph(
504
- commands: CommandManager,
472
+ ws: Workspace,
505
473
  workflowName: string,
506
474
  cardKey?: string,
507
475
  ): Promise<string> {
508
- return commands.consistent(async () => {
476
+ return ws.consistent(async () => {
509
477
  try {
510
- await commands.showCmd.showResource(workflowName, 'workflows');
478
+ await ws.resources.show(workflowName, 'workflows');
511
479
  } catch (error) {
512
- if (error instanceof Error && error.message.includes('does not exist')) {
480
+ if (error instanceof ResourceNotFoundError) {
513
481
  throw new Error(`Workflow '${workflowName}' not found`, {
514
482
  cause: error,
515
483
  });
@@ -520,7 +488,7 @@ export async function getWorkflowGraph(
520
488
  if (cardKey) {
521
489
  let card;
522
490
  try {
523
- card = await commands.showCmd.showCardDetails(cardKey);
491
+ card = await ws.cards.details(cardKey);
524
492
  } catch (error) {
525
493
  throw new Error(`Card '${cardKey}' not found`, { cause: error });
526
494
  }
@@ -529,7 +497,7 @@ export async function getWorkflowGraph(
529
497
  }
530
498
  currentState = card.metadata.workflowState;
531
499
  }
532
- return commands.calculateCmd.runWorkflowGraph(workflowName, {
500
+ return ws.queries.runWorkflowGraph(workflowName, {
533
501
  currentState,
534
502
  });
535
503
  });
@@ -547,34 +515,31 @@ export async function getWorkflowGraph(
547
515
  * be resolved; any other error means the template or query failed to render.
548
516
  */
549
517
  export async function previewSkill(
550
- commands: CommandManager,
518
+ ws: Workspace,
551
519
  skillName: string,
552
520
  body: SkillPreviewBody,
553
521
  ): Promise<string> {
554
522
  const { cardKey, skillContent, skillQuery } = body;
555
- return commands.consistent(async () => {
523
+ return ws.consistent(async () => {
556
524
  try {
557
- await commands.showCmd.showResource(skillName, 'skills');
525
+ await ws.resources.show(skillName, 'skills');
558
526
  } catch (error) {
559
- if (error instanceof Error && error.message.includes('does not exist')) {
527
+ if (error instanceof ResourceNotFoundError) {
560
528
  throw new Error(`Skill '${skillName}' not found`, { cause: error });
561
529
  }
562
530
  throw error;
563
531
  }
564
532
  if (cardKey) {
565
533
  try {
566
- await commands.showCmd.showCardDetails(cardKey);
534
+ await ws.cards.details(cardKey);
567
535
  } catch (error) {
568
- if (
569
- error instanceof Error &&
570
- error.message.includes('does not exist')
571
- ) {
536
+ if (error instanceof CardNotFoundError) {
572
537
  throw new Error(`Card '${cardKey}' not found`, { cause: error });
573
538
  }
574
539
  throw error;
575
540
  }
576
541
  }
577
- return commands.showCmd.renderSkill(skillName, {
542
+ return ws.resources.skillPreview(skillName, {
578
543
  cardKey,
579
544
  skillContent,
580
545
  skillQuery,
@@ -587,14 +552,14 @@ export async function previewSkill(
587
552
  * This delegates to the data-handler mutation engine.
588
553
  */
589
554
  export async function updateResourceWithOperation(
590
- commands: CommandManager,
555
+ ws: Workspace,
591
556
  resource: ResourceParams,
592
557
  body: UpdateOperationBody,
593
558
  ) {
594
559
  const { updateKey, operation } = body;
595
- await commands.atomic(
560
+ await ws.atomic(
596
561
  () =>
597
- commands.updateCmd.apply({
562
+ ws.changes.apply({
598
563
  kind: 'edit',
599
564
  target: resource,
600
565
  updateKey,
@@ -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
 
14
4
  import { Hono } from 'hono';
15
5
  import * as skillService from './service.js';
@@ -50,10 +40,10 @@ router.post(
50
40
  requireRole(UserRole.Admin),
51
41
  zValidator('json', createSkillSchema),
52
42
  async (c) => {
53
- const commands = c.get('commands');
43
+ const ws = c.get('ws');
54
44
  const { identifier } = c.req.valid('json');
55
45
 
56
- await skillService.createSkill(commands, identifier);
46
+ await skillService.createSkill(ws, identifier);
57
47
  return c.json({ message: 'Skill created successfully' });
58
48
  },
59
49
  );
@@ -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
 
14
4
  import { z } from 'zod';
15
5
  import { identifierSchema } from '../../common/validationSchemas.js';
@@ -1,18 +1,8 @@
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
 
14
- import type { CommandManager } from '@cyberismo/data-handler';
4
+ import type { Workspace } from '@cyberismo/data-handler';
15
5
 
16
- export async function createSkill(commands: CommandManager, skillName: string) {
17
- await commands.createCmd.createSkill(skillName);
6
+ export async function createSkill(ws: Workspace, skillName: string) {
7
+ await ws.resources.create(skillName, 'skills', {});
18
8
  }
@@ -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
 
14
4
  import { Hono } from 'hono';
15
5
  import * as templateService from './service.js';
@@ -40,10 +30,10 @@ router.get('/', requireRole(UserRole.Reader), async (c) => {
40
30
  if (isSSGContext(c)) {
41
31
  return c.json([]);
42
32
  }
43
- const commands = c.get('commands');
33
+ const ws = c.get('ws');
44
34
 
45
35
  try {
46
- const response = await templateService.getTemplatesWithDetails(commands);
36
+ const response = await templateService.getTemplatesWithDetails(ws);
47
37
  return c.json(response);
48
38
  } catch (error) {
49
39
  return c.json(
@@ -85,10 +75,10 @@ router.post(
85
75
  requireRole(UserRole.Admin),
86
76
  zValidator('json', createTemplateSchema),
87
77
  async (c) => {
88
- const commands = c.get('commands');
78
+ const ws = c.get('ws');
89
79
  const { identifier } = c.req.valid('json');
90
80
 
91
- await templateService.createTemplate(commands, identifier);
81
+ await templateService.createTemplate(ws, identifier);
92
82
  return c.json({ message: 'Template created successfully' });
93
83
  },
94
84
  );
@@ -131,11 +121,11 @@ router.post(
131
121
  requireRole(UserRole.Admin),
132
122
  zValidator('json', addTemplateCardSchema),
133
123
  async (c) => {
134
- const commands = c.get('commands');
124
+ const ws = c.get('ws');
135
125
  const { template, cardType, parentKey, count } = c.req.valid('json');
136
126
 
137
127
  const added = await templateService.addTemplateCard(
138
- commands,
128
+ ws,
139
129
  template,
140
130
  cardType,
141
131
  parentKey,
@@ -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
 
14
4
  import { z } from 'zod';
15
5
  import { identifierSchema } from '../../common/validationSchemas.js';
@@ -1,36 +1,23 @@
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
 
14
- import type { CommandManager } from '@cyberismo/data-handler';
4
+ import type { Workspace } from '@cyberismo/data-handler';
15
5
  import { resourceName } from '@cyberismo/data-handler';
16
6
 
17
- export async function getTemplatesWithDetails(commands: CommandManager) {
18
- const response = await commands.showCmd.showTemplatesWithDetails();
7
+ export async function getTemplatesWithDetails(ws: Workspace) {
8
+ const response = await ws.resources.contents('templates');
19
9
  if (!response) {
20
10
  throw new Error('No templates found');
21
11
  }
22
12
  return response;
23
13
  }
24
14
 
25
- export async function createTemplate(
26
- commands: CommandManager,
27
- templateName: string,
28
- ) {
29
- await commands.createCmd.createTemplate(templateName, '');
15
+ export async function createTemplate(ws: Workspace, templateName: string) {
16
+ await ws.resources.create(templateName, 'templates', {});
30
17
  }
31
18
 
32
19
  export async function addTemplateCard(
33
- commands: CommandManager,
20
+ ws: Workspace,
34
21
  template: string,
35
22
  cardType: string,
36
23
  parentKey?: string,
@@ -40,7 +27,7 @@ export async function addTemplateCard(
40
27
  if (type !== 'templates') {
41
28
  throw new Error('Invalid template resource');
42
29
  }
43
- const added = await commands.createCmd.addCards(
30
+ const added = await ws.cards.addToTemplate(
44
31
  cardType,
45
32
  identifier,
46
33
  parentKey,
@@ -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
 
14
4
  import { Hono } from 'hono';
15
5
  import * as treeService from './service.js';
@@ -35,12 +25,12 @@ const router = new Hono();
35
25
  * description: project_path not set or other internal error
36
26
  */
37
27
  router.get('/', requireRole(UserRole.Reader), async (c: AppContext) => {
38
- const commands = c.get('commands');
28
+ const ws = c.get('ws');
39
29
  const tree = c.get('tree');
40
30
 
41
31
  try {
42
32
  const response = await treeService.getCardTree(
43
- commands,
33
+ ws,
44
34
  isSSGContext(c),
45
35
  tree?.cardKey,
46
36
  tree?.recursive,
@@ -1,35 +1,24 @@
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
 
14
- import type { CommandManager } from '@cyberismo/data-handler';
4
+ import type { Workspace } from '@cyberismo/data-handler';
15
5
 
16
6
  /**
17
7
  * Returns the card tree of the project
18
- * @param commands command manager used for the query
8
+ * @param ws command manager used for the query
19
9
  * @param isSsg whether the context is static site generation
20
10
  * @param cardKey optional card key to start the tree from
21
11
  * @param recursive if false, includes only the given card. Otherwise, includes all child cards recursively.
22
12
  * @returns
23
13
  */
24
14
  export async function getCardTree(
25
- commands: CommandManager,
15
+ ws: Workspace,
26
16
  isSsg: boolean,
27
17
  cardKey?: string,
28
18
  recursive?: boolean,
29
- ): ReturnType<typeof commands.calculateCmd.runQuery> {
30
- return commands.calculateCmd.runQuery(
31
- 'tree',
32
- isSsg ? 'exportedSite' : 'localApp',
33
- { cardKey, recursive },
34
- );
19
+ ): ReturnType<typeof ws.queries.runQuery> {
20
+ return ws.queries.runQuery('tree', isSsg ? 'exportedSite' : 'localApp', {
21
+ cardKey,
22
+ recursive,
23
+ });
35
24
  }
@@ -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
 
14
4
  import { Hono } from 'hono';
15
5
  import * as workflowService from './service.js';
@@ -50,10 +40,10 @@ router.post(
50
40
  requireRole(UserRole.Admin),
51
41
  zValidator('json', createWorkflowSchema),
52
42
  async (c) => {
53
- const commands = c.get('commands');
43
+ const ws = c.get('ws');
54
44
  const { identifier } = c.req.valid('json');
55
45
 
56
- await workflowService.createWorkflow(commands, identifier);
46
+ await workflowService.createWorkflow(ws, identifier);
57
47
  return c.json({ message: 'Workflow created successfully' });
58
48
  },
59
49
  );