import { mergeProps as coreMergeProps } from "@zag-js/core"; /** * Marko-flavored `mergeProps` — composes user-supplied attributes with Zag * prop-getter output instead of overwriting. * * Wraps `@zag-js/core`'s `mergeProps` (which chains `on*` handlers, joins * `class`/`className`, deep-merges `style` values, and unions * `data-ownedby`) and then re-normalizes the merged `style` to the shape * Marko expects: an object with hyphenated keys (`--custom-props` left * untouched). Core may return camelCase keys (from user input) or a CSS * string (when a string style was merged); both are converted. * * @param args - Prop objects, least-specific first. Later objects win for * plain attributes; special keys (`on*`, `class`, `style`) are composed. * @returns A single prop object safe to spread onto a native tag. * * @example * ```marko * import { mergeProps } from "marko-zag"; *