betterstart-cli 0.0.97 → 0.0.99

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 (270) hide show
  1. package/dist/assets/adapters/next/integrations/mailchimp/integration.ts +1 -1
  2. package/dist/assets/adapters/next/integrations/r2/actions/r2.ts +1 -1
  3. package/dist/assets/adapters/next/integrations/r2/integration.ts +1 -1
  4. package/dist/assets/adapters/next/integrations/railway-bucket/actions/railway-bucket.ts +1 -1
  5. package/dist/assets/adapters/next/integrations/railway-bucket/integration.ts +1 -1
  6. package/dist/assets/adapters/next/integrations/resend/integration.ts +1 -1
  7. package/dist/assets/adapters/next/integrations/vercel-blob/actions/vercel-blob.ts +1 -1
  8. package/dist/assets/adapters/next/integrations/vercel-blob/integration.ts +1 -1
  9. package/dist/assets/adapters/next/presets/blog/preset.ts +1 -1
  10. package/dist/assets/adapters/next/presets/portfolio/preset.ts +1 -1
  11. package/dist/assets/adapters/next/templates/init/api/storage-read-route.ts +2 -1
  12. package/dist/assets/adapters/next/templates/init/api/upload-route.ts +3 -2
  13. package/dist/assets/adapters/next/templates/init/components/layouts/admin-providers.tsx +1 -1
  14. package/dist/assets/adapters/next/templates/init/components/layouts/admin-sidebar-nav-link-skeleton.tsx +1 -1
  15. package/dist/assets/adapters/next/templates/init/components/layouts/admin-sidebar.tsx +1 -1
  16. package/dist/assets/adapters/next/templates/init/components/shared/data-table/data-grid.tsx +1 -1
  17. package/dist/assets/adapters/next/templates/init/components/shared/data-table/data-table-pagination.tsx +2 -2
  18. package/dist/assets/adapters/next/templates/init/components/shared/data-table/data-table.tsx +2 -5
  19. package/dist/assets/adapters/next/templates/init/components/shared/delete-dialog.tsx +1 -1
  20. package/dist/assets/adapters/next/templates/init/components/shared/dev-mode/copyable-code-block.tsx +2 -2
  21. package/dist/assets/adapters/next/templates/init/components/shared/dev-mode/dev-mode-code-mirror.tsx +2 -2
  22. package/dist/assets/adapters/next/templates/init/components/shared/dev-mode/lifecycle-hooks-tab.tsx +7 -17
  23. package/dist/assets/adapters/next/templates/init/components/shared/dev-mode/snippets-tab.tsx +3 -13
  24. package/dist/assets/adapters/next/templates/init/components/shared/dev-mode-integrate.tsx +4 -4
  25. package/dist/assets/adapters/next/templates/init/components/shared/entity-filters-bar.tsx +1 -1
  26. package/dist/assets/adapters/next/templates/init/components/shared/entity-versions/entity-version-restore-dialog.tsx +1 -1
  27. package/dist/assets/adapters/next/templates/init/components/shared/entity-versions/entity-versions-button.tsx +1 -1
  28. package/dist/assets/adapters/next/templates/init/components/shared/media/edit-media-dialog-content.tsx +2 -2
  29. package/dist/assets/adapters/next/templates/init/components/shared/media/edit-media-dialog.tsx +2 -2
  30. package/dist/assets/adapters/next/templates/init/components/shared/media/media-delete-dialog.tsx +2 -2
  31. package/dist/assets/adapters/next/templates/init/components/shared/media/media-delete-drawer.tsx +2 -2
  32. package/dist/assets/adapters/next/templates/init/components/shared/media/media-filters-bar.tsx +2 -2
  33. package/dist/assets/adapters/next/templates/init/components/shared/media/media-gallery-dialog.tsx +2 -2
  34. package/dist/assets/adapters/next/templates/init/components/shared/media/media-grid-item.tsx +2 -2
  35. package/dist/assets/adapters/next/templates/init/components/shared/media/media-grid-pagination.tsx +1 -1
  36. package/dist/assets/adapters/next/templates/init/components/shared/media/media-grid.tsx +1 -1
  37. package/dist/assets/adapters/next/templates/init/components/shared/media/media-preview.tsx +1 -1
  38. package/dist/assets/adapters/next/templates/init/components/shared/media/media-url-importer.tsx +2 -2
  39. package/dist/assets/adapters/next/templates/init/components/shared/search-input.tsx +1 -1
  40. package/dist/assets/adapters/next/templates/init/components/shared/sort-order-dialog.tsx +3 -4
  41. package/dist/assets/adapters/next/templates/init/components/shared/sort-order-item.tsx +1 -1
  42. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-blockquote.ts +1 -70
  43. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-code-block.ts +1 -77
  44. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-color-highlight.ts +3 -51
  45. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-content-editor-media-insertion.ts +2 -2
  46. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-content-editor-slash-menu.ts +6 -8
  47. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-content-editor-source-mode.tsx +10 -8
  48. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-content-editor-table-add-controls.ts +4 -4
  49. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-content-editor.ts +7 -4
  50. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-heading-dropdown-menu.ts +3 -66
  51. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-heading.ts +1 -41
  52. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-is-breakpoint.ts +0 -8
  53. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-link-popover.ts +1 -83
  54. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-list-dropdown-menu.ts +3 -61
  55. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-list.ts +1 -43
  56. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-mark.ts +1 -72
  57. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-menu-navigation.ts +0 -35
  58. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-table-button.ts +2 -2
  59. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-tiptap-editor.ts +0 -11
  60. package/dist/assets/adapters/next/templates/init/hooks/content-editor/use-undo-redo.ts +1 -65
  61. package/dist/assets/adapters/next/templates/init/hooks/use-admin-theme.tsx +2 -4
  62. package/dist/assets/adapters/next/templates/init/hooks/use-dev-mode-integration.ts +1 -1
  63. package/dist/assets/adapters/next/templates/init/hooks/use-entity-versions.ts +1 -1
  64. package/dist/assets/adapters/next/templates/init/hooks/use-local-storage.ts +2 -7
  65. package/dist/assets/adapters/next/templates/init/hooks/use-media-filters-bar.ts +1 -1
  66. package/dist/assets/adapters/next/templates/init/hooks/use-media.ts +2 -2
  67. package/dist/assets/adapters/next/templates/init/hooks/use-page-boundary-blur-visibility.ts +1 -1
  68. package/dist/assets/adapters/next/templates/init/hooks/use-page-scroll-threshold.ts +1 -1
  69. package/dist/assets/adapters/next/templates/init/hooks/use-table-utils.ts +2 -2
  70. package/dist/assets/adapters/next/templates/init/hooks/use-upload.ts +6 -12
  71. package/dist/assets/adapters/next/templates/init/hooks/use-users.ts +1 -1
  72. package/dist/assets/adapters/next/templates/init/hooks/use-webhooks.ts +3 -2
  73. package/dist/assets/adapters/next/templates/init/lib/actions/audit/cleanup-audit-logs.ts +1 -1
  74. package/dist/assets/adapters/next/templates/init/lib/actions/audit/get-audit-logs.ts +1 -1
  75. package/dist/assets/adapters/next/templates/init/lib/actions/audit/record-audit-event.ts +1 -1
  76. package/dist/assets/adapters/next/templates/init/lib/actions/auth/auth.ts +4 -4
  77. package/dist/assets/adapters/next/templates/init/lib/actions/auth/middleware.ts +2 -10
  78. package/dist/assets/adapters/next/templates/init/lib/actions/email/form-delivery.ts +2 -2
  79. package/dist/assets/adapters/next/templates/init/lib/actions/email/provider.ts +1 -1
  80. package/dist/assets/adapters/next/templates/init/lib/actions/entity-versions/get-entity-versions.ts +1 -1
  81. package/dist/assets/adapters/next/templates/init/lib/actions/entity-versions/internal-create-entity-version.ts +1 -1
  82. package/dist/assets/adapters/next/templates/init/lib/actions/forms/get-all-form-settings.ts +1 -1
  83. package/dist/assets/adapters/next/templates/init/lib/actions/forms/get-form-settings.ts +1 -1
  84. package/dist/assets/adapters/next/templates/init/lib/actions/forms/upsert-form-settings.ts +1 -1
  85. package/dist/assets/adapters/next/templates/init/lib/actions/media/create-media.ts +2 -1
  86. package/dist/assets/adapters/next/templates/init/lib/actions/media/delete-media-bulk.ts +1 -1
  87. package/dist/assets/adapters/next/templates/init/lib/actions/media/delete-media.ts +1 -1
  88. package/dist/assets/adapters/next/templates/init/lib/actions/media/get-media-by-id.ts +1 -1
  89. package/dist/assets/adapters/next/templates/init/lib/actions/media/get-media-by-ids.ts +1 -1
  90. package/dist/assets/adapters/next/templates/init/lib/actions/media/get-media.ts +1 -1
  91. package/dist/assets/adapters/next/templates/init/lib/actions/media/update-media.ts +1 -1
  92. package/dist/assets/adapters/next/templates/init/lib/actions/profile/change-own-password.ts +1 -1
  93. package/dist/assets/adapters/next/templates/init/lib/actions/profile/update-email.ts +1 -1
  94. package/dist/assets/adapters/next/templates/init/lib/actions/storage/provider.ts +1 -1
  95. package/dist/assets/adapters/next/templates/init/lib/actions/upload/upload-files.ts +2 -2
  96. package/dist/assets/adapters/next/templates/init/lib/actions/upload/upload-media-from-url.ts +1 -1
  97. package/dist/assets/adapters/next/templates/init/lib/actions/users/change-user-password.ts +1 -1
  98. package/dist/assets/adapters/next/templates/init/lib/actions/users/create-user.ts +1 -1
  99. package/dist/assets/adapters/next/templates/init/lib/actions/users/delete-user.ts +1 -1
  100. package/dist/assets/adapters/next/templates/init/lib/actions/users/get-users.ts +1 -1
  101. package/dist/assets/adapters/next/templates/init/lib/actions/users/update-user-role.ts +1 -1
  102. package/dist/assets/adapters/next/templates/init/lib/actions/webhooks/create-webhook.ts +1 -1
  103. package/dist/assets/adapters/next/templates/init/lib/actions/webhooks/delete-webhook.ts +1 -1
  104. package/dist/assets/adapters/next/templates/init/lib/actions/webhooks/dispatch.ts +1 -2
  105. package/dist/assets/adapters/next/templates/init/lib/actions/webhooks/get-webhook-deliveries.ts +1 -1
  106. package/dist/assets/adapters/next/templates/init/lib/actions/webhooks/get-webhook-secret.ts +1 -1
  107. package/dist/assets/adapters/next/templates/init/lib/actions/webhooks/get-webhook-subscriptions.ts +1 -1
  108. package/dist/assets/adapters/next/templates/init/lib/actions/webhooks/get-webhooks.ts +1 -1
  109. package/dist/assets/adapters/next/templates/init/lib/actions/webhooks/regenerate-webhook-secret.ts +1 -1
  110. package/dist/assets/adapters/next/templates/init/lib/actions/webhooks/register.ts +2 -2
  111. package/dist/assets/adapters/next/templates/init/lib/actions/webhooks/send-test-webhook.ts +1 -1
  112. package/dist/assets/adapters/next/templates/init/lib/actions/webhooks/update-webhook.ts +1 -1
  113. package/dist/assets/adapters/next/templates/init/lib/db/client.ts +1 -1
  114. package/dist/assets/adapters/next/templates/init/lib/db/core/schema.ts +0 -24
  115. package/dist/assets/adapters/next/templates/init/lib/lifecycle-hooks/register.ts +0 -7
  116. package/dist/assets/adapters/next/templates/init/lib/lifecycle-hooks/runner.ts +1 -1
  117. package/dist/assets/adapters/next/templates/init/pages/forgot-password-form.tsx +1 -1
  118. package/dist/assets/adapters/next/templates/init/pages/login-form.tsx +1 -1
  119. package/dist/assets/adapters/next/templates/init/pages/media/media-page-content.tsx +4 -4
  120. package/dist/assets/adapters/next/templates/init/pages/profile/profile-form.tsx +1 -1
  121. package/dist/assets/adapters/next/templates/init/pages/reset-password-form.tsx +1 -1
  122. package/dist/assets/adapters/next/templates/init/pages/settings/audit-log/audit-log-columns.tsx +1 -1
  123. package/dist/assets/adapters/next/templates/init/pages/settings/audit-log/audit-log-page-content.tsx +1 -1
  124. package/dist/assets/adapters/next/templates/init/pages/settings/audit-log/audit-log-page.tsx +1 -1
  125. package/dist/assets/adapters/next/templates/init/pages/settings/audit-log/audit-log-table.tsx +3 -2
  126. package/dist/assets/adapters/next/templates/init/pages/settings/forms/forms-settings-page-content.tsx +3 -2
  127. package/dist/assets/adapters/next/templates/init/pages/settings/forms/forms-settings-page.tsx +1 -1
  128. package/dist/assets/adapters/next/templates/init/pages/settings/forms/forms-settings-table.tsx +4 -3
  129. package/dist/assets/adapters/next/templates/init/pages/settings/webhooks/webhook-endpoint-dialog.tsx +1 -1
  130. package/dist/assets/adapters/next/templates/init/pages/settings/webhooks/webhooks-columns.tsx +1 -1
  131. package/dist/assets/adapters/next/templates/init/pages/settings/webhooks/webhooks-logs-columns.tsx +1 -1
  132. package/dist/assets/adapters/next/templates/init/pages/settings/webhooks/webhooks-logs-page-content.tsx +1 -1
  133. package/dist/assets/adapters/next/templates/init/pages/settings/webhooks/webhooks-logs-page.tsx +1 -1
  134. package/dist/assets/adapters/next/templates/init/pages/settings/webhooks/webhooks-logs-table.tsx +2 -1
  135. package/dist/assets/adapters/next/templates/init/pages/settings/webhooks/webhooks-page-content.tsx +1 -1
  136. package/dist/assets/adapters/next/templates/init/pages/settings/webhooks/webhooks-page.tsx +1 -1
  137. package/dist/assets/adapters/next/templates/init/pages/settings/webhooks/webhooks-table.tsx +2 -1
  138. package/dist/assets/adapters/next/templates/init/pages/users/change-password-dialog.tsx +1 -1
  139. package/dist/assets/adapters/next/templates/init/pages/users/columns.tsx +3 -2
  140. package/dist/assets/adapters/next/templates/init/pages/users/create-user-dialog.tsx +1 -1
  141. package/dist/assets/adapters/next/templates/init/pages/users/delete-user-dialog.tsx +1 -1
  142. package/dist/assets/adapters/next/templates/init/pages/users/edit-role-dialog.tsx +1 -1
  143. package/dist/assets/adapters/next/templates/init/pages/users/users-page-content.tsx +2 -1
  144. package/dist/assets/adapters/next/templates/init/pages/users/users-table.tsx +4 -3
  145. package/dist/assets/adapters/next/templates/init/types/index.ts +0 -5
  146. package/dist/assets/adapters/next/templates/init/utils/date/date.ts +1 -6
  147. package/dist/assets/adapters/next/templates/init/utils/editor/content-editor-rich-extensions.ts +2 -2
  148. package/dist/assets/adapters/next/templates/init/utils/editor/markdown.ts +5 -5
  149. package/dist/assets/adapters/next/templates/init/utils/editor/slash-commands.ts +2 -2
  150. package/dist/assets/adapters/next/templates/init/utils/editor/table-add-controls.ts +1 -1
  151. package/dist/assets/adapters/next/templates/init/utils/editor/tiptap.ts +8 -127
  152. package/dist/assets/adapters/next/templates/init/utils/media/query.ts +1 -1
  153. package/dist/assets/adapters/next/templates/init/utils/seo/seo.ts +0 -10
  154. package/dist/assets/adapters/next/templates/init/utils/shared/cn.ts +2 -1
  155. package/dist/assets/adapters/next/templates/init/utils/validation/validation.ts +0 -12
  156. package/dist/assets/shared-assets/react-admin/custom/content-editor/editor-toolbar.tsx +1 -1
  157. package/dist/assets/shared-assets/react-admin/custom/content-editor/horizontal-rule-button.tsx +1 -1
  158. package/dist/assets/shared-assets/react-admin/custom/content-editor/index.tsx +1 -1
  159. package/dist/assets/shared-assets/react-admin/custom/content-editor/main-toolbar-content.tsx +1 -1
  160. package/dist/assets/shared-assets/react-admin/custom/content-editor/math-bubble-menu.tsx +2 -2
  161. package/dist/assets/shared-assets/react-admin/custom/content-editor/math-button.tsx +1 -1
  162. package/dist/assets/shared-assets/react-admin/custom/content-editor/math-editor-controls.tsx +1 -1
  163. package/dist/assets/shared-assets/react-admin/custom/content-editor/math-popover-button.tsx +4 -3
  164. package/dist/assets/shared-assets/react-admin/custom/content-editor/remove-table-part-icon.tsx +1 -1
  165. package/dist/assets/shared-assets/react-admin/custom/content-editor/selection-bubble-menu.tsx +2 -2
  166. package/dist/assets/shared-assets/react-admin/custom/content-editor/slash-command-menu.tsx +3 -3
  167. package/dist/assets/shared-assets/react-admin/custom/content-editor/source-mode-dropdown-button.tsx +1 -1
  168. package/dist/assets/shared-assets/react-admin/custom/content-editor/source-mode.tsx +5 -11
  169. package/dist/assets/shared-assets/react-admin/custom/content-editor/table-add-controls.tsx +1 -1
  170. package/dist/assets/shared-assets/react-admin/custom/content-editor/table-bubble-menu.tsx +3 -3
  171. package/dist/assets/shared-assets/react-admin/custom/content-editor/table-button.tsx +1 -1
  172. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-extension/node-background-extension.ts +2 -25
  173. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-node/media-gallery-placeholder-node/media-gallery-placeholder-node-extension.ts +0 -20
  174. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-node/media-gallery-placeholder-node/media-gallery-placeholder-node.tsx +2 -2
  175. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-node/removable-image-node/removable-image-node.tsx +3 -3
  176. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/blockquote-button/blockquote-button.tsx +3 -18
  177. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/code-block-button/code-block-button.tsx +3 -18
  178. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-button/color-highlight-button.tsx +2 -37
  179. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-popover/color-highlight-popover-button.tsx +3 -5
  180. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-popover/color-highlight-popover-content.tsx +3 -9
  181. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-popover/color-highlight-popover.tsx +6 -12
  182. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-popover/highlight-color-button.tsx +2 -2
  183. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-popover/highlight-colors.ts +2 -4
  184. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-popover/source-color-highlight-popover.tsx +4 -9
  185. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/heading-dropdown-menu/heading-dropdown-menu-item.tsx +3 -2
  186. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/heading-dropdown-menu/heading-dropdown-menu.tsx +4 -19
  187. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/link-popover/link-button.tsx +3 -5
  188. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/link-popover/link-content.tsx +1 -1
  189. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/link-popover/link-control-popover.tsx +5 -3
  190. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/link-popover/link-main.tsx +1 -13
  191. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/link-popover/link-popover.tsx +5 -16
  192. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/list-dropdown-menu/list-dropdown-menu-item.tsx +3 -2
  193. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/list-dropdown-menu/list-dropdown-menu.tsx +4 -19
  194. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/mark-button/mark-button.tsx +3 -19
  195. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/undo-redo-button/undo-redo-button.tsx +3 -19
  196. package/dist/assets/shared-assets/react-admin/custom/date-picker.tsx +1 -3
  197. package/dist/assets/shared-assets/react-admin/custom/date-range-picker.tsx +2 -2
  198. package/dist/assets/shared-assets/react-admin/custom/gallery-field.tsx +5 -10
  199. package/dist/assets/shared-assets/react-admin/custom/icon-picker.tsx +7 -4
  200. package/dist/assets/shared-assets/react-admin/custom/media-field-empty-state.tsx +1 -1
  201. package/dist/assets/shared-assets/react-admin/custom/media-field.tsx +2 -2
  202. package/dist/assets/shared-assets/react-admin/custom/nested-object-list-field.tsx +1 -1
  203. package/dist/assets/shared-assets/react-admin/custom/placeholder-card.tsx +1 -1
  204. package/dist/assets/shared-assets/react-admin/custom/placeholder.tsx +1 -1
  205. package/dist/assets/shared-assets/react-admin/custom/progressive-blur.tsx +1 -1
  206. package/dist/assets/shared-assets/react-admin/custom/sortable-gallery-item.tsx +1 -1
  207. package/dist/assets/shared-assets/react-admin/custom/upload-dropzone.tsx +2 -2
  208. package/dist/assets/shared-assets/react-admin/ui/accordion.tsx +1 -1
  209. package/dist/assets/shared-assets/react-admin/ui/alert-dialog.tsx +1 -1
  210. package/dist/assets/shared-assets/react-admin/ui/alert.tsx +3 -2
  211. package/dist/assets/shared-assets/react-admin/ui/avatar.tsx +1 -1
  212. package/dist/assets/shared-assets/react-admin/ui/badge.tsx +3 -2
  213. package/dist/assets/shared-assets/react-admin/ui/breadcrumb.tsx +1 -1
  214. package/dist/assets/shared-assets/react-admin/ui/button-group.tsx +2 -1
  215. package/dist/assets/shared-assets/react-admin/ui/button.tsx +3 -2
  216. package/dist/assets/shared-assets/react-admin/ui/calendar.tsx +3 -2
  217. package/dist/assets/shared-assets/react-admin/ui/card.tsx +1 -1
  218. package/dist/assets/shared-assets/react-admin/ui/carousel.tsx +3 -2
  219. package/dist/assets/shared-assets/react-admin/ui/chart.tsx +1 -2
  220. package/dist/assets/shared-assets/react-admin/ui/checkbox.tsx +1 -1
  221. package/dist/assets/shared-assets/react-admin/ui/combobox.tsx +1 -1
  222. package/dist/assets/shared-assets/react-admin/ui/command.tsx +1 -1
  223. package/dist/assets/shared-assets/react-admin/ui/context-menu.tsx +1 -1
  224. package/dist/assets/shared-assets/react-admin/ui/dialog.tsx +1 -1
  225. package/dist/assets/shared-assets/react-admin/ui/direction.tsx +1 -1
  226. package/dist/assets/shared-assets/react-admin/ui/drawer.tsx +1 -1
  227. package/dist/assets/shared-assets/react-admin/ui/dropdown-menu.tsx +1 -1
  228. package/dist/assets/shared-assets/react-admin/ui/empty.tsx +2 -1
  229. package/dist/assets/shared-assets/react-admin/ui/field.tsx +2 -1
  230. package/dist/assets/shared-assets/react-admin/ui/form.tsx +4 -10
  231. package/dist/assets/shared-assets/react-admin/ui/hover-card.tsx +1 -1
  232. package/dist/assets/shared-assets/react-admin/ui/input-group.tsx +3 -2
  233. package/dist/assets/shared-assets/react-admin/ui/input-otp.tsx +1 -1
  234. package/dist/assets/shared-assets/react-admin/ui/input.tsx +1 -1
  235. package/dist/assets/shared-assets/react-admin/ui/item.tsx +3 -2
  236. package/dist/assets/shared-assets/react-admin/ui/label.tsx +1 -1
  237. package/dist/assets/shared-assets/react-admin/ui/menubar.tsx +1 -1
  238. package/dist/assets/shared-assets/react-admin/ui/native-select.tsx +1 -1
  239. package/dist/assets/shared-assets/react-admin/ui/navigation-menu.tsx +1 -1
  240. package/dist/assets/shared-assets/react-admin/ui/pagination.tsx +1 -1
  241. package/dist/assets/shared-assets/react-admin/ui/popover.tsx +1 -1
  242. package/dist/assets/shared-assets/react-admin/ui/progress.tsx +1 -1
  243. package/dist/assets/shared-assets/react-admin/ui/radio-group.tsx +1 -1
  244. package/dist/assets/shared-assets/react-admin/ui/resizable.tsx +1 -1
  245. package/dist/assets/shared-assets/react-admin/ui/scroll-area.tsx +1 -1
  246. package/dist/assets/shared-assets/react-admin/ui/select.tsx +1 -1
  247. package/dist/assets/shared-assets/react-admin/ui/separator.tsx +1 -1
  248. package/dist/assets/shared-assets/react-admin/ui/sheet.tsx +1 -1
  249. package/dist/assets/shared-assets/react-admin/ui/sidebar.tsx +3 -10
  250. package/dist/assets/shared-assets/react-admin/ui/slider.tsx +1 -1
  251. package/dist/assets/shared-assets/react-admin/ui/sonner.tsx +2 -1
  252. package/dist/assets/shared-assets/react-admin/ui/switch.tsx +1 -1
  253. package/dist/assets/shared-assets/react-admin/ui/table.tsx +1 -1
  254. package/dist/assets/shared-assets/react-admin/ui/tabs.tsx +3 -2
  255. package/dist/assets/shared-assets/react-admin/ui/textarea.tsx +1 -1
  256. package/dist/assets/shared-assets/react-admin/ui/toggle-group.tsx +2 -2
  257. package/dist/assets/shared-assets/react-admin/ui/toggle.tsx +3 -2
  258. package/dist/assets/shared-assets/react-admin/ui/tooltip.tsx +1 -1
  259. package/dist/{chunk-MJWUGEMK.js → chunk-SO2CAJFC.js} +137 -9
  260. package/dist/chunk-SO2CAJFC.js.map +1 -0
  261. package/dist/cli.js +1097 -1194
  262. package/dist/cli.js.map +1 -1
  263. package/dist/index.d.ts +1 -1
  264. package/dist/index.js +1 -1
  265. package/dist/index.js.map +1 -1
  266. package/dist/{template-reader-R2JIWUNK.js → template-reader-XMWPFYIK.js} +2 -2
  267. package/package.json +3 -3
  268. package/dist/assets/shared-assets/react-admin/dependencies.ts +0 -74
  269. package/dist/chunk-MJWUGEMK.js.map +0 -1
  270. /package/dist/{template-reader-R2JIWUNK.js.map → template-reader-XMWPFYIK.js.map} +0 -0
@@ -1,7 +1,7 @@
1
1
  'use server'
2
2
 
3
- import { adminMedia } from '@admin/db/schema'
4
3
  import type { AdminMedia } from '@admin/types'
4
+ import { adminMedia } from '@admin/db/schema'
5
5
  import { mapMediaRow, selectMedia } from '@admin/utils/media/query'
6
6
  import { inArray } from 'drizzle-orm'
7
7
  import { cacheLife, cacheTag } from 'next/cache'
@@ -1,8 +1,8 @@
1
1
  'use server'
2
2
 
3
+ import type { MediaListParams, MediaListResult } from '@admin/types'
3
4
  import db from '@admin/db'
4
5
  import { adminMedia } from '@admin/db/schema'
5
- import type { MediaListParams, MediaListResult } from '@admin/types'
6
6
  import { mapMediaRow, selectMedia } from '@admin/utils/media/query'
7
7
  import { and, desc, ilike, sql } from 'drizzle-orm'
8
8
  import { cacheLife, cacheTag } from 'next/cache'
@@ -1,5 +1,6 @@
1
1
  'use server'
2
2
 
3
+ import type { UpdateMediaResult } from './types'
3
4
  import { getAuditRequestMetadata } from '@admin/actions/audit/request-metadata'
4
5
  import { requireRole, UserRole } from '@admin/auth/middleware'
5
6
  import db from '@admin/db'
@@ -8,7 +9,6 @@ import { runAdminEventHooks } from '@admin/lib/lifecycle-hooks'
8
9
  import { getChangedFieldNames } from '@admin/utils/audit/audit'
9
10
  import { eq } from 'drizzle-orm'
10
11
  import { updateTag } from 'next/cache'
11
- import type { UpdateMediaResult } from './types'
12
12
  import { mediaCacheTags } from './types'
13
13
 
14
14
  export async function updateMedia(
@@ -1,12 +1,12 @@
1
1
  'use server'
2
2
 
3
+ import type { ChangeOwnPasswordInput, ChangeOwnPasswordResult } from './types'
3
4
  import { getAuditRequestMetadata } from '@admin/actions/audit/request-metadata'
4
5
  import { auth } from '@admin/auth'
5
6
  import { getSession } from '@admin/auth/middleware'
6
7
  import { runAdminEventHooks } from '@admin/lib/lifecycle-hooks'
7
8
  import { headers } from 'next/headers'
8
9
  import { invalidateUsersCache } from './invalidate-users-cache'
9
- import type { ChangeOwnPasswordInput, ChangeOwnPasswordResult } from './types'
10
10
 
11
11
  export async function changeOwnPassword(
12
12
  input: ChangeOwnPasswordInput
@@ -1,5 +1,6 @@
1
1
  'use server'
2
2
 
3
+ import type { UpdateEmailResult } from './types'
3
4
  import { getAuditRequestMetadata } from '@admin/actions/audit/request-metadata'
4
5
  import { auth } from '@admin/auth'
5
6
  import { getSession } from '@admin/auth/middleware'
@@ -9,7 +10,6 @@ import { runAdminEventHooks } from '@admin/lib/lifecycle-hooks'
9
10
  import { eq } from 'drizzle-orm'
10
11
  import { headers } from 'next/headers'
11
12
  import { invalidateUsersCache } from './invalidate-users-cache'
12
- import type { UpdateEmailResult } from './types'
13
13
 
14
14
  export async function updateEmail(
15
15
  newEmail: string,
@@ -1,5 +1,5 @@
1
- import { localStorageProvider } from '@admin/actions/storage/local'
2
1
  import type { AdminStorageProvider } from '@admin/actions/storage/types'
2
+ import { localStorageProvider } from '@admin/actions/storage/local'
3
3
 
4
4
  export function getStorageProvider(): AdminStorageProvider {
5
5
  return localStorageProvider
@@ -1,10 +1,10 @@
1
1
  'use server'
2
2
 
3
+ import type { FileValidationConfig, UploadResult } from './types'
4
+ import type { UploadedFile } from '@admin/types'
3
5
  import { createMedia } from '@admin/actions/media'
4
6
  import { saveUpload } from '@admin/actions/storage'
5
7
  import { requireRole, UserRole } from '@admin/auth/middleware'
6
- import type { UploadedFile } from '@admin/types'
7
- import type { FileValidationConfig, UploadResult } from './types'
8
8
 
9
9
  export async function uploadFiles(
10
10
  formData: FormData,
@@ -1,5 +1,6 @@
1
1
  'use server'
2
2
 
3
+ import type { RemoteUploadOptions, UploadResult } from './types'
3
4
  import { createMedia } from '@admin/actions/media'
4
5
  import { saveUpload } from '@admin/actions/storage'
5
6
  import { requireRole, UserRole } from '@admin/auth/middleware'
@@ -9,7 +10,6 @@ import {
9
10
  isAcceptedRemoteType,
10
11
  REMOTE_FETCH_TIMEOUT_MS
11
12
  } from '@admin/utils/upload/remote'
12
- import type { RemoteUploadOptions, UploadResult } from './types'
13
13
 
14
14
  export async function uploadMediaFromUrl(
15
15
  mediaUrl: string,
@@ -1,5 +1,6 @@
1
1
  'use server'
2
2
 
3
+ import type { ChangeUserPasswordInput, ChangeUserPasswordResult } from './types'
3
4
  import { getAuditRequestMetadata } from '@admin/actions/audit/request-metadata'
4
5
  import { auth } from '@admin/auth'
5
6
  import { requireRole, UserRole } from '@admin/auth/middleware'
@@ -9,7 +10,6 @@ import { runAdminEventHooks } from '@admin/lib/lifecycle-hooks'
9
10
  import { eq } from 'drizzle-orm'
10
11
  import { updateTag } from 'next/cache'
11
12
  import { headers } from 'next/headers'
12
- import type { ChangeUserPasswordInput, ChangeUserPasswordResult } from './types'
13
13
  import { usersCacheTags } from './types'
14
14
 
15
15
  export async function changeUserPassword(
@@ -1,5 +1,6 @@
1
1
  'use server'
2
2
 
3
+ import type { CreateUserInput, CreateUserResult } from './types'
3
4
  import { getAuditRequestMetadata } from '@admin/actions/audit/request-metadata'
4
5
  import { auth } from '@admin/auth'
5
6
  import { requireRole, UserRole } from '@admin/auth/middleware'
@@ -9,7 +10,6 @@ import { runAdminEventHooks } from '@admin/lib/lifecycle-hooks'
9
10
  import { getTouchedFieldNames } from '@admin/utils/audit/audit'
10
11
  import { eq } from 'drizzle-orm'
11
12
  import { updateTag } from 'next/cache'
12
- import type { CreateUserInput, CreateUserResult } from './types'
13
13
  import { usersCacheTags } from './types'
14
14
 
15
15
  export async function createUser(input: CreateUserInput): Promise<CreateUserResult> {
@@ -1,5 +1,6 @@
1
1
  'use server'
2
2
 
3
+ import type { DeleteUserResult } from './types'
3
4
  import { getAuditRequestMetadata } from '@admin/actions/audit/request-metadata'
4
5
  import { requireRole, UserRole } from '@admin/auth/middleware'
5
6
  import db from '@admin/db'
@@ -7,7 +8,6 @@ import { user } from '@admin/db/schema'
7
8
  import { runAdminEventHooks } from '@admin/lib/lifecycle-hooks'
8
9
  import { eq } from 'drizzle-orm'
9
10
  import { updateTag } from 'next/cache'
10
- import type { DeleteUserResult } from './types'
11
11
  import { usersCacheTags } from './types'
12
12
 
13
13
  export async function deleteUser(userId: string): Promise<DeleteUserResult> {
@@ -1,10 +1,10 @@
1
1
  'use server'
2
2
 
3
+ import type { User, UsersPage } from './types'
3
4
  import { requireRole, UserRole } from '@admin/auth/middleware'
4
5
  import db from '@admin/db'
5
6
  import { user } from '@admin/db/schema'
6
7
  import { cacheLife, cacheTag } from 'next/cache'
7
- import type { User, UsersPage } from './types'
8
8
  import { usersCacheTags } from './types'
9
9
 
10
10
  async function getCachedUsers(): Promise<UsersPage> {
@@ -1,5 +1,6 @@
1
1
  'use server'
2
2
 
3
+ import type { UpdateUserRoleResult } from './types'
3
4
  import { getAuditRequestMetadata } from '@admin/actions/audit/request-metadata'
4
5
  import { requireRole, UserRole } from '@admin/auth/middleware'
5
6
  import db from '@admin/db'
@@ -7,7 +8,6 @@ import { user } from '@admin/db/schema'
7
8
  import { runAdminEventHooks } from '@admin/lib/lifecycle-hooks'
8
9
  import { eq } from 'drizzle-orm'
9
10
  import { updateTag } from 'next/cache'
10
- import type { UpdateUserRoleResult } from './types'
11
11
  import { usersCacheTags } from './types'
12
12
 
13
13
  export async function updateUserRole(
@@ -1,11 +1,11 @@
1
1
  'use server'
2
2
 
3
+ import type { CreateWebhookInput, WebhookResult } from './types'
3
4
  import { requireRole, UserRole } from '@admin/auth/middleware'
4
5
  import db from '@admin/db'
5
6
  import { webhookSubscriptions, webhooks } from '@admin/db/schema'
6
7
  import { generateWebhookSecret } from '@admin/utils/webhook/signature'
7
8
  import { updateTag } from 'next/cache'
8
- import type { CreateWebhookInput, WebhookResult } from './types'
9
9
  import { webhooksCacheTags } from './types'
10
10
 
11
11
  export async function createWebhook(input: CreateWebhookInput): Promise<WebhookResult> {
@@ -1,11 +1,11 @@
1
1
  'use server'
2
2
 
3
+ import type { WebhookResult } from './types'
3
4
  import { requireRole, UserRole } from '@admin/auth/middleware'
4
5
  import db from '@admin/db'
5
6
  import { webhooks } from '@admin/db/schema'
6
7
  import { eq } from 'drizzle-orm'
7
8
  import { updateTag } from 'next/cache'
8
- import type { WebhookResult } from './types'
9
9
  import { webhooksCacheTags } from './types'
10
10
 
11
11
  export async function deleteWebhook(id: string): Promise<WebhookResult> {
@@ -1,9 +1,9 @@
1
+ import type { ActiveWebhookEndpoint } from './internal-get-active-endpoints'
1
2
  import db from '@admin/db'
2
3
  import { webhookDeliveries } from '@admin/db/schema'
3
4
  import { createWebhookEventId, signWebhookPayload } from '@admin/utils/webhook/signature'
4
5
  import { and, desc, eq, notInArray } from 'drizzle-orm'
5
6
  import { after } from 'next/server'
6
- import type { ActiveWebhookEndpoint } from './internal-get-active-endpoints'
7
7
  import { getActiveEndpointsForEvent } from './internal-get-active-endpoints'
8
8
 
9
9
  const MAX_ATTEMPTS = 3
@@ -20,7 +20,6 @@ export function emitWebhookEvent(event: string, data: unknown): void {
20
20
  data
21
21
  })
22
22
 
23
- // A missing request scope must never crash the mutation that emitted the event.
24
23
  try {
25
24
  after(() => deliverWebhookEvent(eventId, event, body))
26
25
  } catch (error) {
@@ -1,11 +1,11 @@
1
1
  'use server'
2
2
 
3
+ import type { WebhookDeliveriesPage, WebhookDeliveriesQuery } from './types'
3
4
  import { requireRole, UserRole } from '@admin/auth/middleware'
4
5
  import db from '@admin/db'
5
6
  import { webhookDeliveries, webhooks } from '@admin/db/schema'
6
7
  import { getExclusiveDateUpperBound } from '@admin/utils/date/date'
7
8
  import { and, asc, desc, eq, gte, ilike, lt, or, sql } from 'drizzle-orm'
8
- import type { WebhookDeliveriesPage, WebhookDeliveriesQuery } from './types'
9
9
 
10
10
  const SORTABLE_COLUMNS = {
11
11
  createdAt: webhookDeliveries.createdAt,
@@ -1,10 +1,10 @@
1
1
  'use server'
2
2
 
3
+ import type { WebhookSecretResult } from './types'
3
4
  import { requireRole, UserRole } from '@admin/auth/middleware'
4
5
  import db from '@admin/db'
5
6
  import { webhooks } from '@admin/db/schema'
6
7
  import { eq } from 'drizzle-orm'
7
- import type { WebhookSecretResult } from './types'
8
8
 
9
9
  export async function getWebhookSecret(id: string): Promise<WebhookSecretResult> {
10
10
  await requireRole([UserRole.ADMIN])
@@ -1,10 +1,10 @@
1
1
  'use server'
2
2
 
3
+ import type { WebhookSubscriptionEntry } from './types'
3
4
  import { requireRole, UserRole } from '@admin/auth/middleware'
4
5
  import db from '@admin/db'
5
6
  import { webhookSubscriptions } from '@admin/db/schema'
6
7
  import { cacheLife, cacheTag } from 'next/cache'
7
- import type { WebhookSubscriptionEntry } from './types'
8
8
  import { webhooksCacheTags } from './types'
9
9
 
10
10
  async function readWebhookSubscriptions(): Promise<WebhookSubscriptionEntry[]> {
@@ -1,11 +1,11 @@
1
1
  'use server'
2
2
 
3
+ import type { WebhooksPage, WebhooksQuery } from './types'
3
4
  import { requireRole, UserRole } from '@admin/auth/middleware'
4
5
  import db from '@admin/db'
5
6
  import { webhookDeliveries, webhookSubscriptions, webhooks } from '@admin/db/schema'
6
7
  import { getExclusiveDateUpperBound } from '@admin/utils/date/date'
7
8
  import { and, asc, count, desc, eq, gte, ilike, isNull, lt, or, sql } from 'drizzle-orm'
8
- import type { WebhooksPage, WebhooksQuery } from './types'
9
9
 
10
10
  // Deliberately uncached: filters and sorting depend on delivery rows written
11
11
  // inside after(), where cache invalidation is unavailable, so cached reads
@@ -1,12 +1,12 @@
1
1
  'use server'
2
2
 
3
+ import type { WebhookSecretResult } from './types'
3
4
  import { requireRole, UserRole } from '@admin/auth/middleware'
4
5
  import db from '@admin/db'
5
6
  import { webhooks } from '@admin/db/schema'
6
7
  import { generateWebhookSecret } from '@admin/utils/webhook/signature'
7
8
  import { eq } from 'drizzle-orm'
8
9
  import { updateTag } from 'next/cache'
9
- import type { WebhookSecretResult } from './types'
10
10
  import { webhooksCacheTags } from './types'
11
11
 
12
12
  export async function regenerateWebhookSecret(id: string): Promise<WebhookSecretResult> {
@@ -1,9 +1,9 @@
1
- import { webhookEventSources } from '@admin/data/webhook-events'
2
- import { registerHook } from '@admin/lib/lifecycle-hooks/registry'
3
1
  import type {
4
2
  AfterLifecycleHookEvent,
5
3
  LifecycleHookContext
6
4
  } from '@admin/lib/lifecycle-hooks/types'
5
+ import { webhookEventSources } from '@admin/data/webhook-events'
6
+ import { registerHook } from '@admin/lib/lifecycle-hooks/registry'
7
7
  import { emitWebhookEvent } from './dispatch'
8
8
 
9
9
  let webhookHooksRegistered = false
@@ -1,12 +1,12 @@
1
1
  'use server'
2
2
 
3
+ import type { SendTestWebhookResult } from './types'
3
4
  import { requireRole, UserRole } from '@admin/auth/middleware'
4
5
  import db from '@admin/db'
5
6
  import { webhooks } from '@admin/db/schema'
6
7
  import { createWebhookEventId, signWebhookPayload } from '@admin/utils/webhook/signature'
7
8
  import { eq } from 'drizzle-orm'
8
9
  import { recordWebhookDelivery } from './dispatch'
9
- import type { SendTestWebhookResult } from './types'
10
10
 
11
11
  const TEST_REQUEST_TIMEOUT_MS = 10_000
12
12
 
@@ -1,11 +1,11 @@
1
1
  'use server'
2
2
 
3
+ import type { UpdateWebhookInput, WebhookResult } from './types'
3
4
  import { requireRole, UserRole } from '@admin/auth/middleware'
4
5
  import db from '@admin/db'
5
6
  import { webhookSubscriptions, webhooks } from '@admin/db/schema'
6
7
  import { and, eq, notInArray } from 'drizzle-orm'
7
8
  import { updateTag } from 'next/cache'
8
- import type { UpdateWebhookInput, WebhookResult } from './types'
9
9
  import { webhooksCacheTags } from './types'
10
10
 
11
11
  export async function updateWebhook(id: string, input: UpdateWebhookInput): Promise<WebhookResult> {
@@ -1,6 +1,6 @@
1
+ import * as schema from './schema'
1
2
  import { drizzle } from 'drizzle-orm/postgres-js'
2
3
  import postgres from 'postgres'
3
- import * as schema from './schema'
4
4
 
5
5
  const databaseUrl = process.env.DATABASE_URL
6
6
  if (!databaseUrl) {
@@ -12,10 +12,6 @@ import {
12
12
  varchar
13
13
  } from 'drizzle-orm/pg-core'
14
14
 
15
- // ============================================================================
16
- // Better Auth tables
17
- // ============================================================================
18
-
19
15
  export const user = pgTable('user', {
20
16
  id: text('id').primaryKey(),
21
17
  name: text('name').notNull(),
@@ -71,10 +67,6 @@ export const verification = pgTable('verification', {
71
67
  updatedAt: timestamp('updated_at').defaultNow()
72
68
  })
73
69
 
74
- // ============================================================================
75
- // Form Settings (shared table for all form configurations)
76
- // ============================================================================
77
-
78
70
  export const formSettings = pgTable(
79
71
  'FormSettings',
80
72
  {
@@ -96,10 +88,6 @@ export const formSettings = pgTable(
96
88
  ]
97
89
  )
98
90
 
99
- // ============================================================================
100
- // Webhooks (endpoint registry, event subscriptions, delivery log)
101
- // ============================================================================
102
-
103
91
  export const webhooks = pgTable('Webhooks', {
104
92
  id: uuid().defaultRandom().primaryKey().notNull(),
105
93
  name: varchar('name', { length: 200 }).notNull(),
@@ -167,10 +155,6 @@ export const webhookDeliveries = pgTable(
167
155
  ]
168
156
  )
169
157
 
170
- // ============================================================================
171
- // Entity Versions
172
- // ============================================================================
173
-
174
158
  export const entityVersions = pgTable(
175
159
  'EntityVersions',
176
160
  {
@@ -202,10 +186,6 @@ export const entityVersions = pgTable(
202
186
  ]
203
187
  )
204
188
 
205
- // ============================================================================
206
- // Audit Log
207
- // ============================================================================
208
-
209
189
  export const auditLog = pgTable(
210
190
  'AuditLog',
211
191
  {
@@ -254,10 +234,6 @@ export const auditLog = pgTable(
254
234
  ]
255
235
  )
256
236
 
257
- // ============================================================================
258
- // Media Library
259
- // ============================================================================
260
-
261
237
  export const adminMedia = pgTable('AdminMedia', {
262
238
  id: text('id')
263
239
  .primaryKey()
@@ -1,12 +1,5 @@
1
1
  // This file is managed by BetterStart and may be overwritten by CLI updates.
2
2
  // Add project-specific lifecycle hook registrations in register.local.ts.
3
- //
4
- // Example:
5
- // import { registerHook } from './registry'
6
- //
7
- // registerHook('posts', 'afterCreate', async ({ user, entityId, data }) => {
8
- // console.log('Post created', { userId: user.id, entityId, data })
9
- // })
10
3
  import { registerAuditHooks } from '@admin/actions/audit/register'
11
4
  import { registerWebhookHooks } from '@admin/actions/webhooks/register'
12
5
 
@@ -1,4 +1,3 @@
1
- import { getRegisteredAdminHooks, getRegisteredHooks } from './registry'
2
1
  import type {
3
2
  AdminEventContext,
4
3
  AfterLifecycleHookEvent,
@@ -6,6 +5,7 @@ import type {
6
5
  LifecycleHookAbort,
7
6
  LifecycleHookContext
8
7
  } from './types'
8
+ import { getRegisteredAdminHooks, getRegisteredHooks } from './registry'
9
9
 
10
10
  function isLifecycleHookAbort(value: unknown): value is LifecycleHookAbort {
11
11
  return (
@@ -1,5 +1,6 @@
1
1
  'use client'
2
2
 
3
+ import * as React from 'react'
3
4
  import { isEmailConfigured } from '@admin/actions/profile'
4
5
  import { authClient } from '@admin/auth/client'
5
6
  import { Button } from '@admin/components/ui/button'
@@ -10,7 +11,6 @@ import { cn } from '@admin/utils/shared/cn'
10
11
  import { LoaderCircle } from 'lucide-react'
11
12
  import Image from 'next/image'
12
13
  import Link from 'next/link'
13
- import * as React from 'react'
14
14
 
15
15
  export function ForgotPasswordForm({ className, ...props }: React.ComponentProps<'div'>) {
16
16
  const [email, setEmail] = React.useState('')
@@ -1,5 +1,6 @@
1
1
  'use client'
2
2
 
3
+ import * as React from 'react'
3
4
  import { authClient } from '@admin/auth/client'
4
5
  import { Button } from '@admin/components/ui/button'
5
6
  import { Card, CardContent } from '@admin/components/ui/card'
@@ -12,7 +13,6 @@ import Image from 'next/image'
12
13
  import Link from 'next/link'
13
14
  import { useRouter } from 'next/navigation'
14
15
  import { parseAsStringLiteral, useQueryState } from 'nuqs'
15
- import * as React from 'react'
16
16
 
17
17
  export function LoginForm({ className, ...props }: React.ComponentProps<'div'>) {
18
18
  const router = useRouter()
@@ -1,25 +1,25 @@
1
1
  'use client'
2
2
 
3
+ import * as mediaHooks from '@admin/hooks/use-media'
4
+ import * as React from 'react'
5
+ import type { ContentTypeFilter } from '@admin/components/shared/media/media-filters-bar'
6
+ import type { AdminMedia } from '@admin/types'
3
7
  import { deleteMediaBulk } from '@admin/actions/media'
4
8
  import { UploadDropzone } from '@admin/components/custom/upload-dropzone'
5
9
  import { DeleteDialog } from '@admin/components/shared/delete-dialog'
6
10
  import { EditMediaDialog } from '@admin/components/shared/media/edit-media-dialog'
7
11
  import { MediaEmptyState } from '@admin/components/shared/media/media-empty-state'
8
- import type { ContentTypeFilter } from '@admin/components/shared/media/media-filters-bar'
9
12
  import { MediaFiltersBar } from '@admin/components/shared/media/media-filters-bar'
10
13
  import { MediaGrid } from '@admin/components/shared/media/media-grid'
11
14
  import { MediaGridPagination } from '@admin/components/shared/media/media-grid-pagination'
12
15
  import { MediaUrlImporter } from '@admin/components/shared/media/media-url-importer'
13
16
  import { PageHeader } from '@admin/components/shared/page-header'
14
17
  import { Tabs, TabsList, TabsTrigger } from '@admin/components/ui/tabs'
15
- import * as mediaHooks from '@admin/hooks/use-media'
16
18
  import { useMediaFiltersBar } from '@admin/hooks/use-media-filters-bar'
17
19
  import { useUpload } from '@admin/hooks/use-upload'
18
- import type { AdminMedia } from '@admin/types'
19
20
  import { useMutation, useQueryClient } from '@tanstack/react-query'
20
21
  import { Link, Upload } from 'lucide-react'
21
22
  import { parseAsInteger, parseAsString, useQueryState } from 'nuqs'
22
- import * as React from 'react'
23
23
  import { toast } from 'sonner'
24
24
 
25
25
  const SEARCH_PARSER = parseAsString.withDefault('')
@@ -1,5 +1,6 @@
1
1
  'use client'
2
2
 
3
+ import * as React from 'react'
3
4
  import {
4
5
  changeOwnPassword,
5
6
  invalidateUsersCache,
@@ -31,7 +32,6 @@ import { Input } from '@admin/components/ui/input'
31
32
  import { standardSchemaResolver } from '@hookform/resolvers/standard-schema'
32
33
  import { LoaderCircle } from 'lucide-react'
33
34
  import { useRouter } from 'next/navigation'
34
- import * as React from 'react'
35
35
  import { useForm } from 'react-hook-form'
36
36
  import { toast } from 'sonner'
37
37
  import { z } from 'zod/v3'
@@ -1,5 +1,6 @@
1
1
  'use client'
2
2
 
3
+ import * as React from 'react'
3
4
  import { authClient } from '@admin/auth/client'
4
5
  import { Button } from '@admin/components/ui/button'
5
6
  import { Card, CardContent } from '@admin/components/ui/card'
@@ -11,7 +12,6 @@ import Image from 'next/image'
11
12
  import Link from 'next/link'
12
13
  import { useRouter } from 'next/navigation'
13
14
  import { createSerializer, parseAsString, parseAsStringLiteral, useQueryState } from 'nuqs'
14
- import * as React from 'react'
15
15
 
16
16
  const serializeLoginUrl = createSerializer({
17
17
  reset: parseAsStringLiteral(['success'])
@@ -1,10 +1,10 @@
1
1
  'use client'
2
2
 
3
3
  import type { AuditLogEntry, AuditLogSortField } from '@admin/actions/audit'
4
+ import type { ColumnDef } from '@tanstack/react-table'
4
5
  import { SortIndicator } from '@admin/components/shared/sort-indicator'
5
6
  import { Badge } from '@admin/components/ui/badge'
6
7
  import { Button } from '@admin/components/ui/button'
7
- import type { ColumnDef } from '@tanstack/react-table'
8
8
 
9
9
  export const AUDIT_LOG_SORT_FIELDS = [
10
10
  'createdAt',
@@ -1,12 +1,12 @@
1
1
  'use client'
2
2
 
3
+ import * as React from 'react'
3
4
  import type { AuditLogEntry } from '@admin/actions/audit'
4
5
  import { AUDIT_LOG_ACTIONS, AUDIT_LOG_CATEGORIES } from '@admin/actions/audit'
5
6
  import { EntityFiltersBar } from '@admin/components/shared/entity-filters-bar'
6
7
  import { PageHeader } from '@admin/components/shared/page-header'
7
8
  import { useIsFetching } from '@tanstack/react-query'
8
9
  import { parseAsInteger, parseAsString, useQueryState, useQueryStates } from 'nuqs'
9
- import * as React from 'react'
10
10
  import { createAuditLogColumns } from './audit-log-columns'
11
11
  import { AuditLogDetailDrawer } from './audit-log-detail-drawer'
12
12
  import { AuditLogTable } from './audit-log-table'
@@ -1,5 +1,5 @@
1
- import { requireRole, UserRole } from '@admin/auth/middleware'
2
1
  import * as React from 'react'
2
+ import { requireRole, UserRole } from '@admin/auth/middleware'
3
3
  import { AuditLogPageContent } from './audit-log-page-content'
4
4
  import { AuditLogPageSkeleton } from './audit-log-page-skeleton'
5
5
 
@@ -1,6 +1,8 @@
1
1
  'use client'
2
2
 
3
+ import * as React from 'react'
3
4
  import type { AuditLogEntry, AuditLogQuery, AuditLogSortField } from '@admin/actions/audit'
5
+ import type { ColumnDef } from '@tanstack/react-table'
4
6
  import {
5
7
  DataGrid,
6
8
  DataGridBody,
@@ -13,10 +15,9 @@ import { DataTablePagination } from '@admin/components/shared/data-table/data-ta
13
15
  import { useAuditLogs } from '@admin/hooks/use-audit-log'
14
16
  import { useTableUtils } from '@admin/hooks/use-table-utils'
15
17
  import { cn } from '@admin/utils/shared/cn'
16
- import { type ColumnDef, flexRender, getCoreRowModel, useReactTable } from '@tanstack/react-table'
18
+ import { flexRender, getCoreRowModel, useReactTable } from '@tanstack/react-table'
17
19
  import { GripVertical } from 'lucide-react'
18
20
  import { parseAsInteger, parseAsString, useQueryStates } from 'nuqs'
19
- import * as React from 'react'
20
21
  import { AUDIT_LOG_SORT_FIELDS } from './audit-log-columns'
21
22
 
22
23
  interface AuditLogTableProps<TValue> extends React.HTMLAttributes<HTMLDivElement> {
@@ -1,11 +1,12 @@
1
1
  'use client'
2
2
 
3
+ import * as React from 'react'
4
+ import type { FormSettingsRow } from './forms-settings-columns'
3
5
  import { PageHeader } from '@admin/components/shared/page-header'
4
6
  import { webhookEventSources } from '@admin/data/webhook-events'
5
7
  import { useFormSettingsList } from '@admin/hooks/use-webhooks'
6
- import * as React from 'react'
7
8
  import { FormNotificationsDrawer } from './form-notifications-drawer'
8
- import { createFormSettingsColumns, type FormSettingsRow } from './forms-settings-columns'
9
+ import { createFormSettingsColumns } from './forms-settings-columns'
9
10
  import { FormsSettingsTable } from './forms-settings-table'
10
11
 
11
12
  export function FormsSettingsPageContent() {
@@ -1,5 +1,5 @@
1
- import { requireRole, UserRole } from '@admin/auth/middleware'
2
1
  import * as React from 'react'
2
+ import { requireRole, UserRole } from '@admin/auth/middleware'
3
3
  import { FormsSettingsPageContent } from './forms-settings-page-content'
4
4
  import { FormsSettingsPageSkeleton } from './forms-settings-page-skeleton'
5
5
 
@@ -1,5 +1,8 @@
1
1
  'use client'
2
2
 
3
+ import type * as React from 'react'
4
+ import type { FormSettingsRow } from './forms-settings-columns'
5
+ import type { ColumnDef } from '@tanstack/react-table'
3
6
  import {
4
7
  DataGrid,
5
8
  DataGridBody,
@@ -9,9 +12,7 @@ import {
9
12
  DataGridRow
10
13
  } from '@admin/components/shared/data-table/data-grid'
11
14
  import { cn } from '@admin/utils/shared/cn'
12
- import { type ColumnDef, flexRender, getCoreRowModel, useReactTable } from '@tanstack/react-table'
13
- import type * as React from 'react'
14
- import type { FormSettingsRow } from './forms-settings-columns'
15
+ import { flexRender, getCoreRowModel, useReactTable } from '@tanstack/react-table'
15
16
 
16
17
  interface FormsSettingsTableProps extends React.HTMLAttributes<HTMLDivElement> {
17
18
  columns: ColumnDef<FormSettingsRow>[]