fix table header ui

This commit is contained in:
Julian Freeman
2026-04-17 16:49:20 -04:00
parent 5f835731fc
commit 3478c44860
4 changed files with 112 additions and 113 deletions

View File

@@ -32,33 +32,33 @@ function isSelected(extensionId: string) {
<template>
<section class="table-section">
<div class="extensions-toolbar">
<label class="toolbar-checkbox" :class="{ disabled: !extensions.length }">
<input
type="checkbox"
class="native-checkbox"
:checked="allSelected"
:disabled="!extensions.length || deleteBusy"
@change="emit('toggleAllExtensions')"
/>
<span class="custom-checkbox" :class="{ checked: allSelected }" aria-hidden="true">
<svg viewBox="0 0 16 16">
<path d="M3.5 8.2L6.4 11.1L12.5 4.9" />
</svg>
</span>
<span>Select All</span>
</label>
<button
class="danger-button"
type="button"
:disabled="!selectedExtensionIds.length || deleteBusy"
@click="emit('deleteSelected')"
>
{{ deleteBusy ? "Deleting..." : `Delete Selected (${selectedExtensionIds.length})` }}
</button>
</div>
<div v-if="extensions.length" class="data-table">
<div class="extensions-toolbar">
<label class="toolbar-checkbox" :class="{ disabled: !extensions.length }">
<input
type="checkbox"
class="native-checkbox"
:checked="allSelected"
:disabled="!extensions.length || deleteBusy"
@change="emit('toggleAllExtensions')"
/>
<span class="custom-checkbox" :class="{ checked: allSelected }" aria-hidden="true">
<svg viewBox="0 0 16 16">
<path d="M3.5 8.2L6.4 11.1L12.5 4.9" />
</svg>
</span>
<span>Select All</span>
</label>
<button
class="danger-button"
type="button"
:disabled="!selectedExtensionIds.length || deleteBusy"
@click="emit('deleteSelected')"
>
{{ deleteBusy ? "Deleting..." : `Delete Selected (${selectedExtensionIds.length})` }}
</button>
</div>
<div class="data-table-header extensions-grid">
<div class="header-cell checkbox-cell">Pick</div>
<div class="header-cell icon-cell">Icon</div>
@@ -117,9 +117,6 @@ function isSelected(extensionId: string) {
<style scoped>
.table-section {
display: flex;
flex-direction: column;
gap: 10px;
padding: 0;
height: 100%;
min-height: 0;
@@ -130,6 +127,8 @@ function isSelected(extensionId: string) {
align-items: center;
justify-content: space-between;
gap: 12px;
padding: 10px 12px 8px;
border-bottom: 1px solid rgba(148, 163, 184, 0.1);
}
.toolbar-checkbox {