mirror of
https://github.com/misode/misode.github.io.git
synced 2026-04-23 15:17:09 +00:00
Track events
This commit is contained in:
@@ -75,6 +75,7 @@ const treeViewNodeInjector = (path: ModelPath, mounter: Mounter) => {
|
|||||||
.filter(v => v.active(path))
|
.filter(v => v.active(path))
|
||||||
.map(v => {
|
.map(v => {
|
||||||
const id = mounter.registerClick(() => {
|
const id = mounter.registerClick(() => {
|
||||||
|
ga('send', 'event', 'Preview', 'set-preview', v.getName())
|
||||||
views.visualizer.set(v, path)
|
views.visualizer.set(v, path)
|
||||||
views.visualizer.model.invalidate()
|
views.visualizer.model.invalidate()
|
||||||
})
|
})
|
||||||
@@ -213,6 +214,7 @@ Promise.all([
|
|||||||
languageSelectorMenu.lastChild?.addEventListener('click', evt => {
|
languageSelectorMenu.lastChild?.addEventListener('click', evt => {
|
||||||
updateLanguage(lang.code, true)
|
updateLanguage(lang.code, true)
|
||||||
languageSelectorMenu.style.visibility = 'hidden'
|
languageSelectorMenu.style.visibility = 'hidden'
|
||||||
|
ga('send', 'event', 'Generator', 'set-language', lang.code)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -287,6 +289,7 @@ Promise.all([
|
|||||||
} else {
|
} else {
|
||||||
updateTheme('dark')
|
updateTheme('dark')
|
||||||
}
|
}
|
||||||
|
ga('send', 'event', 'Generator', 'set-theme', document.documentElement.getAttribute('data-theme'))
|
||||||
})
|
})
|
||||||
|
|
||||||
sourceControlsToggle.addEventListener('click', evt => {
|
sourceControlsToggle.addEventListener('click', evt => {
|
||||||
@@ -300,6 +303,7 @@ Promise.all([
|
|||||||
sourceViewOutput.select()
|
sourceViewOutput.select()
|
||||||
document.execCommand('copy');
|
document.execCommand('copy');
|
||||||
addChecked(sourceControlsCopy)
|
addChecked(sourceControlsCopy)
|
||||||
|
ga('send', 'event', 'JsonOutput', 'copy')
|
||||||
})
|
})
|
||||||
|
|
||||||
sourceControlsDownload.addEventListener('click', evt => {
|
sourceControlsDownload.addEventListener('click', evt => {
|
||||||
@@ -309,6 +313,7 @@ Promise.all([
|
|||||||
downloadAnchor.setAttribute("href", dataString)
|
downloadAnchor.setAttribute("href", dataString)
|
||||||
downloadAnchor.setAttribute("download", "data.json")
|
downloadAnchor.setAttribute("download", "data.json")
|
||||||
downloadAnchor.click()
|
downloadAnchor.click()
|
||||||
|
ga('send', 'event', 'JsonOutput', 'download')
|
||||||
})
|
})
|
||||||
|
|
||||||
sourceControlsShare.addEventListener('click', evt => {
|
sourceControlsShare.addEventListener('click', evt => {
|
||||||
@@ -322,6 +327,7 @@ Promise.all([
|
|||||||
}, { capture: true, once: true })
|
}, { capture: true, once: true })
|
||||||
shareInput.select()
|
shareInput.select()
|
||||||
document.execCommand('copy');
|
document.execCommand('copy');
|
||||||
|
ga('send', 'event', 'JsonOutput', 'share')
|
||||||
})
|
})
|
||||||
|
|
||||||
treeControlsToggle.addEventListener('click', evt => {
|
treeControlsToggle.addEventListener('click', evt => {
|
||||||
@@ -342,21 +348,27 @@ Promise.all([
|
|||||||
const entry = document.createElement('button')
|
const entry = document.createElement('button')
|
||||||
entry.classList.add('btn')
|
entry.classList.add('btn')
|
||||||
entry.textContent = v.id
|
entry.textContent = v.id
|
||||||
entry.addEventListener('click', () => updateVersion(v.id))
|
entry.addEventListener('click', () => {
|
||||||
|
updateVersion(v.id)
|
||||||
|
ga('send', 'event', 'Generator', 'set-version', version)
|
||||||
|
})
|
||||||
treeVersionMenu.append(entry)
|
treeVersionMenu.append(entry)
|
||||||
})
|
})
|
||||||
|
|
||||||
treeControlsReset.addEventListener('click', evt => {
|
treeControlsReset.addEventListener('click', evt => {
|
||||||
models[selected].reset(models[selected].schema.default(), true)
|
models[selected].reset(models[selected].schema.default(), true)
|
||||||
addChecked(treeControlsReset)
|
addChecked(treeControlsReset)
|
||||||
|
ga('send', 'event', 'Generator', 'reset', version)
|
||||||
})
|
})
|
||||||
|
|
||||||
treeControlsUndo.addEventListener('click', evt => {
|
treeControlsUndo.addEventListener('click', evt => {
|
||||||
models[selected].undo()
|
models[selected].undo()
|
||||||
|
ga('send', 'event', 'Generator', 'undo')
|
||||||
})
|
})
|
||||||
|
|
||||||
treeControlsRedo.addEventListener('click', evt => {
|
treeControlsRedo.addEventListener('click', evt => {
|
||||||
models[selected].redo()
|
models[selected].redo()
|
||||||
|
ga('send', 'event', 'Generator', 'redo')
|
||||||
})
|
})
|
||||||
|
|
||||||
document.addEventListener('keyup', evt => {
|
document.addEventListener('keyup', evt => {
|
||||||
@@ -375,6 +387,7 @@ Promise.all([
|
|||||||
errorsViewEl.classList.add('active')
|
errorsViewEl.classList.add('active')
|
||||||
errorsToggle.classList.add('toggled')
|
errorsToggle.classList.add('toggled')
|
||||||
}
|
}
|
||||||
|
ga('send', 'event', 'Errors', 'toggle', errorsViewEl.classList.contains('active') ? 'visible' : 'hidden')
|
||||||
})
|
})
|
||||||
|
|
||||||
githubLink.addEventListener('click', () => {
|
githubLink.addEventListener('click', () => {
|
||||||
|
|||||||
Reference in New Issue
Block a user