matomo-tracker-for-react 1.0.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/LICENSE +373 -0
- package/README.md +194 -0
- package/es/MatomoContext.d.ts +5 -0
- package/es/MatomoContext.d.ts.map +1 -0
- package/es/MatomoContext.js +4 -0
- package/es/MatomoContext.js.map +1 -0
- package/es/MatomoProvider.d.ts +5 -0
- package/es/MatomoProvider.d.ts.map +1 -0
- package/es/MatomoProvider.js +94 -0
- package/es/MatomoProvider.js.map +1 -0
- package/es/MatomoTracker.d.ts +49 -0
- package/es/MatomoTracker.d.ts.map +1 -0
- package/es/MatomoTracker.js +330 -0
- package/es/MatomoTracker.js.map +1 -0
- package/es/constants.d.ts +11 -0
- package/es/constants.d.ts.map +1 -0
- package/es/constants.js +13 -0
- package/es/constants.js.map +1 -0
- package/es/index.d.ts +15 -0
- package/es/index.d.ts.map +1 -0
- package/es/index.js +6 -0
- package/es/index.js.map +1 -0
- package/es/tracker-types.d.ts +76 -0
- package/es/tracker-types.d.ts.map +1 -0
- package/es/tracker-types.js +2 -0
- package/es/tracker-types.js.map +1 -0
- package/es/types.d.ts +19 -0
- package/es/types.d.ts.map +1 -0
- package/es/types.js +3 -0
- package/es/types.js.map +1 -0
- package/es/useMatomo.d.ts +4 -0
- package/es/useMatomo.d.ts.map +1 -0
- package/es/useMatomo.js +30 -0
- package/es/useMatomo.js.map +1 -0
- package/lib/MatomoContext.d.ts +5 -0
- package/lib/MatomoContext.d.ts.map +1 -0
- package/lib/MatomoContext.js +6 -0
- package/lib/MatomoContext.js.map +1 -0
- package/lib/MatomoProvider.d.ts +5 -0
- package/lib/MatomoProvider.d.ts.map +1 -0
- package/lib/MatomoProvider.js +122 -0
- package/lib/MatomoProvider.js.map +1 -0
- package/lib/MatomoTracker.d.ts +49 -0
- package/lib/MatomoTracker.d.ts.map +1 -0
- package/lib/MatomoTracker.js +332 -0
- package/lib/MatomoTracker.js.map +1 -0
- package/lib/constants.d.ts +11 -0
- package/lib/constants.d.ts.map +1 -0
- package/lib/constants.js +16 -0
- package/lib/constants.js.map +1 -0
- package/lib/index.d.ts +15 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +29 -0
- package/lib/index.js.map +1 -0
- package/lib/tracker-types.d.ts +76 -0
- package/lib/tracker-types.d.ts.map +1 -0
- package/lib/tracker-types.js +3 -0
- package/lib/tracker-types.js.map +1 -0
- package/lib/types.d.ts +19 -0
- package/lib/types.d.ts.map +1 -0
- package/lib/types.js +19 -0
- package/lib/types.js.map +1 -0
- package/lib/useMatomo.d.ts +4 -0
- package/lib/useMatomo.d.ts.map +1 -0
- package/lib/useMatomo.js +35 -0
- package/lib/useMatomo.js.map +1 -0
- package/package.json +58 -0
- package/src/MatomoContext.tsx +6 -0
- package/src/MatomoProvider.tsx +93 -0
- package/src/MatomoTracker.ts +415 -0
- package/src/constants.ts +12 -0
- package/src/index.ts +20 -0
- package/src/tracker-types.ts +89 -0
- package/src/types.ts +29 -0
- package/src/useMatomo.ts +55 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MatomoTracker.js","sourceRoot":"","sources":["../src/MatomoTracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare const TRACK_TYPES: {
|
|
2
|
+
TRACK_EVENT: string;
|
|
3
|
+
TRACK_LINK: string;
|
|
4
|
+
TRACK_SEARCH: string;
|
|
5
|
+
TRACK_VIEW: string;
|
|
6
|
+
TRACK_ECOMMERCE_ORDER: string;
|
|
7
|
+
TRACK_ECOMMERCE_CART_UPDATE: string;
|
|
8
|
+
TRACK_GOAL: string;
|
|
9
|
+
SET_USER_ID: string;
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,WAAW;;;;;;;;;CAUvB,CAAC"}
|
package/lib/constants.js
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TRACK_TYPES = void 0;
|
|
4
|
+
// eslint-disable-next-line import/prefer-default-export
|
|
5
|
+
exports.TRACK_TYPES = {
|
|
6
|
+
TRACK_EVENT: "trackEvent",
|
|
7
|
+
TRACK_LINK: "trackLink",
|
|
8
|
+
TRACK_SEARCH: "trackSiteSearch",
|
|
9
|
+
TRACK_VIEW: "trackPageView",
|
|
10
|
+
TRACK_ECOMMERCE_ORDER: "trackEcommerceOrder",
|
|
11
|
+
TRACK_ECOMMERCE_CART_UPDATE: "trackEcommerceCartUpdate",
|
|
12
|
+
// Add other Matomo instructions if needed, e.g., for goals
|
|
13
|
+
TRACK_GOAL: "trackGoal",
|
|
14
|
+
SET_USER_ID: "setUserId",
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAA,wDAAwD;AAC3C,QAAA,WAAW,GAAG;IACzB,WAAW,EAAE,YAAY;IACzB,UAAU,EAAE,WAAW;IACvB,YAAY,EAAE,iBAAiB;IAC/B,UAAU,EAAE,eAAe;IAC3B,qBAAqB,EAAE,qBAAqB;IAC5C,2BAA2B,EAAE,0BAA0B;IACvD,2DAA2D;IAC3D,UAAU,EAAE,WAAW;IACvB,WAAW,EAAE,WAAW;CACzB,CAAC"}
|
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export { default as MatomoProvider } from "./MatomoProvider";
|
|
2
|
+
export { default as useMatomo } from "./useMatomo";
|
|
3
|
+
export { default as MatomoContext } from "./MatomoContext";
|
|
4
|
+
export * from "./types";
|
|
5
|
+
export type { CustomDimension, UserOptions, // This is the core UserOptions, MatomoProviderProps is different
|
|
6
|
+
TrackPageViewParams, // Core type
|
|
7
|
+
TrackEventParams, // Core type
|
|
8
|
+
TrackLinkParams, // Core type
|
|
9
|
+
TrackSiteSearchParams, // Core type, though not directly used by simplified hook
|
|
10
|
+
TrackEcommerceOrderParams, // Core type
|
|
11
|
+
AddEcommerceItemParams, // Core type
|
|
12
|
+
RemoveEcommerceItemParams, // Core type
|
|
13
|
+
SetEcommerceViewParams, // Core type
|
|
14
|
+
TrackGoalParams, } from "./tracker-types";
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAG3D,cAAc,SAAS,CAAC;AAExB,YAAY,EACV,eAAe,EACf,WAAW,EAAE,iEAAiE;AAC9E,mBAAmB,EAAE,YAAY;AACjC,gBAAgB,EAAE,YAAY;AAC9B,eAAe,EAAE,YAAY;AAC7B,qBAAqB,EAAE,yDAAyD;AAChF,yBAAyB,EAAE,YAAY;AACvC,sBAAsB,EAAE,YAAY;AACpC,yBAAyB,EAAE,YAAY;AACvC,sBAAsB,EAAE,YAAY;AACpC,eAAe,GAChB,MAAM,iBAAiB,CAAC"}
|
package/lib/index.js
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
17
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
|
+
};
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
exports.MatomoContext = exports.useMatomo = exports.MatomoProvider = void 0;
|
|
21
|
+
var MatomoProvider_1 = require("./MatomoProvider");
|
|
22
|
+
Object.defineProperty(exports, "MatomoProvider", { enumerable: true, get: function () { return __importDefault(MatomoProvider_1).default; } });
|
|
23
|
+
var useMatomo_1 = require("./useMatomo");
|
|
24
|
+
Object.defineProperty(exports, "useMatomo", { enumerable: true, get: function () { return __importDefault(useMatomo_1).default; } });
|
|
25
|
+
var MatomoContext_1 = require("./MatomoContext"); // Optional: if users need direct context access
|
|
26
|
+
Object.defineProperty(exports, "MatomoContext", { enumerable: true, get: function () { return __importDefault(MatomoContext_1).default; } });
|
|
27
|
+
// Export types for consumers
|
|
28
|
+
__exportStar(require("./types"), exports); // Exports React-specific types and re-exports tracker-types
|
|
29
|
+
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,mDAA6D;AAApD,iIAAA,OAAO,OAAkB;AAClC,yCAAmD;AAA1C,uHAAA,OAAO,OAAa;AAC7B,iDAA2D,CAAC,gDAAgD;AAAnG,+HAAA,OAAO,OAAiB;AAEjC,6BAA6B;AAC7B,0CAAwB,CAAC,4DAA4D"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
export interface CustomDimension {
|
|
2
|
+
id: number;
|
|
3
|
+
value: string;
|
|
4
|
+
}
|
|
5
|
+
export interface UserOptions {
|
|
6
|
+
urlBase: string;
|
|
7
|
+
siteId: number;
|
|
8
|
+
userId?: string;
|
|
9
|
+
trackerUrl?: string;
|
|
10
|
+
srcUrl?: string;
|
|
11
|
+
disabled?: boolean;
|
|
12
|
+
heartBeat?: {
|
|
13
|
+
active: boolean;
|
|
14
|
+
seconds?: number;
|
|
15
|
+
};
|
|
16
|
+
linkTracking?: boolean;
|
|
17
|
+
configurations?: {
|
|
18
|
+
[key: string]: any;
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
export interface TrackPageViewParams {
|
|
22
|
+
documentTitle?: string;
|
|
23
|
+
href?: string | Location;
|
|
24
|
+
customDimensions?: boolean | CustomDimension[];
|
|
25
|
+
}
|
|
26
|
+
export interface TrackParams extends TrackPageViewParams {
|
|
27
|
+
data: any[];
|
|
28
|
+
}
|
|
29
|
+
export interface TrackEventParams {
|
|
30
|
+
category: string;
|
|
31
|
+
action: string;
|
|
32
|
+
name?: string;
|
|
33
|
+
value?: number;
|
|
34
|
+
documentTitle?: string;
|
|
35
|
+
href?: string | Location;
|
|
36
|
+
customDimensions?: boolean | CustomDimension[];
|
|
37
|
+
}
|
|
38
|
+
export interface TrackLinkParams {
|
|
39
|
+
href: string;
|
|
40
|
+
linkType?: "download" | "link";
|
|
41
|
+
customDimensions?: boolean | CustomDimension[];
|
|
42
|
+
}
|
|
43
|
+
export interface TrackSiteSearchParams extends TrackPageViewParams {
|
|
44
|
+
keyword: string;
|
|
45
|
+
category?: string;
|
|
46
|
+
count?: number;
|
|
47
|
+
}
|
|
48
|
+
export interface TrackEcommerceOrderParams {
|
|
49
|
+
orderId: string;
|
|
50
|
+
orderRevenue: number;
|
|
51
|
+
orderSubTotal?: number;
|
|
52
|
+
taxAmount?: number;
|
|
53
|
+
shippingAmount?: number;
|
|
54
|
+
discountOffered?: boolean;
|
|
55
|
+
}
|
|
56
|
+
export interface AddEcommerceItemParams {
|
|
57
|
+
sku: string;
|
|
58
|
+
productName?: string;
|
|
59
|
+
productCategory?: string;
|
|
60
|
+
productPrice?: number;
|
|
61
|
+
productQuantity?: number;
|
|
62
|
+
}
|
|
63
|
+
export interface RemoveEcommerceItemParams {
|
|
64
|
+
sku: string;
|
|
65
|
+
}
|
|
66
|
+
export interface SetEcommerceViewParams {
|
|
67
|
+
sku: string | boolean;
|
|
68
|
+
productName?: string | boolean;
|
|
69
|
+
productCategory?: string;
|
|
70
|
+
productPrice?: number;
|
|
71
|
+
}
|
|
72
|
+
export interface TrackGoalParams {
|
|
73
|
+
goalId: number | string;
|
|
74
|
+
revenue?: number;
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=tracker-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracker-types.d.ts","sourceRoot":"","sources":["../src/tracker-types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE;QACV,MAAM,EAAE,OAAO,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE;QACf,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IACzB,gBAAgB,CAAC,EAAE,OAAO,GAAG,eAAe,EAAE,CAAC;CAChD;AAED,MAAM,WAAW,WAAY,SAAQ,mBAAmB;IACtD,IAAI,EAAE,GAAG,EAAE,CAAC;CACb;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IACzB,gBAAgB,CAAC,EAAE,OAAO,GAAG,eAAe,EAAE,CAAC;CAChD;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAE/B,gBAAgB,CAAC,EAAE,OAAO,GAAG,eAAe,EAAE,CAAC;CAChD;AAED,MAAM,WAAW,qBAAsB,SAAQ,mBAAmB;IAChE,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,yBAAyB;IACxC,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAGD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracker-types.js","sourceRoot":"","sources":["../src/tracker-types.ts"],"names":[],"mappings":""}
|
package/lib/types.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export * from "./tracker-types";
|
|
3
|
+
export interface MatomoProviderProps {
|
|
4
|
+
children: React.ReactNode;
|
|
5
|
+
urlBase: string;
|
|
6
|
+
siteId: string | number;
|
|
7
|
+
trackCookies?: boolean;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export interface MatomoInstance {
|
|
11
|
+
trackEvent: (category: string, action: string, name?: string, value?: number) => void;
|
|
12
|
+
trackPageView: (customTitle?: string) => void;
|
|
13
|
+
trackGoal: (goalId: number | string, revenue?: number) => void;
|
|
14
|
+
setUserId: (userId: string) => void;
|
|
15
|
+
trackLink: (url: string, linkType: "link" | "download") => void;
|
|
16
|
+
pushInstruction: (instruction: any[]) => void;
|
|
17
|
+
}
|
|
18
|
+
export type UseMatomo = MatomoInstance;
|
|
19
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,cAAc,iBAAiB,CAAC;AAEhC,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,CACV,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM,KACX,IAAI,CAAC;IACV,aAAa,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/D,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,KAAK,IAAI,CAAC;IAChE,eAAe,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;CAC/C;AAGD,MAAM,MAAM,SAAS,GAAG,cAAc,CAAC"}
|
package/lib/types.js
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
// Re-export tracker types for convenience if needed by consumers of the React package
|
|
18
|
+
__exportStar(require("./tracker-types"), exports);
|
|
19
|
+
//# sourceMappingURL=types.js.map
|
package/lib/types.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAEA,sFAAsF;AACtF,kDAAgC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useMatomo.d.ts","sourceRoot":"","sources":["../src/useMatomo.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,iBAAS,SAAS,IAAI,SAAS,CAgD9B;AAED,eAAe,SAAS,CAAC"}
|
package/lib/useMatomo.js
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
var react_1 = require("react");
|
|
7
|
+
var MatomoContext_1 = __importDefault(require("./MatomoContext"));
|
|
8
|
+
function useMatomo() {
|
|
9
|
+
var context = (0, react_1.useContext)(MatomoContext_1.default);
|
|
10
|
+
if (context === null) {
|
|
11
|
+
throw new Error("useMatomo must be used within a MatomoProvider");
|
|
12
|
+
}
|
|
13
|
+
var trackPageView = (0, react_1.useCallback)(function (customTitle) { return context.trackPageView(customTitle); }, [context]);
|
|
14
|
+
var trackEvent = (0, react_1.useCallback)(function (category, action, name, value) {
|
|
15
|
+
return context.trackEvent(category, action, name, value);
|
|
16
|
+
}, [context]);
|
|
17
|
+
var trackGoal = (0, react_1.useCallback)(function (goalId, revenue) {
|
|
18
|
+
return context.trackGoal(goalId, revenue);
|
|
19
|
+
}, [context]);
|
|
20
|
+
var setUserId = (0, react_1.useCallback)(function (userId) { return context.setUserId(userId); }, [context]);
|
|
21
|
+
var trackLink = (0, react_1.useCallback)(function (url, linkType) {
|
|
22
|
+
return context.trackLink(url, linkType);
|
|
23
|
+
}, [context]);
|
|
24
|
+
var pushInstruction = (0, react_1.useCallback)(function (instruction) { return context.pushInstruction(instruction); }, [context]);
|
|
25
|
+
return {
|
|
26
|
+
trackEvent: trackEvent,
|
|
27
|
+
trackPageView: trackPageView,
|
|
28
|
+
trackGoal: trackGoal,
|
|
29
|
+
setUserId: setUserId,
|
|
30
|
+
trackLink: trackLink,
|
|
31
|
+
pushInstruction: pushInstruction,
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
exports.default = useMatomo;
|
|
35
|
+
//# sourceMappingURL=useMatomo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useMatomo.js","sourceRoot":"","sources":["../src/useMatomo.ts"],"names":[],"mappings":";;;;;AAAA,+BAAgD;AAChD,kEAA4C;AAG5C,SAAS,SAAS;IAChB,IAAM,OAAO,GAAG,IAAA,kBAAU,EAAC,uBAAa,CAAC,CAAC;IAE1C,IAAI,OAAO,KAAK,IAAI,EAAE;QACpB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;KACnE;IAED,IAAM,aAAa,GAAG,IAAA,mBAAW,EAC/B,UAAC,WAAoB,IAAK,OAAA,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,EAAlC,CAAkC,EAC5D,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,IAAM,UAAU,GAAG,IAAA,mBAAW,EAC5B,UAAC,QAAgB,EAAE,MAAc,EAAE,IAAa,EAAE,KAAc;QAC9D,OAAA,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC;IAAjD,CAAiD,EACnD,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,IAAM,SAAS,GAAG,IAAA,mBAAW,EAC3B,UAAC,MAAuB,EAAE,OAAgB;QACxC,OAAA,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAAlC,CAAkC,EACpC,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,IAAM,SAAS,GAAG,IAAA,mBAAW,EAC3B,UAAC,MAAc,IAAK,OAAA,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,EAAzB,CAAyB,EAC7C,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,IAAM,SAAS,GAAG,IAAA,mBAAW,EAC3B,UAAC,GAAW,EAAE,QAA6B;QACzC,OAAA,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,QAAQ,CAAC;IAAhC,CAAgC,EAClC,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,IAAM,eAAe,GAAG,IAAA,mBAAW,EACjC,UAAC,WAAkB,IAAK,OAAA,OAAO,CAAC,eAAe,CAAC,WAAW,CAAC,EAApC,CAAoC,EAC5D,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,OAAO;QACL,UAAU,YAAA;QACV,aAAa,eAAA;QACb,SAAS,WAAA;QACT,SAAS,WAAA;QACT,SAAS,WAAA;QACT,eAAe,iBAAA;KAChB,CAAC;AACJ,CAAC;AAED,kBAAe,SAAS,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "matomo-tracker-for-react",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "A minimal yet powerful React package that integrates Matomo analytics with React Router.",
|
|
5
|
+
"main": "lib/index.js",
|
|
6
|
+
"module": "es/index.js",
|
|
7
|
+
"types": "lib/index.d.ts",
|
|
8
|
+
"scripts": {
|
|
9
|
+
"build": "npm run build:cjs && npm run build:esm",
|
|
10
|
+
"build:cjs": "tsc -p tsconfig.json --module commonjs --outDir lib",
|
|
11
|
+
"build:esm": "tsc -p tsconfig.json --module esnext --outDir es",
|
|
12
|
+
"clean": "rm -rf lib es *.tsbuildinfo",
|
|
13
|
+
"prepublishOnly": "npm run clean && npm run build"
|
|
14
|
+
},
|
|
15
|
+
"keywords": [
|
|
16
|
+
"matomo",
|
|
17
|
+
"react",
|
|
18
|
+
"analytics",
|
|
19
|
+
"tracking",
|
|
20
|
+
"react-router"
|
|
21
|
+
],
|
|
22
|
+
"author": "Jonas Kenke",
|
|
23
|
+
"license": "MPL-2.0",
|
|
24
|
+
"repository": {
|
|
25
|
+
"type": "git",
|
|
26
|
+
"url": "https://github.com/JonasKenke/matomo-tracker-for-react.git"
|
|
27
|
+
},
|
|
28
|
+
"bugs": {
|
|
29
|
+
"url": "https://github.com/JonasKenke/matomo-tracker-for-react/issues"
|
|
30
|
+
},
|
|
31
|
+
"homepage": "https://github.com/JonasKenke/matomo-tracker-for-react#readme",
|
|
32
|
+
"files": [
|
|
33
|
+
"lib",
|
|
34
|
+
"es",
|
|
35
|
+
"src"
|
|
36
|
+
],
|
|
37
|
+
"exports": {
|
|
38
|
+
".": {
|
|
39
|
+
"import": "./es/index.js",
|
|
40
|
+
"require": "./lib/index.js",
|
|
41
|
+
"types": "./lib/index.d.ts"
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
"peerDependencies": {
|
|
45
|
+
"react": ">=16.8.0",
|
|
46
|
+
"react-dom": ">=16.8.0",
|
|
47
|
+
"react-router-dom": ">=5.0.0 || >=6.0.0"
|
|
48
|
+
},
|
|
49
|
+
"devDependencies": {
|
|
50
|
+
"@types/react": "^18.0.0",
|
|
51
|
+
"@types/react-dom": "^18.0.0",
|
|
52
|
+
"react": "^18.0.0",
|
|
53
|
+
"react-dom": "^18.0.0",
|
|
54
|
+
"react-router-dom": "^6.0.0",
|
|
55
|
+
"typescript": "^4.5.0"
|
|
56
|
+
},
|
|
57
|
+
"sideEffects": false
|
|
58
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import React, { useEffect, useMemo, useRef } from 'react'
|
|
2
|
+
import { useLocation } from 'react-router-dom' // For automatic page view tracking
|
|
3
|
+
import MatomoContext from './MatomoContext'
|
|
4
|
+
import MatomoTracker from './MatomoTracker'
|
|
5
|
+
import { MatomoProviderProps, MatomoInstance, UserOptions } from './types'
|
|
6
|
+
import { TRACK_TYPES } from './constants'
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
const MatomoProvider: React.FC<MatomoProviderProps> = ({
|
|
10
|
+
children,
|
|
11
|
+
urlBase,
|
|
12
|
+
siteId,
|
|
13
|
+
disabled = false,
|
|
14
|
+
trackCookies = true,
|
|
15
|
+
}) => {
|
|
16
|
+
const matomoInstanceRef = useRef<MatomoTracker | null>(null)
|
|
17
|
+
const location = useLocation() // From react-router-dom
|
|
18
|
+
|
|
19
|
+
// Initialize MatomoTracker instance
|
|
20
|
+
if (!matomoInstanceRef.current && typeof window !== 'undefined' && !disabled) {
|
|
21
|
+
const matomoSiteId = typeof siteId === 'string' ? parseInt(siteId, 10) : siteId;
|
|
22
|
+
if (isNaN(matomoSiteId)) {
|
|
23
|
+
console.error("Matomo siteId must be a number or a string parseable to a number.");
|
|
24
|
+
} else {
|
|
25
|
+
const effectiveConfigurations: { [key: string]: any } = {};
|
|
26
|
+
if (!trackCookies) {
|
|
27
|
+
effectiveConfigurations.disableCookies = true;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
const trackerOptions: UserOptions = {
|
|
31
|
+
urlBase,
|
|
32
|
+
siteId: matomoSiteId,
|
|
33
|
+
disabled,
|
|
34
|
+
configurations: effectiveConfigurations, // Pass only relevant configurations
|
|
35
|
+
};
|
|
36
|
+
matomoInstanceRef.current = new MatomoTracker(trackerOptions);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
const matomoActions = useMemo<MatomoInstance | null>(() => {
|
|
41
|
+
const currentInstance = matomoInstanceRef.current; // Use a variable for the dependency array
|
|
42
|
+
if (!currentInstance || disabled) {
|
|
43
|
+
const noOp = () => {};
|
|
44
|
+
const noOpInstance: MatomoInstance = { // Ensure this matches the simplified MatomoInstance
|
|
45
|
+
trackEvent: noOp,
|
|
46
|
+
trackPageView: noOp,
|
|
47
|
+
trackGoal: noOp,
|
|
48
|
+
setUserId: noOp,
|
|
49
|
+
trackLink: noOp,
|
|
50
|
+
pushInstruction: (..._args: any[]) => {},
|
|
51
|
+
};
|
|
52
|
+
return noOpInstance;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
return {
|
|
56
|
+
trackEvent: (category, action, name, value) =>
|
|
57
|
+
currentInstance.trackEvent({ category, action, name, value }),
|
|
58
|
+
trackPageView: (customTitle) =>
|
|
59
|
+
currentInstance.trackPageView(customTitle ? { documentTitle: customTitle } : undefined),
|
|
60
|
+
trackGoal: (goalId, revenue) =>
|
|
61
|
+
currentInstance.pushInstruction(TRACK_TYPES.TRACK_GOAL, goalId, revenue),
|
|
62
|
+
setUserId: (uid) => currentInstance.pushInstruction(TRACK_TYPES.SET_USER_ID, uid),
|
|
63
|
+
trackLink: (url, linkType) =>
|
|
64
|
+
currentInstance.trackLink({ href: url, linkType }),
|
|
65
|
+
pushInstruction: (instruction) => {
|
|
66
|
+
if (Array.isArray(instruction) && instruction.length > 0) {
|
|
67
|
+
const [name, ...args] = instruction;
|
|
68
|
+
currentInstance.pushInstruction(name, ...args);
|
|
69
|
+
} else {
|
|
70
|
+
console.warn('pushInstruction expects a non-empty array.');
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
}
|
|
74
|
+
}, [disabled, matomoInstanceRef.current]) // Use matomoInstanceRef.current here
|
|
75
|
+
|
|
76
|
+
// Effect for automatic page view tracking on route change
|
|
77
|
+
useEffect(() => {
|
|
78
|
+
if (matomoActions && matomoActions.trackPageView && !disabled) {
|
|
79
|
+
const currentPath = location.pathname + location.search + location.hash
|
|
80
|
+
matomoActions.pushInstruction(['setCustomUrl', window.location.origin + currentPath])
|
|
81
|
+
matomoActions.trackPageView() // Track with potentially new document.title or default
|
|
82
|
+
}
|
|
83
|
+
}, [location, matomoActions, disabled])
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
return (
|
|
87
|
+
<MatomoContext.Provider value={matomoActions}>
|
|
88
|
+
{children}
|
|
89
|
+
</MatomoContext.Provider>
|
|
90
|
+
)
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
export default MatomoProvider
|