@btst/stack 1.5.2 → 1.6.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 (201) hide show
  1. package/dist/node_modules/.pnpm/@dnd-kit_accessibility@3.1.1_react@19.2.0/node_modules/@dnd-kit/accessibility/dist/accessibility.esm.cjs +68 -0
  2. package/dist/node_modules/.pnpm/@dnd-kit_accessibility@3.1.1_react@19.2.0/node_modules/@dnd-kit/accessibility/dist/accessibility.esm.mjs +60 -0
  3. package/dist/node_modules/.pnpm/@dnd-kit_core@6.3.1_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/@dnd-kit/core/dist/core.esm.cjs +3937 -0
  4. package/dist/node_modules/.pnpm/@dnd-kit_core@6.3.1_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/@dnd-kit/core/dist/core.esm.mjs +3907 -0
  5. package/dist/node_modules/.pnpm/@dnd-kit_modifiers@9.0.0_@dnd-kit_core@6.3.1_react-dom@19.2.0_react@19.2.0__react@19.2.0__react@19.2.0/node_modules/@dnd-kit/modifiers/dist/modifiers.esm.cjs +30 -0
  6. package/dist/node_modules/.pnpm/@dnd-kit_modifiers@9.0.0_@dnd-kit_core@6.3.1_react-dom@19.2.0_react@19.2.0__react@19.2.0__react@19.2.0/node_modules/@dnd-kit/modifiers/dist/modifiers.esm.mjs +28 -0
  7. package/dist/node_modules/.pnpm/@dnd-kit_sortable@10.0.0_@dnd-kit_core@6.3.1_react-dom@19.2.0_react@19.2.0__react@19.2.0__react@19.2.0/node_modules/@dnd-kit/sortable/dist/sortable.esm.cjs +675 -0
  8. package/dist/node_modules/.pnpm/@dnd-kit_sortable@10.0.0_@dnd-kit_core@6.3.1_react-dom@19.2.0_react@19.2.0__react@19.2.0__react@19.2.0/node_modules/@dnd-kit/sortable/dist/sortable.esm.mjs +661 -0
  9. package/dist/node_modules/.pnpm/@dnd-kit_utilities@3.2.2_react@19.2.0/node_modules/@dnd-kit/utilities/dist/utilities.esm.cjs +358 -0
  10. package/dist/node_modules/.pnpm/@dnd-kit_utilities@3.2.2_react@19.2.0/node_modules/@dnd-kit/utilities/dist/utilities.esm.mjs +332 -0
  11. package/dist/node_modules/.pnpm/@radix-ui_react-tabs@1.1.13_@types_react-dom@19.2.3_@types_react@19.2.6__@types_react@1_865f042350eb43f3338b0fffb33f6246/node_modules/@radix-ui/react-tabs/dist/index.cjs +211 -0
  12. package/dist/node_modules/.pnpm/@radix-ui_react-tabs@1.1.13_@types_react-dom@19.2.3_@types_react@19.2.6__@types_react@1_865f042350eb43f3338b0fffb33f6246/node_modules/@radix-ui/react-tabs/dist/index.mjs +188 -0
  13. package/dist/packages/better-stack/src/plugins/cms/api/plugin.cjs +3 -2
  14. package/dist/packages/better-stack/src/plugins/cms/api/plugin.mjs +3 -2
  15. package/dist/packages/better-stack/src/plugins/cms/client/components/forms/content-form.cjs +15 -15
  16. package/dist/packages/better-stack/src/plugins/cms/client/components/forms/content-form.mjs +16 -16
  17. package/dist/packages/better-stack/src/plugins/form-builder/api/plugin.cjs +588 -0
  18. package/dist/packages/better-stack/src/plugins/form-builder/api/plugin.mjs +586 -0
  19. package/dist/packages/better-stack/src/plugins/form-builder/client/components/forms/form-renderer.cjs +131 -0
  20. package/dist/packages/better-stack/src/plugins/form-builder/client/components/forms/form-renderer.mjs +129 -0
  21. package/dist/packages/better-stack/src/plugins/form-builder/client/components/loading/form-builder-skeleton.cjs +32 -0
  22. package/dist/packages/better-stack/src/plugins/form-builder/client/components/loading/form-builder-skeleton.mjs +30 -0
  23. package/dist/packages/better-stack/src/plugins/form-builder/client/components/loading/form-list-skeleton.cjs +21 -0
  24. package/dist/packages/better-stack/src/plugins/form-builder/client/components/loading/form-list-skeleton.mjs +19 -0
  25. package/dist/packages/better-stack/src/plugins/form-builder/client/components/loading/submissions-skeleton.cjs +34 -0
  26. package/dist/packages/better-stack/src/plugins/form-builder/client/components/loading/submissions-skeleton.mjs +32 -0
  27. package/dist/packages/better-stack/src/plugins/form-builder/client/components/pages/404-page.cjs +20 -0
  28. package/dist/packages/better-stack/src/plugins/form-builder/client/components/pages/404-page.mjs +18 -0
  29. package/dist/packages/better-stack/src/plugins/form-builder/client/components/pages/form-builder-page.cjs +19 -0
  30. package/dist/packages/better-stack/src/plugins/form-builder/client/components/pages/form-builder-page.internal.cjs +186 -0
  31. package/dist/packages/better-stack/src/plugins/form-builder/client/components/pages/form-builder-page.internal.mjs +184 -0
  32. package/dist/packages/better-stack/src/plugins/form-builder/client/components/pages/form-builder-page.mjs +17 -0
  33. package/dist/packages/better-stack/src/plugins/form-builder/client/components/pages/form-list-page.cjs +19 -0
  34. package/dist/packages/better-stack/src/plugins/form-builder/client/components/pages/form-list-page.internal.cjs +165 -0
  35. package/dist/packages/better-stack/src/plugins/form-builder/client/components/pages/form-list-page.internal.mjs +163 -0
  36. package/dist/packages/better-stack/src/plugins/form-builder/client/components/pages/form-list-page.mjs +17 -0
  37. package/dist/packages/better-stack/src/plugins/form-builder/client/components/pages/submissions-page.cjs +19 -0
  38. package/dist/packages/better-stack/src/plugins/form-builder/client/components/pages/submissions-page.internal.cjs +177 -0
  39. package/dist/packages/better-stack/src/plugins/form-builder/client/components/pages/submissions-page.internal.mjs +175 -0
  40. package/dist/packages/better-stack/src/plugins/form-builder/client/components/pages/submissions-page.mjs +17 -0
  41. package/dist/packages/better-stack/src/plugins/form-builder/client/components/shared/default-error.cjs +17 -0
  42. package/dist/packages/better-stack/src/plugins/form-builder/client/components/shared/default-error.mjs +15 -0
  43. package/dist/packages/better-stack/src/plugins/form-builder/client/components/shared/empty-state.cjs +16 -0
  44. package/dist/packages/better-stack/src/plugins/form-builder/client/components/shared/empty-state.mjs +14 -0
  45. package/dist/packages/better-stack/src/plugins/form-builder/client/components/shared/page-wrapper.cjs +27 -0
  46. package/dist/packages/better-stack/src/plugins/form-builder/client/components/shared/page-wrapper.mjs +25 -0
  47. package/dist/packages/better-stack/src/plugins/form-builder/client/components/shared/pagination.cjs +39 -0
  48. package/dist/packages/better-stack/src/plugins/form-builder/client/components/shared/pagination.mjs +37 -0
  49. package/dist/packages/better-stack/src/plugins/form-builder/client/hooks/form-builder-hooks.cjs +551 -0
  50. package/dist/packages/better-stack/src/plugins/form-builder/client/hooks/form-builder-hooks.mjs +537 -0
  51. package/dist/packages/better-stack/src/plugins/form-builder/client/localization/form-builder-common.cjs +36 -0
  52. package/dist/packages/better-stack/src/plugins/form-builder/client/localization/form-builder-common.mjs +34 -0
  53. package/dist/packages/better-stack/src/plugins/form-builder/client/localization/form-builder-editor.cjs +19 -0
  54. package/dist/packages/better-stack/src/plugins/form-builder/client/localization/form-builder-editor.mjs +17 -0
  55. package/dist/packages/better-stack/src/plugins/form-builder/client/localization/form-builder-list.cjs +21 -0
  56. package/dist/packages/better-stack/src/plugins/form-builder/client/localization/form-builder-list.mjs +19 -0
  57. package/dist/packages/better-stack/src/plugins/form-builder/client/localization/form-builder-submissions.cjs +19 -0
  58. package/dist/packages/better-stack/src/plugins/form-builder/client/localization/form-builder-submissions.mjs +17 -0
  59. package/dist/packages/better-stack/src/plugins/form-builder/client/localization/form-builder-toasts.cjs +14 -0
  60. package/dist/packages/better-stack/src/plugins/form-builder/client/localization/form-builder-toasts.mjs +12 -0
  61. package/dist/packages/better-stack/src/plugins/form-builder/client/localization/index.cjs +17 -0
  62. package/dist/packages/better-stack/src/plugins/form-builder/client/localization/index.mjs +15 -0
  63. package/dist/packages/better-stack/src/plugins/form-builder/client/plugin.cjs +278 -0
  64. package/dist/packages/better-stack/src/plugins/form-builder/client/plugin.mjs +276 -0
  65. package/dist/packages/better-stack/src/plugins/form-builder/db.cjs +99 -0
  66. package/dist/packages/better-stack/src/plugins/form-builder/db.mjs +97 -0
  67. package/dist/packages/better-stack/src/plugins/form-builder/schemas.cjs +82 -0
  68. package/dist/packages/better-stack/src/plugins/form-builder/schemas.mjs +74 -0
  69. package/dist/packages/better-stack/src/plugins/form-builder/utils.cjs +37 -0
  70. package/dist/packages/better-stack/src/plugins/form-builder/utils.mjs +29 -0
  71. package/dist/packages/ui/src/components/auto-form/index.cjs +2 -12
  72. package/dist/packages/ui/src/components/auto-form/index.mjs +2 -9
  73. package/dist/packages/ui/src/components/auto-form/stepped-auto-form.cjs +377 -0
  74. package/dist/packages/ui/src/components/auto-form/stepped-auto-form.mjs +368 -0
  75. package/dist/packages/ui/src/components/auto-form/utils.cjs +1 -56
  76. package/dist/packages/ui/src/components/auto-form/utils.mjs +2 -56
  77. package/dist/packages/ui/src/components/form-builder/canvas.cjs +111 -0
  78. package/dist/packages/ui/src/components/form-builder/canvas.mjs +109 -0
  79. package/dist/packages/ui/src/components/form-builder/components/index.cjs +570 -0
  80. package/dist/packages/ui/src/components/form-builder/components/index.mjs +553 -0
  81. package/dist/packages/ui/src/components/form-builder/edit-field-dialog.cjs +131 -0
  82. package/dist/packages/ui/src/components/form-builder/edit-field-dialog.mjs +129 -0
  83. package/dist/packages/ui/src/components/form-builder/form-preview.cjs +73 -0
  84. package/dist/packages/ui/src/components/form-builder/form-preview.mjs +71 -0
  85. package/dist/packages/ui/src/components/form-builder/index.cjs +353 -0
  86. package/dist/packages/ui/src/components/form-builder/index.mjs +344 -0
  87. package/dist/packages/ui/src/components/form-builder/nested-field-editor-dialog.cjs +263 -0
  88. package/dist/packages/ui/src/components/form-builder/nested-field-editor-dialog.mjs +261 -0
  89. package/dist/packages/ui/src/components/form-builder/palette.cjs +52 -0
  90. package/dist/packages/ui/src/components/form-builder/palette.mjs +49 -0
  91. package/dist/packages/ui/src/components/form-builder/schema-utils.cjs +120 -0
  92. package/dist/packages/ui/src/components/form-builder/schema-utils.mjs +114 -0
  93. package/dist/packages/ui/src/components/form-builder/sortable-field.cjs +151 -0
  94. package/dist/packages/ui/src/components/form-builder/sortable-field.mjs +148 -0
  95. package/dist/packages/ui/src/components/form-builder/step-tabs.cjs +180 -0
  96. package/dist/packages/ui/src/components/form-builder/step-tabs.mjs +178 -0
  97. package/dist/packages/ui/src/components/form-builder/types.cjs +7 -0
  98. package/dist/packages/ui/src/components/form-builder/types.mjs +5 -0
  99. package/dist/packages/ui/src/components/form-builder/validation-schemas.cjs +67 -0
  100. package/dist/packages/ui/src/components/form-builder/validation-schemas.mjs +56 -0
  101. package/dist/packages/ui/src/components/tabs.cjs +70 -0
  102. package/dist/packages/ui/src/components/tabs.mjs +65 -0
  103. package/dist/packages/ui/src/lib/schema-converter.cjs +130 -0
  104. package/dist/packages/ui/src/lib/schema-converter.mjs +124 -0
  105. package/dist/plugins/blog/api/index.d.cts +1 -1
  106. package/dist/plugins/blog/api/index.d.mts +1 -1
  107. package/dist/plugins/blog/api/index.d.ts +1 -1
  108. package/dist/plugins/blog/client/hooks/index.d.cts +2 -2
  109. package/dist/plugins/blog/client/hooks/index.d.mts +2 -2
  110. package/dist/plugins/blog/client/hooks/index.d.ts +2 -2
  111. package/dist/plugins/blog/client/index.d.cts +1 -1
  112. package/dist/plugins/blog/client/index.d.mts +1 -1
  113. package/dist/plugins/blog/client/index.d.ts +1 -1
  114. package/dist/plugins/blog/query-keys.d.cts +2 -2
  115. package/dist/plugins/blog/query-keys.d.mts +2 -2
  116. package/dist/plugins/blog/query-keys.d.ts +2 -2
  117. package/dist/plugins/cms/client/index.cjs +6 -0
  118. package/dist/plugins/cms/client/index.d.cts +6 -113
  119. package/dist/plugins/cms/client/index.d.mts +6 -113
  120. package/dist/plugins/cms/client/index.d.ts +6 -113
  121. package/dist/plugins/cms/client/index.mjs +1 -0
  122. package/dist/plugins/form-builder/api/index.cjs +7 -0
  123. package/dist/plugins/form-builder/api/index.d.cts +141 -0
  124. package/dist/plugins/form-builder/api/index.d.mts +141 -0
  125. package/dist/plugins/form-builder/api/index.d.ts +141 -0
  126. package/dist/plugins/form-builder/api/index.mjs +1 -0
  127. package/dist/plugins/form-builder/client/components/index.cjs +29 -0
  128. package/dist/plugins/form-builder/client/components/index.d.cts +93 -0
  129. package/dist/plugins/form-builder/client/components/index.d.mts +93 -0
  130. package/dist/plugins/form-builder/client/components/index.d.ts +93 -0
  131. package/dist/plugins/form-builder/client/components/index.mjs +18 -0
  132. package/dist/plugins/form-builder/client/hooks/index.cjs +19 -0
  133. package/dist/plugins/form-builder/client/hooks/index.d.cts +154 -0
  134. package/dist/plugins/form-builder/client/hooks/index.d.mts +154 -0
  135. package/dist/plugins/form-builder/client/hooks/index.d.ts +154 -0
  136. package/dist/plugins/form-builder/client/hooks/index.mjs +1 -0
  137. package/dist/plugins/form-builder/client/index.cjs +13 -0
  138. package/dist/plugins/form-builder/client/index.d.cts +381 -0
  139. package/dist/plugins/form-builder/client/index.d.mts +381 -0
  140. package/dist/plugins/form-builder/client/index.d.ts +381 -0
  141. package/dist/plugins/form-builder/client/index.mjs +2 -0
  142. package/dist/plugins/form-builder/client.css +3 -0
  143. package/dist/plugins/form-builder/query-keys.cjs +143 -0
  144. package/dist/plugins/form-builder/query-keys.d.cts +74 -0
  145. package/dist/plugins/form-builder/query-keys.d.mts +74 -0
  146. package/dist/plugins/form-builder/query-keys.d.ts +74 -0
  147. package/dist/plugins/form-builder/query-keys.mjs +141 -0
  148. package/dist/plugins/form-builder/style.css +19 -0
  149. package/dist/shared/stack.AX5nZ6A3.d.cts +86 -0
  150. package/dist/shared/stack.AX5nZ6A3.d.mts +86 -0
  151. package/dist/shared/stack.AX5nZ6A3.d.ts +86 -0
  152. package/dist/shared/stack.BIh2AXaW.d.cts +123 -0
  153. package/dist/shared/stack.BIh2AXaW.d.mts +123 -0
  154. package/dist/shared/stack.BIh2AXaW.d.ts +123 -0
  155. package/dist/shared/stack.DzH_wcvr.d.cts +195 -0
  156. package/dist/shared/stack.DzH_wcvr.d.mts +195 -0
  157. package/dist/shared/stack.DzH_wcvr.d.ts +195 -0
  158. package/package.json +54 -1
  159. package/src/plugins/cms/api/plugin.ts +9 -4
  160. package/src/plugins/cms/client/components/forms/content-form.tsx +23 -25
  161. package/src/plugins/cms/client/index.ts +11 -0
  162. package/src/plugins/form-builder/api/index.ts +1 -0
  163. package/src/plugins/form-builder/api/plugin.ts +776 -0
  164. package/src/plugins/form-builder/client/components/forms/form-renderer.tsx +253 -0
  165. package/src/plugins/form-builder/client/components/index.tsx +24 -0
  166. package/src/plugins/form-builder/client/components/loading/form-builder-skeleton.tsx +42 -0
  167. package/src/plugins/form-builder/client/components/loading/form-list-skeleton.tsx +25 -0
  168. package/src/plugins/form-builder/client/components/loading/index.tsx +3 -0
  169. package/src/plugins/form-builder/client/components/loading/submissions-skeleton.tsx +40 -0
  170. package/src/plugins/form-builder/client/components/pages/404-page.tsx +28 -0
  171. package/src/plugins/form-builder/client/components/pages/form-builder-page.internal.tsx +253 -0
  172. package/src/plugins/form-builder/client/components/pages/form-builder-page.tsx +26 -0
  173. package/src/plugins/form-builder/client/components/pages/form-list-page.internal.tsx +231 -0
  174. package/src/plugins/form-builder/client/components/pages/form-list-page.tsx +22 -0
  175. package/src/plugins/form-builder/client/components/pages/submissions-page.internal.tsx +268 -0
  176. package/src/plugins/form-builder/client/components/pages/submissions-page.tsx +26 -0
  177. package/src/plugins/form-builder/client/components/shared/default-error.tsx +30 -0
  178. package/src/plugins/form-builder/client/components/shared/empty-state.tsx +26 -0
  179. package/src/plugins/form-builder/client/components/shared/page-wrapper.tsx +32 -0
  180. package/src/plugins/form-builder/client/components/shared/pagination.tsx +52 -0
  181. package/src/plugins/form-builder/client/hooks/form-builder-hooks.tsx +799 -0
  182. package/src/plugins/form-builder/client/hooks/index.tsx +1 -0
  183. package/src/plugins/form-builder/client/index.ts +22 -0
  184. package/src/plugins/form-builder/client/localization/form-builder-common.ts +36 -0
  185. package/src/plugins/form-builder/client/localization/form-builder-editor.ts +18 -0
  186. package/src/plugins/form-builder/client/localization/form-builder-list.ts +17 -0
  187. package/src/plugins/form-builder/client/localization/form-builder-submissions.ts +17 -0
  188. package/src/plugins/form-builder/client/localization/form-builder-toasts.ts +10 -0
  189. package/src/plugins/form-builder/client/localization/index.ts +15 -0
  190. package/src/plugins/form-builder/client/overrides.ts +146 -0
  191. package/src/plugins/form-builder/client/plugin.tsx +488 -0
  192. package/src/plugins/form-builder/client.css +3 -0
  193. package/src/plugins/form-builder/db.ts +99 -0
  194. package/src/plugins/form-builder/query-keys.ts +198 -0
  195. package/src/plugins/form-builder/schemas.ts +122 -0
  196. package/src/plugins/form-builder/style.css +19 -0
  197. package/src/plugins/form-builder/types.ts +317 -0
  198. package/src/plugins/form-builder/utils.ts +63 -0
  199. package/dist/shared/{stack.DLhzx1-D.d.cts → stack.CcI4sYJP.d.cts} +1 -1
  200. package/dist/shared/{stack.DLhzx1-D.d.mts → stack.CcI4sYJP.d.mts} +1 -1
  201. package/dist/shared/{stack.DLhzx1-D.d.ts → stack.CcI4sYJP.d.ts} +1 -1
@@ -0,0 +1,154 @@
1
+ import * as _tanstack_react_query from '@tanstack/react-query';
2
+ import { S as SerializedForm, a as SerializedFormSubmission, b as SerializedFormSubmissionWithData } from '../../../../shared/stack.DzH_wcvr.cjs';
3
+
4
+ interface UseFormsOptions {
5
+ /** Filter by status */
6
+ status?: "active" | "inactive" | "archived";
7
+ /** Number of items per page (default: 20) */
8
+ limit?: number;
9
+ /** Whether to enable the query (default: true) */
10
+ enabled?: boolean;
11
+ }
12
+ interface UseFormsResult {
13
+ forms: SerializedForm[];
14
+ total: number;
15
+ isLoading: boolean;
16
+ error: Error | null;
17
+ loadMore: () => void;
18
+ hasMore: boolean;
19
+ isLoadingMore: boolean;
20
+ refetch: () => void;
21
+ }
22
+ /**
23
+ * Hook for fetching paginated forms (admin)
24
+ */
25
+ declare function useForms(options?: UseFormsOptions): UseFormsResult;
26
+ /**
27
+ * Suspense variant of useForms
28
+ */
29
+ declare function useSuspenseForms(options?: UseFormsOptions): {
30
+ forms: SerializedForm[];
31
+ total: number;
32
+ loadMore: () => Promise<unknown>;
33
+ hasMore: boolean;
34
+ isLoadingMore: boolean;
35
+ refetch: () => Promise<unknown>;
36
+ };
37
+ /**
38
+ * Hook for fetching a form by ID (admin)
39
+ */
40
+ declare function useFormById(id: string): {
41
+ form: SerializedForm | null;
42
+ isLoading: boolean;
43
+ error: Error | null;
44
+ refetch: () => void;
45
+ };
46
+ /**
47
+ * Suspense variant of useFormById
48
+ */
49
+ declare function useSuspenseFormById(id: string): {
50
+ form: SerializedForm | null;
51
+ refetch: () => Promise<unknown>;
52
+ };
53
+ /**
54
+ * Hook for fetching a form by slug (public)
55
+ */
56
+ declare function useFormBySlug(slug: string): {
57
+ form: SerializedForm | null;
58
+ isLoading: boolean;
59
+ error: Error | null;
60
+ refetch: () => void;
61
+ };
62
+ /**
63
+ * Suspense variant of useFormBySlug
64
+ */
65
+ declare function useSuspenseFormBySlug(slug: string): {
66
+ form: SerializedForm | null;
67
+ refetch: () => Promise<unknown>;
68
+ };
69
+ interface CreateFormInput {
70
+ name: string;
71
+ slug: string;
72
+ description?: string;
73
+ schema: string;
74
+ successMessage?: string;
75
+ redirectUrl?: string;
76
+ status?: "active" | "inactive" | "archived";
77
+ }
78
+ interface UpdateFormInput {
79
+ name?: string;
80
+ slug?: string;
81
+ description?: string;
82
+ schema?: string;
83
+ successMessage?: string;
84
+ redirectUrl?: string;
85
+ status?: "active" | "inactive" | "archived";
86
+ }
87
+ /**
88
+ * Hook for creating a form
89
+ */
90
+ declare function useCreateForm(): _tanstack_react_query.UseMutationResult<SerializedForm, Error, CreateFormInput, unknown>;
91
+ /**
92
+ * Hook for updating a form
93
+ */
94
+ declare function useUpdateForm(): _tanstack_react_query.UseMutationResult<SerializedForm, Error, {
95
+ id: string;
96
+ data: UpdateFormInput;
97
+ }, unknown>;
98
+ /**
99
+ * Hook for deleting a form
100
+ */
101
+ declare function useDeleteForm(): _tanstack_react_query.UseMutationResult<{
102
+ success: boolean;
103
+ }, Error, string, unknown>;
104
+ /**
105
+ * Hook for submitting a form (public)
106
+ */
107
+ declare function useSubmitForm(slug: string): _tanstack_react_query.UseMutationResult<SerializedFormSubmission & {
108
+ form: {
109
+ successMessage?: string;
110
+ redirectUrl?: string;
111
+ };
112
+ }, Error, {
113
+ data: Record<string, unknown>;
114
+ }, unknown>;
115
+ interface UseSubmissionsOptions {
116
+ /** Number of items per page (default: 20) */
117
+ limit?: number;
118
+ /** Whether to enable the query (default: true) */
119
+ enabled?: boolean;
120
+ }
121
+ interface UseSubmissionsResult {
122
+ submissions: SerializedFormSubmissionWithData[];
123
+ total: number;
124
+ isLoading: boolean;
125
+ error: Error | null;
126
+ loadMore: () => void;
127
+ hasMore: boolean;
128
+ isLoadingMore: boolean;
129
+ refetch: () => void;
130
+ }
131
+ /**
132
+ * Hook for fetching paginated submissions for a form (admin)
133
+ */
134
+ declare function useSubmissions(formId: string, options?: UseSubmissionsOptions): UseSubmissionsResult;
135
+ /**
136
+ * Suspense variant of useSubmissions
137
+ */
138
+ declare function useSuspenseSubmissions(formId: string, options?: UseSubmissionsOptions): {
139
+ submissions: SerializedFormSubmissionWithData[];
140
+ total: number;
141
+ loadMore: () => Promise<unknown>;
142
+ hasMore: boolean;
143
+ isLoadingMore: boolean;
144
+ refetch: () => Promise<unknown>;
145
+ };
146
+ /**
147
+ * Hook for deleting a submission
148
+ */
149
+ declare function useDeleteSubmission(formId: string): _tanstack_react_query.UseMutationResult<{
150
+ success: boolean;
151
+ }, Error, string, unknown>;
152
+
153
+ export { useCreateForm, useDeleteForm, useDeleteSubmission, useFormById, useFormBySlug, useForms, useSubmissions, useSubmitForm, useSuspenseFormById, useSuspenseFormBySlug, useSuspenseForms, useSuspenseSubmissions, useUpdateForm };
154
+ export type { CreateFormInput, UpdateFormInput, UseFormsOptions, UseFormsResult, UseSubmissionsOptions, UseSubmissionsResult };
@@ -0,0 +1,154 @@
1
+ import * as _tanstack_react_query from '@tanstack/react-query';
2
+ import { S as SerializedForm, a as SerializedFormSubmission, b as SerializedFormSubmissionWithData } from '../../../../shared/stack.DzH_wcvr.mjs';
3
+
4
+ interface UseFormsOptions {
5
+ /** Filter by status */
6
+ status?: "active" | "inactive" | "archived";
7
+ /** Number of items per page (default: 20) */
8
+ limit?: number;
9
+ /** Whether to enable the query (default: true) */
10
+ enabled?: boolean;
11
+ }
12
+ interface UseFormsResult {
13
+ forms: SerializedForm[];
14
+ total: number;
15
+ isLoading: boolean;
16
+ error: Error | null;
17
+ loadMore: () => void;
18
+ hasMore: boolean;
19
+ isLoadingMore: boolean;
20
+ refetch: () => void;
21
+ }
22
+ /**
23
+ * Hook for fetching paginated forms (admin)
24
+ */
25
+ declare function useForms(options?: UseFormsOptions): UseFormsResult;
26
+ /**
27
+ * Suspense variant of useForms
28
+ */
29
+ declare function useSuspenseForms(options?: UseFormsOptions): {
30
+ forms: SerializedForm[];
31
+ total: number;
32
+ loadMore: () => Promise<unknown>;
33
+ hasMore: boolean;
34
+ isLoadingMore: boolean;
35
+ refetch: () => Promise<unknown>;
36
+ };
37
+ /**
38
+ * Hook for fetching a form by ID (admin)
39
+ */
40
+ declare function useFormById(id: string): {
41
+ form: SerializedForm | null;
42
+ isLoading: boolean;
43
+ error: Error | null;
44
+ refetch: () => void;
45
+ };
46
+ /**
47
+ * Suspense variant of useFormById
48
+ */
49
+ declare function useSuspenseFormById(id: string): {
50
+ form: SerializedForm | null;
51
+ refetch: () => Promise<unknown>;
52
+ };
53
+ /**
54
+ * Hook for fetching a form by slug (public)
55
+ */
56
+ declare function useFormBySlug(slug: string): {
57
+ form: SerializedForm | null;
58
+ isLoading: boolean;
59
+ error: Error | null;
60
+ refetch: () => void;
61
+ };
62
+ /**
63
+ * Suspense variant of useFormBySlug
64
+ */
65
+ declare function useSuspenseFormBySlug(slug: string): {
66
+ form: SerializedForm | null;
67
+ refetch: () => Promise<unknown>;
68
+ };
69
+ interface CreateFormInput {
70
+ name: string;
71
+ slug: string;
72
+ description?: string;
73
+ schema: string;
74
+ successMessage?: string;
75
+ redirectUrl?: string;
76
+ status?: "active" | "inactive" | "archived";
77
+ }
78
+ interface UpdateFormInput {
79
+ name?: string;
80
+ slug?: string;
81
+ description?: string;
82
+ schema?: string;
83
+ successMessage?: string;
84
+ redirectUrl?: string;
85
+ status?: "active" | "inactive" | "archived";
86
+ }
87
+ /**
88
+ * Hook for creating a form
89
+ */
90
+ declare function useCreateForm(): _tanstack_react_query.UseMutationResult<SerializedForm, Error, CreateFormInput, unknown>;
91
+ /**
92
+ * Hook for updating a form
93
+ */
94
+ declare function useUpdateForm(): _tanstack_react_query.UseMutationResult<SerializedForm, Error, {
95
+ id: string;
96
+ data: UpdateFormInput;
97
+ }, unknown>;
98
+ /**
99
+ * Hook for deleting a form
100
+ */
101
+ declare function useDeleteForm(): _tanstack_react_query.UseMutationResult<{
102
+ success: boolean;
103
+ }, Error, string, unknown>;
104
+ /**
105
+ * Hook for submitting a form (public)
106
+ */
107
+ declare function useSubmitForm(slug: string): _tanstack_react_query.UseMutationResult<SerializedFormSubmission & {
108
+ form: {
109
+ successMessage?: string;
110
+ redirectUrl?: string;
111
+ };
112
+ }, Error, {
113
+ data: Record<string, unknown>;
114
+ }, unknown>;
115
+ interface UseSubmissionsOptions {
116
+ /** Number of items per page (default: 20) */
117
+ limit?: number;
118
+ /** Whether to enable the query (default: true) */
119
+ enabled?: boolean;
120
+ }
121
+ interface UseSubmissionsResult {
122
+ submissions: SerializedFormSubmissionWithData[];
123
+ total: number;
124
+ isLoading: boolean;
125
+ error: Error | null;
126
+ loadMore: () => void;
127
+ hasMore: boolean;
128
+ isLoadingMore: boolean;
129
+ refetch: () => void;
130
+ }
131
+ /**
132
+ * Hook for fetching paginated submissions for a form (admin)
133
+ */
134
+ declare function useSubmissions(formId: string, options?: UseSubmissionsOptions): UseSubmissionsResult;
135
+ /**
136
+ * Suspense variant of useSubmissions
137
+ */
138
+ declare function useSuspenseSubmissions(formId: string, options?: UseSubmissionsOptions): {
139
+ submissions: SerializedFormSubmissionWithData[];
140
+ total: number;
141
+ loadMore: () => Promise<unknown>;
142
+ hasMore: boolean;
143
+ isLoadingMore: boolean;
144
+ refetch: () => Promise<unknown>;
145
+ };
146
+ /**
147
+ * Hook for deleting a submission
148
+ */
149
+ declare function useDeleteSubmission(formId: string): _tanstack_react_query.UseMutationResult<{
150
+ success: boolean;
151
+ }, Error, string, unknown>;
152
+
153
+ export { useCreateForm, useDeleteForm, useDeleteSubmission, useFormById, useFormBySlug, useForms, useSubmissions, useSubmitForm, useSuspenseFormById, useSuspenseFormBySlug, useSuspenseForms, useSuspenseSubmissions, useUpdateForm };
154
+ export type { CreateFormInput, UpdateFormInput, UseFormsOptions, UseFormsResult, UseSubmissionsOptions, UseSubmissionsResult };
@@ -0,0 +1,154 @@
1
+ import * as _tanstack_react_query from '@tanstack/react-query';
2
+ import { S as SerializedForm, a as SerializedFormSubmission, b as SerializedFormSubmissionWithData } from '../../../../shared/stack.DzH_wcvr.js';
3
+
4
+ interface UseFormsOptions {
5
+ /** Filter by status */
6
+ status?: "active" | "inactive" | "archived";
7
+ /** Number of items per page (default: 20) */
8
+ limit?: number;
9
+ /** Whether to enable the query (default: true) */
10
+ enabled?: boolean;
11
+ }
12
+ interface UseFormsResult {
13
+ forms: SerializedForm[];
14
+ total: number;
15
+ isLoading: boolean;
16
+ error: Error | null;
17
+ loadMore: () => void;
18
+ hasMore: boolean;
19
+ isLoadingMore: boolean;
20
+ refetch: () => void;
21
+ }
22
+ /**
23
+ * Hook for fetching paginated forms (admin)
24
+ */
25
+ declare function useForms(options?: UseFormsOptions): UseFormsResult;
26
+ /**
27
+ * Suspense variant of useForms
28
+ */
29
+ declare function useSuspenseForms(options?: UseFormsOptions): {
30
+ forms: SerializedForm[];
31
+ total: number;
32
+ loadMore: () => Promise<unknown>;
33
+ hasMore: boolean;
34
+ isLoadingMore: boolean;
35
+ refetch: () => Promise<unknown>;
36
+ };
37
+ /**
38
+ * Hook for fetching a form by ID (admin)
39
+ */
40
+ declare function useFormById(id: string): {
41
+ form: SerializedForm | null;
42
+ isLoading: boolean;
43
+ error: Error | null;
44
+ refetch: () => void;
45
+ };
46
+ /**
47
+ * Suspense variant of useFormById
48
+ */
49
+ declare function useSuspenseFormById(id: string): {
50
+ form: SerializedForm | null;
51
+ refetch: () => Promise<unknown>;
52
+ };
53
+ /**
54
+ * Hook for fetching a form by slug (public)
55
+ */
56
+ declare function useFormBySlug(slug: string): {
57
+ form: SerializedForm | null;
58
+ isLoading: boolean;
59
+ error: Error | null;
60
+ refetch: () => void;
61
+ };
62
+ /**
63
+ * Suspense variant of useFormBySlug
64
+ */
65
+ declare function useSuspenseFormBySlug(slug: string): {
66
+ form: SerializedForm | null;
67
+ refetch: () => Promise<unknown>;
68
+ };
69
+ interface CreateFormInput {
70
+ name: string;
71
+ slug: string;
72
+ description?: string;
73
+ schema: string;
74
+ successMessage?: string;
75
+ redirectUrl?: string;
76
+ status?: "active" | "inactive" | "archived";
77
+ }
78
+ interface UpdateFormInput {
79
+ name?: string;
80
+ slug?: string;
81
+ description?: string;
82
+ schema?: string;
83
+ successMessage?: string;
84
+ redirectUrl?: string;
85
+ status?: "active" | "inactive" | "archived";
86
+ }
87
+ /**
88
+ * Hook for creating a form
89
+ */
90
+ declare function useCreateForm(): _tanstack_react_query.UseMutationResult<SerializedForm, Error, CreateFormInput, unknown>;
91
+ /**
92
+ * Hook for updating a form
93
+ */
94
+ declare function useUpdateForm(): _tanstack_react_query.UseMutationResult<SerializedForm, Error, {
95
+ id: string;
96
+ data: UpdateFormInput;
97
+ }, unknown>;
98
+ /**
99
+ * Hook for deleting a form
100
+ */
101
+ declare function useDeleteForm(): _tanstack_react_query.UseMutationResult<{
102
+ success: boolean;
103
+ }, Error, string, unknown>;
104
+ /**
105
+ * Hook for submitting a form (public)
106
+ */
107
+ declare function useSubmitForm(slug: string): _tanstack_react_query.UseMutationResult<SerializedFormSubmission & {
108
+ form: {
109
+ successMessage?: string;
110
+ redirectUrl?: string;
111
+ };
112
+ }, Error, {
113
+ data: Record<string, unknown>;
114
+ }, unknown>;
115
+ interface UseSubmissionsOptions {
116
+ /** Number of items per page (default: 20) */
117
+ limit?: number;
118
+ /** Whether to enable the query (default: true) */
119
+ enabled?: boolean;
120
+ }
121
+ interface UseSubmissionsResult {
122
+ submissions: SerializedFormSubmissionWithData[];
123
+ total: number;
124
+ isLoading: boolean;
125
+ error: Error | null;
126
+ loadMore: () => void;
127
+ hasMore: boolean;
128
+ isLoadingMore: boolean;
129
+ refetch: () => void;
130
+ }
131
+ /**
132
+ * Hook for fetching paginated submissions for a form (admin)
133
+ */
134
+ declare function useSubmissions(formId: string, options?: UseSubmissionsOptions): UseSubmissionsResult;
135
+ /**
136
+ * Suspense variant of useSubmissions
137
+ */
138
+ declare function useSuspenseSubmissions(formId: string, options?: UseSubmissionsOptions): {
139
+ submissions: SerializedFormSubmissionWithData[];
140
+ total: number;
141
+ loadMore: () => Promise<unknown>;
142
+ hasMore: boolean;
143
+ isLoadingMore: boolean;
144
+ refetch: () => Promise<unknown>;
145
+ };
146
+ /**
147
+ * Hook for deleting a submission
148
+ */
149
+ declare function useDeleteSubmission(formId: string): _tanstack_react_query.UseMutationResult<{
150
+ success: boolean;
151
+ }, Error, string, unknown>;
152
+
153
+ export { useCreateForm, useDeleteForm, useDeleteSubmission, useFormById, useFormBySlug, useForms, useSubmissions, useSubmitForm, useSuspenseFormById, useSuspenseFormBySlug, useSuspenseForms, useSuspenseSubmissions, useUpdateForm };
154
+ export type { CreateFormInput, UpdateFormInput, UseFormsOptions, UseFormsResult, UseSubmissionsOptions, UseSubmissionsResult };
@@ -0,0 +1 @@
1
+ export { useCreateForm, useDeleteForm, useDeleteSubmission, useFormById, useFormBySlug, useForms, useSubmissions, useSubmitForm, useSuspenseFormById, useSuspenseFormBySlug, useSuspenseForms, useSuspenseSubmissions, useUpdateForm } from '../../../../packages/better-stack/src/plugins/form-builder/client/hooks/form-builder-hooks.mjs';
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ const plugin = require('../../../packages/better-stack/src/plugins/form-builder/client/plugin.cjs');
4
+ const schemaConverter = require('../../../packages/ui/src/lib/schema-converter.cjs');
5
+
6
+
7
+
8
+ exports.formBuilderClientPlugin = plugin.formBuilderClientPlugin;
9
+ exports.formSchemaToZod = schemaConverter.formSchemaToZod;
10
+ exports.getStepGroupMap = schemaConverter.getStepGroupMap;
11
+ exports.getSteps = schemaConverter.getSteps;
12
+ exports.hasSteps = schemaConverter.hasSteps;
13
+ exports.zodToFormSchema = schemaConverter.zodToFormSchema;