This commit is contained in:
Timothy Jaeryang Baek
2026-07-27 01:19:34 -04:00
parent 6379d37863
commit 89caa7c849
11 changed files with 32 additions and 1 deletions
@@ -1096,6 +1096,7 @@
<button <button
class="hidden sm:flex self-center w-fit text-sm p-1.5 dark:text-gray-300 dark:hover:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl" class="hidden sm:flex self-center w-fit text-sm p-1.5 dark:text-gray-300 dark:hover:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
type="button" type="button"
aria-label={$i18n.t('Edit')}
on:click={() => { on:click={() => {
selectedModelId = model.id; selectedModelId = model.id;
}} }}
@@ -625,6 +625,7 @@
<Tooltip content="Update All Models" placement="top"> <Tooltip content="Update All Models" placement="top">
<button <button
class="flex gap-2 items-center bg-transparent rounded-lg transition" class="flex gap-2 items-center bg-transparent rounded-lg transition"
aria-label={$i18n.t('Update All Models')}
on:click={() => { on:click={() => {
updateModelsHandler(); updateModelsHandler();
}} }}
@@ -729,6 +730,7 @@
<Tooltip content={$i18n.t('Cancel')}> <Tooltip content={$i18n.t('Cancel')}>
<button <button
class="text-gray-800 dark:text-gray-100" class="text-gray-800 dark:text-gray-100"
aria-label={$i18n.t('Cancel')}
on:click={() => { on:click={() => {
cancelUpdateModelHandler(updateModelId); cancelUpdateModelHandler(updateModelId);
}} }}
@@ -777,6 +779,7 @@
<Tooltip content={$i18n.t('Cancel')}> <Tooltip content={$i18n.t('Cancel')}>
<button <button
class="text-gray-800 dark:text-gray-100" class="text-gray-800 dark:text-gray-100"
aria-label={$i18n.t('Cancel')}
on:click={() => { on:click={() => {
cancelModelPullHandler(model); cancelModelPullHandler(model);
}} }}
@@ -834,6 +837,7 @@
<Tooltip content={$i18n.t('Delete Model')} placement="top"> <Tooltip content={$i18n.t('Delete Model')} placement="top">
<button <button
class={iconButtonClass} class={iconButtonClass}
aria-label={$i18n.t('Delete Model')}
on:click={() => { on:click={() => {
showModelDeleteConfirm = true; showModelDeleteConfirm = true;
}} }}
@@ -882,6 +886,7 @@
<Tooltip content={$i18n.t('Create Model')} placement="top"> <Tooltip content={$i18n.t('Create Model')} placement="top">
<button <button
class={iconButtonClass} class={iconButtonClass}
aria-label={$i18n.t('Create Model')}
on:click={() => { on:click={() => {
createModelHandler(); createModelHandler();
}} }}
@@ -110,6 +110,7 @@
<div class="flex items-center gap-0.5"> <div class="flex items-center gap-0.5">
<button <button
class="p-0.5 rounded hover:bg-gray-100 dark:hover:bg-gray-800 transition" class="p-0.5 rounded hover:bg-gray-100 dark:hover:bg-gray-800 transition"
aria-label={$i18n.t('Previous month')}
on:click={() => navigateMini(-1)} on:click={() => navigateMini(-1)}
> >
<svg <svg
@@ -128,6 +129,7 @@
</button> </button>
<button <button
class="p-0.5 rounded hover:bg-gray-100 dark:hover:bg-gray-800 transition" class="p-0.5 rounded hover:bg-gray-100 dark:hover:bg-gray-800 transition"
aria-label={$i18n.t('Next month')}
on:click={() => navigateMini(1)} on:click={() => navigateMini(1)}
> >
<svg <svg
@@ -722,6 +722,7 @@
class=" absolute -top-12 left-0 right-0 flex justify-center z-30 pointer-events-none" class=" absolute -top-12 left-0 right-0 flex justify-center z-30 pointer-events-none"
> >
<button <button
aria-label={$i18n.t('Scroll to bottom')}
class=" bg-white border border-gray-100 dark:border-none dark:bg-white/20 p-1.5 rounded-full pointer-events-auto" class=" bg-white border border-gray-100 dark:border-none dark:bg-white/20 p-1.5 rounded-full pointer-events-auto"
on:click={() => { on:click={() => {
scrollEnd = true; scrollEnd = true;
@@ -851,6 +852,7 @@
<button <button
class=" bg-white text-black border border-white rounded-full group-hover:visible invisible transition" class=" bg-white text-black border border-white rounded-full group-hover:visible invisible transition"
type="button" type="button"
aria-label={$i18n.t('Remove file')}
on:click={() => { on:click={() => {
files.splice(fileIdx, 1); files.splice(fileIdx, 1);
files = files; files = files;
@@ -1067,6 +1069,7 @@
<div class=" flex items-center"> <div class=" flex items-center">
<Tooltip content={$i18n.t('Stop')}> <Tooltip content={$i18n.t('Stop')}>
<button <button
aria-label={$i18n.t('Stop')}
class="bg-white hover:bg-gray-100 text-gray-800 dark:bg-gray-700 dark:text-white dark:hover:bg-gray-800 transition rounded-full p-[5px]" class="bg-white hover:bg-gray-100 text-gray-800 dark:bg-gray-700 dark:text-white dark:hover:bg-gray-800 transition rounded-full p-[5px]"
on:click={() => { on:click={() => {
onStop(); onStop();
@@ -1092,6 +1095,7 @@
<Tooltip content={$i18n.t('Send message')}> <Tooltip content={$i18n.t('Send message')}>
<button <button
id="send-message-button" id="send-message-button"
aria-label={$i18n.t('Send message')}
class="{content !== '' || files.length !== 0 class="{content !== '' || files.length !== 0
? 'bg-black text-white hover:bg-gray-900 dark:bg-white dark:text-black dark:hover:bg-gray-100 ' ? 'bg-black text-white hover:bg-gray-900 dark:bg-white dark:text-black dark:hover:bg-gray-100 '
: 'text-white bg-gray-200 dark:text-gray-900 dark:bg-gray-700 disabled'} transition rounded-full p-[5px] self-center" : 'text-white bg-gray-200 dark:text-gray-900 dark:bg-gray-700 disabled'} transition rounded-full p-[5px] self-center"
+2
View File
@@ -134,6 +134,7 @@
<div class="flex items-center space-x-2"> <div class="flex items-center space-x-2">
<div class="flex items-center gap-0.5 self-center min-w-fit" dir="ltr"> <div class="flex items-center gap-0.5 self-center min-w-fit" dir="ltr">
<button <button
aria-label={$i18n.t('Previous version')}
class="self-center p-1 hover:bg-black/5 dark:hover:bg-white/5 dark:hover:text-white hover:text-black rounded-md transition disabled:cursor-not-allowed" class="self-center p-1 hover:bg-black/5 dark:hover:bg-white/5 dark:hover:text-white hover:text-black rounded-md transition disabled:cursor-not-allowed"
on:click={() => navigateContent('prev')} on:click={() => navigateContent('prev')}
disabled={contents.length <= 1} disabled={contents.length <= 1}
@@ -162,6 +163,7 @@
</div> </div>
<button <button
aria-label={$i18n.t('Next version')}
class="self-center p-1 hover:bg-black/5 dark:hover:bg-white/5 dark:hover:text-white hover:text-black rounded-md transition disabled:cursor-not-allowed" class="self-center p-1 hover:bg-black/5 dark:hover:bg-white/5 dark:hover:text-white hover:text-black rounded-md transition disabled:cursor-not-allowed"
on:click={() => navigateContent('next')} on:click={() => navigateContent('next')}
disabled={contents.length <= 1} disabled={contents.length <= 1}
@@ -348,6 +348,7 @@
class="flex items-center justify-center gap-3 py-2 px-3 border-t border-gray-100 dark:border-gray-800 text-xs text-gray-500" class="flex items-center justify-center gap-3 py-2 px-3 border-t border-gray-100 dark:border-gray-800 text-xs text-gray-500"
> >
<button <button
aria-label={$i18n.t('Previous slide')}
class="p-1 rounded hover:bg-gray-100 dark:hover:bg-gray-800 disabled:opacity-30" class="p-1 rounded hover:bg-gray-100 dark:hover:bg-gray-800 disabled:opacity-30"
disabled={currentSlide === 0} disabled={currentSlide === 0}
on:click={() => { on:click={() => {
@@ -370,6 +371,7 @@
</button> </button>
<span>{currentSlide + 1} / {fileOfficeSlides.length}</span> <span>{currentSlide + 1} / {fileOfficeSlides.length}</span>
<button <button
aria-label={$i18n.t('Next slide')}
class="p-1 rounded hover:bg-gray-100 dark:hover:bg-gray-800 disabled:opacity-30" class="p-1 rounded hover:bg-gray-100 dark:hover:bg-gray-800 disabled:opacity-30"
disabled={currentSlide === fileOfficeSlides.length - 1} disabled={currentSlide === fileOfficeSlides.length - 1}
on:click={() => { on:click={() => {
@@ -254,6 +254,7 @@
class="flex items-center justify-center gap-3 py-1.5 px-3 border-t border-gray-100 dark:border-gray-800 text-xs text-gray-500 shrink-0" class="flex items-center justify-center gap-3 py-1.5 px-3 border-t border-gray-100 dark:border-gray-800 text-xs text-gray-500 shrink-0"
> >
<button <button
aria-label={$i18n.t('Previous page')}
class="p-1 rounded hover:bg-gray-100 dark:hover:bg-gray-800 disabled:opacity-30" class="p-1 rounded hover:bg-gray-100 dark:hover:bg-gray-800 disabled:opacity-30"
disabled={page === 0} disabled={page === 0}
on:click={() => { on:click={() => {
@@ -276,6 +277,7 @@
</button> </button>
<span>{page + 1} / {totalPages} ({totalRows.toLocaleString()} rows)</span> <span>{page + 1} / {totalPages} ({totalRows.toLocaleString()} rows)</span>
<button <button
aria-label={$i18n.t('Next page')}
class="p-1 rounded hover:bg-gray-100 dark:hover:bg-gray-800 disabled:opacity-30" class="p-1 rounded hover:bg-gray-100 dark:hover:bg-gray-800 disabled:opacity-30"
disabled={page >= totalPages - 1} disabled={page >= totalPages - 1}
on:click={() => { on:click={() => {
@@ -1389,6 +1389,7 @@
class=" absolute -top-12 left-0 right-0 flex justify-center z-30 pointer-events-none" class=" absolute -top-12 left-0 right-0 flex justify-center z-30 pointer-events-none"
> >
<button <button
aria-label={$i18n.t('Scroll to bottom')}
class=" bg-white border border-gray-100 dark:border-none dark:bg-white/20 p-1.5 rounded-full pointer-events-auto" class=" bg-white border border-gray-100 dark:border-none dark:bg-white/20 p-1.5 rounded-full pointer-events-auto"
on:click={() => { on:click={() => {
autoScroll = true; autoScroll = true;
@@ -1473,6 +1474,7 @@
> >
<button <button
id="generate-message-pair-button" id="generate-message-pair-button"
aria-label={$i18n.t('Generate message pair')}
class="hidden" class="hidden"
on:click={() => createMessagePair(prompt)} on:click={() => createMessagePair(prompt)}
/> />
@@ -2264,6 +2266,7 @@
<div class=" flex items-center"> <div class=" flex items-center">
<Tooltip content={$i18n.t('Stop')}> <Tooltip content={$i18n.t('Stop')}>
<button <button
aria-label={$i18n.t('Stop')}
class="bg-white hover:bg-gray-100 text-gray-800 dark:bg-gray-700 dark:text-white dark:hover:bg-gray-800 transition rounded-full p-[5px]" class="bg-white hover:bg-gray-100 text-gray-800 dark:bg-gray-700 dark:text-white dark:hover:bg-gray-800 transition rounded-full p-[5px]"
on:click={() => { on:click={() => {
stopResponse(); stopResponse();
@@ -928,6 +928,7 @@
<div class=" absolute top-4 md:top-8 left-4"> <div class=" absolute top-4 md:top-8 left-4">
<button <button
type="button" type="button"
aria-label={$i18n.t('Stop camera')}
class="p-1.5 text-white cursor-pointer backdrop-blur-xl bg-black/10 rounded-full" class="p-1.5 text-white cursor-pointer backdrop-blur-xl bg-black/10 rounded-full"
on:click={() => { on:click={() => {
stopCamera(); stopCamera();
@@ -984,7 +985,11 @@
await startVideoStream(); await startVideoStream();
}} }}
> >
<button class="p-3 rounded-full bg-gray-50 dark:bg-gray-900" type="button"> <button
aria-label={$i18n.t('Switch camera')}
class="p-3 rounded-full bg-gray-50 dark:bg-gray-900"
type="button"
>
<svg <svg
xmlns="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 20 20" viewBox="0 0 20 20"
@@ -1002,6 +1007,7 @@
{:else} {:else}
<Tooltip content={$i18n.t('Camera')}> <Tooltip content={$i18n.t('Camera')}>
<button <button
aria-label={$i18n.t('Camera')}
class="p-3 rounded-full bg-gray-50 dark:bg-gray-900" class="p-3 rounded-full bg-gray-50 dark:bg-gray-900"
type="button" type="button"
on:click={async () => { on:click={async () => {
@@ -1087,6 +1093,7 @@
</Tooltip> </Tooltip>
<button <button
aria-label={$i18n.t('End call')}
class="p-3 rounded-full bg-gray-50 dark:bg-gray-900" class="p-3 rounded-full bg-gray-50 dark:bg-gray-900"
on:click={async () => { on:click={async () => {
await stopAudioStream(); await stopAudioStream();
@@ -122,6 +122,7 @@
<Tooltip content={$i18n.t('Add Terminal')} placement="top"> <Tooltip content={$i18n.t('Add Terminal')} placement="top">
<button <button
type="button" type="button"
aria-label={$i18n.t('Add Terminal')}
class="p-0.5 rounded-md text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300 transition" class="p-0.5 rounded-md text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300 transition"
on:click|stopPropagation={() => { on:click|stopPropagation={() => {
show = false; show = false;
@@ -189,6 +190,7 @@
<Tooltip content={$i18n.t('Add Terminal')} placement="top"> <Tooltip content={$i18n.t('Add Terminal')} placement="top">
<button <button
type="button" type="button"
aria-label={$i18n.t('Add Terminal')}
class="p-0.5 rounded-md text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300 transition" class="p-0.5 rounded-md text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300 transition"
on:click|stopPropagation={() => { on:click|stopPropagation={() => {
show = false; show = false;
@@ -620,6 +620,7 @@
<button <button
id="confirm-recording-button" id="confirm-recording-button"
type="button" type="button"
aria-label={$i18n.t('Confirm recording')}
class="p-1.5 bg-indigo-500 text-white dark:bg-indigo-500 dark:text-blue-950 rounded-full" class="p-1.5 bg-indigo-500 text-white dark:bg-indigo-500 dark:text-blue-950 rounded-full"
on:click={async () => { on:click={async () => {
await confirmRecording(); await confirmRecording();