@immich/ui 0.58.0 → 0.58.1
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/dist/components/MultiSelect/MultiSelect.svelte +2 -4
- package/dist/components/MultiSelect/MultiSelect.svelte.d.ts +24 -3
- package/dist/components/Select/Select.svelte +2 -4
- package/dist/components/Select/Select.svelte.d.ts +24 -3
- package/dist/internal/Select.svelte +8 -12
- package/dist/internal/Select.svelte.d.ts +28 -9
- package/dist/types.d.ts +10 -10
- package/package.json +1 -1
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
<script lang="ts">
|
|
1
|
+
<script lang="ts" generics="T extends string">
|
|
2
2
|
import InternalSelect from '../../internal/Select.svelte';
|
|
3
3
|
import type { MultiSelectProps, SelectItem } from '../../types.js';
|
|
4
4
|
|
|
5
|
-
type T = SelectItem;
|
|
6
|
-
|
|
7
5
|
let { onChange, values = $bindable([]), ...restProps }: MultiSelectProps<T> = $props();
|
|
8
6
|
|
|
9
|
-
const handleChange = (items: T[]) => {
|
|
7
|
+
const handleChange = (items: SelectItem<T>[]) => {
|
|
10
8
|
onChange?.(items);
|
|
11
9
|
};
|
|
12
10
|
</script>
|
|
@@ -1,4 +1,25 @@
|
|
|
1
|
-
import type { MultiSelectProps
|
|
2
|
-
declare
|
|
3
|
-
|
|
1
|
+
import type { MultiSelectProps } from '../../types.js';
|
|
2
|
+
declare function $$render<T extends string>(): {
|
|
3
|
+
props: MultiSelectProps<T>;
|
|
4
|
+
exports: {};
|
|
5
|
+
bindings: "values";
|
|
6
|
+
slots: {};
|
|
7
|
+
events: {};
|
|
8
|
+
};
|
|
9
|
+
declare class __sveltets_Render<T extends string> {
|
|
10
|
+
props(): ReturnType<typeof $$render<T>>['props'];
|
|
11
|
+
events(): ReturnType<typeof $$render<T>>['events'];
|
|
12
|
+
slots(): ReturnType<typeof $$render<T>>['slots'];
|
|
13
|
+
bindings(): "values";
|
|
14
|
+
exports(): {};
|
|
15
|
+
}
|
|
16
|
+
interface $$IsomorphicComponent {
|
|
17
|
+
new <T extends string>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<T>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<T>['props']>, ReturnType<__sveltets_Render<T>['events']>, ReturnType<__sveltets_Render<T>['slots']>> & {
|
|
18
|
+
$$bindings?: ReturnType<__sveltets_Render<T>['bindings']>;
|
|
19
|
+
} & ReturnType<__sveltets_Render<T>['exports']>;
|
|
20
|
+
<T extends string>(internal: unknown, props: ReturnType<__sveltets_Render<T>['props']> & {}): ReturnType<__sveltets_Render<T>['exports']>;
|
|
21
|
+
z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
|
|
22
|
+
}
|
|
23
|
+
declare const MultiSelect: $$IsomorphicComponent;
|
|
24
|
+
type MultiSelect<T extends string> = InstanceType<typeof MultiSelect<T>>;
|
|
4
25
|
export default MultiSelect;
|
|
@@ -1,14 +1,12 @@
|
|
|
1
|
-
<script lang="ts">
|
|
1
|
+
<script lang="ts" generics="T extends string">
|
|
2
2
|
import InternalSelect from '../../internal/Select.svelte';
|
|
3
3
|
import type { SelectItem, SelectProps } from '../../types.js';
|
|
4
4
|
|
|
5
|
-
type T = SelectItem;
|
|
6
|
-
|
|
7
5
|
let { onChange, value = $bindable(), ...restProps }: SelectProps<T> = $props();
|
|
8
6
|
|
|
9
7
|
let values = $derived(value ? [value] : []);
|
|
10
8
|
|
|
11
|
-
const handleChange = (items: T[]) => {
|
|
9
|
+
const handleChange = (items: SelectItem<T>[]) => {
|
|
12
10
|
value = items[0];
|
|
13
11
|
onChange?.(value);
|
|
14
12
|
};
|
|
@@ -1,4 +1,25 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
declare
|
|
3
|
-
|
|
1
|
+
import type { SelectProps } from '../../types.js';
|
|
2
|
+
declare function $$render<T extends string>(): {
|
|
3
|
+
props: SelectProps<T>;
|
|
4
|
+
exports: {};
|
|
5
|
+
bindings: "value";
|
|
6
|
+
slots: {};
|
|
7
|
+
events: {};
|
|
8
|
+
};
|
|
9
|
+
declare class __sveltets_Render<T extends string> {
|
|
10
|
+
props(): ReturnType<typeof $$render<T>>['props'];
|
|
11
|
+
events(): ReturnType<typeof $$render<T>>['events'];
|
|
12
|
+
slots(): ReturnType<typeof $$render<T>>['slots'];
|
|
13
|
+
bindings(): "value";
|
|
14
|
+
exports(): {};
|
|
15
|
+
}
|
|
16
|
+
interface $$IsomorphicComponent {
|
|
17
|
+
new <T extends string>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<T>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<T>['props']>, ReturnType<__sveltets_Render<T>['events']>, ReturnType<__sveltets_Render<T>['slots']>> & {
|
|
18
|
+
$$bindings?: ReturnType<__sveltets_Render<T>['bindings']>;
|
|
19
|
+
} & ReturnType<__sveltets_Render<T>['exports']>;
|
|
20
|
+
<T extends string>(internal: unknown, props: ReturnType<__sveltets_Render<T>['props']> & {}): ReturnType<__sveltets_Render<T>['exports']>;
|
|
21
|
+
z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
|
|
22
|
+
}
|
|
23
|
+
declare const Select: $$IsomorphicComponent;
|
|
24
|
+
type Select<T extends string> = InstanceType<typeof Select<T>>;
|
|
4
25
|
export default Select;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<script lang="ts">
|
|
1
|
+
<script lang="ts" generics="T extends string">
|
|
2
2
|
import { getFieldContext } from '../common/context.svelte.js';
|
|
3
3
|
import Icon from '../components/Icon/Icon.svelte';
|
|
4
4
|
import IconButton from '../components/IconButton/IconButton.svelte';
|
|
@@ -10,13 +10,11 @@
|
|
|
10
10
|
import { Select } from 'bits-ui';
|
|
11
11
|
import { tv } from 'tailwind-variants';
|
|
12
12
|
|
|
13
|
-
type T = SelectItem;
|
|
14
|
-
|
|
15
13
|
type Props = {
|
|
16
14
|
multiple?: boolean;
|
|
17
|
-
values: T[];
|
|
18
|
-
asLabel?: (items: T[]) => string;
|
|
19
|
-
onChange?: (values: T[]) => void;
|
|
15
|
+
values: SelectItem<T>[];
|
|
16
|
+
asLabel?: (items: SelectItem<T>[]) => string;
|
|
17
|
+
onChange?: (values: SelectItem<T>[]) => void;
|
|
20
18
|
} & SelectCommonProps<T>;
|
|
21
19
|
|
|
22
20
|
let {
|
|
@@ -26,15 +24,15 @@
|
|
|
26
24
|
multiple = false,
|
|
27
25
|
values = $bindable([]),
|
|
28
26
|
onChange,
|
|
29
|
-
asLabel = (options: T[]) => options.map(({ label }) => label).join(', '),
|
|
27
|
+
asLabel = (options: SelectItem<T>[]) => options.map(({ label }) => label).join(', '),
|
|
30
28
|
placeholder,
|
|
31
29
|
class: className,
|
|
32
30
|
}: Props = $props();
|
|
33
31
|
|
|
34
|
-
const asOptions = (items: string[] | T[]) => {
|
|
32
|
+
const asOptions = (items: string[] | SelectItem<T>[]) => {
|
|
35
33
|
return items.map((item) => {
|
|
36
34
|
if (typeof item === 'string') {
|
|
37
|
-
return { value: item, label: item } as T
|
|
35
|
+
return { value: item, label: item } as SelectItem<T>;
|
|
38
36
|
}
|
|
39
37
|
|
|
40
38
|
const label = item.label ?? item.value;
|
|
@@ -73,9 +71,7 @@
|
|
|
73
71
|
const findOption = (value: string) => options.find((option) => option.value === value);
|
|
74
72
|
|
|
75
73
|
const onValueChange = (items: string[] | string) => {
|
|
76
|
-
values =
|
|
77
|
-
? ((items as string[]).map(findOption) as T[])
|
|
78
|
-
: [findOption(items as string) as T].filter(Boolean);
|
|
74
|
+
values = (Array.isArray(items) ? items : [items]).map(findOption).filter((item) => item !== undefined);
|
|
79
75
|
|
|
80
76
|
onChange?.(values);
|
|
81
77
|
};
|
|
@@ -1,12 +1,31 @@
|
|
|
1
1
|
import type { SelectCommonProps, SelectItem } from '../types.js';
|
|
2
2
|
import { Select } from 'bits-ui';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
} & SelectCommonProps<T>;
|
|
10
|
-
|
|
11
|
-
|
|
3
|
+
declare function $$render<T extends string>(): {
|
|
4
|
+
props: {
|
|
5
|
+
multiple?: boolean;
|
|
6
|
+
values: SelectItem<T>[];
|
|
7
|
+
asLabel?: (items: SelectItem<T>[]) => string;
|
|
8
|
+
onChange?: (values: SelectItem<T>[]) => void;
|
|
9
|
+
} & SelectCommonProps<T>;
|
|
10
|
+
exports: {};
|
|
11
|
+
bindings: "values";
|
|
12
|
+
slots: {};
|
|
13
|
+
events: {};
|
|
14
|
+
};
|
|
15
|
+
declare class __sveltets_Render<T extends string> {
|
|
16
|
+
props(): ReturnType<typeof $$render<T>>['props'];
|
|
17
|
+
events(): ReturnType<typeof $$render<T>>['events'];
|
|
18
|
+
slots(): ReturnType<typeof $$render<T>>['slots'];
|
|
19
|
+
bindings(): "values";
|
|
20
|
+
exports(): {};
|
|
21
|
+
}
|
|
22
|
+
interface $$IsomorphicComponent {
|
|
23
|
+
new <T extends string>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<T>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<T>['props']>, ReturnType<__sveltets_Render<T>['events']>, ReturnType<__sveltets_Render<T>['slots']>> & {
|
|
24
|
+
$$bindings?: ReturnType<__sveltets_Render<T>['bindings']>;
|
|
25
|
+
} & ReturnType<__sveltets_Render<T>['exports']>;
|
|
26
|
+
<T extends string>(internal: unknown, props: ReturnType<__sveltets_Render<T>['props']> & {}): ReturnType<__sveltets_Render<T>['exports']>;
|
|
27
|
+
z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
|
|
28
|
+
}
|
|
29
|
+
declare const Select: $$IsomorphicComponent;
|
|
30
|
+
type Select<T extends string> = InstanceType<typeof Select<T>>;
|
|
12
31
|
export default Select;
|
package/dist/types.d.ts
CHANGED
|
@@ -152,25 +152,25 @@ export type TextareaProps = {
|
|
|
152
152
|
shape?: Shape;
|
|
153
153
|
grow?: boolean;
|
|
154
154
|
} & HTMLTextareaAttributes;
|
|
155
|
-
export type SelectItem = {
|
|
155
|
+
export type SelectItem<T extends string = string> = {
|
|
156
156
|
label?: string;
|
|
157
|
-
value:
|
|
157
|
+
value: T;
|
|
158
158
|
disabled?: boolean;
|
|
159
159
|
};
|
|
160
|
-
export type SelectCommonProps<T extends
|
|
161
|
-
data: string[] | T[];
|
|
160
|
+
export type SelectCommonProps<T extends string> = {
|
|
161
|
+
data: string[] | SelectItem<T>[];
|
|
162
162
|
size?: Size;
|
|
163
163
|
shape?: Shape;
|
|
164
164
|
placeholder?: string;
|
|
165
165
|
class?: string;
|
|
166
166
|
};
|
|
167
|
-
export type SelectProps<T extends
|
|
168
|
-
value?: T
|
|
169
|
-
onChange?: (value: T) => void;
|
|
167
|
+
export type SelectProps<T extends string> = SelectCommonProps<T> & {
|
|
168
|
+
value?: SelectItem<T>;
|
|
169
|
+
onChange?: (value: SelectItem<T>) => void;
|
|
170
170
|
};
|
|
171
|
-
export type MultiSelectProps<T extends
|
|
172
|
-
values?: T[];
|
|
173
|
-
onChange?: (values: T[]) => void;
|
|
171
|
+
export type MultiSelectProps<T extends string> = SelectCommonProps<T> & {
|
|
172
|
+
values?: SelectItem<T>[];
|
|
173
|
+
onChange?: (values: SelectItem<T>[]) => void;
|
|
174
174
|
};
|
|
175
175
|
export type ToastId = {
|
|
176
176
|
id: string;
|