@alepha/ui 0.16.1 → 0.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (218) hide show
  1. package/dist/admin/{AdminApiKeys-GMORg-1l.js → AdminApiKeys-CF_qOO3u.js} +20 -19
  2. package/dist/admin/AdminApiKeys-CF_qOO3u.js.map +1 -0
  3. package/dist/admin/{AdminAudits-pkWrjq1Z.js → AdminAudits-BQno3hZG.js} +7 -7
  4. package/dist/admin/AdminAudits-BQno3hZG.js.map +1 -0
  5. package/dist/admin/{AdminFiles-WeQbsCsl.js → AdminFiles-kvuUaASF.js} +3 -4
  6. package/dist/admin/{AdminFiles-WeQbsCsl.js.map → AdminFiles-kvuUaASF.js.map} +1 -1
  7. package/dist/admin/AdminJobDashboard-CrPxp0W1.js +485 -0
  8. package/dist/admin/AdminJobDashboard-CrPxp0W1.js.map +1 -0
  9. package/dist/admin/AdminJobExecutions-D-b4Zt7W.js +678 -0
  10. package/dist/admin/AdminJobExecutions-D-b4Zt7W.js.map +1 -0
  11. package/dist/admin/AdminJobRegistry-CNX5cpDx.js +301 -0
  12. package/dist/admin/AdminJobRegistry-CNX5cpDx.js.map +1 -0
  13. package/dist/admin/{AdminLayout-BqZiXx4H.js → AdminLayout-e-ZP5nWw.js} +6 -9
  14. package/dist/admin/AdminLayout-e-ZP5nWw.js.map +1 -0
  15. package/dist/admin/{AdminNotifications-Ds5Un0NJ.js → AdminNotifications-DeHJFf6W.js} +3 -4
  16. package/dist/admin/{AdminNotifications-Ds5Un0NJ.js.map → AdminNotifications-DeHJFf6W.js.map} +1 -1
  17. package/dist/admin/AdminParameters-iQE8o7a7.js +774 -0
  18. package/dist/admin/AdminParameters-iQE8o7a7.js.map +1 -0
  19. package/dist/admin/{AdminSessions-DzIOxM3b.js → AdminSessions-oKJCbd7w.js} +5 -6
  20. package/dist/admin/AdminSessions-oKJCbd7w.js.map +1 -0
  21. package/dist/admin/{AdminUserAudits-CiUPN2BC.js → AdminUserAudits-BNCEle_E.js} +6 -7
  22. package/dist/admin/AdminUserAudits-BNCEle_E.js.map +1 -0
  23. package/dist/admin/{AdminUserCreate-BwQKr4xE.js → AdminUserCreate-CgqeFwCt.js} +6 -6
  24. package/dist/admin/AdminUserCreate-CgqeFwCt.js.map +1 -0
  25. package/dist/admin/{AdminUserDetails-uqtC5aJ1.js → AdminUserDetails-DDe1A1GP.js} +30 -28
  26. package/dist/admin/AdminUserDetails-DDe1A1GP.js.map +1 -0
  27. package/dist/admin/{AdminUserLayout-CiPay35T.js → AdminUserLayout-HAlobhWf.js} +20 -19
  28. package/dist/admin/AdminUserLayout-HAlobhWf.js.map +1 -0
  29. package/dist/admin/{AdminUserSessions-DAE8Nf1F.js → AdminUserSessions-Bq1LnVLf.js} +5 -6
  30. package/dist/admin/AdminUserSessions-Bq1LnVLf.js.map +1 -0
  31. package/dist/admin/{AdminUserSettings-EbahaV2a.js → AdminUserSettings-BRsBZoxV.js} +10 -9
  32. package/dist/admin/AdminUserSettings-BRsBZoxV.js.map +1 -0
  33. package/dist/admin/{AdminUsers-Dcjh0KNW.js → AdminUsers-D71kIOSn.js} +6 -7
  34. package/dist/admin/AdminUsers-D71kIOSn.js.map +1 -0
  35. package/dist/admin/index.d.ts +21 -85
  36. package/dist/admin/index.d.ts.map +1 -1
  37. package/dist/admin/index.js +66 -88
  38. package/dist/admin/index.js.map +1 -1
  39. package/dist/auth/{AuthLayout-Dj5K4SIN.js → AuthLayout-CdJcrPs4.js} +2 -3
  40. package/dist/auth/{AuthLayout-Dj5K4SIN.js.map → AuthLayout-CdJcrPs4.js.map} +1 -1
  41. package/dist/{demo/IconGoogle-CbBF8Hqq.js → auth/IconGoogle-Bm18QD2q.js} +2 -4
  42. package/dist/auth/{IconGoogle-DpSlPZ1u.js.map → IconGoogle-Bm18QD2q.js.map} +1 -1
  43. package/dist/auth/{Login-BBqTosqZ.js → Login-BS_FYTy0.js} +19 -13
  44. package/dist/auth/Login-BS_FYTy0.js.map +1 -0
  45. package/dist/auth/{Profile-Bxj8Nwom.js → Profile-CjDsW378.js} +17 -12
  46. package/dist/auth/Profile-CjDsW378.js.map +1 -0
  47. package/dist/auth/{Register-Ce675Crg.js → Register-C5eqzAaD.js} +27 -17
  48. package/dist/auth/Register-C5eqzAaD.js.map +1 -0
  49. package/dist/auth/{ResetPassword-DWdt7c40.js → ResetPassword-XifinVao.js} +17 -10
  50. package/dist/auth/ResetPassword-XifinVao.js.map +1 -0
  51. package/dist/auth/{VerifyEmail-CI4JwByV.js → VerifyEmail-DTgbeJOO.js} +9 -6
  52. package/dist/auth/VerifyEmail-DTgbeJOO.js.map +1 -0
  53. package/dist/auth/index.d.ts +18 -14
  54. package/dist/auth/index.d.ts.map +1 -1
  55. package/dist/auth/index.js +19 -18
  56. package/dist/auth/index.js.map +1 -1
  57. package/dist/auth/rolldown-runtime-CjeV3_4I.js +18 -0
  58. package/dist/core/index.d.ts +182 -92
  59. package/dist/core/index.d.ts.map +1 -1
  60. package/dist/core/index.js +789 -476
  61. package/dist/core/index.js.map +1 -1
  62. package/dist/demo/DemoDataTable-lnBKWBf8.js +362 -0
  63. package/dist/demo/DemoDataTable-lnBKWBf8.js.map +1 -0
  64. package/dist/demo/{DemoHome-Cce2bWmg.js → DemoHome-CUMZsYaH.js} +6 -6
  65. package/dist/demo/DemoHome-CUMZsYaH.js.map +1 -0
  66. package/dist/demo/{DemoJsonViewer-Dgdk3Txb.js → DemoJsonViewer-_uokbGaW.js} +18 -19
  67. package/dist/demo/DemoJsonViewer-_uokbGaW.js.map +1 -0
  68. package/dist/demo/{DemoLayout-B20TEuhV.js → DemoLayout-DHVoacE6.js} +4 -5
  69. package/dist/demo/DemoLayout-DHVoacE6.js.map +1 -0
  70. package/dist/demo/{DemoLogin-CvCG2WVh.js → DemoLogin-DjJ9314c.js} +27 -24
  71. package/dist/demo/DemoLogin-DjJ9314c.js.map +1 -0
  72. package/dist/demo/{DemoRegister-CmeHbOAs.js → DemoRegister-DzkJ5M83.js} +39 -32
  73. package/dist/demo/DemoRegister-DzkJ5M83.js.map +1 -0
  74. package/dist/demo/{DemoResetPassword-CKO5iA_6.js → DemoResetPassword-DWh4_BpQ.js} +30 -26
  75. package/dist/demo/DemoResetPassword-DWh4_BpQ.js.map +1 -0
  76. package/dist/demo/{DemoSidebar-MVmQKfMt.js → DemoSidebar-C1csnGhX.js} +4 -5
  77. package/dist/demo/DemoSidebar-C1csnGhX.js.map +1 -0
  78. package/dist/demo/{DemoTypeForm-w-qtfRlC.js → DemoTypeForm-CWz6fJrJ.js} +4 -5
  79. package/dist/demo/DemoTypeForm-CWz6fJrJ.js.map +1 -0
  80. package/dist/demo/{DemoVerifyEmail-C8FFJT5A.js → DemoVerifyEmail-DbU_tCj8.js} +16 -16
  81. package/dist/demo/DemoVerifyEmail-DbU_tCj8.js.map +1 -0
  82. package/dist/{auth/IconGoogle-DpSlPZ1u.js → demo/IconGoogle-Ch1m3Uzl.js} +2 -4
  83. package/dist/demo/{IconGoogle-CbBF8Hqq.js.map → IconGoogle-Ch1m3Uzl.js.map} +1 -1
  84. package/dist/demo/{Showcase-CQrMWars.js → Showcase-BzoXNlCn.js} +11 -13
  85. package/dist/demo/Showcase-BzoXNlCn.js.map +1 -0
  86. package/dist/demo/index.d.ts +3 -70
  87. package/dist/demo/index.d.ts.map +1 -1
  88. package/dist/demo/index.js +11 -15
  89. package/dist/demo/index.js.map +1 -1
  90. package/dist/json/index.js +2 -2
  91. package/dist/json/index.js.map +1 -1
  92. package/package.json +11 -5
  93. package/src/admin/AdminRouter.ts +51 -29
  94. package/src/admin/components/AdminLayout.tsx +6 -9
  95. package/src/admin/components/audits/AdminAudits.tsx +5 -5
  96. package/src/admin/components/jobs/AdminJobDashboard.tsx +455 -0
  97. package/src/admin/components/jobs/AdminJobExecutions.tsx +693 -0
  98. package/src/admin/components/jobs/AdminJobRegistry.tsx +325 -0
  99. package/src/admin/components/keys/AdminApiKeys.tsx +28 -31
  100. package/src/admin/components/parameters/AdminParameters.tsx +156 -78
  101. package/src/admin/components/parameters/ParameterDetails.tsx +173 -108
  102. package/src/admin/components/parameters/ParameterEmptyState.tsx +27 -0
  103. package/src/admin/components/parameters/ParameterHistory.tsx +22 -35
  104. package/src/admin/components/parameters/ParameterTree.tsx +283 -109
  105. package/src/admin/components/parameters/types.ts +3 -3
  106. package/src/admin/components/sessions/AdminSessions.tsx +3 -3
  107. package/src/admin/components/shared/AdminResourceHeader.tsx +20 -16
  108. package/src/admin/components/users/AdminUserAudits.tsx +5 -5
  109. package/src/admin/components/users/AdminUserCreate.tsx +3 -3
  110. package/src/admin/components/users/AdminUserDetails.tsx +51 -53
  111. package/src/admin/components/users/AdminUserLayout.tsx +7 -7
  112. package/src/admin/components/users/AdminUserSessions.tsx +3 -3
  113. package/src/admin/components/users/AdminUserSettings.tsx +9 -9
  114. package/src/admin/components/users/AdminUsers.tsx +5 -5
  115. package/src/admin/components/verifications/AdminVerifications.tsx +3 -3
  116. package/src/admin/index.ts +0 -24
  117. package/src/admin/primitives/$uiAdmin.ts +2 -2
  118. package/src/auth/AuthRouter.ts +1 -0
  119. package/src/auth/components/Login.tsx +13 -13
  120. package/src/auth/components/Profile.tsx +17 -26
  121. package/src/auth/components/Register.tsx +21 -31
  122. package/src/auth/components/ResetPassword.tsx +13 -22
  123. package/src/auth/components/VerifyEmail.tsx +5 -5
  124. package/src/auth/components/buttons/UserButton.tsx +14 -4
  125. package/src/core/components/buttons/ActionButton.tsx +13 -17
  126. package/src/core/components/buttons/DarkModeButton.tsx +8 -4
  127. package/src/core/components/buttons/ToggleSidebarButton.tsx +3 -5
  128. package/src/core/components/data/ErrorViewer.tsx +15 -15
  129. package/src/core/components/dialogs/AlertDialog.tsx +3 -3
  130. package/src/core/components/dialogs/ConfirmDialog.tsx +3 -3
  131. package/src/core/components/dialogs/PromptDialog.tsx +3 -3
  132. package/src/core/components/form/Control.tsx +19 -32
  133. package/src/core/components/form/ControlArray.tsx +206 -96
  134. package/src/core/components/form/ControlObject.tsx +3 -3
  135. package/src/core/components/form/ControlQueryBuilder.tsx +20 -22
  136. package/src/core/components/form/ControlSelect.tsx +4 -0
  137. package/src/core/components/form/TypeForm.browser.spec.tsx +727 -0
  138. package/src/core/components/form/TypeForm.tsx +7 -0
  139. package/src/core/components/layout/AlephaMantineProvider.tsx +1 -0
  140. package/src/core/components/layout/Breadcrumb.tsx +91 -0
  141. package/src/core/components/layout/{AdminShell.tsx → DashboardShell.tsx} +77 -32
  142. package/src/core/components/layout/Omnibar.tsx +2 -1
  143. package/src/core/components/layout/Sidebar.tsx +63 -19
  144. package/src/core/components/table/ColumnPicker.tsx +47 -31
  145. package/src/core/components/table/DataTable.tsx +277 -201
  146. package/src/core/components/table/DataTableFilters.tsx +8 -0
  147. package/src/core/components/table/DataTableToolbar.tsx +98 -5
  148. package/src/core/components/table/FilterPicker.tsx +28 -26
  149. package/src/core/components/table/types.ts +52 -37
  150. package/src/core/components/table/useTableSelection.ts +83 -0
  151. package/src/core/constants/ui.ts +1 -1
  152. package/src/core/helpers/renderIcon.tsx +5 -2
  153. package/src/core/index.ts +9 -5
  154. package/src/core/styles.css +8 -7
  155. package/src/core/utils/parseInput.ts +1 -0
  156. package/src/core/utils/string.ts +28 -4
  157. package/src/demo/components/DemoHome.tsx +5 -5
  158. package/src/demo/components/DemoLayout.tsx +6 -2
  159. package/src/demo/components/core/DemoDataTable.tsx +209 -5
  160. package/src/demo/components/json/DemoJsonViewer.tsx +1 -1
  161. package/src/demo/components/shared/MacWindow.tsx +7 -7
  162. package/src/demo/components/shared/Showcase.tsx +3 -3
  163. package/src/demo/index.ts +0 -11
  164. package/src/json/components/JsonViewer.tsx +3 -3
  165. package/dist/admin/AdminApiKeys-DsmGnHNh.js +0 -3
  166. package/dist/admin/AdminApiKeys-GMORg-1l.js.map +0 -1
  167. package/dist/admin/AdminAudits-8SM96viT.js +0 -3
  168. package/dist/admin/AdminAudits-pkWrjq1Z.js.map +0 -1
  169. package/dist/admin/AdminFiles-B56ocq4H.js +0 -3
  170. package/dist/admin/AdminJobs-B-q9iGO3.js +0 -697
  171. package/dist/admin/AdminJobs-B-q9iGO3.js.map +0 -1
  172. package/dist/admin/AdminJobs-CED1syCn.js +0 -3
  173. package/dist/admin/AdminLayout-BqZiXx4H.js.map +0 -1
  174. package/dist/admin/AdminNotifications-B0B1rdc4.js +0 -3
  175. package/dist/admin/AdminParameters-BU3lATdJ.js +0 -3
  176. package/dist/admin/AdminParameters-CfDUpc78.js +0 -575
  177. package/dist/admin/AdminParameters-CfDUpc78.js.map +0 -1
  178. package/dist/admin/AdminSessions-BDGK2MS6.js +0 -3
  179. package/dist/admin/AdminSessions-DzIOxM3b.js.map +0 -1
  180. package/dist/admin/AdminUserAudits-CiUPN2BC.js.map +0 -1
  181. package/dist/admin/AdminUserAudits-Cj79gENT.js +0 -3
  182. package/dist/admin/AdminUserCreate-BwQKr4xE.js.map +0 -1
  183. package/dist/admin/AdminUserCreate-Cq-mUmBs.js +0 -3
  184. package/dist/admin/AdminUserDetails-DRjVAPFd.js +0 -3
  185. package/dist/admin/AdminUserDetails-uqtC5aJ1.js.map +0 -1
  186. package/dist/admin/AdminUserLayout-CGzmHHby.js +0 -3
  187. package/dist/admin/AdminUserLayout-CiPay35T.js.map +0 -1
  188. package/dist/admin/AdminUserSessions-DAE8Nf1F.js.map +0 -1
  189. package/dist/admin/AdminUserSessions-DcdzuNZ9.js +0 -3
  190. package/dist/admin/AdminUserSettings-D7V6-ceX.js +0 -3
  191. package/dist/admin/AdminUserSettings-EbahaV2a.js.map +0 -1
  192. package/dist/admin/AdminUsers-D9nyzGqQ.js +0 -3
  193. package/dist/admin/AdminUsers-Dcjh0KNW.js.map +0 -1
  194. package/dist/auth/Login-BBqTosqZ.js.map +0 -1
  195. package/dist/auth/Login-CoU63mMR.js +0 -4
  196. package/dist/auth/Profile-Bxj8Nwom.js.map +0 -1
  197. package/dist/auth/Register-BV_oa_AK.js +0 -4
  198. package/dist/auth/Register-Ce675Crg.js.map +0 -1
  199. package/dist/auth/ResetPassword-D5wC8GAA.js +0 -3
  200. package/dist/auth/ResetPassword-DWdt7c40.js.map +0 -1
  201. package/dist/auth/VerifyEmail-CI4JwByV.js.map +0 -1
  202. package/dist/auth/VerifyEmail-DAfqVm5s.js +0 -3
  203. package/dist/demo/DemoDataTable-CguplbR7.js +0 -150
  204. package/dist/demo/DemoDataTable-CguplbR7.js.map +0 -1
  205. package/dist/demo/DemoHome-Cce2bWmg.js.map +0 -1
  206. package/dist/demo/DemoHome-DC9qkMNe.js +0 -3
  207. package/dist/demo/DemoJsonViewer-DIssGVlJ.js +0 -4
  208. package/dist/demo/DemoJsonViewer-Dgdk3Txb.js.map +0 -1
  209. package/dist/demo/DemoLayout-B20TEuhV.js.map +0 -1
  210. package/dist/demo/DemoLayout-DSRyf4qJ.js +0 -3
  211. package/dist/demo/DemoLogin-CvCG2WVh.js.map +0 -1
  212. package/dist/demo/DemoRegister-CmeHbOAs.js.map +0 -1
  213. package/dist/demo/DemoResetPassword-CKO5iA_6.js.map +0 -1
  214. package/dist/demo/DemoSidebar-MVmQKfMt.js.map +0 -1
  215. package/dist/demo/DemoTypeForm-w-qtfRlC.js.map +0 -1
  216. package/dist/demo/DemoVerifyEmail-C8FFJT5A.js.map +0 -1
  217. package/dist/demo/Showcase-CQrMWars.js.map +0 -1
  218. package/src/admin/components/jobs/AdminJobs.tsx +0 -772
@@ -1,12 +1,12 @@
1
- import * as alepha1 from "alepha";
1
+ import * as alepha from "alepha";
2
2
  import { Alepha, Async, Page, PageMetadata, Static, TObject, TProperties } from "alepha";
3
3
  import { BaseInputField, FormModel } from "alepha/react/form";
4
4
  import * as alepha_react_head0 from "alepha/react/head";
5
5
  import * as alepha_server_cookies0 from "alepha/server/cookies";
6
- import { AnchorProps, AppShellFooterProps, AppShellHeaderProps, AppShellMainProps, AppShellNavbarProps, AppShellProps, AutocompleteProps, BurgerProps, ButtonProps, ColorInputProps, ColorSchemeScriptProps, ContainerProps, FileInputProps, Flex, FlexProps, MantineBreakpoint, MantineProviderProps, MantineThemeOverride, MenuProps, MenuTargetProps, ModalProps, MultiSelectProps, NumberInputProps, PasswordInputProps, SegmentedControlProps, SelectProps, SliderProps, SwitchProps, TableProps, TableTrProps, TagsInputProps, Text, TextInputProps, TextareaProps, ThemeIconProps, TooltipProps } from "@mantine/core";
6
+ import { AnchorProps, AppShellFooterProps, AppShellHeaderProps, AppShellMainProps, AppShellNavbarProps, AppShellProps, AutocompleteProps, BurgerProps, ButtonProps, ColorInputProps, ColorSchemeScriptProps, ContainerProps, DrawerProps, FileInputProps, Flex, FlexProps, MantineBreakpoint, MantineProviderProps, MantineThemeOverride, MenuProps, MenuTargetProps, ModalProps, MultiSelectProps, NumberInputProps, PasswordInputProps, SegmentedControlProps, SelectProps, SliderProps, SwitchProps, TableProps, TableTrProps, TagsInputProps, Text, TextInputProps, TextareaProps, ThemeIconProps, TooltipProps } from "@mantine/core";
7
7
  import { ModalsProviderProps } from "@mantine/modals";
8
8
  import { ComponentType, ReactElement, ReactNode } from "react";
9
- import * as react_jsx_runtime10 from "react/jsx-runtime";
9
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
10
10
  import * as _mantine_notifications0 from "@mantine/notifications";
11
11
  import { NotificationData, NotificationsProps } from "@mantine/notifications";
12
12
  import * as alepha_react_router0 from "alepha/react/router";
@@ -17,56 +17,56 @@ import { DateInputProps, DateTimePickerProps, TimeInputProps } from "@mantine/da
17
17
  import { DurationLike } from "alepha/datetime";
18
18
 
19
19
  //#region ../../src/core/atoms/alephaSidebarAtom.d.ts
20
- declare const alephaSidebarAtom: alepha1.Atom<alepha1.TObject<{
20
+ declare const alephaSidebarAtom: alepha.Atom<alepha.TObject<{
21
21
  /**
22
22
  * Whether the sidebar is opened or closed (mobile).
23
23
  */
24
- opened: alepha1.TBoolean;
24
+ opened: alepha.TBoolean;
25
25
  /**
26
26
  * Whether the sidebar is collapsed (narrow) or expanded (wide).
27
27
  */
28
- collapsed: alepha1.TBoolean;
28
+ collapsed: alepha.TBoolean;
29
29
  /**
30
30
  * Current width of the sidebar when expanded (can be changed by resizing).
31
31
  * @default 300
32
32
  */
33
- width: alepha1.TNumber;
33
+ width: alepha.TNumber;
34
34
  /**
35
35
  * Default width used when expanding from collapsed state or on hover.
36
36
  * @default 300
37
37
  */
38
- defaultWidth: alepha1.TNumber;
38
+ defaultWidth: alepha.TNumber;
39
39
  /**
40
40
  * Width of the sidebar when collapsed.
41
41
  * @default 78
42
42
  */
43
- collapsedWidth: alepha1.TNumber;
43
+ collapsedWidth: alepha.TNumber;
44
44
  /**
45
45
  * Maximum width when resizing.
46
46
  * @default 500
47
47
  */
48
- maxWidth: alepha1.TNumber;
48
+ maxWidth: alepha.TNumber;
49
49
  /**
50
50
  * Minimum width before auto-collapse triggers.
51
51
  * @default 150
52
52
  */
53
- collapseThreshold: alepha1.TNumber;
53
+ collapseThreshold: alepha.TNumber;
54
54
  /**
55
55
  * Delay in ms before sidebar expands on hover when collapsed.
56
56
  * @default 300
57
57
  */
58
- hoverDelay: alepha1.TNumber;
58
+ hoverDelay: alepha.TNumber;
59
59
  }>, "alepha.ui.sidebar">;
60
60
  type AlephaSidebarState = Static<typeof alephaSidebarAtom.schema>;
61
61
  //#endregion
62
62
  //#region ../../src/core/atoms/alephaThemeAtom.d.ts
63
- declare const alephaThemeAtom: alepha1.Atom<alepha1.TObject<{
64
- index: alepha1.TInteger;
63
+ declare const alephaThemeAtom: alepha.Atom<alepha.TObject<{
64
+ index: alepha.TInteger;
65
65
  }>, "alepha.ui.theme">;
66
66
  type CurrentAlephaTheme = Static<typeof alephaThemeAtom.schema>;
67
67
  //#endregion
68
68
  //#region ../../src/core/atoms/alephaThemeListAtom.d.ts
69
- declare const alephaThemeListAtom: alepha1.Atom<alepha1.TArray<alepha1.TRecord<string, alepha1.TAny>>, "alepha.ui.themeList">;
69
+ declare const alephaThemeListAtom: alepha.Atom<alepha.TArray<alepha.TRecord<string, alepha.TAny>>, "alepha.ui.themeList">;
70
70
  type AlephaThemeListAtom = Static<typeof alephaThemeListAtom.schema>;
71
71
  //#endregion
72
72
  //#region ../../src/core/utils/parseInput.d.ts
@@ -77,6 +77,7 @@ interface GenericControlProps {
77
77
  icon?: ReactElement | ((props: {
78
78
  size: number;
79
79
  }) => ReactNode);
80
+ size?: "xs" | "sm" | "md" | "lg" | "xl";
80
81
  }
81
82
  //#endregion
82
83
  //#region ../../src/core/components/form/ControlArray.d.ts
@@ -132,6 +133,7 @@ interface ControlArrayProps extends GenericControlProps {
132
133
  * - Supports arrays of primitives
133
134
  * - Grid layout for object items
134
135
  * - Min/max constraints
136
+ * - Syncs with form state (handles external updates and resets)
135
137
  *
136
138
  * @example
137
139
  * ```tsx
@@ -153,7 +155,7 @@ interface ControlArrayProps extends GenericControlProps {
153
155
  * />
154
156
  * ```
155
157
  */
156
- declare const ControlArray: (props: ControlArrayProps) => react_jsx_runtime10.JSX.Element | null;
158
+ declare const ControlArray: (props: ControlArrayProps) => react_jsx_runtime0.JSX.Element | null;
157
159
  //#endregion
158
160
  //#region ../../src/core/components/form/ControlNumber.d.ts
159
161
  interface ControlNumberProps extends GenericControlProps {
@@ -163,7 +165,7 @@ interface ControlNumberProps extends GenericControlProps {
163
165
  /**
164
166
  *
165
167
  */
166
- declare const ControlNumber: (props: ControlNumberProps) => react_jsx_runtime10.JSX.Element | null;
168
+ declare const ControlNumber: (props: ControlNumberProps) => react_jsx_runtime0.JSX.Element | null;
167
169
  //#endregion
168
170
  //#region ../../src/core/components/form/ControlObject.d.ts
169
171
  interface ControlObjectProps extends GenericControlProps {
@@ -217,7 +219,7 @@ interface ControlObjectProps extends GenericControlProps {
217
219
  * />
218
220
  * ```
219
221
  */
220
- declare const ControlObject: (props: ControlObjectProps) => react_jsx_runtime10.JSX.Element | null;
222
+ declare const ControlObject: (props: ControlObjectProps) => react_jsx_runtime0.JSX.Element | null;
221
223
  //#endregion
222
224
  //#region ../../src/core/components/form/ControlSelect.d.ts
223
225
  type SelectValueLabel = string | {
@@ -246,7 +248,7 @@ interface ControlSelectProps extends GenericControlProps {
246
248
  *
247
249
  * Automatically detects enum values and array types from schema.
248
250
  */
249
- declare const ControlSelect: (props: ControlSelectProps) => react_jsx_runtime10.JSX.Element | null;
251
+ declare const ControlSelect: (props: ControlSelectProps) => react_jsx_runtime0.JSX.Element | null;
250
252
  //#endregion
251
253
  //#region ../../src/core/components/form/Control.d.ts
252
254
  interface ControlProps extends GenericControlProps {
@@ -292,7 +294,7 @@ interface ControlProps extends GenericControlProps {
292
294
  *
293
295
  * Automatically handles labels, descriptions, error messages, required state, and default icons.
294
296
  */
295
- declare const Control: (_props: ControlProps) => react_jsx_runtime10.JSX.Element | null;
297
+ declare const Control: (_props: ControlProps) => react_jsx_runtime0.JSX.Element | null;
296
298
  type CustomControlProps = {
297
299
  defaultValue: any;
298
300
  onChange: (value: any) => void;
@@ -415,7 +417,7 @@ interface ActionCommonProps extends ButtonProps {
415
417
  intent?: "primary" | "success" | "danger" | "warning" | "info" | "none";
416
418
  }
417
419
  type ActionProps = ActionCommonProps & (ActionNavigationButtonProps | ActionClickButtonProps | ActionSubmitButtonProps | ActionHookButtonProps | {});
418
- declare const ActionButton: (_props: ActionProps) => react_jsx_runtime10.JSX.Element;
420
+ declare const ActionButton: (_props: ActionProps) => react_jsx_runtime0.JSX.Element;
419
421
  interface ActionSubmitButtonProps extends ButtonProps {
420
422
  form: FormModel<any>;
421
423
  type?: "submit" | "reset";
@@ -425,6 +427,7 @@ interface ActionHookButtonProps extends ButtonProps {
425
427
  }
426
428
  interface ActionClickButtonProps extends ButtonProps {
427
429
  onClick: (e: any) => any;
430
+ preventDefault?: boolean;
428
431
  }
429
432
  interface ActionNavigationButtonProps extends ButtonProps {
430
433
  href: string;
@@ -438,7 +441,7 @@ interface ActionNavigationButtonProps extends ButtonProps {
438
441
  //#endregion
439
442
  //#region ../../src/core/components/buttons/BurgerButton.d.ts
440
443
  interface BurgerButtonProps extends BurgerProps {}
441
- declare const BurgerButton: (props: BurgerButtonProps) => react_jsx_runtime10.JSX.Element;
444
+ declare const BurgerButton: (props: BurgerButtonProps) => react_jsx_runtime0.JSX.Element;
442
445
  //#endregion
443
446
  //#region ../../src/core/components/buttons/ClipboardButton.d.ts
444
447
  interface ClipboardButtonProps extends Omit<ActionCommonProps, "onClick" | "icon"> {
@@ -459,7 +462,7 @@ interface ClipboardButtonProps extends Omit<ActionCommonProps, "onClick" | "icon
459
462
  */
460
463
  copiedLabel?: string;
461
464
  }
462
- declare const ClipboardButton: (props: ClipboardButtonProps) => react_jsx_runtime10.JSX.Element;
465
+ declare const ClipboardButton: (props: ClipboardButtonProps) => react_jsx_runtime0.JSX.Element;
463
466
  //#endregion
464
467
  //#region ../../src/core/components/buttons/DarkModeButton.d.ts
465
468
  /**
@@ -469,24 +472,24 @@ declare const ClipboardButton: (props: ClipboardButtonProps) => react_jsx_runtim
469
472
  * Both icons are rendered, CSS hides the wrong one based on
470
473
  * `data-mantine-color-scheme` attribute.
471
474
  */
472
- declare const DarkModeButton: (props: Partial<ActionProps>) => react_jsx_runtime10.JSX.Element;
475
+ declare const DarkModeButton: (props: Partial<ActionProps>) => react_jsx_runtime0.JSX.Element;
473
476
  //#endregion
474
477
  //#region ../../src/core/components/buttons/LanguageButton.d.ts
475
- declare const LanguageButton: (props: Partial<ActionProps>) => react_jsx_runtime10.JSX.Element;
478
+ declare const LanguageButton: (props: Partial<ActionProps>) => react_jsx_runtime0.JSX.Element;
476
479
  //#endregion
477
480
  //#region ../../src/core/components/buttons/OmnibarButton.d.ts
478
481
  interface OmnibarButtonProps {
479
482
  actionProps?: ActionProps;
480
483
  collapsed?: boolean;
481
484
  }
482
- declare const OmnibarButton: (props: OmnibarButtonProps) => react_jsx_runtime10.JSX.Element;
485
+ declare const OmnibarButton: (props: OmnibarButtonProps) => react_jsx_runtime0.JSX.Element;
483
486
  //#endregion
484
487
  //#region ../../src/core/components/buttons/ThemeButton.d.ts
485
- declare const ThemeButton: (props: Partial<ActionProps>) => react_jsx_runtime10.JSX.Element;
488
+ declare const ThemeButton: (props: Partial<ActionProps>) => react_jsx_runtime0.JSX.Element;
486
489
  //#endregion
487
490
  //#region ../../src/core/components/buttons/ToggleSidebarButton.d.ts
488
491
  type Props = ActionProps;
489
- declare const ToggleSidebarButton: (props: Props) => react_jsx_runtime10.JSX.Element;
492
+ declare const ToggleSidebarButton: (props: Props) => react_jsx_runtime0.JSX.Element;
490
493
  //#endregion
491
494
  //#region ../../src/core/services/DialogService.d.ts
492
495
  interface BaseDialogOptions extends Partial<ModalProps> {
@@ -573,19 +576,19 @@ declare class DialogService {
573
576
  declare const AlertDialog: ({
574
577
  options,
575
578
  onClose
576
- }: AlertDialogProps) => react_jsx_runtime10.JSX.Element;
579
+ }: AlertDialogProps) => react_jsx_runtime0.JSX.Element;
577
580
  //#endregion
578
581
  //#region ../../src/core/components/dialogs/ConfirmDialog.d.ts
579
582
  declare const ConfirmDialog: ({
580
583
  options,
581
584
  onConfirm
582
- }: ConfirmDialogProps) => react_jsx_runtime10.JSX.Element;
585
+ }: ConfirmDialogProps) => react_jsx_runtime0.JSX.Element;
583
586
  //#endregion
584
587
  //#region ../../src/core/components/dialogs/PromptDialog.d.ts
585
588
  declare const PromptDialog: ({
586
589
  options,
587
590
  onSubmit
588
- }: PromptDialogProps) => react_jsx_runtime10.JSX.Element;
591
+ }: PromptDialogProps) => react_jsx_runtime0.JSX.Element;
589
592
  //#endregion
590
593
  //#region ../../src/core/components/form/ControlDate.d.ts
591
594
  interface ControlDateProps extends GenericControlProps {
@@ -603,7 +606,7 @@ interface ControlDateProps extends GenericControlProps {
603
606
  *
604
607
  * Automatically detects date formats from schema and renders appropriate picker.
605
608
  */
606
- declare const ControlDate: (props: ControlDateProps) => react_jsx_runtime10.JSX.Element | null;
609
+ declare const ControlDate: (props: ControlDateProps) => react_jsx_runtime0.JSX.Element | null;
607
610
  //#endregion
608
611
  //#region ../../src/core/components/form/ControlQueryBuilder.d.ts
609
612
  interface ControlQueryBuilderProps extends Omit<TextInputProps, "value" | "onChange"> {
@@ -622,7 +625,7 @@ declare const ControlQueryBuilder: ({
622
625
  onChange,
623
626
  placeholder,
624
627
  ...textInputProps
625
- }: ControlQueryBuilderProps) => react_jsx_runtime10.JSX.Element;
628
+ }: ControlQueryBuilderProps) => react_jsx_runtime0.JSX.Element;
626
629
  //#endregion
627
630
  //#region ../../src/core/components/form/TypeForm.d.ts
628
631
  interface TypeFormProps<T extends TObject> {
@@ -652,6 +655,7 @@ interface TypeFormProps<T extends TObject> {
652
655
  resetButtonProps?: Partial<Omit<ActionSubmitButtonProps, "form">>;
653
656
  fill?: boolean;
654
657
  flexProps?: FlexProps;
658
+ size?: "xs" | "sm" | "md" | "lg" | "xl";
655
659
  }
656
660
  /**
657
661
  * TypeForm component that automatically renders all form inputs based on schema.
@@ -694,7 +698,27 @@ interface TypeFormProps<T extends TObject> {
694
698
  * return <TypeForm form={form} columns={2} />;
695
699
  * ```
696
700
  */
697
- declare const TypeForm: <T extends TObject>(props: TypeFormProps<T>) => react_jsx_runtime10.JSX.Element | null;
701
+ declare const TypeForm: <T extends TObject>(props: TypeFormProps<T>) => react_jsx_runtime0.JSX.Element | null;
702
+ //#endregion
703
+ //#region ../../src/core/components/layout/Omnibar.d.ts
704
+ interface OmnibarProps {
705
+ shortcut?: string | string[];
706
+ searchPlaceholder?: string;
707
+ nothingFound?: ReactNode;
708
+ }
709
+ declare const Omnibar: (props: OmnibarProps) => react_jsx_runtime0.JSX.Element;
710
+ //#endregion
711
+ //#region ../../src/core/components/layout/AlephaMantineProvider.d.ts
712
+ interface AlephaMantineProviderProps {
713
+ children?: ReactNode;
714
+ mantine?: MantineProviderProps;
715
+ colorSchemeScript?: ColorSchemeScriptProps;
716
+ navigationProgress?: NavigationProgressProps;
717
+ notifications?: NotificationsProps;
718
+ modals?: ModalsProviderProps;
719
+ omnibar?: OmnibarProps | false;
720
+ }
721
+ declare const AlephaMantineProvider: (props: AlephaMantineProviderProps) => react_jsx_runtime0.JSX.Element;
698
722
  //#endregion
699
723
  //#region ../../src/core/components/layout/AppBar.d.ts
700
724
  type AppBarItem = AppBarElement | AppBarBurger | AppBarDark | AppBarSearch | AppBarLang | AppBarSpacer | AppBarDivider | AppBarLogo | AppBarBack;
@@ -801,7 +825,42 @@ interface AppBarProps {
801
825
  */
802
826
  container?: boolean | ContainerProps;
803
827
  }
804
- declare const AppBar: (props: AppBarProps) => react_jsx_runtime10.JSX.Element;
828
+ declare const AppBar: (props: AppBarProps) => react_jsx_runtime0.JSX.Element;
829
+ //#endregion
830
+ //#region ../../src/core/components/layout/Breadcrumb.d.ts
831
+ interface BreadcrumbProps extends FlexProps {
832
+ /**
833
+ * Label for the home/root crumb. Set to `false` to hide the root crumb.
834
+ *
835
+ * @default "Home"
836
+ */
837
+ home?: string | false;
838
+ /**
839
+ * Custom separator between crumbs.
840
+ *
841
+ * @default IconChevronRight
842
+ */
843
+ separator?: ReactNode;
844
+ /**
845
+ * Size of text and separator icons.
846
+ *
847
+ * @default "xs"
848
+ */
849
+ size?: string;
850
+ }
851
+ /**
852
+ * Automatic breadcrumb component that reads the current route hierarchy
853
+ * from the Alepha router's layer stack.
854
+ *
855
+ * Pages should define a `label` in their `$page()` options for best results.
856
+ * Falls back to the page name converted to Title Case.
857
+ */
858
+ declare const Breadcrumb: ({
859
+ home,
860
+ separator,
861
+ size,
862
+ ...groupProps
863
+ }: BreadcrumbProps) => react_jsx_runtime0.JSX.Element | null;
805
864
  //#endregion
806
865
  //#region ../../src/core/components/layout/Sidebar.d.ts
807
866
  interface SidebarProps {
@@ -815,6 +874,11 @@ interface SidebarProps {
815
874
  hide?: {
816
875
  paths?: string[];
817
876
  };
877
+ /**
878
+ * Whether the sidebar expands on hover when collapsed.
879
+ * @default true
880
+ */
881
+ expandOnHover?: boolean;
818
882
  /**
819
883
  * Automatically populate the menu from the router's pages.
820
884
  */
@@ -822,7 +886,7 @@ interface SidebarProps {
822
886
  startsWith: string;
823
887
  };
824
888
  }
825
- declare const Sidebar: (props: SidebarProps) => react_jsx_runtime10.JSX.Element;
889
+ declare const Sidebar: (props: SidebarProps) => react_jsx_runtime0.JSX.Element;
826
890
  interface SidebarItemProps {
827
891
  item: SidebarMenuItem;
828
892
  level: number;
@@ -847,6 +911,7 @@ interface SidebarSpacer extends SidebarAbstractItem {
847
911
  }
848
912
  interface SidebarDivider extends SidebarAbstractItem {
849
913
  type: "divider";
914
+ fill?: true;
850
915
  }
851
916
  interface SidebarSearch extends SidebarAbstractItem {
852
917
  type: "search";
@@ -858,6 +923,7 @@ interface SidebarSection extends SidebarAbstractItem {
858
923
  type: "section";
859
924
  label: string;
860
925
  icon?: ReactNode | ComponentType;
926
+ children?: SidebarNode[];
861
927
  }
862
928
  interface SidebarMenuItem extends SidebarAbstractItem {
863
929
  label: string | ReactNode;
@@ -882,8 +948,8 @@ interface SidebarTheme {
882
948
  search?: SidebarButtonTheme;
883
949
  }
884
950
  //#endregion
885
- //#region ../../src/core/components/layout/AdminShell.d.ts
886
- interface AdminShellProps {
951
+ //#region ../../src/core/components/layout/DashboardShell.d.ts
952
+ interface DashboardShellProps {
887
953
  appShellProps?: Partial<AppShellProps>;
888
954
  appShellMainProps?: Partial<AppShellMainProps>;
889
955
  appShellHeaderProps?: Partial<AppShellHeaderProps>;
@@ -894,6 +960,30 @@ interface AdminShellProps {
894
960
  header?: ReactNode;
895
961
  footer?: ReactNode;
896
962
  children?: ReactNode;
963
+ /**
964
+ * AppShell layout mode.
965
+ * - "default": header/footer span full width, navbar below header.
966
+ * - "alt": navbar is full height, header/footer offset by navbar width.
967
+ */
968
+ layout?: "default" | "alt";
969
+ /**
970
+ * Content rendered above the Sidebar inside the navbar (e.g. logo).
971
+ */
972
+ navbarHeader?: ReactNode;
973
+ /**
974
+ * Content rendered below the Sidebar inside the navbar (e.g. toggle button).
975
+ */
976
+ navbarFooter?: ReactNode;
977
+ /**
978
+ * Height of the header bar in pixels.
979
+ * @default 60
980
+ */
981
+ headerHeight?: number;
982
+ /**
983
+ * Height of the footer bar in pixels.
984
+ * @default 24
985
+ */
986
+ footerHeight?: number;
897
987
  /**
898
988
  * Enable drag-to-resize for the sidebar.
899
989
  * Width and constraints are configured in alephaSidebarAtom.
@@ -911,29 +1001,12 @@ interface AdminShellProps {
911
1001
  */
912
1002
  container?: boolean | ContainerProps;
913
1003
  }
914
- declare const AdminShell: (props: AdminShellProps) => react_jsx_runtime10.JSX.Element;
915
- //#endregion
916
- //#region ../../src/core/components/layout/Omnibar.d.ts
917
- interface OmnibarProps {
918
- shortcut?: string | string[];
919
- searchPlaceholder?: string;
920
- nothingFound?: ReactNode;
921
- }
922
- declare const Omnibar: (props: OmnibarProps) => react_jsx_runtime10.JSX.Element;
923
- //#endregion
924
- //#region ../../src/core/components/layout/AlephaMantineProvider.d.ts
925
- interface AlephaMantineProviderProps {
926
- children?: ReactNode;
927
- mantine?: MantineProviderProps;
928
- colorSchemeScript?: ColorSchemeScriptProps;
929
- navigationProgress?: NavigationProgressProps;
930
- notifications?: NotificationsProps;
931
- modals?: ModalsProviderProps;
932
- omnibar?: OmnibarProps | false;
933
- }
934
- declare const AlephaMantineProvider: (props: AlephaMantineProviderProps) => react_jsx_runtime10.JSX.Element;
1004
+ declare const DashboardShell: (props: DashboardShellProps) => react_jsx_runtime0.JSX.Element;
935
1005
  //#endregion
936
1006
  //#region ../../src/core/components/table/types.d.ts
1007
+ type DataTableRowAction = ActionProps & {
1008
+ visible?: boolean;
1009
+ };
937
1010
  interface ColumnVisibility {
938
1011
  [key: string]: boolean;
939
1012
  }
@@ -947,7 +1020,7 @@ interface DataTableColumnContext<Filters extends TObject> {
947
1020
  }
948
1021
  interface DataTableColumn<T extends object, Filters extends TObject> {
949
1022
  label: string;
950
- value: (item: T, ctx: DataTableColumnContext<Filters>) => ReactNode;
1023
+ value?: (item: T, ctx: DataTableColumnContext<Filters>) => ReactNode;
951
1024
  fit?: boolean;
952
1025
  /**
953
1026
  * Enable sorting for this column. When true, clicking the header will sort by this column.
@@ -958,6 +1031,16 @@ interface DataTableColumn<T extends object, Filters extends TObject> {
958
1031
  * Follows Alepha sort convention: 'field' for ASC, '-field' for DESC.
959
1032
  */
960
1033
  sortKey?: string;
1034
+ /**
1035
+ * Row-level actions rendered as ActionButtons.
1036
+ * Defaults: variant="subtle", size="xs", preventDefault=true.
1037
+ * Use `visible` on each action to conditionally show/hide.
1038
+ */
1039
+ actions?: (item: T, ctx: DataTableColumnContext<Filters>) => DataTableRowAction[];
1040
+ /**
1041
+ * Hide this column by default. Users can show it via the column picker.
1042
+ */
1043
+ defaultHidden?: boolean;
961
1044
  }
962
1045
  type MaybePage<T> = Omit<Page<T>, "page"> & {
963
1046
  page?: Partial<PageMetadata>;
@@ -997,18 +1080,29 @@ interface DataTableProps<T extends object, Filters extends TObject> {
997
1080
  * Optional filters to apply to the data.
998
1081
  */
999
1082
  filters?: TObject;
1000
- panel?: (item: T) => ReactNode;
1001
- canPanel?: (item: T) => boolean;
1083
+ panel?: ((item: T) => ReactNode) | {
1084
+ render: (item: T) => ReactNode;
1085
+ can?: (item: T) => boolean;
1086
+ };
1087
+ drawer?: ((item: T) => ReactNode) | {
1088
+ render: (item: T) => ReactNode;
1089
+ can?: (item: T) => boolean;
1090
+ props?: Omit<DrawerProps, "opened" | "onClose" | "children">;
1091
+ };
1002
1092
  submitOnInit?: boolean;
1003
1093
  submitEvery?: DurationLike;
1004
- withLineNumbers?: boolean;
1094
+ /**
1095
+ * Enable export button in toolbar (CSV download + clipboard copy).
1096
+ */
1097
+ withExport?: boolean;
1005
1098
  /**
1006
1099
  * Enable row selection with checkboxes. When true, a checkbox column is added as the first column.
1007
1100
  */
1008
1101
  withCheckbox?: boolean;
1009
1102
  /**
1010
- * Function to get a unique key for each item. Required when withCheckbox is true.
1011
- * Used to track selected items across pagination.
1103
+ * Function to get a unique key for each item.
1104
+ * Used to track selected items, panel expansion, and drawer identity.
1105
+ * Falls back to item.id then JSON.stringify if not provided.
1012
1106
  */
1013
1107
  getItemKey?: (item: T) => string;
1014
1108
  /**
@@ -1023,25 +1117,9 @@ interface DataTableProps<T extends object, Filters extends TObject> {
1023
1117
  */
1024
1118
  infinityScroll?: boolean;
1025
1119
  /**
1026
- * Initial column visibility state. By default, first 10 columns are visible.
1027
- */
1028
- defaultColumnVisibility?: ColumnVisibility;
1029
- /**
1030
- * Maximum number of columns to show by default. Default is 10.
1120
+ * Filter keys to show by default. Default: none (empty array).
1031
1121
  */
1032
- defaultVisibleColumnCount?: number;
1033
- /**
1034
- * Callback when column visibility changes.
1035
- */
1036
- onColumnVisibilityChange?: (visibility: ColumnVisibility) => void;
1037
- /**
1038
- * Initial filter visibility state. By default, all filters are visible.
1039
- */
1040
- defaultFilterVisibility?: FilterVisibility;
1041
- /**
1042
- * Callback when filter visibility changes.
1043
- */
1044
- onFilterVisibilityChange?: (visibility: FilterVisibility) => void;
1122
+ defaultFilters?: string[];
1045
1123
  /**
1046
1124
  * Props to pass to the Mantine Table component.
1047
1125
  */
@@ -1053,7 +1131,7 @@ interface DataTableProps<T extends object, Filters extends TObject> {
1053
1131
  }
1054
1132
  //#endregion
1055
1133
  //#region ../../src/core/components/table/DataTable.d.ts
1056
- declare const DataTable: <T extends object, Filters extends TObject>(props: DataTableProps<T, Filters>) => react_jsx_runtime10.JSX.Element;
1134
+ declare const DataTable: <T extends object, Filters extends TObject>(props: DataTableProps<T, Filters>) => react_jsx_runtime0.JSX.Element;
1057
1135
  //#endregion
1058
1136
  //#region ../../src/core/constants/ui.d.ts
1059
1137
  declare const ui: {
@@ -1126,8 +1204,8 @@ declare const useToast: () => ToastService;
1126
1204
  //#region ../../src/core/providers/ThemeProvider.d.ts
1127
1205
  declare class ThemeProvider {
1128
1206
  protected readonly alepha: Alepha;
1129
- protected readonly cookie: alepha_server_cookies0.AbstractCookiePrimitive<alepha1.TObject<{
1130
- index: alepha1.TInteger;
1207
+ protected readonly cookie: alepha_server_cookies0.AbstractCookiePrimitive<alepha.TObject<{
1208
+ index: alepha.TInteger;
1131
1209
  }>>;
1132
1210
  protected readonly head: alepha_react_head0.HeadPrimitive;
1133
1211
  setTheme(index: number): void;
@@ -1185,13 +1263,25 @@ declare const getDefaultIcon: (params: {
1185
1263
  * capitalize("hello") // "Hello"
1186
1264
  */
1187
1265
  declare const capitalize: (str: string) => string;
1266
+ /**
1267
+ * Converts camelCase or snake_case to Title Case with spaces.
1268
+ *
1269
+ * @example
1270
+ * toTitleCase("userName") // "User Name"
1271
+ * toTitleCase("first_name") // "First Name"
1272
+ * toTitleCase("email") // "Email"
1273
+ */
1274
+ declare const toTitleCase: (str: string) => string;
1188
1275
  /**
1189
1276
  * Converts a path or identifier string into a pretty display name.
1190
- * Removes slashes and capitalizes the first letter.
1277
+ * For paths like "/contacts/0/name", extracts just the field name "Name".
1278
+ * Handles camelCase and snake_case conversion to Title Case.
1191
1279
  *
1192
1280
  * @example
1193
- * prettyName("/userName") // "UserName"
1194
- * prettyName("email") // "Email"
1281
+ * prettyName("/userName") // "User Name"
1282
+ * prettyName("/contacts/0/email") // "Email"
1283
+ * prettyName("/address/streetName") // "Street Name"
1284
+ * prettyName("first_name") // "First Name"
1195
1285
  */
1196
1286
  declare const prettyName: (name: string) => string;
1197
1287
  //#endregion
@@ -1241,7 +1331,7 @@ declare module "alepha/react/router" {
1241
1331
  * - AlertDialog, ConfirmDialog, PromptDialog
1242
1332
  * - Form controls: Control, ControlArray, ControlDate, ControlNumber, ControlObject, ControlSelect, ControlQueryBuilder
1243
1333
  * - TypeForm for automatic form generation from TypeBox schemas
1244
- * - AdminShell layout component
1334
+ * - DashboardShell layout component
1245
1335
  * - AppBar with configurable elements
1246
1336
  * - Sidebar navigation with sections and menu items
1247
1337
  * - Omnibar for command palette / search
@@ -1251,7 +1341,7 @@ declare module "alepha/react/router" {
1251
1341
  *
1252
1342
  * @module alepha.ui
1253
1343
  */
1254
- declare const AlephaUI: alepha1.Service<alepha1.Module>;
1344
+ declare const AlephaUI: alepha.Service<alepha.Module>;
1255
1345
  /**
1256
1346
  * Convenience function to configure and inject the UiRouter.
1257
1347
  */
@@ -1259,5 +1349,5 @@ declare const $ui: (options?: {
1259
1349
  themes?: AlephaThemeListAtom;
1260
1350
  }) => UiRouter;
1261
1351
  //#endregion
1262
- export { $ui, ActionButton, type ActionClickButtonProps, type ActionCommonProps, type ActionMenuConfig, type ActionMenuItem, type ActionNavigationButtonProps, type ActionProps, type ActionSubmitButtonProps, AdminShell, type AdminShellProps, AlephaMantineProvider, AlephaSidebarState, AlephaThemeListAtom, AlephaUI, AlertDialog, type AlertDialogOptions, type AlertDialogProps, AppBar, type AppBarBurger, type AppBarDark, type AppBarDivider, type AppBarElement, type AppBarItem, type AppBarLang, type AppBarProps, type AppBarSearch, type AppBarSpacer, type BaseDialogOptions, BurgerButton, type CheckboxAction, type CheckboxActionContext, ClipboardButton, type ClipboardButtonProps, type ColumnVisibility, ConfirmDialog, type ConfirmDialogOptions, type ConfirmDialogProps, Control, ControlArray, ControlDate, ControlNumber, ControlObject, ControlQueryBuilder, ControlSelect, CurrentAlephaTheme, DarkModeButton, DataTable, type DataTableColumn, type DataTableColumnContext, type DataTableProps, type DataTableSubmitContext, DialogService, type FilterVisibility, Flex, IconSize, LanguageButton, type MaybePage, OPERATOR_INFO, Omnibar, OmnibarButton, PromptDialog, type PromptDialogOptions, type PromptDialogProps, SchemaField, Sidebar, type SidebarAbstractItem, type SidebarButtonTheme, type SidebarDivider, type SidebarElement, type SidebarItemProps, type SidebarMenuItem, type SidebarNode, type SidebarProps, type SidebarSearch, type SidebarSection, type SidebarSpacer, type SidebarTheme, Text, ThemeButton, ThemeProvider, ToastService, ToggleSidebarButton, TypeForm, UiRouter, alephaSidebarAtom, alephaThemeAtom, alephaThemeListAtom, capitalize, defaultTheme, extractSchemaFields, getDefaultIcon, getOperatorsForField, midnightTheme, prettyName, ui, useDialog, useToast };
1352
+ export { $ui, ActionButton, type ActionClickButtonProps, type ActionCommonProps, type ActionMenuConfig, type ActionMenuItem, type ActionNavigationButtonProps, type ActionProps, type ActionSubmitButtonProps, DashboardShell as AdminShell, DashboardShell, type DashboardShellProps as AdminShellProps, type DashboardShellProps, AlephaMantineProvider, AlephaSidebarState, AlephaThemeListAtom, AlephaUI, AlertDialog, type AlertDialogOptions, type AlertDialogProps, AppBar, type AppBarBurger, type AppBarDark, type AppBarDivider, type AppBarElement, type AppBarItem, type AppBarLang, type AppBarProps, type AppBarSearch, type AppBarSpacer, type BaseDialogOptions, Breadcrumb, type BreadcrumbProps, BurgerButton, type CheckboxAction, type CheckboxActionContext, ClipboardButton, type ClipboardButtonProps, type ColumnVisibility, ConfirmDialog, type ConfirmDialogOptions, type ConfirmDialogProps, Control, ControlArray, ControlDate, ControlNumber, ControlObject, ControlQueryBuilder, ControlSelect, CurrentAlephaTheme, DarkModeButton, DataTable, type DataTableColumn, type DataTableColumnContext, type DataTableProps, type DataTableSubmitContext, DialogService, type FilterVisibility, Flex, IconSize, LanguageButton, type MaybePage, OPERATOR_INFO, Omnibar, OmnibarButton, PromptDialog, type PromptDialogOptions, type PromptDialogProps, SchemaField, Sidebar, type SidebarAbstractItem, type SidebarButtonTheme, type SidebarDivider, type SidebarElement, type SidebarItemProps, type SidebarMenuItem, type SidebarNode, type SidebarProps, type SidebarSearch, type SidebarSection, type SidebarSpacer, type SidebarTheme, Text, ThemeButton, ThemeProvider, ToastService, ToggleSidebarButton, TypeForm, UiRouter, alephaSidebarAtom, alephaThemeAtom, alephaThemeListAtom, capitalize, defaultTheme, extractSchemaFields, getDefaultIcon, getOperatorsForField, midnightTheme, prettyName, toTitleCase, ui, useDialog, useToast };
1263
1353
  //# sourceMappingURL=index.d.ts.map