@mantine/core
Version:
React components library focused on usability, accessibility and developer experience
52 lines (51 loc) • 1.89 kB
JavaScript
"use client";
import { getSize } from "../../../core/utils/get-size/get-size.mjs";
import { createVarsResolver } from "../../../core/styles-api/create-vars-resolver/create-vars-resolver.mjs";
import { useProps } from "../../../core/MantineProvider/use-props/use-props.mjs";
import { useStyles } from "../../../core/styles-api/use-styles/use-styles.mjs";
import { factory } from "../../../core/factory/factory.mjs";
import { Box } from "../../../core/Box/Box.mjs";
import { PillsInputContext } from "../../PillsInput/PillsInput.context.mjs";
import Pill_module_default from "../Pill.module.mjs";
import { createContext, use } from "react";
import { jsx } from "react/jsx-runtime";
//#region packages/@mantine/core/src/components/Pill/PillGroup/PillGroup.tsx
const PillGroupContext = createContext(null);
const varsResolver = createVarsResolver((_, { gap }, { size }) => ({ group: { "--pg-gap": gap !== void 0 ? getSize(gap) : getSize(size, "pg-gap") } }));
const PillGroup = factory((_props) => {
const props = useProps("PillGroup", null, _props);
const { classNames, className, style, styles, unstyled, vars, size, disabled, attributes, ...others } = props;
const _size = use(PillsInputContext)?.size || size || void 0;
const getStyles = useStyles({
name: "PillGroup",
classes: Pill_module_default,
props,
className,
style,
classNames,
styles,
unstyled,
attributes,
vars,
varsResolver,
stylesCtx: { size: _size },
rootSelector: "group"
});
return /* @__PURE__ */ jsx(PillGroupContext, {
value: {
size: _size,
disabled
},
children: /* @__PURE__ */ jsx(Box, {
size: _size,
...getStyles("group"),
...others
})
});
});
PillGroup.classes = Pill_module_default;
PillGroup.varsResolver = varsResolver;
PillGroup.displayName = "@mantine/core/PillGroup";
//#endregion
export { PillGroup, PillGroupContext };
//# sourceMappingURL=PillGroup.mjs.map