Контакты: фикс запросов, фикс списка соцсетей

This commit is contained in:
megavrilinvv
2023-08-18 18:21:18 +03:00
parent bc5c694657
commit 1f47f9abe6
3 changed files with 22 additions and 22 deletions

View File

@@ -20,12 +20,12 @@
@click="() => copyLinkNetwork(data.value)" @click="() => copyLinkNetwork(data.value)"
style="background-color: var(--bg-light-grey)" style="background-color: var(--bg-light-grey)"
) )
q-icon.icon(:name="mapNetworks[data.kind].icon" :class="{old: data.id, new: data.filled}") q-icon.icon(:name="mapNetworks[data.category].icon" :class="{old: data.id, new: data.filled}")
span.text-sm.font-medium {{ mapNetworks[data.kind].title || data.value }} span.text-sm.font-medium {{ mapNetworks[data.category].title || data.value }}
.flex.gap-10px(v-else v-click-outside="() => checkNetworksField(index)" :key="key+index") .flex.gap-10px(v-else v-click-outside="() => checkNetworksField(index)" :key="key+index")
base-select-networks( base-select-networks(
:list-data="Object.values(mapNetworks)" :list-data="Object.values(mapNetworks)"
:option-data="data.kind" :option-data="data.category"
:choose-option="(e) => chooseNetwork(e, index)" :choose-option="(e) => chooseNetwork(e, index)"
:style-border="true" :style-border="true"
:size-input="50" :size-input="50"
@@ -112,7 +112,7 @@ export default {
delContacts: "deleteContact", delContacts: "deleteContact",
}), }),
checkNetworksField(index) { checkNetworksField(index) {
if (this.contacts.networks[index].kind) if (this.contacts.networks[index].category)
this.contacts.networks[index].filled = true; this.contacts.networks[index].filled = true;
}, },
openEdit() { openEdit() {
@@ -130,7 +130,7 @@ export default {
...this.contacts.emails, ...this.contacts.emails,
...this.contacts.networks, ...this.contacts.networks,
]; ];
const notEmptyContacts = allNewContacts.filter((el) => !el.id); const notEmptyContacts = allNewContacts.filter((el) => el.category);
return this.changeContacts(this.initAllContacts, notEmptyContacts); return this.changeContacts(this.initAllContacts, notEmptyContacts);
}, },
changeContacts(initData, notEmptyContacts) { changeContacts(initData, notEmptyContacts) {
@@ -139,7 +139,7 @@ export default {
.map((el) => this.delContacts({ id: el.id })); .map((el) => this.delContacts({ id: el.id }));
const requests = notEmptyContacts.map((el) => { const requests = notEmptyContacts.map((el) => {
const requestObj = { const requestObj = {
category: el.category || el.kind, category: el.category,
value: el.value, value: el.value,
}; };
delete requestObj.id; delete requestObj.id;
@@ -184,18 +184,18 @@ export default {
); );
}, },
chooseNetwork(e, index) { chooseNetwork(e, index) {
this.contacts.networks[index].kind = e.currentTarget.id; this.contacts.networks[index].category = e.currentTarget.id;
}, },
addNewContact(e, key) { addNewContact(e, key) {
if (e.pointerType) { if (e.pointerType) {
if (key === "networks") { if (key === "networks") {
this.contacts[key].push({ this.contacts[key].push({
filled: false, filled: false,
kind: this.configData[key]?.kind, category: this.configData[key]?.category,
}); });
} else { } else {
this.contacts[key].push({ this.contacts[key].push({
kind: this.configData[key]?.kind, category: this.configData[key]?.category,
}); });
} }
} }

View File

@@ -22,8 +22,8 @@
@click="() => copyLinkNetwork(network.username)" @click="() => copyLinkNetwork(network.username)"
style="background-color: var(--bg-light-grey)" style="background-color: var(--bg-light-grey)"
) )
q-icon.icon(:name="mapNetworks[network.kind].icon" :class="{old: network.id, new: !network.id}") q-icon.icon(:name="mapNetworks[network.category].icon" :class="{old: network.id, new: !network.id}")
span.text-smm.font-medium {{ mapNetworks[network.kind].title || network.username }} span.text-smm.font-medium {{ mapNetworks[network.category].title || network.username }}
.flex.relative .flex.relative
q-btn( q-btn(
v-if="isEdit" v-if="isEdit"
@@ -129,7 +129,7 @@ export default {
data() { data() {
return { return {
newNetwork: { newNetwork: {
kind: mapNetworks["TELEGRAM"], category: mapNetworks["TELEGRAM"],
username: "", username: "",
}, },
isEdit: false, isEdit: false,
@@ -169,13 +169,13 @@ export default {
saveNetwork() { saveNetwork() {
if (this.newNetwork.username) { if (this.newNetwork.username) {
this.confidants[this.index].networks.push({ this.confidants[this.index].networks.push({
kind: this.newNetwork.kind.id, category: this.newNetwork.category.id,
username: this.newNetwork.username, username: this.newNetwork.username,
}); });
this.isOpenPopupAdding = false; this.isOpenPopupAdding = false;
this.isCheckChange = true; this.isCheckChange = true;
this.newNetwork = { this.newNetwork = {
kind: mapNetworks["TELEGRAM"], category: mapNetworks["TELEGRAM"],
username: "", username: "",
}; };
} else { } else {

View File

@@ -152,32 +152,32 @@ export const mapNetworks = {
VK: { VK: {
id: "VK", id: "VK",
title: "VK", title: "VK",
icon: "app:icon-vk", icon: "app:vk",
network: "VK", network: "VK",
}, },
TELEGRAM: { TELEGRAM: {
id: "TELEGRAM", id: "TELEGRAM",
title: "Telegram", title: "Telegram",
icon: "app:icon-tg", icon: "app:tg",
network: "TELEGRAM", network: "TELEGRAM",
}, },
GMAIL: { GMAIL: {
id: "GMAIL", id: "GMAIL",
title: "Gmail", title: "Gmail",
icon: "app:icon-google", icon: "app:google",
network: "GMAIL", network: "GMAIL",
}, },
SLACK: { SLACK: {
id: "SLACK", id: "SLACK",
title: "Slack", title: "Slack",
icon: "app:icon-slack", icon: "app:slack",
network: "SLACK", network: "SLACK",
markerLink: "slack", markerLink: "slack",
}, },
DISCORD: { DISCORD: {
id: "DISCORD", id: "DISCORD",
title: "Discord", title: "Discord",
icon: "app:icon-discord", icon: "app:discord",
network: "DISCORD", network: "DISCORD",
}, },
VIBER: { VIBER: {
@@ -200,7 +200,7 @@ export const contactsDataForm = {
fieldName: "Телефон", fieldName: "Телефон",
error: error:
"Не корректно введен номер телефона. Номер телефона должен состоять из 10 цифр (без учета +7)", "Не корректно введен номер телефона. Номер телефона должен состоять из 10 цифр (без учета +7)",
kind: "PHONE", category: "PHONE",
rules: [(val) => ruleLengthValue(val, 18)], rules: [(val) => ruleLengthValue(val, 18)],
inputMask: "+7 (###) ###-##-##", inputMask: "+7 (###) ###-##-##",
}, },
@@ -210,14 +210,14 @@ export const contactsDataForm = {
error: error:
"Не корректно введен адрес почты. Почта должна содержать локальное имя, знак @ и имя домена", "Не корректно введен адрес почты. Почта должна содержать локальное имя, знак @ и имя домена",
rules: [(val) => ruleEmailValue(val)], rules: [(val) => ruleEmailValue(val)],
kind: "EMAIL", category: "EMAIL",
}, },
networks: { networks: {
title: "Социальные сети", title: "Социальные сети",
fieldName: "Соцсеть", fieldName: "Соцсеть",
error: "Отсутсвует ссылка соцсети", error: "Отсутсвует ссылка соцсети",
rules: [(val) => ruleNotValue(val)], rules: [(val) => ruleNotValue(val)],
kind: "TELEGRAM", category: "TELEGRAM",
}, },
}; };