Analytics + more bug fixes (#144)

* Analytics + more bug fixes

* debug deadlock

* Fix mostly everything

* merge fixes

* fix rest

* final fixeS
This commit is contained in:
Geometrically
2023-06-19 14:59:06 -07:00
committed by GitHub
parent 84d731b670
commit 1e78a7b6a8
51 changed files with 1285 additions and 491 deletions

View File

@@ -1,5 +1,5 @@
<template>
<Modal ref="modal" header="Create instance">
<Modal ref="modal" header="Create instance" :noblur="!themeStore.advancedRendering">
<div class="modal-header">
<Chips v-model="creationType" :items="['custom', 'from file']" />
</div>
@@ -116,9 +116,13 @@ import {
} from '@/helpers/metadata'
import { handleError } from '@/store/notifications.js'
import Multiselect from 'vue-multiselect'
import mixpanel from 'mixpanel-browser'
import { useTheming } from '@/store/state.js'
import { listen } from '@tauri-apps/api/event'
import { install_from_file } from '@/helpers/pack.js'
const themeStore = useTheming()
const profile_name = ref('')
const game_version = ref('')
const loader = ref('vanilla')
@@ -144,6 +148,8 @@ defineExpose({
icon.value = null
display_icon.value = null
modal.value.show()
mixpanel.track('InstanceCreateStart', { source: 'CreationModal' })
},
})
@@ -195,6 +201,7 @@ const create_instance = async () => {
creating.value = true
const loader_version_value =
loader_version.value === 'other' ? specified_loader_version.value : loader_version.value
const loaderVersion = loader.value === 'vanilla' ? null : loader_version_value ?? 'stable'
modal.value.hide()
creating.value = false
@@ -206,6 +213,15 @@ const create_instance = async () => {
loader.value === 'vanilla' ? null : loader_version_value ?? 'stable',
icon.value
).catch(handleError)
mixpanel.track('InstanceCreate', {
profile_name: profile_name.value,
game_version: game_version.value,
loader: loader.value,
loader_version: loaderVersion,
has_icon: !!icon.value,
source: 'CreationModal',
})
}
const upload_icon = async () => {
@@ -253,11 +269,20 @@ const openFile = async () => {
modal.value.hide()
await install_from_file(newProject).catch(handleError)
mixpanel.track('InstanceCreate', {
source: 'CreationModalFileOpen',
})
}
listen('tauri://file-drop', async (event) => {
modal.value.hide()
await install_from_file(event.payload[0]).catch(handleError)
if (event.payload && event.payload.length > 0 && event.payload[0].endsWith('.mrpack')) {
await install_from_file(event.payload[0]).catch(handleError)
mixpanel.track('InstanceCreate', {
source: 'CreationModalFileDrop',
})
}
})
</script>