@solostylist/ui-kit 1.0.167 → 1.0.168

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 (239) hide show
  1. package/dist/{Typography-B7LOtCzI.js → Typography-C8jwvSWe.js} +1 -1
  2. package/dist/main.d.ts +3 -3
  3. package/dist/main.js +182 -174
  4. package/dist/s-accordion/index.js +2 -2
  5. package/dist/s-accordion/s-accordion.d.ts +17 -1
  6. package/dist/s-accordion/s-accordion.js +252 -238
  7. package/dist/s-action-overlay/index.js +1 -1
  8. package/dist/s-action-overlay/s-action-overlay.d.ts +34 -1
  9. package/dist/s-action-overlay/s-action-overlay.js +67 -55
  10. package/dist/s-ai-tool-bar/index.d.ts +2 -0
  11. package/dist/s-ai-tool-bar/index.js +3 -2
  12. package/dist/s-ai-tool-bar/s-ai-tool-bar.d.ts +33 -22
  13. package/dist/s-ai-tool-bar/s-ai-tool-bar.js +295 -247
  14. package/dist/s-autocomplete/index.js +2 -2
  15. package/dist/s-autocomplete/s-autocomplete.d.ts +13 -15
  16. package/dist/s-autocomplete/s-autocomplete.js +25 -17
  17. package/dist/s-avatar/index.js +2 -2
  18. package/dist/s-avatar/s-avatar.d.ts +16 -1
  19. package/dist/s-avatar/s-avatar.js +23 -10
  20. package/dist/s-blur-text/index.js +2 -2
  21. package/dist/s-blur-text/s-blur-text.d.ts +4 -13
  22. package/dist/s-blur-text/s-blur-text.js +57 -51
  23. package/dist/s-breadcrumbs/index.js +2 -2
  24. package/dist/s-breadcrumbs/s-breadcrumbs.d.ts +20 -1
  25. package/dist/s-breadcrumbs/s-breadcrumbs.js +39 -30
  26. package/dist/s-button/index.js +2 -2
  27. package/dist/s-button/s-button.d.ts +7 -1
  28. package/dist/s-button/s-button.js +15 -5
  29. package/dist/s-button-link/index.js +2 -2
  30. package/dist/s-button-link/s-button-link.d.ts +12 -26
  31. package/dist/s-button-link/s-button-link.js +36 -26
  32. package/dist/s-carousel/index.js +1 -1
  33. package/dist/s-carousel/s-carousel.d.ts +11 -1
  34. package/dist/s-carousel/s-carousel.js +233 -223
  35. package/dist/s-category-card/index.js +2 -2
  36. package/dist/s-category-card/s-category-card.d.ts +28 -1
  37. package/dist/s-category-card/s-category-card.js +77 -58
  38. package/dist/s-chat-input/index.js +2 -2
  39. package/dist/s-chat-input/s-chat-input.d.ts +12 -1
  40. package/dist/s-chat-input/s-chat-input.js +92 -82
  41. package/dist/s-chat-message/index.js +2 -2
  42. package/dist/s-chat-message/s-chat-message.d.ts +22 -1
  43. package/dist/s-chat-message/s-chat-message.js +144 -133
  44. package/dist/s-checkbox/index.js +2 -2
  45. package/dist/s-checkbox/s-checkbox.d.ts +2 -15
  46. package/dist/s-checkbox/s-checkbox.js +20 -10
  47. package/dist/s-chip/index.js +2 -2
  48. package/dist/s-chip/s-chip.d.ts +7 -1
  49. package/dist/s-chip/s-chip.js +15 -5
  50. package/dist/s-chips/index.js +2 -2
  51. package/dist/s-chips/s-chips.d.ts +5 -18
  52. package/dist/s-chips/s-chips.js +56 -41
  53. package/dist/s-comment-message/index.js +2 -2
  54. package/dist/s-comment-message/s-comment-message.d.ts +26 -1
  55. package/dist/s-comment-message/s-comment-message.js +95 -89
  56. package/dist/s-copyable-text/index.js +1 -1
  57. package/dist/s-copyable-text/s-copyable-text.d.ts +9 -36
  58. package/dist/s-copyable-text/s-copyable-text.js +31 -21
  59. package/dist/s-countdown/index.d.ts +3 -2
  60. package/dist/s-countdown/index.js +4 -3
  61. package/dist/s-countdown/s-count-box.d.ts +39 -0
  62. package/dist/s-countdown/s-count-box.js +112 -0
  63. package/dist/s-countdown/s-count-down.d.ts +6 -50
  64. package/dist/s-countdown/s-count-down.js +110 -175
  65. package/dist/s-data-table/index.js +2 -2
  66. package/dist/s-data-table/s-data-table.d.ts +9 -65
  67. package/dist/s-data-table/s-data-table.js +381 -371
  68. package/dist/s-date-picker/index.js +2 -2
  69. package/dist/s-date-picker/s-date-picker.d.ts +6 -17
  70. package/dist/s-date-picker/s-date-picker.js +124 -107
  71. package/dist/s-datetime-picker/index.js +2 -2
  72. package/dist/s-datetime-picker/s-datetime-picker.d.ts +5 -16
  73. package/dist/s-datetime-picker/s-datetime-picker.js +897 -887
  74. package/dist/s-dialog/index.js +2 -2
  75. package/dist/s-dialog/s-dialog.d.ts +3 -16
  76. package/dist/s-dialog/s-dialog.js +32 -23
  77. package/dist/s-dialog-confirm/index.js +3 -3
  78. package/dist/s-dialog-confirm/s-dialog-confirm.d.ts +5 -13
  79. package/dist/s-dialog-confirm/s-dialog-confirm.js +55 -48
  80. package/dist/s-dialog-message/index.js +4 -4
  81. package/dist/s-dialog-message/s-dialog-message.d.ts +5 -15
  82. package/dist/s-dialog-message/s-dialog-message.js +45 -38
  83. package/dist/s-empty/index.js +2 -2
  84. package/dist/s-empty/s-empty.d.ts +5 -20
  85. package/dist/s-empty/s-empty.js +14 -4
  86. package/dist/s-error/index.js +2 -2
  87. package/dist/s-error/s-error.d.ts +5 -20
  88. package/dist/s-error/s-error.js +16 -6
  89. package/dist/s-error-layout/index.js +2 -2
  90. package/dist/s-error-layout/s-error-layout.d.ts +6 -1
  91. package/dist/s-error-layout/s-error-layout.js +60 -51
  92. package/dist/s-file-dropzone/index.js +2 -2
  93. package/dist/s-file-dropzone/s-file-dropzone.d.ts +6 -51
  94. package/dist/s-file-dropzone/s-file-dropzone.js +64 -54
  95. package/dist/s-file-icon/index.js +2 -2
  96. package/dist/s-file-icon/s-file-icon.d.ts +5 -25
  97. package/dist/s-file-icon/s-file-icon.js +14 -8
  98. package/dist/s-flex-box/index.js +2 -2
  99. package/dist/s-flex-box/s-flex-box.d.ts +10 -1
  100. package/dist/s-flex-box/s-flex-box.js +14 -4
  101. package/dist/s-form/index.js +2 -2
  102. package/dist/s-form/s-form.d.ts +5 -14
  103. package/dist/s-form/s-form.js +19 -9
  104. package/dist/s-gallery/index.js +33 -3
  105. package/dist/s-gallery/s-gallery.d.ts +3 -36
  106. package/dist/s-gallery/s-gallery.js +108 -78
  107. package/dist/s-glow-button/s-glow-button.d.ts +6 -42
  108. package/dist/s-glow-button/s-glow-button.js +29 -47
  109. package/dist/s-gradient-icon/index.d.ts +1 -1
  110. package/dist/s-gradient-icon/index.js +1 -1
  111. package/dist/s-gradient-icon/s-gradient-icon.d.ts +8 -68
  112. package/dist/s-gradient-icon/s-gradient-icon.js +54 -44
  113. package/dist/s-i18n-provider/index.js +1 -1
  114. package/dist/s-i18n-provider/s-i18n-provider.d.ts +5 -33
  115. package/dist/s-i18n-provider/s-i18n-provider.js +25 -15
  116. package/dist/s-icon-button/index.js +2 -2
  117. package/dist/s-icon-button/s-icon-button.d.ts +6 -19
  118. package/dist/s-icon-button/s-icon-button.js +14 -4
  119. package/dist/s-image-comparison/s-image-comparison.js +50 -45
  120. package/dist/s-image-modal/index.js +3 -3
  121. package/dist/s-image-modal/s-image-modal.d.ts +4 -20
  122. package/dist/s-image-modal/s-image-modal.js +150 -135
  123. package/dist/s-item-not-found/index.js +2 -2
  124. package/dist/s-item-not-found/s-item-not-found.d.ts +14 -1
  125. package/dist/s-item-not-found/s-item-not-found.js +21 -10
  126. package/dist/s-label/index.js +2 -2
  127. package/dist/s-label/s-label.d.ts +9 -25
  128. package/dist/s-label/s-label.js +19 -9
  129. package/dist/s-language-switcher/index.js +3 -3
  130. package/dist/s-language-switcher/s-language-switcher.d.ts +20 -33
  131. package/dist/s-language-switcher/s-language-switcher.js +137 -115
  132. package/dist/s-lazy-image/index.js +10 -2
  133. package/dist/s-lazy-image/s-lazy-image.d.ts +12 -58
  134. package/dist/s-lazy-image/s-lazy-image.js +53 -58
  135. package/dist/s-localization-provider/index.js +2 -2
  136. package/dist/s-localization-provider/s-localization-provider.d.ts +6 -27
  137. package/dist/s-localization-provider/s-localization-provider.js +157 -149
  138. package/dist/s-moving-border/index.js +2 -2
  139. package/dist/s-moving-border/s-moving-border.d.ts +3 -33
  140. package/dist/s-moving-border/s-moving-border.js +65 -55
  141. package/dist/s-multi-select/index.js +2 -2
  142. package/dist/s-multi-select/s-multi-select.d.ts +5 -15
  143. package/dist/s-multi-select/s-multi-select.js +54 -45
  144. package/dist/s-no-ssr/index.js +2 -2
  145. package/dist/s-no-ssr/s-no-ssr.d.ts +5 -33
  146. package/dist/s-no-ssr/s-no-ssr.js +21 -11
  147. package/dist/s-overlay-scrollbar/index.js +2 -2
  148. package/dist/s-overlay-scrollbar/s-overlay-scrollbar.d.ts +10 -1
  149. package/dist/s-overlay-scrollbar/s-overlay-scrollbar.js +16 -11
  150. package/dist/s-pagination/index.js +2 -2
  151. package/dist/s-pagination/s-pagination.d.ts +5 -23
  152. package/dist/s-pagination/s-pagination.js +17 -11
  153. package/dist/s-pixel-reveal/index.js +2 -2
  154. package/dist/s-pixel-reveal/s-pixel-reveal.d.ts +15 -1
  155. package/dist/s-pixel-reveal/s-pixel-reveal.js +83 -78
  156. package/dist/s-radial-pulse-animate/index.js +2 -2
  157. package/dist/s-radial-pulse-animate/s-radial-pulse-animate.d.ts +12 -1
  158. package/dist/s-radial-pulse-animate/s-radial-pulse-animate.js +52 -42
  159. package/dist/s-rating/index.js +2 -2
  160. package/dist/s-rating/s-rating.d.ts +7 -1
  161. package/dist/s-rating/s-rating.js +15 -5
  162. package/dist/s-review/index.js +2 -2
  163. package/dist/s-review/s-review.d.ts +25 -1
  164. package/dist/s-review/s-review.js +104 -97
  165. package/dist/s-scroll-reveal/index.js +2 -2
  166. package/dist/s-scroll-reveal/s-scroll-reveal.d.ts +17 -36
  167. package/dist/s-scroll-reveal/s-scroll-reveal.js +43 -33
  168. package/dist/s-scroll-to-top/index.js +2 -2
  169. package/dist/s-scroll-to-top/s-scroll-to-top.d.ts +12 -17
  170. package/dist/s-scroll-to-top/s-scroll-to-top.js +20 -15
  171. package/dist/s-select/index.js +2 -2
  172. package/dist/s-select/s-select.d.ts +3 -22
  173. package/dist/s-select/s-select.js +76 -72
  174. package/dist/s-select-list/index.js +2 -2
  175. package/dist/s-select-list/s-select-list.d.ts +16 -19
  176. package/dist/s-select-list/s-select-list.js +33 -28
  177. package/dist/s-skeleton/index.js +2 -2
  178. package/dist/s-skeleton/s-skeleton.d.ts +6 -22
  179. package/dist/s-skeleton/s-skeleton.js +28 -18
  180. package/dist/s-snackbar-message/index.js +4 -4
  181. package/dist/s-snackbar-message/s-snackbar-message.d.ts +5 -23
  182. package/dist/s-snackbar-message/s-snackbar-message.js +38 -31
  183. package/dist/s-spotlight-cursor/index.js +2 -2
  184. package/dist/s-spotlight-cursor/s-spotlight-cursor.d.ts +10 -44
  185. package/dist/s-spotlight-cursor/s-spotlight-cursor.js +35 -29
  186. package/dist/s-stripe/index.d.ts +4 -1
  187. package/dist/s-stripe/index.js +7 -4
  188. package/dist/s-stripe/s-stripe-cvc.d.ts +8 -0
  189. package/dist/s-stripe/s-stripe-cvc.js +15 -0
  190. package/dist/s-stripe/s-stripe-expiry.d.ts +8 -0
  191. package/dist/s-stripe/s-stripe-expiry.js +15 -0
  192. package/dist/s-stripe/s-stripe-number.d.ts +8 -0
  193. package/dist/s-stripe/s-stripe-number.js +15 -0
  194. package/dist/s-stripe/s-stripe.d.ts +6 -85
  195. package/dist/s-stripe/s-stripe.js +24 -27
  196. package/dist/s-stripe/stripe-input.js +22 -18
  197. package/dist/s-tabs/index.js +6 -6
  198. package/dist/s-tabs/s-tab-panel.d.ts +11 -1
  199. package/dist/s-tabs/s-tab-panel.js +25 -16
  200. package/dist/s-tabs/s-tab.js +9 -5
  201. package/dist/s-tabs/s-tabs.d.ts +24 -3
  202. package/dist/s-tabs/s-tabs.js +34 -25
  203. package/dist/s-text-editor/index.js +3 -3
  204. package/dist/s-text-editor/s-text-editor-toolbar.js +91 -76
  205. package/dist/s-text-editor/s-text-editor.d.ts +13 -11
  206. package/dist/s-text-editor/s-text-editor.js +44 -30
  207. package/dist/s-text-field/index.js +2 -2
  208. package/dist/s-text-field/s-text-field.d.ts +6 -15
  209. package/dist/s-text-field/s-text-field.js +38 -28
  210. package/dist/s-text-shimmer/index.js +2 -2
  211. package/dist/s-text-shimmer/s-text-shimmer.d.ts +10 -1
  212. package/dist/s-text-shimmer/s-text-shimmer.js +27 -18
  213. package/dist/s-text-truncation/index.js +2 -2
  214. package/dist/s-text-truncation/s-text-truncation.d.ts +9 -38
  215. package/dist/s-text-truncation/s-text-truncation.js +34 -20
  216. package/dist/s-theme-demo/s-theme-demo.js +238 -223
  217. package/dist/s-theme-provider/index.js +1 -1
  218. package/dist/s-theme-provider/s-theme-provider.d.ts +5 -17
  219. package/dist/s-theme-provider/s-theme-provider.js +44 -34
  220. package/dist/s-theme-switch/s-theme-switch.js +23 -19
  221. package/dist/s-tip/index.js +2 -2
  222. package/dist/s-tip/s-tip.d.ts +5 -22
  223. package/dist/s-tip/s-tip.js +22 -12
  224. package/dist/s-two-pane-layout/index.js +10 -2
  225. package/dist/s-two-pane-layout/s-two-pane-layout.d.ts +7 -1
  226. package/dist/s-two-pane-layout/s-two-pane-layout.js +58 -48
  227. package/dist/s-typewriter-text/index.js +2 -2
  228. package/dist/s-typewriter-text/s-typewriter-text.d.ts +17 -1
  229. package/dist/s-typewriter-text/s-typewriter-text.js +37 -27
  230. package/dist/s-zoom-image/index.js +10 -2
  231. package/dist/s-zoom-image/s-zoom-image.d.ts +10 -42
  232. package/dist/s-zoom-image/s-zoom-image.js +62 -52
  233. package/dist/theme/components/alert.d.ts +1436 -1436
  234. package/dist/theme/components/button.d.ts +2150 -2150
  235. package/dist/theme/components/chip.d.ts +2 -2
  236. package/dist/theme/customizations/data-display.js +1 -1
  237. package/dist/{typographyClasses-C7fhAsUD.js → typographyClasses-DDyl9mok.js} +4 -4
  238. package/dist/{useMobilePicker-DgxcRrRB.js → useMobilePicker-C1RZZUWr.js} +1 -1
  239. package/package.json +10 -4
@@ -1,4 +1,4 @@
1
- import { default as o } from "./s-autocomplete.js";
1
+ import { SAutocomplete as t } from "./s-autocomplete.js";
2
2
  export {
3
- o as default
3
+ t as default
4
4
  };
@@ -23,20 +23,18 @@ export interface SAutocompleteProps<T, Multiple extends boolean | undefined, Dis
23
23
  htmlFor?: string;
24
24
  }
25
25
  /**
26
- * SAutocomplete - A standardized autocomplete/combobox component that wraps Material-UI Autocomplete
27
- * with consistent form labeling, validation, and help text patterns.
28
- *
29
- * Key features:
30
- * - Maintains full Material-UI Autocomplete API and type safety
31
- * - Integrates with SForm for consistent label and error handling
32
- * - Supports all autocomplete modes: single/multiple selection, free solo, etc.
33
- * - Provides accessible form labeling with htmlFor/id association
34
- * - Uses forwardRef for proper ref forwarding to underlying components
35
- * - Disables portal by default for better layout predictability
36
- *
37
- * @param props - SAutocompleteProps with form integration and Material-UI Autocomplete props
38
- * @param ref - Forward ref to the underlying Autocomplete component
39
- * @returns JSX.Element - Wrapped Autocomplete with form labeling and validation
26
+ * Type definition for SAutocomplete component with generic support
27
+ */
28
+ export interface SAutocompleteComponent {
29
+ <T, Multiple extends boolean | undefined = undefined, DisableClearable extends boolean | undefined = undefined, FreeSolo extends boolean | undefined = undefined>(props: SAutocompleteProps<T, Multiple, DisableClearable, FreeSolo> & {
30
+ ref?: React.ForwardedRef<unknown>;
31
+ }): React.JSX.Element;
32
+ displayName?: string;
33
+ }
34
+ /**
35
+ * A standardized autocomplete/combobox component that wraps Material-UI Autocomplete
36
+ * with consistent form labeling, validation, and help text patterns. Maintains full
37
+ * Material-UI API compatibility while providing enhanced form integration.
40
38
  */
41
- declare const SAutocomplete: React.ForwardRefExoticComponent<Omit<SAutocompleteProps<unknown, boolean | undefined, boolean | undefined, boolean | undefined>, "ref"> & React.RefAttributes<unknown>>;
39
+ export declare const SAutocomplete: SAutocompleteComponent;
42
40
  export default SAutocomplete;
@@ -1,29 +1,37 @@
1
- import { j as t } from "../jsx-runtime-OVHDjVDe.js";
2
- import { forwardRef as i, useId as p } from "react";
3
- import { Autocomplete as a, TextField as n } from "@mui/material";
4
- import c from "../s-form/s-form.js";
5
- const F = i(
1
+ import { j as e } from "../jsx-runtime-OVHDjVDe.js";
2
+ import { forwardRef as s, useId as m } from "react";
3
+ import { Autocomplete as c, TextField as f } from "@mui/material";
4
+ import { SForm as h } from "../s-form/s-form.js";
5
+ const t = s(
6
6
  ({
7
- label: e = "",
8
- required: r = !1,
9
- error: m,
10
- htmlFor: l,
11
- ...s
7
+ label: r = "",
8
+ required: o = !1,
9
+ error: l,
10
+ htmlFor: i,
11
+ ...n
12
12
  }, d) => {
13
- const u = p(), o = l ?? u;
14
- return /* @__PURE__ */ t.jsx(c, { error: m, label: e, required: r, htmlFor: o, children: /* @__PURE__ */ t.jsx(
15
- a,
13
+ const u = m(), a = i ?? u;
14
+ return /* @__PURE__ */ e.jsx(h, { error: l, label: r, required: o, htmlFor: a, children: /* @__PURE__ */ e.jsx(
15
+ c,
16
16
  {
17
17
  disablePortal: !0,
18
18
  fullWidth: !0,
19
- renderInput: (f) => /* @__PURE__ */ t.jsx(n, { ...f }),
20
- id: o,
21
- ...s,
19
+ renderInput: (p) => /* @__PURE__ */ e.jsx(f, { ...p }),
20
+ id: a,
21
+ ...n,
22
22
  ref: d
23
23
  }
24
24
  ) });
25
25
  }
26
26
  );
27
+ t.displayName = "SAutocomplete";
28
+ try {
29
+ t.displayName = "SAutocomplete", t.__docgenInfo = { description: `A standardized autocomplete/combobox component that wraps Material-UI Autocomplete
30
+ with consistent form labeling, validation, and help text patterns. Maintains full
31
+ Material-UI API compatibility while providing enhanced form integration.`, displayName: "SAutocomplete", props: { renderInput: { defaultValue: null, description: "Optional custom renderInput function for advanced input customization", name: "renderInput", required: !1, type: { name: "((params: AutocompleteRenderInputParams) => ReactNode)" } }, label: { defaultValue: null, description: "Field label displayed above the autocomplete", name: "label", required: !1, type: { name: "ReactNode" } }, required: { defaultValue: null, description: "Whether the field is required (shows asterisk in label)", name: "required", required: !1, type: { name: "boolean" } }, error: { defaultValue: null, description: "Error message to display below the field", name: "error", required: !1, type: { name: "string" } }, htmlFor: { defaultValue: null, description: "HTML id attribute for the input element", name: "htmlFor", required: !1, type: { name: "string" } } } };
32
+ } catch {
33
+ }
27
34
  export {
28
- F as default
35
+ t as SAutocomplete,
36
+ t as default
29
37
  };
@@ -1,4 +1,4 @@
1
- import { default as o } from "./s-avatar.js";
1
+ import { SAvatar as t } from "./s-avatar.js";
2
2
  export {
3
- o as default
3
+ t as default
4
4
  };
@@ -1,10 +1,25 @@
1
1
  import { AvatarProps } from '@mui/material';
2
+ /**
3
+ * Props interface for SAvatar component
4
+ */
2
5
  export interface SAvatarProps {
6
+ /** URL of the avatar image to display */
3
7
  avatar?: string;
8
+ /** Name of the user, used for initials fallback and optional display */
4
9
  name?: string;
10
+ /** Whether to display the name alongside the avatar */
5
11
  showName?: boolean;
12
+ /** Size of the avatar in pixels (width and height) */
6
13
  size?: number;
14
+ /** Additional props to pass to the underlying Material-UI Avatar component */
7
15
  avatarProps?: AvatarProps;
8
16
  }
9
- declare const SAvatar: ({ avatar, name, showName, size, avatarProps }: SAvatarProps) => import("react/jsx-runtime").JSX.Element;
17
+ /**
18
+ * A flexible avatar component that displays user profile images with fallback to initials.
19
+ * Built on Material-UI Avatar with optional name display and customizable sizing.
20
+ */
21
+ export declare const SAvatar: {
22
+ ({ avatar, name, showName, size, avatarProps }: SAvatarProps): import("react/jsx-runtime").JSX.Element;
23
+ displayName: string;
24
+ };
10
25
  export default SAvatar;
@@ -1,20 +1,33 @@
1
1
  import { j as i } from "../jsx-runtime-OVHDjVDe.js";
2
- import { Box as l, Avatar as d, Typography as e } from "@mui/material";
3
- import h from "../s-lazy-image/s-lazy-image.js";
4
- const f = ({ avatar: o, name: r, showName: a = !1, size: t = 40, avatarProps: s }) => /* @__PURE__ */ i.jsxs(l, { display: "flex", alignItems: "center", gap: 2, children: [
5
- /* @__PURE__ */ i.jsx(d, { sx: { width: t, height: t, fontSize: 16 }, ...s, children: o ? /* @__PURE__ */ i.jsx(
6
- h,
2
+ import { Box as n, Avatar as o, Typography as d } from "@mui/material";
3
+ import "../s-lazy-image/index.js";
4
+ import p from "../s-lazy-image/s-lazy-image.js";
5
+ const r = ({ avatar: e, name: a, showName: l = !1, size: t = 40, avatarProps: s }) => /* @__PURE__ */ i.jsxs(n, { display: "flex", alignItems: "center", gap: 2, children: [
6
+ /* @__PURE__ */ i.jsx(o, { sx: { width: t, height: t, fontSize: 16 }, ...s, children: e ? /* @__PURE__ */ i.jsx(
7
+ p,
7
8
  {
8
- src: o,
9
- alt: r || "Avatar",
9
+ src: e,
10
+ alt: a || "Avatar",
10
11
  width: t,
11
12
  height: t,
12
13
  variant: "circular",
13
14
  style: { borderRadius: "50%" }
14
15
  }
15
- ) : (r == null ? void 0 : r[0]) || "A" }),
16
- a && /* @__PURE__ */ i.jsx(e, { variant: "body1", fontSize: 20, children: r })
16
+ ) : (a == null ? void 0 : a[0]) || "A" }),
17
+ l && /* @__PURE__ */ i.jsx(d, { variant: "body1", fontSize: 20, children: a })
17
18
  ] });
19
+ r.displayName = "SAvatar";
20
+ try {
21
+ r.displayName = "SAvatar", r.__docgenInfo = { description: `A flexible avatar component that displays user profile images with fallback to initials.
22
+ Built on Material-UI Avatar with optional name display and customizable sizing.`, displayName: "SAvatar", props: { avatar: { defaultValue: null, description: "URL of the avatar image to display", name: "avatar", required: !1, type: { name: "string" } }, name: { defaultValue: null, description: "Name of the user, used for initials fallback and optional display", name: "name", required: !1, type: { name: "string" } }, showName: { defaultValue: { value: "false" }, description: "Whether to display the name alongside the avatar", name: "showName", required: !1, type: { name: "boolean" } }, size: { defaultValue: { value: "40" }, description: "Size of the avatar in pixels (width and height)", name: "size", required: !1, type: { name: "number" } }, avatarProps: { defaultValue: null, description: "Additional props to pass to the underlying Material-UI Avatar component", name: "avatarProps", required: !1, type: { name: "AvatarProps" } } } };
23
+ } catch {
24
+ }
25
+ try {
26
+ savatar.displayName = "savatar", savatar.__docgenInfo = { description: `A flexible avatar component that displays user profile images with fallback to initials.
27
+ Built on Material-UI Avatar with optional name display and customizable sizing.`, displayName: "savatar", props: { avatar: { defaultValue: null, description: "URL of the avatar image to display", name: "avatar", required: !1, type: { name: "string" } }, name: { defaultValue: null, description: "Name of the user, used for initials fallback and optional display", name: "name", required: !1, type: { name: "string" } }, showName: { defaultValue: { value: "false" }, description: "Whether to display the name alongside the avatar", name: "showName", required: !1, type: { name: "boolean" } }, size: { defaultValue: { value: "40" }, description: "Size of the avatar in pixels (width and height)", name: "size", required: !1, type: { name: "number" } }, avatarProps: { defaultValue: null, description: "Additional props to pass to the underlying Material-UI Avatar component", name: "avatarProps", required: !1, type: { name: "AvatarProps" } } } };
28
+ } catch {
29
+ }
18
30
  export {
19
- f as default
31
+ r as SAvatar,
32
+ r as default
20
33
  };
@@ -1,4 +1,4 @@
1
- import { default as o } from "./s-blur-text.js";
1
+ import { SBlurText as t } from "./s-blur-text.js";
2
2
  export {
3
- o as default
3
+ t as default
4
4
  };
@@ -1,5 +1,8 @@
1
1
  import { default as React } from 'react';
2
2
  import { TypographyProps } from '@mui/material';
3
+ /**
4
+ * Props interface for SBlurText component
5
+ */
3
6
  export interface SBlurTextProps extends Omit<TypographyProps, 'children'> {
4
7
  /** The text content to animate */
5
8
  text: string;
@@ -26,18 +29,6 @@ export interface SBlurTextProps extends Omit<TypographyProps, 'children'> {
26
29
  }
27
30
  /**
28
31
  * A Typography component that animates text with a blur effect when it comes into view.
29
- * Supports word-by-word or letter-by-letter animation with customizable timing and effects.
30
- * Built on MUI Typography with full styling support.
31
- *
32
- * @example
33
- * ```tsx
34
- * <SBlurText
35
- * text="Hello world, this text will blur in"
36
- * variant="h1"
37
- * animateBy="words"
38
- * delay={150}
39
- * />
40
- * ```
41
32
  */
42
- declare const SBlurText: React.FC<SBlurTextProps>;
33
+ export declare const SBlurText: React.FC<SBlurTextProps>;
43
34
  export default SBlurText;
@@ -1,80 +1,86 @@
1
1
  import { j as y } from "../jsx-runtime-OVHDjVDe.js";
2
- import { useState as R, useRef as V, useEffect as D, useMemo as b } from "react";
2
+ import { useState as k, useRef as R, useEffect as E, useMemo as g } from "react";
3
3
  import { Typography as F } from "@mui/material";
4
4
  import { motion as M } from "framer-motion";
5
- const _ = (s, a) => {
6
- const i = /* @__PURE__ */ new Set([...Object.keys(s), ...a.flatMap((t) => Object.keys(t))]), o = {};
7
- return i.forEach((t) => {
8
- o[t] = [s[t], ...a.map((l) => l[t])];
9
- }), o;
10
- }, H = ({
11
- text: s,
12
- delay: a = 100,
13
- animateBy: i = "words",
14
- direction: o = "top",
15
- threshold: t = 0.1,
5
+ const N = (r, o) => {
6
+ const s = /* @__PURE__ */ new Set([...Object.keys(r), ...o.flatMap((e) => Object.keys(e))]), n = {};
7
+ return s.forEach((e) => {
8
+ n[e] = [r[e], ...o.map((l) => l[e])];
9
+ }), n;
10
+ }, c = ({
11
+ text: r,
12
+ delay: o = 100,
13
+ animateBy: s = "words",
14
+ direction: n = "top",
15
+ threshold: e = 0.1,
16
16
  rootMargin: l = "0px",
17
- animationFrom: h,
18
- animationTo: d,
19
- easing: w = (n) => n,
20
- onAnimationComplete: x,
21
- stepDuration: j = 0.35,
22
- variant: g = "body1",
23
- component: v = "p",
24
- sx: S,
25
- ...T
17
+ animationFrom: b,
18
+ animationTo: h,
19
+ easing: v = (i) => i,
20
+ onAnimationComplete: w,
21
+ stepDuration: x = 0.35,
22
+ variant: V = "body1",
23
+ component: q = "p",
24
+ sx: T,
25
+ ...C
26
26
  }) => {
27
- const n = i === "words" ? s.split(" ") : s.split(""), [k, C] = R(!1), c = V(null);
28
- D(() => {
29
- if (!c.current) return;
30
- const r = new IntersectionObserver(
31
- ([e]) => {
32
- e.isIntersecting && (C(!0), r.unobserve(c.current));
27
+ const i = s === "words" ? r.split(" ") : r.split(""), [_, S] = k(!1), u = R(null);
28
+ E(() => {
29
+ if (!u.current) return;
30
+ const a = new IntersectionObserver(
31
+ ([t]) => {
32
+ t.isIntersecting && (S(!0), a.unobserve(u.current));
33
33
  },
34
- { threshold: t, rootMargin: l }
34
+ { threshold: e, rootMargin: l }
35
35
  );
36
- return r.observe(c.current), () => r.disconnect();
37
- }, [t, l]);
38
- const E = b(
39
- () => o === "top" ? { filter: "blur(10px)", opacity: 0, y: -50 } : { filter: "blur(10px)", opacity: 0, y: 50 },
40
- [o]
41
- ), I = b(
36
+ return a.observe(u.current), () => a.disconnect();
37
+ }, [e, l]);
38
+ const j = g(
39
+ () => n === "top" ? { filter: "blur(10px)", opacity: 0, y: -50 } : { filter: "blur(10px)", opacity: 0, y: 50 },
40
+ [n]
41
+ ), A = g(
42
42
  () => [
43
43
  {
44
44
  filter: "blur(5px)",
45
45
  opacity: 0.5,
46
- y: o === "top" ? 5 : -5
46
+ y: n === "top" ? 5 : -5
47
47
  },
48
48
  { filter: "blur(0px)", opacity: 1, y: 0 }
49
49
  ],
50
- [o]
51
- ), u = h ?? E, f = d ?? I, p = f.length + 1, O = j * (p - 1), A = Array.from({ length: p }, (r, e) => p === 1 ? 0 : e / (p - 1));
52
- return /* @__PURE__ */ y.jsx(F, { ref: c, variant: g, component: v, sx: S, ...T, children: n.map((r, e) => {
53
- const K = _(u, f), m = {
54
- duration: O,
55
- times: A,
56
- delay: e * a / 1e3
50
+ [n]
51
+ ), p = b ?? j, d = h ?? A, m = d.length + 1, D = x * (m - 1), I = Array.from({ length: m }, (a, t) => m === 1 ? 0 : t / (m - 1));
52
+ return /* @__PURE__ */ y.jsx(F, { ref: u, variant: V, component: q, sx: T, ...C, children: i.map((a, t) => {
53
+ const B = N(p, d), f = {
54
+ duration: D,
55
+ times: I,
56
+ delay: t * o / 1e3
57
57
  };
58
- return m.ease = w, /* @__PURE__ */ y.jsxs(
58
+ return f.ease = v, /* @__PURE__ */ y.jsxs(
59
59
  M.span,
60
60
  {
61
- initial: u,
62
- animate: k ? K : u,
63
- transition: m,
64
- onAnimationComplete: e === n.length - 1 ? x : void 0,
61
+ initial: p,
62
+ animate: _ ? B : p,
63
+ transition: f,
64
+ onAnimationComplete: t === i.length - 1 ? w : void 0,
65
65
  style: {
66
66
  display: "inline-block",
67
67
  willChange: "transform, filter, opacity"
68
68
  },
69
69
  children: [
70
- r === " " ? " " : r,
71
- i === "words" && e < n.length - 1 && " "
70
+ a === " " ? " " : a,
71
+ s === "words" && t < i.length - 1 && " "
72
72
  ]
73
73
  },
74
- e
74
+ t
75
75
  );
76
76
  }) });
77
77
  };
78
+ c.displayName = "SBlurText";
79
+ try {
80
+ c.displayName = "SBlurText", c.__docgenInfo = { description: "A Typography component that animates text with a blur effect when it comes into view.", displayName: "SBlurText", props: { text: { defaultValue: null, description: "The text content to animate", name: "text", required: !0, type: { name: "string" } }, delay: { defaultValue: { value: "100" }, description: "Delay between animating each segment in milliseconds", name: "delay", required: !1, type: { name: "number" } }, animateBy: { defaultValue: { value: "words" }, description: "Animation granularity - animate by words or individual letters", name: "animateBy", required: !1, type: { name: "enum", value: [{ value: '"words"' }, { value: '"letters"' }] } }, direction: { defaultValue: { value: "top" }, description: "Direction of the blur animation", name: "direction", required: !1, type: { name: "enum", value: [{ value: '"top"' }, { value: '"bottom"' }] } }, threshold: { defaultValue: { value: "0.1" }, description: "Intersection observer threshold for triggering animation", name: "threshold", required: !1, type: { name: "number" } }, rootMargin: { defaultValue: { value: "0px" }, description: "Intersection observer root margin", name: "rootMargin", required: !1, type: { name: "string" } }, animationFrom: { defaultValue: null, description: "Custom starting animation state", name: "animationFrom", required: !1, type: { name: "Record<string, string | number>" } }, animationTo: { defaultValue: null, description: "Custom ending animation states (array for multi-step animations)", name: "animationTo", required: !1, type: { name: "Record<string, string | number>[]" } }, easing: { defaultValue: { value: "(t) => t" }, description: "Custom easing function for animation timing", name: "easing", required: !1, type: { name: "((t: number) => number)" } }, onAnimationComplete: { defaultValue: null, description: "Callback fired when animation completes", name: "onAnimationComplete", required: !1, type: { name: "(() => void)" } }, stepDuration: { defaultValue: { value: "0.35" }, description: "Duration of each animation step in seconds", name: "stepDuration", required: !1, type: { name: "number" } } } };
81
+ } catch {
82
+ }
78
83
  export {
79
- H as default
84
+ c as SBlurText,
85
+ c as default
80
86
  };
@@ -1,4 +1,4 @@
1
- import { default as o } from "./s-breadcrumbs.js";
1
+ import { SBreadcrumbs as e } from "./s-breadcrumbs.js";
2
2
  export {
3
- o as default
3
+ e as default
4
4
  };
@@ -1,18 +1,37 @@
1
1
  import { default as React } from 'react';
2
2
  import { BreadcrumbsProps, SxProps, Theme } from '@mui/material';
3
+ /**
4
+ * Represents a single breadcrumb item in the navigation path
5
+ */
3
6
  export interface BreadcrumbItem {
7
+ /** The display text for the breadcrumb item */
4
8
  label: string;
9
+ /** Navigation URL for link-based breadcrumbs */
5
10
  to?: string;
11
+ /** Click handler for action-based breadcrumbs */
6
12
  onClick?: (event: React.MouseEvent) => void;
13
+ /** Indicates if this is the current/active page */
7
14
  isCurrent?: boolean;
8
15
  }
16
+ /**
17
+ * Props for the SBreadcrumbs component
18
+ */
9
19
  export interface SBreadcrumbsProps extends Omit<BreadcrumbsProps, 'children'> {
20
+ /** Array of breadcrumb items to display */
10
21
  items: BreadcrumbItem[];
22
+ /** Custom separator element between breadcrumb items */
11
23
  separator?: React.ReactNode;
24
+ /** Custom link component (e.g., React Router Link) for navigation */
12
25
  LinkComponent?: React.ElementType;
26
+ /** Color of the current (active) breadcrumb item */
13
27
  currentColor?: string;
28
+ /** Color of clickable breadcrumb links */
14
29
  linkColor?: string;
30
+ /** System prop for custom styling */
15
31
  sx?: SxProps<Theme>;
16
32
  }
17
- declare const SBreadcrumbs: React.ForwardRefExoticComponent<Omit<SBreadcrumbsProps, "ref"> & React.RefAttributes<HTMLElement>>;
33
+ /**
34
+ * A breadcrumb navigation component for displaying hierarchical navigation paths.
35
+ */
36
+ export declare const SBreadcrumbs: React.ForwardRefExoticComponent<Omit<SBreadcrumbsProps, "ref"> & React.RefAttributes<HTMLElement>>;
18
37
  export default SBreadcrumbs;
@@ -1,43 +1,52 @@
1
- import { j as o } from "../jsx-runtime-OVHDjVDe.js";
2
- import { forwardRef as f } from "react";
3
- import { C as i } from "../ChevronRight-CnDWPrOm.js";
4
- import { Breadcrumbs as $, Typography as t, Link as e } from "@mui/material";
5
- const j = f(
1
+ import { j as r } from "../jsx-runtime-OVHDjVDe.js";
2
+ import { forwardRef as b } from "react";
3
+ import { C as y } from "../ChevronRight-CnDWPrOm.js";
4
+ import { Breadcrumbs as h, Typography as u, Link as t } from "@mui/material";
5
+ const l = b(
6
6
  ({
7
- items: a,
8
- separator: u = /* @__PURE__ */ o.jsx(i, { fontSize: "small" }),
9
- LinkComponent: s,
10
- currentColor: c = "text.primary",
11
- linkColor: n = "primary.main",
12
- sx: b,
13
- ...h
14
- }, p) => /* @__PURE__ */ o.jsx($, { ref: p, separator: u, sx: b, ...h, children: a.map((r, l) => {
15
- const d = l === a.length - 1;
16
- return r.isCurrent ?? d ? /* @__PURE__ */ o.jsx(t, { color: c, children: r.label }, `${r.label}-${l}`) : r.onClick ? /* @__PURE__ */ o.jsx(
17
- e,
7
+ items: n,
8
+ separator: c = /* @__PURE__ */ r.jsx(y, { fontSize: "small" }),
9
+ LinkComponent: i,
10
+ currentColor: s = "text.primary",
11
+ linkColor: o = "primary.main",
12
+ sx: m,
13
+ ...d
14
+ }, p) => /* @__PURE__ */ r.jsx(h, { ref: p, separator: c, sx: m, ...d, children: n.map((e, a) => {
15
+ const f = a === n.length - 1;
16
+ return e.isCurrent ?? f ? /* @__PURE__ */ r.jsx(u, { color: s, children: e.label }, `${e.label}-${a}`) : e.onClick ? /* @__PURE__ */ r.jsx(
17
+ t,
18
18
  {
19
19
  component: "button",
20
- onClick: r.onClick,
21
- color: n,
20
+ onClick: e.onClick,
21
+ color: o,
22
22
  underline: "hover",
23
23
  sx: { cursor: "pointer", background: "none", border: "none", padding: 0, font: "inherit" },
24
- children: r.label
24
+ children: e.label
25
25
  },
26
- `${r.label}-${l}`
27
- ) : r.to ? s ? /* @__PURE__ */ o.jsx(
28
- e,
26
+ `${e.label}-${a}`
27
+ ) : e.to ? i ? /* @__PURE__ */ r.jsx(
28
+ t,
29
29
  {
30
- component: s,
31
- to: r.to,
32
- color: n,
30
+ component: i,
31
+ to: e.to,
32
+ color: o,
33
33
  underline: "hover",
34
- children: r.label
34
+ children: e.label
35
35
  },
36
- `${r.label}-${l}`
37
- ) : /* @__PURE__ */ o.jsx(e, { href: r.to, color: n, underline: "hover", children: r.label }, `${r.label}-${l}`) : /* @__PURE__ */ o.jsx(t, { color: c, children: r.label }, `${r.label}-${l}`);
36
+ `${e.label}-${a}`
37
+ ) : /* @__PURE__ */ r.jsx(t, { href: e.to, color: o, underline: "hover", children: e.label }, `${e.label}-${a}`) : /* @__PURE__ */ r.jsx(u, { color: s, children: e.label }, `${e.label}-${a}`);
38
38
  }) })
39
39
  );
40
- j.displayName = "SBreadcrumbs";
40
+ l.displayName = "SBreadcrumbs";
41
+ try {
42
+ l.displayName = "SBreadcrumbs", l.__docgenInfo = { description: "A breadcrumb navigation component for displaying hierarchical navigation paths.", displayName: "SBreadcrumbs", props: { sx: { defaultValue: null, description: "System prop for custom styling", name: "sx", required: !1, type: { name: "SxProps<Theme>" } }, separator: { defaultValue: { value: '<ChevronRightIcon fontSize="small" />' }, description: "Custom separator element between breadcrumb items", name: "separator", required: !1, type: { name: "ReactNode" } }, LinkComponent: { defaultValue: null, description: "Custom link component (e.g., React Router Link) for navigation", name: "LinkComponent", required: !1, type: { name: "ElementType<any, keyof IntrinsicElements>" } }, items: { defaultValue: null, description: "Array of breadcrumb items to display", name: "items", required: !0, type: { name: "BreadcrumbItem[]" } }, currentColor: { defaultValue: { value: "text.primary" }, description: "Color of the current (active) breadcrumb item", name: "currentColor", required: !1, type: { name: "string" } }, linkColor: { defaultValue: { value: "primary.main" }, description: "Color of clickable breadcrumb links", name: "linkColor", required: !1, type: { name: "string" } } } };
43
+ } catch {
44
+ }
45
+ try {
46
+ sbreadcrumbs.displayName = "sbreadcrumbs", sbreadcrumbs.__docgenInfo = { description: "A breadcrumb navigation component for displaying hierarchical navigation paths.", displayName: "sbreadcrumbs", props: { sx: { defaultValue: null, description: "System prop for custom styling", name: "sx", required: !1, type: { name: "SxProps<Theme>" } }, separator: { defaultValue: { value: '<ChevronRightIcon fontSize="small" />' }, description: "Custom separator element between breadcrumb items", name: "separator", required: !1, type: { name: "ReactNode" } }, LinkComponent: { defaultValue: null, description: "Custom link component (e.g., React Router Link) for navigation", name: "LinkComponent", required: !1, type: { name: "ElementType<any, keyof IntrinsicElements>" } }, items: { defaultValue: null, description: "Array of breadcrumb items to display", name: "items", required: !0, type: { name: "BreadcrumbItem[]" } }, currentColor: { defaultValue: { value: "text.primary" }, description: "Color of the current (active) breadcrumb item", name: "currentColor", required: !1, type: { name: "string" } }, linkColor: { defaultValue: { value: "primary.main" }, description: "Color of clickable breadcrumb links", name: "linkColor", required: !1, type: { name: "string" } } } };
47
+ } catch {
48
+ }
41
49
  export {
42
- j as default
50
+ l as SBreadcrumbs,
51
+ l as default
43
52
  };
@@ -1,4 +1,4 @@
1
- import { default as o } from "./s-button.js";
1
+ import { SButton as a } from "./s-button.js";
2
2
  export {
3
- o as default
3
+ a as default
4
4
  };
@@ -1,6 +1,12 @@
1
1
  import { default as React } from 'react';
2
2
  import { ButtonProps } from '@mui/material';
3
+ /**
4
+ * Props interface for SButton component
5
+ */
3
6
  export interface SButtonProps extends ButtonProps {
4
7
  }
5
- declare const SButton: React.ForwardRefExoticComponent<Omit<SButtonProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
8
+ /**
9
+ * A versatile button component built on Material-UI Button with consistent theming and accessibility features.
10
+ */
11
+ export declare const SButton: React.ForwardRefExoticComponent<Omit<SButtonProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
6
12
  export default SButton;
@@ -1,7 +1,17 @@
1
- import { j as r } from "../jsx-runtime-OVHDjVDe.js";
2
- import { forwardRef as m } from "react";
3
- import { Button as f } from "@mui/material";
4
- const p = m((t, o) => /* @__PURE__ */ r.jsx(f, { ref: o, ...t }));
1
+ import { j as n } from "../jsx-runtime-OVHDjVDe.js";
2
+ import { forwardRef as r } from "react";
3
+ import { Button as i } from "@mui/material";
4
+ const o = r((t, e) => /* @__PURE__ */ n.jsx(i, { ref: e, ...t }));
5
+ o.displayName = "SButton";
6
+ try {
7
+ o.displayName = "SButton", o.__docgenInfo = { description: "A versatile button component built on Material-UI Button with consistent theming and accessibility features.", displayName: "SButton", props: {} };
8
+ } catch {
9
+ }
10
+ try {
11
+ sbutton.displayName = "sbutton", sbutton.__docgenInfo = { description: "A versatile button component built on Material-UI Button with consistent theming and accessibility features.", displayName: "sbutton", props: {} };
12
+ } catch {
13
+ }
5
14
  export {
6
- p as default
15
+ o as SButton,
16
+ o as default
7
17
  };
@@ -1,4 +1,4 @@
1
- import { default as o } from "./s-button-link.js";
1
+ import { SButtonLink as a } from "./s-button-link.js";
2
2
  export {
3
- o as default
3
+ a as default
4
4
  };
@@ -1,3 +1,4 @@
1
+ import { LinkProps, TypographyProps } from '@mui/material';
1
2
  import * as React from 'react';
2
3
  /**
3
4
  * Props interface for SButtonLink component
@@ -12,40 +13,25 @@ export interface SButtonLinkProps {
12
13
  /** URL for the link (defaults to '#') */
13
14
  href?: string;
14
15
  /** Component to render the link as (e.g., RouterLink for client-side routing) */
15
- component?: any;
16
+ component?: React.ElementType;
16
17
  /** Target attribute for the link (e.g., '_blank' for new tab) */
17
18
  target?: string;
18
19
  /** Color of the surrounding text */
19
- color?: string;
20
+ color?: TypographyProps['color'];
20
21
  /** Color of the link itself (overrides default link color) */
21
- linkColor?: string;
22
+ linkColor?: LinkProps['color'];
22
23
  /** Line height for the typography */
23
- lineHeight?: string;
24
+ lineHeight?: TypographyProps['lineHeight'];
24
25
  /** Typography variant for the container text */
25
- variant?: 'body1' | 'body2' | 'button' | 'caption' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'inherit' | 'overline' | 'subtitle1' | 'subtitle2';
26
+ variant?: TypographyProps['variant'];
26
27
  /** Click handler for the link */
27
- onClick?: () => void;
28
+ onClick?: LinkProps['onClick'];
28
29
  }
29
30
  /**
30
- * SButtonLink - A flexible link component that combines text and a clickable link element.
31
- * Useful for creating contextual links within text content, such as "Don't have an account? Sign up here."
32
- *
33
- * Key features:
34
- * - Supports text before and after the main link
35
- * - Configurable typography variant and colors
36
- * - Component prop for integration with routing libraries (e.g., React Router)
37
- * - Target attribute support for controlling link behavior
38
- * - Consistent cursor and font size inheritance
39
- * - Default fallback values for common use cases
40
- *
41
- * Common use cases:
42
- * - Authentication flows ("Already have an account? Sign in")
43
- * - Call-to-action text with embedded links
44
- * - Help text with contextual links
45
- * - Navigation breadcrumbs with text context
46
- *
47
- * @param props - SButtonLinkProps with text content, link configuration, and styling
48
- * @returns JSX.Element - Typography containing text with embedded link
31
+ * A flexible link component that combines text and a clickable link element.
49
32
  */
50
- declare const SButtonLink: ({ onClick, beforeText, afterText, mainText, href, component, target, color, linkColor, variant, lineHeight, }: SButtonLinkProps) => React.JSX.Element;
33
+ export declare const SButtonLink: {
34
+ ({ onClick, beforeText, afterText, mainText, href, component, target, color, linkColor, variant, lineHeight, }: SButtonLinkProps): React.JSX.Element;
35
+ displayName: string;
36
+ };
51
37
  export default SButtonLink;