nodefony 7.0.2 → 10.0.0-alpha.2

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 (903) hide show
  1. package/.ai/symbols.json +36135 -0
  2. package/LICENSE +544 -0
  3. package/README.md +316 -694
  4. package/bin/nodefony +2183 -85
  5. package/dist/client/Container.js +367 -0
  6. package/dist/client/Event.js +198 -0
  7. package/dist/client/Service.js +344 -0
  8. package/dist/client/Tools.js +162 -0
  9. package/dist/client/client/ClientKernel.js +276 -0
  10. package/dist/client/client/angular/index.js +352 -0
  11. package/dist/client/client/announce.js +212 -0
  12. package/dist/client/client/debugbar/DebugBar.js +1624 -0
  13. package/dist/client/client/debugbar/format.js +103 -0
  14. package/dist/client/client/debugbar/hmr.js +37 -0
  15. package/dist/client/client/debugbar/index.js +29 -0
  16. package/dist/client/client/debugbar/model.js +133 -0
  17. package/dist/client/client/debugbar/network.js +173 -0
  18. package/dist/client/client/debugbar/profile.js +114 -0
  19. package/dist/client/client/index.js +34 -0
  20. package/dist/client/client/react/index.js +268 -0
  21. package/dist/client/client/realtime/AdaptiveRate.js +240 -0
  22. package/dist/client/client/realtime/BrowserWsTransport.js +57 -0
  23. package/dist/client/client/realtime/RealtimeClient.js +898 -0
  24. package/dist/client/client/realtime/localEvents.js +56 -0
  25. package/dist/client/client/realtime/notice.js +125 -0
  26. package/dist/client/client/realtime/observe.js +280 -0
  27. package/dist/client/client/roles/index.js +3 -0
  28. package/dist/client/client/roles/registry.js +97 -0
  29. package/dist/client/client/roles/roles.js +91 -0
  30. package/dist/client/client/shim/events.js +88 -0
  31. package/dist/client/client/shim/util.js +20 -0
  32. package/dist/client/client/svelte/index.js +319 -0
  33. package/dist/client/client/syslog/context.js +122 -0
  34. package/dist/client/client/syslog/errors.js +49 -0
  35. package/dist/client/client/syslog/uplink.js +106 -0
  36. package/dist/client/client/vue/index.js +321 -0
  37. package/dist/client/colors.js +63 -0
  38. package/dist/client/debugbar.standalone.js +4274 -0
  39. package/dist/client/realtime/IRealtimeTransport.js +32 -0
  40. package/dist/client/realtime/JsonRpcPeer.js +251 -0
  41. package/dist/client/realtime/channelRate.js +39 -0
  42. package/dist/client/realtime/platformChannels.js +155 -0
  43. package/dist/client/syslog/Pdu.js +224 -0
  44. package/dist/client/syslog/Syslog.js +1159 -0
  45. package/dist/client/syslog/drivers/pduFlow.js +106 -0
  46. package/dist/client/syslog/drivers/pduProtocol.js +28 -0
  47. package/dist/client/syslog/logColor.js +80 -0
  48. package/dist/client/types/src/Container.d.ts +221 -0
  49. package/dist/client/types/src/Event.d.ts +171 -0
  50. package/dist/client/types/src/FileClass.d.ts +184 -0
  51. package/dist/client/types/src/Service.d.ts +165 -0
  52. package/dist/client/types/src/Tools.d.ts +116 -0
  53. package/dist/client/types/src/client/ClientKernel.d.ts +90 -0
  54. package/dist/client/types/src/client/IClientKernel.d.ts +195 -0
  55. package/dist/client/types/src/client/angular/index.d.ts +273 -0
  56. package/dist/client/types/src/client/announce.d.ts +74 -0
  57. package/dist/client/types/src/client/debugbar/DebugBar.d.ts +279 -0
  58. package/dist/client/types/src/client/debugbar/format.d.ts +48 -0
  59. package/dist/client/types/src/client/debugbar/hmr.d.ts +16 -0
  60. package/dist/client/types/src/client/debugbar/index.d.ts +30 -0
  61. package/dist/client/types/src/client/debugbar/model.d.ts +158 -0
  62. package/dist/client/types/src/client/debugbar/network.d.ts +55 -0
  63. package/dist/client/types/src/client/debugbar/profile.d.ts +99 -0
  64. package/dist/client/types/src/client/index.d.ts +47 -0
  65. package/dist/client/types/src/client/react/index.d.ts +207 -0
  66. package/dist/client/types/src/client/realtime/AdaptiveRate.d.ts +138 -0
  67. package/dist/client/types/src/client/realtime/BrowserWsTransport.d.ts +27 -0
  68. package/dist/client/types/src/client/realtime/RealtimeClient.d.ts +573 -0
  69. package/dist/client/types/src/client/realtime/localEvents.d.ts +53 -0
  70. package/dist/client/types/src/client/realtime/notice.d.ts +70 -0
  71. package/dist/client/types/src/client/realtime/observe.d.ts +284 -0
  72. package/dist/client/types/src/client/roles/index.d.ts +15 -0
  73. package/dist/client/types/src/client/roles/registry.d.ts +72 -0
  74. package/dist/client/types/src/client/roles/roles.d.ts +68 -0
  75. package/dist/client/types/src/client/shim/cli-color.d.ts +2 -0
  76. package/dist/client/types/src/client/shim/events.d.ts +39 -0
  77. package/dist/client/types/src/client/shim/util.d.ts +14 -0
  78. package/dist/client/types/src/client/svelte/index.d.ts +216 -0
  79. package/dist/client/types/src/client/syslog/context.d.ts +76 -0
  80. package/dist/client/types/src/client/syslog/errors.d.ts +46 -0
  81. package/dist/client/types/src/client/syslog/uplink.d.ts +89 -0
  82. package/dist/client/types/src/client/transport/websocket.d.ts +5 -0
  83. package/dist/client/types/src/client/vue/index.d.ts +234 -0
  84. package/dist/client/types/src/colors.d.ts +32 -0
  85. package/dist/client/types/src/config/infra.d.ts +171 -0
  86. package/dist/client/types/src/kernel/bootReport.d.ts +112 -0
  87. package/dist/client/types/src/kernel/readinessRegistry.d.ts +104 -0
  88. package/dist/client/types/src/realtime/IRealtimeSocket.d.ts +142 -0
  89. package/dist/client/types/src/realtime/IRealtimeTransport.d.ts +50 -0
  90. package/dist/client/types/src/realtime/JsonRpcPeer.d.ts +251 -0
  91. package/dist/client/types/src/realtime/RealtimeEventMap.d.ts +269 -0
  92. package/dist/client/types/src/realtime/channelRate.d.ts +55 -0
  93. package/dist/client/types/src/realtime/platformChannels.d.ts +147 -0
  94. package/dist/client/types/src/syslog/Pdu.d.ts +134 -0
  95. package/dist/client/types/src/syslog/Syslog.d.ts +482 -0
  96. package/dist/client/types/src/syslog/drivers/ILogDriver.d.ts +177 -0
  97. package/dist/client/types/src/syslog/drivers/pduFlow.d.ts +53 -0
  98. package/dist/client/types/src/syslog/drivers/pduProtocol.d.ts +20 -0
  99. package/dist/client/types/src/syslog/logColor.d.ts +59 -0
  100. package/dist/client/types/src/types/ICliKernel.d.ts +28 -0
  101. package/dist/client/types/src/types/ICommand.d.ts +14 -0
  102. package/dist/client/types/src/types/IContainer.d.ts +35 -0
  103. package/dist/client/types/src/types/IKernel.d.ts +138 -0
  104. package/dist/client/types/src/types/IMcpTool.d.ts +157 -0
  105. package/dist/client/types/src/types/IModule.d.ts +73 -0
  106. package/dist/client/types/src/types/IPage.d.ts +119 -0
  107. package/dist/client/types/src/types/IService.d.ts +62 -0
  108. package/dist/client/types/src/types/ISyslog.d.ts +58 -0
  109. package/dist/client/types/src/types/ITransport.d.ts +5 -0
  110. package/dist/client/types/src/types/globals.d.ts +47 -0
  111. package/dist/node/Cli.js +750 -0
  112. package/dist/node/Container.js +367 -0
  113. package/dist/node/Error.js +309 -0
  114. package/dist/node/Event.js +198 -0
  115. package/dist/node/FileClass.js +308 -0
  116. package/dist/node/Nodefony.js +78 -0
  117. package/dist/node/Service.js +344 -0
  118. package/dist/node/Tools.js +205 -0
  119. package/dist/node/bin/resolveLocalCli.js +10 -0
  120. package/dist/node/bundler/index.js +103 -0
  121. package/dist/node/cli/agentTargets.js +461 -0
  122. package/dist/node/cli/aiMcp.js +553 -0
  123. package/dist/node/cli/aiMcpReport.js +129 -0
  124. package/dist/node/cli/aiSync.js +323 -0
  125. package/dist/node/cli/aiSyncReport.js +142 -0
  126. package/dist/node/cli/card.js +186 -0
  127. package/dist/node/cli/cardReport.js +110 -0
  128. package/dist/node/cli/completion.js +415 -0
  129. package/dist/node/cli/create.js +805 -0
  130. package/dist/node/cli/env.js +332 -0
  131. package/dist/node/cli/envReport.js +159 -0
  132. package/dist/node/cli/execPortable.js +60 -0
  133. package/dist/node/cli/gitHooks.js +191 -0
  134. package/dist/node/cli/gitHooksReport.js +119 -0
  135. package/dist/node/cli/globalFlags.js +67 -0
  136. package/dist/node/cli/helpReport.js +288 -0
  137. package/dist/node/cli/manPage.js +165 -0
  138. package/dist/node/cli/nodefonyBin.js +61 -0
  139. package/dist/node/cli/outdated.js +144 -0
  140. package/dist/node/cli/progress.js +555 -0
  141. package/dist/node/cli/projectRoot.js +32 -0
  142. package/dist/node/cli/promptPassword.js +44 -0
  143. package/dist/node/cli/prompts.js +86 -0
  144. package/dist/node/cli/scaffold/destination.js +92 -0
  145. package/dist/node/cli/scaffold/engine.js +2156 -0
  146. package/dist/node/cli/scaffold/entityFields.js +589 -0
  147. package/dist/node/cli/scaffold/format.js +243 -0
  148. package/dist/node/cli/scaffold/interactive.js +124 -0
  149. package/dist/node/cli/scaffold/moduleLayout.js +38 -0
  150. package/dist/node/cli/scaffold/reservedEntities.js +74 -0
  151. package/dist/node/cli/scaffold/spec.js +704 -0
  152. package/dist/node/cli/scaffold/steps.js +40 -0
  153. package/dist/node/cli/scaffold/userContractSource.js +133 -0
  154. package/dist/node/cli/scaffold/versions.js +57 -0
  155. package/dist/node/cli/scaffold/writer.js +172 -0
  156. package/dist/node/cli/startMenu.js +496 -0
  157. package/dist/node/cli/symbols.js +205 -0
  158. package/dist/node/cli/sysexits.js +34 -0
  159. package/dist/node/cli/tableReport.js +184 -0
  160. package/dist/node/cli/usageReport.js +144 -0
  161. package/dist/node/colors.js +63 -0
  162. package/dist/node/command/Builder.js +153 -0
  163. package/dist/node/command/Command.js +348 -0
  164. package/dist/node/config/configProvenance.js +101 -0
  165. package/dist/node/config/defaults.js +39 -0
  166. package/dist/node/config/defineConfig.js +129 -0
  167. package/dist/node/config/defineEnv.js +264 -0
  168. package/dist/node/config/envExample.js +41 -0
  169. package/dist/node/config/envOverride.js +423 -0
  170. package/dist/node/config/infra.js +163 -0
  171. package/dist/node/config/reactivity.js +23 -0
  172. package/dist/node/config/reservedEnv.js +118 -0
  173. package/dist/node/config/schema.js +134 -0
  174. package/dist/node/config/use.js +24 -0
  175. package/dist/node/finder/File.js +49 -0
  176. package/dist/node/finder/FileResult.js +86 -0
  177. package/dist/node/finder/Finder.js +201 -0
  178. package/dist/node/finder/Result.js +45 -0
  179. package/dist/node/index.js +121 -0
  180. package/dist/node/kernel/BootConfigurationError.js +54 -0
  181. package/dist/node/kernel/CliKernel.js +630 -0
  182. package/dist/node/kernel/Kernel.js +2198 -0
  183. package/dist/node/kernel/Module.js +453 -0
  184. package/dist/node/kernel/adminPlane/adminCaller.js +98 -0
  185. package/dist/node/kernel/adminPlane/adminRbac.js +51 -0
  186. package/dist/node/kernel/adminPlane/catalog.js +158 -0
  187. package/dist/node/kernel/adminPlane/executeAdmin.js +78 -0
  188. package/dist/node/kernel/checks/deep.js +335 -0
  189. package/dist/node/kernel/checks/freshness.js +139 -0
  190. package/dist/node/kernel/checks/gating.js +231 -0
  191. package/dist/node/kernel/checks/guards.js +232 -0
  192. package/dist/node/kernel/checks/lastBoot.js +136 -0
  193. package/dist/node/kernel/checks/live.js +330 -0
  194. package/dist/node/kernel/checks/packageDeps.js +292 -0
  195. package/dist/node/kernel/checks/readiness.js +153 -0
  196. package/dist/node/kernel/checks/renderReport.js +780 -0
  197. package/dist/node/kernel/checks/report.js +421 -0
  198. package/dist/node/kernel/checks/runDoctor.js +731 -0
  199. package/dist/node/kernel/checks/surface.js +364 -0
  200. package/dist/node/kernel/checks/walk.js +100 -0
  201. package/dist/node/kernel/checks/wiring.js +450 -0
  202. package/dist/node/kernel/commands/AiMcpCommand.js +65 -0
  203. package/dist/node/kernel/commands/AiSyncCommand.js +48 -0
  204. package/dist/node/kernel/commands/BuildCommand.js +49 -0
  205. package/dist/node/kernel/commands/CardCommand.js +50 -0
  206. package/dist/node/kernel/commands/ClusterCommand.js +58 -0
  207. package/dist/node/kernel/commands/CompletionCommand.js +31 -0
  208. package/dist/node/kernel/commands/CreateCommand.js +45 -0
  209. package/dist/node/kernel/commands/DevCommand.js +99 -0
  210. package/dist/node/kernel/commands/DoctorCommand.js +115 -0
  211. package/dist/node/kernel/commands/EnvCommand.js +52 -0
  212. package/dist/node/kernel/commands/GitHooksCommand.js +47 -0
  213. package/dist/node/kernel/commands/InspectCommand.js +153 -0
  214. package/dist/node/kernel/commands/InstallCommand.js +20 -0
  215. package/dist/node/kernel/commands/MenuCommand.js +261 -0
  216. package/dist/node/kernel/commands/OutdatedCommand.js +164 -0
  217. package/dist/node/kernel/commands/ProdCommand.js +60 -0
  218. package/dist/node/kernel/commands/StatusCommand.js +30 -0
  219. package/dist/node/kernel/commands/StopCommand.js +35 -0
  220. package/dist/node/kernel/commands/SymbolsCommand.js +45 -0
  221. package/dist/node/kernel/commands/runtimeLauncher.js +95 -0
  222. package/dist/node/kernel/decorators/kernelDecorator.js +110 -0
  223. package/dist/node/kernel/injector/injector.js +137 -0
  224. package/dist/node/kernel/injector/serviceOrder.js +106 -0
  225. package/dist/node/kernel/inspect/adminSubjects.js +194 -0
  226. package/dist/node/kernel/inspect/docOutline.js +86 -0
  227. package/dist/node/kernel/lifecycleTags.js +76 -0
  228. package/dist/node/kernel/moduleConfig.js +75 -0
  229. package/dist/node/kernel/moduleGating.js +68 -0
  230. package/dist/node/kernel/readinessRegistry.js +98 -0
  231. package/dist/node/kernel/resolveModuleEntry.js +61 -0
  232. package/dist/node/mcp/caller.js +40 -0
  233. package/dist/node/mcp/guard.js +51 -0
  234. package/dist/node/mcp/protocol.js +157 -0
  235. package/dist/node/mcp/server.js +216 -0
  236. package/dist/node/mcp/tools.js +861 -0
  237. package/dist/node/oauth/authorizationServer.js +221 -0
  238. package/dist/node/oauth/protectedResource.js +293 -0
  239. package/dist/node/package.js +4 -0
  240. package/dist/node/realtime/IRealtimeTransport.js +32 -0
  241. package/dist/node/realtime/JsonRpcPeer.js +251 -0
  242. package/dist/node/realtime/RealtimeEventMap.js +15 -0
  243. package/dist/node/realtime/channelRate.js +39 -0
  244. package/dist/node/realtime/platformChannels.js +155 -0
  245. package/dist/node/runtime/GcScheduler.js +92 -0
  246. package/dist/node/runtime/RequestContext.js +76 -0
  247. package/dist/node/runtime/bearer.js +84 -0
  248. package/dist/node/runtime/engineEnvironment.js +79 -0
  249. package/dist/node/runtime/loadEnv.js +105 -0
  250. package/dist/node/runtime/pageFacets.js +85 -0
  251. package/dist/node/runtime/pageFilters.js +103 -0
  252. package/dist/node/runtime/pageGuard.js +84 -0
  253. package/dist/node/runtime/pageQuery.js +160 -0
  254. package/dist/node/runtime/pageSort.js +114 -0
  255. package/dist/node/runtime/redact.js +43 -0
  256. package/dist/node/runtime/withTimeout.js +71 -0
  257. package/dist/node/service/cluster/ClusterManager.js +202 -0
  258. package/dist/node/service/cluster/ClusterProbeAggregator.js +120 -0
  259. package/dist/node/service/cluster/ClusterRelay.js +74 -0
  260. package/dist/node/service/cluster/clusterMaster.js +65 -0
  261. package/dist/node/service/cluster/clusterMessage.js +70 -0
  262. package/dist/node/service/cluster/cpuQuota.js +59 -0
  263. package/dist/node/service/cluster/instanceProbe.js +52 -0
  264. package/dist/node/service/cluster/podEnvironment.js +48 -0
  265. package/dist/node/service/cluster/processProbe.js +70 -0
  266. package/dist/node/service/cluster/richProcessProbe.js +115 -0
  267. package/dist/node/service/cluster/topology.js +71 -0
  268. package/dist/node/service/dev/BootReporter.js +490 -0
  269. package/dist/node/service/dev/DevSupervisor.js +1004 -0
  270. package/dist/node/service/dev/bootVerdict.js +158 -0
  271. package/dist/node/service/dev/detachedStart.js +372 -0
  272. package/dist/node/service/dev/devProcess.js +1137 -0
  273. package/dist/node/service/dev/devProjects.js +138 -0
  274. package/dist/node/service/dev/devStatusReport.js +395 -0
  275. package/dist/node/service/dev/devStop.js +263 -0
  276. package/dist/node/service/fetchService.js +35 -0
  277. package/dist/node/service/gitService.js +62 -0
  278. package/dist/node/syslog/Pdu.js +224 -0
  279. package/dist/node/syslog/Syslog.js +1159 -0
  280. package/dist/node/syslog/drivers/ClusterFileLogDriver.js +114 -0
  281. package/dist/node/syslog/drivers/FileLogDriver.js +127 -0
  282. package/dist/node/syslog/drivers/ILogDriver.js +26 -0
  283. package/dist/node/syslog/drivers/LokiLogDriver.js +144 -0
  284. package/dist/node/syslog/drivers/MemoryLogDriver.js +33 -0
  285. package/dist/node/syslog/drivers/OpenSearchLogDriver.js +159 -0
  286. package/dist/node/syslog/drivers/builtinLogDrivers.js +114 -0
  287. package/dist/node/syslog/drivers/filterPdus.js +71 -0
  288. package/dist/node/syslog/drivers/logDriverRegistry.js +83 -0
  289. package/dist/node/syslog/drivers/opensearchShared.js +17 -0
  290. package/dist/node/syslog/drivers/pduFlow.js +106 -0
  291. package/dist/node/syslog/drivers/pduProtocol.js +28 -0
  292. package/dist/node/syslog/httpFetch.js +43 -0
  293. package/dist/node/syslog/logColor.js +80 -0
  294. package/dist/node/syslog/sinks/FileSink.js +142 -0
  295. package/dist/node/syslog/transports/BatchingHttpTransport.js +98 -0
  296. package/dist/node/syslog/transports/ConsoleTransport.js +14 -0
  297. package/dist/node/syslog/transports/FileTransport.js +17 -0
  298. package/dist/node/syslog/transports/HttpTransport.js +44 -0
  299. package/dist/node/syslog/transports/LokiTransport.js +80 -0
  300. package/dist/node/syslog/transports/OpenSearchTransport.js +53 -0
  301. package/dist/node/syslog/transports/SyslogTransport.js +13 -0
  302. package/dist/node/syslog/transports/index.js +8 -0
  303. package/dist/node/testing/index.js +190 -0
  304. package/dist/types/Cli.d.ts +177 -0
  305. package/dist/types/Container.d.ts +221 -0
  306. package/dist/types/Error.d.ts +162 -0
  307. package/dist/types/Event.d.ts +171 -0
  308. package/dist/types/FileClass.d.ts +184 -0
  309. package/dist/types/Nodefony.d.ts +66 -0
  310. package/dist/types/Service.d.ts +165 -0
  311. package/dist/types/Tools.d.ts +116 -0
  312. package/dist/types/bin/resolveLocalCli.d.ts +49 -0
  313. package/dist/types/bundler/index.d.ts +66 -0
  314. package/dist/types/cli/agentTargets.d.ts +378 -0
  315. package/dist/types/cli/aiMcp.d.ts +239 -0
  316. package/dist/types/cli/aiMcpReport.d.ts +113 -0
  317. package/dist/types/cli/aiSync.d.ts +68 -0
  318. package/dist/types/cli/aiSyncReport.d.ts +149 -0
  319. package/dist/types/cli/card.d.ts +49 -0
  320. package/dist/types/cli/cardReport.d.ts +127 -0
  321. package/dist/types/cli/completion.d.ts +154 -0
  322. package/dist/types/cli/create.d.ts +177 -0
  323. package/dist/types/cli/env.d.ts +103 -0
  324. package/dist/types/cli/envReport.d.ts +153 -0
  325. package/dist/types/cli/execPortable.d.ts +54 -0
  326. package/dist/types/cli/gitHooks.d.ts +48 -0
  327. package/dist/types/cli/gitHooksReport.d.ts +101 -0
  328. package/dist/types/cli/globalFlags.d.ts +48 -0
  329. package/dist/types/cli/helpReport.d.ts +110 -0
  330. package/dist/types/cli/manPage.d.ts +21 -0
  331. package/dist/types/cli/nodefonyBin.d.ts +45 -0
  332. package/dist/types/cli/outdated.d.ts +119 -0
  333. package/dist/types/cli/progress.d.ts +349 -0
  334. package/dist/types/cli/projectRoot.d.ts +19 -0
  335. package/dist/types/cli/promptPassword.d.ts +22 -0
  336. package/dist/types/cli/prompts.d.ts +102 -0
  337. package/dist/types/cli/scaffold/destination.d.ts +70 -0
  338. package/dist/types/cli/scaffold/engine.d.ts +545 -0
  339. package/dist/types/cli/scaffold/entityFields.d.ts +238 -0
  340. package/dist/types/cli/scaffold/format.d.ts +78 -0
  341. package/dist/types/cli/scaffold/interactive.d.ts +11 -0
  342. package/dist/types/cli/scaffold/moduleLayout.d.ts +69 -0
  343. package/dist/types/cli/scaffold/reservedEntities.d.ts +49 -0
  344. package/dist/types/cli/scaffold/spec.d.ts +159 -0
  345. package/dist/types/cli/scaffold/steps.d.ts +24 -0
  346. package/dist/types/cli/scaffold/userContractSource.d.ts +86 -0
  347. package/dist/types/cli/scaffold/versions.d.ts +14 -0
  348. package/dist/types/cli/scaffold/writer.d.ts +100 -0
  349. package/dist/types/cli/startMenu.d.ts +195 -0
  350. package/dist/types/cli/symbols.d.ts +84 -0
  351. package/dist/types/cli/sysexits.d.ts +31 -0
  352. package/dist/types/cli/tableReport.d.ts +44 -0
  353. package/dist/types/cli/usageReport.d.ts +108 -0
  354. package/dist/types/client/ClientKernel.d.ts +90 -0
  355. package/dist/types/client/IClientKernel.d.ts +195 -0
  356. package/dist/types/client/angular/index.d.ts +273 -0
  357. package/dist/types/client/announce.d.ts +74 -0
  358. package/dist/types/client/debugbar/DebugBar.d.ts +279 -0
  359. package/dist/types/client/debugbar/format.d.ts +48 -0
  360. package/dist/types/client/debugbar/hmr.d.ts +16 -0
  361. package/dist/types/client/debugbar/index.d.ts +30 -0
  362. package/dist/types/client/debugbar/model.d.ts +158 -0
  363. package/dist/types/client/debugbar/network.d.ts +55 -0
  364. package/dist/types/client/debugbar/profile.d.ts +99 -0
  365. package/dist/types/client/index.d.ts +47 -0
  366. package/dist/types/client/react/index.d.ts +207 -0
  367. package/dist/types/client/realtime/AdaptiveRate.d.ts +138 -0
  368. package/dist/types/client/realtime/BrowserWsTransport.d.ts +27 -0
  369. package/dist/types/client/realtime/RealtimeClient.d.ts +573 -0
  370. package/dist/types/client/realtime/localEvents.d.ts +53 -0
  371. package/dist/types/client/realtime/notice.d.ts +70 -0
  372. package/dist/types/client/realtime/observe.d.ts +284 -0
  373. package/dist/types/client/roles/index.d.ts +15 -0
  374. package/dist/types/client/roles/registry.d.ts +72 -0
  375. package/dist/types/client/roles/roles.d.ts +68 -0
  376. package/dist/types/client/shim/cli-color.d.ts +2 -0
  377. package/dist/types/client/shim/events.d.ts +39 -0
  378. package/dist/types/client/shim/util.d.ts +14 -0
  379. package/dist/types/client/svelte/index.d.ts +216 -0
  380. package/dist/types/client/syslog/context.d.ts +76 -0
  381. package/dist/types/client/syslog/errors.d.ts +46 -0
  382. package/dist/types/client/syslog/uplink.d.ts +89 -0
  383. package/dist/types/client/transport/websocket.d.ts +5 -0
  384. package/dist/types/client/vue/index.d.ts +234 -0
  385. package/dist/types/colors.d.ts +32 -0
  386. package/dist/types/command/Builder.d.ts +47 -0
  387. package/dist/types/command/Command.d.ts +268 -0
  388. package/dist/types/config/configMeta.d.ts +53 -0
  389. package/dist/types/config/configProvenance.d.ts +58 -0
  390. package/dist/types/config/defaults.d.ts +33 -0
  391. package/dist/types/config/defineConfig.d.ts +70 -0
  392. package/dist/types/config/defineEnv.d.ts +170 -0
  393. package/dist/types/config/envExample.d.ts +23 -0
  394. package/dist/types/config/envOverride.d.ts +236 -0
  395. package/dist/types/config/index.d.ts +23 -0
  396. package/dist/types/config/infra.d.ts +171 -0
  397. package/dist/types/config/reactivity.d.ts +36 -0
  398. package/dist/types/config/reservedEnv.d.ts +145 -0
  399. package/dist/types/config/schema.d.ts +113 -0
  400. package/dist/types/config/types.d.ts +374 -0
  401. package/dist/types/config/use.d.ts +80 -0
  402. package/dist/types/finder/File.d.ts +26 -0
  403. package/dist/types/finder/FileResult.d.ts +14 -0
  404. package/dist/types/finder/Finder.d.ts +51 -0
  405. package/dist/types/finder/Result.d.ts +10 -0
  406. package/dist/types/index.d.ts +205 -0
  407. package/dist/types/kernel/BootConfigurationError.d.ts +50 -0
  408. package/dist/types/kernel/CliKernel.d.ts +289 -0
  409. package/dist/types/kernel/Kernel.d.ts +1255 -0
  410. package/dist/types/kernel/Module.d.ts +326 -0
  411. package/dist/types/kernel/adminPlane/adminCaller.d.ts +105 -0
  412. package/dist/types/kernel/adminPlane/adminRbac.d.ts +44 -0
  413. package/dist/types/kernel/adminPlane/catalog.d.ts +122 -0
  414. package/dist/types/kernel/adminPlane/executeAdmin.d.ts +99 -0
  415. package/dist/types/kernel/bootReport.d.ts +112 -0
  416. package/dist/types/kernel/checks/deep.d.ts +122 -0
  417. package/dist/types/kernel/checks/freshness.d.ts +49 -0
  418. package/dist/types/kernel/checks/gating.d.ts +134 -0
  419. package/dist/types/kernel/checks/guards.d.ts +57 -0
  420. package/dist/types/kernel/checks/lastBoot.d.ts +189 -0
  421. package/dist/types/kernel/checks/live.d.ts +110 -0
  422. package/dist/types/kernel/checks/packageDeps.d.ts +44 -0
  423. package/dist/types/kernel/checks/readiness.d.ts +97 -0
  424. package/dist/types/kernel/checks/renderReport.d.ts +107 -0
  425. package/dist/types/kernel/checks/report.d.ts +414 -0
  426. package/dist/types/kernel/checks/runDoctor.d.ts +361 -0
  427. package/dist/types/kernel/checks/surface.d.ts +148 -0
  428. package/dist/types/kernel/checks/walk.d.ts +45 -0
  429. package/dist/types/kernel/checks/wiring.d.ts +54 -0
  430. package/dist/types/kernel/commands/AiMcpCommand.d.ts +39 -0
  431. package/dist/types/kernel/commands/AiSyncCommand.d.ts +28 -0
  432. package/dist/types/kernel/commands/BuildCommand.d.ts +13 -0
  433. package/dist/types/kernel/commands/CardCommand.d.ts +34 -0
  434. package/dist/types/kernel/commands/ClusterCommand.d.ts +29 -0
  435. package/dist/types/kernel/commands/CompletionCommand.d.ts +17 -0
  436. package/dist/types/kernel/commands/CreateCommand.d.ts +16 -0
  437. package/dist/types/kernel/commands/DevCommand.d.ts +40 -0
  438. package/dist/types/kernel/commands/DoctorCommand.d.ts +55 -0
  439. package/dist/types/kernel/commands/EnvCommand.d.ts +35 -0
  440. package/dist/types/kernel/commands/GitHooksCommand.d.ts +27 -0
  441. package/dist/types/kernel/commands/InspectCommand.d.ts +59 -0
  442. package/dist/types/kernel/commands/InstallCommand.d.ts +7 -0
  443. package/dist/types/kernel/commands/MenuCommand.d.ts +58 -0
  444. package/dist/types/kernel/commands/OutdatedCommand.d.ts +47 -0
  445. package/dist/types/kernel/commands/ProdCommand.d.ts +29 -0
  446. package/dist/types/kernel/commands/StatusCommand.d.ts +17 -0
  447. package/dist/types/kernel/commands/StopCommand.d.ts +17 -0
  448. package/dist/types/kernel/commands/SymbolsCommand.d.ts +29 -0
  449. package/dist/types/kernel/commands/runtimeLauncher.d.ts +76 -0
  450. package/dist/types/kernel/decorators/kernelDecorator.d.ts +76 -0
  451. package/dist/types/kernel/injector/injector.d.ts +47 -0
  452. package/dist/types/kernel/injector/serviceOrder.d.ts +29 -0
  453. package/dist/types/kernel/inspect/adminSubjects.d.ts +169 -0
  454. package/dist/types/kernel/inspect/docOutline.d.ts +53 -0
  455. package/dist/types/kernel/lifecycleTags.d.ts +79 -0
  456. package/dist/types/kernel/moduleConfig.d.ts +35 -0
  457. package/dist/types/kernel/moduleGating.d.ts +78 -0
  458. package/dist/types/kernel/readinessRegistry.d.ts +104 -0
  459. package/dist/types/kernel/resolveModuleEntry.d.ts +46 -0
  460. package/dist/types/mcp/caller.d.ts +55 -0
  461. package/dist/types/mcp/guard.d.ts +66 -0
  462. package/dist/types/mcp/protocol.d.ts +163 -0
  463. package/dist/types/mcp/server.d.ts +70 -0
  464. package/dist/types/mcp/tools.d.ts +209 -0
  465. package/dist/types/oauth/authorizationServer.d.ts +204 -0
  466. package/dist/types/oauth/protectedResource.d.ts +339 -0
  467. package/dist/types/realtime/IRealtimeSocket.d.ts +142 -0
  468. package/dist/types/realtime/IRealtimeTransport.d.ts +50 -0
  469. package/dist/types/realtime/JsonRpcPeer.d.ts +251 -0
  470. package/dist/types/realtime/RealtimeEventMap.d.ts +269 -0
  471. package/dist/types/realtime/channelRate.d.ts +55 -0
  472. package/dist/types/realtime/platformChannels.d.ts +147 -0
  473. package/dist/types/runtime/GcScheduler.d.ts +96 -0
  474. package/dist/types/runtime/RequestContext.d.ts +152 -0
  475. package/dist/types/runtime/bearer.d.ts +88 -0
  476. package/dist/types/runtime/engineEnvironment.d.ts +115 -0
  477. package/dist/types/runtime/loadEnv.d.ts +86 -0
  478. package/dist/types/runtime/pageFacets.d.ts +104 -0
  479. package/dist/types/runtime/pageFilters.d.ts +139 -0
  480. package/dist/types/runtime/pageGuard.d.ts +78 -0
  481. package/dist/types/runtime/pageQuery.d.ts +138 -0
  482. package/dist/types/runtime/pageSort.d.ts +86 -0
  483. package/dist/types/runtime/redact.d.ts +27 -0
  484. package/dist/types/runtime/withTimeout.d.ts +51 -0
  485. package/dist/types/service/cluster/ClusterManager.d.ts +112 -0
  486. package/dist/types/service/cluster/ClusterProbeAggregator.d.ts +68 -0
  487. package/dist/types/service/cluster/ClusterRelay.d.ts +57 -0
  488. package/dist/types/service/cluster/clusterMaster.d.ts +40 -0
  489. package/dist/types/service/cluster/clusterMessage.d.ts +94 -0
  490. package/dist/types/service/cluster/cpuQuota.d.ts +37 -0
  491. package/dist/types/service/cluster/instanceProbe.d.ts +82 -0
  492. package/dist/types/service/cluster/podEnvironment.d.ts +35 -0
  493. package/dist/types/service/cluster/processProbe.d.ts +53 -0
  494. package/dist/types/service/cluster/richProcessProbe.d.ts +77 -0
  495. package/dist/types/service/cluster/topology.d.ts +64 -0
  496. package/dist/types/service/dev/BootReporter.d.ts +67 -0
  497. package/dist/types/service/dev/DevSupervisor.d.ts +117 -0
  498. package/dist/types/service/dev/bootVerdict.d.ts +99 -0
  499. package/dist/types/service/dev/detachedStart.d.ts +164 -0
  500. package/dist/types/service/dev/devProcess.d.ts +638 -0
  501. package/dist/types/service/dev/devProjects.d.ts +121 -0
  502. package/dist/types/service/dev/devStatusReport.d.ts +141 -0
  503. package/dist/types/service/dev/devStop.d.ts +57 -0
  504. package/dist/types/service/fetchService.d.ts +29 -0
  505. package/dist/types/service/gitService.d.ts +24 -0
  506. package/dist/types/syslog/Pdu.d.ts +134 -0
  507. package/dist/types/syslog/Syslog.d.ts +482 -0
  508. package/dist/types/syslog/drivers/ClusterFileLogDriver.d.ts +40 -0
  509. package/dist/types/syslog/drivers/FileLogDriver.d.ts +55 -0
  510. package/dist/types/syslog/drivers/ILogDriver.d.ts +177 -0
  511. package/dist/types/syslog/drivers/LokiLogDriver.d.ts +44 -0
  512. package/dist/types/syslog/drivers/MemoryLogDriver.d.ts +20 -0
  513. package/dist/types/syslog/drivers/OpenSearchLogDriver.d.ts +40 -0
  514. package/dist/types/syslog/drivers/builtinLogDrivers.d.ts +43 -0
  515. package/dist/types/syslog/drivers/filterPdus.d.ts +21 -0
  516. package/dist/types/syslog/drivers/logDriverRegistry.d.ts +100 -0
  517. package/dist/types/syslog/drivers/opensearchShared.d.ts +11 -0
  518. package/dist/types/syslog/drivers/pduFlow.d.ts +53 -0
  519. package/dist/types/syslog/drivers/pduProtocol.d.ts +20 -0
  520. package/dist/types/syslog/httpFetch.d.ts +48 -0
  521. package/dist/types/syslog/logColor.d.ts +59 -0
  522. package/dist/types/syslog/sinks/FileSink.d.ts +78 -0
  523. package/dist/types/syslog/transports/BatchingHttpTransport.d.ts +59 -0
  524. package/dist/types/syslog/transports/ConsoleTransport.d.ts +8 -0
  525. package/dist/types/syslog/transports/FileTransport.d.ts +13 -0
  526. package/dist/types/syslog/transports/HttpTransport.d.ts +15 -0
  527. package/dist/types/syslog/transports/LokiTransport.d.ts +45 -0
  528. package/dist/types/syslog/transports/OpenSearchTransport.d.ts +40 -0
  529. package/dist/types/syslog/transports/SyslogTransport.d.ts +9 -0
  530. package/dist/types/syslog/transports/index.d.ts +12 -0
  531. package/dist/types/testing/index.d.ts +197 -0
  532. package/dist/types/types/IAdminApi.d.ts +246 -0
  533. package/dist/types/types/ICliKernel.d.ts +28 -0
  534. package/dist/types/types/ICommand.d.ts +14 -0
  535. package/dist/types/types/IContainer.d.ts +35 -0
  536. package/dist/types/types/IIdempotencyStore.d.ts +159 -0
  537. package/dist/types/types/IKernel.d.ts +138 -0
  538. package/dist/types/types/IMcpTool.d.ts +157 -0
  539. package/dist/types/types/IModule.d.ts +73 -0
  540. package/dist/types/types/IModuleManifest.d.ts +49 -0
  541. package/dist/types/types/IPage.d.ts +119 -0
  542. package/dist/types/types/IService.d.ts +62 -0
  543. package/dist/types/types/ISyslog.d.ts +58 -0
  544. package/dist/types/types/ITransport.d.ts +5 -0
  545. package/dist/types/types/globals.d.ts +47 -0
  546. package/docs/angular-services.md +318 -0
  547. package/docs/catalogue.md +184 -0
  548. package/docs/cli.md +369 -0
  549. package/docs/client.md +616 -0
  550. package/docs/debugbar.md +218 -0
  551. package/docs/environnement.md +308 -0
  552. package/docs/index.md +388 -0
  553. package/docs/kernel.md +670 -0
  554. package/docs/progression.md +228 -0
  555. package/docs/react-hooks.md +686 -0
  556. package/docs/request-context.md +507 -0
  557. package/docs/service.md +590 -0
  558. package/docs/svelte-reactivite.md +293 -0
  559. package/docs/syslog.md +848 -0
  560. package/docs/testing.md +203 -0
  561. package/docs/vue-composables.md +255 -0
  562. package/man/nodefony.1 +152 -0
  563. package/package.json +163 -83
  564. package/templates/app/agents/AGENTS.md.tpl +967 -0
  565. package/templates/app/agents/POINTEUR.md.tpl +12 -0
  566. package/templates/app/base/Dockerfile.tpl +104 -0
  567. package/templates/app/base/README.md.tpl +314 -0
  568. package/templates/app/base/dockerignore.tpl +28 -0
  569. package/templates/app/base/env.ts.tpl +130 -0
  570. package/templates/app/base/gitattributes.tpl +28 -0
  571. package/templates/app/base/github/workflows/ci.yml.tpl +91 -0
  572. package/templates/app/base/gitignore.tpl +46 -0
  573. package/templates/app/base/gitlab-ci.yml.tpl +42 -0
  574. package/templates/app/base/index.ts.tpl +69 -0
  575. package/templates/app/base/nodefony.config.ts.tpl +342 -0
  576. package/templates/app/base/oxlintrc.json.tpl +127 -0
  577. package/templates/app/base/package.json.tpl +75 -0
  578. package/templates/app/base/prettierignore.tpl +24 -0
  579. package/templates/app/base/prettierrc.json.tpl +12 -0
  580. package/templates/app/base/rolldown.config.ts.tpl +8 -0
  581. package/templates/app/base/tests/config.test.ts.tpl +29 -0
  582. package/templates/app/base/tests/e2e.setup.ts.tpl +181 -0
  583. package/templates/app/base/tests/e2e.test.ts.tpl +105 -0
  584. package/templates/app/base/tests/migrations.e2e.test.ts.tpl +579 -0
  585. package/templates/app/base/tsconfig.json.tpl +47 -0
  586. package/templates/app/base/vitest.config.ts.tpl +88 -0
  587. package/templates/app/base/vitest.e2e.config.ts.tpl +39 -0
  588. package/templates/app/complete/compose.yaml.tpl +328 -0
  589. package/templates/app/complete/deploy/migrate-job.yaml.tpl +100 -0
  590. package/templates/app/complete/docker/db/init-nodefony-e2e.sql.tpl +30 -0
  591. package/templates/app/complete/docker/grafana/provisioning/datasources/loki.yaml.tpl +15 -0
  592. package/templates/app/complete/env.local.tpl +11 -0
  593. package/templates/app/complete/env.tpl +53 -0
  594. package/templates/app/complete/nodefony/entity/User.ts.tpl +69 -0
  595. package/templates/app/complete/nodefony/security/provisionUsers.ts.tpl +124 -0
  596. package/templates/app/complete/nodefony/service/AppBannerService.ts.tpl +98 -0
  597. package/templates/app/complete/nodefony/service/AppInfoService.ts.tpl +85 -0
  598. package/templates/app/frontend/angular/frontend/src/accent.css.tpl +34 -0
  599. package/templates/app/frontend/angular/frontend/src/app/app.component.ts.tpl +400 -0
  600. package/templates/app/frontend/react/frontend/src/App.tsx.tpl +421 -0
  601. package/templates/app/frontend/react/frontend/src/accent.css.tpl +30 -0
  602. package/templates/app/frontend/shared/frontend/src/brand.ts.tpl +3 -0
  603. package/templates/app/frontend/shared/frontend/src/showcase.css.tpl +224 -0
  604. package/templates/app/frontend/shared/nodefony/controllers/AppController.ts.tpl +45 -0
  605. package/templates/app/frontend/svelte/frontend/src/App.svelte.tpl +371 -0
  606. package/templates/app/frontend/svelte/frontend/src/accent.css.tpl +34 -0
  607. package/templates/app/frontend/vue/frontend/src/App.vue.tpl +367 -0
  608. package/templates/app/frontend/vue/frontend/src/accent.css.tpl +34 -0
  609. package/templates/app/home/nodefony/controllers/HomeController.ts.tpl +38 -0
  610. package/templates/command/nodefony/command/__NAME__.ts.tpl +132 -0
  611. package/templates/controller/duplex/nodefony/controllers/__NAME__.ts.tpl +188 -0
  612. package/templates/controller/example/nodefony/controllers/__NAME__.ts.tpl +348 -0
  613. package/templates/controller/hello/nodefony/controllers/__NAME__.ts.tpl +143 -0
  614. package/templates/controller/realtime/nodefony/controllers/__NAME__.ts.tpl +153 -0
  615. package/templates/controller/realtime/tests/__KEBAB__-realtime.test.ts.tpl +79 -0
  616. package/templates/controller/rest/nodefony/controllers/__NAME__.ts.tpl +159 -0
  617. package/templates/entity/base/nodefony/entity/__PASCAL__.schema.ts.tpl +31 -0
  618. package/templates/entity/base/nodefony/entity/__PASCAL__.ts.tpl +68 -0
  619. package/templates/entity/controller/nodefony/controllers/__PASCAL__Controller.ts.tpl +335 -0
  620. package/templates/entity/service/nodefony/service/__PASCAL__Service.ts.tpl +126 -0
  621. package/templates/entity/tests/tests/__KEBAB__.e2e.test.ts.tpl +358 -0
  622. package/templates/entity/tests/tests/__KEBAB__.test.ts.tpl +87 -0
  623. package/templates/front/angular/frontend/src/app/app.component.ts.tpl +30 -0
  624. package/templates/front/base/nodefony/controllers/__NAME__.ts.tpl +60 -0
  625. package/templates/front/react/frontend/src/App.tsx.tpl +26 -0
  626. package/templates/front/svelte/frontend/src/App.svelte.tpl +19 -0
  627. package/templates/front/vue/frontend/src/App.vue.tpl +23 -0
  628. package/templates/module/ai/AGENTS.md.tpl +71 -0
  629. package/templates/module/base/README.md.tpl +62 -0
  630. package/templates/module/base/docs/index.md.tpl +55 -0
  631. package/templates/module/base/index.ts.tpl +50 -0
  632. package/templates/module/base/nodefony/config/config.ts.tpl +60 -0
  633. package/templates/module/base/nodefony/config/defineModuleConfig.ts.tpl +55 -0
  634. package/templates/module/base/nodefony/src/errors/__PASCAL__Error.ts.tpl +20 -0
  635. package/templates/module/base/package.json.tpl +53 -0
  636. package/templates/module/base/rolldown.config.ts.tpl +14 -0
  637. package/templates/module/base/tests/__KEBAB__.test.ts.tpl +39 -0
  638. package/templates/module/base/tsconfig.json.tpl +42 -0
  639. package/templates/module/base/vitest.config.ts.tpl +27 -0
  640. package/templates/module/packages/CLAUDE.md.tpl +51 -0
  641. package/templates/module/packages/MEMORY.md.tpl +39 -0
  642. package/templates/module/packages/tsconfig.declarations.json.tpl +19 -0
  643. package/templates/module/packages/tsconfig.tests.json.tpl +11 -0
  644. package/templates/module/service/nodefony/interfaces/I__PASCAL__Service.ts.tpl +14 -0
  645. package/templates/module/service/nodefony/interfaces/index.ts.tpl +1 -0
  646. package/templates/module/service/nodefony/service/__PASCAL__Service.ts.tpl +116 -0
  647. package/templates/service/nodefony/interfaces/I__PASCAL__Service.ts.tpl +19 -0
  648. package/templates/service/nodefony/service/__PASCAL__Service.ts.tpl +136 -0
  649. package/templates/service/tests/__PASCAL__Service.test.ts.tpl +53 -0
  650. package/templates/shared/front-entry/angular/frontend/src/main.ts.tpl +17 -0
  651. package/templates/shared/front-entry/react/frontend/src/main.tsx.tpl +11 -0
  652. package/templates/shared/front-entry/svelte/frontend/src/main.ts.tpl +13 -0
  653. package/templates/shared/front-entry/vue/frontend/src/main.ts.tpl +12 -0
  654. package/templates/shared/front-registrar/nodefony/frontend/register__PASCAL__Entry.ts.tpl +40 -0
  655. package/templates/shared/front-shell/frontend/index.html.tpl +39 -0
  656. package/templates/shared/ng-app-tsconfig/frontend/tsconfig.app.json.tpl +18 -0
  657. package/templates/shared/svelte-shim/frontend/src/env.d.ts.tpl +12 -0
  658. package/templates/shared/vue-shim/frontend/src/env.d.ts.tpl +15 -0
  659. package/.yarnclean +0 -45
  660. package/CHANGELOG.md +0 -406
  661. package/autoloader.es6 +0 -253
  662. package/builder.es6 +0 -366
  663. package/cli/builder/bundles/bundle.js +0 -328
  664. package/cli/builder/bundles/controller.js +0 -73
  665. package/cli/builder/bundles/users-bundle/.yarnclean +0 -45
  666. package/cli/builder/bundles/users-bundle/Command/fixtureTask.js +0 -47
  667. package/cli/builder/bundles/users-bundle/Command/usersCommand.js +0 -105
  668. package/cli/builder/bundles/users-bundle/Entity/mongoose/userEntity.js +0 -168
  669. package/cli/builder/bundles/users-bundle/Entity/sequelize/userEntity.js +0 -231
  670. package/cli/builder/bundles/users-bundle/Fixtures/users.js +0 -117
  671. package/cli/builder/bundles/users-bundle/Fixtures/usersFixtures.js +0 -114
  672. package/cli/builder/bundles/users-bundle/Resources/config/config.js +0 -90
  673. package/cli/builder/bundles/users-bundle/Resources/config/routing.js +0 -17
  674. package/cli/builder/bundles/users-bundle/Resources/config/security.js +0 -96
  675. package/cli/builder/bundles/users-bundle/Resources/config/services.js +0 -7
  676. package/cli/builder/bundles/users-bundle/Resources/config/webpack/webpack.dev.config.js +0 -13
  677. package/cli/builder/bundles/users-bundle/Resources/config/webpack/webpack.prod.config.js +0 -31
  678. package/cli/builder/bundles/users-bundle/Resources/config/webpack.config.js +0 -146
  679. package/cli/builder/bundles/users-bundle/Resources/js/users.js +0 -153
  680. package/cli/builder/bundles/users-bundle/Resources/public/favicon.ico +0 -0
  681. package/cli/builder/bundles/users-bundle/Resources/public/images/users-logo.png +0 -0
  682. package/cli/builder/bundles/users-bundle/Resources/scss/awesome/font-awesome.config.js +0 -11
  683. package/cli/builder/bundles/users-bundle/Resources/scss/custom.scss +0 -23
  684. package/cli/builder/bundles/users-bundle/Resources/scss/users.scss +0 -59
  685. package/cli/builder/bundles/users-bundle/Resources/swagger/openapi/login.js +0 -235
  686. package/cli/builder/bundles/users-bundle/Resources/swagger/openapi/users.js +0 -232
  687. package/cli/builder/bundles/users-bundle/Resources/translations/login.en_en.yml +0 -14
  688. package/cli/builder/bundles/users-bundle/Resources/translations/login.fr_fr.yml +0 -14
  689. package/cli/builder/bundles/users-bundle/Resources/translations/users.en_en.yml +0 -35
  690. package/cli/builder/bundles/users-bundle/Resources/translations/users.fr_fr.yml +0 -36
  691. package/cli/builder/bundles/users-bundle/Resources/views/base.html.twig +0 -32
  692. package/cli/builder/bundles/users-bundle/Resources/views/footer.html.twig +0 -7
  693. package/cli/builder/bundles/users-bundle/Resources/views/header.html.twig +0 -90
  694. package/cli/builder/bundles/users-bundle/Resources/views/login/login.html.twig +0 -43
  695. package/cli/builder/bundles/users-bundle/Resources/views/users/createUser.html.twig +0 -296
  696. package/cli/builder/bundles/users-bundle/Resources/views/users/readUsers.html.twig +0 -94
  697. package/cli/builder/bundles/users-bundle/controller/api/graphql/graphqlController.js +0 -56
  698. package/cli/builder/bundles/users-bundle/controller/api/graphql/userResolver.js +0 -121
  699. package/cli/builder/bundles/users-bundle/controller/api/graphql/usertype.js +0 -58
  700. package/cli/builder/bundles/users-bundle/controller/api/openapi/loginApiController.js +0 -210
  701. package/cli/builder/bundles/users-bundle/controller/api/openapi/restUserController.js +0 -244
  702. package/cli/builder/bundles/users-bundle/controller/loginController.js +0 -91
  703. package/cli/builder/bundles/users-bundle/controller/usersController.js +0 -332
  704. package/cli/builder/bundles/users-bundle/package.json +0 -58
  705. package/cli/builder/bundles/users-bundle/readme.md +0 -360
  706. package/cli/builder/bundles/users-bundle/services/usersService.js +0 -411
  707. package/cli/builder/bundles/users-bundle/src/providers/mongoose/userProvider.js +0 -47
  708. package/cli/builder/bundles/users-bundle/src/providers/sequelize/userProvider.js +0 -48
  709. package/cli/builder/bundles/users-bundle/tests/loginTest.js +0 -182
  710. package/cli/builder/bundles/users-bundle/usersBundle.js +0 -26
  711. package/cli/builder/microService/microService.js +0 -261
  712. package/cli/builder/microService/skeletons/.editorconfig +0 -18
  713. package/cli/builder/microService/skeletons/.env-cmdrc.js +0 -32
  714. package/cli/builder/microService/skeletons/.jshintrc +0 -37
  715. package/cli/builder/microService/skeletons/README.md +0 -117
  716. package/cli/builder/microService/skeletons/bin/bash/hello.sh +0 -5
  717. package/cli/builder/microService/skeletons/bin/cli +0 -13
  718. package/cli/builder/microService/skeletons/bin/python/hello.py +0 -20
  719. package/cli/builder/microService/skeletons/config/config.js +0 -29
  720. package/cli/builder/microService/skeletons/config/pm2.config.js +0 -72
  721. package/cli/builder/microService/skeletons/config/webpack/webpack.config.dev.js +0 -8
  722. package/cli/builder/microService/skeletons/config/webpack/webpack.config.prod.js +0 -25
  723. package/cli/builder/microService/skeletons/config/webpack.config.js +0 -114
  724. package/cli/builder/microService/skeletons/package.json +0 -76
  725. package/cli/builder/microService/skeletons/src/browser/index.css +0 -3
  726. package/cli/builder/microService/skeletons/src/browser/index.js +0 -16
  727. package/cli/builder/microService/skeletons/src/browser/socketio.js +0 -46
  728. package/cli/builder/microService/skeletons/src/cli/cli.js +0 -224
  729. package/cli/builder/microService/skeletons/src/cli/menu.js +0 -28
  730. package/cli/builder/microService/skeletons/src/n-api/README.md +0 -1
  731. package/cli/builder/microService/skeletons/src/n-api/binding.gyp +0 -14
  732. package/cli/builder/microService/skeletons/src/n-api/hello.cc +0 -14
  733. package/cli/builder/microService/skeletons/src/n-api/hello.js +0 -23
  734. package/cli/builder/microService/skeletons/src/n-api/package.json +0 -15
  735. package/cli/builder/microService/skeletons/src/node/examples/index.js +0 -120
  736. package/cli/builder/microService/skeletons/src/node/index.js +0 -102
  737. package/cli/builder/microService/skeletons/src/node/services/markdown/markdown.js +0 -27
  738. package/cli/builder/microService/skeletons/src/node/services/servers/http.js +0 -45
  739. package/cli/builder/microService/skeletons/src/node/services/servers/https.js +0 -44
  740. package/cli/builder/microService/skeletons/src/node/services/socketio/socketio.js +0 -46
  741. package/cli/builder/microService/skeletons/src/node/services/syscall/syscall.js +0 -111
  742. package/cli/builder/microService/skeletons/src/node/services/worker/thread.js +0 -59
  743. package/cli/builder/microService/skeletons/src/node/services/worker/worker.js +0 -60
  744. package/cli/builder/microService/skeletons/src/templates/base.html +0 -12
  745. package/cli/builder/microService/skeletons/src/templates/socket.html +0 -23
  746. package/cli/builder/microService/skeletons/tests/unit/serviceTest.js +0 -30
  747. package/cli/builder/project/project.js +0 -474
  748. package/cli/builder/project/skeletons/README.md +0 -778
  749. package/cli/builder/project/skeletons/bin/dev-deploy.sh +0 -5
  750. package/cli/builder/project/skeletons/bin/generateCertificates.sh.skeleton +0 -180
  751. package/cli/builder/project/skeletons/bin/prod-deploy.sh +0 -3
  752. package/cli/builder/project/skeletons/config/config.js.skeleton +0 -178
  753. package/cli/builder/project/skeletons/config/openssl/ca/openssl.cnf.skeleton +0 -150
  754. package/cli/builder/project/skeletons/config/openssl/ca_intermediate/openssl.cnf.skeleton +0 -152
  755. package/cli/builder/project/skeletons/config/pm2.config.js.skeleton +0 -62
  756. package/cli/builder/project/skeletons/documentation.html.twig +0 -24
  757. package/cli/builder/project/skeletons/editorconfig.skeleton +0 -18
  758. package/cli/builder/project/skeletons/eslintignore.skeleton +0 -15
  759. package/cli/builder/project/skeletons/eslintrc.js.skeleton +0 -97
  760. package/cli/builder/project/skeletons/gitignore.skeleton +0 -32
  761. package/cli/builder/project/skeletons/migrations/2022.12.25T17.37.37.entity-user.js +0 -137
  762. package/cli/builder/project/skeletons/migrations/2022.12.25T17.37.38.entity-session.js +0 -97
  763. package/cli/builder/project/skeletons/migrations/2022.12.25T17.37.39.entity-requests.js +0 -115
  764. package/cli/builder/project/skeletons/migrations/2022.12.25T17.37.40.entity-jwts.js +0 -97
  765. package/cli/builder/project/skeletons/migrations/migrations.skeleton.js +0 -101
  766. package/cli/builder/project/skeletons/package.json.twig +0 -71
  767. package/cli/builder/react/reactBuilder.js +0 -224
  768. package/cli/builder/react/skeletons/app/Resources/databases/nodefony.db +0 -0
  769. package/cli/builder/react/skeletons/app/Resources/translations/messages.en_en.yml +0 -5
  770. package/cli/builder/react/skeletons/app/Resources/translations/messages.fr_fr.yml +0 -5
  771. package/cli/builder/react/skeletons/app/Resources/views/base.html.twig +0 -33
  772. package/cli/builder/react/skeletons/app/config/config.js +0 -392
  773. package/cli/builder/react/skeletons/app/config/routing.js +0 -10
  774. package/cli/builder/react/skeletons/app/config/security.js +0 -74
  775. package/cli/builder/react/skeletons/app/controller/appController.js +0 -22
  776. package/cli/builder/sandbox/sandBoxBuilder.js +0 -610
  777. package/cli/builder/sandbox/skeletons/Resources/css/entry.css +0 -48
  778. package/cli/builder/sandbox/skeletons/Resources/js/entry.js +0 -60
  779. package/cli/builder/sandbox/skeletons/Resources/public/manifest.json +0 -32
  780. package/cli/builder/sandbox/skeletons/Resources/translations/messages.en_en.yml +0 -5
  781. package/cli/builder/sandbox/skeletons/Resources/translations/messages.fr_fr.yml +0 -5
  782. package/cli/builder/sandbox/skeletons/Resources/views/base.html.twig +0 -46
  783. package/cli/builder/sandbox/skeletons/Resources/views/index.html.twig +0 -34
  784. package/cli/builder/sandbox/skeletons/bootstrap/custom.scss +0 -27
  785. package/cli/builder/sandbox/skeletons/bootstrap/entry.scss +0 -60
  786. package/cli/builder/sandbox/skeletons/workbox/templates/index.html.twig +0 -32
  787. package/cli/builder/sandbox/skeletons/workbox/workers/service-worker.js +0 -196
  788. package/cli/builder/skeletons/Resources/public/favicon.ico +0 -0
  789. package/cli/builder/skeletons/Resources/public/images/app-logo.png +0 -0
  790. package/cli/builder/skeletons/Resources/views/framework-bundle/views/401.html.twig +0 -1
  791. package/cli/builder/skeletons/Resources/views/framework-bundle/views/401.json.twig +0 -24
  792. package/cli/builder/skeletons/Resources/views/framework-bundle/views/403.html.twig +0 -1
  793. package/cli/builder/skeletons/Resources/views/framework-bundle/views/403.json.twig +0 -20
  794. package/cli/builder/skeletons/Resources/views/framework-bundle/views/404.html.twig +0 -1
  795. package/cli/builder/skeletons/Resources/views/framework-bundle/views/404.json.twig +0 -20
  796. package/cli/builder/skeletons/Resources/views/framework-bundle/views/500.html.twig +0 -1
  797. package/cli/builder/skeletons/Resources/views/framework-bundle/views/base.html.twig +0 -30
  798. package/cli/builder/skeletons/Resources/views/framework-bundle/views/exception.html.twig +0 -1
  799. package/cli/builder/skeletons/Resources/views/framework-bundle/views/exception.json.twig +0 -24
  800. package/cli/builder/skeletons/Resources/views/framework-bundle/views/footer.html.twig +0 -33
  801. package/cli/builder/skeletons/Resources/views/framework-bundle/views/header.html.twig +0 -6
  802. package/cli/builder/skeletons/Resources/views/framework-bundle/views/index.html.twig +0 -6
  803. package/cli/builder/skeletons/Resources/views/framework-bundle/views/index.json.twig +0 -1
  804. package/cli/builder/skeletons/Resources/views/framework-bundle/views/layout.html.twig +0 -125
  805. package/cli/builder/skeletons/Resources/views/framework-bundle/views/layout.json.twig +0 -5
  806. package/cli/builder/skeletons/Resources/views/framework-bundle/views/timeout.html.twig +0 -1
  807. package/cli/builder/skeletons/Resources/views/framework-bundle/views/timeout.json.twig +0 -24
  808. package/cli/builder/skeletons/app/appKernel.js +0 -133
  809. package/cli/builder/skeletons/binding/binding.cc +0 -26
  810. package/cli/builder/skeletons/binding/binding.skeleton +0 -8
  811. package/cli/builder/skeletons/bundle/bundleClass.js +0 -37
  812. package/cli/builder/skeletons/command/commandClass.js +0 -11
  813. package/cli/builder/skeletons/command/taskClass.js +0 -20
  814. package/cli/builder/skeletons/config/config.js +0 -138
  815. package/cli/builder/skeletons/config/nodefony/elastic-bundle.js +0 -37
  816. package/cli/builder/skeletons/config/nodefony/framework-bundle.js +0 -22
  817. package/cli/builder/skeletons/config/nodefony/http-bundle.js +0 -104
  818. package/cli/builder/skeletons/config/nodefony/mail-bundle.js +0 -44
  819. package/cli/builder/skeletons/config/nodefony/mongoose-bundle.js +0 -51
  820. package/cli/builder/skeletons/config/nodefony/monitoring-bundle.js +0 -34
  821. package/cli/builder/skeletons/config/nodefony/realtime-bundle.js +0 -15
  822. package/cli/builder/skeletons/config/nodefony/redis-bundle.js +0 -44
  823. package/cli/builder/skeletons/config/nodefony/security-bundle.js +0 -25
  824. package/cli/builder/skeletons/config/nodefony/sequelize-bundle.js +0 -156
  825. package/cli/builder/skeletons/config/routing.js +0 -55
  826. package/cli/builder/skeletons/config/security.js +0 -102
  827. package/cli/builder/skeletons/config/services.js +0 -1
  828. package/cli/builder/skeletons/config/webpack/webpack.dev.config.js +0 -13
  829. package/cli/builder/skeletons/config/webpack/webpack.prod.config.js +0 -20
  830. package/cli/builder/skeletons/config/webpack.config.js +0 -148
  831. package/cli/builder/skeletons/controller/controllerClass.js +0 -75
  832. package/cli/builder/skeletons/package.json.twig +0 -57
  833. package/cli/builder/skeletons/unittest/testFile.js +0 -46
  834. package/cli/builder/vue/skeletons/Resources/public/images/app-logo.png +0 -0
  835. package/cli/builder/vue/skeletons/Resources/translations/messages.en_en.yml +0 -5
  836. package/cli/builder/vue/skeletons/Resources/translations/messages.fr_fr.yml +0 -5
  837. package/cli/builder/vue/skeletons/vue.config.js +0 -129
  838. package/cli/builder/vue/vueBuilder.js +0 -410
  839. package/cli/generate/generate.es6 +0 -103
  840. package/cli/install/install.js +0 -190
  841. package/cli/sequelize/sequelize.js +0 -94
  842. package/cli/start.js +0 -702
  843. package/cli/tools/pm2.es6 +0 -112
  844. package/cli/tools/tools.es6 +0 -97
  845. package/cli.es6 +0 -925
  846. package/container.es6 +0 -272
  847. package/error.es6 +0 -293
  848. package/fileClass.es6 +0 -242
  849. package/finder/file.es6 +0 -33
  850. package/finder/fileResult.es6 +0 -138
  851. package/finder/finder2.es6 +0 -275
  852. package/finder.es6 +0 -427
  853. package/kernel/annotations/annotations.es6 +0 -286
  854. package/kernel/api/api.es6 +0 -61
  855. package/kernel/api/graphqlApi.es6 +0 -107
  856. package/kernel/api/jsonApi.es6 +0 -177
  857. package/kernel/api/openApi.es6 +0 -139
  858. package/kernel/api/schemas/openApiSchema.js +0 -394
  859. package/kernel/babylon.es6 +0 -162
  860. package/kernel/bundle.es6 +0 -1200
  861. package/kernel/cliKernel.es6 +0 -869
  862. package/kernel/command.es6 +0 -78
  863. package/kernel/commands/nodefonyCommand.es6 +0 -247
  864. package/kernel/commands/tasks/bundlesTask.es6 +0 -59
  865. package/kernel/controllers/controller.es6 +0 -791
  866. package/kernel/fixture.es6 +0 -19
  867. package/kernel/injections/injections.es6 +0 -424
  868. package/kernel/kernel.es6 +0 -1960
  869. package/kernel/kernelWatcher.es6 +0 -387
  870. package/kernel/orm/entity.es6 +0 -59
  871. package/kernel/orm/orm.es6 +0 -139
  872. package/kernel/reader.es6 +0 -290
  873. package/kernel/security/encoder.es6 +0 -17
  874. package/kernel/security/factories/factory.es6 +0 -111
  875. package/kernel/security/factories/passeportFactory.es6 +0 -61
  876. package/kernel/security/provider.es6 +0 -58
  877. package/kernel/security/providers/chainProvider.es6 +0 -99
  878. package/kernel/security/providers/memoryProvider.es6 +0 -55
  879. package/kernel/security/providers/providerManager.es6 +0 -67
  880. package/kernel/security/providers/userEntityProvider.es6 +0 -50
  881. package/kernel/security/role.es6 +0 -12
  882. package/kernel/security/secureArea.es6 +0 -431
  883. package/kernel/security/tokens/token.es6 +0 -171
  884. package/kernel/security/user.es6 +0 -106
  885. package/kernel/serviceRealTime.es6 +0 -21
  886. package/kernel/services/connectionsService.es6 +0 -93
  887. package/kernel/services/cron/cronService.es6 +0 -123
  888. package/kernel/task.es6 +0 -80
  889. package/kernel/templates.es6 +0 -22
  890. package/kernel/templating/twig.es6 +0 -218
  891. package/kernel/tests/cliTest.js +0 -59
  892. package/kernel/tests/containerTest.js +0 -232
  893. package/kernel/tests/kernelTest.js +0 -39
  894. package/nodefony.es6 +0 -1084
  895. package/notificationsCenter.es6 +0 -118
  896. package/protocol.es6 +0 -86
  897. package/protocols/bayeux.es6 +0 -174
  898. package/protocols/jsonRpc/jsonrpc.es6 +0 -56
  899. package/result.es6 +0 -99
  900. package/service.es6 +0 -288
  901. package/syslog/pdu.es6 +0 -141
  902. package/syslog/syslog.es6 +0 -754
  903. package/watcher.es6 +0 -113
@@ -0,0 +1,157 @@
1
+ /**
2
+ * Contrat d'un outil **Model Context Protocol** — défini dans le CORE.
3
+ *
4
+ * Vit ici, et non dans le module qui sert la porte HTTP, pour la raison qui
5
+ * gouverne déjà {@link IAdminApi} : un outil peut être produit par n'importe
6
+ * quel niveau de la pile — un module métier d'application, un adapter ORM, un
7
+ * futur module IA — et le contrat doit donc résider au plus bas niveau commun.
8
+ * Un contrat logé dans un module `policy: "dev"` obligerait toute application
9
+ * voulant déclarer un outil à dépendre d'un paquet qui disparaît en production.
10
+ *
11
+ * Séparation des rôles :
12
+ * - Ce fichier = **producteur**. Un module déclare *quels* outils il offre, par
13
+ * `getMcpTools()`, sans rien connaître du transport ni du protocole.
14
+ * - `mcp/server.ts` (core) = **protocole**. Il reçoit des outils déjà résolus.
15
+ * - Un controller de module = **transport**. Il traduit HTTP ↔ JSON-RPC.
16
+ */
17
+ /**
18
+ * Ce que rend un outil — du contenu, et l'aveu d'un échec métier.
19
+ *
20
+ * Un échec métier se dit par `isError`, jamais par une exception : le protocole
21
+ * réserve ses erreurs aux fautes de protocole. La distinction compte pour
22
+ * l'agent — une erreur de protocole signifie « tu t'y prends mal », un `isError`
23
+ * signifie « ta demande est recevable, voici pourquoi elle n'aboutit pas » ;
24
+ * c'est la seconde qu'il peut corriger seul.
25
+ */
26
+ export interface IMcpToolResult {
27
+ content: {
28
+ type: "text";
29
+ text: string;
30
+ }[];
31
+ isError?: boolean;
32
+ }
33
+ /**
34
+ * Ce que le transport a pu ÉTABLIR de l'appelant — jamais ce qu'il prétend.
35
+ *
36
+ * La spec autorise le catalogue à varier selon l'autorisation présentée, et
37
+ * pose la condition qui rend cela sûr : « credentials are **per-request input,
38
+ * not connection state** ». D'où cet objet, construit à CHAQUE requête par la
39
+ * porte, et jamais mémorisé entre deux.
40
+ *
41
+ * ⚠️ **Une porte qui n'authentifie pas rend un appelant anonyme** — pas une
42
+ * autorisation implicite. Tant que le rôle *resource server* n'est pas branché,
43
+ * `authenticated` est `false` et `scopes` est vide : les outils qui exigent
44
+ * quoi que ce soit sont retenus, jamais servis par défaut.
45
+ */
46
+ export interface IMcpCaller {
47
+ /**
48
+ * Une identité a-t-elle été PROUVÉE (jeton validé) ?
49
+ *
50
+ * `false` par défaut, et c'est le seul défaut sûr : le jour où quelqu'un
51
+ * branche une porte authentifiée en oubliant de poser ce drapeau, les outils
52
+ * protégés restent invisibles — l'inverse aurait ouvert.
53
+ */
54
+ authenticated: boolean;
55
+ /** Scopes réellement accordés par le serveur d'autorisation. */
56
+ scopes: readonly string[];
57
+ /**
58
+ * Rôles Nodefony de cet appelant — ce sur quoi le plan d'administration
59
+ * tranche.
60
+ *
61
+ * Posés par la PORTE, qui seule connaît sa configuration : une porte non
62
+ * protégée (module de développement, bornée par son périmètre et ses gardes
63
+ * de transport) accorde le rôle d'opérateur et l'ÉNONCE ; une porte protégée
64
+ * les dérive du jeton ({@link rolesFromScopes}) et n'accorde rien d'autre.
65
+ *
66
+ * Champ **obligatoire** : le compilateur force chaque porte à décider. Il l'a
67
+ * été après avoir constaté l'inverse — la lecture d'administration fabriquait
68
+ * un administrateur, donc tout porteur d'un jeton d'audience valide, même
69
+ * sans aucun droit, obtenait tout.
70
+ */
71
+ roles: readonly string[];
72
+ /** Sujet du jeton (`sub`), pour l'audit et pour filtrer les données rendues. */
73
+ subject?: string;
74
+ }
75
+ /** Un outil tel que `tools/list` le publie — sans son implémentation. */
76
+ export interface IMcpToolDefinition {
77
+ /**
78
+ * Identifiant d'appel. Forme admise : `[a-zA-Z0-9_-]{1,64}`.
79
+ *
80
+ * Ce nom ne reste pas dans le serveur — il voyage jusque dans le contexte du
81
+ * modèle. Un nom hors forme n'échoue pas franchement : il produit des appels
82
+ * que rien ne résout.
83
+ */
84
+ name: string;
85
+ /**
86
+ * ⭐ **Le premier critère de déclenchement de l'outil**, avant toute
87
+ * considération technique. Un modèle n'appelle pas ce qu'il ne comprend pas :
88
+ * dire ce que l'outil REND et QUAND s'en servir, pas seulement son nom.
89
+ */
90
+ description: string;
91
+ /** Schéma JSON des arguments attendus. */
92
+ inputSchema: Record<string, unknown>;
93
+ }
94
+ /**
95
+ * Un outil exécutable : ce que `tools/list` publie, plus ce qui répond.
96
+ *
97
+ * C'est le contrat qu'un module implémente pour ajouter un outil à la porte MCP
98
+ * de son application. Le handler ne reçoit QUE les arguments de l'agent : tout
99
+ * ce dont il a besoin par ailleurs (services, kernel, connexions) est capturé
100
+ * par fermeture au moment de la déclaration — le déclarant est un module, il a
101
+ * déjà tout sous la main.
102
+ *
103
+ * @example
104
+ * ```ts
105
+ * import { Module, mcpText, type IMcpTool } from "nodefony";
106
+ *
107
+ * class Shop extends Module {
108
+ * getMcpTools(): IMcpTool[] {
109
+ * return [{
110
+ * name: "shop_stock",
111
+ * description:
112
+ * "Stock réel d'une référence produit. À utiliser avant de proposer " +
113
+ * "une commande — la réponse vient de la base, pas d'un cache.",
114
+ * inputSchema: {
115
+ * type: "object",
116
+ * properties: { sku: { type: "string", description: "Référence" } },
117
+ * required: ["sku"],
118
+ * },
119
+ * handler: async (args) => mcpText(await this.stock(String(args.sku))),
120
+ * }];
121
+ * }
122
+ * }
123
+ * ```
124
+ */
125
+ export interface IMcpTool extends IMcpToolDefinition {
126
+ /**
127
+ * Scopes OAuth exigés — **tous**, pas au moins un.
128
+ *
129
+ * Absent = outil public, servi à qui atteint la porte. Présent, l'outil est
130
+ * **retenu** tant que l'appelant ne les présente pas : il n'apparaît pas dans
131
+ * `tools/list` ET n'est pas appelable en le nommant — un catalogue filtré qui
132
+ * resterait appelable ne serait qu'un rideau.
133
+ *
134
+ * La spec le permet explicitement (`server/tools`) : le jeu d'outils « MAY
135
+ * vary by the authorization presented on the request — for example, returning
136
+ * only the tools the caller's granted scopes permit ». Elle interdit en
137
+ * revanche de le faire varier PAR CONNEXION : c'est pourquoi la décision se
138
+ * prend sur les identifiants de la requête, jamais sur un état retenu.
139
+ */
140
+ scopes?: readonly string[];
141
+ /**
142
+ * Exige une identité prouvée, sans scope particulier.
143
+ *
144
+ * Utile quand l'outil filtre lui-même ce qu'il rend selon
145
+ * {@link IMcpCaller.subject} — « mes commandes », « mes tâches ». Déclarer
146
+ * des {@link IMcpTool.scopes} l'implique déjà.
147
+ */
148
+ requiresAuth?: boolean;
149
+ /**
150
+ * Implémentation. Un échec métier se rend en `isError`, pas en exception.
151
+ *
152
+ * Le second paramètre porte l'appelant ÉTABLI : un outil authentifié doit
153
+ * pouvoir borner ce qu'il rend à son sujet, et pas seulement décider s'il
154
+ * répond. Un handler qui l'ignore reste parfaitement valide.
155
+ */
156
+ handler: (args: Record<string, unknown>, caller: IMcpCaller) => IMcpToolResult | Promise<IMcpToolResult>;
157
+ }
@@ -0,0 +1,73 @@
1
+ import type { IService } from "./IService.js";
2
+ import type { IKernel } from "./IKernel.js";
3
+ import type { JSONObject } from "./globals.js";
4
+ import type { IMcpTool } from "./IMcpTool.js";
5
+ /**
6
+ * Constructeur générique de controller — équivalent au type historique
7
+ * `TypeController<T>` mais exposé via le contract public IModule.
8
+ * Permet aux consommateurs (framework, http, security) de typer leurs
9
+ * controllers sans que le core dépende de @nodefony/framework.
10
+ */
11
+ export type IControllerConstructor<T = unknown> = new (...args: any[]) => T;
12
+ export interface PackageJson {
13
+ name: string;
14
+ version: string;
15
+ description?: string;
16
+ main?: string;
17
+ module?: string;
18
+ types?: string;
19
+ scripts?: Record<string, string>;
20
+ repository?: {
21
+ type: string;
22
+ url: string;
23
+ };
24
+ keywords?: string[];
25
+ author?: string;
26
+ license?: string;
27
+ dependencies?: Record<string, string>;
28
+ devDependencies?: Record<string, string>;
29
+ peerDependencies?: Record<string, string>;
30
+ [key: string]: unknown;
31
+ }
32
+ /**
33
+ * Contrat public d'un module nodefony.
34
+ * Module.ts implémente cette interface.
35
+ *
36
+ * Types Rollup/RollupWatcher/Controller typés unknown — dépendances externes
37
+ * non disponibles ici sans créer des imports circulaires ou des couplages forts.
38
+ */
39
+ export interface IModule extends IService {
40
+ path: string;
41
+ isApp: boolean;
42
+ package?: PackageJson;
43
+ onKernelRegister?(): Promise<this>;
44
+ onKernelBoot?(): Promise<this>;
45
+ onKernelReady?(): Promise<this>;
46
+ init?(kernel?: IKernel): Promise<this>;
47
+ addService(service: unknown, ...args: any[]): Promise<IService>;
48
+ loadService(service: string, ...args: unknown[]): Promise<IService>;
49
+ getDependencies(): string[];
50
+ getController<T = unknown>(name: string): IControllerConstructor<T>;
51
+ getControllers<T = unknown>(): Record<string, IControllerConstructor<T>>;
52
+ getServiceNames(): string[];
53
+ /**
54
+ * Outils que ce module ajoute à la porte MCP de l'application.
55
+ *
56
+ * Optionnel et **lu à la demande** — jamais au boot : un serveur MCP les
57
+ * ramasse au moment de servir `tools/list`, ce qui ne coûte rien tant que
58
+ * personne n'appelle, et rend la liste toujours fraîche. Le module capture par
59
+ * fermeture ce dont ses handlers ont besoin (`this`, ses services).
60
+ *
61
+ * Une déclaration qui lève, rend autre chose qu'un tableau, porte un nom hors
62
+ * forme ou déjà pris est ÉCARTÉE avec un motif journalisé — jamais en silence,
63
+ * sinon son auteur chercherait la faute dans un handler jamais appelé.
64
+ */
65
+ getMcpTools?(): IMcpTool[];
66
+ configSchema(): unknown | null;
67
+ getPackageJson(cwd?: string): Promise<PackageJson>;
68
+ getModuleName(): string | undefined;
69
+ getModuleVersion(): string | undefined;
70
+ install(force?: boolean): Promise<number | Error>;
71
+ outdated(): Promise<number | Error>;
72
+ loadJson(url: string, cwd?: string): Promise<JSONObject>;
73
+ }
@@ -0,0 +1,49 @@
1
+ import type { TypeKernelOptions } from "../kernel/Kernel.js";
2
+ /**
3
+ * Politique de chargement d'un module.
4
+ *
5
+ * - `mandatory` : socle — toujours chargé, non gatable (ex. http, framework, security, studio).
6
+ * - `optional` : chargé sauf si une condition `when` le filtre (valeur par défaut).
7
+ * - `dev` : chargé UNIQUEMENT hors production (outillage, démo, Studio dev).
8
+ *
9
+ * La politique **filtre** ; elle ne **réordonne jamais** — l'ordre de chargement
10
+ * reste l'ordre du tableau du manifeste (cf {@link IModuleManifest}).
11
+ */
12
+ export type ModulePolicy = "mandatory" | "optional" | "dev";
13
+ /**
14
+ * Entrée détaillée d'un manifeste de modules.
15
+ *
16
+ * @see project_module_loading_architecture (mémoire IA) pour la décision d'archi.
17
+ */
18
+ export interface IModuleManifestEntry {
19
+ /** Nom du package/module à charger (résolu par `import()` dynamique). */
20
+ name: string;
21
+ /** Politique de chargement. Défaut : `"optional"`. */
22
+ policy?: ModulePolicy;
23
+ /**
24
+ * Garde de chargement évaluée sur la config fusionnée du kernel. Renvoie `false`
25
+ * → le module est ignoré (non importé = 0 coût boot/mémoire). Ex. ne charger
26
+ * `@nodefony/drizzle` que si `config.orm?.driver === "drizzle"`.
27
+ */
28
+ when?: (config: TypeKernelOptions) => boolean;
29
+ /**
30
+ * Config colocalisée du module (forme `use(name, config)`). Le Kernel la
31
+ * deep-merge sous la config DEFAULT du module à `onPreRegister`, avant la
32
+ * validation Zod du module. Remplace les clés legacy `module-<nom>`.
33
+ */
34
+ config?: Record<string, unknown>;
35
+ }
36
+ /**
37
+ * Manifeste déclaratif des modules d'une application Nodefony, exposé via
38
+ * `config.modules`. Le Kernel en est le **seul orchestrateur** : il lit cette
39
+ * liste, la filtre (policy + `when` + environnement) et charge les modules en
40
+ * série à `onPreRegister`.
41
+ *
42
+ * **Liste ORDONNÉE** : la position dans le tableau = ordre (= priorité) de
43
+ * chargement. Choix volontaire — l'ordre porte des invariants réels (realtime
44
+ * après framework, frontend avant ses consumers, documentation avant studio).
45
+ * `policy`/`when` ne font que filtrer ; ils ne réordonnent pas.
46
+ *
47
+ * Une `string` nue équivaut à `{ name, policy: "optional" }`.
48
+ */
49
+ export type IModuleManifest = (string | IModuleManifestEntry)[];
@@ -0,0 +1,119 @@
1
+ /**
2
+ * **LE contrat de pagination unique de Nodefony.** Tous les stores, toutes les API
3
+ * (présents et futurs) paginent avec ce type — c'est un standard de développement,
4
+ * jamais une pagination maison au cas par cas.
5
+ *
6
+ * Une requête HTTP se traduit en `IPageQuery` par `parsePageQuery(source)` — une
7
+ * fonction **pure**, agnostique de la provenance (query string aujourd'hui, corps
8
+ * d'une requête `QUERY` demain). C'est le seul traducteur : un data plane qui
9
+ * relit `request.query` lui-même refabrique un dialecte.
10
+ *
11
+ * Deux modes, **un seul vocabulaire** :
12
+ * - **offset** (`offset`) — navigation par page directe, pour les backends qui la
13
+ * font nativement (SQL `LIMIT/OFFSET`, Mongo `skip/limit`, fichier, mémoire).
14
+ * - **curseur** (`cursor`) — navigation « après ce jeton », pour les backends sans
15
+ * offset fiable (Redis `SCAN`) ou les flux ordonnés (journal d'audit). Un seul des
16
+ * deux est utilisé selon ce que le store sait faire ; le store le déclare.
17
+ *
18
+ * Les **filtres spécifiques** à un store (rôle, catégorie d'audit, critère ORM…) ne
19
+ * vivent pas ici : chaque store **étend** ce type (`interface XQuery extends
20
+ * IPageQuery { … }`), pour que le socle reste un contrat pur et partagé.
21
+ */
22
+ export interface IPageQuery {
23
+ /** Taille de page — obligatoire (jamais « tout »). */
24
+ limit: number;
25
+ /**
26
+ * Décalage depuis le début de la collection filtrée (mode **offset**). Défaut `0`.
27
+ * Mutuellement exclusif avec {@link IPageQuery.cursor} : un backend n'expose qu'un mode.
28
+ */
29
+ offset?: number;
30
+ /**
31
+ * Jeton de page (mode **curseur**) : ne renvoyer que les éléments situés « après »
32
+ * lui dans l'ordre du store. Obtenu du {@link IPage.nextCursor} de la page précédente.
33
+ */
34
+ cursor?: string;
35
+ /**
36
+ * Tri : couples `[champ, sens]`. Format **tableau** (une clé d'objet inconnue serait
37
+ * silencieusement ignorée). Champs autorisés = définis par le store.
38
+ */
39
+ order?: Array<[string, "ASC" | "DESC"]>;
40
+ /**
41
+ * Renvoyer le total exact ({@link IPage.total}) ou non. `true` par défaut.
42
+ * `false` = mode « Slice » : on saute le `COUNT` coûteux, {@link IPage.hasNext} suffit.
43
+ */
44
+ withTotal?: boolean;
45
+ /**
46
+ * Recherche plein-texte best-effort — le **champ** ciblé et la sémantique (préfixe /
47
+ * sous-chaîne / casse) sont définis par chaque store et documentés côté store.
48
+ */
49
+ q?: string;
50
+ /**
51
+ * **RÉSERVÉ multi-tenant** — slot du contrat pour le scoping par tenant, appliqué
52
+ * **au niveau du store** le jour du chantier tenant.
53
+ *
54
+ * @remarks ⚠️ **Non appliqué aujourd'hui** : le passer n'a aucun effet de filtrage.
55
+ * Présent dès maintenant pour ne pas re-changer la signature d'un contrat public
56
+ * propagé à tous les stores plus tard.
57
+ */
58
+ tenantId?: string | null;
59
+ }
60
+ /**
61
+ * **Une capacité de tri se DÉCLARE** — le socle commun à tout ce qui rend des
62
+ * pages triables (stores de sessions, de jetons, d'endpoints, dépôts
63
+ * d'utilisateurs…).
64
+ *
65
+ * Cette interface existe pour qu'il n'y ait **qu'une** forme à connaître : le
66
+ * nom de la propriété, sa nullabilité et sa sémantique sont écrits ici une fois,
67
+ * au lieu d'être redéclarés — et de diverger — dans chaque contrat de store.
68
+ *
69
+ * Le mécanisme, identique pour toutes les ressources :
70
+ * 1. le store **déclare** ce qu'il sait trier, en vocabulaire public ;
71
+ * 2. le data plane le **demande** et le passe en allowlist à `parsePageQuery` ;
72
+ * 3. tout `?order=` hors de cette liste est refusé en **400** — jamais accepté
73
+ * puis ignoré en silence.
74
+ *
75
+ * D'où la conséquence utile : **le refus est gratuit**. Un backend qui ne sait
76
+ * pas trier (un `SCAN` Redis n'a aucun ordre global) laisse simplement la
77
+ * propriété absente, et rien de plus n'est à écrire pour que le tri y soit
78
+ * refusé. Les capacités PEUVENT donc être inégales d'un backend à l'autre —
79
+ * elles sont alors annoncées, jamais simulées.
80
+ *
81
+ * ⚠️ Là où un backend compose du SQL à la main, cette liste est **aussi une
82
+ * garde de sécurité** : un nom de colonne ne se lie pas en paramètre, il se
83
+ * concatène. Voir `pickOrder`, qui l'applique.
84
+ */
85
+ export interface ISortableSource {
86
+ /**
87
+ * Champs triables, en **noms publics** (ceux de l'URL), ou absent si ce
88
+ * backend ne sait pas trier.
89
+ */
90
+ readonly sortableFields?: readonly string[];
91
+ }
92
+ /**
93
+ * Une **page** de résultats — la sortie unique de toute pagination Nodefony.
94
+ *
95
+ * `total` présent = mode **Page** (on a compté) ; absent = mode **Slice**. `hasNext`
96
+ * est fiable dans les deux cas. `nextCursor` n'est posé que par les backends **curseur**.
97
+ *
98
+ * @typeParam T - type des éléments de la page.
99
+ */
100
+ export interface IPage<T> {
101
+ /** Les éléments de la page (au plus `limit`). */
102
+ items: T[];
103
+ /**
104
+ * Total exact de la collection filtrée — présent si {@link IPageQuery.withTotal}
105
+ * n'est pas `false` **et** que le backend sait compter à coût raisonnable.
106
+ */
107
+ total?: number;
108
+ /** Taille de page demandée (écho de {@link IPageQuery.limit}). */
109
+ limit: number;
110
+ /** Décalage de cette page (mode offset ; absent en mode curseur). */
111
+ offset?: number;
112
+ /** `true` s'il existe au moins un élément au-delà de cette page. */
113
+ hasNext: boolean;
114
+ /**
115
+ * Jeton de la page suivante (mode **curseur**) — à repasser en
116
+ * {@link IPageQuery.cursor}. `null` = fin. Absent = pagination par offset.
117
+ */
118
+ nextCursor?: string | null;
119
+ }
@@ -0,0 +1,62 @@
1
+ import type { IContainer } from "./IContainer.js";
2
+ import type { DynamicParam } from "../Container.js";
3
+ import type Event from "../Event.js";
4
+ import type { EventDefaultInterface } from "../Event.js";
5
+ import type Pdu from "../syslog/Pdu.js";
6
+ import type { Severity, Msgid, Message, Pci } from "../syslog/Pdu.js";
7
+ import type Syslog from "../syslog/Syslog.js";
8
+ import type { SyslogDefaultSettings, conditionsInterface } from "../syslog/Syslog.js";
9
+ import type { IKernel } from "./IKernel.js";
10
+ import type { DebugType, EnvironmentType } from "./globals.js";
11
+ export type EventListener = (...args: any[]) => void;
12
+ export interface DefaultOptionsService extends EventDefaultInterface {
13
+ events?: {
14
+ nbListeners: number;
15
+ };
16
+ syslog?: SyslogDefaultSettings;
17
+ }
18
+ /**
19
+ * Contrat public de tout service nodefony.
20
+ * Kernel, Module, Controller, adapters ORM — tous implémentent IService.
21
+ */
22
+ export interface IService {
23
+ readonly name: string;
24
+ readonly options: DefaultOptionsService;
25
+ readonly container: IContainer | null;
26
+ readonly kernel: IKernel | null;
27
+ readonly syslog: Syslog | null;
28
+ /** undefined si notificationsCenter=false passé au constructeur, ou après clean() */
29
+ readonly notificationsCenter: Event | undefined;
30
+ getName(): string;
31
+ initSyslog(environment?: EnvironmentType, debug?: DebugType, options?: conditionsInterface): ReturnType<Syslog["init"]> | null;
32
+ clean(syslog?: boolean): void;
33
+ log(pci: Pci, severity?: Severity, msgid?: Msgid, msg?: Message): Pdu;
34
+ logger(pci: Pci, ...args: unknown[]): void;
35
+ trace(pci: Pci, ...args: unknown[]): void;
36
+ get<T>(name: string): T | null;
37
+ set<T>(name: string, obj: T): void;
38
+ remove(name: string): boolean;
39
+ has(name: string): boolean;
40
+ getParameters(name: string): DynamicParam | null;
41
+ setParameters<T>(name: string, ele: T): DynamicParam | null;
42
+ on(eventName: string | symbol, listener: EventListener): this;
43
+ once(eventName: string | symbol, listener: EventListener): this;
44
+ off(eventName: string | symbol, listener: EventListener): this;
45
+ emit(eventName: string | symbol, ...args: unknown[]): boolean;
46
+ fire(eventName: string | symbol, ...args: unknown[]): boolean;
47
+ emitAsync(eventName: string | symbol, ...args: unknown[]): Promise<unknown>;
48
+ fireAsync(eventName: string | symbol, ...args: unknown[]): Promise<unknown>;
49
+ addListener(eventName: string | symbol, listener: EventListener): this;
50
+ removeListener(eventName: string | symbol, listener: EventListener): this;
51
+ removeAllListeners(eventName?: string | symbol): this;
52
+ prependListener(eventName: string | symbol, listener: EventListener): this;
53
+ prependOnceListener(eventName: string | symbol, listener: EventListener): this;
54
+ listen(eventName: string | symbol, listener: EventListener): (...args: unknown[]) => boolean;
55
+ settingsToListen(localSettings: EventDefaultInterface, context: object): void;
56
+ eventNames(): (string | symbol)[];
57
+ listenerCount(eventName: string | symbol, listener?: EventListener): number;
58
+ listeners(eventName: string | symbol): EventListener[];
59
+ rawListeners(eventName: string | symbol): EventListener[];
60
+ getMaxListeners(): number;
61
+ setMaxListeners(n: number): this;
62
+ }
@@ -0,0 +1,58 @@
1
+ import type Pdu from "../syslog/Pdu.js";
2
+ import type { Severity, Msgid, Message, Pci } from "../syslog/Pdu.js";
3
+ import type { DebugType, EnvironmentType } from "./globals.js";
4
+ import type { ITransport } from "./ITransport.js";
5
+ import type { SyslogDefaultSettings, conditionsInterface, CallbackFunction, WrapperResult } from "../syslog/Syslog.js";
6
+ export interface ISyslog {
7
+ settings: SyslogDefaultSettings;
8
+ readonly ringStack: Pdu[];
9
+ /** Capacité MAX du ring buffer (plafond `maxStack`). */
10
+ readonly bufferCapacity: number;
11
+ /** `true` si les Pdu sont stockés dans le ring (relecture mémoire active). */
12
+ readonly ringEnabled: boolean;
13
+ /** Active/désactive le stockage mémoire (ring) à chaud — outil avancé. */
14
+ setRingEnabled(enabled: boolean): boolean;
15
+ /** `true` si la diffusion temps réel (`nodefony:syslog`) est active. */
16
+ readonly streamEnabled: boolean;
17
+ /** Active/désactive la diffusion temps réel à chaud (onglet Live). */
18
+ setStreamEnabled(enabled: boolean): boolean;
19
+ burstPrinted: number;
20
+ missed: number;
21
+ invalid: number;
22
+ valid: number;
23
+ /** Cumul monotone des logs de sévérité 0–3 (ERROR/CRITIC/ALERT/EMERGENCY). */
24
+ errorTotal: number;
25
+ /** Sous-ensemble CRITIQUE (sévérité 0–2 : CRITIC/ALERT/EMERGENCY). */
26
+ criticTotal: number;
27
+ start: number;
28
+ async: boolean;
29
+ init(environment: EnvironmentType, debug?: DebugType, options?: conditionsInterface): void;
30
+ clean(): this;
31
+ reset(): this;
32
+ clearLogStack(): void;
33
+ log(payload: Pci, severity?: Severity, msgid?: Msgid, msg?: Message): Pdu;
34
+ error(data: Pci): Pdu;
35
+ warn(data: Pci): Pdu;
36
+ info(data: Pci): Pdu;
37
+ debug(data: Pci): Pdu;
38
+ trace(data: Pci, ...args: unknown[]): Pdu;
39
+ print(...args: Pci[]): Pdu;
40
+ logMultiple(severity: Severity, ...args: Pci[]): Pdu;
41
+ pushStack(pdu: Pdu): number;
42
+ getLogStack(start?: number, end?: number, condition?: conditionsInterface): Pdu[] | Pdu;
43
+ getLogs(conditions: conditionsInterface, stack?: Pdu[] | null): Pdu[];
44
+ logToJson(conditions: conditionsInterface, stack?: Pdu[] | null): string;
45
+ loadStack(stack: Pdu[] | string, doEvent?: boolean, beforeConditions?: ((pdu: Pdu, stackItem: Pdu) => void) | null): Pdu[];
46
+ filter(conditions: conditionsInterface, callback: CallbackFunction): void;
47
+ listenWithConditions(conditions: conditionsInterface, callback: CallbackFunction): void;
48
+ addTransport(transport: ITransport): this;
49
+ removeTransport(transport: ITransport): this;
50
+ /** Liste polymorphe des transports d'écriture (axe WRITE) + état `enabled`. */
51
+ listTransports(): {
52
+ name: string;
53
+ enabled: boolean;
54
+ }[];
55
+ /** Active/désactive un transport d'écriture à chaud, par nom (dev/diagnostic). */
56
+ setTransportEnabled(name: string, enabled: boolean): boolean;
57
+ }
58
+ export type { WrapperResult };
@@ -0,0 +1,5 @@
1
+ import type Pdu from "../syslog/Pdu.js";
2
+ export interface ITransport {
3
+ readonly name: string;
4
+ send(pdu: Pdu): Promise<void>;
5
+ }
@@ -0,0 +1,47 @@
1
+ export interface nodefonyOptions {
2
+ [key: string]: any;
3
+ }
4
+ declare global {
5
+ interface Error {
6
+ /**
7
+ * Sérialisation JSON d'une erreur — POSÉE AU RUNTIME par `Error.ts` sur
8
+ * `Error.prototype`, donc présente sur toute erreur qui traverse Nodefony.
9
+ *
10
+ * Déclarée **optionnelle**, et c'est délibéré : la rendre obligatoire
11
+ * augmente le type standard `Error` de tout le graphe, et rend alors
12
+ * **incompilable toute classe tierce qui écrit `implements Error`** — elle
13
+ * n'a aucune raison de connaître une méthode de Nodefony. Constaté sur
14
+ * `HttpErrorResponse` d'`@angular/common` (TS2420), qui suffisait à rendre
15
+ * `@angular/*` inutilisable dans un graphe de types Nodefony. Le seul
16
+ * appelant du dépôt passe déjà par `nodefonyError`, qui la déclare en
17
+ * propre : l'obligation ne servait personne et coûtait l'interopérabilité.
18
+ */
19
+ toJSON?(): Record<string, any>;
20
+ }
21
+ }
22
+ /**
23
+ * Modes MOTEUR du kernel — l'axe qui pilote l'optimisation du runtime.
24
+ *
25
+ * `staging` n'en fait pas partie : un staging tourne « comme la production »
26
+ * (mêmes optimisations) et se distingue par son axe de DÉPLOIEMENT, pas par son
27
+ * moteur. Cet axe-là est `APP_ENV`/`NF_ENV` (string libre : `staging`,
28
+ * `canary`, `prod-eu`…), lu par `loadEnv` (→ `.env.staging`) et exposé par
29
+ * `ConfigContext.appEnv` — il reste entier.
30
+ *
31
+ * `test` n'en fait pas partie non plus : c'est une valeur de `NODE_ENV` que le
32
+ * kernel normalise en `runtimeEnv` (→ `ConfigContext.isTest`), jamais un mode moteur.
33
+ */
34
+ declare enum environment {
35
+ dev,
36
+ development,
37
+ prod,
38
+ production
39
+ }
40
+ export type EnvironmentType = keyof typeof environment;
41
+ export type DebugType = boolean | string | string[];
42
+ type JSONArray = Array<JSONValue>;
43
+ type JSONValue = string | number | boolean | JSONObject | JSONArray;
44
+ export interface JSONObject {
45
+ [x: string]: JSONValue;
46
+ }
47
+ export {};