@cloudvoyant/helix-svelte 0.12.0 → 0.13.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/dist/Input.svelte +17 -0
- package/dist/Input.svelte.d.ts +8 -0
- package/dist/Textarea.svelte +14 -0
- package/dist/Textarea.svelte.d.ts +4 -0
- package/dist/checkbox/Checkbox.svelte +23 -0
- package/dist/checkbox/Checkbox.svelte.d.ts +8 -0
- package/dist/checkbox/CheckboxContext.svelte.d.ts +1 -0
- package/dist/checkbox/CheckboxContext.svelte.js +3 -0
- package/dist/checkbox/CheckboxControl.svelte +17 -0
- package/dist/checkbox/CheckboxControl.svelte.d.ts +4 -0
- package/dist/checkbox/CheckboxGroup.svelte +14 -0
- package/dist/checkbox/CheckboxGroup.svelte.d.ts +4 -0
- package/dist/checkbox/CheckboxIndicator.svelte +14 -0
- package/dist/checkbox/CheckboxIndicator.svelte.d.ts +4 -0
- package/dist/checkbox/CheckboxLabel.svelte +14 -0
- package/dist/checkbox/CheckboxLabel.svelte.d.ts +4 -0
- package/dist/checkbox/index.d.ts +6 -0
- package/dist/checkbox/index.js +7 -0
- package/dist/combobox/Combobox.svelte +25 -0
- package/dist/combobox/Combobox.svelte.d.ts +9 -0
- package/dist/combobox/ComboboxClear.svelte +14 -0
- package/dist/combobox/ComboboxClear.svelte.d.ts +4 -0
- package/dist/combobox/ComboboxContent.svelte +19 -0
- package/dist/combobox/ComboboxContent.svelte.d.ts +4 -0
- package/dist/combobox/ComboboxContext.svelte.d.ts +1 -0
- package/dist/combobox/ComboboxContext.svelte.js +3 -0
- package/dist/combobox/ComboboxControl.svelte +14 -0
- package/dist/combobox/ComboboxControl.svelte.d.ts +4 -0
- package/dist/combobox/ComboboxEmpty.svelte +18 -0
- package/dist/combobox/ComboboxEmpty.svelte.d.ts +4 -0
- package/dist/combobox/ComboboxInput.svelte +17 -0
- package/dist/combobox/ComboboxInput.svelte.d.ts +8 -0
- package/dist/combobox/ComboboxItem.svelte +22 -0
- package/dist/combobox/ComboboxItem.svelte.d.ts +10 -0
- package/dist/combobox/ComboboxItemGroup.svelte +11 -0
- package/dist/combobox/ComboboxItemGroup.svelte.d.ts +4 -0
- package/dist/combobox/ComboboxItemGroupLabel.svelte +14 -0
- package/dist/combobox/ComboboxItemGroupLabel.svelte.d.ts +4 -0
- package/dist/combobox/ComboboxItemIndicator.svelte +14 -0
- package/dist/combobox/ComboboxItemIndicator.svelte.d.ts +4 -0
- package/dist/combobox/ComboboxItemText.svelte +11 -0
- package/dist/combobox/ComboboxItemText.svelte.d.ts +4 -0
- package/dist/combobox/ComboboxList.svelte +14 -0
- package/dist/combobox/ComboboxList.svelte.d.ts +4 -0
- package/dist/combobox/ComboboxTrigger.svelte +14 -0
- package/dist/combobox/ComboboxTrigger.svelte.d.ts +4 -0
- package/dist/combobox/index.d.ts +14 -0
- package/dist/combobox/index.js +15 -0
- package/dist/field/Field.svelte +14 -0
- package/dist/field/Field.svelte.d.ts +4 -0
- package/dist/field/FieldContext.svelte.d.ts +1 -0
- package/dist/field/FieldContext.svelte.js +3 -0
- package/dist/field/FieldError.svelte +14 -0
- package/dist/field/FieldError.svelte.d.ts +4 -0
- package/dist/field/FieldHelper.svelte +14 -0
- package/dist/field/FieldHelper.svelte.d.ts +4 -0
- package/dist/field/FieldLabel.svelte +14 -0
- package/dist/field/FieldLabel.svelte.d.ts +4 -0
- package/dist/field/FieldRequiredIndicator.svelte +14 -0
- package/dist/field/FieldRequiredIndicator.svelte.d.ts +4 -0
- package/dist/field/FieldSet.svelte +14 -0
- package/dist/field/FieldSet.svelte.d.ts +4 -0
- package/dist/field/FieldSetError.svelte +14 -0
- package/dist/field/FieldSetError.svelte.d.ts +4 -0
- package/dist/field/FieldSetHelper.svelte +14 -0
- package/dist/field/FieldSetHelper.svelte.d.ts +4 -0
- package/dist/field/FieldSetLegend.svelte +14 -0
- package/dist/field/FieldSetLegend.svelte.d.ts +4 -0
- package/dist/field/index.d.ts +10 -0
- package/dist/field/index.js +11 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.js +9 -0
- package/dist/number-input/NumberInput.svelte +14 -0
- package/dist/number-input/NumberInput.svelte.d.ts +4 -0
- package/dist/number-input/NumberInputContext.svelte.d.ts +1 -0
- package/dist/number-input/NumberInputContext.svelte.js +3 -0
- package/dist/number-input/NumberInputControl.svelte +14 -0
- package/dist/number-input/NumberInputControl.svelte.d.ts +4 -0
- package/dist/number-input/NumberInputDecrement.svelte +14 -0
- package/dist/number-input/NumberInputDecrement.svelte.d.ts +4 -0
- package/dist/number-input/NumberInputIncrement.svelte +14 -0
- package/dist/number-input/NumberInputIncrement.svelte.d.ts +4 -0
- package/dist/number-input/NumberInputInput.svelte +12 -0
- package/dist/number-input/NumberInputInput.svelte.d.ts +4 -0
- package/dist/number-input/index.d.ts +6 -0
- package/dist/number-input/index.js +7 -0
- package/dist/select/Select.svelte +70 -0
- package/dist/select/Select.svelte.d.ts +11 -0
- package/dist/select/SelectClearTrigger.svelte +14 -0
- package/dist/select/SelectClearTrigger.svelte.d.ts +4 -0
- package/dist/select/SelectContent.svelte +19 -0
- package/dist/select/SelectContent.svelte.d.ts +4 -0
- package/dist/select/SelectContext.svelte.d.ts +1 -0
- package/dist/select/SelectContext.svelte.js +3 -0
- package/dist/select/SelectIndicator.svelte +14 -0
- package/dist/select/SelectIndicator.svelte.d.ts +4 -0
- package/dist/select/SelectItem.svelte +21 -0
- package/dist/select/SelectItem.svelte.d.ts +9 -0
- package/dist/select/SelectItemGroup.svelte +11 -0
- package/dist/select/SelectItemGroup.svelte.d.ts +4 -0
- package/dist/select/SelectItemGroupLabel.svelte +14 -0
- package/dist/select/SelectItemGroupLabel.svelte.d.ts +4 -0
- package/dist/select/SelectItemIndicator.svelte +14 -0
- package/dist/select/SelectItemIndicator.svelte.d.ts +4 -0
- package/dist/select/SelectItemText.svelte +14 -0
- package/dist/select/SelectItemText.svelte.d.ts +4 -0
- package/dist/select/SelectNative.svelte +73 -0
- package/dist/select/SelectNative.svelte.d.ts +16 -0
- package/dist/select/SelectTrigger.svelte +19 -0
- package/dist/select/SelectTrigger.svelte.d.ts +8 -0
- package/dist/select/SelectValue.svelte +18 -0
- package/dist/select/SelectValue.svelte.d.ts +4 -0
- package/dist/select/index.d.ts +13 -0
- package/dist/select/index.js +14 -0
- package/dist/switch/Switch.svelte +23 -0
- package/dist/switch/Switch.svelte.d.ts +8 -0
- package/dist/switch/SwitchContext.svelte.d.ts +1 -0
- package/dist/switch/SwitchContext.svelte.js +3 -0
- package/dist/switch/SwitchControl.svelte +17 -0
- package/dist/switch/SwitchControl.svelte.d.ts +4 -0
- package/dist/switch/SwitchLabel.svelte +14 -0
- package/dist/switch/SwitchLabel.svelte.d.ts +4 -0
- package/dist/switch/SwitchThumb.svelte +12 -0
- package/dist/switch/SwitchThumb.svelte.d.ts +4 -0
- package/dist/switch/index.d.ts +5 -0
- package/dist/switch/index.js +6 -0
- package/dist/tags-input/TagInput.svelte +19 -0
- package/dist/tags-input/TagInput.svelte.d.ts +4 -0
- package/dist/tags-input/TagInputClearTrigger.svelte +14 -0
- package/dist/tags-input/TagInputClearTrigger.svelte.d.ts +4 -0
- package/dist/tags-input/TagInputContext.svelte.d.ts +1 -0
- package/dist/tags-input/TagInputContext.svelte.js +3 -0
- package/dist/tags-input/TagInputControl.svelte +14 -0
- package/dist/tags-input/TagInputControl.svelte.d.ts +4 -0
- package/dist/tags-input/TagInputInput.svelte +12 -0
- package/dist/tags-input/TagInputInput.svelte.d.ts +4 -0
- package/dist/tags-input/TagInputItem.svelte +14 -0
- package/dist/tags-input/TagInputItem.svelte.d.ts +4 -0
- package/dist/tags-input/TagInputItemDeleteTrigger.svelte +14 -0
- package/dist/tags-input/TagInputItemDeleteTrigger.svelte.d.ts +4 -0
- package/dist/tags-input/TagInputItemInput.svelte +12 -0
- package/dist/tags-input/TagInputItemInput.svelte.d.ts +4 -0
- package/dist/tags-input/TagInputItemPreview.svelte +11 -0
- package/dist/tags-input/TagInputItemPreview.svelte.d.ts +4 -0
- package/dist/tags-input/TagInputItemText.svelte +14 -0
- package/dist/tags-input/TagInputItemText.svelte.d.ts +4 -0
- package/dist/tags-input/index.d.ts +11 -0
- package/dist/tags-input/index.js +12 -0
- package/package.json +2 -2
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/field/FieldHelper.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI field (@ark-ui/svelte/field), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { FieldHelperText, type FieldHelperTextProps } from '@ark-ui/svelte/field';
|
|
5
|
+
import { fieldHelperBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', children, ...rest }: FieldHelperTextProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(fieldHelperBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<FieldHelperText class={classes} {...rest}>
|
|
13
|
+
{@render children?.()}
|
|
14
|
+
</FieldHelperText>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/field/FieldLabel.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI field (@ark-ui/svelte/field), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { FieldLabel, type FieldLabelProps } from '@ark-ui/svelte/field';
|
|
5
|
+
import { fieldLabelBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', children, ...rest }: FieldLabelProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(fieldLabelBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<FieldLabel class={classes} {...rest}>
|
|
13
|
+
{@render children?.()}
|
|
14
|
+
</FieldLabel>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/field/FieldRequiredIndicator.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI field (@ark-ui/svelte/field), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { FieldRequiredIndicator, type FieldRequiredIndicatorProps } from '@ark-ui/svelte/field';
|
|
5
|
+
import { fieldRequiredIndicatorBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', children, ...rest }: FieldRequiredIndicatorProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(fieldRequiredIndicatorBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<FieldRequiredIndicator class={classes} {...rest}>
|
|
13
|
+
{@render children?.()}
|
|
14
|
+
</FieldRequiredIndicator>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { FieldRequiredIndicator, type FieldRequiredIndicatorProps } from '@ark-ui/svelte/field';
|
|
2
|
+
declare const FieldRequiredIndicator: import("svelte").Component<FieldRequiredIndicatorProps, {}, "">;
|
|
3
|
+
type FieldRequiredIndicator = ReturnType<typeof FieldRequiredIndicator>;
|
|
4
|
+
export default FieldRequiredIndicator;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/field/FieldSet.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI field (@ark-ui/svelte/fieldset), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { FieldsetRoot, type FieldsetRootProps } from '@ark-ui/svelte/fieldset';
|
|
5
|
+
import { fieldsetRootBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', children, ...rest }: FieldsetRootProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(fieldsetRootBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<FieldsetRoot class={classes} {...rest}>
|
|
13
|
+
{@render children?.()}
|
|
14
|
+
</FieldsetRoot>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/field/FieldSetError.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI field (@ark-ui/svelte/fieldset), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { FieldsetErrorText, type FieldsetErrorTextProps } from '@ark-ui/svelte/fieldset';
|
|
5
|
+
import { fieldsetErrorBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', children, ...rest }: FieldsetErrorTextProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(fieldsetErrorBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<FieldsetErrorText class={classes} {...rest}>
|
|
13
|
+
{@render children?.()}
|
|
14
|
+
</FieldsetErrorText>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/field/FieldSetHelper.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI field (@ark-ui/svelte/fieldset), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { FieldsetHelperText, type FieldsetHelperTextProps } from '@ark-ui/svelte/fieldset';
|
|
5
|
+
import { fieldsetHelperBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', children, ...rest }: FieldsetHelperTextProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(fieldsetHelperBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<FieldsetHelperText class={classes} {...rest}>
|
|
13
|
+
{@render children?.()}
|
|
14
|
+
</FieldsetHelperText>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/field/FieldSetLegend.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI field (@ark-ui/svelte/fieldset), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { FieldsetLegend, type FieldsetLegendProps } from '@ark-ui/svelte/fieldset';
|
|
5
|
+
import { fieldsetLegendBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', children, ...rest }: FieldsetLegendProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(fieldsetLegendBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<FieldsetLegend class={classes} {...rest}>
|
|
13
|
+
{@render children?.()}
|
|
14
|
+
</FieldsetLegend>
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { default as Field } from './Field.svelte';
|
|
2
|
+
export { default as FieldLabel } from './FieldLabel.svelte';
|
|
3
|
+
export { default as FieldHelper } from './FieldHelper.svelte';
|
|
4
|
+
export { default as FieldError } from './FieldError.svelte';
|
|
5
|
+
export { default as FieldRequiredIndicator } from './FieldRequiredIndicator.svelte';
|
|
6
|
+
export { default as FieldSet } from './FieldSet.svelte';
|
|
7
|
+
export { default as FieldSetLegend } from './FieldSetLegend.svelte';
|
|
8
|
+
export { default as FieldSetHelper } from './FieldSetHelper.svelte';
|
|
9
|
+
export { default as FieldSetError } from './FieldSetError.svelte';
|
|
10
|
+
export { useField } from './FieldContext.svelte';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// libs/helix-svelte/src/field/index.ts
|
|
2
|
+
export { default as Field } from './Field.svelte';
|
|
3
|
+
export { default as FieldLabel } from './FieldLabel.svelte';
|
|
4
|
+
export { default as FieldHelper } from './FieldHelper.svelte';
|
|
5
|
+
export { default as FieldError } from './FieldError.svelte';
|
|
6
|
+
export { default as FieldRequiredIndicator } from './FieldRequiredIndicator.svelte';
|
|
7
|
+
export { default as FieldSet } from './FieldSet.svelte';
|
|
8
|
+
export { default as FieldSetLegend } from './FieldSetLegend.svelte';
|
|
9
|
+
export { default as FieldSetHelper } from './FieldSetHelper.svelte';
|
|
10
|
+
export { default as FieldSetError } from './FieldSetError.svelte';
|
|
11
|
+
export { useField } from './FieldContext.svelte';
|
package/dist/index.d.ts
CHANGED
|
@@ -20,3 +20,12 @@ export * from './sidebar';
|
|
|
20
20
|
export * from './tabs';
|
|
21
21
|
export * from './pagination';
|
|
22
22
|
export * from './navbar';
|
|
23
|
+
export * from './field';
|
|
24
|
+
export { default as Input } from './Input.svelte';
|
|
25
|
+
export { default as Textarea } from './Textarea.svelte';
|
|
26
|
+
export * from './number-input';
|
|
27
|
+
export * from './checkbox';
|
|
28
|
+
export * from './switch';
|
|
29
|
+
export * from './select';
|
|
30
|
+
export * from './combobox';
|
|
31
|
+
export * from './tags-input';
|
package/dist/index.js
CHANGED
|
@@ -21,3 +21,12 @@ export * from './sidebar';
|
|
|
21
21
|
export * from './tabs';
|
|
22
22
|
export * from './pagination';
|
|
23
23
|
export * from './navbar';
|
|
24
|
+
export * from './field';
|
|
25
|
+
export { default as Input } from './Input.svelte';
|
|
26
|
+
export { default as Textarea } from './Textarea.svelte';
|
|
27
|
+
export * from './number-input';
|
|
28
|
+
export * from './checkbox';
|
|
29
|
+
export * from './switch';
|
|
30
|
+
export * from './select';
|
|
31
|
+
export * from './combobox';
|
|
32
|
+
export * from './tags-input';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/number-input/NumberInput.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI number input (@ark-ui/svelte/number-input), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { NumberInputRoot, type NumberInputRootProps } from '@ark-ui/svelte/number-input';
|
|
5
|
+
import { numberInputRootBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', children, ...rest }: NumberInputRootProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(numberInputRootBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<NumberInputRoot class={classes} {...rest}>
|
|
13
|
+
{@render children?.()}
|
|
14
|
+
</NumberInputRoot>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { useNumberInputContext as useNumberInput } from '@ark-ui/svelte/number-input';
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
// libs/helix-svelte/src/number-input/NumberInputContext.svelte.ts
|
|
2
|
+
// Closely based on: @ark-ui/svelte/number-input useNumberInputContext, mirrored from @cloudvoyant/helix-react useNumberInput
|
|
3
|
+
export { useNumberInputContext as useNumberInput } from '@ark-ui/svelte/number-input';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/number-input/NumberInputControl.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI number input (@ark-ui/svelte/number-input), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { NumberInputControl, type NumberInputControlProps } from '@ark-ui/svelte/number-input';
|
|
5
|
+
import { numberInputControlBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', children, ...rest }: NumberInputControlProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(numberInputControlBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<NumberInputControl class={classes} {...rest}>
|
|
13
|
+
{@render children?.()}
|
|
14
|
+
</NumberInputControl>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { NumberInputControl, type NumberInputControlProps } from '@ark-ui/svelte/number-input';
|
|
2
|
+
declare const NumberInputControl: import("svelte").Component<NumberInputControlProps, {}, "">;
|
|
3
|
+
type NumberInputControl = ReturnType<typeof NumberInputControl>;
|
|
4
|
+
export default NumberInputControl;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/number-input/NumberInputDecrement.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI number input (@ark-ui/svelte/number-input), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { NumberInputDecrementTrigger, type NumberInputDecrementTriggerProps } from '@ark-ui/svelte/number-input';
|
|
5
|
+
import { numberInputTriggerBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', children, ...rest }: NumberInputDecrementTriggerProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(numberInputTriggerBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<NumberInputDecrementTrigger aria-label="Decrement" class={classes} {...rest}>
|
|
13
|
+
{@render children?.()}
|
|
14
|
+
</NumberInputDecrementTrigger>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type NumberInputDecrementTriggerProps } from '@ark-ui/svelte/number-input';
|
|
2
|
+
declare const NumberInputDecrement: import("svelte").Component<NumberInputDecrementTriggerProps, {}, "">;
|
|
3
|
+
type NumberInputDecrement = ReturnType<typeof NumberInputDecrement>;
|
|
4
|
+
export default NumberInputDecrement;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/number-input/NumberInputIncrement.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI number input (@ark-ui/svelte/number-input), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { NumberInputIncrementTrigger, type NumberInputIncrementTriggerProps } from '@ark-ui/svelte/number-input';
|
|
5
|
+
import { numberInputTriggerBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', children, ...rest }: NumberInputIncrementTriggerProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(numberInputTriggerBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<NumberInputIncrementTrigger aria-label="Increment" class={classes} {...rest}>
|
|
13
|
+
{@render children?.()}
|
|
14
|
+
</NumberInputIncrementTrigger>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type NumberInputIncrementTriggerProps } from '@ark-ui/svelte/number-input';
|
|
2
|
+
declare const NumberInputIncrement: import("svelte").Component<NumberInputIncrementTriggerProps, {}, "">;
|
|
3
|
+
type NumberInputIncrement = ReturnType<typeof NumberInputIncrement>;
|
|
4
|
+
export default NumberInputIncrement;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/number-input/NumberInputInput.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI number input (@ark-ui/svelte/number-input), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { NumberInputInput, type NumberInputInputProps } from '@ark-ui/svelte/number-input';
|
|
5
|
+
import { numberInputInputBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', ...rest }: NumberInputInputProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(numberInputInputBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<NumberInputInput class={classes} {...rest} />
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { NumberInputInput, type NumberInputInputProps } from '@ark-ui/svelte/number-input';
|
|
2
|
+
declare const NumberInputInput: import("svelte").Component<NumberInputInputProps, {}, "">;
|
|
3
|
+
type NumberInputInput = ReturnType<typeof NumberInputInput>;
|
|
4
|
+
export default NumberInputInput;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { default as NumberInput } from './NumberInput.svelte';
|
|
2
|
+
export { default as NumberInputControl } from './NumberInputControl.svelte';
|
|
3
|
+
export { default as NumberInputInput } from './NumberInputInput.svelte';
|
|
4
|
+
export { default as NumberInputDecrement } from './NumberInputDecrement.svelte';
|
|
5
|
+
export { default as NumberInputIncrement } from './NumberInputIncrement.svelte';
|
|
6
|
+
export { useNumberInput } from './NumberInputContext.svelte';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
// libs/helix-svelte/src/number-input/index.ts
|
|
2
|
+
export { default as NumberInput } from './NumberInput.svelte';
|
|
3
|
+
export { default as NumberInputControl } from './NumberInputControl.svelte';
|
|
4
|
+
export { default as NumberInputInput } from './NumberInputInput.svelte';
|
|
5
|
+
export { default as NumberInputDecrement } from './NumberInputDecrement.svelte';
|
|
6
|
+
export { default as NumberInputIncrement } from './NumberInputIncrement.svelte';
|
|
7
|
+
export { useNumberInput } from './NumberInputContext.svelte';
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/select/Select.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI select + native-select (@ark-ui/svelte/select), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<!-- Note: adapted to Ark UI v5 collection-based API (SelectRoot `collection` + SelectItem `item`). -->
|
|
4
|
+
<script lang="ts">
|
|
5
|
+
import {
|
|
6
|
+
SelectRoot,
|
|
7
|
+
SelectHiddenSelect,
|
|
8
|
+
createListCollection,
|
|
9
|
+
type SelectRootProps,
|
|
10
|
+
type ListCollection,
|
|
11
|
+
} from '@ark-ui/svelte/select';
|
|
12
|
+
import type { SelectItemData } from '@cloudvoyant/helix';
|
|
13
|
+
import SelectNative from './SelectNative.svelte';
|
|
14
|
+
|
|
15
|
+
type Props = Omit<SelectRootProps<SelectItemData>, 'collection'> & {
|
|
16
|
+
items?: SelectItemData[];
|
|
17
|
+
collection?: ListCollection<SelectItemData>;
|
|
18
|
+
size?: 'sm' | 'md' | 'lg';
|
|
19
|
+
class?: string;
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
let {
|
|
23
|
+
items,
|
|
24
|
+
collection,
|
|
25
|
+
size = 'md',
|
|
26
|
+
class: className = '',
|
|
27
|
+
children,
|
|
28
|
+
value,
|
|
29
|
+
defaultValue,
|
|
30
|
+
onValueChange,
|
|
31
|
+
invalid,
|
|
32
|
+
disabled,
|
|
33
|
+
name,
|
|
34
|
+
form,
|
|
35
|
+
required,
|
|
36
|
+
...rest
|
|
37
|
+
}: Props = $props();
|
|
38
|
+
|
|
39
|
+
const resolvedCollection = $derived(collection ?? createListCollection({ items: items ?? [] }));
|
|
40
|
+
|
|
41
|
+
let isCoarse = $state(false);
|
|
42
|
+
|
|
43
|
+
$effect(() => {
|
|
44
|
+
const mql = window.matchMedia('(pointer: coarse)');
|
|
45
|
+
isCoarse = mql.matches;
|
|
46
|
+
const onChange = () => (isCoarse = mql.matches);
|
|
47
|
+
mql.addEventListener('change', onChange);
|
|
48
|
+
return () => mql.removeEventListener('change', onChange);
|
|
49
|
+
});
|
|
50
|
+
</script>
|
|
51
|
+
|
|
52
|
+
{#if isCoarse && items}
|
|
53
|
+
<SelectNative
|
|
54
|
+
{items}
|
|
55
|
+
{size}
|
|
56
|
+
value={value?.[0]}
|
|
57
|
+
defaultValue={defaultValue?.[0]}
|
|
58
|
+
onValueChange={(v) => onValueChange?.({ value: [v], items: [] })}
|
|
59
|
+
{invalid}
|
|
60
|
+
{disabled}
|
|
61
|
+
{name}
|
|
62
|
+
{form}
|
|
63
|
+
{required}
|
|
64
|
+
/>
|
|
65
|
+
{:else}
|
|
66
|
+
<SelectRoot collection={resolvedCollection} {value} {defaultValue} {onValueChange} {invalid} {disabled} {name} {form} {required} class={className} {...rest}>
|
|
67
|
+
{@render children?.()}
|
|
68
|
+
<SelectHiddenSelect />
|
|
69
|
+
</SelectRoot>
|
|
70
|
+
{/if}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type SelectRootProps, type ListCollection } from '@ark-ui/svelte/select';
|
|
2
|
+
import type { SelectItemData } from '@cloudvoyant/helix';
|
|
3
|
+
type Props = Omit<SelectRootProps<SelectItemData>, 'collection'> & {
|
|
4
|
+
items?: SelectItemData[];
|
|
5
|
+
collection?: ListCollection<SelectItemData>;
|
|
6
|
+
size?: 'sm' | 'md' | 'lg';
|
|
7
|
+
class?: string;
|
|
8
|
+
};
|
|
9
|
+
declare const Select: import("svelte").Component<Props, {}, "">;
|
|
10
|
+
type Select = ReturnType<typeof Select>;
|
|
11
|
+
export default Select;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/select/SelectClearTrigger.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI select (@ark-ui/svelte/select), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { SelectClearTrigger, type SelectClearTriggerProps } from '@ark-ui/svelte/select';
|
|
5
|
+
import { selectClearTriggerBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', children, ...rest }: SelectClearTriggerProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(selectClearTriggerBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<SelectClearTrigger aria-label="Clear selection" class={classes} {...rest}>
|
|
13
|
+
{@render children?.()}
|
|
14
|
+
</SelectClearTrigger>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { SelectClearTrigger, type SelectClearTriggerProps } from '@ark-ui/svelte/select';
|
|
2
|
+
declare const SelectClearTrigger: import("svelte").Component<SelectClearTriggerProps, {}, "">;
|
|
3
|
+
type SelectClearTrigger = ReturnType<typeof SelectClearTrigger>;
|
|
4
|
+
export default SelectClearTrigger;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/select/SelectContent.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI select (@ark-ui/svelte/select), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { Portal } from '@ark-ui/svelte/portal';
|
|
5
|
+
import { SelectPositioner, SelectContent, type SelectContentProps } from '@ark-ui/svelte/select';
|
|
6
|
+
import { selectContentBase, selectPositionerBase, cn } from '@cloudvoyant/helix';
|
|
7
|
+
|
|
8
|
+
let { class: className = '', children, ...rest }: SelectContentProps = $props();
|
|
9
|
+
|
|
10
|
+
const classes = $derived(cn(selectContentBase, className));
|
|
11
|
+
</script>
|
|
12
|
+
|
|
13
|
+
<Portal>
|
|
14
|
+
<SelectPositioner class={selectPositionerBase}>
|
|
15
|
+
<SelectContent class={classes} {...rest}>
|
|
16
|
+
{@render children?.()}
|
|
17
|
+
</SelectContent>
|
|
18
|
+
</SelectPositioner>
|
|
19
|
+
</Portal>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { useSelectContext as useSelect } from '@ark-ui/svelte/select';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/select/SelectIndicator.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI select (@ark-ui/svelte/select), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { SelectIndicator, type SelectIndicatorProps } from '@ark-ui/svelte/select';
|
|
5
|
+
import { selectIndicatorBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', children, ...rest }: SelectIndicatorProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(selectIndicatorBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<SelectIndicator class={classes} {...rest}>
|
|
13
|
+
{@render children?.()}
|
|
14
|
+
</SelectIndicator>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/select/SelectItem.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI select (@ark-ui/svelte/select), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<!-- Note: adapted to Ark UI v5 — SelectItem takes `item` (the collection item). -->
|
|
4
|
+
<script lang="ts">
|
|
5
|
+
import { SelectItem, type SelectItemProps } from '@ark-ui/svelte/select';
|
|
6
|
+
import { selectItemBase, cn } from '@cloudvoyant/helix';
|
|
7
|
+
import type { SelectItemData } from '@cloudvoyant/helix';
|
|
8
|
+
|
|
9
|
+
type Props = Omit<SelectItemProps, 'item'> & {
|
|
10
|
+
item: SelectItemData;
|
|
11
|
+
class?: string;
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
let { item, class: className = '', children, ...rest }: Props = $props();
|
|
15
|
+
|
|
16
|
+
const classes = $derived(cn(selectItemBase, className));
|
|
17
|
+
</script>
|
|
18
|
+
|
|
19
|
+
<SelectItem {item} class={classes} {...rest}>
|
|
20
|
+
{@render children?.()}
|
|
21
|
+
</SelectItem>
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { SelectItem, type SelectItemProps } from '@ark-ui/svelte/select';
|
|
2
|
+
import type { SelectItemData } from '@cloudvoyant/helix';
|
|
3
|
+
type Props = Omit<SelectItemProps, 'item'> & {
|
|
4
|
+
item: SelectItemData;
|
|
5
|
+
class?: string;
|
|
6
|
+
};
|
|
7
|
+
declare const SelectItem: import("svelte").Component<Props, {}, "">;
|
|
8
|
+
type SelectItem = ReturnType<typeof SelectItem>;
|
|
9
|
+
export default SelectItem;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/select/SelectItemGroup.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI select (@ark-ui/svelte/select), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { SelectItemGroup, type SelectItemGroupProps } from '@ark-ui/svelte/select';
|
|
5
|
+
|
|
6
|
+
let { class: className = '', children, ...rest }: SelectItemGroupProps = $props();
|
|
7
|
+
</script>
|
|
8
|
+
|
|
9
|
+
<SelectItemGroup class={className} {...rest}>
|
|
10
|
+
{@render children?.()}
|
|
11
|
+
</SelectItemGroup>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/select/SelectItemGroupLabel.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI select (@ark-ui/svelte/select), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { SelectItemGroupLabel, type SelectItemGroupLabelProps } from '@ark-ui/svelte/select';
|
|
5
|
+
import { selectItemGroupLabelBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', children, ...rest }: SelectItemGroupLabelProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(selectItemGroupLabelBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<SelectItemGroupLabel class={classes} {...rest}>
|
|
13
|
+
{@render children?.()}
|
|
14
|
+
</SelectItemGroupLabel>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { SelectItemGroupLabel, type SelectItemGroupLabelProps } from '@ark-ui/svelte/select';
|
|
2
|
+
declare const SelectItemGroupLabel: import("svelte").Component<SelectItemGroupLabelProps, {}, "">;
|
|
3
|
+
type SelectItemGroupLabel = ReturnType<typeof SelectItemGroupLabel>;
|
|
4
|
+
export default SelectItemGroupLabel;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/select/SelectItemIndicator.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI select (@ark-ui/svelte/select), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { SelectItemIndicator, type SelectItemIndicatorProps } from '@ark-ui/svelte/select';
|
|
5
|
+
import { selectItemIndicatorBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', children, ...rest }: SelectItemIndicatorProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(selectItemIndicatorBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<SelectItemIndicator class={classes} {...rest}>
|
|
13
|
+
{@render children?.()}
|
|
14
|
+
</SelectItemIndicator>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { SelectItemIndicator, type SelectItemIndicatorProps } from '@ark-ui/svelte/select';
|
|
2
|
+
declare const SelectItemIndicator: import("svelte").Component<SelectItemIndicatorProps, {}, "">;
|
|
3
|
+
type SelectItemIndicator = ReturnType<typeof SelectItemIndicator>;
|
|
4
|
+
export default SelectItemIndicator;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- libs/helix-svelte/src/select/SelectItemText.svelte -->
|
|
2
|
+
<!-- Closely based on: Shark UI select (@ark-ui/svelte/select), mirrored from @cloudvoyant/helix-react -->
|
|
3
|
+
<script lang="ts">
|
|
4
|
+
import { SelectItemText, type SelectItemTextProps } from '@ark-ui/svelte/select';
|
|
5
|
+
import { selectItemTextBase, cn } from '@cloudvoyant/helix';
|
|
6
|
+
|
|
7
|
+
let { class: className = '', children, ...rest }: SelectItemTextProps = $props();
|
|
8
|
+
|
|
9
|
+
const classes = $derived(cn(selectItemTextBase, className));
|
|
10
|
+
</script>
|
|
11
|
+
|
|
12
|
+
<SelectItemText class={classes} {...rest}>
|
|
13
|
+
{@render children?.()}
|
|
14
|
+
</SelectItemText>
|