Add OpenRouter + other minor improvements

This commit is contained in:
celeste 2024-09-03 20:07:46 -07:00
parent 6dc19e3196
commit 0aee3e1cff
5 changed files with 1891 additions and 1367 deletions

View file

@ -1,13 +1,24 @@
export const PROVIDERS = ["cohere", "textsynth", "ocp", "openai", "openai-chat", "azure", "azure-chat", "anthropic"];
export const PROVIDERS = [
"cohere",
"textsynth",
"openai-compat",
"openai",
"openai-chat",
"azure",
"azure-chat",
"anthropic",
"openrouter",
];
export type Provider = (typeof PROVIDERS)[number];
type ProviderProps = {
"openai": { organization: string };
openai: { organization: string };
"openai-chat": { organization: string };
"ocp": { url: string };
"azure": { url: string };
"openai-compat": { url: string };
azure: { url: string };
"azure-chat": { url: string };
"anthropic": { url: string };//, systemPrompt: string, userMessage: string };
anthropic: { url: string };
openrouter: { quantization: string };
};
type SharedPresetSettings = {
@ -18,7 +29,8 @@ type SharedPresetSettings = {
apiKey: string;
};
export type ModelPreset<P extends Provider> = SharedPresetSettings & (P extends keyof ProviderProps ? ProviderProps[P] : {}) & { provider: P };
export type ModelPreset<P extends Provider> = SharedPresetSettings &
(P extends keyof ProviderProps ? ProviderProps[P] : {}) & { provider: P };
export interface LoomSettings {
passageFolder: string;
@ -46,10 +58,10 @@ export interface LoomSettings {
showSearchBar: boolean;
showNodeBorders: boolean;
showExport: boolean;
}
export const getPreset = (settings: LoomSettings) => settings.modelPresets[settings.modelPreset];
export const getPreset = (settings: LoomSettings) =>
settings.modelPresets[settings.modelPreset];
export type SearchResultState = "result" | "ancestor" | "none" | null;

2061
main.ts

File diff suppressed because it is too large Load diff

View file

@ -1,7 +1,7 @@
{
"id": "loom",
"name": "Loom",
"version": "1.21.3",
"version": "1.22.0",
"minAppVersion": "0.15.0",
"description": "Loom in Obsidian",
"author": "celeste",

View file

@ -1,6 +1,6 @@
{
"name": "obsidian-loom",
"version": "1.21.3",
"version": "1.22.0",
"description": "Loom in Obsidian",
"main": "main.js",
"scripts": {

1165
views.ts

File diff suppressed because it is too large Load diff