|
@@ -20,6 +20,8 @@
|
|
|
let importFiles;
|
|
|
let modelsImportInputElement: HTMLInputElement;
|
|
|
|
|
|
+ let searchValue = '';
|
|
|
+
|
|
|
const deleteModelHandler = async (model) => {
|
|
|
console.log(model.info);
|
|
|
if (!model?.info) {
|
|
@@ -97,6 +99,49 @@
|
|
|
|
|
|
<div class=" text-lg font-semibold mb-3">{$i18n.t('Models')}</div>
|
|
|
|
|
|
+<div class=" flex w-full space-x-2">
|
|
|
+ <div class="flex flex-1">
|
|
|
+ <div class=" self-center ml-1 mr-3">
|
|
|
+ <svg
|
|
|
+ xmlns="http://www.w3.org/2000/svg"
|
|
|
+ viewBox="0 0 20 20"
|
|
|
+ fill="currentColor"
|
|
|
+ class="w-4 h-4"
|
|
|
+ >
|
|
|
+ <path
|
|
|
+ fill-rule="evenodd"
|
|
|
+ d="M9 3.5a5.5 5.5 0 100 11 5.5 5.5 0 000-11zM2 9a7 7 0 1112.452 4.391l3.328 3.329a.75.75 0 11-1.06 1.06l-3.329-3.328A7 7 0 012 9z"
|
|
|
+ clip-rule="evenodd"
|
|
|
+ />
|
|
|
+ </svg>
|
|
|
+ </div>
|
|
|
+ <input
|
|
|
+ class=" w-full text-sm pr-4 py-1 rounded-r-xl outline-none bg-transparent"
|
|
|
+ bind:value={searchValue}
|
|
|
+ placeholder={$i18n.t('Search Models')}
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div>
|
|
|
+ <a
|
|
|
+ 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="/workspace/models/create"
|
|
|
+ >
|
|
|
+ <svg
|
|
|
+ xmlns="http://www.w3.org/2000/svg"
|
|
|
+ viewBox="0 0 16 16"
|
|
|
+ fill="currentColor"
|
|
|
+ class="w-4 h-4"
|
|
|
+ >
|
|
|
+ <path
|
|
|
+ d="M8.75 3.75a.75.75 0 0 0-1.5 0v3.5h-3.5a.75.75 0 0 0 0 1.5h3.5v3.5a.75.75 0 0 0 1.5 0v-3.5h3.5a.75.75 0 0 0 0-1.5h-3.5v-3.5Z"
|
|
|
+ />
|
|
|
+ </svg>
|
|
|
+ </a>
|
|
|
+ </div>
|
|
|
+</div>
|
|
|
+<hr class=" dark:border-gray-850 my-2.5" />
|
|
|
+
|
|
|
<a class=" flex space-x-4 cursor-pointer w-full mb-2 px-3 py-2" href="/workspace/models/create">
|
|
|
<div class=" self-center w-10">
|
|
|
<div
|
|
@@ -121,7 +166,9 @@
|
|
|
<hr class=" dark:border-gray-850" />
|
|
|
|
|
|
<div class=" my-2 mb-5">
|
|
|
- {#each $models as model}
|
|
|
+ {#each $models.filter((m) => searchValue === '' || m.name
|
|
|
+ .toLowerCase()
|
|
|
+ .includes(searchValue.toLowerCase())) as model}
|
|
|
<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"
|
|
|
>
|