@versini/sassysaint-common 4.16.5 → 4.17.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
@@ -21,7 +21,7 @@ export declare enum ActionColor {
21
21
  * List of all models available TODAY. This is used by the client to display the
22
22
  * list of models.
23
23
  */
24
- export declare const ALL_MODELS: readonly ["gpt-5", "gpt-5-mini", "gpt-5-nano", "claude-haiku-4-5", "claude-sonnet-4-5", "gemini-2.5-flash", "gemini-2.5-pro"];
24
+ export declare const ALL_MODELS: readonly ["gpt-5", "gpt-5-mini", "gpt-5-nano", "claude-haiku-4-5", "claude-sonnet-4-5", "gemini-2.5-flash", "gemini-3-pro-preview"];
25
25
 
26
26
  export declare const ALL_PROVIDERS: readonly ["OpenAI", "Anthropic", "Google"];
27
27
 
@@ -407,6 +407,23 @@ export declare function isEntitlementLoaded(state: EntitlementStateLike | null |
407
407
  */
408
408
  export declare const isModelAllowedForPlan: (selectedModel: string | undefined | null, allowedModels: string[]) => boolean;
409
409
 
410
+ /**
411
+ * Checks if a given model is classified as a reasoning-capable model.
412
+ * This function is used to determine if advanced reasoning features
413
+ * should be enabled based on the selected AI model.
414
+ *
415
+ * @param model - The model name to check.
416
+ * @returns True if the model is in the list of reasoning models, false otherwise.
417
+ *
418
+ * @example
419
+ * ```ts
420
+ * isReasoningModel(MODEL_GPT5); // Returns: true
421
+ * isReasoningModel(MODEL_GEMINI_FLASH); // Returns: false
422
+ * ```
423
+ *
424
+ */
425
+ export declare function isReasoningModel(model: string): boolean;
426
+
410
427
  export declare const MODEL_CLAUDE_HAIKU = "claude-haiku-4-5";
411
428
 
412
429
  export declare const MODEL_CLAUDE_SONNET = "claude-sonnet-4-5";
@@ -423,7 +440,7 @@ export declare const MODEL_EMBEDDING_TEXT = "text-embedding-3-small";
423
440
 
424
441
  export declare const MODEL_GEMINI_FLASH = "gemini-2.5-flash";
425
442
 
426
- export declare const MODEL_GEMINI_PRO = "gemini-2.5-pro";
443
+ export declare const MODEL_GEMINI_PRO = "gemini-3-pro-preview";
427
444
 
428
445
  export declare const MODEL_GPT4_NANO = "gpt-4.1-nano";
429
446
 
@@ -448,7 +465,7 @@ export declare const MODEL_SONAR_PRO = "sonar-pro";
448
465
  export declare const MODELS_PER_PROVIDER: {
449
466
  readonly OpenAI: readonly ["gpt-4.1-nano", "gpt-5", "gpt-5-mini", "gpt-5-nano"];
450
467
  readonly Anthropic: readonly ["claude-haiku-4-5", "claude-sonnet-4-5"];
451
- readonly Google: readonly ["gemini-2.5-flash", "gemini-2.5-pro"];
468
+ readonly Google: readonly ["gemini-2.5-flash", "gemini-3-pro-preview"];
452
469
  readonly Perplexity: readonly ["sonar", "sonar-pro"];
453
470
  };
454
471
 
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- let e="standard",t={LIGHT:"light",DARK:"dark"},r={NORMAL:"normal",OLED:"oled"};var a,E=((a={})[a.NewChat=0]="NewChat",a[a.Prompts=1]="Prompts",a[a.Attachment=2]="Attachment",a[a.PrivateChat=3]="PrivateChat",a[a.SaveChat=4]="SaveChat",a[a.Reasoning=5]="Reasoning",a[a.Send=6]="Send",a[a.Header=7]="Header",a[a.Provider=8]="Provider",a[a.Logo=9]="Logo",a[a.Placeholder=10]="Placeholder",a[a.Footer=11]="Footer",a);let n="system",i="user",o="assistant",s="hidden",O="data",l="OpenAI",_="Anthropic",R="Google",A="Summary",P="Memory",L="Perplexity",M="Mistral",D=l,d=[l,_,R],I="gpt-5",S="gpt-5-mini",T="gpt-5-nano",N="gpt-4.1-nano",g="claude-haiku-4-5",u="claude-sonnet-4-5",h="gemini-2.5-flash",m="gemini-2.5-pro",c="sonar",p="sonar-pro",f="mistralai/mistral-small-3.2-24b-instruct:free",C="gpt-4o-mini",G="text-embedding-3-small",H={[I]:"GPT-5",[S]:"GPT-5 Mini",[T]:"GPT-5 Nano",[N]:"GPT-4.1 Nano",[g]:"Claude Haiku 4.5",[u]:"Claude Sonnet 4.5",[h]:"Gemini 2.5 Flash",[m]:"Gemini 2.5 Pro",[c]:"Sonar",[p]:"Sonar Pro"},y=[I,S,T,g,u,h,m],U=[I,S,T,u,m],v={[l]:[N,I,S,T],[_]:[g,u],[R]:[h,m],[L]:[c,p]},b={[l]:[n,i,o],[_]:[i,o],[A]:[i,o],[P]:[i,o],[R]:[i,o],[L]:[i,o]},V={[_]:["claude-sonnet-4","claude-haiku-4","claude-3"],[l]:["gpt-","o3","o4"],[R]:["gemini"],[L]:["sonar"]},Y="x-diggidy-chat-id",B="timestamp",F="tokenUsage",k="Diggidy",w="sassy:basic",x="sassy:plus",W="sassy:advanced",j={TOOL:{DATETIME:"getDateTime",IMAGES:"getImages",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"}},K=e=>{for(let[t,r]of Object.entries(V))if(r.some(t=>e.startsWith(t)))return t;return null},X=e=>{if(!e||0===e.length)return[];let t=new Set;for(let r of e)for(let[e,a]of Object.entries(v))a.includes(r)&&(e===l||e===_||e===R)&&t.add(e);return d.filter(e=>t.has(e))},z=e=>{let t=new Map;if(!e||0===e.length)return t;for(let r of e)for(let[e,a]of Object.entries(v))if(a.includes(r)){t.has(e)||t.set(e,[]),t.get(e)?.push(r);break}return t},Z=e=>{for(let t of z(e).values())if(t.length>1)return!0;return!1},q=(e,t)=>!!e&&!!t&&0!==t.length&&t.includes(e);function J(e){return!!e&&Array.isArray(e.capabilities)&&e.capabilities.length>=0}function Q(e){return e?new Set(e):null}function $(e,t,r){if(!t||Array.isArray(t)&&0===t.length)return!0;let a=e instanceof Set?e:Q(e);return!!a&&0!==a.size&&("string"==typeof t?a.has(t):r?.any===!0?t.some(e=>a.has(e)):t.every(e=>a.has(e)))}var ee="subtle";export{y as ALL_MODELS,d as ALL_PROVIDERS,U as ALL_REASONING_MODELS,k as APPLICATION_NAME,V as APPROXIMATE_MODELS_PER_PROVIDER,E as ActionColor,j as CAPABILITIES,t as COLOR_SCHEME,D as DEFAULT_PROVIDER,Y as DIGGIDY_CHAT_ID_HEADER,r as DISPLAY_MODE,v as MODELS_PER_PROVIDER,g as MODEL_CLAUDE_HAIKU,u as MODEL_CLAUDE_SONNET,f as MODEL_DEV,H as MODEL_DISPLAY_NAMES,G as MODEL_EMBEDDING_TEXT,h as MODEL_GEMINI_FLASH,m as MODEL_GEMINI_PRO,N as MODEL_GPT4_NANO,I as MODEL_GPT5,S as MODEL_GPT5_MINI,T as MODEL_GPT5_NANO,C as MODEL_MEMORY_INFERENCE,c as MODEL_SONAR,p as MODEL_SONAR_PRO,w as PLAN_BASIC,x as PLAN_PLUS,W as PLAN_PREMIUM,_ as PROVIDER_ANTHROPIC,R as PROVIDER_GOOGLE,P as PROVIDER_MEMORY,M as PROVIDER_MISTRAL,l as PROVIDER_OPENAI,L as PROVIDER_PERPLEXITY,b as PROVIDER_ROLE_MAP,A as PROVIDER_SUMMARY,o as ROLE_ASSISTANT,s as ROLE_HIDDEN,O as ROLE_INTERNAL,n as ROLE_SYSTEM,i as ROLE_USER,B as SORT_BY_TIMESTAMP,F as SORT_BY_TOKEN_USAGE,e as THEME_STANDARD,K as findProvider,z as getModelsGroupedByProvider,X as getProvidersFromModels,Z as hasMultipleModelsPerProvider,$ as isEntitled,J as isEntitlementLoaded,q as isModelAllowedForPlan,Q as toCapabilitySet,ee as THEME_SUBTLE};
1
+ let e="standard",t={LIGHT:"light",DARK:"dark"},r={NORMAL:"normal",OLED:"oled"};var a,n=((a={})[a.NewChat=0]="NewChat",a[a.Prompts=1]="Prompts",a[a.Attachment=2]="Attachment",a[a.PrivateChat=3]="PrivateChat",a[a.SaveChat=4]="SaveChat",a[a.Reasoning=5]="Reasoning",a[a.Send=6]="Send",a[a.Header=7]="Header",a[a.Provider=8]="Provider",a[a.Logo=9]="Logo",a[a.Placeholder=10]="Placeholder",a[a.Footer=11]="Footer",a);let E="system",i="user",o="assistant",s="hidden",l="data",O="OpenAI",_="Anthropic",R="Google",A="Summary",P="Memory",M="Perplexity",L="Mistral",d=O,D=[O,_,R],I="gpt-5",S="gpt-5-mini",T="gpt-5-nano",u="gpt-4.1-nano",N="claude-haiku-4-5",g="claude-sonnet-4-5",h="gemini-2.5-flash",c="gemini-3-pro-preview",m="sonar",p="sonar-pro",f="mistralai/mistral-small-3.2-24b-instruct:free",C="gpt-4o-mini",G="text-embedding-3-small",H={[I]:"GPT-5",[S]:"GPT-5 Mini",[T]:"GPT-5 Nano",[u]:"GPT-4.1 Nano",[N]:"Claude Haiku 4.5",[g]:"Claude Sonnet 4.5",[h]:"Gemini 2.5 Flash",[c]:"Gemini 3 Pro",[m]:"Sonar",[p]:"Sonar Pro"},y=[I,S,T,N,g,h,c],U=[I,S,T,g,c],v={[O]:[u,I,S,T],[_]:[N,g],[R]:[h,c],[M]:[m,p]},b={[O]:[E,i,o],[_]:[i,o],[A]:[i,o],[P]:[i,o],[R]:[i,o],[M]:[i,o]},V={[_]:["claude-sonnet-4","claude-haiku-4","claude-3"],[O]:["gpt-","o3","o4"],[R]:["gemini"],[M]:["sonar"]},Y="x-diggidy-chat-id",B="timestamp",w="tokenUsage",F="Diggidy",k="sassy:basic",x="sassy:plus",W="sassy:advanced",j={TOOL:{DATETIME:"getDateTime",IMAGES:"getImages",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"}},K=e=>{for(let[t,r]of Object.entries(V))if(r.some(t=>e.startsWith(t)))return t;return null},X=e=>{if(!e||0===e.length)return[];let t=new Set;for(let r of e)for(let[e,a]of Object.entries(v))a.includes(r)&&(e===O||e===_||e===R)&&t.add(e);return D.filter(e=>t.has(e))},z=e=>{let t=new Map;if(!e||0===e.length)return t;for(let r of e)for(let[e,a]of Object.entries(v))if(a.includes(r)){t.has(e)||t.set(e,[]),t.get(e)?.push(r);break}return t},Z=e=>{for(let t of z(e).values())if(t.length>1)return!0;return!1},q=(e,t)=>!!e&&!!t&&0!==t.length&&t.includes(e);function J(e){return!!e&&Array.isArray(e.capabilities)&&e.capabilities.length>=0}function Q(e){return e?new Set(e):null}function $(e,t,r){if(!t||Array.isArray(t)&&0===t.length)return!0;let a=e instanceof Set?e:Q(e);return!!a&&0!==a.size&&("string"==typeof t?a.has(t):r?.any===!0?t.some(e=>a.has(e)):t.every(e=>a.has(e)))}function ee(e){return U.includes(e)}var et="subtle";export{y as ALL_MODELS,D as ALL_PROVIDERS,U as ALL_REASONING_MODELS,F as APPLICATION_NAME,V as APPROXIMATE_MODELS_PER_PROVIDER,n as ActionColor,j as CAPABILITIES,t as COLOR_SCHEME,d as DEFAULT_PROVIDER,Y as DIGGIDY_CHAT_ID_HEADER,r as DISPLAY_MODE,v as MODELS_PER_PROVIDER,N as MODEL_CLAUDE_HAIKU,g as MODEL_CLAUDE_SONNET,f as MODEL_DEV,H as MODEL_DISPLAY_NAMES,G as MODEL_EMBEDDING_TEXT,h as MODEL_GEMINI_FLASH,c as MODEL_GEMINI_PRO,u as MODEL_GPT4_NANO,I as MODEL_GPT5,S as MODEL_GPT5_MINI,T as MODEL_GPT5_NANO,C as MODEL_MEMORY_INFERENCE,m as MODEL_SONAR,p as MODEL_SONAR_PRO,k as PLAN_BASIC,x as PLAN_PLUS,W as PLAN_PREMIUM,_ as PROVIDER_ANTHROPIC,R as PROVIDER_GOOGLE,P as PROVIDER_MEMORY,L as PROVIDER_MISTRAL,O as PROVIDER_OPENAI,M as PROVIDER_PERPLEXITY,b as PROVIDER_ROLE_MAP,A as PROVIDER_SUMMARY,o as ROLE_ASSISTANT,s as ROLE_HIDDEN,l as ROLE_INTERNAL,E as ROLE_SYSTEM,i as ROLE_USER,B as SORT_BY_TIMESTAMP,w as SORT_BY_TOKEN_USAGE,e as THEME_STANDARD,K as findProvider,z as getModelsGroupedByProvider,X as getProvidersFromModels,Z as hasMultipleModelsPerProvider,$ as isEntitled,J as isEntitlementLoaded,q as isModelAllowedForPlan,ee as isReasoningModel,Q as toCapabilitySet,et as THEME_SUBTLE};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@versini/sassysaint-common",
3
- "version": "4.16.5",
3
+ "version": "4.17.0",
4
4
  "license": "MIT",
5
5
  "author": "Arno Versini",
6
6
  "publishConfig": {
@@ -33,8 +33,8 @@
33
33
  "watch": "npm-run-all dev"
34
34
  },
35
35
  "devDependencies": {
36
- "@microsoft/api-extractor": "7.55.0",
36
+ "@microsoft/api-extractor": "7.55.1",
37
37
  "@rslib/core": "0.18.0"
38
38
  },
39
- "gitHead": "3b2d54dacdffe14efafaf8aae703f853ffbd76ff"
39
+ "gitHead": "8a4e28cb37b50df2848857d409a33004431dee79"
40
40
  }