diff --git a/src/pages/calendar/components/CalendarColumn.vue b/src/pages/calendar/components/CalendarColumn.vue
index af2562b..74fb4a6 100644
--- a/src/pages/calendar/components/CalendarColumn.vue
+++ b/src/pages/calendar/components/CalendarColumn.vue
@@ -16,6 +16,7 @@
calendar-event-card(
v-for="event in dayEvents"
:key="event.id"
+ :id="event.id"
:ownerEvent="event"
:event-types="eventTypes"
:style="eventCardPosition(event.start, event.end)"
diff --git a/src/pages/calendar/components/CalendarEventCard.vue b/src/pages/calendar/components/CalendarEventCard.vue
index 4cd708e..c829693 100644
--- a/src/pages/calendar/components/CalendarEventCard.vue
+++ b/src/pages/calendar/components/CalendarEventCard.vue
@@ -1,12 +1,12 @@
.wrapper.cursor-pointer.my-1.relative(
- @click="transmitEventData",
:style="themeColors",
:class="cardTheme"
)
.card.flex.px-2(
:class="{'py-6px flex-col': longCard}",
- :style="cardHeight"
+ :style="cardHeight",
+ @click="openDescriptionCard"
)
.header.flex.justify-between.items-center(:class="{'items-start': longCard}")
.header-text
@@ -20,12 +20,17 @@
.col
ul
li.mt-2(v-for="elem in descriptionColumns.rightColumn" :key="elem") {{ elem }}
- calendar-event-description-card.right-0(
- v-if="isActive"
- :style="descriptionCardPosition"
- :owner-event="this.ownerEvent"
- :event-types="this.eventTypes"
- )
+ calendar-event-description-card.right-0(
+ v-if="isOpenDescriptionCard"
+ :style="descriptionCardPosition"
+ :owner-event="this.ownerEvent"
+ :event-types="this.eventTypes"
+ :event-time="this.eventTime"
+ :event-member="eventMember"
+ :description="description"
+ @selected-event="transmitEventData"
+ @close-description-card="closeDescriptionCard"
+ )
@@ -216,6 +238,8 @@ export default {
background-color: var(--bg-color)
border: 2px solid var(--border-color)
border-left: 4px solid var(--bg-active)
+ .card:hover
+ background-color: var(--bg-hover)
.header-text, .body
color: var(--font-color)
.details-count
@@ -240,19 +264,6 @@ export default {
.card
border-radius: 4px
min-height: 23px
- &:hover
- background-color: var(--bg-hover)
- border: 2px solid var(--border-color)
- border-left: 4px solid var(--bg-active)
- &:hover .header-text
- color: var(--font-color)
- &:hover .details-count
- background-color: var(--bg-active)
- color: var(--font-active-color)
- &:hover .body
- color: var(--font-color)
- &:hover li:before
- background-color: var(--font-color)
.header
width: 100%
diff --git a/src/pages/calendar/components/CalendarEventDescriptionCard.vue b/src/pages/calendar/components/CalendarEventDescriptionCard.vue
index b134ca2..5c33990 100644
--- a/src/pages/calendar/components/CalendarEventDescriptionCard.vue
+++ b/src/pages/calendar/components/CalendarEventDescriptionCard.vue
@@ -1,5 +1,23 @@
- .wrapper.px-4.pt-14px.pb-4.font-medium
+ .wrapper.px-4.pt-14px.pb-4.font-medium.cursor-auto(
+ :style="typeColor",
+ v-click-outside="close"
+ )
+ .flex.justify-between.items-center.mb-2
+ .flex
+ span.inline-block.font-bold.text-base.mr-3.mt-2px {{ eventTime }}
+ .type.text-xxs.px-14px.py-1(v-if="isCertainType")
+ span.type-text {{ ownerEvent.kind }}
+ .right-side.flex.gap-x-4.text-sm
+ .icon-basket.flex.items-center.cursor-pointer
+ .icon-edit.flex.items-center.cursor-pointer(@click="transmitEventData")
+ .icon-cancel.text-xxs.flex.items-center.cursor-pointer(@click="close")
+ .body.mr-6
+ span.text-base {{ eventMember }}
+ .flex.text-xxs.mt-4.justify-between
+ .column
+ ul
+ li(v-for="elem in description" :key="elem") {{ elem }}
diff --git a/src/pages/calendar/components/CalendarFormAddEvent.vue b/src/pages/calendar/components/CalendarFormAddEvent.vue
index c88a84f..de78fc9 100644
--- a/src/pages/calendar/components/CalendarFormAddEvent.vue
+++ b/src/pages/calendar/components/CalendarFormAddEvent.vue
@@ -1,5 +1,5 @@
- .flex.flex-col.gap-y-6.pt-6.pb-7.px-8.event-form.fixed.right-0.bottom-3
+ .flex.flex-col.gap-y-6.pt-6.pb-7.px-8.event-form.fixed.right-0.bottom-4
.flex.justify-between
span.title.text-xl.font-bold {{!selectedEventData.id ? "Назначение события" : "Изменение события"}}
.flex.pt-2
diff --git a/src/pages/clients/components/ClientsTableRow.vue b/src/pages/clients/components/ClientsTableRow.vue
index ecbe11d..3cd118d 100644
--- a/src/pages/clients/components/ClientsTableRow.vue
+++ b/src/pages/clients/components/ClientsTableRow.vue
@@ -1,19 +1,70 @@
.row-wrapper.flex.flex-col.w-full
- .row-body.flex.w-full.cursor-pointer(:id="id" @click="(e) => openDetailInfo(e)")
+ .row-body.flex.w-full.cursor-pointer(
+ :id="id",
+ @click="(e) => openDetailInfo(e)"
+ )
.check-box.flex.justify-center.items-center
- clients-table-checkbox(:id="id" :check="check" :is-check="isCheck")
- table-cell-body-name(:value="dataClient" :avatar="dataClient.avatar" :avatar-color="dataClient.color" :is-open-change="isOpenChange" :width="columnBody.find(el => el.name === 'fullName').width")
- table-cell-body-age(:value="dataClient" :is-open-change="isOpenChange" :width="columnBody.find(el => el.name === 'age').width")
- table-cell-body-priority(:value="dataClient.priority" :choose-priority="choosePriority" :is-open-change="isOpenChange" :width="columnBody.find(el => el.name === 'priority').width")
- table-cell-body-phone(:value="dataClient" :is-open-change="isOpenChange" :width="columnBody.find(el => el.name === 'phone').width")
- table-cell-body-email(:value="dataClient" :is-open-change="isOpenChange" :width="columnBody.find(el => el.name === 'email').width")
- table-cell-body-networks(:delete-network="deleteNetwork" :add-network="addNetwork" :networks="dataClient.contacts" :is-open-change="isOpenChange" :width="columnBody.find(el => el.name === 'networks').width")
+ clients-table-checkbox(
+ :id="id",
+ :check="check",
+ :is-check="isCheck"
+ )
+ table-cell-body-name(
+ :value="dataClient",
+ :avatar="dataClient.avatar",
+ :avatar-color="dataClient.color",
+ :is-open-change="isOpenChange",
+ :width="columnBody.find(el => el.name === 'fullName').width"
+ )
+ table-cell-body-age(
+ :value="dataClient",
+ :is-open-change="isOpenChange",
+ :width="columnBody.find(el => el.name === 'age').width"
+ )
+ table-cell-body-priority(
+ :value="dataClient.priority",
+ :choose-priority="choosePriority",
+ :is-open-change="isOpenChange",
+ :width="columnBody.find(el => el.name === 'priority').width"
+ )
+ table-cell-body-phone(
+ :value="dataClient",
+ :is-open-change="isOpenChange",
+ :width="columnBody.find(el => el.name === 'phone').width"
+ )
+ table-cell-body-email(
+ :value="dataClient",
+ :is-open-change="isOpenChange",
+ :width="columnBody.find(el => el.name === 'email').width"
+ )
+ table-cell-body-networks(
+ :delete-network="deleteNetwork",
+ :add-network="addNetwork",
+ :networks="dataClient.contacts",
+ :is-open-change="isOpenChange",
+ :width="columnBody.find(el => el.name === 'networks').width"
+ )
.dots.flex.justify-center.items-center
- base-button(v-if="isOpenChange" @click="closeChangeData" :confirm="true" :rounded="true" :outlined="true" :size="20")
+ base-button(
+ v-if="isOpenChange",
+ @click="closeChangeData",
+ confirm,
+ rounded,
+ outlined,
+ :size="20"
+ )
.icon-ok.text-xsm(class="pt-[3px]")
- .relative.dots-button.icon-dots.cursor-pointer.leading-6.text-center(v-show="!isOpenChange" :tabindex="1" @click="(e) => openPopup(e)" @blur="handleUnFocusPopup")
- clients-action-popup(v-if="isOpenPopup" :open-change-data="openChangeData")
+ .relative.dots-button.icon-dots.cursor-pointer.leading-6.text-center(
+ v-show="!isOpenChange",
+ :tabindex="1",
+ @click="(e) => openPopup(e)",
+ @blur="handleUnFocusPopup"
+ )
+ clients-action-popup(
+ v-if="isOpenPopup",
+ :open-change-data="openChangeData"
+ )
client-detail-info-wrapper(
v-if="isOpenDetailInfo"
:data-address="dataAddress"
@@ -284,6 +335,7 @@ export default {
},
openPopup(e) {
e.target.focus();
+ e.stopPropagation();
this.isOpenPopup = !this.isOpenPopup;
},
openDetailInfo(e) {
diff --git a/tailwind.config.js b/tailwind.config.js
index 53753ce..55b0db9 100644
--- a/tailwind.config.js
+++ b/tailwind.config.js
@@ -29,6 +29,7 @@ module.exports = {
43: "43px",
},
spacing: {
+ "2px": "2px",
"3px": "3px",
"4_75px": "4.75px",
"6px": "6px",