asheeui 1.0.0 → 1.1.1

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 (287) hide show
  1. package/LICENSE +201 -21
  2. package/NOTICE +10 -0
  3. package/README.md +63 -166
  4. package/dist/components/accordion/Accordion.d.ts +1 -1
  5. package/dist/components/alert/Alert.d.ts.map +1 -1
  6. package/dist/components/alert/Alert.js +6 -6
  7. package/dist/components/auth-layout/AuthLayout.d.ts +79 -0
  8. package/dist/components/auth-layout/AuthLayout.d.ts.map +1 -0
  9. package/dist/components/auth-layout/AuthLayout.js +54 -0
  10. package/dist/components/auth-layout/auth-layout-config.d.ts +41 -0
  11. package/dist/components/auth-layout/auth-layout-config.d.ts.map +1 -0
  12. package/dist/components/auth-layout/auth-layout-config.js +18 -0
  13. package/dist/components/auth-layout/auth-layout-styles.d.ts +25 -0
  14. package/dist/components/auth-layout/auth-layout-styles.d.ts.map +1 -0
  15. package/dist/components/auth-layout/auth-layout-styles.js +11 -0
  16. package/dist/components/auth-layout/index.d.ts +3 -0
  17. package/dist/components/auth-layout/index.d.ts.map +1 -0
  18. package/dist/components/auth-layout/index.js +3 -0
  19. package/dist/components/autocomplete/Autocomplete.d.ts.map +1 -1
  20. package/dist/components/avatar/Avatar.d.ts.map +1 -1
  21. package/dist/components/avatar/Avatar.js +7 -7
  22. package/dist/components/badge/Badge.d.ts.map +1 -1
  23. package/dist/components/badge/Badge.js +3 -3
  24. package/dist/components/breadcrumb/Breadcrumb.d.ts.map +1 -1
  25. package/dist/components/breadcrumb/Breadcrumb.js +6 -6
  26. package/dist/components/calendar/Calendar.d.ts.map +1 -1
  27. package/dist/components/calendar/Calendar.js +4 -4
  28. package/dist/components/calendar/DateGrid.d.ts.map +1 -1
  29. package/dist/components/calendar/DateGrid.js +87 -87
  30. package/dist/components/clipboard/Clipboard.d.ts +75 -0
  31. package/dist/components/clipboard/Clipboard.d.ts.map +1 -0
  32. package/dist/components/clipboard/Clipboard.js +53 -0
  33. package/dist/components/clipboard/CopyButton.d.ts +64 -0
  34. package/dist/components/clipboard/CopyButton.d.ts.map +1 -0
  35. package/dist/components/clipboard/CopyButton.js +44 -0
  36. package/dist/components/clipboard/clipboard-config.d.ts +42 -0
  37. package/dist/components/clipboard/clipboard-config.d.ts.map +1 -0
  38. package/dist/components/clipboard/clipboard-config.js +23 -0
  39. package/dist/components/clipboard/clipboard-styles.d.ts +11 -0
  40. package/dist/components/clipboard/clipboard-styles.d.ts.map +1 -0
  41. package/dist/components/clipboard/clipboard-styles.js +5 -0
  42. package/dist/components/clipboard/index.d.ts +4 -0
  43. package/dist/components/clipboard/index.d.ts.map +1 -0
  44. package/dist/components/clipboard/index.js +4 -0
  45. package/dist/components/container/Container.d.ts +51 -0
  46. package/dist/components/container/Container.d.ts.map +1 -0
  47. package/dist/components/container/Container.js +21 -0
  48. package/dist/components/container/container-config.d.ts +61 -0
  49. package/dist/components/container/container-config.d.ts.map +1 -0
  50. package/dist/components/container/container-config.js +16 -0
  51. package/dist/components/container/container-styles.d.ts +18 -0
  52. package/dist/components/container/container-styles.d.ts.map +1 -0
  53. package/dist/components/container/container-styles.js +12 -0
  54. package/dist/components/container/index.d.ts +3 -0
  55. package/dist/components/container/index.d.ts.map +1 -0
  56. package/dist/components/container/index.js +3 -0
  57. package/dist/components/cta/CTA.d.ts +81 -0
  58. package/dist/components/cta/CTA.d.ts.map +1 -0
  59. package/dist/components/cta/CTA.js +60 -0
  60. package/dist/components/cta/cta-config.d.ts +69 -0
  61. package/dist/components/cta/cta-config.d.ts.map +1 -0
  62. package/dist/components/cta/cta-config.js +22 -0
  63. package/dist/components/cta/cta-styles.d.ts +8 -0
  64. package/dist/components/cta/cta-styles.d.ts.map +1 -0
  65. package/dist/components/cta/cta-styles.js +9 -0
  66. package/dist/components/cta/index.d.ts +3 -0
  67. package/dist/components/cta/index.d.ts.map +1 -0
  68. package/dist/components/cta/index.js +3 -0
  69. package/dist/components/dropmenu/Dropmenu.d.ts.map +1 -1
  70. package/dist/components/empty-state/EmptyState.d.ts +77 -0
  71. package/dist/components/empty-state/EmptyState.d.ts.map +1 -0
  72. package/dist/components/empty-state/EmptyState.js +46 -0
  73. package/dist/components/empty-state/empty-state-config.d.ts +44 -0
  74. package/dist/components/empty-state/empty-state-config.d.ts.map +1 -0
  75. package/dist/components/empty-state/empty-state-config.js +16 -0
  76. package/dist/components/empty-state/empty-state-styles.d.ts +13 -0
  77. package/dist/components/empty-state/empty-state-styles.d.ts.map +1 -0
  78. package/dist/components/empty-state/empty-state-styles.js +18 -0
  79. package/dist/components/empty-state/index.d.ts +3 -0
  80. package/dist/components/empty-state/index.d.ts.map +1 -0
  81. package/dist/components/empty-state/index.js +3 -0
  82. package/dist/components/feature-grid/FeatureGrid.d.ts +107 -0
  83. package/dist/components/feature-grid/FeatureGrid.d.ts.map +1 -0
  84. package/dist/components/feature-grid/FeatureGrid.js +94 -0
  85. package/dist/components/feature-grid/feature-grid-config.d.ts +80 -0
  86. package/dist/components/feature-grid/feature-grid-config.d.ts.map +1 -0
  87. package/dist/components/feature-grid/feature-grid-config.js +28 -0
  88. package/dist/components/feature-grid/feature-grid-styles.d.ts +11 -0
  89. package/dist/components/feature-grid/feature-grid-styles.d.ts.map +1 -0
  90. package/dist/components/feature-grid/feature-grid-styles.js +5 -0
  91. package/dist/components/feature-grid/index.d.ts +3 -0
  92. package/dist/components/feature-grid/index.d.ts.map +1 -0
  93. package/dist/components/feature-grid/index.js +3 -0
  94. package/dist/components/footer/Footer.d.ts +73 -0
  95. package/dist/components/footer/Footer.d.ts.map +1 -0
  96. package/dist/components/footer/Footer.js +112 -0
  97. package/dist/components/footer/footer-config.d.ts +40 -0
  98. package/dist/components/footer/footer-config.d.ts.map +1 -0
  99. package/dist/components/footer/footer-config.js +18 -0
  100. package/dist/components/footer/footer-styles.d.ts +22 -0
  101. package/dist/components/footer/footer-styles.d.ts.map +1 -0
  102. package/dist/components/footer/footer-styles.js +9 -0
  103. package/dist/components/footer/index.d.ts +3 -0
  104. package/dist/components/footer/index.d.ts.map +1 -0
  105. package/dist/components/footer/index.js +3 -0
  106. package/dist/components/form/Form.d.ts.map +1 -1
  107. package/dist/components/grid/Grid.d.ts +71 -0
  108. package/dist/components/grid/Grid.d.ts.map +1 -0
  109. package/dist/components/grid/Grid.js +23 -0
  110. package/dist/components/grid/grid-config.d.ts +63 -0
  111. package/dist/components/grid/grid-config.d.ts.map +1 -0
  112. package/dist/components/grid/grid-config.js +16 -0
  113. package/dist/components/grid/grid-styles.d.ts +12 -0
  114. package/dist/components/grid/grid-styles.d.ts.map +1 -0
  115. package/dist/components/grid/grid-styles.js +31 -0
  116. package/dist/components/grid/index.d.ts +3 -0
  117. package/dist/components/grid/index.d.ts.map +1 -0
  118. package/dist/components/grid/index.js +3 -0
  119. package/dist/components/hero/Hero.d.ts +90 -0
  120. package/dist/components/hero/Hero.d.ts.map +1 -0
  121. package/dist/components/hero/Hero.js +63 -0
  122. package/dist/components/hero/hero-config.d.ts +71 -0
  123. package/dist/components/hero/hero-config.d.ts.map +1 -0
  124. package/dist/components/hero/hero-config.js +22 -0
  125. package/dist/components/hero/hero-styles.d.ts +19 -0
  126. package/dist/components/hero/hero-styles.d.ts.map +1 -0
  127. package/dist/components/hero/hero-styles.js +5 -0
  128. package/dist/components/hero/index.d.ts +3 -0
  129. package/dist/components/hero/index.d.ts.map +1 -0
  130. package/dist/components/hero/index.js +3 -0
  131. package/dist/components/multi-select/MultiSelect.d.ts.map +1 -1
  132. package/dist/components/navbar/Navbar.d.ts +87 -0
  133. package/dist/components/navbar/Navbar.d.ts.map +1 -0
  134. package/dist/components/navbar/Navbar.js +117 -0
  135. package/dist/components/navbar/index.d.ts +3 -0
  136. package/dist/components/navbar/index.d.ts.map +1 -0
  137. package/dist/components/navbar/index.js +3 -0
  138. package/dist/components/navbar/navbar-config.d.ts +52 -0
  139. package/dist/components/navbar/navbar-config.d.ts.map +1 -0
  140. package/dist/components/navbar/navbar-config.js +20 -0
  141. package/dist/components/navbar/navbar-styles.d.ts +28 -0
  142. package/dist/components/navbar/navbar-styles.d.ts.map +1 -0
  143. package/dist/components/navbar/navbar-styles.js +9 -0
  144. package/dist/components/page/Page.d.ts +166 -0
  145. package/dist/components/page/Page.d.ts.map +1 -0
  146. package/dist/components/page/Page.js +90 -0
  147. package/dist/components/page/index.d.ts +3 -0
  148. package/dist/components/page/index.d.ts.map +1 -0
  149. package/dist/components/page/index.js +3 -0
  150. package/dist/components/page/page-config.d.ts +57 -0
  151. package/dist/components/page/page-config.d.ts.map +1 -0
  152. package/dist/components/page/page-config.js +20 -0
  153. package/dist/components/page/page-styles.d.ts +25 -0
  154. package/dist/components/page/page-styles.d.ts.map +1 -0
  155. package/dist/components/page/page-styles.js +5 -0
  156. package/dist/components/pagination/Pagination.d.ts.map +1 -1
  157. package/dist/components/pagination/Pagination.js +8 -8
  158. package/dist/components/pin-input/PinInput.d.ts +109 -0
  159. package/dist/components/pin-input/PinInput.d.ts.map +1 -0
  160. package/dist/components/pin-input/PinInput.js +124 -0
  161. package/dist/components/pin-input/index.d.ts +3 -0
  162. package/dist/components/pin-input/index.d.ts.map +1 -0
  163. package/dist/components/pin-input/index.js +3 -0
  164. package/dist/components/pin-input/pin-input-config.d.ts +82 -0
  165. package/dist/components/pin-input/pin-input-config.d.ts.map +1 -0
  166. package/dist/components/pin-input/pin-input-config.js +23 -0
  167. package/dist/components/pin-input/pin-input-styles.d.ts +16 -0
  168. package/dist/components/pin-input/pin-input-styles.d.ts.map +1 -0
  169. package/dist/components/pin-input/pin-input-styles.js +9 -0
  170. package/dist/components/pricing-card/PricingCard.d.ts +87 -0
  171. package/dist/components/pricing-card/PricingCard.d.ts.map +1 -0
  172. package/dist/components/pricing-card/PricingCard.js +79 -0
  173. package/dist/components/pricing-card/index.d.ts +3 -0
  174. package/dist/components/pricing-card/index.d.ts.map +1 -0
  175. package/dist/components/pricing-card/index.js +3 -0
  176. package/dist/components/pricing-card/pricing-card-config.d.ts +35 -0
  177. package/dist/components/pricing-card/pricing-card-config.d.ts.map +1 -0
  178. package/dist/components/pricing-card/pricing-card-config.js +16 -0
  179. package/dist/components/pricing-card/pricing-card-styles.d.ts +21 -0
  180. package/dist/components/pricing-card/pricing-card-styles.d.ts.map +1 -0
  181. package/dist/components/pricing-card/pricing-card-styles.js +5 -0
  182. package/dist/components/radio/RadioGroup.d.ts.map +1 -1
  183. package/dist/components/section/Section.d.ts +56 -0
  184. package/dist/components/section/Section.d.ts.map +1 -0
  185. package/dist/components/section/Section.js +27 -0
  186. package/dist/components/section/index.d.ts +3 -0
  187. package/dist/components/section/index.d.ts.map +1 -0
  188. package/dist/components/section/index.js +3 -0
  189. package/dist/components/section/section-config.d.ts +64 -0
  190. package/dist/components/section/section-config.d.ts.map +1 -0
  191. package/dist/components/section/section-config.js +20 -0
  192. package/dist/components/section/section-styles.d.ts +8 -0
  193. package/dist/components/section/section-styles.d.ts.map +1 -0
  194. package/dist/components/section/section-styles.js +9 -0
  195. package/dist/components/section-kit/ActionGroup.d.ts +47 -0
  196. package/dist/components/section-kit/ActionGroup.d.ts.map +1 -0
  197. package/dist/components/section-kit/ActionGroup.js +35 -0
  198. package/dist/components/section-kit/SectionHeading.d.ts +65 -0
  199. package/dist/components/section-kit/SectionHeading.d.ts.map +1 -0
  200. package/dist/components/section-kit/SectionHeading.js +34 -0
  201. package/dist/components/section-kit/index.d.ts +12 -0
  202. package/dist/components/section-kit/index.d.ts.map +1 -0
  203. package/dist/components/section-kit/index.js +2 -0
  204. package/dist/components/sidebar-layout/SidebarLayout.d.ts +67 -0
  205. package/dist/components/sidebar-layout/SidebarLayout.d.ts.map +1 -0
  206. package/dist/components/sidebar-layout/SidebarLayout.js +40 -0
  207. package/dist/components/sidebar-layout/index.d.ts +3 -0
  208. package/dist/components/sidebar-layout/index.d.ts.map +1 -0
  209. package/dist/components/sidebar-layout/index.js +3 -0
  210. package/dist/components/sidebar-layout/sidebar-layout-config.d.ts +49 -0
  211. package/dist/components/sidebar-layout/sidebar-layout-config.d.ts.map +1 -0
  212. package/dist/components/sidebar-layout/sidebar-layout-config.js +16 -0
  213. package/dist/components/sidebar-layout/sidebar-layout-styles.d.ts +21 -0
  214. package/dist/components/sidebar-layout/sidebar-layout-styles.d.ts.map +1 -0
  215. package/dist/components/sidebar-layout/sidebar-layout-styles.js +9 -0
  216. package/dist/components/skeleton/Skeleton.d.ts.map +1 -1
  217. package/dist/components/stack/Stack.d.ts +107 -0
  218. package/dist/components/stack/Stack.d.ts.map +1 -0
  219. package/dist/components/stack/Stack.js +36 -0
  220. package/dist/components/stack/index.d.ts +3 -0
  221. package/dist/components/stack/index.d.ts.map +1 -0
  222. package/dist/components/stack/index.js +3 -0
  223. package/dist/components/stack/stack-config.d.ts +68 -0
  224. package/dist/components/stack/stack-config.d.ts.map +1 -0
  225. package/dist/components/stack/stack-config.js +20 -0
  226. package/dist/components/stack/stack-styles.d.ts +10 -0
  227. package/dist/components/stack/stack-styles.d.ts.map +1 -0
  228. package/dist/components/stack/stack-styles.js +21 -0
  229. package/dist/components/testimonials/Testimonials.d.ts +78 -0
  230. package/dist/components/testimonials/Testimonials.d.ts.map +1 -0
  231. package/dist/components/testimonials/Testimonials.js +96 -0
  232. package/dist/components/testimonials/index.d.ts +3 -0
  233. package/dist/components/testimonials/index.d.ts.map +1 -0
  234. package/dist/components/testimonials/index.js +3 -0
  235. package/dist/components/testimonials/testimonials-config.d.ts +44 -0
  236. package/dist/components/testimonials/testimonials-config.d.ts.map +1 -0
  237. package/dist/components/testimonials/testimonials-config.js +28 -0
  238. package/dist/components/testimonials/testimonials-styles.d.ts +11 -0
  239. package/dist/components/testimonials/testimonials-styles.d.ts.map +1 -0
  240. package/dist/components/testimonials/testimonials-styles.js +5 -0
  241. package/dist/components/typography/typography-styles.d.ts.map +1 -1
  242. package/dist/config/validate-config.d.ts.map +1 -1
  243. package/dist/icons/CopyIcon.d.ts +3 -0
  244. package/dist/icons/CopyIcon.d.ts.map +1 -0
  245. package/dist/icons/CopyIcon.js +24 -0
  246. package/dist/index.d.ts +19 -2
  247. package/dist/index.d.ts.map +1 -1
  248. package/dist/index.js +107 -72
  249. package/dist/puck/adapters.d.ts +41 -0
  250. package/dist/puck/adapters.d.ts.map +1 -0
  251. package/dist/puck/adapters.js +30 -0
  252. package/dist/puck/blocks/content.d.ts +32 -0
  253. package/dist/puck/blocks/content.d.ts.map +1 -0
  254. package/dist/puck/blocks/content.js +54 -0
  255. package/dist/puck/blocks/layout.d.ts +44 -0
  256. package/dist/puck/blocks/layout.d.ts.map +1 -0
  257. package/dist/puck/blocks/layout.js +69 -0
  258. package/dist/puck/blocks/navigation.d.ts +66 -0
  259. package/dist/puck/blocks/navigation.d.ts.map +1 -0
  260. package/dist/puck/blocks/navigation.js +122 -0
  261. package/dist/puck/blocks/sections.d.ts +134 -0
  262. package/dist/puck/blocks/sections.d.ts.map +1 -0
  263. package/dist/puck/blocks/sections.js +232 -0
  264. package/dist/puck/blocks/utility.d.ts +22 -0
  265. package/dist/puck/blocks/utility.d.ts.map +1 -0
  266. package/dist/puck/blocks/utility.js +49 -0
  267. package/dist/puck/config.d.ts +63 -0
  268. package/dist/puck/config.d.ts.map +1 -0
  269. package/dist/puck/config.js +79 -0
  270. package/dist/puck/fields.d.ts +94 -0
  271. package/dist/puck/fields.d.ts.map +1 -0
  272. package/dist/puck/fields.js +116 -0
  273. package/dist/puck/index.d.ts +21 -0
  274. package/dist/puck/index.d.ts.map +1 -0
  275. package/dist/puck/index.js +10 -0
  276. package/dist/shared/action.d.ts +52 -0
  277. package/dist/shared/action.d.ts.map +1 -0
  278. package/dist/shared/index.d.ts +2 -0
  279. package/dist/shared/index.d.ts.map +1 -1
  280. package/dist/shared/spacing.d.ts +38 -0
  281. package/dist/shared/spacing.d.ts.map +1 -0
  282. package/dist/shared/spacing.js +29 -0
  283. package/dist/shared/typography.d.ts.map +1 -1
  284. package/dist/utils/resolve-token.d.ts +32 -7
  285. package/dist/utils/resolve-token.d.ts.map +1 -1
  286. package/dist/utils/resolve-token.js +9 -1
  287. package/package.json +18 -4
@@ -0,0 +1,67 @@
1
+ import { ElementType, HTMLAttributes, ReactNode } from 'react';
2
+ import { SidebarLayoutConfig } from './sidebar-layout-config';
3
+ type BaseSidebarLayoutProps = SidebarLayoutConfig & Omit<HTMLAttributes<HTMLDivElement>, "color">;
4
+ /**
5
+ * Props for the SidebarLayout component.
6
+ */
7
+ export interface SidebarLayoutProps extends BaseSidebarLayoutProps {
8
+ /** The navigation column, typically the framework's `Sidebar`. */
9
+ sidebar: ReactNode;
10
+ /** Content above both columns, typically the framework's `Navbar`. */
11
+ header?: ReactNode;
12
+ /** Content below both columns. */
13
+ footer?: ReactNode;
14
+ /**
15
+ * Name of the navigation landmark the sidebar is rendered in.
16
+ * A shell usually holds one, so the name distinguishes it from the page's
17
+ * other navigation regions.
18
+ *
19
+ * @default "Sidebar"
20
+ */
21
+ sidebarLabel?: string;
22
+ /**
23
+ * Element to render the shell as.
24
+ * Defaults to a `div`.
25
+ *
26
+ * @default "div"
27
+ */
28
+ as?: ElementType;
29
+ }
30
+ /**
31
+ * An application shell with a persistent navigation column.
32
+ *
33
+ * The shell is a single column on a narrow screen and two columns from the `lg`
34
+ * breakpoint, with the navigation column sticky and independently scrollable on
35
+ * a wide screen. It deliberately stacks the navigation above the content on a
36
+ * narrow screen rather than hiding it behind an off-canvas drawer: the whole page
37
+ * then stays reachable with the keyboard, with no focus trap to get wrong.
38
+ *
39
+ * @param props - SidebarLayout configuration options and element attributes.
40
+ * @param props.sidebar - The navigation column.
41
+ * @param props.header - Content above both columns.
42
+ * @param props.footer - Content below both columns.
43
+ * @param props.sidebarLabel - Name of the navigation landmark. Defaults to
44
+ * "Sidebar".
45
+ * @param props.side - Side the navigation column sits on. Defaults to "start".
46
+ * @param props.sidebarWidth - Width of the navigation column. Defaults to "md".
47
+ * @param props.stickySidebar - Keep the column in view. Defaults to true.
48
+ * @param props.as - Element to render. Defaults to "div".
49
+ * @returns The rendered shell.
50
+ *
51
+ * @example
52
+ * ```tsx
53
+ * <SidebarLayout
54
+ * header={<Navbar brand="Ashee SMS" links={links} />}
55
+ * sidebar={<Sidebar items={items} activeKey="campaigns" />}>
56
+ * <PageContent>
57
+ * <Typography role="heading-lg">Campaigns</Typography>
58
+ * </PageContent>
59
+ * </SidebarLayout>
60
+ * ```
61
+ *
62
+ * @see Sidebar - The navigation the column usually holds.
63
+ * @see Page - The single-column shell, for a page without navigation.
64
+ */
65
+ export declare const SidebarLayout: import('react').ForwardRefExoticComponent<SidebarLayoutProps & import('react').RefAttributes<HTMLDivElement>>;
66
+ export {};
67
+ //# sourceMappingURL=SidebarLayout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SidebarLayout.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar-layout/SidebarLayout.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EACL,KAAK,WAAW,EAEhB,KAAK,cAAc,EACnB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAIf,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,yBAAyB,CAAC;AAYjC,KAAK,sBAAsB,GAAG,mBAAmB,GAC/C,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,sBAAsB;IAChE,kEAAkE;IAClE,OAAO,EAAE,SAAS,CAAC;IAEnB,sEAAsE;IACtE,MAAM,CAAC,EAAE,SAAS,CAAC;IAEnB,kCAAkC;IAClC,MAAM,CAAC,EAAE,SAAS,CAAC;IAEnB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;OAKG;IACH,EAAE,CAAC,EAAE,WAAW,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,eAAO,MAAM,aAAa,+GAyDzB,CAAC"}
@@ -0,0 +1,40 @@
1
+ "use client";
2
+ "use client";
3
+ import { cn as e } from "../../utils/cn.js";
4
+ import { useAsheeConfig as t } from "../../libs/context.js";
5
+ import { resolveConfigCascade as n } from "../../utils/resolve-token.js";
6
+ import { FALLBACK_SIDEBAR_LAYOUT_CONFIG as r } from "./sidebar-layout-config.js";
7
+ import { SIDEBAR_LAYOUT_ASIDE_CLASS as i, SIDEBAR_LAYOUT_ASIDE_END_BORDER_CLASS as a, SIDEBAR_LAYOUT_ASIDE_END_CLASS as o, SIDEBAR_LAYOUT_ASIDE_START_BORDER_CLASS as s, SIDEBAR_LAYOUT_CLASS as c, SIDEBAR_LAYOUT_CONTENT_CLASS as l, SIDEBAR_LAYOUT_WIDTH_CLASS as u } from "./sidebar-layout-styles.js";
8
+ import { forwardRef as d } from "react";
9
+ import { jsx as f, jsxs as p } from "react/jsx-runtime";
10
+ //#region src/components/sidebar-layout/SidebarLayout.tsx
11
+ var m = d(({ sidebar: d, header: m, footer: h, sidebarLabel: g = "Sidebar", side: _, sidebarWidth: v, stickySidebar: y, as: b, className: x, children: S, ...C }, w) => {
12
+ let T = t(), E = n({
13
+ side: _,
14
+ sidebarWidth: v,
15
+ stickySidebar: y
16
+ }, T.components?.sidebarlayout, r), D = E.side === "end";
17
+ return /* @__PURE__ */ p(b ?? "div", {
18
+ ref: w,
19
+ className: e(c, x),
20
+ ...C,
21
+ children: [
22
+ m,
23
+ /* @__PURE__ */ p("div", {
24
+ className: "flex w-full flex-1 flex-col lg:flex-row",
25
+ children: [/* @__PURE__ */ f("aside", {
26
+ "aria-label": g,
27
+ className: e(i, u[E.sidebarWidth], D ? o : s, D ? a : void 0, E.stickySidebar && "lg:sticky lg:top-0 lg:h-dvh lg:overflow-y-auto"),
28
+ children: d
29
+ }), /* @__PURE__ */ f("div", {
30
+ className: l,
31
+ children: S
32
+ })]
33
+ }),
34
+ h
35
+ ]
36
+ });
37
+ });
38
+ m.displayName = "SidebarLayout";
39
+ //#endregion
40
+ export { m as SidebarLayout };
@@ -0,0 +1,3 @@
1
+ export * from './SidebarLayout';
2
+ export * from './sidebar-layout-config';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar-layout/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from "./SidebarLayout.js";
2
+ export * from "./sidebar-layout-config.js";
3
+ export * from "./sidebar-layout-styles.js";
@@ -0,0 +1,49 @@
1
+ /**
2
+ * SidebarLayout component configuration for AsheeUI.
3
+ * This file defines the configuration type and defaults for the application
4
+ * shell that places a navigation column beside a page: side, sidebar width and
5
+ * stickiness. It registers the default configuration with the component registry
6
+ * and provides fallback values for the cascade resolution system.
7
+ */
8
+ /**
9
+ * Side the navigation column sits on from the `lg` breakpoint upwards.
10
+ */
11
+ export type SidebarLayoutSide = "start" | "end";
12
+ /**
13
+ * Width of the navigation column.
14
+ */
15
+ export type SidebarLayoutWidth = "sm" | "md" | "lg";
16
+ /**
17
+ * Theme configuration options for the SidebarLayout component.
18
+ *
19
+ * Set under `components.sidebarlayout` in the AsheeUI config. Values feed the
20
+ * component-level fallback tier of the theme cascade.
21
+ */
22
+ export interface SidebarLayoutConfig {
23
+ /** Side the navigation column sits on. @default "start" */
24
+ side?: SidebarLayoutSide;
25
+ /** Width of the navigation column. @default "md" */
26
+ sidebarWidth?: SidebarLayoutWidth;
27
+ /**
28
+ * Whether the navigation column stays in view while the content scrolls.
29
+ * Applies from the `lg` breakpoint upwards, where the column sits beside the
30
+ * content rather than above it.
31
+ *
32
+ * @default true
33
+ */
34
+ stickySidebar?: boolean;
35
+ }
36
+ /**
37
+ * Default config values registered for the SidebarLayout component.
38
+ */
39
+ export declare const defaultSidebarLayoutConfig: SidebarLayoutConfig;
40
+ declare module "../../libs/registry" {
41
+ interface ComponentTypeConfigRegistry {
42
+ sidebarlayout: SidebarLayoutConfig;
43
+ }
44
+ }
45
+ /**
46
+ * Hard fallback values used when no config tier provides a value.
47
+ */
48
+ export declare const FALLBACK_SIDEBAR_LAYOUT_CONFIG: Required<SidebarLayoutConfig>;
49
+ //# sourceMappingURL=sidebar-layout-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidebar-layout-config.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar-layout/sidebar-layout-config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,KAAK,CAAC;AAEhD;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEpD;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,2DAA2D;IAC3D,IAAI,CAAC,EAAE,iBAAiB,CAAC;IAEzB,oDAAoD;IACpD,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAElC;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,eAAO,MAAM,0BAA0B,EAAE,mBAIxC,CAAC;AAEF,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,2BAA2B;QACnC,aAAa,EAAE,mBAAmB,CAAC;KACpC;CACF;AAID;;GAEG;AACH,eAAO,MAAM,8BAA8B,EAAE,QAAQ,CAAC,mBAAmB,CAIxE,CAAC"}
@@ -0,0 +1,16 @@
1
+ "use client";
2
+ import { registerComponentDefaults as e } from "../../libs/registry.js";
3
+ //#region src/components/sidebar-layout/sidebar-layout-config.ts
4
+ var t = {
5
+ side: "start",
6
+ sidebarWidth: "md",
7
+ stickySidebar: !0
8
+ };
9
+ e("sidebarlayout", t);
10
+ var n = {
11
+ side: "start",
12
+ sidebarWidth: "md",
13
+ stickySidebar: !0
14
+ };
15
+ //#endregion
16
+ export { n as FALLBACK_SIDEBAR_LAYOUT_CONFIG, t as defaultSidebarLayoutConfig };
@@ -0,0 +1,21 @@
1
+ import { SidebarLayoutWidth } from './sidebar-layout-config';
2
+ /**
3
+ * The shell: a full-height column that becomes a row from the `lg` breakpoint,
4
+ * where the navigation column and the content sit beside each other.
5
+ */
6
+ export declare const SIDEBAR_LAYOUT_CLASS = "flex min-h-dvh w-full flex-col bg-background lg:flex-row";
7
+ /** The navigation column, stacked above the content on a narrow screen. */
8
+ export declare const SIDEBAR_LAYOUT_ASIDE_CLASS = "w-full shrink-0 border-b border-border";
9
+ /** The navigation column when it sits at the trailing edge. */
10
+ export declare const SIDEBAR_LAYOUT_ASIDE_END_CLASS = "lg:order-last";
11
+ /** The separator of the navigation column on the leading edge. */
12
+ export declare const SIDEBAR_LAYOUT_ASIDE_START_BORDER_CLASS = "lg:border-r";
13
+ /** The separator of the navigation column on the trailing edge. */
14
+ export declare const SIDEBAR_LAYOUT_ASIDE_END_BORDER_CLASS = "lg:border-l";
15
+ /** Keeps the navigation column in view while the content scrolls. */
16
+ export declare const SIDEBAR_LAYOUT_ASIDE_STICKY_CLASS = "lg:sticky lg:top-0 lg:h-dvh lg:overflow-y-auto";
17
+ /** The content column. */
18
+ export declare const SIDEBAR_LAYOUT_CONTENT_CLASS = "flex min-w-0 flex-1 flex-col";
19
+ /** Width of the navigation column at each size, from `lg` upwards. */
20
+ export declare const SIDEBAR_LAYOUT_WIDTH_CLASS: Record<SidebarLayoutWidth, string>;
21
+ //# sourceMappingURL=sidebar-layout-styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidebar-layout-styles.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar-layout/sidebar-layout-styles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE;;;GAGG;AACH,eAAO,MAAM,oBAAoB,6DAC2B,CAAC;AAE7D,2EAA2E;AAC3E,eAAO,MAAM,0BAA0B,2CACG,CAAC;AAE3C,+DAA+D;AAC/D,eAAO,MAAM,8BAA8B,kBAAkB,CAAC;AAE9D,kEAAkE;AAClE,eAAO,MAAM,uCAAuC,gBAAgB,CAAC;AAErE,mEAAmE;AACnE,eAAO,MAAM,qCAAqC,gBAAgB,CAAC;AAEnE,qEAAqE;AACrE,eAAO,MAAM,iCAAiC,mDACI,CAAC;AAEnD,0BAA0B;AAC1B,eAAO,MAAM,4BAA4B,iCAAiC,CAAC;AAE3E,sEAAsE;AACtE,eAAO,MAAM,0BAA0B,EAAE,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAIzE,CAAC"}
@@ -0,0 +1,9 @@
1
+ "use client";
2
+ //#region src/components/sidebar-layout/sidebar-layout-styles.ts
3
+ var e = "flex min-h-dvh w-full flex-col bg-background lg:flex-row", t = "w-full shrink-0 border-b border-border", n = "lg:order-last", r = "lg:border-r", i = "lg:border-l", a = "lg:sticky lg:top-0 lg:h-dvh lg:overflow-y-auto", o = "flex min-w-0 flex-1 flex-col", s = {
4
+ sm: "lg:w-56",
5
+ md: "lg:w-64",
6
+ lg: "lg:w-80"
7
+ };
8
+ //#endregion
9
+ export { t as SIDEBAR_LAYOUT_ASIDE_CLASS, i as SIDEBAR_LAYOUT_ASIDE_END_BORDER_CLASS, n as SIDEBAR_LAYOUT_ASIDE_END_CLASS, r as SIDEBAR_LAYOUT_ASIDE_START_BORDER_CLASS, a as SIDEBAR_LAYOUT_ASIDE_STICKY_CLASS, e as SIDEBAR_LAYOUT_CLASS, o as SIDEBAR_LAYOUT_CONTENT_CLASS, s as SIDEBAR_LAYOUT_WIDTH_CLASS };
@@ -1 +1 @@
1
- {"version":3,"file":"Skeleton.d.ts","sourceRoot":"","sources":["../../../src/components/skeleton/Skeleton.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAMxD,OAAO,EACL,KAAK,cAAc,EAEpB,MAAM,mBAAmB,CAAC;AAM3B,KAAK,iBAAiB,GAAG,cAAc,GACrC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD;;;;;;;;;OASG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,QAAQ,0GAsDpB,CAAC"}
1
+ {"version":3,"file":"Skeleton.d.ts","sourceRoot":"","sources":["../../../src/components/skeleton/Skeleton.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAMxD,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAM3B,KAAK,iBAAiB,GAAG,cAAc,GACrC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD;;;;;;;;;OASG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,QAAQ,0GAsDpB,CAAC"}
@@ -0,0 +1,107 @@
1
+ import { ElementType, HTMLAttributes } from 'react';
2
+ import { Space } from '../../shared';
3
+ import { StackConfig } from './stack-config';
4
+ type BaseStackProps = StackConfig & Omit<HTMLAttributes<HTMLDivElement>, "color">;
5
+ /**
6
+ * Props for the Stack component.
7
+ */
8
+ export interface StackProps extends BaseStackProps {
9
+ /**
10
+ * Element to render.
11
+ * Defaults to a `div`. A stack that is a list should render `ul` or `ol`
12
+ * and receive `li` children.
13
+ *
14
+ * @default "div"
15
+ */
16
+ as?: ElementType;
17
+ /**
18
+ * Space between children, from the shared spacing scale.
19
+ * Resolved through the standard cascade: prop, then `components.stack.gap`,
20
+ * then the framework fallback.
21
+ *
22
+ * @default "md"
23
+ */
24
+ gap?: Space;
25
+ }
26
+ /**
27
+ * A one-axis layout with a token gap.
28
+ *
29
+ * Stack resolves its own appearance through the standard configuration
30
+ * cascade, so an application can restate the framework's default rhythm (or its
31
+ * direction and alignment) once, in configuration, instead of repeating classes
32
+ * on every usage.
33
+ *
34
+ * @param props - Stack configuration options and element attributes.
35
+ * @param props.direction - Flex direction. Defaults to "column".
36
+ * @param props.gap - Space between children. Defaults to "md".
37
+ * @param props.align - Cross-axis alignment. Defaults to "stretch".
38
+ * @param props.justify - Main-axis distribution. Defaults to "start".
39
+ * @param props.wrap - Wrap children onto another line. Defaults to false.
40
+ * @param props.as - Element to render. Defaults to "div".
41
+ * @returns The rendered stack.
42
+ *
43
+ * @example
44
+ * ```tsx
45
+ * <Stack gap="lg">
46
+ * <Typography role="heading-lg">Recent activity</Typography>
47
+ * <Stack direction="row" gap="sm" align="center">
48
+ * <Badge color="success">Paid</Badge>
49
+ * <Typography role="body-sm" tone="muted">Invoice 1042</Typography>
50
+ * </Stack>
51
+ * </Stack>
52
+ * ```
53
+ *
54
+ * @see HStack - A row stack with centred items.
55
+ * @see VStack - A column stack with stretched items.
56
+ * @see Grid - The two-dimensional equivalent.
57
+ */
58
+ export declare const Stack: import('react').ForwardRefExoticComponent<StackProps & import('react').RefAttributes<HTMLDivElement>>;
59
+ /**
60
+ * Props for the {@link HStack} preset.
61
+ * The shared stack options stay available, so a preset is a starting point
62
+ * rather than a restriction.
63
+ */
64
+ export type HStackProps = Omit<StackProps, "direction">;
65
+ /**
66
+ * A row stack with centred items.
67
+ *
68
+ * `HStack` is `Stack` with `direction="row"` and `align="center"`, which is the
69
+ * arrangement most toolbars, media rows and action groups want. It shares the
70
+ * Stack component's configuration, so `components.stack` restyles both.
71
+ *
72
+ * @param props - The same options as {@link StackProps}, without `direction`.
73
+ * @returns The rendered stack.
74
+ *
75
+ * @example
76
+ * ```tsx
77
+ * <HStack gap="sm">
78
+ * <Button size="sm">Save</Button>
79
+ * <Button size="sm" variant="ghost">Cancel</Button>
80
+ * </HStack>
81
+ * ```
82
+ */
83
+ export declare const HStack: import('react').ForwardRefExoticComponent<HStackProps & import('react').RefAttributes<HTMLDivElement>>;
84
+ /**
85
+ * Props for the {@link VStack} preset.
86
+ */
87
+ export type VStackProps = Omit<StackProps, "direction">;
88
+ /**
89
+ * A column stack with stretched items.
90
+ *
91
+ * `VStack` is `Stack` with `direction="column"` and `align="stretch"`, the
92
+ * arrangement a form, a card body or a settings panel wants.
93
+ *
94
+ * @param props - The same options as {@link StackProps}, without `direction`.
95
+ * @returns The rendered stack.
96
+ *
97
+ * @example
98
+ * ```tsx
99
+ * <VStack gap="sm">
100
+ * <Input label="Full name" />
101
+ * <Input label="Email" />
102
+ * </VStack>
103
+ * ```
104
+ */
105
+ export declare const VStack: import('react').ForwardRefExoticComponent<VStackProps & import('react').RefAttributes<HTMLDivElement>>;
106
+ export {};
107
+ //# sourceMappingURL=Stack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Stack.d.ts","sourceRoot":"","sources":["../../../src/components/stack/Stack.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAE,KAAK,WAAW,EAAc,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAE1E,OAAO,EAAmB,KAAK,KAAK,EAAE,MAAM,cAAc,CAAC;AAG3D,OAAO,EAGL,KAAK,WAAW,EAGjB,MAAM,gBAAgB,CAAC;AAQxB,KAAK,cAAc,GAAG,WAAW,GAC/B,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,UAAW,SAAQ,cAAc;IAChD;;;;;;OAMG;IACH,EAAE,CAAC,EAAE,WAAW,CAAC;IAEjB;;;;;;OAMG;IACH,GAAG,CAAC,EAAE,KAAK,CAAC;CACb;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,eAAO,MAAM,KAAK,uGA0DjB,CAAC;AAIF;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;AAExD;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,MAAM,wGAIlB,CAAC;AAIF;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;AAExD;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,MAAM,wGAIlB,CAAC"}
@@ -0,0 +1,36 @@
1
+ "use client";
2
+ "use client";
3
+ import { cn as e } from "../../utils/cn.js";
4
+ import { SPACE_GAP_CLASS as t } from "../../shared/spacing.js";
5
+ import { useAsheeConfig as n } from "../../libs/context.js";
6
+ import { resolveCascade as r } from "../../utils/resolve-token.js";
7
+ import { FALLBACK_STACK_CONFIG as i } from "./stack-config.js";
8
+ import { STACK_ALIGN_CLASS as a, STACK_BASE_CLASS as o, STACK_DIRECTION_CLASS as s, STACK_JUSTIFY_CLASS as c } from "./stack-styles.js";
9
+ import { forwardRef as l } from "react";
10
+ import { jsx as u } from "react/jsx-runtime";
11
+ //#region src/components/stack/Stack.tsx
12
+ var d = l(({ as: l, direction: d, gap: f, align: p, justify: m, wrap: h, className: g, ..._ }, v) => {
13
+ let y = n().components?.stack, b = r(d, y?.direction, void 0, i.direction), x = r(f, y?.gap, void 0, i.gap), S = r(p, y?.align, void 0, i.align), C = r(m, y?.justify, void 0, i.justify), w = r(h, y?.wrap, void 0, i.wrap);
14
+ return /* @__PURE__ */ u(l ?? "div", {
15
+ ref: v,
16
+ className: e(o, s[b], a[S], c[C], t[x], w ? "flex-wrap" : "flex-nowrap", g),
17
+ ..._
18
+ });
19
+ });
20
+ d.displayName = "Stack";
21
+ var f = l(({ align: e, ...t }, n) => /* @__PURE__ */ u(d, {
22
+ ref: n,
23
+ direction: "row",
24
+ align: e ?? "center",
25
+ ...t
26
+ }));
27
+ f.displayName = "HStack";
28
+ var p = l(({ align: e, ...t }, n) => /* @__PURE__ */ u(d, {
29
+ ref: n,
30
+ direction: "column",
31
+ align: e ?? "stretch",
32
+ ...t
33
+ }));
34
+ p.displayName = "VStack";
35
+ //#endregion
36
+ export { f as HStack, d as Stack, p as VStack };
@@ -0,0 +1,3 @@
1
+ export * from './Stack';
2
+ export * from './stack-config';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/stack/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from "./Stack.js";
2
+ export * from "./stack-config.js";
3
+ export * from "./stack-styles.js";
@@ -0,0 +1,68 @@
1
+ import { Space } from '../../shared';
2
+ /**
3
+ * Flex direction of a stack.
4
+ * `row` lays children out horizontally, `column` vertically.
5
+ */
6
+ export type StackDirection = "row" | "column";
7
+ /**
8
+ * Cross-axis alignment of a stack's children.
9
+ * `stretch` makes them fill the cross axis, `baseline` aligns their first
10
+ * line of text.
11
+ */
12
+ export type StackAlign = "start" | "center" | "end" | "stretch" | "baseline";
13
+ /**
14
+ * Main-axis distribution of a stack's children.
15
+ */
16
+ export type StackJustify = "start" | "center" | "end" | "between" | "around" | "evenly";
17
+ /**
18
+ * Theme configuration options for the Stack component.
19
+ *
20
+ * Set under `components.stack` in the AsheeUI config. Values feed the
21
+ * component-level fallback tier of the theme cascade.
22
+ */
23
+ export interface StackConfig {
24
+ /**
25
+ * Flex direction.
26
+ *
27
+ * @default "column"
28
+ */
29
+ direction?: StackDirection;
30
+ /**
31
+ * Space between children.
32
+ *
33
+ * @default "md"
34
+ */
35
+ gap?: Space;
36
+ /**
37
+ * Cross-axis alignment of the children.
38
+ *
39
+ * @default "stretch"
40
+ */
41
+ align?: StackAlign;
42
+ /**
43
+ * Main-axis distribution of the children.
44
+ *
45
+ * @default "start"
46
+ */
47
+ justify?: StackJustify;
48
+ /**
49
+ * Whether children wrap onto another line when they run out of room.
50
+ *
51
+ * @default false
52
+ */
53
+ wrap?: boolean;
54
+ }
55
+ /**
56
+ * Default config values registered for the Stack component.
57
+ */
58
+ export declare const defaultStackConfig: StackConfig;
59
+ declare module "../../libs/registry" {
60
+ interface ComponentTypeConfigRegistry {
61
+ stack: StackConfig;
62
+ }
63
+ }
64
+ /**
65
+ * Hard fallback values used when no config tier provides a value.
66
+ */
67
+ export declare const FALLBACK_STACK_CONFIG: Required<StackConfig>;
68
+ //# sourceMappingURL=stack-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stack-config.d.ts","sourceRoot":"","sources":["../../../src/components/stack/stack-config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAE1C;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,QAAQ,CAAC;AAE9C;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,GAAG,UAAU,CAAC;AAE7E;;GAEG;AACH,MAAM,MAAM,YAAY,GACpB,OAAO,GACP,QAAQ,GACR,KAAK,GACL,SAAS,GACT,QAAQ,GACR,QAAQ,CAAC;AAEb;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,SAAS,CAAC,EAAE,cAAc,CAAC;IAE3B;;;;OAIG;IACH,GAAG,CAAC,EAAE,KAAK,CAAC;IAEZ;;;;OAIG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB;;;;OAIG;IACH,OAAO,CAAC,EAAE,YAAY,CAAC;IAEvB;;;;OAIG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,WAMhC,CAAC;AAEF,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,2BAA2B;QACnC,KAAK,EAAE,WAAW,CAAC;KACpB;CACF;AAID;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,WAAW,CAMvD,CAAC"}
@@ -0,0 +1,20 @@
1
+ "use client";
2
+ import { registerComponentDefaults as e } from "../../libs/registry.js";
3
+ //#region src/components/stack/stack-config.ts
4
+ var t = {
5
+ direction: "column",
6
+ gap: "md",
7
+ align: "stretch",
8
+ justify: "start",
9
+ wrap: !1
10
+ };
11
+ e("stack", t);
12
+ var n = {
13
+ direction: "column",
14
+ gap: "md",
15
+ align: "stretch",
16
+ justify: "start",
17
+ wrap: !1
18
+ };
19
+ //#endregion
20
+ export { n as FALLBACK_STACK_CONFIG, t as defaultStackConfig };
@@ -0,0 +1,10 @@
1
+ import { StackAlign, StackDirection, StackJustify } from './stack-config';
2
+ /** Flex direction classes. */
3
+ export declare const STACK_DIRECTION_CLASS: Record<StackDirection, string>;
4
+ /** Cross-axis alignment classes. */
5
+ export declare const STACK_ALIGN_CLASS: Record<StackAlign, string>;
6
+ /** Main-axis distribution classes. */
7
+ export declare const STACK_JUSTIFY_CLASS: Record<StackJustify, string>;
8
+ /** Shared base classes for every stack. */
9
+ export declare const STACK_BASE_CLASS = "flex min-w-0";
10
+ //# sourceMappingURL=stack-styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stack-styles.d.ts","sourceRoot":"","sources":["../../../src/components/stack/stack-styles.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE/E,8BAA8B;AAC9B,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,cAAc,EAAE,MAAM,CAGhE,CAAC;AAEF,oCAAoC;AACpC,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAMxD,CAAC;AAEF,sCAAsC;AACtC,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAO5D,CAAC;AAEF,2CAA2C;AAC3C,eAAO,MAAM,gBAAgB,iBAAiB,CAAC"}
@@ -0,0 +1,21 @@
1
+ "use client";
2
+ //#region src/components/stack/stack-styles.ts
3
+ var e = {
4
+ row: "flex-row",
5
+ column: "flex-col"
6
+ }, t = {
7
+ start: "items-start",
8
+ center: "items-center",
9
+ end: "items-end",
10
+ stretch: "items-stretch",
11
+ baseline: "items-baseline"
12
+ }, n = {
13
+ start: "justify-start",
14
+ center: "justify-center",
15
+ end: "justify-end",
16
+ between: "justify-between",
17
+ around: "justify-around",
18
+ evenly: "justify-evenly"
19
+ }, r = "flex min-w-0";
20
+ //#endregion
21
+ export { t as STACK_ALIGN_CLASS, r as STACK_BASE_CLASS, e as STACK_DIRECTION_CLASS, n as STACK_JUSTIFY_CLASS };
@@ -0,0 +1,78 @@
1
+ import { ElementType, HTMLAttributes, ReactNode } from 'react';
2
+ import { TestimonialsConfig } from './testimonials-config';
3
+ /**
4
+ * One attributed quote.
5
+ */
6
+ export interface TestimonialItem {
7
+ /** Stable identifier for the quote. Defaults to its position in the list. */
8
+ id?: string | number;
9
+ /** What the person said. */
10
+ quote: ReactNode;
11
+ /** Name of the person. */
12
+ name: string;
13
+ /** Role or organisation of the person. */
14
+ role?: string;
15
+ /** Picture of the person, passed to the framework's `Avatar`. */
16
+ avatarSrc?: string;
17
+ /** Component that replaces the avatar picture, such as a framework image. */
18
+ avatarComponent?: ElementType;
19
+ /** Additional props for that component. */
20
+ avatarComponentProps?: Record<string, unknown>;
21
+ }
22
+ type BaseTestimonialsProps = TestimonialsConfig & Omit<HTMLAttributes<HTMLElement>, "color" | "title">;
23
+ /**
24
+ * Props for the Testimonials component.
25
+ */
26
+ export interface TestimonialsProps extends BaseTestimonialsProps {
27
+ /** Short label above the heading. */
28
+ eyebrow?: ReactNode;
29
+ /** Heading of the band. */
30
+ title?: ReactNode;
31
+ /** Supporting sentence under the heading. */
32
+ description?: ReactNode;
33
+ /** The quotes to show. */
34
+ items: TestimonialItem[];
35
+ /**
36
+ * Element to render the band as.
37
+ * Defaults to `section`.
38
+ *
39
+ * @default "section"
40
+ */
41
+ as?: ElementType;
42
+ /** Content below the quotes. */
43
+ children?: ReactNode;
44
+ }
45
+ /**
46
+ * A band of attributed customer quotes.
47
+ *
48
+ * Testimonials renders each quote as a `figure` with its attribution in a
49
+ * `figcaption`, inside a list element, so a screen reader announces the set. The
50
+ * picture goes through `Avatar`, so its substitution API and its initials
51
+ * fallback apply without the consumer doing anything.
52
+ *
53
+ * @param props - Testimonials configuration options and element attributes.
54
+ * @param props.items - The quotes to show.
55
+ * @param props.title - Heading of the band.
56
+ * @param props.eyebrow - Short label above the heading.
57
+ * @param props.description - Supporting sentence under the heading.
58
+ * @param props.columns - Columns from the smallest viewport. Defaults to 1.
59
+ * @param props.columnsMd - Columns from `md` upwards. Defaults to 2.
60
+ * @param props.columnsLg - Columns from `lg` upwards. Defaults to 3.
61
+ * @param props.gap - Space between quotes. Defaults to "lg".
62
+ * @param props.align - Heading alignment. Defaults to "center".
63
+ *
64
+ * @returns The rendered band.
65
+ *
66
+ * @example
67
+ * ```tsx
68
+ * <Testimonials
69
+ * title="Teams send more with Ashee"
70
+ * items={[{ quote: "Twice as fast.", name: "Ama Boateng", role: "Growth" }]}
71
+ * />
72
+ * ```
73
+ *
74
+ * @see Card - The surface each quote renders in.
75
+ */
76
+ export declare const Testimonials: import('react').ForwardRefExoticComponent<TestimonialsProps & import('react').RefAttributes<HTMLElement>>;
77
+ export {};
78
+ //# sourceMappingURL=Testimonials.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Testimonials.d.ts","sourceRoot":"","sources":["../../../src/components/testimonials/Testimonials.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EACL,KAAK,WAAW,EAEhB,KAAK,cAAc,EACnB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAUf,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,uBAAuB,CAAC;AAO/B;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,6EAA6E;IAC7E,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAErB,4BAA4B;IAC5B,KAAK,EAAE,SAAS,CAAC;IAEjB,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IAEb,0CAA0C;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,iEAAiE;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,6EAA6E;IAC7E,eAAe,CAAC,EAAE,WAAW,CAAC;IAE9B,2CAA2C;IAC3C,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChD;AAED,KAAK,qBAAqB,GAAG,kBAAkB,GAC7C,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,qBAAqB;IAC9D,qCAAqC;IACrC,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB,2BAA2B;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,SAAS,CAAC;IAExB,0BAA0B;IAC1B,KAAK,EAAE,eAAe,EAAE,CAAC;IAEzB;;;;;OAKG;IACH,EAAE,CAAC,EAAE,WAAW,CAAC;IAEjB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,YAAY,2GA6GxB,CAAC"}