@ark-ui/solid 3.8.0 → 3.9.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 (50) hide show
  1. package/dist/cjs/index.js +182 -1
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/esm/index.js +165 -2
  4. package/dist/esm/index.js.map +1 -1
  5. package/dist/source/components/editable/editable-root.jsx +3 -2
  6. package/dist/source/components/editable/index.js +1 -0
  7. package/dist/source/components/editable/use-editable.js +2 -0
  8. package/dist/source/components/index.js +1 -0
  9. package/dist/source/components/steps/index.js +17 -0
  10. package/dist/source/components/steps/steps-completed-content.jsx +8 -0
  11. package/dist/source/components/steps/steps-content.jsx +10 -0
  12. package/dist/source/components/steps/steps-indicator.jsx +10 -0
  13. package/dist/source/components/steps/steps-item-context.jsx +5 -0
  14. package/dist/source/components/steps/steps-item.jsx +18 -0
  15. package/dist/source/components/steps/steps-list.jsx +8 -0
  16. package/dist/source/components/steps/steps-next-trigger.jsx +8 -0
  17. package/dist/source/components/steps/steps-prev-trigger.jsx +8 -0
  18. package/dist/source/components/steps/steps-progress.jsx +8 -0
  19. package/dist/source/components/steps/steps-root-provider.jsx +11 -0
  20. package/dist/source/components/steps/steps-root.jsx +23 -0
  21. package/dist/source/components/steps/steps-separator.jsx +10 -0
  22. package/dist/source/components/steps/steps-trigger.jsx +10 -0
  23. package/dist/source/components/steps/steps.js +12 -0
  24. package/dist/source/components/steps/use-steps-context.js +5 -0
  25. package/dist/source/components/steps/use-steps-item-context.js +5 -0
  26. package/dist/source/components/steps/use-steps-item-props-context.js +5 -0
  27. package/dist/source/components/steps/use-steps.js +18 -0
  28. package/dist/types/components/editable/index.d.ts +3 -0
  29. package/dist/types/components/editable/use-editable.d.ts +6 -1
  30. package/dist/types/components/index.d.ts +1 -0
  31. package/dist/types/components/steps/index.d.ts +18 -0
  32. package/dist/types/components/steps/steps-completed-content.d.ts +6 -0
  33. package/dist/types/components/steps/steps-content.d.ts +7 -0
  34. package/dist/types/components/steps/steps-indicator.d.ts +6 -0
  35. package/dist/types/components/steps/steps-item-context.d.ts +9 -0
  36. package/dist/types/components/steps/steps-item.d.ts +7 -0
  37. package/dist/types/components/steps/steps-list.d.ts +6 -0
  38. package/dist/types/components/steps/steps-next-trigger.d.ts +6 -0
  39. package/dist/types/components/steps/steps-prev-trigger.d.ts +6 -0
  40. package/dist/types/components/steps/steps-progress.d.ts +6 -0
  41. package/dist/types/components/steps/steps-root-provider.d.ts +11 -0
  42. package/dist/types/components/steps/steps-root.d.ts +7 -0
  43. package/dist/types/components/steps/steps-separator.d.ts +6 -0
  44. package/dist/types/components/steps/steps-trigger.d.ts +6 -0
  45. package/dist/types/components/steps/steps.d.ts +13 -0
  46. package/dist/types/components/steps/use-steps-context.d.ts +4 -0
  47. package/dist/types/components/steps/use-steps-item-context.d.ts +5 -0
  48. package/dist/types/components/steps/use-steps-item-props-context.d.ts +4 -0
  49. package/dist/types/components/steps/use-steps.d.ts +13 -0
  50. package/package.json +45 -45
package/dist/cjs/index.js CHANGED
@@ -43,6 +43,7 @@ var toggleGroup$1 = require('@zag-js/toggle-group');
43
43
  var tooltip$1 = require('@zag-js/tooltip');
44
44
  var treeView$1 = require('@zag-js/tree-view');
45
45
  var timer$1 = require('@zag-js/timer');
46
+ var steps$1 = require('@zag-js/steps');
46
47
 
47
48
  function _interopNamespaceDefault(e) {
48
49
  var n = Object.create(null);
@@ -97,6 +98,7 @@ var toggleGroup__namespace = /*#__PURE__*/_interopNamespaceDefault(toggleGroup$1
97
98
  var tooltip__namespace = /*#__PURE__*/_interopNamespaceDefault(tooltip$1);
98
99
  var treeView__namespace = /*#__PURE__*/_interopNamespaceDefault(treeView$1);
99
100
  var timer__namespace = /*#__PURE__*/_interopNamespaceDefault(timer$1);
101
+ var steps__namespace = /*#__PURE__*/_interopNamespaceDefault(steps$1);
100
102
 
101
103
  function getErrorMessage(hook, provider) {
102
104
  return `${hook} returned \`undefined\`. Seems you forgot to wrap component within ${provider}`;
@@ -2572,7 +2574,9 @@ const useEditable = props => {
2572
2574
  readOnly: field?.().readOnly,
2573
2575
  required: field?.().required,
2574
2576
  getRootNode: environment().getRootNode,
2577
+ edit: props.defaultEdit,
2575
2578
  value: props.defaultValue,
2579
+ 'edit.controlled': props.edit !== undefined,
2576
2580
  ...props
2577
2581
  }));
2578
2582
  const [state, send] = solid.useMachine(editable__namespace.machine(context()), {
@@ -2582,7 +2586,7 @@ const useEditable = props => {
2582
2586
  };
2583
2587
 
2584
2588
  const EditableRoot = props => {
2585
- const [useEditableProps, localProps] = createSplitProps()(props, ['activationMode', 'autoResize', 'defaultValue', 'disabled', 'finalFocusEl', 'form', 'id', 'ids', 'invalid', 'maxLength', 'name', 'onEdit', 'onFocusOutside', 'onInteractOutside', 'onPointerDownOutside', 'onValueChange', 'onValueCommit', 'onValueRevert', 'placeholder', 'readOnly', 'required', 'selectOnFocus', 'startWithEditView', 'submitMode', 'translations', 'value']);
2589
+ const [useEditableProps, localProps] = createSplitProps()(props, ['activationMode', 'autoResize', 'defaultEdit', 'defaultValue', 'disabled', 'edit', 'finalFocusEl', 'form', 'id', 'ids', 'invalid', 'maxLength', 'name', 'onEditChange', 'onFocusOutside', 'onInteractOutside', 'onPointerDownOutside', 'onValueChange', 'onValueCommit', 'onValueRevert', 'placeholder', 'readOnly', 'required', 'selectOnFocus', 'submitMode', 'translations', 'value']);
2586
2590
  const api = useEditable(useEditableProps);
2587
2591
  const mergedProps = solid.mergeProps(() => api().getRootProps(), localProps);
2588
2592
  return web.createComponent(EditableProvider, {
@@ -6171,6 +6175,166 @@ var timer = /*#__PURE__*/Object.freeze({
6171
6175
  Separator: TimerSeparator
6172
6176
  });
6173
6177
 
6178
+ const [StepsProvider, useStepsContext] = createContext({
6179
+ hookName: 'useStepsContext',
6180
+ providerName: '<StepsProvider />'
6181
+ });
6182
+
6183
+ const StepsCompletedContent = props => {
6184
+ const steps = useStepsContext();
6185
+ const mergedProps = solid.mergeProps(() => steps().getContentProps({
6186
+ index: steps().count
6187
+ }), props);
6188
+ return web.createComponent(ark.div, mergedProps);
6189
+ };
6190
+
6191
+ const StepsContent = props => {
6192
+ const [itemProps, localProps] = createSplitProps()(props, ['index']);
6193
+ const steps = useStepsContext();
6194
+ const mergedProps = solid.mergeProps(() => steps().getContentProps(itemProps), localProps);
6195
+ return web.createComponent(ark.div, mergedProps);
6196
+ };
6197
+
6198
+ const [StepsItemPropsProvider, useStepsItemPropsContext] = createContext({
6199
+ hookName: 'useStepsItemPropsContext',
6200
+ providerName: '<StepsItemPropsProvider />'
6201
+ });
6202
+
6203
+ const StepsIndicator = props => {
6204
+ const steps = useStepsContext();
6205
+ const itemProps = useStepsItemPropsContext();
6206
+ const mergedProps = solid.mergeProps(() => steps().getIndicatorProps(itemProps), props);
6207
+ return web.createComponent(ark.div, mergedProps);
6208
+ };
6209
+
6210
+ const [StepsItemProvider, useStepsItemContext] = createContext({
6211
+ hookName: 'useStepsItemContext',
6212
+ providerName: '<StepsItem />'
6213
+ });
6214
+
6215
+ const StepsItem = props => {
6216
+ const [itemProps, localProps] = createSplitProps()(props, ['index']);
6217
+ const steps = useStepsContext();
6218
+ const mergedProps = solid.mergeProps(() => steps().getItemProps(itemProps), localProps);
6219
+ const itemState = solidJs.createMemo(() => steps().getItemState(itemProps));
6220
+ return web.createComponent(StepsItemPropsProvider, {
6221
+ value: itemProps,
6222
+ get children() {
6223
+ return web.createComponent(StepsItemProvider, {
6224
+ value: itemState,
6225
+ get children() {
6226
+ return web.createComponent(ark.li, mergedProps);
6227
+ }
6228
+ });
6229
+ }
6230
+ });
6231
+ };
6232
+
6233
+ const StepsItemContext = props => {
6234
+ return props.children(useStepsItemContext());
6235
+ };
6236
+ StepsItemContext.displayName = 'StepsItemContext';
6237
+
6238
+ const StepsList = props => {
6239
+ const steps = useStepsContext();
6240
+ const mergedProps = solid.mergeProps(() => steps().getListProps(), props);
6241
+ return web.createComponent(ark.ol, mergedProps);
6242
+ };
6243
+
6244
+ const StepsNextTrigger = props => {
6245
+ const steps = useStepsContext();
6246
+ const mergedProps = solid.mergeProps(() => steps().getNextTriggerProps(), props);
6247
+ return web.createComponent(ark.button, mergedProps);
6248
+ };
6249
+
6250
+ const StepsPrevTrigger = props => {
6251
+ const steps = useStepsContext();
6252
+ const mergedProps = solid.mergeProps(() => steps().getPrevTriggerProps(), props);
6253
+ return web.createComponent(ark.button, mergedProps);
6254
+ };
6255
+
6256
+ const StepsProgress = props => {
6257
+ const steps = useStepsContext();
6258
+ const mergedProps = solid.mergeProps(() => steps().getProgressProps(), props);
6259
+ return web.createComponent(ark.div, mergedProps);
6260
+ };
6261
+
6262
+ function useSteps(props = {}) {
6263
+ const environment = useEnvironmentContext();
6264
+ const locale = useLocaleContext();
6265
+ const id = solidJs.createUniqueId();
6266
+ const context = solidJs.createMemo(() => ({
6267
+ id,
6268
+ dir: locale().dir,
6269
+ getRootNode: environment().getRootNode,
6270
+ step: props.defaultStep,
6271
+ ...props
6272
+ }));
6273
+ const [state, send] = solid.useMachine(steps__namespace.machine(context()), {
6274
+ context
6275
+ });
6276
+ return solidJs.createMemo(() => steps__namespace.connect(state, send, solid.normalizeProps));
6277
+ }
6278
+
6279
+ const StepsRoot = props => {
6280
+ const [useStepsProps, localProps] = createSplitProps()(props, ['defaultStep', 'id', 'ids', 'count', 'linear', 'onStepChange', 'onStepComplete', 'orientation', 'step']);
6281
+ const steps = useSteps(useStepsProps);
6282
+ const mergedProps = solid.mergeProps(() => steps().getRootProps(), localProps);
6283
+ return web.createComponent(StepsProvider, {
6284
+ value: steps,
6285
+ get children() {
6286
+ return web.createComponent(ark.div, mergedProps);
6287
+ }
6288
+ });
6289
+ };
6290
+
6291
+ const StepsRootProvider = props => {
6292
+ const [{
6293
+ value: steps
6294
+ }, rootProps] = createSplitProps()(props, ['value']);
6295
+ const mergedProps = solid.mergeProps(() => steps().getRootProps(), rootProps);
6296
+ return web.createComponent(StepsProvider, {
6297
+ value: steps,
6298
+ get children() {
6299
+ return web.createComponent(ark.div, web.mergeProps(mergedProps, {
6300
+ get children() {
6301
+ return props.children;
6302
+ }
6303
+ }));
6304
+ }
6305
+ });
6306
+ };
6307
+
6308
+ const StepsSeparator = props => {
6309
+ const steps = useStepsContext();
6310
+ const itemProps = useStepsItemPropsContext();
6311
+ const mergedProps = solid.mergeProps(() => steps().getSeparatorProps(itemProps), props);
6312
+ return web.createComponent(ark.div, mergedProps);
6313
+ };
6314
+
6315
+ const StepsTrigger = props => {
6316
+ const steps = useStepsContext();
6317
+ const itemProps = useStepsItemPropsContext();
6318
+ const mergedProps = solid.mergeProps(() => steps().getTriggerProps(itemProps), props);
6319
+ return web.createComponent(ark.button, mergedProps);
6320
+ };
6321
+
6322
+ var steps = /*#__PURE__*/Object.freeze({
6323
+ __proto__: null,
6324
+ CompletedContent: StepsCompletedContent,
6325
+ Content: StepsContent,
6326
+ Indicator: StepsIndicator,
6327
+ Item: StepsItem,
6328
+ List: StepsList,
6329
+ NextTrigger: StepsNextTrigger,
6330
+ PrevTrigger: StepsPrevTrigger,
6331
+ Progress: StepsProgress,
6332
+ Root: StepsRoot,
6333
+ RootProvider: StepsRootProvider,
6334
+ Separator: StepsSeparator,
6335
+ Trigger: StepsTrigger
6336
+ });
6337
+
6174
6338
  Object.defineProperty(exports, "collapsibleAnatomy", {
6175
6339
  enumerable: true,
6176
6340
  get: function () { return collapsible$1.anatomy; }
@@ -6647,6 +6811,20 @@ exports.SplitterPanel = SplitterPanel;
6647
6811
  exports.SplitterResizeTrigger = SplitterResizeTrigger;
6648
6812
  exports.SplitterRoot = SplitterRoot;
6649
6813
  exports.SplitterRootProvider = SplitterRootProvider;
6814
+ exports.Steps = steps;
6815
+ exports.StepsCompletedContent = StepsCompletedContent;
6816
+ exports.StepsContent = StepsContent;
6817
+ exports.StepsIndicator = StepsIndicator;
6818
+ exports.StepsItem = StepsItem;
6819
+ exports.StepsItemContext = StepsItemContext;
6820
+ exports.StepsList = StepsList;
6821
+ exports.StepsNextTrigger = StepsNextTrigger;
6822
+ exports.StepsPrevTrigger = StepsPrevTrigger;
6823
+ exports.StepsProgress = StepsProgress;
6824
+ exports.StepsRoot = StepsRoot;
6825
+ exports.StepsRootProvider = StepsRootProvider;
6826
+ exports.StepsSeparator = StepsSeparator;
6827
+ exports.StepsTrigger = StepsTrigger;
6650
6828
  exports.Switch = _switch;
6651
6829
  exports.SwitchContext = SwitchContext;
6652
6830
  exports.SwitchControl = SwitchControl;
@@ -6817,6 +6995,9 @@ exports.useSlider = useSlider;
6817
6995
  exports.useSliderContext = useSliderContext;
6818
6996
  exports.useSplitter = useSplitter;
6819
6997
  exports.useSplitterContext = useSplitterContext;
6998
+ exports.useSteps = useSteps;
6999
+ exports.useStepsContext = useStepsContext;
7000
+ exports.useStepsItemContext = useStepsItemContext;
6820
7001
  exports.useSwitch = useSwitch;
6821
7002
  exports.useSwitchContext = useSwitchContext;
6822
7003
  exports.useTabs = useTabs;