import { defineComponent, onMounted, PropType, ref, watch } from 'vue' import { useUserStore } from '@store/UserStore' import { IMyGroup, IImgGallery, IUserFields, IUserProfile, IFriends, ICircuit, IAccount } from 'model' import { costanti } from '@costanti' import { shared_consts } from '@/common/shared_vuejs' import { tools } from '@store/Modules/tools' import { useQuasar } from 'quasar' import { useI18n } from '@/boot/i18n' import { useRoute, useRouter } from 'vue-router' import { CUserNonVerif } from '@/components/CUserNonVerif' import { toolsext } from '@store/Modules/toolsext' import { CSaldo } from '@/components/CSaldo' import { CSendCoins } from '@/components/CSendCoins' import { CCurrencyValue } from '@/components/CCurrencyValue' import { CCurrencyV2 } from '@/components/CCurrencyV2' import { useCircuitStore } from '@store/CircuitStore' export default defineComponent({ name: 'CInfoAccount', emits: ['setCmd'], components: {CUserNonVerif, CSaldo, CSendCoins, CCurrencyValue, CCurrencyV2 }, props: { grp: { type: Object as PropType, required: true, }, circuitname: { type: String, required: false, default: '', }, admin: { type: Boolean, required: false, default: false, }, account: { type: Object as PropType, required: false, default: null, }, }, setup(props, { emit }) { const userStore = useUserStore() const $q = useQuasar() const { t } = useI18n() const $router = useRouter() const myaccount = ref(undefined) const circuitStore = useCircuitStore() const table = ref(toolsext.TABMYGROUPS) const circuit = ref(null) watch(() => props.grp, (newval, oldval) => { mounted() }) function mounted() { circuit.value = circuitStore.getCircuitByName(props.circuitname) if (props.account) { myaccount.value = props.account } else { myaccount.value = props.grp.account } } function getImgGroup(group: IMyGroup) { return userStore.getImgByGroup(group) } function naviga(path: string) { $router.push(path) } function setCmd(cmd: number, myusername: string, value: any = '') { emit('setCmd', cmd, myusername, value) } function myusername() { return userStore.my.username } async function save(value: any) { console.log('save and mounted') await tools.loadCircuits() // ricarico mounted() } onMounted(mounted) return { costanti, getImgGroup, naviga, setCmd, shared_consts, userStore, tools, table, myusername, circuit, circuitStore, t, myaccount, save, } }, })