@ark-ui/solid 3.0.0-7 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/README.md +41 -35
  2. package/dist/cjs/index.js +49 -24
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/esm/index.js +47 -25
  5. package/dist/esm/index.js.map +1 -1
  6. package/dist/source/components/color-picker/color-picker-view.jsx +0 -1
  7. package/dist/source/components/pagination/pagination-root.jsx +1 -0
  8. package/dist/source/components/radio-group/index.js +1 -0
  9. package/dist/source/components/radio-group/radio-group-item-control.jsx +1 -4
  10. package/dist/source/components/radio-group/radio-group-item-hidden-input.jsx +10 -0
  11. package/dist/source/components/radio-group/radio-group.js +1 -0
  12. package/dist/source/components/segment-group/index.js +1 -0
  13. package/dist/source/components/segment-group/segment-group-item-control.jsx +1 -4
  14. package/dist/source/components/segment-group/segment-group-item-hidden-input.jsx +10 -0
  15. package/dist/source/components/segment-group/segment-group.js +1 -0
  16. package/dist/source/components/slider/index.js +1 -0
  17. package/dist/source/components/slider/slider-hidden-input.jsx +10 -0
  18. package/dist/source/components/slider/slider-thumb.jsx +6 -3
  19. package/dist/source/components/slider/slider.js +1 -0
  20. package/dist/source/components/slider/use-slider-thumb-props-context.js +5 -0
  21. package/dist/types/components/color-picker/color-picker-view.d.ts +3 -4
  22. package/dist/types/components/pagination/index.d.ts +1 -1
  23. package/dist/types/components/pagination/pagination.d.ts +1 -1
  24. package/dist/types/components/radio-group/index.d.ts +1 -0
  25. package/dist/types/components/radio-group/radio-group-item-hidden-input.d.ts +4 -0
  26. package/dist/types/components/radio-group/radio-group.d.ts +1 -0
  27. package/dist/types/components/segment-group/index.d.ts +3 -2
  28. package/dist/types/components/segment-group/segment-group-item-hidden-input.d.ts +4 -0
  29. package/dist/types/components/segment-group/segment-group.d.ts +1 -0
  30. package/dist/types/components/slider/index.d.ts +2 -1
  31. package/dist/types/components/slider/slider-hidden-input.d.ts +4 -0
  32. package/dist/types/components/slider/slider.d.ts +1 -0
  33. package/dist/types/components/slider/use-slider-thumb-props-context.d.ts +2 -0
  34. package/package.json +45 -45
package/README.md CHANGED
@@ -1,6 +1,8 @@
1
1
  # Welcome to Ark UI
2
2
 
3
- Ark UI is a headless, open-source UI library with over 30+ components designed for building reusable, scalable Design Systems. It supports a wide range of JavaScript frameworks, offering dedciated packages for each supported framework.
3
+ Ark UI is a headless, open-source UI library with over 30+ components designed for building
4
+ reusable, scalable Design Systems. It supports a wide range of JavaScript frameworks, offering
5
+ dedciated packages for each supported framework.
4
6
 
5
7
  ## Supported Frameworks
6
8
 
@@ -12,37 +14,37 @@ Ark UI is available for the following JavaScript frameworks:
12
14
 
13
15
  ## Available Components
14
16
 
15
- - [Accordion](https://ark-ui.com/docs/components/accordion)
16
- - [Avatar](https://ark-ui.com/docs/components/avatar)
17
- - [Carousel](https://ark-ui.com/docs/components/carousel)
18
- - [Checkbox](https://ark-ui.com/docs/components/checkbox)
19
- - [Color Picker](https://ark-ui.com/docs/components/color-picker)
20
- - [Combobox](https://ark-ui.com/docs/components/combobox)
21
- - [Date Picker](https://ark-ui.com/docs/components/date-picker)
22
- - [Dialog](https://ark-ui.com/docs/components/dialog)
23
- - [Editable](https://ark-ui.com/docs/components/editable)
24
- - [File Upload](https://ark-ui.com/docs/components/file-upload)
25
- - [Hover Card](https://ark-ui.com/docs/components/hover-card)
26
- - [Menu](https://ark-ui.com/docs/components/menu)
27
- - [Number Input](https://ark-ui.com/docs/components/number-input)
28
- - [Pagination](https://ark-ui.com/docs/components/pagination)
29
- - [Pin Input](https://ark-ui.com/docs/components/pin-input)
30
- - [Popover](https://ark-ui.com/docs/components/popover)
31
- - [Progress](https://ark-ui.com/docs/components/progress)
32
- - [Radio Group](https://ark-ui.com/docs/components/radio-group)
33
- - [Range Slider](https://ark-ui.com/docs/components/slider)
34
- - [Rating Group](https://ark-ui.com/docs/components/rating-group)
35
- - [Segment Group](https://ark-ui.com/docs/components/segment-group)
36
- - [Select](https://ark-ui.com/docs/components/select)
37
- - [Slider](https://ark-ui.com/docs/components/slider)
38
- - [Splitter](https://ark-ui.com/docs/components/splitter)
39
- - [Switch](https://ark-ui.com/docs/components/switch)
40
- - [Tabs](https://ark-ui.com/docs/components/tabs)
41
- - [Tags Input](https://ark-ui.com/docs/components/tags-input)
42
- - [Toast](https://ark-ui.com/docs/components/toast)
43
- - [Toggle Group](https://ark-ui.com/docs/components/toggle-group)
44
- - [Tooltip](https://ark-ui.com/docs/components/tooltip)
45
- - [Tree View](https://ark-ui.com/docs/components/tree-view)
17
+ - [Accordion](https://ark-ui.com/solid/docs/components/accordion)
18
+ - [Avatar](https://ark-ui.com/solid/docs/components/avatar)
19
+ - [Carousel](https://ark-ui.com/solid/docs/components/carousel)
20
+ - [Checkbox](https://ark-ui.com/solid/docs/components/checkbox)
21
+ - [Color Picker](https://ark-ui.com/solid/docs/components/color-picker)
22
+ - [Combobox](https://ark-ui.com/solid/docs/components/combobox)
23
+ - [Date Picker](https://ark-ui.com/solid/docs/components/date-picker)
24
+ - [Dialog](https://ark-ui.com/solid/docs/components/dialog)
25
+ - [Editable](https://ark-ui.com/solid/docs/components/editable)
26
+ - [File Upload](https://ark-ui.com/solid/docs/components/file-upload)
27
+ - [Hover Card](https://ark-ui.com/solid/docs/components/hover-card)
28
+ - [Menu](https://ark-ui.com/solid/docs/components/menu)
29
+ - [Number Input](https://ark-ui.com/solid/docs/components/number-input)
30
+ - [Pagination](https://ark-ui.com/solid/docs/components/pagination)
31
+ - [Pin Input](https://ark-ui.com/solid/docs/components/pin-input)
32
+ - [Popover](https://ark-ui.com/solid/docs/components/popover)
33
+ - [Progress](https://ark-ui.com/solid/docs/components/progress)
34
+ - [Radio Group](https://ark-ui.com/solid/docs/components/radio-group)
35
+ - [Range Slider](https://ark-ui.com/solid/docs/components/slider)
36
+ - [Rating Group](https://ark-ui.com/solid/docs/components/rating-group)
37
+ - [Segment Group](https://ark-ui.com/solid/docs/components/segment-group)
38
+ - [Select](https://ark-ui.com/solid/docs/components/select)
39
+ - [Slider](https://ark-ui.com/solid/docs/components/slider)
40
+ - [Splitter](https://ark-ui.com/solid/docs/components/splitter)
41
+ - [Switch](https://ark-ui.com/solid/docs/components/switch)
42
+ - [Tabs](https://ark-ui.com/solid/docs/components/tabs)
43
+ - [Tags Input](https://ark-ui.com/solid/docs/components/tags-input)
44
+ - [Toast](https://ark-ui.com/solid/docs/components/toast)
45
+ - [Toggle Group](https://ark-ui.com/solid/docs/components/toggle-group)
46
+ - [Tooltip](https://ark-ui.com/solid/docs/components/tooltip)
47
+ - [Tree View](https://ark-ui.com/solid/docs/components/tree-view)
46
48
 
47
49
  ## Installation
48
50
 
@@ -97,7 +99,8 @@ export const MySlider = (props: SliderProps) => {
97
99
 
98
100
  ## Documentation
99
101
 
100
- For more detailed documentation and examples, please visit the [official documentation](https://ark-ui.com/).
102
+ For more detailed documentation and examples, please visit the
103
+ [official documentation](https://ark-ui.com/).
101
104
 
102
105
  ## Roadmap
103
106
 
@@ -105,8 +108,11 @@ You can request, vote for, and check upcoming features on our [roadmap](https://
105
108
 
106
109
  ## Contribution
107
110
 
108
- We welcome contributions to Ark UI. Please read our [contributing guidelines](https://github.com/chakra-ui/ark/blob/main/CONTRIBUTING.md) for more information on how to contribute.
111
+ We welcome contributions to Ark UI. Please read our
112
+ [contributing guidelines](https://github.com/chakra-ui/ark/blob/main/CONTRIBUTING.md) for more
113
+ information on how to contribute.
109
114
 
110
115
  ## License
111
116
 
112
- This project is licensed under the terms of the [MIT license](https://github.com/chakra-ui/ark/blob/main/LICENSE).
117
+ This project is licensed under the terms of the
118
+ [MIT license](https://github.com/chakra-ui/ark/blob/main/LICENSE).
package/dist/cjs/index.js CHANGED
@@ -201,7 +201,7 @@ const [EnvironmentContextProvider, useEnvironmentContext] = createContext({
201
201
  })
202
202
  });
203
203
 
204
- var _tmpl$$6 = /*#__PURE__*/web.template(`<span hidden>`);
204
+ var _tmpl$$4 = /*#__PURE__*/web.template(`<span hidden>`);
205
205
  const EnvironmentProvider = props => {
206
206
  const [spanRef, setSpanRef] = solidJs.createSignal();
207
207
  const getRootNode = () => runIfFn(props.value) ?? spanRef()?.ownerDocument ?? document;
@@ -218,7 +218,7 @@ const EnvironmentProvider = props => {
218
218
  return !props.value;
219
219
  },
220
220
  get children() {
221
- var _el$ = _tmpl$$6();
221
+ var _el$ = _tmpl$$4();
222
222
  web.use(setSpanRef, _el$);
223
223
  return _el$;
224
224
  }
@@ -1044,8 +1044,6 @@ const ColorPickerValueText = props => {
1044
1044
  const ColorPickerView = props => {
1045
1045
  const api = useColorPickerContext();
1046
1046
  const mergedProps = solid.mergeProps(() => anatomy.colorPickerAnatomy.build().view.attrs, props);
1047
-
1048
- // TODO @segunadebayo
1049
1047
  return web.createComponent(solidJs.Show, {
1050
1048
  get when() {
1051
1049
  return api().format === props.format;
@@ -1337,14 +1335,14 @@ const DatePickerLabel = props => {
1337
1335
  return web.createComponent(ark.label, mergedProps);
1338
1336
  };
1339
1337
 
1340
- var _tmpl$$5 = /*#__PURE__*/web.template(`<option>`);
1338
+ var _tmpl$$3 = /*#__PURE__*/web.template(`<option>`);
1341
1339
  const DatePickerMonthSelect = props => {
1342
1340
  const api = useDatePickerContext();
1343
1341
  const mergedProps = solid.mergeProps(() => api().monthSelectProps, props);
1344
1342
  return web.createComponent(ark.select, web.mergeProps(mergedProps, {
1345
1343
  get children() {
1346
1344
  return api().getMonths().map(month => (() => {
1347
- var _el$ = _tmpl$$5();
1345
+ var _el$ = _tmpl$$3();
1348
1346
  web.insert(_el$, () => month.label);
1349
1347
  web.effect(() => _el$.value = month.value);
1350
1348
  return _el$;
@@ -1573,7 +1571,7 @@ const DatePickerViewTrigger = props => {
1573
1571
  return web.createComponent(ark.button, mergedProps);
1574
1572
  };
1575
1573
 
1576
- var _tmpl$$4 = /*#__PURE__*/web.template(`<option>`);
1574
+ var _tmpl$$2 = /*#__PURE__*/web.template(`<option>`);
1577
1575
  const DatePickerYearSelect = props => {
1578
1576
  const api = useDatePickerContext();
1579
1577
  const mergedProps = solid.mergeProps(() => api().yearSelectProps, props);
@@ -1583,7 +1581,7 @@ const DatePickerYearSelect = props => {
1583
1581
  from: 1_000,
1584
1582
  to: 4_000
1585
1583
  }).map(year => (() => {
1586
- var _el$ = _tmpl$$4();
1584
+ var _el$ = _tmpl$$2();
1587
1585
  _el$.value = year;
1588
1586
  web.insert(_el$, year);
1589
1587
  return _el$;
@@ -2578,7 +2576,7 @@ const usePagination = props => {
2578
2576
  };
2579
2577
 
2580
2578
  const PaginationRoot = props => {
2581
- const [usePaginationProps, localProps] = createSplitProps()(props, ['count', 'defaultPage', 'id', 'ids', 'onPageChange', 'page', 'pageSize', 'siblingCount', 'translations', 'type']);
2579
+ const [usePaginationProps, localProps] = createSplitProps()(props, ['count', 'defaultPage', 'id', 'ids', 'onPageChange', 'onPageSizeChange', 'page', 'pageSize', 'siblingCount', 'translations', 'type']);
2582
2580
  const api = usePagination(usePaginationProps);
2583
2581
  const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
2584
2582
  return web.createComponent(PaginationProvider, {
@@ -2955,16 +2953,18 @@ const RadioGroupItem = props => {
2955
2953
 
2956
2954
  const RadioGroupItemContext = props => props.children(useRadioGroupItemContext());
2957
2955
 
2958
- var _tmpl$$3 = /*#__PURE__*/web.template(`<input>`);
2959
2956
  const RadioGroupItemControl = props => {
2960
2957
  const radioGroup = useRadioGroupContext();
2961
2958
  const itemProps = useRadioGroupItemPropsContext();
2962
2959
  const mergedProps = solid.mergeProps(() => radioGroup().getItemControlProps(itemProps), props);
2963
- return [web.createComponent(ark.div, mergedProps), (() => {
2964
- var _el$ = _tmpl$$3();
2965
- web.spread(_el$, web.mergeProps(() => radioGroup().getItemHiddenInputProps(itemProps)), false, false);
2966
- return _el$;
2967
- })()];
2960
+ return web.createComponent(ark.div, mergedProps);
2961
+ };
2962
+
2963
+ const RadioGroupItemHiddenInput = props => {
2964
+ const radioGroup = useRadioGroupContext();
2965
+ const itemProps = useRadioGroupItemPropsContext();
2966
+ const mergedProps = solid.mergeProps(() => radioGroup().getItemHiddenInputProps(itemProps), props);
2967
+ return web.createComponent(ark.input, mergedProps);
2968
2968
  };
2969
2969
 
2970
2970
  const RadioGroupItemText = props => {
@@ -3016,6 +3016,7 @@ var radioGroup = /*#__PURE__*/Object.freeze({
3016
3016
  Item: RadioGroupItem,
3017
3017
  ItemContext: RadioGroupItemContext,
3018
3018
  ItemControl: RadioGroupItemControl,
3019
+ ItemHiddenInput: RadioGroupItemHiddenInput,
3019
3020
  ItemText: RadioGroupItemText,
3020
3021
  Label: RadioGroupLabel,
3021
3022
  Root: RadioGroupRoot
@@ -3149,16 +3150,18 @@ const SegmentGroupItem = props => {
3149
3150
 
3150
3151
  const SegmentGroupItemContext = props => props.children(useSegmentGroupItemContext());
3151
3152
 
3152
- var _tmpl$$2 = /*#__PURE__*/web.template(`<input>`);
3153
3153
  const SegmentGroupItemControl = props => {
3154
3154
  const segmentGroup = useSegmentGroupContext();
3155
3155
  const itemProps = useSegmentGroupItemPropsContext();
3156
3156
  const mergedProps = solid.mergeProps(() => segmentGroup().getItemControlProps(itemProps), anatomy.segmentGroupAnatomy.build().itemControl.attrs, props);
3157
- return [web.createComponent(ark.div, mergedProps), (() => {
3158
- var _el$ = _tmpl$$2();
3159
- web.spread(_el$, web.mergeProps(() => segmentGroup().getItemHiddenInputProps(itemProps)), false, false);
3160
- return _el$;
3161
- })()];
3157
+ return web.createComponent(ark.div, mergedProps);
3158
+ };
3159
+
3160
+ const SegmentGroupItemHiddenInput = props => {
3161
+ const segmentGroup = useSegmentGroupContext();
3162
+ const itemProps = useSegmentGroupItemPropsContext();
3163
+ const mergedProps = solid.mergeProps(() => segmentGroup().getItemHiddenInputProps(itemProps), props);
3164
+ return web.createComponent(ark.input, mergedProps);
3162
3165
  };
3163
3166
 
3164
3167
  const SegmentGroupItemText = props => {
@@ -3210,6 +3213,7 @@ var segmentGroup = /*#__PURE__*/Object.freeze({
3210
3213
  Item: SegmentGroupItem,
3211
3214
  ItemContext: SegmentGroupItemContext,
3212
3215
  ItemControl: SegmentGroupItemControl,
3216
+ ItemHiddenInput: SegmentGroupItemHiddenInput,
3213
3217
  ItemText: SegmentGroupItemText,
3214
3218
  Label: SegmentGroupLabel,
3215
3219
  Root: SegmentGroupRoot
@@ -3471,6 +3475,18 @@ const SliderControl = props => {
3471
3475
  return web.createComponent(ark.div, mergedProps);
3472
3476
  };
3473
3477
 
3478
+ const [SliderThumbPropsProvider, useSliderThumbPropsContext] = createContext({
3479
+ hookName: 'useSliderThumbPropsContext',
3480
+ providerName: '<SliderThumbPropsProvider />'
3481
+ });
3482
+
3483
+ const SliderHiddenInput = props => {
3484
+ const slider = useSliderContext();
3485
+ const thumbProps = useSliderThumbPropsContext();
3486
+ const mergedProps = solid.mergeProps(slider().getHiddenInputProps(thumbProps), props);
3487
+ return web.createComponent(ark.input, mergedProps);
3488
+ };
3489
+
3474
3490
  const SliderLabel = props => {
3475
3491
  const api = useSliderContext();
3476
3492
  const mergedProps = solid.mergeProps(() => api().labelProps, props);
@@ -3527,9 +3543,14 @@ const SliderRoot = props => {
3527
3543
 
3528
3544
  const SliderThumb = props => {
3529
3545
  const [thumbProps, localProps] = createSplitProps()(props, ['index', 'name']);
3530
- const api = useSliderContext();
3531
- const mergedProps = solid.mergeProps(() => api().getThumbProps(thumbProps), localProps);
3532
- return web.createComponent(ark.div, mergedProps);
3546
+ const slider = useSliderContext();
3547
+ const mergedProps = solid.mergeProps(() => slider().getThumbProps(thumbProps), localProps);
3548
+ return web.createComponent(SliderThumbPropsProvider, {
3549
+ value: thumbProps,
3550
+ get children() {
3551
+ return web.createComponent(ark.div, mergedProps);
3552
+ }
3553
+ });
3533
3554
  };
3534
3555
 
3535
3556
  const SliderTrack = props => {
@@ -3552,6 +3573,7 @@ var slider = /*#__PURE__*/Object.freeze({
3552
3573
  __proto__: null,
3553
3574
  Context: SliderContext,
3554
3575
  Control: SliderControl,
3576
+ HiddenInput: SliderHiddenInput,
3555
3577
  Label: SliderLabel,
3556
3578
  Marker: SliderMarker,
3557
3579
  MarkerGroup: SliderMarkerGroup,
@@ -4602,6 +4624,7 @@ exports.RadioGroupIndicator = RadioGroupIndicator;
4602
4624
  exports.RadioGroupItem = RadioGroupItem;
4603
4625
  exports.RadioGroupItemContext = RadioGroupItemContext;
4604
4626
  exports.RadioGroupItemControl = RadioGroupItemControl;
4627
+ exports.RadioGroupItemHiddenInput = RadioGroupItemHiddenInput;
4605
4628
  exports.RadioGroupItemText = RadioGroupItemText;
4606
4629
  exports.RadioGroupLabel = RadioGroupLabel;
4607
4630
  exports.RadioGroupRoot = RadioGroupRoot;
@@ -4619,6 +4642,7 @@ exports.SegmentGroupIndicator = SegmentGroupIndicator;
4619
4642
  exports.SegmentGroupItem = SegmentGroupItem;
4620
4643
  exports.SegmentGroupItemContext = SegmentGroupItemContext;
4621
4644
  exports.SegmentGroupItemControl = SegmentGroupItemControl;
4645
+ exports.SegmentGroupItemHiddenInput = SegmentGroupItemHiddenInput;
4622
4646
  exports.SegmentGroupItemText = SegmentGroupItemText;
4623
4647
  exports.SegmentGroupLabel = SegmentGroupLabel;
4624
4648
  exports.SegmentGroupRoot = SegmentGroupRoot;
@@ -4643,6 +4667,7 @@ exports.SelectValueText = SelectValueText;
4643
4667
  exports.Slider = slider;
4644
4668
  exports.SliderContext = SliderContext;
4645
4669
  exports.SliderControl = SliderControl;
4670
+ exports.SliderHiddenInput = SliderHiddenInput;
4646
4671
  exports.SliderLabel = SliderLabel;
4647
4672
  exports.SliderMarker = SliderMarker;
4648
4673
  exports.SliderMarkerGroup = SliderMarkerGroup;