@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.
Files changed (149) hide show
  1. package/dist/Input.svelte +17 -0
  2. package/dist/Input.svelte.d.ts +8 -0
  3. package/dist/Textarea.svelte +14 -0
  4. package/dist/Textarea.svelte.d.ts +4 -0
  5. package/dist/checkbox/Checkbox.svelte +23 -0
  6. package/dist/checkbox/Checkbox.svelte.d.ts +8 -0
  7. package/dist/checkbox/CheckboxContext.svelte.d.ts +1 -0
  8. package/dist/checkbox/CheckboxContext.svelte.js +3 -0
  9. package/dist/checkbox/CheckboxControl.svelte +17 -0
  10. package/dist/checkbox/CheckboxControl.svelte.d.ts +4 -0
  11. package/dist/checkbox/CheckboxGroup.svelte +14 -0
  12. package/dist/checkbox/CheckboxGroup.svelte.d.ts +4 -0
  13. package/dist/checkbox/CheckboxIndicator.svelte +14 -0
  14. package/dist/checkbox/CheckboxIndicator.svelte.d.ts +4 -0
  15. package/dist/checkbox/CheckboxLabel.svelte +14 -0
  16. package/dist/checkbox/CheckboxLabel.svelte.d.ts +4 -0
  17. package/dist/checkbox/index.d.ts +6 -0
  18. package/dist/checkbox/index.js +7 -0
  19. package/dist/combobox/Combobox.svelte +25 -0
  20. package/dist/combobox/Combobox.svelte.d.ts +9 -0
  21. package/dist/combobox/ComboboxClear.svelte +14 -0
  22. package/dist/combobox/ComboboxClear.svelte.d.ts +4 -0
  23. package/dist/combobox/ComboboxContent.svelte +19 -0
  24. package/dist/combobox/ComboboxContent.svelte.d.ts +4 -0
  25. package/dist/combobox/ComboboxContext.svelte.d.ts +1 -0
  26. package/dist/combobox/ComboboxContext.svelte.js +3 -0
  27. package/dist/combobox/ComboboxControl.svelte +14 -0
  28. package/dist/combobox/ComboboxControl.svelte.d.ts +4 -0
  29. package/dist/combobox/ComboboxEmpty.svelte +18 -0
  30. package/dist/combobox/ComboboxEmpty.svelte.d.ts +4 -0
  31. package/dist/combobox/ComboboxInput.svelte +17 -0
  32. package/dist/combobox/ComboboxInput.svelte.d.ts +8 -0
  33. package/dist/combobox/ComboboxItem.svelte +22 -0
  34. package/dist/combobox/ComboboxItem.svelte.d.ts +10 -0
  35. package/dist/combobox/ComboboxItemGroup.svelte +11 -0
  36. package/dist/combobox/ComboboxItemGroup.svelte.d.ts +4 -0
  37. package/dist/combobox/ComboboxItemGroupLabel.svelte +14 -0
  38. package/dist/combobox/ComboboxItemGroupLabel.svelte.d.ts +4 -0
  39. package/dist/combobox/ComboboxItemIndicator.svelte +14 -0
  40. package/dist/combobox/ComboboxItemIndicator.svelte.d.ts +4 -0
  41. package/dist/combobox/ComboboxItemText.svelte +11 -0
  42. package/dist/combobox/ComboboxItemText.svelte.d.ts +4 -0
  43. package/dist/combobox/ComboboxList.svelte +14 -0
  44. package/dist/combobox/ComboboxList.svelte.d.ts +4 -0
  45. package/dist/combobox/ComboboxTrigger.svelte +14 -0
  46. package/dist/combobox/ComboboxTrigger.svelte.d.ts +4 -0
  47. package/dist/combobox/index.d.ts +14 -0
  48. package/dist/combobox/index.js +15 -0
  49. package/dist/field/Field.svelte +14 -0
  50. package/dist/field/Field.svelte.d.ts +4 -0
  51. package/dist/field/FieldContext.svelte.d.ts +1 -0
  52. package/dist/field/FieldContext.svelte.js +3 -0
  53. package/dist/field/FieldError.svelte +14 -0
  54. package/dist/field/FieldError.svelte.d.ts +4 -0
  55. package/dist/field/FieldHelper.svelte +14 -0
  56. package/dist/field/FieldHelper.svelte.d.ts +4 -0
  57. package/dist/field/FieldLabel.svelte +14 -0
  58. package/dist/field/FieldLabel.svelte.d.ts +4 -0
  59. package/dist/field/FieldRequiredIndicator.svelte +14 -0
  60. package/dist/field/FieldRequiredIndicator.svelte.d.ts +4 -0
  61. package/dist/field/FieldSet.svelte +14 -0
  62. package/dist/field/FieldSet.svelte.d.ts +4 -0
  63. package/dist/field/FieldSetError.svelte +14 -0
  64. package/dist/field/FieldSetError.svelte.d.ts +4 -0
  65. package/dist/field/FieldSetHelper.svelte +14 -0
  66. package/dist/field/FieldSetHelper.svelte.d.ts +4 -0
  67. package/dist/field/FieldSetLegend.svelte +14 -0
  68. package/dist/field/FieldSetLegend.svelte.d.ts +4 -0
  69. package/dist/field/index.d.ts +10 -0
  70. package/dist/field/index.js +11 -0
  71. package/dist/index.d.ts +9 -0
  72. package/dist/index.js +9 -0
  73. package/dist/number-input/NumberInput.svelte +14 -0
  74. package/dist/number-input/NumberInput.svelte.d.ts +4 -0
  75. package/dist/number-input/NumberInputContext.svelte.d.ts +1 -0
  76. package/dist/number-input/NumberInputContext.svelte.js +3 -0
  77. package/dist/number-input/NumberInputControl.svelte +14 -0
  78. package/dist/number-input/NumberInputControl.svelte.d.ts +4 -0
  79. package/dist/number-input/NumberInputDecrement.svelte +14 -0
  80. package/dist/number-input/NumberInputDecrement.svelte.d.ts +4 -0
  81. package/dist/number-input/NumberInputIncrement.svelte +14 -0
  82. package/dist/number-input/NumberInputIncrement.svelte.d.ts +4 -0
  83. package/dist/number-input/NumberInputInput.svelte +12 -0
  84. package/dist/number-input/NumberInputInput.svelte.d.ts +4 -0
  85. package/dist/number-input/index.d.ts +6 -0
  86. package/dist/number-input/index.js +7 -0
  87. package/dist/select/Select.svelte +70 -0
  88. package/dist/select/Select.svelte.d.ts +11 -0
  89. package/dist/select/SelectClearTrigger.svelte +14 -0
  90. package/dist/select/SelectClearTrigger.svelte.d.ts +4 -0
  91. package/dist/select/SelectContent.svelte +19 -0
  92. package/dist/select/SelectContent.svelte.d.ts +4 -0
  93. package/dist/select/SelectContext.svelte.d.ts +1 -0
  94. package/dist/select/SelectContext.svelte.js +3 -0
  95. package/dist/select/SelectIndicator.svelte +14 -0
  96. package/dist/select/SelectIndicator.svelte.d.ts +4 -0
  97. package/dist/select/SelectItem.svelte +21 -0
  98. package/dist/select/SelectItem.svelte.d.ts +9 -0
  99. package/dist/select/SelectItemGroup.svelte +11 -0
  100. package/dist/select/SelectItemGroup.svelte.d.ts +4 -0
  101. package/dist/select/SelectItemGroupLabel.svelte +14 -0
  102. package/dist/select/SelectItemGroupLabel.svelte.d.ts +4 -0
  103. package/dist/select/SelectItemIndicator.svelte +14 -0
  104. package/dist/select/SelectItemIndicator.svelte.d.ts +4 -0
  105. package/dist/select/SelectItemText.svelte +14 -0
  106. package/dist/select/SelectItemText.svelte.d.ts +4 -0
  107. package/dist/select/SelectNative.svelte +73 -0
  108. package/dist/select/SelectNative.svelte.d.ts +16 -0
  109. package/dist/select/SelectTrigger.svelte +19 -0
  110. package/dist/select/SelectTrigger.svelte.d.ts +8 -0
  111. package/dist/select/SelectValue.svelte +18 -0
  112. package/dist/select/SelectValue.svelte.d.ts +4 -0
  113. package/dist/select/index.d.ts +13 -0
  114. package/dist/select/index.js +14 -0
  115. package/dist/switch/Switch.svelte +23 -0
  116. package/dist/switch/Switch.svelte.d.ts +8 -0
  117. package/dist/switch/SwitchContext.svelte.d.ts +1 -0
  118. package/dist/switch/SwitchContext.svelte.js +3 -0
  119. package/dist/switch/SwitchControl.svelte +17 -0
  120. package/dist/switch/SwitchControl.svelte.d.ts +4 -0
  121. package/dist/switch/SwitchLabel.svelte +14 -0
  122. package/dist/switch/SwitchLabel.svelte.d.ts +4 -0
  123. package/dist/switch/SwitchThumb.svelte +12 -0
  124. package/dist/switch/SwitchThumb.svelte.d.ts +4 -0
  125. package/dist/switch/index.d.ts +5 -0
  126. package/dist/switch/index.js +6 -0
  127. package/dist/tags-input/TagInput.svelte +19 -0
  128. package/dist/tags-input/TagInput.svelte.d.ts +4 -0
  129. package/dist/tags-input/TagInputClearTrigger.svelte +14 -0
  130. package/dist/tags-input/TagInputClearTrigger.svelte.d.ts +4 -0
  131. package/dist/tags-input/TagInputContext.svelte.d.ts +1 -0
  132. package/dist/tags-input/TagInputContext.svelte.js +3 -0
  133. package/dist/tags-input/TagInputControl.svelte +14 -0
  134. package/dist/tags-input/TagInputControl.svelte.d.ts +4 -0
  135. package/dist/tags-input/TagInputInput.svelte +12 -0
  136. package/dist/tags-input/TagInputInput.svelte.d.ts +4 -0
  137. package/dist/tags-input/TagInputItem.svelte +14 -0
  138. package/dist/tags-input/TagInputItem.svelte.d.ts +4 -0
  139. package/dist/tags-input/TagInputItemDeleteTrigger.svelte +14 -0
  140. package/dist/tags-input/TagInputItemDeleteTrigger.svelte.d.ts +4 -0
  141. package/dist/tags-input/TagInputItemInput.svelte +12 -0
  142. package/dist/tags-input/TagInputItemInput.svelte.d.ts +4 -0
  143. package/dist/tags-input/TagInputItemPreview.svelte +11 -0
  144. package/dist/tags-input/TagInputItemPreview.svelte.d.ts +4 -0
  145. package/dist/tags-input/TagInputItemText.svelte +14 -0
  146. package/dist/tags-input/TagInputItemText.svelte.d.ts +4 -0
  147. package/dist/tags-input/index.d.ts +11 -0
  148. package/dist/tags-input/index.js +12 -0
  149. 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,4 @@
1
+ import { type FieldHelperTextProps } from '@ark-ui/svelte/field';
2
+ declare const FieldHelper: import("svelte").Component<FieldHelperTextProps, {}, "">;
3
+ type FieldHelper = ReturnType<typeof FieldHelper>;
4
+ export default FieldHelper;
@@ -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,4 @@
1
+ import { FieldLabel, type FieldLabelProps } from '@ark-ui/svelte/field';
2
+ declare const FieldLabel: import("svelte").Component<FieldLabelProps, {}, "">;
3
+ type FieldLabel = ReturnType<typeof FieldLabel>;
4
+ export default 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,4 @@
1
+ import { type FieldsetRootProps } from '@ark-ui/svelte/fieldset';
2
+ declare const FieldSet: import("svelte").Component<FieldsetRootProps, {}, "">;
3
+ type FieldSet = ReturnType<typeof FieldSet>;
4
+ export default FieldSet;
@@ -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,4 @@
1
+ import { type FieldsetErrorTextProps } from '@ark-ui/svelte/fieldset';
2
+ declare const FieldSetError: import("svelte").Component<FieldsetErrorTextProps, {}, "">;
3
+ type FieldSetError = ReturnType<typeof FieldSetError>;
4
+ export default FieldSetError;
@@ -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,4 @@
1
+ import { type FieldsetHelperTextProps } from '@ark-ui/svelte/fieldset';
2
+ declare const FieldSetHelper: import("svelte").Component<FieldsetHelperTextProps, {}, "">;
3
+ type FieldSetHelper = ReturnType<typeof FieldSetHelper>;
4
+ export default FieldSetHelper;
@@ -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,4 @@
1
+ import { type FieldsetLegendProps } from '@ark-ui/svelte/fieldset';
2
+ declare const FieldSetLegend: import("svelte").Component<FieldsetLegendProps, {}, "">;
3
+ type FieldSetLegend = ReturnType<typeof FieldSetLegend>;
4
+ export default 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,4 @@
1
+ import { type NumberInputRootProps } from '@ark-ui/svelte/number-input';
2
+ declare const NumberInput: import("svelte").Component<NumberInputRootProps, {}, "">;
3
+ type NumberInput = ReturnType<typeof NumberInput>;
4
+ export default NumberInput;
@@ -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,4 @@
1
+ import { SelectContent, type SelectContentProps } from '@ark-ui/svelte/select';
2
+ declare const SelectContent: import("svelte").Component<SelectContentProps, {}, "">;
3
+ type SelectContent = ReturnType<typeof SelectContent>;
4
+ export default SelectContent;
@@ -0,0 +1 @@
1
+ export { useSelectContext as useSelect } from '@ark-ui/svelte/select';
@@ -0,0 +1,3 @@
1
+ // libs/helix-svelte/src/select/SelectContext.svelte.ts
2
+ // Closely based on: @ark-ui/svelte/select useSelectContext, mirrored from @cloudvoyant/helix-react useSelect
3
+ 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,4 @@
1
+ import { SelectIndicator, type SelectIndicatorProps } from '@ark-ui/svelte/select';
2
+ declare const SelectIndicator: import("svelte").Component<SelectIndicatorProps, {}, "">;
3
+ type SelectIndicator = ReturnType<typeof SelectIndicator>;
4
+ export default 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,4 @@
1
+ import { SelectItemGroup, type SelectItemGroupProps } from '@ark-ui/svelte/select';
2
+ declare const SelectItemGroup: import("svelte").Component<SelectItemGroupProps, {}, "">;
3
+ type SelectItemGroup = ReturnType<typeof SelectItemGroup>;
4
+ export default 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>
@@ -0,0 +1,4 @@
1
+ import { SelectItemText, type SelectItemTextProps } from '@ark-ui/svelte/select';
2
+ declare const SelectItemText: import("svelte").Component<SelectItemTextProps, {}, "">;
3
+ type SelectItemText = ReturnType<typeof SelectItemText>;
4
+ export default SelectItemText;