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,195 @@
1
+ /**
2
+ * `IClientKernel` — contrat du kernel client isomorphe de Nodefony (ADR-0007).
3
+ *
4
+ * Le ClientKernel est le chef d'orchestre de la couche **INFRA** d'une app front
5
+ * (composition des services techniques, lifecycle navigateur, observabilité,
6
+ * cycle d'identité). Il ne possède JAMAIS le rendu, le routing ni l'état métier
7
+ * (React/Vue/Angular + stores restent maîtres de la vue) — clause anti-dérive
8
+ * ADR-0007 D1.
9
+ *
10
+ * Ce fichier EST la spécification : toute évolution de surface passe par un
11
+ * nouvel ADR. Il n'est PAS encore réexporté par le barrel client — il y revient
12
+ * quand la console d'administration l'exerce (ADR-0007 D11.4), gardé par
13
+ * `src/tests/clientSurfaceExercised.test.ts`.
14
+ *
15
+ * @module nodefony/client
16
+ */
17
+ import type Syslog from "../syslog/Syslog.js";
18
+ import type { RealtimeClient, RealtimeOptions } from "./realtime/RealtimeClient.js";
19
+ /**
20
+ * États du kernel client, ordonnés et non régressifs (symétrie nominale avec les
21
+ * lifecycle flags du Kernel serveur — `booted`/`ready`/… — sans en singer la
22
+ * sémantique process).
23
+ */
24
+ export type ClientKernelState = "created" | "booting" | "ready" | "terminated";
25
+ /**
26
+ * Événements émis par le kernel client.
27
+ *
28
+ * Mêmes noms nominaux que les hooks du Kernel serveur quand le sens est le même
29
+ * (`onBoot`/`onReady`/`onTerminate`) ; les événements propres au navigateur
30
+ * (`onIdentityChange`, `onVisibility`, `onOnline`) n'ont volontairement pas
31
+ * d'équivalent back.
32
+ *
33
+ * - `onBoot` — composition faite (`boot()` appelé).
34
+ * - `onReady` — services connectés (socket ouverte, ou opt-out realtime).
35
+ * - `onIdentityChange` — l'identité runtime a changé (login/logout/bascule de
36
+ * compte). Le kernel a DÉJÀ re-négocié la socket quand l'app reçoit cet
37
+ * événement (anti-élévation de privilège, ADR-0007 D9) : il ne reste à
38
+ * l'application qu'à purger ses propres caches scopés.
39
+ * - `onVisibility` — `document.visibilitychange`.
40
+ * - `onOnline` — bascule `online`/`offline` du navigateur.
41
+ * - `onTerminate` — page en cours de déchargement (`pagehide`, best-effort).
42
+ */
43
+ export type ClientKernelEvent = "onBoot" | "onReady" | "onIdentityChange" | "onVisibility" | "onOnline" | "onTerminate";
44
+ /**
45
+ * Identité runtime déclarée par l'application au kernel.
46
+ *
47
+ * `key` est une **clé stable de compte** — et elle seule décide d'un « vrai
48
+ * changement » au sens ADR-0007 D9. Ce n'est pas un détail de forme : la garde
49
+ * qui protège contre l'élévation de privilège compare des clés, jamais des
50
+ * objets. Un profil rafraîchi (mêmes droits, nouvel objet) ne doit PAS couper la
51
+ * socket ; une bascule de compte le doit toujours.
52
+ *
53
+ * `data` reste à l'usage de l'application (profil, rôles, ce qu'elle veut
54
+ * retrouver dans le handler) — le kernel ne l'interprète jamais.
55
+ */
56
+ export interface ClientIdentity {
57
+ /** Clé stable du compte — l'unique critère du re-handshake (D9). */
58
+ readonly key: string;
59
+ /** Charge libre, opaque au kernel. */
60
+ readonly data?: unknown;
61
+ }
62
+ /**
63
+ * Registre TYPÉ des services techniques portés par le kernel client.
64
+ *
65
+ * Extensible par **augmentation de module** (même mécanique que le registre de
66
+ * config `NodefonyModuleConfig` back, ADR-0006) : un module/une app déclare ses
67
+ * services sans jamais modifier ce contrat.
68
+ *
69
+ * `realtime` est typé sur la **classe** `RealtimeClient`, pas sur l'interface
70
+ * `IRealtimeSocket` : c'est la correction du premier défaut relevé par #41. Le
71
+ * consommateur publié du registre est `NodefonyProvider`, dont la prop `client`
72
+ * exige la classe ; et `IRealtimeSocket` n'a ni `connect`, ni `disconnect`, ni
73
+ * `state`, ni `identity` — le contrat ne savait donc pas exprimer le
74
+ * re-handshake de sa propre décision D9. Un registre nomme des services
75
+ * composés, pas des abstractions : l'affaiblir n'achetait rien et imposait une
76
+ * conversion de type forcée à chaque lecture.
77
+ *
78
+ * @example
79
+ * ```typescript
80
+ * declare module "nodefony/client" {
81
+ * interface NodefonyClientServices {
82
+ * api?: MyApiClient;
83
+ * }
84
+ * }
85
+ * ```
86
+ */
87
+ export interface NodefonyClientServices {
88
+ /** La socket Nodefony de l'app (multiplexage de canaux, isomorphe). */
89
+ realtime?: RealtimeClient;
90
+ }
91
+ /**
92
+ * Options de `createClientKernel()`.
93
+ *
94
+ * Tout est facultatif : un kernel sans option est légal et ne compose rien —
95
+ * l'opt-in est strict (ADR-0007 D7), le kernel compose, il n'impose pas.
96
+ */
97
+ export interface ClientKernelOptions {
98
+ /**
99
+ * Nom du kernel — sert de `msgid` dans les journaux client.
100
+ *
101
+ * @defaultValue `"CLIENT KERNEL"`
102
+ */
103
+ name?: string;
104
+ /**
105
+ * La socket de l'application. Trois formes, par DX décroissante :
106
+ * une instance déjà composée, les options d'une socket partagée
107
+ * (`RealtimeClient.shared`), ou `false`/absent pour ne pas en avoir.
108
+ */
109
+ realtime?: RealtimeClient | RealtimeOptions | false;
110
+ /**
111
+ * Ponter les événements du navigateur (`visibilitychange`, `online`/`offline`,
112
+ * `pagehide`) sur les événements du kernel.
113
+ *
114
+ * @defaultValue `true` quand un document est présent
115
+ */
116
+ browserEvents?: boolean;
117
+ /**
118
+ * Ouvrir la socket au `boot()`.
119
+ *
120
+ * À passer `false` quand la socket est **authentifiée** : c'est alors le login
121
+ * qui l'ouvre, par `setIdentity()`, et ouvrir au démarrage produirait une
122
+ * connexion anonyme qui n'a rien à faire là. Le cas s'est présenté au premier
123
+ * portage réel — la console d'administration n'ouvre sa socket qu'une fois
124
+ * l'utilisateur connu.
125
+ *
126
+ * @defaultValue `true`
127
+ */
128
+ connectOnBoot?: boolean;
129
+ /**
130
+ * Annoncer le kernel dans la console du navigateur au `boot()`.
131
+ *
132
+ * Trois états, et le défaut s'adapte tout seul :
133
+ *
134
+ * - **en développement** (`import.meta.env.DEV` posé par le bundler) — un badge
135
+ * sur une ligne, puis un groupe REPLIÉ avec les services composés, l'adresse
136
+ * et l'état de la socket, l'identité courante ;
137
+ * - **partout ailleurs** — le badge seul. Savoir que le noyau tourne suffit à
138
+ * diagnostiquer ; le reste est du bruit dans la console de l'utilisateur ;
139
+ * - `false` — rien du tout.
140
+ *
141
+ * `true` force le détail quel que soit le mode. L'absence de preuve de
142
+ * développement est traitée comme la production : se taire à tort ne coûte
143
+ * qu'une ligne, parler à tort pollue la console de tout le monde.
144
+ *
145
+ * @defaultValue le mode détecté
146
+ */
147
+ banner?: boolean;
148
+ }
149
+ /**
150
+ * Contrat du kernel client isomorphe (ADR-0007 D2 — surface v1, volontairement
151
+ * minimale : chaque méthode publiée est une promesse SemVer).
152
+ *
153
+ * Obtenu via la factory `createClientKernel()` — jamais un singleton de module
154
+ * (testabilité, HMR-safe). Chaque primitive du Core reste utilisable NUE sans
155
+ * kernel (opt-in strict, ADR-0007 D7).
156
+ */
157
+ export interface IClientKernel {
158
+ /** Récupère un service enregistré (ou `undefined` s'il n'est pas composé). */
159
+ get<K extends keyof NodefonyClientServices>(name: K): NodefonyClientServices[K];
160
+ /** Enregistre un service sous son nom contractuel. */
161
+ set<K extends keyof NodefonyClientServices>(name: K, svc: NodefonyClientServices[K]): void;
162
+ /** Teste la présence d'un service (nom libre, y compris hors contrat). */
163
+ has(name: string): boolean;
164
+ /** Compose et connecte les services (idempotent). Émet `onBoot` puis `onReady`. */
165
+ boot(): Promise<void>;
166
+ /** Flush l'observabilité et déconnecte (best-effort sur `pagehide`). Émet `onTerminate`. */
167
+ terminate(): Promise<void>;
168
+ /** État courant du kernel — jamais régressif. */
169
+ readonly state: ClientKernelState;
170
+ /**
171
+ * Déclare l'identité runtime courante — c'est l'application qui la connaît
172
+ * (login, logout, bascule de compte), le kernel qui en tire les conséquences.
173
+ *
174
+ * Sur un **vrai** changement de clé, et lui seul, le kernel re-négocie la
175
+ * socket puis émet `onIdentityChange`. Sans cette porte d'entrée, D9 resterait
176
+ * une intention : le kernel n'a aucun moyen d'apprendre qu'un login a eu lieu.
177
+ */
178
+ setIdentity(identity: ClientIdentity | null): void;
179
+ /** Identité runtime courante, telle que l'application l'a déclarée. */
180
+ readonly identity: ClientIdentity | null;
181
+ /** Abonne un handler à un événement du kernel (API `Event` du Core, chaînable). */
182
+ on(event: ClientKernelEvent, handler: (...args: unknown[]) => void): this;
183
+ /**
184
+ * Journal client de série (`Pdu` isomorphes — corrélables au back par
185
+ * `requestId`).
186
+ *
187
+ * L'ADR-0007 nommait ce membre `log`. Le nom ne pouvait pas tenir : tout
188
+ * `Service` Nodefony porte déjà `log(...)` comme **méthode d'écriture**, et le
189
+ * kernel client en est un — une propriété du même nom masquait le geste
190
+ * d'écriture de toute la lignée. `syslog` est le nom que le framework donne
191
+ * partout ailleurs à ce même objet (`Service.syslog`, `kernel.syslog`) :
192
+ * l'isomorphisme, c'est le même modèle mental des deux côtés du fil.
193
+ */
194
+ readonly syslog: Syslog;
195
+ }
@@ -0,0 +1,273 @@
1
+ /**
2
+ * `nodefony/angular` — liaisons **Angular** du client temps réel isomorphe.
3
+ *
4
+ * Adapte le {@link RealtimeClient} (agnostique : `on()`/`emit()`/`state`) aux
5
+ * *signals* d'Angular, sans glue à recopier dans chaque application. Le pendant
6
+ * exact de `nodefony/react` et `nodefony/vue` : même surface, mêmes noms, mêmes
7
+ * garanties — seule la traduction vers la réactivité change.
8
+ *
9
+ * **Ce fichier ne contient AUCUNE règle temps réel.** Souscrire, tenir un
10
+ * dernier reçu, borner un anneau, décoder le format coalescé du journal, ne
11
+ * jamais couper une socket partagée : tout cela vit dans le socle agnostique
12
+ * `nodefony/client` (`observe*`, `connectShared`), que les quatre liaisons
13
+ * consomment à l'identique. Ici ne reste que la traduction *rappel + libération
14
+ * → signal* — la seule chose qu'une liaison a le droit de contenir. Une liaison
15
+ * qui réencoderait une règle la ferait diverger des trois autres, en silence.
16
+ *
17
+ * Trois particularités d'Angular que React et Vue ne montrent pas, et qui sont
18
+ * la raison d'être de ce fichier :
19
+ *
20
+ * 1. **AUCUN décorateur Angular n'est publié ici**, et c'est délibéré. Un
21
+ * `@Injectable()` n'est pas du JavaScript : c'est une instruction pour le
22
+ * compilateur d'Angular, qui doit la transformer. Une bibliothèque qui en
23
+ * publie doit donc être bâtie par `ng-packagr` au format de paquet Angular
24
+ * (*partial compilation* + *linker*) — une seconde chaîne de build, et un
25
+ * couplage aux majeures d'Angular, pour UN subpath sur quatre. Non compilé,
26
+ * un décorateur marche parfois en développement (si `@angular/compiler` est
27
+ * chargé) et **casse en production**, où il ne l'est pas. La forme retenue
28
+ * — `InjectionToken` + `makeEnvironmentProviders` + fonctions `inject*()` —
29
+ * est celle qu'Angular emploie pour lui-même (`provideHttpClient`,
30
+ * `provideRouter`, `takeUntilDestroyed`) : du TypeScript ordinaire, que
31
+ * rolldown bâtit comme le reste, et une DI intacte.
32
+ * ⚠️ Cela ne restreint EN RIEN l'application : `@Component`, `@Injectable`,
33
+ * `@Directive` y sont compilés par le plugin Angular du builder Nodefony.
34
+ * Ces fonctions s'appellent depuis un composant ou un service décoré.
35
+ * 2. **Les écouteurs sont posés HORS ZONE.** Dans une application avec
36
+ * `zone.js`, `zone.js` remplace `WebSocket` pour savoir quand relancer la
37
+ * détection de changements : une socket ouverte dans la zone déclenche donc
38
+ * une détection **globale à chaque trame** — un canal à 10 Hz coûterait dix
39
+ * détections par seconde à TOUTE l'application, ce que la règle de
40
+ * performance du projet interdit. {@link provideNodefony} ouvre donc la
41
+ * connexion dans `NgZone.runOutsideAngular`. Les valeurs, elles, arrivent
42
+ * par des *signals*, qui notifient leurs lecteurs sans zone : juste dans les
43
+ * deux mondes, `zone.js` ou `provideZonelessChangeDetection()`.
44
+ * 3. **La libération passe par le contexte d'injection**, jamais par une valeur
45
+ * de retour : `DestroyRef` pour un abonnement fixe, le nettoyage d'`effect`
46
+ * pour un abonnement qui suit un signal. C'est le composant (ou le service)
47
+ * qui possède l'abonnement, et sa destruction le rend.
48
+ *
49
+ * `@angular/core` est une peerDep **optionnelle** : ce module n'est tiré que si
50
+ * on importe `nodefony/angular`.
51
+ *
52
+ * @example La page entière, en deux concepts :
53
+ * ```ts
54
+ * // main.ts
55
+ * bootstrapApplication(AppComponent, {
56
+ * providers: [provideNodefony({ url: "/api/live/realtime" })],
57
+ * });
58
+ * ```
59
+ * ```ts
60
+ * // app.component.ts
61
+ * @Component({ selector: "app-root", template: `{{ etat() }}` })
62
+ * export class AppComponent {
63
+ * readonly etat = injectNodefonyState();
64
+ * readonly last = injectNodefonyChannelData<LiveEvent>("live:events");
65
+ * }
66
+ * ```
67
+ *
68
+ * @module nodefony/angular
69
+ */
70
+ import { InjectionToken, type EnvironmentProviders, type Signal } from "@angular/core";
71
+ import type { RealtimeClient } from "../realtime/RealtimeClient.js";
72
+ import type { MessageStats, NodefonyNotice, RealtimeIdentity, RealtimeState } from "../realtime/RealtimeClient.js";
73
+ import type { BindAdaptiveOptions } from "../realtime/AdaptiveRate.js";
74
+ import { type SocketSnapshot } from "../realtime/observe.js";
75
+ export { rateChannel, parseRate, isRateChannel, } from "../../realtime/channelRate.js";
76
+ export type { RateBounds } from "../../realtime/channelRate.js";
77
+ export type { RealtimeIdentity, RealtimeState, NodefonyNotice, } from "../realtime/RealtimeClient.js";
78
+ export type { SocketSnapshot } from "../realtime/observe.js";
79
+ /**
80
+ * Le jeton sous lequel {@link provideNodefony} enregistre la socket.
81
+ *
82
+ * Exporté pour le cas légitime où un sous-arbre doit parler à une AUTRE socket
83
+ * que celle de l'application : le fournir à nouveau dans les `providers` d'un
84
+ * composant suffit, et les fonctions du sous-arbre suivent.
85
+ */
86
+ export declare const NODEFONY_CLIENT: InjectionToken<RealtimeClient<import("../../realtime/RealtimeEventMap.js").DefaultEventsMap, import("../../realtime/RealtimeEventMap.js").DefaultEventsMap, import("../../realtime/RealtimeEventMap.js").DefaultActionsMap>>;
87
+ /** Réglages de {@link provideNodefony} — l'un des deux au moins doit être donné. */
88
+ export interface NodefonyAngularOptions {
89
+ /**
90
+ * Adresse du serveur temps réel — la voie SIMPLE. Le fournisseur fabrique la
91
+ * socket partagée pour cette URL et la connecte lui-même.
92
+ *
93
+ * Deux consommateurs qui donnent la même URL obtiennent la MÊME socket
94
+ * ({@link RealtimeClient.shared}), donc une seule connexion réseau.
95
+ */
96
+ url?: string;
97
+ /**
98
+ * Socket déjà construite — la voie AVANCÉE, quand l'application possède son
99
+ * cycle de connexion. Fournie, elle l'emporte sur `url` et le fournisseur ne
100
+ * touche pas au cycle : ni `connect`, ni `disconnect`.
101
+ */
102
+ client?: RealtimeClient;
103
+ }
104
+ /**
105
+ * Le fournisseur — à poser une fois, dans les `providers` de l'application.
106
+ *
107
+ * Il fait exactement deux choses : enregistrer la socket, et lancer la
108
+ * connexion **hors zone**. Il n'en coupe aucune : la connexion appartient à la
109
+ * PAGE, pas à un composant, et `disconnect()` tranche les requêtes en vol des
110
+ * autres consommateurs de la même socket partagée.
111
+ *
112
+ * La socket est résolue **immédiatement** (donc une adresse manquante est
113
+ * refusée à la construction des providers, pas à la première injection) ; la
114
+ * connexion, elle, n'est ouverte qu'au premier `inject`, et hors zone.
115
+ *
116
+ * @throws si ni `url` ni `client` n'est fourni — l'adresse dépend de
117
+ * l'application, et le framework n'en devine aucune (règle du socle : une
118
+ * adresse devinée marche en développement et se trompe en production).
119
+ *
120
+ * @example
121
+ * ```ts
122
+ * bootstrapApplication(AppComponent, {
123
+ * providers: [
124
+ * provideZonelessChangeDetection(),
125
+ * provideNodefony({ url: "/api/live/realtime" }),
126
+ * ],
127
+ * });
128
+ * ```
129
+ */
130
+ export declare function provideNodefony(options: NodefonyAngularOptions): EnvironmentProviders;
131
+ /**
132
+ * `injectNodefony()` — la socket brute (canaux, journal, statistiques…). Tête de
133
+ * gondole et échappatoire pour les cas avancés ; pour de l'état réactif, prendre
134
+ * les fonctions dédiées ci-dessous.
135
+ *
136
+ * @throws si {@link provideNodefony} n'est pas dans les `providers`. Le socle
137
+ * REFUSE de deviner une adresse : retomber ici sur une socket partagée
138
+ * fabriquée à la volée donnerait une page qui marche en développement et parle
139
+ * au mauvais hôte en production — mieux vaut une erreur au premier rendu.
140
+ */
141
+ export declare function injectNodefony(): RealtimeClient;
142
+ /**
143
+ * Une source de valeur : constante, ou fonction qui la lit (un `Signal` en est
144
+ * un cas — un signal EST une fonction sans argument).
145
+ *
146
+ * C'est ce qui remplace, en Angular, la liste de dépendances que React doit se
147
+ * faire passer à la main : donner un signal suffit à ce que l'abonnement suive.
148
+ */
149
+ export type Source<T> = T | (() => T);
150
+ /**
151
+ * `injectNodefonyState()` — l'état de la connexion (`"connected"`,
152
+ * `"reconnecting"`, …), tenu à jour. Branché sur la porte publique `onState`,
153
+ * jamais sur le nom de l'événement local, qui n'a pas à sortir du client.
154
+ */
155
+ export declare function injectNodefonyState(): Signal<RealtimeState>;
156
+ /**
157
+ * `injectNodefonyIdentity()` — l'**identité résolue** de la connexion, annoncée
158
+ * par le serveur au `realtime:welcome` (`authenticated`, `roles`,
159
+ * `userIdentifier`, `scopes`). `null` tant qu'aucun welcome n'est arrivé ; une
160
+ * fois reçu, un visiteur anonyme a `authenticated: false`. Brique du gating
161
+ * front : `authenticated: false` → écran de connexion, **sans** appeler
162
+ * `/auth/me`.
163
+ */
164
+ export declare function injectNodefonyIdentity(): Signal<RealtimeIdentity | null>;
165
+ /**
166
+ * `injectNodefonyChannel()` — s'abonne à un canal pub/sub : `onMessage` est
167
+ * appelé à chaque message. Le socle apparie `subscribe`/`unsubscribe` côté
168
+ * serveur (ref-comptés) et rejoue l'abonnement à chaque reconnexion.
169
+ *
170
+ * Le canal accepte un signal (ou toute fonction qui le lit) : l'abonnement suit
171
+ * alors la valeur, en libérant l'ancien avant de prendre le nouveau.
172
+ */
173
+ export declare function injectNodefonyChannel(channel: Source<string>, onMessage: (payload: unknown) => void): void;
174
+ /**
175
+ * `injectNodefonyChannelData()` — la **dernière valeur** reçue sur un canal (le
176
+ * cas le plus courant : la dernière mesure d'un flux d'état). `null` tant que
177
+ * rien n'est arrivé.
178
+ */
179
+ export declare function injectNodefonyChannelData<T = unknown>(channel: Source<string>, initial?: T | null): Signal<T | null>;
180
+ /** Réglages adaptatifs (la cadence désirée se passe à part, en argument). */
181
+ export type AdaptiveChannelOptions = Omit<BindAdaptiveOptions, "intervalMs" | "onRate">;
182
+ /** Résultat de {@link injectNodefonyAdaptiveChannelData} : valeur + cadence réelle. */
183
+ export interface AdaptiveChannelData<T> {
184
+ /** Dernière valeur reçue, `null` tant que rien n'est arrivé. */
185
+ data: Signal<T | null>;
186
+ /** Cadence effective (ms) — bouge avec l'AIMD, à afficher en badge. */
187
+ intervalMs: Signal<number>;
188
+ }
189
+ /**
190
+ * `injectNodefonyAdaptiveChannel()` — comme {@link injectNodefonyChannel}, mais
191
+ * en **cadence adaptative** (AIMD piloté par le client) : la cadence recule sous
192
+ * famine puis remonte quand c'est sain, sans rien changer au serveur. Renvoie la
193
+ * cadence effective, à afficher.
194
+ *
195
+ * Réservé aux canaux d'ÉTAT (latest-wins) : décimer un canal d'événements perd
196
+ * des messages.
197
+ *
198
+ * Le ré-abonnement suit {@link adaptiveRebindKey} — la MÊME clé que les trois
199
+ * autres liaisons, pour que les quatre rebranchent aux mêmes instants.
200
+ */
201
+ export declare function injectNodefonyAdaptiveChannel(base: Source<string>, onMessage: (payload: unknown) => void, desiredMs: Source<number>, options?: AdaptiveChannelOptions): Signal<number>;
202
+ /**
203
+ * `injectNodefonyAdaptiveChannelData()` — comme
204
+ * {@link injectNodefonyChannelData}, mais en cadence adaptative. Mince surcouche
205
+ * de {@link injectNodefonyAdaptiveChannel} : garde la dernière valeur et rend la
206
+ * cadence effective. Réservé aux canaux d'ÉTAT.
207
+ */
208
+ export declare function injectNodefonyAdaptiveChannelData<T = unknown>(base: Source<string>, desiredMs: Source<number>, options?: AdaptiveChannelOptions): AdaptiveChannelData<T>;
209
+ /**
210
+ * Statistiques observées d'un canal, telles que le client les calcule.
211
+ *
212
+ * Alias du contrat isomorphe {@link MessageStats} : une copie locale de la forme
213
+ * aurait divergé le jour où le client ajoute un compteur.
214
+ */
215
+ export type ChannelStatsSnapshot = MessageStats;
216
+ /**
217
+ * `injectNodefonyChannelStats()` — statistiques vivantes d'un canal (débit,
218
+ * série pour un VU-mètre, total). La source est l'échantillonneur du client
219
+ * (1×/s) : aucune horloge n'est posée ici, et aucune trame n'est émise pour
220
+ * mesurer.
221
+ */
222
+ export declare function injectNodefonyChannelStats(channel: Source<string>): Signal<ChannelStatsSnapshot | null>;
223
+ /**
224
+ * `injectNodefonySnapshot()` — ce que la socket sait d'ELLE-MÊME : état, canaux
225
+ * tenus, trames reçues, trames perdues, dernière trame. Rafraîchi par
226
+ * l'échantillonneur déjà en place — aucune horloge de plus.
227
+ *
228
+ * La donnée est au socle, la **boîte qui l'affiche** reste à chaque front :
229
+ * publier un composant obligerait à en écrire un par framework de vue, et ferait
230
+ * entrer du DOM dans un module dont toute la valeur est de n'en avoir aucun.
231
+ */
232
+ export declare function injectNodefonySnapshot(): Signal<SocketSnapshot | null>;
233
+ /** Réglages de {@link injectNodefonySyslog}. */
234
+ export interface InjectSyslogOptions {
235
+ /** Taille max de l'anneau (les plus anciennes lignes sont évincées). Défaut 500. */
236
+ max?: number;
237
+ /** Ne garder que ces sévérités (ex. `["ERROR", "CRITIC"]`). Toutes par défaut. */
238
+ severities?: string[];
239
+ /** Canal source. Défaut `"nodefony:syslog"`. */
240
+ channel?: string;
241
+ }
242
+ /**
243
+ * `injectNodefonySyslog()` — le flux du journal, prêt à afficher : anneau borné
244
+ * et filtre de sévérité. Le format **coalescé** du canal (`{ logs, dropped }`),
245
+ * l'entrée unique, la taille de l'anneau et le canal par défaut viennent du
246
+ * socle ({@link observeSyslog}) : cette fonction n'en connaît aucun.
247
+ */
248
+ export declare function injectNodefonySyslog(options?: Source<InjectSyslogOptions>): Signal<unknown[]>;
249
+ /**
250
+ * `injectNodefonyNotifications()` — le flux des **notices normalisées** du
251
+ * client : criticités qui cassent le temps réel (codes de fermeture RFC 6455
252
+ * interprétés), erreurs poussées par le serveur, rétablissement de connexion.
253
+ * `onNotice` est appelé pour CHAQUE notice → brancher un centre de
254
+ * notifications.
255
+ *
256
+ * À monter **une seule fois** (le shell de l'application), sans quoi la même
257
+ * notice s'affiche autant de fois qu'il y a d'appels.
258
+ */
259
+ export declare function injectNodefonyNotifications(onNotice: (notice: NodefonyNotice) => void): void;
260
+ /** Réglages de {@link injectNodefonyNoticeLog}. */
261
+ export interface InjectNoticeLogOptions {
262
+ /** Taille max de l'anneau (les plus anciennes notices sont évincées). Défaut 50. */
263
+ max?: number;
264
+ /** Ne garder que ces sources (ex. `["realtime"]`). Toutes par défaut. */
265
+ sources?: NodefonyNotice["source"][];
266
+ }
267
+ /**
268
+ * `injectNodefonyNoticeLog()` — l'anneau borné des dernières notices, filtrable
269
+ * par source : un historique léger des criticités, distinct des notifications
270
+ * éphémères. La taille de l'anneau et le filtrage viennent du socle
271
+ * ({@link observeNoticeLog}).
272
+ */
273
+ export declare function injectNodefonyNoticeLog(options?: Source<InjectNoticeLogOptions>): Signal<NodefonyNotice[]>;
@@ -0,0 +1,74 @@
1
+ /**
2
+ * Le mode annoncé par le serveur, quand il en annonce un.
3
+ *
4
+ * ⚠️ Le serveur **ne pose ce champ qu'en dehors de la production** : une absence
5
+ * vaut donc production, jamais l'inverse. C'est la même règle que pour le
6
+ * bundle, et pour la même raison — se taire à tort ne coûte qu'une ligne, parler
7
+ * à tort expose la console de tout le monde.
8
+ *
9
+ * @param env - la valeur reçue dans `realtime:welcome`, ou `undefined`.
10
+ */
11
+ export declare function noteServerEnv(env: string | undefined): void;
12
+ /**
13
+ * Peut-on se permettre le détail ? Bundle de développement, OU serveur qui
14
+ * annonce un mode hors production.
15
+ */
16
+ export declare function isVerbose(): boolean;
17
+ /**
18
+ * Le bundle a-t-il été bâti en développement ?
19
+ *
20
+ * Le mode se LIT, il ne se devine pas : `import.meta.env.DEV` est posé par le
21
+ * bundler de l'application (Vite le remplace par une constante au build). Hors
22
+ * bundler il n'existe pas — et **l'absence de preuve de développement se traite
23
+ * comme la production**, jamais l'inverse : se taire à tort ne coûte qu'une
24
+ * ligne manquante, parler à tort pollue la console de tout le monde.
25
+ */
26
+ export declare function isDevBuild(): boolean;
27
+ /**
28
+ * Annonce un noyau client : son nom porte le badge, et il devient le sujet du
29
+ * handle. À appeler AVANT que le noyau compose sa socket, sinon c'est le badge
30
+ * générique de la socket qui sortirait le premier.
31
+ *
32
+ * @param kernel - le noyau, exposé tel quel en `nodefony.kernel`.
33
+ * @param name - son nom, affiché dans le badge.
34
+ * @param annoncer - `false` fait taire l'annonce ET le handle (app publiée qui
35
+ * ne veut rien dans sa console) ; `true` force le détail hors développement.
36
+ * @returns le débranchement, à appeler à la mort du noyau — sans quoi un
37
+ * rechargement à chaud accumulerait des noyaux morts retenus par le handle.
38
+ */
39
+ export declare function announceKernel(kernel: {
40
+ identity?: unknown;
41
+ }, name: string, annoncer?: boolean): () => void;
42
+ /**
43
+ * Annonce une socket qui vit NUE — aucune composition, aucun noyau. C'est le cas
44
+ * des vitrines du dépôt et de tout widget qui monte une socket et rien d'autre.
45
+ *
46
+ * @param annoncer - `false` fait taire l'annonce (option `banner` de la socket).
47
+ * @returns le débranchement ; une socket partagée vit avec la page et n'a pas à
48
+ * l'appeler — il existe pour les bancs, qui doivent repartir d'une page vierge.
49
+ */
50
+ export declare function announceRealtime(annoncer?: boolean): () => void;
51
+ /**
52
+ * Détail du framework, dans un groupe REPLIÉ de la console : un tableau
53
+ * `clé → valeur` et les deux rappels qui font gagner du temps.
54
+ *
55
+ * **Un seul détail par page**, et le noyau gagne : quand il y en a un, la socket
56
+ * ne le double pas — c'est lui qui a le plus à dire (état, identité, services).
57
+ * Une vitrine sans noyau, elle, obtient enfin le sien : c'est la moitié
58
+ * « diagnostic » que l'ADR-0007 D7 laissait derrière le péage de la composition.
59
+ *
60
+ * Le groupe est replié et non ouvert : présent pour qui le cherche, invisible
61
+ * pour qui débogue autre chose. `groupEnd` est atteint même si une lecture
62
+ * jette — un groupe laissé ouvert avale tous les messages suivants.
63
+ *
64
+ * @param rows - le tableau à rendre, `clé → { valeur }`, composé par
65
+ * l'appelant : lui seul sait ce qu'il a d'important à dire.
66
+ * @param subject - l'objet vivant à imprimer en dernier (noyau, ou socket).
67
+ * @param title - l'intitulé du groupe.
68
+ * @returns `true` si le détail a été émis.
69
+ */
70
+ export declare function consoleDetails(rows: Record<string, {
71
+ valeur: string;
72
+ }>, subject: unknown, title: string): boolean;
73
+ /** Un noyau est-il vivant sur cette page ? La socket s'efface devant lui. */
74
+ export declare function hasKernel(): boolean;