@mks2508/better-logger 0.14.0-alpha.2 → 0.18.2-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (454) hide show
  1. package/README.md +289 -185
  2. package/dist/Logger.d.ts +576 -205
  3. package/dist/Logger.d.ts.map +1 -1
  4. package/dist/ScopedLogger.d.ts +48 -292
  5. package/dist/ScopedLogger.d.ts.map +1 -1
  6. package/dist/chunks/HookBridge-CiRfR67f.cjs +190 -0
  7. package/dist/chunks/HookBridge-CiRfR67f.cjs.map +1 -0
  8. package/dist/chunks/HookBridge-SgMmbXZB.js +173 -0
  9. package/dist/chunks/HookBridge-SgMmbXZB.js.map +1 -0
  10. package/dist/chunks/LogContext-Cwn-1Zzb.js +85 -0
  11. package/dist/chunks/LogContext-Cwn-1Zzb.js.map +1 -0
  12. package/dist/chunks/LogContext-L7HzynFw.cjs +90 -0
  13. package/dist/chunks/LogContext-L7HzynFw.cjs.map +1 -0
  14. package/dist/chunks/SerializerBridge-BaOQOb8q.cjs +166 -0
  15. package/dist/chunks/SerializerBridge-BaOQOb8q.cjs.map +1 -0
  16. package/dist/chunks/SerializerBridge-BkpQu5c9.js +149 -0
  17. package/dist/chunks/SerializerBridge-BkpQu5c9.js.map +1 -0
  18. package/dist/chunks/StyleManager-CIpd6wbO.cjs +92 -0
  19. package/dist/chunks/StyleManager-CIpd6wbO.cjs.map +1 -0
  20. package/dist/chunks/StyleManager-LCvVlVdx.js +87 -0
  21. package/dist/chunks/StyleManager-LCvVlVdx.js.map +1 -0
  22. package/dist/chunks/core-Dzz7agGa.cjs +39 -0
  23. package/dist/chunks/core-Dzz7agGa.cjs.map +1 -0
  24. package/dist/chunks/core-PoT7RrTK.js +34 -0
  25. package/dist/chunks/core-PoT7RrTK.js.map +1 -0
  26. package/dist/chunks/environment-detector-CI3TrWK_.js +110 -0
  27. package/dist/chunks/environment-detector-CI3TrWK_.js.map +1 -0
  28. package/dist/chunks/environment-detector-Cnn6wr6O.cjs +163 -0
  29. package/dist/chunks/environment-detector-Cnn6wr6O.cjs.map +1 -0
  30. package/dist/chunks/server-fallback-BUKjdLS7.cjs +42 -0
  31. package/dist/chunks/server-fallback-BUKjdLS7.cjs.map +1 -0
  32. package/dist/chunks/server-fallback-BsuWH1Dk.js +37 -0
  33. package/dist/chunks/server-fallback-BsuWH1Dk.js.map +1 -0
  34. package/dist/chunks/spinner-D3FsF78o.js +700 -0
  35. package/dist/chunks/spinner-D3FsF78o.js.map +1 -0
  36. package/dist/chunks/spinner-DNvxbM9a.cjs +747 -0
  37. package/dist/chunks/spinner-DNvxbM9a.cjs.map +1 -0
  38. package/dist/chunks/styling-84N8T97t.js +941 -0
  39. package/dist/chunks/styling-84N8T97t.js.map +1 -0
  40. package/dist/chunks/styling-Cg5saQ46.cjs +994 -0
  41. package/dist/chunks/styling-Cg5saQ46.cjs.map +1 -0
  42. package/dist/chunks/transports-BiDk345e.js +715 -0
  43. package/dist/chunks/transports-BiDk345e.js.map +1 -0
  44. package/dist/chunks/transports-COPWmlF1.cjs +756 -0
  45. package/dist/chunks/transports-COPWmlF1.cjs.map +1 -0
  46. package/dist/chunks/utils-BqlFYocD.cjs +698 -0
  47. package/dist/chunks/utils-BqlFYocD.cjs.map +1 -0
  48. package/dist/chunks/utils-VETbVpkR.js +579 -0
  49. package/dist/chunks/utils-VETbVpkR.js.map +1 -0
  50. package/dist/cli/commands/ExportCommand.d.ts +8 -26
  51. package/dist/cli/commands/ExportCommand.d.ts.map +1 -1
  52. package/dist/cli/index.d.ts +1 -2
  53. package/dist/cli/index.d.ts.map +1 -1
  54. package/dist/cli-module.d.ts +13 -0
  55. package/dist/cli-module.d.ts.map +1 -0
  56. package/dist/cli.cjs +11 -0
  57. package/dist/cli.js +3 -0
  58. package/dist/constants.d.ts +16 -47
  59. package/dist/constants.d.ts.map +1 -1
  60. package/dist/context/LogContext.d.ts +146 -0
  61. package/dist/context/LogContext.d.ts.map +1 -0
  62. package/dist/context/index.d.ts +6 -0
  63. package/dist/context/index.d.ts.map +1 -0
  64. package/dist/context-module.d.ts +6 -0
  65. package/dist/context-module.d.ts.map +1 -0
  66. package/dist/context.cjs +3 -0
  67. package/dist/context.js +2 -0
  68. package/dist/core.cjs +281 -2
  69. package/dist/core.cjs.map +1 -1
  70. package/dist/core.d.ts +6 -7
  71. package/dist/core.d.ts.map +1 -1
  72. package/dist/core.js +258 -314
  73. package/dist/core.js.map +1 -1
  74. package/dist/example.d.ts.map +1 -1
  75. package/dist/hooks/HookBridge.d.ts +26 -0
  76. package/dist/hooks/HookBridge.d.ts.map +1 -0
  77. package/dist/hooks/HookManager.d.ts +26 -0
  78. package/dist/hooks/HookManager.d.ts.map +1 -0
  79. package/dist/hooks/index.d.ts +7 -0
  80. package/dist/hooks/index.d.ts.map +1 -0
  81. package/dist/hooks-module.d.ts +7 -0
  82. package/dist/hooks-module.d.ts.map +1 -0
  83. package/dist/hooks.cjs +5 -0
  84. package/dist/hooks.js +2 -0
  85. package/dist/index.cjs +2522 -2
  86. package/dist/index.cjs.map +1 -1
  87. package/dist/index.d.ts +42 -130
  88. package/dist/index.d.ts.map +1 -1
  89. package/dist/index.js +2447 -158
  90. package/dist/index.js.map +1 -1
  91. package/dist/node-module.d.ts +10 -0
  92. package/dist/node-module.d.ts.map +1 -0
  93. package/dist/node.cjs +13 -0
  94. package/dist/node.cjs.map +1 -0
  95. package/dist/node.js +12 -0
  96. package/dist/node.js.map +1 -0
  97. package/dist/playground/TerminalBridge.d.ts +46 -0
  98. package/dist/playground/TerminalBridge.d.ts.map +1 -0
  99. package/dist/playground/box.d.ts +14 -0
  100. package/dist/playground/box.d.ts.map +1 -0
  101. package/dist/playground/cli-table.d.ts +14 -0
  102. package/dist/playground/cli-table.d.ts.map +1 -0
  103. package/dist/playground/divider.d.ts +10 -0
  104. package/dist/playground/divider.d.ts.map +1 -0
  105. package/dist/playground/header.d.ts +11 -0
  106. package/dist/playground/header.d.ts.map +1 -0
  107. package/dist/playground/index.d.ts +11 -0
  108. package/dist/playground/index.d.ts.map +1 -0
  109. package/dist/playground/server-fallback.d.ts +27 -0
  110. package/dist/playground/server-fallback.d.ts.map +1 -0
  111. package/dist/playground/spinner.d.ts +48 -0
  112. package/dist/playground/spinner.d.ts.map +1 -0
  113. package/dist/playground/step.d.ts +14 -0
  114. package/dist/playground/step.d.ts.map +1 -0
  115. package/dist/playground-module.d.ts +11 -0
  116. package/dist/playground-module.d.ts.map +1 -0
  117. package/dist/playground.cjs +9 -0
  118. package/dist/playground.js +2 -0
  119. package/dist/serializers/SerializerBridge.d.ts +21 -0
  120. package/dist/serializers/SerializerBridge.d.ts.map +1 -0
  121. package/dist/serializers/SerializerRegistry.d.ts +16 -0
  122. package/dist/serializers/SerializerRegistry.d.ts.map +1 -0
  123. package/dist/serializers/index.d.ts +7 -0
  124. package/dist/serializers/index.d.ts.map +1 -0
  125. package/dist/serializers-module.d.ts +7 -0
  126. package/dist/serializers-module.d.ts.map +1 -0
  127. package/dist/serializers.cjs +5 -0
  128. package/dist/serializers.js +2 -0
  129. package/dist/styles/StyleManager.d.ts +83 -0
  130. package/dist/styles/StyleManager.d.ts.map +1 -0
  131. package/dist/styles/index.d.ts +7 -0
  132. package/dist/styles/index.d.ts.map +1 -0
  133. package/dist/styles-module.d.ts +7 -0
  134. package/dist/styles-module.d.ts.map +1 -0
  135. package/dist/styles.cjs +7 -0
  136. package/dist/styles.js +3 -0
  137. package/dist/styling/banners.d.ts +6 -2
  138. package/dist/styling/banners.d.ts.map +1 -1
  139. package/dist/styling/index.d.ts +8 -3
  140. package/dist/styling/index.d.ts.map +1 -1
  141. package/dist/terminal/color-converter.d.ts +73 -0
  142. package/dist/terminal/color-converter.d.ts.map +1 -0
  143. package/dist/terminal/formatter.d.ts +23 -0
  144. package/dist/terminal/formatter.d.ts.map +1 -0
  145. package/dist/transports/ConsoleTransport.d.ts +9 -0
  146. package/dist/transports/ConsoleTransport.d.ts.map +1 -0
  147. package/dist/transports/FileTransport.d.ts +56 -0
  148. package/dist/transports/FileTransport.d.ts.map +1 -0
  149. package/dist/transports/HttpTransport.d.ts +67 -0
  150. package/dist/transports/HttpTransport.d.ts.map +1 -0
  151. package/dist/transports/OtlpTransport.d.ts +148 -0
  152. package/dist/transports/OtlpTransport.d.ts.map +1 -0
  153. package/dist/transports/TransportBridge.d.ts +37 -0
  154. package/dist/transports/TransportBridge.d.ts.map +1 -0
  155. package/dist/transports/TransportManager.d.ts +36 -0
  156. package/dist/transports/TransportManager.d.ts.map +1 -0
  157. package/dist/transports/index.d.ts +6 -0
  158. package/dist/transports/index.d.ts.map +1 -0
  159. package/dist/transports-module.d.ts +10 -0
  160. package/dist/transports-module.d.ts.map +1 -0
  161. package/dist/transports.cjs +7 -0
  162. package/dist/transports.js +2 -0
  163. package/dist/types/core.d.ts +188 -6
  164. package/dist/types/core.d.ts.map +1 -1
  165. package/dist/types/handlers.d.ts +0 -67
  166. package/dist/types/handlers.d.ts.map +1 -1
  167. package/dist/types/hooks.d.ts +60 -0
  168. package/dist/types/hooks.d.ts.map +1 -0
  169. package/dist/types/index.d.ts +7 -3
  170. package/dist/types/index.d.ts.map +1 -1
  171. package/dist/types/serializers.d.ts +25 -0
  172. package/dist/types/serializers.d.ts.map +1 -0
  173. package/dist/types/transports.d.ts +127 -0
  174. package/dist/types/transports.d.ts.map +1 -0
  175. package/dist/utils/ansi-colors.d.ts +115 -0
  176. package/dist/utils/ansi-colors.d.ts.map +1 -0
  177. package/dist/utils/environment-detector.d.ts +53 -0
  178. package/dist/utils/environment-detector.d.ts.map +1 -0
  179. package/dist/utils/formatting.d.ts +1 -0
  180. package/dist/utils/formatting.d.ts.map +1 -1
  181. package/dist/utils/index.d.ts +3 -2
  182. package/dist/utils/index.d.ts.map +1 -1
  183. package/dist/utils/output.d.ts +8 -11
  184. package/dist/utils/output.d.ts.map +1 -1
  185. package/dist/utils/stackTrace.d.ts.map +1 -1
  186. package/dist/utils/timestamps.d.ts +0 -12
  187. package/dist/utils/timestamps.d.ts.map +1 -1
  188. package/package.json +96 -21
  189. package/.claude/settings.local.json +0 -39
  190. package/.github/workflows/ci-quality.yml +0 -357
  191. package/.github/workflows/docs-demo.yml +0 -119
  192. package/.github/workflows/releases-core.yml +0 -512
  193. package/.github/workflows/releases-full.yml +0 -582
  194. package/.github/workflows-backup/ci.yml +0 -221
  195. package/.github/workflows-backup/nightly.yml +0 -196
  196. package/.github/workflows-backup/release-optimized.yml +0 -373
  197. package/.github/workflows-backup/release.yml +0 -269
  198. package/.release-notes-0.2.0.md +0 -129
  199. package/.yamllint +0 -28
  200. package/CHANGELOG.json +0 -865
  201. package/CLAUDE.md +0 -204
  202. package/bun.lock +0 -323
  203. package/demo.html +0 -847
  204. package/dist/.tsbuildinfo +0 -1
  205. package/dist/Logger.js +0 -1124
  206. package/dist/ScopedLogger.js +0 -426
  207. package/dist/chunks/Logger-Crw1woqR.js +0 -3464
  208. package/dist/chunks/Logger-Crw1woqR.js.map +0 -1
  209. package/dist/chunks/Logger-D_p3xnbq.js +0 -2
  210. package/dist/chunks/Logger-D_p3xnbq.js.map +0 -1
  211. package/dist/chunks/RemoteLogHandler-CjWpWZGl.js +0 -33
  212. package/dist/chunks/RemoteLogHandler-CjWpWZGl.js.map +0 -1
  213. package/dist/chunks/RemoteLogHandler-ymkQ97xl.js +0 -2
  214. package/dist/chunks/RemoteLogHandler-ymkQ97xl.js.map +0 -1
  215. package/dist/chunks/environment-Bxbnw4pd.js +0 -544
  216. package/dist/chunks/environment-Bxbnw4pd.js.map +0 -1
  217. package/dist/chunks/environment-Dm66zOML.js +0 -4
  218. package/dist/chunks/environment-Dm66zOML.js.map +0 -1
  219. package/dist/chunks/formatting-C0riPC5_.js +0 -95
  220. package/dist/chunks/formatting-C0riPC5_.js.map +0 -1
  221. package/dist/chunks/formatting-DNCAV66-.js +0 -2
  222. package/dist/chunks/formatting-DNCAV66-.js.map +0 -1
  223. package/dist/cli/CommandProcessor.js +0 -184
  224. package/dist/cli/commands/ConfigCommand.js +0 -88
  225. package/dist/cli/commands/ExportCommand.js +0 -243
  226. package/dist/cli/commands/HistoryCommand.d.ts +0 -50
  227. package/dist/cli/commands/HistoryCommand.d.ts.map +0 -1
  228. package/dist/cli/commands/HistoryCommand.js +0 -96
  229. package/dist/cli/commands/StatusCommand.d.ts +0 -33
  230. package/dist/cli/commands/StatusCommand.d.ts.map +0 -1
  231. package/dist/cli/commands/StatusCommand.js +0 -93
  232. package/dist/cli/commands/ThemeCommand.js +0 -79
  233. package/dist/cli/help.js +0 -118
  234. package/dist/cli/index.js +0 -46
  235. package/dist/constants.js +0 -159
  236. package/dist/example.js +0 -154
  237. package/dist/exports-module.d.ts +0 -203
  238. package/dist/exports-module.d.ts.map +0 -1
  239. package/dist/exports-module.js +0 -260
  240. package/dist/exports.cjs +0 -2
  241. package/dist/exports.cjs.map +0 -1
  242. package/dist/exports.js +0 -238
  243. package/dist/exports.js.map +0 -1
  244. package/dist/handlers/AnalyticsLogHandler.d.ts +0 -11
  245. package/dist/handlers/AnalyticsLogHandler.d.ts.map +0 -1
  246. package/dist/handlers/AnalyticsLogHandler.js +0 -19
  247. package/dist/handlers/ExportLogHandler.d.ts +0 -103
  248. package/dist/handlers/ExportLogHandler.d.ts.map +0 -1
  249. package/dist/handlers/ExportLogHandler.js +0 -516
  250. package/dist/handlers/FileLogHandler.d.ts +0 -36
  251. package/dist/handlers/FileLogHandler.d.ts.map +0 -1
  252. package/dist/handlers/FileLogHandler.js +0 -156
  253. package/dist/handlers/RemoteLogHandler.d.ts +0 -14
  254. package/dist/handlers/RemoteLogHandler.d.ts.map +0 -1
  255. package/dist/handlers/RemoteLogHandler.js +0 -37
  256. package/dist/handlers/index.d.ts +0 -8
  257. package/dist/handlers/index.d.ts.map +0 -1
  258. package/dist/handlers/index.js +0 -7
  259. package/dist/main.js +0 -139
  260. package/dist/styling/LogStyleBuilder.d.ts +0 -149
  261. package/dist/styling/LogStyleBuilder.d.ts.map +0 -1
  262. package/dist/styling/LogStyleBuilder.js +0 -289
  263. package/dist/styling/SemanticStyles.d.ts +0 -181
  264. package/dist/styling/SemanticStyles.d.ts.map +0 -1
  265. package/dist/styling/SemanticStyles.js +0 -339
  266. package/dist/styling/SmartPresets.js +0 -276
  267. package/dist/styling/StyleBuilder.js +0 -280
  268. package/dist/styling/banners.js +0 -155
  269. package/dist/styling/index.js +0 -9
  270. package/dist/styling/themes.js +0 -231
  271. package/dist/styling-module.d.ts +0 -185
  272. package/dist/styling-module.d.ts.map +0 -1
  273. package/dist/styling-module.js +0 -199
  274. package/dist/styling.cjs +0 -2
  275. package/dist/styling.cjs.map +0 -1
  276. package/dist/styling.js +0 -146
  277. package/dist/styling.js.map +0 -1
  278. package/dist/types/Logger.d.ts +0 -700
  279. package/dist/types/Logger.d.ts.map +0 -1
  280. package/dist/types/ScopedLogger.d.ts +0 -310
  281. package/dist/types/ScopedLogger.d.ts.map +0 -1
  282. package/dist/types/cli/CommandProcessor.d.ts +0 -100
  283. package/dist/types/cli/CommandProcessor.d.ts.map +0 -1
  284. package/dist/types/cli/commands/ConfigCommand.d.ts +0 -14
  285. package/dist/types/cli/commands/ConfigCommand.d.ts.map +0 -1
  286. package/dist/types/cli/commands/ExportCommand.d.ts +0 -48
  287. package/dist/types/cli/commands/ExportCommand.d.ts.map +0 -1
  288. package/dist/types/cli/commands/HistoryCommand.d.ts +0 -47
  289. package/dist/types/cli/commands/HistoryCommand.d.ts.map +0 -1
  290. package/dist/types/cli/commands/StatusCommand.d.ts +0 -30
  291. package/dist/types/cli/commands/StatusCommand.d.ts.map +0 -1
  292. package/dist/types/cli/commands/ThemeCommand.d.ts +0 -30
  293. package/dist/types/cli/commands/ThemeCommand.d.ts.map +0 -1
  294. package/dist/types/cli/help.d.ts +0 -12
  295. package/dist/types/cli/help.d.ts.map +0 -1
  296. package/dist/types/cli/index.d.ts +0 -15
  297. package/dist/types/cli/index.d.ts.map +0 -1
  298. package/dist/types/constants.d.ts +0 -119
  299. package/dist/types/constants.d.ts.map +0 -1
  300. package/dist/types/core.js +0 -28
  301. package/dist/types/example.d.ts +0 -18
  302. package/dist/types/example.d.ts.map +0 -1
  303. package/dist/types/exports-module.d.ts +0 -196
  304. package/dist/types/exports-module.d.ts.map +0 -1
  305. package/dist/types/handlers/AnalyticsLogHandler.d.ts +0 -8
  306. package/dist/types/handlers/AnalyticsLogHandler.d.ts.map +0 -1
  307. package/dist/types/handlers/ExportLogHandler.d.ts +0 -100
  308. package/dist/types/handlers/ExportLogHandler.d.ts.map +0 -1
  309. package/dist/types/handlers/FileLogHandler.d.ts +0 -33
  310. package/dist/types/handlers/FileLogHandler.d.ts.map +0 -1
  311. package/dist/types/handlers/RemoteLogHandler.d.ts +0 -11
  312. package/dist/types/handlers/RemoteLogHandler.d.ts.map +0 -1
  313. package/dist/types/handlers/index.d.ts +0 -8
  314. package/dist/types/handlers/index.d.ts.map +0 -1
  315. package/dist/types/handlers.js +0 -4
  316. package/dist/types/index.js +0 -4
  317. package/dist/types/main.d.ts +0 -2
  318. package/dist/types/main.d.ts.map +0 -1
  319. package/dist/types/styling/LogStyleBuilder.d.ts +0 -146
  320. package/dist/types/styling/LogStyleBuilder.d.ts.map +0 -1
  321. package/dist/types/styling/SemanticStyles.d.ts +0 -178
  322. package/dist/types/styling/SemanticStyles.d.ts.map +0 -1
  323. package/dist/types/styling/SmartPresets.d.ts +0 -22
  324. package/dist/types/styling/SmartPresets.d.ts.map +0 -1
  325. package/dist/types/styling/StyleBuilder.d.ts +0 -140
  326. package/dist/types/styling/StyleBuilder.d.ts.map +0 -1
  327. package/dist/types/styling/banners.d.ts +0 -42
  328. package/dist/types/styling/banners.d.ts.map +0 -1
  329. package/dist/types/styling/index.d.ts +0 -10
  330. package/dist/types/styling/index.d.ts.map +0 -1
  331. package/dist/types/styling/themes.d.ts +0 -7
  332. package/dist/types/styling/themes.d.ts.map +0 -1
  333. package/dist/types/styling-module.d.ts +0 -178
  334. package/dist/types/styling-module.d.ts.map +0 -1
  335. package/dist/types/types/core.d.ts +0 -221
  336. package/dist/types/types/core.d.ts.map +0 -1
  337. package/dist/types/types/handlers.d.ts +0 -85
  338. package/dist/types/types/handlers.d.ts.map +0 -1
  339. package/dist/types/types/index.d.ts +0 -7
  340. package/dist/types/types/index.d.ts.map +0 -1
  341. package/dist/types/utils/environment.d.ts +0 -47
  342. package/dist/types/utils/environment.d.ts.map +0 -1
  343. package/dist/types/utils/formatting.d.ts +0 -37
  344. package/dist/types/utils/formatting.d.ts.map +0 -1
  345. package/dist/types/utils/index.d.ts +0 -7
  346. package/dist/types/utils/index.d.ts.map +0 -1
  347. package/dist/types/utils/opentui-detection.d.ts +0 -34
  348. package/dist/types/utils/opentui-detection.d.ts.map +0 -1
  349. package/dist/types/utils/output.d.ts +0 -41
  350. package/dist/types/utils/output.d.ts.map +0 -1
  351. package/dist/types/utils/stackTrace.d.ts +0 -6
  352. package/dist/types/utils/stackTrace.d.ts.map +0 -1
  353. package/dist/types/utils/timestamps.d.ts +0 -20
  354. package/dist/types/utils/timestamps.d.ts.map +0 -1
  355. package/dist/utils/environment.d.ts +0 -47
  356. package/dist/utils/environment.d.ts.map +0 -1
  357. package/dist/utils/environment.js +0 -85
  358. package/dist/utils/formatting.js +0 -117
  359. package/dist/utils/index.js +0 -6
  360. package/dist/utils/opentui-detection.d.ts +0 -34
  361. package/dist/utils/opentui-detection.d.ts.map +0 -1
  362. package/dist/utils/opentui-detection.js +0 -116
  363. package/dist/utils/output.js +0 -150
  364. package/dist/utils/stackTrace.js +0 -81
  365. package/dist/utils/timestamps.js +0 -71
  366. package/dist/vite.svg +0 -1
  367. package/docs/API.md +0 -691
  368. package/docs/CORE.md +0 -264
  369. package/docs/DEVELOPMENT.md +0 -731
  370. package/docs/EXPORTS.md +0 -467
  371. package/docs/PACKAGES.md +0 -244
  372. package/docs/STYLING.md +0 -405
  373. package/docs/_config.yml +0 -36
  374. package/docs/index.md +0 -179
  375. package/examples/README.md +0 -208
  376. package/examples/basic-logging.js +0 -75
  377. package/examples/data-export.js +0 -234
  378. package/examples/package.json +0 -16
  379. package/examples/performance-timing.js +0 -170
  380. package/examples/simplified-api.js +0 -124
  381. package/examples/styling-themes.js +0 -207
  382. package/index.html +0 -358
  383. package/packages/core/package.json +0 -57
  384. package/packages/exports/package.json +0 -41
  385. package/packages/nodejs-opentui/README.md +0 -232
  386. package/packages/nodejs-opentui/package.json +0 -72
  387. package/packages/nodejs-opentui/src/LogRenderer.ts +0 -171
  388. package/packages/nodejs-opentui/src/OpenTUILogHandler.ts +0 -178
  389. package/packages/nodejs-opentui/src/components/LogBadge.tsx +0 -131
  390. package/packages/nodejs-opentui/src/index.ts +0 -133
  391. package/packages/nodejs-opentui/src/types.ts +0 -158
  392. package/packages/nodejs-opentui/tsconfig.json +0 -20
  393. package/packages/styling/package.json +0 -41
  394. package/project-utils/README.md +0 -172
  395. package/project-utils/auto-release-gemini.ts +0 -1193
  396. package/project-utils/auto-release-ui.ts +0 -1329
  397. package/project-utils/commit-generator.ts +0 -1385
  398. package/project-utils/commit-ui.ts +0 -264
  399. package/project-utils/git-utils.ts +0 -199
  400. package/project-utils/github-release-manager.ts +0 -466
  401. package/project-utils/project-config.ts +0 -260
  402. package/project-utils/prompt-templates.js +0 -345
  403. package/project-utils/prompt-templates.ts +0 -422
  404. package/project-utils/version-manager.ts +0 -1078
  405. package/public/vite.svg +0 -1
  406. package/src/Logger.ts +0 -1276
  407. package/src/ScopedLogger.ts +0 -454
  408. package/src/cli/CommandProcessor.ts +0 -248
  409. package/src/cli/commands/ConfigCommand.ts +0 -93
  410. package/src/cli/commands/ExportCommand.ts +0 -276
  411. package/src/cli/commands/HistoryCommand.ts +0 -117
  412. package/src/cli/commands/StatusCommand.ts +0 -112
  413. package/src/cli/commands/ThemeCommand.ts +0 -88
  414. package/src/cli/help.ts +0 -127
  415. package/src/cli/index.ts +0 -71
  416. package/src/constants.ts +0 -171
  417. package/src/core.ts +0 -393
  418. package/src/example.ts +0 -210
  419. package/src/exports-module.ts +0 -311
  420. package/src/handlers/AnalyticsLogHandler.ts +0 -22
  421. package/src/handlers/ExportLogHandler.ts +0 -609
  422. package/src/handlers/FileLogHandler.ts +0 -169
  423. package/src/handlers/RemoteLogHandler.ts +0 -42
  424. package/src/handlers/index.ts +0 -8
  425. package/src/index.ts +0 -209
  426. package/src/main.ts +0 -196
  427. package/src/style.css +0 -96
  428. package/src/styling/LogStyleBuilder.ts +0 -355
  429. package/src/styling/SemanticStyles.ts +0 -380
  430. package/src/styling/SmartPresets.ts +0 -288
  431. package/src/styling/StyleBuilder.ts +0 -319
  432. package/src/styling/banners.ts +0 -168
  433. package/src/styling/index.ts +0 -27
  434. package/src/styling/themes.ts +0 -235
  435. package/src/styling-module.ts +0 -244
  436. package/src/types/core.ts +0 -236
  437. package/src/types/handlers.ts +0 -95
  438. package/src/types/index.ts +0 -35
  439. package/src/typescript.svg +0 -1
  440. package/src/utils/environment.ts +0 -94
  441. package/src/utils/formatting.ts +0 -142
  442. package/src/utils/index.ts +0 -21
  443. package/src/utils/opentui-detection.ts +0 -138
  444. package/src/utils/output.ts +0 -185
  445. package/src/utils/stackTrace.ts +0 -95
  446. package/src/utils/timestamps.ts +0 -80
  447. package/src/vite-env.d.ts +0 -1
  448. package/test-core-browser.html +0 -237
  449. package/test-core-node.js +0 -63
  450. package/tests/test-conflict-resolution.ts +0 -391
  451. package/tests/validate-workflows.sh +0 -131
  452. package/tests/yaml-autofix.sh +0 -146
  453. package/tsconfig.json +0 -50
  454. package/vite.config.ts +0 -223
@@ -1,41 +0,0 @@
1
- import { LogLevel, StackInfo, DevToolsTheme, AdaptiveColors } from '../types/index.js';
2
- /**
3
- * Style configuration for each log level
4
- */
5
- export interface LevelStyleConfig {
6
- emoji: string;
7
- label: string;
8
- background: string;
9
- color: string;
10
- border: string;
11
- shadow: string;
12
- }
13
- /**
14
- * Detects the current DevTools theme preference
15
- */
16
- export declare function detectDevToolsTheme(): DevToolsTheme;
17
- /**
18
- * Gets adaptive color based on current DevTools theme
19
- */
20
- export declare function getAdaptiveColor(colors: AdaptiveColors, theme?: DevToolsTheme): string;
21
- /**
22
- * Sets up theme change listener for dynamic updates
23
- */
24
- export declare function setupThemeChangeListener(callback: (theme: DevToolsTheme) => void): (() => void) | null;
25
- /**
26
- * Creates styled console output with multiple %c formatters
27
- */
28
- export declare function createStyledOutput(level: LogLevel, levelStyles: Record<LogLevel | 'success', LevelStyleConfig>, prefix: string | undefined, message: string, stackInfo: StackInfo | null, autoDetectTheme?: boolean): [string, ...string[]];
29
- /**
30
- * Create a unique ID for log entries
31
- */
32
- export declare function generateLogId(): string;
33
- /**
34
- * Escape HTML entities for safe HTML output
35
- */
36
- export declare function escapeHtml(text: string): string;
37
- /**
38
- * Convert objects to safe string representation for logging
39
- */
40
- export declare function safeStringify(obj: any, _maxDepth?: number): string;
41
- //# sourceMappingURL=output.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../src/utils/output.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAK5F;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,aAAa,CAYnD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,aAAa,GAAG,MAAM,CAGtF;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAyBtG;AAGD;;GAEG;AACH,wBAAgB,kBAAkB,CAC9B,KAAK,EAAE,QAAQ,EACf,WAAW,EAAE,MAAM,CAAC,QAAQ,GAAG,SAAS,EAAE,gBAAgB,CAAC,EAC3D,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,SAAS,GAAG,IAAI,EAC3B,eAAe,GAAE,OAAc,GAChC,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAgEvB;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAI/C;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,SAAI,GAAG,MAAM,CAY7D"}
@@ -1,6 +0,0 @@
1
- import { StackInfo } from '../types/index.js';
2
- /**
3
- * Parses the current stack trace to extract caller information
4
- */
5
- export declare function parseStackTrace(): StackInfo | null;
6
- //# sourceMappingURL=stackTrace.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stackTrace.d.ts","sourceRoot":"","sources":["../../../src/utils/stackTrace.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD;;GAEG;AACH,wBAAgB,eAAe,IAAI,SAAS,GAAG,IAAI,CAqFlD"}
@@ -1,20 +0,0 @@
1
- /**
2
- * @fileoverview Timestamp utilities for Advanced Logger
3
- */
4
- /**
5
- * Formats the timestamp using modern Date API
6
- */
7
- export declare function formatTimestamp(): string;
8
- /**
9
- * Parse relative time strings like "2h", "30m", "1d" into milliseconds
10
- */
11
- export declare function parseRelativeTime(timeStr: string): number;
12
- /**
13
- * Parse time input which can be Date, ISO string, or relative time
14
- */
15
- export declare function parseTimeInput(input: Date | string | number): Date;
16
- /**
17
- * Format timestamp for display in different contexts
18
- */
19
- export declare function formatDisplayTime(date: Date, format?: 'short' | 'full' | 'time-only'): string;
20
- //# sourceMappingURL=timestamps.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"timestamps.d.ts","sourceRoot":"","sources":["../../../src/utils/timestamps.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAQxC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAUzD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CA2BlE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,GAAE,OAAO,GAAG,MAAM,GAAG,WAAqB,GAAG,MAAM,CAUtG"}
@@ -1,47 +0,0 @@
1
- /**
2
- * @fileoverview Environment detection utilities for Universal Logger
3
- */
4
- /**
5
- * Checks if running in Node.js environment
6
- */
7
- export declare const isNode: string | false;
8
- /**
9
- * Checks if running in browser environment
10
- */
11
- export declare const isBrowser: boolean;
12
- /**
13
- * Checks if running in web worker environment
14
- */
15
- export declare const isWebWorker: boolean;
16
- /**
17
- * Checks if running in Deno environment
18
- */
19
- export declare const isDeno: boolean;
20
- /**
21
- * Gets the current runtime environment
22
- */
23
- export declare function getRuntimeEnvironment(): 'node' | 'browser' | 'webworker' | 'deno' | 'unknown';
24
- /**
25
- * Checks if colors/styling should be supported in current environment
26
- */
27
- export declare function supportsColors(): boolean;
28
- /**
29
- * Checks if CSS styling is supported (browser-only feature)
30
- */
31
- export declare function supportsCSSColors(): boolean;
32
- /**
33
- * Checks if ANSI colors are supported (terminal environments)
34
- */
35
- export declare function supportsANSIColors(): boolean;
36
- /**
37
- * Gets environment-specific information
38
- */
39
- export declare function getEnvironmentInfo(): {
40
- runtime: "unknown" | "node" | "browser" | "webworker" | "deno";
41
- supportsColors: boolean;
42
- supportsCSSColors: boolean;
43
- supportsANSIColors: boolean;
44
- isProduction: boolean;
45
- version: string;
46
- };
47
- //# sourceMappingURL=environment.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/utils/environment.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,eAAO,MAAM,MAAM,gBAEwB,CAAC;AAE5C;;GAEG;AACH,eAAO,MAAM,SAAS,SACmC,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,WAAW,SACqD,CAAC;AAE9E;;GAEG;AACH,eAAO,MAAM,MAAM,SACuB,CAAC;AAE3C;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,MAAM,GAAG,SAAS,CAM7F;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAcxC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAQ5C;AAED;;GAEG;AACH,wBAAgB,kBAAkB;;;;;;;EAWjC"}
@@ -1,85 +0,0 @@
1
- /**
2
- * @fileoverview Environment detection utilities for Universal Logger
3
- */
4
- /**
5
- * Checks if running in Node.js environment
6
- */
7
- export const isNode = typeof process !== 'undefined' &&
8
- process.versions &&
9
- process.versions.node;
10
- /**
11
- * Checks if running in browser environment
12
- */
13
- export const isBrowser = typeof window !== 'undefined' &&
14
- typeof document !== 'undefined';
15
- /**
16
- * Checks if running in web worker environment
17
- */
18
- export const isWebWorker = typeof self !== 'undefined' &&
19
- typeof self.importScripts === 'function';
20
- /**
21
- * Checks if running in Deno environment
22
- */
23
- export const isDeno = typeof globalThis !== 'undefined' &&
24
- 'Deno' in globalThis;
25
- /**
26
- * Gets the current runtime environment
27
- */
28
- export function getRuntimeEnvironment() {
29
- if (isNode)
30
- return 'node';
31
- if (isBrowser)
32
- return 'browser';
33
- if (isWebWorker)
34
- return 'webworker';
35
- if (isDeno)
36
- return 'deno';
37
- return 'unknown';
38
- }
39
- /**
40
- * Checks if colors/styling should be supported in current environment
41
- */
42
- export function supportsColors() {
43
- if (isBrowser) {
44
- // Browser always supports CSS colors
45
- return true;
46
- }
47
- if (isNode) {
48
- // Check if Node.js supports colors
49
- return process.stdout?.isTTY === true ||
50
- process.env.FORCE_COLOR === '1' ||
51
- process.env.FORCE_COLOR === 'true';
52
- }
53
- return false;
54
- }
55
- /**
56
- * Checks if CSS styling is supported (browser-only feature)
57
- */
58
- export function supportsCSSColors() {
59
- return isBrowser;
60
- }
61
- /**
62
- * Checks if ANSI colors are supported (terminal environments)
63
- */
64
- export function supportsANSIColors() {
65
- if (isNode) {
66
- return process.stdout?.isTTY === true ||
67
- process.env.FORCE_COLOR === '1' ||
68
- process.env.FORCE_COLOR === 'true';
69
- }
70
- return false;
71
- }
72
- /**
73
- * Gets environment-specific information
74
- */
75
- export function getEnvironmentInfo() {
76
- const env = getRuntimeEnvironment();
77
- return {
78
- runtime: env,
79
- supportsColors: supportsColors(),
80
- supportsCSSColors: supportsCSSColors(),
81
- supportsANSIColors: supportsANSIColors(),
82
- isProduction: isNode ? process.env.NODE_ENV === 'production' : false,
83
- version: isNode ? process.versions.node : (isBrowser ? navigator.userAgent : 'unknown')
84
- };
85
- }
@@ -1,117 +0,0 @@
1
- /**
2
- * @fileoverview Formatting utilities for Universal Logger
3
- */
4
- import { formatTimestamp } from './timestamps.js';
5
- /**
6
- * Creates plain text output for any environment
7
- * No colors, no styling - maximum compatibility
8
- */
9
- export function createPlainOutput(level, message, prefix, stackInfo) {
10
- const timestamp = formatTimestamp();
11
- const timeStr = timestamp.slice(11, 23); // HH:MM:SS.mmm
12
- let output = `[${timeStr}] [${level.toUpperCase()}]`;
13
- if (prefix) {
14
- output += ` [${prefix}]`;
15
- }
16
- output += ` ${message}`;
17
- if (stackInfo) {
18
- output += ` (${stackInfo.file}:${stackInfo.line}:${stackInfo.column})`;
19
- }
20
- return output;
21
- }
22
- /**
23
- * Gets the appropriate log method for the level
24
- * Uses different console methods for better semantics
25
- */
26
- export function getConsoleMethod(level) {
27
- switch (level) {
28
- case 'debug':
29
- return 'log';
30
- case 'info':
31
- return 'info';
32
- case 'warn':
33
- return 'warn';
34
- case 'error':
35
- case 'critical':
36
- return 'error';
37
- default:
38
- return 'log';
39
- }
40
- }
41
- /**
42
- * Create a simple log entry object for handlers
43
- */
44
- export function createLogEntry(level, message, args, prefix, stackInfo) {
45
- return {
46
- timestamp: formatTimestamp(),
47
- level: level.toUpperCase(),
48
- prefix,
49
- message,
50
- args: args.slice(1), // Exclude the first message argument
51
- location: stackInfo ? {
52
- file: stackInfo.file,
53
- line: stackInfo.line,
54
- column: stackInfo.column,
55
- function: stackInfo.function
56
- } : undefined,
57
- raw: args
58
- };
59
- }
60
- /**
61
- * Format data for table display in plain text
62
- */
63
- export function formatTablePlain(data, columns) {
64
- try {
65
- if (Array.isArray(data)) {
66
- if (data.length === 0)
67
- return '[Empty Array]';
68
- // Simple array formatting
69
- if (typeof data[0] !== 'object') {
70
- return data.map((item, i) => `${i}: ${item}`).join('\n');
71
- }
72
- // Object array formatting
73
- const keys = columns || Object.keys(data[0] || {});
74
- const header = keys.join('\t');
75
- const rows = data.map(item => keys.map(key => String(item[key] || '')).join('\t'));
76
- return [header, ...rows].join('\n');
77
- }
78
- if (typeof data === 'object' && data !== null) {
79
- // Simple object formatting
80
- return Object.entries(data)
81
- .map(([key, value]) => `${key}: ${value}`)
82
- .join('\n');
83
- }
84
- return String(data);
85
- }
86
- catch (error) {
87
- return `[Error formatting table: ${error}]`;
88
- }
89
- }
90
- /**
91
- * Safe object serialization for logging
92
- */
93
- export function safeSerialize(obj, maxDepth = 3, currentDepth = 0) {
94
- if (currentDepth >= maxDepth) {
95
- return '[Max Depth Reached]';
96
- }
97
- if (obj === null)
98
- return null;
99
- if (obj === undefined)
100
- return '[undefined]';
101
- if (typeof obj === 'function')
102
- return '[Function]';
103
- if (obj instanceof Error)
104
- return `[Error: ${obj.message}]`;
105
- if (obj instanceof Date)
106
- return obj.toISOString();
107
- if (typeof obj !== 'object')
108
- return obj;
109
- if (Array.isArray(obj)) {
110
- return obj.map(item => safeSerialize(item, maxDepth, currentDepth + 1));
111
- }
112
- const result = {};
113
- for (const [key, value] of Object.entries(obj)) {
114
- result[key] = safeSerialize(value, maxDepth, currentDepth + 1);
115
- }
116
- return result;
117
- }
@@ -1,6 +0,0 @@
1
- /**
2
- * @fileoverview Utility functions exports for Advanced Logger
3
- */
4
- export { parseStackTrace } from './stackTrace.js';
5
- export { formatTimestamp, parseRelativeTime, parseTimeInput, formatDisplayTime } from './timestamps.js';
6
- export { createStyledOutput, generateLogId, escapeHtml, safeStringify, detectDevToolsTheme, getAdaptiveColor, setupThemeChangeListener } from './output.js';
@@ -1,34 +0,0 @@
1
- /**
2
- * @fileoverview OpenTUI detection and enhancement utilities for core logger
3
- */
4
- /**
5
- * Check if OpenTUI packages are available
6
- */
7
- export declare function hasOpenTUI(): Promise<boolean>;
8
- /**
9
- * Check if OpenTUI enhancement package is available
10
- */
11
- export declare function hasOpenTUILogHandler(): Promise<boolean>;
12
- /**
13
- * Dynamically enhance logger with OpenTUI if available
14
- */
15
- export declare function tryEnhanceWithOpenTUI(logger: any): Promise<boolean>;
16
- /**
17
- * Get OpenTUI environment information
18
- */
19
- export declare function getOpenTUIInfo(): Promise<{
20
- available: boolean;
21
- coreAvailable: boolean;
22
- handlerAvailable: boolean;
23
- nodeVersion: string | null;
24
- terminalSupport: boolean;
25
- }>;
26
- /**
27
- * Auto-enhance logger with best available rendering
28
- */
29
- export declare function autoEnhanceLogger(logger: any): Promise<{
30
- enhanced: boolean;
31
- method: 'opentui' | 'ansi' | 'plain';
32
- info?: any;
33
- }>;
34
- //# sourceMappingURL=opentui-detection.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"opentui-detection.d.ts","sourceRoot":"","sources":["../../src/utils/opentui-detection.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAanD;AAED;;GAEG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC,CAY7D;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAkCzE;AAED;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC;IAC5C,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;IACvB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;CAC5B,CAAC,CAaD;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC;IAC1D,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;IACrC,IAAI,CAAC,EAAE,GAAG,CAAC;CACd,CAAC,CA0BD"}
@@ -1,116 +0,0 @@
1
- /**
2
- * @fileoverview OpenTUI detection and enhancement utilities for core logger
3
- */
4
- import { isNode } from './environment.js';
5
- /**
6
- * Check if OpenTUI packages are available
7
- */
8
- export async function hasOpenTUI() {
9
- if (!isNode) {
10
- return false; // OpenTUI is Node.js only
11
- }
12
- try {
13
- // Try to dynamically import OpenTUI core
14
- // @ts-expect-error - Optional dependency, may not be installed
15
- await import('@opentui/core');
16
- return true;
17
- }
18
- catch (error) {
19
- return false;
20
- }
21
- }
22
- /**
23
- * Check if OpenTUI enhancement package is available
24
- */
25
- export async function hasOpenTUILogHandler() {
26
- if (!isNode) {
27
- return false;
28
- }
29
- try {
30
- // @ts-expect-error - Optional dependency, may not be installed
31
- await import('@mks2508/better-logger-nodejs-opentui');
32
- return true;
33
- }
34
- catch (error) {
35
- return false;
36
- }
37
- }
38
- /**
39
- * Dynamically enhance logger with OpenTUI if available
40
- */
41
- export async function tryEnhanceWithOpenTUI(logger) {
42
- try {
43
- // Check if both OpenTUI and our enhancement package are available
44
- const [hasCore, hasEnhancer] = await Promise.all([
45
- hasOpenTUI(),
46
- hasOpenTUILogHandler()
47
- ]);
48
- if (!hasCore || !hasEnhancer) {
49
- return false;
50
- }
51
- // Dynamically import and apply enhancement
52
- // @ts-expect-error - Optional dependency, may not be installed
53
- const { enhanceLoggerWithOpenTUI } = await import('@mks2508/better-logger-nodejs-opentui');
54
- const enhanced = await enhanceLoggerWithOpenTUI(logger, {
55
- renderer: {
56
- animated: true,
57
- theme: 'auto',
58
- components: {
59
- badges: true,
60
- progressBars: false,
61
- tables: false,
62
- charts: false
63
- }
64
- }
65
- });
66
- return enhanced;
67
- }
68
- catch (error) {
69
- console.warn('Failed to enhance logger with OpenTUI:', error);
70
- return false;
71
- }
72
- }
73
- /**
74
- * Get OpenTUI environment information
75
- */
76
- export async function getOpenTUIInfo() {
77
- const [coreAvailable, handlerAvailable] = await Promise.all([
78
- hasOpenTUI(),
79
- hasOpenTUILogHandler()
80
- ]);
81
- return {
82
- available: coreAvailable && handlerAvailable,
83
- coreAvailable,
84
- handlerAvailable,
85
- nodeVersion: isNode ? process.version : null,
86
- terminalSupport: isNode ? process.stdout?.isTTY === true : false
87
- };
88
- }
89
- /**
90
- * Auto-enhance logger with best available rendering
91
- */
92
- export async function autoEnhanceLogger(logger) {
93
- // Try OpenTUI first
94
- const openTUIEnhanced = await tryEnhanceWithOpenTUI(logger);
95
- if (openTUIEnhanced) {
96
- return {
97
- enhanced: true,
98
- method: 'opentui',
99
- info: await getOpenTUIInfo()
100
- };
101
- }
102
- // Fallback to ANSI colors if in Node.js
103
- if (isNode && process.stdout?.isTTY) {
104
- return {
105
- enhanced: false,
106
- method: 'ansi',
107
- info: { reason: 'OpenTUI not available, using ANSI colors' }
108
- };
109
- }
110
- // Plain text fallback
111
- return {
112
- enhanced: false,
113
- method: 'plain',
114
- info: { reason: 'No enhanced rendering available' }
115
- };
116
- }
@@ -1,150 +0,0 @@
1
- /**
2
- * @fileoverview Styled output creation utilities for Advanced Logger
3
- */
4
- import { formatTimestamp } from './timestamps.js';
5
- import { StyleBuilder } from '../styling/index.js';
6
- import { ADAPTIVE_COLORS } from '../constants.js';
7
- /**
8
- * Detects the current DevTools theme preference
9
- */
10
- export function detectDevToolsTheme() {
11
- try {
12
- if (typeof window === 'undefined' || !window.matchMedia) {
13
- return 'light'; // Safe fallback for SSR or older browsers
14
- }
15
- const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
16
- return mediaQuery.matches ? 'dark' : 'light';
17
- }
18
- catch (error) {
19
- console.warn('Failed to detect DevTools theme:', error);
20
- return 'light'; // Fallback to light theme
21
- }
22
- }
23
- /**
24
- * Gets adaptive color based on current DevTools theme
25
- */
26
- export function getAdaptiveColor(colors, theme) {
27
- const currentTheme = theme ?? detectDevToolsTheme();
28
- return colors[currentTheme];
29
- }
30
- /**
31
- * Sets up theme change listener for dynamic updates
32
- */
33
- export function setupThemeChangeListener(callback) {
34
- try {
35
- if (typeof window === 'undefined' || !window.matchMedia) {
36
- return null;
37
- }
38
- const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
39
- const handler = (e) => {
40
- callback(e.matches ? 'dark' : 'light');
41
- };
42
- // Use newer addEventListener if available, fallback to addListener
43
- if (mediaQuery.addEventListener) {
44
- mediaQuery.addEventListener('change', handler);
45
- return () => mediaQuery.removeEventListener('change', handler);
46
- }
47
- else if (mediaQuery.addListener) {
48
- mediaQuery.addListener(handler);
49
- return () => mediaQuery.removeListener?.(handler);
50
- }
51
- return null;
52
- }
53
- catch (error) {
54
- console.warn('Failed to set up theme change listener:', error);
55
- return null;
56
- }
57
- }
58
- /**
59
- * Creates styled console output with multiple %c formatters
60
- */
61
- export function createStyledOutput(level, levelStyles, prefix, message, stackInfo, autoDetectTheme = true) {
62
- const levelConfig = levelStyles[level];
63
- const timestamp = formatTimestamp();
64
- const currentTheme = autoDetectTheme ? detectDevToolsTheme() : 'light';
65
- // Base styles with adaptive colors
66
- const timestampStyle = new StyleBuilder()
67
- .color(getAdaptiveColor(ADAPTIVE_COLORS.timestamp, currentTheme))
68
- .size('11px')
69
- .font('Monaco, Consolas, monospace')
70
- .build();
71
- const levelStyle = new StyleBuilder()
72
- .bg(levelConfig.background)
73
- .color(levelConfig.color)
74
- .border(levelConfig.border)
75
- .shadow(levelConfig.shadow)
76
- .padding('2px 8px')
77
- .rounded('4px')
78
- .bold()
79
- .font('Monaco, Consolas, monospace')
80
- .size('12px')
81
- .build();
82
- const prefixStyle = new StyleBuilder()
83
- .bg(getAdaptiveColor(ADAPTIVE_COLORS.prefixBackground, currentTheme))
84
- .color(getAdaptiveColor(ADAPTIVE_COLORS.prefix, currentTheme))
85
- .padding('2px 6px')
86
- .rounded('3px')
87
- .bold()
88
- .font('Monaco, Consolas, monospace')
89
- .size('11px')
90
- .build();
91
- const messageStyle = new StyleBuilder()
92
- .color(getAdaptiveColor(ADAPTIVE_COLORS.messageText, currentTheme))
93
- .font('system-ui, -apple-system, sans-serif')
94
- .size('14px')
95
- .build();
96
- const locationStyle = new StyleBuilder()
97
- .color(getAdaptiveColor(ADAPTIVE_COLORS.location, currentTheme))
98
- .size('11px')
99
- .font('Monaco, Consolas, monospace')
100
- .build();
101
- // Build format string and styles
102
- let format = `%c${timestamp.slice(11, 23)} %c${levelConfig.emoji} ${levelConfig.label}`;
103
- const styles = [timestampStyle, levelStyle];
104
- if (prefix) {
105
- format += ` %c${prefix}`;
106
- styles.push(prefixStyle);
107
- }
108
- format += ` %c${message}`;
109
- styles.push(messageStyle);
110
- if (stackInfo) {
111
- format += ` %c(${stackInfo.file}:${stackInfo.line}:${stackInfo.column})`;
112
- styles.push(locationStyle);
113
- }
114
- return [format, ...styles];
115
- }
116
- /**
117
- * Create a unique ID for log entries
118
- */
119
- export function generateLogId() {
120
- return `${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
121
- }
122
- /**
123
- * Escape HTML entities for safe HTML output
124
- */
125
- export function escapeHtml(text) {
126
- const div = document.createElement('div');
127
- div.textContent = text;
128
- return div.innerHTML;
129
- }
130
- /**
131
- * Convert objects to safe string representation for logging
132
- */
133
- export function safeStringify(obj, _maxDepth = 3) {
134
- try {
135
- return JSON.stringify(obj, (_key, value) => {
136
- if (typeof value === 'function')
137
- return '[Function]';
138
- if (value instanceof Error)
139
- return `[Error: ${value.message}]`;
140
- if (value instanceof Date)
141
- return value.toISOString();
142
- if (typeof value === 'undefined')
143
- return '[undefined]';
144
- return value;
145
- }, 2);
146
- }
147
- catch (error) {
148
- return String(obj);
149
- }
150
- }