mirror of
https://github.com/misode/misode.github.io.git
synced 2026-04-25 08:06:51 +00:00
31 lines
1.3 KiB
TypeScript
31 lines
1.3 KiB
TypeScript
const event = (category: string, action: string, label?: string) =>
|
|
ga('send', 'event', category, action, label)
|
|
|
|
const dimension = (index: number, value: string) =>
|
|
ga('set', `dimension${index}`, value);
|
|
|
|
export const Tracker = {
|
|
pageview: (target: string) => {
|
|
ga('set', 'page', target)
|
|
ga('send', 'pageview')
|
|
},
|
|
|
|
setTheme: (theme: string) => event('Generator', 'set-theme', theme),
|
|
setVersion: (version: string) => event('Generator', 'set-version', version),
|
|
setPreview: (name: string) => event('Preview', 'set-preview', name),
|
|
setLanguage: (language: string) => event('Generator', 'set-language', language),
|
|
reset: () => event('Generator', 'reset'),
|
|
undo: (hotkey = false) => event('Generator', 'undo', hotkey ? 'Hotkey' : 'Menu'),
|
|
redo: (hotkey = false) => event('Generator', 'redo', hotkey ? 'Hotkey' : 'Menu'),
|
|
copy: () => event('JsonOutput', 'copy'),
|
|
download: () => event('JsonOutput', 'download'),
|
|
share: () => event('JsonOutput', 'share'),
|
|
toggleErrors: (visible: boolean) => event('Errors', 'toggle', visible ? 'visible' : 'hidden'),
|
|
hidePreview: () => event('Preview', 'hide-preview'),
|
|
|
|
dimTheme: (theme: string) => dimension(1, theme),
|
|
dimVersion: (version: string) => dimension(3, version),
|
|
dimLanguage: (language: string) => dimension(4, language),
|
|
dimPreview: (preview: string) => dimension(5, preview),
|
|
}
|