diff --git a/src/lib/components/View.svelte b/src/lib/components/View.svelte index 0966efe2..f7c70688 100644 --- a/src/lib/components/View.svelte +++ b/src/lib/components/View.svelte @@ -114,7 +114,7 @@ const svg2roughjs = new Svg2Roughjs('#container'); svg2roughjs.svg = graphDiv; await svg2roughjs.sketch(); - graphDiv?.remove(); + graphDiv.remove(); const sketch = document.querySelector('#container > svg'); if (!sketch) { throw new Error('sketch not found'); @@ -146,9 +146,9 @@ console.error('view fail', error_); error = true; } - const timeTaken = Date.now() - startTime; - saveStatistics(code, timeTaken); - recordRenderTime(timeTaken, () => { + const renderTime = Date.now() - startTime; + saveStatistics({ code, renderTime, isRough: state.rough }); + recordRenderTime(renderTime, () => { $inputStateStore.updateDiagram = true; }); }; diff --git a/src/lib/util/stats.ts b/src/lib/util/stats.ts index 04183c90..8ec4e3a1 100644 --- a/src/lib/util/stats.ts +++ b/src/lib/util/stats.ts @@ -1,6 +1,6 @@ import { browser } from '$app/environment'; -import { env } from './env'; import type PlausibleInstance from 'plausible-tracker'; +import { env } from './env'; export let plausible: ReturnType | undefined; export const initAnalytics = async (): Promise => { @@ -47,15 +47,23 @@ export const countLines = (code: string): number => { return (code.match(/\n/g)?.length ?? 0) + 1; }; -export const saveStatistics = (graph: string, renderTime: number): void => { - const graphType = detectType(graph); +export const saveStatistics = ({ + code, + renderTime, + isRough +}: { + code: string; + renderTime: number; + isRough: boolean; +}): void => { + const graphType = detectType(code); if (!graphType) { return; } - const length = countLines(graph); + const length = countLines(code); const lengthBucket = getBucket(length); const renderTimeMsBucket = getBucket(renderTime); - logEvent('render', { graphType, length, lengthBucket, renderTimeMsBucket }); + logEvent('render', { graphType, length, lengthBucket, renderTimeMsBucket, isRough }); }; const getBucket = (length: number): string => {