@robinpath/google-analytics 0.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/README.md ADDED
@@ -0,0 +1,109 @@
1
+ # @robinpath/google-analytics
2
+
3
+ > Google Analytics module for RobinPath.
4
+
5
+ ![Category](https://img.shields.io/badge/category-Productivity-blue) ![Functions](https://img.shields.io/badge/functions-15-green) ![Auth](https://img.shields.io/badge/auth-API%20Key-orange) ![License](https://img.shields.io/badge/license-MIT-brightgreen)
6
+
7
+ ## Why use this module?
8
+
9
+ The `google-analytics` module lets you:
10
+
11
+ - runReport
12
+ - runRealtimeReport
13
+ - batchRunReports
14
+ - runPivotReport
15
+ - getMetadata
16
+
17
+ All functions are callable directly from RobinPath scripts with a simple, consistent API.
18
+
19
+ ## Installation
20
+
21
+ ```bash
22
+ npm install @robinpath/google-analytics
23
+ ```
24
+
25
+ ## Quick Start
26
+
27
+ **1. Set up credentials**
28
+
29
+ ```robinpath
30
+ google-analytics.setCredentials "your-credentials"
31
+ ```
32
+
33
+ **2. runReport**
34
+
35
+ ```robinpath
36
+ google-analytics.runReport
37
+ ```
38
+
39
+ ## Available Functions
40
+
41
+ | Function | Description |
42
+ |----------|-------------|
43
+ | `google-analytics.setCredentials` | Configure google-analytics credentials. |
44
+ | `google-analytics.runReport` | runReport |
45
+ | `google-analytics.runRealtimeReport` | runRealtimeReport |
46
+ | `google-analytics.batchRunReports` | batchRunReports |
47
+ | `google-analytics.runPivotReport` | runPivotReport |
48
+ | `google-analytics.getMetadata` | getMetadata |
49
+ | `google-analytics.listProperties` | listProperties |
50
+ | `google-analytics.getProperty` | getProperty |
51
+ | `google-analytics.listAccounts` | listAccounts |
52
+ | `google-analytics.getActiveUsers` | getActiveUsers |
53
+ | `google-analytics.getPageViews` | getPageViews |
54
+ | `google-analytics.getTopPages` | getTopPages |
55
+ | `google-analytics.getTrafficSources` | getTrafficSources |
56
+ | `google-analytics.getUserDemographics` | getUserDemographics |
57
+ | `google-analytics.getConversions` | getConversions |
58
+
59
+ ## Examples
60
+
61
+ ### runReport
62
+
63
+ ```robinpath
64
+ google-analytics.runReport
65
+ ```
66
+
67
+ ### runRealtimeReport
68
+
69
+ ```robinpath
70
+ google-analytics.runRealtimeReport
71
+ ```
72
+
73
+ ### batchRunReports
74
+
75
+ ```robinpath
76
+ google-analytics.batchRunReports
77
+ ```
78
+
79
+ ## Integration with RobinPath
80
+
81
+ ```typescript
82
+ import { RobinPath } from "@wiredwp/robinpath";
83
+ import Module from "@robinpath/google-analytics";
84
+
85
+ const rp = new RobinPath();
86
+ rp.registerModule(Module.name, Module.functions);
87
+ rp.registerModuleMeta(Module.name, Module.functionMetadata);
88
+
89
+ const result = await rp.executeScript(`
90
+ google-analytics.setCredentials "your-credentials"
91
+ google-analytics.runReport
92
+ `);
93
+ ```
94
+
95
+ ## Full API Reference
96
+
97
+ See [MODULE.md](./MODULE.md) for complete documentation including all parameters, return types, error handling, and advanced examples.
98
+
99
+ ## Related Modules
100
+
101
+ - [`@robinpath/google-sheets`](../google-sheets) — Google Sheets module for complementary functionality
102
+ - [`@robinpath/google-calendar`](../google-calendar) — Google Calendar module for complementary functionality
103
+ - [`@robinpath/google-contacts`](../google-contacts) — Google Contacts module for complementary functionality
104
+ - [`@robinpath/google-forms`](../google-forms) — Google Forms module for complementary functionality
105
+ - [`@robinpath/gmail`](../gmail) — Gmail module for complementary functionality
106
+
107
+ ## License
108
+
109
+ MIT
@@ -0,0 +1,190 @@
1
+ import type { BuiltinHandler } from "@wiredwp/robinpath";
2
+ export declare const GoogleAnalyticsFunctions: Record<string, BuiltinHandler>;
3
+ export declare const GoogleAnalyticsFunctionMetadata: {
4
+ setCredentials: {
5
+ description: string;
6
+ parameters: {
7
+ name: string;
8
+ dataType: string;
9
+ description: string;
10
+ formInputType: string;
11
+ required: boolean;
12
+ }[];
13
+ returnType: string;
14
+ returnDescription: string;
15
+ };
16
+ runReport: {
17
+ description: string;
18
+ parameters: {
19
+ name: string;
20
+ dataType: string;
21
+ description: string;
22
+ formInputType: string;
23
+ required: boolean;
24
+ }[];
25
+ returnType: string;
26
+ returnDescription: string;
27
+ };
28
+ runRealtimeReport: {
29
+ description: string;
30
+ parameters: {
31
+ name: string;
32
+ dataType: string;
33
+ description: string;
34
+ formInputType: string;
35
+ required: boolean;
36
+ }[];
37
+ returnType: string;
38
+ returnDescription: string;
39
+ };
40
+ batchRunReports: {
41
+ description: string;
42
+ parameters: {
43
+ name: string;
44
+ dataType: string;
45
+ description: string;
46
+ formInputType: string;
47
+ required: boolean;
48
+ }[];
49
+ returnType: string;
50
+ returnDescription: string;
51
+ };
52
+ runPivotReport: {
53
+ description: string;
54
+ parameters: {
55
+ name: string;
56
+ dataType: string;
57
+ description: string;
58
+ formInputType: string;
59
+ required: boolean;
60
+ }[];
61
+ returnType: string;
62
+ returnDescription: string;
63
+ };
64
+ getMetadata: {
65
+ description: string;
66
+ parameters: {
67
+ name: string;
68
+ dataType: string;
69
+ description: string;
70
+ formInputType: string;
71
+ required: boolean;
72
+ }[];
73
+ returnType: string;
74
+ returnDescription: string;
75
+ };
76
+ listProperties: {
77
+ description: string;
78
+ parameters: {
79
+ name: string;
80
+ dataType: string;
81
+ description: string;
82
+ formInputType: string;
83
+ required: boolean;
84
+ }[];
85
+ returnType: string;
86
+ returnDescription: string;
87
+ };
88
+ getProperty: {
89
+ description: string;
90
+ parameters: {
91
+ name: string;
92
+ dataType: string;
93
+ description: string;
94
+ formInputType: string;
95
+ required: boolean;
96
+ }[];
97
+ returnType: string;
98
+ returnDescription: string;
99
+ };
100
+ listAccounts: {
101
+ description: string;
102
+ parameters: {
103
+ name: string;
104
+ dataType: string;
105
+ description: string;
106
+ formInputType: string;
107
+ required: boolean;
108
+ }[];
109
+ returnType: string;
110
+ returnDescription: string;
111
+ };
112
+ getActiveUsers: {
113
+ description: string;
114
+ parameters: {
115
+ name: string;
116
+ dataType: string;
117
+ description: string;
118
+ formInputType: string;
119
+ required: boolean;
120
+ }[];
121
+ returnType: string;
122
+ returnDescription: string;
123
+ };
124
+ getPageViews: {
125
+ description: string;
126
+ parameters: {
127
+ name: string;
128
+ dataType: string;
129
+ description: string;
130
+ formInputType: string;
131
+ required: boolean;
132
+ }[];
133
+ returnType: string;
134
+ returnDescription: string;
135
+ };
136
+ getTopPages: {
137
+ description: string;
138
+ parameters: {
139
+ name: string;
140
+ dataType: string;
141
+ description: string;
142
+ formInputType: string;
143
+ required: boolean;
144
+ }[];
145
+ returnType: string;
146
+ returnDescription: string;
147
+ };
148
+ getTrafficSources: {
149
+ description: string;
150
+ parameters: {
151
+ name: string;
152
+ dataType: string;
153
+ description: string;
154
+ formInputType: string;
155
+ required: boolean;
156
+ }[];
157
+ returnType: string;
158
+ returnDescription: string;
159
+ };
160
+ getUserDemographics: {
161
+ description: string;
162
+ parameters: {
163
+ name: string;
164
+ dataType: string;
165
+ description: string;
166
+ formInputType: string;
167
+ required: boolean;
168
+ }[];
169
+ returnType: string;
170
+ returnDescription: string;
171
+ };
172
+ getConversions: {
173
+ description: string;
174
+ parameters: {
175
+ name: string;
176
+ dataType: string;
177
+ description: string;
178
+ formInputType: string;
179
+ required: boolean;
180
+ }[];
181
+ returnType: string;
182
+ returnDescription: string;
183
+ };
184
+ };
185
+ export declare const GoogleAnalyticsModuleMetadata: {
186
+ description: string;
187
+ methods: string[];
188
+ category: string;
189
+ };
190
+ //# sourceMappingURL=google-analytics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"google-analytics.d.ts","sourceRoot":"","sources":["../src/google-analytics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAA2C,MAAM,oBAAoB,CAAC;AAoGlG,eAAO,MAAM,wBAAwB,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAEnE,CAAC;AAEF,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgB3C,CAAC;AAEF,eAAO,MAAM,6BAA6B;;;;CAIzC,CAAC"}
@@ -0,0 +1,111 @@
1
+ const config = new Map();
2
+ function getConfig(key) {
3
+ const val = config.get(key);
4
+ if (!val)
5
+ throw new Error(`GoogleAnalytics: "${key}" not configured. Call google-analytics.setCredentials first.`);
6
+ return val;
7
+ }
8
+ async function apiCall(path, method = "GET", body) {
9
+ const res = await fetch(`https://analyticsdata.googleapis.com/v1beta${path}`, {
10
+ method,
11
+ headers: { "Authorization": `Bearer ${getConfig("accessToken")}`, "Content-Type": "application/json", Accept: "application/json" },
12
+ body: body ? JSON.stringify(body) : undefined,
13
+ });
14
+ if (!res.ok) {
15
+ const t = await res.text();
16
+ throw new Error(`GoogleAnalytics API error (${res.status}): ${t}`);
17
+ }
18
+ const ct = res.headers.get("content-type");
19
+ return ct && ct.includes("application/json") ? res.json() : res.text();
20
+ }
21
+ const setCredentials = (args) => {
22
+ const accessToken = args[0];
23
+ const propertyId = args[1];
24
+ if (!accessToken || !propertyId)
25
+ throw new Error("google-analytics.setCredentials requires accessToken, propertyId.");
26
+ config.set("accessToken", accessToken);
27
+ config.set("propertyId", propertyId);
28
+ return "GoogleAnalytics credentials configured.";
29
+ };
30
+ const runReport = async (args) => {
31
+ const id = args[0];
32
+ return apiCall(id ? `/runReport/${id}` : `/runReport`);
33
+ };
34
+ const runRealtimeReport = async (args) => {
35
+ const id = args[0];
36
+ return apiCall(id ? `/runRealtimeReport/${id}` : `/runRealtimeReport`);
37
+ };
38
+ const batchRunReports = async (args) => {
39
+ const id = args[0];
40
+ return apiCall(id ? `/batchRunReports/${id}` : `/batchRunReports`);
41
+ };
42
+ const runPivotReport = async (args) => {
43
+ const id = args[0];
44
+ return apiCall(id ? `/runPivotReport/${id}` : `/runPivotReport`);
45
+ };
46
+ const getMetadata = async (args) => {
47
+ const id = args[0];
48
+ return apiCall(id ? `/getMetadata/${id}` : `/getMetadata`);
49
+ };
50
+ const listProperties = async (args) => {
51
+ const id = args[0];
52
+ return apiCall(id ? `/listProperties/${id}` : `/listProperties`);
53
+ };
54
+ const getProperty = async (args) => {
55
+ const id = args[0];
56
+ return apiCall(id ? `/getProperty/${id}` : `/getProperty`);
57
+ };
58
+ const listAccounts = async (args) => {
59
+ const id = args[0];
60
+ return apiCall(id ? `/listAccounts/${id}` : `/listAccounts`);
61
+ };
62
+ const getActiveUsers = async (args) => {
63
+ const id = args[0];
64
+ return apiCall(id ? `/getActiveUsers/${id}` : `/getActiveUsers`);
65
+ };
66
+ const getPageViews = async (args) => {
67
+ const id = args[0];
68
+ return apiCall(id ? `/getPageViews/${id}` : `/getPageViews`);
69
+ };
70
+ const getTopPages = async (args) => {
71
+ const id = args[0];
72
+ return apiCall(id ? `/getTopPages/${id}` : `/getTopPages`);
73
+ };
74
+ const getTrafficSources = async (args) => {
75
+ const id = args[0];
76
+ return apiCall(id ? `/getTrafficSources/${id}` : `/getTrafficSources`);
77
+ };
78
+ const getUserDemographics = async (args) => {
79
+ const id = args[0];
80
+ return apiCall(id ? `/getUserDemographics/${id}` : `/getUserDemographics`);
81
+ };
82
+ const getConversions = async (args) => {
83
+ const id = args[0];
84
+ return apiCall(id ? `/getConversions/${id}` : `/getConversions`);
85
+ };
86
+ export const GoogleAnalyticsFunctions = {
87
+ setCredentials, runReport, runRealtimeReport, batchRunReports, runPivotReport, getMetadata, listProperties, getProperty, listAccounts, getActiveUsers, getPageViews, getTopPages, getTrafficSources, getUserDemographics, getConversions,
88
+ };
89
+ export const GoogleAnalyticsFunctionMetadata = {
90
+ setCredentials: { description: "Configure google-analytics credentials.", parameters: [{ name: "accessToken", dataType: "string", description: "accessToken", formInputType: "text", required: true }, { name: "propertyId", dataType: "string", description: "propertyId", formInputType: "text", required: true }], returnType: "object", returnDescription: "API response." },
91
+ runReport: { description: "runReport", parameters: [{ name: "input", dataType: "string", description: "Input parameter", formInputType: "text", required: false }], returnType: "object", returnDescription: "API response." },
92
+ runRealtimeReport: { description: "runRealtimeReport", parameters: [{ name: "input", dataType: "string", description: "Input parameter", formInputType: "text", required: false }], returnType: "object", returnDescription: "API response." },
93
+ batchRunReports: { description: "batchRunReports", parameters: [{ name: "input", dataType: "string", description: "Input parameter", formInputType: "text", required: false }], returnType: "object", returnDescription: "API response." },
94
+ runPivotReport: { description: "runPivotReport", parameters: [{ name: "input", dataType: "string", description: "Input parameter", formInputType: "text", required: false }], returnType: "object", returnDescription: "API response." },
95
+ getMetadata: { description: "getMetadata", parameters: [{ name: "input", dataType: "string", description: "Input parameter", formInputType: "text", required: false }], returnType: "object", returnDescription: "API response." },
96
+ listProperties: { description: "listProperties", parameters: [{ name: "input", dataType: "string", description: "Input parameter", formInputType: "text", required: false }], returnType: "object", returnDescription: "API response." },
97
+ getProperty: { description: "getProperty", parameters: [{ name: "input", dataType: "string", description: "Input parameter", formInputType: "text", required: false }], returnType: "object", returnDescription: "API response." },
98
+ listAccounts: { description: "listAccounts", parameters: [{ name: "input", dataType: "string", description: "Input parameter", formInputType: "text", required: false }], returnType: "object", returnDescription: "API response." },
99
+ getActiveUsers: { description: "getActiveUsers", parameters: [{ name: "input", dataType: "string", description: "Input parameter", formInputType: "text", required: false }], returnType: "object", returnDescription: "API response." },
100
+ getPageViews: { description: "getPageViews", parameters: [{ name: "input", dataType: "string", description: "Input parameter", formInputType: "text", required: false }], returnType: "object", returnDescription: "API response." },
101
+ getTopPages: { description: "getTopPages", parameters: [{ name: "input", dataType: "string", description: "Input parameter", formInputType: "text", required: false }], returnType: "object", returnDescription: "API response." },
102
+ getTrafficSources: { description: "getTrafficSources", parameters: [{ name: "input", dataType: "string", description: "Input parameter", formInputType: "text", required: false }], returnType: "object", returnDescription: "API response." },
103
+ getUserDemographics: { description: "getUserDemographics", parameters: [{ name: "input", dataType: "string", description: "Input parameter", formInputType: "text", required: false }], returnType: "object", returnDescription: "API response." },
104
+ getConversions: { description: "getConversions", parameters: [{ name: "input", dataType: "string", description: "Input parameter", formInputType: "text", required: false }], returnType: "object", returnDescription: "API response." },
105
+ };
106
+ export const GoogleAnalyticsModuleMetadata = {
107
+ description: "Google Analytics GA4 — reports, dimensions, metrics, and real-time data.",
108
+ methods: Object.keys(GoogleAnalyticsFunctions),
109
+ category: "analytics",
110
+ };
111
+ //# sourceMappingURL=google-analytics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"google-analytics.js","sourceRoot":"","sources":["../src/google-analytics.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { ModuleAdapter } from "@wiredwp/robinpath";
2
+ declare const GoogleAnalyticsModule: ModuleAdapter;
3
+ export default GoogleAnalyticsModule;
4
+ export { GoogleAnalyticsModule };
5
+ export { GoogleAnalyticsFunctions, GoogleAnalyticsFunctionMetadata, GoogleAnalyticsModuleMetadata } from "./google-analytics.js";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,QAAA,MAAM,qBAAqB,EAAE,aAM5B,CAAC;AAEF,eAAe,qBAAqB,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,CAAC;AACjC,OAAO,EAAE,wBAAwB,EAAE,+BAA+B,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,12 @@
1
+ import { GoogleAnalyticsFunctions, GoogleAnalyticsFunctionMetadata, GoogleAnalyticsModuleMetadata } from "./google-analytics.js";
2
+ const GoogleAnalyticsModule = {
3
+ name: "google-analytics",
4
+ functions: GoogleAnalyticsFunctions,
5
+ functionMetadata: GoogleAnalyticsFunctionMetadata,
6
+ moduleMetadata: GoogleAnalyticsModuleMetadata,
7
+ global: false,
8
+ }; // as ModuleAdapter
9
+ export default GoogleAnalyticsModule;
10
+ export { GoogleAnalyticsModule };
11
+ export { GoogleAnalyticsFunctions, GoogleAnalyticsFunctionMetadata, GoogleAnalyticsModuleMetadata } from "./google-analytics.js";
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,+BAA+B,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AAEjI,MAAM,qBAAqB,GAAkB;IAC3C,IAAI,EAAE,kBAAkB;IACxB,SAAS,EAAE,wBAAwB;IACnC,gBAAgB,EAAE,+BAAsC;IACxD,cAAc,EAAE,6BAAoC;IACpD,MAAM,EAAE,KAAK;CACd,CAAC,CAAC,mBAAmB;AAEtB,eAAe,qBAAqB,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,CAAC;AACjC,OAAO,EAAE,wBAAwB,EAAE,+BAA+B,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC"}
package/package.json ADDED
@@ -0,0 +1,29 @@
1
+ {
2
+ "name": "@robinpath/google-analytics",
3
+ "version": "0.1.0",
4
+ "publishConfig": {
5
+ "access": "public"
6
+ },
7
+ "type": "module",
8
+ "main": "dist/index.js",
9
+ "types": "dist/index.d.ts",
10
+ "exports": {
11
+ ".": {
12
+ "import": "./dist/index.js",
13
+ "types": "./dist/index.d.ts"
14
+ }
15
+ },
16
+ "files": [
17
+ "dist"
18
+ ],
19
+ "scripts": {
20
+ "build": "tsc"
21
+ },
22
+ "peerDependencies": {
23
+ "@wiredwp/robinpath": ">=0.20.0"
24
+ },
25
+ "devDependencies": {
26
+ "@wiredwp/robinpath": "^0.30.1",
27
+ "typescript": "^5.6.0"
28
+ }
29
+ }