@kiwicom/orbit-components
Version:
Orbit-components is a React component library which provides developers with the easiest possible way of building Kiwi.com’s products.
49 lines (48 loc) • 2.39 kB
JavaScript
;
"use client";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
exports.__esModule = true;
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _clsx = _interopRequireDefault(require("clsx"));
var _BadgePrimitive = _interopRequireDefault(require("../primitives/BadgePrimitive"));
var _consts = require("./consts");
const getTypeToken = type => {
const tokens = {
[_consts.TYPE_OPTIONS.NEUTRAL]: "bg-badge-neutral-background text-badge-neutral-foreground",
[_consts.TYPE_OPTIONS.INFO_SUBTLE]: "bg-badge-info-subtle-background text-badge-info-subtle-foreground",
[_consts.TYPE_OPTIONS.SUCCESS_SUBTLE]: "bg-badge-success-subtle-background text-badge-success-subtle-foreground",
[_consts.TYPE_OPTIONS.WARNING_SUBTLE]: "bg-badge-warning-subtle-background text-badge-warning-subtle-foreground",
[_consts.TYPE_OPTIONS.CRITICAL_SUBTLE]: "bg-badge-critical-subtle-background text-badge-critical-subtle-foreground",
[_consts.TYPE_OPTIONS.DARK]: "bg-badge-dark-background text-badge-dark-foreground",
[_consts.TYPE_OPTIONS.WHITE]: "bg-badge-white-background text-badge-white-foreground",
[_consts.TYPE_OPTIONS.INFO]: "bg-badge-info-background text-badge-info-foreground",
[_consts.TYPE_OPTIONS.CRITICAL]: "bg-badge-critical-background text-badge-critical-foreground",
[_consts.TYPE_OPTIONS.SUCCESS]: "bg-badge-success-background text-badge-success-foreground",
[_consts.TYPE_OPTIONS.WARNING]: "bg-badge-warning-background text-badge-warning-foreground",
[_consts.TYPE_OPTIONS.BUNDLE_BASIC]: "bg-badge-bundle-basic-background text-badge-bundle-basic-foreground",
[_consts.TYPE_OPTIONS.BUNDLE_MEDIUM]: "bg-badge-bundle-medium-background text-badge-bundle-medium-foreground",
[_consts.TYPE_OPTIONS.BUNDLE_TOP]: "bg-badge-bundle-top-background text-badge-bundle-top-foreground"
};
return tokens[type];
};
const Badge = ({
type = _consts.TYPE_OPTIONS.NEUTRAL,
icon,
children,
ariaLabel,
dataTest,
id,
carriers
}) => {
return /*#__PURE__*/_react.default.createElement(_BadgePrimitive.default, {
carriers: carriers,
className: (0, _clsx.default)("orbit-badge", getTypeToken(type)),
icon: icon,
id: id,
ariaLabel: ariaLabel,
dataTest: dataTest
}, children);
};
var _default = Badge;
exports.default = _default;