You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							73 lines
						
					
					
						
							2.1 KiB
						
					
					
				
			
		
		
	
	
							73 lines
						
					
					
						
							2.1 KiB
						
					
					
				| "use strict";
 | |
| var __importDefault = (this && this.__importDefault) || function (mod) {
 | |
|     return (mod && mod.__esModule) ? mod : { "default": mod };
 | |
| };
 | |
| Object.defineProperty(exports, "__esModule", { value: true });
 | |
| exports.Badge = void 0;
 | |
| const styled_components_1 = __importDefault(require("styled-components"));
 | |
| const styled_system_1 = require("styled-system");
 | |
| const css_class_1 = require("../../utils/css-class");
 | |
| const variantStyle = (variantColor, props) => ({
 | |
|     bg: variantColor,
 | |
|     borderColor: variantColor,
 | |
|     color: props.outline ? variantColor : 'white',
 | |
| });
 | |
| const colorVariant = (props) => styled_system_1.variant({
 | |
|     variants: {
 | |
|         primary: variantStyle('primary100', props),
 | |
|         danger: variantStyle('error', props),
 | |
|         success: variantStyle('success', props),
 | |
|         info: variantStyle('info', props),
 | |
|         secondary: variantStyle('accent', props),
 | |
|         light: variantStyle('light', props),
 | |
|         default: {},
 | |
|     },
 | |
| });
 | |
| const sizeVariants = styled_system_1.variant({
 | |
|     prop: 'size',
 | |
|     variants: {
 | |
|         sm: {
 | |
|             py: 'xs',
 | |
|         },
 | |
|         lg: {
 | |
|             py: '11px',
 | |
|             px: '14px',
 | |
|         },
 | |
|         default: {},
 | |
|     },
 | |
| });
 | |
| /**
 | |
|  * @load ./badge.doc.md
 | |
|  * @see BadgeProps
 | |
|  * @see {@link https://storybook.adminjs.co/?path=/story/designsystem-atoms-badge--default StoryBook}
 | |
|  * @component
 | |
|  * @hideconstructor
 | |
|  * @section design-system
 | |
|  * @subcategory Atoms
 | |
|  */
 | |
| const Badge = styled_components_1.default.span `
 | |
|   border-radius: 20px;
 | |
|   border: 1px solid ${({ theme }) => theme.colors.grey40};
 | |
|   color: ${({ outline, theme }) => (outline ? theme.colors.grey60 : theme.colors.white)};
 | |
|   vertical-align: middle;
 | |
|   font-family: ${({ theme }) => theme.font};
 | |
|   display: inline;
 | |
|   white-space: nowrap;
 | |
| 
 | |
|   ${styled_system_1.space};
 | |
|   ${styled_system_1.color};
 | |
|   ${styled_system_1.typography};
 | |
|   ${(props) => colorVariant(props)};
 | |
|   ${sizeVariants};
 | |
|   ${({ outline }) => (outline ? 'background: transparent;' : '')}
 | |
| `;
 | |
| exports.Badge = Badge;
 | |
| Badge.defaultProps = {
 | |
|     px: 'default',
 | |
|     py: 'sm',
 | |
|     fontSize: 'sm',
 | |
|     bg: 'grey40',
 | |
|     className: css_class_1.cssClass('Badge'),
 | |
| };
 | |
| exports.default = Badge;
 |