@revealui/core 0.0.1-pre.3 → 0.2.0

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 (623) hide show
  1. package/LICENSE +22 -202
  2. package/README.md +29 -180
  3. package/dist/api/compression.d.ts +83 -0
  4. package/dist/api/compression.d.ts.map +1 -0
  5. package/dist/api/compression.js +233 -0
  6. package/dist/api/payload-optimization.d.ts +138 -0
  7. package/dist/api/payload-optimization.d.ts.map +1 -0
  8. package/dist/api/payload-optimization.js +320 -0
  9. package/dist/api/rate-limit.d.ts +113 -0
  10. package/dist/api/rate-limit.d.ts.map +1 -0
  11. package/dist/api/rate-limit.js +301 -0
  12. package/dist/api/response-cache.d.ts +125 -0
  13. package/dist/api/response-cache.d.ts.map +1 -0
  14. package/dist/api/response-cache.js +335 -0
  15. package/dist/api/rest.d.ts +54 -0
  16. package/dist/api/rest.d.ts.map +1 -0
  17. package/dist/api/rest.js +464 -0
  18. package/dist/auth/access.d.ts +25 -0
  19. package/dist/auth/access.d.ts.map +1 -0
  20. package/dist/auth/access.js +20 -0
  21. package/dist/auth/index.d.ts +2 -0
  22. package/dist/auth/index.d.ts.map +1 -0
  23. package/dist/auth/index.js +2 -0
  24. package/dist/cache/query-cache.d.ts +98 -0
  25. package/dist/cache/query-cache.d.ts.map +1 -0
  26. package/dist/cache/query-cache.js +260 -0
  27. package/dist/caching/app-cache.d.ts +237 -0
  28. package/dist/caching/app-cache.d.ts.map +1 -0
  29. package/dist/caching/app-cache.js +430 -0
  30. package/dist/caching/cdn-config.d.ts +155 -0
  31. package/dist/caching/cdn-config.d.ts.map +1 -0
  32. package/dist/caching/cdn-config.js +425 -0
  33. package/dist/caching/edge-cache.d.ts +177 -0
  34. package/dist/caching/edge-cache.d.ts.map +1 -0
  35. package/dist/caching/edge-cache.js +381 -0
  36. package/dist/caching/service-worker.d.ts +165 -0
  37. package/dist/caching/service-worker.d.ts.map +1 -0
  38. package/dist/caching/service-worker.js +437 -0
  39. package/dist/client/admin/RichText.d.ts +12 -0
  40. package/dist/client/admin/RichText.d.ts.map +1 -0
  41. package/dist/client/admin/RichText.js +5 -0
  42. package/dist/client/admin/components/AdminDashboard.d.ts +7 -0
  43. package/dist/client/admin/components/AdminDashboard.d.ts.map +1 -0
  44. package/dist/client/admin/components/AdminDashboard.js +318 -0
  45. package/dist/client/admin/components/CollectionList.d.ts +16 -0
  46. package/dist/client/admin/components/CollectionList.d.ts.map +1 -0
  47. package/dist/client/admin/components/CollectionList.js +67 -0
  48. package/dist/client/admin/components/DocumentForm.d.ts +11 -0
  49. package/dist/client/admin/components/DocumentForm.d.ts.map +1 -0
  50. package/dist/client/admin/components/DocumentForm.js +99 -0
  51. package/dist/client/admin/components/GlobalForm.d.ts +11 -0
  52. package/dist/client/admin/components/GlobalForm.d.ts.map +1 -0
  53. package/dist/client/admin/components/GlobalForm.js +74 -0
  54. package/dist/client/admin/i18n/en.d.ts +25 -0
  55. package/dist/client/admin/i18n/en.d.ts.map +1 -0
  56. package/dist/client/admin/i18n/en.js +25 -0
  57. package/dist/client/admin/index.d.ts +10 -0
  58. package/dist/client/admin/index.d.ts.map +1 -0
  59. package/dist/client/admin/index.js +10 -0
  60. package/dist/client/admin/layout.d.ts +10 -0
  61. package/dist/client/admin/layout.d.ts.map +1 -0
  62. package/dist/client/admin/layout.js +6 -0
  63. package/dist/client/admin/page.d.ts +38 -0
  64. package/dist/client/admin/page.d.ts.map +1 -0
  65. package/dist/client/admin/page.js +15 -0
  66. package/dist/client/admin/utils/apiClient.d.ts +110 -0
  67. package/dist/client/admin/utils/apiClient.d.ts.map +1 -0
  68. package/dist/client/admin/utils/apiClient.js +220 -0
  69. package/dist/client/admin/utils/auth.d.ts +27 -0
  70. package/dist/client/admin/utils/auth.d.ts.map +1 -0
  71. package/dist/client/admin/utils/auth.js +58 -0
  72. package/dist/client/admin/utils/index.d.ts +6 -0
  73. package/dist/client/admin/utils/index.d.ts.map +1 -0
  74. package/dist/client/admin/utils/index.js +5 -0
  75. package/dist/client/admin/utils/serializeConfig.d.ts +7 -0
  76. package/dist/client/admin/utils/serializeConfig.d.ts.map +1 -0
  77. package/dist/client/admin/utils/serializeConfig.js +35 -0
  78. package/dist/client/hooks.d.ts +18 -0
  79. package/dist/client/hooks.d.ts.map +1 -0
  80. package/dist/client/hooks.js +29 -0
  81. package/dist/client/http/client.d.ts +15 -0
  82. package/dist/client/http/client.d.ts.map +1 -0
  83. package/dist/client/http/client.js +49 -0
  84. package/dist/client/http/fetchBanner.d.ts +18 -0
  85. package/dist/client/http/fetchBanner.d.ts.map +1 -0
  86. package/dist/client/http/fetchBanner.js +44 -0
  87. package/dist/client/http/fetchCard.d.ts +18 -0
  88. package/dist/client/http/fetchCard.d.ts.map +1 -0
  89. package/dist/client/http/fetchCard.js +46 -0
  90. package/dist/client/http/fetchEvents.d.ts +18 -0
  91. package/dist/client/http/fetchEvents.d.ts.map +1 -0
  92. package/dist/client/http/fetchEvents.js +44 -0
  93. package/dist/client/http/fetchHero.d.ts +17 -0
  94. package/dist/client/http/fetchHero.d.ts.map +1 -0
  95. package/dist/client/http/fetchHero.js +55 -0
  96. package/dist/client/http/fetchMainInfos.d.ts +17 -0
  97. package/dist/client/http/fetchMainInfos.d.ts.map +1 -0
  98. package/dist/client/http/fetchMainInfos.js +44 -0
  99. package/dist/client/http/fetchVideos.d.ts +13 -0
  100. package/dist/client/http/fetchVideos.d.ts.map +1 -0
  101. package/dist/client/http/fetchVideos.js +36 -0
  102. package/dist/client/http/index.d.ts +19 -0
  103. package/dist/client/http/index.d.ts.map +1 -0
  104. package/dist/client/http/index.js +11 -0
  105. package/dist/client/index.d.ts +12 -0
  106. package/dist/client/index.d.ts.map +1 -0
  107. package/dist/client/index.js +15 -0
  108. package/dist/client/richtext/RichTextEditor.d.ts +48 -0
  109. package/dist/client/richtext/RichTextEditor.d.ts.map +1 -0
  110. package/dist/client/richtext/RichTextEditor.js +360 -0
  111. package/dist/client/richtext/components/ImageNodeComponent.d.ts +9 -0
  112. package/dist/client/richtext/components/ImageNodeComponent.d.ts.map +1 -0
  113. package/dist/client/richtext/components/ImageNodeComponent.js +99 -0
  114. package/dist/client/richtext/components/ImageUploadButton.d.ts +11 -0
  115. package/dist/client/richtext/components/ImageUploadButton.d.ts.map +1 -0
  116. package/dist/client/richtext/components/ImageUploadButton.js +103 -0
  117. package/dist/client/richtext/index.d.ts +92 -0
  118. package/dist/client/richtext/index.d.ts.map +1 -0
  119. package/dist/client/richtext/index.js +74 -0
  120. package/dist/client/richtext/nodes/DecoratorBlockNode.d.ts +20 -0
  121. package/dist/client/richtext/nodes/DecoratorBlockNode.d.ts.map +1 -0
  122. package/dist/client/richtext/nodes/DecoratorBlockNode.js +29 -0
  123. package/dist/client/richtext/nodes/ImageNode.d.ts +51 -0
  124. package/dist/client/richtext/nodes/ImageNode.d.ts.map +1 -0
  125. package/dist/client/richtext/nodes/ImageNode.js +95 -0
  126. package/dist/client/richtext/plugins/CollaborationPlugin.d.ts +13 -0
  127. package/dist/client/richtext/plugins/CollaborationPlugin.d.ts.map +1 -0
  128. package/dist/client/richtext/plugins/CollaborationPlugin.js +8 -0
  129. package/dist/client/richtext/plugins/CursorsOverlayPlugin.d.ts +4 -0
  130. package/dist/client/richtext/plugins/CursorsOverlayPlugin.d.ts.map +1 -0
  131. package/dist/client/richtext/plugins/CursorsOverlayPlugin.js +50 -0
  132. package/dist/client/richtext/plugins/FloatingToolbarPlugin.d.ts +7 -0
  133. package/dist/client/richtext/plugins/FloatingToolbarPlugin.d.ts.map +1 -0
  134. package/dist/client/richtext/plugins/FloatingToolbarPlugin.js +248 -0
  135. package/dist/client/richtext/plugins/ImagePlugin.d.ts +3 -0
  136. package/dist/client/richtext/plugins/ImagePlugin.d.ts.map +1 -0
  137. package/dist/client/richtext/plugins/ImagePlugin.js +73 -0
  138. package/dist/client/richtext/plugins/PastePlugin.d.ts +2 -0
  139. package/dist/client/richtext/plugins/PastePlugin.d.ts.map +1 -0
  140. package/dist/client/richtext/plugins/PastePlugin.js +36 -0
  141. package/dist/client/richtext/plugins/ToolbarPlugin.d.ts +8 -0
  142. package/dist/client/richtext/plugins/ToolbarPlugin.d.ts.map +1 -0
  143. package/dist/client/richtext/plugins/ToolbarPlugin.js +204 -0
  144. package/dist/client/ui/index.d.ts +111 -0
  145. package/dist/client/ui/index.d.ts.map +1 -0
  146. package/dist/client/ui/index.js +130 -0
  147. package/dist/collections/CollectionOperations.d.ts +27 -0
  148. package/dist/collections/CollectionOperations.d.ts.map +1 -0
  149. package/dist/collections/CollectionOperations.js +34 -0
  150. package/dist/collections/hooks.d.ts +11 -0
  151. package/dist/collections/hooks.d.ts.map +1 -0
  152. package/dist/collections/hooks.js +35 -0
  153. package/dist/collections/index.d.ts +2 -0
  154. package/dist/collections/index.d.ts.map +1 -0
  155. package/dist/collections/index.js +1 -0
  156. package/dist/collections/operations/create.d.ts +10 -0
  157. package/dist/collections/operations/create.d.ts.map +1 -0
  158. package/dist/collections/operations/create.js +101 -0
  159. package/dist/collections/operations/delete.d.ts +10 -0
  160. package/dist/collections/operations/delete.d.ts.map +1 -0
  161. package/dist/collections/operations/delete.js +16 -0
  162. package/dist/collections/operations/fieldHooks.d.ts +21 -0
  163. package/dist/collections/operations/fieldHooks.d.ts.map +1 -0
  164. package/dist/collections/operations/fieldHooks.js +51 -0
  165. package/dist/collections/operations/find.d.ts +10 -0
  166. package/dist/collections/operations/find.d.ts.map +1 -0
  167. package/dist/collections/operations/find.js +124 -0
  168. package/dist/collections/operations/findById.d.ts +15 -0
  169. package/dist/collections/operations/findById.d.ts.map +1 -0
  170. package/dist/collections/operations/findById.js +59 -0
  171. package/dist/collections/operations/update.d.ts +10 -0
  172. package/dist/collections/operations/update.d.ts.map +1 -0
  173. package/dist/collections/operations/update.js +134 -0
  174. package/dist/config/index.d.ts +9 -0
  175. package/dist/config/index.d.ts.map +1 -0
  176. package/dist/config/index.js +61 -0
  177. package/dist/config/runtime.d.ts +22 -0
  178. package/dist/config/runtime.d.ts.map +1 -0
  179. package/dist/config/runtime.js +32 -0
  180. package/dist/config/utils.d.ts +12 -0
  181. package/dist/config/utils.d.ts.map +1 -0
  182. package/dist/config/utils.js +20 -0
  183. package/dist/database/index.d.ts +1 -0
  184. package/dist/database/index.d.ts.map +1 -0
  185. package/dist/database/index.js +6 -0
  186. package/dist/database/ssl-config.d.ts +9 -0
  187. package/dist/database/ssl-config.d.ts.map +1 -0
  188. package/dist/database/ssl-config.js +7 -0
  189. package/dist/database/type-adapter.d.ts +113 -0
  190. package/dist/database/type-adapter.d.ts.map +1 -0
  191. package/dist/database/type-adapter.js +97 -0
  192. package/dist/database/universal-postgres.d.ts +45 -0
  193. package/dist/database/universal-postgres.d.ts.map +1 -0
  194. package/dist/database/universal-postgres.js +526 -0
  195. package/dist/dataloader.d.ts +26 -0
  196. package/dist/dataloader.d.ts.map +1 -0
  197. package/dist/dataloader.js +162 -0
  198. package/dist/error-handling/circuit-breaker.d.ts +262 -0
  199. package/dist/error-handling/circuit-breaker.d.ts.map +1 -0
  200. package/dist/error-handling/circuit-breaker.js +542 -0
  201. package/dist/error-handling/error-boundary.d.ts +94 -0
  202. package/dist/error-handling/error-boundary.d.ts.map +1 -0
  203. package/dist/error-handling/error-boundary.js +285 -0
  204. package/dist/error-handling/error-reporter.d.ts +213 -0
  205. package/dist/error-handling/error-reporter.d.ts.map +1 -0
  206. package/dist/error-handling/error-reporter.js +506 -0
  207. package/dist/error-handling/fallback-components.d.ts +131 -0
  208. package/dist/error-handling/fallback-components.d.ts.map +1 -0
  209. package/dist/error-handling/fallback-components.js +371 -0
  210. package/dist/error-handling/index.d.ts +16 -0
  211. package/dist/error-handling/index.d.ts.map +1 -0
  212. package/dist/error-handling/index.js +15 -0
  213. package/dist/error-handling/retry.d.ts +194 -0
  214. package/dist/error-handling/retry.d.ts.map +1 -0
  215. package/dist/error-handling/retry.js +450 -0
  216. package/dist/errors/index.d.ts +23 -0
  217. package/dist/errors/index.d.ts.map +1 -0
  218. package/dist/errors/index.js +40 -0
  219. package/dist/factories/builders.d.ts +50 -0
  220. package/dist/factories/builders.d.ts.map +1 -0
  221. package/dist/factories/builders.js +77 -0
  222. package/dist/factories/index.d.ts +2 -0
  223. package/dist/factories/index.d.ts.map +1 -0
  224. package/dist/factories/index.js +1 -0
  225. package/dist/features.d.ts +82 -0
  226. package/dist/features.d.ts.map +1 -0
  227. package/dist/features.js +89 -0
  228. package/dist/fieldTraversal.d.ts +26 -0
  229. package/dist/fieldTraversal.d.ts.map +1 -0
  230. package/dist/fieldTraversal.js +132 -0
  231. package/dist/fields/config/types.d.ts +48 -0
  232. package/dist/fields/config/types.d.ts.map +1 -0
  233. package/dist/fields/config/types.js +20 -0
  234. package/dist/fields/getDefaultValue.d.ts +16 -0
  235. package/dist/fields/getDefaultValue.d.ts.map +1 -0
  236. package/dist/fields/getDefaultValue.js +20 -0
  237. package/dist/fields/getFieldPaths.d.ts +25 -0
  238. package/dist/fields/getFieldPaths.d.ts.map +1 -0
  239. package/dist/fields/getFieldPaths.js +23 -0
  240. package/dist/fields/hooks/afterRead/index.d.ts +36 -0
  241. package/dist/fields/hooks/afterRead/index.d.ts.map +1 -0
  242. package/dist/fields/hooks/afterRead/index.js +70 -0
  243. package/dist/fields/hooks/afterRead/promise.d.ts +46 -0
  244. package/dist/fields/hooks/afterRead/promise.d.ts.map +1 -0
  245. package/dist/fields/hooks/afterRead/promise.js +178 -0
  246. package/dist/fields/hooks/afterRead/traverseFields.d.ts +44 -0
  247. package/dist/fields/hooks/afterRead/traverseFields.d.ts.map +1 -0
  248. package/dist/fields/hooks/afterRead/traverseFields.js +37 -0
  249. package/dist/generated/agents/index.d.ts +8 -0
  250. package/dist/generated/agents/index.d.ts.map +1 -0
  251. package/dist/generated/agents/index.js +7 -0
  252. package/dist/generated/components/index.d.ts +8 -0
  253. package/dist/generated/components/index.d.ts.map +1 -0
  254. package/dist/generated/components/index.js +7 -0
  255. package/dist/generated/functions/index.d.ts +8 -0
  256. package/dist/generated/functions/index.d.ts.map +1 -0
  257. package/dist/generated/functions/index.js +7 -0
  258. package/dist/generated/hooks/index.d.ts +8 -0
  259. package/dist/generated/hooks/index.d.ts.map +1 -0
  260. package/dist/generated/hooks/index.js +7 -0
  261. package/dist/generated/index.d.ts +10 -0
  262. package/dist/generated/index.d.ts.map +1 -0
  263. package/dist/generated/index.js +9 -0
  264. package/dist/generated/plans/index.d.ts +8 -0
  265. package/dist/generated/plans/index.d.ts.map +1 -0
  266. package/dist/generated/plans/index.js +7 -0
  267. package/dist/generated/prompts/index.d.ts +8 -0
  268. package/dist/generated/prompts/index.d.ts.map +1 -0
  269. package/dist/generated/prompts/index.js +7 -0
  270. package/dist/generated/tools/index.d.ts +8 -0
  271. package/dist/generated/tools/index.d.ts.map +1 -0
  272. package/dist/generated/tools/index.js +7 -0
  273. package/dist/generated/types/cms.d.ts +1766 -0
  274. package/dist/generated/types/cms.d.ts.map +1 -0
  275. package/dist/generated/types/cms.js +12 -0
  276. package/dist/generated/types/index.d.ts +19 -0
  277. package/dist/generated/types/index.d.ts.map +1 -0
  278. package/dist/generated/types/index.js +28 -0
  279. package/dist/generated/types/neon.d.ts +11 -0
  280. package/dist/generated/types/neon.d.ts.map +1 -0
  281. package/dist/generated/types/neon.js +11 -0
  282. package/dist/generated/types/supabase.d.ts +193 -0
  283. package/dist/generated/types/supabase.d.ts.map +1 -0
  284. package/dist/generated/types/supabase.js +5 -0
  285. package/dist/globals/GlobalOperations.d.ts +24 -0
  286. package/dist/globals/GlobalOperations.d.ts.map +1 -0
  287. package/dist/globals/GlobalOperations.js +149 -0
  288. package/dist/globals/index.d.ts +2 -0
  289. package/dist/globals/index.d.ts.map +1 -0
  290. package/dist/globals/index.js +1 -0
  291. package/dist/index.d.ts +64 -1
  292. package/dist/index.d.ts.map +1 -0
  293. package/dist/index.js +128 -33
  294. package/dist/instance/RevealUIInstance.d.ts +6 -0
  295. package/dist/instance/RevealUIInstance.d.ts.map +1 -0
  296. package/dist/instance/RevealUIInstance.js +312 -0
  297. package/dist/instance/index.d.ts +3 -0
  298. package/dist/instance/index.d.ts.map +1 -0
  299. package/dist/instance/index.js +2 -0
  300. package/dist/instance/logger.d.ts +31 -0
  301. package/dist/instance/logger.d.ts.map +1 -0
  302. package/dist/instance/logger.js +42 -0
  303. package/dist/instance/methods/create.d.ts +10 -0
  304. package/dist/instance/methods/create.d.ts.map +1 -0
  305. package/dist/instance/methods/create.js +38 -0
  306. package/dist/instance/methods/delete.d.ts +10 -0
  307. package/dist/instance/methods/delete.d.ts.map +1 -0
  308. package/dist/instance/methods/delete.js +24 -0
  309. package/dist/instance/methods/find.d.ts +10 -0
  310. package/dist/instance/methods/find.d.ts.map +1 -0
  311. package/dist/instance/methods/find.js +23 -0
  312. package/dist/instance/methods/findById.d.ts +13 -0
  313. package/dist/instance/methods/findById.d.ts.map +1 -0
  314. package/dist/instance/methods/findById.js +23 -0
  315. package/dist/instance/methods/hooks.d.ts +14 -0
  316. package/dist/instance/methods/hooks.d.ts.map +1 -0
  317. package/dist/instance/methods/hooks.js +32 -0
  318. package/dist/instance/methods/update.d.ts +10 -0
  319. package/dist/instance/methods/update.d.ts.map +1 -0
  320. package/dist/instance/methods/update.js +42 -0
  321. package/dist/license.d.ts +73 -0
  322. package/dist/license.d.ts.map +1 -0
  323. package/dist/license.js +157 -0
  324. package/dist/monitoring/alerts.d.ts +118 -0
  325. package/dist/monitoring/alerts.d.ts.map +1 -0
  326. package/dist/monitoring/alerts.js +324 -0
  327. package/dist/monitoring/cleanup-manager.d.ts +71 -0
  328. package/dist/monitoring/cleanup-manager.d.ts.map +1 -0
  329. package/dist/monitoring/cleanup-manager.js +226 -0
  330. package/dist/monitoring/health-monitor.d.ts +22 -0
  331. package/dist/monitoring/health-monitor.d.ts.map +1 -0
  332. package/dist/monitoring/health-monitor.js +142 -0
  333. package/dist/monitoring/index.d.ts +14 -0
  334. package/dist/monitoring/index.d.ts.map +1 -0
  335. package/dist/monitoring/index.js +17 -0
  336. package/dist/monitoring/process-registry.d.ts +97 -0
  337. package/dist/monitoring/process-registry.d.ts.map +1 -0
  338. package/dist/monitoring/process-registry.js +222 -0
  339. package/dist/monitoring/query-monitor.d.ts +153 -0
  340. package/dist/monitoring/query-monitor.d.ts.map +1 -0
  341. package/dist/monitoring/query-monitor.js +209 -0
  342. package/dist/monitoring/types.d.ts +231 -0
  343. package/dist/monitoring/types.d.ts.map +1 -0
  344. package/dist/monitoring/types.js +42 -0
  345. package/dist/monitoring/zombie-detector.d.ts +81 -0
  346. package/dist/monitoring/zombie-detector.d.ts.map +1 -0
  347. package/dist/monitoring/zombie-detector.js +231 -0
  348. package/dist/nextjs/index.d.ts +4 -0
  349. package/dist/nextjs/index.d.ts.map +1 -0
  350. package/dist/nextjs/index.js +3 -0
  351. package/dist/nextjs/utilities.d.ts +5 -0
  352. package/dist/nextjs/utilities.d.ts.map +1 -0
  353. package/dist/nextjs/utilities.js +16 -0
  354. package/dist/nextjs/withRevealUI.d.ts +20 -0
  355. package/dist/nextjs/withRevealUI.d.ts.map +1 -0
  356. package/dist/nextjs/withRevealUI.js +181 -0
  357. package/dist/observability/alerts.d.ts +138 -0
  358. package/dist/observability/alerts.d.ts.map +1 -0
  359. package/dist/observability/alerts.js +390 -0
  360. package/dist/observability/health-check.d.ts +95 -0
  361. package/dist/observability/health-check.d.ts.map +1 -0
  362. package/dist/observability/health-check.js +345 -0
  363. package/dist/observability/index.d.ts +12 -0
  364. package/dist/observability/index.d.ts.map +1 -0
  365. package/dist/observability/index.js +11 -0
  366. package/dist/observability/logger.d.ts +47 -0
  367. package/dist/observability/logger.d.ts.map +1 -0
  368. package/dist/observability/logger.js +140 -0
  369. package/dist/observability/metrics.d.ts +205 -0
  370. package/dist/observability/metrics.d.ts.map +1 -0
  371. package/dist/observability/metrics.js +429 -0
  372. package/dist/observability/tracing.d.ts +149 -0
  373. package/dist/observability/tracing.d.ts.map +1 -0
  374. package/dist/observability/tracing.js +381 -0
  375. package/dist/optimization/asset-optimizer.d.ts +202 -0
  376. package/dist/optimization/asset-optimizer.d.ts.map +1 -0
  377. package/dist/optimization/asset-optimizer.js +312 -0
  378. package/dist/optimization/build-optimizer.d.ts +202 -0
  379. package/dist/optimization/build-optimizer.d.ts.map +1 -0
  380. package/dist/optimization/build-optimizer.js +271 -0
  381. package/dist/optimization/bundle-analyzer.d.ts +98 -0
  382. package/dist/optimization/bundle-analyzer.d.ts.map +1 -0
  383. package/dist/optimization/bundle-analyzer.js +322 -0
  384. package/dist/optimization/code-splitting.d.ts +144 -0
  385. package/dist/optimization/code-splitting.d.ts.map +1 -0
  386. package/dist/optimization/code-splitting.js +290 -0
  387. package/dist/plugin/index.d.ts +12 -0
  388. package/dist/plugin/index.d.ts.map +1 -0
  389. package/dist/plugin/index.js +4 -0
  390. package/dist/plugins/form-builder.d.ts +115 -0
  391. package/dist/plugins/form-builder.d.ts.map +1 -0
  392. package/dist/plugins/form-builder.js +239 -0
  393. package/dist/plugins/index.d.ts +5 -0
  394. package/dist/plugins/index.d.ts.map +1 -0
  395. package/dist/plugins/index.js +4 -0
  396. package/dist/plugins/nested-docs.d.ts +8 -0
  397. package/dist/plugins/nested-docs.d.ts.map +1 -0
  398. package/dist/plugins/nested-docs.js +67 -0
  399. package/dist/plugins/redirects.d.ts +17 -0
  400. package/dist/plugins/redirects.d.ts.map +1 -0
  401. package/dist/plugins/redirects.js +62 -0
  402. package/dist/queries/index.d.ts +2 -0
  403. package/dist/queries/index.d.ts.map +1 -0
  404. package/dist/queries/index.js +1 -0
  405. package/dist/queries/queryBuilder.d.ts +47 -0
  406. package/dist/queries/queryBuilder.d.ts.map +1 -0
  407. package/dist/queries/queryBuilder.js +252 -0
  408. package/dist/relationships/analyzer.d.ts +39 -0
  409. package/dist/relationships/analyzer.d.ts.map +1 -0
  410. package/dist/relationships/analyzer.js +127 -0
  411. package/dist/relationships/index.d.ts +3 -0
  412. package/dist/relationships/index.d.ts.map +1 -0
  413. package/dist/relationships/index.js +2 -0
  414. package/dist/relationships/populate-helpers.d.ts +104 -0
  415. package/dist/relationships/populate-helpers.d.ts.map +1 -0
  416. package/dist/relationships/populate-helpers.js +187 -0
  417. package/dist/relationships/population.d.ts +42 -0
  418. package/dist/relationships/population.d.ts.map +1 -0
  419. package/dist/relationships/population.js +188 -0
  420. package/dist/revealui.d.ts +46 -0
  421. package/dist/revealui.d.ts.map +1 -0
  422. package/dist/revealui.js +92 -0
  423. package/dist/richtext/exports/client/rcc.d.ts +37 -0
  424. package/dist/richtext/exports/client/rcc.d.ts.map +1 -0
  425. package/dist/richtext/exports/client/rcc.js +182 -0
  426. package/dist/richtext/exports/server/rsc.d.ts +117 -0
  427. package/dist/richtext/exports/server/rsc.d.ts.map +1 -0
  428. package/dist/richtext/exports/server/rsc.js +288 -0
  429. package/dist/richtext/index.d.ts +161 -0
  430. package/dist/richtext/index.d.ts.map +1 -0
  431. package/dist/richtext/index.js +243 -0
  432. package/dist/richtext/lexical.d.ts +23 -0
  433. package/dist/richtext/lexical.d.ts.map +1 -0
  434. package/dist/richtext/lexical.js +35 -0
  435. package/dist/security/audit.d.ts +188 -0
  436. package/dist/security/audit.d.ts.map +1 -0
  437. package/dist/security/audit.js +431 -0
  438. package/dist/security/auth.d.ts +241 -0
  439. package/dist/security/auth.d.ts.map +1 -0
  440. package/dist/security/auth.js +474 -0
  441. package/dist/security/authorization.d.ts +235 -0
  442. package/dist/security/authorization.d.ts.map +1 -0
  443. package/dist/security/authorization.js +434 -0
  444. package/dist/security/encryption.d.ts +214 -0
  445. package/dist/security/encryption.d.ts.map +1 -0
  446. package/dist/security/encryption.js +506 -0
  447. package/dist/security/gdpr.d.ts +300 -0
  448. package/dist/security/gdpr.d.ts.map +1 -0
  449. package/dist/security/gdpr.js +470 -0
  450. package/dist/security/headers.d.ts +182 -0
  451. package/dist/security/headers.d.ts.map +1 -0
  452. package/dist/security/headers.js +402 -0
  453. package/dist/security/index.d.ts +19 -0
  454. package/dist/security/index.d.ts.map +1 -0
  455. package/dist/security/index.js +18 -0
  456. package/dist/server/index.d.ts +21 -0
  457. package/dist/server/index.d.ts.map +1 -0
  458. package/dist/server/index.js +28 -0
  459. package/dist/server/renderPage.d.ts +69 -0
  460. package/dist/server/renderPage.d.ts.map +1 -0
  461. package/dist/server/renderPage.js +109 -0
  462. package/dist/storage/index.d.ts +1 -0
  463. package/dist/storage/index.d.ts.map +1 -0
  464. package/dist/storage/index.js +4 -0
  465. package/dist/storage/vercel-blob.d.ts +17 -0
  466. package/dist/storage/vercel-blob.d.ts.map +1 -0
  467. package/dist/storage/vercel-blob.js +83 -0
  468. package/dist/translations/index.d.ts +17 -0
  469. package/dist/translations/index.d.ts.map +1 -0
  470. package/dist/translations/index.js +1 -0
  471. package/dist/types/access.d.ts +67 -0
  472. package/dist/types/access.d.ts.map +1 -0
  473. package/dist/types/access.js +8 -0
  474. package/dist/types/api.d.ts +57 -0
  475. package/dist/types/api.d.ts.map +1 -0
  476. package/dist/types/api.js +8 -0
  477. package/dist/types/cms.d.ts +8 -0
  478. package/dist/types/cms.d.ts.map +1 -0
  479. package/dist/types/cms.js +6 -0
  480. package/dist/types/config.d.ts +152 -0
  481. package/dist/types/config.d.ts.map +1 -0
  482. package/dist/types/config.js +9 -0
  483. package/dist/types/core.d.ts +11 -0
  484. package/dist/types/core.d.ts.map +1 -0
  485. package/dist/types/core.js +9 -0
  486. package/dist/types/extensions.d.ts +116 -0
  487. package/dist/types/extensions.d.ts.map +1 -0
  488. package/dist/types/extensions.js +8 -0
  489. package/dist/types/frontend.d.ts +53 -0
  490. package/dist/types/frontend.d.ts.map +1 -0
  491. package/dist/types/frontend.js +7 -0
  492. package/dist/types/generated.d.ts +14 -0
  493. package/dist/types/generated.d.ts.map +1 -0
  494. package/dist/types/generated.js +11 -0
  495. package/dist/types/hooks.d.ts +53 -0
  496. package/dist/types/hooks.d.ts.map +1 -0
  497. package/dist/types/hooks.js +8 -0
  498. package/dist/types/index.d.ts +49 -0
  499. package/dist/types/index.d.ts.map +1 -0
  500. package/dist/types/index.js +61 -0
  501. package/dist/types/interfaces/app.d.ts +50 -0
  502. package/dist/types/interfaces/app.d.ts.map +1 -0
  503. package/dist/types/interfaces/app.js +5 -0
  504. package/dist/types/jobs.d.ts +112 -0
  505. package/dist/types/jobs.d.ts.map +1 -0
  506. package/dist/types/jobs.js +7 -0
  507. package/dist/types/legacy.d.ts +147 -0
  508. package/dist/types/legacy.d.ts.map +1 -0
  509. package/dist/types/legacy.js +8 -0
  510. package/dist/types/plugins.d.ts +17 -0
  511. package/dist/types/plugins.d.ts.map +1 -0
  512. package/dist/types/plugins.js +8 -0
  513. package/dist/types/query.d.ts +99 -0
  514. package/dist/types/query.d.ts.map +1 -0
  515. package/dist/types/query.js +24 -0
  516. package/dist/types/request.d.ts +40 -0
  517. package/dist/types/request.d.ts.map +1 -0
  518. package/dist/types/request.js +8 -0
  519. package/dist/types/richtext.d.ts +23 -0
  520. package/dist/types/richtext.d.ts.map +1 -0
  521. package/dist/types/richtext.js +8 -0
  522. package/dist/types/runtime.d.ts +216 -0
  523. package/dist/types/runtime.d.ts.map +1 -0
  524. package/dist/types/runtime.js +9 -0
  525. package/dist/types/schema.d.ts +9 -0
  526. package/dist/types/schema.d.ts.map +1 -0
  527. package/dist/types/schema.js +7 -0
  528. package/dist/types/user.d.ts +48 -0
  529. package/dist/types/user.d.ts.map +1 -0
  530. package/dist/types/user.js +8 -0
  531. package/dist/utils/access-conversion.d.ts +17 -0
  532. package/dist/utils/access-conversion.d.ts.map +1 -0
  533. package/dist/utils/access-conversion.js +96 -0
  534. package/dist/utils/api-wrapper.d.ts +63 -0
  535. package/dist/utils/api-wrapper.d.ts.map +1 -0
  536. package/dist/utils/api-wrapper.js +151 -0
  537. package/dist/utils/block-conversion.d.ts +21 -0
  538. package/dist/utils/block-conversion.d.ts.map +1 -0
  539. package/dist/utils/block-conversion.js +109 -0
  540. package/dist/utils/cache.d.ts +86 -0
  541. package/dist/utils/cache.d.ts.map +1 -0
  542. package/dist/utils/cache.js +154 -0
  543. package/dist/utils/deep-clone.d.ts +25 -0
  544. package/dist/utils/deep-clone.d.ts.map +1 -0
  545. package/dist/utils/deep-clone.js +115 -0
  546. package/dist/utils/error-responses.d.ts +57 -0
  547. package/dist/utils/error-responses.d.ts.map +1 -0
  548. package/dist/utils/error-responses.js +96 -0
  549. package/dist/utils/errors.d.ts +97 -0
  550. package/dist/utils/errors.d.ts.map +1 -0
  551. package/dist/utils/errors.js +397 -0
  552. package/dist/utils/field-conversion.d.ts +40 -0
  553. package/dist/utils/field-conversion.d.ts.map +1 -0
  554. package/dist/utils/field-conversion.js +275 -0
  555. package/dist/utils/flattenResult.d.ts +7 -0
  556. package/dist/utils/flattenResult.d.ts.map +1 -0
  557. package/dist/utils/flattenResult.js +23 -0
  558. package/dist/utils/getBlockSelect.d.ts +12 -0
  559. package/dist/utils/getBlockSelect.d.ts.map +1 -0
  560. package/dist/utils/getBlockSelect.js +12 -0
  561. package/dist/utils/getSelectMode.d.ts +8 -0
  562. package/dist/utils/getSelectMode.d.ts.map +1 -0
  563. package/dist/utils/getSelectMode.js +21 -0
  564. package/dist/utils/isValidID.d.ts +5 -0
  565. package/dist/utils/isValidID.d.ts.map +1 -0
  566. package/dist/utils/isValidID.js +13 -0
  567. package/dist/utils/json-parsing.d.ts +48 -0
  568. package/dist/utils/json-parsing.d.ts.map +1 -0
  569. package/dist/utils/json-parsing.js +130 -0
  570. package/dist/utils/jwt-validation.d.ts +14 -0
  571. package/dist/utils/jwt-validation.d.ts.map +1 -0
  572. package/dist/utils/jwt-validation.js +36 -0
  573. package/dist/utils/logger-client.d.ts +32 -0
  574. package/dist/utils/logger-client.d.ts.map +1 -0
  575. package/dist/utils/logger-client.js +55 -0
  576. package/dist/utils/logger-server.d.ts +32 -0
  577. package/dist/utils/logger-server.d.ts.map +1 -0
  578. package/dist/utils/logger-server.js +68 -0
  579. package/dist/utils/logger.d.ts +14 -0
  580. package/dist/utils/logger.d.ts.map +1 -0
  581. package/dist/utils/logger.js +12 -0
  582. package/dist/utils/request-context.d.ts +143 -0
  583. package/dist/utils/request-context.d.ts.map +1 -0
  584. package/dist/utils/request-context.js +168 -0
  585. package/dist/utils/request-headers.d.ts +15 -0
  586. package/dist/utils/request-headers.d.ts.map +1 -0
  587. package/dist/utils/request-headers.js +31 -0
  588. package/dist/utils/stripUnselectedFields.d.ts +10 -0
  589. package/dist/utils/stripUnselectedFields.d.ts.map +1 -0
  590. package/dist/utils/stripUnselectedFields.js +20 -0
  591. package/dist/utils/type-guards.d.ts +33 -0
  592. package/dist/utils/type-guards.d.ts.map +1 -0
  593. package/dist/utils/type-guards.js +63 -0
  594. package/dist/utils/user.d.ts +14 -0
  595. package/dist/utils/user.d.ts.map +1 -0
  596. package/dist/utils/user.js +15 -0
  597. package/package.json +250 -697
  598. package/LICENSE_SUMMARY.md +0 -55
  599. package/NOTICE +0 -34
  600. package/dist/core/gaurds/logger/log404/index.spec.snapshot-1 +0 -8
  601. package/dist/core/gaurds/logger/log404/index.spec.snapshot-2 +0 -9
  602. package/dist/exports/RenderErrorPage.js +0 -3
  603. package/dist/exports/__internal.js +0 -3
  604. package/dist/exports/abort.js +0 -3
  605. package/dist/exports/bin-entry.js +0 -17
  606. package/dist/exports/cli.js +0 -3
  607. package/dist/exports/client.js +0 -3
  608. package/dist/exports/config.js +0 -1
  609. package/dist/exports/helpers.js +0 -1
  610. package/dist/exports/index.js +0 -33
  611. package/dist/exports/plugin.js +0 -3
  612. package/dist/exports/prerender.js +0 -3
  613. package/dist/exports/router.js +0 -3
  614. package/dist/exports/routing.js +0 -3
  615. package/dist/exports/server.js +0 -3
  616. package/dist/exports/setup.js +0 -3
  617. package/dist/exports/types.js +0 -1
  618. package/dist/integration/styles.css +0 -141
  619. package/dist/node/cli/index.js +0 -18
  620. package/dist/shared/RenderErrorPage.d.ts +0 -3
  621. package/dist/shared/RenderErrorPage.js +0 -3
  622. package/dist/shared/abort.js +0 -3
  623. package/dist/shared/route/routing.js +0 -3
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Client-Safe Logger
3
+ *
4
+ * Production-safe logging utility that works in both client and server contexts.
5
+ * Does not depend on Node.js APIs (no async_hooks, no crypto).
6
+ * Info/warn messages are no-ops in production to avoid console pollution.
7
+ *
8
+ * NOTE: No 'use client' directive here. This is a plain utility module, not a
9
+ * React component. Adding 'use client' causes Next.js to create a reference
10
+ * proxy when imported from server code (API routes), stripping all methods.
11
+ */
12
+ export type LogLevel = 'debug' | 'info' | 'warn' | 'error';
13
+ export interface LogContext {
14
+ [key: string]: unknown;
15
+ }
16
+ export interface Logger {
17
+ debug(message: string, context?: LogContext): void;
18
+ info(message: string, context?: LogContext): void;
19
+ warn(message: string, context?: LogContext): void;
20
+ error(message: string, context?: LogContext): void;
21
+ }
22
+ /**
23
+ * Create a client-safe logger instance
24
+ *
25
+ * @returns Logger instance safe for client-side use
26
+ */
27
+ export declare function createLogger(): Logger;
28
+ /**
29
+ * Default client-safe logger instance
30
+ */
31
+ export declare const logger: Logger;
32
+ //# sourceMappingURL=logger-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger-client.d.ts","sourceRoot":"","sources":["../../src/utils/logger-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;AAE1D,MAAM,WAAW,UAAU;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,MAAM;IACrB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI,CAAA;IAClD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI,CAAA;IACjD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI,CAAA;IACjD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI,CAAA;CACnD;AAyCD;;;;GAIG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;;GAEG;AACH,eAAO,MAAM,MAAM,QAAiB,CAAA"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Client-Safe Logger
3
+ *
4
+ * Production-safe logging utility that works in both client and server contexts.
5
+ * Does not depend on Node.js APIs (no async_hooks, no crypto).
6
+ * Info/warn messages are no-ops in production to avoid console pollution.
7
+ *
8
+ * NOTE: No 'use client' directive here. This is a plain utility module, not a
9
+ * React component. Adding 'use client' causes Next.js to create a reference
10
+ * proxy when imported from server code (API routes), stripping all methods.
11
+ */
12
+ /**
13
+ * Client-safe logger implementation
14
+ * Simple console-based logging without Node.js dependencies
15
+ */
16
+ class ClientLogger {
17
+ formatMessage(level, message, context) {
18
+ const timestamp = new Date().toISOString();
19
+ const prefix = `[${timestamp}] [RevealUI] [${level.toUpperCase()}]`;
20
+ if (context && Object.keys(context).length > 0) {
21
+ return `${prefix} ${message} ${JSON.stringify(context)}`;
22
+ }
23
+ return `${prefix} ${message}`;
24
+ }
25
+ debug(message, context) {
26
+ if (process.env.NODE_ENV !== 'production') {
27
+ console.debug(this.formatMessage('debug', message, context));
28
+ }
29
+ }
30
+ info(message, context) {
31
+ if (process.env.NODE_ENV !== 'production') {
32
+ console.info(this.formatMessage('info', message, context));
33
+ }
34
+ }
35
+ warn(message, context) {
36
+ if (process.env.NODE_ENV !== 'production') {
37
+ console.warn(this.formatMessage('warn', message, context));
38
+ }
39
+ }
40
+ error(message, context) {
41
+ console.error(this.formatMessage('error', message, context));
42
+ }
43
+ }
44
+ /**
45
+ * Create a client-safe logger instance
46
+ *
47
+ * @returns Logger instance safe for client-side use
48
+ */
49
+ export function createLogger() {
50
+ return new ClientLogger();
51
+ }
52
+ /**
53
+ * Default client-safe logger instance
54
+ */
55
+ export const logger = createLogger();
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Server Logger Utility
3
+ *
4
+ * Server-side logging utility for RevealUI framework.
5
+ * Supports different log levels and structured output.
6
+ * Automatically includes request ID from request context when available.
7
+ *
8
+ * WARNING: This module uses Node.js APIs (async_hooks via request-context).
9
+ * For client-safe logging, use './logger-client.js' instead.
10
+ */
11
+ export type LogLevel = 'debug' | 'info' | 'warn' | 'error';
12
+ export interface LogContext {
13
+ [key: string]: unknown;
14
+ }
15
+ export interface Logger {
16
+ debug(message: string, context?: LogContext): void;
17
+ info(message: string, context?: LogContext): void;
18
+ warn(message: string, context?: LogContext): void;
19
+ error(message: string, context?: LogContext): void;
20
+ }
21
+ /**
22
+ * Create a logger instance
23
+ *
24
+ * @param minLevel - Minimum log level to output (default: 'info')
25
+ * @returns Logger instance
26
+ */
27
+ export declare function createLogger(minLevel?: LogLevel): Logger;
28
+ /**
29
+ * Default logger instance
30
+ */
31
+ export declare const logger: Logger;
32
+ //# sourceMappingURL=logger-server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger-server.d.ts","sourceRoot":"","sources":["../../src/utils/logger-server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;AAE1D,MAAM,WAAW,UAAU;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED,MAAM,WAAW,MAAM;IACrB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI,CAAA;IAClD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI,CAAA;IACjD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI,CAAA;IACjD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI,CAAA;CACnD;AAsDD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAKxD;AAED;;GAEG;AACH,eAAO,MAAM,MAAM,QAAiB,CAAA"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Server Logger Utility
3
+ *
4
+ * Server-side logging utility for RevealUI framework.
5
+ * Supports different log levels and structured output.
6
+ * Automatically includes request ID from request context when available.
7
+ *
8
+ * WARNING: This module uses Node.js APIs (async_hooks via request-context).
9
+ * For client-safe logging, use './logger-client.js' instead.
10
+ */
11
+ import { getRequestId } from './request-context.js';
12
+ class ConsoleLogger {
13
+ minLevel;
14
+ constructor(minLevel = 'info') {
15
+ this.minLevel = minLevel;
16
+ }
17
+ shouldLog(level) {
18
+ const levels = ['debug', 'info', 'warn', 'error'];
19
+ return levels.indexOf(level) >= levels.indexOf(this.minLevel);
20
+ }
21
+ formatMessage(level, message, context) {
22
+ const timestamp = new Date().toISOString();
23
+ const prefix = `[${timestamp}] [${level.toUpperCase()}]`;
24
+ // Automatically include request ID if available
25
+ const requestId = getRequestId();
26
+ const enrichedContext = requestId ? { requestId, ...context } : context;
27
+ if (enrichedContext && Object.keys(enrichedContext).length > 0) {
28
+ return `${prefix} ${message} ${JSON.stringify(enrichedContext)}`;
29
+ }
30
+ return `${prefix} ${message}`;
31
+ }
32
+ debug(message, context) {
33
+ if (process.env.NODE_ENV !== 'production') {
34
+ console.debug(this.formatMessage('debug', message, context));
35
+ }
36
+ }
37
+ info(message, context) {
38
+ if (process.env.NODE_ENV !== 'production') {
39
+ console.info(this.formatMessage('info', message, context));
40
+ }
41
+ }
42
+ warn(message, context) {
43
+ if (process.env.NODE_ENV !== 'production') {
44
+ console.warn(this.formatMessage('warn', message, context));
45
+ }
46
+ }
47
+ error(message, context) {
48
+ if (this.shouldLog('error')) {
49
+ console.error(this.formatMessage('error', message, context));
50
+ }
51
+ }
52
+ }
53
+ /**
54
+ * Create a logger instance
55
+ *
56
+ * @param minLevel - Minimum log level to output (default: 'info')
57
+ * @returns Logger instance
58
+ */
59
+ export function createLogger(minLevel) {
60
+ // In production, can be extended to use structured logging services
61
+ // For now, use console-based logger
62
+ const level = minLevel || process.env.LOG_LEVEL || 'info';
63
+ return new ConsoleLogger(level);
64
+ }
65
+ /**
66
+ * Default logger instance
67
+ */
68
+ export const logger = createLogger();
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Logger Utility - Default Export
3
+ *
4
+ * Re-exports the client-safe logger implementation.
5
+ * This ensures that default imports get the client-safe version
6
+ * without Node.js dependencies (no async_hooks, no crypto).
7
+ *
8
+ * For server-side logging with request context:
9
+ * import { logger } from '@revealui/core/server'
10
+ * import { logger } from '@revealui/core/utils/logger/server'
11
+ */
12
+ export type { LogContext, Logger, LogLevel } from './logger-client.js';
13
+ export { createLogger, logger } from './logger-client.js';
14
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Logger Utility - Default Export
3
+ *
4
+ * Re-exports the client-safe logger implementation.
5
+ * This ensures that default imports get the client-safe version
6
+ * without Node.js dependencies (no async_hooks, no crypto).
7
+ *
8
+ * For server-side logging with request context:
9
+ * import { logger } from '@revealui/core/server'
10
+ * import { logger } from '@revealui/core/utils/logger/server'
11
+ */
12
+ export { createLogger, logger } from './logger-client.js';
@@ -0,0 +1,143 @@
1
+ /**
2
+ * Request Context Management
3
+ *
4
+ * Provides request ID generation and context propagation for distributed tracing.
5
+ * Request IDs enable tracking a single request across multiple services and logs.
6
+ *
7
+ * WARNING: This module uses Node.js-specific APIs (async_hooks, crypto).
8
+ * Do NOT import in client-side code or edge runtime.
9
+ */
10
+ /**
11
+ * Request context data stored in AsyncLocalStorage
12
+ */
13
+ export interface RequestContext {
14
+ /** Unique request identifier */
15
+ requestId: string;
16
+ /** Request start timestamp */
17
+ startTime: number;
18
+ /** User ID (if authenticated) */
19
+ userId?: string;
20
+ /** IP address */
21
+ ip?: string;
22
+ /** User agent */
23
+ userAgent?: string;
24
+ /** Request path */
25
+ path?: string;
26
+ /** Request method */
27
+ method?: string;
28
+ /** Additional metadata */
29
+ metadata?: Record<string, unknown>;
30
+ }
31
+ /**
32
+ * Generate a new request ID
33
+ * Uses UUID v4 for guaranteed uniqueness
34
+ */
35
+ export declare function generateRequestId(): string;
36
+ /**
37
+ * Get the current request context
38
+ * Returns undefined if not in a request context
39
+ */
40
+ export declare function getRequestContext(): RequestContext | undefined;
41
+ /**
42
+ * Get the current request ID
43
+ * Returns undefined if not in a request context
44
+ */
45
+ export declare function getRequestId(): string | undefined;
46
+ /**
47
+ * Run a function within a request context
48
+ *
49
+ * @param context - Request context data
50
+ * @param fn - Function to run within the context
51
+ * @returns Result of the function
52
+ *
53
+ * @example
54
+ * ```typescript
55
+ * await runInRequestContext(
56
+ * {
57
+ * requestId: generateRequestId(),
58
+ * startTime: Date.now(),
59
+ * userId: 'user-123',
60
+ * path: '/api/users',
61
+ * method: 'GET',
62
+ * },
63
+ * async () => {
64
+ * // All code here has access to request context
65
+ * const requestId = getRequestId()
66
+ * logger.info('Processing request', { requestId })
67
+ * }
68
+ * )
69
+ * ```
70
+ */
71
+ export declare function runInRequestContext<T>(context: RequestContext, fn: () => T): T;
72
+ /**
73
+ * Update the current request context with additional data
74
+ *
75
+ * @param updates - Partial context updates to merge
76
+ *
77
+ * @example
78
+ * ```typescript
79
+ * updateRequestContext({ userId: 'user-123' })
80
+ * ```
81
+ */
82
+ export declare function updateRequestContext(updates: Partial<RequestContext>): void;
83
+ /**
84
+ * Extract request ID from various header formats
85
+ *
86
+ * Checks multiple common header names:
87
+ * - x-request-id (standard)
88
+ * - x-correlation-id (correlation pattern)
89
+ * - x-trace-id (OpenTelemetry)
90
+ * - request-id (simple)
91
+ *
92
+ * @param headers - Request headers (any format)
93
+ * @returns Request ID or undefined
94
+ */
95
+ export declare function extractRequestId(headers: Record<string, string | string[] | undefined>): string | undefined;
96
+ /**
97
+ * Create request context from HTTP request
98
+ *
99
+ * @param options - Request information
100
+ * @returns Request context
101
+ *
102
+ * @example
103
+ * ```typescript
104
+ * const context = createRequestContext({
105
+ * headers: request.headers,
106
+ * path: request.url,
107
+ * method: request.method,
108
+ * ip: request.ip,
109
+ * })
110
+ * ```
111
+ */
112
+ export declare function createRequestContext(options: {
113
+ headers?: Record<string, string | string[] | undefined>;
114
+ path?: string;
115
+ method?: string;
116
+ ip?: string;
117
+ userId?: string;
118
+ }): RequestContext;
119
+ /**
120
+ * Get request duration in milliseconds
121
+ *
122
+ * @returns Duration in ms, or undefined if not in request context
123
+ */
124
+ export declare function getRequestDuration(): number | undefined;
125
+ /**
126
+ * Request context headers for propagating across services
127
+ *
128
+ * Use these when making HTTP requests to other services to maintain trace continuity
129
+ *
130
+ * @returns Headers object with request ID
131
+ *
132
+ * @example
133
+ * ```typescript
134
+ * const response = await fetch('https://api.example.com/users', {
135
+ * headers: {
136
+ * ...getRequestHeaders(),
137
+ * 'Authorization': 'Bearer token',
138
+ * }
139
+ * })
140
+ * ```
141
+ */
142
+ export declare function getRequestHeaders(): Record<string, string>;
143
+ //# sourceMappingURL=request-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-context.d.ts","sourceRoot":"","sources":["../../src/utils/request-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAA;IAEjB,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAA;IAEjB,iCAAiC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf,iBAAiB;IACjB,EAAE,CAAC,EAAE,MAAM,CAAA;IAEX,iBAAiB;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,mBAAmB;IACnB,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb,qBAAqB;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACnC;AAQD;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,cAAc,GAAG,SAAS,CAE9D;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,MAAM,GAAG,SAAS,CAEjD;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAE9E;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAK3E;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,GACrD,MAAM,GAAG,SAAS,CAWpB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAA;IACvD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,GAAG,cAAc,CAajB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,SAAS,CAKvD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAO1D"}
@@ -0,0 +1,168 @@
1
+ /**
2
+ * Request Context Management
3
+ *
4
+ * Provides request ID generation and context propagation for distributed tracing.
5
+ * Request IDs enable tracking a single request across multiple services and logs.
6
+ *
7
+ * WARNING: This module uses Node.js-specific APIs (async_hooks, crypto).
8
+ * Do NOT import in client-side code or edge runtime.
9
+ */
10
+ import { AsyncLocalStorage } from 'node:async_hooks';
11
+ import { randomUUID } from 'node:crypto';
12
+ /**
13
+ * AsyncLocalStorage for request context
14
+ * Provides request-scoped storage without passing context through every function
15
+ */
16
+ const requestContextStorage = new AsyncLocalStorage();
17
+ /**
18
+ * Generate a new request ID
19
+ * Uses UUID v4 for guaranteed uniqueness
20
+ */
21
+ export function generateRequestId() {
22
+ return randomUUID();
23
+ }
24
+ /**
25
+ * Get the current request context
26
+ * Returns undefined if not in a request context
27
+ */
28
+ export function getRequestContext() {
29
+ return requestContextStorage.getStore();
30
+ }
31
+ /**
32
+ * Get the current request ID
33
+ * Returns undefined if not in a request context
34
+ */
35
+ export function getRequestId() {
36
+ return getRequestContext()?.requestId;
37
+ }
38
+ /**
39
+ * Run a function within a request context
40
+ *
41
+ * @param context - Request context data
42
+ * @param fn - Function to run within the context
43
+ * @returns Result of the function
44
+ *
45
+ * @example
46
+ * ```typescript
47
+ * await runInRequestContext(
48
+ * {
49
+ * requestId: generateRequestId(),
50
+ * startTime: Date.now(),
51
+ * userId: 'user-123',
52
+ * path: '/api/users',
53
+ * method: 'GET',
54
+ * },
55
+ * async () => {
56
+ * // All code here has access to request context
57
+ * const requestId = getRequestId()
58
+ * logger.info('Processing request', { requestId })
59
+ * }
60
+ * )
61
+ * ```
62
+ */
63
+ export function runInRequestContext(context, fn) {
64
+ return requestContextStorage.run(context, fn);
65
+ }
66
+ /**
67
+ * Update the current request context with additional data
68
+ *
69
+ * @param updates - Partial context updates to merge
70
+ *
71
+ * @example
72
+ * ```typescript
73
+ * updateRequestContext({ userId: 'user-123' })
74
+ * ```
75
+ */
76
+ export function updateRequestContext(updates) {
77
+ const current = getRequestContext();
78
+ if (current) {
79
+ Object.assign(current, updates);
80
+ }
81
+ }
82
+ /**
83
+ * Extract request ID from various header formats
84
+ *
85
+ * Checks multiple common header names:
86
+ * - x-request-id (standard)
87
+ * - x-correlation-id (correlation pattern)
88
+ * - x-trace-id (OpenTelemetry)
89
+ * - request-id (simple)
90
+ *
91
+ * @param headers - Request headers (any format)
92
+ * @returns Request ID or undefined
93
+ */
94
+ export function extractRequestId(headers) {
95
+ const headerNames = ['x-request-id', 'x-correlation-id', 'x-trace-id', 'request-id'];
96
+ for (const name of headerNames) {
97
+ const value = headers[name];
98
+ if (value) {
99
+ return Array.isArray(value) ? value[0] : value;
100
+ }
101
+ }
102
+ return undefined;
103
+ }
104
+ /**
105
+ * Create request context from HTTP request
106
+ *
107
+ * @param options - Request information
108
+ * @returns Request context
109
+ *
110
+ * @example
111
+ * ```typescript
112
+ * const context = createRequestContext({
113
+ * headers: request.headers,
114
+ * path: request.url,
115
+ * method: request.method,
116
+ * ip: request.ip,
117
+ * })
118
+ * ```
119
+ */
120
+ export function createRequestContext(options) {
121
+ // Try to extract existing request ID from headers, or generate new one
122
+ const requestId = options.headers ? extractRequestId(options.headers) : undefined;
123
+ return {
124
+ requestId: requestId || generateRequestId(),
125
+ startTime: Date.now(),
126
+ path: options.path,
127
+ method: options.method,
128
+ ip: options.ip,
129
+ userId: options.userId,
130
+ userAgent: options.headers?.['user-agent'],
131
+ };
132
+ }
133
+ /**
134
+ * Get request duration in milliseconds
135
+ *
136
+ * @returns Duration in ms, or undefined if not in request context
137
+ */
138
+ export function getRequestDuration() {
139
+ const context = getRequestContext();
140
+ if (!context)
141
+ return undefined;
142
+ return Date.now() - context.startTime;
143
+ }
144
+ /**
145
+ * Request context headers for propagating across services
146
+ *
147
+ * Use these when making HTTP requests to other services to maintain trace continuity
148
+ *
149
+ * @returns Headers object with request ID
150
+ *
151
+ * @example
152
+ * ```typescript
153
+ * const response = await fetch('https://api.example.com/users', {
154
+ * headers: {
155
+ * ...getRequestHeaders(),
156
+ * 'Authorization': 'Bearer token',
157
+ * }
158
+ * })
159
+ * ```
160
+ */
161
+ export function getRequestHeaders() {
162
+ const requestId = getRequestId();
163
+ if (!requestId)
164
+ return {};
165
+ return {
166
+ 'x-request-id': requestId,
167
+ };
168
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Request Header Utilities
3
+ *
4
+ * Utilities for extracting headers from RevealRequest objects.
5
+ * Handles various header types (Headers, Map, plain object).
6
+ */
7
+ import type { RevealRequest } from '../types/index.js';
8
+ /**
9
+ * Extract authorization header from request
10
+ *
11
+ * @param req - RevealRequest object
12
+ * @returns Authorization header value or null if not found
13
+ */
14
+ export declare function extractAuthHeader(req?: RevealRequest): string | null;
15
+ //# sourceMappingURL=request-headers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-headers.d.ts","sourceRoot":"","sources":["../../src/utils/request-headers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEtD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,CAAC,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CAqBpE"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Request Header Utilities
3
+ *
4
+ * Utilities for extracting headers from RevealRequest objects.
5
+ * Handles various header types (Headers, Map, plain object).
6
+ */
7
+ /**
8
+ * Extract authorization header from request
9
+ *
10
+ * @param req - RevealRequest object
11
+ * @returns Authorization header value or null if not found
12
+ */
13
+ export function extractAuthHeader(req) {
14
+ if (!req?.headers) {
15
+ return null;
16
+ }
17
+ let authHeader;
18
+ // Handle Headers object
19
+ if (req.headers instanceof Headers) {
20
+ authHeader = req.headers.get('authorization') || undefined;
21
+ }
22
+ // Handle Map object (used in tests) - type cast to avoid TS error
23
+ else if (req.headers instanceof Map) {
24
+ authHeader = req.headers.get('authorization') || undefined;
25
+ }
26
+ // Handle plain object with authorization property
27
+ else if (typeof req.headers === 'object' && 'authorization' in req.headers) {
28
+ authHeader = req.headers.authorization;
29
+ }
30
+ return authHeader || null;
31
+ }
@@ -0,0 +1,10 @@
1
+ import type { Field, SelectType } from '../types/index.js';
2
+ /**
3
+ * Strips unselected fields from a document based on select configuration
4
+ */
5
+ export declare const stripUnselectedFields: ({ field, select, siblingDoc, }: {
6
+ field: Field;
7
+ select: SelectType;
8
+ siblingDoc: Record<string, unknown>;
9
+ }) => void;
10
+ //# sourceMappingURL=stripUnselectedFields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stripUnselectedFields.d.ts","sourceRoot":"","sources":["../../src/utils/stripUnselectedFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE1D;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAAI,gCAInC;IACD,KAAK,EAAE,KAAK,CAAA;IACZ,MAAM,EAAE,UAAU,CAAA;IAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC,KAAG,IAgBH,CAAA"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Strips unselected fields from a document based on select configuration
3
+ */
4
+ export const stripUnselectedFields = ({ field, select, siblingDoc, }) => {
5
+ if (!select || typeof select !== 'object')
6
+ return;
7
+ const fieldName = field.name || '';
8
+ if (!fieldName)
9
+ return;
10
+ const fieldValue = siblingDoc[fieldName];
11
+ // Only process if field value is an object (not primitive types)
12
+ if (fieldValue && typeof fieldValue === 'object' && !Array.isArray(fieldValue)) {
13
+ const fieldValueRecord = fieldValue;
14
+ for (const key of Object.keys(fieldValueRecord)) {
15
+ if (!(key in select)) {
16
+ Reflect.deleteProperty(fieldValueRecord, key);
17
+ }
18
+ }
19
+ }
20
+ };
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Type Guard Utilities
3
+ *
4
+ * Utilities for checking field types and JSON field detection.
5
+ * The Field interface already includes hasMany, so simple checks are sufficient.
6
+ */
7
+ import type { Field } from '@revealui/contracts/cms';
8
+ import type { RevealUIField } from '../types/extensions.js';
9
+ /**
10
+ * Check if a field should be stored as JSON
11
+ *
12
+ * JSON fields include:
13
+ * - Complex types (array, group, blocks, richText)
14
+ * - Select fields with hasMany
15
+ * - Relationship fields with hasMany (stored as JSON array)
16
+ *
17
+ * Note: Field extends FieldStructure which has 'type' and 'hasMany' properties.
18
+ */
19
+ export declare function isJsonFieldType(field: RevealUIField | Field): boolean;
20
+ /**
21
+ * Flatten all named fields from a fields array, recursing into tabs and row containers.
22
+ * This ensures nested fields (e.g. inside a `tabs` field) are included when building
23
+ * the JSON field name set for INSERT/UPDATE queries.
24
+ */
25
+ export declare function flattenFields(fields: (RevealUIField | Field)[]): (RevealUIField | Field)[];
26
+ /**
27
+ * Type guard to check if a value is a plain object (not null, array, or Date)
28
+ *
29
+ * @param item - Value to check
30
+ * @returns True if value is a plain object
31
+ */
32
+ export declare function isObject(item: unknown): item is Record<string, unknown>;
33
+ //# sourceMappingURL=type-guards.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type-guards.d.ts","sourceRoot":"","sources":["../../src/utils/type-guards.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAE3D;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,KAAK,GAAG,OAAO,CAiBrE;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,CAAC,aAAa,GAAG,KAAK,CAAC,EAAE,GAAG,CAAC,aAAa,GAAG,KAAK,CAAC,EAAE,CAgB1F;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEvE"}