UNPKG

@ark-ui/solid

Version:

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

192 lines (175 loc) 6.39 kB
import { useFieldContext } from "./57XA73T6.jsx"; import { createSplitProps } from "./6WEDGJKQ.jsx"; import { ark } from "./UFYZ7HLU.jsx"; import { useLocaleContext } from "./YUC6JE7K.jsx"; import { useEnvironmentContext } from "./E2L62MKC.jsx"; import { createContext } from "./TVCIHLER.jsx"; import { runIfFn } from "./KGOB2IMX.jsx"; import { __export } from "./7IUG3E2V.jsx"; // src/components/signature-pad/signature-pad-clear-trigger.tsx import { mergeProps } from "@zag-js/solid"; // src/components/signature-pad/use-signature-pad-context.ts var [SignaturePadProvider, useSignaturePadContext] = createContext({ hookName: "useSignaturePadContext", providerName: "<SignaturePadProvider />" }); // src/components/signature-pad/signature-pad-clear-trigger.tsx var SignaturePadClearTrigger = (props) => { const signaturePad2 = useSignaturePadContext(); const mergedProps = mergeProps(() => signaturePad2().getClearTriggerProps(), props); return <ark.button {...mergedProps} />; }; // src/components/signature-pad/signature-pad-context.tsx var SignaturePadContext = (props) => props.children(useSignaturePadContext()); // src/components/signature-pad/signature-pad-control.tsx import { mergeProps as mergeProps2 } from "@zag-js/solid"; var SignaturePadControl = (props) => { const signaturePad2 = useSignaturePadContext(); const mergedProps = mergeProps2(() => signaturePad2().getControlProps(), props); return <ark.div {...mergedProps} />; }; // src/components/signature-pad/signature-pad-guide.tsx import { mergeProps as mergeProps3 } from "@zag-js/solid"; var SignaturePadGuide = (props) => { const signaturePad2 = useSignaturePadContext(); const mergedProps = mergeProps3(() => signaturePad2().getGuideProps(), props); return <ark.div {...mergedProps} />; }; // src/components/signature-pad/signature-pad-hidden-input.tsx import { mergeProps as mergeProps4 } from "@zag-js/solid"; var SignaturePadHiddenInput = (props) => { const [hiddenInputProps, localProps] = createSplitProps()(props, ["value"]); const signaturePad2 = useSignaturePadContext(); const mergedProps = mergeProps4(() => signaturePad2().getHiddenInputProps(hiddenInputProps), localProps); const field = useFieldContext(); return <ark.input aria-describedby={field?.().ariaDescribedby} {...mergedProps} />; }; // src/components/signature-pad/signature-pad-label.tsx import { mergeProps as mergeProps5 } from "@zag-js/solid"; var SignaturePadLabel = (props) => { const signaturePad2 = useSignaturePadContext(); const mergedProps = mergeProps5(() => signaturePad2().getLabelProps(), props); return <ark.label {...mergedProps} />; }; // src/components/signature-pad/signature-pad-root.tsx import { mergeProps as mergeProps6 } from "@zag-js/solid"; // src/components/signature-pad/use-signature-pad.ts import * as signaturePad from "@zag-js/signature-pad"; import { normalizeProps, useMachine } from "@zag-js/solid"; import { createMemo, createUniqueId } from "solid-js"; var useSignaturePad = (props) => { const id = createUniqueId(); const locale = useLocaleContext(); const environment = useEnvironmentContext(); const field = useFieldContext(); const machineProps = createMemo(() => ({ id, ids: { label: field?.().ids.label, hiddenInput: field?.().ids.control }, disabled: field?.().disabled, readOnly: field?.().readOnly, required: field?.().required, dir: locale().dir, getRootNode: environment().getRootNode, ...runIfFn(props) })); const service = useMachine(signaturePad.machine, machineProps); return createMemo(() => signaturePad.connect(service, normalizeProps)); }; // src/components/signature-pad/signature-pad-root.tsx var SignaturePadRoot = (props) => { const [useSignaturePadProps, localProps] = createSplitProps()(props, [ "id", "ids", "defaultPaths", "drawing", "disabled", "readOnly", "name", "onDraw", "onDrawEnd", "paths", "readOnly", "required", "translations" ]); const signaturePad2 = useSignaturePad(useSignaturePadProps); const mergedProps = mergeProps6(() => signaturePad2().getRootProps(), localProps); return <SignaturePadProvider value={signaturePad2}> <ark.div {...mergedProps} /> </SignaturePadProvider>; }; // src/components/signature-pad/signature-pad-root-provider.tsx import { mergeProps as mergeProps7 } from "@zag-js/solid"; var SignaturePadRootProvider = (props) => { const [{ value: signaturePad2 }, localProps] = createSplitProps()(props, ["value"]); const mergedProps = mergeProps7(() => signaturePad2().getRootProps(), localProps); return <SignaturePadProvider value={signaturePad2}> <ark.div {...mergedProps} /> </SignaturePadProvider>; }; // src/components/signature-pad/signature-pad-segment.tsx import { mergeProps as mergeProps8 } from "@zag-js/solid"; import { For, Show } from "solid-js"; var SignaturePadSegment = (props) => { const signaturePad2 = useSignaturePadContext(); const mergedProps = mergeProps8(() => signaturePad2().getSegmentProps(), props); return <ark.svg {...mergedProps}> <title>Signature</title> <For each={signaturePad2().paths}>{(path) => <path {...signaturePad2().getSegmentPathProps({ path })} />}</For> <Show when={signaturePad2().currentPath}> { /* @ts-expect-error */ } <path {...signaturePad2().getSegmentPathProps({ path: signaturePad2().currentPath })} /> </Show> </ark.svg>; }; // src/components/signature-pad/signature-pad.anatomy.ts import { anatomy } from "@zag-js/signature-pad"; // src/components/signature-pad/signature-pad.ts var signature_pad_exports = {}; __export(signature_pad_exports, { ClearTrigger: () => SignaturePadClearTrigger, Context: () => SignaturePadContext, Control: () => SignaturePadControl, Guide: () => SignaturePadGuide, HiddenInput: () => SignaturePadHiddenInput, Label: () => SignaturePadLabel, Root: () => SignaturePadRoot, RootProvider: () => SignaturePadRootProvider, Segment: () => SignaturePadSegment }); export { useSignaturePadContext, SignaturePadClearTrigger, SignaturePadContext, SignaturePadControl, SignaturePadGuide, SignaturePadHiddenInput, SignaturePadLabel, useSignaturePad, SignaturePadRoot, SignaturePadRootProvider, SignaturePadSegment, anatomy, signature_pad_exports };