@versini/sassysaint-common 4.27.0 → 4.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -20,7 +20,7 @@ export declare enum ActionColor {
20
20
  * List of all models available TODAY. This is used by the client to display the
21
21
  * list of models.
22
22
  */
23
- export declare const ALL_MODELS: readonly ["gpt-5.2", "gpt-5-mini", "gpt-5-nano", "claude-haiku-4-5", "claude-sonnet-4-6", "gemini-3-flash-preview", "gemini-3.1-pro-preview", "gemini-3.1-flash-image-preview"];
23
+ export declare const ALL_MODELS: readonly ["gpt-5.4", "gpt-5-mini", "gpt-5-nano", "claude-haiku-4-5", "claude-sonnet-4-6", "gemini-3-flash-preview", "gemini-3.1-pro-preview", "gemini-3.1-flash-image-preview"];
24
24
 
25
25
  export declare const ALL_PROVIDERS: readonly ["OpenAI", "Anthropic", "Google"];
26
26
 
@@ -41,6 +41,7 @@ export declare const APPROXIMATE_MODELS_PER_PROVIDER: {
41
41
  readonly OpenAI: readonly ["gpt-", "o3", "o4"];
42
42
  readonly Google: readonly ["gemini"];
43
43
  readonly Perplexity: readonly ["sonar"];
44
+ readonly Mistral: readonly ["mistral"];
44
45
  };
45
46
 
46
47
  /**
@@ -146,7 +147,7 @@ export declare const DIGGIDY_CHAT_ID_HEADER = "x-diggidy-chat-id";
146
147
  * ```
147
148
  *
148
149
  */
149
- export declare const findProvider: (modelName: string) => null | typeof PROVIDER_ANTHROPIC | typeof PROVIDER_OPENAI | typeof PROVIDER_GOOGLE;
150
+ export declare const findProvider: (modelName: string) => null | typeof PROVIDER_ANTHROPIC | typeof PROVIDER_MISTRAL | typeof PROVIDER_OPENAI | typeof PROVIDER_GOOGLE;
150
151
 
151
152
  /**
152
153
  * Groups allowed models by their respective providers. This function is used to
@@ -404,7 +405,7 @@ export declare const MODEL_GPT4_NANO = "gpt-4.1-nano";
404
405
  /**
405
406
  * List of available models TODAY.
406
407
  */
407
- export declare const MODEL_GPT5 = "gpt-5.2";
408
+ export declare const MODEL_GPT5 = "gpt-5.4";
408
409
 
409
410
  export declare const MODEL_GPT5_MINI = "gpt-5-mini";
410
411
 
@@ -416,11 +417,13 @@ export declare const MODEL_SONAR = "sonar";
416
417
 
417
418
  export declare const MODEL_SONAR_PRO = "sonar-pro";
418
419
 
420
+ export declare const MODEL_TEACHER = "mistral-large-latest";
421
+
419
422
  /**
420
423
  * List of models available according to the providers.
421
424
  */
422
425
  export declare const MODELS_PER_PROVIDER: {
423
- readonly OpenAI: readonly ["gpt-4.1-nano", "gpt-5.2", "gpt-5-mini", "gpt-5-nano"];
426
+ readonly OpenAI: readonly ["gpt-4.1-nano", "gpt-5.4", "gpt-5-mini", "gpt-5-nano"];
424
427
  readonly Anthropic: readonly ["claude-haiku-4-5", "claude-sonnet-4-6"];
425
428
  readonly Google: readonly ["gemini-3-flash-preview", "gemini-3.1-pro-preview"];
426
429
  readonly Perplexity: readonly ["sonar", "sonar-pro"];
@@ -450,6 +453,8 @@ export declare const PROVIDER_GOOGLE = "Google";
450
453
 
451
454
  export declare const PROVIDER_MEMORY = "Memory";
452
455
 
456
+ export declare const PROVIDER_MISTRAL = "Mistral";
457
+
453
458
  /**
454
459
  * List of available providers.
455
460
  */
@@ -467,6 +472,7 @@ export declare const PROVIDER_ROLE_MAP: {
467
472
  Memory: string[];
468
473
  Google: string[];
469
474
  Perplexity: string[];
475
+ Mistral: string[];
470
476
  };
471
477
 
472
478
  export declare const PROVIDER_SUMMARY = "Summary";
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- let e="standard";var t,E=((t={})[t.NewChat=0]="NewChat",t[t.Prompts=1]="Prompts",t[t.Attachment=2]="Attachment",t[t.PrivateChat=3]="PrivateChat",t[t.Reasoning=4]="Reasoning",t[t.Send=5]="Send",t[t.Header=6]="Header",t[t.Provider=7]="Provider",t[t.Logo=8]="Logo",t[t.Placeholder=9]="Placeholder",t[t.Footer=10]="Footer",t);let n="system",r="user",a="assistant",o="OpenAI",i="Anthropic",s="Google",O="Summary",_="Memory",R="Perplexity",A=o,l=[o,i,s],M="gpt-5.2",P="gpt-5-mini",T="gpt-5-nano",S="gpt-4.1-nano",I="claude-haiku-4-5",d="claude-sonnet-4-6",D="gemini-3-flash-preview",L="gemini-3.1-pro-preview",N="sonar",g="sonar-pro",u="openai/gpt-oss-20b:free",h="gpt-5-nano",c="gpt-5-nano",m="text-embedding-3-small",C="gemini-3.1-flash-image-preview",p={[M]:"GPT-5.2",[P]:"GPT-5 Mini",[T]:"GPT-5 Nano",[S]:"GPT-4.1 Nano",[I]:"Claude Haiku 4.5",[d]:"Claude Sonnet 4.6",[D]:"Gemini 3 Flash",[L]:"Gemini 3.1 Pro",[N]:"Sonar",[g]:"Sonar Pro",[C]:"Nano Banana 3.1 Flash"},G=[M,P,T,I,d,D,L,C],f=[M,P,T,d,L],H={[o]:[S,M,P,T],[i]:[I,d],[s]:[D,L],[R]:[N,g]},U={[o]:[n,r,a],[i]:[r,a],[O]:[r,a],[_]:[r,a],[s]:[r,a],[R]:[r,a]},y={[i]:["claude-sonnet-4","claude-haiku-4","claude-3"],[o]:["gpt-","o3","o4"],[s]:["gemini"],[R]:["sonar"]},v="x-diggidy-chat-id",B="timestamp",V="tokenUsage",Y="Diggidy",F="sassy:basic",b="sassy:plus",w="sassy:advanced",X={TOOL:{BARCODE:"getProductByBarcode",BUNDLESIZE:"getBundleSize",DATETIME:"getDateTime",GENERATE_IMAGE:"generateImage",IMAGES:"getImages",NUTRITION_FACTS:"getNutritionFacts",POLLUTION:"getAirPollution",WEATHER:"getWeather",URLCONTENTPARSER:"getUrlContent",MEMORIES:"getUserMemories",HUMANIZE:"humanize",WEBSEARCH:"getWebSearch",GITREPOSITORY:"getGitRepoDetails",HOTELS:"getHotelDetails"},ADDON:{ATTACHMENTS:"addon:attachments",REASONING:"addon:reasoning",CODEINTERPRETER:"addon:codeinterpreter",SHARE_CHAT:"addon:share-chat"}},k=5e4,x=4,W="context-compression-summary",j=e=>{for(let[t,E]of Object.entries(y))if(E.some(t=>e.startsWith(t)))return t;return null},z=e=>{if(!e||0===e.length)return[];let t=new Set;for(let E of e)for(let[e,n]of Object.entries(H))n.includes(E)&&(e===o||e===i||e===s)&&t.add(e);return l.filter(e=>t.has(e))},K=e=>{let t=new Map;if(!e||0===e.length)return t;for(let E of e)for(let[e,n]of Object.entries(H))if(n.includes(E)){t.has(e)||t.set(e,[]),t.get(e)?.push(E);break}return t},Z=e=>{for(let t of K(e).values())if(t.length>1)return!0;return!1},q=(e,t)=>!!e&&!!t&&0!==t.length&&t.includes(e);function J(e,t,E){if(!t||Array.isArray(t)&&0===t.length)return!0;let n=e instanceof Set?e:e?new Set(e):null;return!!n&&0!==n.size&&("string"==typeof t?n.has(t):E?.any===!0?t.some(e=>n.has(e)):t.every(e=>n.has(e)))}function Q(e){return f.includes(e)}var $="subtle";export{G as ALL_MODELS,l as ALL_PROVIDERS,f as ALL_REASONING_MODELS,Y as APPLICATION_NAME,y as APPROXIMATE_MODELS_PER_PROVIDER,X as CAPABILITIES,x as CONTEXT_COMPRESSION_KEEP_RECENT,W as CONTEXT_COMPRESSION_SUMMARY_ID,k as CONTEXT_COMPRESSION_THRESHOLD,A as DEFAULT_PROVIDER,v as DIGGIDY_CHAT_ID_HEADER,H as MODELS_PER_PROVIDER,c as MODEL_CHAT_SUMMARY,I as MODEL_CLAUDE_HAIKU,d as MODEL_CLAUDE_SONNET,u as MODEL_DEV,p as MODEL_DISPLAY_NAMES,m as MODEL_EMBEDDING_TEXT,D as MODEL_GEMINI_FLASH,L as MODEL_GEMINI_PRO,C as MODEL_GENERATE_IMAGE,S as MODEL_GPT4_NANO,M as MODEL_GPT5,P as MODEL_GPT5_MINI,T as MODEL_GPT5_NANO,h as MODEL_MEMORY_INFERENCE,N as MODEL_SONAR,g as MODEL_SONAR_PRO,F as PLAN_BASIC,b as PLAN_PLUS,w as PLAN_PREMIUM,i as PROVIDER_ANTHROPIC,s as PROVIDER_GOOGLE,_ as PROVIDER_MEMORY,o as PROVIDER_OPENAI,R as PROVIDER_PERPLEXITY,U as PROVIDER_ROLE_MAP,O as PROVIDER_SUMMARY,a as ROLE_ASSISTANT,n as ROLE_SYSTEM,r as ROLE_USER,B as SORT_BY_TIMESTAMP,V as SORT_BY_TOKEN_USAGE,e as THEME_STANDARD,j as findProvider,K as getModelsGroupedByProvider,z as getProvidersFromModels,Z as hasMultipleModelsPerProvider,J as isEntitled,q as isModelAllowedForPlan,Q as isReasoningModel,$ as THEME_SUBTLE,E as ActionColor};
1
+ let e="standard";var t,E=((t={})[t.NewChat=0]="NewChat",t[t.Prompts=1]="Prompts",t[t.Attachment=2]="Attachment",t[t.PrivateChat=3]="PrivateChat",t[t.Reasoning=4]="Reasoning",t[t.Send=5]="Send",t[t.Header=6]="Header",t[t.Provider=7]="Provider",t[t.Logo=8]="Logo",t[t.Placeholder=9]="Placeholder",t[t.Footer=10]="Footer",t);let r="system",a="user",n="assistant",o="OpenAI",i="Anthropic",s="Google",O="Summary",_="Memory",R="Perplexity",l="Mistral",A=o,M=[o,i,s],P="gpt-5.4",T="gpt-5-mini",I="gpt-5-nano",S="gpt-4.1-nano",D="claude-haiku-4-5",L="claude-sonnet-4-6",d="gemini-3-flash-preview",N="gemini-3.1-pro-preview",g="sonar",u="sonar-pro",h="openai/gpt-oss-20b:free",c="mistral-large-latest",m="gpt-5-nano",C="gpt-5-nano",p="text-embedding-3-small",G="gemini-3.1-flash-image-preview",f={[P]:"GPT-5.4",[T]:"GPT-5 Mini",[I]:"GPT-5 Nano",[S]:"GPT-4.1 Nano",[D]:"Claude Haiku 4.5",[L]:"Claude Sonnet 4.6",[d]:"Gemini 3 Flash",[N]:"Gemini 3.1 Pro",[g]:"Sonar",[u]:"Sonar Pro",[G]:"Nano Banana 3.1 Flash",[c]:"Mistral Large"},H=[P,T,I,D,L,d,N,G],U=[P,T,I,L,N],y={[o]:[S,P,T,I],[i]:[D,L],[s]:[d,N],[R]:[g,u]},v={[o]:[r,a,n],[i]:[a,n],[O]:[a,n],[_]:[a,n],[s]:[a,n],[R]:[a,n],[l]:[a,n]},B={[i]:["claude-sonnet-4","claude-haiku-4","claude-3"],[o]:["gpt-","o3","o4"],[s]:["gemini"],[R]:["sonar"],[l]:["mistral"]},V="x-diggidy-chat-id",Y="timestamp",F="tokenUsage",b="Diggidy",w="sassy:basic",X="sassy:plus",k="sassy:advanced",x={TOOL:{BARCODE:"getProductByBarcode",BUNDLESIZE:"getBundleSize",DATETIME:"getDateTime",GENERATE_IMAGE:"generateImage",IMAGES:"getImages",NUTRITION_FACTS:"getNutritionFacts",POLLUTION:"getAirPollution",WEATHER:"getWeather",URLCONTENTPARSER:"getUrlContent",MEMORIES:"getUserMemories",HUMANIZE:"humanize",WEBSEARCH:"getWebSearch",GITREPOSITORY:"getGitRepoDetails",HOTELS:"getHotelDetails"},ADDON:{ATTACHMENTS:"addon:attachments",REASONING:"addon:reasoning",CODEINTERPRETER:"addon:codeinterpreter",SHARE_CHAT:"addon:share-chat"}},W=5e4,j=4,z="context-compression-summary",K=e=>{for(let[t,E]of Object.entries(B))if(E.some(t=>e.startsWith(t)))return t;return null},Z=e=>{if(!e||0===e.length)return[];let t=new Set;for(let E of e)for(let[e,r]of Object.entries(y))r.includes(E)&&(e===o||e===i||e===s)&&t.add(e);return M.filter(e=>t.has(e))},q=e=>{let t=new Map;if(!e||0===e.length)return t;for(let E of e)for(let[e,r]of Object.entries(y))if(r.includes(E)){t.has(e)||t.set(e,[]),t.get(e)?.push(E);break}return t},J=e=>{for(let t of q(e).values())if(t.length>1)return!0;return!1},Q=(e,t)=>!!e&&!!t&&0!==t.length&&t.includes(e);function $(e,t,E){if(!t||Array.isArray(t)&&0===t.length)return!0;let r=e instanceof Set?e:e?new Set(e):null;return!!r&&0!==r.size&&("string"==typeof t?r.has(t):E?.any===!0?t.some(e=>r.has(e)):t.every(e=>r.has(e)))}function ee(e){return U.includes(e)}var et="subtle";export{H as ALL_MODELS,M as ALL_PROVIDERS,U as ALL_REASONING_MODELS,b as APPLICATION_NAME,B as APPROXIMATE_MODELS_PER_PROVIDER,x as CAPABILITIES,j as CONTEXT_COMPRESSION_KEEP_RECENT,z as CONTEXT_COMPRESSION_SUMMARY_ID,W as CONTEXT_COMPRESSION_THRESHOLD,A as DEFAULT_PROVIDER,V as DIGGIDY_CHAT_ID_HEADER,y as MODELS_PER_PROVIDER,C as MODEL_CHAT_SUMMARY,D as MODEL_CLAUDE_HAIKU,L as MODEL_CLAUDE_SONNET,h as MODEL_DEV,f as MODEL_DISPLAY_NAMES,p as MODEL_EMBEDDING_TEXT,d as MODEL_GEMINI_FLASH,N as MODEL_GEMINI_PRO,G as MODEL_GENERATE_IMAGE,S as MODEL_GPT4_NANO,P as MODEL_GPT5,T as MODEL_GPT5_MINI,I as MODEL_GPT5_NANO,m as MODEL_MEMORY_INFERENCE,g as MODEL_SONAR,u as MODEL_SONAR_PRO,c as MODEL_TEACHER,w as PLAN_BASIC,X as PLAN_PLUS,k as PLAN_PREMIUM,i as PROVIDER_ANTHROPIC,s as PROVIDER_GOOGLE,_ as PROVIDER_MEMORY,l as PROVIDER_MISTRAL,o as PROVIDER_OPENAI,R as PROVIDER_PERPLEXITY,v as PROVIDER_ROLE_MAP,O as PROVIDER_SUMMARY,n as ROLE_ASSISTANT,r as ROLE_SYSTEM,a as ROLE_USER,Y as SORT_BY_TIMESTAMP,F as SORT_BY_TOKEN_USAGE,e as THEME_STANDARD,K as findProvider,q as getModelsGroupedByProvider,Z as getProvidersFromModels,J as hasMultipleModelsPerProvider,$ as isEntitled,Q as isModelAllowedForPlan,ee as isReasoningModel,et as THEME_SUBTLE,E as ActionColor};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@versini/sassysaint-common",
3
- "version": "4.27.0",
3
+ "version": "4.29.0",
4
4
  "license": "MIT",
5
5
  "author": "Arno Versini",
6
6
  "publishConfig": {
@@ -32,5 +32,5 @@
32
32
  "test:watch": "vitest",
33
33
  "watch": "npm-run-all dev"
34
34
  },
35
- "gitHead": "e7391a6500a4faa021ab8fbdac6ab4835501871c"
35
+ "gitHead": "fdee1dd3ecc57a21bf80eadec421c520f70900a7"
36
36
  }