{"version":3,"sources":["../src/center.tsx"],"sourcesContent":["import { chakra, forwardRef, HTMLChakraProps } from \"@chakra-ui/system\"\n\nexport interface CenterProps extends HTMLChakraProps<\"div\"> {}\n\n/**\n * React component used to horizontally and vertically center its child.\n * It uses the popular `display: flex` centering technique.\n *\n * @see Docs https://chakra-ui.com/center\n */\nexport const Center = chakra(\"div\", {\n  baseStyle: {\n    display: \"flex\",\n    alignItems: \"center\",\n    justifyContent: \"center\",\n  },\n})\n\nCenter.displayName = \"Center\"\n\nexport interface AbsoluteCenterProps extends HTMLChakraProps<\"div\"> {\n  axis?: \"horizontal\" | \"vertical\" | \"both\"\n}\n\nconst centerStyles = {\n  horizontal: {\n    insetStart: \"50%\",\n    transform: \"translateX(-50%)\",\n  },\n  vertical: {\n    top: \"50%\",\n    transform: \"translateY(-50%)\",\n  },\n  both: {\n    insetStart: \"50%\",\n    top: \"50%\",\n    transform: \"translate(-50%, -50%)\",\n  },\n}\n\n/**\n * React component used to horizontally and vertically center an element\n * relative to its parent dimensions.\n *\n * It uses the `position: absolute` strategy.\n *\n * @see Docs https://chakra-ui.com/center\n * @see WebDev https://web.dev/centering-in-css/#5.-pop-and-plop\n */\nexport const AbsoluteCenter = forwardRef<AbsoluteCenterProps, \"div\">(\n  function AbsoluteCenter(props, ref) {\n    const { axis = \"both\", ...rest } = props\n    return (\n      <chakra.div\n        ref={ref}\n        __css={centerStyles[axis]}\n        {...rest}\n        position=\"absolute\"\n      />\n    )\n  },\n)\n"],"mappings":";;;AAAA,SAAS,QAAQ,kBAAmC;AAqD9C;AA3CC,IAAM,SAAS,OAAO,OAAO;AAAA,EAClC,WAAW;AAAA,IACT,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,gBAAgB;AAAA,EAClB;AACF,CAAC;AAED,OAAO,cAAc;AAMrB,IAAM,eAAe;AAAA,EACnB,YAAY;AAAA,IACV,YAAY;AAAA,IACZ,WAAW;AAAA,EACb;AAAA,EACA,UAAU;AAAA,IACR,KAAK;AAAA,IACL,WAAW;AAAA,EACb;AAAA,EACA,MAAM;AAAA,IACJ,YAAY;AAAA,IACZ,KAAK;AAAA,IACL,WAAW;AAAA,EACb;AACF;AAWO,IAAM,iBAAiB;AAAA,EAC5B,SAASA,gBAAe,OAAO,KAAK;AAClC,UAAM,EAAE,OAAO,QAAQ,GAAG,KAAK,IAAI;AACnC,WACE;AAAA,MAAC,OAAO;AAAA,MAAP;AAAA,QACC;AAAA,QACA,OAAO,aAAa,IAAI;AAAA,QACvB,GAAG;AAAA,QACJ,UAAS;AAAA;AAAA,IACX;AAAA,EAEJ;AACF;","names":["AbsoluteCenter"]}