jan/web/helpers/atoms/SetupRemoteModel.atom.ts
NamH 9e29fcd69e
fix: empty model page not shown when delete all threads and models (#3343)
* fix: empty model page not shown when delete all threads and models

* fix: blank state when delete jan data folder content (#3345)

* test template name

---------

Co-authored-by: Van Pham <64197333+Van-QA@users.noreply.github.com>
2024-08-12 19:51:58 +07:00

34 lines
1.0 KiB
TypeScript

import { RemoteEngine } from '@janhq/core'
import { atom } from 'jotai'
export type SetupRemoteModelStage = 'NONE' | 'SETUP_INTRO' | 'SETUP_API_KEY'
const remoteModelSetUpStageAtom = atom<SetupRemoteModelStage>('NONE')
const engineBeingSetUpAtom = atom<RemoteEngine | undefined>(undefined)
const remoteEngineBeingSetUpMetadataAtom = atom<
Record<string, unknown> | undefined
>(undefined)
export const setUpRemoteModelStageAtom = atom(
(get) => ({
stage: get(remoteModelSetUpStageAtom),
remoteEngine: get(engineBeingSetUpAtom),
metadata: get(remoteEngineBeingSetUpMetadataAtom),
}),
(
_get,
set,
stage: SetupRemoteModelStage,
remoteEngine: RemoteEngine | undefined,
metadata?: Record<string, unknown> | undefined
) => {
set(remoteModelSetUpStageAtom, stage)
set(engineBeingSetUpAtom, remoteEngine)
set(remoteEngineBeingSetUpMetadataAtom, metadata)
}
)
export const navigateToSetUpApiKeyAtom = atom(null, (_get, set) => {
set(remoteModelSetUpStageAtom, 'SETUP_API_KEY')
})