UNPKG

alinea

Version:

[![npm](https://img.shields.io/npm/v/alinea.svg)](https://npmjs.org/package/alinea) [![install size](https://packagephobia.com/badge?p=alinea)](https://packagephobia.com/result?p=alinea)

48 lines (44 loc) 1.32 kB
import "../../chunks/chunk-U5RRZUYZ.js"; // src/dashboard/view/IconButton.tsx import { fromModule } from "alinea/ui/util/Styler"; import { px } from "alinea/ui/util/Units"; import { forwardRef } from "react"; import { link } from "../util/HashRouter.js"; // src/dashboard/view/IconButton.module.scss var IconButton_module_default = { "root": "alinea-IconButton", "is-active": "alinea-IconButton-is-active", "isActive": "alinea-IconButton-is-active" }; // src/dashboard/view/IconButton.tsx import { jsx } from "react/jsx-runtime"; var styles = fromModule(IconButton_module_default); var IconButton = forwardRef(function IconButton2({ icon: Icon, active, size, ...props }, ref) { return /* @__PURE__ */ jsx( "button", { type: "button", ref, ...props, style: { ...props.style, fontSize: size ? px(size) : void 0 }, className: styles.root.mergeProps(props)({ active }), children: /* @__PURE__ */ jsx(Icon, {}) } ); }); var IconLink = forwardRef(function IconLink2({ icon: Icon, active, ...props }, ref) { return /* @__PURE__ */ jsx( "a", { ref, ...props, ...link(props.href), className: styles.root.mergeProps(props)({ active }), children: /* @__PURE__ */ jsx(Icon, {}) } ); }); export { IconButton, IconLink };