@human-kit/svelte-components 1.0.0-alpha.5 → 1.0.0-alpha.7
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/button/README.md +48 -0
- package/dist/button/TODO.md +13 -0
- package/dist/button/index.d.ts +5 -0
- package/dist/button/index.js +4 -0
- package/dist/button/index.parts.d.ts +1 -0
- package/dist/button/index.parts.js +1 -0
- package/dist/button/root/README.md +43 -0
- package/dist/button/root/button-root.svelte +362 -0
- package/dist/button/root/button-root.svelte.d.ts +21 -0
- package/dist/button/root/button-test.svelte +76 -0
- package/dist/button/root/button-test.svelte.d.ts +11 -0
- package/dist/calendar/index.d.ts +3 -3
- package/dist/calendar/index.js +3 -3
- package/dist/calendar/trigger-next/calendar-trigger-next.svelte +9 -4
- package/dist/calendar/trigger-next/calendar-trigger-next.svelte.d.ts +2 -1
- package/dist/calendar/trigger-previous/calendar-trigger-previous.svelte +9 -4
- package/dist/calendar/trigger-previous/calendar-trigger-previous.svelte.d.ts +2 -1
- package/dist/checkbox/index.d.ts +3 -3
- package/dist/checkbox/index.js +3 -3
- package/dist/clock/index.d.ts +5 -5
- package/dist/clock/index.js +5 -5
- package/dist/combobox/button/combobox-button.svelte +5 -4
- package/dist/combobox/index.d.ts +3 -3
- package/dist/combobox/index.js +3 -3
- package/dist/combobox/input/combobox-input.svelte +17 -2
- package/dist/combobox/list/combobox-listbox.svelte.d.ts +1 -1
- package/dist/combobox/popover/combobox-popover.svelte +47 -1
- package/dist/combobox/root/combobox.svelte +13 -0
- package/dist/combobox/root/context.d.ts +2 -0
- package/dist/combobox/tag-remove/combobox-tag-remove.svelte +3 -2
- package/dist/datepicker/index.d.ts +3 -3
- package/dist/datepicker/index.js +3 -3
- package/dist/datepicker/trigger/date-picker-trigger.svelte +5 -5
- package/dist/dialog/index.d.ts +3 -3
- package/dist/dialog/index.js +2 -2
- package/dist/index.d.ts +31 -29
- package/dist/index.js +31 -29
- package/dist/listbox/index.d.ts +3 -3
- package/dist/listbox/index.js +3 -3
- package/dist/listbox/item/README.md +2 -1
- package/dist/listbox/item/listbox-item.svelte +129 -1
- package/dist/listbox/item/listbox-item.svelte.d.ts +2 -0
- package/dist/listbox/root/listbox-test.svelte +14 -2
- package/dist/listbox/root/listbox-test.svelte.d.ts +1 -0
- package/dist/listbox/root/listbox.svelte.d.ts +2 -2
- package/dist/popover/index.d.ts +3 -3
- package/dist/popover/index.js +3 -3
- package/dist/popover/trigger/popover-trigger-button.svelte +4 -3
- package/dist/table/index.d.ts +3 -3
- package/dist/table/index.js +3 -3
- package/dist/table/root/table-root.svelte.d.ts +1 -1
- package/dist/timepicker/index.d.ts +5 -5
- package/dist/timepicker/index.js +5 -5
- package/dist/timepicker/trigger/time-picker-trigger.svelte +5 -5
- package/package.json +6 -1
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
### ListBox.Item
|
|
6
6
|
|
|
7
7
|
Name: `ListBox.Item`
|
|
8
|
-
Description: Selectable option element with built-in selected, focused, hovered, and disabled states.
|
|
8
|
+
Description: Selectable option element with built-in selected, focused, hovered, pressed, and disabled states.
|
|
9
9
|
|
|
10
10
|
| Prop | Type | Default | Description |
|
|
11
11
|
| ---------------------- | -------------------------------- | -------------------- | -------------------------------------------------------- |
|
|
@@ -21,4 +21,5 @@ Description: Selectable option element with built-in selected, focused, hovered,
|
|
|
21
21
|
| `onResolvedTextValue` | `(label: string) => void` | `undefined` | Called when item text value is resolved. |
|
|
22
22
|
| `scrollOnFocus` | `boolean` | `false` | Scrolls item into view when focused. |
|
|
23
23
|
| `isParentDisabled` | `boolean` | `false` | Additional disabled state inherited from parent wrapper. |
|
|
24
|
+
| `pressed` | `boolean` | `undefined` | Forces the visual pressed state from parent composition. |
|
|
24
25
|
| `...restProps` | `HTMLAttributes<HTMLDivElement>` | `-` | Additional option attributes. |
|
|
@@ -34,6 +34,8 @@
|
|
|
34
34
|
scrollOnFocus?: boolean;
|
|
35
35
|
/** Additional disabled state from parent. */
|
|
36
36
|
isParentDisabled?: boolean;
|
|
37
|
+
/** Override the visual pressed state. When provided, this value is used instead of internal press tracking. */
|
|
38
|
+
pressed?: boolean;
|
|
37
39
|
};
|
|
38
40
|
|
|
39
41
|
let {
|
|
@@ -50,6 +52,7 @@
|
|
|
50
52
|
onResolvedTextValue,
|
|
51
53
|
scrollOnFocus = false,
|
|
52
54
|
isParentDisabled = false,
|
|
55
|
+
pressed: pressedOverride,
|
|
53
56
|
...restProps
|
|
54
57
|
}: ListBoxItemProps = $props();
|
|
55
58
|
|
|
@@ -59,6 +62,8 @@
|
|
|
59
62
|
let isSelected = $state(false);
|
|
60
63
|
let isFocused = $state(false);
|
|
61
64
|
let isHovered = $state(false);
|
|
65
|
+
let isPressed = $state(false);
|
|
66
|
+
let pressedKey: 'Enter' | 'Space' | null = $state(null);
|
|
62
67
|
|
|
63
68
|
// Focus: use override if provided, otherwise use internal state
|
|
64
69
|
const isFocusedComputed = $derived(
|
|
@@ -67,6 +72,11 @@
|
|
|
67
72
|
const isDisabledComputed = $derived(
|
|
68
73
|
disabled || listboxCtx.disabledIds.has(id) || isParentDisabled
|
|
69
74
|
);
|
|
75
|
+
const isPressedComputed = $derived(
|
|
76
|
+
pressedOverride !== undefined
|
|
77
|
+
? Boolean(pressedOverride) && !isDisabledComputed
|
|
78
|
+
: isPressed && !isDisabledComputed
|
|
79
|
+
);
|
|
70
80
|
|
|
71
81
|
// ID: use custom if provided, otherwise generate
|
|
72
82
|
const uniqueId = $derived(customId ?? `listbox-item-${id}`);
|
|
@@ -113,6 +123,17 @@
|
|
|
113
123
|
}
|
|
114
124
|
});
|
|
115
125
|
|
|
126
|
+
$effect(() => {
|
|
127
|
+
if (!isDisabledComputed) return;
|
|
128
|
+
clearPressedState();
|
|
129
|
+
isHovered = false;
|
|
130
|
+
});
|
|
131
|
+
|
|
132
|
+
function clearPressedState() {
|
|
133
|
+
isPressed = false;
|
|
134
|
+
pressedKey = null;
|
|
135
|
+
}
|
|
136
|
+
|
|
116
137
|
function handleClick() {
|
|
117
138
|
if (isDisabledComputed) return;
|
|
118
139
|
|
|
@@ -135,6 +156,42 @@
|
|
|
135
156
|
|
|
136
157
|
function handleBlur() {}
|
|
137
158
|
|
|
159
|
+
function handlePointerDown(event: PointerEvent) {
|
|
160
|
+
if (isDisabledComputed) {
|
|
161
|
+
event.preventDefault();
|
|
162
|
+
clearPressedState();
|
|
163
|
+
return;
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
if (event.button !== 0) return;
|
|
167
|
+
isPressed = true;
|
|
168
|
+
pressedKey = null;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
function handlePointerUp(event: PointerEvent) {
|
|
172
|
+
if (event.button !== 0) return;
|
|
173
|
+
isPressed = false;
|
|
174
|
+
pressedKey = null;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
function handlePointerCancel() {
|
|
178
|
+
clearPressedState();
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
function handlePointerEnter(event: PointerEvent) {
|
|
182
|
+
if (isDisabledComputed) return;
|
|
183
|
+
|
|
184
|
+
if ((event.buttons & 1) === 1 && pressedKey === null) {
|
|
185
|
+
isPressed = true;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
function handlePointerLeave() {
|
|
190
|
+
if (pressedKey === null) {
|
|
191
|
+
isPressed = false;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
|
|
138
195
|
function handleMouseEnter() {
|
|
139
196
|
if (!isDisabledComputed) {
|
|
140
197
|
isHovered = true;
|
|
@@ -143,17 +200,80 @@
|
|
|
143
200
|
|
|
144
201
|
function handleMouseLeave() {
|
|
145
202
|
isHovered = false;
|
|
203
|
+
if (pressedKey === null) {
|
|
204
|
+
isPressed = false;
|
|
205
|
+
}
|
|
146
206
|
}
|
|
147
207
|
|
|
148
208
|
// Keyboard is handled by parent container
|
|
149
|
-
function handleKeydown() {
|
|
209
|
+
function handleKeydown(event: KeyboardEvent) {
|
|
210
|
+
const key =
|
|
211
|
+
event.key === 'Enter'
|
|
212
|
+
? 'Enter'
|
|
213
|
+
: event.key === ' ' || event.key === 'Spacebar'
|
|
214
|
+
? 'Space'
|
|
215
|
+
: null;
|
|
216
|
+
|
|
217
|
+
if (!key) return;
|
|
218
|
+
|
|
219
|
+
if (isDisabledComputed) {
|
|
220
|
+
event.preventDefault();
|
|
221
|
+
clearPressedState();
|
|
222
|
+
return;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
if (event.repeat && isPressed && pressedKey === key) return;
|
|
226
|
+
|
|
227
|
+
isPressed = true;
|
|
228
|
+
pressedKey = key;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
function handleKeyup(event: KeyboardEvent) {
|
|
232
|
+
const key =
|
|
233
|
+
event.key === 'Enter'
|
|
234
|
+
? 'Enter'
|
|
235
|
+
: event.key === ' ' || event.key === 'Spacebar'
|
|
236
|
+
? 'Space'
|
|
237
|
+
: null;
|
|
238
|
+
|
|
239
|
+
if (!key) return;
|
|
240
|
+
|
|
241
|
+
if (isDisabledComputed) {
|
|
242
|
+
event.preventDefault();
|
|
243
|
+
clearPressedState();
|
|
244
|
+
return;
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
if (pressedKey === key) {
|
|
248
|
+
clearPressedState();
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
|
|
150
252
|
function handleMouseDown(event: MouseEvent) {
|
|
151
253
|
// Prevent focus stealing when used in ComboBox (disableFocusHandling=true)
|
|
152
254
|
// This keeps the focus on the input while allowing click selection
|
|
255
|
+
if (isDisabledComputed) {
|
|
256
|
+
event.preventDefault();
|
|
257
|
+
clearPressedState();
|
|
258
|
+
return;
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
if (event.button === 0) {
|
|
262
|
+
isPressed = true;
|
|
263
|
+
pressedKey = null;
|
|
264
|
+
}
|
|
265
|
+
|
|
153
266
|
if (disableFocusHandling) {
|
|
154
267
|
event.preventDefault();
|
|
155
268
|
}
|
|
156
269
|
}
|
|
270
|
+
|
|
271
|
+
function handleMouseUp(event: MouseEvent) {
|
|
272
|
+
if (event.button !== 0) return;
|
|
273
|
+
if (pressedKey === null) {
|
|
274
|
+
clearPressedState();
|
|
275
|
+
}
|
|
276
|
+
}
|
|
157
277
|
</script>
|
|
158
278
|
|
|
159
279
|
<div
|
|
@@ -171,9 +291,17 @@
|
|
|
171
291
|
data-disabled={isDisabledComputed || undefined}
|
|
172
292
|
data-focused={isFocusedComputed || undefined}
|
|
173
293
|
data-hovered={isHovered || undefined}
|
|
294
|
+
data-pressed={isPressedComputed || undefined}
|
|
295
|
+
onpointerdown={handlePointerDown}
|
|
296
|
+
onpointerup={handlePointerUp}
|
|
297
|
+
onpointercancel={handlePointerCancel}
|
|
298
|
+
onpointerenter={handlePointerEnter}
|
|
299
|
+
onpointerleave={handlePointerLeave}
|
|
174
300
|
onmousedown={handleMouseDown}
|
|
301
|
+
onmouseup={handleMouseUp}
|
|
175
302
|
onclick={handleClick}
|
|
176
303
|
onkeydown={handleKeydown}
|
|
304
|
+
onkeyup={handleKeyup}
|
|
177
305
|
onfocus={handleFocus}
|
|
178
306
|
onblur={handleBlur}
|
|
179
307
|
onmouseenter={handleMouseEnter}
|
|
@@ -28,6 +28,8 @@ type ListBoxItemProps = Omit<HTMLAttributes<HTMLDivElement>, 'id' | 'children'>
|
|
|
28
28
|
scrollOnFocus?: boolean;
|
|
29
29
|
/** Additional disabled state from parent. */
|
|
30
30
|
isParentDisabled?: boolean;
|
|
31
|
+
/** Override the visual pressed state. When provided, this value is used instead of internal press tracking. */
|
|
32
|
+
pressed?: boolean;
|
|
31
33
|
};
|
|
32
34
|
declare const ListboxItem: import("svelte").Component<ListBoxItemProps, {}, "">;
|
|
33
35
|
type ListboxItem = ReturnType<typeof ListboxItem>;
|
|
@@ -5,9 +5,17 @@
|
|
|
5
5
|
selectionMode?: 'single' | 'multiple';
|
|
6
6
|
selectionBehavior?: 'toggle' | 'replace';
|
|
7
7
|
disabledIds?: Iterable<string | number>;
|
|
8
|
+
pressedIds?: Iterable<string | number>;
|
|
8
9
|
};
|
|
9
10
|
|
|
10
|
-
let {
|
|
11
|
+
let {
|
|
12
|
+
selectionMode = 'single',
|
|
13
|
+
selectionBehavior = 'toggle',
|
|
14
|
+
disabledIds,
|
|
15
|
+
pressedIds
|
|
16
|
+
}: Props = $props();
|
|
17
|
+
|
|
18
|
+
const pressedIdSet = $derived(new Set(pressedIds ?? []));
|
|
11
19
|
|
|
12
20
|
const fruits = [
|
|
13
21
|
{ id: 'apple', name: 'Apple' },
|
|
@@ -20,7 +28,11 @@
|
|
|
20
28
|
|
|
21
29
|
<ListBox.Root {selectionMode} {selectionBehavior} {disabledIds} aria-label="Fruits list">
|
|
22
30
|
{#each fruits as fruit (fruit.id)}
|
|
23
|
-
<ListBox.Item
|
|
31
|
+
<ListBox.Item
|
|
32
|
+
id={fruit.id}
|
|
33
|
+
textValue={fruit.name}
|
|
34
|
+
pressed={pressedIdSet.has(fruit.id) ? true : undefined}
|
|
35
|
+
>
|
|
24
36
|
{fruit.name}
|
|
25
37
|
</ListBox.Item>
|
|
26
38
|
{/each}
|
|
@@ -2,6 +2,7 @@ type Props = {
|
|
|
2
2
|
selectionMode?: 'single' | 'multiple';
|
|
3
3
|
selectionBehavior?: 'toggle' | 'replace';
|
|
4
4
|
disabledIds?: Iterable<string | number>;
|
|
5
|
+
pressedIds?: Iterable<string | number>;
|
|
5
6
|
};
|
|
6
7
|
declare const ListboxTest: import("svelte").Component<Props, {}, "">;
|
|
7
8
|
type ListboxTest = ReturnType<typeof ListboxTest>;
|
|
@@ -31,7 +31,7 @@ declare function $$render<T extends object = object>(): {
|
|
|
31
31
|
element?: HTMLElement;
|
|
32
32
|
};
|
|
33
33
|
exports: {};
|
|
34
|
-
bindings: "value" | "
|
|
34
|
+
bindings: "value" | "element" | "context";
|
|
35
35
|
slots: {};
|
|
36
36
|
events: {};
|
|
37
37
|
};
|
|
@@ -39,7 +39,7 @@ declare class __sveltets_Render<T extends object = object> {
|
|
|
39
39
|
props(): ReturnType<typeof $$render<T>>['props'];
|
|
40
40
|
events(): ReturnType<typeof $$render<T>>['events'];
|
|
41
41
|
slots(): ReturnType<typeof $$render<T>>['slots'];
|
|
42
|
-
bindings(): "value" | "
|
|
42
|
+
bindings(): "value" | "element" | "context";
|
|
43
43
|
exports(): {};
|
|
44
44
|
}
|
|
45
45
|
interface $$IsomorphicComponent {
|
package/dist/popover/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export * as Popover from './index.parts.
|
|
1
|
+
export * as Popover from './index.parts.js';
|
|
2
2
|
export { default as PopoverRoot } from './root/popover-root.svelte';
|
|
3
3
|
export { default as PopoverContent } from './content/popover-content.svelte';
|
|
4
4
|
export { default as PopoverTrigger } from './trigger/popover-trigger.svelte';
|
|
5
5
|
export { default as PopoverTriggerButton } from './trigger/popover-trigger-button.svelte';
|
|
6
|
-
export { getPopoverContext, setPopoverContext, type PopoverContext, type PopoverCanonicalCloseReason, type PopoverCloseReason, type PopoverOpenReason, type PopoverChangeReason, type PopoverOpenChangeDetails } from './root/context.
|
|
7
|
-
import * as PopoverParts from './index.parts.
|
|
6
|
+
export { getPopoverContext, setPopoverContext, type PopoverContext, type PopoverCanonicalCloseReason, type PopoverCloseReason, type PopoverOpenReason, type PopoverChangeReason, type PopoverOpenChangeDetails } from './root/context.js';
|
|
7
|
+
import * as PopoverParts from './index.parts.js';
|
|
8
8
|
export default PopoverParts;
|
package/dist/popover/index.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
// Namespace export for component composition: <Popover.Root>, <Popover.Trigger>, etc.
|
|
2
|
-
export * as Popover from './index.parts.
|
|
2
|
+
export * as Popover from './index.parts.js';
|
|
3
3
|
// Direct named exports for individual imports
|
|
4
4
|
export { default as PopoverRoot } from './root/popover-root.svelte';
|
|
5
5
|
export { default as PopoverContent } from './content/popover-content.svelte';
|
|
6
6
|
export { default as PopoverTrigger } from './trigger/popover-trigger.svelte';
|
|
7
7
|
export { default as PopoverTriggerButton } from './trigger/popover-trigger-button.svelte';
|
|
8
8
|
// Context and types
|
|
9
|
-
export { getPopoverContext, setPopoverContext } from './root/context.
|
|
9
|
+
export { getPopoverContext, setPopoverContext } from './root/context.js';
|
|
10
10
|
// Default export as namespace object
|
|
11
|
-
import * as PopoverParts from './index.parts.
|
|
11
|
+
import * as PopoverParts from './index.parts.js';
|
|
12
12
|
export default PopoverParts;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import type { Snippet } from 'svelte';
|
|
3
3
|
import type { HTMLButtonAttributes } from 'svelte/elements';
|
|
4
|
+
import { ButtonRoot } from '../../button/index.js';
|
|
4
5
|
import { getPopoverContext } from '../root/context';
|
|
5
6
|
|
|
6
7
|
type PopoverTriggerButtonProps = Omit<
|
|
@@ -30,8 +31,8 @@
|
|
|
30
31
|
}
|
|
31
32
|
</script>
|
|
32
33
|
|
|
33
|
-
<
|
|
34
|
-
bind:
|
|
34
|
+
<ButtonRoot
|
|
35
|
+
bind:element={buttonRef}
|
|
35
36
|
class={className}
|
|
36
37
|
type="button"
|
|
37
38
|
aria-expanded={ctx?.isOpen ?? false}
|
|
@@ -42,4 +43,4 @@
|
|
|
42
43
|
{#if children}
|
|
43
44
|
{@render children()}
|
|
44
45
|
{/if}
|
|
45
|
-
</
|
|
46
|
+
</ButtonRoot>
|
package/dist/table/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * as Table from './index.parts.
|
|
1
|
+
export * as Table from './index.parts.js';
|
|
2
2
|
export { default as TableRoot } from './root/table-root.svelte';
|
|
3
3
|
export { default as TableColumn } from './column/table-column.svelte';
|
|
4
4
|
export { default as TableHeader } from './header/table-header.svelte';
|
|
@@ -11,6 +11,6 @@ export { default as TableColumnResizer } from './column-resizer/table-column-res
|
|
|
11
11
|
export { default as TableCheckbox } from './checkbox/table-checkbox.svelte';
|
|
12
12
|
export { default as TableCheckboxIndicator } from './checkbox-indicator/table-checkbox-indicator.svelte';
|
|
13
13
|
export { default as TableCell } from './cell/table-cell.svelte';
|
|
14
|
-
export { createTableContext, getTableContext, setTableContext, useTableContext, getTableSectionContext, setTableSectionContext, useTableSectionContext, getTableRowContext, setTableRowContext, useTableRowContext, getTableColumnContext, setTableColumnContext, useTableColumnContext, type TableContext, type TableSelectionBehavior, type TableSelectionCheckboxState, type TableSelectionKey, type TableSelectionMode, type TableSortDirection, type TableSortDescriptor, type TableColumnWidth, type TableGridCoord, type TableColumnRegistration, type TableSectionKind, type TableSectionContext, type TableRowContext, type TableColumnContext, type CreateTableContextOptions } from './root/context';
|
|
15
|
-
import * as TableParts from './index.parts.
|
|
14
|
+
export { createTableContext, getTableContext, setTableContext, useTableContext, getTableSectionContext, setTableSectionContext, useTableSectionContext, getTableRowContext, setTableRowContext, useTableRowContext, getTableColumnContext, setTableColumnContext, useTableColumnContext, type TableContext, type TableSelectionBehavior, type TableSelectionCheckboxState, type TableSelectionKey, type TableSelectionMode, type TableSortDirection, type TableSortDescriptor, type TableColumnWidth, type TableGridCoord, type TableColumnRegistration, type TableSectionKind, type TableSectionContext, type TableRowContext, type TableColumnContext, type CreateTableContextOptions } from './root/context.js';
|
|
15
|
+
import * as TableParts from './index.parts.js';
|
|
16
16
|
export default TableParts;
|
package/dist/table/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * as Table from './index.parts.
|
|
1
|
+
export * as Table from './index.parts.js';
|
|
2
2
|
export { default as TableRoot } from './root/table-root.svelte';
|
|
3
3
|
export { default as TableColumn } from './column/table-column.svelte';
|
|
4
4
|
export { default as TableHeader } from './header/table-header.svelte';
|
|
@@ -11,6 +11,6 @@ export { default as TableColumnResizer } from './column-resizer/table-column-res
|
|
|
11
11
|
export { default as TableCheckbox } from './checkbox/table-checkbox.svelte';
|
|
12
12
|
export { default as TableCheckboxIndicator } from './checkbox-indicator/table-checkbox-indicator.svelte';
|
|
13
13
|
export { default as TableCell } from './cell/table-cell.svelte';
|
|
14
|
-
export { createTableContext, getTableContext, setTableContext, useTableContext, getTableSectionContext, setTableSectionContext, useTableSectionContext, getTableRowContext, setTableRowContext, useTableRowContext, getTableColumnContext, setTableColumnContext, useTableColumnContext } from './root/context';
|
|
15
|
-
import * as TableParts from './index.parts.
|
|
14
|
+
export { createTableContext, getTableContext, setTableContext, useTableContext, getTableSectionContext, setTableSectionContext, useTableSectionContext, getTableRowContext, setTableRowContext, useTableRowContext, getTableColumnContext, setTableColumnContext, useTableColumnContext } from './root/context.js';
|
|
15
|
+
import * as TableParts from './index.parts.js';
|
|
16
16
|
export default TableParts;
|
|
@@ -24,6 +24,6 @@ type TableRootProps = Omit<HTMLAttributes<HTMLTableElement>, 'children'> & {
|
|
|
24
24
|
context?: TableContext;
|
|
25
25
|
element?: HTMLTableElement;
|
|
26
26
|
};
|
|
27
|
-
declare const TableRoot: import("svelte").Component<TableRootProps, {}, "
|
|
27
|
+
declare const TableRoot: import("svelte").Component<TableRootProps, {}, "element" | "context" | "hiddenColumns" | "selectedKeys" | "sortDescriptor" | "columnWidths">;
|
|
28
28
|
type TableRoot = ReturnType<typeof TableRoot>;
|
|
29
29
|
export default TableRoot;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * as TimePicker from './index.parts.
|
|
1
|
+
export * as TimePicker from './index.parts.js';
|
|
2
2
|
export { default as TimePickerRoot } from './root/time-picker-root.svelte';
|
|
3
3
|
export { default as TimePickerInput } from './input/time-picker-input.svelte';
|
|
4
4
|
export { default as TimePickerSegment } from './segment/time-picker-segment.svelte';
|
|
@@ -7,8 +7,8 @@ export { default as TimePickerPopover } from './popover/time-picker-popover.svel
|
|
|
7
7
|
export { default as TimePickerClock } from './clock/time-picker-clock.svelte';
|
|
8
8
|
export { default as TimePickerWheelColumn } from '../clock/wheel-column/clock-wheel-column.svelte';
|
|
9
9
|
export { default as TimePickerWheelItem } from '../clock/wheel-item/clock-wheel-item.svelte';
|
|
10
|
-
export { getTimePickerContext, setTimePickerContext, useTimePickerContext, type TimePickerContext, type TimePickerOpenChangeDetails, type TimePickerOpenChangeReason, type TimePickerSegmentPart, type TimePickerSegmentType, type TimePickerEditableSegmentType } from './root/context.
|
|
11
|
-
export { type TimePickerGranularity, type TimePickerHourCycle, type TimePickerTimeValue } from './root/time-utils';
|
|
12
|
-
export { type ClockColumnInfo } from '../clock/root/resolve-visible-columns';
|
|
13
|
-
import * as TimePickerParts from './index.parts.
|
|
10
|
+
export { getTimePickerContext, setTimePickerContext, useTimePickerContext, type TimePickerContext, type TimePickerOpenChangeDetails, type TimePickerOpenChangeReason, type TimePickerSegmentPart, type TimePickerSegmentType, type TimePickerEditableSegmentType } from './root/context.js';
|
|
11
|
+
export { type TimePickerGranularity, type TimePickerHourCycle, type TimePickerTimeValue } from './root/time-utils.js';
|
|
12
|
+
export { type ClockColumnInfo } from '../clock/root/resolve-visible-columns.js';
|
|
13
|
+
import * as TimePickerParts from './index.parts.js';
|
|
14
14
|
export default TimePickerParts;
|
package/dist/timepicker/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * as TimePicker from './index.parts.
|
|
1
|
+
export * as TimePicker from './index.parts.js';
|
|
2
2
|
export { default as TimePickerRoot } from './root/time-picker-root.svelte';
|
|
3
3
|
export { default as TimePickerInput } from './input/time-picker-input.svelte';
|
|
4
4
|
export { default as TimePickerSegment } from './segment/time-picker-segment.svelte';
|
|
@@ -7,8 +7,8 @@ export { default as TimePickerPopover } from './popover/time-picker-popover.svel
|
|
|
7
7
|
export { default as TimePickerClock } from './clock/time-picker-clock.svelte';
|
|
8
8
|
export { default as TimePickerWheelColumn } from '../clock/wheel-column/clock-wheel-column.svelte';
|
|
9
9
|
export { default as TimePickerWheelItem } from '../clock/wheel-item/clock-wheel-item.svelte';
|
|
10
|
-
export { getTimePickerContext, setTimePickerContext, useTimePickerContext } from './root/context.
|
|
11
|
-
export {} from './root/time-utils';
|
|
12
|
-
export {} from '../clock/root/resolve-visible-columns';
|
|
13
|
-
import * as TimePickerParts from './index.parts.
|
|
10
|
+
export { getTimePickerContext, setTimePickerContext, useTimePickerContext } from './root/context.js';
|
|
11
|
+
export {} from './root/time-utils.js';
|
|
12
|
+
export {} from '../clock/root/resolve-visible-columns.js';
|
|
13
|
+
import * as TimePickerParts from './index.parts.js';
|
|
14
14
|
export default TimePickerParts;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import type { Snippet } from 'svelte';
|
|
3
3
|
import type { HTMLButtonAttributes } from 'svelte/elements';
|
|
4
|
+
import { ButtonRoot } from '../../button/index.js';
|
|
4
5
|
import { useTimePickerContext } from '../root/context';
|
|
5
6
|
import {
|
|
6
7
|
shouldShowFocusVisible,
|
|
@@ -94,14 +95,13 @@
|
|
|
94
95
|
</script>
|
|
95
96
|
|
|
96
97
|
{#if !timePicker.isReadOnly}
|
|
97
|
-
<
|
|
98
|
-
bind:
|
|
98
|
+
<ButtonRoot
|
|
99
|
+
bind:element={buttonRef}
|
|
99
100
|
type="button"
|
|
100
|
-
|
|
101
|
+
isDisabled={timePicker.isDisabled}
|
|
101
102
|
class={className}
|
|
102
103
|
aria-haspopup="dialog"
|
|
103
104
|
aria-expanded={timePicker.open}
|
|
104
|
-
data-disabled={timePicker.isDisabled || undefined}
|
|
105
105
|
data-focused={isFocused || undefined}
|
|
106
106
|
data-focus-visible={isFocused && timePicker.focusVisible ? 'true' : undefined}
|
|
107
107
|
{...restProps}
|
|
@@ -118,5 +118,5 @@
|
|
|
118
118
|
{#if children}
|
|
119
119
|
{@render children()}
|
|
120
120
|
{/if}
|
|
121
|
-
</
|
|
121
|
+
</ButtonRoot>
|
|
122
122
|
{/if}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@human-kit/svelte-components",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.7",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"svelte": "./dist/index.js",
|
|
@@ -11,6 +11,11 @@
|
|
|
11
11
|
"svelte": "./dist/index.js",
|
|
12
12
|
"default": "./dist/index.js"
|
|
13
13
|
},
|
|
14
|
+
"./button": {
|
|
15
|
+
"types": "./dist/button/index.d.ts",
|
|
16
|
+
"svelte": "./dist/button/index.js",
|
|
17
|
+
"default": "./dist/button/index.js"
|
|
18
|
+
},
|
|
14
19
|
"./checkbox": {
|
|
15
20
|
"types": "./dist/checkbox/index.d.ts",
|
|
16
21
|
"svelte": "./dist/checkbox/index.js",
|