feat(items): clarify column names

This commit is contained in:
Edouard Vanbelle
2026-07-20 21:16:41 +02:00
parent 931e27d09c
commit 5b8fb68b30
22 changed files with 178 additions and 45 deletions
@@ -170,6 +170,14 @@
bucketAction?: Snippet<[string]>;
/** Show the owner column + vignette (list view) and hover tooltip. */
showOwner?: boolean;
/**
* Override the owner column header (and the hover-tooltip prefix). The
* default reads "Created by", matching the semantic of `created_by` used
* on /files, /favorites, /recent. /shared-with-me overrides to
* "Shared by" since the column there actually renders `granted_by`
* (the sharer, not the resource author).
*/
ownerLabel?: string;
/** Allow grid/list toggle (shares the app-wide view mode). */
showViewToggle?: boolean;
/** Show the dotfile-visibility eye toggle in the toolbar AND
@@ -362,6 +370,7 @@
dateCell,
bucketAction,
showOwner = false,
ownerLabel,
showViewToggle = true,
showDotfileToggle = false,
selectable = false,
@@ -865,7 +874,7 @@
const owner = ownerId ? (resolveOwnerName?.(ownerId) ?? ownerId) : '';
const path = item.path ?? '';
return [
owner && `${t('files.col_owner', 'Owner')}: ${owner}`,
owner && `${ownerLabel ?? t('files.col_created_by', 'Created by')}: ${owner}`,
path && `${t('files.col_path', 'Location')}: ${path}`
]
.filter(Boolean)
@@ -1333,13 +1342,15 @@
/>
</div>
{/if}
<div>{t('files.col_name', 'Name')}</div>
{#if showOwner}<div>{t('files.col_owner', 'Owner')}</div>{/if}
{#if showPath}<div>{pathLabel ?? t('files.col_path', 'Location')}</div>{/if}
{#if showType}<div>{t('files.col_type', 'Type')}</div>{/if}
{#if showSize}<div>{t('files.col_size', 'Size')}</div>{/if}
{#if showDate}<div>{dateLabel ?? t('files.col_modified', 'Date')}</div>{/if}
{#if hasActionCell}<div></div>{/if}
<div class="name-cell">{t('files.col_name', 'Name')}</div>
{#if showOwner}<div class="owner-cell">
{ownerLabel ?? t('files.col_created_by', 'Created by')}
</div>{/if}
{#if showPath}<div class="path-cell">{pathLabel ?? t('files.col_path', 'Location')}</div>{/if}
{#if showType}<div class="type-cell">{t('files.col_type', 'Type')}</div>{/if}
{#if showSize}<div class="size-cell">{t('files.col_size', 'Size')}</div>{/if}
{#if showDate}<div class="date-cell">{dateLabel ?? t('files.col_modified', 'Date')}</div>{/if}
{#if hasActionCell}<div class="action-cell"></div>{/if}
</div>
{/snippet}
@@ -266,9 +266,12 @@
min-width: 0;
}
/* Size column: always nth-child(5) because .owner-cell is always in the DOM
(even when hidden via display:none, it still occupies a child slot). */
.list-header > div:nth-child(5),
/* Column alignment — targets classes on BOTH the header divs AND the value
cells, so the header label always matches its column's value alignment
regardless of which optional columns (path/type/owner/…) are on. The
previous shape keyed off `nth-child(N)` and drifted the moment a
ResourceList caller toggled a `show*` prop. */
.list-header > .size-cell,
.files-list-view .file-item .size-cell {
justify-self: end;
text-align: right;
@@ -325,7 +328,12 @@
vignette sized to its content and the cell clipped it flat with
no ellipsis. The cell's own `text-overflow` still ellipses
plain-text fallback content (cells without a vignette child). */
.owner-cell {
/* Scoped to `.file-item` so the header div — which also carries the
`.owner-cell` class now (so column-alignment CSS keys off classes
instead of brittle nth-child indices) — doesn't inherit the muted
cell colour / cell font size. Header keeps `.list-header`'s
semibold + text colour. */
.file-item .owner-cell {
color: var(--color-text-secondary);
font-size: var(--text-base);
display: flex;
@@ -427,7 +435,7 @@
flex-shrink: 0;
}
.list-header > div:nth-child(5),
.list-header > .date-cell,
.files-list-view .file-item .date-cell {
justify-self: center;
text-align: center;
@@ -330,6 +330,7 @@
onfavorite={unfavorite}
showOwner
showPath
dateLabel={t('files.col_added', 'Added')}
selectable
{contextActions}
menuPrepare={async (item) => {
@@ -1594,6 +1594,8 @@
showOwner
showType
showDate
dateLabel={t('files.col_modified', 'Modified')}
showPath={false}
showDotfileToggle
enableSystemDrop
onsystemdrop={onDrop}
+1
View File
@@ -374,6 +374,7 @@
onopen={open}
showOwner
showPath
dateLabel={t('files.col_opened', 'Opened')}
showDotfileToggle
selectable
{contextActions}
@@ -228,6 +228,8 @@
emptyText={t('shared_with_me.empty', 'Nothing has been shared with you yet.')}
hasMore={!!cursor}
showOwner={true}
ownerLabel={t('share.col_shared_by', 'Shared by')}
dateLabel={t('share.col_shared', 'Shared')}
{groupBys}
bind:groupBy
bind:reversed
+9 -2
View File
@@ -234,7 +234,9 @@
"link_name": "Link name (optional)",
"notifyByEmail": "إشعار عبر البريد الإلكتروني",
"revoke": "Remove",
"role_label": "الدور"
"role_label": "الدور",
"col_shared_by": "شورك بواسطة",
"col_shared": "مشترك"
},
"share_dialogTitle": "رابط المشاركة",
"share_linkLabel": "رابط المشاركة:",
@@ -375,7 +377,12 @@
"rename_dotfile_hidden": "تمت إعادة التسمية إلى \"{{name}}\" — أصبحت الآن مخفية وفقاً لتفضيلاتك.",
"new_folder_dotfile_hidden": "تم إنشاء المجلد \"{{name}}\" — مخفي وفقاً لتفضيلاتك.",
"dotfiles_hidden_toast": "تم إخفاء الملفات المخفية",
"dotfiles_shown_toast": "تم إظهار الملفات المخفية"
"dotfiles_shown_toast": "تم إظهار الملفات المخفية",
"col_modified": "معدل",
"col_added": "أضيف",
"col_created_by": "أنشئ بواسطة",
"col_opened": "افتُح",
"col_path": "الموقع"
},
"dialogs": {
"rename_folder": "إعادة تسمية المجلد",
+9 -2
View File
@@ -234,7 +234,9 @@
"link_name": "Link name (optional)",
"notifyByEmail": "Per E-Mail benachrichtigen",
"revoke": "Remove",
"role_label": "Rolle"
"role_label": "Rolle",
"col_shared_by": "Geteilt von",
"col_shared": "Geteilt"
},
"share_dialogTitle": "Link teilen",
"share_linkLabel": "Geteilter Link:",
@@ -375,7 +377,12 @@
"rename_dotfile_hidden": "In \"{{name}}\" umbenannt — jetzt durch Ihre Einstellung ausgeblendet.",
"new_folder_dotfile_hidden": "Ordner \"{{name}}\" erstellt — durch Ihre Einstellung ausgeblendet.",
"dotfiles_hidden_toast": "Verborgene Dateien ausgeblendet",
"dotfiles_shown_toast": "Verborgene Dateien angezeigt"
"dotfiles_shown_toast": "Verborgene Dateien angezeigt",
"col_modified": "Geändert",
"col_added": "Hinzugefügt",
"col_created_by": "Erstellt von",
"col_opened": "Geöffnet",
"col_path": "Speicherort"
},
"dialogs": {
"rename_folder": "Ordner umbenennen",
+7 -2
View File
@@ -339,7 +339,9 @@
"set_expiry": "Set expiry",
"title": "Shared",
"unlock": "Unlock",
"role_label": "Role"
"role_label": "Role",
"col_shared_by": "Shared by",
"col_shared": "Shared"
},
"share_dialogTitle": "Share Link",
"share_linkLabel": "Share Link:",
@@ -466,7 +468,10 @@
"batch_delete": "Delete selected",
"breadcrumb": "Breadcrumb",
"cancel_selection": "Cancel selection",
"col_modified": "Date",
"col_modified": "Modified",
"col_added": "Added",
"col_created_by": "Created by",
"col_opened": "Opened",
"col_name": "Name",
"col_owner": "Owner",
"col_path": "Location",
+9 -2
View File
@@ -183,7 +183,9 @@
"link_name": "Nombre del enlace (opcional)",
"notifyByEmail": "Notificar por correo",
"revoke": "Eliminar",
"role_label": "Rol"
"role_label": "Rol",
"col_shared_by": "Compartido por",
"col_shared": "Compartido"
},
"share_dialogTitle": "Compartir Enlace",
"share_linkLabel": "Enlace compartido:",
@@ -380,7 +382,12 @@
"rename_dotfile_hidden": "Renombrado a \"{{name}}\" — ahora oculto por tu preferencia.",
"new_folder_dotfile_hidden": "Carpeta \"{{name}}\" creada — oculta por tu preferencia.",
"dotfiles_hidden_toast": "Archivos ocultos ocultados",
"dotfiles_shown_toast": "Archivos ocultos mostrados"
"dotfiles_shown_toast": "Archivos ocultos mostrados",
"col_modified": "Modificado",
"col_added": "Añadido",
"col_created_by": "Creado por",
"col_opened": "Abierto",
"col_path": "Ubicación"
},
"dialogs": {
"rename_folder": "Renombrar carpeta",
+9 -2
View File
@@ -234,7 +234,9 @@
"link_name": "Link name (optional)",
"notifyByEmail": "اطلاع‌رسانی از طریق ایمیل",
"revoke": "Remove",
"role_label": "نقش"
"role_label": "نقش",
"col_shared_by": "به اشتراک گذاشته شده توسط",
"col_shared": "به اشتراک گذاشته شده"
},
"share_dialogTitle": "پیوند هم‌رسانی",
"share_linkLabel": "پیوند هم‌رسانی:",
@@ -375,7 +377,12 @@
"rename_dotfile_hidden": "نام به \"{{name}}\" تغییر کرد — اکنون طبق تنظیمات شما پنهان است.",
"new_folder_dotfile_hidden": "پوشه \"{{name}}\" ایجاد شد — طبق تنظیمات شما پنهان است.",
"dotfiles_hidden_toast": "پرونده‌های پنهان مخفی شد",
"dotfiles_shown_toast": "پرونده‌های پنهان نمایش داده شد"
"dotfiles_shown_toast": "پرونده‌های پنهان نمایش داده شد",
"col_modified": "تغییر یافته",
"col_added": "افزوده شده",
"col_created_by": "ایجاد شده توسط",
"col_opened": "باز شده",
"col_path": "مکان"
},
"dialogs": {
"rename_folder": "تغییر نام پوشه",
+9 -2
View File
@@ -234,7 +234,9 @@
"link_name": "Link name (optional)",
"notifyByEmail": "Notifier par e-mail",
"revoke": "Remove",
"role_label": "Rôle"
"role_label": "Rôle",
"col_shared_by": "Partagé par",
"col_shared": "Partagé"
},
"share_dialogTitle": "Lien de partage",
"share_linkLabel": "Lien partagé :",
@@ -375,7 +377,12 @@
"rename_dotfile_hidden": "Renommé en \"{{name}}\" — désormais masqué par votre préférence.",
"new_folder_dotfile_hidden": "Dossier \"{{name}}\" créé — masqué par votre préférence.",
"dotfiles_hidden_toast": "Fichiers masqués",
"dotfiles_shown_toast": "Fichiers affichés"
"dotfiles_shown_toast": "Fichiers affichés",
"col_modified": "Modifié",
"col_added": "Ajouté",
"col_created_by": "Créé par",
"col_opened": "Ouvert",
"col_path": "Emplacement"
},
"dialogs": {
"rename_folder": "Renommer le dossier",
+9 -2
View File
@@ -234,7 +234,9 @@
"link_name": "Link name (optional)",
"notifyByEmail": "ईमेल से सूचित करें",
"revoke": "Remove",
"role_label": "भूमिका"
"role_label": "भूमिका",
"col_shared_by": "द्वारा साझा किया गया",
"col_shared": "साझा किया गया"
},
"share_dialogTitle": "शेयर लिंक",
"share_linkLabel": "शेयर लिंक:",
@@ -375,7 +377,12 @@
"rename_dotfile_hidden": "\"{{name}}\" में नाम बदला — अब आपकी वरीयता के अनुसार छिपा हुआ है।",
"new_folder_dotfile_hidden": "फ़ोल्डर \"{{name}}\" बनाया गया — आपकी वरीयता के अनुसार छिपा हुआ है।",
"dotfiles_hidden_toast": "छिपी फ़ाइलें छिपाई गईं",
"dotfiles_shown_toast": "छिपी फ़ाइलें दिखाई गईं"
"dotfiles_shown_toast": "छिपी फ़ाइलें दिखाई गईं",
"col_modified": "संशोधित",
"col_added": "जोड़ा गया",
"col_created_by": "द्वारा बनाया गया",
"col_opened": "खोला गया",
"col_path": "स्थान"
},
"dialogs": {
"rename_folder": "फ़ोल्डर का नाम बदलें",
+9 -2
View File
@@ -234,7 +234,9 @@
"link_name": "Link name (optional)",
"notifyByEmail": "Notifica via email",
"revoke": "Remuovi",
"role_label": "Ruolo"
"role_label": "Ruolo",
"col_shared_by": "Condiviso da",
"col_shared": "Condiviso"
},
"share_dialogTitle": "Link di condivisione",
"share_linkLabel": "Link di condivisione:",
@@ -375,7 +377,12 @@
"rename_dotfile_hidden": "Rinominato in \"{{name}}\" — ora nascosto dalla tua preferenza.",
"new_folder_dotfile_hidden": "Cartella \"{{name}}\" creata — nascosta dalla tua preferenza.",
"dotfiles_hidden_toast": "File nascosti occultati",
"dotfiles_shown_toast": "File nascosti mostrati"
"dotfiles_shown_toast": "File nascosti mostrati",
"col_modified": "Modificato",
"col_added": "Aggiunto",
"col_created_by": "Creato da",
"col_opened": "Aperto",
"col_path": "Posizione"
},
"dialogs": {
"rename_folder": "Rinomina cartella",
+9 -2
View File
@@ -234,7 +234,9 @@
"link_name": "Link name (optional)",
"notifyByEmail": "メールで通知",
"revoke": "Remove",
"role_label": "役割"
"role_label": "役割",
"col_shared_by": "共有者",
"col_shared": "共有日時"
},
"share_dialogTitle": "共有リンク",
"share_linkLabel": "共有リンク:",
@@ -375,7 +377,12 @@
"rename_dotfile_hidden": "「{{name}}」に名前を変更しました — 設定により非表示になりました。",
"new_folder_dotfile_hidden": "フォルダ「{{name}}」を作成しました — 設定により非表示になっています。",
"dotfiles_hidden_toast": "非表示ファイルを隠しました",
"dotfiles_shown_toast": "非表示ファイルを表示しました"
"dotfiles_shown_toast": "非表示ファイルを表示しました",
"col_modified": "更新日時",
"col_added": "追加日",
"col_created_by": "作成者",
"col_opened": "アクセス日時",
"col_path": "場所"
},
"dialogs": {
"rename_folder": "フォルダ名を変更",
+7 -2
View File
@@ -304,7 +304,9 @@
"public_link": "공개 링크",
"set_expiry": "만료일 설정",
"title": "공유됨",
"unlock": "잠금 해제"
"unlock": "잠금 해제",
"col_shared_by": "공유한 사람",
"col_shared": "공유일"
},
"share_dialogTitle": "공유 링크",
"share_linkLabel": "공유 링크:",
@@ -442,7 +444,10 @@
"batch_delete": "선택 항목 삭제",
"breadcrumb": "경로",
"cancel_selection": "선택 취소",
"col_modified": "날짜",
"col_modified": "수정일",
"col_added": "추가일",
"col_created_by": "만든 사람",
"col_opened": "열어본 날짜",
"col_path": "위치",
"confirm_batch_delete": "{{n}}개 항목을 휴지통으로 이동하시겠습니까?",
"confirm_delete": "\"{{name}}\"을(를) 휴지통으로 이동하시겠습니까?",
+9 -2
View File
@@ -234,7 +234,9 @@
"link_name": "Link name (optional)",
"notifyByEmail": "Per e-mail notificeren",
"revoke": "Remove",
"role_label": "Rol"
"role_label": "Rol",
"col_shared_by": "Gedeeld door",
"col_shared": "Gedeeld"
},
"share_dialogTitle": "Deellink",
"share_linkLabel": "Deellink:",
@@ -375,7 +377,12 @@
"rename_dotfile_hidden": "Hernoemd naar \"{{name}}\" — nu verborgen door je voorkeur.",
"new_folder_dotfile_hidden": "Map \"{{name}}\" aangemaakt — verborgen door je voorkeur.",
"dotfiles_hidden_toast": "Verborgen bestanden verborgen",
"dotfiles_shown_toast": "Verborgen bestanden weergegeven"
"dotfiles_shown_toast": "Verborgen bestanden weergegeven",
"col_modified": "Gewijzigd",
"col_added": "Toegevoegd",
"col_created_by": "Gemaakt door",
"col_opened": "Geopend",
"col_path": "Locatie"
},
"dialogs": {
"rename_folder": "Map hernoemen",
+9 -2
View File
@@ -234,7 +234,9 @@
"link_name": "Link name (optional)",
"notifyByEmail": "Powiadom e-mailem",
"revoke": "Usuń",
"role_label": "Rola"
"role_label": "Rola",
"col_shared_by": "Udostępnione przez",
"col_shared": "Udostępnione"
},
"share_dialogTitle": "Link udostępniania",
"share_linkLabel": "Link udostępniania:",
@@ -375,7 +377,12 @@
"rename_dotfile_hidden": "Zmieniono nazwę na \"{{name}}\" — teraz ukryty zgodnie z Twoją preferencją.",
"new_folder_dotfile_hidden": "Utworzono folder \"{{name}}\" — ukryty zgodnie z Twoją preferencją.",
"dotfiles_hidden_toast": "Ukryte pliki ukryte",
"dotfiles_shown_toast": "Ukryte pliki wyświetlone"
"dotfiles_shown_toast": "Ukryte pliki wyświetlone",
"col_modified": "Zmodyfikowano",
"col_added": "Dodano",
"col_created_by": "Utworzone przez",
"col_opened": "Otwarte",
"col_path": "Lokalizacja"
},
"dialogs": {
"rename_folder": "Zmień nazwę folderu",
+9 -2
View File
@@ -234,7 +234,9 @@
"link_name": "Link name (optional)",
"notifyByEmail": "Notificar por e-mail",
"revoke": "Remove",
"role_label": "Função"
"role_label": "Função",
"col_shared_by": "Compartilhado por",
"col_shared": "Compartilhado"
},
"share_dialogTitle": "Link de compartilhamento",
"share_linkLabel": "Link compartilhado:",
@@ -375,7 +377,12 @@
"rename_dotfile_hidden": "Renomeado para \"{{name}}\" — agora oculto pela sua preferência.",
"new_folder_dotfile_hidden": "Pasta \"{{name}}\" criada — oculta pela sua preferência.",
"dotfiles_hidden_toast": "Arquivos ocultos ocultados",
"dotfiles_shown_toast": "Arquivos ocultos exibidos"
"dotfiles_shown_toast": "Arquivos ocultos exibidos",
"col_modified": "Modificado",
"col_added": "Adicionado",
"col_created_by": "Criado por",
"col_opened": "Aberto",
"col_path": "Localização"
},
"dialogs": {
"rename_folder": "Renomear pasta",
+9 -2
View File
@@ -234,7 +234,9 @@
"link_name": "Link name (optional)",
"notifyByEmail": "Уведомить по e-mail",
"revoke": "Remove",
"role_label": "Роль"
"role_label": "Роль",
"col_shared_by": "Поделился",
"col_shared": "Общий доступ"
},
"share_dialogTitle": "Ссылка для обмена",
"share_linkLabel": "Ссылка:",
@@ -375,7 +377,12 @@
"rename_dotfile_hidden": "Переименовано в \"{{name}}\" — теперь скрыто в соответствии с вашими настройками.",
"new_folder_dotfile_hidden": "Папка \"{{name}}\" создана — скрыта в соответствии с вашими настройками.",
"dotfiles_hidden_toast": "Скрытые файлы скрыты",
"dotfiles_shown_toast": "Скрытые файлы показаны"
"dotfiles_shown_toast": "Скрытые файлы показаны",
"col_modified": "Изменен",
"col_added": "Добавлено",
"col_created_by": "Создано",
"col_opened": "Открыт",
"col_path": "Расположение"
},
"dialogs": {
"rename_folder": "Переименовать папку",
+9 -2
View File
@@ -234,7 +234,9 @@
"link_name": "Link name (optional)",
"notifyByEmail": "透過郵件通知",
"revoke": "移除",
"role_label": "角色"
"role_label": "角色",
"col_shared_by": "分享者",
"col_shared": "分享日期"
},
"share_dialogTitle": "共享連結",
"share_linkLabel": "共享連結:",
@@ -375,7 +377,12 @@
"rename_dotfile_hidden": "已重新命名為「{{name}}」——現已根據您的偏好隱藏。",
"new_folder_dotfile_hidden": "已建立資料夾「{{name}}」——根據您的偏好隱藏。",
"dotfiles_hidden_toast": "已隱藏隱藏檔案",
"dotfiles_shown_toast": "已顯示隱藏檔案"
"dotfiles_shown_toast": "已顯示隱藏檔案",
"col_modified": "修改日期",
"col_added": "新增日期",
"col_created_by": "建立者",
"col_opened": "開啟日期",
"col_path": "位置"
},
"dialogs": {
"rename_folder": "重新命名資料夾",
+9 -2
View File
@@ -234,7 +234,9 @@
"link_name": "Link name (optional)",
"notifyByEmail": "通过邮件通知",
"revoke": "Remove",
"role_label": "角色"
"role_label": "角色",
"col_shared_by": "共享者",
"col_shared": "共享日期"
},
"share_dialogTitle": "共享链接",
"share_linkLabel": "共享链接:",
@@ -375,7 +377,12 @@
"rename_dotfile_hidden": "已重命名为「{{name}}」——现已根据您的偏好隐藏。",
"new_folder_dotfile_hidden": "已创建文件夹「{{name}}」——根据您的偏好隐藏。",
"dotfiles_hidden_toast": "已隐藏隐藏文件",
"dotfiles_shown_toast": "已显示隐藏文件"
"dotfiles_shown_toast": "已显示隐藏文件",
"col_modified": "修改日期",
"col_added": "添加日期",
"col_created_by": "创建者",
"col_opened": "打开日期",
"col_path": "位置"
},
"dialogs": {
"rename_folder": "重命名文件夹",