UNPKG

@ark-ui/solid

Version:

A collection of unstyled, accessible UI components for Solid, utilizing state machines for seamless interaction.

201 lines (185 loc) 6.25 kB
import { useFieldContext } from "./7HLG62OR.jsx"; import { createSplitProps } from "./6WEDGJKQ.jsx"; import { ark } from "./UFYZ7HLU.jsx"; import { useEnvironmentContext } from "./CGW54HAQ.jsx"; import { useLocaleContext } from "./JFOWNFC7.jsx"; import { runIfFn } from "./KGOB2IMX.jsx"; import { createContext } from "./UZJJWJQM.jsx"; import { __export } from "./7IUG3E2V.jsx"; // src/components/number-input/use-number-input-context.ts var [NumberInputProvider, useNumberInputContext] = createContext({ hookName: "useNumberInputContext", providerName: "<NumberInputProvider />" }); // src/components/number-input/number-input-context.tsx var NumberInputContext = (props) => props.children(useNumberInputContext()); // src/components/number-input/number-input-control.tsx import { mergeProps } from "@zag-js/solid"; var NumberInputControl = (props) => { const api = useNumberInputContext(); const mergedProps = mergeProps(() => api().getControlProps(), props); return <ark.div {...mergedProps} />; }; // src/components/number-input/number-input-decrement-trigger.tsx import { mergeProps as mergeProps2 } from "@zag-js/solid"; var NumberInputDecrementTrigger = (props) => { const api = useNumberInputContext(); const mergedProps = mergeProps2(() => api().getDecrementTriggerProps(), props); return <ark.button {...mergedProps} />; }; // src/components/number-input/number-input-increment-trigger.tsx import { mergeProps as mergeProps3 } from "@zag-js/solid"; var NumberInputIncrementTrigger = (props) => { const api = useNumberInputContext(); const mergedProps = mergeProps3(() => api().getIncrementTriggerProps(), props); return <ark.button {...mergedProps} />; }; // src/components/number-input/number-input-input.tsx import { mergeProps as mergeProps4 } from "@zag-js/solid"; var NumberInputInput = (props) => { const api = useNumberInputContext(); const mergedProps = mergeProps4(() => api().getInputProps(), props); const field = useFieldContext(); return <ark.input aria-describedby={field?.().ariaDescribedby} {...mergedProps} />; }; // src/components/number-input/number-input-label.tsx import { mergeProps as mergeProps5 } from "@zag-js/solid"; var NumberInputLabel = (props) => { const api = useNumberInputContext(); const mergedProps = mergeProps5(() => api().getLabelProps(), props); return <ark.label {...mergedProps} />; }; // src/components/number-input/number-input-root.tsx import { mergeProps as mergeProps6 } from "@zag-js/solid"; // src/components/number-input/use-number-input.ts import * as numberInput from "@zag-js/number-input"; import { normalizeProps, useMachine } from "@zag-js/solid"; import { createMemo, createUniqueId } from "solid-js"; var useNumberInput = (props) => { const id = createUniqueId(); const locale = useLocaleContext(); const environment = useEnvironmentContext(); const field = useFieldContext(); const machineProps = createMemo(() => ({ id, ids: { label: field?.().ids.label, input: field?.().ids.control }, disabled: field?.().disabled, readOnly: field?.().readOnly, required: field?.().required, invalid: field?.().invalid, dir: locale().dir, locale: locale().locale, getRootNode: environment().getRootNode, ...runIfFn(props) })); const service = useMachine(numberInput.machine, machineProps); return createMemo(() => numberInput.connect(service, normalizeProps)); }; // src/components/number-input/number-input-root.tsx var NumberInputRoot = (props) => { const [useNumberInputProps, localProps] = createSplitProps()(props, [ "allowMouseWheel", "allowOverflow", "clampValueOnBlur", "defaultValue", "disabled", "focusInputOnChange", "form", "formatOptions", "id", "ids", "inputMode", "invalid", "locale", "max", "min", "name", "onFocusChange", "onValueChange", "onValueCommit", "onValueInvalid", "pattern", "readOnly", "required", "spinOnPress", "step", "translations", "value" ]); const api = useNumberInput(useNumberInputProps); const mergedProps = mergeProps6(() => api().getRootProps(), localProps); return <NumberInputProvider value={api}> <ark.div {...mergedProps} /> </NumberInputProvider>; }; // src/components/number-input/number-input-root-provider.tsx import { mergeProps as mergeProps7 } from "@zag-js/solid"; var NumberInputRootProvider = (props) => { const [{ value: numberInput2 }, localProps] = createSplitProps()(props, ["value"]); const mergedProps = mergeProps7(() => numberInput2().getRootProps(), localProps); return <NumberInputProvider value={numberInput2}> <ark.div {...mergedProps} /> </NumberInputProvider>; }; // src/components/number-input/number-input-scrubber.tsx import { mergeProps as mergeProps8 } from "@zag-js/solid"; var NumberInputScrubber = (props) => { const api = useNumberInputContext(); const mergedProps = mergeProps8(() => api().getScrubberProps(), props); return <ark.div {...mergedProps} />; }; // src/components/number-input/number-input-value-text.tsx import { mergeProps as mergeProps9 } from "@zag-js/solid"; var NumberInputValueText = (props) => { const numberInput2 = useNumberInputContext(); const mergedProps = mergeProps9(() => numberInput2().getValueTextProps(), props); return <ark.span {...mergedProps} />; }; // src/components/number-input/number-input.ts var number_input_exports = {}; __export(number_input_exports, { Context: () => NumberInputContext, Control: () => NumberInputControl, DecrementTrigger: () => NumberInputDecrementTrigger, IncrementTrigger: () => NumberInputIncrementTrigger, Input: () => NumberInputInput, Label: () => NumberInputLabel, Root: () => NumberInputRoot, RootProvider: () => NumberInputRootProvider, Scrubber: () => NumberInputScrubber, ValueText: () => NumberInputValueText }); export { useNumberInputContext, NumberInputContext, NumberInputControl, NumberInputDecrementTrigger, NumberInputIncrementTrigger, NumberInputInput, NumberInputLabel, useNumberInput, NumberInputRoot, NumberInputRootProvider, NumberInputScrubber, NumberInputValueText, number_input_exports };