UNPKG

analytica-frontend-lib

Version:

Repositório público dos componentes utilizados nas plataformas da Analytica Ensino

61 lines (56 loc) 2.06 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } var _chunkTN3AYOMVjs = require('./chunk-TN3AYOMV.js'); // src/components/IconButton/IconButton.tsx var _react = require('react'); var _jsxruntime = require('react/jsx-runtime'); var IconButton = _react.forwardRef.call(void 0, ({ icon, size = "md", active = false, className = "", disabled, ...props }, ref) => { const baseClasses = [ "inline-flex", "items-center", "justify-center", "rounded-lg", "font-medium", "bg-transparent", "text-text-950", "cursor-pointer", "hover:bg-primary-600", "hover:text-text", "focus-visible:outline-none", "focus-visible:ring-2", "focus-visible:ring-offset-0", "focus-visible:ring-indicator-info", "disabled:opacity-50", "disabled:cursor-not-allowed", "disabled:pointer-events-none" ]; const sizeClasses = { sm: ["w-6", "h-6", "text-sm"], md: ["w-10", "h-10", "text-base"] }; const activeClasses = active ? ["!bg-primary-50", "!text-primary-950", "hover:!bg-primary-100"] : []; const allClasses = [ ...baseClasses, ...sizeClasses[size], ...activeClasses ].join(" "); const ariaLabel = _nullishCoalesce(props["aria-label"], () => ( "Bot\xE3o de a\xE7\xE3o")); return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "button", { ref, type: "button", className: _chunkTN3AYOMVjs.cn.call(void 0, allClasses, className), disabled, "aria-pressed": active, "aria-label": ariaLabel, ...props, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "flex items-center justify-center", children: icon }) } ); } ); IconButton.displayName = "IconButton"; var IconButton_default = IconButton; exports.IconButton_default = IconButton_default; //# sourceMappingURL=chunk-BVUPM6EY.js.map