index.ts 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. "use client";
  2. // =============================================================================
  3. // @json-render/next — Client exports
  4. //
  5. // This entry point includes client components and is safe to import
  6. // in "use client" modules and Next.js pages/layouts.
  7. // =============================================================================
  8. // Provider
  9. export {
  10. NextAppProvider,
  11. useNextApp,
  12. type NextAppProviderProps,
  13. type NextAppContextValue,
  14. } from "./components/provider";
  15. // Page renderer
  16. export {
  17. PageRenderer,
  18. type PageRendererProps,
  19. } from "./components/page-renderer";
  20. // Error boundary
  21. export {
  22. NextErrorBoundary,
  23. type NextErrorBoundaryProps,
  24. } from "./components/error-boundary";
  25. // Loading
  26. export {
  27. NextLoading,
  28. type NextLoadingProps,
  29. } from "./components/loading-renderer";
  30. // Not found
  31. export { NextNotFound } from "./components/not-found-renderer";
  32. // Link component
  33. export { Link, type LinkProps } from "./components/link";
  34. // Types (re-exported for convenience)
  35. export type {
  36. NextAppSpec,
  37. NextRouteSpec,
  38. NextMetadata,
  39. MatchedRoute,
  40. LoaderFn,
  41. CreateNextAppOptions,
  42. NextAppExports,
  43. PageData,
  44. } from "./types";
  45. // Catalog types (re-exported from @json-render/react)
  46. export type {
  47. EventHandle,
  48. BaseComponentProps,
  49. SetState,
  50. StateModel,
  51. ComponentContext,
  52. ComponentFn,
  53. Components,
  54. ActionFn,
  55. Actions,
  56. } from "./catalog-types";
  57. // Core types (re-exported for convenience)
  58. export type { Spec, StateStore } from "@json-render/core";
  59. export { createStateStore } from "@json-render/core";
  60. export type {
  61. ComponentRegistry,
  62. ComponentRenderProps,
  63. } from "@json-render/react";