flowbite-svelte 2.0.0-next.11 → 2.0.0-next.13

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.
@@ -0,0 +1,206 @@
1
+ @theme {
2
+ --font-sans: "Shantell Sans", cursive;
3
+ --font-body: "Shantell Sans", cursive;
4
+
5
+ /* Flowbite variables */
6
+
7
+ --leading-9: 2.25rem;
8
+ --leading-7: 1.75rem;
9
+ --leading-8: 2rem;
10
+ --leading-6: 1.5rem;
11
+ --leading-4: 1rem;
12
+ --leading-none: 0.0625rem;
13
+ --leading-5: 1.25rem;
14
+ --tracking-tighter: -0.05rem;
15
+ --leading-heading-none: 3.75rem;
16
+ --tracking-tight: -0.025rem;
17
+
18
+ /* radius variables */
19
+ --radius-xxs: 2px;
20
+ --radius-xs: 2px;
21
+ --radius-sm: 10px;
22
+ --radius: 10px;
23
+ --radius: 14px;
24
+ --radius-md: 14px;
25
+ --radius-base: 20px;
26
+ --radius-lg: 16px;
27
+
28
+ /* border width variables */
29
+ --default-border-width: 1px;
30
+
31
+ /* text color variables */
32
+ --color-body: var(--color-slate-600);
33
+ --color-body-subtle: var(--color-slate-500);
34
+ --color-heading: var(--color-slate-900);
35
+ --color-fg-brand-subtle: var(--color-pink-200);
36
+ --color-fg-brand: var(--color-pink-700);
37
+ --color-fg-brand-strong: var(--color-pink-900);
38
+ --color-fg-success: var(--color-green-700);
39
+ --color-fg-success-strong: var(--color-green-900);
40
+ --color-fg-danger: var(--color-red-700);
41
+ --color-fg-danger-strong: var(--color-red-900);
42
+ --color-fg-warning-subtle: var(--color-orange-600);
43
+ --color-fg-warning: var(--color-orange-900);
44
+ --color-fg-yellow: var(--color-yellow-400);
45
+ --color-fg-disabled: var(--color-slate-400);
46
+ --color-fg-purple: var(--color-purple-600);
47
+ --color-fg-cyan: var(--color-cyan-600);
48
+ --color-fg-indigo: var(--color-indigo-600);
49
+ --color-fg-pink: var(--color-pink-600);
50
+ --color-fg-lime: var(--color-lime-600);
51
+
52
+ /* background color variables */
53
+ --color-neutral-primary-soft: var(--color-white);
54
+ --color-neutral-primary: var(--color-white);
55
+ --color-neutral-primary-medium: var(--color-white);
56
+ --color-neutral-primary-strong: var(--color-white);
57
+ --color-neutral-secondary-soft: var(--color-slate-50);
58
+ --color-neutral-secondary: var(--color-slate-50);
59
+ --color-neutral-secondary-medium: var(--color-slate-50);
60
+ --color-neutral-secondary-strong: var(--color-slate-50);
61
+ --color-neutral-secondary-strongest: var(--color-slate-50);
62
+ --color-neutral-tertiary-soft: var(--color-slate-100);
63
+ --color-neutral-tertiary: var(--color-slate-100);
64
+ --color-neutral-tertiary-medium: var(--color-slate-100);
65
+ --color-neutral-quaternary: var(--color-slate-200);
66
+ --color-neutral-quaternary-medium: var(--color-slate-200);
67
+ --color-gray: var(--color-slate-300);
68
+ --color-brand-softer: var(--color-pink-50);
69
+ --color-brand-soft: var(--color-pink-100);
70
+ --color-brand: var(--color-pink-900);
71
+ --color-brand-medium: var(--color-pink-200);
72
+ --color-brand-strong: var(--color-pink-800);
73
+ --color-success-soft: var(--color-green-50);
74
+ --color-success: var(--color-green-700);
75
+ --color-success-medium: var(--color-green-100);
76
+ --color-success-strong: var(--color-green-800);
77
+ --color-danger-soft: var(--color-red-50);
78
+ --color-danger: var(--color-red-700);
79
+ --color-danger-medium: var(--color-red-100);
80
+ --color-danger-strong: var(--color-red-800);
81
+ --color-warning-soft: var(--color-orange-50);
82
+ --color-warning: var(--color-orange-500);
83
+ --color-warning-medium: var(--color-orange-100);
84
+ --color-warning-strong: var(--color-orange-700);
85
+ --color-dark-soft: var(--color-slate-800);
86
+ --color-dark: var(--color-slate-800);
87
+ --color-dark-strong: var(--color-slate-900);
88
+ --color-disabled: var(--color-slate-100);
89
+ --color-purple: var(--color-purple-500);
90
+ --color-sky: var(--color-sky-500);
91
+ --color-teal: var(--color-teal-600);
92
+ --color-pink: var(--color-pink-600);
93
+ --color-cyan: var(--color-cyan-500);
94
+ --color-fuchsia: var(--color-fuchsia-600);
95
+ --color-indigo: var(--color-indigo-600);
96
+ --color-orange: var(--color-orange-400);
97
+
98
+ /* border color variables */
99
+ --color-buffer: var(--color-white);
100
+ --color-buffer-medium: var(--color-white);
101
+ --color-buffer-strong: var(--color-white);
102
+ --color-muted: var(--color-slate-50);
103
+ --color-light-subtle: var(--color-slate-100);
104
+ --color-light: var(--color-slate-100);
105
+ --color-light-medium: var(--color-slate-100);
106
+ --color-default-subtle: var(--color-slate-200);
107
+ --color-default: var(--color-slate-200);
108
+ --color-default-medium: var(--color-slate-200);
109
+ --color-default-strong: var(--color-slate-200);
110
+ --color-success-subtle: var(--color-green-200);
111
+ --color-danger-subtle: var(--color-red-200);
112
+ --color-warning-subtle: var(--color-orange-200);
113
+ --color-brand-subtle: var(--color-pink-200);
114
+ --color-brand-light: var(--color-pink-600);
115
+ --color-dark-subtle: var(--color-slate-800);
116
+ --color-dark-backdrop: var(--color-slate-950);
117
+ }
118
+
119
+ .dark {
120
+ /* text color variables */
121
+ --color-body: var(--color-slate-400);
122
+ --color-body-subtle: var(--color-slate-400);
123
+ --color-heading: var(--color-white);
124
+ --color-fg-brand-subtle: var(--color-pink-200);
125
+ --color-fg-brand: var(--color-pink-500);
126
+ --color-fg-brand-strong: var(--color-pink-400);
127
+ --color-fg-success: var(--color-green-600);
128
+ --color-fg-success-strong: var(--color-green-300);
129
+ --color-fg-danger: var(--color-red-500);
130
+ --color-fg-danger-strong: var(--color-red-300);
131
+ --color-fg-warning-subtle: var(--color-orange-500);
132
+ --color-fg-warning: var(--color-orange-300);
133
+ --color-fg-yellow: var(--color-yellow-400);
134
+ --color-fg-disabled: var(--color-slate-600);
135
+ --color-fg-purple: var(--color-purple-500);
136
+ --color-fg-cyan: var(--color-cyan-500);
137
+ --color-fg-indigo: var(--color-indigo-500);
138
+ --color-fg-pink: var(--color-pink-500);
139
+ --color-fg-lime: var(--color-lime-500);
140
+
141
+ /* background color variables */
142
+ --color-neutral-primary-soft: var(--color-slate-900);
143
+ --color-neutral-primary: var(--color-slate-950);
144
+ --color-neutral-primary-medium: var(--color-slate-800);
145
+ --color-neutral-primary-strong: var(--color-slate-700);
146
+ --color-neutral-secondary-soft: var(--color-slate-900);
147
+ --color-neutral-secondary: var(--color-slate-950);
148
+ --color-neutral-secondary-medium: var(--color-slate-800);
149
+ --color-neutral-secondary-strong: var(--color-slate-700);
150
+ --color-neutral-secondary-strongest: var(--color-slate-600);
151
+ --color-neutral-tertiary-soft: var(--color-slate-900);
152
+ --color-neutral-tertiary: var(--color-slate-800);
153
+ --color-neutral-tertiary-medium: var(--color-slate-700);
154
+ --color-neutral-quaternary: var(--color-slate-700);
155
+ --color-neutral-quaternary-medium: var(--color-slate-600);
156
+ --color-gray: var(--color-slate-600);
157
+ --color-brand-softer: var(--color-pink-950);
158
+ --color-brand-soft: var(--color-pink-900);
159
+ --color-brand: var(--color-pink-600);
160
+ --color-brand-medium: var(--color-pink-900);
161
+ --color-brand-strong: var(--color-pink-700);
162
+ --color-success-soft: var(--color-green-950);
163
+ --color-success: var(--color-green-600);
164
+ --color-success-medium: var(--color-green-900);
165
+ --color-success-strong: var(--color-green-700);
166
+ --color-danger-soft: var(--color-red-950);
167
+ --color-danger: var(--color-red-700);
168
+ --color-danger-medium: var(--color-red-900);
169
+ --color-danger-strong: var(--color-red-800);
170
+ --color-warning-soft: var(--color-orange-950);
171
+ --color-warning: var(--color-orange-600);
172
+ --color-warning-medium: var(--color-orange-900);
173
+ --color-warning-strong: var(--color-orange-700);
174
+ --color-dark-soft: var(--color-slate-700);
175
+ --color-dark: var(--color-slate-800);
176
+ --color-dark-strong: var(--color-slate-700);
177
+ --color-disabled: var(--color-slate-800);
178
+ --color-purple: var(--color-purple-500);
179
+ --color-sky: var(--color-sky-500);
180
+ --color-teal: var(--color-teal-500);
181
+ --color-pink: var(--color-pink-500);
182
+ --color-cyan: var(--color-cyan-500);
183
+ --color-fuchsia: var(--color-fuchsia-500);
184
+ --color-indigo: var(--color-indigo-500);
185
+ --color-orange: var(--color-orange-400);
186
+
187
+ /* border color variables */
188
+ --color-buffer: var(--color-slate-950);
189
+ --color-buffer-medium: var(--color-slate-900);
190
+ --color-buffer-strong: var(--color-slate-800);
191
+ --color-muted: var(--color-slate-900);
192
+ --color-light-subtle: var(--color-slate-900);
193
+ --color-light: var(--color-slate-800);
194
+ --color-light-medium: var(--color-slate-700);
195
+ --color-default-subtle: var(--color-slate-900);
196
+ --color-default: var(--color-slate-800);
197
+ --color-default-medium: var(--color-slate-700);
198
+ --color-default-strong: var(--color-slate-600);
199
+ --color-success-subtle: var(--color-green-900);
200
+ --color-danger-subtle: var(--color-red-900);
201
+ --color-warning-subtle: var(--color-orange-900);
202
+ --color-brand-subtle: var(--color-pink-900);
203
+ --color-brand-light: var(--color-pink-600);
204
+ --color-dark-subtle: var(--color-slate-700);
205
+ --color-dark-backdrop: var(--color-slate-950);
206
+ }
@@ -8,35 +8,35 @@ export const themeConfigs = [
8
8
  {
9
9
  id: "default",
10
10
  name: "Default",
11
- cssPath: defaultCss, // Now this is a real URL
11
+ cssPath: defaultCss,
12
12
  fontUrl: "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap",
13
13
  colors: ["bg-gray-100 dark:bg-gray-700", "bg-blue-50 dark:bg-blue-900", "bg-blue-200 dark:bg-blue-800", "bg-blue-700 dark:bg-blue-700"]
14
14
  },
15
15
  {
16
16
  id: "minimal",
17
17
  name: "Minimal",
18
- cssPath: minimalCss, // Now this is a real URL
18
+ cssPath: minimalCss,
19
19
  fontUrl: "https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap",
20
20
  colors: ["bg-stone-50 dark:bg-stone-600", "bg-stone-100 dark:bg-stone-700", "bg-stone-300 dark:bg-stone-800", "bg-stone-900 dark:bg-stone-900"]
21
21
  },
22
22
  {
23
23
  id: "enterprise",
24
24
  name: "Enterprise",
25
- cssPath: enterpriseCss, // Now this is a real URL
25
+ cssPath: enterpriseCss,
26
26
  fontUrl: "https://fonts.googleapis.com/css2?family=STIX+Two+Text:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&display=swap",
27
27
  colors: ["bg-zinc-100 dark:bg-zinc-700", "bg-cyan-50 dark:bg-cyan-900", "bg-cyan-100 dark:bg-cyan-800", "bg-cyan-700 dark:bg-cyan-700"]
28
28
  },
29
29
  {
30
30
  id: "playful",
31
31
  name: "Playful",
32
- cssPath: playfulCss, // Now this is a real URL
32
+ cssPath: playfulCss,
33
33
  fontUrl: "https://fonts.googleapis.com/css2?family=Shantell+Sans:ital,wght@0,300..800;1,300..800&display=swap",
34
34
  colors: ["bg-slate-100 dark:bg-slate-700", "bg-pink-50 dark:bg-pink-900", "bg-pink-100 dark:bg-pink-800", "bg-pink-700 dark:bg-pink-700"]
35
35
  },
36
36
  {
37
37
  id: "mono",
38
38
  name: "Mono",
39
- cssPath: monoCss, // Now this is a real URL
39
+ cssPath: monoCss,
40
40
  fontUrl: "https://fonts.googleapis.com/css2?family=Google+Sans+Code:wght@300;400;500;600;700&display=swap",
41
41
  colors: ["bg-neutral-100 dark:bg-neutral-700", "bg-indigo-50 dark:bg-indigo-900", "bg-indigo-100 dark:bg-indigo-800", "bg-indigo-700 dark:bg-indigo-700"]
42
42
  }
@@ -2,6 +2,6 @@ import { type ClassValue } from "clsx";
2
2
  export { default as CloseButton } from "./CloseButton.svelte";
3
3
  export { closeButton } from "./theme";
4
4
  export { default as Popper } from "./Popper.svelte";
5
- export * from "./responsive.svelte";
5
+ export * from "./responsive.svelte.js";
6
6
  export declare function cn(...inputs: ClassValue[]): string;
7
7
  export declare function idGenerator(): string;
@@ -3,7 +3,7 @@ import { twMerge } from "tailwind-merge";
3
3
  export { default as CloseButton } from "./CloseButton.svelte";
4
4
  export { closeButton } from "./theme";
5
5
  export { default as Popper } from "./Popper.svelte";
6
- export * from "./responsive.svelte";
6
+ export * from "./responsive.svelte.js";
7
7
  export function cn(...inputs) {
8
8
  return twMerge(clsx(inputs));
9
9
  }
@@ -25,21 +25,3 @@ export declare function useBreakpoints(): {
25
25
  export declare function useCurrentBreakpoint(): () => "xs" | "sm" | "md" | "lg" | "xl" | "2xl";
26
26
  export type BreakpointKey = "xs" | "sm" | "md" | "lg" | "xl" | "2xl";
27
27
  export declare const BREAKPOINTS: Record<BreakpointKey, number>;
28
- interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
29
- new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
30
- $$bindings?: Bindings;
31
- } & Exports;
32
- (internal: unknown, props: {
33
- $$events?: Events;
34
- $$slots?: Slots;
35
- }): Exports & {
36
- $set?: any;
37
- $on?: any;
38
- };
39
- z_$$bindings?: Bindings;
40
- }
41
- declare const Responsive: $$__sveltets_2_IsomorphicComponent<Record<string, never>, {
42
- [evt: string]: CustomEvent<any>;
43
- }, {}, {}, string>;
44
- type Responsive = InstanceType<typeof Responsive>;
45
- export default Responsive;
@@ -0,0 +1,99 @@
1
+ /**
2
+ * A Svelte 5 rune-based media query hook
3
+ * @param query - CSS media query string (e.g., '(min-width: 768px)')
4
+ * @returns A function that returns the current match state
5
+ */
6
+ export function useMediaQuery(query) {
7
+ let matches = $state(false);
8
+ $effect(() => {
9
+ if (typeof window === "undefined")
10
+ return;
11
+ const mediaQuery = window.matchMedia(query);
12
+ matches = mediaQuery.matches;
13
+ const handler = (e) => {
14
+ matches = e.matches;
15
+ };
16
+ mediaQuery.addEventListener("change", handler);
17
+ return () => {
18
+ mediaQuery.removeEventListener("change", handler);
19
+ };
20
+ });
21
+ return () => matches;
22
+ }
23
+ /**
24
+ * Hook for common Tailwind CSS breakpoints
25
+ * @returns Object with boolean values for each breakpoint
26
+ */
27
+ export function useBreakpoints() {
28
+ const sm = useMediaQuery("(min-width: 640px)");
29
+ const md = useMediaQuery("(min-width: 768px)");
30
+ const lg = useMediaQuery("(min-width: 1024px)");
31
+ const xl = useMediaQuery("(min-width: 1280px)");
32
+ const xxl = useMediaQuery("(min-width: 1536px)");
33
+ return {
34
+ get sm() {
35
+ return sm();
36
+ },
37
+ get md() {
38
+ return md();
39
+ },
40
+ get lg() {
41
+ return lg();
42
+ },
43
+ get xl() {
44
+ return xl();
45
+ },
46
+ get "2xl"() {
47
+ return xxl();
48
+ },
49
+ get isMobile() {
50
+ return !sm();
51
+ },
52
+ get isTablet() {
53
+ return sm() && !lg();
54
+ },
55
+ get isDesktop() {
56
+ return lg();
57
+ }
58
+ };
59
+ }
60
+ /**
61
+ * Get current breakpoint name
62
+ * @returns Current breakpoint as string
63
+ */
64
+ export function useCurrentBreakpoint() {
65
+ let currentBreakpoint = $state("xs");
66
+ $effect(() => {
67
+ if (typeof window === "undefined")
68
+ return;
69
+ const updateBreakpoint = () => {
70
+ const width = window.innerWidth;
71
+ if (width >= 1536)
72
+ currentBreakpoint = "2xl";
73
+ else if (width >= 1280)
74
+ currentBreakpoint = "xl";
75
+ else if (width >= 1024)
76
+ currentBreakpoint = "lg";
77
+ else if (width >= 768)
78
+ currentBreakpoint = "md";
79
+ else if (width >= 640)
80
+ currentBreakpoint = "sm";
81
+ else
82
+ currentBreakpoint = "xs";
83
+ };
84
+ updateBreakpoint();
85
+ window.addEventListener("resize", updateBreakpoint);
86
+ return () => {
87
+ window.removeEventListener("resize", updateBreakpoint);
88
+ };
89
+ });
90
+ return () => currentBreakpoint;
91
+ }
92
+ export const BREAKPOINTS = {
93
+ xs: 0,
94
+ sm: 640,
95
+ md: 768,
96
+ lg: 1024,
97
+ xl: 1280,
98
+ "2xl": 1536
99
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flowbite-svelte",
3
- "version": "2.0.0-next.11",
3
+ "version": "2.0.0-next.13",
4
4
  "description": "Flowbite components for Svelte",
5
5
  "main": "dist/index.js",
6
6
  "author": {