UNPKG

@ark-ui/solid

Version:

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

265 lines (241 loc) 8.65 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/tags-input/tags-input-clear-trigger.tsx import { mergeProps } from "@zag-js/solid"; // src/components/tags-input/use-tags-input-context.ts var [TagsInputProvider, useTagsInputContext] = createContext({ hookName: "useTagsInputContext", providerName: "<TagsInputProvider />" }); // src/components/tags-input/tags-input-clear-trigger.tsx var TagsInputClearTrigger = (props) => { const api = useTagsInputContext(); const mergedProps = mergeProps(() => api().getClearTriggerProps(), props); return <ark.button {...mergedProps} />; }; // src/components/tags-input/tags-input-context.tsx var TagsInputContext = (props) => props.children(useTagsInputContext()); // src/components/tags-input/tags-input-control.tsx import { mergeProps as mergeProps2 } from "@zag-js/solid"; var TagsInputControl = (props) => { const api = useTagsInputContext(); const mergedProps = mergeProps2(() => api().getControlProps(), props); return <ark.div {...mergedProps} />; }; // src/components/tags-input/tags-input-hidden-input.tsx import { mergeProps as mergeProps3 } from "@zag-js/solid"; var TagsInputHiddenInput = (props) => { const tagsInput2 = useTagsInputContext(); const mergedProps = mergeProps3(() => tagsInput2().getHiddenInputProps(), props); const field = useFieldContext(); return <ark.input aria-describedby={field?.().ariaDescribedby} {...mergedProps} />; }; // src/components/tags-input/tags-input-input.tsx import { mergeProps as mergeProps4 } from "@zag-js/solid"; var TagsInputInput = (props) => { const api = useTagsInputContext(); const mergedProps = mergeProps4(() => api().getInputProps(), props); return <ark.input {...mergedProps} />; }; // src/components/tags-input/tags-input-item.tsx import { mergeProps as mergeProps5 } from "@zag-js/solid"; import { createMemo } from "solid-js"; // src/components/tags-input/use-tags-input-item-context.ts var [TagsInputItemProvider, useTagsInputItemContext] = createContext({ hookName: "useTagsInputItemContext", providerName: "<TagsInputItemProvider />" }); // src/components/tags-input/use-tags-input-item-props-context.ts var [TagsInputItemPropsProvider, useTagsInputItemPropsContext] = createContext({ hookName: "useTagsInputItemPropsContext", providerName: "<TagsInputItemPropsProvider />" }); // src/components/tags-input/tags-input-item.tsx var TagsInputItem = (props) => { const [itemProps, localProps] = createSplitProps()(props, ["disabled", "index", "value"]); const api = useTagsInputContext(); const mergedProps = mergeProps5(() => api().getItemProps(itemProps), localProps); const itemState = createMemo(() => api().getItemState(itemProps)); return <TagsInputItemPropsProvider value={itemProps}> <TagsInputItemProvider value={itemState}> <ark.div {...mergedProps} /> </TagsInputItemProvider> </TagsInputItemPropsProvider>; }; // src/components/tags-input/tags-input-item-context.tsx var TagsInputItemContext = (props) => props.children(useTagsInputItemContext()); // src/components/tags-input/tags-input-item-delete-trigger.tsx import { mergeProps as mergeProps6 } from "@zag-js/solid"; var TagsInputItemDeleteTrigger = (props) => { const api = useTagsInputContext(); const itemProps = useTagsInputItemPropsContext(); const mergedProps = mergeProps6(() => api().getItemDeleteTriggerProps(itemProps), props); return <ark.button {...mergedProps} />; }; // src/components/tags-input/tags-input-item-input.tsx import { mergeProps as mergeProps7 } from "@zag-js/solid"; var TagsInputItemInput = (props) => { const api = useTagsInputContext(); const itemProps = useTagsInputItemPropsContext(); const mergedProps = mergeProps7(() => api().getItemInputProps(itemProps), props); return <ark.input {...mergedProps} />; }; // src/components/tags-input/tags-input-item-preview.tsx import { mergeProps as mergeProps8 } from "@zag-js/solid"; var TagsInputItemPreview = (props) => { const api = useTagsInputContext(); const itemProps = useTagsInputItemPropsContext(); const mergedProps = mergeProps8(() => api().getItemPreviewProps(itemProps), props); return <ark.div {...mergedProps} />; }; // src/components/tags-input/tags-input-item-text.tsx import { mergeProps as mergeProps9 } from "@zag-js/solid"; var TagsInputItemText = (props) => { const api = useTagsInputContext(); const itemProps = useTagsInputItemPropsContext(); const mergedProps = mergeProps9(() => api().getItemTextProps(itemProps), props); return <ark.span {...mergedProps} />; }; // src/components/tags-input/tags-input-label.tsx import { mergeProps as mergeProps10 } from "@zag-js/solid"; var TagsInputLabel = (props) => { const api = useTagsInputContext(); const mergedProps = mergeProps10(() => api().getLabelProps(), props); return <ark.label {...mergedProps} />; }; // src/components/tags-input/tags-input-root.tsx import { mergeProps as mergeProps11 } from "@zag-js/solid"; // src/components/tags-input/use-tags-input.ts import { normalizeProps, useMachine } from "@zag-js/solid"; import * as tagsInput from "@zag-js/tags-input"; import { createMemo as createMemo2, createUniqueId } from "solid-js"; var useTagsInput = (props) => { const id = createUniqueId(); const locale = useLocaleContext(); const environment = useEnvironmentContext(); const field = useFieldContext(); const machineProps = createMemo2(() => ({ id, ids: { label: field?.().ids.label, hiddenInput: field?.().ids.control }, dir: locale().dir, disabled: field?.().disabled, invalid: field?.().invalid, readOnly: field?.().readOnly, required: field?.().required, getRootNode: environment().getRootNode, ...runIfFn(props) })); const service = useMachine(tagsInput.machine, machineProps); return createMemo2(() => tagsInput.connect(service, normalizeProps)); }; // src/components/tags-input/tags-input-root.tsx var TagsInputRoot = (props) => { const [useTagsInputProps, localProps] = createSplitProps()(props, [ "addOnPaste", "allowOverflow", "autoFocus", "blurBehavior", "defaultInputValue", "defaultValue", "delimiter", "disabled", "editable", "form", "id", "ids", "inputValue", "invalid", "max", "maxLength", "name", "onFocusOutside", "onHighlightChange", "onInputValueChange", "onInteractOutside", "onPointerDownOutside", "onValueChange", "onValueInvalid", "readOnly", "required", "translations", "validate", "value" ]); const api = useTagsInput(useTagsInputProps); const mergedProps = mergeProps11(() => api().getRootProps(), localProps); return <TagsInputProvider value={api}> <ark.div {...mergedProps} /> </TagsInputProvider>; }; // src/components/tags-input/tags-input-root-provider.tsx import { mergeProps as mergeProps12 } from "@zag-js/solid"; var TagsInputRootProvider = (props) => { const [{ value: tagsInput2 }, localProps] = createSplitProps()(props, ["value"]); const mergedProps = mergeProps12(() => tagsInput2().getRootProps(), localProps); return <TagsInputProvider value={tagsInput2}> <ark.div {...mergedProps} /> </TagsInputProvider>; }; // src/components/tags-input/tags-input.ts var tags_input_exports = {}; __export(tags_input_exports, { ClearTrigger: () => TagsInputClearTrigger, Context: () => TagsInputContext, Control: () => TagsInputControl, HiddenInput: () => TagsInputHiddenInput, Input: () => TagsInputInput, Item: () => TagsInputItem, ItemContext: () => TagsInputItemContext, ItemDeleteTrigger: () => TagsInputItemDeleteTrigger, ItemInput: () => TagsInputItemInput, ItemPreview: () => TagsInputItemPreview, ItemText: () => TagsInputItemText, Label: () => TagsInputLabel, Root: () => TagsInputRoot, RootProvider: () => TagsInputRootProvider }); export { useTagsInputContext, TagsInputClearTrigger, TagsInputContext, TagsInputControl, TagsInputHiddenInput, TagsInputInput, useTagsInputItemContext, TagsInputItem, TagsInputItemContext, TagsInputItemDeleteTrigger, TagsInputItemInput, TagsInputItemPreview, TagsInputItemText, TagsInputLabel, useTagsInput, TagsInputRoot, TagsInputRootProvider, tags_input_exports };