UNPKG

@mantine/core

Version:

React components library focused on usability, accessibility and developer experience

1 lines 2.24 kB
{"version":3,"file":"AspectRatio.cjs","names":["createVarsResolver","factory","useProps","Box","useStyles","classes"],"sources":["../../../src/components/AspectRatio/AspectRatio.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../core';\nimport classes from './AspectRatio.module.css';\n\nexport type AspectRatioStylesNames = 'root';\nexport type AspectRatioCssVariables = {\n root: '--ar-ratio';\n};\n\nexport interface AspectRatioProps\n extends BoxProps, StylesApiProps<AspectRatioFactory>, ElementProps<'div'> {\n /** Aspect ratio, for example, `16 / 9`, `4 / 3`, `1920 / 1080` @default 1 */\n ratio?: number;\n}\n\nexport type AspectRatioFactory = Factory<{\n props: AspectRatioProps;\n ref: HTMLDivElement;\n stylesNames: AspectRatioStylesNames;\n vars: AspectRatioCssVariables;\n}>;\n\nconst varsResolver = createVarsResolver<AspectRatioFactory>((_, { ratio }) => ({\n root: {\n '--ar-ratio': ratio?.toString(),\n },\n}));\n\nexport const AspectRatio = factory<AspectRatioFactory>((_props) => {\n const props = useProps('AspectRatio', null, _props);\n const { classNames, className, style, styles, unstyled, vars, ratio, attributes, ...others } =\n props;\n\n const getStyles = useStyles<AspectRatioFactory>({\n name: 'AspectRatio',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n return <Box {...getStyles('root')} {...others} />;\n});\n\nAspectRatio.classes = classes;\nAspectRatio.varsResolver = varsResolver;\nAspectRatio.displayName = '@mantine/core/AspectRatio';\n"],"mappings":";;;;;;;;;;AA+BA,MAAM,eAAeA,6BAAAA,oBAAwC,GAAG,EAAE,aAAa,EAC7E,MAAM,EACJ,cAAc,OAAO,UAAU,EAChC,EACF,EAAE;AAEH,MAAa,cAAcC,gBAAAA,SAA6B,WAAW;CACjE,MAAM,QAAQC,kBAAAA,SAAS,eAAe,MAAM,OAAO;CACnD,MAAM,EAAE,YAAY,WAAW,OAAO,QAAQ,UAAU,MAAM,OAAO,YAAY,GAAG,WAClF;AAgBF,QAAO,iBAAA,GAAA,kBAAA,KAACC,YAAAA,KAAD;EAAK,GAdMC,mBAAAA,UAA8B;GAC9C,MAAM;GACN,SAAA,2BAAA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACD,CAAC,CAEwB,OAAO;EAAE,GAAI;EAAU,CAAA;EACjD;AAEF,YAAY,UAAUC,2BAAAA;AACtB,YAAY,eAAe;AAC3B,YAAY,cAAc"}