odj-svelte-ui 0.4.4 → 0.5.0
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.
- package/README.md +3 -1
- package/dist/badge/Badge.svelte +6 -13
- package/dist/forms/select/MultiSelect.svelte +3 -2
- package/dist/forms/select/Select.svelte +58 -11
- package/dist/forms/select/Select.svelte.d.ts +0 -5
- package/dist/forms/select/theme.d.ts +36 -0
- package/dist/forms/select/theme.js +11 -5
- package/dist/forms/select/type.d.ts +2 -0
- package/dist/forms/toggle/theme.js +1 -1
- package/dist/sidebar/theme.js +3 -3
- package/package.json +23 -23
package/README.md
CHANGED
|
@@ -35,8 +35,10 @@ This is a fork from [Flowbite for Svelte 5 with Runes](https://svelte-5-ui-lib.c
|
|
|
35
35
|
- `SidebarButton` has been removed. Please use the `Drawer` component to maintain the old sidebar behaviour;
|
|
36
36
|
- `Card` can be a button now adding `clickable` prop;
|
|
37
37
|
- `Accordion` has a new design and 4 options to the new prop `accordionStyle`: `none`, `flush`, `outlined` and `cards`;
|
|
38
|
-
- New `MultiSelect` input
|
|
38
|
+
- New `MultiSelect` input;
|
|
39
39
|
- `Table` can be rounded with `rounded` prop.
|
|
40
|
+
- Change the placeholder value for `Select`.
|
|
41
|
+
- Using custom `Select` for supported browsers with CSS-only approach.
|
|
40
42
|
|
|
41
43
|
## Installation
|
|
42
44
|
|
package/dist/badge/Badge.svelte
CHANGED
|
@@ -11,20 +11,13 @@
|
|
|
11
11
|
</script>
|
|
12
12
|
|
|
13
13
|
{#if badgeStatus}
|
|
14
|
-
<div {...restProps} transition:transition={params as ParamsType} class={base({ className })}>
|
|
15
|
-
{
|
|
16
|
-
<a {href} {target} class={hrefClass({ class: aClass })}>
|
|
17
|
-
{@render children()}
|
|
18
|
-
</a>
|
|
19
|
-
{:else}
|
|
20
|
-
{@render children()}
|
|
21
|
-
{/if}
|
|
22
|
-
|
|
14
|
+
<svelte:element this={href ? "a" : "div"} {href} {target} {...restProps} transition:transition={params as ParamsType} class={[base({ className }), href && hrefClass({ class: aClass })]}>
|
|
15
|
+
{@render children()}
|
|
23
16
|
{#if dismissable}
|
|
24
17
|
{#if icon}
|
|
25
18
|
<button
|
|
26
19
|
type="button"
|
|
27
|
-
class="
|
|
20
|
+
class="text-primary-500 hover:bg-primary-200 focus:ring-primary-400 dark:hover:bg-primary-800 dark:hover:text-primary-300 m-0.5 ms-1.5 -me-1.5 rounded-sm p-0.5 whitespace-normal focus:ring-1 focus:outline-hidden"
|
|
28
21
|
aria-label="Remove badge"
|
|
29
22
|
onclick={() => {
|
|
30
23
|
badgeStatus = false;
|
|
@@ -34,10 +27,10 @@
|
|
|
34
27
|
{@render icon()}
|
|
35
28
|
</button>
|
|
36
29
|
{:else if onclick}
|
|
37
|
-
<CloseButton class="-
|
|
30
|
+
<CloseButton class="ms-1.5 -me-1.5" {color} size={large ? "sm" : "xs"} ariaLabel="Remove badge" {onclick} />
|
|
38
31
|
{:else}
|
|
39
32
|
<CloseButton
|
|
40
|
-
class="-
|
|
33
|
+
class="ms-1.5 -me-1.5"
|
|
41
34
|
{color}
|
|
42
35
|
size={large ? "sm" : "xs"}
|
|
43
36
|
ariaLabel="Remove badge"
|
|
@@ -47,7 +40,7 @@
|
|
|
47
40
|
/>
|
|
48
41
|
{/if}
|
|
49
42
|
{/if}
|
|
50
|
-
</
|
|
43
|
+
</svelte:element>
|
|
51
44
|
{/if}
|
|
52
45
|
|
|
53
46
|
<!--
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
let {
|
|
6
6
|
outerDivClass,
|
|
7
7
|
ulOptionsClass,
|
|
8
|
+
liOptionsClass,
|
|
8
9
|
ulSelectedClass,
|
|
9
10
|
liSelectedClass,
|
|
10
11
|
inputClass,
|
|
@@ -25,7 +26,7 @@
|
|
|
25
26
|
|
|
26
27
|
...restProps
|
|
27
28
|
}: Props<T> = $props();
|
|
28
|
-
const { outerDiv: outerDivCls, ulOptions, ulSelected, liSelected, input: inputCls } = $derived(multiselect());
|
|
29
|
+
const { outerDiv: outerDivCls, ulOptions, ulSelected, liSelected, input: inputCls, liOptions } = $derived(multiselect());
|
|
29
30
|
</script>
|
|
30
31
|
|
|
31
|
-
<MultiSelect bind:selected bind:value bind:searchText bind:open bind:activeIndex bind:activeOption bind:invalid bind:input bind:outerDiv bind:form_input bind:options bind:matchingOptions {...restProps} outerDivClass={outerDivCls({ className: outerDivClass })} ulOptionsClass={ulOptions({ class: ulOptionsClass })} ulSelectedClass={ulSelected({ class: ulSelectedClass })} liSelectedClass={liSelected({ class: liSelectedClass })} inputClass={inputCls({ class: inputClass })} --sms-remove-btn-hover-color="white" />
|
|
32
|
+
<MultiSelect bind:selected bind:value bind:searchText bind:open bind:activeIndex bind:activeOption bind:invalid bind:input bind:outerDiv bind:form_input bind:options bind:matchingOptions {...restProps} outerDivClass={outerDivCls({ className: outerDivClass })} ulOptionsClass={ulOptions({ class: ulOptionsClass })} ulSelectedClass={ulSelected({ class: ulSelectedClass })} liSelectedClass={liSelected({ class: liSelectedClass })} inputClass={inputCls({ class: inputClass })} liOptionClass={liOptions({ class: liOptionsClass })} --sms-remove-btn-hover-color="white" />
|
|
@@ -1,19 +1,35 @@
|
|
|
1
1
|
<script lang="ts" generics="T">
|
|
2
|
+
import { browser } from "$app/environment";
|
|
2
3
|
import { type SelectProps as Props, select as selectCls } from ".";
|
|
3
4
|
|
|
4
|
-
let { children, items, value = $bindable(), underline, size = "md", class: className, placeholder = "Choose option...", ...restProps }: Props<T> = $props();
|
|
5
|
+
let { children, items, value = $bindable(), underline, size = "md", class: className, placeholder = "Choose option...", placeholderValue = undefined, ...restProps }: Props<T> = $props();
|
|
5
6
|
|
|
6
|
-
const
|
|
7
|
+
const customSelect = $derived(browser ? CSS.supports("appearance: base-select") : true);
|
|
8
|
+
const selectStyle = $derived(selectCls({ underline, size, customSelect, className }));
|
|
7
9
|
</script>
|
|
8
10
|
|
|
9
|
-
<select {
|
|
11
|
+
<select class={selectStyle} class:custom-select={customSelect} bind:value {...restProps}>
|
|
12
|
+
{#if customSelect}
|
|
13
|
+
<!-- svelte-ignore node_invalid_placement_ssr -->
|
|
14
|
+
<button class="flex w-full items-center justify-between" aria-label="Select Picker">
|
|
15
|
+
<selectedcontent></selectedcontent>
|
|
16
|
+
<span class="picker transition-rotate duration-400">
|
|
17
|
+
<svg class="text-light-surface-800 size-3 dark:text-white" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 10 6">
|
|
18
|
+
<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5 5 1 1 5" />
|
|
19
|
+
</svg>
|
|
20
|
+
</span>
|
|
21
|
+
</button>
|
|
22
|
+
{/if}
|
|
23
|
+
|
|
10
24
|
{#if placeholder}
|
|
11
|
-
<option disabled selected value={
|
|
25
|
+
<option disabled selected value={placeholderValue} class={[customSelect && "flex flex-row items-center gap-3 rounded-lg rounded-md px-3 py-2 text-sm"]}>{placeholder}</option>
|
|
12
26
|
{/if}
|
|
13
27
|
|
|
14
28
|
{#if items}
|
|
15
29
|
{#each items as { value, name }}
|
|
16
|
-
<option {value} class="text-dark-surface-950 required:invalid:text-dark-surface-400 dark:text-white"
|
|
30
|
+
<option {value} class={["text-dark-surface-950 required:invalid:text-dark-surface-400 dark:text-white", customSelect && "hover:bg-light-surface-200/70 dark:hover:bg-dark-surface-600 hover:text-light-surface-900 flex cursor-pointer flex-row items-center gap-3 rounded-lg rounded-md px-3 py-2 text-sm dark:hover:text-white"]}>
|
|
31
|
+
{name}
|
|
32
|
+
</option>
|
|
17
33
|
{/each}
|
|
18
34
|
{/if}
|
|
19
35
|
|
|
@@ -22,9 +38,40 @@
|
|
|
22
38
|
{/if}
|
|
23
39
|
</select>
|
|
24
40
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
41
|
+
<style>
|
|
42
|
+
select.custom-select {
|
|
43
|
+
&,
|
|
44
|
+
&::picker(select) {
|
|
45
|
+
appearance: base-select;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
&::picker-icon {
|
|
49
|
+
display: none;
|
|
50
|
+
}
|
|
51
|
+
.picker {
|
|
52
|
+
rotate: 180deg;
|
|
53
|
+
:open & {
|
|
54
|
+
rotate: 0deg;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
&::picker(select) {
|
|
59
|
+
border-radius: var(--radius-lg);
|
|
60
|
+
padding: calc(var(--spacing) * 1);
|
|
61
|
+
margin-block: 0.5rem;
|
|
62
|
+
border: none;
|
|
63
|
+
box-shadow:
|
|
64
|
+
0 10px 15px -3px rgba(0, 0, 0, 0.1),
|
|
65
|
+
0 4px 6px -2px rgba(0, 0, 0, 0.05); /* shadow-lg */
|
|
66
|
+
background-color: #ffffff;
|
|
67
|
+
color: var(--color-light-surface-700);
|
|
68
|
+
border: 1px solid var(--color-light-surface-200);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
:global(.dark &::picker(select)) {
|
|
72
|
+
background-color: var(--color-dark-surface-700);
|
|
73
|
+
color: var(--color-dark-surface-200);
|
|
74
|
+
border-color: var(--color-dark-surface-600);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
</style>
|
|
@@ -20,11 +20,6 @@ interface $$IsomorphicComponent {
|
|
|
20
20
|
<T>(internal: unknown, props: ReturnType<__sveltets_Render<T>['props']> & {}): ReturnType<__sveltets_Render<T>['exports']>;
|
|
21
21
|
z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
|
|
22
22
|
}
|
|
23
|
-
/**
|
|
24
|
-
* [Go to docs](https://svelte-5-ui-lib.codewithshin.com/)
|
|
25
|
-
* ## Props
|
|
26
|
-
* @props:
|
|
27
|
-
*/
|
|
28
23
|
declare const Select: $$IsomorphicComponent;
|
|
29
24
|
type Select<T> = InstanceType<typeof Select<T>>;
|
|
30
25
|
export default Select;
|
|
@@ -8,6 +8,10 @@ export declare const select: import("tailwind-variants").TVReturnType<{
|
|
|
8
8
|
md: string;
|
|
9
9
|
lg: string;
|
|
10
10
|
};
|
|
11
|
+
customSelect: {
|
|
12
|
+
true: string;
|
|
13
|
+
false: string;
|
|
14
|
+
};
|
|
11
15
|
}, undefined, "block w-full disabled:cursor-not-allowed disabled:opacity-50", import("tailwind-variants/dist/config.js").TVConfig<{
|
|
12
16
|
underline: {
|
|
13
17
|
true: string;
|
|
@@ -18,6 +22,10 @@ export declare const select: import("tailwind-variants").TVReturnType<{
|
|
|
18
22
|
md: string;
|
|
19
23
|
lg: string;
|
|
20
24
|
};
|
|
25
|
+
customSelect: {
|
|
26
|
+
true: string;
|
|
27
|
+
false: string;
|
|
28
|
+
};
|
|
21
29
|
}, {
|
|
22
30
|
underline: {
|
|
23
31
|
true: string;
|
|
@@ -28,6 +36,10 @@ export declare const select: import("tailwind-variants").TVReturnType<{
|
|
|
28
36
|
md: string;
|
|
29
37
|
lg: string;
|
|
30
38
|
};
|
|
39
|
+
customSelect: {
|
|
40
|
+
true: string;
|
|
41
|
+
false: string;
|
|
42
|
+
};
|
|
31
43
|
}>, {
|
|
32
44
|
underline: {
|
|
33
45
|
true: string;
|
|
@@ -38,6 +50,10 @@ export declare const select: import("tailwind-variants").TVReturnType<{
|
|
|
38
50
|
md: string;
|
|
39
51
|
lg: string;
|
|
40
52
|
};
|
|
53
|
+
customSelect: {
|
|
54
|
+
true: string;
|
|
55
|
+
false: string;
|
|
56
|
+
};
|
|
41
57
|
}, undefined, import("tailwind-variants").TVReturnType<{
|
|
42
58
|
underline: {
|
|
43
59
|
true: string;
|
|
@@ -48,6 +64,10 @@ export declare const select: import("tailwind-variants").TVReturnType<{
|
|
|
48
64
|
md: string;
|
|
49
65
|
lg: string;
|
|
50
66
|
};
|
|
67
|
+
customSelect: {
|
|
68
|
+
true: string;
|
|
69
|
+
false: string;
|
|
70
|
+
};
|
|
51
71
|
}, undefined, "block w-full disabled:cursor-not-allowed disabled:opacity-50", import("tailwind-variants/dist/config.js").TVConfig<{
|
|
52
72
|
underline: {
|
|
53
73
|
true: string;
|
|
@@ -58,6 +78,10 @@ export declare const select: import("tailwind-variants").TVReturnType<{
|
|
|
58
78
|
md: string;
|
|
59
79
|
lg: string;
|
|
60
80
|
};
|
|
81
|
+
customSelect: {
|
|
82
|
+
true: string;
|
|
83
|
+
false: string;
|
|
84
|
+
};
|
|
61
85
|
}, {
|
|
62
86
|
underline: {
|
|
63
87
|
true: string;
|
|
@@ -68,6 +92,10 @@ export declare const select: import("tailwind-variants").TVReturnType<{
|
|
|
68
92
|
md: string;
|
|
69
93
|
lg: string;
|
|
70
94
|
};
|
|
95
|
+
customSelect: {
|
|
96
|
+
true: string;
|
|
97
|
+
false: string;
|
|
98
|
+
};
|
|
71
99
|
}>, unknown, unknown, undefined>>;
|
|
72
100
|
export declare const multiselect: import("tailwind-variants").TVReturnType<{
|
|
73
101
|
[key: string]: {
|
|
@@ -77,6 +105,7 @@ export declare const multiselect: import("tailwind-variants").TVReturnType<{
|
|
|
77
105
|
ulOptions?: import("tailwind-variants").ClassValue;
|
|
78
106
|
ulSelected?: import("tailwind-variants").ClassValue;
|
|
79
107
|
liSelected?: import("tailwind-variants").ClassValue;
|
|
108
|
+
liOptions?: import("tailwind-variants").ClassValue;
|
|
80
109
|
};
|
|
81
110
|
};
|
|
82
111
|
} | {
|
|
@@ -87,11 +116,13 @@ export declare const multiselect: import("tailwind-variants").TVReturnType<{
|
|
|
87
116
|
ulOptions?: import("tailwind-variants").ClassValue;
|
|
88
117
|
ulSelected?: import("tailwind-variants").ClassValue;
|
|
89
118
|
liSelected?: import("tailwind-variants").ClassValue;
|
|
119
|
+
liOptions?: import("tailwind-variants").ClassValue;
|
|
90
120
|
};
|
|
91
121
|
};
|
|
92
122
|
} | {}, {
|
|
93
123
|
outerDiv: string;
|
|
94
124
|
ulOptions: string;
|
|
125
|
+
liOptions: string;
|
|
95
126
|
ulSelected: string;
|
|
96
127
|
liSelected: string;
|
|
97
128
|
input: string;
|
|
@@ -103,6 +134,7 @@ export declare const multiselect: import("tailwind-variants").TVReturnType<{
|
|
|
103
134
|
ulOptions?: import("tailwind-variants").ClassValue;
|
|
104
135
|
ulSelected?: import("tailwind-variants").ClassValue;
|
|
105
136
|
liSelected?: import("tailwind-variants").ClassValue;
|
|
137
|
+
liOptions?: import("tailwind-variants").ClassValue;
|
|
106
138
|
};
|
|
107
139
|
};
|
|
108
140
|
} | {}>, {
|
|
@@ -113,17 +145,20 @@ export declare const multiselect: import("tailwind-variants").TVReturnType<{
|
|
|
113
145
|
ulOptions?: import("tailwind-variants").ClassValue;
|
|
114
146
|
ulSelected?: import("tailwind-variants").ClassValue;
|
|
115
147
|
liSelected?: import("tailwind-variants").ClassValue;
|
|
148
|
+
liOptions?: import("tailwind-variants").ClassValue;
|
|
116
149
|
};
|
|
117
150
|
};
|
|
118
151
|
} | {}, {
|
|
119
152
|
outerDiv: string;
|
|
120
153
|
ulOptions: string;
|
|
154
|
+
liOptions: string;
|
|
121
155
|
ulSelected: string;
|
|
122
156
|
liSelected: string;
|
|
123
157
|
input: string;
|
|
124
158
|
}, import("tailwind-variants").TVReturnType<unknown, {
|
|
125
159
|
outerDiv: string;
|
|
126
160
|
ulOptions: string;
|
|
161
|
+
liOptions: string;
|
|
127
162
|
ulSelected: string;
|
|
128
163
|
liSelected: string;
|
|
129
164
|
input: string;
|
|
@@ -135,6 +170,7 @@ export declare const multiselect: import("tailwind-variants").TVReturnType<{
|
|
|
135
170
|
ulOptions?: import("tailwind-variants").ClassValue;
|
|
136
171
|
ulSelected?: import("tailwind-variants").ClassValue;
|
|
137
172
|
liSelected?: import("tailwind-variants").ClassValue;
|
|
173
|
+
liOptions?: import("tailwind-variants").ClassValue;
|
|
138
174
|
};
|
|
139
175
|
};
|
|
140
176
|
} | {}>, unknown, unknown, undefined>>;
|
|
@@ -8,20 +8,26 @@ export const select = tv({
|
|
|
8
8
|
false: "text-light-surface-900 bg-light-surface-50 border border-light-surface-300 rounded-lg focus:ring-primary-500 focus:border-primary-500 dark:bg-dark-surface-700 dark:border-dark-surface-600 dark:text-white dark:focus:ring-primary-500 dark:focus:border-primary-500 dark:placeholder-dark-surface-400 required:invalid:text-dark-surface-400 outline-hidden focus:ring-1"
|
|
9
9
|
},
|
|
10
10
|
size: {
|
|
11
|
-
sm: "text-
|
|
12
|
-
md: "text-sm p-2.5",
|
|
13
|
-
lg: "text-base
|
|
11
|
+
sm: "text-xs ps-9 pe-9 p-2",
|
|
12
|
+
md: "text-sm ps-10 pe-10 p-2.5",
|
|
13
|
+
lg: "sm:text-base ps-11 pe-11 p-3"
|
|
14
|
+
},
|
|
15
|
+
customSelect: {
|
|
16
|
+
true: "",
|
|
17
|
+
false: ""
|
|
14
18
|
}
|
|
15
19
|
},
|
|
16
20
|
defaultVariants: {
|
|
17
21
|
underline: false,
|
|
18
|
-
size: "md"
|
|
22
|
+
size: "md",
|
|
23
|
+
customSelect: true
|
|
19
24
|
}
|
|
20
25
|
});
|
|
21
26
|
export const multiselect = tv({
|
|
22
27
|
slots: {
|
|
23
28
|
outerDiv: "!text-light-surface-900 !bg-light-surface-50 !border !border-light-surface-300 !rounded-lg !outline-none focus-within:!ring-1 focus-within:!ring-primary-500 focus-within:!border-primary-500 dark:!bg-dark-surface-700 dark:!border-dark-surface-600 dark:!placeholder-dark-surface-400 dark:!text-white dark:focus-within:!ring-primary-500 dark:focus-within:!border-primary-500 !px-2 !py-1 !min-h-[2.7rem]",
|
|
24
|
-
ulOptions: "!bg-white dark:!bg-dark-surface-700 !max-h-40",
|
|
29
|
+
ulOptions: "!bg-white dark:!bg-dark-surface-700 !max-h-40 !border-1 !outline-none drop-shadow-lg dark:!border-dark-surface-600 !border-light-surface-200 !p-1 text-light-surface-700 dark:text-dark-surface-200",
|
|
30
|
+
liOptions: "!bg-transparent !text-dark-surface-950 required:invalid:!text-dark-surface-400 dark:!text-white hover:!bg-light-surface-200/70 dark:hover:!bg-dark-surface-600 hover:!text-light-surface-900 flex cursor-pointer flex-row items-center gap-3 rounded-md !px-3 !py-2 text-sm dark:hover:!text-white",
|
|
25
31
|
ulSelected: "!flex !gap-1.5 !mx-2",
|
|
26
32
|
liSelected: "!border-light-surface-200 dark:!border-dark-surface-700 !divide-light-surface-200 dark:!divide-dark-surface-700 !font-medium !text-xs !text-light-surface-800 dark:!text-dark-surface-300 !rounded !bg-light-surface-200 dark:!bg-dark-surface-600 !py-1 !px-2 !m-0",
|
|
27
33
|
input: "placeholder:!text-light-surface-400"
|
|
@@ -12,10 +12,12 @@ interface SelectProps<T> extends Omit<HTMLSelectAttributes, "size"> {
|
|
|
12
12
|
underline?: boolean;
|
|
13
13
|
size?: SelectSize;
|
|
14
14
|
placeholder?: string;
|
|
15
|
+
placeholderValue?: any;
|
|
15
16
|
}
|
|
16
17
|
interface MultiSelectProps<T> extends MultiSelectParameters {
|
|
17
18
|
outerDivClass?: string;
|
|
18
19
|
ulOptionsClass?: string;
|
|
20
|
+
liOptionsClass?: string;
|
|
19
21
|
ulSelectedClass?: string;
|
|
20
22
|
liSelectedClass?: string;
|
|
21
23
|
inputClass?: string;
|
|
@@ -2,7 +2,7 @@ import { tv } from "tailwind-variants";
|
|
|
2
2
|
export const toggle = tv({
|
|
3
3
|
slots: {
|
|
4
4
|
span: "me-3 shrink-0 bg-light-surface-200 rounded-full peer-focus-visible:ring-4 peer-checked:after:translate-x-full peer-checked:rtl:after:-translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:bg-white after:border-light-surface-300 after:border after:rounded-full after:transition-all dark:bg-dark-surface-600 dark:border-dark-surface-500 relative cursor-pointer",
|
|
5
|
-
label: "flex items-center",
|
|
5
|
+
label: "flex items-center w-fit",
|
|
6
6
|
input: "w-4 h-4 bg-light-surface-100 border-light-surface-300 dark:ring-offset-dark-surface-800 focus:ring-2 rounded-sm dark:bg-dark-surface-700 dark:border-dark-surface-600 sr-only peer"
|
|
7
7
|
},
|
|
8
8
|
variants: {
|
package/dist/sidebar/theme.js
CHANGED
|
@@ -2,9 +2,9 @@ import { tv } from "tailwind-variants";
|
|
|
2
2
|
export const sidebar = tv({
|
|
3
3
|
slots: {
|
|
4
4
|
base: "top-0 left-0 z-10 min-w-full",
|
|
5
|
-
div: "overflow-y-auto p-2 rounded-xl bg-light-surface-
|
|
6
|
-
active: "cursor-pointer flex items-center p-2 rounded-lg text-base font-normal text-light-surface-900 dark:text-white bg-light-surface-
|
|
7
|
-
nonactive: "cursor-pointer flex items-center p-2 rounded-lg text-base font-normal text-light-surface-700 dark:text-dark-surface-400 hover:bg-light-surface-300/50 dark:hover:bg-dark-surface-600 hover:text-light-surface-800 dark:hover:text-dark-surface-200"
|
|
5
|
+
div: "overflow-y-auto p-2 rounded-xl bg-light-surface-200 dark:bg-dark-surface-800",
|
|
6
|
+
active: "cursor-pointer flex items-center p-2 text-nowrap rounded-lg text-base font-normal text-light-surface-900 dark:text-white bg-light-surface-100 dark:bg-dark-surface-700 hover:bg-light-surface-300/50 dark:hover:bg-dark-surface-600",
|
|
7
|
+
nonactive: "cursor-pointer flex items-center p-2 text-nowrap rounded-lg text-base font-normal text-light-surface-700 dark:text-dark-surface-400 hover:bg-light-surface-300/50 dark:hover:bg-dark-surface-600 hover:text-light-surface-800 dark:hover:text-dark-surface-200"
|
|
8
8
|
},
|
|
9
9
|
variants: {
|
|
10
10
|
position: {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "odj-svelte-ui",
|
|
3
3
|
"author": "orbitadajogatina",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.5.0",
|
|
5
5
|
"description": "This is a fork from Flowbite Svelte 5 with Runes. I just made some changes that fits better my taste.",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"main": "dist/index.js",
|
|
@@ -37,19 +37,19 @@
|
|
|
37
37
|
"cp": "npx changeset publish"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
|
-
"@changesets/cli": "^2.
|
|
41
|
-
"@playwright/test": "^1.
|
|
40
|
+
"@changesets/cli": "^2.31.0",
|
|
41
|
+
"@playwright/test": "^1.59.1",
|
|
42
42
|
"@popperjs/core": "^2.11.8",
|
|
43
|
-
"@sveltejs/adapter-vercel": "^5.10.
|
|
43
|
+
"@sveltejs/adapter-vercel": "^5.10.3",
|
|
44
44
|
"@sveltejs/enhanced-img": "^0.4.4",
|
|
45
|
-
"@sveltejs/kit": "^2.
|
|
46
|
-
"@sveltejs/package": "^2.5.
|
|
45
|
+
"@sveltejs/kit": "^2.57.1",
|
|
46
|
+
"@sveltejs/package": "^2.5.7",
|
|
47
47
|
"@sveltejs/vite-plugin-svelte": "^5.1.1",
|
|
48
48
|
"@svitejs/changesets-changelog-github-compact": "^1.2.0",
|
|
49
49
|
"@types/eslint": "^9.6.1",
|
|
50
|
-
"@types/node": "^22.
|
|
51
|
-
"autoprefixer": "^10.
|
|
52
|
-
"eslint": "^9.
|
|
50
|
+
"@types/node": "^22.19.17",
|
|
51
|
+
"autoprefixer": "^10.5.0",
|
|
52
|
+
"eslint": "^9.39.4",
|
|
53
53
|
"eslint-config-prettier": "^9.1.2",
|
|
54
54
|
"eslint-plugin-svelte": "^2.46.1",
|
|
55
55
|
"flowbite": "^2.5.2",
|
|
@@ -57,23 +57,23 @@
|
|
|
57
57
|
"flowbite-svelte-icons": "^2.3.0",
|
|
58
58
|
"globals": "^15.15.0",
|
|
59
59
|
"highlight.js": "^11.11.1",
|
|
60
|
-
"postcss": "^8.5.
|
|
61
|
-
"prettier": "^3.
|
|
62
|
-
"prettier-plugin-svelte": "^3.
|
|
60
|
+
"postcss": "^8.5.10",
|
|
61
|
+
"prettier": "^3.8.3",
|
|
62
|
+
"prettier-plugin-svelte": "^3.5.1",
|
|
63
63
|
"prettier-plugin-tailwindcss": "^0.6.14",
|
|
64
64
|
"publint": "^0.2.12",
|
|
65
65
|
"runatics": "^0.1.4",
|
|
66
66
|
"runes-meta-tags": "^0.4.5",
|
|
67
|
-
"svelte": "^5.
|
|
67
|
+
"svelte": "^5.55.4",
|
|
68
68
|
"svelte-animated-icons": "^0.7.1",
|
|
69
|
-
"svelte-check": "^4.
|
|
69
|
+
"svelte-check": "^4.4.6",
|
|
70
70
|
"svelte-lib-helpers": "^0.4.31",
|
|
71
71
|
"svelte-rune-highlight": "^0.5.15",
|
|
72
72
|
"tslib": "^2.8.1",
|
|
73
|
-
"tsx": "^4.
|
|
74
|
-
"typescript": "^5.9.
|
|
75
|
-
"typescript-eslint": "^8.
|
|
76
|
-
"vite": "^6.
|
|
73
|
+
"tsx": "^4.21.0",
|
|
74
|
+
"typescript": "^5.9.3",
|
|
75
|
+
"typescript-eslint": "^8.59.0",
|
|
76
|
+
"vite": "^6.4.2",
|
|
77
77
|
"vite-imagetools": "^7.1.1"
|
|
78
78
|
},
|
|
79
79
|
"peerDependencies": {
|
|
@@ -89,16 +89,16 @@
|
|
|
89
89
|
],
|
|
90
90
|
"type": "module",
|
|
91
91
|
"dependencies": {
|
|
92
|
-
"@floating-ui/dom": "^1.7.
|
|
92
|
+
"@floating-ui/dom": "^1.7.6",
|
|
93
93
|
"@skeletonlabs/floating-ui-svelte": "^0.3.9",
|
|
94
|
-
"@tailwindcss/postcss": "^4.
|
|
94
|
+
"@tailwindcss/postcss": "^4.2.4",
|
|
95
95
|
"apexcharts": "^3.54.1",
|
|
96
96
|
"clsx": "^2.1.1",
|
|
97
97
|
"deepmerge": "^4.3.1",
|
|
98
|
-
"svelte-multiselect": "^11.
|
|
99
|
-
"tailwind-merge": "^2.6.
|
|
98
|
+
"svelte-multiselect": "^11.7.0",
|
|
99
|
+
"tailwind-merge": "^2.6.1",
|
|
100
100
|
"tailwind-variants": "^0.3.1",
|
|
101
|
-
"tailwindcss": "^4.
|
|
101
|
+
"tailwindcss": "^4.2.4"
|
|
102
102
|
},
|
|
103
103
|
"exports": {
|
|
104
104
|
".": {
|