@ark-ui/solid 3.11.0 → 3.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cjs/index.js CHANGED
@@ -19,6 +19,7 @@ var domQuery = require('@zag-js/dom-query');
19
19
  var anatomy = require('@zag-js/anatomy');
20
20
  var fileUpload$1 = require('@zag-js/file-upload');
21
21
  var i18nUtils = require('@zag-js/i18n-utils');
22
+ var highlightWord = require('@zag-js/highlight-word');
22
23
  var hoverCard$1 = require('@zag-js/hover-card');
23
24
  var menu$1 = require('@zag-js/menu');
24
25
  var numberInput$1 = require('@zag-js/number-input');
@@ -33,17 +34,17 @@ var select$1 = require('@zag-js/select');
33
34
  var signaturePad$1 = require('@zag-js/signature-pad');
34
35
  var slider$1 = require('@zag-js/slider');
35
36
  var splitter$1 = require('@zag-js/splitter');
37
+ var steps$1 = require('@zag-js/steps');
36
38
  var zagSwitch = require('@zag-js/switch');
37
39
  var tabs$1 = require('@zag-js/tabs');
38
40
  var tagsInput$1 = require('@zag-js/tags-input');
39
41
  var date = require('@internationalized/date');
40
42
  var timePicker$1 = require('@zag-js/time-picker');
43
+ var timer$1 = require('@zag-js/timer');
41
44
  var toast$1 = require('@zag-js/toast');
42
45
  var toggleGroup$1 = require('@zag-js/toggle-group');
43
46
  var tooltip$1 = require('@zag-js/tooltip');
44
47
  var treeView$1 = require('@zag-js/tree-view');
45
- var timer$1 = require('@zag-js/timer');
46
- var steps$1 = require('@zag-js/steps');
47
48
 
48
49
  function _interopNamespaceDefault(e) {
49
50
  var n = Object.create(null);
@@ -89,16 +90,16 @@ var select__namespace = /*#__PURE__*/_interopNamespaceDefault(select$1);
89
90
  var signaturePad__namespace = /*#__PURE__*/_interopNamespaceDefault(signaturePad$1);
90
91
  var slider__namespace = /*#__PURE__*/_interopNamespaceDefault(slider$1);
91
92
  var splitter__namespace = /*#__PURE__*/_interopNamespaceDefault(splitter$1);
93
+ var steps__namespace = /*#__PURE__*/_interopNamespaceDefault(steps$1);
92
94
  var zagSwitch__namespace = /*#__PURE__*/_interopNamespaceDefault(zagSwitch);
93
95
  var tabs__namespace = /*#__PURE__*/_interopNamespaceDefault(tabs$1);
94
96
  var tagsInput__namespace = /*#__PURE__*/_interopNamespaceDefault(tagsInput$1);
95
97
  var timePicker__namespace = /*#__PURE__*/_interopNamespaceDefault(timePicker$1);
98
+ var timer__namespace = /*#__PURE__*/_interopNamespaceDefault(timer$1);
96
99
  var toast__namespace = /*#__PURE__*/_interopNamespaceDefault(toast$1);
97
100
  var toggleGroup__namespace = /*#__PURE__*/_interopNamespaceDefault(toggleGroup$1);
98
101
  var tooltip__namespace = /*#__PURE__*/_interopNamespaceDefault(tooltip$1);
99
102
  var treeView__namespace = /*#__PURE__*/_interopNamespaceDefault(treeView$1);
100
- var timer__namespace = /*#__PURE__*/_interopNamespaceDefault(timer$1);
101
- var steps__namespace = /*#__PURE__*/_interopNamespaceDefault(steps$1);
102
103
 
103
104
  function getErrorMessage(hook, provider) {
104
105
  return `${hook} returned \`undefined\`. Seems you forgot to wrap component within ${provider}`;
@@ -209,7 +210,7 @@ const [EnvironmentContextProvider, useEnvironmentContext] = createContext({
209
210
  })
210
211
  });
211
212
 
212
- var _tmpl$$6 = /*#__PURE__*/web.template(`<span hidden>`);
213
+ var _tmpl$$7 = /*#__PURE__*/web.template(`<span hidden>`);
213
214
  const EnvironmentProvider = props => {
214
215
  const [spanRef, setSpanRef] = solidJs.createSignal();
215
216
  const getRootNode = () => runIfFn(props.value) ?? spanRef()?.ownerDocument ?? document;
@@ -226,7 +227,7 @@ const EnvironmentProvider = props => {
226
227
  return !props.value;
227
228
  },
228
229
  get children() {
229
- var _el$ = _tmpl$$6();
230
+ var _el$ = _tmpl$$7();
230
231
  web.use(setSpanRef, _el$);
231
232
  return _el$;
232
233
  }
@@ -2002,7 +2003,7 @@ const DatePickerLabel = props => {
2002
2003
  return web.createComponent(ark.label, mergedProps);
2003
2004
  };
2004
2005
 
2005
- var _tmpl$$5 = /*#__PURE__*/web.template(`<option>`);
2006
+ var _tmpl$$6 = /*#__PURE__*/web.template(`<option>`);
2006
2007
  const DatePickerMonthSelect = props => {
2007
2008
  const api = useDatePickerContext();
2008
2009
  const mergedProps = solid.mergeProps(() => api().getMonthSelectProps(), props);
@@ -2013,7 +2014,7 @@ const DatePickerMonthSelect = props => {
2013
2014
  return api().getMonths();
2014
2015
  },
2015
2016
  children: month => (() => {
2016
- var _el$ = _tmpl$$5();
2017
+ var _el$ = _tmpl$$6();
2017
2018
  web.insert(_el$, () => month.label);
2018
2019
  web.effect(() => _el$.value = month.value);
2019
2020
  return _el$;
@@ -2281,7 +2282,7 @@ const DatePickerViewTrigger = props => {
2281
2282
  return web.createComponent(ark.button, mergedProps);
2282
2283
  };
2283
2284
 
2284
- var _tmpl$$4 = /*#__PURE__*/web.template(`<option>`);
2285
+ var _tmpl$$5 = /*#__PURE__*/web.template(`<option>`);
2285
2286
  const DatePickerYearSelect = props => {
2286
2287
  const api = useDatePickerContext();
2287
2288
  const mergedProps = solid.mergeProps(() => api().getYearSelectProps(), props);
@@ -2295,7 +2296,7 @@ const DatePickerYearSelect = props => {
2295
2296
  });
2296
2297
  },
2297
2298
  children: year => (() => {
2298
- var _el$ = _tmpl$$4();
2299
+ var _el$ = _tmpl$$5();
2299
2300
  _el$.value = year;
2300
2301
  web.insert(_el$, year);
2301
2302
  return _el$;
@@ -2828,48 +2829,132 @@ var format = /*#__PURE__*/Object.freeze({
2828
2829
  Number: FormatNumber
2829
2830
  });
2830
2831
 
2831
- const escapeRegexp = term => term.replace(/[|\\{}()[\]^$+*?.-]/g, char => `\\${char}`);
2832
- const buildRegex = (queryProp, flags) => {
2833
- const query = queryProp.filter(Boolean).map(text => escapeRegexp(text));
2834
- return new RegExp(`(${query.join('|')})`, flags);
2832
+ const isRefFn = ref => typeof ref === 'function';
2833
+ function setRef(ref, value) {
2834
+ if (isRefFn(ref)) {
2835
+ ref(value);
2836
+ }
2837
+ }
2838
+ function composeRefs(...refs) {
2839
+ return node => {
2840
+ for (const ref of refs) {
2841
+ setRef(ref, node);
2842
+ }
2843
+ };
2844
+ }
2845
+
2846
+ const FrameContent = props => {
2847
+ const {
2848
+ onMount,
2849
+ onUnmount,
2850
+ children
2851
+ } = props;
2852
+ solidJs.createEffect(() => {
2853
+ onMount?.();
2854
+ solidJs.onCleanup(() => {
2855
+ onUnmount?.();
2856
+ });
2857
+ });
2858
+ return children;
2835
2859
  };
2836
- const getRegexFlags = (ignoreCase = true, matchAll = true) => `${ignoreCase ? 'i' : ''}${matchAll ? 'g' : ''}`;
2837
- const normalizeSpan = (spans, len) => {
2838
- const result = [];
2839
- const append = (start, end, match) => {
2840
- if (end - start > 0) result.push({
2841
- start,
2842
- end,
2843
- match
2860
+
2861
+ var _tmpl$$4 = /*#__PURE__*/web.template(`<iframe>`);
2862
+ const resetStyle = '<style>*,*::before,*::after { margin: 0; padding: 0; box-sizing: border-box; }</style>';
2863
+ const initialSrcDoc = `<html><head>${resetStyle}</head><body><div class="frame-root"></div></body></html>`;
2864
+ function getMountNode(frame) {
2865
+ const doc = frame.contentWindow?.document;
2866
+ if (!doc) return null;
2867
+ return doc.body.querySelector('.frame-root') || doc.body;
2868
+ }
2869
+ const Frame = props => {
2870
+ const [frameProps, localProps] = solidJs.splitProps(props, ['children', 'head', 'onMount', 'onUnmount', 'srcdoc']);
2871
+ const srcdoc = solidJs.createMemo(() => frameProps.srcdoc ?? initialSrcDoc);
2872
+ const [frameRef, setFrameRef] = solidJs.createSignal(null);
2873
+ const [mountNode, setMountNode] = solidJs.createSignal(null);
2874
+ solidJs.createEffect(() => {
2875
+ const frame = frameRef();
2876
+ if (!frame) return;
2877
+ const doc = frame.contentWindow?.document;
2878
+ if (!doc) return;
2879
+ doc.open();
2880
+ doc.write(srcdoc());
2881
+ doc.close();
2882
+ setMountNode(getMountNode(frame));
2883
+ });
2884
+ solidJs.createEffect(() => {
2885
+ const frame = frameRef();
2886
+ if (!frame || !frame.contentDocument) return;
2887
+ const win = frame.contentWindow;
2888
+ if (!win) return;
2889
+ const node = getMountNode(frame);
2890
+ if (!node) return;
2891
+ const exec = () => {
2892
+ const rootEl = frame.contentDocument?.documentElement;
2893
+ if (!rootEl) return;
2894
+ frame.style.setProperty('--width', `${node.scrollWidth}px`);
2895
+ frame.style.setProperty('--height', `${node.scrollHeight}px`);
2896
+ };
2897
+ const resizeObserver = new win.ResizeObserver(exec);
2898
+ exec();
2899
+ if (frame.contentDocument) {
2900
+ resizeObserver.observe(node);
2901
+ }
2902
+ solidJs.onCleanup(() => {
2903
+ resizeObserver.disconnect();
2844
2904
  });
2845
- };
2846
- if (spans.length === 0) {
2847
- append(0, len, false);
2848
- } else {
2849
- let lastIndex = 0;
2850
- for (const chunk of spans) {
2851
- append(lastIndex, chunk.start, false);
2852
- append(chunk.start, chunk.end, true);
2853
- lastIndex = chunk.end;
2854
- }
2855
- append(lastIndex, len, false);
2856
- }
2857
- return result;
2858
- };
2859
- const highlightWords = props => {
2860
- const flags = getRegexFlags(props.ignoreCase, props.matchAll);
2861
- const regex = buildRegex(Array.isArray(props.query) ? props.query : [props.query], flags);
2862
- const spans = [...props.text.matchAll(regex)].map(match => ({
2863
- start: match.index || 0,
2864
- end: (match.index || 0) + match[0].length
2865
- }));
2866
- return normalizeSpan(spans, props.text.length).map(chunk => ({
2867
- text: props.text.slice(chunk.start, chunk.end),
2868
- match: !!chunk.match
2869
- }));
2905
+ });
2906
+ return web.createComponent(EnvironmentProvider, {
2907
+ value: () => frameRef()?.contentDocument ?? document,
2908
+ get children() {
2909
+ var _el$ = _tmpl$$4();
2910
+ var _ref$ = composeRefs(setFrameRef, localProps.ref);
2911
+ typeof _ref$ === "function" && web.use(_ref$, _el$);
2912
+ web.spread(_el$, localProps, false, true);
2913
+ web.insert(_el$, web.createComponent(solidJs.Show, {
2914
+ get when() {
2915
+ return mountNode();
2916
+ },
2917
+ children: node => web.createComponent(web.Portal, {
2918
+ get mount() {
2919
+ return node();
2920
+ },
2921
+ get children() {
2922
+ return web.createComponent(FrameContent, {
2923
+ get onMount() {
2924
+ return frameProps.onMount;
2925
+ },
2926
+ get onUnmount() {
2927
+ return frameProps.onUnmount;
2928
+ },
2929
+ get children() {
2930
+ return frameProps.children;
2931
+ }
2932
+ });
2933
+ }
2934
+ })
2935
+ }), null);
2936
+ web.insert(_el$, web.createComponent(solidJs.Show, {
2937
+ get when() {
2938
+ return mountNode();
2939
+ },
2940
+ get children() {
2941
+ return web.createComponent(web.Portal, {
2942
+ get mount() {
2943
+ return frameRef().contentDocument.head;
2944
+ },
2945
+ get children() {
2946
+ return frameProps.head;
2947
+ }
2948
+ });
2949
+ }
2950
+ }), null);
2951
+ return _el$;
2952
+ }
2953
+ });
2870
2954
  };
2955
+
2871
2956
  const useHighlight = props => {
2872
- return solidJs.createMemo(() => highlightWords(props));
2957
+ return solidJs.createMemo(() => highlightWord.highlightWord(props));
2873
2958
  };
2874
2959
 
2875
2960
  var _tmpl$$3 = /*#__PURE__*/web.template(`<mark>`);
@@ -5043,6 +5128,173 @@ var splitter = /*#__PURE__*/Object.freeze({
5043
5128
  RootProvider: SplitterRootProvider
5044
5129
  });
5045
5130
 
5131
+ const [StepsProvider, useStepsContext] = createContext({
5132
+ hookName: 'useStepsContext',
5133
+ providerName: '<StepsProvider />'
5134
+ });
5135
+
5136
+ const StepsCompletedContent = props => {
5137
+ const steps = useStepsContext();
5138
+ const mergedProps = solid.mergeProps(() => steps().getContentProps({
5139
+ index: steps().count
5140
+ }), props);
5141
+ return web.createComponent(ark.div, mergedProps);
5142
+ };
5143
+
5144
+ const StepsContent = props => {
5145
+ const [itemProps, localProps] = createSplitProps()(props, ['index']);
5146
+ const steps = useStepsContext();
5147
+ const mergedProps = solid.mergeProps(() => steps().getContentProps(itemProps), localProps);
5148
+ return web.createComponent(ark.div, mergedProps);
5149
+ };
5150
+
5151
+ const StepsContext = props => {
5152
+ const context = useStepsContext();
5153
+ return props.children(context);
5154
+ };
5155
+
5156
+ const [StepsItemPropsProvider, useStepsItemPropsContext] = createContext({
5157
+ hookName: 'useStepsItemPropsContext',
5158
+ providerName: '<StepsItemPropsProvider />'
5159
+ });
5160
+
5161
+ const StepsIndicator = props => {
5162
+ const steps = useStepsContext();
5163
+ const itemProps = useStepsItemPropsContext();
5164
+ const mergedProps = solid.mergeProps(() => steps().getIndicatorProps(itemProps), props);
5165
+ return web.createComponent(ark.div, mergedProps);
5166
+ };
5167
+
5168
+ const [StepsItemProvider, useStepsItemContext] = createContext({
5169
+ hookName: 'useStepsItemContext',
5170
+ providerName: '<StepsItem />'
5171
+ });
5172
+
5173
+ const StepsItem = props => {
5174
+ const [itemProps, localProps] = createSplitProps()(props, ['index']);
5175
+ const steps = useStepsContext();
5176
+ const mergedProps = solid.mergeProps(() => steps().getItemProps(itemProps), localProps);
5177
+ const itemState = solidJs.createMemo(() => steps().getItemState(itemProps));
5178
+ return web.createComponent(StepsItemPropsProvider, {
5179
+ value: itemProps,
5180
+ get children() {
5181
+ return web.createComponent(StepsItemProvider, {
5182
+ value: itemState,
5183
+ get children() {
5184
+ return web.createComponent(ark.li, mergedProps);
5185
+ }
5186
+ });
5187
+ }
5188
+ });
5189
+ };
5190
+
5191
+ const StepsItemContext = props => {
5192
+ return props.children(useStepsItemContext());
5193
+ };
5194
+ StepsItemContext.displayName = 'StepsItemContext';
5195
+
5196
+ const StepsList = props => {
5197
+ const steps = useStepsContext();
5198
+ const mergedProps = solid.mergeProps(() => steps().getListProps(), props);
5199
+ return web.createComponent(ark.ol, mergedProps);
5200
+ };
5201
+
5202
+ const StepsNextTrigger = props => {
5203
+ const steps = useStepsContext();
5204
+ const mergedProps = solid.mergeProps(() => steps().getNextTriggerProps(), props);
5205
+ return web.createComponent(ark.button, mergedProps);
5206
+ };
5207
+
5208
+ const StepsPrevTrigger = props => {
5209
+ const steps = useStepsContext();
5210
+ const mergedProps = solid.mergeProps(() => steps().getPrevTriggerProps(), props);
5211
+ return web.createComponent(ark.button, mergedProps);
5212
+ };
5213
+
5214
+ const StepsProgress = props => {
5215
+ const steps = useStepsContext();
5216
+ const mergedProps = solid.mergeProps(() => steps().getProgressProps(), props);
5217
+ return web.createComponent(ark.div, mergedProps);
5218
+ };
5219
+
5220
+ function useSteps(props = {}) {
5221
+ const environment = useEnvironmentContext();
5222
+ const locale = useLocaleContext();
5223
+ const id = solidJs.createUniqueId();
5224
+ const context = solidJs.createMemo(() => ({
5225
+ id,
5226
+ dir: locale().dir,
5227
+ getRootNode: environment().getRootNode,
5228
+ step: props.defaultStep,
5229
+ ...props
5230
+ }));
5231
+ const [state, send] = solid.useMachine(steps__namespace.machine(context()), {
5232
+ context
5233
+ });
5234
+ return solidJs.createMemo(() => steps__namespace.connect(state, send, solid.normalizeProps));
5235
+ }
5236
+
5237
+ const StepsRoot = props => {
5238
+ const [useStepsProps, localProps] = createSplitProps()(props, ['defaultStep', 'id', 'ids', 'count', 'linear', 'onStepChange', 'onStepComplete', 'orientation', 'step']);
5239
+ const steps = useSteps(useStepsProps);
5240
+ const mergedProps = solid.mergeProps(() => steps().getRootProps(), localProps);
5241
+ return web.createComponent(StepsProvider, {
5242
+ value: steps,
5243
+ get children() {
5244
+ return web.createComponent(ark.div, mergedProps);
5245
+ }
5246
+ });
5247
+ };
5248
+
5249
+ const StepsRootProvider = props => {
5250
+ const [{
5251
+ value: steps
5252
+ }, rootProps] = createSplitProps()(props, ['value']);
5253
+ const mergedProps = solid.mergeProps(() => steps().getRootProps(), rootProps);
5254
+ return web.createComponent(StepsProvider, {
5255
+ value: steps,
5256
+ get children() {
5257
+ return web.createComponent(ark.div, web.mergeProps(mergedProps, {
5258
+ get children() {
5259
+ return props.children;
5260
+ }
5261
+ }));
5262
+ }
5263
+ });
5264
+ };
5265
+
5266
+ const StepsSeparator = props => {
5267
+ const steps = useStepsContext();
5268
+ const itemProps = useStepsItemPropsContext();
5269
+ const mergedProps = solid.mergeProps(() => steps().getSeparatorProps(itemProps), props);
5270
+ return web.createComponent(ark.div, mergedProps);
5271
+ };
5272
+
5273
+ const StepsTrigger = props => {
5274
+ const steps = useStepsContext();
5275
+ const itemProps = useStepsItemPropsContext();
5276
+ const mergedProps = solid.mergeProps(() => steps().getTriggerProps(itemProps), props);
5277
+ return web.createComponent(ark.button, mergedProps);
5278
+ };
5279
+
5280
+ var steps = /*#__PURE__*/Object.freeze({
5281
+ __proto__: null,
5282
+ CompletedContent: StepsCompletedContent,
5283
+ Content: StepsContent,
5284
+ Context: StepsContext,
5285
+ Indicator: StepsIndicator,
5286
+ Item: StepsItem,
5287
+ ItemContext: StepsItemContext,
5288
+ List: StepsList,
5289
+ NextTrigger: StepsNextTrigger,
5290
+ PrevTrigger: StepsPrevTrigger,
5291
+ Progress: StepsProgress,
5292
+ Root: StepsRoot,
5293
+ RootProvider: StepsRootProvider,
5294
+ Separator: StepsSeparator,
5295
+ Trigger: StepsTrigger
5296
+ });
5297
+
5046
5298
  const [SwitchProvider, useSwitchContext] = createContext({
5047
5299
  hookName: 'useSwitchContext',
5048
5300
  providerName: '<SwitchProvider />'
@@ -5608,39 +5860,132 @@ var timePicker = /*#__PURE__*/Object.freeze({
5608
5860
  Trigger: TimePickerTrigger
5609
5861
  });
5610
5862
 
5611
- const createToaster = props => {
5612
- const machine = toast__namespace.group.machine({
5613
- id: '1',
5614
- ...props
5615
- });
5616
- const api = toast__namespace.group.connect(machine, machine.send, solid.normalizeProps);
5617
- return {
5618
- ...api,
5619
- machine
5620
- };
5621
- };
5622
-
5623
- const [ToastProvider, useToastContext] = createContext({
5624
- hookName: 'useToastContext',
5625
- providerName: '<ToastProvider />'
5863
+ const [TimerProvider, useTimerContext] = createContext({
5864
+ hookName: 'useTimerContext',
5865
+ providerName: '<TimerProvider />'
5626
5866
  });
5627
5867
 
5628
- const ToastActionTrigger = props => {
5629
- const toast = useToastContext();
5630
- const mergedProps = solid.mergeProps(() => toast().getActionTriggerProps(), props);
5868
+ const TimerActionTrigger = props => {
5869
+ const timer = useTimerContext();
5870
+ const mergedProps = solid.mergeProps(() => timer().getActionTriggerProps(props), props);
5631
5871
  return web.createComponent(ark.button, mergedProps);
5632
5872
  };
5633
5873
 
5634
- const ToastCloseTrigger = props => {
5635
- const toast = useToastContext();
5636
- const mergedProps = solid.mergeProps(() => toast().getCloseTriggerProps(), props);
5637
- return web.createComponent(ark.button, mergedProps);
5874
+ const TimerArea = props => {
5875
+ const timer = useTimerContext();
5876
+ const mergedProps = solid.mergeProps(() => timer().getAreaProps(), props);
5877
+ return web.createComponent(ark.div, mergedProps);
5638
5878
  };
5639
5879
 
5640
- const ToastContext = props => props.children(useToastContext());
5880
+ const TimerContext = props => props.children(useTimerContext());
5641
5881
 
5642
- const ToastDescription = props => {
5643
- const toast = useToastContext();
5882
+ const TimerControl = props => {
5883
+ const timer = useTimerContext();
5884
+ const mergedProps = solid.mergeProps(() => timer().getControlProps(), props);
5885
+ return web.createComponent(ark.div, mergedProps);
5886
+ };
5887
+
5888
+ const TimerItem = props => {
5889
+ const [itemProps, localProps] = createSplitProps()(props, ['type']);
5890
+ const timer = useTimerContext();
5891
+ const mergedProps = solid.mergeProps(() => timer().getItemProps(itemProps), localProps);
5892
+ return web.createComponent(ark.div, web.mergeProps(mergedProps, {
5893
+ get children() {
5894
+ return timer().formattedTime[itemProps.type];
5895
+ }
5896
+ }));
5897
+ };
5898
+
5899
+ const useTimer = props => {
5900
+ const env = useEnvironmentContext();
5901
+ const id = solidJs.createUniqueId();
5902
+ const context = solidJs.createMemo(() => ({
5903
+ id,
5904
+ getRootNode: env().getRootNode,
5905
+ ...props
5906
+ }));
5907
+ const [state, send] = solid.useMachine(timer__namespace.machine(context()), {
5908
+ context
5909
+ });
5910
+ return solidJs.createMemo(() => timer__namespace.connect(state, send, solid.normalizeProps));
5911
+ };
5912
+
5913
+ const TimerRoot = props => {
5914
+ const [useTimerProps, localProps] = createSplitProps()(props, ['id', 'ids', 'autoStart', 'interval', 'countdown', 'startMs', 'targetMs', 'onComplete', 'onTick']);
5915
+ const timer = useTimer(useTimerProps);
5916
+ const mergedProps = solid.mergeProps(() => timer().getRootProps(), localProps);
5917
+ return web.createComponent(TimerProvider, {
5918
+ value: timer,
5919
+ get children() {
5920
+ return web.createComponent(ark.div, mergedProps);
5921
+ }
5922
+ });
5923
+ };
5924
+
5925
+ const TimerRootProvider = props => {
5926
+ const [{
5927
+ value: timer
5928
+ }, localProps] = createSplitProps()(props, ['value']);
5929
+ const mergedProps = solid.mergeProps(() => timer().getRootProps(), localProps);
5930
+ return web.createComponent(TimerProvider, {
5931
+ value: timer,
5932
+ get children() {
5933
+ return web.createComponent(ark.div, mergedProps);
5934
+ }
5935
+ });
5936
+ };
5937
+
5938
+ const TimerSeparator = props => {
5939
+ const timer = useTimerContext();
5940
+ const mergedProps = solid.mergeProps(() => timer().getSeparatorProps(), props);
5941
+ return web.createComponent(ark.div, mergedProps);
5942
+ };
5943
+
5944
+ var timer = /*#__PURE__*/Object.freeze({
5945
+ __proto__: null,
5946
+ ActionTrigger: TimerActionTrigger,
5947
+ Area: TimerArea,
5948
+ Context: TimerContext,
5949
+ Control: TimerControl,
5950
+ Item: TimerItem,
5951
+ Root: TimerRoot,
5952
+ RootProvider: TimerRootProvider,
5953
+ Separator: TimerSeparator
5954
+ });
5955
+
5956
+ const createToaster = props => {
5957
+ const machine = toast__namespace.group.machine({
5958
+ id: '1',
5959
+ ...props
5960
+ });
5961
+ const api = toast__namespace.group.connect(machine, machine.send, solid.normalizeProps);
5962
+ return {
5963
+ ...api,
5964
+ machine
5965
+ };
5966
+ };
5967
+
5968
+ const [ToastProvider, useToastContext] = createContext({
5969
+ hookName: 'useToastContext',
5970
+ providerName: '<ToastProvider />'
5971
+ });
5972
+
5973
+ const ToastActionTrigger = props => {
5974
+ const toast = useToastContext();
5975
+ const mergedProps = solid.mergeProps(() => toast().getActionTriggerProps(), props);
5976
+ return web.createComponent(ark.button, mergedProps);
5977
+ };
5978
+
5979
+ const ToastCloseTrigger = props => {
5980
+ const toast = useToastContext();
5981
+ const mergedProps = solid.mergeProps(() => toast().getCloseTriggerProps(), props);
5982
+ return web.createComponent(ark.button, mergedProps);
5983
+ };
5984
+
5985
+ const ToastContext = props => props.children(useToastContext());
5986
+
5987
+ const ToastDescription = props => {
5988
+ const toast = useToastContext();
5644
5989
  const mergedProps = solid.mergeProps(() => toast().getDescriptionProps(), props);
5645
5990
  return web.createComponent(ark.div, mergedProps);
5646
5991
  };
@@ -6099,252 +6444,6 @@ var treeView = /*#__PURE__*/Object.freeze({
6099
6444
  Tree: TreeViewTree
6100
6445
  });
6101
6446
 
6102
- const [TimerProvider, useTimerContext] = createContext({
6103
- hookName: 'useTimerContext',
6104
- providerName: '<TimerProvider />'
6105
- });
6106
-
6107
- const TimerContext = props => props.children(useTimerContext());
6108
-
6109
- const TimerActionTrigger = props => {
6110
- const timer = useTimerContext();
6111
- const mergedProps = solid.mergeProps(() => timer().getActionTriggerProps(props), props);
6112
- return web.createComponent(ark.button, mergedProps);
6113
- };
6114
-
6115
- const TimerItem = props => {
6116
- const [itemProps, localProps] = createSplitProps()(props, ['type']);
6117
- const timer = useTimerContext();
6118
- const mergedProps = solid.mergeProps(() => timer().getItemProps(itemProps), localProps);
6119
- return web.createComponent(ark.div, web.mergeProps(mergedProps, {
6120
- get children() {
6121
- return timer().formattedTime[itemProps.type];
6122
- }
6123
- }));
6124
- };
6125
-
6126
- const TimerSeparator = props => {
6127
- const timer = useTimerContext();
6128
- const mergedProps = solid.mergeProps(() => timer().getSeparatorProps(), props);
6129
- return web.createComponent(ark.div, mergedProps);
6130
- };
6131
-
6132
- const useTimer = props => {
6133
- const env = useEnvironmentContext();
6134
- const id = solidJs.createUniqueId();
6135
- const context = solidJs.createMemo(() => ({
6136
- id,
6137
- getRootNode: env().getRootNode,
6138
- ...props
6139
- }));
6140
- const [state, send] = solid.useMachine(timer__namespace.machine(context()), {
6141
- context
6142
- });
6143
- return solidJs.createMemo(() => timer__namespace.connect(state, send, solid.normalizeProps));
6144
- };
6145
-
6146
- const TimerRoot = props => {
6147
- const [useTimerProps, localProps] = createSplitProps()(props, ['id', 'autoStart', 'interval', 'countdown', 'startMs', 'targetMs', 'onComplete', 'onTick']);
6148
- const timer = useTimer(useTimerProps);
6149
- const mergedProps = solid.mergeProps(() => timer().getRootProps(), localProps);
6150
- return web.createComponent(TimerProvider, {
6151
- value: timer,
6152
- get children() {
6153
- return web.createComponent(ark.div, mergedProps);
6154
- }
6155
- });
6156
- };
6157
-
6158
- const TimerRootProvider = props => {
6159
- const [{
6160
- value: timer
6161
- }, localProps] = createSplitProps()(props, ['value']);
6162
- const mergedProps = solid.mergeProps(() => timer().getRootProps(), localProps);
6163
- return web.createComponent(TimerProvider, {
6164
- value: timer,
6165
- get children() {
6166
- return web.createComponent(ark.div, mergedProps);
6167
- }
6168
- });
6169
- };
6170
-
6171
- var timer = /*#__PURE__*/Object.freeze({
6172
- __proto__: null,
6173
- ActionTrigger: TimerActionTrigger,
6174
- Context: TimerContext,
6175
- Item: TimerItem,
6176
- Root: TimerRoot,
6177
- RootProvider: TimerRootProvider,
6178
- Separator: TimerSeparator
6179
- });
6180
-
6181
- const [StepsProvider, useStepsContext] = createContext({
6182
- hookName: 'useStepsContext',
6183
- providerName: '<StepsProvider />'
6184
- });
6185
-
6186
- const StepsCompletedContent = props => {
6187
- const steps = useStepsContext();
6188
- const mergedProps = solid.mergeProps(() => steps().getContentProps({
6189
- index: steps().count
6190
- }), props);
6191
- return web.createComponent(ark.div, mergedProps);
6192
- };
6193
-
6194
- const StepsContent = props => {
6195
- const [itemProps, localProps] = createSplitProps()(props, ['index']);
6196
- const steps = useStepsContext();
6197
- const mergedProps = solid.mergeProps(() => steps().getContentProps(itemProps), localProps);
6198
- return web.createComponent(ark.div, mergedProps);
6199
- };
6200
-
6201
- const StepsContext = props => {
6202
- const context = useStepsContext();
6203
- return props.children(context);
6204
- };
6205
-
6206
- const [StepsItemPropsProvider, useStepsItemPropsContext] = createContext({
6207
- hookName: 'useStepsItemPropsContext',
6208
- providerName: '<StepsItemPropsProvider />'
6209
- });
6210
-
6211
- const StepsIndicator = props => {
6212
- const steps = useStepsContext();
6213
- const itemProps = useStepsItemPropsContext();
6214
- const mergedProps = solid.mergeProps(() => steps().getIndicatorProps(itemProps), props);
6215
- return web.createComponent(ark.div, mergedProps);
6216
- };
6217
-
6218
- const [StepsItemProvider, useStepsItemContext] = createContext({
6219
- hookName: 'useStepsItemContext',
6220
- providerName: '<StepsItem />'
6221
- });
6222
-
6223
- const StepsItem = props => {
6224
- const [itemProps, localProps] = createSplitProps()(props, ['index']);
6225
- const steps = useStepsContext();
6226
- const mergedProps = solid.mergeProps(() => steps().getItemProps(itemProps), localProps);
6227
- const itemState = solidJs.createMemo(() => steps().getItemState(itemProps));
6228
- return web.createComponent(StepsItemPropsProvider, {
6229
- value: itemProps,
6230
- get children() {
6231
- return web.createComponent(StepsItemProvider, {
6232
- value: itemState,
6233
- get children() {
6234
- return web.createComponent(ark.li, mergedProps);
6235
- }
6236
- });
6237
- }
6238
- });
6239
- };
6240
-
6241
- const StepsItemContext = props => {
6242
- return props.children(useStepsItemContext());
6243
- };
6244
- StepsItemContext.displayName = 'StepsItemContext';
6245
-
6246
- const StepsList = props => {
6247
- const steps = useStepsContext();
6248
- const mergedProps = solid.mergeProps(() => steps().getListProps(), props);
6249
- return web.createComponent(ark.ol, mergedProps);
6250
- };
6251
-
6252
- const StepsNextTrigger = props => {
6253
- const steps = useStepsContext();
6254
- const mergedProps = solid.mergeProps(() => steps().getNextTriggerProps(), props);
6255
- return web.createComponent(ark.button, mergedProps);
6256
- };
6257
-
6258
- const StepsPrevTrigger = props => {
6259
- const steps = useStepsContext();
6260
- const mergedProps = solid.mergeProps(() => steps().getPrevTriggerProps(), props);
6261
- return web.createComponent(ark.button, mergedProps);
6262
- };
6263
-
6264
- const StepsProgress = props => {
6265
- const steps = useStepsContext();
6266
- const mergedProps = solid.mergeProps(() => steps().getProgressProps(), props);
6267
- return web.createComponent(ark.div, mergedProps);
6268
- };
6269
-
6270
- function useSteps(props = {}) {
6271
- const environment = useEnvironmentContext();
6272
- const locale = useLocaleContext();
6273
- const id = solidJs.createUniqueId();
6274
- const context = solidJs.createMemo(() => ({
6275
- id,
6276
- dir: locale().dir,
6277
- getRootNode: environment().getRootNode,
6278
- step: props.defaultStep,
6279
- ...props
6280
- }));
6281
- const [state, send] = solid.useMachine(steps__namespace.machine(context()), {
6282
- context
6283
- });
6284
- return solidJs.createMemo(() => steps__namespace.connect(state, send, solid.normalizeProps));
6285
- }
6286
-
6287
- const StepsRoot = props => {
6288
- const [useStepsProps, localProps] = createSplitProps()(props, ['defaultStep', 'id', 'ids', 'count', 'linear', 'onStepChange', 'onStepComplete', 'orientation', 'step']);
6289
- const steps = useSteps(useStepsProps);
6290
- const mergedProps = solid.mergeProps(() => steps().getRootProps(), localProps);
6291
- return web.createComponent(StepsProvider, {
6292
- value: steps,
6293
- get children() {
6294
- return web.createComponent(ark.div, mergedProps);
6295
- }
6296
- });
6297
- };
6298
-
6299
- const StepsRootProvider = props => {
6300
- const [{
6301
- value: steps
6302
- }, rootProps] = createSplitProps()(props, ['value']);
6303
- const mergedProps = solid.mergeProps(() => steps().getRootProps(), rootProps);
6304
- return web.createComponent(StepsProvider, {
6305
- value: steps,
6306
- get children() {
6307
- return web.createComponent(ark.div, web.mergeProps(mergedProps, {
6308
- get children() {
6309
- return props.children;
6310
- }
6311
- }));
6312
- }
6313
- });
6314
- };
6315
-
6316
- const StepsSeparator = props => {
6317
- const steps = useStepsContext();
6318
- const itemProps = useStepsItemPropsContext();
6319
- const mergedProps = solid.mergeProps(() => steps().getSeparatorProps(itemProps), props);
6320
- return web.createComponent(ark.div, mergedProps);
6321
- };
6322
-
6323
- const StepsTrigger = props => {
6324
- const steps = useStepsContext();
6325
- const itemProps = useStepsItemPropsContext();
6326
- const mergedProps = solid.mergeProps(() => steps().getTriggerProps(itemProps), props);
6327
- return web.createComponent(ark.button, mergedProps);
6328
- };
6329
-
6330
- var steps = /*#__PURE__*/Object.freeze({
6331
- __proto__: null,
6332
- CompletedContent: StepsCompletedContent,
6333
- Content: StepsContent,
6334
- Context: StepsContext,
6335
- Indicator: StepsIndicator,
6336
- Item: StepsItem,
6337
- ItemContext: StepsItemContext,
6338
- List: StepsList,
6339
- NextTrigger: StepsNextTrigger,
6340
- PrevTrigger: StepsPrevTrigger,
6341
- Progress: StepsProgress,
6342
- Root: StepsRoot,
6343
- RootProvider: StepsRootProvider,
6344
- Separator: StepsSeparator,
6345
- Trigger: StepsTrigger
6346
- });
6347
-
6348
6447
  Object.defineProperty(exports, "collapsibleAnatomy", {
6349
6448
  enumerable: true,
6350
6449
  get: function () { return collapsible$1.anatomy; }
@@ -6433,6 +6532,10 @@ Object.defineProperty(exports, "splitterAnatomy", {
6433
6532
  enumerable: true,
6434
6533
  get: function () { return splitter$1.anatomy; }
6435
6534
  });
6535
+ Object.defineProperty(exports, "stepsAnatomy", {
6536
+ enumerable: true,
6537
+ get: function () { return steps$1.anatomy; }
6538
+ });
6436
6539
  Object.defineProperty(exports, "switchAnatomy", {
6437
6540
  enumerable: true,
6438
6541
  get: function () { return zagSwitch.anatomy; }
@@ -6461,10 +6564,6 @@ Object.defineProperty(exports, "treeViewAnatomy", {
6461
6564
  enumerable: true,
6462
6565
  get: function () { return treeView$1.anatomy; }
6463
6566
  });
6464
- Object.defineProperty(exports, "stepsAnatomy", {
6465
- enumerable: true,
6466
- get: function () { return steps$1.anatomy; }
6467
- });
6468
6567
  exports.Accordion = accordion;
6469
6568
  exports.AccordionContext = AccordionContext;
6470
6569
  exports.AccordionItem = AccordionItem;
@@ -6650,6 +6749,7 @@ exports.FileUploadTrigger = FileUploadTrigger;
6650
6749
  exports.Format = format;
6651
6750
  exports.FormatByte = FormatByte;
6652
6751
  exports.FormatNumber = FormatNumber;
6752
+ exports.Frame = Frame;
6653
6753
  exports.Highlight = Highlight;
6654
6754
  exports.HoverCard = hoverCard;
6655
6755
  exports.HoverCardArrow = HoverCardArrow;
@@ -6887,7 +6987,9 @@ exports.TimePickerSpacer = TimePickerSpacer;
6887
6987
  exports.TimePickerTrigger = TimePickerTrigger;
6888
6988
  exports.Timer = timer;
6889
6989
  exports.TimerActionTrigger = TimerActionTrigger;
6990
+ exports.TimerArea = TimerArea;
6890
6991
  exports.TimerContext = TimerContext;
6992
+ exports.TimerControl = TimerControl;
6891
6993
  exports.TimerItem = TimerItem;
6892
6994
  exports.TimerRoot = TimerRoot;
6893
6995
  exports.TimerRootProvider = TimerRootProvider;