async function CardPay(fieldEl, buttonEl) {
  
  // Create a card payment object and attach to page
  const card = await window.payments.card({
    style: {
      '.input-container.is-focus': {
        borderColor: '#006AFF'
      },
      '.message-text.is-error': {
        color: '#BF0020'
      }
    }
  });
  await card.attach(fieldEl);

  async function eventHandler(event) {
   
    // Clear any existing messages
    window.paymentFlowMessageEl.innerText = '';
    

       
    try {
     
      const result = await card.tokenize();
     // console.log(result);
      if (result.status === 'OK') {
         $('#loading-spinner-overlay').css('visibility', 'visible');
        // Use global method from sq-payment-flow.js
        window.createPayment(result.token);
      }
    } catch (e) {
      if (e.message) {
        // console.log(e.message);
        // window.showError(`Error: ${e.message}`);
        window.showError(`The request is already in process`);
      } else {
        window.showError('Something went wrong');
      }
    }
  }

  buttonEl.addEventListener('click', eventHandler);
}
