Skip to content

Commit 7eb6b59

Browse files
authored
Merge pull request #99 from buggregator/issue/#83-lock-events-polishing
Issue/#83 lock events polishing
2 parents 0dd4e8d + 7d9168f commit 7eb6b59

File tree

4 files changed

+47
-53
lines changed

4 files changed

+47
-53
lines changed

plugins/events.client.ts

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ export default defineNuxtPlugin(() => {
1919
} = storeToRefs(eventsStore)
2020

2121
const {
22-
deleteEvent,
2322
deleteEventsAll,
2423
deleteEventsList,
2524
deleteEventsByType,
@@ -31,24 +30,14 @@ export default defineNuxtPlugin(() => {
3130
} = useApiTransport();
3231

3332
const removeList = async (uuids: EventId[]) => {
34-
if (uuids.length === 1) {
35-
const res = await deleteEvent(uuids[0])
36-
37-
if (res) {
38-
eventsStore.removeById(uuids[0]);
39-
cachedIdsStore.removeById(uuids[0]);
40-
}
41-
42-
return
43-
}
44-
4533
const res = await deleteEventsList(uuids)
4634

4735
if (res) {
4836
eventsStore.removeByIds(uuids);
4937
cachedIdsStore.removeByIds(uuids);
5038
}
5139
}
40+
5241
const removeAll = async () => {
5342
if (lockedIds.value.length) {
5443
const removedIds = events.value
@@ -75,7 +64,7 @@ export default defineNuxtPlugin(() => {
7564
const removeByType = async (eventType: EventType) => {
7665
if (lockedIds.value.length) {
7766
const removedIds = events.value
78-
.filter(({ type, uuid }) => type !== eventType || lockedIds.value.includes(uuid))
67+
.filter(({ type, uuid }) => type === eventType && !lockedIds.value.includes(uuid))
7968
.map(({ uuid }) => uuid)
8069

8170
await removeList(removedIds)

src/shared/lib/use-api-transport/use-api-transport.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,14 @@ export const useApiTransport = () => {
7575
}
7676

7777
const deleteEventsList = (uuids: EventId[]) => {
78+
if (!uuids.length) {
79+
return Promise.resolve();
80+
}
81+
82+
if (uuids.length === 1) {
83+
return deleteEvent(uuids[0]);
84+
}
85+
7886
if (getWSConnection()) {
7987
return centrifuge.rpc(`delete:api/events`, { uuids })
8088
}

src/shared/ui/preview-card/preview-card-header.vue

Lines changed: 34 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ const isVisibleTags = computed(() => props.tags.length > 0);
5858
v-if="eventUrl"
5959
:href="eventUrl"
6060
target="_blank"
61-
class="preview-card-header__tag preview-card-header__button--json"
61+
class="preview-card-header__tag preview-card-header__tag--json"
6262
>
6363
JSON
6464
</a>
@@ -87,7 +87,7 @@ const isVisibleTags = computed(() => props.tags.length > 0);
8787

8888
<button
8989
class="preview-card-header__button preview-card-header__button--collapse"
90-
:class="`preview-card-header__button--${eventType}`"
90+
:class="{ 'preview-card-header__button--collapse-closed': !isOpen }"
9191
@click="changeView"
9292
>
9393
<IconSvg
@@ -102,14 +102,6 @@ const isVisibleTags = computed(() => props.tags.length > 0);
102102
/>
103103
</button>
104104

105-
<button
106-
class="preview-card-header__button preview-card-header__button--delete"
107-
:disabled="isLocked"
108-
@click="deleteEvent"
109-
>
110-
<IconSvg name="times" class="preview-card-header__button-icon" />
111-
</button>
112-
113105
<button
114106
class="preview-card-header__button preview-card-header__button--lock"
115107
:class="{
@@ -119,6 +111,14 @@ const isVisibleTags = computed(() => props.tags.length > 0);
119111
>
120112
<IconSvg name="lock" class="preview-card-header__button-icon" />
121113
</button>
114+
115+
<button
116+
class="preview-card-header__button preview-card-header__button--delete"
117+
:disabled="isLocked"
118+
@click="deleteEvent"
119+
>
120+
<IconSvg name="times" class="preview-card-header__button-icon" />
121+
</button>
122122
</div>
123123
</div>
124124
</template>
@@ -174,50 +174,47 @@ $eventTypeColorsMap: (
174174
}
175175
}
176176
177-
.preview-card-header__button {
178-
@apply w-5 h-5 md:w-4 md:h-4 rounded-full opacity-90 hover:opacity-100 transition-all hover:ring-4 ring-offset-1;
179-
/* Applied tailwind classes depends on event type
180-
Need to keep declaration for tailwind correct work:
181-
'var-dump' 'bg-red-600 ring-red-300',
182-
'Smtp' 'bg-orange-600 ring-orange-300',
183-
'Sentry' 'bg-pink-600 ring-pink-300',
184-
'profiler' 'bg-purple-600 ring-purple-300',
185-
'monolog' 'bg-gray-600 ring-gray-300',
186-
'inspector' 'bg-gray-600 ring-gray-300',
187-
'ray' 'bg-gray-600 ring-gray-300' */
188-
189-
@each $map in $eventTypeColorsMap {
190-
$name: nth($map, 1);
191-
$color: nth($map, 2);
177+
.preview-card-header__tag--json {
178+
@apply bg-blue-600 text-blue-50 border-blue-600;
192179
193-
&--#{$name} {
194-
@apply bg-#{$color}-600 ring-#{$color}-300;
195-
}
180+
&:hover {
181+
@apply bg-blue-500 dark:bg-blue-500;
196182
}
183+
}
197184
198-
&:disabled {
199-
@apply opacity-50 cursor-not-allowed;
200-
}
185+
.preview-card-header__button {
186+
@apply w-5 h-5 md:w-4 md:h-4 rounded-full opacity-90 hover:opacity-100 transition-all hover:ring-4 ring-offset-1;
187+
@apply text-white bg-gray-300 dark:bg-gray-600 ring-blue-200 dark:ring-blue-800;
188+
}
189+
190+
.preview-card-header__button--copy {
191+
@apply text-gray-800 dark:text-white bg-transparent dark:bg-transparent;
201192
}
202193
203194
.preview-card-header__button--collapse {
204-
@apply text-white bg-gray-600 ring-gray-300;
195+
&:hover {
196+
@apply text-white bg-gray-500;
197+
}
205198
}
206199
207-
.preview-card-header__button--json {
208-
@apply text-white ring-gray-300 bg-blue-700 hover:bg-blue-500;
200+
.preview-card-header__button--collapse-closed {
201+
@apply text-white bg-blue-700 ring-blue-300 dark:bg-blue-700 hover:bg-blue-700;
209202
}
210203
211204
.preview-card-header__button--delete {
212-
@apply text-red-700 bg-white dark:bg-red-700 hover:bg-red-700 hover:text-white;
205+
@apply text-white dark:text-white bg-red-700 dark:bg-red-700 ring-red-200 dark:ring-red-800;
206+
207+
&:disabled {
208+
@apply opacity-50 pointer-events-none;
209+
}
213210
}
214211
215212
.preview-card-header__button--lock {
216-
@apply text-gray-700 dark:bg-gray-400 bg-gray-200 hover:bg-green-700 hover:text-white;
213+
@apply hover:bg-green-700 hover:dark:bg-green-700;
217214
}
218215
219216
.preview-card-header__button--locked {
220-
@apply text-white dark:text-white bg-green-700 dark:bg-green-700 ring-2 ring-green-700 hover:bg-green-800 dark:hover:bg-green-500;
217+
@apply text-white dark:text-white bg-green-700 dark:bg-green-700 ring-2 ring-green-700 dark:ring-green-700 hover:bg-green-800 dark:hover:bg-green-500;
221218
}
222219
223220
.preview-card-header__button-icon {

src/widgets/ui/page-header/page-header.vue

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,14 @@ type Emits = {
1010
delete: [value: boolean];
1111
};
1212
13-
const props = withDefaults(defineProps<Props>(), {
13+
withDefaults(defineProps<Props>(), {
1414
title: "",
1515
buttonTitle: "",
1616
});
1717
1818
const emit = defineEmits<Emits>();
1919
20-
const buttonClick = () => {
20+
const clearEvents = () => {
2121
emit("delete", true);
2222
};
2323
</script>
@@ -32,7 +32,7 @@ const buttonClick = () => {
3232
<button
3333
v-if="buttonTitle"
3434
class="page-header__btn-clear"
35-
@click="buttonClick"
35+
@click="clearEvents"
3636
>
3737
{{ buttonTitle }}
3838
</button>

0 commit comments

Comments
 (0)