- Gallery

- Popupedit semplificato
This commit is contained in:
Paolo Arena
2021-12-03 22:47:53 +01:00
parent c5283c804e
commit c517dedd47
20 changed files with 625 additions and 679 deletions

View File

@@ -40,6 +40,7 @@
"dotenv": "^10.0.0", "dotenv": "^10.0.0",
"echarts": "^5.2.2", "echarts": "^5.2.2",
"eslint-plugin-quasar": "^1.0.0", "eslint-plugin-quasar": "^1.0.0",
"eslint-plugin-standard": "^5.0.0",
"graphql": "^16.0.1", "graphql": "^16.0.1",
"graphql-tag": "^2.12.6", "graphql-tag": "^2.12.6",
"gsap": "^3.8.0", "gsap": "^3.8.0",
@@ -70,10 +71,10 @@
"vue2-dragula": "^2.5.5", "vue2-dragula": "^2.5.5",
"vue3-tel-input": "^1.0.4", "vue3-tel-input": "^1.0.4",
"vuex": "^4.0.1", "vuex": "^4.0.1",
"vuex-router-sync": "^6.0.0-rc.1", "vuex-router-sync": "^6.0.0-rc.1"
"vuex-typex": "^3.1.9"
}, },
"devDependencies": { "devDependencies": {
"@babel/core": "^7.16.0",
"@babel/eslint-parser": "^7.16.3", "@babel/eslint-parser": "^7.16.3",
"@quasar/app": "^3.2.3", "@quasar/app": "^3.2.3",
"@quasar/quasar-app-extension-qcalendar": "^4.0.0-beta.6", "@quasar/quasar-app-extension-qcalendar": "^4.0.0-beta.6",
@@ -114,6 +115,7 @@
"typescript": "^4.5.2", "typescript": "^4.5.2",
"vue-cli-plugin-element-ui": "^1.1.4", "vue-cli-plugin-element-ui": "^1.1.4",
"vueify": "^9.4.1", "vueify": "^9.4.1",
"webpack": "^5.0.0",
"workbox-webpack-plugin": "^6.4.1" "workbox-webpack-plugin": "^6.4.1"
}, },
"browser": { "browser": {
@@ -134,6 +136,5 @@
"node": ">= 14.17.0", "node": ">= 14.17.0",
"npm": ">= 6.14.8", "npm": ">= 6.14.8",
"yarn": ">= 1.21.1" "yarn": ">= 1.21.1"
}, }
} }

View File

@@ -25,7 +25,7 @@ export default defineComponent({
required: true, required: true,
}, },
imgGall: { imgGall: {
type: Object as PropType<IImgGallery | string | undefined | null>, type: Object as PropType<IImgGallery[] | string | undefined | null>,
required: true, required: true,
}, },
}, },
@@ -55,7 +55,7 @@ export default defineComponent({
}) })
function created() { function created() {
console.log('created cgallery') // console.log('created cgallery')
if (isValid(props.imgGall)) { if (isValid(props.imgGall)) {
// @ts-ignore // @ts-ignore
let myarr: any = props.imgGall let myarr: any = props.imgGall

View File

@@ -27,3 +27,11 @@
color: gray; color: gray;
} }
} }
.newrec_fields{
display: flex;
padding: 2px;
margin: 2px;
align-items: center;
justify-content: center;
}

View File

@@ -110,6 +110,11 @@ export default defineComponent({
type: Function, type: Function,
required: false, required: false,
}, },
col_title: {
type: String,
required: false,
default: '',
},
}, },
components: { CMyPopupEdit, CTitleBanner }, components: { CMyPopupEdit, CTitleBanner },
setup(props, { emit }) { setup(props, { emit }) {
@@ -605,7 +610,6 @@ export default defineComponent({
editRecordBool.value = true editRecordBool.value = true
} else { } else {
return $q.dialog({ return $q.dialog({
message: translate(col.askaction) + '?', message: translate(col.askaction) + '?',
html: true, html: true,
@@ -613,7 +617,7 @@ export default defineComponent({
label: ok, label: ok,
push: true, push: true,
}, },
title: 'Action', title: translate(col.label_trans),
cancel: true, cancel: true,
persistent: false, persistent: false,
}).onOk(() => { }).onOk(() => {
@@ -804,7 +808,30 @@ export default defineComponent({
} }
} }
function enableSaveNewRec() {
let ok = true
mycolumns.value.forEach((col: IColGridTable) => {
if (col.required) {
console.log('newRecord.value', newRecord.value, newRecord.value[col.name])
if (!newRecord.value[col.name]) {
ok = false
}
}
})
return ok
}
async function saveNewRecord() { async function saveNewRecord() {
// check if the field are setted
if (!enableSaveNewRec()){
return false
}
console.log('saveNewRecord') console.log('saveNewRecord')
const mydata = { const mydata = {
table: mytable.value, table: mytable.value,

View File

@@ -175,13 +175,29 @@
:style="props.selected ? 'transform: scale(0.95);' : ''" :style="props.selected ? 'transform: scale(0.95);' : ''"
> >
<q-card :class="props.selected ? 'bg-grey-2' : ''"> <q-card :class="props.selected ? 'bg-grey-2' : ''">
<q-list dense> <q-bar dense class="bg-primary text-white">
<div v-for="col in mycolumns" :key="col.name"> <span class="ellipsis"> {{ props.row[col_title] }} </span>
<q-item v-if="colVisib.includes(col.field + col.subfield)" :class="clByCol(col)"> <q-space />
<q-item-section avatar v-if="visuIntestazCol(col)"> <q-btn
<q-item-label class="q-table__col">{{ col.label }}</q-item-label> flat round color="white" icon="fas fa-pencil-alt" size="sm"
</q-item-section> @click="clickFunz(props.row, prop_mycolumns.find((rec) => rec.action === lists.MenuAction.CAN_EDIT_TABLE))"></q-btn>
<q-item-section> <q-btn
flat round color="white" icon="fas fa-trash-alt" size="sm"
@click="clickFunz(props.row, prop_mycolumns.find((rec) => rec.action === lists.MenuAction.DELETE_RECTABLE))"></q-btn>
</q-bar>
<!--<q-toolbar dense v-if="col_title" class="bg-primary text-white centeritems">
<q-toolbar-title>
{{ props.row[col_title] }}
</q-toolbar-title>
</q-toolbar>-->
<q-card-section class="inset-shadow">
<q-list dense>
<div v-for="col in mycolumns" :key="col.name">
<q-item v-if="colVisib.includes(col.field + col.subfield)" :class="clByCol(col)">
<q-item-section avatar v-if="visuIntestazCol(col)">
<q-item-label class="q-table__col">{{ col.label }}</q-item-label>
</q-item-section>
<q-item-section>
<div class="tdclass"> <div class="tdclass">
<div :class="getclrow(props.row)"> <div :class="getclrow(props.row)">
@@ -201,30 +217,11 @@
</CMyPopupEdit> </CMyPopupEdit>
</div> </div>
</div> </div>
</q-item-section> </q-item-section>
</q-item> </q-item>
</div> </div>
<div> </q-list>
<q-item-section> </q-card-section>
<q-item-label class="q-table__col"></q-item-label>
</q-item-section>
<q-item class="row justify-center">
<q-item-section side>
<q-item-label caption>
<q-item>
<div v-for="col in mycolumns" :key="col.name">
<div v-if="colExtra.includes(col.name) && col.action" class="tdclass">
<q-btn
flat round color="red" :icon="col.icon" size="sm"
@click="clickFunz(props.row, col)"></q-btn>
</div>
</div>
</q-item>
</q-item-label>
</q-item-section>
</q-item>
</div>
</q-list>
</q-card> </q-card>
</div> </div>
</template> </template>
@@ -283,18 +280,17 @@
</div> </div>
<q-dialog v-model="newRecordBool" @hide="hidewindow"> <q-dialog v-model="newRecordBool" @hide="hidewindow">
<q-card :style="`min-width: `+ tools.myheight_dialog() + `px;`"> <q-card :style="`min-width: `+ tools.myheight_dialog() + `px;`">
<q-toolbar class="bg-primary text-white centeritems"> <q-bar dense class="bg-primary text-white">
<q-toolbar-title> Nuovo:
{{ mytitle }} <q-space />
</q-toolbar-title>
<q-btn flat round color="white" icon="close" v-close-popup></q-btn> <q-btn flat round color="white" icon="close" v-close-popup></q-btn>
</q-toolbar> </q-bar>
<q-card-section class="inset-shadow"> <q-card-section class="inset-shadow">
<div <div
v-for="col in mycolumns" :key="col.name"> v-for="col in mycolumns" :key="col.name" class="newrec_fields">
<div <div
v-if="colVisib.includes(col.field + col.subfield)"> v-if="colVisib.includes(col.field + col.subfield)">
<div> <div class="">
<CMyPopupEdit <CMyPopupEdit
:table="prop_mytable" :table="prop_mytable"
@@ -303,8 +299,9 @@
v-model:row="newRecord" v-model:row="newRecord"
:field="col.field" :field="col.field"
:subfield="col.subfield" :subfield="col.subfield"
:isInModif="true"
minuteinterval="1" minuteinterval="1"
:visulabel="true" :visulabel="false"
@save="SaveValue" @save="SaveValue"
@show="selItem(newRecord, col)" @show="selItem(newRecord, col)"
@showandsave="showandsel"> @showandsave="showandsel">
@@ -322,12 +319,12 @@
</q-dialog> </q-dialog>
<q-dialog v-model="editRecordBool"> <q-dialog v-model="editRecordBool">
<q-card :style="`min-width: `+ tools.myheight_dialog() + `px;`"> <q-card :style="`min-width: `+ tools.myheight_dialog() + `px;`">
<q-toolbar class="bg-primary text-white centeritems"> <q-bar dense class="bg-primary text-white">
<q-toolbar-title> <span v-if="mytitle">{{ mytitle }}</span>
{{ mytitle }} <span v-else>{{ recModif[col_title] }}</span>
</q-toolbar-title> <q-space />
<q-btn flat round color="white" icon="close" v-close-popup></q-btn> <q-btn flat round color="white" icon="close" v-close-popup></q-btn>
</q-toolbar> </q-bar>
<q-card-section class="inset-shadow"> <q-card-section class="inset-shadow">
<div <div
v-for="col in mycolumns" :key="col.name"> v-for="col in mycolumns" :key="col.name">

View File

@@ -53,7 +53,7 @@ export default defineComponent({
}) })
function refreshval() { function refreshval() {
console.log('refreshval') // console.log('refreshval')
myarrvalues.value = [] myarrvalues.value = []
// console.log('options', props.options) // console.log('options', props.options)

View File

@@ -1,7 +1,7 @@
<template> <template>
<div> <div>
<q-card :style="`min-width: `+ tools.myheight_dialog() + `px;` "> <q-card :style="`min-width: `+ tools.myheight_dialog() + `px;` ">
<q-toolbar class="bg-primary text-white" style="min-height: 30px;"> <q-toolbar v-if="showButtons" class="bg-primary text-white" style="min-height: 30px;">
<q-toolbar-title> <q-toolbar-title>
Editor Editor
</q-toolbar-title> </q-toolbar-title>

View File

@@ -1,5 +1,5 @@
.editor{ .editor{
border: solid 2px #1c64aa; border: solid 1px #257ed5;
border-radius: 5px; border-radius: 5px;
padding: 2px; padding: 2px;
height: 60px; height: 60px;

View File

@@ -14,6 +14,11 @@ import { CGallery } from '../CGallery'
import { tools } from '@store/Modules/tools' import { tools } from '@store/Modules/tools'
import { costanti } from '@costanti' import { costanti } from '@costanti'
// @ts-ignore
// import VueTelInput from 'vue3-tel-input'
// import 'vue3-tel-input/dist/vue3-tel-input.css'
import { fieldsTable } from '@store/Modules/fieldsTable' import { fieldsTable } from '@store/Modules/fieldsTable'
import MixinBase from '@/mixins/mixin-base' import MixinBase from '@/mixins/mixin-base'
import MixinUsers from '@/mixins/mixin-users' import MixinUsers from '@/mixins/mixin-users'
@@ -219,6 +224,9 @@ export default defineComponent({
console.log('popypedit: changevalRec', newval) console.log('popypedit: changevalRec', newval)
// console.log('row', props.row, 'col', props.mycol, 'newval', newval) // console.log('row', props.row, 'col', props.mycol, 'newval', newval)
// console.log('row[col.value.name]', props.row[col.value.name]) // console.log('row[col.value.name]', props.row[col.value.name])
if (props.type === costanti.FieldType.image) {
console.log('image', newval)
}
myrow.value[col.value.name] = newval myrow.value[col.value.name] = newval
// console.log('changevalRec update:row', newval) // console.log('changevalRec update:row', newval)
emit('update:row', props.row) emit('update:row', props.row)
@@ -527,6 +535,14 @@ export default defineComponent({
SaveValueInt(myvalue.value, '') SaveValueInt(myvalue.value, '')
} }
function noPopupeditByCol(mycol: IColGridTable) {
return (mycol.fieldtype !== costanti.FieldType.html
&& mycol.fieldtype !== costanti.FieldType.image
&& mycol.fieldtype !== costanti.FieldType.listimages
&& mycol.fieldtype !== costanti.FieldType.number
)
}
onBeforeMount(mounted) onBeforeMount(mounted)
@@ -562,6 +578,7 @@ export default defineComponent({
isFieldDb, isFieldDb,
col, col,
myImgGall, myImgGall,
noPopupeditByCol,
} }
} }
}) })

File diff suppressed because it is too large Load Diff

View File

@@ -6,6 +6,7 @@
prop_mytitle="" prop_mytitle=""
:prop_mycolumns="colmySkills" :prop_mycolumns="colmySkills"
prop_colkey="idSkill" prop_colkey="idSkill"
col_title="subTitle"
:vertical="true" :vertical="true"
nodataLabel="Nessuna Competenza inserita" nodataLabel="Nessuna Competenza inserita"
:prop_search="false" :prop_search="false"

View File

@@ -73,7 +73,7 @@ const msg_de = {
recfailed: 'Error during update Record', recfailed: 'Error during update Record',
reccanceled: 'Canceled Update. Restore previous value', reccanceled: 'Canceled Update. Restore previous value',
deleterecord: 'Delete Record', deleterecord: 'Delete Record',
deletetherecord: 'Delete the Record?', deletetherecord: 'Delete the Record',
deletedrecord: 'Record Deleted', deletedrecord: 'Record Deleted',
recdelfailed: 'Error during deletion of the Record', recdelfailed: 'Error during deletion of the Record',
duplicatedrecord: 'Duplicate Record', duplicatedrecord: 'Duplicate Record',

View File

@@ -147,7 +147,7 @@ const msg_enUs = {
recfailed: 'Error during update Record', recfailed: 'Error during update Record',
reccanceled: 'Canceled Update. Restore previous value', reccanceled: 'Canceled Update. Restore previous value',
deleterecord: 'Delete Record', deleterecord: 'Delete Record',
deletetherecord: 'Delete the Record?', deletetherecord: 'Delete the Record',
deletedrecord: 'Record Deleted', deletedrecord: 'Record Deleted',
recdelfailed: 'Error during deletion of the Record', recdelfailed: 'Error during deletion of the Record',
duplicatedrecord: 'Duplicate Record', duplicatedrecord: 'Duplicate Record',

View File

@@ -147,7 +147,7 @@ const msg_es = {
recfailed: 'Error durante el registro de actualización', recfailed: 'Error durante el registro de actualización',
reccanceled: 'Actualización cancelada Restaurar valor anterior', reccanceled: 'Actualización cancelada Restaurar valor anterior',
deleterecord: 'Eliminar registro', deleterecord: 'Eliminar registro',
deletetherecord: '¿Eliminar el registro?', deletetherecord: '¿Eliminar el registro',
deletedrecord: 'Registro cancelado', deletedrecord: 'Registro cancelado',
recdelfailed: 'Error durante la eliminación del registro', recdelfailed: 'Error durante la eliminación del registro',
duplicatedrecord: 'Registro Duplicado', duplicatedrecord: 'Registro Duplicado',

View File

@@ -147,7 +147,7 @@ const msg_fr = {
recfailed: 'Erreur lors de la mise à jour', recfailed: 'Erreur lors de la mise à jour',
reccanceled: 'Mise à jour annulée. Restaurer la valeur précédente', reccanceled: 'Mise à jour annulée. Restaurer la valeur précédente',
deleterecord: 'Supprimer l\'enregistrement', deleterecord: 'Supprimer l\'enregistrement',
deletetherecord: 'Supprimer l\'enregistrement?', deletetherecord: 'Supprimer l\'enregistrement',
deletedrecord: 'Enregistrement annulé', deletedrecord: 'Enregistrement annulé',
recdelfailed: 'Erreur lors de la suppression de l\'enregistrement', recdelfailed: 'Erreur lors de la suppression de l\'enregistrement',
duplicatedrecord: 'Enregistrement en double', duplicatedrecord: 'Enregistrement en double',

View File

@@ -171,7 +171,7 @@ const msg_it = {
recfailed: 'Errore durante aggiornamento Record', recfailed: 'Errore durante aggiornamento Record',
reccanceled: 'Annullato Aggiornamento. Ripristinato valore precendente', reccanceled: 'Annullato Aggiornamento. Ripristinato valore precendente',
deleterecord: 'Elimina Record', deleterecord: 'Elimina Record',
deletetherecord: 'Eliminare il Record?', deletetherecord: 'Eliminare il Record',
deletedrecord: 'Record Cancellato', deletedrecord: 'Record Cancellato',
recdelfailed: 'Errore durante la cancellazione del Record', recdelfailed: 'Errore durante la cancellazione del Record',
duplicatedrecord: 'Vuoi Duplicare il record', duplicatedrecord: 'Vuoi Duplicare il record',
@@ -458,6 +458,7 @@ const msg_it = {
altre_comunicazioni: 'Scrivi altre eventuali informazioni o comunicazioni:', altre_comunicazioni: 'Scrivi altre eventuali informazioni o comunicazioni:',
come_ci_hai_conosciuto: 'Come ci hai conosciuto?', come_ci_hai_conosciuto: 'Come ci hai conosciuto?',
photo: 'Foto', photo: 'Foto',
images: 'Immagini',
err: { err: {
required: 'è richiesto', required: 'è richiesto',
email: 'inserire una email valida', email: 'inserire una email valida',
@@ -774,6 +775,15 @@ const msg_it = {
statusSkill: { statusSkill: {
name: 'Stato', name: 'Stato',
}, },
store: {
description: 'Descrizione',
main: 'Principale',
img: 'Immagine',
icon: 'Icona',
},
sectors: {
name: 'Settore',
}
}, },
}; };

View File

@@ -157,7 +157,7 @@ const msg_pt = {
recfailed: 'Errore durante aggiornamento Record', recfailed: 'Errore durante aggiornamento Record',
reccanceled: 'Annullato Aggiornamento. Ripristinato valore precendente', reccanceled: 'Annullato Aggiornamento. Ripristinato valore precendente',
deleterecord: 'Elimina Record', deleterecord: 'Elimina Record',
deletetherecord: 'Eliminare il Record?', deletetherecord: 'Eliminare il Record',
deletedrecord: 'Record Cancellato', deletedrecord: 'Record Cancellato',
recdelfailed: 'Errore durante la cancellazione del Record', recdelfailed: 'Errore durante la cancellazione del Record',
duplicatedrecord: 'Record Duplicato', duplicatedrecord: 'Record Duplicato',

View File

@@ -161,7 +161,7 @@ const msg_si = {
recfailed: 'Napaka pri posodabljanju zapisa', recfailed: 'Napaka pri posodabljanju zapisa',
reccanceled: 'Preklicana posodobitev. Obnovi prejšnjo vrednost', reccanceled: 'Preklicana posodobitev. Obnovi prejšnjo vrednost',
deleterecord: 'Izbriši zapis', deleterecord: 'Izbriši zapis',
deletetherecord: 'Želiš završti zapis?', deletetherecord: 'Želiš završti zapis',
deletedrecord: 'Zapis je izbrisan', deletedrecord: 'Zapis je izbrisan',
recdelfailed: 'Napaka med brisanjem zapisa', recdelfailed: 'Napaka med brisanjem zapisa',
duplicatedrecord: 'Podvojen zapis', duplicatedrecord: 'Podvojen zapis',

View File

@@ -12,7 +12,7 @@ const DeleteRec = {
icon: 'fas fa-trash-alt', icon: 'fas fa-trash-alt',
action: lists.MenuAction.DELETE_RECTABLE, action: lists.MenuAction.DELETE_RECTABLE,
askaction: 'db.deletetherecord', askaction: 'db.deletetherecord',
required: true, // required: true,
visuonlyEditVal: true, visuonlyEditVal: true,
} }
@@ -25,7 +25,7 @@ const ModifRec = {
icon: 'fas fa-pencil-alt', icon: 'fas fa-pencil-alt',
action: lists.MenuAction.CAN_EDIT_TABLE, action: lists.MenuAction.CAN_EDIT_TABLE,
askaction: '', askaction: '',
required: true, // required: true,
visuonlyEditVal: true, visuonlyEditVal: true,
} }
@@ -346,12 +346,14 @@ export const colmySkills = [
name: 'idSkill', name: 'idSkill',
label_trans: 'skill.name', label_trans: 'skill.name',
fieldtype: costanti.FieldType.select, fieldtype: costanti.FieldType.select,
required: true,
jointable: 'skills', jointable: 'skills',
}), }),
AddCol({ AddCol({
name: 'numLevel', name: 'numLevel',
label_trans: 'level.name', label_trans: 'level.name',
fieldtype: costanti.FieldType.star5, fieldtype: costanti.FieldType.star5,
required: true,
jointable: 'levels', jointable: 'levels',
}), }),
AddCol({ AddCol({

View File

@@ -23,7 +23,7 @@
resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.16.4.tgz#081d6bbc336ec5c2435c6346b2ae1fb98b5ac68e" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.16.4.tgz#081d6bbc336ec5c2435c6346b2ae1fb98b5ac68e"
integrity sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q== integrity sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q==
"@babel/core@^7.1.0", "@babel/core@^7.11.1", "@babel/core@^7.12.3", "@babel/core@^7.7.2", "@babel/core@^7.7.5", "@babel/core@^7.9.0": "@babel/core@^7.1.0", "@babel/core@^7.11.1", "@babel/core@^7.12.3", "@babel/core@^7.16.0", "@babel/core@^7.7.2", "@babel/core@^7.7.5", "@babel/core@^7.9.0":
version "7.16.0" version "7.16.0"
resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.16.0.tgz#c4ff44046f5fe310525cc9eb4ef5147f0c5374d4" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.16.0.tgz#c4ff44046f5fe310525cc9eb4ef5147f0c5374d4"
integrity sha512-mYZEvshBRHGsIAiyH5PzCFTCfbWfoYbO/jcSdXQSUQu1/pW0xDZAUP7KEc32heqWTAfAHhV9j1vH8Sav7l+JNQ== integrity sha512-mYZEvshBRHGsIAiyH5PzCFTCfbWfoYbO/jcSdXQSUQu1/pW0xDZAUP7KEc32heqWTAfAHhV9j1vH8Sav7l+JNQ==
@@ -5064,6 +5064,11 @@ eslint-plugin-quasar@^1.0.0:
requireindex "~1.2.0" requireindex "~1.2.0"
semver-compare "^1.0.0" semver-compare "^1.0.0"
eslint-plugin-standard@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-5.0.0.tgz#c43f6925d669f177db46f095ea30be95476b1ee4"
integrity sha512-eSIXPc9wBM4BrniMzJRBm2uoVuXz2EPa+NXPk2+itrVt+r5SbKFERx/IgrK/HmfjddyKVz2f+j+7gBRvu19xLg==
eslint-plugin-vue@^8.1.1: eslint-plugin-vue@^8.1.1:
version "8.1.1" version "8.1.1"
resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-8.1.1.tgz#8bb0a40520880cdd076b4a6faf8bc29110997a8c" resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-8.1.1.tgz#8bb0a40520880cdd076b4a6faf8bc29110997a8c"
@@ -12657,13 +12662,6 @@ vuex-router-sync@^6.0.0-rc.1:
resolved "https://registry.yarnpkg.com/vuex-router-sync/-/vuex-router-sync-6.0.0-rc.1.tgz#d8d003bca3067194808e16fd145eefc46ac5ac10" resolved "https://registry.yarnpkg.com/vuex-router-sync/-/vuex-router-sync-6.0.0-rc.1.tgz#d8d003bca3067194808e16fd145eefc46ac5ac10"
integrity sha512-pzVrX/rmQsDjJiKPAjgKxpkxWdiBBQmxATFA6eFyS2Tmo6jauq8iDk9BWxkw41/OA+pbq4wkONRC0aeErDw8GQ== integrity sha512-pzVrX/rmQsDjJiKPAjgKxpkxWdiBBQmxATFA6eFyS2Tmo6jauq8iDk9BWxkw41/OA+pbq4wkONRC0aeErDw8GQ==
vuex-typex@^3.1.9:
version "3.1.9"
resolved "https://registry.yarnpkg.com/vuex-typex/-/vuex-typex-3.1.9.tgz#5bf6760b7e4f7a48186500adf76734fe61b519a0"
integrity sha512-9IBtlQ7mRqMxpa/caTdE1SJf/FcRuYjT/0oJhfKsbUD2xWMcZEq43yz+LjbO1Q7HGS27q6GIq2P6WnhroBe9iA==
dependencies:
vuex "^3.0.1"
vuex@^3.0.1: vuex@^3.0.1:
version "3.6.2" version "3.6.2"
resolved "https://registry.yarnpkg.com/vuex/-/vuex-3.6.2.tgz#236bc086a870c3ae79946f107f16de59d5895e71" resolved "https://registry.yarnpkg.com/vuex/-/vuex-3.6.2.tgz#236bc086a870c3ae79946f107f16de59d5895e71"
@@ -12830,7 +12828,7 @@ webpack-sources@^3.2.2:
resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.2.tgz#d88e3741833efec57c4c789b6010db9977545260" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.2.tgz#d88e3741833efec57c4c789b6010db9977545260"
integrity sha512-cp5qdmHnu5T8wRg2G3vZZHoJPN14aqQ89SyQ11NpGH5zEMDCclt49rzo+MaRazk7/UeILhAI+/sEtcM+7Fr0nw== integrity sha512-cp5qdmHnu5T8wRg2G3vZZHoJPN14aqQ89SyQ11NpGH5zEMDCclt49rzo+MaRazk7/UeILhAI+/sEtcM+7Fr0nw==
webpack@*, webpack@^5, webpack@^5.38.1, webpack@^5.51.0, webpack@^5.58.1: webpack@*, webpack@^5, webpack@^5.0.0, webpack@^5.38.1, webpack@^5.51.0, webpack@^5.58.1:
version "5.64.4" version "5.64.4"
resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.64.4.tgz#e1454b6a13009f57cc2c78e08416cd674622937b" resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.64.4.tgz#e1454b6a13009f57cc2c78e08416cd674622937b"
integrity sha512-LWhqfKjCLoYJLKJY8wk2C3h77i8VyHowG3qYNZiIqD6D0ZS40439S/KVuc/PY48jp2yQmy0mhMknq8cys4jFMw== integrity sha512-LWhqfKjCLoYJLKJY8wk2C3h77i8VyHowG3qYNZiIqD6D0ZS40439S/KVuc/PY48jp2yQmy0mhMknq8cys4jFMw==