@raclettejs/core 0.1.0 → 0.1.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 (406) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +4 -2
  3. package/package.json +1 -1
  4. package/services/backend/package.json +1 -3
  5. package/services/frontend/src/orchestrator/components/chip/UserChip.vue +1 -1
  6. package/services/frontend/src/orchestrator/components/menu/UserNotifications.vue +4 -2
  7. package/services/frontend/src/orchestrator/setup/i18n.ts +251 -157
  8. package/dist/cli.js.map +0 -7
  9. package/dist/index.js.map +0 -7
  10. package/services/.DS_Store +0 -0
  11. package/services/backend/.DS_Store +0 -0
  12. package/services/backend/.env +0 -5
  13. package/services/backend/.vscode/launch.json +0 -18
  14. package/services/backend/dist/src/app.d.ts +0 -9
  15. package/services/backend/dist/src/app.js +0 -164
  16. package/services/backend/dist/src/core/backgroundTasks/taskManager.d.ts +0 -12
  17. package/services/backend/dist/src/core/backgroundTasks/taskManager.js +0 -135
  18. package/services/backend/dist/src/core/backgroundTasks/taskManagerTypes.d.ts +0 -19
  19. package/services/backend/dist/src/core/backgroundTasks/taskManagerTypes.js +0 -2
  20. package/services/backend/dist/src/core/backgroundTasks/toadSchedulerTypes.d.ts +0 -7
  21. package/services/backend/dist/src/core/backgroundTasks/toadSchedulerTypes.js +0 -1
  22. package/services/backend/dist/src/core/config/configService.d.ts +0 -38
  23. package/services/backend/dist/src/core/config/configService.js +0 -98
  24. package/services/backend/dist/src/core/config/configTypes.d.ts +0 -33
  25. package/services/backend/dist/src/core/config/configTypes.js +0 -5
  26. package/services/backend/dist/src/core/contracting/contractRegistrar.d.ts +0 -13
  27. package/services/backend/dist/src/core/contracting/contractRegistrar.js +0 -83
  28. package/services/backend/dist/src/core/contracting/contractTypes.d.ts +0 -18
  29. package/services/backend/dist/src/core/contracting/contractTypes.js +0 -1
  30. package/services/backend/dist/src/core/crud/crudRegistrar.d.ts +0 -6
  31. package/services/backend/dist/src/core/crud/crudRegistrar.js +0 -16
  32. package/services/backend/dist/src/core/crud/crudTypes.d.ts +0 -8
  33. package/services/backend/dist/src/core/crud/crudTypes.js +0 -1
  34. package/services/backend/dist/src/core/eventBus/eventBusEventMap.d.ts +0 -65
  35. package/services/backend/dist/src/core/eventBus/eventBusEventMap.js +0 -64
  36. package/services/backend/dist/src/core/eventBus/index.d.ts +0 -3
  37. package/services/backend/dist/src/core/eventBus/index.js +0 -7
  38. package/services/backend/dist/src/core/events/eventEmitter.d.ts +0 -13
  39. package/services/backend/dist/src/core/events/eventEmitter.js +0 -120
  40. package/services/backend/dist/src/core/http/headers.d.ts +0 -3
  41. package/services/backend/dist/src/core/http/headers.js +0 -22
  42. package/services/backend/dist/src/core/http/httpService.d.ts +0 -4
  43. package/services/backend/dist/src/core/http/httpService.js +0 -28
  44. package/services/backend/dist/src/core/http/httpTypes.d.ts +0 -15
  45. package/services/backend/dist/src/core/http/httpTypes.js +0 -1
  46. package/services/backend/dist/src/core/http/request-params.plugin.d.ts +0 -2
  47. package/services/backend/dist/src/core/http/request-params.plugin.js +0 -34
  48. package/services/backend/dist/src/core/payload/payloadRegistrar.d.ts +0 -45
  49. package/services/backend/dist/src/core/payload/payloadRegistrar.js +0 -121
  50. package/services/backend/dist/src/core/payload/payloadTypes.d.ts +0 -42
  51. package/services/backend/dist/src/core/payload/payloadTypes.js +0 -1
  52. package/services/backend/dist/src/core/pluginSystem/configGenerator/generatorTypes.d.ts +0 -49
  53. package/services/backend/dist/src/core/pluginSystem/configGenerator/generatorTypes.js +0 -1
  54. package/services/backend/dist/src/core/pluginSystem/configGenerator/index.d.ts +0 -14
  55. package/services/backend/dist/src/core/pluginSystem/configGenerator/index.js +0 -342
  56. package/services/backend/dist/src/core/pluginSystem/pluginFastifyInstance.d.ts +0 -3
  57. package/services/backend/dist/src/core/pluginSystem/pluginFastifyInstance.js +0 -161
  58. package/services/backend/dist/src/core/pluginSystem/pluginLoader.d.ts +0 -5
  59. package/services/backend/dist/src/core/pluginSystem/pluginLoader.js +0 -317
  60. package/services/backend/dist/src/core/pluginSystem/pluginTypes.d.ts +0 -51
  61. package/services/backend/dist/src/core/pluginSystem/pluginTypes.js +0 -6
  62. package/services/backend/dist/src/core/sockets/createSystemEventHandlers.d.ts +0 -20
  63. package/services/backend/dist/src/core/sockets/createSystemEventHandlers.js +0 -74
  64. package/services/backend/dist/src/core/sockets/index.d.ts +0 -2
  65. package/services/backend/dist/src/core/sockets/index.js +0 -65
  66. package/services/backend/dist/src/core/sockets/socketManager.d.ts +0 -3
  67. package/services/backend/dist/src/core/sockets/socketManager.js +0 -125
  68. package/services/backend/dist/src/core/sockets/socketTypes.d.ts +0 -32
  69. package/services/backend/dist/src/core/sockets/socketTypes.js +0 -1
  70. package/services/backend/dist/src/core/validation/schemaGenerator.d.ts +0 -6
  71. package/services/backend/dist/src/core/validation/schemaGenerator.js +0 -242
  72. package/services/backend/dist/src/core/validation/schemaTypes.d.ts +0 -15
  73. package/services/backend/dist/src/core/validation/schemaTypes.js +0 -1
  74. package/services/backend/dist/src/core/validation/sharedSchemas.d.ts +0 -8
  75. package/services/backend/dist/src/core/validation/sharedSchemas.js +0 -7
  76. package/services/backend/dist/src/corePlugins/raclette__core/client/generated-config.d.ts +0 -304
  77. package/services/backend/dist/src/corePlugins/raclette__core/client/generated-config.js +0 -359
  78. package/services/backend/dist/src/corePlugins/raclette__core/client/index.d.ts +0 -2
  79. package/services/backend/dist/src/corePlugins/raclette__core/client/index.js +0 -2
  80. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/account.model.d.ts +0 -3
  81. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/account.model.js +0 -33
  82. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/account.schema.d.ts +0 -36
  83. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/account.schema.js +0 -29
  84. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/account.service.d.ts +0 -74
  85. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/account.service.js +0 -242
  86. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/events/index.d.ts +0 -3
  87. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/events/index.js +0 -31
  88. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/helpers/crud.d.ts +0 -2
  89. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/helpers/crud.js +0 -9
  90. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/helpers/payload.d.ts +0 -4
  91. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/helpers/payload.js +0 -13
  92. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/index.d.ts +0 -16
  93. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/index.js +0 -48
  94. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/index.d.ts +0 -3
  95. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/index.js +0 -15
  96. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.get.d.ts +0 -24
  97. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.get.js +0 -33
  98. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.getAll.d.ts +0 -15
  99. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.getAll.js +0 -25
  100. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.hardDelete.d.ts +0 -26
  101. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.hardDelete.js +0 -32
  102. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.patch.d.ts +0 -39
  103. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.patch.js +0 -33
  104. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.post.d.ts +0 -30
  105. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.post.js +0 -27
  106. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.remove.d.ts +0 -25
  107. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.remove.js +0 -31
  108. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/composition.model.d.ts +0 -3
  109. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/composition.model.js +0 -92
  110. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/composition.schema.d.ts +0 -128
  111. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/composition.schema.js +0 -97
  112. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/composition.service.d.ts +0 -63
  113. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/composition.service.js +0 -212
  114. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/events/index.d.ts +0 -3
  115. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/events/index.js +0 -22
  116. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/helpers/crud.d.ts +0 -2
  117. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/helpers/crud.js +0 -10
  118. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/helpers/payload.d.ts +0 -4
  119. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/helpers/payload.js +0 -11
  120. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/index.d.ts +0 -46
  121. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/index.js +0 -51
  122. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/index.d.ts +0 -3
  123. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/index.js +0 -15
  124. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.get.d.ts +0 -24
  125. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.get.js +0 -33
  126. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.getAll.d.ts +0 -15
  127. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.getAll.js +0 -25
  128. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.hardDelete.d.ts +0 -25
  129. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.hardDelete.js +0 -31
  130. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.patch.d.ts +0 -49
  131. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.patch.js +0 -33
  132. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.post.d.ts +0 -40
  133. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.post.js +0 -27
  134. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.remove.d.ts +0 -25
  135. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.remove.js +0 -31
  136. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/events/index.d.ts +0 -3
  137. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/events/index.js +0 -22
  138. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/helpers/crud.d.ts +0 -2
  139. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/helpers/crud.js +0 -9
  140. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/helpers/payload.d.ts +0 -4
  141. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/helpers/payload.js +0 -11
  142. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/index.d.ts +0 -16
  143. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/index.js +0 -48
  144. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/interactionLink.model.d.ts +0 -3
  145. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/interactionLink.model.js +0 -61
  146. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/interactionLink.schema.d.ts +0 -86
  147. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/interactionLink.schema.js +0 -74
  148. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/interactionLink.service.d.ts +0 -79
  149. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/interactionLink.service.js +0 -272
  150. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/index.d.ts +0 -3
  151. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/index.js +0 -15
  152. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.get.d.ts +0 -24
  153. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.get.js +0 -33
  154. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.getAll.d.ts +0 -15
  155. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.getAll.js +0 -25
  156. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.hardDelete.d.ts +0 -25
  157. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.hardDelete.js +0 -31
  158. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.patch.d.ts +0 -39
  159. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.patch.js +0 -33
  160. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.post.d.ts +0 -30
  161. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.post.js +0 -27
  162. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.remove.d.ts +0 -25
  163. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.remove.js +0 -31
  164. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/events/index.d.ts +0 -3
  165. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/events/index.js +0 -31
  166. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/helpers/crud.d.ts +0 -2
  167. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/helpers/crud.js +0 -9
  168. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/helpers/payload.d.ts +0 -4
  169. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/helpers/payload.js +0 -13
  170. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/index.d.ts +0 -17
  171. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/index.js +0 -49
  172. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/project.model.d.ts +0 -3
  173. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/project.model.js +0 -30
  174. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/project.schema.d.ts +0 -61
  175. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/project.schema.js +0 -65
  176. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/project.service.d.ts +0 -68
  177. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/project.service.js +0 -230
  178. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/index.d.ts +0 -3
  179. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/index.js +0 -15
  180. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.get.d.ts +0 -24
  181. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.get.js +0 -33
  182. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.getAll.d.ts +0 -15
  183. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.getAll.js +0 -28
  184. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.hardDelete.d.ts +0 -26
  185. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.hardDelete.js +0 -32
  186. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.patch.d.ts +0 -38
  187. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.patch.js +0 -33
  188. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.post.d.ts +0 -25
  189. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.post.js +0 -27
  190. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.remove.d.ts +0 -25
  191. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.remove.js +0 -31
  192. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/events/index.d.ts +0 -3
  193. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/events/index.js +0 -39
  194. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/helpers/crud.d.ts +0 -2
  195. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/helpers/crud.js +0 -9
  196. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/helpers/payload.d.ts +0 -4
  197. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/helpers/payload.js +0 -13
  198. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/index.d.ts +0 -17
  199. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/index.js +0 -49
  200. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/index.d.ts +0 -3
  201. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/index.js +0 -15
  202. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.get.d.ts +0 -24
  203. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.get.js +0 -31
  204. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.getAll.d.ts +0 -15
  205. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.getAll.js +0 -28
  206. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.hardDelete.d.ts +0 -26
  207. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.hardDelete.js +0 -32
  208. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.patch.d.ts +0 -39
  209. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.patch.js +0 -34
  210. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.post.d.ts +0 -40
  211. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.post.js +0 -35
  212. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.remove.d.ts +0 -26
  213. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.remove.js +0 -32
  214. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/tag.model.d.ts +0 -3
  215. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/tag.model.js +0 -74
  216. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/tag.schema.d.ts +0 -68
  217. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/tag.schema.js +0 -71
  218. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/tag.service.d.ts +0 -65
  219. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/tag.service.js +0 -232
  220. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/events/index.d.ts +0 -3
  221. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/events/index.js +0 -31
  222. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/helpers/crud.d.ts +0 -2
  223. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/helpers/crud.js +0 -9
  224. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/helpers/payload.d.ts +0 -4
  225. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/helpers/payload.js +0 -11
  226. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/index.d.ts +0 -17
  227. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/index.js +0 -51
  228. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/index.d.ts +0 -3
  229. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/index.js +0 -15
  230. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.get.d.ts +0 -33
  231. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.get.js +0 -33
  232. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.getAll.d.ts +0 -25
  233. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.getAll.js +0 -35
  234. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.patch.d.ts +0 -43
  235. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.patch.js +0 -37
  236. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.patchLastProject.d.ts +0 -23
  237. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.patchLastProject.js +0 -29
  238. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.post.d.ts +0 -34
  239. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.post.js +0 -28
  240. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.remove.d.ts +0 -26
  241. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.remove.js +0 -35
  242. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/user.model.d.ts +0 -3
  243. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/user.model.js +0 -145
  244. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/user.schema.d.ts +0 -120
  245. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/user.schema.js +0 -109
  246. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/user.service.d.ts +0 -69
  247. package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/user.service.js +0 -225
  248. package/services/backend/dist/src/corePlugins/raclette__core/server/index.d.ts +0 -3
  249. package/services/backend/dist/src/corePlugins/raclette__core/server/index.js +0 -32
  250. package/services/backend/dist/src/domains/index.d.ts +0 -3
  251. package/services/backend/dist/src/domains/index.js +0 -8
  252. package/services/backend/dist/src/domains/system/index.d.ts +0 -3
  253. package/services/backend/dist/src/domains/system/index.js +0 -5
  254. package/services/backend/dist/src/domains/system/routes/index.d.ts +0 -3
  255. package/services/backend/dist/src/domains/system/routes/index.js +0 -13
  256. package/services/backend/dist/src/domains/system/routes/route.admin.redis.d.ts +0 -47
  257. package/services/backend/dist/src/domains/system/routes/route.admin.redis.js +0 -81
  258. package/services/backend/dist/src/domains/system/routes/route.deploy.d.ts +0 -14
  259. package/services/backend/dist/src/domains/system/routes/route.deploy.js +0 -20
  260. package/services/backend/dist/src/domains/system/routes/route.user.checkToken.d.ts +0 -12
  261. package/services/backend/dist/src/domains/system/routes/route.user.checkToken.js +0 -40
  262. package/services/backend/dist/src/domains/system/routes/route.user.login.d.ts +0 -44
  263. package/services/backend/dist/src/domains/system/routes/route.user.login.js +0 -163
  264. package/services/backend/dist/src/helpers/index.d.ts +0 -11
  265. package/services/backend/dist/src/helpers/index.js +0 -13
  266. package/services/backend/dist/src/index.d.ts +0 -3
  267. package/services/backend/dist/src/index.js +0 -3
  268. package/services/backend/dist/src/modules/authentication/index.d.ts +0 -4
  269. package/services/backend/dist/src/modules/authentication/index.js +0 -80
  270. package/services/backend/dist/src/modules/cache/cacheManager.d.ts +0 -6
  271. package/services/backend/dist/src/modules/cache/cacheManager.js +0 -131
  272. package/services/backend/dist/src/modules/cache/cacheTypes.d.ts +0 -102
  273. package/services/backend/dist/src/modules/cache/cacheTypes.js +0 -1
  274. package/services/backend/dist/src/modules/cache/providers/redis/redisConfig.d.ts +0 -11
  275. package/services/backend/dist/src/modules/cache/providers/redis/redisConfig.js +0 -17
  276. package/services/backend/dist/src/modules/cache/providers/redis/redisConnection.d.ts +0 -4
  277. package/services/backend/dist/src/modules/cache/providers/redis/redisConnection.js +0 -65
  278. package/services/backend/dist/src/modules/cache/providers/redis/redisTypes.d.ts +0 -18
  279. package/services/backend/dist/src/modules/cache/providers/redis/redisTypes.js +0 -1
  280. package/services/backend/dist/src/modules/database/providers/mongodb/mongoConnection.d.ts +0 -4
  281. package/services/backend/dist/src/modules/database/providers/mongodb/mongoConnection.js +0 -21
  282. package/services/backend/dist/src/modules/database/providers/mongodb/service.d.ts +0 -7
  283. package/services/backend/dist/src/modules/database/providers/mongodb/service.js +0 -1
  284. package/services/backend/dist/src/server.d.ts +0 -1
  285. package/services/backend/dist/src/server.js +0 -98
  286. package/services/backend/dist/src/shared/helper/mongoHelper.d.ts +0 -3
  287. package/services/backend/dist/src/shared/helper/mongoHelper.js +0 -59
  288. package/services/backend/dist/src/shared/helper/pluginHelper.d.ts +0 -19
  289. package/services/backend/dist/src/shared/helper/pluginHelper.js +0 -33
  290. package/services/backend/dist/src/shared/schemas/core/Account.schema.d.ts +0 -63
  291. package/services/backend/dist/src/shared/schemas/core/Account.schema.js +0 -74
  292. package/services/backend/dist/src/shared/schemas/core/Composition.schema.d.ts +0 -103
  293. package/services/backend/dist/src/shared/schemas/core/Composition.schema.js +0 -132
  294. package/services/backend/dist/src/shared/schemas/core/CompositionCreate.schema.d.ts +0 -82
  295. package/services/backend/dist/src/shared/schemas/core/CompositionCreate.schema.js +0 -105
  296. package/services/backend/dist/src/shared/schemas/core/CompositionUpdate.schema.d.ts +0 -78
  297. package/services/backend/dist/src/shared/schemas/core/CompositionUpdate.schema.js +0 -95
  298. package/services/backend/dist/src/shared/schemas/core/InteractionLink.schema.d.ts +0 -84
  299. package/services/backend/dist/src/shared/schemas/core/InteractionLink.schema.js +0 -97
  300. package/services/backend/dist/src/shared/schemas/core/InteractionLinkCreate.schema.d.ts +0 -63
  301. package/services/backend/dist/src/shared/schemas/core/InteractionLinkCreate.schema.js +0 -70
  302. package/services/backend/dist/src/shared/schemas/core/InteractionLinkUpdate.schema.d.ts +0 -63
  303. package/services/backend/dist/src/shared/schemas/core/InteractionLinkUpdate.schema.js +0 -70
  304. package/services/backend/dist/src/shared/schemas/core/Project.schema.d.ts +0 -53
  305. package/services/backend/dist/src/shared/schemas/core/Project.schema.js +0 -58
  306. package/services/backend/dist/src/shared/schemas/core/ProjectCreate.schema.d.ts +0 -41
  307. package/services/backend/dist/src/shared/schemas/core/ProjectCreate.schema.js +0 -41
  308. package/services/backend/dist/src/shared/schemas/core/ProjectUpdate.schema.d.ts +0 -38
  309. package/services/backend/dist/src/shared/schemas/core/ProjectUpdate.schema.js +0 -38
  310. package/services/backend/dist/src/shared/schemas/core/Tag.schema.d.ts +0 -68
  311. package/services/backend/dist/src/shared/schemas/core/Tag.schema.js +0 -81
  312. package/services/backend/dist/src/shared/schemas/core/TagCreate.schema.d.ts +0 -52
  313. package/services/backend/dist/src/shared/schemas/core/TagCreate.schema.js +0 -60
  314. package/services/backend/dist/src/shared/schemas/core/TagUpdate.schema.d.ts +0 -47
  315. package/services/backend/dist/src/shared/schemas/core/TagUpdate.schema.js +0 -55
  316. package/services/backend/dist/src/shared/schemas/core/Trigger.schema.d.ts +0 -25
  317. package/services/backend/dist/src/shared/schemas/core/Trigger.schema.js +0 -27
  318. package/services/backend/dist/src/shared/schemas/core/User.schema.d.ts +0 -161
  319. package/services/backend/dist/src/shared/schemas/core/User.schema.js +0 -185
  320. package/services/backend/dist/src/shared/schemas/core/UserCreate.schema.d.ts +0 -59
  321. package/services/backend/dist/src/shared/schemas/core/UserCreate.schema.js +0 -67
  322. package/services/backend/dist/src/shared/schemas/core/UserUpdate.schema.d.ts +0 -52
  323. package/services/backend/dist/src/shared/schemas/core/UserUpdate.schema.js +0 -52
  324. package/services/backend/dist/src/shared/schemas/core/Widget.schema.d.ts +0 -25
  325. package/services/backend/dist/src/shared/schemas/core/Widget.schema.js +0 -29
  326. package/services/backend/dist/src/shared/schemas/core/WidgetLayout.schema.d.ts +0 -34
  327. package/services/backend/dist/src/shared/schemas/core/WidgetLayout.schema.js +0 -41
  328. package/services/backend/dist/src/shared/types/core/Account.types.d.ts +0 -19
  329. package/services/backend/dist/src/shared/types/core/Account.types.js +0 -8
  330. package/services/backend/dist/src/shared/types/core/Composition.types.d.ts +0 -31
  331. package/services/backend/dist/src/shared/types/core/Composition.types.js +0 -8
  332. package/services/backend/dist/src/shared/types/core/CompositionCreate.types.d.ts +0 -25
  333. package/services/backend/dist/src/shared/types/core/CompositionCreate.types.js +0 -8
  334. package/services/backend/dist/src/shared/types/core/CompositionUpdate.types.d.ts +0 -25
  335. package/services/backend/dist/src/shared/types/core/CompositionUpdate.types.js +0 -8
  336. package/services/backend/dist/src/shared/types/core/InteractionLink.types.d.ts +0 -25
  337. package/services/backend/dist/src/shared/types/core/InteractionLink.types.js +0 -8
  338. package/services/backend/dist/src/shared/types/core/InteractionLinkCreate.types.d.ts +0 -19
  339. package/services/backend/dist/src/shared/types/core/InteractionLinkCreate.types.js +0 -8
  340. package/services/backend/dist/src/shared/types/core/InteractionLinkUpdate.types.d.ts +0 -19
  341. package/services/backend/dist/src/shared/types/core/InteractionLinkUpdate.types.js +0 -8
  342. package/services/backend/dist/src/shared/types/core/Project.types.d.ts +0 -18
  343. package/services/backend/dist/src/shared/types/core/Project.types.js +0 -8
  344. package/services/backend/dist/src/shared/types/core/ProjectCreate.types.d.ts +0 -15
  345. package/services/backend/dist/src/shared/types/core/ProjectCreate.types.js +0 -8
  346. package/services/backend/dist/src/shared/types/core/ProjectUpdate.types.d.ts +0 -15
  347. package/services/backend/dist/src/shared/types/core/ProjectUpdate.types.js +0 -8
  348. package/services/backend/dist/src/shared/types/core/Tag.types.d.ts +0 -21
  349. package/services/backend/dist/src/shared/types/core/Tag.types.js +0 -8
  350. package/services/backend/dist/src/shared/types/core/TagCreate.types.d.ts +0 -17
  351. package/services/backend/dist/src/shared/types/core/TagCreate.types.js +0 -8
  352. package/services/backend/dist/src/shared/types/core/TagUpdate.types.d.ts +0 -17
  353. package/services/backend/dist/src/shared/types/core/TagUpdate.types.js +0 -8
  354. package/services/backend/dist/src/shared/types/core/Trigger.types.d.ts +0 -11
  355. package/services/backend/dist/src/shared/types/core/Trigger.types.js +0 -8
  356. package/services/backend/dist/src/shared/types/core/User.types.d.ts +0 -50
  357. package/services/backend/dist/src/shared/types/core/User.types.js +0 -8
  358. package/services/backend/dist/src/shared/types/core/UserCreate.types.d.ts +0 -22
  359. package/services/backend/dist/src/shared/types/core/UserCreate.types.js +0 -8
  360. package/services/backend/dist/src/shared/types/core/UserUpdate.types.d.ts +0 -21
  361. package/services/backend/dist/src/shared/types/core/UserUpdate.types.js +0 -8
  362. package/services/backend/dist/src/shared/types/core/Widget.types.d.ts +0 -14
  363. package/services/backend/dist/src/shared/types/core/Widget.types.js +0 -8
  364. package/services/backend/dist/src/shared/types/core/WidgetLayout.types.d.ts +0 -17
  365. package/services/backend/dist/src/shared/types/core/WidgetLayout.types.js +0 -8
  366. package/services/backend/dist/src/shared/types/core/index.d.ts +0 -26
  367. package/services/backend/dist/src/shared/types/core/index.js +0 -8
  368. package/services/backend/dist/src/shared/types/dataTypes/index.d.ts +0 -5
  369. package/services/backend/dist/src/shared/types/dataTypes/index.js +0 -6
  370. package/services/backend/dist/src/shared/types/dataTypes/tags.d.ts +0 -12
  371. package/services/backend/dist/src/shared/types/dataTypes/tags.js +0 -17
  372. package/services/backend/dist/src/shared/types/global/api.d.ts +0 -10
  373. package/services/backend/dist/src/shared/types/global/api.js +0 -1
  374. package/services/backend/dist/src/shared/types/global/search.d.ts +0 -7
  375. package/services/backend/dist/src/shared/types/global/search.js +0 -13
  376. package/services/backend/dist/src/shared/types/index.d.ts +0 -9
  377. package/services/backend/dist/src/shared/types/index.js +0 -8
  378. package/services/backend/dist/src/shared/types/plugins/index.d.ts +0 -8
  379. package/services/backend/dist/src/shared/types/plugins/index.js +0 -8
  380. package/services/backend/dist/src/types/index.d.ts +0 -12
  381. package/services/backend/dist/src/types/index.js +0 -12
  382. package/services/backend/dist/src/utils/errors.d.ts +0 -16
  383. package/services/backend/dist/src/utils/errors.js +0 -28
  384. package/services/backend/dist/src/utils/index.d.ts +0 -2
  385. package/services/backend/dist/src/utils/index.js +0 -2
  386. package/services/backend/dist/src/utils/request.utils.d.ts +0 -8
  387. package/services/backend/dist/src/utils/request.utils.js +0 -12
  388. package/services/backend/dist/types/index.d.ts +0 -3
  389. package/services/backend/dist/types/index.js +0 -2
  390. package/services/backend/src/.DS_Store +0 -0
  391. package/services/backend/src/core/.DS_Store +0 -0
  392. package/services/backend/src/core/pluginSystem/.DS_Store +0 -0
  393. package/services/backend/src/domains/.DS_Store +0 -0
  394. package/services/backend/src/domains/system/.DS_Store +0 -0
  395. package/services/backend/src/ssh-keys/krake +0 -8
  396. package/services/backend/src/ssh-keys/krake.pub +0 -1
  397. package/services/frontend/.DS_Store +0 -0
  398. package/services/frontend/src/.DS_Store +0 -0
  399. package/services/frontend/src/core/.DS_Store +0 -0
  400. package/services/frontend/src/core/lib/.DS_Store +0 -0
  401. package/services/frontend/src/orchestrator/.DS_Store +0 -0
  402. package/services/frontend/src/orchestrator/assets/fonts/.DS_Store +0 -0
  403. package/services/frontend/src/orchestrator/assets/styles/.DS_Store +0 -0
  404. package/services/frontend/src/orchestrator/components/.DS_Store +0 -0
  405. package/services/frontend/src/orchestrator/components/utils/.DS_Store +0 -0
  406. package/services/frontend/src/orchestrator/composables/.DS_Store +0 -0
@@ -1,342 +0,0 @@
1
- import fs from "fs-extra";
2
- import path from "path";
3
- import eventMap from "../../eventBus/eventBusEventMap.js";
4
- // ========================================
5
- // Registry Class (State Management)
6
- // ========================================
7
- class FrontendConfigRegistry {
8
- static instance;
9
- registrations = new Map();
10
- trackedRoutes = [];
11
- isGenerationPending = false;
12
- fastifyInstance = null;
13
- isTrackingSetup = false;
14
- static getInstance = () => {
15
- if (!FrontendConfigRegistry.instance) {
16
- FrontendConfigRegistry.instance = new FrontendConfigRegistry();
17
- }
18
- return FrontendConfigRegistry.instance;
19
- };
20
- registerPlugin = (pluginData, options) => {
21
- const registration = {
22
- pluginName: pluginData.pluginName,
23
- author: pluginData.author,
24
- pluginKey: pluginData.key,
25
- pluginPath: pluginData.absolutePath,
26
- routePrefix: pluginData.routePrefix,
27
- entityMapping: options?.entityMapping || {},
28
- customConfig: options?.customConfig,
29
- registeredAt: Date.now(),
30
- };
31
- this.registrations.set(registration.pluginKey, registration);
32
- this.isGenerationPending = true;
33
- };
34
- setFastifyInstance = (fastify) => {
35
- this.fastifyInstance = fastify;
36
- if (!this.isTrackingSetup) {
37
- this.setupRouteTracking(fastify);
38
- this.isTrackingSetup = true;
39
- }
40
- if (fastify.log) {
41
- fastify.log.info("Fastify instance registered for frontend generation with route tracking");
42
- }
43
- };
44
- setupRouteTracking = (fastify) => {
45
- if (fastify.log) {
46
- fastify.log.info("Setting up route tracking for frontend generation");
47
- }
48
- fastify.addHook("onRoute", (routeOptions) => {
49
- if (routeOptions.url &&
50
- routeOptions.url !== "" &&
51
- routeOptions.url !== "/*" &&
52
- !Array.isArray(routeOptions.method) &&
53
- routeOptions.method.toUpperCase() !== "HEAD") {
54
- const trackedRoute = {
55
- method: Array.isArray(routeOptions.method)
56
- ? routeOptions.method[0]
57
- : routeOptions.method,
58
- url: routeOptions.url,
59
- routePath: routeOptions.url,
60
- config: routeOptions.config,
61
- schema: routeOptions.schema,
62
- handler: routeOptions.handler,
63
- routePrefix: routeOptions.prefix,
64
- };
65
- this.trackedRoutes.push(trackedRoute);
66
- }
67
- });
68
- fastify.addHook("onReady", async () => {
69
- if (fastify.log) {
70
- fastify.log.debug(`Route tracking complete. Tracked ${this.trackedRoutes.length} routes`);
71
- }
72
- });
73
- };
74
- // Getters
75
- isReadyForGeneration = () => this.fastifyInstance !== null &&
76
- this.isGenerationPending &&
77
- this.registrations.size > 0;
78
- getRegistrations = () => Array.from(this.registrations.values());
79
- getTrackedRoutes = () => this.trackedRoutes;
80
- getFastifyInstance = () => this.fastifyInstance;
81
- // State management
82
- markGenerationCompleted = () => {
83
- this.isGenerationPending = false;
84
- };
85
- reset = () => {
86
- this.registrations.clear();
87
- this.trackedRoutes = [];
88
- this.fastifyInstance = null;
89
- this.isGenerationPending = false;
90
- this.isTrackingSetup = false;
91
- };
92
- }
93
- // ========================================
94
- // Plugin Registration Functions (Called by Plugins)
95
- // ========================================
96
- export const registerPluginForFrontendGeneration = (pluginOptions, options) => {
97
- const registry = FrontendConfigRegistry.getInstance();
98
- registry.registerPlugin(pluginOptions, options);
99
- };
100
- export const setFastifyInstanceForGeneration = (fastify) => {
101
- const registry = FrontendConfigRegistry.getInstance();
102
- registry.setFastifyInstance(fastify);
103
- };
104
- // ========================================
105
- // Generation Functions (Called by Core)
106
- // ========================================
107
- export const generateAllFrontendConfigs = async () => {
108
- const registry = FrontendConfigRegistry.getInstance();
109
- if (!registry.isReadyForGeneration()) {
110
- const fastify = registry.getFastifyInstance();
111
- if (fastify?.log) {
112
- fastify.log.warn("Frontend generation not ready - missing Fastify instance or no plugins registered");
113
- }
114
- return;
115
- }
116
- const fastify = registry.getFastifyInstance();
117
- const registrations = registry.getRegistrations();
118
- if (fastify.log) {
119
- fastify.log.info(`Generating frontend configurations for ${registrations.length} registered plugins`);
120
- }
121
- try {
122
- for (const registration of registrations) {
123
- await generatePluginFrontendConfig(fastify, registration);
124
- }
125
- registry.markGenerationCompleted();
126
- if (fastify.log) {
127
- fastify.log.info(`Frontend configurations generated successfully for ${registrations.length} plugins`);
128
- }
129
- }
130
- catch (error) {
131
- if (fastify.log) {
132
- fastify.log.error("Error generating frontend configurations:", error);
133
- }
134
- throw error;
135
- }
136
- };
137
- export const triggerGenerationIfReady = async () => {
138
- const registry = FrontendConfigRegistry.getInstance();
139
- if (registry.isReadyForGeneration()) {
140
- await generateAllFrontendConfigs();
141
- }
142
- };
143
- // ========================================
144
- // Internal Generation Logic
145
- // ========================================
146
- const generatePluginFrontendConfig = async (fastify, registration) => {
147
- const registry = FrontendConfigRegistry.getInstance();
148
- const allRoutes = registry.getTrackedRoutes();
149
- const pluginRoutes = allRoutes.filter((route) => {
150
- const routePrefix = registration.routePrefix || registration.pluginKey;
151
- return (route.url.startsWith(`${routePrefix}`) || route.url === `${routePrefix}`);
152
- });
153
- if (pluginRoutes.length === 0) {
154
- if (fastify.log) {
155
- fastify.log.warn(`No routes found for plugin ${registration.pluginKey}`);
156
- }
157
- return;
158
- }
159
- if (fastify.log) {
160
- fastify.log.info(`Processing ${pluginRoutes.length} routes for plugin ${registration.pluginKey}`);
161
- }
162
- const dataTypes = new Map();
163
- for (const route of pluginRoutes) {
164
- const routeInfo = parseRouteInfo(route, registration);
165
- if (!routeInfo)
166
- continue;
167
- const { entityName, operationName } = routeInfo;
168
- if (!dataTypes.has(entityName)) {
169
- dataTypes.set(entityName, {
170
- type: entityName,
171
- operations: {},
172
- });
173
- }
174
- const dataType = dataTypes.get(entityName);
175
- const operationConfig = generateOperationConfig(routeInfo);
176
- if (operationConfig) {
177
- dataType.operations[operationName] = operationConfig;
178
- if (fastify.log) {
179
- fastify.log.debug(`Generated operation config: ${entityName}.${operationName} -> ${routeInfo.method} ${routeInfo.url}`);
180
- }
181
- }
182
- }
183
- await writePluginConfigFile(dataTypes, registration, fastify);
184
- };
185
- // ========================================
186
- // Route Parsing Utilities
187
- // ========================================
188
- const parseRouteInfo = (route, registration) => {
189
- const method = route.method || "GET";
190
- const url = route.url || route.routePath || "";
191
- const routePrefix = registration.routePrefix || registration.pluginKey;
192
- const prefixPattern = new RegExp(`^/?${routePrefix}/?`);
193
- const routeAfterPrefix = url.replace(prefixPattern, "");
194
- if (!routeAfterPrefix)
195
- return null;
196
- const segments = routeAfterPrefix
197
- .split("/")
198
- .filter((segment) => segment !== "");
199
- if (segments.length === 0)
200
- return null;
201
- const routeKey = segments[0];
202
- const entityName = registration.entityMapping?.[routeKey] || routeKey;
203
- const operationSegments = segments.slice(1);
204
- const pathParams = segments
205
- .filter((segment) => segment.startsWith(":"))
206
- .map((param) => param.substring(1));
207
- const operationName = getOperationName(method, operationSegments);
208
- return {
209
- method,
210
- url,
211
- entityName,
212
- operationName,
213
- pathParams,
214
- registration,
215
- config: route.config || {},
216
- schema: route.schema || {},
217
- };
218
- };
219
- const getOperationName = (method, urlSegments) => {
220
- const httpMethod = method.toLowerCase();
221
- const baseMethod = getMethodMapping(httpMethod);
222
- const nonParamSegments = urlSegments.filter((segment) => !segment.startsWith(":"));
223
- if (nonParamSegments.length === 0) {
224
- return baseMethod;
225
- }
226
- const operationParts = nonParamSegments
227
- .map((segment) => segment
228
- .split("-")
229
- .map((word, index) => index === 0 ? word : word.charAt(0).toUpperCase() + word.slice(1))
230
- .join(""))
231
- .map((part) => part.charAt(0).toUpperCase() + part.slice(1))
232
- .join("");
233
- return baseMethod + operationParts;
234
- };
235
- const getMethodMapping = (httpMethod) => {
236
- const methodMapping = {
237
- get: "get",
238
- post: "create",
239
- patch: "update",
240
- put: "update",
241
- delete: "delete",
242
- };
243
- return methodMapping[httpMethod] || httpMethod;
244
- };
245
- // ========================================
246
- // Operation Configuration Generation
247
- // ========================================
248
- const generateOperationConfig = (routeInfo) => {
249
- const { method, url, pathParams, registration } = routeInfo;
250
- if (!registration)
251
- return null;
252
- const config = {
253
- target: generateTargetFunction(url, pathParams),
254
- method: method.toLowerCase(),
255
- };
256
- if (routeInfo.config.broadcastChannels?.length) {
257
- config.channels = routeInfo.config.broadcastChannels.map((channelName) => {
258
- const coreChannel = getCoreChannel(channelName);
259
- const channel = coreChannel || registration.pluginKey + "--" + channelName;
260
- return {
261
- channel,
262
- channelKey: channelName,
263
- prefix: coreChannel ? "" : registration.pluginKey,
264
- };
265
- });
266
- }
267
- return config;
268
- };
269
- const getCoreChannel = (channelName) => {
270
- if (Object.keys(eventMap).includes(channelName)) {
271
- if (channelName.startsWith("broadcast")) {
272
- const result = channelName.replace("broadcast", "");
273
- return result.charAt(0).toLowerCase() + result.slice(1);
274
- }
275
- return channelName;
276
- }
277
- return undefined;
278
- };
279
- const generateTargetFunction = (url, pathParams) => {
280
- if (pathParams.length > 0) {
281
- let targetFunction = `(payload) => \`${url}\``;
282
- for (const param of pathParams) {
283
- const paramPattern = new RegExp(`:${param}`, "g");
284
- targetFunction = targetFunction.replace(paramPattern, `\${payload.${param}}`);
285
- }
286
- return targetFunction;
287
- }
288
- return url;
289
- };
290
- // ========================================
291
- // File Generation Utilities
292
- // ========================================
293
- const writePluginConfigFile = async (dataTypes, registration, fastify) => {
294
- if (dataTypes.size === 0) {
295
- if (fastify.log) {
296
- fastify.log.warn(`No data types generated for plugin ${registration.pluginKey}`);
297
- }
298
- return;
299
- }
300
- const configContent = generatePluginConfigFile(dataTypes, registration);
301
- const outputPath = path.join(registration.pluginPath, "client", "generated-config.ts");
302
- try {
303
- await fs.ensureDir(path.dirname(outputPath));
304
- await fs.writeFile(outputPath, configContent);
305
- if (fastify.log) {
306
- fastify.log.info(`Generated config for plugin ${registration.pluginKey}: ${outputPath}`);
307
- }
308
- }
309
- catch (error) {
310
- if (fastify.log) {
311
- fastify.log.error(`Error writing config for plugin ${registration.pluginKey}:`, error);
312
- }
313
- }
314
- };
315
- const generatePluginConfigFile = (dataTypes, registration) => {
316
- const dataObject = {};
317
- for (const [entityName, dataType] of dataTypes.entries()) {
318
- const routeKey = Object.keys(registration.entityMapping || {}).find((key) => registration.entityMapping[key] === entityName) || entityName;
319
- dataObject[routeKey] = {
320
- type: dataType.type,
321
- operations: dataType.operations,
322
- };
323
- }
324
- return `// Auto-generated frontend configuration for plugin: ${registration.pluginKey}
325
- // This file is generated from backend routes - do not edit manually
326
- // Entity mapping: ${JSON.stringify(registration.entityMapping || {})}
327
-
328
- export default {
329
- pluginName: "${registration.pluginName}",
330
- author: "${registration.author}",
331
- pluginKey: "${registration.pluginKey}",
332
- routePrefix: "${registration.routePrefix}",
333
- pluginPath: "${registration.pluginPath}",
334
- data: ${JSON.stringify(dataObject, null, 2)
335
- .replace(/"(\([^)]+\) => [^"]+)"/g, "$1")
336
- .replace(/"([a-zA-Z_$][a-zA-Z0-9_$]*)"\s*:/g, "$1:")
337
- .split("\n")
338
- .map((line, index) => (index === 0 ? line : " " + line))
339
- .join("\n")}
340
- }
341
- `;
342
- };
@@ -1,3 +0,0 @@
1
- import type { FastifyInstance } from "fastify";
2
- import type { PluginFastifyInstance, PluginOptions } from "./pluginTypes.js";
3
- export declare const createPluginFastifyInstance: (fastify: FastifyInstance, pluginOptions: PluginOptions) => PluginFastifyInstance;
@@ -1,161 +0,0 @@
1
- import mongoose from "mongoose";
2
- import { createCacheService } from "../../modules/cache/cacheManager.js";
3
- import { createPayload } from "../payload/payloadRegistrar.js";
4
- import { registerCrudHandlers } from "../crud/crudRegistrar.js";
5
- import { registerPayloadHandler } from "../payload/payloadRegistrar.js";
6
- import { registerPluginForFrontendGeneration } from "../pluginSystem/configGenerator/index.js";
7
- import { registerSchemaDefinition } from "../validation/schemaGenerator.js";
8
- import { registerPluginContract } from "../contracting/contractRegistrar.js";
9
- const EVENT_WHITELIST = [
10
- "broadcastDataUpdated",
11
- "broadcastDataCreated",
12
- "broadcastDataDeleted",
13
- ];
14
- export const createPluginFastifyInstance = (fastify, pluginOptions) => {
15
- // here we add everything that we want to pass from fastify to the plugins
16
- // + some additionally encapsulated functions
17
- // encapsulate the plugin log to it's own child logger
18
- const pluginLogger = fastify.log.child({
19
- plugin: pluginOptions.key,
20
- name: pluginOptions.key,
21
- });
22
- const pluginCacheService = createCacheService(fastify.redis, {
23
- prefix: pluginOptions.key,
24
- defaultTtl: 3600, // Default 60 minutes TTL for plugins -> TODO: should be a raclette.config option
25
- });
26
- const instance = {
27
- register: (() => { }),
28
- get: fastify.get,
29
- post: fastify.post,
30
- put: fastify.put,
31
- patch: fastify.patch,
32
- delete: fastify.delete,
33
- authenticate: fastify.authenticate,
34
- // Plugin-scoped logger with plugin-specific prefix
35
- log: pluginLogger,
36
- // Enforce prefixed model and collection naming
37
- createModel: (modelName, schema) => {
38
- const prefixedModelName = `${pluginOptions.collectionPrefix}${modelName}`;
39
- const collectionName = `${pluginOptions.collectionPrefix}${modelName.toLowerCase()}`;
40
- return mongoose.model(prefixedModelName, schema, collectionName);
41
- },
42
- registerSocket: (eventName, handler) => {
43
- const prefixedEventName = `${pluginOptions.key}--${eventName}`;
44
- // Defer socket and eventbus registration until app is ready
45
- fastify.ready().then(() => {
46
- if (!fastify.eventbus) {
47
- throw new Error("Eventbus is not available. Ensure it is registered before plugins.");
48
- }
49
- // Register with the eventbus
50
- fastify.eventbus.on(prefixedEventName, handler);
51
- fastify.log.info(`[registerSocket] Eventbus listener registered for: ${prefixedEventName}`);
52
- // Register corresponding socket listener
53
- fastify.wss.on("connection", (socket) => {
54
- socket.on(prefixedEventName, (payload) => {
55
- fastify.log.info(`[Socket] Event '${prefixedEventName}' received from socket.`);
56
- handler(payload); // Execute the event handler
57
- });
58
- });
59
- });
60
- },
61
- emit: (eventName, data) => {
62
- // Whitelisted events will go to the main channel and need no prefix
63
- if (EVENT_WHITELIST.includes(eventName)) {
64
- fastify.log.info("[Eventbus] Emit Event " + eventName);
65
- fastify.eventbus.emit(eventName, data);
66
- }
67
- else {
68
- const prefixedEventName = `${pluginOptions.key}--${eventName}`;
69
- fastify.log.info("[Eventbus] Emit Event " + prefixedEventName);
70
- fastify.eventbus.emit(prefixedEventName, data);
71
- fastify.wss.emit(prefixedEventName, data);
72
- }
73
- },
74
- registerSchema: (schemaDefinition) => {
75
- registerSchemaDefinition({
76
- ...schemaDefinition,
77
- pluginKey: pluginOptions.key,
78
- isCore: pluginOptions.type === "core",
79
- });
80
- },
81
- http: {
82
- get: fastify.http.get,
83
- post: fastify.http.post,
84
- put: fastify.http.put,
85
- delete: fastify.http.delete,
86
- },
87
- createIntervalTask: (name, handler, options) => {
88
- const prefixedName = `${pluginOptions.key}--${name}`;
89
- const pluginLogger = fastify.log.child({ plugin: pluginOptions.key });
90
- fastify.taskManager.createIntervalTask(prefixedName, handler, {
91
- ...options,
92
- errorHandler: (error) => {
93
- if (options.errorHandler) {
94
- options.errorHandler(error);
95
- }
96
- pluginLogger.error(`Task ${prefixedName} failed:`, error);
97
- },
98
- });
99
- },
100
- cancelTask: (name) => {
101
- const prefixedName = `${pluginOptions.key}--${name}`;
102
- fastify.taskManager.cancelTask(prefixedName);
103
- },
104
- registerCrudHandlers: (name, handlers) => {
105
- const prefixedName = `${pluginOptions.key}--${name}`;
106
- registerCrudHandlers(prefixedName, handlers, "plugin");
107
- },
108
- registerPayloadHandler: (name, registerData) => {
109
- const prefixedName = `${pluginOptions.key}--${name}`;
110
- registerPayloadHandler(prefixedName, registerData, pluginOptions.key);
111
- },
112
- createPayload: (name, item, requestData, scope) => {
113
- const prefixedName = `${pluginOptions.key}--${name}`;
114
- return createPayload(prefixedName, item, requestData, scope || pluginOptions.key);
115
- },
116
- eventbus: {
117
- emit: (eventName, data) => {
118
- // TODO: add whitelist check where no prefix is applied
119
- const prefixedName = `${pluginOptions.key}--${eventName}`;
120
- return fastify.eventbus.emit(prefixedName, data);
121
- },
122
- // TODO: fiy types
123
- on: (eventName, callback) => {
124
- const prefixedName = `${pluginOptions.key}--${eventName}`;
125
- return fastify.eventbus.on(prefixedName, callback);
126
- },
127
- },
128
- registerPluginContract: (contractData) => {
129
- registerPluginContract(pluginOptions.key, contractData);
130
- },
131
- registerForFrontendGeneration: (options) => {
132
- registerPluginForFrontendGeneration(pluginOptions, options);
133
- },
134
- cache: pluginCacheService,
135
- };
136
- const register = (routes, options) => {
137
- const opts = {
138
- ...options,
139
- prefix: pluginOptions.routePrefix,
140
- };
141
- return fastify.register((encapsulatedInstance) => {
142
- const combined = new Proxy(instance, {
143
- // Use instance directly instead of this
144
- get: (target, prop) => {
145
- if (["get", "post", "put", "patch", "delete"].includes(prop)) {
146
- // @ts-ignore
147
- return encapsulatedInstance[prop].bind(encapsulatedInstance);
148
- }
149
- // @ts-ignore
150
- return target[prop];
151
- },
152
- });
153
- // @ts-ignore
154
- return routes(combined);
155
- }, opts);
156
- };
157
- instance.register = register;
158
- instance.fastify = fastify;
159
- instance.custom = {};
160
- return instance;
161
- };
@@ -1,5 +0,0 @@
1
- import type { FastifyInstance } from "fastify";
2
- /**
3
- * Register plugins in three phases: core, npm, then app plugins
4
- */
5
- export declare const registerPlugins: (fastify: FastifyInstance, errorFlags?: number) => Promise<void>;