import {
  createSplitProps
} from "./6WEDGJKQ.jsx";
import {
  useEnvironmentContext
} from "./HDGILMRT.jsx";
import {
  useLocaleContext
} from "./HOPBYFHD.jsx";
import {
  runIfFn
} from "./KGOB2IMX.jsx";
import {
  ark
} from "./UFYZ7HLU.jsx";
import {
  createContext
} from "./UZJJWJQM.jsx";
import {
  __export
} from "./7IUG3E2V.jsx";

// src/components/splitter/index.tsx
import { layout as layout2 } from "@zag-js/splitter";

// src/components/splitter/use-splitter-context.ts
var [SplitterProvider, useSplitterContext] = createContext({
  hookName: "useSplitterContext",
  providerName: "<SplitterProvider />"
});

// src/components/splitter/splitter-context.tsx
var SplitterContext = (props) => props.children(useSplitterContext());

// src/components/splitter/splitter-panel.tsx
import { mergeProps } from "@zag-js/solid";
var SplitterPanel = (props) => {
  const [panelProps, restProps] = createSplitProps()(props, ["id"]);
  const api = useSplitterContext();
  const mergedProps = mergeProps(() => api().getPanelProps(panelProps), restProps);
  return <ark.div {...mergedProps} />;
};

// src/components/splitter/splitter-resize-trigger.tsx
import { mergeProps as mergeProps2 } from "@zag-js/solid";

// src/components/splitter/use-splitter-resize-trigger-props-context.ts
var [SplitterResizeTriggerPropsProvider, useSplitterResizeTriggerPropsContext] = createContext({
  hookName: "useSplitterResizeTriggerPropsContext",
  providerName: "<SplitterResizeTriggerPropsProvider />"
});

// src/components/splitter/splitter-resize-trigger.tsx
var SplitterResizeTrigger = (props) => {
  const [resizeTriggerProps, restProps] = createSplitProps()(props, ["disabled", "id"]);
  const api = useSplitterContext();
  const mergedProps = mergeProps2(() => api().getResizeTriggerProps(resizeTriggerProps), restProps);
  return <SplitterResizeTriggerPropsProvider value={resizeTriggerProps}>
      <ark.button {...mergedProps} />
    </SplitterResizeTriggerPropsProvider>;
};

// src/components/splitter/splitter-resize-trigger-indicator.tsx
import { mergeProps as mergeProps3 } from "@zag-js/solid";
var SplitterResizeTriggerIndicator = (props) => {
  const splitter3 = useSplitterContext();
  const triggerProps = useSplitterResizeTriggerPropsContext();
  const mergedProps = mergeProps3(() => splitter3().getResizeTriggerIndicator(triggerProps), props);
  return <ark.div {...mergedProps} />;
};

// src/components/splitter/splitter-root.tsx
import { mergeProps as mergeProps4 } from "@zag-js/solid";

// src/components/splitter/use-splitter.ts
import { normalizeProps, useMachine } from "@zag-js/solid";
import * as splitter from "@zag-js/splitter";
import { createMemo, createUniqueId } from "solid-js";
var useSplitter = (props) => {
  const locale = useLocaleContext();
  const environment = useEnvironmentContext();
  const id = createUniqueId();
  const machineProps = createMemo(() => ({
    id,
    dir: locale().dir,
    getRootNode: environment().getRootNode,
    ...runIfFn(props)
  }));
  const service = useMachine(splitter.machine, machineProps);
  return createMemo(() => splitter.connect(service, normalizeProps));
};

// src/components/splitter/splitter-root.tsx
var SplitterRoot = (props) => {
  const [useSplitterProps, localProps] = createSplitProps()(props, [
    "defaultSize",
    "id",
    "ids",
    "keyboardResizeBy",
    "nonce",
    "onCollapse",
    "onExpand",
    "onResize",
    "onResizeEnd",
    "onResizeStart",
    "orientation",
    "panels",
    "size",
    "registry"
  ]);
  const api = useSplitter(useSplitterProps);
  const mergedProps = mergeProps4(() => api().getRootProps(), localProps);
  return <SplitterProvider value={api}>
      <ark.div {...mergedProps} />
    </SplitterProvider>;
};

// src/components/splitter/splitter-root-provider.tsx
import { mergeProps as mergeProps5 } from "@zag-js/solid";
var SplitterRootProvider = (props) => {
  const [{ value: splitter3 }, localProps] = createSplitProps()(props, ["value"]);
  const mergedProps = mergeProps5(() => splitter3().getRootProps(), localProps);
  return <SplitterProvider value={splitter3}>
      <ark.div {...mergedProps} />
    </SplitterProvider>;
};

// src/components/splitter/create-splitter-registry.ts
import * as splitter2 from "@zag-js/splitter";
var createSplitterRegistry = (props) => {
  return splitter2.registry(props);
};

// src/components/splitter/splitter.ts
var splitter_exports = {};
__export(splitter_exports, {
  Context: () => SplitterContext,
  Panel: () => SplitterPanel,
  ResizeTrigger: () => SplitterResizeTrigger,
  ResizeTriggerIndicator: () => SplitterResizeTriggerIndicator,
  Root: () => SplitterRoot,
  RootProvider: () => SplitterRootProvider,
  createRegistry: () => createSplitterRegistry,
  getLayout: () => layout
});
import { layout } from "@zag-js/splitter";

export {
  useSplitterContext,
  SplitterContext,
  SplitterPanel,
  SplitterResizeTrigger,
  SplitterResizeTriggerIndicator,
  useSplitter,
  SplitterRoot,
  SplitterRootProvider,
  createSplitterRegistry,
  splitter_exports,
  layout2 as layout
};
