fix: remove from list dropdown when deleted remote model (#4616)
* fix: remove from list dropdown when deleted remote model * chore: update logic
This commit is contained in:
parent
45edb9cc51
commit
6e891d9a3b
@ -509,61 +509,61 @@ __metadata:
|
||||
|
||||
"@janhq/core@file:../../core/package.tgz::locator=%40janhq%2Fassistant-extension%40workspace%3Aassistant-extension":
|
||||
version: 0.1.10
|
||||
resolution: "@janhq/core@file:../../core/package.tgz#../../core/package.tgz::hash=a48b38&locator=%40janhq%2Fassistant-extension%40workspace%3Aassistant-extension"
|
||||
resolution: "@janhq/core@file:../../core/package.tgz#../../core/package.tgz::hash=3d036d&locator=%40janhq%2Fassistant-extension%40workspace%3Aassistant-extension"
|
||||
dependencies:
|
||||
rxjs: "npm:^7.8.1"
|
||||
ulidx: "npm:^2.3.0"
|
||||
checksum: 10c0/c8c1596e7031923552572136a2aab8c12567a2ab9a5a1cd0b72d7a4d56e41a10135f272331c90762b859b29065aa6313f3f8764d2704130b6a4151cb02924fbc
|
||||
checksum: 10c0/17705794156b91070790dc0bc9adf1ff65405c06b057c9103f325c350f22e25e530fccd9c634b2633d842f8e95eccc30d66370353734f4620ce99657ad4307bd
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@janhq/core@file:../../core/package.tgz::locator=%40janhq%2Fconversational-extension%40workspace%3Aconversational-extension":
|
||||
version: 0.1.10
|
||||
resolution: "@janhq/core@file:../../core/package.tgz#../../core/package.tgz::hash=a48b38&locator=%40janhq%2Fconversational-extension%40workspace%3Aconversational-extension"
|
||||
resolution: "@janhq/core@file:../../core/package.tgz#../../core/package.tgz::hash=3d036d&locator=%40janhq%2Fconversational-extension%40workspace%3Aconversational-extension"
|
||||
dependencies:
|
||||
rxjs: "npm:^7.8.1"
|
||||
ulidx: "npm:^2.3.0"
|
||||
checksum: 10c0/c8c1596e7031923552572136a2aab8c12567a2ab9a5a1cd0b72d7a4d56e41a10135f272331c90762b859b29065aa6313f3f8764d2704130b6a4151cb02924fbc
|
||||
checksum: 10c0/17705794156b91070790dc0bc9adf1ff65405c06b057c9103f325c350f22e25e530fccd9c634b2633d842f8e95eccc30d66370353734f4620ce99657ad4307bd
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@janhq/core@file:../../core/package.tgz::locator=%40janhq%2Fengine-management-extension%40workspace%3Aengine-management-extension":
|
||||
version: 0.1.10
|
||||
resolution: "@janhq/core@file:../../core/package.tgz#../../core/package.tgz::hash=a48b38&locator=%40janhq%2Fengine-management-extension%40workspace%3Aengine-management-extension"
|
||||
resolution: "@janhq/core@file:../../core/package.tgz#../../core/package.tgz::hash=3d036d&locator=%40janhq%2Fengine-management-extension%40workspace%3Aengine-management-extension"
|
||||
dependencies:
|
||||
rxjs: "npm:^7.8.1"
|
||||
ulidx: "npm:^2.3.0"
|
||||
checksum: 10c0/c8c1596e7031923552572136a2aab8c12567a2ab9a5a1cd0b72d7a4d56e41a10135f272331c90762b859b29065aa6313f3f8764d2704130b6a4151cb02924fbc
|
||||
checksum: 10c0/17705794156b91070790dc0bc9adf1ff65405c06b057c9103f325c350f22e25e530fccd9c634b2633d842f8e95eccc30d66370353734f4620ce99657ad4307bd
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@janhq/core@file:../../core/package.tgz::locator=%40janhq%2Fhardware-management-extension%40workspace%3Ahardware-management-extension":
|
||||
version: 0.1.10
|
||||
resolution: "@janhq/core@file:../../core/package.tgz#../../core/package.tgz::hash=a48b38&locator=%40janhq%2Fhardware-management-extension%40workspace%3Ahardware-management-extension"
|
||||
resolution: "@janhq/core@file:../../core/package.tgz#../../core/package.tgz::hash=3d036d&locator=%40janhq%2Fhardware-management-extension%40workspace%3Ahardware-management-extension"
|
||||
dependencies:
|
||||
rxjs: "npm:^7.8.1"
|
||||
ulidx: "npm:^2.3.0"
|
||||
checksum: 10c0/c8c1596e7031923552572136a2aab8c12567a2ab9a5a1cd0b72d7a4d56e41a10135f272331c90762b859b29065aa6313f3f8764d2704130b6a4151cb02924fbc
|
||||
checksum: 10c0/17705794156b91070790dc0bc9adf1ff65405c06b057c9103f325c350f22e25e530fccd9c634b2633d842f8e95eccc30d66370353734f4620ce99657ad4307bd
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@janhq/core@file:../../core/package.tgz::locator=%40janhq%2Finference-cortex-extension%40workspace%3Ainference-cortex-extension":
|
||||
version: 0.1.10
|
||||
resolution: "@janhq/core@file:../../core/package.tgz#../../core/package.tgz::hash=a48b38&locator=%40janhq%2Finference-cortex-extension%40workspace%3Ainference-cortex-extension"
|
||||
resolution: "@janhq/core@file:../../core/package.tgz#../../core/package.tgz::hash=3d036d&locator=%40janhq%2Finference-cortex-extension%40workspace%3Ainference-cortex-extension"
|
||||
dependencies:
|
||||
rxjs: "npm:^7.8.1"
|
||||
ulidx: "npm:^2.3.0"
|
||||
checksum: 10c0/c8c1596e7031923552572136a2aab8c12567a2ab9a5a1cd0b72d7a4d56e41a10135f272331c90762b859b29065aa6313f3f8764d2704130b6a4151cb02924fbc
|
||||
checksum: 10c0/17705794156b91070790dc0bc9adf1ff65405c06b057c9103f325c350f22e25e530fccd9c634b2633d842f8e95eccc30d66370353734f4620ce99657ad4307bd
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@janhq/core@file:../../core/package.tgz::locator=%40janhq%2Fmodel-extension%40workspace%3Amodel-extension":
|
||||
version: 0.1.10
|
||||
resolution: "@janhq/core@file:../../core/package.tgz#../../core/package.tgz::hash=a48b38&locator=%40janhq%2Fmodel-extension%40workspace%3Amodel-extension"
|
||||
resolution: "@janhq/core@file:../../core/package.tgz#../../core/package.tgz::hash=3d036d&locator=%40janhq%2Fmodel-extension%40workspace%3Amodel-extension"
|
||||
dependencies:
|
||||
rxjs: "npm:^7.8.1"
|
||||
ulidx: "npm:^2.3.0"
|
||||
checksum: 10c0/c8c1596e7031923552572136a2aab8c12567a2ab9a5a1cd0b72d7a4d56e41a10135f272331c90762b859b29065aa6313f3f8764d2704130b6a4151cb02924fbc
|
||||
checksum: 10c0/17705794156b91070790dc0bc9adf1ff65405c06b057c9103f325c350f22e25e530fccd9c634b2633d842f8e95eccc30d66370353734f4620ce99657ad4307bd
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
|
||||
@ -549,75 +549,82 @@ const ModelDropdown = ({
|
||||
(c) => c.id === model.id
|
||||
)
|
||||
return (
|
||||
<li
|
||||
key={model.id}
|
||||
className={twMerge(
|
||||
'flex items-center justify-between gap-4 px-3 py-2 hover:bg-[hsla(var(--dropdown-menu-hover-bg))]',
|
||||
!isConfigured
|
||||
? 'cursor-not-allowed text-[hsla(var(--text-tertiary))]'
|
||||
: 'text-[hsla(var(--text-primary))]'
|
||||
)}
|
||||
onClick={() => {
|
||||
if (!isConfigured && engine.type === 'remote')
|
||||
return null
|
||||
if (isDownloaded) {
|
||||
onClickModelItem(model.id)
|
||||
}
|
||||
}}
|
||||
>
|
||||
<div className="flex gap-x-2">
|
||||
<p
|
||||
<>
|
||||
{isDownloaded && (
|
||||
<li
|
||||
key={model.id}
|
||||
className={twMerge(
|
||||
'line-clamp-1',
|
||||
!isDownloaded &&
|
||||
'text-[hsla(var(--text-secondary))]'
|
||||
'flex items-center justify-between gap-4 px-3 py-2 hover:bg-[hsla(var(--dropdown-menu-hover-bg))]',
|
||||
!isConfigured
|
||||
? 'cursor-not-allowed text-[hsla(var(--text-tertiary))]'
|
||||
: 'text-[hsla(var(--text-primary))]'
|
||||
)}
|
||||
title={model.name}
|
||||
>
|
||||
{model.name}
|
||||
</p>
|
||||
<ModelLabel
|
||||
metadata={model.metadata}
|
||||
compact
|
||||
/>
|
||||
</div>
|
||||
<div className="flex items-center gap-2 text-[hsla(var(--text-tertiary))]">
|
||||
{!isDownloaded && (
|
||||
<span className="font-medium">
|
||||
{toGibibytes(model.metadata?.size)}
|
||||
</span>
|
||||
)}
|
||||
{!isDownloading && !isDownloaded ? (
|
||||
<DownloadCloudIcon
|
||||
size={18}
|
||||
className="cursor-pointer text-[hsla(var(--app-link))]"
|
||||
onClick={() =>
|
||||
downloadModel(
|
||||
model.sources[0].url,
|
||||
model.id
|
||||
)
|
||||
onClick={() => {
|
||||
if (
|
||||
!isConfigured &&
|
||||
engine.type === 'remote'
|
||||
)
|
||||
return null
|
||||
if (isDownloaded) {
|
||||
onClickModelItem(model.id)
|
||||
}
|
||||
/>
|
||||
) : (
|
||||
Object.values(downloadStates)
|
||||
.filter((x) => x.modelId === model.id)
|
||||
.map((item) => (
|
||||
<ProgressCircle
|
||||
key={item.modelId}
|
||||
percentage={
|
||||
formatDownloadPercentage(
|
||||
item?.percent,
|
||||
{
|
||||
hidePercentage: true,
|
||||
}
|
||||
) as number
|
||||
}}
|
||||
>
|
||||
<div className="flex gap-x-2">
|
||||
<p
|
||||
className={twMerge(
|
||||
'line-clamp-1',
|
||||
!isDownloaded &&
|
||||
'text-[hsla(var(--text-secondary))]'
|
||||
)}
|
||||
title={model.name}
|
||||
>
|
||||
{model.name}
|
||||
</p>
|
||||
<ModelLabel
|
||||
metadata={model.metadata}
|
||||
compact
|
||||
/>
|
||||
</div>
|
||||
<div className="flex items-center gap-2 text-[hsla(var(--text-tertiary))]">
|
||||
{!isDownloaded && (
|
||||
<span className="font-medium">
|
||||
{toGibibytes(model.metadata?.size)}
|
||||
</span>
|
||||
)}
|
||||
{!isDownloading && !isDownloaded ? (
|
||||
<DownloadCloudIcon
|
||||
size={18}
|
||||
className="cursor-pointer text-[hsla(var(--app-link))]"
|
||||
onClick={() =>
|
||||
downloadModel(
|
||||
model.sources[0].url,
|
||||
model.id
|
||||
)
|
||||
}
|
||||
size={100}
|
||||
/>
|
||||
))
|
||||
)}
|
||||
</div>
|
||||
</li>
|
||||
) : (
|
||||
Object.values(downloadStates)
|
||||
.filter((x) => x.modelId === model.id)
|
||||
.map((item) => (
|
||||
<ProgressCircle
|
||||
key={item.modelId}
|
||||
percentage={
|
||||
formatDownloadPercentage(
|
||||
item?.percent,
|
||||
{
|
||||
hidePercentage: true,
|
||||
}
|
||||
) as number
|
||||
}
|
||||
size={100}
|
||||
/>
|
||||
))
|
||||
)}
|
||||
</div>
|
||||
</li>
|
||||
)}
|
||||
</>
|
||||
)
|
||||
})}
|
||||
</ul>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user