@mabi-ui/radio
Version:
Radio group and radio button components for Mabi-UI
138 lines • 5.82 kB
JavaScript
;
function _defineProperty(obj, key, value) {
if (key in obj) {
Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
} else {
obj[key] = value;
}
return obj;
}
function _objectSpread(target) {
for(var i = 1; i < arguments.length; i++){
var source = arguments[i] != null ? arguments[i] : {};
var ownKeys = Object.keys(source);
if (typeof Object.getOwnPropertySymbols === "function") {
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
}));
}
ownKeys.forEach(function(key) {
_defineProperty(target, key, source[key]);
});
}
return target;
}
function ownKeys(object, enumerableOnly) {
var keys = Object.keys(object);
if (Object.getOwnPropertySymbols) {
var symbols = Object.getOwnPropertySymbols(object);
if (enumerableOnly) {
symbols = symbols.filter(function(sym) {
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
});
}
keys.push.apply(keys, symbols);
}
return keys;
}
function _objectSpreadProps(target, source) {
source = source != null ? source : {};
if (Object.getOwnPropertyDescriptors) {
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
} else {
ownKeys(Object(source)).forEach(function(key) {
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
});
}
return target;
}
function _objectWithoutProperties(source, excluded) {
if (source == null) return {};
var target = _objectWithoutPropertiesLoose(source, excluded);
var key, i;
if (Object.getOwnPropertySymbols) {
var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
for(i = 0; i < sourceSymbolKeys.length; i++){
key = sourceSymbolKeys[i];
if (excluded.indexOf(key) >= 0) continue;
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
target[key] = source[key];
}
}
return target;
}
function _objectWithoutPropertiesLoose(source, excluded) {
if (source == null) return {};
var target = {};
var sourceKeys = Object.keys(source);
var key, i;
for(i = 0; i < sourceKeys.length; i++){
key = sourceKeys[i];
if (excluded.indexOf(key) >= 0) continue;
target[key] = source[key];
}
return target;
}
Object.defineProperty(exports, "__esModule", {
value: true
});
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
"use client";
var _chunkUR5KKTWRjs = require("./chunk-UR5KKTWR.js");
// src/RadioGroup.tsx
var _preflight = require("@mabi-ui/preflight");
var _typography = require("@mabi-ui/typography");
var _utils = require("@mabi-ui/utils");
var _react = require("react");
var _react2 = _interopRequireDefault(_react);
var _reactaria = require("react-aria");
var _reactstately = require("react-stately");
var RadioContext = _react.createContext.call(void 0, null);
var RadioGroup = _react.forwardRef.call(void 0, function(_param, ref) {
var color = _param.color, className = _param.className, props = _objectWithoutProperties(_param, [
"color",
"className"
]);
var children = props.children, label = props.label, description = props.description, errorMessage = props.errorMessage, _props_orientation = props.orientation, orientation = _props_orientation === void 0 ? "vertical" : _props_orientation;
var state = _reactstately.useRadioGroupState.call(void 0, props);
var _reactaria_useRadioGroup_call = _reactaria.useRadioGroup.call(void 0, props, state), radioGroupProps = _reactaria_useRadioGroup_call.radioGroupProps, labelProps = _reactaria_useRadioGroup_call.labelProps, descriptionProps = _reactaria_useRadioGroup_call.descriptionProps, errorMessageProps = _reactaria_useRadioGroup_call.errorMessageProps;
return /* @__PURE__ */ _react2.default.createElement(_preflight.PreflightWrapper, null, /* @__PURE__ */ _react2.default.createElement("div", _objectSpreadProps(_objectSpread({}, radioGroupProps), {
className: className
}), Boolean(label) && (typeof label === "string" ? /* @__PURE__ */ _react2.default.createElement(_typography.Typography, _objectSpread({
children: label,
variant: "subtitle2",
className: "dark:text-white"
}, labelProps)) : label), Boolean(description) && (typeof description === "string" ? /* @__PURE__ */ _react2.default.createElement(_typography.Typography, _objectSpreadProps(_objectSpread({
children: description,
variant: "caption"
}, descriptionProps), {
className: "mt-1 text-black/70 dark:text-white/70"
})) : description), /* @__PURE__ */ _react2.default.createElement(RadioContext.Provider, {
value: {
state: state,
color: color
}
}, /* @__PURE__ */ _react2.default.createElement("div", {
ref: ref,
className: _utils.cn.call(void 0, _chunkUR5KKTWRjs.radioGroup.call(void 0, {
orientation: orientation
}), "RadioGroup-container")
}, children)), Boolean(errorMessage) && /* @__PURE__ */ _react2.default.createElement(_typography.Typography, _objectSpreadProps(_objectSpread({
children: errorMessage,
variant: "caption"
}, errorMessageProps), {
className: "text-error"
}))));
});
exports.RadioContext = RadioContext;
exports.RadioGroup = RadioGroup;
//# sourceMappingURL=chunk-HGY4AZD3.js.map