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,279 @@
1
+ /**
2
+ * DebugBar — toolbar de debug par-page type Symfony WDT, **dev-only**, pensée
3
+ * comme une **vitrine du realtime Nodefony** (on doit *voir* le framework
4
+ * respirer en direct).
5
+ *
6
+ * 2ᵉ consommateur navigateur du Core isomorphe après Studio : MÊME backbone
7
+ * realtime (WS JSON-RPC 2.0, canaux `nodefony:supervision` / `nodefony:syslog`) via
8
+ * {@link RealtimeClient}. Aucun rendu serveur splicé dans le body : le serveur
9
+ * *collecte*, le client *rend*.
10
+ *
11
+ * UI : **onglets** (Realtime / Network / Perf / Logs / Runtime) — un seul pane
12
+ * rendu/visible à la fois (≠ grid fourre-tout) + **poignée de resize** (hauteur
13
+ * persistée). Vanilla TS + **Shadow DOM** + sparklines **SVG maison** — 0 dep UI.
14
+ *
15
+ * Perf scroll (critique) : fond OPAQUE sur le panneau (le `backdrop-filter:blur`
16
+ * sur le conteneur scrollable recompositait à chaque frame), `contain:content`
17
+ * par pane, et la liste Network en **mise à jour incrémentale** (nœuds stables,
18
+ * jamais de rebuild `innerHTML` global → le clic n'est plus perdu, le scroll ne
19
+ * saute plus).
20
+ *
21
+ * Panneau **Network** (dev-only) : intercepte `fetch`/`XHR` (header-only,
22
+ * défensif, réversible) → liste des appels AJAX ; clic sur un appel → fetch du
23
+ * profil serveur (`/nodefony/profiler/api/{requestId}`, corrélé via le header
24
+ * `X-Request-Id`) → **waterfall des phases** du pipeline. SPA-first : on profile
25
+ * les appels, pas la page. Le `traceparent` W3C (RFC-propre) est aussi remonté.
26
+ */
27
+ import { RealtimeClient } from "../realtime/RealtimeClient.js";
28
+ /** Contexte frontend injecté par le builder Vite (@nodefony/frontend) en dev. */
29
+ export interface DebugBarFrontend {
30
+ /** Type de preset : `react19` | `vue3` | `angular` | `vanilla`. */
31
+ framework?: string;
32
+ /** Nom logique de l'entrée frontend (bundle). */
33
+ name?: string;
34
+ /** Origine du serveur Vite (ex. `https://127.0.0.1:5173`). */
35
+ viteOrigin?: string;
36
+ }
37
+ export interface DebugBarOptions {
38
+ /** URL/chemin du WS realtime. Défaut : `/nodefony/studio/api/realtime`. */
39
+ url?: string;
40
+ /** Client realtime injectable (partage / tests). Sinon créé en interne. */
41
+ client?: RealtimeClient;
42
+ /** Position verticale du widget. Défaut `bottom`. */
43
+ position?: "bottom" | "top";
44
+ /** Ouvre le panneau au montage. Défaut `false`. */
45
+ open?: boolean;
46
+ /** Contexte frontend (active la carte Frontend + la sonde HMR Vite). */
47
+ frontend?: DebugBarFrontend;
48
+ /**
49
+ * Active le panneau Network (intercepte `fetch`/`XHR`). Défaut `true`.
50
+ * `false` → aucun monkey-patch des globals (opt-out total).
51
+ */
52
+ network?: boolean;
53
+ /** Base du data-plane profiler. Défaut `/nodefony/profiler/api`. */
54
+ profilerBase?: string;
55
+ }
56
+ /**
57
+ * Handle global exposé sur `window.__NODEFONY_DEBUGBAR__` — permet à une app
58
+ * (ex. Studio) de piloter la visibilité de la barre auto-injectée sans la
59
+ * remonter. Bridge entre le widget (Core) et un store applicatif.
60
+ */
61
+ export interface DebugBarHandle {
62
+ isVisible(): boolean;
63
+ setVisible(v: boolean): void;
64
+ toggle(): void;
65
+ minimize(): void;
66
+ restore(): void;
67
+ }
68
+ /**
69
+ * Widget DOM. Lazy : ne construit le Shadow DOM qu'au `mount()`. Idempotent
70
+ * (un seul `#nodefony-debugbar` par page).
71
+ */
72
+ export declare class DebugBar {
73
+ private readonly client;
74
+ private readonly model;
75
+ private readonly url;
76
+ private readonly position;
77
+ private readonly startOpen;
78
+ private readonly ownClient;
79
+ private readonly frontend;
80
+ private host;
81
+ private bar;
82
+ private visible;
83
+ private minimized;
84
+ private side;
85
+ private activeTab;
86
+ private panelH;
87
+ private live;
88
+ /** dispose des abonnements realtime (null quand OFF). */
89
+ private liveOff;
90
+ private rafPending;
91
+ private feedLen;
92
+ /** Filtre de sévérité de l'onglet Logs — `all` par défaut. */
93
+ private feedSev;
94
+ /** Recherche courante, déjà en minuscules (comparée telle quelle). */
95
+ private feedQuery;
96
+ /**
97
+ * Affichage suspendu. Les entrées continuent d'arriver dans le modèle : à la
98
+ * reprise, la liste se reconstruit complète — mettre en pause ne fait pas
99
+ * perdre ce qui s'est passé pendant, ce qui serait le pire des deux mondes.
100
+ */
101
+ private feedPaused;
102
+ /** La liste affichée doit être refaite (changement de filtre ou de recherche). */
103
+ private feedDirty;
104
+ private prevFrames;
105
+ private rtRate;
106
+ private rtPeak;
107
+ private readonly rtSeries;
108
+ private viteConnected;
109
+ private hmrCount;
110
+ private hmrPrev;
111
+ private hmrRate;
112
+ private hmrLast;
113
+ private readonly hmrSeries;
114
+ private flashTimer;
115
+ private readonly disposers;
116
+ private readonly el;
117
+ private readonly networkEnabled;
118
+ private readonly profilerBase;
119
+ private readonly net;
120
+ /** Observe la barre → publie sa hauteur (var CSS) pour l'app hôte. */
121
+ private ro;
122
+ private readonly netRows;
123
+ private selectedRid;
124
+ private selRowId;
125
+ private selNoRid;
126
+ private detailVersion;
127
+ private detailRendered;
128
+ constructor(opts?: DebugBarOptions);
129
+ /** Construit le DOM, branche le realtime et ouvre la connexion. No-op si déjà monté. */
130
+ mount(): this;
131
+ /** Détache listeners, ferme la connexion (si propriétaire) et retire le DOM. */
132
+ unmount(): void;
133
+ /** Affiche/masque la barre (pilotable depuis une app via le handle global). */
134
+ setVisible(v: boolean): void;
135
+ private setMinimized;
136
+ private toggleSide;
137
+ /**
138
+ * Déplie ou replie le panneau — le SEUL endroit qui bascule cet état.
139
+ *
140
+ * Il porte aussi ce qu'un lecteur d'écran doit entendre : `aria-expanded` sur
141
+ * le bouton qui commande, et un nom qui dit l'action à venir (« Déplier » /
142
+ * « Replier »), pas l'état courant — un nom qui décrit l'état laisse
143
+ * l'utilisateur deviner ce que le bouton va faire.
144
+ */
145
+ private setOpen;
146
+ private setTab;
147
+ private setPanelH;
148
+ /** Reflète l'onglet actif sur les boutons + panes. */
149
+ private applyTab;
150
+ /** Applique l'état chrome au DOM (display + classes de dock + hauteur). */
151
+ private applyChrome;
152
+ /**
153
+ * Publie la hauteur occupée par la barre (dock bas, visible, dépliée) en
154
+ * variable CSS `--nodefony-debugbar-height` sur `:root`. L'app hôte (Studio)
155
+ * la réserve en `padding-bottom` → le contenu n'est jamais masqué. `0px` si
156
+ * masquée / réduite (chip flottante) / dockée en haut.
157
+ */
158
+ private publishHeight;
159
+ private registerHandle;
160
+ private unregisterHandle;
161
+ private buildDom;
162
+ private startResize;
163
+ /**
164
+ * Retour visuel bref sur un bouton d'action.
165
+ *
166
+ * Une copie réussie ne change rien à l'écran : sans ce clin d'œil, on ne sait
167
+ * pas si le clic a porté, et on reclique.
168
+ */
169
+ private flashBtn;
170
+ private wireBtn;
171
+ private template;
172
+ private realtimePane;
173
+ private networkPane;
174
+ private perfPane;
175
+ /**
176
+ * L'onglet Logs — une petite console de lecture, pas une liste qui défile.
177
+ *
178
+ * Ce qu'elle porte, et pourquoi : un FILTRE par sévérité et une RECHERCHE
179
+ * (sans quoi on lit le bruit au lieu de son incident) ; une PAUSE (sans quoi
180
+ * la ligne qu'on essaie de lire s'en va) ; une COPIE (une trace se colle dans
181
+ * un ticket) ; et le DÉTAIL d'une entrée, où vit le `requestId` — le champ qui
182
+ * relie ce journal à sa requête, et que la barre recevait sans jamais le
183
+ * montrer.
184
+ */
185
+ private logsPane;
186
+ /**
187
+ * Ce que la barre garde sur CE navigateur — écrit noir sur blanc.
188
+ *
189
+ * Une console de développement qui écrit dans le stockage local sans le dire
190
+ * est exactement ce qu'on reproche aux autres. La liste est dérivée des clés
191
+ * réelles, donc elle ne peut pas mentir par oubli, et le bouton efface
192
+ * précisément celles-là — jamais le stockage de l'application hôte.
193
+ */
194
+ private storageCard;
195
+ private runtimePane;
196
+ /**
197
+ * Un indicateur du bandeau — et un RACCOURCI vers l'onglet qui le détaille.
198
+ *
199
+ * C'est un `<button>` et non un `<span>` : le bandeau ne se replie plus au
200
+ * clic (c'était le défaut principal — lire une valeur refermait le panneau),
201
+ * donc chaque indicateur peut faire quelque chose d'utile de son propre clic.
202
+ * Mener à l'onglet qui explique le chiffre est ce que l'utilisateur attend,
203
+ * et un bouton l'annonce et s'atteint au clavier.
204
+ */
205
+ private miniMetric;
206
+ private chart;
207
+ private kv;
208
+ /** Carte Frontend / HMR — affichée seulement si un contexte frontend est fourni. */
209
+ private frontendCard;
210
+ private wireRealtime;
211
+ /**
212
+ * Démarre les abonnements realtime (tickers serveur stats+syslog). REF-COMPTÉ
213
+ * (UNE fois) sur le client PARTAGÉ : un canal reste actif tant qu'un
214
+ * consommateur le veut ; le client ré-abonne seul au reconnect. Idempotent.
215
+ */
216
+ private startLive;
217
+ /** Arrête les abonnements realtime (relâche la réf de la barre). Idempotent. */
218
+ private stopLive;
219
+ /** Active/désactive le temps réel (bouton de la barre) + persiste la préférence. */
220
+ setLive(v: boolean): void;
221
+ /** Met à jour l'aspect du bouton « Temps réel » selon l'état. */
222
+ private updateLiveBtn;
223
+ private sampleThroughput;
224
+ private wireHmr;
225
+ private onHmr;
226
+ private flashHmr;
227
+ private wireNetwork;
228
+ private onNetEntry;
229
+ /** Crée ou met à jour le nœud de ligne d'un appel (jamais d'innerHTML global). */
230
+ private upsertNetRow;
231
+ /** Remplit/actualise les cellules d'une ligne (textContent → 0 échappement). */
232
+ private fillNetRow;
233
+ /** Sélectionne une ligne (highlight) + déclenche le fetch du profil. */
234
+ private selectRow;
235
+ /** Fetch `/{profilerBase}/{requestId}` (ignoré par l'intercepteur). */
236
+ private fetchProfile;
237
+ private scheduleRender;
238
+ private text;
239
+ /** className safe pour HTML *et* SVG (SVGElement.className n'est pas une string). */
240
+ private cls;
241
+ private setPoints;
242
+ private render;
243
+ /** Bandeau toujours visible (chips + pouls) — léger. */
244
+ private renderStrip;
245
+ private renderRealtimePane;
246
+ private renderPerf;
247
+ private renderRuntime;
248
+ private renderLogsPane;
249
+ /** Classe de couleur d'une entrée, dérivée de sa sévérité RFC 5424. */
250
+ private static tierOf;
251
+ /** L'entrée passe-t-elle le filtre de sévérité et la recherche en cours ? */
252
+ private feedMatch;
253
+ /** Une ligne de journal — horodatage, sévérité, module, texte, requête. */
254
+ private feedRow;
255
+ /** Le détail d'une entrée — ce qu'on colle dans un ticket. */
256
+ private feedDetail;
257
+ /**
258
+ * Rendu du journal — **incrémental**, et c'est le point.
259
+ *
260
+ * L'ancienne version réassignait `innerHTML` en entier à chaque arrivée. Deux
261
+ * conséquences qu'on ne voit pas dans le code et qu'on subit à l'écran : la
262
+ * SÉLECTION de texte s'efface — impossible de copier une ligne pendant que le
263
+ * flux tourne — et la position de DÉFILEMENT saute. Ici, seules les entrées
264
+ * nouvelles sont insérées en tête ; ce qui est affiché n'est jamais reconstruit.
265
+ *
266
+ * Un changement de filtre ou de recherche, lui, refait bien la liste : le jeu
267
+ * affiché change entièrement, il n'y a rien à préserver.
268
+ */
269
+ private renderFeed;
270
+ private renderNetwork;
271
+ private renderDetail;
272
+ /** Désélectionne la requête → referme le détail (placeholder). */
273
+ private deselect;
274
+ /** Rend le détail d'un profil serveur (méta + waterfall des phases). */
275
+ private profileHtml;
276
+ /** Rend les requêtes ORM (SEAM futur) — vide tant qu'aucun adapter ne pushe. */
277
+ private queriesHtml;
278
+ }
279
+ export default DebugBar;
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Helpers de formatage PURS de la debug bar — aucune dépendance DOM/réseau,
3
+ * donc unit-testables côté Node (suite mocha du core).
4
+ */
5
+ /**
6
+ * Formatte un nombre d'octets en unité lisible (1 décimale, base 1024).
7
+ *
8
+ * @param bytes - taille en octets (négatif/NaN → "0 B")
9
+ * @returns ex. `"1.5 MB"`, `"0 B"`
10
+ */
11
+ export declare function formatBytes(bytes: number): string;
12
+ /**
13
+ * Formatte une durée (secondes) en chaîne compacte (`1h 02m`, `3m 12s`, `45s`).
14
+ *
15
+ * @param seconds - uptime en secondes
16
+ */
17
+ export declare function formatUptime(seconds: number): string;
18
+ /** Palier de santé d'une jauge 0-100 — pilote la couleur du widget. */
19
+ export type GaugeTier = "ok" | "warn" | "crit";
20
+ /**
21
+ * Classe une valeur 0-100 en palier vert/orange/rouge.
22
+ *
23
+ * @param percent - valeur de la jauge
24
+ * @param warn - seuil orange (défaut 70)
25
+ * @param crit - seuil rouge (défaut 90)
26
+ */
27
+ export declare function gauge(percent: number, warn?: number, crit?: number): GaugeTier;
28
+ /** Retire les séquences d'échappement ANSI (couleurs terminal) d'une chaîne. */
29
+ export declare function stripAnsi(input: string): string;
30
+ /**
31
+ * Calcule l'attribut `points` d'un `<polyline>` SVG (sparkline) à partir d'une
32
+ * série de valeurs. Pur → testable. Mise à l'échelle sur `[0, max]`.
33
+ *
34
+ * @param values - série temporelle (gauche = ancien, droite = récent)
35
+ * @param width - largeur du viewBox
36
+ * @param height - hauteur du viewBox
37
+ * @param max - plafond de l'axe Y (défaut = max de la série, plancher 1)
38
+ * @returns ex. `"0,14 10,7 20,2"` (vide si < 2 points)
39
+ */
40
+ export declare function sparklinePoints(values: number[], width: number, height: number, max?: number): string;
41
+ /**
42
+ * Heure locale d'un horodatage, à la milliseconde — `14:03:27.482`.
43
+ *
44
+ * La date n'y figure pas : une barre de débogage montre ce qui vient de se
45
+ * passer, et une date répétée sur chaque ligne coûte de la place sans rien
46
+ * apprendre. Le détail d'une entrée, lui, rend l'horodatage complet.
47
+ */
48
+ export declare function fmtClock(ts: number): string;
@@ -0,0 +1,16 @@
1
+ export type HmrKind = "connected" | "update" | "full-reload" | "error" | "prune";
2
+ export interface HmrEvent {
3
+ kind: HmrKind;
4
+ /** Chemin du module mis à jour (si fourni par Vite). */
5
+ path?: string;
6
+ }
7
+ /** Nom de l'événement DOM émis par le pont HMR côté page. */
8
+ export declare const HMR_EVENT: "nodefony:hmr";
9
+ /**
10
+ * Observe les hot-updates Vite via l'événement `window` `nodefony:hmr`.
11
+ * Aucune connexion réseau ouverte. No-op hors navigateur.
12
+ *
13
+ * @param onEvent - appelé à chaque hot-update relayé par le pont.
14
+ * @returns dispose() — retire le listener (OBLIGATOIRE au démontage).
15
+ */
16
+ export declare function observeViteHmr(onEvent: (e: HmrEvent) => void): () => void;
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Subpath `nodefony/debugbar` — point d'entrée de la debug bar Nodefony.
3
+ *
4
+ * Entry Rollup SÉPARÉE (tree-shakée, 0 octet si non importée) : ce fichier ne
5
+ * doit JAMAIS être réexporté depuis `client/index.ts` (sinon le barrel `nodefony`
6
+ * navigateur tire toute la barre). Cf décision `project_client_lib_subpaths_decision`.
7
+ *
8
+ * Usage :
9
+ * ```ts
10
+ * import { mountDebugBar } from "nodefony/debugbar";
11
+ * mountDebugBar(); // dev only
12
+ * ```
13
+ */
14
+ import { DebugBar, type DebugBarOptions } from "./DebugBar.js";
15
+ export { DebugBar };
16
+ export type { DebugBarOptions };
17
+ export type { DebugBarView, DebugBarModel } from "./model.js";
18
+ export { computeWaterfall, phaseTier, NetworkModel, isError as isNetworkError, } from "./profile.js";
19
+ export type { ProfileEntry, ProfilePhase, ProfileQuery, ProfileState, WaterfallBar, } from "./profile.js";
20
+ export type { NetEntry } from "./network.js";
21
+ /**
22
+ * Monte la debug bar sur la page courante. Idempotent (un seul widget par page).
23
+ * No-op hors navigateur (SSR). Branche un {@link RealtimeClient} sur le WS
24
+ * realtime et rend l'overlay live.
25
+ *
26
+ * @param opts - URL du WS, client partagé, position, ouverture initiale
27
+ * @returns l'instance {@link DebugBar} (appeler `.unmount()` pour retirer)
28
+ */
29
+ export declare function mountDebugBar(opts?: DebugBarOptions): DebugBar;
30
+ export default mountDebugBar;
@@ -0,0 +1,158 @@
1
+ /**
2
+ * État PUR de la debug bar — ingère les payloads des canaux realtime
3
+ * (`nodefony:supervision`, `nodefony:syslog`) et expose une vue dénormalisée prête
4
+ * à rendre (séries temporelles pour sparklines incluses). Aucune dépendance
5
+ * DOM/réseau → unit-testable côté Node.
6
+ *
7
+ * Le rendu (DOM/Shadow/SVG) vit dans `DebugBar.ts` : ce modèle ne fait QUE de la
8
+ * collecte/agrégation, exactement comme les providers serveur sont découplés du
9
+ * transport. Découplage collecte / rendu.
10
+ */
11
+ import type { RealtimeState } from "../realtime/RealtimeClient.js";
12
+ /** Métadonnées applicatives statiques (env, branche git, version) — bloc `app`. */
13
+ export interface AppMeta {
14
+ name?: string;
15
+ version?: string;
16
+ env?: string;
17
+ debug?: boolean;
18
+ branch?: string;
19
+ }
20
+ /** Payload du canal `nodefony:supervision` (cf studio `createStatsTicker`). */
21
+ export interface StatsPayload {
22
+ ts: number;
23
+ app?: AppMeta;
24
+ instanceId?: string;
25
+ uptime?: number;
26
+ pid?: number;
27
+ cpuPercent?: number;
28
+ cpuCount?: number;
29
+ eventLoopMs?: number;
30
+ loadavg?: number[];
31
+ memory?: {
32
+ rss?: number;
33
+ heapUsed?: number;
34
+ heapTotal?: number;
35
+ heapLimit?: number;
36
+ external?: number;
37
+ };
38
+ }
39
+ /**
40
+ * Pdu sérialisé tel qu'il transite sur `nodefony:syslog` (JSON.stringify d'un
41
+ * {@link Pdu} côté serveur). Le message vit dans `payload`, le producteur dans
42
+ * `moduleName` — on réhydrate un vrai {@link Pdu} (même classe Core des 2 côtés).
43
+ */
44
+ export interface LogEntry {
45
+ payload?: unknown;
46
+ severity?: number;
47
+ severityName?: string;
48
+ moduleName?: string;
49
+ msgid?: string;
50
+ msg?: string;
51
+ /**
52
+ * Les champs ci-dessous voyagent DÉJÀ sur le canal : le pont publie le `Pdu`
53
+ * entier, et `JSON.stringify` sérialise toutes ses propriétés publiques (il
54
+ * n'a pas de `toJSON` qui les filtrerait). La console d'administration les lit
55
+ * sur cette même source. La barre les ignorait — c'est tout ce qui lui
56
+ * manquait pour corréler ce qu'elle montre avec le reste du framework.
57
+ */
58
+ timeStamp?: number;
59
+ uid?: number;
60
+ pid?: number;
61
+ /**
62
+ * Identifiant de la requête qui a produit ce journal. C'est LE champ qui relie
63
+ * un clic dans le navigateur à sa route, à sa requête de base de données et à
64
+ * sa réponse — la trace de bout en bout. Absent hors de toute portée de
65
+ * requête (démarrage, tâche de fond), et c'est normal.
66
+ */
67
+ requestId?: string;
68
+ }
69
+ /** Payload coalescé du canal `nodefony:syslog` (cf studio `createSyslogBridge`). */
70
+ export interface SyslogPayload {
71
+ logs?: LogEntry[];
72
+ dropped?: number;
73
+ }
74
+ /** Log normalisé pour le feed du widget. */
75
+ export interface FeedLog {
76
+ severity: number;
77
+ name: string;
78
+ text: string;
79
+ module: string;
80
+ /** Horodatage du PRODUCTEUR, pas de la réception : deux horloges mentiraient. */
81
+ ts: number;
82
+ /** Numéro de séquence du `Pdu` — identifie une entrée sans ambiguïté. */
83
+ uid: number;
84
+ /** Catégorie du message (`KERNEL`, `ROUTER`, `AUTH`…), vide si absente. */
85
+ msgid: string;
86
+ /** Worker émetteur — en cluster, dit LEQUEL a parlé. */
87
+ pid: number;
88
+ /** Requête corrélée, quand elle est connue. */
89
+ requestId?: string;
90
+ }
91
+ /** Vue dénormalisée consommée par le rendu. */
92
+ export interface DebugBarView {
93
+ state: RealtimeState;
94
+ /** Métadonnées app (env, branche git, version) — depuis le bloc `app` des stats. */
95
+ appName: string;
96
+ appVersion: string;
97
+ env: string;
98
+ debug: boolean;
99
+ branch: string;
100
+ cpuPercent: number;
101
+ cpuPeak: number;
102
+ cpuCount: number;
103
+ eventLoopMs: number;
104
+ eventLoopPeak: number;
105
+ uptime: number;
106
+ pid: number;
107
+ instanceId: string;
108
+ loadavg: number[];
109
+ rss: number;
110
+ heapUsed: number;
111
+ heapTotal: number;
112
+ heapLimit: number;
113
+ external: number;
114
+ /** heapUsed / heapLimit en %, 0 si limite inconnue. */
115
+ heapPercent: number;
116
+ heapPeak: number;
117
+ /** Séries temporelles (anciens → récents) pour les sparklines. */
118
+ cpuSeries: number[];
119
+ heapSeries: number[];
120
+ loopSeries: number[];
121
+ /** Total de logs reçus depuis le montage. */
122
+ logTotal: number;
123
+ /** Logs de sévérité ≤ 3 (ERROR/CRITIC/ALERT/EMERGENCY). */
124
+ errorCount: number;
125
+ /** Logs de sévérité === 4 (WARNING). */
126
+ warnCount: number;
127
+ /** Logs omis par le coalescing serveur (surcharge). */
128
+ dropped: number;
129
+ /** Derniers logs (récents en dernier), capés. */
130
+ feed: FeedLog[];
131
+ }
132
+ /** Logs conservés dans le feed. */
133
+ export declare const FEED_MAX = 40;
134
+ export declare class DebugBarModel {
135
+ private _state;
136
+ private _stats;
137
+ private _cpuPeak;
138
+ private _heapPeak;
139
+ private _loopPeak;
140
+ private readonly _cpuSeries;
141
+ private readonly _heapSeries;
142
+ private readonly _loopSeries;
143
+ private _logTotal;
144
+ private _errorCount;
145
+ private _warnCount;
146
+ private _dropped;
147
+ private readonly _feed;
148
+ setState(state: RealtimeState): void;
149
+ /** Mémorise le dernier tick stats + alimente les séries/peaks. */
150
+ ingestStats(payload: StatsPayload): void;
151
+ /**
152
+ * Comptabilise un batch de logs coalescés (compteurs cumulés + feed). Chaque
153
+ * entrée est **réhydratée en {@link Pdu}** — la MÊME classe Core que côté
154
+ * serveur (severityName/payload canoniques, pas de devinette de champ).
155
+ */
156
+ ingestSyslog(payload: SyslogPayload): void;
157
+ get view(): DebugBarView;
158
+ }
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Intercepteur réseau **dev-only** de la debug bar — capture les appels AJAX
3
+ * (`fetch` + `XMLHttpRequest`) de la page pour le panneau Network, et lit le
4
+ * header `X-Request-Id` de chaque réponse → corrélation avec le profil serveur
5
+ * (`/nodefony/profiler/api/{requestId}`).
6
+ *
7
+ * ⚠️ Monkey-patch des globals = intrusif. Donc 6 garde-fous (cf décision design) :
8
+ * 1. **dev-only** : n'est installé que par la debug bar, jamais en prod.
9
+ * 2. **défensif** : toute la collecte est en try/catch — un bug ici ne casse
10
+ * JAMAIS la requête de l'app (on relaie toujours l'appel original).
11
+ * 3. **header-only** : on ne touche jamais au body (pas de `.clone()`, pas de
12
+ * lecture du stream) → 0 risque de consommer/altérer la réponse.
13
+ * 4. **réversible** : `uninstall()` restaure les implémentations d'origine.
14
+ * 5. **chain-safe** : on wrappe le `fetch`/XHR COURANT (déjà potentiellement
15
+ * patché par une autre lib), on ne clobber pas — l'uninstall ne restaure que
16
+ * si personne n'a re-patché par-dessus.
17
+ * 6. **opt-out** : `mountDebugBar({ network:false })` n'installe rien.
18
+ *
19
+ * Coût : 2 `performance.now()` + lecture d'1 header + 1 push capé par appel.
20
+ * Négligeable vs la latence réseau.
21
+ */
22
+ /** Une entrée du panneau Network (1 appel AJAX observé). */
23
+ export interface NetEntry {
24
+ /** Id local monotone (clé de rendu, ≠ requestId serveur). */
25
+ id: number;
26
+ method: string;
27
+ url: string;
28
+ /** Path seul (sans origin/query) pour l'affichage compact. */
29
+ path: string;
30
+ status: number | null;
31
+ ok: boolean;
32
+ /** Durée client (ms, envoi → réponse), `null` tant que pending. */
33
+ durationMs: number | null;
34
+ startedAt: number;
35
+ /** `X-Request-Id` de la réponse → clé du profil serveur. `null` si absent. */
36
+ requestId: string | null;
37
+ /** `traceparent` W3C (RFC-propre) de la réponse, pour la corrélation distribuée. */
38
+ traceparent: string | null;
39
+ /** Vrai tant que la réponse n'est pas arrivée. */
40
+ pending: boolean;
41
+ /** Message d'erreur réseau (fetch rejeté / XHR error), sinon `null`. */
42
+ error: string | null;
43
+ }
44
+ export interface NetworkInterceptorOptions {
45
+ /** Appelé à chaque création/mise à jour d'entrée (re-render). */
46
+ onChange: (entry: NetEntry) => void;
47
+ /** Prédicat d'exclusion d'une URL (ex. l'API profiler elle-même). */
48
+ ignore?: (url: string) => boolean;
49
+ }
50
+ /**
51
+ * Installe l'intercepteur fetch + XHR. No-op hors navigateur.
52
+ *
53
+ * @returns `uninstall()` — restaure les globals (OBLIGATOIRE à l'unmount).
54
+ */
55
+ export declare function installNetworkInterceptor(opts: NetworkInterceptorOptions): () => void;
@@ -0,0 +1,99 @@
1
+ /**
2
+ * Modèle PUR du panneau Network + profil serveur — aucune dépendance DOM/réseau
3
+ * (le fetch vit dans `DebugBar.ts`, l'interception dans `network.ts`). Testable
4
+ * côté Node, comme {@link DebugBarModel}.
5
+ *
6
+ * Deux responsabilités :
7
+ * - {@link NetworkModel} : ring buffer des appels AJAX observés + compteurs +
8
+ * cache des profils serveur déjà fetchés (par `requestId`).
9
+ * - {@link computeWaterfall} : layout proportionnel des phases serveur (le
10
+ * centre UX — une timeline type Chrome/Symfony).
11
+ */
12
+ import type { NetEntry } from "./network.js";
13
+ /** Phase serveur projetée (miroir client de `@nodefony/http` `ProfilePhase`). */
14
+ export interface ProfilePhase {
15
+ name: string;
16
+ startMs: number;
17
+ durationMs: number | null;
18
+ }
19
+ /** Requête ORM (miroir client de `@nodefony/http` `ProfileQuery` — SEAM futur). */
20
+ export interface ProfileQuery {
21
+ sql: string;
22
+ durationMs: number;
23
+ rows?: number;
24
+ connector?: string;
25
+ }
26
+ /** Profil serveur complet (miroir client de `@nodefony/http` `ProfileEntry`). */
27
+ export interface ProfileEntry {
28
+ requestId: string;
29
+ ts: number;
30
+ kind: "http" | "ws";
31
+ method: string | null;
32
+ url: string;
33
+ scheme: string;
34
+ status: number | null;
35
+ durationMs: number | null;
36
+ route: string | null;
37
+ controller: string | null;
38
+ action: string | null;
39
+ remoteAddress: string | null;
40
+ user: string | null;
41
+ /** `traceparent` W3C (RFC-propre), si présent. */
42
+ traceparent: string | null;
43
+ error: string | null;
44
+ phases: ProfilePhase[];
45
+ /** Requêtes ORM (SEAM futur — `undefined` tant qu'aucun adapter ne pushe). */
46
+ queries?: ProfileQuery[];
47
+ }
48
+ /** État de chargement d'un profil serveur dans le cache. */
49
+ export type ProfileState = {
50
+ status: "loading";
51
+ } | {
52
+ status: "ready";
53
+ profile: ProfileEntry;
54
+ } | {
55
+ status: "missing";
56
+ } | {
57
+ status: "error";
58
+ message: string;
59
+ };
60
+ /** Une barre du waterfall (positions en % du span total). */
61
+ export interface WaterfallBar {
62
+ name: string;
63
+ leftPct: number;
64
+ widthPct: number;
65
+ durationMs: number;
66
+ /** Classe de couleur CSS (cf STYLES `.wf-<tier>`). */
67
+ tier: string;
68
+ }
69
+ /** Mappe un nom de phase vers sa classe de couleur (défaut neutre). */
70
+ export declare function phaseTier(name: string): string;
71
+ export declare class NetworkModel {
72
+ private readonly _byId;
73
+ private readonly _profiles;
74
+ private _total;
75
+ private _errors;
76
+ /** Upsert d'une entrée (pending puis résolue partagent le même `id`). */
77
+ ingest(entry: NetEntry): void;
78
+ /** Entrées récentes (récent → ancien) pour le rendu. */
79
+ entries(): NetEntry[];
80
+ get total(): number;
81
+ get errors(): number;
82
+ get pending(): number;
83
+ profileState(requestId: string): ProfileState | undefined;
84
+ setProfileState(requestId: string, state: ProfileState): void;
85
+ clear(): void;
86
+ }
87
+ /** Vrai si une entrée est en erreur réseau ou status ≥ 400. */
88
+ export declare function isError(e: NetEntry): boolean;
89
+ /**
90
+ * Calcule le layout proportionnel des phases serveur (waterfall). Pur.
91
+ *
92
+ * Chaque barre est positionnée sur le span `[min start, max end]` en %. Une
93
+ * phase de durée nulle reçoit une largeur plancher (visibilité). Span nul →
94
+ * barres vides (évite la division par zéro).
95
+ *
96
+ * @param phases - phases du profil serveur (startMs relatif + durationMs)
97
+ * @returns barres prêtes à rendre (gauche/largeur en %)
98
+ */
99
+ export declare function computeWaterfall(phases: ProfilePhase[]): WaterfallBar[];