All files / ee/app/assets/javascripts/hand_raise_leads/hand_raise_lead init_hand_raise_lead_button.js

0% Statements 0/4
0% Branches 0/4
0% Functions 0/2
0% Lines 0/4

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56                                                                                                               
import Vue from 'vue';
import HandRaiseLeadButton from 'ee/hand_raise_leads/hand_raise_lead/components/hand_raise_lead_button.vue';
import apolloProvider from 'ee/subscriptions/buy_addons_shared/graphql';
import { PQL_BUTTON_TEXT } from './constants';
 
export const initHandRaiseLeadButton = (el) => {
  const {
    namespaceId,
    userName,
    firstName,
    lastName,
    companyName,
    glmContent,
    productInteraction,
    trackCategory,
    trackAction,
    trackLabel,
    trackProperty,
    trackValue,
    trackExperiment,
    buttonAttributes,
    buttonText,
    createHandRaiseLeadPath,
  } = el.dataset;
 
  return new Vue({
    el,
    apolloProvider,
    provide: {
      createHandRaiseLeadPath,
      buttonAttributes: buttonAttributes && JSON.parse(buttonAttributes),
      buttonText: buttonText || PQL_BUTTON_TEXT,
      user: {
        namespaceId,
        userName,
        firstName,
        lastName,
        companyName,
        glmContent,
        productInteraction,
      },
      ctaTracking: {
        category: trackCategory,
        action: trackAction,
        label: trackLabel,
        property: trackProperty,
        value: trackValue,
        experiment: trackExperiment,
      },
    },
    render(createElement) {
      return createElement(HandRaiseLeadButton);
    },
  });
};