UNPKG

@mabi-ui/radio

Version:

Radio group and radio button components for Mabi-UI

138 lines 5.82 kB
"use strict"; 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