diff --git a/core/README.md b/core/README.md index 1803a2e7d..5a7dd3993 100644 --- a/core/README.md +++ b/core/README.md @@ -11,7 +11,7 @@ const core = require("@janhq/core"); // typescript -import { core } from "@janhq/core"; +import * as core from "@janhq/core"; ``` ### Register Plugin Extensions @@ -186,7 +186,7 @@ In your main entry code (e.g., `index.ts`), start by importing the necessary mod ```js // index.ts -import { core } from "@janhq/core"; +import * as core from "@janhq/core"; ``` #### Perform File Operations @@ -223,7 +223,7 @@ In your main process code (e.g., `index.ts`), start by importing the `core` obje ```js // index.ts -import { core } from "@janhq/core"; +import * as core from "@janhq/core"; ``` ##### Define the Module Path diff --git a/core/core.ts b/core/core.ts index b096d1b9a..84b2524e6 100644 --- a/core/core.ts +++ b/core/core.ts @@ -37,11 +37,18 @@ export type RegisterExtensionPoint = ( method: Function, priority?: number ) => void; + /** - * Core exports + * @deprecated This object is deprecated and should not be used. + * Use individual functions instead. */ export const core = { invokePluginFunc, downloadFile, deleteFile, }; + +/** + * Functions exports + */ +export { invokePluginFunc, downloadFile, deleteFile }; diff --git a/core/index.ts b/core/index.ts index 6eb2960e4..b3c17f59a 100644 --- a/core/index.ts +++ b/core/index.ts @@ -117,6 +117,11 @@ export enum InferenceService { * Stops a running inference model. */ StopModel = "stopModel", + + /** + * Single inference response. + */ + InferenceRequest = "inferenceRequest", } /** @@ -124,16 +129,6 @@ export enum InferenceService { * @enum {string} */ export enum ModelManagementService { - /** - * Gets a list of downloaded models. - */ - GetDownloadedModels = "getDownloadedModels", - - /** - * Gets a list of available models from the server. - */ - GetAvailableModels = "getAvailableModels", - /** * Deletes a downloaded model. */ @@ -144,11 +139,6 @@ export enum ModelManagementService { */ DownloadModel = "downloadModel", - /** - * Searches for models on the server. - */ - SearchModels = "searchModels", - /** * Gets configued models from the database. */ @@ -164,11 +154,6 @@ export enum ModelManagementService { */ UpdateFinishedDownloadAt = "updateFinishedDownloadAt", - /** - * Gets a list of unfinished download models from the database. - */ - GetUnfinishedDownloadModels = "getUnfinishedDownloadModels", - /** * Gets a list of finished download models from the database. */ @@ -244,11 +229,17 @@ export enum PluginService { */ export { store } from "./store"; +/** + * @deprecated This object is deprecated and should not be used. + * Use individual functions instead. + */ +export { core } from "./core"; + /** * Core module exports. * @module */ -export { core, RegisterExtensionPoint } from "./core"; +export { RegisterExtensionPoint, deleteFile, downloadFile, invokePluginFunc } from "./core"; /** * Events module exports. diff --git a/core/package.json b/core/package.json index 6afe6bee5..1b3210b69 100644 --- a/core/package.json +++ b/core/package.json @@ -1,6 +1,6 @@ { "name": "@janhq/core", - "version": "0.1.1", + "version": "0.1.2", "description": "Plugin core lib", "keywords": [ "jan", diff --git a/web/app/_components/HistoryItem/index.tsx b/web/app/_components/HistoryItem/index.tsx index 08d121cec..3b85cec2a 100644 --- a/web/app/_components/HistoryItem/index.tsx +++ b/web/app/_components/HistoryItem/index.tsx @@ -2,7 +2,7 @@ import React from "react"; import { useAtomValue, useSetAtom } from "jotai"; import Image from "next/image"; import { Conversation } from "@/_models/Conversation"; -import { ModelManagementService } from "@janhq/plugin-core"; +import { ModelManagementService } from "@janhq/core"; import { executeSerial } from "../../../../electron/core/plugin-manager/execution/extension-manager"; import { conversationStatesAtom, diff --git a/web/app/_components/Preferences.tsx b/web/app/_components/Preferences.tsx index 8f81638e1..ec43295bc 100644 --- a/web/app/_components/Preferences.tsx +++ b/web/app/_components/Preferences.tsx @@ -10,7 +10,7 @@ import { ChartPieIcon, CommandLineIcon, PlayIcon } from "@heroicons/react/24/out import { MagnifyingGlassIcon } from "@heroicons/react/20/solid"; import classNames from "classnames"; -import { PluginService, preferences } from "@janhq/plugin-core"; +import { PluginService, preferences } from "@janhq/core"; import { execute } from "../../../electron/core/plugin-manager/execution/extension-manager"; export const Preferences = () => { diff --git a/web/app/_helpers/EventHandler.tsx b/web/app/_helpers/EventHandler.tsx index 219a38390..5d8f126bb 100644 --- a/web/app/_helpers/EventHandler.tsx +++ b/web/app/_helpers/EventHandler.tsx @@ -1,6 +1,6 @@ import { addNewMessageAtom, updateMessageAtom } from "@/_helpers/atoms/ChatMessage.atom"; import { toChatMessage } from "@/_models/ChatMessage"; -import { events, EventName, NewMessageResponse } from "@janhq/plugin-core"; +import { events, EventName, NewMessageResponse } from "@janhq/core"; import { useSetAtom } from "jotai"; import { ReactNode, useEffect } from "react"; diff --git a/web/app/_helpers/EventListenerWrapper.tsx b/web/app/_helpers/EventListenerWrapper.tsx index e5777391e..01583de3f 100644 --- a/web/app/_helpers/EventListenerWrapper.tsx +++ b/web/app/_helpers/EventListenerWrapper.tsx @@ -5,7 +5,7 @@ import { ReactNode, useEffect } from "react"; import { appDownloadProgress } from "./JotaiWrapper"; import { DownloadState } from "@/_models/DownloadState"; import { executeSerial } from "../../../electron/core/plugin-manager/execution/extension-manager"; -import { ModelManagementService } from "@janhq/plugin-core"; +import { ModelManagementService } from "@janhq/core"; import { setDownloadStateAtom, setDownloadStateSuccessAtom } from "./atoms/DownloadState.atom"; import { getDownloadedModels } from "@/_hooks/useGetDownloadedModels"; import { downloadedModelAtom } from "./atoms/DownloadedModel.atom"; diff --git a/web/app/_hooks/useChatMessages.ts b/web/app/_hooks/useChatMessages.ts index 197f25e7e..cba1074ab 100644 --- a/web/app/_hooks/useChatMessages.ts +++ b/web/app/_hooks/useChatMessages.ts @@ -2,7 +2,7 @@ import { ChatMessage, RawMessage, toChatMessage } from "@/_models/ChatMessage"; import { executeSerial } from "@/_services/pluginService"; import { useAtomValue, useSetAtom } from "jotai"; import { useEffect, useState } from "react"; -import { DataService } from "@janhq/plugin-core"; +import { DataService } from "@janhq/core"; import { addOldMessagesAtom } from "@/_helpers/atoms/ChatMessage.atom"; import { currentConversationAtom, diff --git a/web/app/_hooks/useCreateConversation.ts b/web/app/_hooks/useCreateConversation.ts index 02aa6c355..8b492abf2 100644 --- a/web/app/_hooks/useCreateConversation.ts +++ b/web/app/_hooks/useCreateConversation.ts @@ -1,7 +1,7 @@ import { useAtom, useSetAtom } from "jotai"; import { Conversation } from "@/_models/Conversation"; import { executeSerial } from "@/_services/pluginService"; -import { DataService } from "@janhq/plugin-core"; +import { DataService } from "@janhq/core"; import { userConversationsAtom, setActiveConvoIdAtom, diff --git a/web/app/_hooks/useDeleteConversation.ts b/web/app/_hooks/useDeleteConversation.ts index e37ce3e4a..703a54011 100644 --- a/web/app/_hooks/useDeleteConversation.ts +++ b/web/app/_hooks/useDeleteConversation.ts @@ -1,7 +1,7 @@ import { currentPromptAtom } from "@/_helpers/JotaiWrapper"; import { execute } from "@/_services/pluginService"; import { useAtom, useAtomValue, useSetAtom } from "jotai"; -import { DataService } from "@janhq/plugin-core"; +import { DataService } from "@janhq/core"; import { deleteConversationMessage } from "@/_helpers/atoms/ChatMessage.atom"; import { userConversationsAtom, diff --git a/web/app/_hooks/useDeleteModel.ts b/web/app/_hooks/useDeleteModel.ts index 81eb5a870..a8015d660 100644 --- a/web/app/_hooks/useDeleteModel.ts +++ b/web/app/_hooks/useDeleteModel.ts @@ -1,5 +1,5 @@ import { execute, executeSerial } from "@/_services/pluginService"; -import { ModelManagementService } from "@janhq/plugin-core"; +import { ModelManagementService } from "@janhq/core"; import { useSetAtom } from "jotai"; import { downloadedModelAtom } from "@/_helpers/atoms/DownloadedModel.atom"; import { getDownloadedModels } from "./useGetDownloadedModels"; diff --git a/web/app/_hooks/useDownloadModel.ts b/web/app/_hooks/useDownloadModel.ts index 2a72d63a4..137e876c8 100644 --- a/web/app/_hooks/useDownloadModel.ts +++ b/web/app/_hooks/useDownloadModel.ts @@ -1,5 +1,5 @@ import { executeSerial } from "@/_services/pluginService"; -import { DataService, ModelManagementService } from "@janhq/plugin-core"; +import { DataService, ModelManagementService } from "@janhq/core"; import { ModelVersion } from "@/_models/ModelVersion"; import { Product } from "@/_models/Product"; import { AssistantModel } from "@/_models/AssistantModel"; diff --git a/web/app/_hooks/useGetDownloadedModels.ts b/web/app/_hooks/useGetDownloadedModels.ts index 6d5411dbe..9d3f11f34 100644 --- a/web/app/_hooks/useGetDownloadedModels.ts +++ b/web/app/_hooks/useGetDownloadedModels.ts @@ -1,7 +1,7 @@ import { Product } from "@/_models/Product"; import { useEffect } from "react"; import { executeSerial } from "../../../electron/core/plugin-manager/execution/extension-manager"; -import { ModelManagementService } from "@janhq/plugin-core"; +import { ModelManagementService } from "@janhq/core"; import { useAtom } from "jotai"; import { downloadedModelAtom } from "@/_helpers/atoms/DownloadedModel.atom"; import { AssistantModel } from "@/_models/AssistantModel"; diff --git a/web/app/_hooks/useGetMostSuitableModelVersion.ts b/web/app/_hooks/useGetMostSuitableModelVersion.ts index 42e116482..455298a4d 100644 --- a/web/app/_hooks/useGetMostSuitableModelVersion.ts +++ b/web/app/_hooks/useGetMostSuitableModelVersion.ts @@ -1,5 +1,5 @@ import { executeSerial } from "@/_services/pluginService"; -import { SystemMonitoringService } from "@janhq/plugin-core"; +import { SystemMonitoringService } from "@janhq/core"; import { ModelVersion } from "@/_models/ModelVersion"; import { useState } from "react"; diff --git a/web/app/_hooks/useGetPerformanceTag.ts b/web/app/_hooks/useGetPerformanceTag.ts index e1b7c522d..fedf1141d 100644 --- a/web/app/_hooks/useGetPerformanceTag.ts +++ b/web/app/_hooks/useGetPerformanceTag.ts @@ -1,5 +1,5 @@ import { executeSerial } from "../../../electron/core/plugin-manager/execution/extension-manager"; -import { SystemMonitoringService } from "@janhq/plugin-core"; +import { SystemMonitoringService } from "@janhq/core"; import { useState } from "react"; import { ModelVersion } from "@/_models/ModelVersion"; import { ModelPerformance, TagType } from "@/_components/SimpleTag/TagType"; diff --git a/web/app/_hooks/useGetSystemResources.ts b/web/app/_hooks/useGetSystemResources.ts index 407b208cd..1160744e2 100644 --- a/web/app/_hooks/useGetSystemResources.ts +++ b/web/app/_hooks/useGetSystemResources.ts @@ -1,6 +1,6 @@ import { useEffect, useState } from "react"; import { executeSerial } from "../../../electron/core/plugin-manager/execution/extension-manager"; -import { SystemMonitoringService } from "@janhq/plugin-core"; +import { SystemMonitoringService } from "@janhq/core"; export default function useGetSystemResources() { const [ram, setRam] = useState(0); diff --git a/web/app/_hooks/useGetUserConversations.ts b/web/app/_hooks/useGetUserConversations.ts index 57669e497..c3380425a 100644 --- a/web/app/_hooks/useGetUserConversations.ts +++ b/web/app/_hooks/useGetUserConversations.ts @@ -1,7 +1,7 @@ import { Conversation, ConversationState } from "@/_models/Conversation"; import { useSetAtom } from "jotai"; import { executeSerial } from "@/_services/pluginService"; -import { DataService } from "@janhq/plugin-core"; +import { DataService } from "@janhq/core"; import { conversationStatesAtom, userConversationsAtom, diff --git a/web/app/_hooks/useInitModel.ts b/web/app/_hooks/useInitModel.ts index 05a94249d..0a0c04280 100644 --- a/web/app/_hooks/useInitModel.ts +++ b/web/app/_hooks/useInitModel.ts @@ -1,5 +1,5 @@ import { executeSerial } from "@/_services/pluginService"; -import { InferenceService } from "@janhq/plugin-core"; +import { InferenceService } from "@janhq/core"; import { useAtom } from "jotai"; import { activeAssistantModelAtom } from "@/_helpers/atoms/Model.atom"; import { AssistantModel } from "@/_models/AssistantModel"; diff --git a/web/app/_hooks/useSendChatMessage.ts b/web/app/_hooks/useSendChatMessage.ts index 310783b5a..88a900a0d 100644 --- a/web/app/_hooks/useSendChatMessage.ts +++ b/web/app/_hooks/useSendChatMessage.ts @@ -1,6 +1,6 @@ import { currentPromptAtom } from "@/_helpers/JotaiWrapper"; import { useAtom, useAtomValue, useSetAtom } from "jotai"; -import { DataService, EventName, events } from "@janhq/plugin-core"; +import { DataService, EventName, events } from "@janhq/core"; import { RawMessage, toChatMessage } from "@/_models/ChatMessage"; import { executeSerial } from "@/_services/pluginService"; import { addNewMessageAtom } from "@/_helpers/atoms/ChatMessage.atom"; diff --git a/web/app/_hooks/useStartStopModel.ts b/web/app/_hooks/useStartStopModel.ts index 4e91ff86b..1c97d59f8 100644 --- a/web/app/_hooks/useStartStopModel.ts +++ b/web/app/_hooks/useStartStopModel.ts @@ -1,5 +1,5 @@ import { executeSerial } from "@/_services/pluginService"; -import { ModelManagementService, InferenceService } from "@janhq/plugin-core"; +import { ModelManagementService, InferenceService } from "@janhq/core"; import useInitModel from "./useInitModel"; import { useSetAtom } from "jotai"; import { activeAssistantModelAtom } from "@/_helpers/atoms/Model.atom"; diff --git a/web/app/_models/ChatMessage.ts b/web/app/_models/ChatMessage.ts index 3e1f890fd..296c63b44 100644 --- a/web/app/_models/ChatMessage.ts +++ b/web/app/_models/ChatMessage.ts @@ -1,4 +1,4 @@ -import { NewMessageResponse } from "@janhq/plugin-core"; +import { NewMessageResponse } from "@janhq/core"; export enum MessageType { Text = "Text", Image = "Image", diff --git a/web/app/_services/pluginService.ts b/web/app/_services/pluginService.ts index d26999de6..cd45d0d30 100644 --- a/web/app/_services/pluginService.ts +++ b/web/app/_services/pluginService.ts @@ -1,6 +1,6 @@ "use client"; import { extensionPoints, plugins } from "../../../electron/core/plugin-manager/execution/index"; -import { CoreService, DataService, InferenceService, ModelManagementService } from "@janhq/plugin-core"; +import { CoreService, DataService, InferenceService, ModelManagementService } from "@janhq/core"; export const isCorePluginInstalled = () => { if (!extensionPoints.get(DataService.GetConversations)) { diff --git a/web/app/_services/storeService.ts b/web/app/_services/storeService.ts index e50ab617e..fb5a233e4 100644 --- a/web/app/_services/storeService.ts +++ b/web/app/_services/storeService.ts @@ -1,4 +1,4 @@ -import { StoreService } from "@janhq/plugin-core"; +import { StoreService } from "@janhq/core"; import { executeSerial } from "./pluginService"; /** diff --git a/web/app/page.tsx b/web/app/page.tsx index 9c9b104af..ebeeb7291 100644 --- a/web/app/page.tsx +++ b/web/app/page.tsx @@ -1,5 +1,5 @@ "use client"; -import { PluginService } from "@janhq/plugin-core"; +import { PluginService } from "@janhq/core"; import { ThemeWrapper } from "./_helpers/ThemeWrapper"; import JotaiWrapper from "./_helpers/JotaiWrapper"; import { ModalWrapper } from "./_helpers/ModalWrapper"; diff --git a/web/package.json b/web/package.json index 2c98b4f65..ec05df5d8 100644 --- a/web/package.json +++ b/web/package.json @@ -13,7 +13,7 @@ "dependencies": { "@headlessui/react": "^1.7.15", "@heroicons/react": "^2.0.18", - "@janhq/plugin-core": "^0.1.8", + "@janhq/core": "^0.1.1", "@tailwindcss/typography": "^0.5.9", "@types/react": "18.2.15", "@types/react-dom": "18.2.7",