@buenojs/bueno 0.8.5 → 0.8.7

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 (421) hide show
  1. package/.claude/settings.local.json +9 -0
  2. package/README.md +259 -15
  3. package/dist/cache/index.d.ts +187 -0
  4. package/dist/cache/index.d.ts.map +1 -0
  5. package/dist/cli/bin.d.ts +8 -0
  6. package/dist/cli/bin.d.ts.map +1 -0
  7. package/dist/cli/bin.js +484 -156
  8. package/dist/cli/commands/add-frontend.d.ts +7 -0
  9. package/dist/cli/commands/add-frontend.d.ts.map +1 -0
  10. package/dist/cli/commands/build.d.ts +7 -0
  11. package/dist/cli/commands/build.d.ts.map +1 -0
  12. package/dist/cli/commands/dev.d.ts +7 -0
  13. package/dist/cli/commands/dev.d.ts.map +1 -0
  14. package/dist/cli/commands/generate.d.ts +7 -0
  15. package/dist/cli/commands/generate.d.ts.map +1 -0
  16. package/dist/cli/commands/help.d.ts +7 -0
  17. package/dist/cli/commands/help.d.ts.map +1 -0
  18. package/dist/cli/commands/index.d.ts +59 -0
  19. package/dist/cli/commands/index.d.ts.map +1 -0
  20. package/dist/cli/commands/migration.d.ts +7 -0
  21. package/dist/cli/commands/migration.d.ts.map +1 -0
  22. package/dist/cli/commands/new.d.ts +7 -0
  23. package/dist/cli/commands/new.d.ts.map +1 -0
  24. package/dist/cli/commands/start.d.ts +7 -0
  25. package/dist/cli/commands/start.d.ts.map +1 -0
  26. package/dist/cli/core/args.d.ts +61 -0
  27. package/dist/cli/core/args.d.ts.map +1 -0
  28. package/dist/cli/core/console.d.ts +135 -0
  29. package/dist/cli/core/console.d.ts.map +1 -0
  30. package/dist/cli/core/index.d.ts +10 -0
  31. package/dist/cli/core/index.d.ts.map +1 -0
  32. package/dist/cli/core/prompt.d.ts +63 -0
  33. package/dist/cli/core/prompt.d.ts.map +1 -0
  34. package/dist/cli/core/spinner.d.ts +111 -0
  35. package/dist/cli/core/spinner.d.ts.map +1 -0
  36. package/dist/cli/index.d.ts +47 -0
  37. package/dist/cli/index.d.ts.map +1 -0
  38. package/dist/cli/templates/database/index.d.ts +24 -0
  39. package/dist/cli/templates/database/index.d.ts.map +1 -0
  40. package/dist/cli/templates/database/mysql.d.ts +6 -0
  41. package/dist/cli/templates/database/mysql.d.ts.map +1 -0
  42. package/dist/cli/templates/database/none.d.ts +8 -0
  43. package/dist/cli/templates/database/none.d.ts.map +1 -0
  44. package/dist/cli/templates/database/postgresql.d.ts +6 -0
  45. package/dist/cli/templates/database/postgresql.d.ts.map +1 -0
  46. package/dist/cli/templates/database/sqlite.d.ts +6 -0
  47. package/dist/cli/templates/database/sqlite.d.ts.map +1 -0
  48. package/dist/cli/templates/deploy.d.ts +41 -0
  49. package/dist/cli/templates/deploy.d.ts.map +1 -0
  50. package/dist/cli/templates/docker.d.ts +30 -0
  51. package/dist/cli/templates/docker.d.ts.map +1 -0
  52. package/dist/cli/templates/frontend/index.d.ts +25 -0
  53. package/dist/cli/templates/frontend/index.d.ts.map +1 -0
  54. package/dist/cli/templates/frontend/none.d.ts +8 -0
  55. package/dist/cli/templates/frontend/none.d.ts.map +1 -0
  56. package/dist/cli/templates/frontend/react.d.ts +6 -0
  57. package/dist/cli/templates/frontend/react.d.ts.map +1 -0
  58. package/dist/cli/templates/frontend/solid.d.ts +6 -0
  59. package/dist/cli/templates/frontend/solid.d.ts.map +1 -0
  60. package/dist/cli/templates/frontend/svelte.d.ts +6 -0
  61. package/dist/cli/templates/frontend/svelte.d.ts.map +1 -0
  62. package/dist/cli/templates/frontend/vue.d.ts +6 -0
  63. package/dist/cli/templates/frontend/vue.d.ts.map +1 -0
  64. package/dist/cli/templates/generators/index.d.ts +29 -0
  65. package/dist/cli/templates/generators/index.d.ts.map +1 -0
  66. package/dist/cli/templates/generators/types.d.ts +32 -0
  67. package/dist/cli/templates/generators/types.d.ts.map +1 -0
  68. package/dist/cli/templates/index.d.ts +12 -0
  69. package/dist/cli/templates/index.d.ts.map +1 -0
  70. package/dist/cli/templates/project/api.d.ts +6 -0
  71. package/dist/cli/templates/project/api.d.ts.map +1 -0
  72. package/dist/cli/templates/project/default.d.ts +6 -0
  73. package/dist/cli/templates/project/default.d.ts.map +1 -0
  74. package/dist/cli/templates/project/fullstack.d.ts +14 -0
  75. package/dist/cli/templates/project/fullstack.d.ts.map +1 -0
  76. package/dist/cli/templates/project/index.d.ts +26 -0
  77. package/dist/cli/templates/project/index.d.ts.map +1 -0
  78. package/dist/cli/templates/project/minimal.d.ts +6 -0
  79. package/dist/cli/templates/project/minimal.d.ts.map +1 -0
  80. package/dist/cli/templates/project/types.d.ts +80 -0
  81. package/dist/cli/templates/project/types.d.ts.map +1 -0
  82. package/dist/cli/templates/project/website.d.ts +8 -0
  83. package/dist/cli/templates/project/website.d.ts.map +1 -0
  84. package/dist/cli/utils/fs.d.ts +137 -0
  85. package/dist/cli/utils/fs.d.ts.map +1 -0
  86. package/dist/cli/utils/index.d.ts +9 -0
  87. package/dist/cli/utils/index.d.ts.map +1 -0
  88. package/dist/cli/utils/strings.d.ts +86 -0
  89. package/dist/cli/utils/strings.d.ts.map +1 -0
  90. package/dist/cli/utils/version.d.ts +15 -0
  91. package/dist/cli/utils/version.d.ts.map +1 -0
  92. package/dist/config/env-validation.d.ts +49 -0
  93. package/dist/config/env-validation.d.ts.map +1 -0
  94. package/dist/config/env.d.ts +167 -0
  95. package/dist/config/env.d.ts.map +1 -0
  96. package/dist/config/index.d.ts +168 -0
  97. package/dist/config/index.d.ts.map +1 -0
  98. package/dist/config/loader.d.ts +81 -0
  99. package/dist/config/loader.d.ts.map +1 -0
  100. package/dist/config/merge.d.ts +66 -0
  101. package/dist/config/merge.d.ts.map +1 -0
  102. package/dist/config/types.d.ts +322 -0
  103. package/dist/config/types.d.ts.map +1 -0
  104. package/dist/config/validation.d.ts +100 -0
  105. package/dist/config/validation.d.ts.map +1 -0
  106. package/dist/container/forward-ref.d.ts +116 -0
  107. package/dist/container/forward-ref.d.ts.map +1 -0
  108. package/dist/container/index.d.ts +95 -0
  109. package/dist/container/index.d.ts.map +1 -0
  110. package/dist/container/index.js +26 -3
  111. package/dist/context/index.d.ts +143 -0
  112. package/dist/context/index.d.ts.map +1 -0
  113. package/dist/database/index.d.ts +219 -0
  114. package/dist/database/index.d.ts.map +1 -0
  115. package/dist/database/migrations/index.d.ts +146 -0
  116. package/dist/database/migrations/index.d.ts.map +1 -0
  117. package/dist/database/orm/builder.d.ts +122 -0
  118. package/dist/database/orm/builder.d.ts.map +1 -0
  119. package/dist/database/orm/casts/index.d.ts +16 -0
  120. package/dist/database/orm/casts/index.d.ts.map +1 -0
  121. package/dist/database/orm/casts/types.d.ts +16 -0
  122. package/dist/database/orm/casts/types.d.ts.map +1 -0
  123. package/dist/database/orm/compiler.d.ts +90 -0
  124. package/dist/database/orm/compiler.d.ts.map +1 -0
  125. package/dist/database/orm/hooks/index.d.ts +53 -0
  126. package/dist/database/orm/hooks/index.d.ts.map +1 -0
  127. package/dist/database/orm/index.d.ts +21 -0
  128. package/dist/database/orm/index.d.ts.map +1 -0
  129. package/dist/database/orm/model-registry.d.ts +33 -0
  130. package/dist/database/orm/model-registry.d.ts.map +1 -0
  131. package/dist/database/orm/model.d.ts +245 -0
  132. package/dist/database/orm/model.d.ts.map +1 -0
  133. package/dist/database/orm/relationships/base.d.ts +69 -0
  134. package/dist/database/orm/relationships/base.d.ts.map +1 -0
  135. package/dist/database/orm/relationships/belongs-to-many.d.ts +47 -0
  136. package/dist/database/orm/relationships/belongs-to-many.d.ts.map +1 -0
  137. package/dist/database/orm/relationships/belongs-to.d.ts +17 -0
  138. package/dist/database/orm/relationships/belongs-to.d.ts.map +1 -0
  139. package/dist/database/orm/relationships/has-many.d.ts +14 -0
  140. package/dist/database/orm/relationships/has-many.d.ts.map +1 -0
  141. package/dist/database/orm/relationships/has-one.d.ts +14 -0
  142. package/dist/database/orm/relationships/has-one.d.ts.map +1 -0
  143. package/dist/database/orm/relationships/index.d.ts +10 -0
  144. package/dist/database/orm/relationships/index.d.ts.map +1 -0
  145. package/dist/database/orm/scopes/index.d.ts +36 -0
  146. package/dist/database/orm/scopes/index.d.ts.map +1 -0
  147. package/dist/database/schema/index.d.ts +155 -0
  148. package/dist/database/schema/index.d.ts.map +1 -0
  149. package/dist/events/__tests__/event-system.test.d.ts +2 -0
  150. package/dist/events/__tests__/event-system.test.d.ts.map +1 -0
  151. package/dist/events/config.d.ts +16 -0
  152. package/dist/events/config.d.ts.map +1 -0
  153. package/dist/events/example-usage.d.ts +12 -0
  154. package/dist/events/example-usage.d.ts.map +1 -0
  155. package/dist/events/index.d.ts +27 -0
  156. package/dist/events/index.d.ts.map +1 -0
  157. package/dist/events/manager.d.ts +33 -0
  158. package/dist/events/manager.d.ts.map +1 -0
  159. package/dist/events/registry.d.ts +31 -0
  160. package/dist/events/registry.d.ts.map +1 -0
  161. package/dist/events/types.d.ts +105 -0
  162. package/dist/events/types.d.ts.map +1 -0
  163. package/dist/frontend/api-routes.d.ts +189 -0
  164. package/dist/frontend/api-routes.d.ts.map +1 -0
  165. package/dist/frontend/bundler.d.ts +99 -0
  166. package/dist/frontend/bundler.d.ts.map +1 -0
  167. package/dist/frontend/console-client.d.ts +11 -0
  168. package/dist/frontend/console-client.d.ts.map +1 -0
  169. package/dist/frontend/console-stream.d.ts +138 -0
  170. package/dist/frontend/console-stream.d.ts.map +1 -0
  171. package/dist/frontend/dev-server.d.ts +174 -0
  172. package/dist/frontend/dev-server.d.ts.map +1 -0
  173. package/dist/frontend/file-router.d.ts +170 -0
  174. package/dist/frontend/file-router.d.ts.map +1 -0
  175. package/dist/frontend/frameworks/index.d.ts +41 -0
  176. package/dist/frontend/frameworks/index.d.ts.map +1 -0
  177. package/dist/frontend/frameworks/react.d.ts +32 -0
  178. package/dist/frontend/frameworks/react.d.ts.map +1 -0
  179. package/dist/frontend/frameworks/solid.d.ts +42 -0
  180. package/dist/frontend/frameworks/solid.d.ts.map +1 -0
  181. package/dist/frontend/frameworks/svelte.d.ts +57 -0
  182. package/dist/frontend/frameworks/svelte.d.ts.map +1 -0
  183. package/dist/frontend/frameworks/vue.d.ts +36 -0
  184. package/dist/frontend/frameworks/vue.d.ts.map +1 -0
  185. package/dist/frontend/hmr-client.d.ts +22 -0
  186. package/dist/frontend/hmr-client.d.ts.map +1 -0
  187. package/dist/frontend/hmr.d.ts +185 -0
  188. package/dist/frontend/hmr.d.ts.map +1 -0
  189. package/dist/frontend/index.d.ts +34 -0
  190. package/dist/frontend/index.d.ts.map +1 -0
  191. package/dist/frontend/islands.d.ts +135 -0
  192. package/dist/frontend/islands.d.ts.map +1 -0
  193. package/dist/frontend/isr.d.ts +143 -0
  194. package/dist/frontend/isr.d.ts.map +1 -0
  195. package/dist/frontend/layout.d.ts +140 -0
  196. package/dist/frontend/layout.d.ts.map +1 -0
  197. package/dist/frontend/ssr/react.d.ts +118 -0
  198. package/dist/frontend/ssr/react.d.ts.map +1 -0
  199. package/dist/frontend/ssr/solid.d.ts +141 -0
  200. package/dist/frontend/ssr/solid.d.ts.map +1 -0
  201. package/dist/frontend/ssr/svelte.d.ts +158 -0
  202. package/dist/frontend/ssr/svelte.d.ts.map +1 -0
  203. package/dist/frontend/ssr/vue.d.ts +161 -0
  204. package/dist/frontend/ssr/vue.d.ts.map +1 -0
  205. package/dist/frontend/ssr.d.ts +147 -0
  206. package/dist/frontend/ssr.d.ts.map +1 -0
  207. package/dist/frontend/types.d.ts +1902 -0
  208. package/dist/frontend/types.d.ts.map +1 -0
  209. package/dist/graphql/built-in-engine.d.ts +36 -0
  210. package/dist/graphql/built-in-engine.d.ts.map +1 -0
  211. package/dist/graphql/context-builder.d.ts +44 -0
  212. package/dist/graphql/context-builder.d.ts.map +1 -0
  213. package/dist/graphql/decorators.d.ts +162 -0
  214. package/dist/graphql/decorators.d.ts.map +1 -0
  215. package/dist/graphql/execution-pipeline.d.ts +67 -0
  216. package/dist/graphql/execution-pipeline.d.ts.map +1 -0
  217. package/dist/graphql/graphql-module.d.ts +70 -0
  218. package/dist/graphql/graphql-module.d.ts.map +1 -0
  219. package/dist/graphql/index.d.ts +48 -0
  220. package/dist/graphql/index.d.ts.map +1 -0
  221. package/dist/graphql/index.js +2156 -0
  222. package/dist/graphql/metadata.d.ts +37 -0
  223. package/dist/graphql/metadata.d.ts.map +1 -0
  224. package/dist/graphql/schema-builder.d.ts +34 -0
  225. package/dist/graphql/schema-builder.d.ts.map +1 -0
  226. package/dist/graphql/subscription-handler.d.ts +47 -0
  227. package/dist/graphql/subscription-handler.d.ts.map +1 -0
  228. package/dist/graphql/types.d.ts +252 -0
  229. package/dist/graphql/types.d.ts.map +1 -0
  230. package/dist/health/index.d.ts +176 -0
  231. package/dist/health/index.d.ts.map +1 -0
  232. package/dist/i18n/engine.d.ts +105 -0
  233. package/dist/i18n/engine.d.ts.map +1 -0
  234. package/dist/i18n/index.d.ts +13 -0
  235. package/dist/i18n/index.d.ts.map +1 -0
  236. package/dist/i18n/loader.d.ts +79 -0
  237. package/dist/i18n/loader.d.ts.map +1 -0
  238. package/dist/i18n/middleware.d.ts +96 -0
  239. package/dist/i18n/middleware.d.ts.map +1 -0
  240. package/dist/i18n/negotiator.d.ts +84 -0
  241. package/dist/i18n/negotiator.d.ts.map +1 -0
  242. package/dist/i18n/types.d.ts +129 -0
  243. package/dist/i18n/types.d.ts.map +1 -0
  244. package/dist/index.d.ts +48 -0
  245. package/dist/index.d.ts.map +1 -0
  246. package/dist/index.js +520 -434
  247. package/dist/jobs/drivers/memory.d.ts +38 -0
  248. package/dist/jobs/drivers/memory.d.ts.map +1 -0
  249. package/dist/jobs/drivers/redis.d.ts +34 -0
  250. package/dist/jobs/drivers/redis.d.ts.map +1 -0
  251. package/dist/jobs/index.d.ts +12 -0
  252. package/dist/jobs/index.d.ts.map +1 -0
  253. package/dist/jobs/queue.d.ts +93 -0
  254. package/dist/jobs/queue.d.ts.map +1 -0
  255. package/dist/jobs/types.d.ts +193 -0
  256. package/dist/jobs/types.d.ts.map +1 -0
  257. package/dist/jobs/worker.d.ts +91 -0
  258. package/dist/jobs/worker.d.ts.map +1 -0
  259. package/dist/lock/index.d.ts +141 -0
  260. package/dist/lock/index.d.ts.map +1 -0
  261. package/dist/logger/index.d.ts +156 -0
  262. package/dist/logger/index.d.ts.map +1 -0
  263. package/dist/logger/transports/index.d.ts +371 -0
  264. package/dist/logger/transports/index.d.ts.map +1 -0
  265. package/dist/metrics/index.d.ts +163 -0
  266. package/dist/metrics/index.d.ts.map +1 -0
  267. package/dist/middleware/built-in.d.ts +50 -0
  268. package/dist/middleware/built-in.d.ts.map +1 -0
  269. package/dist/middleware/index.d.ts +40 -0
  270. package/dist/middleware/index.d.ts.map +1 -0
  271. package/dist/migrations/index.d.ts +10 -0
  272. package/dist/migrations/index.d.ts.map +1 -0
  273. package/dist/modules/filters.d.ts +150 -0
  274. package/dist/modules/filters.d.ts.map +1 -0
  275. package/dist/modules/guards.d.ts +188 -0
  276. package/dist/modules/guards.d.ts.map +1 -0
  277. package/dist/modules/index.d.ts +266 -0
  278. package/dist/modules/index.d.ts.map +1 -0
  279. package/dist/modules/index.js +514 -449
  280. package/dist/modules/interceptors.d.ts +242 -0
  281. package/dist/modules/interceptors.d.ts.map +1 -0
  282. package/dist/modules/lazy.d.ts +187 -0
  283. package/dist/modules/lazy.d.ts.map +1 -0
  284. package/dist/modules/lifecycle.d.ts +221 -0
  285. package/dist/modules/lifecycle.d.ts.map +1 -0
  286. package/dist/modules/metadata.d.ts +32 -0
  287. package/dist/modules/metadata.d.ts.map +1 -0
  288. package/dist/modules/pipes.d.ts +287 -0
  289. package/dist/modules/pipes.d.ts.map +1 -0
  290. package/dist/notification/channels/base.d.ts +32 -0
  291. package/dist/notification/channels/base.d.ts.map +1 -0
  292. package/dist/notification/channels/email.d.ts +37 -0
  293. package/dist/notification/channels/email.d.ts.map +1 -0
  294. package/dist/notification/channels/push.d.ts +37 -0
  295. package/dist/notification/channels/push.d.ts.map +1 -0
  296. package/dist/notification/channels/sms.d.ts +37 -0
  297. package/dist/notification/channels/sms.d.ts.map +1 -0
  298. package/dist/notification/channels/whatsapp.d.ts +37 -0
  299. package/dist/notification/channels/whatsapp.d.ts.map +1 -0
  300. package/dist/notification/index.d.ts +15 -0
  301. package/dist/notification/index.d.ts.map +1 -0
  302. package/dist/notification/service.d.ts +100 -0
  303. package/dist/notification/service.d.ts.map +1 -0
  304. package/dist/notification/types.d.ts +253 -0
  305. package/dist/notification/types.d.ts.map +1 -0
  306. package/dist/observability/__tests__/observability.test.d.ts +2 -0
  307. package/dist/observability/__tests__/observability.test.d.ts.map +1 -0
  308. package/dist/observability/breadcrumbs.d.ts +48 -0
  309. package/dist/observability/breadcrumbs.d.ts.map +1 -0
  310. package/dist/observability/index.d.ts +95 -0
  311. package/dist/observability/index.d.ts.map +1 -0
  312. package/dist/observability/interceptor.d.ts +19 -0
  313. package/dist/observability/interceptor.d.ts.map +1 -0
  314. package/dist/observability/service.d.ts +101 -0
  315. package/dist/observability/service.d.ts.map +1 -0
  316. package/dist/observability/trace.d.ts +21 -0
  317. package/dist/observability/trace.d.ts.map +1 -0
  318. package/dist/observability/types.d.ts +172 -0
  319. package/dist/observability/types.d.ts.map +1 -0
  320. package/dist/openapi/__tests__/decorators.test.d.ts +2 -0
  321. package/dist/openapi/__tests__/decorators.test.d.ts.map +1 -0
  322. package/dist/openapi/__tests__/document-builder.test.d.ts +2 -0
  323. package/dist/openapi/__tests__/document-builder.test.d.ts.map +1 -0
  324. package/dist/openapi/__tests__/route-scanner.test.d.ts +2 -0
  325. package/dist/openapi/__tests__/route-scanner.test.d.ts.map +1 -0
  326. package/dist/openapi/__tests__/schema-generator.test.d.ts +2 -0
  327. package/dist/openapi/__tests__/schema-generator.test.d.ts.map +1 -0
  328. package/dist/openapi/decorators.d.ts +173 -0
  329. package/dist/openapi/decorators.d.ts.map +1 -0
  330. package/dist/openapi/document-builder.d.ts +82 -0
  331. package/dist/openapi/document-builder.d.ts.map +1 -0
  332. package/dist/openapi/index.d.ts +48 -0
  333. package/dist/openapi/index.d.ts.map +1 -0
  334. package/dist/openapi/index.js +59 -40
  335. package/dist/openapi/metadata.d.ts +36 -0
  336. package/dist/openapi/metadata.d.ts.map +1 -0
  337. package/dist/openapi/route-scanner.d.ts +34 -0
  338. package/dist/openapi/route-scanner.d.ts.map +1 -0
  339. package/dist/openapi/schema-generator.d.ts +53 -0
  340. package/dist/openapi/schema-generator.d.ts.map +1 -0
  341. package/dist/openapi/swagger-module.d.ts +57 -0
  342. package/dist/openapi/swagger-module.d.ts.map +1 -0
  343. package/dist/openapi/types.d.ts +344 -0
  344. package/dist/openapi/types.d.ts.map +1 -0
  345. package/dist/orm/index.d.ts +10 -0
  346. package/dist/orm/index.d.ts.map +1 -0
  347. package/dist/router/index.d.ts +73 -0
  348. package/dist/router/index.d.ts.map +1 -0
  349. package/dist/router/linear.d.ts +54 -0
  350. package/dist/router/linear.d.ts.map +1 -0
  351. package/dist/router/regex.d.ts +49 -0
  352. package/dist/router/regex.d.ts.map +1 -0
  353. package/dist/router/tree.d.ts +112 -0
  354. package/dist/router/tree.d.ts.map +1 -0
  355. package/dist/rpc/index.d.ts +321 -0
  356. package/dist/rpc/index.d.ts.map +1 -0
  357. package/dist/schema/index.d.ts +10 -0
  358. package/dist/schema/index.d.ts.map +1 -0
  359. package/dist/security/index.d.ts +126 -0
  360. package/dist/security/index.d.ts.map +1 -0
  361. package/dist/ssg/index.d.ts +73 -0
  362. package/dist/ssg/index.d.ts.map +1 -0
  363. package/dist/storage/index.d.ts +99 -0
  364. package/dist/storage/index.d.ts.map +1 -0
  365. package/dist/telemetry/index.d.ts +376 -0
  366. package/dist/telemetry/index.d.ts.map +1 -0
  367. package/dist/template/index.d.ts +7 -0
  368. package/dist/template/index.d.ts.map +1 -0
  369. package/dist/templates/engine.d.ts +60 -0
  370. package/dist/templates/engine.d.ts.map +1 -0
  371. package/dist/templates/index.d.ts +9 -0
  372. package/dist/templates/index.d.ts.map +1 -0
  373. package/dist/templates/loader.d.ts +45 -0
  374. package/dist/templates/loader.d.ts.map +1 -0
  375. package/dist/templates/renderers/markdown.d.ts +46 -0
  376. package/dist/templates/renderers/markdown.d.ts.map +1 -0
  377. package/dist/templates/renderers/simple.d.ts +35 -0
  378. package/dist/templates/renderers/simple.d.ts.map +1 -0
  379. package/dist/templates/types.d.ts +138 -0
  380. package/dist/templates/types.d.ts.map +1 -0
  381. package/dist/testing/index.d.ts +539 -0
  382. package/dist/testing/index.d.ts.map +1 -0
  383. package/dist/types/index.d.ts +116 -0
  384. package/dist/types/index.d.ts.map +1 -0
  385. package/dist/validation/index.d.ts +89 -0
  386. package/dist/validation/index.d.ts.map +1 -0
  387. package/dist/validation/schemas.d.ts +243 -0
  388. package/dist/validation/schemas.d.ts.map +1 -0
  389. package/dist/websocket/index.d.ts +252 -0
  390. package/dist/websocket/index.d.ts.map +1 -0
  391. package/llms.txt +231 -0
  392. package/package.json +6 -2
  393. package/src/cli/ARCHITECTURE.md +3 -3
  394. package/src/cli/commands/add-frontend.ts +444 -0
  395. package/src/cli/commands/new.ts +23 -0
  396. package/src/cli/index.ts +1 -0
  397. package/src/cli/templates/frontend/react.ts +2 -1
  398. package/src/cli/templates/frontend/solid.ts +2 -1
  399. package/src/cli/templates/frontend/svelte.ts +2 -1
  400. package/src/cli/templates/frontend/vue.ts +2 -1
  401. package/src/cli/templates/project/api.ts +1 -1
  402. package/src/cli/templates/project/default.ts +1 -1
  403. package/src/cli/templates/project/fullstack.ts +14 -104
  404. package/src/cli/templates/project/website.ts +63 -12
  405. package/src/config/types.ts +21 -0
  406. package/src/graphql/built-in-engine.ts +598 -0
  407. package/src/graphql/context-builder.ts +110 -0
  408. package/src/graphql/decorators.ts +358 -0
  409. package/src/graphql/execution-pipeline.ts +227 -0
  410. package/src/graphql/graphql-module.ts +563 -0
  411. package/src/graphql/index.ts +101 -0
  412. package/src/graphql/metadata.ts +237 -0
  413. package/src/graphql/schema-builder.ts +319 -0
  414. package/src/graphql/subscription-handler.ts +283 -0
  415. package/src/graphql/types.ts +324 -0
  416. package/src/index.ts +3 -0
  417. package/src/modules/index.ts +48 -1
  418. package/tests/integration/cli.test.ts +19 -19
  419. package/tests/unit/cli.test.ts +1 -1
  420. package/tests/unit/graphql.test.ts +991 -0
  421. package/tsconfig.declaration.json +14 -0
@@ -0,0 +1,266 @@
1
+ /**
2
+ * Module System
3
+ *
4
+ * NestJS-inspired module system with dependency injection,
5
+ * controllers, and provider management.
6
+ */
7
+ import { Container, type ForwardRef, type Provider, type Token } from "../container";
8
+ import { Router } from "../router";
9
+ import { type Filter } from "./filters";
10
+ import { type Guard } from "./guards";
11
+ import { type Interceptor } from "./interceptors";
12
+ import { ModuleLoader } from "./lazy";
13
+ import { type ApplicationLifecycle, type BeforeApplicationShutdown, type FullLifecycle, LifecycleHookManager, type OnAfterRequest, type OnApplicationBootstrap, type OnApplicationShutdown, type OnBeforeRequest, type OnModuleDestroy, type OnModuleInit, type OnRequestError, type RequestLifecycle, ShutdownSignalHandler, isBeforeApplicationShutdown, isOnAfterRequest, isOnApplicationBootstrap, isOnApplicationShutdown, isOnBeforeRequest, isOnModuleDestroy, isOnModuleInit, isOnRequestError } from "./lifecycle";
14
+ import { type Pipe } from "./pipes";
15
+ export type Constructor = new (...args: unknown[]) => unknown;
16
+ /**
17
+ * @deprecated Use individual lifecycle hook interfaces instead.
18
+ * Kept for backward compatibility.
19
+ */
20
+ export interface LifecycleHooks {
21
+ onModuleInit?(): void | Promise<void>;
22
+ onModuleDestroy?(): void | Promise<void>;
23
+ onApplicationBootstrap?(): void | Promise<void>;
24
+ onApplicationShutdown?(): void | Promise<void>;
25
+ }
26
+ import { Controller, Injectable, Module, type ModuleMetadata } from "./metadata";
27
+ export { Injectable, Controller, Module, type ModuleMetadata };
28
+ /**
29
+ * Inject a dependency by token.
30
+ * Supports both Token and ForwardRef<Token> for circular dependency resolution.
31
+ *
32
+ * @param token - The injection token or a forward reference to the token
33
+ * @returns A parameter decorator that registers the injection metadata
34
+ *
35
+ * @example
36
+ * ```typescript
37
+ * // Regular injection
38
+ * constructor(@Inject(MY_TOKEN) private service: MyService) {}
39
+ *
40
+ * // Forward reference for circular dependency
41
+ * constructor(@Inject(forwardRef(() => ServiceB)) private serviceB: ServiceB) {}
42
+ * ```
43
+ */
44
+ export declare function Inject(token: Token | ForwardRef<Token>): ParameterDecorator;
45
+ export declare const Get: (path?: string) => MethodDecorator;
46
+ export declare const Post: (path?: string) => MethodDecorator;
47
+ export declare const Put: (path?: string) => MethodDecorator;
48
+ export declare const Patch: (path?: string) => MethodDecorator;
49
+ export declare const Delete: (path?: string) => MethodDecorator;
50
+ export declare const Head: (path?: string) => MethodDecorator;
51
+ export declare const Options: (path?: string) => MethodDecorator;
52
+ export declare class AppModule {
53
+ private moduleClass;
54
+ private metadata;
55
+ private providers;
56
+ private controllers;
57
+ private visitedModules;
58
+ private lazyModules;
59
+ constructor(moduleClass: Constructor);
60
+ /**
61
+ * Process module and its imports recursively
62
+ * Skips lazy modules during initial processing
63
+ */
64
+ private processModule;
65
+ /**
66
+ * Get all collected providers
67
+ */
68
+ getProviders(): Provider[];
69
+ /**
70
+ * Get all collected controllers
71
+ */
72
+ getControllers(): Constructor[];
73
+ /**
74
+ * Get all lazy modules that were skipped during initial processing
75
+ */
76
+ getLazyModules(): Constructor[];
77
+ }
78
+ export declare class Application {
79
+ container: Container;
80
+ router: Router;
81
+ private appModule;
82
+ private lifecycleManager;
83
+ private shutdownHandler;
84
+ private server;
85
+ private providerInstances;
86
+ private controllerInstances;
87
+ private isInitialized;
88
+ private isShuttingDown;
89
+ private globalGuards;
90
+ private globalPipes;
91
+ private globalFilters;
92
+ private globalInterceptors;
93
+ private routeGuardMetadata;
94
+ private routePipeMetadata;
95
+ private routeFilterMetadata;
96
+ private routeInterceptorMetadata;
97
+ private moduleLoader;
98
+ private loadedLazyModules;
99
+ private websocketHandler;
100
+ constructor(moduleClass: Constructor);
101
+ /**
102
+ * Add global guards that apply to all routes
103
+ * Global guards run before controller and method guards
104
+ *
105
+ * @param guards - Guards to add
106
+ * @returns this (for chaining)
107
+ *
108
+ * @example
109
+ * ```typescript
110
+ * const app = createApp(AppModule);
111
+ * app.useGlobalGuards(AuthGuard);
112
+ * await app.listen(3000);
113
+ * ```
114
+ */
115
+ useGlobalGuards(...guards: Guard[]): this;
116
+ /**
117
+ * Get the list of global guards (live reference).
118
+ * Used by the GraphQL module to run guards on resolver methods.
119
+ */
120
+ getGlobalGuards(): Guard[];
121
+ /**
122
+ * Get the list of global interceptors (live reference).
123
+ * Used by the GraphQL module to run interceptors on resolver methods.
124
+ */
125
+ getGlobalInterceptors(): Interceptor[];
126
+ /**
127
+ * Register a WebSocket handler to be used when the server starts.
128
+ * Called by the GraphQL module to enable subscriptions on the same port.
129
+ *
130
+ * @example
131
+ * ```typescript
132
+ * app.setWebSocketHandler(subscriptionHandler.getWebSocketConfig());
133
+ * await app.listen(3000);
134
+ * ```
135
+ */
136
+ setWebSocketHandler(handler: Bun.WebSocketHandler<any>): void;
137
+ /**
138
+ * Add global pipes that apply to all parameters
139
+ * Global pipes run before parameter decorator pipes
140
+ *
141
+ * @param pipes - Pipes to add
142
+ * @returns this (for chaining)
143
+ *
144
+ * @example
145
+ * ```typescript
146
+ * const app = createApp(AppModule);
147
+ * app.useGlobalPipes(new ValidationPipe());
148
+ * await app.listen(3000);
149
+ * ```
150
+ */
151
+ useGlobalPipes(...pipes: Pipe[]): this;
152
+ /**
153
+ * Add global filters that apply to all routes
154
+ * Global filters run after controller and method filters
155
+ *
156
+ * @param filters - Filters to add
157
+ * @returns this (for chaining)
158
+ *
159
+ * @example
160
+ * ```typescript
161
+ * const app = createApp(AppModule);
162
+ * app.useGlobalFilters(new AllExceptionsFilter());
163
+ * await app.listen(3000);
164
+ * ```
165
+ */
166
+ useGlobalFilters(...filters: Filter[]): this;
167
+ /**
168
+ * Add global interceptors that apply to all routes
169
+ * Global interceptors run before controller and method interceptors
170
+ *
171
+ * @param interceptors - Interceptors to add
172
+ * @returns this (for chaining)
173
+ *
174
+ * @example
175
+ * ```typescript
176
+ * const app = createApp(AppModule);
177
+ * app.useGlobalInterceptors(new LoggingInterceptor());
178
+ * await app.listen(3000);
179
+ * ```
180
+ */
181
+ useGlobalInterceptors(...interceptors: Interceptor[]): this;
182
+ /**
183
+ * Register all providers in the container
184
+ */
185
+ private registerProviders;
186
+ /**
187
+ * Resolve all providers and register them with lifecycle manager
188
+ */
189
+ private resolveProviders;
190
+ /**
191
+ * Register all controllers and their routes
192
+ */
193
+ private registerControllers;
194
+ /**
195
+ * Register a single controller and its routes
196
+ */
197
+ private registerController;
198
+ /**
199
+ * Initialize the application
200
+ *
201
+ * Execution order:
202
+ * 1. Module Registration
203
+ * 2. Provider Resolution
204
+ * 3. onModuleInit() for each provider
205
+ * 4. Controller Registration
206
+ * 5. onApplicationBootstrap() for each provider
207
+ */
208
+ init(): Promise<void>;
209
+ /**
210
+ * Load a lazy module dynamically
211
+ * This is called by the ModuleLoader service when a lazy module is loaded
212
+ */
213
+ private loadLazyModule;
214
+ /**
215
+ * Get the ModuleLoader service for loading lazy modules
216
+ */
217
+ getModuleLoader(): ModuleLoader;
218
+ /**
219
+ * Setup graceful shutdown handlers
220
+ */
221
+ private setupShutdownHandlers;
222
+ /**
223
+ * Perform graceful shutdown
224
+ *
225
+ * Execution order:
226
+ * 1. Stop accepting new requests
227
+ * 2. beforeApplicationShutdown(signal)
228
+ * 3. Drain existing requests
229
+ * 4. onModuleDestroy() for each provider
230
+ * 5. onApplicationShutdown(signal)
231
+ */
232
+ shutdown(signal?: string): Promise<void>;
233
+ /**
234
+ * Start the HTTP server
235
+ */
236
+ listen(port?: number, hostname?: string): Promise<void>;
237
+ /**
238
+ * Handle request directly (for testing)
239
+ */
240
+ handle(request: Request): Promise<Response>;
241
+ /**
242
+ * Get the lifecycle manager for this application
243
+ */
244
+ getLifecycleManager(): LifecycleHookManager;
245
+ /**
246
+ * Check if the application is shutting down
247
+ */
248
+ isShuttingDownNow(): boolean;
249
+ /**
250
+ * Handle an exception using the filters system
251
+ * Filters are checked in order: method → class → global
252
+ */
253
+ private handleException;
254
+ }
255
+ /**
256
+ * Create an application from a module
257
+ */
258
+ export declare function createApp(moduleClass: Constructor): Application;
259
+ export { LifecycleHookManager, ShutdownSignalHandler, type OnModuleInit, type OnApplicationBootstrap, type OnModuleDestroy, type BeforeApplicationShutdown, type OnApplicationShutdown, type OnBeforeRequest, type OnAfterRequest, type OnRequestError, type ApplicationLifecycle, type RequestLifecycle, type FullLifecycle, isOnModuleInit, isOnApplicationBootstrap, isOnModuleDestroy, isBeforeApplicationShutdown, isOnApplicationShutdown, isOnBeforeRequest, isOnAfterRequest, isOnRequestError, };
260
+ export { type CanActivate, type GuardFn, type Guard, type User, UseGuards, AuthGuard, RolesGuard, Roles, getClassGuards, getMethodGuards, getMethodRoles, executeGuards, createForbiddenResponse, } from "./guards";
261
+ export { type PipeTransform, type PipeFn, type Pipe, type PipeContext, type ParameterMetadata, type ParameterPipeMetadata, UsePipes, Body, Query, Param, ValidationPipe, ParseIntPipe, ParseFloatPipe, ParseBoolPipe, DefaultValuePipe, TrimPipe, ParseJsonPipe, ParseArrayPipe, getMethodPipes, executePipes, extractParameterValue, createBadRequestResponse, isPipeTransform, isPipeFn, } from "./pipes";
262
+ export { type ExceptionFilter, type FilterFn, type Filter, type ExecuteFiltersOptions, UseFilters, Catch, getClassFilters, getMethodFilters, getCatchType, canHandleException, isExceptionFilter, isFilterFn, executeFilter, findAndExecuteFilter, HttpExceptionFilter, ValidationFilter, NotFoundFilter, AllExceptionsFilter, createDefaultErrorResponse, createInternalErrorResponse, } from "./filters";
263
+ export { type NestInterceptor, type InterceptorFn, type Interceptor, type CallHandler, type TransformResponse, type InterceptorExecutorOptions, UseInterceptors, LoggingInterceptor, TransformInterceptor, TimeoutInterceptor, CacheInterceptor, HeaderInterceptor, getClassInterceptors, getMethodInterceptors, executeInterceptors, isNestInterceptor, isInterceptorFn, } from "./interceptors";
264
+ export { type LazyModuleLoader, type Constructor as LazyModuleConstructor, type ModuleLoaderFn, type LazyModuleMetadata, type LoadModuleOptions, LazyModuleLoaderImpl, LazyModule, ModuleLoader, MODULE_LOADER_TOKEN, getLazyMetadata, isLazyModule, LazyModuleRegistry, createLazyLoader, areAllLazyModulesLoaded, getUnloadedLazyModules, } from "./lazy";
265
+ export { type ForwardRef, forwardRef, isForwardRef, resolveForwardRef, } from "../container";
266
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/modules/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACN,SAAS,EACT,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,KAAK,EAOV,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,EAKN,KAAK,MAAM,EAgBX,MAAM,WAAW,CAAC;AACnB,OAAO,EAEN,KAAK,KAAK,EAMV,MAAM,UAAU,CAAC;AAClB,OAAO,EAEN,KAAK,WAAW,EAQhB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAQN,YAAY,EAIZ,MAAM,QAAQ,CAAC;AAChB,OAAO,EACN,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,aAAa,EAClB,oBAAoB,EACpB,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,qBAAqB,EACrB,2BAA2B,EAC3B,gBAAgB,EAChB,wBAAwB,EACxB,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,MAAM,aAAa,CAAC;AACrB,OAAO,EAEN,KAAK,IAAI,EAQT,MAAM,SAAS,CAAC;AAKjB,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC;AAE9D;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC9B,YAAY,CAAC,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,eAAe,CAAC,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,sBAAsB,CAAC,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,qBAAqB,CAAC,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C;AAID,OAAO,EACN,UAAU,EACV,UAAU,EACV,MAAM,EACN,KAAK,cAAc,EAKnB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,cAAc,EAAE,CAAC;AAE/D;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,kBAAkB,CAe3E;AA6BD,eAAO,MAAM,GAAG,UAvBL,MAAM,KAAK,eAuByB,CAAC;AAChD,eAAO,MAAM,IAAI,UAxBN,MAAM,KAAK,eAwB2B,CAAC;AAClD,eAAO,MAAM,GAAG,UAzBL,MAAM,KAAK,eAyByB,CAAC;AAChD,eAAO,MAAM,KAAK,UA1BP,MAAM,KAAK,eA0B6B,CAAC;AACpD,eAAO,MAAM,MAAM,UA3BR,MAAM,KAAK,eA2B+B,CAAC;AACtD,eAAO,MAAM,IAAI,UA5BN,MAAM,KAAK,eA4B2B,CAAC;AAClD,eAAO,MAAM,OAAO,UA7BT,MAAM,KAAK,eA6BiC,CAAC;AAIxD,qBAAa,SAAS;IACrB,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,cAAc,CAA0B;IAChD,OAAO,CAAC,WAAW,CAAqB;gBAE5B,WAAW,EAAE,WAAW;IAMpC;;;OAGG;IACH,OAAO,CAAC,aAAa;IAuCrB;;OAEG;IACH,YAAY,IAAI,QAAQ,EAAE;IAI1B;;OAEG;IACH,cAAc,IAAI,WAAW,EAAE;IAI/B;;OAEG;IACH,cAAc,IAAI,WAAW,EAAE;CAG/B;AA6CD,qBAAa,WAAW;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,eAAe,CAAwB;IAC/C,OAAO,CAAC,MAAM,CAA6C;IAC3D,OAAO,CAAC,iBAAiB,CAAkC;IAC3D,OAAO,CAAC,mBAAmB,CAAiB;IAC5C,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,kBAAkB,CAA8C;IACxE,OAAO,CAAC,iBAAiB,CAA6C;IACtE,OAAO,CAAC,mBAAmB,CAA+C;IAC1E,OAAO,CAAC,wBAAwB,CACrB;IACX,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,iBAAiB,CAA0B;IAEnD,OAAO,CAAC,gBAAgB,CAA0C;gBAEtD,WAAW,EAAE,WAAW;IASpC;;;;;;;;;;;;;OAaG;IACH,eAAe,CAAC,GAAG,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI;IAKzC;;;OAGG;IACH,eAAe,IAAI,KAAK,EAAE;IAI1B;;;OAGG;IACH,qBAAqB,IAAI,WAAW,EAAE;IAItC;;;;;;;;;OASG;IAEH,mBAAmB,CAAC,OAAO,EAAE,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,IAAI;IAI7D;;;;;;;;;;;;;OAaG;IACH,cAAc,CAAC,GAAG,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI;IAKtC;;;;;;;;;;;;;OAaG;IACH,gBAAgB,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAK5C;;;;;;;;;;;;;OAaG;IACH,qBAAqB,CAAC,GAAG,YAAY,EAAE,WAAW,EAAE,GAAG,IAAI;IAK3D;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAKzB;;OAEG;YACW,gBAAgB;IAgB9B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAgJ1B;;;;;;;;;OASG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAoC3B;;;OAGG;YACW,cAAc;IAwC5B;;OAEG;IACH,eAAe,IAAI,YAAY;IAI/B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAO7B;;;;;;;;;OASG;IACG,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA+B9C;;OAEG;IACG,MAAM,CAAC,IAAI,SAAO,EAAE,QAAQ,SAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA2OhE;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;IA8KjD;;OAEG;IACH,mBAAmB,IAAI,oBAAoB;IAI3C;;OAEG;IACH,iBAAiB,IAAI,OAAO;IAI5B;;;OAGG;YACW,eAAe;CAwC7B;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,WAAW,EAAE,WAAW,GAAG,WAAW,CAE/D;AAGD,OAAO,EACN,oBAAoB,EACpB,qBAAqB,EACrB,KAAK,YAAY,EACjB,KAAK,sBAAsB,EAC3B,KAAK,eAAe,EACpB,KAAK,yBAAyB,EAC9B,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,cAAc,EACd,wBAAwB,EACxB,iBAAiB,EACjB,2BAA2B,EAC3B,uBAAuB,EACvB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,GAChB,CAAC;AAGF,OAAO,EACN,KAAK,WAAW,EAChB,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,IAAI,EACT,SAAS,EACT,SAAS,EACT,UAAU,EACV,KAAK,EACL,cAAc,EACd,eAAe,EACf,cAAc,EACd,aAAa,EACb,uBAAuB,GACvB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACN,KAAK,aAAa,EAClB,KAAK,MAAM,EACX,KAAK,IAAI,EACT,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,KAAK,EACL,cAAc,EACd,YAAY,EACZ,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,QAAQ,EACR,aAAa,EACb,cAAc,EACd,cAAc,EACd,YAAY,EACZ,qBAAqB,EACrB,wBAAwB,EACxB,eAAe,EACf,QAAQ,GACR,MAAM,SAAS,CAAC;AAGjB,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,QAAQ,EACb,KAAK,MAAM,EACX,KAAK,qBAAqB,EAC1B,UAAU,EACV,KAAK,EACL,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,EACV,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,0BAA0B,EAC1B,2BAA2B,GAC3B,MAAM,WAAW,CAAC;AAGnB,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,0BAA0B,EAC/B,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,GACf,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACN,KAAK,gBAAgB,EACrB,KAAK,WAAW,IAAI,qBAAqB,EACzC,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,oBAAoB,EACpB,UAAU,EACV,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EAChB,uBAAuB,EACvB,sBAAsB,GACtB,MAAM,QAAQ,CAAC;AAGhB,OAAO,EACN,KAAK,UAAU,EACf,UAAU,EACV,YAAY,EACZ,iBAAiB,GACjB,MAAM,cAAc,CAAC"}