@beydesign/storybook 0.0.1 → 0.0.2

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 (234) hide show
  1. package/README.md +60 -40
  2. package/dist/App.js +161 -5
  3. package/dist/assets/animations/loading-animation.json +1 -0
  4. package/dist/index.d.ts +12 -2
  5. package/dist/index.js +12 -4
  6. package/dist/stories/Agent/AgentCard.d.ts +3 -0
  7. package/dist/stories/Agent/AgentCard.js +102 -0
  8. package/dist/stories/Agent/AgentCard.stories.d.ts +13 -0
  9. package/dist/stories/Agent/AgentCard.stories.js +303 -0
  10. package/dist/stories/Agent/AgentCardSkeleton.d.ts +2 -0
  11. package/dist/stories/Agent/AgentCardSkeleton.js +6 -0
  12. package/dist/stories/Agent/AgentCardSkeleton.stories.d.ts +13 -0
  13. package/dist/stories/Agent/AgentCardSkeleton.stories.js +101 -0
  14. package/dist/stories/Agent/CreateNewCard.d.ts +7 -0
  15. package/dist/stories/Agent/CreateNewCard.js +25 -0
  16. package/dist/stories/Agent/CreateNewCard.stories.d.ts +7 -0
  17. package/dist/stories/Agent/CreateNewCard.stories.js +23 -0
  18. package/dist/stories/Agent/index.d.ts +4 -0
  19. package/dist/stories/Agent/index.js +4 -0
  20. package/dist/stories/Agent/types.d.ts +96 -0
  21. package/dist/stories/Agent/types.js +7 -0
  22. package/dist/stories/Buttons/MainButton.d.ts +3 -0
  23. package/dist/stories/Buttons/MainButton.js +302 -0
  24. package/dist/stories/Buttons/MainButton.stories.d.ts +28 -0
  25. package/dist/stories/Buttons/MainButton.stories.js +299 -0
  26. package/dist/stories/Buttons/ToggleButtonGroup.d.ts +3 -0
  27. package/dist/stories/Buttons/ToggleButtonGroup.js +34 -0
  28. package/dist/stories/Buttons/ToggleButtonGroup.stories.d.ts +9 -0
  29. package/dist/stories/Buttons/ToggleButtonGroup.stories.js +78 -0
  30. package/dist/stories/Buttons/index.d.ts +3 -0
  31. package/dist/stories/Buttons/index.js +3 -0
  32. package/dist/stories/{types/button.d.ts → Buttons/types.d.ts} +37 -14
  33. package/dist/stories/{types/button.js → Buttons/types.js} +12 -2
  34. package/dist/stories/Credits/CreditsCard.d.ts +3 -0
  35. package/dist/stories/Credits/CreditsCard.js +53 -0
  36. package/dist/stories/Credits/CreditsCard.stories.d.ts +7 -0
  37. package/dist/stories/Credits/CreditsCard.stories.js +34 -0
  38. package/dist/stories/Credits/CreditsCardSkeleton.d.ts +3 -0
  39. package/dist/stories/Credits/CreditsCardSkeleton.js +30 -0
  40. package/dist/stories/Credits/CreditsCardSkeleton.stories.d.ts +7 -0
  41. package/dist/stories/Credits/CreditsCardSkeleton.stories.js +40 -0
  42. package/dist/stories/Credits/index.d.ts +3 -0
  43. package/dist/stories/Credits/index.js +3 -0
  44. package/dist/stories/Credits/types.d.ts +57 -0
  45. package/dist/stories/Credits/types.js +11 -0
  46. package/dist/stories/EntityCard/EntityCard.d.ts +3 -0
  47. package/dist/stories/EntityCard/EntityCard.js +22 -0
  48. package/dist/stories/EntityCard/EntityCard.stories.d.ts +10 -0
  49. package/dist/stories/EntityCard/EntityCard.stories.js +187 -0
  50. package/dist/stories/EntityCard/EntityCardSkeleton.d.ts +3 -0
  51. package/dist/stories/EntityCard/EntityCardSkeleton.js +9 -0
  52. package/dist/stories/EntityCard/EntityCardSkeleton.stories.d.ts +10 -0
  53. package/dist/stories/EntityCard/EntityCardSkeleton.stories.js +73 -0
  54. package/dist/stories/EntityCard/index.d.ts +3 -0
  55. package/dist/stories/EntityCard/index.js +3 -0
  56. package/dist/stories/EntityCard/types.d.ts +54 -0
  57. package/dist/stories/EntityCard/types.js +1 -0
  58. package/dist/stories/Form/AutoComplete.d.ts +3 -0
  59. package/dist/stories/Form/AutoComplete.js +163 -0
  60. package/dist/stories/Form/AutoComplete.stories.d.ts +6 -0
  61. package/dist/stories/Form/AutoComplete.stories.js +88 -0
  62. package/dist/stories/Form/Checkbox.d.ts +3 -0
  63. package/dist/stories/Form/Checkbox.js +65 -0
  64. package/dist/stories/Form/Checkbox.stories.d.ts +13 -0
  65. package/dist/stories/Form/Checkbox.stories.js +121 -0
  66. package/dist/stories/Form/Dropdown.d.ts +3 -0
  67. package/dist/stories/Form/Dropdown.js +183 -0
  68. package/dist/stories/Form/Dropdown.stories.d.ts +6 -0
  69. package/dist/stories/Form/Dropdown.stories.js +122 -0
  70. package/dist/stories/Form/FileUpload/FileUpload.d.ts +3 -0
  71. package/dist/stories/Form/FileUpload/FileUpload.js +128 -0
  72. package/dist/stories/Form/FileUpload/FileUpload.stories.d.ts +7 -0
  73. package/dist/stories/Form/FileUpload/FileUpload.stories.js +51 -0
  74. package/dist/stories/Form/FileUpload/FileUploading.d.ts +3 -0
  75. package/dist/stories/Form/FileUpload/FileUploading.js +49 -0
  76. package/dist/stories/Form/FileUpload/FileUploading.stories.d.ts +10 -0
  77. package/dist/stories/Form/FileUpload/FileUploading.stories.js +108 -0
  78. package/dist/stories/Form/FileUpload/UploadedFile.d.ts +3 -0
  79. package/dist/stories/Form/FileUpload/UploadedFile.js +12 -0
  80. package/dist/stories/Form/FileUpload/UploadedFile.stories.d.ts +7 -0
  81. package/dist/stories/Form/FileUpload/UploadedFile.stories.js +73 -0
  82. package/dist/stories/Form/FileUpload/index.d.ts +3 -0
  83. package/dist/stories/Form/FileUpload/index.js +3 -0
  84. package/dist/stories/Form/TextArea.d.ts +3 -0
  85. package/dist/stories/Form/TextArea.js +23 -0
  86. package/dist/stories/Form/TextArea.stories.d.ts +161 -0
  87. package/dist/stories/Form/TextArea.stories.js +142 -0
  88. package/dist/stories/Form/TextInput.d.ts +3 -0
  89. package/dist/stories/Form/TextInput.js +57 -0
  90. package/dist/stories/Form/TextInput.stories.d.ts +155 -0
  91. package/dist/stories/Form/TextInput.stories.js +155 -0
  92. package/dist/stories/Form/Toggle.d.ts +3 -0
  93. package/dist/stories/Form/Toggle.js +57 -0
  94. package/dist/stories/Form/Toggle.stories.d.ts +6 -0
  95. package/dist/stories/Form/Toggle.stories.js +79 -0
  96. package/dist/stories/Form/index.d.ts +8 -0
  97. package/dist/stories/Form/index.js +8 -0
  98. package/dist/stories/Form/types.d.ts +274 -0
  99. package/dist/stories/Form/types.js +46 -0
  100. package/dist/stories/Foundations/Colors.d.ts +2 -0
  101. package/dist/stories/Foundations/Colors.js +266 -0
  102. package/dist/stories/Foundations/Colors.stories.d.ts +6 -0
  103. package/dist/stories/Foundations/Colors.stories.js +15 -0
  104. package/dist/stories/Foundations/index.d.ts +1 -0
  105. package/dist/stories/Foundations/index.js +1 -0
  106. package/dist/stories/Navigation/ComplexHeader.d.ts +3 -0
  107. package/dist/stories/Navigation/ComplexHeader.js +21 -0
  108. package/dist/stories/Navigation/ComplexHeader.stories.d.ts +6 -0
  109. package/dist/stories/Navigation/ComplexHeader.stories.js +82 -0
  110. package/dist/stories/Navigation/Header.d.ts +3 -0
  111. package/dist/stories/Navigation/Header.js +9 -0
  112. package/dist/stories/Navigation/Header.stories.d.ts +7 -0
  113. package/dist/stories/Navigation/Header.stories.js +87 -0
  114. package/dist/stories/Navigation/NavItem.d.ts +3 -0
  115. package/dist/stories/Navigation/NavItem.js +66 -0
  116. package/dist/stories/Navigation/NavItem.stories.d.ts +14 -0
  117. package/dist/stories/Navigation/NavItem.stories.js +100 -0
  118. package/dist/stories/Navigation/ProcessHeader.d.ts +3 -0
  119. package/dist/stories/Navigation/ProcessHeader.js +11 -0
  120. package/dist/stories/Navigation/ProcessHeader.stories.d.ts +6 -0
  121. package/dist/stories/Navigation/ProcessHeader.stories.js +76 -0
  122. package/dist/stories/Navigation/Sidebar.d.ts +3 -0
  123. package/dist/stories/Navigation/Sidebar.js +115 -0
  124. package/dist/stories/Navigation/Sidebar.stories.d.ts +11 -0
  125. package/dist/stories/Navigation/Sidebar.stories.js +174 -0
  126. package/dist/stories/Navigation/index.d.ts +6 -0
  127. package/dist/stories/Navigation/index.js +6 -0
  128. package/dist/stories/Navigation/types.d.ts +186 -0
  129. package/dist/stories/Navigation/types.js +21 -0
  130. package/dist/stories/PlanCard/PlanCard.d.ts +3 -0
  131. package/dist/stories/PlanCard/PlanCard.js +13 -0
  132. package/dist/stories/PlanCard/PlanCard.stories.d.ts +9 -0
  133. package/dist/stories/PlanCard/PlanCard.stories.js +125 -0
  134. package/dist/stories/PlanCard/PlanCardSkeleton.d.ts +3 -0
  135. package/dist/stories/PlanCard/PlanCardSkeleton.js +6 -0
  136. package/dist/stories/PlanCard/PlanCardSkeleton.stories.d.ts +7 -0
  137. package/dist/stories/PlanCard/PlanCardSkeleton.stories.js +40 -0
  138. package/dist/stories/PlanCard/index.d.ts +3 -0
  139. package/dist/stories/PlanCard/index.js +3 -0
  140. package/dist/stories/PlanCard/types.d.ts +61 -0
  141. package/dist/stories/PlanCard/types.js +1 -0
  142. package/dist/stories/StripeProduct/StripeProduct.d.ts +3 -0
  143. package/dist/stories/StripeProduct/StripeProduct.js +24 -0
  144. package/dist/stories/StripeProduct/StripeProduct.stories.d.ts +10 -0
  145. package/dist/stories/StripeProduct/StripeProduct.stories.js +110 -0
  146. package/dist/stories/StripeProduct/StripeProductCardSkeleton.d.ts +3 -0
  147. package/dist/stories/StripeProduct/StripeProductCardSkeleton.js +6 -0
  148. package/dist/stories/StripeProduct/StripeProductCardSkeleton.stories.d.ts +16 -0
  149. package/dist/stories/StripeProduct/StripeProductCardSkeleton.stories.js +137 -0
  150. package/dist/stories/StripeProduct/index.d.ts +3 -0
  151. package/dist/stories/StripeProduct/index.js +3 -0
  152. package/dist/stories/StripeProduct/types.d.ts +56 -0
  153. package/dist/stories/StripeProduct/types.js +1 -0
  154. package/dist/stories/Typography/Typography.d.ts +3 -0
  155. package/dist/stories/Typography/Typography.js +22 -0
  156. package/dist/stories/Typography/Typography.stories.d.ts +25 -0
  157. package/dist/stories/Typography/Typography.stories.js +225 -0
  158. package/dist/stories/Typography/index.d.ts +2 -0
  159. package/dist/stories/Typography/index.js +2 -0
  160. package/dist/stories/Typography/types.d.ts +46 -0
  161. package/dist/stories/Typography/types.js +27 -0
  162. package/dist/stories/UI/Avatar.d.ts +3 -0
  163. package/dist/stories/UI/Avatar.js +76 -0
  164. package/dist/stories/UI/Avatar.stories.d.ts +8 -0
  165. package/dist/stories/UI/Avatar.stories.js +76 -0
  166. package/dist/stories/UI/Badge.d.ts +3 -0
  167. package/dist/stories/UI/Badge.js +118 -0
  168. package/dist/stories/UI/Badge.stories.d.ts +11 -0
  169. package/dist/stories/UI/Badge.stories.js +107 -0
  170. package/dist/stories/UI/CheckIcon.d.ts +3 -0
  171. package/dist/stories/UI/CheckIcon.js +36 -0
  172. package/dist/stories/UI/CheckIcon.stories.d.ts +7 -0
  173. package/dist/stories/UI/CheckIcon.stories.js +48 -0
  174. package/dist/stories/UI/FeatureBanner.d.ts +3 -0
  175. package/dist/stories/UI/FeatureBanner.js +34 -0
  176. package/dist/stories/UI/FeatureBanner.stories.d.ts +9 -0
  177. package/dist/stories/UI/FeatureBanner.stories.js +131 -0
  178. package/dist/stories/UI/HintBubble.d.ts +3 -0
  179. package/dist/stories/UI/HintBubble.js +28 -0
  180. package/dist/stories/UI/HintBubble.stories.d.ts +9 -0
  181. package/dist/stories/UI/HintBubble.stories.js +68 -0
  182. package/dist/stories/UI/Logo.d.ts +3 -0
  183. package/dist/stories/UI/Logo.js +60 -0
  184. package/dist/stories/UI/Logo.stories.d.ts +11 -0
  185. package/dist/stories/UI/Logo.stories.js +65 -0
  186. package/dist/stories/UI/Menu.d.ts +3 -0
  187. package/dist/stories/UI/Menu.js +56 -0
  188. package/dist/stories/UI/Menu.stories.d.ts +7 -0
  189. package/dist/stories/UI/Menu.stories.js +80 -0
  190. package/dist/stories/UI/ProgressIndicator.d.ts +3 -0
  191. package/dist/stories/UI/ProgressIndicator.js +35 -0
  192. package/dist/stories/UI/ProgressIndicator.stories.d.ts +10 -0
  193. package/dist/stories/UI/ProgressIndicator.stories.js +98 -0
  194. package/dist/stories/UI/PromoBanner.d.ts +3 -0
  195. package/dist/stories/UI/PromoBanner.js +34 -0
  196. package/dist/stories/UI/PromoBanner.stories.d.ts +9 -0
  197. package/dist/stories/UI/PromoBanner.stories.js +159 -0
  198. package/dist/stories/UI/SkeletonLoader.d.ts +3 -0
  199. package/dist/stories/UI/SkeletonLoader.js +19 -0
  200. package/dist/stories/UI/SkeletonLoader.stories.d.ts +8 -0
  201. package/dist/stories/UI/SkeletonLoader.stories.js +74 -0
  202. package/dist/stories/UI/Stepper.d.ts +3 -0
  203. package/dist/stories/UI/Stepper.js +67 -0
  204. package/dist/stories/UI/Stepper.stories.d.ts +6 -0
  205. package/dist/stories/UI/Stepper.stories.js +65 -0
  206. package/dist/stories/UI/Topbar.d.ts +3 -0
  207. package/dist/stories/UI/Topbar.js +9 -0
  208. package/dist/stories/UI/Topbar.stories.d.ts +6 -0
  209. package/dist/stories/UI/Topbar.stories.js +71 -0
  210. package/dist/stories/UI/index.d.ts +13 -0
  211. package/dist/stories/UI/index.js +13 -0
  212. package/dist/stories/UI/types.d.ts +398 -0
  213. package/dist/stories/UI/types.js +110 -0
  214. package/dist/utils/common.d.ts +2 -0
  215. package/dist/utils/common.js +20 -0
  216. package/dist/utils/icon.d.ts +6 -0
  217. package/dist/utils/icon.js +6 -0
  218. package/dist/utils/index.d.ts +3 -0
  219. package/dist/utils/index.js +3 -0
  220. package/dist/utils/typography.d.ts +14 -0
  221. package/dist/utils/typography.js +46 -0
  222. package/package.json +48 -42
  223. package/dist/stories/Button.d.ts +0 -4
  224. package/dist/stories/Button.js +0 -258
  225. package/dist/stories/Colors.d.ts +0 -5
  226. package/dist/stories/Colors.js +0 -9
  227. package/dist/stories/Header.d.ts +0 -12
  228. package/dist/stories/Header.js +0 -4
  229. package/dist/stories/Header.stories.d.ts +0 -18
  230. package/dist/stories/Header.stories.js +0 -26
  231. package/dist/stories/Page.d.ts +0 -3
  232. package/dist/stories/Page.js +0 -8
  233. package/dist/stories/Page.stories.d.ts +0 -12
  234. package/dist/stories/Page.stories.js +0 -24
@@ -0,0 +1,398 @@
1
+ import { Theme, SxProps } from '@mui/material';
2
+ import { IconName } from '../../utils';
3
+ import { ButtonSize, ButtonHierarchy } from '../Buttons';
4
+ /**
5
+ * Badge size variants
6
+ */
7
+ export declare enum BadgeSize {
8
+ lg = "lg",
9
+ md = "md",
10
+ xs = "xs"
11
+ }
12
+ /**
13
+ * Badge color variants
14
+ */
15
+ export declare enum BadgeColor {
16
+ Default = "Default",
17
+ Violet = "Violet",
18
+ Lemon = "Lemon",
19
+ Green = "Green",
20
+ Red = "Red",
21
+ Yellow = "Yellow",
22
+ Blue = "Blue",
23
+ Cyan = "Cyan",
24
+ Pink = "Pink",
25
+ DarkTransparent = "DarkTransparent"
26
+ }
27
+ /**
28
+ * Badge component props
29
+ */
30
+ export type BadgeProps = {
31
+ /** Size variant of the badge */
32
+ size?: BadgeSize;
33
+ /** Color variant of the badge */
34
+ color?: BadgeColor;
35
+ /** Text content of the badge */
36
+ text: string;
37
+ /** Custom style of the badge */
38
+ style?: SxProps<Theme>;
39
+ /** Whether to show the Icon */
40
+ showIcon?: boolean;
41
+ /** Icon to display in the badge */
42
+ icon?: IconName;
43
+ /** Whether to fill the icon */
44
+ fill?: boolean;
45
+ /** Custom icon weight (regular, bold, duotone, fill, light, thin) */
46
+ iconWeight?: 'regular' | 'bold' | 'duotone' | 'fill' | 'light' | 'thin';
47
+ /** Custom icon size (overrides the default size based on badge size) */
48
+ iconSize?: string | number;
49
+ /** Custom icon color (overrides the default color based on badge color) */
50
+ iconColor?: string;
51
+ /** Test ID of the badge */
52
+ testId?: string;
53
+ };
54
+ /**
55
+ * Avatar size variants
56
+ */
57
+ export declare enum AvatarSize {
58
+ xxl = "xxl",
59
+ xl = "xl",
60
+ lg = "lg",
61
+ md = "md",
62
+ sm = "sm",
63
+ xs = "xs"
64
+ }
65
+ /**
66
+ * Avatar style variants
67
+ */
68
+ export declare enum AvatarStyle {
69
+ Placeholder = "Placeholder",
70
+ Picture = "Picture",
71
+ Letters = "Letters"
72
+ }
73
+ export declare const AvatarImage = "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTTAUPUG0r--EDZzf-f9Afj_Jp7N96yIGsWPgCYIkrAS1rCJHIcdm_RCq_me44bJc0dvvY&usqp=CAU";
74
+ /**
75
+ * Avatar component props
76
+ */
77
+ export type AvatarProps = {
78
+ /** Style variant of the avatar */
79
+ avatarStyle: AvatarStyle;
80
+ /** Text content of the avatar if avatarStyle is Letters */
81
+ text?: string;
82
+ /** Image source of the avatar if avatarStyle is Picture */
83
+ image?: string;
84
+ /** Custom style of the avatar */
85
+ style?: SxProps<Theme>;
86
+ /** Size variant of the avatar */
87
+ size?: AvatarSize;
88
+ /** Visual hierarchy of the avatar */
89
+ border?: boolean;
90
+ };
91
+ export declare enum HintBubbleType {
92
+ Info = "Info",
93
+ Error = "Error"
94
+ }
95
+ export declare enum HintBubbleSize {
96
+ md = "md",
97
+ sm = "sm"
98
+ }
99
+ /**
100
+ * HintBubble component props
101
+ */
102
+ export type HintBubbleProps = {
103
+ /** Type variant of the hint bubble */
104
+ type?: HintBubbleType;
105
+ /** Size variant of the hint bubble */
106
+ size?: HintBubbleSize;
107
+ /** Text of the hint bubble */
108
+ text: string;
109
+ /** Custom style of the hint bubble */
110
+ style?: SxProps<Theme>;
111
+ };
112
+ export declare enum LogoVariant {
113
+ Horizontal = "horizontal",
114
+ Vertical = "vertical",
115
+ Icon = "icon"
116
+ }
117
+ export interface LogoProps {
118
+ /**
119
+ * The variant of the logo to display
120
+ */
121
+ variant?: LogoVariant;
122
+ /**
123
+ * The color to apply to the logo
124
+ * If gradient is provided, this will be ignored
125
+ */
126
+ color?: string;
127
+ /**
128
+ * Optional gradient value to apply to the logo
129
+ * Example: "linear-gradient(180deg, #3300ff 0%, #d170ff 100%)"
130
+ */
131
+ gradient?: string;
132
+ /**
133
+ * Optional className for additional styling
134
+ */
135
+ className?: string;
136
+ /**
137
+ * Optional URL to override the default SVG
138
+ * If provided, this will be used instead of the built-in SVG
139
+ */
140
+ svgUrl?: string;
141
+ }
142
+ /**
143
+ * Menu item
144
+ */
145
+ export interface MenuItemProps {
146
+ /** Label */
147
+ label: string;
148
+ /** Icon */
149
+ icon: IconName;
150
+ /** On click */
151
+ onClick: () => void;
152
+ /** Destructive */
153
+ destructive?: boolean;
154
+ }
155
+ /**
156
+ * Menu component props
157
+ */
158
+ export type MenuProps = {
159
+ /** Icon */
160
+ icon?: IconName;
161
+ /** Items */
162
+ items?: MenuItemProps[];
163
+ /** Style */
164
+ style?: React.CSSProperties;
165
+ /** Test key */
166
+ testKey?: string;
167
+ /** Size of the trigger button */
168
+ size?: ButtonSize;
169
+ /** Hierarchy of the trigger button */
170
+ hierarchy?: ButtonHierarchy;
171
+ };
172
+ /**
173
+ * Check icon color variants
174
+ */
175
+ export declare enum CheckIconColor {
176
+ Violet = "Violet",
177
+ Green = "Green"
178
+ }
179
+ /**
180
+ * Check icon size variants (xs = 16px, sm = 20px, md = 24px, lg = 28px)
181
+ */
182
+ export declare enum CheckIconSize {
183
+ xs = "xs",
184
+ sm = "sm",
185
+ md = "md",
186
+ lg = "lg"
187
+ }
188
+ /**
189
+ * Check icon type variants.
190
+ * - `Filled`: solid accent background + white check
191
+ * - `Line`: transparent background, accent ring + accent check
192
+ * - `Duotone`: light badge background + accent-colored check
193
+ */
194
+ export declare enum CheckIconType {
195
+ Filled = "Filled",
196
+ Line = "Line",
197
+ Duotone = "Duotone"
198
+ }
199
+ /**
200
+ * Check icon component props
201
+ */
202
+ export interface CheckIconProps {
203
+ /** Color variant */
204
+ color?: CheckIconColor;
205
+ /** Size variant (xs = 16px, md = 24px) */
206
+ size?: CheckIconSize;
207
+ /** Fill style */
208
+ type?: CheckIconType;
209
+ /** Custom style */
210
+ style?: React.CSSProperties;
211
+ /** Test id */
212
+ testId?: string;
213
+ }
214
+ /**
215
+ * Progress indicator mode variants
216
+ */
217
+ export declare enum ProgressIndicatorMode {
218
+ Value = "Value",
219
+ Percentage = "Percentage"
220
+ }
221
+ /**
222
+ * Progress indicator component props
223
+ */
224
+ export type ProgressIndicatorProps = {
225
+ /** Mode variant of the progress indicator */
226
+ mode?: ProgressIndicatorMode;
227
+ /** Value of the progress indicator */
228
+ currentValue: number;
229
+ /** Maximum value of the progress indicator */
230
+ maxValue: number;
231
+ /** Fill color of the progress indicator */
232
+ fillColor?: string;
233
+ /** Background color of the progress indicator */
234
+ backgroundColor?: string;
235
+ /** Text of the progress indicator */
236
+ text?: string;
237
+ /** Overridden text of the progress indicator */
238
+ overriddenText?: string;
239
+ /** Text color of the progress indicator */
240
+ textColor?: string;
241
+ /** Style of the progress indicator */
242
+ style?: SxProps<Theme>;
243
+ /** Text style of the progress indicator */
244
+ textStyle?: React.CSSProperties;
245
+ /** Test ID of the progress indicator */
246
+ testId?: string;
247
+ };
248
+ export interface SkeletonLoaderProps {
249
+ /**
250
+ * Width of the skeleton
251
+ */
252
+ width?: string | number;
253
+ /**
254
+ * Height of the skeleton
255
+ */
256
+ height?: string | number;
257
+ /**
258
+ * Border radius of the skeleton
259
+ */
260
+ borderRadius?: string;
261
+ /**
262
+ * Animation duration in seconds
263
+ */
264
+ animationDuration?: number;
265
+ /**
266
+ * Custom style for the skeleton
267
+ */
268
+ style?: React.CSSProperties;
269
+ }
270
+ export interface TopbarProps {
271
+ /** Title */
272
+ title: string;
273
+ /** Badge */
274
+ badgeText?: string;
275
+ /** New button text */
276
+ newButtonText?: string;
277
+ /** New button hidden */
278
+ newButtonHidden?: boolean;
279
+ /** On click of new button */
280
+ onNewButtonClick?: () => void;
281
+ /** Style */
282
+ style?: SxProps<Theme>;
283
+ /** Class name */
284
+ className?: string;
285
+ }
286
+ /**
287
+ * PromoBanner component props
288
+ */
289
+ export interface PromoBannerProps {
290
+ /** Title of the banner */
291
+ title?: string;
292
+ /** Description text shown below the title */
293
+ description?: string;
294
+ /** Feature highlights rendered as a checkmark list below the description */
295
+ features?: string[];
296
+ /** Promo code to display */
297
+ promoCode?: string;
298
+ /** Label shown on top of the promo code */
299
+ promoCodeLabel?: string;
300
+ /** Called after the promo code is copied to the clipboard */
301
+ onCopyPromoCode?: (promoCode: string) => void;
302
+ /** Call-to-action button text */
303
+ ctaText?: string;
304
+ /** Called when the call-to-action button is clicked */
305
+ onCtaClick?: () => void;
306
+ /** Footer note shown below the actions */
307
+ footerText?: string;
308
+ /** Image URL of the avatar collage shown on the left side */
309
+ leftImage?: string;
310
+ /** Image URL of the avatar collage shown on the right side */
311
+ rightImage?: string;
312
+ /** Whether to show the avatar images */
313
+ showImages?: boolean;
314
+ /** Background of the banner */
315
+ background?: string;
316
+ /** Custom style of the banner */
317
+ style?: SxProps<Theme>;
318
+ /** Test ID of the banner */
319
+ testId?: string;
320
+ }
321
+ /**
322
+ * FeatureBanner media variants
323
+ */
324
+ export declare enum FeatureBannerMedia {
325
+ Video = "Video",
326
+ Image = "Image",
327
+ None = "None"
328
+ }
329
+ /**
330
+ * FeatureBanner action button
331
+ */
332
+ export interface FeatureBannerAction {
333
+ /** Button text */
334
+ text: string;
335
+ /** Called when the button is clicked */
336
+ onClick?: () => void;
337
+ /** Whether to render as the primary (brand) action */
338
+ primary?: boolean;
339
+ }
340
+ /**
341
+ * FeatureBanner component props
342
+ */
343
+ export interface FeatureBannerProps {
344
+ /** Title of the banner */
345
+ title?: string;
346
+ /** Description shown below the title */
347
+ description?: string;
348
+ /** Action buttons */
349
+ actions?: FeatureBannerAction[];
350
+ /** Media shown on the right side of the banner */
351
+ media?: FeatureBannerMedia;
352
+ /** Image URL for the media (video thumbnail or image column) */
353
+ mediaImage?: string;
354
+ /** Called when the play button on the video preview is clicked */
355
+ onPlayClick?: () => void;
356
+ /** CTA text overlaid on the video preview */
357
+ mediaCtaText?: string;
358
+ /** Called when the media CTA is clicked */
359
+ onMediaCtaClick?: () => void;
360
+ /** Background of the banner */
361
+ background?: string;
362
+ /** Custom style of the banner */
363
+ style?: SxProps<Theme>;
364
+ /** Test ID of the banner */
365
+ testId?: string;
366
+ }
367
+ export interface StepProps {
368
+ /** Current step of the stepper */
369
+ currentStep: number;
370
+ /** Total steps of the stepper */
371
+ totalSteps: number;
372
+ /** Index of the step */
373
+ index: number;
374
+ /** Title of the step */
375
+ title: string;
376
+ /** On click of the step */
377
+ onClick?: () => void;
378
+ /** Connector width of the step */
379
+ connectorWidth?: string | number;
380
+ /** Style of the step */
381
+ stepStyle?: SxProps<Theme>;
382
+ }
383
+ export interface StepperProps {
384
+ /** Steps of the stepper */
385
+ steps: string[];
386
+ /** Current step of the stepper */
387
+ currentStep: number;
388
+ /** On click of the step */
389
+ onStepClick?: (step: number) => void;
390
+ /** Style of the stepper */
391
+ style?: SxProps<Theme>;
392
+ /** Style of the step */
393
+ stepStyle?: SxProps<Theme>;
394
+ /** Test ID of the stepper */
395
+ testId?: string;
396
+ /** Connector width of the stepper */
397
+ connectorWidth?: string | number;
398
+ }
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Badge size variants
3
+ */
4
+ export var BadgeSize;
5
+ (function (BadgeSize) {
6
+ BadgeSize["lg"] = "lg";
7
+ BadgeSize["md"] = "md";
8
+ BadgeSize["xs"] = "xs";
9
+ })(BadgeSize || (BadgeSize = {}));
10
+ /**
11
+ * Badge color variants
12
+ */
13
+ export var BadgeColor;
14
+ (function (BadgeColor) {
15
+ BadgeColor["Default"] = "Default";
16
+ BadgeColor["Violet"] = "Violet";
17
+ BadgeColor["Lemon"] = "Lemon";
18
+ BadgeColor["Green"] = "Green";
19
+ BadgeColor["Red"] = "Red";
20
+ BadgeColor["Yellow"] = "Yellow";
21
+ BadgeColor["Blue"] = "Blue";
22
+ BadgeColor["Cyan"] = "Cyan";
23
+ BadgeColor["Pink"] = "Pink";
24
+ BadgeColor["DarkTransparent"] = "DarkTransparent";
25
+ })(BadgeColor || (BadgeColor = {}));
26
+ /**
27
+ * Avatar size variants
28
+ */
29
+ export var AvatarSize;
30
+ (function (AvatarSize) {
31
+ AvatarSize["xxl"] = "xxl";
32
+ AvatarSize["xl"] = "xl";
33
+ AvatarSize["lg"] = "lg";
34
+ AvatarSize["md"] = "md";
35
+ AvatarSize["sm"] = "sm";
36
+ AvatarSize["xs"] = "xs";
37
+ })(AvatarSize || (AvatarSize = {}));
38
+ /**
39
+ * Avatar style variants
40
+ */
41
+ export var AvatarStyle;
42
+ (function (AvatarStyle) {
43
+ AvatarStyle["Placeholder"] = "Placeholder";
44
+ AvatarStyle["Picture"] = "Picture";
45
+ AvatarStyle["Letters"] = "Letters";
46
+ })(AvatarStyle || (AvatarStyle = {}));
47
+ export const AvatarImage = `https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTTAUPUG0r--EDZzf-f9Afj_Jp7N96yIGsWPgCYIkrAS1rCJHIcdm_RCq_me44bJc0dvvY&usqp=CAU`;
48
+ export var HintBubbleType;
49
+ (function (HintBubbleType) {
50
+ HintBubbleType["Info"] = "Info";
51
+ HintBubbleType["Error"] = "Error";
52
+ })(HintBubbleType || (HintBubbleType = {}));
53
+ export var HintBubbleSize;
54
+ (function (HintBubbleSize) {
55
+ HintBubbleSize["md"] = "md";
56
+ HintBubbleSize["sm"] = "sm";
57
+ })(HintBubbleSize || (HintBubbleSize = {}));
58
+ export var LogoVariant;
59
+ (function (LogoVariant) {
60
+ LogoVariant["Horizontal"] = "horizontal";
61
+ LogoVariant["Vertical"] = "vertical";
62
+ LogoVariant["Icon"] = "icon";
63
+ })(LogoVariant || (LogoVariant = {}));
64
+ /**
65
+ * Check icon color variants
66
+ */
67
+ export var CheckIconColor;
68
+ (function (CheckIconColor) {
69
+ CheckIconColor["Violet"] = "Violet";
70
+ CheckIconColor["Green"] = "Green";
71
+ })(CheckIconColor || (CheckIconColor = {}));
72
+ /**
73
+ * Check icon size variants (xs = 16px, sm = 20px, md = 24px, lg = 28px)
74
+ */
75
+ export var CheckIconSize;
76
+ (function (CheckIconSize) {
77
+ CheckIconSize["xs"] = "xs";
78
+ CheckIconSize["sm"] = "sm";
79
+ CheckIconSize["md"] = "md";
80
+ CheckIconSize["lg"] = "lg";
81
+ })(CheckIconSize || (CheckIconSize = {}));
82
+ /**
83
+ * Check icon type variants.
84
+ * - `Filled`: solid accent background + white check
85
+ * - `Line`: transparent background, accent ring + accent check
86
+ * - `Duotone`: light badge background + accent-colored check
87
+ */
88
+ export var CheckIconType;
89
+ (function (CheckIconType) {
90
+ CheckIconType["Filled"] = "Filled";
91
+ CheckIconType["Line"] = "Line";
92
+ CheckIconType["Duotone"] = "Duotone";
93
+ })(CheckIconType || (CheckIconType = {}));
94
+ /**
95
+ * Progress indicator mode variants
96
+ */
97
+ export var ProgressIndicatorMode;
98
+ (function (ProgressIndicatorMode) {
99
+ ProgressIndicatorMode["Value"] = "Value";
100
+ ProgressIndicatorMode["Percentage"] = "Percentage";
101
+ })(ProgressIndicatorMode || (ProgressIndicatorMode = {}));
102
+ /**
103
+ * FeatureBanner media variants
104
+ */
105
+ export var FeatureBannerMedia;
106
+ (function (FeatureBannerMedia) {
107
+ FeatureBannerMedia["Video"] = "Video";
108
+ FeatureBannerMedia["Image"] = "Image";
109
+ FeatureBannerMedia["None"] = "None";
110
+ })(FeatureBannerMedia || (FeatureBannerMedia = {}));
@@ -0,0 +1,2 @@
1
+ export declare const getInitials: (text: string) => string;
2
+ export declare const formatNumberShort: (num: number) => string;
@@ -0,0 +1,20 @@
1
+ export const getInitials = (text) => {
2
+ if (!text)
3
+ return '';
4
+ return text
5
+ .split(' ')
6
+ .map((word) => word[0]?.toUpperCase())
7
+ .join('');
8
+ };
9
+ export const formatNumberShort = (num) => {
10
+ const sign = num < 0 ? '-' : '';
11
+ num = Math.abs(num);
12
+ if (num < 1000)
13
+ return `${sign}${Math.floor(num)}`;
14
+ const units = ['', 'k', 'm', 'b', 't', 'q'];
15
+ const tier = Math.min(Math.floor(Math.log10(num) / 3), units.length - 1);
16
+ const suffix = units[tier];
17
+ const scale = Math.pow(10, tier * 3);
18
+ const scaled = Math.floor(num / scale);
19
+ return `${sign}${scaled}${suffix}`;
20
+ };
@@ -0,0 +1,6 @@
1
+ import * as PhosphorIcons from '@phosphor-icons/react';
2
+ import type { IconProps } from '@phosphor-icons/react';
3
+ export type IconName = keyof typeof PhosphorIcons;
4
+ export declare const getIconComponent: (iconName: IconName, props: IconProps & {
5
+ "data-testid"?: string;
6
+ }) => import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,6 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import * as PhosphorIcons from '@phosphor-icons/react';
3
+ export const getIconComponent = (iconName, props) => {
4
+ const Icon = PhosphorIcons[iconName];
5
+ return Icon ? _jsx(Icon, { ...props }) : null;
6
+ };
@@ -0,0 +1,3 @@
1
+ export * from './icon';
2
+ export * from './common';
3
+ export * from './typography';
@@ -0,0 +1,3 @@
1
+ export * from './icon';
2
+ export * from './common';
3
+ export * from './typography';
@@ -0,0 +1,14 @@
1
+ import { TypographySize, TypographyWeight } from '../stories/Typography';
2
+ export declare const getTypographySizeToken: (size: TypographySize) => string;
3
+ export declare const getTypographyWeightToken: (weight: TypographyWeight) => string;
4
+ export declare const getTextStyles: (sizeToken: string, weightToken: string) => {
5
+ fontSize: string;
6
+ fontWeight: string;
7
+ fontFamily: string;
8
+ lineHeight: string;
9
+ letterSpacing: string;
10
+ paragraphIndent: string;
11
+ paragraphSpacing: string;
12
+ textDecoration: string;
13
+ textTransform: "uppercase" | "none";
14
+ };
@@ -0,0 +1,46 @@
1
+ export const getTypographySizeToken = (size) => {
2
+ let sizeLc = size?.toLowerCase() || '';
3
+ if (sizeLc.includes('heading')) {
4
+ sizeLc = sizeLc.replace('heading', 'heading-');
5
+ }
6
+ else if (sizeLc.includes('text')) {
7
+ sizeLc = sizeLc.replace('text', 'text-');
8
+ }
9
+ sizeLc = sizeLc.replace(/(\d)(\D)/g, '$1-$2');
10
+ return sizeLc;
11
+ };
12
+ export const getTypographyWeightToken = (weight) => {
13
+ let weightLc = weight?.toLowerCase() || '';
14
+ if (weightLc.includes('semibold')) {
15
+ weightLc = weightLc.replace('semibold', 'semi-bold');
16
+ }
17
+ return weightLc;
18
+ };
19
+ const getTextTransform = (sizeToken, weightToken) => {
20
+ const computedValue = getComputedStyle(document.documentElement)
21
+ .getPropertyValue(`--global-${sizeToken}-${weightToken}-text-case`)
22
+ .trim();
23
+ return computedValue === 'uppercase' ? 'uppercase' : 'none';
24
+ };
25
+ export const getTextStyles = (sizeToken, weightToken) => {
26
+ const fontSize = `var(--global-${sizeToken}-${weightToken}-font-size)`;
27
+ const fontWeight = `var(--global-${sizeToken}-${weightToken}-font-weight)`;
28
+ const fontFamily = `var(--global-${sizeToken}-${weightToken}-font-family)`;
29
+ const lineHeight = `var(--global-${sizeToken}-${weightToken}-line-height)`;
30
+ const letterSpacing = `var(--global-${sizeToken}-${weightToken}-letter-spacing)`;
31
+ const paragraphIndent = `var(--global-${sizeToken}-${weightToken}-paragraph-indent)`;
32
+ const paragraphSpacing = `var(--global-${sizeToken}-${weightToken}-paragraph-spacing)`;
33
+ const textDecoration = `var(--global-${sizeToken}-${weightToken}-text-decoration)`;
34
+ const textTransform = getTextTransform(sizeToken, weightToken);
35
+ return {
36
+ fontSize,
37
+ fontWeight,
38
+ fontFamily,
39
+ lineHeight,
40
+ letterSpacing,
41
+ paragraphIndent,
42
+ paragraphSpacing,
43
+ textDecoration,
44
+ textTransform,
45
+ };
46
+ };