@sprawlify/svelte 0.0.44 → 0.0.45

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 (142) hide show
  1. package/dist/components/carousel/carousel-anatomy.d.ts +1 -1
  2. package/dist/components/color-picker/color-picker-anatomy.d.ts +1 -1
  3. package/dist/components/combobox/combobox-anatomy.d.ts +1 -1
  4. package/dist/components/combobox/combobox-root-provider.svelte +3 -3
  5. package/dist/components/combobox/combobox-root-provider.svelte.d.ts +1 -1
  6. package/dist/components/date-picker/date-picker-anatomy.d.ts +1 -0
  7. package/dist/components/date-picker/date-picker-anatomy.js +2 -0
  8. package/dist/components/date-picker/date-picker-clear-trigger.svelte +19 -0
  9. package/dist/components/date-picker/date-picker-clear-trigger.svelte.d.ts +8 -0
  10. package/dist/components/date-picker/date-picker-content.svelte +27 -0
  11. package/dist/components/date-picker/date-picker-content.svelte.d.ts +8 -0
  12. package/dist/components/date-picker/date-picker-context.svelte +18 -0
  13. package/dist/components/date-picker/date-picker-context.svelte.d.ts +8 -0
  14. package/dist/components/date-picker/date-picker-control.svelte +19 -0
  15. package/dist/components/date-picker/date-picker-control.svelte.d.ts +8 -0
  16. package/dist/components/date-picker/date-picker-input.svelte +22 -0
  17. package/dist/components/date-picker/date-picker-input.svelte.d.ts +9 -0
  18. package/dist/components/date-picker/date-picker-label.svelte +19 -0
  19. package/dist/components/date-picker/date-picker-label.svelte.d.ts +8 -0
  20. package/dist/components/date-picker/date-picker-month-select.svelte +25 -0
  21. package/dist/components/date-picker/date-picker-month-select.svelte.d.ts +8 -0
  22. package/dist/components/date-picker/date-picker-next-trigger.svelte +21 -0
  23. package/dist/components/date-picker/date-picker-next-trigger.svelte.d.ts +8 -0
  24. package/dist/components/date-picker/date-picker-positioner.svelte +23 -0
  25. package/dist/components/date-picker/date-picker-positioner.svelte.d.ts +8 -0
  26. package/dist/components/date-picker/date-picker-preset-trigger.svelte +25 -0
  27. package/dist/components/date-picker/date-picker-preset-trigger.svelte.d.ts +9 -0
  28. package/dist/components/date-picker/date-picker-prev-trigger.svelte +21 -0
  29. package/dist/components/date-picker/date-picker-prev-trigger.svelte.d.ts +8 -0
  30. package/dist/components/date-picker/date-picker-range-text.svelte +27 -0
  31. package/dist/components/date-picker/date-picker-range-text.svelte.d.ts +8 -0
  32. package/dist/components/date-picker/date-picker-root-provider.svelte +34 -0
  33. package/dist/components/date-picker/date-picker-root-provider.svelte.d.ts +13 -0
  34. package/dist/components/date-picker/date-picker-root.svelte +109 -0
  35. package/dist/components/date-picker/date-picker-root.svelte.d.ts +10 -0
  36. package/dist/components/date-picker/date-picker-table-body.svelte +19 -0
  37. package/dist/components/date-picker/date-picker-table-body.svelte.d.ts +8 -0
  38. package/dist/components/date-picker/date-picker-table-cell-trigger.svelte +38 -0
  39. package/dist/components/date-picker/date-picker-table-cell-trigger.svelte.d.ts +8 -0
  40. package/dist/components/date-picker/date-picker-table-cell.svelte +50 -0
  41. package/dist/components/date-picker/date-picker-table-cell.svelte.d.ts +9 -0
  42. package/dist/components/date-picker/date-picker-table-head.svelte +22 -0
  43. package/dist/components/date-picker/date-picker-table-head.svelte.d.ts +8 -0
  44. package/dist/components/date-picker/date-picker-table-header.svelte +22 -0
  45. package/dist/components/date-picker/date-picker-table-header.svelte.d.ts +8 -0
  46. package/dist/components/date-picker/date-picker-table-row.svelte +22 -0
  47. package/dist/components/date-picker/date-picker-table-row.svelte.d.ts +8 -0
  48. package/dist/components/date-picker/date-picker-table.svelte +29 -0
  49. package/dist/components/date-picker/date-picker-table.svelte.d.ts +9 -0
  50. package/dist/components/date-picker/date-picker-trigger.svelte +19 -0
  51. package/dist/components/date-picker/date-picker-trigger.svelte.d.ts +8 -0
  52. package/dist/components/date-picker/date-picker-view-control.svelte +21 -0
  53. package/dist/components/date-picker/date-picker-view-control.svelte.d.ts +8 -0
  54. package/dist/components/date-picker/date-picker-view-trigger.svelte +21 -0
  55. package/dist/components/date-picker/date-picker-view-trigger.svelte.d.ts +8 -0
  56. package/dist/components/date-picker/date-picker-view.svelte +25 -0
  57. package/dist/components/date-picker/date-picker-view.svelte.d.ts +9 -0
  58. package/dist/components/date-picker/date-picker-year-select.svelte +25 -0
  59. package/dist/components/date-picker/date-picker-year-select.svelte.d.ts +8 -0
  60. package/dist/components/date-picker/date-picker.d.ts +26 -0
  61. package/dist/components/date-picker/date-picker.js +26 -0
  62. package/dist/components/date-picker/index.d.ts +32 -0
  63. package/dist/components/date-picker/index.js +31 -0
  64. package/dist/components/date-picker/use-date-picker-context.d.ts +6 -0
  65. package/dist/components/date-picker/use-date-picker-context.js +6 -0
  66. package/dist/components/date-picker/use-date-picker-table-cell-props-context.d.ts +10 -0
  67. package/dist/components/date-picker/use-date-picker-table-cell-props-context.js +6 -0
  68. package/dist/components/date-picker/use-date-picker-table-props-context.d.ts +5 -0
  69. package/dist/components/date-picker/use-date-picker-table-props-context.js +6 -0
  70. package/dist/components/date-picker/use-date-picker-view-props-context.d.ts +5 -0
  71. package/dist/components/date-picker/use-date-picker-view-props-context.js +6 -0
  72. package/dist/components/date-picker/use-date-picker.svelte.d.ts +9 -0
  73. package/dist/components/date-picker/use-date-picker.svelte.js +20 -0
  74. package/dist/components/dialog/dialog-anatomy.d.ts +1 -0
  75. package/dist/components/dialog/dialog-anatomy.js +1 -0
  76. package/dist/components/dialog/dialog-backdrop.svelte +32 -0
  77. package/dist/components/dialog/dialog-backdrop.svelte.d.ts +9 -0
  78. package/dist/components/dialog/dialog-close-trigger.svelte +19 -0
  79. package/dist/components/dialog/dialog-close-trigger.svelte.d.ts +8 -0
  80. package/dist/components/dialog/dialog-content.svelte +29 -0
  81. package/dist/components/dialog/dialog-content.svelte.d.ts +9 -0
  82. package/dist/components/dialog/dialog-context.svelte +18 -0
  83. package/dist/components/dialog/dialog-context.svelte.d.ts +8 -0
  84. package/dist/components/dialog/dialog-description.svelte +19 -0
  85. package/dist/components/dialog/dialog-description.svelte.d.ts +8 -0
  86. package/dist/components/dialog/dialog-positioner.svelte +23 -0
  87. package/dist/components/dialog/dialog-positioner.svelte.d.ts +8 -0
  88. package/dist/components/dialog/dialog-root-provider.svelte +36 -0
  89. package/dist/components/dialog/dialog-root-provider.svelte.d.ts +11 -0
  90. package/dist/components/dialog/dialog-root.svelte +52 -0
  91. package/dist/components/dialog/dialog-root.svelte.d.ts +11 -0
  92. package/dist/components/dialog/dialog-title.svelte +19 -0
  93. package/dist/components/dialog/dialog-title.svelte.d.ts +8 -0
  94. package/dist/components/dialog/dialog-trigger.svelte +29 -0
  95. package/dist/components/dialog/dialog-trigger.svelte.d.ts +8 -0
  96. package/dist/components/dialog/dialog.d.ts +11 -0
  97. package/dist/components/dialog/dialog.js +10 -0
  98. package/dist/components/dialog/index.d.ts +17 -0
  99. package/dist/components/dialog/index.js +14 -0
  100. package/dist/components/dialog/use-dialog-context.d.ts +4 -0
  101. package/dist/components/dialog/use-dialog-context.js +4 -0
  102. package/dist/components/dialog/use-dialog.svelte.d.ts +9 -0
  103. package/dist/components/dialog/use-dialog.svelte.js +20 -0
  104. package/dist/components/download-trigger/download-trigger.svelte +43 -0
  105. package/dist/components/download-trigger/download-trigger.svelte.d.ts +14 -0
  106. package/dist/components/download-trigger/index.d.ts +1 -0
  107. package/dist/components/download-trigger/index.js +1 -0
  108. package/dist/components/editable/editable-anatomy.d.ts +1 -0
  109. package/dist/components/editable/editable-anatomy.js +1 -0
  110. package/dist/components/editable/editable-area.svelte +19 -0
  111. package/dist/components/editable/editable-area.svelte.d.ts +8 -0
  112. package/dist/components/editable/editable-cancel-trigger.svelte +19 -0
  113. package/dist/components/editable/editable-cancel-trigger.svelte.d.ts +8 -0
  114. package/dist/components/editable/editable-context.svelte +18 -0
  115. package/dist/components/editable/editable-context.svelte.d.ts +8 -0
  116. package/dist/components/editable/editable-control.svelte +19 -0
  117. package/dist/components/editable/editable-control.svelte.d.ts +8 -0
  118. package/dist/components/editable/editable-edit-trigger.svelte +19 -0
  119. package/dist/components/editable/editable-edit-trigger.svelte.d.ts +8 -0
  120. package/dist/components/editable/editable-input.svelte +19 -0
  121. package/dist/components/editable/editable-input.svelte.d.ts +8 -0
  122. package/dist/components/editable/editable-label.svelte +19 -0
  123. package/dist/components/editable/editable-label.svelte.d.ts +8 -0
  124. package/dist/components/editable/editable-preview.svelte +25 -0
  125. package/dist/components/editable/editable-preview.svelte.d.ts +8 -0
  126. package/dist/components/editable/editable-root-provider.svelte +23 -0
  127. package/dist/components/editable/editable-root-provider.svelte.d.ts +10 -0
  128. package/dist/components/editable/editable-root.svelte +40 -0
  129. package/dist/components/editable/editable-root.svelte.d.ts +9 -0
  130. package/dist/components/editable/editable-split-props.d.ts +2 -0
  131. package/dist/components/editable/editable-split-props.js +33 -0
  132. package/dist/components/editable/editable-submit-trigger.svelte +19 -0
  133. package/dist/components/editable/editable-submit-trigger.svelte.d.ts +8 -0
  134. package/dist/components/editable/editable.d.ts +12 -0
  135. package/dist/components/editable/editable.js +11 -0
  136. package/dist/components/editable/index.d.ts +18 -0
  137. package/dist/components/editable/index.js +15 -0
  138. package/dist/components/editable/use-editable-context.d.ts +4 -0
  139. package/dist/components/editable/use-editable-context.js +4 -0
  140. package/dist/components/editable/use-editable.svelte.d.ts +9 -0
  141. package/dist/components/editable/use-editable.svelte.js +30 -0
  142. package/package.json +22 -2
@@ -1 +1 @@
1
- export declare const carouselAnatomy: import("@sprawlify/primitives/anatomy").AnatomyInstance<"root" | "item" | "control" | "indicator" | "prevTrigger" | "nextTrigger" | "itemGroup" | "indicatorGroup" | "autoplayTrigger" | "progressText" | "autoplayIndicator">;
1
+ export declare const carouselAnatomy: import("@sprawlify/primitives/anatomy").AnatomyInstance<"root" | "item" | "control" | "indicator" | "nextTrigger" | "prevTrigger" | "itemGroup" | "indicatorGroup" | "autoplayTrigger" | "progressText" | "autoplayIndicator">;
@@ -1 +1 @@
1
- export declare const colorPickerAnatomy: import("@sprawlify/primitives/anatomy").AnatomyInstance<"label" | "area" | "view" | "root" | "content" | "trigger" | "control" | "valueText" | "positioner" | "formatSelect" | "areaThumb" | "channelInput" | "channelSliderTrack" | "channelSliderThumb" | "areaBackground" | "channelSlider" | "channelSliderLabel" | "channelSliderValueText" | "transparencyGrid" | "swatchGroup" | "swatchTrigger" | "swatchIndicator" | "swatch" | "eyeDropperTrigger" | "formatTrigger">;
1
+ export declare const colorPickerAnatomy: import("@sprawlify/primitives/anatomy").AnatomyInstance<"label" | "area" | "view" | "root" | "content" | "trigger" | "control" | "valueText" | "positioner" | "areaThumb" | "areaBackground" | "channelSlider" | "channelSliderLabel" | "channelSliderTrack" | "channelSliderThumb" | "channelSliderValueText" | "channelInput" | "transparencyGrid" | "swatchGroup" | "swatchTrigger" | "swatchIndicator" | "swatch" | "eyeDropperTrigger" | "formatTrigger" | "formatSelect">;
@@ -1 +1 @@
1
- export declare const comboboxAnatomy: import("@sprawlify/primitives/anatomy").AnatomyInstance<"label" | "input" | "root" | "content" | "trigger" | "list" | "item" | "control" | "itemGroup" | "positioner" | "itemIndicator" | "clearTrigger" | "itemText" | "itemGroupLabel" | "empty">;
1
+ export declare const comboboxAnatomy: import("@sprawlify/primitives/anatomy").AnatomyInstance<"label" | "input" | "root" | "content" | "trigger" | "list" | "item" | "control" | "itemGroup" | "positioner" | "itemIndicator" | "itemText" | "clearTrigger" | "itemGroupLabel" | "empty">;
@@ -1,5 +1,5 @@
1
1
  <script lang="ts" module>
2
- import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types.js'
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
3
3
  import type { Snippet } from 'svelte'
4
4
  import type { CollectionItem } from '../collection/index.js'
5
5
  import type { UsePresenceProps } from '../presence/use-presence.svelte.js'
@@ -26,8 +26,8 @@
26
26
 
27
27
  <script lang="ts" generics="T extends CollectionItem">
28
28
  import { mergeProps } from '../../core'
29
- import { Sprawlify } from '../factory/index.js'
30
- import { PresenceProvider, splitPresenceProps, usePresence } from '../presence/index.js'
29
+ import { Sprawlify } from '../factory'
30
+ import { PresenceProvider, splitPresenceProps, usePresence } from '../presence'
31
31
  import { ComboboxProvider } from './use-combobox-context.js'
32
32
 
33
33
  let { ref = $bindable(null), value, children, ...props }: ComboboxRootProviderProps<T> = $props()
@@ -1,4 +1,4 @@
1
- import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types.js';
1
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
2
2
  import type { Snippet } from 'svelte';
3
3
  import type { CollectionItem } from '../collection/index.js';
4
4
  import type { UsePresenceProps } from '../presence/use-presence.svelte.js';
@@ -0,0 +1 @@
1
+ export declare const datePickerAnatomy: import("@sprawlify/primitives/anatomy").AnatomyInstance<"label" | "input" | "table" | "view" | "root" | "content" | "trigger" | "control" | "nextTrigger" | "prevTrigger" | "positioner" | "clearTrigger" | "monthSelect" | "presetTrigger" | "rangeText" | "tableBody" | "tableCell" | "tableCellTrigger" | "tableHead" | "tableHeader" | "tableRow" | "viewControl" | "viewTrigger" | "yearSelect">;
@@ -0,0 +1,2 @@
1
+ import { anatomy } from '@sprawlify/primitives/machines/date-picker';
2
+ export const datePickerAnatomy = anatomy.extendWith('view');
@@ -0,0 +1,19 @@
1
+ <script module lang="ts">
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
3
+
4
+ export interface DatePickerClearTriggerBaseProps extends PolymorphicProps<'button'>, RefAttribute {}
5
+ export interface DatePickerClearTriggerProps extends Assign<HTMLProps<'button'>, DatePickerClearTriggerBaseProps> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import { mergeProps } from '../../core'
10
+ import { Sprawlify } from '../factory'
11
+ import { useDatePickerContext } from './use-date-picker-context'
12
+
13
+ let { ref = $bindable(null), ...props }: DatePickerClearTriggerProps = $props()
14
+
15
+ const datePicker = useDatePickerContext()
16
+ const mergedProps = $derived(mergeProps(datePicker().getClearTriggerProps(), props))
17
+ </script>
18
+
19
+ <Sprawlify bind:ref as="button" {...mergedProps} />
@@ -0,0 +1,8 @@
1
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
2
+ export interface DatePickerClearTriggerBaseProps extends PolymorphicProps<'button'>, RefAttribute {
3
+ }
4
+ export interface DatePickerClearTriggerProps extends Assign<HTMLProps<'button'>, DatePickerClearTriggerBaseProps> {
5
+ }
6
+ declare const DatePickerClearTrigger: import("svelte").Component<DatePickerClearTriggerProps, {}, "ref">;
7
+ type DatePickerClearTrigger = ReturnType<typeof DatePickerClearTrigger>;
8
+ export default DatePickerClearTrigger;
@@ -0,0 +1,27 @@
1
+ <script module lang="ts">
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
3
+
4
+ export interface DatePickerContentBaseProps extends PolymorphicProps<'div'>, RefAttribute {}
5
+ export interface DatePickerContentProps extends Assign<HTMLProps<'div'>, DatePickerContentBaseProps> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import { mergeProps } from '../../core'
10
+ import { Sprawlify } from '../factory'
11
+ import { useDatePickerContext } from './use-date-picker-context'
12
+ import { usePresenceContext } from '../presence'
13
+
14
+ let { ref = $bindable(null), ...props }: DatePickerContentProps = $props()
15
+
16
+ const datePicker = useDatePickerContext()
17
+ const presence = usePresenceContext()
18
+ const mergedProps = $derived(mergeProps(datePicker().getContentProps(), presence().getPresenceProps(), props))
19
+
20
+ function setNode(node: HTMLElement) {
21
+ presence().setNode(node)
22
+ }
23
+ </script>
24
+
25
+ {#if !presence().unmounted}
26
+ <Sprawlify as="div" bind:ref {...mergedProps} {@attach setNode} />
27
+ {/if}
@@ -0,0 +1,8 @@
1
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
2
+ export interface DatePickerContentBaseProps extends PolymorphicProps<'div'>, RefAttribute {
3
+ }
4
+ export interface DatePickerContentProps extends Assign<HTMLProps<'div'>, DatePickerContentBaseProps> {
5
+ }
6
+ declare const DatePickerContent: import("svelte").Component<DatePickerContentProps, {}, "ref">;
7
+ type DatePickerContent = ReturnType<typeof DatePickerContent>;
8
+ export default DatePickerContent;
@@ -0,0 +1,18 @@
1
+ <script module lang="ts">
2
+ import type { Snippet } from 'svelte'
3
+ import type { UseDatePickerContext } from './use-date-picker-context'
4
+
5
+ export interface DatePickerContextProps {
6
+ render: Snippet<[UseDatePickerContext]>
7
+ }
8
+ </script>
9
+
10
+ <script lang="ts">
11
+ import { useDatePickerContext } from './use-date-picker-context'
12
+
13
+ let { render }: DatePickerContextProps = $props()
14
+
15
+ const context = useDatePickerContext()
16
+ </script>
17
+
18
+ {@render render(context)}
@@ -0,0 +1,8 @@
1
+ import type { Snippet } from 'svelte';
2
+ import type { UseDatePickerContext } from './use-date-picker-context';
3
+ export interface DatePickerContextProps {
4
+ render: Snippet<[UseDatePickerContext]>;
5
+ }
6
+ declare const DatePickerContext: import("svelte").Component<DatePickerContextProps, {}, "">;
7
+ type DatePickerContext = ReturnType<typeof DatePickerContext>;
8
+ export default DatePickerContext;
@@ -0,0 +1,19 @@
1
+ <script module lang="ts">
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
3
+
4
+ export interface DatePickerControlBaseProps extends PolymorphicProps<'div'>, RefAttribute {}
5
+ export interface DatePickerControlProps extends Assign<HTMLProps<'div'>, DatePickerControlBaseProps> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import { mergeProps } from '../../core'
10
+ import { Sprawlify } from '../factory'
11
+ import { useDatePickerContext } from './use-date-picker-context'
12
+
13
+ let { ref = $bindable(null), ...props }: DatePickerControlProps = $props()
14
+
15
+ const datePicker = useDatePickerContext()
16
+ const mergedProps = $derived(mergeProps(datePicker().getControlProps(), props))
17
+ </script>
18
+
19
+ <Sprawlify as="div" bind:ref {...mergedProps} />
@@ -0,0 +1,8 @@
1
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
2
+ export interface DatePickerControlBaseProps extends PolymorphicProps<'div'>, RefAttribute {
3
+ }
4
+ export interface DatePickerControlProps extends Assign<HTMLProps<'div'>, DatePickerControlBaseProps> {
5
+ }
6
+ declare const DatePickerControl: import("svelte").Component<DatePickerControlProps, {}, "ref">;
7
+ type DatePickerControl = ReturnType<typeof DatePickerControl>;
8
+ export default DatePickerControl;
@@ -0,0 +1,22 @@
1
+ <script module lang="ts">
2
+ import type { InputProps } from '@sprawlify/primitives/machines/date-picker'
3
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
4
+
5
+ export interface DatePickerInputBaseProps extends InputProps, PolymorphicProps<'input'>, RefAttribute {}
6
+ export interface DatePickerInputProps extends Assign<HTMLProps<'input'>, DatePickerInputBaseProps> {}
7
+ </script>
8
+
9
+ <script lang="ts">
10
+ import { mergeProps } from '../../core'
11
+ import { createSplitProps } from '../../utils/create-split-props'
12
+ import { Sprawlify } from '../factory'
13
+ import { useDatePickerContext } from './use-date-picker-context'
14
+
15
+ let { ref = $bindable(null), ...props }: DatePickerInputProps = $props()
16
+
17
+ const [inputProps, localProps] = $derived(createSplitProps<InputProps>()(props, ['index', 'fixOnBlur']))
18
+ const datePicker = useDatePickerContext()
19
+ const mergedProps = $derived(mergeProps(datePicker().getInputProps(inputProps), localProps))
20
+ </script>
21
+
22
+ <Sprawlify as="input" bind:ref {...mergedProps} />
@@ -0,0 +1,9 @@
1
+ import type { InputProps } from '@sprawlify/primitives/machines/date-picker';
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
3
+ export interface DatePickerInputBaseProps extends InputProps, PolymorphicProps<'input'>, RefAttribute {
4
+ }
5
+ export interface DatePickerInputProps extends Assign<HTMLProps<'input'>, DatePickerInputBaseProps> {
6
+ }
7
+ declare const DatePickerInput: import("svelte").Component<DatePickerInputProps, {}, "ref">;
8
+ type DatePickerInput = ReturnType<typeof DatePickerInput>;
9
+ export default DatePickerInput;
@@ -0,0 +1,19 @@
1
+ <script module lang="ts">
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
3
+
4
+ export interface DatePickerLabelBaseProps extends PolymorphicProps<'label'>, RefAttribute {}
5
+ export interface DatePickerLabelProps extends Assign<HTMLProps<'label'>, DatePickerLabelBaseProps> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import { mergeProps } from '../../core'
10
+ import { Sprawlify } from '../factory'
11
+ import { useDatePickerContext } from './use-date-picker-context'
12
+
13
+ let { ref = $bindable(null), ...props }: DatePickerLabelProps = $props()
14
+
15
+ const datePicker = useDatePickerContext()
16
+ const mergedProps = $derived(mergeProps(datePicker().getLabelProps(), props))
17
+ </script>
18
+
19
+ <Sprawlify as="label" bind:ref {...mergedProps} />
@@ -0,0 +1,8 @@
1
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
2
+ export interface DatePickerLabelBaseProps extends PolymorphicProps<'label'>, RefAttribute {
3
+ }
4
+ export interface DatePickerLabelProps extends Assign<HTMLProps<'label'>, DatePickerLabelBaseProps> {
5
+ }
6
+ declare const DatePickerLabel: import("svelte").Component<DatePickerLabelProps, {}, "ref">;
7
+ type DatePickerLabel = ReturnType<typeof DatePickerLabel>;
8
+ export default DatePickerLabel;
@@ -0,0 +1,25 @@
1
+ <script module lang="ts">
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
3
+
4
+ export interface DatePickerMonthSelectBaseProps extends PolymorphicProps<'select'>, RefAttribute {}
5
+ export interface DatePickerMonthSelectProps extends Assign<HTMLProps<'select'>, DatePickerMonthSelectBaseProps> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import { mergeProps } from '../../core'
10
+ import { Sprawlify } from '../factory'
11
+ import { useDatePickerContext } from './use-date-picker-context'
12
+
13
+ let { ref = $bindable(null), ...props }: DatePickerMonthSelectProps = $props()
14
+
15
+ const datePicker = useDatePickerContext()
16
+ const mergedProps = $derived(mergeProps(datePicker().getMonthSelectProps(), props))
17
+ </script>
18
+
19
+ <Sprawlify as="select" bind:ref {...mergedProps}>
20
+ {#each datePicker().getMonths() as month, i}
21
+ <option value={month.value}>
22
+ {month.label}
23
+ </option>
24
+ {/each}
25
+ </Sprawlify>
@@ -0,0 +1,8 @@
1
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
2
+ export interface DatePickerMonthSelectBaseProps extends PolymorphicProps<'select'>, RefAttribute {
3
+ }
4
+ export interface DatePickerMonthSelectProps extends Assign<HTMLProps<'select'>, DatePickerMonthSelectBaseProps> {
5
+ }
6
+ declare const DatePickerMonthSelect: import("svelte").Component<DatePickerMonthSelectProps, {}, "ref">;
7
+ type DatePickerMonthSelect = ReturnType<typeof DatePickerMonthSelect>;
8
+ export default DatePickerMonthSelect;
@@ -0,0 +1,21 @@
1
+ <script module lang="ts">
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
3
+
4
+ export interface DatePickerNextTriggerBaseProps extends PolymorphicProps<'button'>, RefAttribute {}
5
+ export interface DatePickerNextTriggerProps extends Assign<HTMLProps<'button'>, DatePickerNextTriggerBaseProps> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import { mergeProps } from '../../core'
10
+ import { Sprawlify } from '../factory'
11
+ import { useDatePickerContext } from './use-date-picker-context'
12
+ import { useDatePickerViewPropsContext } from './use-date-picker-view-props-context'
13
+
14
+ let { ref = $bindable(null), ...props }: DatePickerNextTriggerProps = $props()
15
+
16
+ const datePicker = useDatePickerContext()
17
+ const viewProps = useDatePickerViewPropsContext()
18
+ const mergedProps = $derived(mergeProps(datePicker().getNextTriggerProps(viewProps()), props))
19
+ </script>
20
+
21
+ <Sprawlify as="button" bind:ref {...mergedProps} />
@@ -0,0 +1,8 @@
1
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
2
+ export interface DatePickerNextTriggerBaseProps extends PolymorphicProps<'button'>, RefAttribute {
3
+ }
4
+ export interface DatePickerNextTriggerProps extends Assign<HTMLProps<'button'>, DatePickerNextTriggerBaseProps> {
5
+ }
6
+ declare const DatePickerNextTrigger: import("svelte").Component<DatePickerNextTriggerProps, {}, "ref">;
7
+ type DatePickerNextTrigger = ReturnType<typeof DatePickerNextTrigger>;
8
+ export default DatePickerNextTrigger;
@@ -0,0 +1,23 @@
1
+ <script module lang="ts">
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
3
+
4
+ export interface DatePickerPositionerBaseProps extends PolymorphicProps<'div'>, RefAttribute {}
5
+ export interface DatePickerPositionerProps extends Assign<HTMLProps<'div'>, DatePickerPositionerBaseProps> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import { mergeProps } from '../../core'
10
+ import { Sprawlify } from '../factory'
11
+ import { useDatePickerContext } from './use-date-picker-context'
12
+ import { usePresenceContext } from '../presence'
13
+
14
+ let { ref = $bindable(null), ...props }: DatePickerPositionerProps = $props()
15
+
16
+ const datePicker = useDatePickerContext()
17
+ const presence = usePresenceContext()
18
+ const mergedProps = $derived(mergeProps(datePicker().getPositionerProps(), props))
19
+ </script>
20
+
21
+ {#if !presence().unmounted}
22
+ <Sprawlify as="div" bind:ref {...mergedProps} />
23
+ {/if}
@@ -0,0 +1,8 @@
1
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
2
+ export interface DatePickerPositionerBaseProps extends PolymorphicProps<'div'>, RefAttribute {
3
+ }
4
+ export interface DatePickerPositionerProps extends Assign<HTMLProps<'div'>, DatePickerPositionerBaseProps> {
5
+ }
6
+ declare const DatePickerPositioner: import("svelte").Component<DatePickerPositionerProps, {}, "ref">;
7
+ type DatePickerPositioner = ReturnType<typeof DatePickerPositioner>;
8
+ export default DatePickerPositioner;
@@ -0,0 +1,25 @@
1
+ <script module lang="ts">
2
+ import type { PresetTriggerProps } from '@sprawlify/primitives/machines/date-picker'
3
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
4
+
5
+ export interface DatePickerPresetTriggerBaseProps
6
+ extends PresetTriggerProps,
7
+ PolymorphicProps<'button'>,
8
+ RefAttribute {}
9
+ export interface DatePickerPresetTriggerProps extends Assign<HTMLProps<'button'>, DatePickerPresetTriggerBaseProps> {}
10
+ </script>
11
+
12
+ <script lang="ts">
13
+ import { mergeProps } from '../../core'
14
+ import { createSplitProps } from '../../utils/create-split-props'
15
+ import { Sprawlify } from '../factory'
16
+ import { useDatePickerContext } from './use-date-picker-context'
17
+
18
+ let { ref = $bindable(null), ...props }: DatePickerPresetTriggerProps = $props()
19
+
20
+ const [presetTriggerProps, localProps] = $derived(createSplitProps<PresetTriggerProps>()(props, ['value']))
21
+ const datePicker = useDatePickerContext()
22
+ const mergedProps = $derived(mergeProps(datePicker().getPresetTriggerProps(presetTriggerProps), localProps))
23
+ </script>
24
+
25
+ <Sprawlify as="button" bind:ref {...mergedProps} />
@@ -0,0 +1,9 @@
1
+ import type { PresetTriggerProps } from '@sprawlify/primitives/machines/date-picker';
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
3
+ export interface DatePickerPresetTriggerBaseProps extends PresetTriggerProps, PolymorphicProps<'button'>, RefAttribute {
4
+ }
5
+ export interface DatePickerPresetTriggerProps extends Assign<HTMLProps<'button'>, DatePickerPresetTriggerBaseProps> {
6
+ }
7
+ declare const DatePickerPresetTrigger: import("svelte").Component<DatePickerPresetTriggerProps, {}, "ref">;
8
+ type DatePickerPresetTrigger = ReturnType<typeof DatePickerPresetTrigger>;
9
+ export default DatePickerPresetTrigger;
@@ -0,0 +1,21 @@
1
+ <script module lang="ts">
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
3
+
4
+ export interface DatePickerPrevTriggerBaseProps extends PolymorphicProps<'button'>, RefAttribute {}
5
+ export interface DatePickerPrevTriggerProps extends Assign<HTMLProps<'button'>, DatePickerPrevTriggerBaseProps> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import { mergeProps } from '../../core'
10
+ import { Sprawlify } from '../factory'
11
+ import { useDatePickerContext } from './use-date-picker-context'
12
+ import { useDatePickerViewPropsContext } from './use-date-picker-view-props-context'
13
+
14
+ let { ref = $bindable(null), ...props }: DatePickerPrevTriggerProps = $props()
15
+
16
+ const datePicker = useDatePickerContext()
17
+ const viewProps = useDatePickerViewPropsContext()
18
+ const mergedProps = $derived(mergeProps(datePicker().getPrevTriggerProps(viewProps()), props))
19
+ </script>
20
+
21
+ <Sprawlify as="button" bind:ref {...mergedProps} />
@@ -0,0 +1,8 @@
1
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
2
+ export interface DatePickerPrevTriggerBaseProps extends PolymorphicProps<'button'>, RefAttribute {
3
+ }
4
+ export interface DatePickerPrevTriggerProps extends Assign<HTMLProps<'button'>, DatePickerPrevTriggerBaseProps> {
5
+ }
6
+ declare const DatePickerPrevTrigger: import("svelte").Component<DatePickerPrevTriggerProps, {}, "ref">;
7
+ type DatePickerPrevTrigger = ReturnType<typeof DatePickerPrevTrigger>;
8
+ export default DatePickerPrevTrigger;
@@ -0,0 +1,27 @@
1
+ <script module lang="ts">
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
3
+
4
+ export interface DatePickerRangeTextBaseProps extends PolymorphicProps<'div'>, RefAttribute {}
5
+ export interface DatePickerRangeTextProps extends Assign<HTMLProps<'div'>, DatePickerRangeTextBaseProps> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import { mergeProps } from '../../core'
10
+ import { uniq } from '@sprawlify/primitives/utils'
11
+ import { Sprawlify } from '../factory'
12
+ import { useDatePickerContext } from './use-date-picker-context'
13
+
14
+ let { ref = $bindable(null), ...props }: DatePickerRangeTextProps = $props()
15
+
16
+ const datePicker = useDatePickerContext()
17
+ const mergedProps = $derived(mergeProps(datePicker().getRangeTextProps(), props))
18
+
19
+ const visibleRangeText = $derived.by(() => {
20
+ const { start, end } = datePicker().visibleRangeText
21
+ return uniq([start, end]).filter(Boolean).join(' - ')
22
+ })
23
+ </script>
24
+
25
+ <Sprawlify as="div" bind:ref {...mergedProps}>
26
+ {visibleRangeText}
27
+ </Sprawlify>
@@ -0,0 +1,8 @@
1
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
2
+ export interface DatePickerRangeTextBaseProps extends PolymorphicProps<'div'>, RefAttribute {
3
+ }
4
+ export interface DatePickerRangeTextProps extends Assign<HTMLProps<'div'>, DatePickerRangeTextBaseProps> {
5
+ }
6
+ declare const DatePickerRangeText: import("svelte").Component<DatePickerRangeTextProps, {}, "ref">;
7
+ type DatePickerRangeText = ReturnType<typeof DatePickerRangeText>;
8
+ export default DatePickerRangeText;
@@ -0,0 +1,34 @@
1
+ <script module lang="ts">
2
+ import type { Assign, HTMLProps, PolymorphicProps } from '../../types'
3
+ import type { UsePresenceProps } from '../presence'
4
+ import type { UseDatePickerReturn } from './use-date-picker.svelte'
5
+
6
+ interface RootProviderProps {
7
+ value: UseDatePickerReturn
8
+ }
9
+
10
+ export interface DatePickerRootProviderBaseProps
11
+ extends RootProviderProps,
12
+ UsePresenceProps,
13
+ PolymorphicProps<'div'> {}
14
+ export interface DatePickerRootProviderProps extends Assign<HTMLProps<'div'>, DatePickerRootProviderBaseProps> {}
15
+ </script>
16
+
17
+ <script lang="ts">
18
+ import { mergeProps } from '../../core'
19
+ import { Sprawlify } from '../factory'
20
+ import { PresenceProvider, splitPresenceProps, usePresence } from '../presence'
21
+ import { DatePickerProvider } from './use-date-picker-context'
22
+
23
+ const { value, ...props }: DatePickerRootProviderProps = $props()
24
+
25
+ const [presenceProps, localProps] = $derived(splitPresenceProps(props))
26
+
27
+ const presence = usePresence(() => ({ present: value().open, ...presenceProps }))
28
+ const mergedProps = $derived(mergeProps(value().getRootProps(), localProps))
29
+
30
+ DatePickerProvider(value)
31
+ PresenceProvider(presence)
32
+ </script>
33
+
34
+ <Sprawlify as="div" {...mergedProps} />
@@ -0,0 +1,13 @@
1
+ import type { Assign, HTMLProps, PolymorphicProps } from '../../types';
2
+ import type { UsePresenceProps } from '../presence';
3
+ import type { UseDatePickerReturn } from './use-date-picker.svelte';
4
+ interface RootProviderProps {
5
+ value: UseDatePickerReturn;
6
+ }
7
+ export interface DatePickerRootProviderBaseProps extends RootProviderProps, UsePresenceProps, PolymorphicProps<'div'> {
8
+ }
9
+ export interface DatePickerRootProviderProps extends Assign<HTMLProps<'div'>, DatePickerRootProviderBaseProps> {
10
+ }
11
+ declare const DatePickerRootProvider: import("svelte").Component<DatePickerRootProviderProps, {}, "">;
12
+ type DatePickerRootProvider = ReturnType<typeof DatePickerRootProvider>;
13
+ export default DatePickerRootProvider;
@@ -0,0 +1,109 @@
1
+ <script module lang="ts">
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
3
+ import type { UseDatePickerProps } from './use-date-picker.svelte'
4
+ import type { UsePresenceProps } from '../presence'
5
+
6
+ export interface DatePickerRootBaseProps
7
+ extends UseDatePickerProps,
8
+ UsePresenceProps,
9
+ PolymorphicProps<'div'>,
10
+ RefAttribute {}
11
+ export interface DatePickerRootProps extends Assign<HTMLProps<'div'>, DatePickerRootBaseProps> {}
12
+ </script>
13
+
14
+ <script lang="ts">
15
+ import { mergeProps } from '../../core'
16
+ import { createSplitProps } from '../../utils/create-split-props'
17
+ import { Sprawlify } from '../factory'
18
+ import { PresenceProvider, splitPresenceProps, usePresence } from '../presence'
19
+ import { useDatePicker } from './use-date-picker.svelte'
20
+ import { DatePickerProvider } from './use-date-picker-context'
21
+
22
+ let {
23
+ ref = $bindable(null),
24
+ value = $bindable(),
25
+ focusedValue = $bindable(),
26
+ open = $bindable(),
27
+ view = $bindable(),
28
+ ...props
29
+ }: DatePickerRootProps = $props()
30
+ const providedId = $props.id()
31
+
32
+ const [presenceProps, datePickerProps] = $derived(splitPresenceProps(props))
33
+ const [useDatePickerProps, localProps] = $derived(
34
+ createSplitProps<UseDatePickerProps>()(datePickerProps, [
35
+ 'closeOnSelect',
36
+ 'defaultFocusedValue',
37
+ 'defaultOpen',
38
+ 'defaultValue',
39
+ 'defaultView',
40
+ 'disabled',
41
+ 'fixedWeeks',
42
+ 'focusedValue',
43
+ 'format',
44
+ 'id',
45
+ 'ids',
46
+ 'inline',
47
+ 'invalid',
48
+ 'isDateUnavailable',
49
+ 'locale',
50
+ 'max',
51
+ 'maxView',
52
+ 'min',
53
+ 'minView',
54
+ 'name',
55
+ 'numOfMonths',
56
+ 'onFocusChange',
57
+ 'onOpenChange',
58
+ 'onValueChange',
59
+ 'onViewChange',
60
+ 'open',
61
+ 'outsideDaySelectable',
62
+ 'parse',
63
+ 'placeholder',
64
+ 'positioning',
65
+ 'readOnly',
66
+ 'required',
67
+ 'selectionMode',
68
+ 'startOfWeek',
69
+ 'timeZone',
70
+ 'translations',
71
+ 'value',
72
+ 'view',
73
+ ]),
74
+ )
75
+
76
+ const resolvedProps = $derived<UseDatePickerProps>({
77
+ ...useDatePickerProps,
78
+ id: useDatePickerProps.id ?? providedId,
79
+ value,
80
+ onValueChange(details) {
81
+ useDatePickerProps.onValueChange?.(details)
82
+ if (value !== undefined) value = details.value
83
+ },
84
+ focusedValue,
85
+ onFocusChange(details) {
86
+ useDatePickerProps.onFocusChange?.(details)
87
+ if (focusedValue !== undefined) focusedValue = details.focusedValue
88
+ },
89
+ open,
90
+ onOpenChange(details) {
91
+ useDatePickerProps.onOpenChange?.(details)
92
+ if (open !== undefined) open = details.open
93
+ },
94
+ view,
95
+ onViewChange(details) {
96
+ useDatePickerProps.onViewChange?.(details)
97
+ if (view !== undefined) view = details.view
98
+ },
99
+ })
100
+
101
+ const datePicker = useDatePicker(() => resolvedProps)
102
+ const presence = usePresence(() => ({ present: datePicker().open, ...presenceProps }))
103
+ const mergedProps = $derived(mergeProps(datePicker().getRootProps(), localProps))
104
+
105
+ DatePickerProvider(datePicker)
106
+ PresenceProvider(presence)
107
+ </script>
108
+
109
+ <Sprawlify as="div" bind:ref {...mergedProps} />
@@ -0,0 +1,10 @@
1
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
2
+ import type { UseDatePickerProps } from './use-date-picker.svelte';
3
+ import type { UsePresenceProps } from '../presence';
4
+ export interface DatePickerRootBaseProps extends UseDatePickerProps, UsePresenceProps, PolymorphicProps<'div'>, RefAttribute {
5
+ }
6
+ export interface DatePickerRootProps extends Assign<HTMLProps<'div'>, DatePickerRootBaseProps> {
7
+ }
8
+ declare const DatePickerRoot: import("svelte").Component<DatePickerRootProps, {}, "value" | "view" | "open" | "ref" | "focusedValue">;
9
+ type DatePickerRoot = ReturnType<typeof DatePickerRoot>;
10
+ export default DatePickerRoot;