UNPKG

lucid-ui

Version:

A UI component library from Xandr.

129 lines 7.48 kB
"use strict"; var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); __setModuleDefault(result, mod); return result; }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.LabelAsProp = exports.LabelAsChild = exports.States = exports.Basic = void 0; var react_1 = __importStar(require("react")); var RadioButtonLabeled_1 = __importDefault(require("./RadioButtonLabeled")); exports.default = { title: 'Controls/RadioButtonLabeled', component: RadioButtonLabeled_1.default, parameters: { docs: { description: { component: RadioButtonLabeled_1.default.peek.description, }, }, }, args: RadioButtonLabeled_1.default.defaultProps, }; /* Basic */ var Basic = function (args) { var style = { marginBottom: '3px', }; var _a = (0, react_1.useState)('vanilla'), flavor = _a[0], setFlavor = _a[1]; var handleSelectedFlavor = function (flavor) { setFlavor(flavor); }; return (react_1.default.createElement("section", null, react_1.default.createElement("span", { style: { display: 'inline-flex', flexDirection: 'column', alignItems: 'flex-start', } }, react_1.default.createElement(RadioButtonLabeled_1.default, __assign({}, args, { isSelected: flavor === 'vanilla', name: 'interactive-radio-buttons', onSelect: function () { return handleSelectedFlavor('vanilla'); }, style: style }), react_1.default.createElement(RadioButtonLabeled_1.default.Label, null, "Vanilla")), react_1.default.createElement(RadioButtonLabeled_1.default, __assign({}, args, { isSelected: flavor === 'chocolate', name: 'interactive-radio-buttons', onSelect: function () { return handleSelectedFlavor('chocolate'); }, style: style }), react_1.default.createElement(RadioButtonLabeled_1.default.Label, null, "Chocolate")), react_1.default.createElement(RadioButtonLabeled_1.default, __assign({}, args, { isSelected: flavor === 'strawberry', name: 'interactive-radio-buttons', onSelect: function () { return handleSelectedFlavor('strawberry'); }, style: style }), react_1.default.createElement(RadioButtonLabeled_1.default.Label, null, "Strawberry")), react_1.default.createElement(RadioButtonLabeled_1.default, __assign({}, args, { isSelected: flavor === 'saltedCaramel', name: 'interactive-radio-buttons', onSelect: function () { return handleSelectedFlavor('saltedCaramel'); }, style: style }), react_1.default.createElement(RadioButtonLabeled_1.default.Label, null, "Salted caramel")), react_1.default.createElement(RadioButtonLabeled_1.default, __assign({}, args, { isSelected: flavor === 'mintChip', name: 'interactive-radio-buttons', onSelect: function () { return handleSelectedFlavor('mintChip'); }, style: style }), react_1.default.createElement(RadioButtonLabeled_1.default.Label, null, "Mint chocolate chip (the best)"))))); }; exports.Basic = Basic; /* States */ var States = function (args) { var style = { marginBottom: '3px', marginRight: '13px', }; return (react_1.default.createElement("section", null, react_1.default.createElement(RadioButtonLabeled_1.default, __assign({}, args, { style: style }), react_1.default.createElement(RadioButtonLabeled_1.default.Label, null, "(default props)")), react_1.default.createElement("section", { style: { display: 'flex' } }, react_1.default.createElement(RadioButtonLabeled_1.default, __assign({}, args, { isDisabled: true, style: style }), react_1.default.createElement(RadioButtonLabeled_1.default.Label, null, "Disabled")), react_1.default.createElement(RadioButtonLabeled_1.default, __assign({}, args, { isSelected: true, style: style }), react_1.default.createElement(RadioButtonLabeled_1.default.Label, null, "Selected")), react_1.default.createElement(RadioButtonLabeled_1.default, __assign({}, args, { isDisabled: true, isSelected: true, style: style }), react_1.default.createElement(RadioButtonLabeled_1.default.Label, null, "Disabled and Selected"))))); }; exports.States = States; /* Label As Child */ var LabelAsChild = function (args) { var style = { marginBottom: '3px', }; return (react_1.default.createElement("section", null, react_1.default.createElement(RadioButtonLabeled_1.default, __assign({}, args, { style: style }), react_1.default.createElement(RadioButtonLabeled_1.default.Label, null, "Just text")), react_1.default.createElement(RadioButtonLabeled_1.default, __assign({}, args, { style: style }), react_1.default.createElement(RadioButtonLabeled_1.default.Label, null, react_1.default.createElement("span", null, "HTML element"))))); }; exports.LabelAsChild = LabelAsChild; /* Label As Prop */ var LabelAsProp = function (args) { var style = { marginBottom: '3px', }; return (react_1.default.createElement("section", null, react_1.default.createElement(RadioButtonLabeled_1.default, { Label: 'Just text', style: style }), react_1.default.createElement(RadioButtonLabeled_1.default, { Label: react_1.default.createElement("span", null, "HTML element"), style: style }), react_1.default.createElement(RadioButtonLabeled_1.default, { Label: [ 'Text in an array', 'Only the first value in the array is used', 'The rest of these should be ignored', ], style: style }), react_1.default.createElement(RadioButtonLabeled_1.default, { Label: [ react_1.default.createElement("span", { key: '1' }, "HTML element in an array"), react_1.default.createElement("span", { key: '2' }, "Again only the first value in the array is used"), react_1.default.createElement("span", { key: '3' }, "The rest should not be rendered"), ], style: style }))); }; exports.LabelAsProp = LabelAsProp; //# sourceMappingURL=RadioButtonLabeled.stories.js.map