UNPKG

@dnb/eufemia

Version:

DNB Eufemia Design System UI Library

43 lines (42 loc) 1.5 kB
"use client"; import _extends from "@babel/runtime/helpers/esm/extends"; import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties"; const _excluded = ["className", "children", "text"]; import React, { useCallback, useContext } from 'react'; import classnames from 'classnames'; import { useTranslation } from '../../hooks'; import DataContext from '../../DataContext/Context'; import Button from '../../../../components/button/Button'; import { check } from '../../../../icons'; function IsolationCommitButton(props) { const translations = useTranslation().Isolation; const { className, children, text } = props, rest = _objectWithoutProperties(props, _excluded); const content = text || children || translations.commitButtonText; const { handleSubmit, props: dataContextProps } = useContext(DataContext) || {}; const { isolate } = dataContextProps || {}; const onClickHandler = useCallback(() => { if (isolate) { handleSubmit === null || handleSubmit === void 0 ? void 0 : handleSubmit(); } }, [handleSubmit, isolate]); return React.createElement(Button, _extends({ variant: "secondary", className: classnames('dnb-forms-isolate-button', className), icon: check, icon_position: "left", onClick: onClickHandler }, rest), content); } IsolationCommitButton._supportsSpacingProps = true; export default IsolationCommitButton; //# sourceMappingURL=IsolationCommitButton.js.map