@ninetailed/experience.js-next 2.0.1 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.esm.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import { useNinetailed, NinetailedProvider as NinetailedProvider$1 } from '@ninetailed/experience.js-react';
2
2
  export * from '@ninetailed/experience.js-react';
3
3
  export * from '@ninetailed/experience.js-plugin-ssr';
4
+ import { logger } from '@ninetailed/experience.js';
4
5
  export { decodeExperienceVariantsMap } from '@ninetailed/experience.js';
5
6
  import React, { useRef, useEffect } from 'react';
6
7
  import { useRouter } from 'next/router';
@@ -1067,9 +1068,20 @@ const Tracker = ({
1067
1068
  } = useNinetailed();
1068
1069
  const lastFiredPageRef = useRef(isFirstPageviewAlreadyTracked ? 'tracked' : 'none');
1069
1070
  useEffect(() => {
1071
+ logger.debug('Ninetailed Next.js Tracker', 'The useEffect hook to listen for route changes got called. On instantiation the last fired page is:', lastFiredPageRef.current);
1072
+
1070
1073
  const handleRouteChange = url => {
1071
- if (lastFiredPageRef.current !== url && lastFiredPageRef.current !== 'tracked') {
1074
+ const isPageAlreadyTracked = lastFiredPageRef.current === url || lastFiredPageRef.current === 'tracked';
1075
+ logger.debug('Ninetailed Next.js Tracker', 'Handle route change got called.', {
1076
+ url,
1077
+ lastFiredPageUrl: lastFiredPageRef.current,
1078
+ isPageAlreadyTracked
1079
+ });
1080
+
1081
+ if (!isPageAlreadyTracked) {
1082
+ logger.debug('Ninetailed Next.js Tracker', 'Page is not tracked yet, calling the ninetailed.page function.');
1072
1083
  page();
1084
+ logger.debug('Ninetailed Next.js Tracker', 'Page got tracked, setting the last fired page to the current url.', url);
1073
1085
  lastFiredPageRef.current = url;
1074
1086
  }
1075
1087
  };
@@ -1077,6 +1089,7 @@ const Tracker = ({
1077
1089
  handleRouteChange(router.asPath);
1078
1090
  router.events.on('routeChangeStart', handleRouteChange);
1079
1091
  return () => {
1092
+ logger.debug('Ninetailed Next.js Tracker', 'Removing the route change listener, as the useEffect hook got unmounted.');
1080
1093
  router.events.off('routeChangeStart', handleRouteChange);
1081
1094
  };
1082
1095
  }, []);
package/index.umd.js CHANGED
@@ -52,9 +52,20 @@
52
52
  var page = experience_jsReact.useNinetailed().page;
53
53
  var lastFiredPageRef = React.useRef(isFirstPageviewAlreadyTracked ? 'tracked' : 'none');
54
54
  React.useEffect(function () {
55
+ experience_js.logger.debug('Ninetailed Next.js Tracker', 'The useEffect hook to listen for route changes got called. On instantiation the last fired page is:', lastFiredPageRef.current);
56
+
55
57
  var handleRouteChange = function handleRouteChange(url) {
56
- if (lastFiredPageRef.current !== url && lastFiredPageRef.current !== 'tracked') {
58
+ var isPageAlreadyTracked = lastFiredPageRef.current === url || lastFiredPageRef.current === 'tracked';
59
+ experience_js.logger.debug('Ninetailed Next.js Tracker', 'Handle route change got called.', {
60
+ url: url,
61
+ lastFiredPageUrl: lastFiredPageRef.current,
62
+ isPageAlreadyTracked: isPageAlreadyTracked
63
+ });
64
+
65
+ if (!isPageAlreadyTracked) {
66
+ experience_js.logger.debug('Ninetailed Next.js Tracker', 'Page is not tracked yet, calling the ninetailed.page function.');
57
67
  page();
68
+ experience_js.logger.debug('Ninetailed Next.js Tracker', 'Page got tracked, setting the last fired page to the current url.', url);
58
69
  lastFiredPageRef.current = url;
59
70
  }
60
71
  };
@@ -62,6 +73,7 @@
62
73
  handleRouteChange(router$1.asPath);
63
74
  router$1.events.on('routeChangeStart', handleRouteChange);
64
75
  return function () {
76
+ experience_js.logger.debug('Ninetailed Next.js Tracker', 'Removing the route change listener, as the useEffect hook got unmounted.');
65
77
  router$1.events.off('routeChangeStart', handleRouteChange);
66
78
  };
67
79
  }, []);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ninetailed/experience.js-next",
3
- "version": "2.0.1",
3
+ "version": "2.1.0",
4
4
  "peerDependencies": {
5
5
  "next": ">=9.0.0",
6
6
  "react": ">=16.8.0"
@@ -9,20 +9,20 @@
9
9
  "module": "./index.esm.js",
10
10
  "typings": "./index.d.ts",
11
11
  "dependencies": {
12
- "@ninetailed/experience.js-react": "2.0.1",
12
+ "@ninetailed/experience.js-react": "2.1.0",
13
13
  "@analytics/google-analytics": "^0.5.3",
14
14
  "lodash": "^4.17.21",
15
- "@ninetailed/experience.js": "2.0.1",
15
+ "@ninetailed/experience.js": "2.1.0",
16
16
  "analytics": "^0.8.0",
17
- "@ninetailed/experience.js-shared": "2.0.1",
17
+ "@ninetailed/experience.js-shared": "2.1.0",
18
18
  "uuid": "^8.3.2",
19
19
  "ts-toolbelt": "^9.6.0",
20
20
  "locale-enum": "^1.1.1",
21
21
  "i18n-iso-countries": "^7.3.0",
22
- "loglevel": "^1.8.0",
23
22
  "murmurhash-js": "^1.0.0",
23
+ "diary": "^0.3.1",
24
24
  "react-intersection-observer": "^8.33.1",
25
- "@ninetailed/experience.js-plugin-ssr": "2.0.1",
25
+ "@ninetailed/experience.js-plugin-ssr": "2.1.0",
26
26
  "node-fetch": "^3.2.3",
27
27
  "js-cookie": "^3.0.1"
28
28
  }