var __defProp = Object.defineProperty; var __defProps = Object.defineProperties; var __getOwnPropDescs = Object.getOwnPropertyDescriptors; var __getOwnPropSymbols = Object.getOwnPropertySymbols; var __hasOwnProp = Object.prototype.hasOwnProperty; var __propIsEnum = Object.prototype.propertyIsEnumerable; var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __spreadValues = (a, b) => { for (var prop in b || (b = {})) if (__hasOwnProp.call(b, prop)) __defNormalProp(a, prop, b[prop]); if (__getOwnPropSymbols) for (var prop of __getOwnPropSymbols(b)) { if (__propIsEnum.call(b, prop)) __defNormalProp(a, prop, b[prop]); } return a; }; var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); var __objRest = (source, exclude) => { var target = {}; for (var prop in source) if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0) target[prop] = source[prop]; if (source != null && __getOwnPropSymbols) for (var prop of __getOwnPropSymbols(source)) { if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop)) target[prop] = source[prop]; } return target; }; // src/heading.tsx import * as React from "react"; // src/utils/spaces.ts var withMargin = (props) => { const nonEmptyStyles = [ withSpace(props.m, ["margin"]), withSpace(props.mx, ["marginLeft", "marginRight"]), withSpace(props.my, ["marginTop", "marginBottom"]), withSpace(props.mt, ["marginTop"]), withSpace(props.mr, ["marginRight"]), withSpace(props.mb, ["marginBottom"]), withSpace(props.ml, ["marginLeft"]) ].filter((s) => Object.keys(s).length); const mergedStyles = nonEmptyStyles.reduce((acc, style) => { return __spreadValues(__spreadValues({}, acc), style); }, {}); return mergedStyles; }; var withSpace = (value, properties) => { return properties.reduce((styles, property) => { if (!isNaN(parseFloat(value))) { return __spreadProps(__spreadValues({}, styles), { [property]: `${value}px` }); } return styles; }, {}); }; // src/heading.tsx import { jsx } from "react/jsx-runtime"; var Heading = React.forwardRef( (_a, ref) => { var _b = _a, { as: Tag = "h1", children, style, m, mx, my, mt, mr, mb, ml } = _b, props = __objRest(_b, ["as", "children", "style", "m", "mx", "my", "mt", "mr", "mb", "ml"]); return /* @__PURE__ */ jsx( Tag, __spreadProps(__spreadValues({}, props), { ref, style: __spreadValues(__spreadValues({}, withMargin({ m, mx, my, mt, mr, mb, ml })), style), children }) ); } ); Heading.displayName = "Heading"; export { Heading };