even better analytics config stuffs

This commit is contained in:
legop3
2026-06-17 21:14:22 -04:00
parent 6118033abc
commit 57c128ab4d
8 changed files with 153 additions and 136 deletions
+1
View File
@@ -21,3 +21,4 @@ webui/package-lock.json
!server/data/ !server/data/
!server/data/barcode-registry.json !server/data/barcode-registry.json
webui/src/config/analytics.jsx webui/src/config/analytics.jsx
webui/src/config/driverAnalytics.json
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -12,7 +12,7 @@
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" /> <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
<meta name="apple-mobile-web-app-title" content="Roomba Rover" /> <meta name="apple-mobile-web-app-title" content="Roomba Rover" />
<title>Roomba Rover</title> <title>Roomba Rover</title>
<script type="module" crossorigin src="/assets/index-Ba7BWqKj.js"></script> <script type="module" crossorigin src="/assets/index-CEC620cF.js"></script>
<link rel="stylesheet" crossorigin href="/assets/index-CjmiVAqR.css"> <link rel="stylesheet" crossorigin href="/assets/index-CjmiVAqR.css">
</head> </head>
<body> <body>
+1 -1
View File
@@ -1,6 +1,6 @@
// Main Application Shell // Main Application Shell
// Purpose: Composes the primary rover control interface and page-level layout. Scope: Orchestrates high-level panels, overlays, and feature modules for the default route. // Purpose: Composes the primary rover control interface and page-level layout. Scope: Orchestrates high-level panels, overlays, and feature modules for the default route.
import DriverAnalytics from './config/analytics.jsx'; import DriverAnalytics from './components/DriverAnalytics/index.jsx';
import { useCallback, useEffect, useMemo, useState } from 'react'; import { useCallback, useEffect, useMemo, useState } from 'react';
import TelemetryPanel from './components/TelemetryPanel/index.jsx'; import TelemetryPanel from './components/TelemetryPanel/index.jsx';
import PiHostStatsCard from './components/PiHostStatsCard/index.jsx'; import PiHostStatsCard from './components/PiHostStatsCard/index.jsx';
@@ -0,0 +1,16 @@
import { useEffect } from 'react';
import config from '../../config/driverAnalytics.json';
export default function DriverAnalytics() {
useEffect(() => {
if (!config.enabled) return;
document.head.append(
document
.createRange()
.createContextualFragment(config.tags.join('\n'))
);
}, []);
return null;
}
-8
View File
@@ -1,8 +0,0 @@
export default function DriverAnalytics() {
return(
<>
<script defer src="https://analytics.otter.land/script.js" data-website-id="82dd56a5-db44-4279-bd1e-a4d9fee39af7"></script>
<script defer src="https://analytics.otter.land/recorder.js" data-website-id="82dd56a5-db44-4279-bd1e-a4d9fee39af7" data-sample-rate="0.4" data-mask-level="moderate" data-max-duration="300000"></script>
</>
)
}
@@ -0,0 +1,7 @@
{
"enabled": true,
"tags": [
"<script defer src=\"https://analytics.otter.land/script.js\" data-website-id=\"82dd56a5-db44-4279-bd1e-a4d9fee39af7\"></script>",
"<script defer src=\"https://analytics.otter.land/recorder.js\" data-website-id=\"82dd56a5-db44-4279-bd1e-a4d9fee39af7\" data-sample-rate=\"0.4\" data-mask-level=\"moderate\" data-max-duration=\"300000\"></script>"
]
}