UNPKG

@navikt/ds-react

Version:

React components from the Norwegian Labour and Welfare Administration.

27 lines 1.57 kB
var __rest = (this && this.__rest) || function (s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; } return t; }; import React from "react"; import { Button } from "../../../button/index.js"; import { cl, composeEventHandlers } from "../../../utils/helpers/index.js"; import { useControllableState } from "../../../utils/hooks/index.js"; const DataToolbarToggleButton = React.forwardRef((_a, ref) => { var { className, isPressed, defaultPressed = false, onPressChange, onClick } = _a, props = __rest(_a, ["className", "isPressed", "defaultPressed", "onPressChange", "onClick"]); const [pressed, setPressed] = useControllableState({ defaultValue: defaultPressed, value: isPressed, onChange: onPressChange, }); return (React.createElement(Button, Object.assign({ className: cl("aksel-data-toolbar__toggle-button", className), ref: ref }, props, { variant: "secondary", size: "small", "data-color": "neutral", "aria-pressed": pressed, onClick: composeEventHandlers(onClick, () => setPressed((oldState) => !oldState)) }))); }); export { DataToolbarToggleButton }; export default DataToolbarToggleButton; //# sourceMappingURL=DataToolbarToggleButton.js.map