diff --git a/src/components/base/BaseInput.vue b/src/components/base/BaseInput.vue
index 1276fbf..0d7deeb 100644
--- a/src/components/base/BaseInput.vue
+++ b/src/components/base/BaseInput.vue
@@ -4,31 +4,68 @@
v-if="label",
:class="labelClass"
) {{ label }}
- .input-wrapper.flex.gap-x-2.px-4.box-border.py-10px(
- :class="{'border-none': borderNone, 'border-error': borderError }"
- :style="disabledBackgroundStyle"
+ q-input(
+ v-model="value",
+ :input-class="textClass",
+ :placeholder="placeholder",
+ :outlined="outlined",
+ :dense="dense",
+ :type="type",
+ :filled="filled",
+ :disable="disabled",
+ :rules="rule",
+ :mask="mask",
+ :maxlength="maxLength"
+ hide-bottom-space,
+ autogrow
)
- input.input.w-full.outline-0.not-italic(
- v-model="value",
- :class="textClass",
- :placeholder="placeholder",
- :disabled="disabled",
- :type="type"
- )
- slot(name='icon')
+ .flex.items-center(:v-if="withIcon")
+ slot.cursor-pointer
+
+ //- slot(name='icon')
+ //- .input-wrapper.flex.gap-x-2.px-4.box-border.py-10px(
+ //- :class="{'border-none': borderNone, 'border-error': borderError }"
+ //- :style="disabledBackgroundStyle"
+ //- )
+ //- input.input.w-full.outline-0.not-italic(
+ //- v-model="value",
+ //- :class="textClass",
+ //- :placeholder="placeholder",
+ //- :disabled="disabled",
+ //- :type="type"
+ //- )
+ //- slot(name='icon')
-
-
diff --git a/src/pages/clients/components/ClientDetailSectionAddress.vue b/src/pages/clients/components/ClientDetailSectionAddress.vue
index 3e8d9de..f0bb291 100644
--- a/src/pages/clients/components/ClientDetailSectionAddress.vue
+++ b/src/pages/clients/components/ClientDetailSectionAddress.vue
@@ -43,7 +43,7 @@
)
base-input(
disabled,
- v-mask="'######'",
+ mask="######",
placeholder="000000",
label="Индекс",
v-model="dopeAddress.index",
@@ -55,7 +55,7 @@
diff --git a/src/pages/clients/components/FormCreateAddresses.vue b/src/pages/clients/components/FormCreateAddresses.vue
index ca03c76..139e516 100644
--- a/src/pages/clients/components/FormCreateAddresses.vue
+++ b/src/pages/clients/components/FormCreateAddresses.vue
@@ -12,38 +12,44 @@
.grid.grid-cols-2.gap-y-6.gap-x-4
base-input.input-info(
disabled,
+ filled,
placeholder="Введите город",
v-model="addresses.city",
label="Город"
)
base-input.input-info(
disabled,
+ filled,
placeholder="Введите область",
v-model="addresses.region",
label="Область"
)
base-input.input-info(
disabled,
+ filled,
placeholder="Введите улицу",
v-model="addresses.street",
label="Введите улицу"
)
base-input.input-info(
disabled,
+ filled,
placeholder="Номер дома",
v-model="addresses.house_number",
label="Дом"
)
base-input.input-info(
disabled,
+ filled,
placeholder="Номер квартиры",
v-model="addresses.apartment_number",
label="Квартира"
)
base-input.input-info(
disabled,
+ filled,
placeholder="000000",
- v-mask="'######'",
+ mask="######",
v-model="addresses.zip_code",
label="Индекс"
)
@@ -56,7 +62,7 @@
import BaseButton from "@/components/base/BaseButton";
import BaseInput from "@/components/base/BaseInput";
import BaseCustomSelect from "@/components/base/BaseCustomSelect";
-import { mask } from "vue-the-mask";
+
export default {
name: "FormCreateAddresses",
components: { BaseInput, BaseButton, BaseCustomSelect },
@@ -65,7 +71,6 @@ export default {
saveClient: Function,
saveFile: Function,
},
- directives: { mask },
};
diff --git a/src/pages/clients/components/FormCreateBasicInfo.vue b/src/pages/clients/components/FormCreateBasicInfo.vue
index a134313..7d7d51f 100644
--- a/src/pages/clients/components/FormCreateBasicInfo.vue
+++ b/src/pages/clients/components/FormCreateBasicInfo.vue
@@ -14,7 +14,7 @@
base-input.input-info(
v-model="phone.username",
placeholder="+7 (915) 644–92–23",
- v-mask="'+7 (###) ###-##-##'",
+ mask="+7 (###) ###-##-##",
label="Номер телефона"
)
base-input.input-info(
@@ -48,7 +48,7 @@ import BaseInputDate from "@/components/base/BaseInputDate";
import BaseAddingNetwork from "@/components/base/BaseAddingNetwork";
import { column } from "@/pages/clients/utils/tableConfig";
import BaseCustomSelect from "@/components/base/BaseCustomSelect";
-import { mask } from "vue-the-mask";
+
export default {
name: "FormCreateBasicInfo",
components: {
@@ -69,7 +69,6 @@ export default {
saveClient: Function,
addNetwork: Function,
},
- directives: { mask },
data() {
return {
networks: column.find((el) => el.name === "networks"),
diff --git a/src/pages/clients/components/FormCreateIdentityDocuments.vue b/src/pages/clients/components/FormCreateIdentityDocuments.vue
index b104114..0347a21 100644
--- a/src/pages/clients/components/FormCreateIdentityDocuments.vue
+++ b/src/pages/clients/components/FormCreateIdentityDocuments.vue
@@ -4,7 +4,7 @@
span.title-info.text-base.font-bold Паспортные данные
.grid.grid-cols-2.gap-x-4.gap-y-6
base-input.input-info(
- v-mask="'#### ######'",
+ mask="#### ######",
v-model="identityDocument.pass.series_number",
placeholder="0000 000000",
label="Серия и номер"
@@ -15,7 +15,7 @@
label="Кем выдан"
)
base-input.input-info(
- v-mask="'###-###'",
+ mask="###-###",
v-model="identityDocument.pass.issued_by_org_code",
placeholder="000–000",
label="Код подразделения"
@@ -30,14 +30,16 @@
.grid.grid-cols-2.gap-x-4.gap-y-6
base-input.input-info(
disabled,
- v-mask="'###-###-### ##'",
+ filled,
+ mask="###-###-### ##",
v-model="identityDocument.snils.number",
placeholder="000–000–000 00",
label="Номер СНИЛС"
)
base-input.input-info(
disabled,
- v-mask="'############'",
+ filled,
+ mask="############",
v-model="identityDocument.inn.number",
placeholder="000000000000",
label="Номер ИНН"
@@ -51,7 +53,7 @@
import BaseButton from "@/components/base/BaseButton";
import BaseInput from "@/components/base/BaseInput";
import BaseInputDate from "@/components/base/BaseInputDate";
-import { mask } from "vue-the-mask";
+
export default {
name: "FormCreateIdentityDocuments",
components: { BaseInput, BaseInputDate, BaseButton },
@@ -59,7 +61,6 @@ export default {
identityDocument: Object,
saveClient: Function,
},
- directives: { mask },
};
diff --git a/src/pages/clients/components/FormsAgreementCreate/AgreementPerson.vue b/src/pages/clients/components/FormsAgreementCreate/AgreementPerson.vue
index f58e5a1..8328737 100644
--- a/src/pages/clients/components/FormsAgreementCreate/AgreementPerson.vue
+++ b/src/pages/clients/components/FormsAgreementCreate/AgreementPerson.vue
@@ -16,7 +16,7 @@
base-input(
v-model="patient.seriesAndNumber",
disabled,
- v-mask="'#### ######'"
+ mask="#### ######"
label="Серия и номер"
)
.flex.justify-between
@@ -48,7 +48,7 @@
base-input(
v-model="patient.seriesAndNumber",
disabled,
- v-mask="'#### ######'"
+ mask="#### ######"
label="Серия и номер"
)
.flex.justify-between
@@ -73,7 +73,6 @@ import KitShortList from "@/components/kit/KitShortList.vue";
import KitToggle from "@/components/kit/KitToggle.vue";
//import { fetchWrapper } from "@/shared/fetchWrapper";
-import { mask } from "vue-the-mask";
export default {
name: "AgreementPerson",
components: {
@@ -84,7 +83,6 @@ export default {
KitShortList,
KitToggle,
},
- directives: { mask },
data() {
return {
patientEqualClient: true,
diff --git a/src/pages/clients/components/cells/TableCellBodyPhone.vue b/src/pages/clients/components/cells/TableCellBodyPhone.vue
index 7d90f55..f0b2cc5 100644
--- a/src/pages/clients/components/cells/TableCellBodyPhone.vue
+++ b/src/pages/clients/components/cells/TableCellBodyPhone.vue
@@ -8,13 +8,13 @@
@click.stop,
v-model="value.phone.username",
:placeholder="value.phone.username",
- v-mask="'+7 (###) ###-##-##'"
+ mask="+7 (###) ###-##-##"
)
diff --git a/src/pages/login/TheLogin.vue b/src/pages/login/TheLogin.vue
index 6047fae..7ce87aa 100644
--- a/src/pages/login/TheLogin.vue
+++ b/src/pages/login/TheLogin.vue
@@ -1,29 +1,34 @@
- .login-wrapper.flex
- .left-col.flex.flex-col.items-center
+ .flex.h-full.w-full.relative.overflow-hidden
+ .left-col.flex.flex-col.items-center.justify-center
.logo-wrapper.absolute.left-12.top-12
img(:src="logoMark")
.login-panel.flex.flex-col.justify-center.gap-y-10
.flex.flex-col.gap-y-2
.text-welcome.flex.not-italic.font-bold.text-5xl Добро пожаловать!
.text-under.flex.not-italic.font-medium.text-base(
- :style="{color: this.underTextColor}") Войдите в аккаунт, чтобы начать пользоваться сервисом «Астра».
- .flex.flex-col.gap-y-5
+ :style="{color: this.underTextColor}"
+ ) Войдите в аккаунт, чтобы начать пользоваться сервисом «Астра».
+ .flex.flex-col.gap-y-2
base-input.font-medium(
- :borderError="wrongData",
+ :rule="[wrongData => !!wrongData]",
v-model="user.username",
placeholder="Введите ваш логин",
label="Логин"
)
- .flex.flex-col.gap-y-6px.relative
- .flex.non-italic.font-semibold.text-sm.opacity-40 Пароль
- base-input(
- :borderError="wrongData",
- v-model="user.password",
- :type="changeType",
- placeholder="Введите ваш пароль"
+ base-input(
+ :rule="[wrongData => !!wrongData]",
+ v-model="user.password",
+ :type="changeType",
+ placeholder="Введите ваш пароль",
+ label="Пароль",
+ withIcon
+ )
+ q-icon(
+ v-if="!wrongData && user.password"
+ :name="isView ? 'visibility_off' : 'visibility'",
+ @click="changeView"
)
- img.absolute.z-10.right-4.bottom-10px.cursor-pointer(:src="changeIcon", alt="eyePassword", @click="changeView")
span.font-medium(:style="{color: this.redColor}", v-show="wrongData") Неверный логин или пароль
.flex.items-center.gap-x-11px
input.w-4.h-4.checkbox.cursor-pointer(@click="persist", type="checkbox")
@@ -37,8 +42,6 @@
import { fetchWrapper } from "@/shared/fetchWrapper";
import BaseInput from "@/components/base/BaseInput";
import BaseButton from "@/components/base/BaseButton";
-import viewPasswordIcon from "@/assets/icons/eye.svg";
-import hidePasswordIcon from "@/assets/icons/openEye.svg";
import logoMark from "@/assets/images/logoMark.svg";
export default {
name: "TheLogin",
@@ -47,8 +50,6 @@ export default {
return {
underTextColor: "var(--font-grey-color)",
isView: false,
- viewPassword: viewPasswordIcon,
- hidePassword: hidePasswordIcon,
logoMark,
authorized: true,
user: { username: "", password: "" },
@@ -60,9 +61,6 @@ export default {
wrongData() {
return !this.authorized && !this.user.username && !this.user.password;
},
- changeIcon() {
- return !this.isView ? this.viewPassword : this.hidePassword;
- },
changeType() {
return !this.isView ? "password" : "text";
},
@@ -118,28 +116,26 @@ export default {