UNPKG

@commercelayer/react-components

Version:
2 lines 1.17 kB
"use client"; "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.SaveCustomerButton=SaveCustomerButton;const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),Parent_1=tslib_1.__importDefault(require("../utils/Parent")),isEmpty_1=tslib_1.__importDefault(require("lodash/isEmpty")),CustomerContext_1=tslib_1.__importDefault(require("../../context/CustomerContext"));function SaveCustomerButton(props){const{children,label="Save",resource,disabled,onClick,...p}=props,{errors,saveCustomerUser,customerEmail}=(0,react_1.useContext)(CustomerContext_1.default),disable=disabled||!(0,isEmpty_1.default)(errors)||(0,isEmpty_1.default)(customerEmail),handleClick=async()=>{(0,isEmpty_1.default)(errors)&&!disable&&customerEmail!=null&&(saveCustomerUser&&await saveCustomerUser(customerEmail),onClick&&onClick())},parentProps={...p,label,resource,handleClick,disabled:disable};return children?(0,jsx_runtime_1.jsx)(Parent_1.default,{...parentProps,children}):(0,jsx_runtime_1.jsx)("button",{type:"button",disabled:disable,onClick:()=>{handleClick()},...p,children:label})}exports.default=SaveCustomerButton;