react-fathom 0.1.9 → 0.1.10

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.
@@ -1,4 +1,4 @@
1
- /*! react-fathom - 0.1.9 !*/
1
+ /*! react-fathom - 0.1.10 !*/
2
2
  'use strict';
3
3
 
4
4
  var React = require('react');
@@ -1,4 +1,4 @@
1
- /*! react-fathom - 0.1.9 !*/
1
+ /*! react-fathom - 0.1.10 !*/
2
2
  'use strict';
3
3
 
4
4
  var React = require('react');
package/dist/es/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! react-fathom - 0.1.9 !*/
1
+ /*! react-fathom - 0.1.10 !*/
2
2
  import React, { createContext, useContext, useMemo, useCallback, useEffect, useRef, forwardRef } from 'react';
3
3
  import * as Fathom from 'fathom-client';
4
4
 
@@ -1,4 +1,4 @@
1
- /*! react-fathom - 0.1.9 !*/
1
+ /*! react-fathom - 0.1.10 !*/
2
2
  import React, { createContext, useContext, useRef, useEffect, useMemo, useCallback } from 'react';
3
3
  import * as Fathom from 'fathom-client';
4
4
 
@@ -1,4 +1,4 @@
1
- /*! react-fathom - 0.1.9 !*/
1
+ /*! react-fathom - 0.1.10 !*/
2
2
  (function (global, factory) {
3
3
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react'), require('fathom-client')) :
4
4
  typeof define === 'function' && define.amd ? define(['exports', 'react', 'fathom-client'], factory) :
@@ -1,3 +1,3 @@
1
- /*! react-fathom - 0.1.9 !*/
1
+ /*! react-fathom - 0.1.10 !*/
2
2
  !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("fathom-client")):"function"==typeof define&&define.amd?define(["exports","react","fathom-client"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["react-fathom"]={},e.React,e.Fathom)}(this,function(e,t,n){"use strict";function r(e){var t=Object.create(null);return e&&Object.keys(e).forEach(function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}}),t.default=e,Object.freeze(t)}var c=r(n),o=t.createContext({});function i(e){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}function u(e){var t=function(e,t){if("object"!=i(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t);if("object"!=i(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==i(t)?t:t+""}function a(e,t,n){return(t=u(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function f(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?l(Object(n),!0).forEach(function(t){a(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):l(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var s=function(e){var n=e.children,r=e.client,i=e.clientOptions,u=e.siteId,a=e.defaultPageviewOptions,l=e.defaultEventOptions,s=t.useContext(o),b=t.useMemo(function(){var e;return null!==(e=null!=r?r:s.client)&&void 0!==e?e:c},[r,s.client]),v=t.useMemo(function(){return null!=a?a:s.defaultPageviewOptions},[a,s.defaultPageviewOptions]),p=t.useMemo(function(){return null!=l?l:s.defaultEventOptions},[l,s.defaultEventOptions]),O=t.useCallback(function(){b.blockTrackingForMe()},[b]),y=t.useCallback(function(){b.enableTrackingForMe()},[b]),d=t.useCallback(function(){var e;return null!==(e=b.isTrackingEnabled())&&void 0!==e&&e},[b]),m=t.useCallback(function(e,t){b.load(e,t)},[b]),k=t.useCallback(function(e){b.setSite(e)},[b]),g=t.useCallback(function(e,t){b.trackEvent(e,f(f({},p),t))},[b,p]),j=t.useCallback(function(e){b.trackPageview(f(f({},v),e))},[b,v]),P=t.useCallback(function(e,t){b.trackGoal(e,t)},[b]);return t.useEffect(function(){void 0!==u&&m(u,i)},[i,m,u]),t.createElement(o.Provider,{value:{blockTrackingForMe:O,enableTrackingForMe:y,isTrackingEnabled:d,load:m,setSite:k,trackEvent:g,trackGoal:P,trackPageview:j,client:b,defaultPageviewOptions:v,defaultEventOptions:p}},n)};s.displayName="FathomProvider";var b=function(){return t.useContext(o)};b.displayName="useFathom";function v(e,t){if(null==e)return{};var n,r,c=function(e,t){if(null==e)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(-1!==t.indexOf(r))continue;n[r]=e[r]}return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],-1===t.indexOf(n)&&{}.propertyIsEnumerable.call(e,n)&&(c[n]=e[n])}return c}var p=["eventName","preventDefault","callback"],O=["eventName","observerOptions","trackOnce","callback"];function y(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}var d=["eventName","children","preventDefault","onClick","as"],m=["children"],k=["eventName","children","observerOptions","trackOnce","as"];function g(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}var j=t.forwardRef(function(e,n){var r=e.eventName,c=e.children,o=e.observerOptions,i=e.trackOnce,u=void 0===i||i,l=e.as,f=void 0===l?"div":l,s=v(e,k),p=b().trackEvent,O=t.useRef(null),y=t.useRef(!1),d=t.useCallback(function(e){O.current=e,"function"==typeof n?n(e):null!=n&&(n.current=e)},[n]);return t.useEffect(function(){var e=O.current;if(null!==e){var t=new IntersectionObserver(function(e){e.forEach(function(e){e.isIntersecting&&(u&&y.current||(null==p||p(r,s),y.current=!0))})},function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?g(Object(n),!0).forEach(function(t){a(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):g(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}({threshold:.1},o));return t.observe(e),function(){t.disconnect()}}},[r,s,o,u,p]),t.createElement(f,{ref:d},c)});e.FathomContext=o,e.FathomProvider=s,e.TrackClick=function(e){var n=e.eventName,r=e.children,c=e.preventDefault,o=void 0!==c&&c,i=e.onClick,u=e.as,a=void 0===u?"div":u,l=v(e,d),f=b().trackEvent;return t.createElement(a,{onClick:function(e){o&&e.preventDefault(),null==i||i(e),null==f||f(n,l)}},r)},e.TrackPageview=function(e){var n=e.children,r=v(e,m),c=b().trackPageview;return t.useEffect(function(){null==c||c(r)},[]),t.createElement(t.Fragment,null,n)},e.TrackVisible=j,e.useFathom=b,e.useTrackOnClick=function(e){var n=b().trackEvent,r=e.eventName,c=e.preventDefault,o=void 0!==c&&c,i=e.callback,u=v(e,p);return t.useCallback(function(e){o&&e&&e.preventDefault(),null==n||n(r,u),null==i||i(e)},[r,o,n,u,i])},e.useTrackOnMount=function(e){var n=b().trackPageview;t.useEffect(function(){null==n||n(e)},[])},e.useTrackOnVisible=function(e){var n=b().trackEvent,r=e.eventName,c=e.observerOptions,o=e.trackOnce,i=void 0===o||o,u=e.callback,l=v(e,O),f=t.useRef(null),s=t.useRef(!1);return t.useEffect(function(){var e=f.current;if(e){var t=new IntersectionObserver(function(e){e.forEach(function(e){e.isIntersecting&&(i&&s.current||(null==n||n(r,l),null==u||u(e),s.current=!0))})},function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?y(Object(n),!0).forEach(function(t){a(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):y(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}({threshold:.1},c));return t.observe(e),function(){t.disconnect()}}},[r,l,c,i,n,u]),f}});
3
3
  //# sourceMappingURL=react-fathom.min.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-fathom",
3
- "version": "0.1.9",
3
+ "version": "0.1.10",
4
4
  "description": "Easily compose Fathom Analytics into your React/Next.js apps with automatic pageview tracking and full TypeScript support.",
5
5
  "keywords": [
6
6
  "fathom",
@@ -20,10 +20,15 @@ const mockRouter = {
20
20
  asPath: '/test-page',
21
21
  }
22
22
 
23
+ // Mock both next/router and next/compat/router since we use next/compat/router
23
24
  vi.mock('next/router', () => ({
24
25
  useRouter: () => mockRouter,
25
26
  }))
26
27
 
28
+ vi.mock('next/compat/router', () => ({
29
+ useRouter: () => mockRouter,
30
+ }))
31
+
27
32
  // Mock fathom-client
28
33
  vi.mock('fathom-client', () => {
29
34
  const mockFathomDefault = {