feat(i18n): Hebrew locale + full RTL support

This commit is contained in:
Shuki Vaknin
2026-07-08 00:07:34 +02:00
committed by Linus Rath
parent 8904d724bb
commit 22418c17cf
113 changed files with 3958 additions and 494 deletions
+11 -11
View File
@@ -1990,7 +1990,7 @@ export function EmailComposer({
<div ref={composerRootRef} className={cn("flex h-full bg-background", className)}>
<PluginSlot
name="composer-sidebar"
className="hidden md:flex shrink-0 h-full overflow-hidden border-r border-border"
className="hidden md:flex shrink-0 h-full overflow-hidden border-e border-border"
/>
{/* Right-side composer sidebar slot is rendered after the main content div below. */}
<div
@@ -2047,7 +2047,7 @@ export function EmailComposer({
size="sm"
className="md:hidden h-9 px-4"
>
<Send className="w-4 h-4 mr-1.5" />
<Send className="w-4 h-4 me-1.5" />
{t('send')}
</Button>
</div>
@@ -2445,7 +2445,7 @@ export function EmailComposer({
)}
<button
onClick={() => removeAttachment(index)}
className="ml-1 hover:text-red-500 min-w-[20px] min-h-[20px] flex items-center justify-center"
className="ms-1 hover:text-red-500 min-w-[20px] min-h-[20px] flex items-center justify-center"
title={att.uploading ? t('upload_cancel') : undefined}
>
<X className="w-3 h-3" />
@@ -2540,9 +2540,9 @@ export function EmailComposer({
onClick={() => handleSend()}
disabled={!canSend || isSending}
title={getSendTooltip()}
className="rounded-r-none border-r border-primary-foreground/20"
className="rounded-e-none border-e border-primary-foreground/20"
>
<Send className="w-4 h-4 mr-2" />
<Send className="w-4 h-4 me-2" />
{t('send')}
</Button>
<Button
@@ -2550,7 +2550,7 @@ export function EmailComposer({
onClick={() => setShowSendMenu((open) => !open)}
disabled={!canSend || isSending}
title={t('schedule_send')}
className="rounded-l-none px-2"
className="rounded-s-none px-2"
aria-haspopup="menu"
aria-expanded={showSendMenu}
>
@@ -2565,7 +2565,7 @@ export function EmailComposer({
type="button"
role="menuitem"
onClick={openScheduleDialog}
className="flex w-full items-center gap-2 rounded-sm px-3 py-2 text-left text-sm hover:bg-accent hover:text-accent-foreground"
className="flex w-full items-center gap-2 rounded-sm px-3 py-2 text-start text-sm hover:bg-accent hover:text-accent-foreground"
>
<CalendarClock className="w-4 h-4" />
{t('schedule_send')}
@@ -2580,7 +2580,7 @@ export function EmailComposer({
title={getSendTooltip()}
className="hidden md:inline-flex"
>
<Send className="w-4 h-4 mr-2" />
<Send className="w-4 h-4 me-2" />
{t('send')}
</Button>
)}
@@ -2699,7 +2699,7 @@ export function EmailComposer({
{t('discard')}
</Button>
<Button onClick={handleSaveDraftAndClose}>
<Save className="w-4 h-4 mr-2" />
<Save className="w-4 h-4 me-2" />
{t('save_draft')}
</Button>
</div>
@@ -2718,7 +2718,7 @@ export function EmailComposer({
</div>
<PluginSlot
name="composer-sidebar-right"
className="hidden md:flex shrink-0 h-full overflow-hidden border-l border-border"
className="hidden md:flex shrink-0 h-full overflow-hidden border-s border-border"
/>
</div>
);
@@ -2743,7 +2743,7 @@ const AutocompleteDropdown = React.forwardRef<HTMLDivElement, {
role="option"
aria-selected={i === selectedIndex}
className={cn(
"w-full px-3 py-2 text-left text-sm flex items-center gap-2",
"w-full px-3 py-2 text-start text-sm flex items-center gap-2",
i === selectedIndex ? "bg-accent text-accent-foreground" : "hover:bg-muted"
)}
onMouseDown={(e) => {