Skip to content

Commit 83667c2

Browse files
distantnativebastianallgeier
authored andcommitted
fix: Replace pointer-events: none with logic
1 parent 9803fe1 commit 83667c2

File tree

16 files changed

+55
-53
lines changed

16 files changed

+55
-53
lines changed

panel/src/components/Forms/Blocks/Blocks.vue

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,11 @@
5757
</k-draggable>
5858

5959
<!-- No blocks -->
60-
<k-empty class="k-blocks-empty" icon="box" @click="choose(blocks.length)">
60+
<k-empty
61+
class="k-blocks-empty"
62+
icon="box"
63+
v-on="!disabled ? { click: () => choose(blocks.length) } : {}"
64+
>
6165
{{ empty ?? $t("field.blocks.empty") }}
6266
</k-empty>
6367
</template>

panel/src/components/Forms/Blocks/Types/Heading.vue

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,8 @@
1414
@input="update({ text: $event })"
1515
/>
1616
<k-input
17-
v-if="levels.length > 1"
17+
v-if="levels.length > 1 && !disabled"
1818
ref="level"
19-
:disabled="disabled"
2019
:empty="false"
2120
:options="levels"
2221
:value="content.level"

panel/src/components/Forms/Field.vue

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -78,12 +78,6 @@ export default {
7878
.k-field[data-disabled="true"] {
7979
cursor: not-allowed;
8080
}
81-
.k-field[data-disabled="true"] * {
82-
pointer-events: none;
83-
}
84-
.k-field[data-disabled="true"] .k-text[data-theme="help"] * {
85-
pointer-events: initial;
86-
}
8781
.k-field-header {
8882
display: flex;
8983
justify-content: space-between;

panel/src/components/Forms/Field/ColorField.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
<span v-html="currentOption.text" />
4949
</template>
5050

51-
<template v-if="mode === 'picker'" #icon>
51+
<template v-if="mode === 'picker' && !disabled" #icon>
5252
<k-button
5353
:icon="icon"
5454
class="k-input-icon-button"

panel/src/components/Forms/Field/DateField.vue

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,8 @@
1414
@input="onDateInput"
1515
@submit="$emit('submit')"
1616
>
17-
<template v-if="calendar" #icon>
17+
<template v-if="calendar && !disabled" #icon>
1818
<k-button
19-
:disabled="disabled"
2019
:icon="icon"
2120
:title="$t('date.select')"
2221
class="k-input-icon-button"
@@ -47,9 +46,8 @@
4746
@input="onTimeInput"
4847
@submit="$emit('submit')"
4948
>
50-
<template v-if="times" #icon>
49+
<template v-if="times && !disabled" #icon>
5150
<k-button
52-
:disabled="disabled"
5351
:icon="time.icon ?? 'clock'"
5452
:title="$t('time.select')"
5553
class="k-input-icon-button"

panel/src/components/Forms/Field/EmailField.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
>
1414
<template #icon>
1515
<k-button
16-
v-if="link"
16+
v-if="link && mailto"
1717
:icon="icon"
1818
:link="mailto"
1919
:title="$t('open')"

panel/src/components/Forms/Field/EntriesField.vue

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,11 @@
3535
:value="JSON.stringify(entries)"
3636
>
3737
<!-- Empty State -->
38-
<k-empty v-if="entries.length === 0" icon="list-bullet" @click="add()">
38+
<k-empty
39+
v-if="entries.length === 0"
40+
icon="list-bullet"
41+
v-on="!disabled ? { click: add } : {}"
42+
>
3943
{{ empty ?? $t("field.entries.empty") }}
4044
</k-empty>
4145

panel/src/components/Forms/Field/ModelsField.vue

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
>
2424
<k-collection
2525
v-bind="collection"
26-
@empty="open"
26+
v-on="!disabled ? { empty: open } : {}"
2727
@sort="onInput"
2828
@sort-change="$emit('change', $event)"
2929
>
@@ -168,9 +168,3 @@ export default {
168168
}
169169
};
170170
</script>
171-
172-
<style>
173-
.k-models-field[data-disabled="true"] .k-item * {
174-
pointer-events: all !important;
175-
}
176-
</style>

panel/src/components/Forms/Field/ObjectField.vue

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,13 +46,13 @@
4646
</template>
4747
</tbody>
4848
</table>
49-
<k-empty v-else icon="box" @click="add">
49+
50+
<k-empty v-else icon="box" v-on="!disabled ? { click: add } : {}">
5051
{{ empty ?? $t("field.object.empty") }}
5152
</k-empty>
5253
</template>
53-
<template v-else>
54-
<k-empty icon="box">{{ $t("fields.empty") }}</k-empty>
55-
</template>
54+
55+
<k-empty v-else icon="box">{{ $t("fields.empty") }}</k-empty>
5656

5757
<!-- Validation -->
5858
<input

panel/src/components/Forms/Field/StructureField.vue

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,13 @@
1414
variant="filled"
1515
/>
1616
<k-button-group v-else>
17-
<template v-if="canSelect">
18-
<k-button v-bind="batchEditingToggle" size="xs" variant="filled" />
19-
</template>
17+
<k-button
18+
v-if="canSelect"
19+
v-bind="batchEditingToggle"
20+
size="xs"
21+
variant="filled"
22+
/>
23+
2024
<k-button-group layout="collapsed">
2125
<k-button
2226
:autofocus="autofocus"
@@ -62,7 +66,11 @@
6266
>
6367
<template v-if="hasFields">
6468
<!-- Empty State -->
65-
<k-empty v-if="items.length === 0" icon="list-bullet" @click="add()">
69+
<k-empty
70+
v-if="items.length === 0"
71+
icon="list-bullet"
72+
v-on="!disabled ? { click: add } : {}"
73+
>
6674
{{ empty ?? $t("field.structure.empty") }}
6775
</k-empty>
6876

@@ -80,6 +88,7 @@
8088
:selecting="isSelecting"
8189
:selected="selected"
8290
:sortable="isSortable"
91+
class="k-structure-field-table"
8392
@cell="open($event.row, $event.columnIndex)"
8493
@input="onTableInput"
8594
@option="option"
@@ -620,11 +629,8 @@ export default {
620629
margin-top: var(--spacing-3);
621630
}
622631
623-
/* Allow interaction with disabled structure field to open the drawer */
624-
.k-structure-field[data-disabled="true"] {
632+
/* Restore cursor for disabled structure field content */
633+
.k-structure-field-table[aria-disabled="true"] {
625634
cursor: initial;
626635
}
627-
.k-structure-field[data-disabled="true"] * {
628-
pointer-events: initial;
629-
}
630636
</style>

0 commit comments

Comments
 (0)