@ark-ui/solid 3.11.0 → 3.12.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.
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,36 +2282,26 @@ 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);
2288
2289
  return web.createComponent(ark.select, web.mergeProps(mergedProps, {
2289
2290
  get children() {
2290
- return web.createComponent(solidJs.For, {
2291
+ return web.createComponent(solidJs.Index, {
2291
2292
  get each() {
2292
- return getYearsRange({
2293
- from: 1_000,
2294
- to: 4_000
2295
- });
2293
+ return api().getYears();
2296
2294
  },
2297
2295
  children: year => (() => {
2298
- var _el$ = _tmpl$$4();
2299
- _el$.value = year;
2300
- web.insert(_el$, year);
2296
+ var _el$ = _tmpl$$5();
2297
+ web.insert(_el$, () => year().label);
2298
+ web.effect(() => _el$.value = year().value);
2301
2299
  return _el$;
2302
2300
  })()
2303
2301
  });
2304
2302
  }
2305
2303
  }));
2306
2304
  };
2307
- function getYearsRange(range) {
2308
- const years = [];
2309
- for (let year = range.from; year <= range.to; year += 1) {
2310
- years.push(year);
2311
- }
2312
- return years;
2313
- }
2314
2305
 
2315
2306
  var datePicker = /*#__PURE__*/Object.freeze({
2316
2307
  __proto__: null,
@@ -2828,48 +2819,132 @@ var format = /*#__PURE__*/Object.freeze({
2828
2819
  Number: FormatNumber
2829
2820
  });
2830
2821
 
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);
2822
+ const isRefFn = ref => typeof ref === 'function';
2823
+ function setRef(ref, value) {
2824
+ if (isRefFn(ref)) {
2825
+ ref(value);
2826
+ }
2827
+ }
2828
+ function composeRefs(...refs) {
2829
+ return node => {
2830
+ for (const ref of refs) {
2831
+ setRef(ref, node);
2832
+ }
2833
+ };
2834
+ }
2835
+
2836
+ const FrameContent = props => {
2837
+ const {
2838
+ onMount,
2839
+ onUnmount,
2840
+ children
2841
+ } = props;
2842
+ solidJs.createEffect(() => {
2843
+ onMount?.();
2844
+ solidJs.onCleanup(() => {
2845
+ onUnmount?.();
2846
+ });
2847
+ });
2848
+ return children;
2835
2849
  };
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
2850
+
2851
+ var _tmpl$$4 = /*#__PURE__*/web.template(`<iframe>`);
2852
+ const resetStyle = '<style>*,*::before,*::after { margin: 0; padding: 0; box-sizing: border-box; }</style>';
2853
+ const initialSrcDoc = `<html><head>${resetStyle}</head><body><div class="frame-root"></div></body></html>`;
2854
+ function getMountNode(frame) {
2855
+ const doc = frame.contentWindow?.document;
2856
+ if (!doc) return null;
2857
+ return doc.body.querySelector('.frame-root') || doc.body;
2858
+ }
2859
+ const Frame = props => {
2860
+ const [frameProps, localProps] = solidJs.splitProps(props, ['children', 'head', 'onMount', 'onUnmount', 'srcdoc']);
2861
+ const srcdoc = solidJs.createMemo(() => frameProps.srcdoc ?? initialSrcDoc);
2862
+ const [frameRef, setFrameRef] = solidJs.createSignal(null);
2863
+ const [mountNode, setMountNode] = solidJs.createSignal(null);
2864
+ solidJs.createEffect(() => {
2865
+ const frame = frameRef();
2866
+ if (!frame) return;
2867
+ const doc = frame.contentWindow?.document;
2868
+ if (!doc) return;
2869
+ doc.open();
2870
+ doc.write(srcdoc());
2871
+ doc.close();
2872
+ setMountNode(getMountNode(frame));
2873
+ });
2874
+ solidJs.createEffect(() => {
2875
+ const frame = frameRef();
2876
+ if (!frame || !frame.contentDocument) return;
2877
+ const win = frame.contentWindow;
2878
+ if (!win) return;
2879
+ const node = getMountNode(frame);
2880
+ if (!node) return;
2881
+ const exec = () => {
2882
+ const rootEl = frame.contentDocument?.documentElement;
2883
+ if (!rootEl) return;
2884
+ frame.style.setProperty('--width', `${node.scrollWidth}px`);
2885
+ frame.style.setProperty('--height', `${node.scrollHeight}px`);
2886
+ };
2887
+ const resizeObserver = new win.ResizeObserver(exec);
2888
+ exec();
2889
+ if (frame.contentDocument) {
2890
+ resizeObserver.observe(node);
2891
+ }
2892
+ solidJs.onCleanup(() => {
2893
+ resizeObserver.disconnect();
2844
2894
  });
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
- }));
2895
+ });
2896
+ return web.createComponent(EnvironmentProvider, {
2897
+ value: () => frameRef()?.contentDocument ?? document,
2898
+ get children() {
2899
+ var _el$ = _tmpl$$4();
2900
+ var _ref$ = composeRefs(setFrameRef, localProps.ref);
2901
+ typeof _ref$ === "function" && web.use(_ref$, _el$);
2902
+ web.spread(_el$, localProps, false, true);
2903
+ web.insert(_el$, web.createComponent(solidJs.Show, {
2904
+ get when() {
2905
+ return mountNode();
2906
+ },
2907
+ children: node => web.createComponent(web.Portal, {
2908
+ get mount() {
2909
+ return node();
2910
+ },
2911
+ get children() {
2912
+ return web.createComponent(FrameContent, {
2913
+ get onMount() {
2914
+ return frameProps.onMount;
2915
+ },
2916
+ get onUnmount() {
2917
+ return frameProps.onUnmount;
2918
+ },
2919
+ get children() {
2920
+ return frameProps.children;
2921
+ }
2922
+ });
2923
+ }
2924
+ })
2925
+ }), null);
2926
+ web.insert(_el$, web.createComponent(solidJs.Show, {
2927
+ get when() {
2928
+ return mountNode();
2929
+ },
2930
+ get children() {
2931
+ return web.createComponent(web.Portal, {
2932
+ get mount() {
2933
+ return frameRef().contentDocument.head;
2934
+ },
2935
+ get children() {
2936
+ return frameProps.head;
2937
+ }
2938
+ });
2939
+ }
2940
+ }), null);
2941
+ return _el$;
2942
+ }
2943
+ });
2870
2944
  };
2945
+
2871
2946
  const useHighlight = props => {
2872
- return solidJs.createMemo(() => highlightWords(props));
2947
+ return solidJs.createMemo(() => highlightWord.highlightWord(props));
2873
2948
  };
2874
2949
 
2875
2950
  var _tmpl$$3 = /*#__PURE__*/web.template(`<mark>`);
@@ -5043,6 +5118,173 @@ var splitter = /*#__PURE__*/Object.freeze({
5043
5118
  RootProvider: SplitterRootProvider
5044
5119
  });
5045
5120
 
5121
+ const [StepsProvider, useStepsContext] = createContext({
5122
+ hookName: 'useStepsContext',
5123
+ providerName: '<StepsProvider />'
5124
+ });
5125
+
5126
+ const StepsCompletedContent = props => {
5127
+ const steps = useStepsContext();
5128
+ const mergedProps = solid.mergeProps(() => steps().getContentProps({
5129
+ index: steps().count
5130
+ }), props);
5131
+ return web.createComponent(ark.div, mergedProps);
5132
+ };
5133
+
5134
+ const StepsContent = props => {
5135
+ const [itemProps, localProps] = createSplitProps()(props, ['index']);
5136
+ const steps = useStepsContext();
5137
+ const mergedProps = solid.mergeProps(() => steps().getContentProps(itemProps), localProps);
5138
+ return web.createComponent(ark.div, mergedProps);
5139
+ };
5140
+
5141
+ const StepsContext = props => {
5142
+ const context = useStepsContext();
5143
+ return props.children(context);
5144
+ };
5145
+
5146
+ const [StepsItemPropsProvider, useStepsItemPropsContext] = createContext({
5147
+ hookName: 'useStepsItemPropsContext',
5148
+ providerName: '<StepsItemPropsProvider />'
5149
+ });
5150
+
5151
+ const StepsIndicator = props => {
5152
+ const steps = useStepsContext();
5153
+ const itemProps = useStepsItemPropsContext();
5154
+ const mergedProps = solid.mergeProps(() => steps().getIndicatorProps(itemProps), props);
5155
+ return web.createComponent(ark.div, mergedProps);
5156
+ };
5157
+
5158
+ const [StepsItemProvider, useStepsItemContext] = createContext({
5159
+ hookName: 'useStepsItemContext',
5160
+ providerName: '<StepsItem />'
5161
+ });
5162
+
5163
+ const StepsItem = props => {
5164
+ const [itemProps, localProps] = createSplitProps()(props, ['index']);
5165
+ const steps = useStepsContext();
5166
+ const mergedProps = solid.mergeProps(() => steps().getItemProps(itemProps), localProps);
5167
+ const itemState = solidJs.createMemo(() => steps().getItemState(itemProps));
5168
+ return web.createComponent(StepsItemPropsProvider, {
5169
+ value: itemProps,
5170
+ get children() {
5171
+ return web.createComponent(StepsItemProvider, {
5172
+ value: itemState,
5173
+ get children() {
5174
+ return web.createComponent(ark.li, mergedProps);
5175
+ }
5176
+ });
5177
+ }
5178
+ });
5179
+ };
5180
+
5181
+ const StepsItemContext = props => {
5182
+ return props.children(useStepsItemContext());
5183
+ };
5184
+ StepsItemContext.displayName = 'StepsItemContext';
5185
+
5186
+ const StepsList = props => {
5187
+ const steps = useStepsContext();
5188
+ const mergedProps = solid.mergeProps(() => steps().getListProps(), props);
5189
+ return web.createComponent(ark.ol, mergedProps);
5190
+ };
5191
+
5192
+ const StepsNextTrigger = props => {
5193
+ const steps = useStepsContext();
5194
+ const mergedProps = solid.mergeProps(() => steps().getNextTriggerProps(), props);
5195
+ return web.createComponent(ark.button, mergedProps);
5196
+ };
5197
+
5198
+ const StepsPrevTrigger = props => {
5199
+ const steps = useStepsContext();
5200
+ const mergedProps = solid.mergeProps(() => steps().getPrevTriggerProps(), props);
5201
+ return web.createComponent(ark.button, mergedProps);
5202
+ };
5203
+
5204
+ const StepsProgress = props => {
5205
+ const steps = useStepsContext();
5206
+ const mergedProps = solid.mergeProps(() => steps().getProgressProps(), props);
5207
+ return web.createComponent(ark.div, mergedProps);
5208
+ };
5209
+
5210
+ function useSteps(props = {}) {
5211
+ const environment = useEnvironmentContext();
5212
+ const locale = useLocaleContext();
5213
+ const id = solidJs.createUniqueId();
5214
+ const context = solidJs.createMemo(() => ({
5215
+ id,
5216
+ dir: locale().dir,
5217
+ getRootNode: environment().getRootNode,
5218
+ step: props.defaultStep,
5219
+ ...props
5220
+ }));
5221
+ const [state, send] = solid.useMachine(steps__namespace.machine(context()), {
5222
+ context
5223
+ });
5224
+ return solidJs.createMemo(() => steps__namespace.connect(state, send, solid.normalizeProps));
5225
+ }
5226
+
5227
+ const StepsRoot = props => {
5228
+ const [useStepsProps, localProps] = createSplitProps()(props, ['defaultStep', 'id', 'ids', 'count', 'linear', 'onStepChange', 'onStepComplete', 'orientation', 'step']);
5229
+ const steps = useSteps(useStepsProps);
5230
+ const mergedProps = solid.mergeProps(() => steps().getRootProps(), localProps);
5231
+ return web.createComponent(StepsProvider, {
5232
+ value: steps,
5233
+ get children() {
5234
+ return web.createComponent(ark.div, mergedProps);
5235
+ }
5236
+ });
5237
+ };
5238
+
5239
+ const StepsRootProvider = props => {
5240
+ const [{
5241
+ value: steps
5242
+ }, rootProps] = createSplitProps()(props, ['value']);
5243
+ const mergedProps = solid.mergeProps(() => steps().getRootProps(), rootProps);
5244
+ return web.createComponent(StepsProvider, {
5245
+ value: steps,
5246
+ get children() {
5247
+ return web.createComponent(ark.div, web.mergeProps(mergedProps, {
5248
+ get children() {
5249
+ return props.children;
5250
+ }
5251
+ }));
5252
+ }
5253
+ });
5254
+ };
5255
+
5256
+ const StepsSeparator = props => {
5257
+ const steps = useStepsContext();
5258
+ const itemProps = useStepsItemPropsContext();
5259
+ const mergedProps = solid.mergeProps(() => steps().getSeparatorProps(itemProps), props);
5260
+ return web.createComponent(ark.div, mergedProps);
5261
+ };
5262
+
5263
+ const StepsTrigger = props => {
5264
+ const steps = useStepsContext();
5265
+ const itemProps = useStepsItemPropsContext();
5266
+ const mergedProps = solid.mergeProps(() => steps().getTriggerProps(itemProps), props);
5267
+ return web.createComponent(ark.button, mergedProps);
5268
+ };
5269
+
5270
+ var steps = /*#__PURE__*/Object.freeze({
5271
+ __proto__: null,
5272
+ CompletedContent: StepsCompletedContent,
5273
+ Content: StepsContent,
5274
+ Context: StepsContext,
5275
+ Indicator: StepsIndicator,
5276
+ Item: StepsItem,
5277
+ ItemContext: StepsItemContext,
5278
+ List: StepsList,
5279
+ NextTrigger: StepsNextTrigger,
5280
+ PrevTrigger: StepsPrevTrigger,
5281
+ Progress: StepsProgress,
5282
+ Root: StepsRoot,
5283
+ RootProvider: StepsRootProvider,
5284
+ Separator: StepsSeparator,
5285
+ Trigger: StepsTrigger
5286
+ });
5287
+
5046
5288
  const [SwitchProvider, useSwitchContext] = createContext({
5047
5289
  hookName: 'useSwitchContext',
5048
5290
  providerName: '<SwitchProvider />'
@@ -5608,34 +5850,127 @@ var timePicker = /*#__PURE__*/Object.freeze({
5608
5850
  Trigger: TimePickerTrigger
5609
5851
  });
5610
5852
 
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 />'
5853
+ const [TimerProvider, useTimerContext] = createContext({
5854
+ hookName: 'useTimerContext',
5855
+ providerName: '<TimerProvider />'
5626
5856
  });
5627
5857
 
5628
- const ToastActionTrigger = props => {
5629
- const toast = useToastContext();
5630
- const mergedProps = solid.mergeProps(() => toast().getActionTriggerProps(), props);
5858
+ const TimerActionTrigger = props => {
5859
+ const timer = useTimerContext();
5860
+ const mergedProps = solid.mergeProps(() => timer().getActionTriggerProps(props), props);
5631
5861
  return web.createComponent(ark.button, mergedProps);
5632
5862
  };
5633
5863
 
5634
- const ToastCloseTrigger = props => {
5635
- const toast = useToastContext();
5636
- const mergedProps = solid.mergeProps(() => toast().getCloseTriggerProps(), props);
5637
- return web.createComponent(ark.button, mergedProps);
5638
- };
5864
+ const TimerArea = props => {
5865
+ const timer = useTimerContext();
5866
+ const mergedProps = solid.mergeProps(() => timer().getAreaProps(), props);
5867
+ return web.createComponent(ark.div, mergedProps);
5868
+ };
5869
+
5870
+ const TimerContext = props => props.children(useTimerContext());
5871
+
5872
+ const TimerControl = props => {
5873
+ const timer = useTimerContext();
5874
+ const mergedProps = solid.mergeProps(() => timer().getControlProps(), props);
5875
+ return web.createComponent(ark.div, mergedProps);
5876
+ };
5877
+
5878
+ const TimerItem = props => {
5879
+ const [itemProps, localProps] = createSplitProps()(props, ['type']);
5880
+ const timer = useTimerContext();
5881
+ const mergedProps = solid.mergeProps(() => timer().getItemProps(itemProps), localProps);
5882
+ return web.createComponent(ark.div, web.mergeProps(mergedProps, {
5883
+ get children() {
5884
+ return timer().formattedTime[itemProps.type];
5885
+ }
5886
+ }));
5887
+ };
5888
+
5889
+ const useTimer = props => {
5890
+ const env = useEnvironmentContext();
5891
+ const id = solidJs.createUniqueId();
5892
+ const context = solidJs.createMemo(() => ({
5893
+ id,
5894
+ getRootNode: env().getRootNode,
5895
+ ...props
5896
+ }));
5897
+ const [state, send] = solid.useMachine(timer__namespace.machine(context()), {
5898
+ context
5899
+ });
5900
+ return solidJs.createMemo(() => timer__namespace.connect(state, send, solid.normalizeProps));
5901
+ };
5902
+
5903
+ const TimerRoot = props => {
5904
+ const [useTimerProps, localProps] = createSplitProps()(props, ['id', 'ids', 'autoStart', 'interval', 'countdown', 'startMs', 'targetMs', 'onComplete', 'onTick']);
5905
+ const timer = useTimer(useTimerProps);
5906
+ const mergedProps = solid.mergeProps(() => timer().getRootProps(), localProps);
5907
+ return web.createComponent(TimerProvider, {
5908
+ value: timer,
5909
+ get children() {
5910
+ return web.createComponent(ark.div, mergedProps);
5911
+ }
5912
+ });
5913
+ };
5914
+
5915
+ const TimerRootProvider = props => {
5916
+ const [{
5917
+ value: timer
5918
+ }, localProps] = createSplitProps()(props, ['value']);
5919
+ const mergedProps = solid.mergeProps(() => timer().getRootProps(), localProps);
5920
+ return web.createComponent(TimerProvider, {
5921
+ value: timer,
5922
+ get children() {
5923
+ return web.createComponent(ark.div, mergedProps);
5924
+ }
5925
+ });
5926
+ };
5927
+
5928
+ const TimerSeparator = props => {
5929
+ const timer = useTimerContext();
5930
+ const mergedProps = solid.mergeProps(() => timer().getSeparatorProps(), props);
5931
+ return web.createComponent(ark.div, mergedProps);
5932
+ };
5933
+
5934
+ var timer = /*#__PURE__*/Object.freeze({
5935
+ __proto__: null,
5936
+ ActionTrigger: TimerActionTrigger,
5937
+ Area: TimerArea,
5938
+ Context: TimerContext,
5939
+ Control: TimerControl,
5940
+ Item: TimerItem,
5941
+ Root: TimerRoot,
5942
+ RootProvider: TimerRootProvider,
5943
+ Separator: TimerSeparator
5944
+ });
5945
+
5946
+ const createToaster = props => {
5947
+ const machine = toast__namespace.group.machine({
5948
+ id: '1',
5949
+ ...props
5950
+ });
5951
+ const api = toast__namespace.group.connect(machine, machine.send, solid.normalizeProps);
5952
+ return {
5953
+ ...api,
5954
+ machine
5955
+ };
5956
+ };
5957
+
5958
+ const [ToastProvider, useToastContext] = createContext({
5959
+ hookName: 'useToastContext',
5960
+ providerName: '<ToastProvider />'
5961
+ });
5962
+
5963
+ const ToastActionTrigger = props => {
5964
+ const toast = useToastContext();
5965
+ const mergedProps = solid.mergeProps(() => toast().getActionTriggerProps(), props);
5966
+ return web.createComponent(ark.button, mergedProps);
5967
+ };
5968
+
5969
+ const ToastCloseTrigger = props => {
5970
+ const toast = useToastContext();
5971
+ const mergedProps = solid.mergeProps(() => toast().getCloseTriggerProps(), props);
5972
+ return web.createComponent(ark.button, mergedProps);
5973
+ };
5639
5974
 
5640
5975
  const ToastContext = props => props.children(useToastContext());
5641
5976
 
@@ -6099,252 +6434,6 @@ var treeView = /*#__PURE__*/Object.freeze({
6099
6434
  Tree: TreeViewTree
6100
6435
  });
6101
6436
 
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
6437
  Object.defineProperty(exports, "collapsibleAnatomy", {
6349
6438
  enumerable: true,
6350
6439
  get: function () { return collapsible$1.anatomy; }
@@ -6433,6 +6522,10 @@ Object.defineProperty(exports, "splitterAnatomy", {
6433
6522
  enumerable: true,
6434
6523
  get: function () { return splitter$1.anatomy; }
6435
6524
  });
6525
+ Object.defineProperty(exports, "stepsAnatomy", {
6526
+ enumerable: true,
6527
+ get: function () { return steps$1.anatomy; }
6528
+ });
6436
6529
  Object.defineProperty(exports, "switchAnatomy", {
6437
6530
  enumerable: true,
6438
6531
  get: function () { return zagSwitch.anatomy; }
@@ -6461,10 +6554,6 @@ Object.defineProperty(exports, "treeViewAnatomy", {
6461
6554
  enumerable: true,
6462
6555
  get: function () { return treeView$1.anatomy; }
6463
6556
  });
6464
- Object.defineProperty(exports, "stepsAnatomy", {
6465
- enumerable: true,
6466
- get: function () { return steps$1.anatomy; }
6467
- });
6468
6557
  exports.Accordion = accordion;
6469
6558
  exports.AccordionContext = AccordionContext;
6470
6559
  exports.AccordionItem = AccordionItem;
@@ -6650,6 +6739,7 @@ exports.FileUploadTrigger = FileUploadTrigger;
6650
6739
  exports.Format = format;
6651
6740
  exports.FormatByte = FormatByte;
6652
6741
  exports.FormatNumber = FormatNumber;
6742
+ exports.Frame = Frame;
6653
6743
  exports.Highlight = Highlight;
6654
6744
  exports.HoverCard = hoverCard;
6655
6745
  exports.HoverCardArrow = HoverCardArrow;
@@ -6887,7 +6977,9 @@ exports.TimePickerSpacer = TimePickerSpacer;
6887
6977
  exports.TimePickerTrigger = TimePickerTrigger;
6888
6978
  exports.Timer = timer;
6889
6979
  exports.TimerActionTrigger = TimerActionTrigger;
6980
+ exports.TimerArea = TimerArea;
6890
6981
  exports.TimerContext = TimerContext;
6982
+ exports.TimerControl = TimerControl;
6891
6983
  exports.TimerItem = TimerItem;
6892
6984
  exports.TimerRoot = TimerRoot;
6893
6985
  exports.TimerRootProvider = TimerRootProvider;