Bladeren bron

refac: styling

Timothy J. Baek 1 jaar geleden
bovenliggende
commit
4c62f6a7ce

+ 22 - 18
src/routes/(app)/admin/+page.svelte

@@ -140,9 +140,9 @@
 												<button
 													class=" flex items-center gap-2 text-xs px-3 py-0.5 rounded-lg {user.role ===
 														'admin' &&
-														'text-sky-600 dark:text-sky-300 bg-sky-200/30'} {user.role === 'user' &&
-														'text-green-600 dark:text-green-300 bg-green-200/30'} {user.role ===
-														'pending' && 'text-gray-600 dark:text-gray-300 bg-gray-200/30'}"
+														'text-sky-600 dark:text-sky-200 bg-sky-200/30'} {user.role === 'user' &&
+														'text-green-600 dark:text-green-200 bg-green-200/30'} {user.role ===
+														'pending' && 'text-gray-600 dark:text-gray-200 bg-gray-200/30'}"
 													on:click={() => {
 														if (user.role === 'user') {
 															updateRoleHandler(user.id, 'admin');
@@ -176,9 +176,9 @@
 											<td class=" px-3 py-2"> {user.email} </td>
 
 											<td class="px-3 py-2">
-												<div class="flex justify-start w-full space-x-1">
+												<div class="flex justify-start w-full">
 													<button
-														class="self-center w-fit text-sm p-1.5 border dark:border-gray-600 rounded-xl flex"
+														class="self-center w-fit text-sm px-2 py-2 hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
 														on:click={async () => {
 															showEditUserModal = !showEditUserModal;
 															selectedUser = user;
@@ -186,34 +186,38 @@
 													>
 														<svg
 															xmlns="http://www.w3.org/2000/svg"
-															viewBox="0 0 16 16"
-															fill="currentColor"
-															class="w-3.5 h-3.5"
+															fill="none"
+															viewBox="0 0 24 24"
+															stroke-width="1.5"
+															stroke="currentColor"
+															class="w-4 h-4"
 														>
 															<path
-																fill-rule="evenodd"
-																d="M11.013 2.513a1.75 1.75 0 0 1 2.475 2.474L6.226 12.25a2.751 2.751 0 0 1-.892.596l-2.047.848a.75.75 0 0 1-.98-.98l.848-2.047a2.75 2.75 0 0 1 .596-.892l7.262-7.261Z"
-																clip-rule="evenodd"
+																stroke-linecap="round"
+																stroke-linejoin="round"
+																d="m16.862 4.487 1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L6.832 19.82a4.5 4.5 0 0 1-1.897 1.13l-2.685.8.8-2.685a4.5 4.5 0 0 1 1.13-1.897L16.863 4.487Zm0 0L19.5 7.125"
 															/>
 														</svg>
 													</button>
 
 													<button
-														class="self-center w-fit text-sm p-1.5 border dark:border-gray-600 rounded-xl flex"
+														class="self-center w-fit text-sm px-2 py-2 hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
 														on:click={async () => {
 															deleteUserHandler(user.id);
 														}}
 													>
 														<svg
 															xmlns="http://www.w3.org/2000/svg"
-															viewBox="0 0 16 16"
-															fill="currentColor"
-															class="w-3.5 h-3.5"
+															fill="none"
+															viewBox="0 0 24 24"
+															stroke-width="1.5"
+															stroke="currentColor"
+															class="w-4 h-4"
 														>
 															<path
-																fill-rule="evenodd"
-																d="M5 3.25V4H2.75a.75.75 0 0 0 0 1.5h.3l.815 8.15A1.5 1.5 0 0 0 5.357 15h5.285a1.5 1.5 0 0 0 1.493-1.35l.815-8.15h.3a.75.75 0 0 0 0-1.5H11v-.75A2.25 2.25 0 0 0 8.75 1h-1.5A2.25 2.25 0 0 0 5 3.25Zm2.25-.75a.75.75 0 0 0-.75.75V4h3v-.75a.75.75 0 0 0-.75-.75h-1.5ZM6.05 6a.75.75 0 0 1 .787.713l.275 5.5a.75.75 0 0 1-1.498.075l-.275-5.5A.75.75 0 0 1 6.05 6Zm3.9 0a.75.75 0 0 1 .712.787l-.275 5.5a.75.75 0 0 1-1.498-.075l.275-5.5a.75.75 0 0 1 .786-.711Z"
-																clip-rule="evenodd"
+																stroke-linecap="round"
+																stroke-linejoin="round"
+																d="m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0"
 															/>
 														</svg>
 													</button>

+ 7 - 7
src/routes/(app)/documents/+page.svelte

@@ -316,7 +316,9 @@
 				{#each $documents.filter((doc) => (selectedTag === '' || (doc?.content?.tags ?? [])
 								.map((tag) => tag.name)
 								.includes(selectedTag)) && (query === '' || doc.name.includes(query))) as doc}
-					<div class=" flex space-x-4 cursor-pointer w-full mt-3 mb-3">
+					<div
+						class=" flex space-x-4 cursor-pointer w-full px-3 py-2 dark:hover:bg-white/5 hover:bg-black/5 rounded-xl"
+					>
 						<div class=" flex flex-1 space-x-4 cursor-pointer w-full">
 							<div class=" flex items-center space-x-3">
 								<div class="p-2.5 bg-red-400 text-white rounded-lg">
@@ -385,7 +387,7 @@
 						</div>
 						<div class="flex flex-row space-x-1 self-center">
 							<button
-								class="self-center w-fit text-sm px-2 py-2 border dark:border-gray-600 rounded-xl"
+								class="self-center w-fit text-sm px-2 py-2 dark:text-gray-300 dark:hover:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
 								type="button"
 								on:click={async () => {
 									showEditDocModal = !showEditDocModal;
@@ -431,7 +433,7 @@
 					</button> -->
 
 							<button
-								class="self-center w-fit text-sm px-2 py-2 border dark:border-gray-600 rounded-xl"
+								class="self-center w-fit text-sm px-2 py-2 dark:text-gray-300 dark:hover:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
 								type="button"
 								on:click={() => {
 									deleteDoc(doc.name);
@@ -454,8 +456,6 @@
 							</button>
 						</div>
 					</div>
-
-					<div class=" my-2.5" />
 				{/each}
 			</div>
 
@@ -496,7 +496,7 @@
 					/>
 
 					<button
-						class="self-center w-fit text-sm px-3 py-1 border dark:border-gray-600 rounded-xl flex"
+						class="flex text-xs items-center space-x-1 px-3 py-1.5 rounded-xl bg-gray-50 hover:bg-gray-100 dark:bg-gray-800 dark:hover:bg-gray-700 dark:text-gray-200 transition"
 						on:click={async () => {
 							document.getElementById('documents-import-input')?.click();
 						}}
@@ -520,7 +520,7 @@
 					</button>
 
 					<button
-						class="self-center w-fit text-sm px-3 py-1 border dark:border-gray-600 rounded-xl flex"
+						class="flex text-xs items-center space-x-1 px-3 py-1.5 rounded-xl bg-gray-50 hover:bg-gray-100 dark:bg-gray-800 dark:hover:bg-gray-700 dark:text-gray-200 transition"
 						on:click={async () => {
 							let blob = new Blob([JSON.stringify($documents)], {
 								type: 'application/json'

+ 9 - 10
src/routes/(app)/modelfiles/+page.svelte

@@ -130,7 +130,7 @@
 						</a>
 						<div class="flex flex-row space-x-1 self-center">
 							<a
-								class="self-center w-fit text-sm px-2 py-2 border dark:border-gray-600 rounded-xl"
+								class="self-center w-fit text-sm px-2 py-2 dark:text-gray-300 dark:hover:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
 								type="button"
 								href={`/modelfiles/edit?tag=${encodeURIComponent(modelfile.tagName)}`}
 							>
@@ -145,13 +145,13 @@
 									<path
 										stroke-linecap="round"
 										stroke-linejoin="round"
-										d="M16.862 4.487l1.687-1.688a1.875 1.875 0 112.652 2.652L6.832 19.82a4.5 4.5 0 01-1.897 1.13l-2.685.8.8-2.685a4.5 4.5 0 011.13-1.897L16.863 4.487zm0 0L19.5 7.125"
+										d="m16.862 4.487 1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L6.832 19.82a4.5 4.5 0 0 1-1.897 1.13l-2.685.8.8-2.685a4.5 4.5 0 0 1 1.13-1.897L16.863 4.487Zm0 0L19.5 7.125"
 									/>
 								</svg>
 							</a>
 
 							<button
-								class="self-center w-fit text-sm px-2 py-2 border dark:border-gray-600 rounded-xl"
+								class="self-center w-fit text-sm px-2 py-2 dark:text-gray-300 dark:hover:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
 								type="button"
 								on:click={() => {
 									// console.log(modelfile);
@@ -176,13 +176,12 @@
 							</button>
 
 							<button
-								class="self-center w-fit text-sm px-2 py-2 border dark:border-gray-600 rounded-xl"
+								class="self-center w-fit text-sm px-2 py-2 dark:text-gray-300 dark:hover:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
 								type="button"
 								on:click={() => {
 									shareModelfile(modelfile);
 								}}
 							>
-								<!-- TODO: update to share icon -->
 								<svg
 									xmlns="http://www.w3.org/2000/svg"
 									fill="none"
@@ -194,13 +193,13 @@
 									<path
 										stroke-linecap="round"
 										stroke-linejoin="round"
-										d="M7.217 10.907a2.25 2.25 0 100 2.186m0-2.186c.18.324.283.696.283 1.093s-.103.77-.283 1.093m0-2.186l9.566-5.314m-9.566 7.5l9.566 5.314m0 0a2.25 2.25 0 103.935 2.186 2.25 2.25 0 00-3.935-2.186zm0-12.814a2.25 2.25 0 103.933-2.185 2.25 2.25 0 00-3.933 2.185z"
+										d="M7.217 10.907a2.25 2.25 0 1 0 0 2.186m0-2.186c.18.324.283.696.283 1.093s-.103.77-.283 1.093m0-2.186 9.566-5.314m-9.566 7.5 9.566 5.314m0 0a2.25 2.25 0 1 0 3.935 2.186 2.25 2.25 0 0 0-3.935-2.186Zm0-12.814a2.25 2.25 0 1 0 3.933-2.185 2.25 2.25 0 0 0-3.933 2.185Z"
 									/>
 								</svg>
 							</button>
 
 							<button
-								class="self-center w-fit text-sm px-2 py-2 border dark:border-gray-600 rounded-xl"
+								class="self-center w-fit text-sm px-2 py-2 dark:text-gray-300 dark:hover:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
 								type="button"
 								on:click={() => {
 									deleteModelfile(modelfile.tagName);
@@ -217,7 +216,7 @@
 									<path
 										stroke-linecap="round"
 										stroke-linejoin="round"
-										d="M14.74 9l-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 00-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 013.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 00-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 00-7.5 0"
+										d="m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0"
 									/>
 								</svg>
 							</button>
@@ -256,7 +255,7 @@
 					/>
 
 					<button
-						class="self-center w-fit text-sm px-3 py-1 border dark:border-gray-600 rounded-xl flex"
+						class="flex text-xs items-center space-x-1 px-3 py-1.5 rounded-xl bg-gray-50 hover:bg-gray-100 dark:bg-gray-800 dark:hover:bg-gray-700 dark:text-gray-200 transition"
 						on:click={async () => {
 							document.getElementById('modelfiles-import-input')?.click();
 						}}
@@ -280,7 +279,7 @@
 					</button>
 
 					<button
-						class="self-center w-fit text-sm px-3 py-1 border dark:border-gray-600 rounded-xl flex"
+						class="flex text-xs items-center space-x-1 px-3 py-1.5 rounded-xl bg-gray-50 hover:bg-gray-100 dark:bg-gray-800 dark:hover:bg-gray-700 dark:text-gray-200 transition"
 						on:click={async () => {
 							saveModelfiles($modelfiles);
 						}}

+ 7 - 7
src/routes/(app)/prompts/+page.svelte

@@ -68,7 +68,7 @@
 
 				<div>
 					<a
-						class=" px-2 py-2 rounded-xl border border-gray-200 dark:border-gray-600 hover:bg-gray-100 dark:bg-gray-800 dark:hover:bg-gray-700 transition font-medium text-sm flex items-center space-x-1"
+						class=" px-2 py-2 rounded-xl border border-gray-200 dark:border-gray-600 dark:border-0 hover:bg-gray-100 dark:bg-gray-800 dark:hover:bg-gray-700 transition font-medium text-sm flex items-center space-x-1"
 						href="/prompts/create"
 					>
 						<svg
@@ -103,7 +103,7 @@
 						</div>
 						<div class="flex flex-row space-x-1 self-center">
 							<a
-								class="self-center w-fit text-sm px-2 py-2 border dark:border-gray-600 rounded-xl"
+								class="self-center w-fit text-sm px-2 py-2 dark:text-gray-300 dark:hover:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
 								type="button"
 								href={`/prompts/edit?command=${encodeURIComponent(prompt.command)}`}
 							>
@@ -124,7 +124,7 @@
 							</a>
 
 							<button
-								class="self-center w-fit text-sm px-2 py-2 border dark:border-gray-600 rounded-xl"
+								class="self-center w-fit text-sm px-2 py-2 dark:text-gray-300 dark:hover:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
 								type="button"
 								on:click={() => {
 									// console.log(modelfile);
@@ -149,7 +149,7 @@
 							</button>
 
 							<button
-								class="self-center w-fit text-sm px-2 py-2 border dark:border-gray-600 rounded-xl"
+								class="self-center w-fit text-sm px-2 py-2 dark:text-gray-300 dark:hover:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
 								type="button"
 								on:click={() => {
 									sharePrompt(prompt);
@@ -172,7 +172,7 @@
 							</button>
 
 							<button
-								class="self-center w-fit text-sm px-2 py-2 border dark:border-gray-600 rounded-xl"
+								class="self-center w-fit text-sm px-2 py-2 dark:text-gray-300 dark:hover:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl"
 								type="button"
 								on:click={() => {
 									deletePrompt(prompt.command);
@@ -234,7 +234,7 @@
 					/>
 
 					<button
-						class="self-center w-fit text-sm px-3 py-1 border dark:border-gray-600 rounded-xl flex"
+						class="flex text-xs items-center space-x-1 px-3 py-1.5 rounded-xl bg-gray-50 hover:bg-gray-100 dark:bg-gray-800 dark:hover:bg-gray-700 dark:text-gray-200 transition"
 						on:click={async () => {
 							document.getElementById('prompts-import-input')?.click();
 						}}
@@ -258,7 +258,7 @@
 					</button>
 
 					<button
-						class="self-center w-fit text-sm px-3 py-1 border dark:border-gray-600 rounded-xl flex"
+						class="flex text-xs items-center space-x-1 px-3 py-1.5 rounded-xl bg-gray-50 hover:bg-gray-100 dark:bg-gray-800 dark:hover:bg-gray-700 dark:text-gray-200 transition"
 						on:click={async () => {
 							// document.getElementById('modelfiles-import-input')?.click();
 							let blob = new Blob([JSON.stringify($prompts)], {