@dust-tt/sparkle 0.2.613 → 0.2.615

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 (34) hide show
  1. package/dist/cjs/index.js +1 -1
  2. package/dist/esm/components/Avatar.d.ts +1 -1
  3. package/dist/esm/components/Avatar.js +4 -4
  4. package/dist/esm/components/Avatar.js.map +1 -1
  5. package/dist/esm/components/NavigationList.d.ts +4 -1
  6. package/dist/esm/components/NavigationList.d.ts.map +1 -1
  7. package/dist/esm/components/NavigationList.js +2 -2
  8. package/dist/esm/components/NavigationList.js.map +1 -1
  9. package/dist/esm/components/ScrollArea.d.ts +1 -0
  10. package/dist/esm/components/ScrollArea.d.ts.map +1 -1
  11. package/dist/esm/components/ScrollArea.js +7 -4
  12. package/dist/esm/components/ScrollArea.js.map +1 -1
  13. package/dist/esm/components/Spinner.d.ts +1 -1
  14. package/dist/esm/components/Spinner.js +7 -7
  15. package/dist/esm/components/Spinner.js.map +1 -1
  16. package/dist/esm/components/WindowUtility.d.ts +3 -2
  17. package/dist/esm/components/WindowUtility.d.ts.map +1 -1
  18. package/dist/esm/components/WindowUtility.js +25 -17
  19. package/dist/esm/components/WindowUtility.js.map +1 -1
  20. package/dist/esm/index.d.ts +1 -0
  21. package/dist/esm/index.d.ts.map +1 -1
  22. package/dist/esm/index.js +1 -0
  23. package/dist/esm/index.js.map +1 -1
  24. package/dist/esm/stories/Avatar.stories.js +4 -4
  25. package/dist/esm/stories/Spinner.stories.js +3 -3
  26. package/package.json +1 -1
  27. package/src/components/Avatar.tsx +4 -4
  28. package/src/components/NavigationList.tsx +7 -2
  29. package/src/components/ScrollArea.tsx +9 -3
  30. package/src/components/Spinner.tsx +7 -7
  31. package/src/components/WindowUtility.tsx +11 -18
  32. package/src/index.ts +1 -0
  33. package/src/stories/Avatar.stories.tsx +4 -4
  34. package/src/stories/Spinner.stories.tsx +3 -3
@@ -13,7 +13,7 @@ import animLightLG from "@sparkle/lottie/spinnerLightLG";
13
13
  import animLightXS from "@sparkle/lottie/spinnerLightXS";
14
14
 
15
15
  type SpinnerSizeType = (typeof SPINNER_SIZES)[number];
16
- const SPINNER_SIZES = ["xs", "sm", "md", "lg", "xl", "xxl"] as const;
16
+ const SPINNER_SIZES = ["xs", "sm", "md", "lg", "xl", "2xl"] as const;
17
17
 
18
18
  type SpinnerVariant =
19
19
  | "mono"
@@ -43,7 +43,7 @@ const pxSizeClasses: Record<SpinnerSizeType, string> = {
43
43
  md: "24",
44
44
  lg: "32",
45
45
  xl: "128",
46
- xxl: "192",
46
+ "2xl": "192",
47
47
  };
48
48
 
49
49
  type LottieColorType = [number, number, number, number];
@@ -111,7 +111,7 @@ const Spinner: React.FC<SpinnerProps> = ({ size = "md", variant = "mono" }) => {
111
111
  anim = animLightXS;
112
112
  break;
113
113
  case "xl":
114
- case "xxl":
114
+ case "2xl":
115
115
  anim = animLightLG;
116
116
  break;
117
117
  default:
@@ -139,7 +139,7 @@ const Spinner: React.FC<SpinnerProps> = ({ size = "md", variant = "mono" }) => {
139
139
  anim = animColorXS;
140
140
  break;
141
141
  case "xl":
142
- case "xxl":
142
+ case "2xl":
143
143
  anim = animColorLG;
144
144
  break;
145
145
  default:
@@ -162,7 +162,7 @@ const Spinner: React.FC<SpinnerProps> = ({ size = "md", variant = "mono" }) => {
162
162
  anim = animLightXS;
163
163
  break;
164
164
  case "xl":
165
- case "xxl":
165
+ case "2xl":
166
166
  anim = animLightLG;
167
167
  break;
168
168
  default:
@@ -185,7 +185,7 @@ const Spinner: React.FC<SpinnerProps> = ({ size = "md", variant = "mono" }) => {
185
185
  anim = animDarkXS;
186
186
  break;
187
187
  case "xl":
188
- case "xxl":
188
+ case "2xl":
189
189
  anim = animDarkLG;
190
190
  break;
191
191
  default:
@@ -210,7 +210,7 @@ const Spinner: React.FC<SpinnerProps> = ({ size = "md", variant = "mono" }) => {
210
210
  darkAnim = animDarkXS;
211
211
  break;
212
212
  case "xl":
213
- case "xxl":
213
+ case "2xl":
214
214
  lightAnim = animLightLG;
215
215
  darkAnim = animDarkLG;
216
216
  break;
@@ -2,30 +2,25 @@ import { useEffect, useState } from "react";
2
2
 
3
3
  // Define breakpoints
4
4
  export const breakpoints = {
5
- xs: 0,
5
+ xxs: 0,
6
+ xs: 512,
6
7
  sm: 640,
7
8
  md: 768,
8
9
  lg: 1024,
9
10
  xl: 1280,
10
- xxl: 1536,
11
+ "2xl": 1536,
11
12
  };
12
13
 
13
14
  // Helper function to determine active breakpoint
14
15
  function getActiveBreakpoint(width: number): keyof typeof breakpoints {
15
- if (width >= breakpoints.xxl) {
16
- return "xxl";
17
- }
18
- if (width >= breakpoints.xl) {
19
- return "xl";
20
- }
21
- if (width >= breakpoints.lg) {
22
- return "lg";
23
- }
24
- if (width >= breakpoints.md) {
25
- return "md";
26
- }
27
- if (width >= breakpoints.sm) {
28
- return "sm";
16
+ const breakpointEntries = Object.entries(breakpoints) as [keyof typeof breakpoints, number][];
17
+ // Sort breakpoints from largest to smallest
18
+ const sortedBreakpoints = breakpointEntries.sort(([, a], [, b]) => b - a);
19
+
20
+ for (const [breakpoint, minWidth] of sortedBreakpoints) {
21
+ if (width >= minWidth) {
22
+ return breakpoint;
23
+ }
29
24
  }
30
25
  return "xs";
31
26
  }
@@ -62,5 +57,3 @@ export function useWindowSize() {
62
57
 
63
58
  return windowSize;
64
59
  }
65
-
66
- export default useWindowSize;
package/src/index.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from "./components";
2
+ export * from "./components/WindowUtility";
2
3
  export { SparkleContext } from "./context";
3
4
  export * from "./hooks";
4
5
  export * from "./icons";
@@ -44,7 +44,7 @@ export const AvatarExample = () => (
44
44
  <Avatar size="md" />
45
45
  <Avatar size="lg" />
46
46
  <Avatar size="xl" />
47
- <Avatar size="xxl" />
47
+ <Avatar size="2xl" />
48
48
  </div>
49
49
  <div>With name</div>
50
50
  <div className="s-flex s-gap-4">
@@ -53,7 +53,7 @@ export const AvatarExample = () => (
53
53
  <Avatar size="md" name="Aria Doe" />
54
54
  <Avatar size="lg" name="Omar Doe" />
55
55
  <Avatar size="xl" name="Omar Doe" />
56
- <Avatar size="xxl" name="Omar Doe" />
56
+ <Avatar size="2xl" name="Omar Doe" />
57
57
  </div>
58
58
  <div>With emoji url</div>
59
59
  <div className="s-flex s-gap-4">
@@ -69,7 +69,7 @@ export const AvatarExample = () => (
69
69
  <Avatar size="md" emoji="😂" backgroundColor="s-bg-info-200" />
70
70
  <Avatar size="lg" emoji="🧑‍🚀" backgroundColor="s-bg-gray-200" />
71
71
  <Avatar size="xl" emoji="👕" backgroundColor="s-bg-blue-200" />
72
- <Avatar size="xxl" emoji="👕" backgroundColor="s-bg-blue-200" />
72
+ <Avatar size="2xl" emoji="👕" backgroundColor="s-bg-blue-200" />
73
73
  </div>
74
74
  <div className="s-flex s-gap-4">
75
75
  <Avatar size="sm" name="Eleanor Wright" />
@@ -126,7 +126,7 @@ export const AvatarExample = () => (
126
126
  <Avatar size="lg" icon={ActionFlagIcon} />
127
127
  <Avatar size="lg" icon={SlackLogo} hexBgColor="#421D51" />
128
128
  <Avatar size="xl" icon={ActionShirtIcon} />
129
- <Avatar size="xxl" icon={StarStrokeIcon} />
129
+ <Avatar size="2xl" icon={StarStrokeIcon} />
130
130
  </div>
131
131
  <div className="heading-2xl">Tools example</div>
132
132
  <div>Remote MCP Servers</div>
@@ -89,13 +89,13 @@ export const SpinnerExample = () => {
89
89
  </div>
90
90
  <div className="s-flex s-gap-4">
91
91
  <div className="s-p-20">
92
- <Spinner variant="color" size="xxl" />
92
+ <Spinner variant="color" size="2xl" />
93
93
  </div>
94
94
  <div className="s-p-20">
95
- <Spinner variant="mono" size="xxl" />
95
+ <Spinner variant="mono" size="2xl" />
96
96
  </div>
97
97
  <div className="s-p-20">
98
- <Spinner variant="rose300" size="xxl" />
98
+ <Spinner variant="rose300" size="2xl" />
99
99
  </div>
100
100
  </div>
101
101
  </div>