linkedin-insight.ts 845 B

1234567891011121314151617181920212223242526272829303132
  1. import getMeta from '@/utils/meta'
  2. import {
  3. createTrackingLoader,
  4. insertScript,
  5. } from '@/infrastructure/tracking-loader'
  6. const loadLinkedInInsightScript = (linkedInInsightsPartnerId: string) => {
  7. window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || []
  8. window._linkedin_data_partner_ids.push(linkedInInsightsPartnerId)
  9. if (!window.lintrk) {
  10. window.lintrk = Object.assign(
  11. (a: string, b?: unknown) => {
  12. window.lintrk!.q.push([a, b])
  13. },
  14. { q: [] }
  15. )
  16. }
  17. insertScript({
  18. src: 'https://snap.licdn.com/li.lms-analytics/insight.min.js',
  19. async: true,
  20. })
  21. }
  22. const { linkedInInsightsPartnerId } = getMeta('ol-ExposedSettings')
  23. if (linkedInInsightsPartnerId) {
  24. createTrackingLoader(
  25. () => loadLinkedInInsightScript(linkedInInsightsPartnerId),
  26. 'LinkedIn Insight'
  27. )
  28. }