@happyvertical/smrt-analytics 0.55.6 → 0.55.8
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/AGENTS.md +29 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +100 -78
- package/dist/index.js.map +1 -1
- package/dist/manifest.json +258 -26
- package/dist/models/AnalyticsProperty.d.ts.map +1 -1
- package/dist/models/AnalyticsReport.d.ts.map +1 -1
- package/dist/recipes.d.ts +98 -0
- package/dist/recipes.d.ts.map +1 -0
- package/dist/smrt-knowledge.json +195 -27
- package/package.json +9 -8
package/dist/manifest.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"version": "1.0.0",
|
|
3
3
|
"timestamp": 0,
|
|
4
4
|
"packageName": "@happyvertical/smrt-analytics",
|
|
5
|
-
"packageVersion": "0.55.
|
|
5
|
+
"packageVersion": "0.55.8",
|
|
6
6
|
"objects": {
|
|
7
7
|
"@happyvertical/smrt-analytics:AnalyticsDataStreamCollection": {
|
|
8
8
|
"name": "analyticsdatastreamcollection",
|
|
@@ -1295,6 +1295,7 @@
|
|
|
1295
1295
|
"className": "AnalyticsDataStream",
|
|
1296
1296
|
"qualifiedName": "@happyvertical/smrt-analytics:AnalyticsDataStream",
|
|
1297
1297
|
"collection": "analyticsdatastreams",
|
|
1298
|
+
"description": "AnalyticsDataStream represents a data stream (web, iOS, Android) for an analytics property.",
|
|
1298
1299
|
"filePath": "/home/runner/work/smrt/smrt/packages/analytics/src/models/AnalyticsDataStream.ts",
|
|
1299
1300
|
"packageName": "@happyvertical/smrt-analytics",
|
|
1300
1301
|
"fields": {
|
|
@@ -1604,6 +1605,7 @@
|
|
|
1604
1605
|
"className": "AnalyticsEvent",
|
|
1605
1606
|
"qualifiedName": "@happyvertical/smrt-analytics:AnalyticsEvent",
|
|
1606
1607
|
"collection": "analyticsevents",
|
|
1608
|
+
"description": "AnalyticsEvent represents a tracked analytics event (server-side tracking log).",
|
|
1607
1609
|
"filePath": "/home/runner/work/smrt/smrt/packages/analytics/src/models/AnalyticsEvent.ts",
|
|
1608
1610
|
"packageName": "@happyvertical/smrt-analytics",
|
|
1609
1611
|
"fields": {
|
|
@@ -2037,6 +2039,7 @@
|
|
|
2037
2039
|
"className": "AnalyticsProperty",
|
|
2038
2040
|
"qualifiedName": "@happyvertical/smrt-analytics:AnalyticsProperty",
|
|
2039
2041
|
"collection": "analyticsproperties",
|
|
2042
|
+
"description": "AnalyticsProperty represents an analytics property (GA4 property, Plausible site, or Matomo site).",
|
|
2040
2043
|
"filePath": "/home/runner/work/smrt/smrt/packages/analytics/src/models/AnalyticsProperty.ts",
|
|
2041
2044
|
"packageName": "@happyvertical/smrt-analytics",
|
|
2042
2045
|
"fields": {
|
|
@@ -2074,11 +2077,19 @@
|
|
|
2074
2077
|
"displayName": {
|
|
2075
2078
|
"type": "text",
|
|
2076
2079
|
"required": false,
|
|
2077
|
-
"default": ""
|
|
2080
|
+
"default": "",
|
|
2081
|
+
"description": "The name people see for this website or app.",
|
|
2082
|
+
"_meta": {
|
|
2083
|
+
"description": "The name people see for this website or app."
|
|
2084
|
+
}
|
|
2078
2085
|
},
|
|
2079
2086
|
"provider": {
|
|
2080
2087
|
"type": "text",
|
|
2081
2088
|
"required": false,
|
|
2089
|
+
"description": "Which analytics service tracks it: Google Analytics 4, Plausible or Matomo.",
|
|
2090
|
+
"_meta": {
|
|
2091
|
+
"description": "Which analytics service tracks it: Google Analytics 4, Plausible or Matomo."
|
|
2092
|
+
},
|
|
2082
2093
|
"enum": [
|
|
2083
2094
|
"ga4",
|
|
2084
2095
|
"plausible",
|
|
@@ -2088,36 +2099,58 @@
|
|
|
2088
2099
|
"externalId": {
|
|
2089
2100
|
"type": "text",
|
|
2090
2101
|
"required": false,
|
|
2091
|
-
"default": ""
|
|
2102
|
+
"default": "",
|
|
2103
|
+
"description": "The id the analytics service gives the property, such as properties/123456789 or a Matomo site id.",
|
|
2104
|
+
"_meta": {
|
|
2105
|
+
"description": "The id the analytics service gives the property, such as properties/123456789 or a Matomo site id."
|
|
2106
|
+
}
|
|
2092
2107
|
},
|
|
2093
2108
|
"measurementId": {
|
|
2094
2109
|
"type": "text",
|
|
2095
2110
|
"required": false,
|
|
2096
|
-
"default": ""
|
|
2111
|
+
"default": "",
|
|
2112
|
+
"description": "The tracking id for a web stream, such as G-XXXXXXXXXX.",
|
|
2113
|
+
"_meta": {
|
|
2114
|
+
"description": "The tracking id for a web stream, such as G-XXXXXXXXXX."
|
|
2115
|
+
}
|
|
2097
2116
|
},
|
|
2098
2117
|
"apiSecret": {
|
|
2099
2118
|
"type": "text",
|
|
2100
2119
|
"required": false,
|
|
2101
2120
|
"default": "",
|
|
2121
|
+
"description": "The secret key your analytics service issues for this property. It is kept out of responses and tool results, but it is not encrypted in the database.",
|
|
2102
2122
|
"_meta": {
|
|
2103
|
-
"sensitive": true
|
|
2123
|
+
"sensitive": true,
|
|
2124
|
+
"description": "The secret key your analytics service issues for this property. It is kept out of responses and tool results, but it is not encrypted in the database."
|
|
2104
2125
|
},
|
|
2105
2126
|
"sensitive": true
|
|
2106
2127
|
},
|
|
2107
2128
|
"siteDomain": {
|
|
2108
2129
|
"type": "text",
|
|
2109
2130
|
"required": false,
|
|
2110
|
-
"default": ""
|
|
2131
|
+
"default": "",
|
|
2132
|
+
"description": "The website address, used by Plausible and Matomo.",
|
|
2133
|
+
"_meta": {
|
|
2134
|
+
"description": "The website address, used by Plausible and Matomo."
|
|
2135
|
+
}
|
|
2111
2136
|
},
|
|
2112
2137
|
"timeZone": {
|
|
2113
2138
|
"type": "text",
|
|
2114
2139
|
"required": false,
|
|
2115
|
-
"default": "America/Los_Angeles"
|
|
2140
|
+
"default": "America/Los_Angeles",
|
|
2141
|
+
"description": "The time zone the figures are reported in.",
|
|
2142
|
+
"_meta": {
|
|
2143
|
+
"description": "The time zone the figures are reported in."
|
|
2144
|
+
}
|
|
2116
2145
|
},
|
|
2117
2146
|
"currencyCode": {
|
|
2118
2147
|
"type": "text",
|
|
2119
2148
|
"required": false,
|
|
2120
|
-
"default": "USD"
|
|
2149
|
+
"default": "USD",
|
|
2150
|
+
"description": "The currency used for revenue figures, such as USD.",
|
|
2151
|
+
"_meta": {
|
|
2152
|
+
"description": "The currency used for revenue figures, such as USD."
|
|
2153
|
+
}
|
|
2121
2154
|
},
|
|
2122
2155
|
"industryCategory": {
|
|
2123
2156
|
"type": "text",
|
|
@@ -2132,6 +2165,10 @@
|
|
|
2132
2165
|
"status": {
|
|
2133
2166
|
"type": "text",
|
|
2134
2167
|
"required": false,
|
|
2168
|
+
"description": "Whether tracking is active, inactive or still being set up.",
|
|
2169
|
+
"_meta": {
|
|
2170
|
+
"description": "Whether tracking is active, inactive or still being set up."
|
|
2171
|
+
},
|
|
2135
2172
|
"enum": [
|
|
2136
2173
|
"active",
|
|
2137
2174
|
"inactive",
|
|
@@ -2140,14 +2177,20 @@
|
|
|
2140
2177
|
},
|
|
2141
2178
|
"lastSyncAt": {
|
|
2142
2179
|
"type": "datetime",
|
|
2143
|
-
"required": false
|
|
2180
|
+
"required": false,
|
|
2181
|
+
"description": "When the property was last synced with the analytics service.",
|
|
2182
|
+
"_meta": {
|
|
2183
|
+
"description": "When the property was last synced with the analytics service."
|
|
2184
|
+
}
|
|
2144
2185
|
},
|
|
2145
2186
|
"providerMetadata": {
|
|
2146
2187
|
"type": "text",
|
|
2147
2188
|
"required": false,
|
|
2148
2189
|
"default": "{}",
|
|
2190
|
+
"description": "Extra connection details from your analytics service. They are kept out of responses and tool results, but they are not encrypted in the database.",
|
|
2149
2191
|
"_meta": {
|
|
2150
|
-
"sensitive": true
|
|
2192
|
+
"sensitive": true,
|
|
2193
|
+
"description": "Extra connection details from your analytics service. They are kept out of responses and tool results, but they are not encrypted in the database."
|
|
2151
2194
|
},
|
|
2152
2195
|
"sensitive": true
|
|
2153
2196
|
}
|
|
@@ -2413,6 +2456,7 @@
|
|
|
2413
2456
|
"className": "AnalyticsReport",
|
|
2414
2457
|
"qualifiedName": "@happyvertical/smrt-analytics:AnalyticsReport",
|
|
2415
2458
|
"collection": "analyticsreports",
|
|
2459
|
+
"description": "AnalyticsReport represents a saved report configuration with optional scheduling.",
|
|
2416
2460
|
"filePath": "/home/runner/work/smrt/smrt/packages/analytics/src/models/AnalyticsReport.ts",
|
|
2417
2461
|
"packageName": "@happyvertical/smrt-analytics",
|
|
2418
2462
|
"fields": {
|
|
@@ -2445,37 +2489,64 @@
|
|
|
2445
2489
|
"propertyId": {
|
|
2446
2490
|
"type": "foreignKey",
|
|
2447
2491
|
"required": false,
|
|
2448
|
-
"related": "AnalyticsProperty"
|
|
2492
|
+
"related": "AnalyticsProperty",
|
|
2493
|
+
"_meta": {
|
|
2494
|
+
"description": "The website or app this report is about."
|
|
2495
|
+
}
|
|
2449
2496
|
},
|
|
2450
2497
|
"name": {
|
|
2451
2498
|
"type": "text",
|
|
2452
2499
|
"required": false,
|
|
2453
|
-
"default": ""
|
|
2500
|
+
"default": "",
|
|
2501
|
+
"description": "A short name for the report, such as Weekly traffic.",
|
|
2502
|
+
"_meta": {
|
|
2503
|
+
"description": "A short name for the report, such as Weekly traffic."
|
|
2504
|
+
}
|
|
2454
2505
|
},
|
|
2455
2506
|
"description": {
|
|
2456
2507
|
"type": "text",
|
|
2457
2508
|
"required": false,
|
|
2458
|
-
"default": ""
|
|
2509
|
+
"default": "",
|
|
2510
|
+
"description": "What the report is for.",
|
|
2511
|
+
"_meta": {
|
|
2512
|
+
"description": "What the report is for."
|
|
2513
|
+
}
|
|
2459
2514
|
},
|
|
2460
2515
|
"dimensions": {
|
|
2461
2516
|
"type": "text",
|
|
2462
2517
|
"required": false,
|
|
2463
|
-
"default": "[]"
|
|
2518
|
+
"default": "[]",
|
|
2519
|
+
"description": "What to break the figures down by, such as country or device, as a list.",
|
|
2520
|
+
"_meta": {
|
|
2521
|
+
"description": "What to break the figures down by, such as country or device, as a list."
|
|
2522
|
+
}
|
|
2464
2523
|
},
|
|
2465
2524
|
"metrics": {
|
|
2466
2525
|
"type": "text",
|
|
2467
2526
|
"required": false,
|
|
2468
|
-
"default": "[]"
|
|
2527
|
+
"default": "[]",
|
|
2528
|
+
"description": "What to count, such as active users or sessions, as a list.",
|
|
2529
|
+
"_meta": {
|
|
2530
|
+
"description": "What to count, such as active users or sessions, as a list."
|
|
2531
|
+
}
|
|
2469
2532
|
},
|
|
2470
2533
|
"dateRangeStart": {
|
|
2471
2534
|
"type": "text",
|
|
2472
2535
|
"required": false,
|
|
2473
|
-
"default": "7daysAgo"
|
|
2536
|
+
"default": "7daysAgo",
|
|
2537
|
+
"description": "Where the period begins: a date, or a relative value such as 7daysAgo.",
|
|
2538
|
+
"_meta": {
|
|
2539
|
+
"description": "Where the period begins: a date, or a relative value such as 7daysAgo."
|
|
2540
|
+
}
|
|
2474
2541
|
},
|
|
2475
2542
|
"dateRangeEnd": {
|
|
2476
2543
|
"type": "text",
|
|
2477
2544
|
"required": false,
|
|
2478
|
-
"default": "today"
|
|
2545
|
+
"default": "today",
|
|
2546
|
+
"description": "Where the period ends: a date, or a relative value such as today.",
|
|
2547
|
+
"_meta": {
|
|
2548
|
+
"description": "Where the period ends: a date, or a relative value such as today."
|
|
2549
|
+
}
|
|
2479
2550
|
},
|
|
2480
2551
|
"dimensionFilter": {
|
|
2481
2552
|
"type": "text",
|
|
@@ -2500,6 +2571,10 @@
|
|
|
2500
2571
|
"status": {
|
|
2501
2572
|
"type": "text",
|
|
2502
2573
|
"required": false,
|
|
2574
|
+
"description": "Where the report stands: draft, scheduled, running, completed or failed.",
|
|
2575
|
+
"_meta": {
|
|
2576
|
+
"description": "Where the report stands: draft, scheduled, running, completed or failed."
|
|
2577
|
+
},
|
|
2503
2578
|
"enum": [
|
|
2504
2579
|
"draft",
|
|
2505
2580
|
"scheduled",
|
|
@@ -2511,6 +2586,10 @@
|
|
|
2511
2586
|
"frequency": {
|
|
2512
2587
|
"type": "text",
|
|
2513
2588
|
"required": false,
|
|
2589
|
+
"description": "How often the report repeats: once, daily, weekly or monthly.",
|
|
2590
|
+
"_meta": {
|
|
2591
|
+
"description": "How often the report repeats: once, daily, weekly or monthly."
|
|
2592
|
+
},
|
|
2514
2593
|
"enum": [
|
|
2515
2594
|
"once",
|
|
2516
2595
|
"daily",
|
|
@@ -2520,11 +2599,19 @@
|
|
|
2520
2599
|
},
|
|
2521
2600
|
"lastRunAt": {
|
|
2522
2601
|
"type": "datetime",
|
|
2523
|
-
"required": false
|
|
2602
|
+
"required": false,
|
|
2603
|
+
"description": "When the report last ran.",
|
|
2604
|
+
"_meta": {
|
|
2605
|
+
"description": "When the report last ran."
|
|
2606
|
+
}
|
|
2524
2607
|
},
|
|
2525
2608
|
"nextRunAt": {
|
|
2526
2609
|
"type": "datetime",
|
|
2527
|
-
"required": false
|
|
2610
|
+
"required": false,
|
|
2611
|
+
"description": "When the report is next due to run.",
|
|
2612
|
+
"_meta": {
|
|
2613
|
+
"description": "When the report is next due to run."
|
|
2614
|
+
}
|
|
2528
2615
|
},
|
|
2529
2616
|
"resultData": {
|
|
2530
2617
|
"type": "text",
|
|
@@ -2534,12 +2621,20 @@
|
|
|
2534
2621
|
"rowCount": {
|
|
2535
2622
|
"type": "integer",
|
|
2536
2623
|
"required": false,
|
|
2537
|
-
"default": 0
|
|
2624
|
+
"default": 0,
|
|
2625
|
+
"description": "How many rows the last run returned.",
|
|
2626
|
+
"_meta": {
|
|
2627
|
+
"description": "How many rows the last run returned."
|
|
2628
|
+
}
|
|
2538
2629
|
},
|
|
2539
2630
|
"lastError": {
|
|
2540
2631
|
"type": "text",
|
|
2541
2632
|
"required": false,
|
|
2542
|
-
"default": ""
|
|
2633
|
+
"default": "",
|
|
2634
|
+
"description": "Why the last run failed. Empty when it worked.",
|
|
2635
|
+
"_meta": {
|
|
2636
|
+
"description": "Why the last run failed. Empty when it worked."
|
|
2637
|
+
}
|
|
2543
2638
|
}
|
|
2544
2639
|
},
|
|
2545
2640
|
"methods": {
|
|
@@ -2697,16 +2792,13 @@
|
|
|
2697
2792
|
"list",
|
|
2698
2793
|
"get",
|
|
2699
2794
|
"create",
|
|
2700
|
-
"update"
|
|
2701
|
-
"run"
|
|
2795
|
+
"update"
|
|
2702
2796
|
]
|
|
2703
2797
|
},
|
|
2704
2798
|
"mcp": {
|
|
2705
2799
|
"include": [
|
|
2706
2800
|
"list",
|
|
2707
|
-
"get"
|
|
2708
|
-
"run",
|
|
2709
|
-
"analyze"
|
|
2801
|
+
"get"
|
|
2710
2802
|
]
|
|
2711
2803
|
},
|
|
2712
2804
|
"cli": {
|
|
@@ -2899,10 +2991,150 @@
|
|
|
2899
2991
|
}
|
|
2900
2992
|
},
|
|
2901
2993
|
"moduleType": "smrt",
|
|
2994
|
+
"recipes": [
|
|
2995
|
+
{
|
|
2996
|
+
"id": "analytics.reports",
|
|
2997
|
+
"className": "AnalyticsReportsRecipe",
|
|
2998
|
+
"label": "Analytics",
|
|
2999
|
+
"summary": "Save traffic reports for your websites and apps and get a plain-language read on the results.",
|
|
3000
|
+
"synonyms": [
|
|
3001
|
+
"analytics",
|
|
3002
|
+
"traffic",
|
|
3003
|
+
"pageviews",
|
|
3004
|
+
"visitors",
|
|
3005
|
+
"web stats",
|
|
3006
|
+
"google analytics",
|
|
3007
|
+
"plausible",
|
|
3008
|
+
"matomo"
|
|
3009
|
+
],
|
|
3010
|
+
"models": [
|
|
3011
|
+
"@happyvertical/smrt-analytics:AnalyticsProperty",
|
|
3012
|
+
"@happyvertical/smrt-analytics:AnalyticsReport"
|
|
3013
|
+
],
|
|
3014
|
+
"nav": [
|
|
3015
|
+
{
|
|
3016
|
+
"label": "Analytics properties",
|
|
3017
|
+
"model": "@happyvertical/smrt-analytics:AnalyticsProperty",
|
|
3018
|
+
"icon": "home",
|
|
3019
|
+
"description": "The websites and apps you track, and who tracks them."
|
|
3020
|
+
},
|
|
3021
|
+
{
|
|
3022
|
+
"label": "Analytics reports",
|
|
3023
|
+
"model": "@happyvertical/smrt-analytics:AnalyticsReport",
|
|
3024
|
+
"icon": "fileText",
|
|
3025
|
+
"description": "Saved reports, how often they run and what they found."
|
|
3026
|
+
}
|
|
3027
|
+
],
|
|
3028
|
+
"requires": [],
|
|
3029
|
+
"section": {
|
|
3030
|
+
"id": "analytics",
|
|
3031
|
+
"label": "Analytics",
|
|
3032
|
+
"icon": "layers",
|
|
3033
|
+
"description": "How your websites and apps are doing."
|
|
3034
|
+
},
|
|
3035
|
+
"options": {
|
|
3036
|
+
"@happyvertical/smrt-analytics:AnalyticsProperty": {
|
|
3037
|
+
"fields": {
|
|
3038
|
+
"name": {
|
|
3039
|
+
"visibility": "hidden"
|
|
3040
|
+
},
|
|
3041
|
+
"industryCategory": {
|
|
3042
|
+
"visibility": "advanced"
|
|
3043
|
+
},
|
|
3044
|
+
"serviceLevel": {
|
|
3045
|
+
"visibility": "advanced"
|
|
3046
|
+
},
|
|
3047
|
+
"lastSyncAt": {
|
|
3048
|
+
"locked": true
|
|
3049
|
+
}
|
|
3050
|
+
}
|
|
3051
|
+
},
|
|
3052
|
+
"@happyvertical/smrt-analytics:AnalyticsReport": {
|
|
3053
|
+
"fields": {
|
|
3054
|
+
"dimensionFilter": {
|
|
3055
|
+
"visibility": "advanced"
|
|
3056
|
+
},
|
|
3057
|
+
"metricFilter": {
|
|
3058
|
+
"visibility": "advanced"
|
|
3059
|
+
},
|
|
3060
|
+
"orderBy": {
|
|
3061
|
+
"visibility": "advanced"
|
|
3062
|
+
},
|
|
3063
|
+
"maxResults": {
|
|
3064
|
+
"visibility": "advanced"
|
|
3065
|
+
},
|
|
3066
|
+
"resultData": {
|
|
3067
|
+
"visibility": "hidden",
|
|
3068
|
+
"locked": true
|
|
3069
|
+
},
|
|
3070
|
+
"rowCount": {
|
|
3071
|
+
"locked": true
|
|
3072
|
+
},
|
|
3073
|
+
"lastRunAt": {
|
|
3074
|
+
"locked": true
|
|
3075
|
+
},
|
|
3076
|
+
"nextRunAt": {
|
|
3077
|
+
"locked": true
|
|
3078
|
+
},
|
|
3079
|
+
"lastError": {
|
|
3080
|
+
"locked": true
|
|
3081
|
+
}
|
|
3082
|
+
}
|
|
3083
|
+
}
|
|
3084
|
+
},
|
|
3085
|
+
"help": {
|
|
3086
|
+
"markdown": "## Overview\n\nAnalytics keeps the traffic reports you care about for your websites and apps.\nAdd a property for each site or app you track in Google Analytics 4, Plausible\nor Matomo. Save a report on it that says what to count, what to break the\nfigures down by, and over which dates. The rows each run returns are stored\nwith the report, and the assistant can read them back to you in plain words.\n\nProperties and reports are kept on your server. Provider secrets are stored on\nthe property and never sent to the assistant or returned in responses, but they\nare not encrypted in the database.\n\n## Tasks\n\n### Add a property\n\n1. Create a new property.\n2. Enter the **{field:AnalyticsProperty.displayName}** and pick the\n **{field:AnalyticsProperty.provider}**.\n3. Enter the **{field:AnalyticsProperty.externalId}** the analytics service\n gives it.\n4. For Google Analytics, enter the **{field:AnalyticsProperty.measurementId}**.\n For Plausible or Matomo, enter the **{field:AnalyticsProperty.siteDomain}**.\n5. Keep **{field:AnalyticsProperty.status}** on active while you want it\n tracked.\n\n### Save a report\n\n1. Create a new report and choose the property in\n **{field:AnalyticsReport.propertyId}**.\n2. Give it a **{field:AnalyticsReport.name}**.\n3. List what to break the figures down by in\n **{field:AnalyticsReport.dimensions}** and what to count in\n **{field:AnalyticsReport.metrics}**.\n4. Set the period with **{field:AnalyticsReport.dateRangeStart}** and\n **{field:AnalyticsReport.dateRangeEnd}**.\n5. Pick **{field:AnalyticsReport.frequency}** to repeat it daily, weekly or\n monthly.\n\n### Check what a report found\n\n1. **{field:AnalyticsReport.status}** says where the report stands, and\n **{field:AnalyticsReport.lastRunAt}** when it last ran.\n2. **{field:AnalyticsReport.rowCount}** shows how many rows came back.\n3. If a run failed, **{field:AnalyticsReport.lastError}** says why.\n\n### Ask the assistant\n\n1. Ask about a saved report by name, for example \"how did last week's traffic\n report look?\". When your app has the analytics tools switched on, the\n assistant can list your saved reports and open one to read its figures.\n2. A written summary of a report comes from your app, which sends the stored\n rows to the AI provider as they are. Leave out dimensions that identify a\n person.\n3. For totals your own app calculates, such as orders or signups, ask for a\n refreshed report. The assistant reads those with `reports.query`; see\n Reports.\n4. For a one-off question those reports do not answer, the assistant can\n propose a report with `reports.runtime.define`. Nothing is saved until you\n confirm it.\n",
|
|
3087
|
+
"fieldRefs": [
|
|
3088
|
+
"AnalyticsProperty.displayName",
|
|
3089
|
+
"AnalyticsProperty.externalId",
|
|
3090
|
+
"AnalyticsProperty.measurementId",
|
|
3091
|
+
"AnalyticsProperty.provider",
|
|
3092
|
+
"AnalyticsProperty.siteDomain",
|
|
3093
|
+
"AnalyticsProperty.status",
|
|
3094
|
+
"AnalyticsReport.dateRangeEnd",
|
|
3095
|
+
"AnalyticsReport.dateRangeStart",
|
|
3096
|
+
"AnalyticsReport.dimensions",
|
|
3097
|
+
"AnalyticsReport.frequency",
|
|
3098
|
+
"AnalyticsReport.lastError",
|
|
3099
|
+
"AnalyticsReport.lastRunAt",
|
|
3100
|
+
"AnalyticsReport.metrics",
|
|
3101
|
+
"AnalyticsReport.name",
|
|
3102
|
+
"AnalyticsReport.propertyId",
|
|
3103
|
+
"AnalyticsReport.rowCount",
|
|
3104
|
+
"AnalyticsReport.status"
|
|
3105
|
+
]
|
|
3106
|
+
},
|
|
3107
|
+
"surfaces": [
|
|
3108
|
+
{
|
|
3109
|
+
"kind": "route",
|
|
3110
|
+
"path": "/analytics/summary",
|
|
3111
|
+
"export": "@happyvertical/smrt-analytics/svelte#AnalyticsSummary",
|
|
3112
|
+
"label": "Traffic summary"
|
|
3113
|
+
}
|
|
3114
|
+
],
|
|
3115
|
+
"runtime": "server",
|
|
3116
|
+
"demo": {
|
|
3117
|
+
"mode": "server",
|
|
3118
|
+
"reasons": [
|
|
3119
|
+
"The recipe declares runtime \"server\".",
|
|
3120
|
+
"Needs a server because its package depends on @happyvertical/smrt-tenancy, which do not build for a browser (#3624)."
|
|
3121
|
+
]
|
|
3122
|
+
}
|
|
3123
|
+
}
|
|
3124
|
+
],
|
|
2902
3125
|
"smrtDependencies": [
|
|
2903
3126
|
"@happyvertical/smrt-core",
|
|
2904
3127
|
"@happyvertical/smrt-prompts",
|
|
2905
3128
|
"@happyvertical/smrt-tenancy"
|
|
2906
3129
|
],
|
|
3130
|
+
"browser": {
|
|
3131
|
+
"status": "server-only",
|
|
3132
|
+
"issues": [
|
|
3133
|
+
"#3624"
|
|
3134
|
+
],
|
|
3135
|
+
"via": [
|
|
3136
|
+
"@happyvertical/smrt-tenancy"
|
|
3137
|
+
]
|
|
3138
|
+
},
|
|
2907
3139
|
"stampsConstructors": true
|
|
2908
3140
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AnalyticsProperty.d.ts","sourceRoot":"","sources":["../../src/models/AnalyticsProperty.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEL,UAAU,EACV,KAAK,iBAAiB,EAEvB,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE/E;;GAEG;AACH,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;IACjE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACjC,UAAU,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAOa,iBAAkB,SAAQ,UAAU;IAC/C;;;;;;;;OAQG;IAEH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE/B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAM;IAElB;;OAEG;
|
|
1
|
+
{"version":3,"file":"AnalyticsProperty.d.ts","sourceRoot":"","sources":["../../src/models/AnalyticsProperty.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEL,UAAU,EACV,KAAK,iBAAiB,EAEvB,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE/E;;GAEG;AACH,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;IACjE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACjC,UAAU,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAOa,iBAAkB,SAAQ,UAAU;IAC/C;;;;;;;;OAQG;IAEH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE/B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAM;IAElB;;OAEG;IAEH,WAAW,EAAE,MAAM,CAAM;IAEzB;;OAEG;IAKH,QAAQ,EAAE,iBAAiB,CAAyB;IAEpD;;;OAGG;IAKH,UAAU,EAAE,MAAM,CAAM;IAExB;;OAEG;IAIH,aAAa,EAAE,MAAM,CAAM;IAE3B;;;;;OAKG;IAMH,SAAS,EAAE,MAAM,CAAM;IAEvB;;OAEG;IAEH,UAAU,EAAE,MAAM,CAAM;IAExB;;OAEG;IAEH,QAAQ,EAAE,MAAM,CAAyB;IAEzC;;OAEG;IAIH,YAAY,EAAE,MAAM,CAAS;IAE7B;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAM;IAE9B;;OAEG;IACH,YAAY,EAAE,MAAM,CAAc;IAElC;;OAEG;IAIH,MAAM,EAAE,uBAAuB,CAAkC;IAEjE;;OAEG;IAKH,UAAU,EAAE,IAAI,GAAG,IAAI,CAAQ;IAE/B;;;;;OAKG;IAMH,gBAAgB,EAAE,MAAM,CAAQ;gBAEpB,OAAO,GAAE,wBAA6B;IAyBlD;;OAEG;IACH,KAAK,IAAI,OAAO;IAIhB;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;OAEG;IACH,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAQ9C;;OAEG;IACH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI5D;;OAEG;IACH,UAAU,IAAI,IAAI;IAIlB;;;;;;;;;;;OAWG;IACG,kBAAkB,CAAC,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC;QACnE,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IA2CF;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC;CAe3C;AAED,eAAe,iBAAiB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AnalyticsReport.d.ts","sourceRoot":"","sources":["../../src/models/AnalyticsReport.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"AnalyticsReport.d.ts","sourceRoot":"","sources":["../../src/models/AnalyticsReport.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Declared recipes for smrt-analytics (#3719): user-facing units of
|
|
3
|
+
* functionality an app or agent can pick instead of the whole package.
|
|
4
|
+
* The scanner reads these statics into the `recipes` array of `manifest.json`
|
|
5
|
+
* and `smrt-knowledge.json`; nothing here runs at that point.
|
|
6
|
+
*
|
|
7
|
+
* `analytics.reports` covers properties and saved reports. Event tracking
|
|
8
|
+
* (`AnalyticsEvent`) and data streams are separate concerns and are left out.
|
|
9
|
+
*
|
|
10
|
+
* @packageDocumentation
|
|
11
|
+
*/
|
|
12
|
+
import { SmrtRecipe } from '@happyvertical/smrt-core';
|
|
13
|
+
import { AnalyticsProperty } from './models/AnalyticsProperty.js';
|
|
14
|
+
import { AnalyticsReport } from './models/AnalyticsReport.js';
|
|
15
|
+
/** Analytics reports: saved traffic reports and an AI read on the results. */
|
|
16
|
+
export declare class AnalyticsReportsRecipe extends SmrtRecipe {
|
|
17
|
+
static id: string;
|
|
18
|
+
static help: string;
|
|
19
|
+
static label: string;
|
|
20
|
+
static summary: string;
|
|
21
|
+
static synonyms: string[];
|
|
22
|
+
static section: {
|
|
23
|
+
id: string;
|
|
24
|
+
label: string;
|
|
25
|
+
icon: string;
|
|
26
|
+
description: string;
|
|
27
|
+
};
|
|
28
|
+
static models: (typeof AnalyticsProperty | typeof AnalyticsReport)[];
|
|
29
|
+
static runtime: "server";
|
|
30
|
+
static surfaces: readonly [{
|
|
31
|
+
readonly kind: "route";
|
|
32
|
+
readonly path: "/analytics/summary";
|
|
33
|
+
readonly export: "@happyvertical/smrt-analytics/svelte#AnalyticsSummary";
|
|
34
|
+
readonly label: "Traffic summary";
|
|
35
|
+
}];
|
|
36
|
+
static nav: ({
|
|
37
|
+
label: string;
|
|
38
|
+
model: typeof AnalyticsProperty;
|
|
39
|
+
icon: string;
|
|
40
|
+
description: string;
|
|
41
|
+
} | {
|
|
42
|
+
label: string;
|
|
43
|
+
model: typeof AnalyticsReport;
|
|
44
|
+
icon: string;
|
|
45
|
+
description: string;
|
|
46
|
+
})[];
|
|
47
|
+
static options: {
|
|
48
|
+
readonly AnalyticsProperty: {
|
|
49
|
+
readonly fields: {
|
|
50
|
+
readonly name: {
|
|
51
|
+
readonly visibility: "hidden";
|
|
52
|
+
};
|
|
53
|
+
readonly industryCategory: {
|
|
54
|
+
readonly visibility: "advanced";
|
|
55
|
+
};
|
|
56
|
+
readonly serviceLevel: {
|
|
57
|
+
readonly visibility: "advanced";
|
|
58
|
+
};
|
|
59
|
+
readonly lastSyncAt: {
|
|
60
|
+
readonly locked: true;
|
|
61
|
+
};
|
|
62
|
+
};
|
|
63
|
+
};
|
|
64
|
+
readonly AnalyticsReport: {
|
|
65
|
+
readonly fields: {
|
|
66
|
+
readonly dimensionFilter: {
|
|
67
|
+
readonly visibility: "advanced";
|
|
68
|
+
};
|
|
69
|
+
readonly metricFilter: {
|
|
70
|
+
readonly visibility: "advanced";
|
|
71
|
+
};
|
|
72
|
+
readonly orderBy: {
|
|
73
|
+
readonly visibility: "advanced";
|
|
74
|
+
};
|
|
75
|
+
readonly maxResults: {
|
|
76
|
+
readonly visibility: "advanced";
|
|
77
|
+
};
|
|
78
|
+
readonly resultData: {
|
|
79
|
+
readonly visibility: "hidden";
|
|
80
|
+
readonly locked: true;
|
|
81
|
+
};
|
|
82
|
+
readonly rowCount: {
|
|
83
|
+
readonly locked: true;
|
|
84
|
+
};
|
|
85
|
+
readonly lastRunAt: {
|
|
86
|
+
readonly locked: true;
|
|
87
|
+
};
|
|
88
|
+
readonly nextRunAt: {
|
|
89
|
+
readonly locked: true;
|
|
90
|
+
};
|
|
91
|
+
readonly lastError: {
|
|
92
|
+
readonly locked: true;
|
|
93
|
+
};
|
|
94
|
+
};
|
|
95
|
+
};
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=recipes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recipes.d.ts","sourceRoot":"","sources":["../src/recipes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,8EAA8E;AAC9E,qBAAa,sBAAuB,SAAQ,UAAU;IACpD,MAAM,CAAC,EAAE,SAAuB;IAChC,MAAM,CAAC,IAAI,SAAyB;IACpC,MAAM,CAAC,KAAK,SAAe;IAC3B,MAAM,CAAC,OAAO,SACoF;IAClG,MAAM,CAAC,QAAQ,WASb;IACF,MAAM,CAAC,OAAO;;;;;MAKZ;IACF,MAAM,CAAC,MAAM,wDAAwC;IAIrD,MAAM,CAAC,OAAO,EAAG,QAAQ,CAAU;IAInC,MAAM,CAAC,QAAQ;;;;;OAOJ;IAGX,MAAM,CAAC,GAAG;;;;;;;;;;SAaR;IAIF,MAAM,CAAC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAsBH;CACZ"}
|