betterstart-cli 0.0.119 → 0.0.121

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 (128) hide show
  1. package/dist/assets/adapters/next/integrations/resend/actions/render-password-reset-email.ts +5 -5
  2. package/dist/assets/adapters/next/templates/init/admin-globals.css +35 -23
  3. package/dist/assets/adapters/next/templates/init/components/layouts/admin-sidebar-branding-skeleton.tsx +1 -1
  4. package/dist/assets/adapters/next/templates/init/components/layouts/admin-sidebar-user-menu-skeleton.tsx +1 -1
  5. package/dist/assets/adapters/next/templates/init/components/layouts/admin-sidebar-user-menu.tsx +3 -3
  6. package/dist/assets/adapters/next/templates/init/components/layouts/content-skeleton.tsx +13 -13
  7. package/dist/assets/adapters/next/templates/init/components/layouts/sidebar-branding.tsx +2 -2
  8. package/dist/assets/adapters/next/templates/init/components/shared/data-table/data-grid-body.tsx +1 -1
  9. package/dist/assets/adapters/next/templates/init/components/shared/data-table/data-grid-header.tsx +1 -1
  10. package/dist/assets/adapters/next/templates/init/components/shared/data-table/data-grid.tsx +1 -1
  11. package/dist/assets/adapters/next/templates/init/components/shared/data-table/data-table-pagination.tsx +2 -2
  12. package/dist/assets/adapters/next/templates/init/components/shared/dev-mode/copyable-code-block.tsx +3 -7
  13. package/dist/assets/adapters/next/templates/init/components/shared/dev-mode/lifecycle-hooks-tab.tsx +2 -2
  14. package/dist/assets/adapters/next/templates/init/components/shared/dev-mode/plain-code-fallback.tsx +1 -1
  15. package/dist/assets/adapters/next/templates/init/components/shared/dev-mode/snippets-tab.tsx +1 -1
  16. package/dist/assets/adapters/next/templates/init/components/shared/dev-mode-integrate.tsx +2 -2
  17. package/dist/assets/adapters/next/templates/init/components/shared/entity-metadata.tsx +1 -1
  18. package/dist/assets/adapters/next/templates/init/components/shared/entity-versions/entity-version-item.tsx +2 -2
  19. package/dist/assets/adapters/next/templates/init/components/shared/entity-versions/entity-versions-current-row.tsx +2 -2
  20. package/dist/assets/adapters/next/templates/init/components/shared/entity-versions/entity-versions-drawer.tsx +2 -2
  21. package/dist/assets/adapters/next/templates/init/components/shared/media/edit-media-dialog-content.tsx +2 -2
  22. package/dist/assets/adapters/next/templates/init/components/shared/media/media-delete-drawer.tsx +5 -5
  23. package/dist/assets/adapters/next/templates/init/components/shared/media/media-grid-item.tsx +3 -3
  24. package/dist/assets/adapters/next/templates/init/components/shared/media/media-grid-pagination.tsx +2 -2
  25. package/dist/assets/adapters/next/templates/init/components/shared/media/media-preview.tsx +1 -1
  26. package/dist/assets/adapters/next/templates/init/components/shared/media/media-url-importer.tsx +1 -1
  27. package/dist/assets/adapters/next/templates/init/components/shared/page-header.tsx +1 -1
  28. package/dist/assets/adapters/next/templates/init/components/shared/sort-order-drag-overlay-item.tsx +1 -1
  29. package/dist/assets/adapters/next/templates/init/components/shared/sort-order-item.tsx +1 -1
  30. package/dist/assets/adapters/next/templates/init/pages/dashboard-page.tsx +3 -3
  31. package/dist/assets/adapters/next/templates/init/pages/forgot-password-form.tsx +2 -2
  32. package/dist/assets/adapters/next/templates/init/pages/forgot-password-page-skeleton.tsx +8 -8
  33. package/dist/assets/adapters/next/templates/init/pages/login-form.tsx +2 -2
  34. package/dist/assets/adapters/next/templates/init/pages/login-page-skeleton.tsx +8 -8
  35. package/dist/assets/adapters/next/templates/init/pages/minimal-account-shell.tsx +1 -1
  36. package/dist/assets/adapters/next/templates/init/pages/profile/profile-form.tsx +2 -2
  37. package/dist/assets/adapters/next/templates/init/pages/reset-password-form.tsx +3 -6
  38. package/dist/assets/adapters/next/templates/init/pages/reset-password-page-skeleton.tsx +8 -8
  39. package/dist/assets/adapters/next/templates/init/pages/settings/audit-log/audit-log-columns.tsx +4 -4
  40. package/dist/assets/adapters/next/templates/init/pages/settings/audit-log/audit-log-detail-row.tsx +2 -2
  41. package/dist/assets/adapters/next/templates/init/pages/settings/forms/forms-settings-columns.tsx +1 -1
  42. package/dist/assets/adapters/next/templates/init/pages/settings/webhooks/delete-webhook-dialog.tsx +1 -1
  43. package/dist/assets/adapters/next/templates/init/pages/settings/webhooks/webhook-endpoint-dialog.tsx +12 -16
  44. package/dist/assets/adapters/next/templates/init/pages/settings/webhooks/webhooks-columns.tsx +9 -9
  45. package/dist/assets/adapters/next/templates/init/pages/settings/webhooks/webhooks-logs-columns.tsx +7 -7
  46. package/dist/assets/adapters/next/templates/init/pages/users/columns.tsx +4 -4
  47. package/dist/assets/adapters/next/templates/init/utils/editor/inline-math-node-view.ts +1 -1
  48. package/dist/assets/adapters/next/templates/init/utils/editor/raw-content-block-node-view.ts +1 -1
  49. package/dist/assets/adapters/next/templates/init/utils/email/render-form-submission-rows.ts +1 -1
  50. package/dist/assets/adapters/next/templates/init/utils/email/render-notification-email.ts +3 -3
  51. package/dist/assets/adapters/next/templates/init/utils/email/render-thank-you-email.ts +3 -3
  52. package/dist/assets/shared-assets/react-admin/custom/content-editor/index.tsx +1 -1
  53. package/dist/assets/shared-assets/react-admin/custom/content-editor/math-bubble-menu.tsx +1 -1
  54. package/dist/assets/shared-assets/react-admin/custom/content-editor/math-editor-controls.tsx +1 -1
  55. package/dist/assets/shared-assets/react-admin/custom/content-editor/remove-table-part-icon.tsx +1 -1
  56. package/dist/assets/shared-assets/react-admin/custom/content-editor/selection-bubble-menu.tsx +2 -2
  57. package/dist/assets/shared-assets/react-admin/custom/content-editor/slash-command-menu.tsx +2 -4
  58. package/dist/assets/shared-assets/react-admin/custom/content-editor/source-mode.tsx +2 -2
  59. package/dist/assets/shared-assets/react-admin/custom/content-editor/table-add-controls.tsx +4 -4
  60. package/dist/assets/shared-assets/react-admin/custom/content-editor/table-bubble-menu.tsx +1 -1
  61. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-node/removable-image-node/removable-image-node.tsx +3 -3
  62. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-button/highlight-swatch.tsx +2 -2
  63. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-popover/color-highlight-popover-content.tsx +1 -1
  64. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-popover/color-highlight-popover.tsx +1 -1
  65. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-popover/highlight-color-button.tsx +2 -2
  66. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-popover/source-color-highlight-popover.tsx +1 -1
  67. package/dist/assets/shared-assets/react-admin/custom/date-range-picker.tsx +9 -10
  68. package/dist/assets/shared-assets/react-admin/custom/dynamic-list-field.tsx +2 -2
  69. package/dist/assets/shared-assets/react-admin/custom/gallery-field.tsx +4 -4
  70. package/dist/assets/shared-assets/react-admin/custom/icon-picker.tsx +2 -3
  71. package/dist/assets/shared-assets/react-admin/custom/icons-column-skeleton.tsx +2 -2
  72. package/dist/assets/shared-assets/react-admin/custom/media-field.tsx +3 -3
  73. package/dist/assets/shared-assets/react-admin/custom/nested-object-list-field.tsx +1 -1
  74. package/dist/assets/shared-assets/react-admin/custom/placeholder-card.tsx +2 -2
  75. package/dist/assets/shared-assets/react-admin/custom/placeholder.tsx +3 -3
  76. package/dist/assets/shared-assets/react-admin/custom/sortable-gallery-item.tsx +1 -1
  77. package/dist/assets/shared-assets/react-admin/custom/upload-dropzone.tsx +3 -5
  78. package/dist/assets/shared-assets/react-admin/ui/accordion.tsx +3 -3
  79. package/dist/assets/shared-assets/react-admin/ui/alert-dialog.tsx +4 -4
  80. package/dist/assets/shared-assets/react-admin/ui/alert.tsx +2 -2
  81. package/dist/assets/shared-assets/react-admin/ui/avatar.tsx +5 -5
  82. package/dist/assets/shared-assets/react-admin/ui/badge.tsx +1 -1
  83. package/dist/assets/shared-assets/react-admin/ui/breadcrumb.tsx +1 -1
  84. package/dist/assets/shared-assets/react-admin/ui/button-group.tsx +4 -4
  85. package/dist/assets/shared-assets/react-admin/ui/button.tsx +2 -2
  86. package/dist/assets/shared-assets/react-admin/ui/calendar.tsx +15 -21
  87. package/dist/assets/shared-assets/react-admin/ui/card.tsx +5 -5
  88. package/dist/assets/shared-assets/react-admin/ui/carousel.tsx +2 -2
  89. package/dist/assets/shared-assets/react-admin/ui/chart.tsx +4 -4
  90. package/dist/assets/shared-assets/react-admin/ui/checkbox.tsx +1 -1
  91. package/dist/assets/shared-assets/react-admin/ui/combobox.tsx +6 -6
  92. package/dist/assets/shared-assets/react-admin/ui/context-menu.tsx +7 -7
  93. package/dist/assets/shared-assets/react-admin/ui/dialog.tsx +3 -3
  94. package/dist/assets/shared-assets/react-admin/ui/drawer.tsx +5 -5
  95. package/dist/assets/shared-assets/react-admin/ui/dropdown-menu.tsx +8 -8
  96. package/dist/assets/shared-assets/react-admin/ui/empty.tsx +5 -5
  97. package/dist/assets/shared-assets/react-admin/ui/field.tsx +6 -12
  98. package/dist/assets/shared-assets/react-admin/ui/form.tsx +2 -2
  99. package/dist/assets/shared-assets/react-admin/ui/hover-card.tsx +1 -1
  100. package/dist/assets/shared-assets/react-admin/ui/input-group.tsx +6 -6
  101. package/dist/assets/shared-assets/react-admin/ui/input-otp.tsx +2 -2
  102. package/dist/assets/shared-assets/react-admin/ui/input.tsx +1 -1
  103. package/dist/assets/shared-assets/react-admin/ui/item.tsx +4 -4
  104. package/dist/assets/shared-assets/react-admin/ui/kbd.tsx +1 -1
  105. package/dist/assets/shared-assets/react-admin/ui/label.tsx +1 -1
  106. package/dist/assets/shared-assets/react-admin/ui/menubar.tsx +10 -10
  107. package/dist/assets/shared-assets/react-admin/ui/native-select.tsx +1 -1
  108. package/dist/assets/shared-assets/react-admin/ui/navigation-menu.tsx +5 -5
  109. package/dist/assets/shared-assets/react-admin/ui/popover.tsx +3 -7
  110. package/dist/assets/shared-assets/react-admin/ui/progress.tsx +3 -3
  111. package/dist/assets/shared-assets/react-admin/ui/radio-group.tsx +2 -2
  112. package/dist/assets/shared-assets/react-admin/ui/resizable.tsx +1 -1
  113. package/dist/assets/shared-assets/react-admin/ui/scroll-area.tsx +2 -2
  114. package/dist/assets/shared-assets/react-admin/ui/select.tsx +4 -4
  115. package/dist/assets/shared-assets/react-admin/ui/sheet.tsx +3 -3
  116. package/dist/assets/shared-assets/react-admin/ui/sidebar.tsx +16 -16
  117. package/dist/assets/shared-assets/react-admin/ui/skeleton.tsx +1 -1
  118. package/dist/assets/shared-assets/react-admin/ui/slider.tsx +2 -2
  119. package/dist/assets/shared-assets/react-admin/ui/switch.tsx +2 -2
  120. package/dist/assets/shared-assets/react-admin/ui/table.tsx +2 -6
  121. package/dist/assets/shared-assets/react-admin/ui/tabs.tsx +3 -3
  122. package/dist/assets/shared-assets/react-admin/ui/textarea.tsx +1 -1
  123. package/dist/assets/shared-assets/react-admin/ui/toggle-group.tsx +2 -2
  124. package/dist/assets/shared-assets/react-admin/ui/toggle.tsx +1 -1
  125. package/dist/assets/shared-assets/react-admin/ui/tooltip.tsx +2 -2
  126. package/dist/cli.js +107 -79
  127. package/dist/cli.js.map +1 -1
  128. package/package.json +1 -1
@@ -25,7 +25,7 @@ export function SortableItem({ id, label }: SortOrderItemData) {
25
25
  {...listeners}
26
26
  >
27
27
  <GripVertical strokeWidth={1} />
28
- <span className="min-w-0 truncate text-sm">{label}</span>
28
+ <span className="min-w-0 truncate">{label}</span>
29
29
  </Button>
30
30
  </div>
31
31
  )
@@ -46,7 +46,7 @@ export default function DashboardPage() {
46
46
  <CardContent className="p-10!">
47
47
  <div className="grid grid-cols-2 gap-10">
48
48
  <div className="flex w-full flex-col gap-1">
49
- <p className="text-base font-medium">Hey, let's get started</p>
49
+ <p className="font-medium">Hey, let's get started</p>
50
50
  <p className="text-muted-foreground">
51
51
  Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam, quos.
52
52
  </p>
@@ -64,12 +64,12 @@ export default function DashboardPage() {
64
64
  <div className="flex w-full flex-col gap-1">
65
65
  {envVariables.map((env) => (
66
66
  <div
67
- className="flex w-full flex-col rounded-sm border border-border bg-card py-2 pr-2 pl-4 shadow-card"
67
+ className="flex w-full flex-col rounded border border-border bg-card py-2 pr-2 pl-4 shadow-card"
68
68
  key={env.name}
69
69
  >
70
70
  <div className="flex items-center justify-between">
71
71
  <div className="flex items-center gap-2">
72
- <span className="">{env.label}</span>
72
+ <span>{env.label}</span>
73
73
  <Badge variant={env.value ? 'success' : 'destructive'}>
74
74
  {env.value ? 'Connected' : 'Not configured'}
75
75
  </Badge>
@@ -82,7 +82,7 @@ export function ForgotPasswordForm({ className, ...props }: React.ComponentProps
82
82
  >
83
83
  <FieldGroup className="gap-10 pb-12">
84
84
  <div className="flex flex-col items-start">
85
- <h1 className="text-xl font-medium">Forgot password</h1>
85
+ <h1 className="font-medium">Forgot password</h1>
86
86
  <p className="text-balance text-muted-foreground">
87
87
  Enter your email and we&apos;ll send you a reset link when email delivery is
88
88
  enabled
@@ -110,7 +110,7 @@ export function ForgotPasswordForm({ className, ...props }: React.ComponentProps
110
110
  </Field>
111
111
  <Link
112
112
  href="/admin/login"
113
- className="text-center text-sm underline-offset-4 hover:underline"
113
+ className="text-center underline-offset-4 hover:underline"
114
114
  >
115
115
  Back to sign in
116
116
  </Link>
@@ -1,21 +1,21 @@
1
1
  export function ForgotPasswordPageSkeleton() {
2
2
  return (
3
- <div className="overflow-hidden rounded-sm border bg-card">
3
+ <div className="overflow-hidden rounded border bg-card">
4
4
  <div className="grid grid-cols-[5fr_7fr]">
5
5
  <div className="block min-h-auth-forgot-panel bg-muted" />
6
6
  <div className="flex min-h-auth-forgot-panel flex-col gap-10 p-20">
7
7
  <div className="space-y-3">
8
- <div className="h-6 w-40 animate-pulse rounded-md bg-muted" />
9
- <div className="h-4 w-full max-w-72 animate-pulse rounded-md bg-muted" />
10
- <div className="h-4 w-52 animate-pulse rounded-md bg-muted" />
8
+ <div className="h-6 w-40 animate-pulse rounded bg-muted" />
9
+ <div className="h-4 w-full max-w-72 animate-pulse rounded bg-muted" />
10
+ <div className="h-4 w-52 animate-pulse rounded bg-muted" />
11
11
  </div>
12
12
  <div className="space-y-4">
13
13
  <div className="space-y-2">
14
- <div className="h-4 w-12 animate-pulse rounded-md bg-muted" />
15
- <div className="h-10 w-full animate-pulse rounded-md bg-muted" />
14
+ <div className="h-4 w-12 animate-pulse rounded bg-muted" />
15
+ <div className="h-10 w-full animate-pulse rounded bg-muted" />
16
16
  </div>
17
- <div className="h-10 w-full animate-pulse rounded-md bg-muted" />
18
- <div className="mx-auto h-4 w-20 animate-pulse rounded-md bg-muted" />
17
+ <div className="h-10 w-full animate-pulse rounded bg-muted" />
18
+ <div className="mx-auto h-4 w-20 animate-pulse rounded bg-muted" />
19
19
  </div>
20
20
  </div>
21
21
  </div>
@@ -98,7 +98,7 @@ export function LoginForm({ className, ...props }: React.ComponentProps<'div'>)
98
98
  >
99
99
  <FieldGroup className="gap-10 pb-12">
100
100
  <div className="flex flex-col items-start">
101
- <h1 className="text-xl font-medium">Sign In</h1>
101
+ <h1 className="font-medium">Sign In</h1>
102
102
  </div>
103
103
  <div className="flex flex-col gap-4">
104
104
  <Field>
@@ -119,7 +119,7 @@ export function LoginForm({ className, ...props }: React.ComponentProps<'div'>)
119
119
  <FieldLabel htmlFor="password">Password</FieldLabel>
120
120
  <Link
121
121
  href="/admin/forgot-password"
122
- className="ml-auto text-sm underline-offset-4 hover:underline"
122
+ className="ml-auto underline-offset-4 hover:underline"
123
123
  tabIndex={-1}
124
124
  >
125
125
  Forgot password?
@@ -1,23 +1,23 @@
1
1
  export function LoginPageSkeleton() {
2
2
  return (
3
- <div className="overflow-hidden rounded-sm border bg-card">
3
+ <div className="overflow-hidden rounded border bg-card">
4
4
  <div className="grid grid-cols-[5fr_7fr]">
5
5
  <div className="block min-h-auth-login-panel bg-muted" />
6
6
  <div className="flex min-h-auth-login-panel flex-col gap-10 p-20">
7
7
  <div className="space-y-3">
8
- <div className="h-6 w-32 animate-pulse rounded-md bg-muted" />
9
- <div className="h-4 w-40 animate-pulse rounded-md bg-muted" />
8
+ <div className="h-6 w-32 animate-pulse rounded bg-muted" />
9
+ <div className="h-4 w-40 animate-pulse rounded bg-muted" />
10
10
  </div>
11
11
  <div className="space-y-4">
12
12
  <div className="space-y-2">
13
- <div className="h-4 w-12 animate-pulse rounded-md bg-muted" />
14
- <div className="h-10 w-full animate-pulse rounded-md bg-muted" />
13
+ <div className="h-4 w-12 animate-pulse rounded bg-muted" />
14
+ <div className="h-10 w-full animate-pulse rounded bg-muted" />
15
15
  </div>
16
16
  <div className="space-y-2">
17
- <div className="h-4 w-20 animate-pulse rounded-md bg-muted" />
18
- <div className="h-10 w-full animate-pulse rounded-md bg-muted" />
17
+ <div className="h-4 w-20 animate-pulse rounded bg-muted" />
18
+ <div className="h-10 w-full animate-pulse rounded bg-muted" />
19
19
  </div>
20
- <div className="h-10 w-full animate-pulse rounded-md bg-muted" />
20
+ <div className="h-10 w-full animate-pulse rounded bg-muted" />
21
21
  </div>
22
22
  </div>
23
23
  </div>
@@ -13,7 +13,7 @@ export function MinimalAccountShell({
13
13
  <header className="sticky top-0 z-50 flex h-14 items-center justify-between border-b bg-background px-6">
14
14
  <Link
15
15
  href="/admin/profile"
16
- className="text-sm font-medium transition-colors hover:text-foreground/80"
16
+ className="font-medium transition-colors hover:text-foreground/80"
17
17
  >
18
18
  {name}
19
19
  </Link>
@@ -201,7 +201,7 @@ export function ProfileForm({ user }: ProfileFormProps) {
201
201
  <div className="flex items-center gap-4 pl-1">
202
202
  <Avatar className="size-12">
203
203
  <AvatarImage src={imageValue || undefined} />
204
- <AvatarFallback className="text-lg font-semibold">
204
+ <AvatarFallback className="font-semibold">
205
205
  {user.name?.charAt(0) ?? '?'}
206
206
  </AvatarFallback>
207
207
  </Avatar>
@@ -393,7 +393,7 @@ export function ProfileForm({ user }: ProfileFormProps) {
393
393
  <CardDescription>Send a password reset link to your email address</CardDescription>
394
394
  </CardHeader>
395
395
  <CardContent>
396
- <p className="text-sm text-muted-foreground">
396
+ <p className="text-muted-foreground">
397
397
  A reset link will be sent to{' '}
398
398
  <span className="font-medium text-foreground">{user.email}</span>
399
399
  </p>
@@ -64,15 +64,12 @@ export function ResetPasswordForm({ className, ...props }: React.ComponentProps<
64
64
  <div className="p-20">
65
65
  <FieldGroup className="gap-10 pb-12">
66
66
  <div className="flex flex-col items-start">
67
- <h1 className="text-xl font-medium">Invalid reset link</h1>
67
+ <h1 className="font-medium">Invalid reset link</h1>
68
68
  <p className="text-balance text-muted-foreground">
69
69
  This password reset link is invalid or has expired. Please request a new one.
70
70
  </p>
71
71
  </div>
72
- <Link
73
- href="/admin/forgot-password"
74
- className="text-sm underline-offset-4 hover:underline"
75
- >
72
+ <Link href="/admin/forgot-password" className="underline-offset-4 hover:underline">
76
73
  Request a new reset link
77
74
  </Link>
78
75
  </FieldGroup>
@@ -123,7 +120,7 @@ export function ResetPasswordForm({ className, ...props }: React.ComponentProps<
123
120
  >
124
121
  <FieldGroup className="gap-10 pb-12">
125
122
  <div className="flex flex-col items-start">
126
- <h1 className="text-xl font-medium">Reset password</h1>
123
+ <h1 className="font-medium">Reset password</h1>
127
124
  <p className="text-balance text-muted-foreground">
128
125
  Enter your new password below
129
126
  </p>
@@ -1,23 +1,23 @@
1
1
  export function ResetPasswordPageSkeleton() {
2
2
  return (
3
- <div className="overflow-hidden rounded-sm border bg-card">
3
+ <div className="overflow-hidden rounded border bg-card">
4
4
  <div className="grid grid-cols-[5fr_7fr]">
5
5
  <div className="block min-h-auth-reset-panel bg-muted" />
6
6
  <div className="flex min-h-auth-reset-panel flex-col gap-10 p-20">
7
7
  <div className="space-y-3">
8
- <div className="h-6 w-36 animate-pulse rounded-md bg-muted" />
9
- <div className="h-4 w-56 animate-pulse rounded-md bg-muted" />
8
+ <div className="h-6 w-36 animate-pulse rounded bg-muted" />
9
+ <div className="h-4 w-56 animate-pulse rounded bg-muted" />
10
10
  </div>
11
11
  <div className="space-y-4">
12
12
  <div className="space-y-2">
13
- <div className="h-4 w-28 animate-pulse rounded-md bg-muted" />
14
- <div className="h-10 w-full animate-pulse rounded-md bg-muted" />
13
+ <div className="h-4 w-28 animate-pulse rounded bg-muted" />
14
+ <div className="h-10 w-full animate-pulse rounded bg-muted" />
15
15
  </div>
16
16
  <div className="space-y-2">
17
- <div className="h-4 w-32 animate-pulse rounded-md bg-muted" />
18
- <div className="h-10 w-full animate-pulse rounded-md bg-muted" />
17
+ <div className="h-4 w-32 animate-pulse rounded bg-muted" />
18
+ <div className="h-10 w-full animate-pulse rounded bg-muted" />
19
19
  </div>
20
- <div className="h-10 w-full animate-pulse rounded-md bg-muted" />
20
+ <div className="h-10 w-full animate-pulse rounded bg-muted" />
21
21
  </div>
22
22
  </div>
23
23
  </div>
@@ -53,7 +53,7 @@ function SortableAuditLogHeader({
53
53
  <Button
54
54
  variant="ghost"
55
55
  onClick={() => column.toggleSorting(column.getIsSorted() === 'asc')}
56
- className="group w-full min-w-0 scale-100! justify-start overflow-hidden rounded-none border-none bg-transparent! px-0!"
56
+ className="group w-full min-w-0 scale-100! justify-start overflow-hidden border-none bg-transparent! px-0!"
57
57
  aria-label={`Sort by ${label}, ${sortLabel}`}
58
58
  aria-sort={
59
59
  sortDirection === 'asc' ? 'ascending' : sortDirection === 'desc' ? 'descending' : 'none'
@@ -82,7 +82,7 @@ export function createAuditLogColumns(): ColumnDef<AuditLogEntry>[] {
82
82
  <span className="truncate font-medium">
83
83
  {row.original.targetLabel ?? row.original.targetId ?? 'Unknown'}
84
84
  </span>
85
- <span className="truncate text-xs text-muted-foreground">{row.original.targetType}</span>
85
+ <span className="truncate text-muted-foreground">{row.original.targetType}</span>
86
86
  </div>
87
87
  )
88
88
  },
@@ -95,7 +95,7 @@ export function createAuditLogColumns(): ColumnDef<AuditLogEntry>[] {
95
95
  <span className="truncate">
96
96
  {row.original.actorEmail ?? row.original.actorName ?? 'Unknown'}
97
97
  </span>
98
- <span className="truncate text-xs text-muted-foreground">
98
+ <span className="truncate text-muted-foreground">
99
99
  {row.original.actorRole ?? 'No role'}
100
100
  </span>
101
101
  </div>
@@ -120,7 +120,7 @@ export function createAuditLogColumns(): ColumnDef<AuditLogEntry>[] {
120
120
  cell: ({ row }) => (
121
121
  <div className="text-muted-foreground">
122
122
  <div className="truncate">{row.original.sourceType}</div>
123
- <div className="truncate text-xs">{row.original.ipAddress ?? 'No IP'}</div>
123
+ <div className="truncate">{row.original.ipAddress ?? 'No IP'}</div>
124
124
  </div>
125
125
  )
126
126
  },
@@ -8,8 +8,8 @@ interface AuditLogDetailRowProps {
8
8
  export function AuditLogDetailRow({ label, value }: AuditLogDetailRowProps) {
9
9
  return (
10
10
  <div className="grid grid-cols-audit-detail gap-3 border-b border-border px-4 py-2 last:border-b-0">
11
- <dt className="text-sm font-medium text-muted-foreground">{label}</dt>
12
- <dd className="min-w-0 text-sm break-words text-foreground">{value || 'Unknown'}</dd>
11
+ <dt className="font-medium text-muted-foreground">{label}</dt>
12
+ <dd className="min-w-0 break-words text-foreground">{value || 'Unknown'}</dd>
13
13
  </div>
14
14
  )
15
15
  }
@@ -22,7 +22,7 @@ export function createFormSettingsColumns(isPending: boolean): ColumnDef<FormSet
22
22
  isPending ? (
23
23
  <span className="text-muted-foreground">Loading…</span>
24
24
  ) : row.original.notificationEmails ? (
25
- <span className="truncate font-mono text-xs">{row.original.notificationEmails}</span>
25
+ <span className="truncate font-mono">{row.original.notificationEmails}</span>
26
26
  ) : (
27
27
  <span className="text-muted-foreground">No emails configured</span>
28
28
  )
@@ -63,7 +63,7 @@ export function DeleteWebhookDialog({ webhook, open, onOpenChange }: DeleteWebho
63
63
  </DialogDescription>
64
64
  </DialogHeader>
65
65
  <DialogBody>
66
- <p className="text-sm text-muted-foreground">This action cannot be undone.</p>
66
+ <p className="text-muted-foreground">This action cannot be undone.</p>
67
67
  </DialogBody>
68
68
  <DialogFooter showCloseButton={true}>
69
69
  <Button
@@ -244,7 +244,7 @@ export function WebhookEndpointDialog({ webhook, open, onOpenChange }: WebhookEn
244
244
  control={form.control}
245
245
  name="enabled"
246
246
  render={({ field }) => (
247
- <FormItem className="flex items-center justify-between rounded-md border border-border px-3 py-2">
247
+ <FormItem className="flex items-center justify-between rounded border border-border px-3 py-2">
248
248
  <FormLabel>Enabled</FormLabel>
249
249
  <FormControl>
250
250
  <Switch
@@ -257,10 +257,10 @@ export function WebhookEndpointDialog({ webhook, open, onOpenChange }: WebhookEn
257
257
  )}
258
258
  />
259
259
  {isEdit && (
260
- <div className="space-y-2 rounded-md border border-border p-3">
261
- <p className="text-sm leading-none font-medium">Signing secret</p>
260
+ <div className="space-y-2 rounded border border-border p-3">
261
+ <p className="leading-none font-medium">Signing secret</p>
262
262
  <div className="flex items-center gap-2">
263
- <span className="min-w-0 flex-1 truncate font-mono text-xs">
263
+ <span className="min-w-0 flex-1 truncate font-mono">
264
264
  {secret ?? 'whsec_••••••••••••••••'}
265
265
  </span>
266
266
  <Button
@@ -286,7 +286,7 @@ export function WebhookEndpointDialog({ webhook, open, onOpenChange }: WebhookEn
286
286
  {regenerateSecretMutation.isPending ? 'Regenerating…' : 'Regenerate'}
287
287
  </Button>
288
288
  </div>
289
- <p className="text-xs text-muted-foreground">
289
+ <p className="text-muted-foreground">
290
290
  Requests carry x-webhook-id, x-webhook-timestamp, and an HMAC-SHA256
291
291
  x-webhook-signature of the body.
292
292
  </p>
@@ -299,8 +299,8 @@ export function WebhookEndpointDialog({ webhook, open, onOpenChange }: WebhookEn
299
299
  render={() => (
300
300
  <React.Fragment>
301
301
  {formSources.length > 0 && (
302
- <fieldset className="space-y-2 rounded-md border border-border p-3">
303
- <legend className="px-1 text-xs font-medium tracking-wide text-muted-foreground uppercase">
302
+ <fieldset className="space-y-2 rounded border border-border p-3">
303
+ <legend className="px-1 font-medium tracking-wide text-muted-foreground uppercase">
304
304
  Events · Forms
305
305
  </legend>
306
306
  {formSources.flatMap((source) =>
@@ -315,17 +315,15 @@ export function WebhookEndpointDialog({ webhook, open, onOpenChange }: WebhookEn
315
315
  disabled={isPending}
316
316
  />
317
317
  </FormControl>
318
- <FormLabel className="font-mono text-xs font-normal">
319
- {event}
320
- </FormLabel>
318
+ <FormLabel className="font-mono font-normal">{event}</FormLabel>
321
319
  </FormItem>
322
320
  ))
323
321
  )}
324
322
  </fieldset>
325
323
  )}
326
324
  {contentSources.length > 0 && (
327
- <fieldset className="space-y-2 rounded-md border border-border p-3">
328
- <legend className="px-1 text-xs font-medium tracking-wide text-muted-foreground uppercase">
325
+ <fieldset className="space-y-2 rounded border border-border p-3">
326
+ <legend className="px-1 font-medium tracking-wide text-muted-foreground uppercase">
329
327
  Events · Entities
330
328
  </legend>
331
329
  {contentSources.flatMap((source) =>
@@ -340,9 +338,7 @@ export function WebhookEndpointDialog({ webhook, open, onOpenChange }: WebhookEn
340
338
  disabled={isPending}
341
339
  />
342
340
  </FormControl>
343
- <FormLabel className="font-mono text-xs font-normal">
344
- {event}
345
- </FormLabel>
341
+ <FormLabel className="font-mono font-normal">{event}</FormLabel>
346
342
  </FormItem>
347
343
  ))
348
344
  )}
@@ -353,7 +349,7 @@ export function WebhookEndpointDialog({ webhook, open, onOpenChange }: WebhookEn
353
349
  />
354
350
  )}
355
351
  {formSources.length === 0 && contentSources.length === 0 && (
356
- <p className="text-sm text-muted-foreground">
352
+ <p className="text-muted-foreground">
357
353
  No schemas yet — generate an entity or form schema to subscribe this endpoint to
358
354
  its events.
359
355
  </p>
@@ -35,7 +35,7 @@ export function createWebhooksColumns({
35
35
  <Button
36
36
  variant="ghost"
37
37
  onClick={() => column.toggleSorting(column.getIsSorted() === 'asc')}
38
- className="group w-full min-w-0 scale-100! justify-start overflow-hidden rounded-none border-none bg-transparent! px-0!"
38
+ className="group w-full min-w-0 scale-100! justify-start overflow-hidden border-none bg-transparent! px-0!"
39
39
  aria-label={`Sort by Name, ${sortLabel}`}
40
40
  aria-sort={
41
41
  sortDirection === 'asc'
@@ -69,7 +69,7 @@ export function createWebhooksColumns({
69
69
  <Button
70
70
  variant="ghost"
71
71
  onClick={() => column.toggleSorting(column.getIsSorted() === 'asc')}
72
- className="group w-full min-w-0 scale-100! justify-start overflow-hidden rounded-none border-none bg-transparent! px-0!"
72
+ className="group w-full min-w-0 scale-100! justify-start overflow-hidden border-none bg-transparent! px-0!"
73
73
  aria-label={`Sort by URL, ${sortLabel}`}
74
74
  aria-sort={
75
75
  sortDirection === 'asc'
@@ -85,7 +85,7 @@ export function createWebhooksColumns({
85
85
  )
86
86
  },
87
87
  cell: ({ row }) => (
88
- <span className="truncate font-mono text-xs text-muted-foreground">{row.original.url}</span>
88
+ <span className="truncate font-mono text-muted-foreground">{row.original.url}</span>
89
89
  )
90
90
  },
91
91
  {
@@ -104,7 +104,7 @@ export function createWebhooksColumns({
104
104
  <Button
105
105
  variant="ghost"
106
106
  onClick={() => column.toggleSorting(column.getIsSorted() === 'asc')}
107
- className="group w-full min-w-0 scale-100! justify-start overflow-hidden rounded-none border-none bg-transparent! px-0!"
107
+ className="group w-full min-w-0 scale-100! justify-start overflow-hidden border-none bg-transparent! px-0!"
108
108
  aria-label={`Sort by Enabled, ${sortLabel}`}
109
109
  aria-sort={
110
110
  sortDirection === 'asc'
@@ -137,7 +137,7 @@ export function createWebhooksColumns({
137
137
  <Button
138
138
  variant="ghost"
139
139
  onClick={() => column.toggleSorting(column.getIsSorted() === 'asc')}
140
- className="group w-full min-w-0 scale-100! justify-start overflow-hidden rounded-none border-none bg-transparent! px-0!"
140
+ className="group w-full min-w-0 scale-100! justify-start overflow-hidden border-none bg-transparent! px-0!"
141
141
  aria-label={`Sort by Events, ${sortLabel}`}
142
142
  aria-sort={
143
143
  sortDirection === 'asc'
@@ -170,7 +170,7 @@ export function createWebhooksColumns({
170
170
  <Button
171
171
  variant="ghost"
172
172
  onClick={() => column.toggleSorting(column.getIsSorted() === 'asc')}
173
- className="group w-full min-w-0 scale-100! justify-start overflow-hidden rounded-none border-none bg-transparent! px-0!"
173
+ className="group w-full min-w-0 scale-100! justify-start overflow-hidden border-none bg-transparent! px-0!"
174
174
  aria-label={`Sort by Last delivery, ${sortLabel}`}
175
175
  aria-sort={
176
176
  sortDirection === 'asc'
@@ -191,7 +191,7 @@ export function createWebhooksColumns({
191
191
  <Badge variant={row.original.lastDeliverySuccess ? 'outline' : 'destructive'}>
192
192
  {row.original.lastDeliverySuccess ? 'Delivered' : 'Failed'}
193
193
  </Badge>
194
- <span className="truncate text-xs text-muted-foreground">
194
+ <span className="truncate text-muted-foreground">
195
195
  {formatDistanceToNow(new Date(row.original.lastDeliveryAt), {
196
196
  addSuffix: true
197
197
  })}
@@ -217,7 +217,7 @@ export function createWebhooksColumns({
217
217
  <Button
218
218
  variant="ghost"
219
219
  onClick={() => column.toggleSorting(column.getIsSorted() === 'asc')}
220
- className="group w-full min-w-0 scale-100! justify-start overflow-hidden rounded-none border-none bg-transparent! px-0!"
220
+ className="group w-full min-w-0 scale-100! justify-start overflow-hidden border-none bg-transparent! px-0!"
221
221
  aria-label={`Sort by Created, ${sortLabel}`}
222
222
  aria-sort={
223
223
  sortDirection === 'asc'
@@ -233,7 +233,7 @@ export function createWebhooksColumns({
233
233
  )
234
234
  },
235
235
  cell: ({ row }) => (
236
- <div className="text-sm">
236
+ <div>
237
237
  {new Date(row.original.createdAt).toLocaleDateString('en-US', {
238
238
  month: 'short',
239
239
  day: 'numeric',
@@ -24,7 +24,7 @@ export const logsColumns: ColumnDef<WebhookDeliveryEntry>[] = [
24
24
  <Button
25
25
  variant="ghost"
26
26
  onClick={() => column.toggleSorting(column.getIsSorted() === 'asc')}
27
- className="group w-full min-w-0 scale-100! justify-start overflow-hidden rounded-none border-none bg-transparent! px-0!"
27
+ className="group w-full min-w-0 scale-100! justify-start overflow-hidden border-none bg-transparent! px-0!"
28
28
  aria-label={`Sort by Status, ${sortLabel}`}
29
29
  aria-sort={
30
30
  sortDirection === 'asc' ? 'ascending' : sortDirection === 'desc' ? 'descending' : 'none'
@@ -60,7 +60,7 @@ export const logsColumns: ColumnDef<WebhookDeliveryEntry>[] = [
60
60
  <Button
61
61
  variant="ghost"
62
62
  onClick={() => column.toggleSorting(column.getIsSorted() === 'asc')}
63
- className="group w-full min-w-0 scale-100! justify-start overflow-hidden rounded-none border-none bg-transparent! px-0!"
63
+ className="group w-full min-w-0 scale-100! justify-start overflow-hidden border-none bg-transparent! px-0!"
64
64
  aria-label={`Sort by Event, ${sortLabel}`}
65
65
  aria-sort={
66
66
  sortDirection === 'asc' ? 'ascending' : sortDirection === 'desc' ? 'descending' : 'none'
@@ -71,7 +71,7 @@ export const logsColumns: ColumnDef<WebhookDeliveryEntry>[] = [
71
71
  </Button>
72
72
  )
73
73
  },
74
- cell: ({ row }) => <span className="truncate font-mono text-xs">{row.original.event}</span>
74
+ cell: ({ row }) => <span className="truncate font-mono">{row.original.event}</span>
75
75
  },
76
76
  {
77
77
  accessorKey: 'webhookName',
@@ -89,7 +89,7 @@ export const logsColumns: ColumnDef<WebhookDeliveryEntry>[] = [
89
89
  <Button
90
90
  variant="ghost"
91
91
  onClick={() => column.toggleSorting(column.getIsSorted() === 'asc')}
92
- className="group w-full min-w-0 scale-100! justify-start overflow-hidden rounded-none border-none bg-transparent! px-0!"
92
+ className="group w-full min-w-0 scale-100! justify-start overflow-hidden border-none bg-transparent! px-0!"
93
93
  aria-label={`Sort by Endpoint, ${sortLabel}`}
94
94
  aria-sort={
95
95
  sortDirection === 'asc' ? 'ascending' : sortDirection === 'desc' ? 'descending' : 'none'
@@ -118,7 +118,7 @@ export const logsColumns: ColumnDef<WebhookDeliveryEntry>[] = [
118
118
  <Button
119
119
  variant="ghost"
120
120
  onClick={() => column.toggleSorting(column.getIsSorted() === 'asc')}
121
- className="group w-full min-w-0 scale-100! justify-start overflow-hidden rounded-none border-none bg-transparent! px-0!"
121
+ className="group w-full min-w-0 scale-100! justify-start overflow-hidden border-none bg-transparent! px-0!"
122
122
  aria-label={`Sort by Attempt, ${sortLabel}`}
123
123
  aria-sort={
124
124
  sortDirection === 'asc' ? 'ascending' : sortDirection === 'desc' ? 'descending' : 'none'
@@ -147,7 +147,7 @@ export const logsColumns: ColumnDef<WebhookDeliveryEntry>[] = [
147
147
  <Button
148
148
  variant="ghost"
149
149
  onClick={() => column.toggleSorting(column.getIsSorted() === 'asc')}
150
- className="group w-full min-w-0 scale-100! justify-start overflow-hidden rounded-none border-none bg-transparent! px-0!"
150
+ className="group w-full min-w-0 scale-100! justify-start overflow-hidden border-none bg-transparent! px-0!"
151
151
  aria-label={`Sort by Duration, ${sortLabel}`}
152
152
  aria-sort={
153
153
  sortDirection === 'asc' ? 'ascending' : sortDirection === 'desc' ? 'descending' : 'none'
@@ -178,7 +178,7 @@ export const logsColumns: ColumnDef<WebhookDeliveryEntry>[] = [
178
178
  <Button
179
179
  variant="ghost"
180
180
  onClick={() => column.toggleSorting(column.getIsSorted() === 'asc')}
181
- className="group w-full min-w-0 scale-100! justify-start overflow-hidden rounded-none border-none bg-transparent! px-0!"
181
+ className="group w-full min-w-0 scale-100! justify-start overflow-hidden border-none bg-transparent! px-0!"
182
182
  aria-label={`Sort by When, ${sortLabel}`}
183
183
  aria-sort={
184
184
  sortDirection === 'asc' ? 'ascending' : sortDirection === 'desc' ? 'descending' : 'none'
@@ -26,7 +26,7 @@ export const columns: ColumnDef<User>[] = [
26
26
  <Button
27
27
  variant="ghost"
28
28
  onClick={() => column.toggleSorting(column.getIsSorted() === 'asc')}
29
- className="group w-full min-w-0 scale-100! justify-start overflow-hidden rounded-none border-none bg-transparent! px-0!"
29
+ className="group w-full min-w-0 scale-100! justify-start overflow-hidden border-none bg-transparent! px-0!"
30
30
  >
31
31
  <span className="truncate">User</span>
32
32
  <SortIndicator direction={sortDirection} />
@@ -43,7 +43,7 @@ export const columns: ColumnDef<User>[] = [
43
43
  </Avatar>
44
44
  <div className="flex flex-col">
45
45
  <div className="font-medium">{name || 'N/A'}</div>
46
- <div className="text-sm text-muted-foreground">{email}</div>
46
+ <div className="text-muted-foreground">{email}</div>
47
47
  </div>
48
48
  </div>
49
49
  )
@@ -112,7 +112,7 @@ export const columns: ColumnDef<User>[] = [
112
112
  <Button
113
113
  variant="ghost"
114
114
  onClick={() => column.toggleSorting(column.getIsSorted() === 'asc')}
115
- className="group w-full min-w-0 scale-100! justify-start overflow-hidden rounded-none border-none bg-transparent! px-0!"
115
+ className="group w-full min-w-0 scale-100! justify-start overflow-hidden border-none bg-transparent! px-0!"
116
116
  >
117
117
  <span className="truncate">Joined</span>
118
118
  <SortIndicator direction={sortDirection} />
@@ -122,7 +122,7 @@ export const columns: ColumnDef<User>[] = [
122
122
  cell: ({ row }) => {
123
123
  const date = new Date(row.getValue('createdAt'))
124
124
  return (
125
- <div className="text-sm">
125
+ <div>
126
126
  {date.toLocaleDateString('en-US', {
127
127
  month: 'short',
128
128
  day: 'numeric',
@@ -19,7 +19,7 @@ export class InlineMathNodeView {
19
19
  this.dom = document.createElement('span')
20
20
  this.dom.dataset.contentEditorInlineMath = ''
21
21
  this.dom.contentEditable = 'false'
22
- this.dom.className = 'content-editor-inline-math rounded-[3px] px-0.5'
22
+ this.dom.className = 'content-editor-inline-math rounded px-0.5'
23
23
  this.render()
24
24
  }
25
25
 
@@ -31,7 +31,7 @@ export class RawContentBlockNodeView {
31
31
  this.dom.dataset.raw = this.currentRaw
32
32
  this.dom.contentEditable = 'false'
33
33
  this.dom.className =
34
- 'content-editor-raw-block not-prose my-4 overflow-hidden rounded-md border bg-muted/20'
34
+ 'content-editor-raw-block not-prose my-4 overflow-hidden rounded border bg-muted/20'
35
35
 
36
36
  this.preview = document.createElement('div')
37
37
  this.preview.contentEditable = 'true'
@@ -9,7 +9,7 @@ export function renderFormSubmissionRows(submissionData: Record<string, unknown>
9
9
  const displayValue = escapeHtml(formatEmailValue(value))
10
10
 
11
11
  return `<tr>
12
- <th style="border-bottom:1px solid ${emailTheme.border};color:${emailTheme.mutedText};font-size:12px;font-weight:600;padding:12px;text-align:left;text-transform:uppercase;vertical-align:top;width:36%;">${label}</th>
12
+ <th style="border-bottom:1px solid ${emailTheme.border};color:${emailTheme.mutedText};font-size:14px;font-weight:600;padding:12px;text-align:left;text-transform:uppercase;vertical-align:top;width:36%;">${label}</th>
13
13
  <td style="border-bottom:1px solid ${emailTheme.border};color:${emailTheme.text};font-size:14px;line-height:20px;padding:12px;vertical-align:top;">${displayValue}</td>
14
14
  </tr>`
15
15
  })
@@ -13,10 +13,10 @@ export function renderNotificationEmail(input: FormEmailDeliveryInput): string {
13
13
  <html>
14
14
  <body style="margin:0;background:${emailTheme.pageBackground};font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;color:${emailTheme.text};">
15
15
  <div style="margin:0 auto;max-width:${emailTheme.contentWidth};padding:40px 20px;">
16
- <div style="border-radius:12px;background:${emailTheme.surface};border:1px solid ${emailTheme.border};overflow:hidden;">
16
+ <div style="border-radius:6px;background:${emailTheme.surface};border:1px solid ${emailTheme.border};overflow:hidden;">
17
17
  <div style="background:${emailTheme.headerBackground};color:${emailTheme.inverseText};padding:24px 28px;">
18
- <p style="margin:0;color:${emailTheme.mutedInverseText};font-size:13px;line-height:20px;">${formName}</p>
19
- <h1 style="margin:4px 0 0;font-size:24px;line-height:32px;">New ${formLabel} submission</h1>
18
+ <p style="margin:0;color:${emailTheme.mutedInverseText};font-size:14px;line-height:20px;">${formName}</p>
19
+ <h1 style="margin:4px 0 0;font-size:14px;line-height:32px;">New ${formLabel} submission</h1>
20
20
  </div>
21
21
  <div style="padding:24px 28px;">
22
22
  <p style="margin:0 0 20px;color:${emailTheme.mutedText};font-size:14px;line-height:20px;">Submitted at ${submittedAt}</p>
@@ -9,9 +9,9 @@ export function renderThankYouEmail(input: FormEmailDeliveryInput): string {
9
9
  <html>
10
10
  <body style="margin:0;background:${emailTheme.pageBackground};font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;color:${emailTheme.text};">
11
11
  <div style="margin:0 auto;max-width:${emailTheme.compactWidth};padding:40px 20px;">
12
- <div style="border-radius:12px;background:${emailTheme.surface};padding:32px;border:1px solid ${emailTheme.border};">
13
- <h1 style="margin:0 0 16px;font-size:24px;line-height:32px;">Thank you</h1>
14
- <p style="margin:0;color:${emailTheme.bodyText};font-size:16px;line-height:24px;">We received your ${formLabel} submission and will get back to you shortly.</p>
12
+ <div style="border-radius:6px;background:${emailTheme.surface};padding:32px;border:1px solid ${emailTheme.border};">
13
+ <h1 style="margin:0 0 16px;font-size:14px;line-height:32px;">Thank you</h1>
14
+ <p style="margin:0;color:${emailTheme.bodyText};font-size:14px;line-height:24px;">We received your ${formLabel} submission and will get back to you shortly.</p>
15
15
  </div>
16
16
  </div>
17
17
  </body>