@soroush.tech/design-system 1.3.3 → 2.0.0-alpha.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 (226) hide show
  1. package/README.md +45 -10
  2. package/dist/AppBar.cjs +4 -0
  3. package/dist/AppBar.d.cts +3 -3
  4. package/dist/AppBar.d.mts +3 -3
  5. package/dist/AppBar.mjs +4 -0
  6. package/dist/Avatar.cjs +1 -1
  7. package/dist/Avatar.d.cts +3 -3
  8. package/dist/Avatar.d.mts +3 -3
  9. package/dist/Avatar.mjs +1 -1
  10. package/dist/Backdrop.d.cts +1 -1
  11. package/dist/Backdrop.d.mts +1 -1
  12. package/dist/Button.cjs +1 -1
  13. package/dist/Button.d.cts +1 -1
  14. package/dist/Button.d.mts +1 -1
  15. package/dist/Button.mjs +1 -1
  16. package/dist/ButtonGroup.d.cts +1 -1
  17. package/dist/ButtonGroup.d.mts +1 -1
  18. package/dist/Card.cjs +2 -2
  19. package/dist/Card.d.cts +3 -3
  20. package/dist/Card.d.mts +3 -3
  21. package/dist/Card.mjs +2 -2
  22. package/dist/Checkbox.d.cts +2 -2
  23. package/dist/Checkbox.d.mts +2 -2
  24. package/dist/CircularProgress.d.cts +3 -3
  25. package/dist/CircularProgress.d.mts +3 -3
  26. package/dist/Drawer.d.cts +2 -2
  27. package/dist/Drawer.d.mts +2 -2
  28. package/dist/Flex.d.cts +1 -1
  29. package/dist/Flex.d.mts +1 -1
  30. package/dist/Form.d.cts +1 -1
  31. package/dist/Form.d.mts +1 -1
  32. package/dist/FormControl.cjs +1 -1
  33. package/dist/FormControl.d.cts +2 -2
  34. package/dist/FormControl.d.mts +2 -2
  35. package/dist/FormControl.mjs +1 -1
  36. package/dist/FormHelperText.d.cts +1 -1
  37. package/dist/FormHelperText.d.mts +1 -1
  38. package/dist/FormLabel.d.cts +1 -1
  39. package/dist/FormLabel.d.mts +1 -1
  40. package/dist/Grid.d.cts +1 -15
  41. package/dist/Grid.d.mts +1 -15
  42. package/dist/{Icon-BAMpe9SO.cjs → Icon-CKLBJ7CC.cjs} +1 -1
  43. package/dist/{Icon-gSiGgU13.mjs → Icon-CkQGOBmm.mjs} +1 -1
  44. package/dist/Icon.cjs +1 -1
  45. package/dist/Icon.d.cts +1 -1
  46. package/dist/Icon.d.mts +1 -1
  47. package/dist/Icon.mjs +1 -1
  48. package/dist/Image.d.cts +2 -2
  49. package/dist/Image.d.mts +2 -2
  50. package/dist/LinearProgress.d.cts +3 -3
  51. package/dist/LinearProgress.d.mts +3 -3
  52. package/dist/Link.cjs +1 -1
  53. package/dist/Link.d.cts +1 -1
  54. package/dist/Link.d.mts +1 -1
  55. package/dist/Link.mjs +1 -1
  56. package/dist/MenuItem.cjs +2 -2
  57. package/dist/MenuItem.d.cts +2 -2
  58. package/dist/MenuItem.d.mts +2 -2
  59. package/dist/MenuItem.mjs +2 -2
  60. package/dist/Modal.d.cts +1 -1
  61. package/dist/Modal.d.mts +1 -1
  62. package/dist/NativeSelect.cjs +2 -2
  63. package/dist/NativeSelect.d.cts +3 -3
  64. package/dist/NativeSelect.d.mts +3 -3
  65. package/dist/NativeSelect.mjs +2 -2
  66. package/dist/PageLayout/LayoutGrid.cjs +21 -0
  67. package/dist/PageLayout/LayoutGrid.d.cts +22 -0
  68. package/dist/PageLayout/LayoutGrid.d.mts +22 -0
  69. package/dist/PageLayout/LayoutGrid.mjs +20 -0
  70. package/dist/PageLayout/PageLayout.cjs +148 -0
  71. package/dist/PageLayout/PageLayout.d.cts +31 -0
  72. package/dist/PageLayout/PageLayout.d.mts +31 -0
  73. package/dist/PageLayout/PageLayout.mjs +147 -0
  74. package/dist/PageLayout.cjs +7 -0
  75. package/dist/PageLayout.d.cts +19 -0
  76. package/dist/PageLayout.d.mts +19 -0
  77. package/dist/PageLayout.mjs +4 -0
  78. package/dist/PageLayoutContext-DjJ1_7Xc.mjs +5 -0
  79. package/dist/PageLayoutContext-agXGhegE.cjs +9 -0
  80. package/dist/Pagination/PaginationItem.cjs +1 -1
  81. package/dist/Pagination/PaginationItem.d.cts +1 -1
  82. package/dist/Pagination/PaginationItem.d.mts +1 -1
  83. package/dist/Pagination/PaginationItem.mjs +1 -1
  84. package/dist/Pagination.d.cts +2 -2
  85. package/dist/Pagination.d.mts +2 -2
  86. package/dist/Paper.cjs +1 -1
  87. package/dist/Paper.d.cts +1 -1
  88. package/dist/Paper.d.mts +1 -1
  89. package/dist/Paper.mjs +1 -1
  90. package/dist/{Popover-Bq31OTEl.mjs → Popover-DWOrf7sy.mjs} +1 -1
  91. package/dist/{Popover-gg44qzwo.cjs → Popover-Dz6h3A_9.cjs} +1 -1
  92. package/dist/Popover.cjs +1 -1
  93. package/dist/Popover.d.cts +4 -4
  94. package/dist/Popover.d.mts +4 -4
  95. package/dist/Popover.mjs +1 -1
  96. package/dist/Pressable.cjs +1 -1
  97. package/dist/Pressable.d.cts +1 -1
  98. package/dist/Pressable.d.mts +1 -1
  99. package/dist/Pressable.mjs +1 -1
  100. package/dist/Quote.d.cts +3 -3
  101. package/dist/Quote.d.mts +3 -3
  102. package/dist/Radio.d.cts +2 -2
  103. package/dist/Radio.d.mts +2 -2
  104. package/dist/Select.cjs +3 -3
  105. package/dist/Select.d.cts +3 -3
  106. package/dist/Select.d.mts +3 -3
  107. package/dist/Select.mjs +3 -3
  108. package/dist/Sidebar/Sidebar.cjs +25 -6
  109. package/dist/Sidebar/Sidebar.d.cts +5 -2
  110. package/dist/Sidebar/Sidebar.d.mts +5 -2
  111. package/dist/Sidebar/Sidebar.mjs +26 -7
  112. package/dist/Sidebar/SidebarItem.cjs +2 -1
  113. package/dist/Sidebar/SidebarItem.d.cts +4 -4
  114. package/dist/Sidebar/SidebarItem.d.mts +4 -4
  115. package/dist/Sidebar/SidebarItem.mjs +2 -1
  116. package/dist/Skeleton.d.cts +2 -2
  117. package/dist/Skeleton.d.mts +2 -2
  118. package/dist/Switch.cjs +1 -1
  119. package/dist/Switch.d.cts +2 -2
  120. package/dist/Switch.d.mts +2 -2
  121. package/dist/Switch.mjs +1 -1
  122. package/dist/Table/Table.d.cts +3 -3
  123. package/dist/Table/Table.d.mts +3 -3
  124. package/dist/Table/TableBody.d.cts +2 -2
  125. package/dist/Table/TableBody.d.mts +2 -2
  126. package/dist/Table/TableCell.d.cts +1 -1
  127. package/dist/Table/TableCell.d.mts +1 -1
  128. package/dist/Table/TableContainer.d.cts +3 -3
  129. package/dist/Table/TableContainer.d.mts +3 -3
  130. package/dist/Table/TableControl.d.cts +1 -1
  131. package/dist/Table/TableControl.d.mts +1 -1
  132. package/dist/Table/TableFooter.d.cts +2 -2
  133. package/dist/Table/TableFooter.d.mts +2 -2
  134. package/dist/Table/TableHead.d.cts +2 -2
  135. package/dist/Table/TableHead.d.mts +2 -2
  136. package/dist/Table/TablePagination.d.cts +2 -2
  137. package/dist/Table/TablePagination.d.mts +2 -2
  138. package/dist/Table/TablePaginationActions.cjs +1 -1
  139. package/dist/Table/TablePaginationActions.d.cts +1 -1
  140. package/dist/Table/TablePaginationActions.d.mts +1 -1
  141. package/dist/Table/TablePaginationActions.mjs +1 -1
  142. package/dist/Table/TableRow.d.cts +2 -2
  143. package/dist/Table/TableRow.d.mts +2 -2
  144. package/dist/Table/TableSortLabel.cjs +1 -1
  145. package/dist/Table/TableSortLabel.d.cts +1 -1
  146. package/dist/Table/TableSortLabel.d.mts +1 -1
  147. package/dist/Table/TableSortLabel.mjs +1 -1
  148. package/dist/Table/hooks.d.cts +1 -1
  149. package/dist/Table/hooks.d.mts +1 -1
  150. package/dist/Table.d.cts +5 -5
  151. package/dist/Table.d.mts +5 -5
  152. package/dist/{TableContext-BrIREKe7.d.mts → TableContext-DBOk01Xl.d.mts} +1 -1
  153. package/dist/{TableContext-DXzUQ4-a.d.cts → TableContext-DRAhXvq3.d.cts} +1 -1
  154. package/dist/TextInput.cjs +1 -1
  155. package/dist/TextInput.d.cts +2 -2
  156. package/dist/TextInput.d.mts +2 -2
  157. package/dist/TextInput.mjs +1 -1
  158. package/dist/ToggleButton/ToggleButton.cjs +1 -1
  159. package/dist/ToggleButton/ToggleButton.d.cts +1 -1
  160. package/dist/ToggleButton/ToggleButton.d.mts +1 -1
  161. package/dist/ToggleButton/ToggleButton.mjs +1 -1
  162. package/dist/ToggleButton/ToggleButtonGroup.cjs +1 -1
  163. package/dist/ToggleButton/ToggleButtonGroup.d.cts +1 -1
  164. package/dist/ToggleButton/ToggleButtonGroup.d.mts +1 -1
  165. package/dist/ToggleButton/ToggleButtonGroup.mjs +1 -1
  166. package/dist/Typography.cjs +1 -1
  167. package/dist/Typography.d.cts +2 -2
  168. package/dist/Typography.d.mts +2 -2
  169. package/dist/Typography.mjs +1 -1
  170. package/dist/View.d.cts +1 -1
  171. package/dist/View.d.mts +1 -1
  172. package/dist/engine.d.cts +1 -1
  173. package/dist/engine.d.mts +1 -1
  174. package/dist/{index-COYxtrc0.d.mts → index-8mHoIUt5.d.mts} +2 -2
  175. package/dist/{index-DOLA1VFD.d.cts → index-B41OXLX8.d.mts} +3 -3
  176. package/dist/{index-BoIi-XoB.d.mts → index-B6vxRNLt.d.cts} +4 -4
  177. package/dist/{index-CTVFwvju.d.mts → index-B8KscJic.d.cts} +2 -2
  178. package/dist/{index-D3iQQ0L3.d.cts → index-BDD-L8uL.d.cts} +1 -1
  179. package/dist/{index-Cf7w9Lod.d.cts → index-BGD4OzzG.d.cts} +3 -3
  180. package/dist/index-BJ5Tsf7u.d.cts +16 -0
  181. package/dist/{index-KZKeZDAF.d.mts → index-BMJ3tyIw.d.cts} +3 -3
  182. package/dist/{index-C5-ZM7lt.d.cts → index-BNpkmtaM.d.mts} +4 -4
  183. package/dist/{index-BCvkP5R1.d.mts → index-BSR9zrAA.d.mts} +3 -3
  184. package/dist/index-BnFxdnEL.d.mts +16 -0
  185. package/dist/{index-DhMAwR96.d.mts → index-CCrocxBL.d.cts} +4 -4
  186. package/dist/{index-v_otepCe.d.mts → index-CEqa8xx8.d.mts} +1 -1
  187. package/dist/{index-d6gR2x8j.d.cts → index-CLttbRhG.d.cts} +2 -2
  188. package/dist/{index-CHRAYSwH.d.cts → index-CVb5zbas.d.mts} +4 -4
  189. package/dist/{index-XZDPGJ_h.d.mts → index-Cjlax0-f.d.mts} +2 -2
  190. package/dist/{index-NBVilQuP.d.mts → index-CoHrw2p7.d.mts} +1 -1
  191. package/dist/{index-h36rcOy8.d.mts → index-CohgpyUj.d.cts} +4 -4
  192. package/dist/{index-DzuXwDCW.d.cts → index-CtrxW81j.d.cts} +2 -2
  193. package/dist/{index-DQ16ijxx.d.mts → index-CvWslVk6.d.cts} +3 -3
  194. package/dist/{index-DdBeSvit.d.mts → index-CzmA09Yf.d.mts} +2 -2
  195. package/dist/{index-C-2VKPcp.d.mts → index-D4i9vrQM.d.mts} +2 -2
  196. package/dist/{index-vuPAf55D.d.cts → index-DNNg9RoR.d.cts} +3 -3
  197. package/dist/{index-76XH-GEc.d.mts → index-DPHwCZYf.d.cts} +2 -2
  198. package/dist/{index-jmy5eXpx.d.cts → index-DkJzi96w.d.cts} +1 -1
  199. package/dist/{index-Br2gDSme.d.cts → index-DsKd9VW5.d.mts} +4 -4
  200. package/dist/{index-Csp1Wzbz.d.cts → index-DuefjNlC.d.mts} +3 -3
  201. package/dist/{index-D9CwTcnr.d.cts → index-EYR0z1Qv.d.cts} +2 -2
  202. package/dist/{index-ggLhNdZV.d.mts → index-IEvuh6Cd.d.mts} +3 -3
  203. package/dist/{index-Oxx0z4dS.d.cts → index-S3NZS-Qp.d.cts} +2 -2
  204. package/dist/{index-BWECJgSb.d.mts → index-bN91IhZi.d.cts} +3 -3
  205. package/dist/{index-D-QRCHiS.d.cts → index-qtKJ56yu.d.mts} +2 -2
  206. package/dist/{index-DCu7qjpa.d.cts → index-r2avCy1z.d.mts} +2 -2
  207. package/dist/{index-Btmdtbpb.d.cts → index-tv-TGYSG.d.mts} +3 -3
  208. package/dist/index.d.cts +2 -2
  209. package/dist/index.d.mts +2 -2
  210. package/dist/layoutStyles-B4Z1K6HZ.cjs +67 -0
  211. package/dist/layoutStyles-f0ISNjsC.mjs +56 -0
  212. package/dist/style.cjs +1 -1
  213. package/dist/style.d.cts +2 -2
  214. package/dist/style.d.mts +2 -2
  215. package/dist/style.mjs +1 -1
  216. package/dist/{theme-BuqqFbsz.mjs → theme-BQGlZoma.mjs} +49 -1
  217. package/dist/{theme-Bnc03K83.cjs → theme-BmEAXmwh.cjs} +60 -0
  218. package/dist/theme.cjs +3 -1
  219. package/dist/theme.d.cts +3 -3
  220. package/dist/theme.d.mts +3 -3
  221. package/dist/theme.mjs +2 -2
  222. package/dist/{themes-kbuYiwCi.d.cts → themes-9YNnlVyY.d.cts} +70 -1
  223. package/dist/{themes-kbuYiwCi.d.mts → themes-9YNnlVyY.d.mts} +70 -1
  224. package/dist/{useTablePagination-BpMOVLsR.d.cts → useTablePagination-CLoac5oX.d.cts} +1 -1
  225. package/dist/{useTablePagination-DebYZ6vN.d.mts → useTablePagination-RelVsdMR.d.mts} +1 -1
  226. package/package.json +14 -4
package/dist/theme.d.mts CHANGED
@@ -1,3 +1,3 @@
1
- import { $ as DeepPartial, A as ThemeSizes, B as baseTheme, C as ThemeFonts, D as ThemePalette, E as ThemeLineHeights, F as ThemeTypographyVariants, G as icon, H as fontSizes, I as ThemeZOrder, J as radii, K as letterSpacings, L as TypographyVariant, M as ThemeSpace, N as ThemeSwitch, O as ThemeRadii, P as ThemeText, Q as zOrder, R as TypographyVariantStyle, S as ThemeFontWeights, T as ThemeLetterSpacings, U as fontWeights, V as borderWidths, W as fonts, X as space, Y as sizes, Z as typography, _ as ThemeBackground, a as CardSlotIconProps, b as ThemeComponents, c as ComponentStyle, d as PaletteColor, et as ThemeOverride, f as PaletteEntry, g as ThemeAvatarSizes, h as Theme, i as CardOwnerState, j as ThemeSkeleton, k as ThemeShadow, l as ComponentVariant, m as SizeEntry, n as ButtonVariants, o as CardSlotTypographyProps, p as PressableOwnerState, q as lineHeights, r as CSSObject, s as ComponentConfig, t as ButtonOwnerState, tt as createTheme, u as OpenScale, v as ThemeBorder, w as ThemeIconSizes, x as ThemeDefaults, y as ThemeBorderWidths, z as avatar } from "./themes-kbuYiwCi.mjs";
2
- import { a as ThemeProvider, i as themeDefault, n as useDefaultProps, r as useTheme, t as withTheme } from "./index-NBVilQuP.mjs";
3
- export { ButtonOwnerState, ButtonVariants, CSSObject, CardOwnerState, CardSlotIconProps, CardSlotTypographyProps, ComponentConfig, ComponentStyle, ComponentVariant, type DeepPartial, OpenScale, PaletteColor, PaletteEntry, PressableOwnerState, SizeEntry, Theme, ThemeAvatarSizes, ThemeBackground, ThemeBorder, ThemeBorderWidths, ThemeComponents, ThemeDefaults, ThemeFontWeights, ThemeFonts, ThemeIconSizes, ThemeLetterSpacings, ThemeLineHeights, type ThemeOverride, ThemePalette, ThemeProvider, ThemeRadii, ThemeShadow, ThemeSizes, ThemeSkeleton, ThemeSpace, ThemeSwitch, ThemeText, ThemeTypographyVariants, ThemeZOrder, TypographyVariant, TypographyVariantStyle, avatar, baseTheme, borderWidths, createTheme, fontSizes, fontWeights, fonts, icon, letterSpacings, lineHeights, radii, sizes, space, themeDefault, typography, useDefaultProps, useTheme, withTheme, zOrder };
1
+ import { $ as fontWeights, A as ThemeFontWeights, B as ThemeSkeleton, C as ThemeAvatarSizes, D as ThemeBreakpoints, E as ThemeBorderWidths, F as ThemeLineHeights, G as ThemeZOrder, H as ThemeSwitch, I as ThemePalette, J as avatar, K as TypographyVariant, L as ThemeRadii, M as ThemeIconSizes, N as ThemeLayout, O as ThemeComponents, P as ThemeLetterSpacings, Q as fontSizes, R as ThemeShadow, S as Theme, T as ThemeBorder, U as ThemeText, V as ThemeSpace, W as ThemeTypographyVariants, X as borderWidths, Y as baseTheme, Z as breakpoints, _ as OpenScale, a as CardSlotIconProps, at as radii, b as PressableOwnerState, c as ComponentStyle, ct as typography, d as LayoutContent, dt as ThemeOverride, et as fonts, f as LayoutEntry, ft as createTheme, g as LayoutSpace, h as LayoutPanels, i as CardOwnerState, it as lineHeights, j as ThemeFonts, k as ThemeDefaults, l as ComponentVariant, lt as zOrder, m as LayoutPanel, n as ButtonVariants, nt as layout, o as CardSlotTypographyProps, ot as sizes, p as LayoutLength, q as TypographyVariantStyle, r as CSSObject, rt as letterSpacings, s as ComponentConfig, st as space, t as ButtonOwnerState, tt as icon, u as LayoutBars, ut as DeepPartial, v as PaletteColor, w as ThemeBackground, x as SizeEntry, y as PaletteEntry, z as ThemeSizes } from "./themes-9YNnlVyY.mjs";
2
+ import { a as ThemeProvider, i as themeDefault, n as useDefaultProps, r as useTheme, t as withTheme } from "./index-CoHrw2p7.mjs";
3
+ export { ButtonOwnerState, ButtonVariants, CSSObject, CardOwnerState, CardSlotIconProps, CardSlotTypographyProps, ComponentConfig, ComponentStyle, ComponentVariant, type DeepPartial, LayoutBars, LayoutContent, LayoutEntry, LayoutLength, LayoutPanel, LayoutPanels, LayoutSpace, OpenScale, PaletteColor, PaletteEntry, PressableOwnerState, SizeEntry, Theme, ThemeAvatarSizes, ThemeBackground, ThemeBorder, ThemeBorderWidths, ThemeBreakpoints, ThemeComponents, ThemeDefaults, ThemeFontWeights, ThemeFonts, ThemeIconSizes, ThemeLayout, ThemeLetterSpacings, ThemeLineHeights, type ThemeOverride, ThemePalette, ThemeProvider, ThemeRadii, ThemeShadow, ThemeSizes, ThemeSkeleton, ThemeSpace, ThemeSwitch, ThemeText, ThemeTypographyVariants, ThemeZOrder, TypographyVariant, TypographyVariantStyle, avatar, baseTheme, borderWidths, breakpoints, createTheme, fontSizes, fontWeights, fonts, icon, layout, letterSpacings, lineHeights, radii, sizes, space, themeDefault, typography, useDefaultProps, useTheme, withTheme, zOrder };
package/dist/theme.mjs CHANGED
@@ -1,3 +1,3 @@
1
1
  import { t as themeDefault } from "./themeDefault-Z3KmyIbm.mjs";
2
- import { _ as typography, a as avatar, c as fontSizes, d as icon, f as letterSpacings, g as space, h as sizes, i as ThemeProvider, l as fontWeights, m as radii, n as useDefaultProps, o as baseTheme, p as lineHeights, r as useTheme, s as borderWidths, t as withTheme, u as fonts, v as zOrder, y as createTheme } from "./theme-BuqqFbsz.mjs";
3
- export { ThemeProvider, avatar, baseTheme, borderWidths, createTheme, fontSizes, fontWeights, fonts, icon, letterSpacings, lineHeights, radii, sizes, space, themeDefault, typography, useDefaultProps, useTheme, withTheme, zOrder };
2
+ import { _ as sizes, a as avatar, b as zOrder, c as breakpoints, d as fonts, f as icon, g as radii, h as lineHeights, i as ThemeProvider, l as fontSizes, m as letterSpacings, n as useDefaultProps, o as baseTheme, p as layout, r as useTheme, s as borderWidths, t as withTheme, u as fontWeights, v as space, x as createTheme, y as typography } from "./theme-BQGlZoma.mjs";
3
+ export { ThemeProvider, avatar, baseTheme, borderWidths, breakpoints, createTheme, fontSizes, fontWeights, fonts, icon, layout, letterSpacings, lineHeights, radii, sizes, space, themeDefault, typography, useDefaultProps, useTheme, withTheme, zOrder };
@@ -187,6 +187,69 @@ interface ThemeSizes {
187
187
  * forces the matching icon size to be supplied.
188
188
  */
189
189
  type ThemeIconSizes = { [K in keyof ThemeSizes]: string; };
190
+ /**
191
+ * `theme.breakpoints`, ascending, in declared order - responsive props map onto
192
+ * them in this order. A value is a CSS length (a min-width), a media condition such
193
+ * as `(600px <= width < 1200px)`, or a full `@media ...` rule, kept as written.
194
+ * `createTheme` appends a consumer's new breakpoint after these, so it must be larger.
195
+ */
196
+ interface ThemeBreakpoints {
197
+ tablet: string;
198
+ web: string;
199
+ wide: string;
200
+ }
201
+ /** A `theme.space` key - layout margins and gutters step on the spacing scale. */
202
+ type LayoutSpace = Exclude<keyof ThemeSpace, 'auto'>;
203
+ /** A `theme.space` key or a CSS length (a 280px panel is a size, not a spacing step). */
204
+ type LayoutLength = LayoutSpace | string;
205
+ /** Bar heights at the top and bottom of the page; `0` removes an inherited bar. */
206
+ interface LayoutBars {
207
+ top?: LayoutLength;
208
+ bottom?: LayoutLength;
209
+ }
210
+ /** A side panel: a track (`inline`), over the content (`overlay`), its rail (`collapsed`) or absent (`hidden`). */
211
+ interface LayoutPanel {
212
+ mode: 'inline' | 'overlay' | 'collapsed' | 'hidden';
213
+ /** Open width. */
214
+ width: LayoutLength;
215
+ /** Collapsed width. */
216
+ railWidth: LayoutLength;
217
+ }
218
+ /** Side panels by logical side - `start` and `end` flip in RTL. */
219
+ interface LayoutPanels {
220
+ start?: LayoutPanel;
221
+ end?: LayoutPanel;
222
+ }
223
+ /** The content columns, measured in the space the bars and inline panels leave. */
224
+ interface LayoutContent {
225
+ columns: number;
226
+ /** Inline padding of the content. */
227
+ margin: LayoutSpace;
228
+ /** Gap between columns. */
229
+ gutter: LayoutSpace;
230
+ /** `fluid` spans the space; `fixed` is a container centred at `maxWidth`. */
231
+ mode: 'fluid' | 'fixed';
232
+ maxWidth?: LayoutLength;
233
+ }
234
+ /** The page layout at one breakpoint. */
235
+ interface LayoutEntry {
236
+ bars: LayoutBars;
237
+ panels: LayoutPanels;
238
+ content: LayoutContent;
239
+ }
240
+ /**
241
+ * `theme.layout`: the complete `base` entry (below the first breakpoint), then a
242
+ * partial entry per breakpoint, merged mobile-first in `ThemeBreakpoints` order. A
243
+ * panel first declared at a breakpoint needs its `mode`, `width` and `railWidth`
244
+ * there; an incomplete one is left out.
245
+ */
246
+ type ThemeLayout = {
247
+ base: LayoutEntry;
248
+ } & { [K in keyof ThemeBreakpoints]?: {
249
+ bars?: LayoutBars;
250
+ panels?: { [P in keyof LayoutPanels]?: Partial<LayoutPanel>; };
251
+ content?: Partial<LayoutContent>;
252
+ }; };
190
253
  /** Style of one typography variant. */
191
254
  interface TypographyVariantStyle {
192
255
  element: ElementType;
@@ -363,12 +426,14 @@ interface ThemeComponents {
363
426
  Icon?: ComponentConfig;
364
427
  Image?: ComponentConfig;
365
428
  LinearProgress?: ComponentConfig<Record<string, unknown>, 'root' | 'track' | 'dash' | 'bar' | 'traveler' | 'segment' | 'secondaryBar'>;
429
+ LayoutGrid?: ComponentConfig;
366
430
  Link?: ComponentConfig;
367
431
  MenuItem?: ComponentConfig<Record<string, unknown>, 'root' | 'check'>;
368
432
  Modal?: ComponentConfig;
369
433
  NativeSelect?: ComponentConfig<Record<string, unknown>, 'root' | 'select' | 'icon'>;
370
434
  Pagination?: ComponentConfig<Record<string, unknown>, 'root' | 'list'>;
371
435
  PaginationItem?: ComponentConfig<Record<string, unknown>, 'root' | 'ellipsis'>;
436
+ PageLayout?: ComponentConfig<Record<string, unknown>, 'root' | 'bar' | 'panel' | 'content'>;
372
437
  Paper?: ComponentConfig;
373
438
  Popover?: ComponentConfig<Record<string, unknown>, 'root' | 'positioner'>;
374
439
  Pressable?: ComponentConfig<PressableOwnerState>;
@@ -402,6 +467,8 @@ interface Theme {
402
467
  /** Optional per-component customization - see `ThemeComponents`. */
403
468
  components?: OpenScale<ThemeComponents>;
404
469
  space: OpenScale<ThemeSpace>;
470
+ breakpoints: OpenScale<ThemeBreakpoints>;
471
+ layout: ThemeLayout;
405
472
  border: OpenScale<ThemeBorder>;
406
473
  text: OpenScale<ThemeText>;
407
474
  background: OpenScale<ThemeBackground>;
@@ -493,6 +560,8 @@ declare const avatar: {
493
560
  declare const icon: ThemeIconSizes;
494
561
  declare const sizes: ThemeSizes;
495
562
  declare const space: ThemeSpace;
563
+ declare const breakpoints: ThemeBreakpoints;
564
+ declare const layout: ThemeLayout;
496
565
  declare const typography: ThemeTypographyVariants;
497
566
  /**
498
567
  * The package's complete default theme (dark-schemed). Raw hex only - palettes
@@ -500,4 +569,4 @@ declare const typography: ThemeTypographyVariants;
500
569
  */
501
570
  declare const baseTheme: Theme;
502
571
  //#endregion
503
- export { DeepPartial as $, ThemeSizes as A, baseTheme as B, ThemeFonts as C, ThemePalette as D, ThemeLineHeights as E, ThemeTypographyVariants as F, icon as G, fontSizes as H, ThemeZOrder as I, radii as J, letterSpacings as K, TypographyVariant as L, ThemeSpace as M, ThemeSwitch as N, ThemeRadii as O, ThemeText as P, zOrder as Q, TypographyVariantStyle as R, ThemeFontWeights as S, ThemeLetterSpacings as T, fontWeights as U, borderWidths as V, fonts as W, space as X, sizes as Y, typography as Z, ThemeBackground as _, CardSlotIconProps as a, ThemeComponents as b, ComponentStyle as c, PaletteColor as d, ThemeOverride as et, PaletteEntry as f, ThemeAvatarSizes as g, Theme as h, CardOwnerState as i, ThemeSkeleton as j, ThemeShadow as k, ComponentVariant as l, SizeEntry as m, ButtonVariants as n, CardSlotTypographyProps as o, PressableOwnerState as p, lineHeights as q, CSSObject$1 as r, ComponentConfig as s, ButtonOwnerState as t, createTheme as tt, OpenScale as u, ThemeBorder as v, ThemeIconSizes as w, ThemeDefaults as x, ThemeBorderWidths as y, avatar as z };
572
+ export { fontWeights as $, ThemeFontWeights as A, ThemeSkeleton as B, ThemeAvatarSizes as C, ThemeBreakpoints as D, ThemeBorderWidths as E, ThemeLineHeights as F, ThemeZOrder as G, ThemeSwitch as H, ThemePalette as I, avatar as J, TypographyVariant as K, ThemeRadii as L, ThemeIconSizes as M, ThemeLayout as N, ThemeComponents as O, ThemeLetterSpacings as P, fontSizes as Q, ThemeShadow as R, Theme as S, ThemeBorder as T, ThemeText as U, ThemeSpace as V, ThemeTypographyVariants as W, borderWidths as X, baseTheme as Y, breakpoints as Z, OpenScale as _, CardSlotIconProps as a, radii as at, PressableOwnerState as b, ComponentStyle as c, typography as ct, LayoutContent as d, ThemeOverride as dt, fonts as et, LayoutEntry as f, createTheme as ft, LayoutSpace as g, LayoutPanels as h, CardOwnerState as i, lineHeights as it, ThemeFonts as j, ThemeDefaults as k, ComponentVariant as l, zOrder as lt, LayoutPanel as m, ButtonVariants as n, layout as nt, CardSlotTypographyProps as o, sizes as ot, LayoutLength as p, TypographyVariantStyle as q, CSSObject$1 as r, letterSpacings as rt, ComponentConfig as s, space as st, ButtonOwnerState as t, icon as tt, LayoutBars as u, DeepPartial as ut, PaletteColor as v, ThemeBackground as w, SizeEntry as x, PaletteEntry as y, ThemeSizes as z };
@@ -187,6 +187,69 @@ interface ThemeSizes {
187
187
  * forces the matching icon size to be supplied.
188
188
  */
189
189
  type ThemeIconSizes = { [K in keyof ThemeSizes]: string; };
190
+ /**
191
+ * `theme.breakpoints`, ascending, in declared order - responsive props map onto
192
+ * them in this order. A value is a CSS length (a min-width), a media condition such
193
+ * as `(600px <= width < 1200px)`, or a full `@media ...` rule, kept as written.
194
+ * `createTheme` appends a consumer's new breakpoint after these, so it must be larger.
195
+ */
196
+ interface ThemeBreakpoints {
197
+ tablet: string;
198
+ web: string;
199
+ wide: string;
200
+ }
201
+ /** A `theme.space` key - layout margins and gutters step on the spacing scale. */
202
+ type LayoutSpace = Exclude<keyof ThemeSpace, 'auto'>;
203
+ /** A `theme.space` key or a CSS length (a 280px panel is a size, not a spacing step). */
204
+ type LayoutLength = LayoutSpace | string;
205
+ /** Bar heights at the top and bottom of the page; `0` removes an inherited bar. */
206
+ interface LayoutBars {
207
+ top?: LayoutLength;
208
+ bottom?: LayoutLength;
209
+ }
210
+ /** A side panel: a track (`inline`), over the content (`overlay`), its rail (`collapsed`) or absent (`hidden`). */
211
+ interface LayoutPanel {
212
+ mode: 'inline' | 'overlay' | 'collapsed' | 'hidden';
213
+ /** Open width. */
214
+ width: LayoutLength;
215
+ /** Collapsed width. */
216
+ railWidth: LayoutLength;
217
+ }
218
+ /** Side panels by logical side - `start` and `end` flip in RTL. */
219
+ interface LayoutPanels {
220
+ start?: LayoutPanel;
221
+ end?: LayoutPanel;
222
+ }
223
+ /** The content columns, measured in the space the bars and inline panels leave. */
224
+ interface LayoutContent {
225
+ columns: number;
226
+ /** Inline padding of the content. */
227
+ margin: LayoutSpace;
228
+ /** Gap between columns. */
229
+ gutter: LayoutSpace;
230
+ /** `fluid` spans the space; `fixed` is a container centred at `maxWidth`. */
231
+ mode: 'fluid' | 'fixed';
232
+ maxWidth?: LayoutLength;
233
+ }
234
+ /** The page layout at one breakpoint. */
235
+ interface LayoutEntry {
236
+ bars: LayoutBars;
237
+ panels: LayoutPanels;
238
+ content: LayoutContent;
239
+ }
240
+ /**
241
+ * `theme.layout`: the complete `base` entry (below the first breakpoint), then a
242
+ * partial entry per breakpoint, merged mobile-first in `ThemeBreakpoints` order. A
243
+ * panel first declared at a breakpoint needs its `mode`, `width` and `railWidth`
244
+ * there; an incomplete one is left out.
245
+ */
246
+ type ThemeLayout = {
247
+ base: LayoutEntry;
248
+ } & { [K in keyof ThemeBreakpoints]?: {
249
+ bars?: LayoutBars;
250
+ panels?: { [P in keyof LayoutPanels]?: Partial<LayoutPanel>; };
251
+ content?: Partial<LayoutContent>;
252
+ }; };
190
253
  /** Style of one typography variant. */
191
254
  interface TypographyVariantStyle {
192
255
  element: ElementType;
@@ -363,12 +426,14 @@ interface ThemeComponents {
363
426
  Icon?: ComponentConfig;
364
427
  Image?: ComponentConfig;
365
428
  LinearProgress?: ComponentConfig<Record<string, unknown>, 'root' | 'track' | 'dash' | 'bar' | 'traveler' | 'segment' | 'secondaryBar'>;
429
+ LayoutGrid?: ComponentConfig;
366
430
  Link?: ComponentConfig;
367
431
  MenuItem?: ComponentConfig<Record<string, unknown>, 'root' | 'check'>;
368
432
  Modal?: ComponentConfig;
369
433
  NativeSelect?: ComponentConfig<Record<string, unknown>, 'root' | 'select' | 'icon'>;
370
434
  Pagination?: ComponentConfig<Record<string, unknown>, 'root' | 'list'>;
371
435
  PaginationItem?: ComponentConfig<Record<string, unknown>, 'root' | 'ellipsis'>;
436
+ PageLayout?: ComponentConfig<Record<string, unknown>, 'root' | 'bar' | 'panel' | 'content'>;
372
437
  Paper?: ComponentConfig;
373
438
  Popover?: ComponentConfig<Record<string, unknown>, 'root' | 'positioner'>;
374
439
  Pressable?: ComponentConfig<PressableOwnerState>;
@@ -402,6 +467,8 @@ interface Theme {
402
467
  /** Optional per-component customization - see `ThemeComponents`. */
403
468
  components?: OpenScale<ThemeComponents>;
404
469
  space: OpenScale<ThemeSpace>;
470
+ breakpoints: OpenScale<ThemeBreakpoints>;
471
+ layout: ThemeLayout;
405
472
  border: OpenScale<ThemeBorder>;
406
473
  text: OpenScale<ThemeText>;
407
474
  background: OpenScale<ThemeBackground>;
@@ -493,6 +560,8 @@ declare const avatar: {
493
560
  declare const icon: ThemeIconSizes;
494
561
  declare const sizes: ThemeSizes;
495
562
  declare const space: ThemeSpace;
563
+ declare const breakpoints: ThemeBreakpoints;
564
+ declare const layout: ThemeLayout;
496
565
  declare const typography: ThemeTypographyVariants;
497
566
  /**
498
567
  * The package's complete default theme (dark-schemed). Raw hex only - palettes
@@ -500,4 +569,4 @@ declare const typography: ThemeTypographyVariants;
500
569
  */
501
570
  declare const baseTheme: Theme;
502
571
  //#endregion
503
- export { DeepPartial as $, ThemeSizes as A, baseTheme as B, ThemeFonts as C, ThemePalette as D, ThemeLineHeights as E, ThemeTypographyVariants as F, icon as G, fontSizes as H, ThemeZOrder as I, radii as J, letterSpacings as K, TypographyVariant as L, ThemeSpace as M, ThemeSwitch as N, ThemeRadii as O, ThemeText as P, zOrder as Q, TypographyVariantStyle as R, ThemeFontWeights as S, ThemeLetterSpacings as T, fontWeights as U, borderWidths as V, fonts as W, space as X, sizes as Y, typography as Z, ThemeBackground as _, CardSlotIconProps as a, ThemeComponents as b, ComponentStyle as c, PaletteColor as d, ThemeOverride as et, PaletteEntry as f, ThemeAvatarSizes as g, Theme as h, CardOwnerState as i, ThemeSkeleton as j, ThemeShadow as k, ComponentVariant as l, SizeEntry as m, ButtonVariants as n, CardSlotTypographyProps as o, PressableOwnerState as p, lineHeights as q, CSSObject$1 as r, ComponentConfig as s, ButtonOwnerState as t, createTheme as tt, OpenScale as u, ThemeBorder as v, ThemeIconSizes as w, ThemeDefaults as x, ThemeBorderWidths as y, avatar as z };
572
+ export { fontWeights as $, ThemeFontWeights as A, ThemeSkeleton as B, ThemeAvatarSizes as C, ThemeBreakpoints as D, ThemeBorderWidths as E, ThemeLineHeights as F, ThemeZOrder as G, ThemeSwitch as H, ThemePalette as I, avatar as J, TypographyVariant as K, ThemeRadii as L, ThemeIconSizes as M, ThemeLayout as N, ThemeComponents as O, ThemeLetterSpacings as P, fontSizes as Q, ThemeShadow as R, Theme as S, ThemeBorder as T, ThemeText as U, ThemeSpace as V, ThemeTypographyVariants as W, borderWidths as X, baseTheme as Y, breakpoints as Z, OpenScale as _, CardSlotIconProps as a, radii as at, PressableOwnerState as b, ComponentStyle as c, typography as ct, LayoutContent as d, ThemeOverride as dt, fonts as et, LayoutEntry as f, createTheme as ft, LayoutSpace as g, LayoutPanels as h, CardOwnerState as i, lineHeights as it, ThemeFonts as j, ThemeDefaults as k, ComponentVariant as l, zOrder as lt, LayoutPanel as m, ButtonVariants as n, layout as nt, CardSlotTypographyProps as o, sizes as ot, LayoutLength as p, TypographyVariantStyle as q, CSSObject$1 as r, letterSpacings as rt, ComponentConfig as s, space as st, ButtonOwnerState as t, icon as tt, LayoutBars as u, DeepPartial as ut, PaletteColor as v, ThemeBackground as w, SizeEntry as x, PaletteEntry as y, ThemeSizes as z };
@@ -1,4 +1,4 @@
1
- import { n as TableSortLabelDirection } from "./index-vuPAf55D.cjs";
1
+ import { n as TableSortLabelDirection } from "./index-DNNg9RoR.cjs";
2
2
  //#region src/Table/hooks/useTableSort.d.ts
3
3
  /** One column's sort state - spreads directly onto `TableSortLabel`. */
4
4
  interface TableSortEntry {
@@ -1,4 +1,4 @@
1
- import { n as TableSortLabelDirection } from "./index-ggLhNdZV.mjs";
1
+ import { n as TableSortLabelDirection } from "./index-IEvuh6Cd.mjs";
2
2
  //#region src/Table/hooks/useTableSort.d.ts
3
3
  /** One column's sort state - spreads directly onto `TableSortLabel`. */
4
4
  interface TableSortEntry {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@soroush.tech/design-system",
3
- "version": "1.3.3",
3
+ "version": "2.0.0-alpha.0",
4
4
  "description": "Emotion + @soroush.tech/styled-system React component library - token-driven light/dark themes, layout primitives, forms, and overlays.",
5
5
  "keywords": [
6
6
  "design-system",
@@ -16,11 +16,11 @@
16
16
  "homepage": "https://soroush.tech/design-system",
17
17
  "repository": {
18
18
  "type": "git",
19
- "url": "git+https://github.com/soroush-tech/core.git",
19
+ "url": "git+https://github.com/soroush-tech/design-system.git",
20
20
  "directory": "packages/design-system"
21
21
  },
22
22
  "bugs": {
23
- "url": "https://github.com/soroush-tech/core/issues"
23
+ "url": "https://github.com/soroush-tech/design-system/issues"
24
24
  },
25
25
  "type": "module",
26
26
  "sideEffects": false,
@@ -278,6 +278,16 @@
278
278
  "default": "./dist/Pagination.cjs"
279
279
  }
280
280
  },
281
+ "./PageLayout": {
282
+ "import": {
283
+ "types": "./dist/PageLayout.d.mts",
284
+ "default": "./dist/PageLayout.mjs"
285
+ },
286
+ "require": {
287
+ "types": "./dist/PageLayout.d.cts",
288
+ "default": "./dist/PageLayout.cjs"
289
+ }
290
+ },
281
291
  "./Paper": {
282
292
  "import": {
283
293
  "types": "./dist/Paper.d.mts",
@@ -477,7 +487,7 @@
477
487
  "@emotion/cache": "^11.14.0",
478
488
  "@emotion/react": "^11.14.0",
479
489
  "@emotion/styled": "^11.14.1",
480
- "@soroush.tech/styled-system": "^5.8.3"
490
+ "@soroush.tech/styled-system": "^5.9.0-alpha.0"
481
491
  },
482
492
  "peerDependencies": {
483
493
  "react": "^19.2.8",