it-data-nexus-ui-library 2.0.2 → 2.1.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/components/Buttons/GhostButton.mjs +1 -0
- package/dist/components/NexusChat/AgentActivity/ActivityCard.mjs +1 -1
- package/dist/components/NexusChat/AgentActivity/AgentActivity.mjs +1 -1
- package/dist/components/NexusChat/AgentActivity/AgentActivityHeader.mjs +1 -1
- package/dist/components/NexusChat/AgentChatWindow.mjs +1 -1
- package/dist/components/NexusChat/ChatComponents/MarkdownContent.mjs +1 -1
- package/dist/components/NexusChat/ChatComponents/MessageBubble.mjs +1 -1
- package/dist/components/NexusChat/ChatComponents/MessageList.mjs +1 -1
- package/dist/components/NexusChat/ChatComponents/StreamingBubble.mjs +1 -1
- package/dist/components/NexusChat/ChatComponents/TypingIndicator.mjs +1 -1
- package/dist/components/NexusChat/ChatHistoryButtonBase.mjs +1 -1
- package/dist/components/NexusChat/NexusChatDialog.mjs +1 -1
- package/dist/components/NexusChat/NexusChatWidget.mjs +1 -1
- package/dist/components/NexusChat/WidgetParts/WidgetBody.mjs +1 -1
- package/dist/components/NexusChat/WidgetParts/WidgetInput.mjs +1 -1
- package/dist/components/NexusLogoNode.mjs +1 -1
- package/dist/components/_Primitives/CircularProgress.mjs +1 -0
- package/dist/generated/version.mjs +1 -1
- package/dist/index.d.ts +43 -12
- package/dist/index.mjs +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{ButtonBase as i}from"@mui/material";const t=({sx:t,...o})=>r(i,{sx:[{font:"inherit",textAlign:"inherit",color:"inherit"},...Array.isArray(t)?t:t?[t]:[]],...o});export{t as GhostButton};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t,jsxs as e}from"react/jsx-runtime";import{useState as
|
|
1
|
+
import{jsx as t,jsxs as e}from"react/jsx-runtime";import{useState as i}from"react";import r from"./SourceLink.mjs";import{Body1 as o,Body2 as s,Caption as n}from"../../Typography.mjs";import{GhostButton as m}from"../../Buttons/GhostButton.mjs";import{Chip as l}from"../../_Primitives/Chip.mjs";import{Code as a}from"../../Code.mjs";import{Stack as c}from"../../_Primitives/Stack.mjs";const p=({activity:p})=>{const[h,u]=i(!1),d=p.sources||[],f=h?d:d.slice(0,3),x=Math.max(0,d.length-3);return t(c,{direction:"row",spacing:1,children:e(c,{sx:{flex:1,minWidth:0},children:[e(c,{direction:"row",spacing:.75,sx:{alignItems:"center",flexWrap:"wrap"},children:[t(o,{children:p.title}),p.status&&t(l,{label:p.status,size:"small"})]}),p.text&&t(s,{children:p.text}),"kb"===p.type&&d.length>0&&e(c,{direction:"row",spacing:.5,sx:{flexWrap:"wrap",mt:.25},children:[f.map((e,i)=>t(r,{source:e.source},i)),x>0&&t(m,{onClick:()=>u(t=>!t),sx:{color:"primary.main",fontSize:"inherit"},children:h?"Show less":`+${x} more`})]}),"tool"===p.type&&p.toolName&&t(a,{sx:{display:"inline-flex",alignSelf:"flex-start"},children:p.toolName}),"model"===p.type&&(p.inputTokens||p.outputTokens)&&e(n,{children:[p.inputTokens," in / ",p.outputTokens," out"]})]})})};export{p as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as t,jsx as
|
|
1
|
+
import{jsxs as t,jsx as e}from"react/jsx-runtime";import{useState as i,useMemo as n}from"react";import o from"./AgentActivityHeader.mjs";import s from"./ActivityCards.mjs";import r from"./TokenSummary.mjs";import{parseTraceEvents as a,calculateActivitySummary as m}from"./activityModel.mjs";import{Stack as p}from"../../_Primitives/Stack.mjs";const c=({isStreaming:c,traceEvents:l,defaultExpanded:d=!1,latency:g,activitySummary:u,compact:h=!1})=>{const[f,S]=i(d),k=n(()=>a(l),[l]),y=n(()=>m(k),[k]),v=u||y;return 0!==l.length||c?t(p,{spacing:0,children:[e("span",{role:"status",style:{position:"absolute",width:1,height:1,overflow:"hidden",clip:"rect(0,0,0,0)",whiteSpace:"nowrap"},children:c?"Agent is generating a response":k.length>0?"Response generated":""}),e(o,{isStreaming:c,thinkingSteps:y.thinkingSteps,kbSearches:y.kbSearches,toolCalls:y.toolCalls,isExpanded:f,setIsExpanded:S}),f&&t(p,{spacing:1.5,sx:{px:1.5,py:1.25,mt:.5,maxHeight:256,overflowY:"auto"},children:[e(s,{activities:k,compact:h}),e(r,{isStreaming:c,inputTokens:v.inputTokens,outputTokens:v.outputTokens,latency:g})]})]}):null};export{c as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{jsxs as i,jsx as e}from"react/jsx-runtime";import{Body1 as r}from"../../Typography.mjs";import{GhostButton as t}from"../../Buttons/GhostButton.mjs";import{Chip as o}from"../../_Primitives/Chip.mjs";import{CircularProgress as a}from"../../_Primitives/CircularProgress.mjs";import{Stack as s}from"../../_Primitives/Stack.mjs";import{colours as n}from"../../../theme/tokens.mjs";import m from"@mui/icons-material/CheckCircle";import l from"@mui/icons-material/ExpandMore";import c from"@mui/icons-material/ExpandLess";const d=({isStreaming:d,thinkingSteps:p,kbSearches:h,toolCalls:x,isExpanded:g,setIsExpanded:f})=>{const u=n.jadeLight;return i(t,{onClick:()=>f(i=>!i),"aria-expanded":g,"aria-label":g?"Collapse agent activity":"Expand agent activity",sx:{display:"flex",alignItems:"center",gap:1,width:"100%",minHeight:32,px:0,borderRadius:1,color:"text.secondary","&:hover":{color:"text.primary"}},children:[i(s,{direction:"row",spacing:1,sx:{alignItems:"center",flex:1,minWidth:0},children:[e(s,{direction:"row",spacing:1,sx:{alignItems:"center",color:d?"primary.main":"text.secondary"},children:d?e(a,{size:14,"aria-hidden":"true"}):e(m,{sx:{color:u,fontSize:16},"aria-hidden":"true"})}),e(r,{children:d?"Agent is working...":"Response generated"}),i(s,{direction:"row",spacing:.5,sx:{ml:"auto",pr:.5},children:[p>0&&e(o,{size:"small",label:`${p} thinking`}),h>0&&e(o,{size:"small",label:`${h} KB`}),x>0&&e(o,{size:"small",label:`${x} tools`})]})]}),e(g?c:l,{sx:{fontSize:14,color:"text.secondary"},"aria-hidden":"true"})]})};export{d as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as i,jsxs as e,Fragment as t}from"react/jsx-runtime";import{Box as r}from"../_Primitives/Box.mjs";import{Stack as o}from"../_Primitives/Stack.mjs";import{Caption as m}from"../Typography.mjs";import{Paper as n}from"../_Primitives/Paper.mjs";import{ChatInput as s}from"./ChatInput.mjs";import"react";import"@mui/icons-material/Check";import"@mui/icons-material/ContentCopy";import"@mui/icons-material/Download";import"@mui/material";import"@mui/material/styles";import"../../theme/tokens.mjs";import"./ChatComponents/ChatAvatar.mjs";import"react-markdown";import"remark-gfm";import"../Code.mjs";import"@mui/icons-material/ExpandMore";import"@mui/icons-material/ExpandLess";import"@mui/icons-material/CheckCircle";import"@mui/icons-material/OpenInNew";import"@mui/icons-material/ThumbUp";import"@mui/icons-material/ThumbDown";import
|
|
1
|
+
import{jsx as i,jsxs as e,Fragment as t}from"react/jsx-runtime";import{Box as r}from"../_Primitives/Box.mjs";import{Stack as o}from"../_Primitives/Stack.mjs";import{Caption as m}from"../Typography.mjs";import{Paper as n}from"../_Primitives/Paper.mjs";import{ChatInput as s}from"./ChatInput.mjs";import"react";import"@mui/icons-material/Check";import"@mui/icons-material/ContentCopy";import"@mui/icons-material/Download";import"@mui/material";import"@mui/material/styles";import"../../theme/tokens.mjs";import"./ChatComponents/ChatAvatar.mjs";import"react-markdown";import"remark-gfm";import"../Code.mjs";import"@mui/icons-material/ExpandMore";import"@mui/icons-material/ExpandLess";import"@mui/icons-material/CheckCircle";import"@mui/icons-material/OpenInNew";import"@mui/icons-material/ThumbUp";import"@mui/icons-material/ThumbDown";import l from"./ChatComponents/SuggestedPrompts.mjs";import{AgentChatWindowHeader as a}from"./AgentChatWindowHeader.mjs";const p=({title:p="Nexus AI Chat",subtitle:c="Your intelligent assistant",showAiChip:d=!0,headerActions:u,body:h,followUpLabel:x="Suggested follow-ups:",followUpPrompts:f,onSelectFollowUp:y,onSend:C,inputDisabled:b=!1,inputPlaceholder:g="Ask me anything...",isStreaming:w=!1,onStop:A,inputActions:j,inputRef:S,isEmpty:k=!1,inputSx:P,sx:D})=>{const v=Boolean(f&&f.length>0&&y),I=i(s,{onSend:C,disabled:b,placeholder:g,isStreaming:w,onStop:A,actions:j,inputRef:S});return e(r,{sx:[{display:"flex",flex:1,flexDirection:"column",minWidth:0,minHeight:0,height:"100%"},...Array.isArray(D)?D:D?[D]:[]],children:[i(a,{title:p,subtitle:c,showAiChip:d,actions:u}),k?e(n,{sx:{borderRadius:0,border:"none",flex:1,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",px:2,pb:4},children:[h,i(r,{sx:[{mt:3,width:"100%"},...Array.isArray(P)?P:P?[P]:[]],children:I})]}):e(t,{children:[i(n,{sx:{borderRadius:0,border:"none",flex:1,display:"flex",flexDirection:"column",overflowY:"scroll"},children:h}),v&&e(o,{direction:{xs:"column",md:"row"},spacing:1,sx:{px:2,py:1,justifyContent:{xs:"center",sm:"flex-end"},alignItems:"center"},children:[i(m,{sx:{display:"block",mb:1},children:x}),i(l,{prompts:f??[],onSelect:y})]}),i(n,{sx:{borderRadius:0,border:"none"},children:i(r,{sx:[{p:2,flexShrink:0},...Array.isArray(P)?P:P?[P]:[]],children:I})})]})]})};export{p as AgentChatWindow};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as r}from"react/jsx-runtime";import{isValidElement as e,cloneElement as o}from"react";import i from"react-markdown";import n from"remark-gfm";import{Box as t}from"../../_Primitives/Box.mjs";import{Paper as l}from"../../_Primitives/Paper.mjs";import{ChatWindowBody as c,H4 as d,H3 as m}from"../../Typography.mjs";import{Code as h}from"../../Code.mjs";const p=(e,o)=>{const i=o?.trim();if(!i)return e;const n=new RegExp(`(${(r=>r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"))(i)})`,"ig");return e.split(n).map((e,o)=>{if(!e)return null;return e.toLowerCase()===i.toLowerCase()?r(t,{component:"mark",sx:{backgroundColor:r=>"dark"===r.palette.mode?"rgba(255, 214, 10, 0.35)":"rgba(255, 214, 10, 0.45)",color:"inherit",borderRadius:.5,px:.25,py:0},children:e},`${e}-${o}`):e})},s=(r,i)=>{if("string"==typeof r)return p(r,i);if("number"==typeof r)return p(r.toString(),i);if(Array.isArray(r))return r.map(r=>s(r,i));if(e(r)){const e=r.props.children;return void 0===e?r:o(r,void 0,s(e,i))}return r},a={p:({children:e})=>r(c,{sx:{mb:1,"&:last-child":{mb:0}},children:e}),li:({children:e})=>r(c,{component:"li",children:e}),strong:({children:e})=>r(t,{component:"strong",sx:{fontWeight:700,fontSize:"inherit",lineHeight:"inherit"},children:e}),em:({children:e})=>r(t,{component:"em",sx:{fontStyle:"italic",fontSize:"inherit",lineHeight:"inherit"},children:e})},
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{isValidElement as e,cloneElement as o}from"react";import i from"react-markdown";import n from"remark-gfm";import{Box as t}from"../../_Primitives/Box.mjs";import{Paper as l}from"../../_Primitives/Paper.mjs";import{ChatWindowBody as c,H4 as d,H3 as m}from"../../Typography.mjs";import{Code as h}from"../../Code.mjs";const p=(e,o)=>{const i=o?.trim();if(!i)return e;const n=new RegExp(`(${(r=>r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"))(i)})`,"ig");return e.split(n).map((e,o)=>{if(!e)return null;return e.toLowerCase()===i.toLowerCase()?r(t,{component:"mark",sx:{backgroundColor:r=>"dark"===r.palette.mode?"rgba(255, 214, 10, 0.35)":"rgba(255, 214, 10, 0.45)",color:"inherit",borderRadius:.5,px:.25,py:0},children:e},`${e}-${o}`):e})},s=(r,i)=>{if("string"==typeof r)return p(r,i);if("number"==typeof r)return p(r.toString(),i);if(Array.isArray(r))return r.map(r=>s(r,i));if(e(r)){const e=r.props.children;return void 0===e?r:o(r,void 0,s(e,i))}return r},a={p:({children:e})=>r(c,{sx:{mb:1,"&:last-child":{mb:0}},children:e}),li:({children:e})=>r(c,{component:"li",children:e}),strong:({children:e})=>r(t,{component:"strong",sx:{fontWeight:700,fontSize:"inherit",lineHeight:"inherit"},children:e}),em:({children:e})=>r(t,{component:"em",sx:{fontStyle:"italic",fontSize:"inherit",lineHeight:"inherit"},children:e})},f=({content:e,highlightQuery:o,compact:p=!1,components:a})=>{const f=r=>s(r,o),g=p?"0.875rem":void 0,x={p:({children:e})=>r(c,{sx:{mb:1,"&:last-child":{mb:0},fontSize:g},children:f(e)}),strong:({children:e})=>r(t,{component:"strong",sx:{fontWeight:700},children:f(e)}),em:({children:e})=>r(t,{component:"em",sx:{fontStyle:"italic"},children:f(e)}),ul:({children:e})=>r(t,{component:"ul",sx:{pl:2.5,my:2,display:"grid",gap:.5,listStyleType:"disc"},children:f(e)}),ol:({children:e})=>r(t,{component:"ol",sx:{pl:2.5,my:2,display:"grid",gap:.5,listStyleType:"decimal"},children:f(e)}),li:({children:e})=>r(c,{component:"li",sx:{fontSize:g},children:f(e)}),h1:({children:e})=>r(m,{sx:{mb:1,mt:.5},children:f(e)}),h2:({children:e})=>r(d,{sx:{mb:.5,mt:.5},children:f(e)}),h3:({children:e})=>r(d,{sx:{mb:.5,mt:.5},children:f(e)}),code:({children:e})=>r(h,{children:f(e)}),pre:({children:e})=>r(l,{component:"pre",variant:"outlined",sx:{my:2,p:1.5,overflowX:"auto",fontFamily:'"SFMono-Regular", "Consolas", "Liberation Mono", "Menlo", monospace',fontSize:"0.75rem",lineHeight:1.5,bgcolor:"action.hover"},children:f(e)}),hr:()=>r(t,{component:"hr",sx:{my:3,border:0,borderTop:1,borderColor:"divider"}}),table:({children:e})=>r(t,{component:"table",sx:{width:"100%",borderCollapse:"collapse",my:1},children:e}),th:({children:e})=>r(t,{component:"th",sx:{border:"1px solid",borderColor:"divider",px:1.25,py:.75,textAlign:"left",bgcolor:"action.hover",fontWeight:600},children:e}),td:({children:e})=>r(t,{component:"td",sx:{border:"1px solid",borderColor:"divider",px:1.25,py:.75,textAlign:"left"},children:e})};return r(i,{remarkPlugins:[n],components:{...x,...a},children:e})};export{a as chatWindowMarkdownComponents,f as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as o}from"react/jsx-runtime";import{useState as r}from"react";import t from"@mui/icons-material/ExpandMore";import n from"@mui/icons-material/ExpandLess";import i from"@mui/icons-material/Download";import a from"../AgentActivity/AgentActivity.mjs";import{Box as l}from"../../_Primitives/Box.mjs";import{Stack as
|
|
1
|
+
import{jsx as e,jsxs as o}from"react/jsx-runtime";import{useState as r}from"react";import t from"@mui/icons-material/ExpandMore";import n from"@mui/icons-material/ExpandLess";import i from"@mui/icons-material/Download";import a from"../AgentActivity/AgentActivity.mjs";import{Box as l}from"../../_Primitives/Box.mjs";import{Stack as c}from"../../_Primitives/Stack.mjs";import{GhostButton as s}from"../../Buttons/GhostButton.mjs";import{SecondaryButton as m}from"../../Buttons/SecondaryButton.mjs";import d from"./MarkdownContent.mjs";import p from"./MessageFeedbackBar.mjs";import{ChatWindowBody as f}from"../../Typography.mjs";import{colours as h}from"../../../theme/tokens.mjs";const g=({block:i})=>{const[a,c]=r(!1),m=i.language?.trim()||"text",d=i.content||"";if(!d.trim())return null;const p=Boolean(i.title);return o(l,{sx:{border:"1px solid",borderColor:"divider",borderRadius:1.5,overflow:"hidden",mb:1,"&:last-child":{mb:0}},children:[p&&o(s,{onClick:()=>c(e=>!e),"aria-expanded":a,sx:{display:"flex",justifyContent:"space-between",alignItems:"center",width:"100%",px:1.5,py:.75,bgcolor:"action.hover",borderBottom:a?"1px solid":"none",borderColor:"divider"},children:[e(l,{component:"span",sx:{fontSize:"0.8rem",fontWeight:600,color:"text.secondary"},children:i.title}),e(l,{component:"span","aria-hidden":"true",sx:{display:"inline-flex",alignItems:"center",color:"text.secondary"},children:e(a?n:t,{sx:{fontSize:16}})})]}),(!p||a)&&e(l,{component:"pre",sx:{m:0,p:1.5,overflowX:"auto",whiteSpace:"pre-wrap",wordBreak:"break-word",fontSize:"0.8125rem",fontFamily:'"SFMono-Regular", "Consolas", "Liberation Mono", "Menlo", monospace',lineHeight:1.5,bgcolor:"action.hover"},children:e(l,{component:"code",className:`language-${m}`,children:d})})]})},u=({file:o,onDownloadFile:t})=>{const[n,a]=r(!1);return e(m,{size:"small",startIcon:e(i,{}),onClick:async()=>{if(t){a(!0);try{await t(o)}finally{a(!1)}}},disabled:n||!t,children:n?"Preparing…":o.downloadLabel||o.displayName||"Download file"})},x=(o,r)=>{const t=r?.trim();if(!t)return o;const n=new RegExp(`(${(e=>e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"))(t)})`,"ig");return o.split(n).map((o,r)=>{if(!o)return null;return o.toLowerCase()===t.toLowerCase()?e(l,{component:"mark",sx:{backgroundColor:e=>"dark"===e.palette.mode?"rgba(255, 214, 10, 0.35)":"rgba(255, 214, 10, 0.45)",color:"inherit",borderRadius:.5,px:.25,py:0},children:o},`${o}-${r}`):o})},y=({message:r,highlightQuery:t,showActivity:n=!1,onFeedback:i,onDownloadFile:s,contentRenderer:m,markdownComponents:y,compact:b=!1})=>{const w="user"===r.role,k=!w&&r.codeBlocks&&r.codeBlocks.length>0,v=!w&&r.files&&r.files.length>0;return e(l,{sx:{display:"flex",justifyContent:w?"flex-end":"flex-start"},children:o(l,{sx:{display:"flex",flexDirection:"column",gap:1,minWidth:0,...w?{}:{flex:1}},children:[!w&&n&&r.traceEvents&&r.traceEvents.length>0&&e(a,{isStreaming:!1,traceEvents:r.traceEvents,latency:r.latency,activitySummary:r.activitySummary,compact:!0}),o(l,{sx:{borderRadius:w?"1rem 0.25rem 1rem 1rem":"0.25rem 1rem 1rem 1rem",px:1.75,py:1.25,bgcolor:w?h.jadeLight:"background.default",color:w?h.black:"text.primary",border:"none"},children:[k&&e(c,{spacing:0,sx:{mb:1.5},children:r.codeBlocks.map((o,r)=>e(g,{block:o},r))}),w?e(f,{sx:{whiteSpace:"pre-wrap",fontSize:b?"0.875rem":void 0},children:x(r.content,t)}):e("div",{className:"message-content",children:m?m(r.content):e(d,{content:r.content,highlightQuery:t,compact:b,components:y})}),v&&e(c,{direction:"row",spacing:1,sx:{mt:1.5,flexWrap:"wrap"},children:r.files.map((o,r)=>e(u,{file:o,onDownloadFile:s},`${o.bucket}-${o.key}-${r}`))})]}),!w&&i&&e(p,{message:r,onFeedback:i})]})})};export{y as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as
|
|
1
|
+
import{jsxs as t,jsx as r}from"react/jsx-runtime";import{useRef as e,useEffect as o}from"react";import{Box as n}from"../../_Primitives/Box.mjs";import i from"./MessageBubble.mjs";import c from"./StreamingBubble.mjs";import l from"./TypingIndicator.mjs";import{latestTraceLabel as s}from"./latestTraceLabel.mjs";const m=({messages:m,isTyping:a,streamingText:u,liveTraceEvents:g,highlightQuery:h,onAbort:p,showActivity:f=!1,compact:x=!1,markdownComponents:y})=>{const v=e(null),b=e(null),d=e(!1),T=e(m.length),j=e(!1),w=()=>{const t=b.current;t&&(j.current=!0,t.scrollTop=t.scrollHeight,requestAnimationFrame(()=>{j.current=!1}))};o(()=>{const t=m[m.length-1];m.length>T.current&&"user"===t?.role&&(d.current=!1,w()),T.current=m.length},[m]),o(()=>{d.current||w()},[a,u]);const A=(u||"").trim().length>0,H=a&&(A||f),B=a&&!H;return t(n,{ref:b,onScroll:()=>{j.current||(d.current=!(()=>{const t=b.current;return!t||t.scrollHeight-t.scrollTop-t.clientHeight<80})())},sx:{flex:1,minHeight:0,overflowY:"auto",display:"flex",flexDirection:"column",gap:1.5,px:2,py:1.5},children:[m.filter(t=>"user"===t.role||t.content).map(t=>r(i,{message:t,highlightQuery:h,showActivity:f,compact:x,markdownComponents:y},t.id)),H&&r(c,{text:u||"",traceEvents:g||[],highlightQuery:h,onAbort:p,showActivity:f,compact:x}),B&&r(l,{traceLabel:g&&g.length>0?s(g):void 0}),r(n,{ref:v})]})};export{m as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as i,jsx as t}from"react/jsx-runtime";import e from"
|
|
1
|
+
import{jsxs as i,jsx as t,Fragment as r}from"react/jsx-runtime";import e from"../AgentActivity/AgentActivity.mjs";import{Box as n}from"../../_Primitives/Box.mjs";import{Stack as o}from"../../_Primitives/Stack.mjs";import{Caption as a}from"../../Typography.mjs";import c from"./MarkdownContent.mjs";import{latestTraceLabel as m}from"./latestTraceLabel.mjs";const s=()=>t(n,{sx:{display:"inline-block",width:"2px",height:16,bgcolor:"primary.main",verticalAlign:"text-bottom",animation:"pulse 1.2s ease-in-out infinite","@keyframes pulse":{"0%, 100%":{opacity:.35},"50%":{opacity:1}}}}),l=({text:l,traceEvents:p,highlightQuery:g,avatarIcon:h,compact:d=!1,showActivity:x=!1})=>i(o,{direction:"row",spacing:1,sx:{justifyContent:"flex-start"},children:[h&&t(n,{sx:{mt:.25,flexShrink:0},children:h}),t(o,{spacing:1,sx:{flex:1,minWidth:0},children:x?i(r,{children:[t(e,{isStreaming:!0,traceEvents:p}),l&&i(n,{sx:{borderRadius:"0.25rem 1rem 1rem 1rem",bgcolor:"background.default",color:"text.primary",px:1.75,py:1.25,lineHeight:1.6},children:[t(c,{content:l,highlightQuery:g,compact:d}),t(s,{})]})]}):t(r,{children:l?i(n,{sx:{borderRadius:"0.25rem 1rem 1rem 1rem",bgcolor:"background.default",color:"text.primary",px:1.75,py:1.25,lineHeight:1.6},children:[t(c,{content:l,highlightQuery:g,compact:d}),t(s,{})]}):t(n,{sx:{bgcolor:"background.default",px:1.75,py:1.25},children:t(o,{direction:"row",spacing:1,sx:{alignItems:"center"},children:i(o,{direction:"row",spacing:.5,children:[t(a,{children:p.length>0?`Agent is working... ${m(p)}`:"Agent is working..."}),[0,150,300].map(i=>t(n,{component:"span",sx:{bgcolor:"primary.main",animation:"bounce 1s ease-in-out infinite",animationDelay:`${i}ms`,"@keyframes bounce":{"0%, 80%, 100%":{opacity:.35,transform:"translateY(0)"},"40%":{opacity:1,transform:"translateY(-1px)"}}}},i))]})})})})})]});export{l as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as r,jsx as e}from"react/jsx-runtime";import{Box as i}from"../../_Primitives/Box.mjs";import{Stack as
|
|
1
|
+
import{jsxs as r,jsx as e}from"react/jsx-runtime";import{Box as i}from"../../_Primitives/Box.mjs";import{Stack as t}from"../../_Primitives/Stack.mjs";import{Body2 as o}from"../../Typography.mjs";import{useTheme as a}from"@mui/material/styles";import{colours as n}from"../../../theme/tokens.mjs";const m=({traceLabel:m,avatarIcon:s})=>{const c="dark"===a().palette.mode?n.jadeLight:n.jadeDark;return r(t,{direction:"row",spacing:1,sx:{alignItems:"flex-start"},children:[s&&e(i,{sx:{mt:.25,flexShrink:0},children:s}),e(i,{sx:{borderRadius:"1rem 1rem 1rem 0.25rem",border:"1px solid",borderColor:"divider",bgcolor:"background.default",px:1.75,py:1.25},children:r(t,{direction:"row",spacing:1,sx:{alignItems:"center"},children:[e(o,{sx:{color:"text.primary",fontWeight:600,opacity:1},children:m?`Agent is working... ${m}`:"Agent is working..."}),e(t,{direction:"row",spacing:.5,children:[0,150,300].map(r=>e(i,{component:"span",sx:{width:6,height:6,borderRadius:"50%",bgcolor:c,animation:"bounce 1s ease-in-out infinite",animationDelay:`${r}ms`,"@keyframes bounce":{"0%, 80%, 100%":{opacity:.35,transform:"translateY(0)"},"40%":{opacity:1,transform:"translateY(-1px)"}}}},r))})]})})]})};export{m as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as e,jsx as o}from"react/jsx-runtime";import r from"@mui/icons-material/ChatBubbleOutlined";import t from"@mui/icons-material/DeleteForeverOutlined";import{Body1 as i,Caption as n}from"../Typography.mjs";import{
|
|
1
|
+
import{jsxs as e,jsx as o}from"react/jsx-runtime";import r from"@mui/icons-material/ChatBubbleOutlined";import t from"@mui/icons-material/DeleteForeverOutlined";import{Body1 as i,Caption as n}from"../Typography.mjs";import{GhostButton as a}from"../Buttons/GhostButton.mjs";import{Box as s}from"../_Primitives/Box.mjs";import{IconButton as l}from"../Buttons/IconButton.mjs";import{colours as m}from"../../theme/tokens.mjs";const d=(e,r)=>{const t=r?.trim();if(!t)return e;const i=new RegExp(`(${(e=>e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"))(t)})`,"ig");return e.split(i).map((e,r)=>{if(!e)return null;return e.toLowerCase()===t.toLowerCase()?o(s,{component:"mark",sx:{backgroundColor:e=>"dark"===e.palette.mode?"rgba(255, 214, 10, 0.35)":"rgba(255, 214, 10, 0.45)",color:"inherit",borderRadius:.5,px:.25,py:0},children:e},`${e}-${r}`):e})},p=({conversation:p,isActive:c,highlightQuery:u,onSelectConversation:b,onDeleteConversation:h,deleteConversationTitle:g,formatMessageCount:x,showMessageCount:y=!1,sx:f})=>{const v=(e=>"number"==typeof e.messageCount?e.messageCount:Array.isArray(e.messages)?e.messages.length:0)(p);return e(a,{onClick:()=>b(p.id),sx:[{width:"100%",display:"flex",alignItems:"center",gap:1.25,borderRadius:1,px:1.5,py:1.25,backgroundColor:c?e=>"dark"===e.palette.mode?m.black:m.white:"transparent",backgroundImage:"none",opacity:1,position:"relative",zIndex:1,border:"1px solid",borderColor:c?m.primaryGreenActive:"transparent","&:hover":{backgroundColor:c?e=>"dark"===e.palette.mode?m.black:m.white:"action.hover",backgroundImage:"none","& .delete-button":{visibility:"visible"}},"&:focus-visible":{boxShadow:e=>`0 0 0 2px ${e.palette.primary.main}`},mb:.25},...Array.isArray(f)?f:f?[f]:[]],children:[o(r,{sx:{fontSize:14,color:c?m.primaryGreenActive:"text.disabled"}}),e(s,{sx:{flex:1,minWidth:0},children:[o(i,{component:"span",sx:{display:"block",fontWeight:500,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:c?"text.primary":"text.secondary"},children:d(p.title,u)}),y&&o(n,{noWrap:!0,sx:{display:"block"},children:x(v)})]}),o(l,{className:"delete-button",title:g,ariaLabel:g,onClick:e=>{e.stopPropagation(),h&&Promise.resolve(h(p.id))},disabled:!h,sx:{visibility:"hidden"},children:o(t,{sx:{fontSize:14,color:c?"error.main":"text.disabled"}})})]})};export{p as ChatHistoryButtonBase};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as o,Fragment as i}from"react/jsx-runtime";import{useState as n}from"react";import{useTheme as t,useMediaQuery as r,Popover as l}from"@mui/material";import s from"@mui/icons-material/CloseFullscreen";import m from"@mui/icons-material/ExpandLess";import a from"@mui/icons-material/ExpandMore";import c from"@mui/icons-material/GridView";import p from"@mui/icons-material/History";import{ChatHistory as d}from"./ChatHistory.mjs";import{ChatInput as h}from"./ChatInput.mjs";import{Dialog as f}from"../Dialog.mjs";import{Box as x}from"../_Primitives/Box.mjs";import{Stack as u}from"../_Primitives/Stack.mjs";import{Paper as
|
|
1
|
+
import{jsx as e,jsxs as o,Fragment as i}from"react/jsx-runtime";import{useState as n}from"react";import{useTheme as t,useMediaQuery as r,Popover as l}from"@mui/material";import s from"@mui/icons-material/CloseFullscreen";import m from"@mui/icons-material/ExpandLess";import a from"@mui/icons-material/ExpandMore";import c from"@mui/icons-material/GridView";import p from"@mui/icons-material/History";import{ChatHistory as d}from"./ChatHistory.mjs";import{ChatInput as h}from"./ChatInput.mjs";import{Dialog as f}from"../Dialog.mjs";import{Box as x}from"../_Primitives/Box.mjs";import{Stack as u}from"../_Primitives/Stack.mjs";import{Paper as g}from"../_Primitives/Paper.mjs";import{IconButton as C}from"../Buttons/IconButton.mjs";import{AiChip as v}from"../AiChip.mjs";import{Caption as w,H1 as b,H2 as y}from"../Typography.mjs";import{AgentChatWindowHeader as S}from"./AgentChatWindowHeader.mjs";import"@mui/icons-material/Check";import"@mui/icons-material/ContentCopy";import"@mui/icons-material/Download";import"@mui/material/styles";import"../../theme/tokens.mjs";import"./ChatComponents/ChatAvatar.mjs";import{chatWindowMarkdownComponents as j}from"./ChatComponents/MarkdownContent.mjs";import"@mui/icons-material/CheckCircle";import"@mui/icons-material/OpenInNew";import"../Code.mjs";import"@mui/icons-material/ThumbUp";import"@mui/icons-material/ThumbDown";import k from"./ChatComponents/SuggestedPrompts.mjs";import z from"./ChatComponents/MessageList.mjs";import I from"./WidgetParts/WidgetInput.mjs";function D({open:D,onClose:T,title:H="Ask Nexus",subtitle:A="Ready to help",placeholder:P,suggestedPrompts:E=[],showAiChip:O=!0,isTyping:N,messages:W,streamingText:B,liveTraceEvents:L,showActivity:R=!1,onSend:M,onStop:U,background:_,followUpPrompts:X,followUpLabel:$="Suggested follow-ups:",topOffset:F,conversations:G,activeConversationId:V,onSelectConversation:Y,onDeleteConversation:q,onNewConversation:J}){const K=t(),Q=r(K.breakpoints.down("md")),[Z,ee]=n(!0),[oe,ie]=n(!1),[ne,te]=n(!1),[re,le]=n(null),se=W.length>0||N,me=se&&X&&X.length>0,ae=!Q||Z,ce=void 0!==G;return e(f,{open:D,fullScreen:!0,onClose:T,sx:F?{top:`${F}px`}:void 0,children:o(x,{sx:{display:"flex",flexDirection:"column",height:F?`calc(100vh - ${F}px)`:"100vh",overflow:"hidden"},children:[o(x,{sx:{display:"flex",flex:1,minHeight:0,overflow:"hidden"},children:[ce&&e(x,{sx:{display:{xs:"none",md:"flex"},flexDirection:"column",minHeight:0,flexShrink:0},children:e(d,{conversations:G,activeConversationId:V??null,onSelectConversation:Y??(()=>{}),onDeleteConversation:q,onNewConversation:J,isCollapsed:ne,onToggleCollapse:()=>te(e=>!e)})}),o(x,{sx:{display:"flex",flexDirection:"column",flex:1,minHeight:0,overflow:"hidden"},children:[o(x,{sx:{position:"relative",flexShrink:0},children:[e(S,{title:H,subtitle:A,showAiChip:!1,actions:Q?e(u,{}):o(u,{direction:"row",spacing:1,sx:{alignItems:"center"},children:[O&&e(v,{}),e(C,{title:"Close full view",size:"small",onClick:T,children:e(s,{sx:{fontSize:16}})})]})}),Q&&o(u,{direction:"row",sx:{position:"absolute",top:6,right:4,alignItems:"center"},children:[ce&&e(C,{title:"Chat history",size:"small",onClick:()=>ie(e=>!e),children:e(p,{sx:{fontSize:18}})}),e(C,{title:"Close full view",size:"small",onClick:T,children:e(s,{sx:{fontSize:16}})})]})]}),o(x,{sx:{flex:1,minHeight:0,position:"relative",display:"flex",flexDirection:"column",overflow:"hidden"},children:[_&&e(x,{sx:{position:"absolute",inset:0,zIndex:0,overflow:"hidden",pointerEvents:"none"},children:_}),se?o(x,{sx:{position:"relative",zIndex:1,flex:1,minHeight:0,display:"flex",flexDirection:"column",overflow:"hidden"},children:[e(g,{sx:{borderRadius:0,border:"none",flex:1,minHeight:0,display:"flex",flexDirection:"column",overflowY:"auto"},children:e(z,{messages:W,isTyping:N,streamingText:B,liveTraceEvents:L,showActivity:R,markdownComponents:j})}),me&&o(x,{sx:{bgcolor:"background.paper",borderTop:"1px solid",borderColor:"divider",px:2,pt:1,pb:ae?.5:1,flexShrink:0},children:[o(u,{direction:"row",sx:{alignItems:"center",justifyContent:"space-between",mb:ae?.75:0},children:[e(w,{children:$}),Q&&e(C,{size:"small",onClick:()=>ee(e=>!e),title:Z?"Collapse suggestions":"Expand suggestions",children:e(Z?a:m,{sx:{fontSize:16}})})]}),ae&&e(k,{prompts:X,onSelect:M})]}),e(g,{sx:{borderRadius:0,border:"none"},children:e(I,{placeholder:P,isStreaming:N,onStop:U,onSend:M})})]}):o(g,{sx:{borderRadius:0,border:"none",flex:1,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",px:2,pb:4},children:[o(u,{direction:"column",sx:{gap:4,alignItems:"center"},children:[e(b,{children:H}),e(y,{sx:{color:"text.secondary"},children:A})]}),e(x,{sx:{mt:10,width:"70%",minWidth:"min(40vw, 100%)"},children:e(h,{onSend:M,isStreaming:N,onStop:U,placeholder:P,actions:E.length>0?o(i,{children:[e(C,{title:"Open prompt gallery",ariaLabel:"Open prompt gallery",size:"small",sx:{color:"text.jades"},onClick:e=>le(e.currentTarget),children:e(c,{sx:{fontSize:18}})}),e(l,{open:Boolean(re),anchorEl:re,onClose:()=>le(null),anchorOrigin:{vertical:"top",horizontal:"left"},transformOrigin:{vertical:"bottom",horizontal:"left"},children:e(x,{sx:{p:2,maxWidth:360},children:e(k,{prompts:E,onSelect:e=>{le(null),M(e)}})})})]}):void 0})})]})]})]})]}),ce&&Q&&o(i,{children:[oe&&e(x,{onClick:()=>ie(!1),sx:{position:"absolute",inset:0,zIndex:9,bgcolor:"rgba(0,0,0,0.45)"}}),e(x,{sx:{position:"absolute",top:0,left:0,bottom:0,width:288,zIndex:10,bgcolor:"background.paper",boxShadow:4,display:"flex",flexDirection:"column",overflow:"hidden",transform:oe?"translateX(0)":"translateX(-100%)",transition:"transform 0.25s ease"},children:e(d,{conversations:G,activeConversationId:V??null,onSelectConversation:e=>{Y?.(e),ie(!1)},onDeleteConversation:q,onNewConversation:J?()=>{J(),ie(!1)}:void 0,onClose:()=>ie(!1)})})]})]})})}export{D as NexusChatDialog};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as e,Fragment as t,jsx as s}from"react/jsx-runtime";import{FABButton as o}from"./FABButton.mjs";import{GlassPaper as i}from"../GlassPaper.mjs";import a from"./WidgetParts/WidgetBody.mjs";import n from"./WidgetParts/WidgetHeader.mjs";import r from"./WidgetParts/WidgetInput.mjs";const m=["Summarise my latest data","What changed this week?","Show me the key trends","Help me understand my metrics"];function l({title:l="Ask Nexus",subtitle:d="Ready to help",fabLabel:p="Ask Nexus",avatarIcon:c,placeholder:x,emptyTitle:u="Ask Nexus",emptyDescription:g="Ask me anything about your data and I'll help you find answers.",dataSources:h,suggestedPrompts:f=m,isOpen:y,isTyping:
|
|
1
|
+
import{jsxs as e,Fragment as t,jsx as s}from"react/jsx-runtime";import{FABButton as o}from"./FABButton.mjs";import{GlassPaper as i}from"../GlassPaper.mjs";import a from"./WidgetParts/WidgetBody.mjs";import n from"./WidgetParts/WidgetHeader.mjs";import r from"./WidgetParts/WidgetInput.mjs";const m=["Summarise my latest data","What changed this week?","Show me the key trends","Help me understand my metrics"];function l({title:l="Ask Nexus",subtitle:d="Ready to help",fabLabel:p="Ask Nexus",avatarIcon:c,placeholder:x,emptyTitle:u="Ask Nexus",emptyDescription:g="Ask me anything about your data and I'll help you find answers.",dataSources:h,suggestedPrompts:f=m,isOpen:y,isTyping:v,messages:b,streamingText:S,liveTraceEvents:w,showActivity:T=!1,onOpen:P,onClose:A,onSend:I,onStop:W,onExpandToFullPage:j,hideFab:k=!1,placement:B="bottom-right"}){if(k)return null;return e(t,{children:[y&&e(i,{elevation:8,sx:{boxShadow:e=>e.shadows[2],borderRadius:3,position:"fixed",bottom:{xs:16,sm:24},..."bottom-left"===B?{left:{xs:16,sm:24}}:{right:{xs:16,sm:24}},zIndex:e=>e.zIndex.appBar+50,display:"flex",flexDirection:"column",width:{xs:"calc(100vw - 32px)",sm:380},maxHeight:{xs:"min(560px, calc(100dvh - 88px))",sm:"min(520px, calc(100dvh - 104px))"},overflow:"hidden",p:0,"& > div":{display:"flex",flexDirection:"column",flex:1,minHeight:0}},children:[s(n,{title:l,subtitle:d,onExpandToFullPage:j,onClose:A,avatarIcon:c}),s(a,{avatarIcon:c,isTyping:v,liveTraceEvents:w,messages:b,showActivity:T,streamingText:S,emptyTitle:u,emptyDescription:g,dataSources:h,suggestedPrompts:f,onSend:I}),s(r,{placeholder:x,isStreaming:v,onStop:W,onSend:I})]}),!y&&s(o,{onOpen:P,fabLabel:p,placement:B})]})}export{l as NexusChatWidget};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t}from"react/jsx-runtime";import{Box as i}from"../../_Primitives/Box.mjs";import"react";import"@mui/icons-material/Check";import"@mui/icons-material/ContentCopy";import"@mui/icons-material/Download";import"@mui/material";import"@mui/material/styles";import"../../../theme/tokens.mjs";import"../ChatComponents/ChatAvatar.mjs";import"react-markdown";import"remark-gfm";import"../../Typography.mjs";import"../../Code.mjs";import"@mui/icons-material/ExpandMore";import"@mui/icons-material/ExpandLess";import"@mui/icons-material/CheckCircle";import"@mui/icons-material/OpenInNew";import"@mui/icons-material/ThumbUp";import"@mui/icons-material/ThumbDown";import
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{Box as i}from"../../_Primitives/Box.mjs";import"react";import"@mui/icons-material/Check";import"@mui/icons-material/ContentCopy";import"@mui/icons-material/Download";import"@mui/material";import"@mui/material/styles";import"../../../theme/tokens.mjs";import"../ChatComponents/ChatAvatar.mjs";import"react-markdown";import"remark-gfm";import"../../Typography.mjs";import"../../Code.mjs";import"@mui/icons-material/ExpandMore";import"@mui/icons-material/ExpandLess";import"@mui/icons-material/CheckCircle";import"@mui/icons-material/OpenInNew";import"@mui/icons-material/ThumbUp";import"@mui/icons-material/ThumbDown";import m from"../ChatComponents/MessageList.mjs";import e from"../ChatComponents/EmptyState.mjs";const o=({avatarIcon:o,isTyping:r,liveTraceEvents:a,messages:s,showActivity:n,streamingText:p,emptyTitle:c,emptyDescription:l,dataSources:u,suggestedPrompts:h,onSend:d})=>{const g=s.length>0||r;return t(i,{sx:{flex:1,minHeight:0,display:"flex",flexDirection:"column",overflowY:"auto"},children:g?t(m,{messages:s,isTyping:r,streamingText:p,liveTraceEvents:a,avatarIcon:o,showActivity:n,compact:!0}):t(e,{title:c,description:l,dataSources:u,prompts:h.slice(0,4),avatarIcon:o,onSelect:d})})};export{o as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as o}from"react/jsx-runtime";import{Box as r}from"../../_Primitives/Box.mjs";import{ChatInput as e}from"../ChatInput.mjs";const i=({placeholder:i,isStreaming:n,onStop:t,onSend:p})=>o(r,{sx:{backgroundColor:"background.paper",borderTop:"1px solid",borderColor:"divider",p:1.5,flexShrink:0},children:o(e,{onSend:p,isStreaming:n,onStop:t,placeholder:i})});export{i as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as r,Fragment as e,jsx as t}from"react/jsx-runtime";import{colours as
|
|
1
|
+
import{jsxs as r,Fragment as e,jsx as t}from"react/jsx-runtime";import{colours as o}from"../theme/tokens.mjs";const i=[0,60,120,180,240,300],l=({strokeColor:l=o.brilliantGreen,fillColor:n=o.brilliantGreen,strokeWidth:c=4.5,centerRadius:s=12})=>r(e,{children:[t("g",{stroke:l,strokeWidth:c,strokeLinecap:"round",children:i.map(e=>r("g",{transform:`rotate(${e})`,children:[t("line",{x1:"10",y1:"0",x2:"36",y2:"0"}),t("circle",{cx:"44",cy:"0",r:"10",fill:n,stroke:"none"})]},e))}),t("circle",{cx:"0",cy:"0",r:s,fill:n})]});export{l as NexusLogoNode};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{CircularProgress as m}from"@mui/material";const o=o=>r(m,{...o});export{o as CircularProgress};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const o="2.0
|
|
1
|
+
const o="2.1.0";export{o as SAGE_NEXUS_UI_VERSION};
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as react from 'react';
|
|
2
2
|
import react__default, { ReactNode, ReactElement, ComponentType, CSSProperties, PropsWithChildren } from 'react';
|
|
3
|
-
import { AlertProps, BoxProps, SxProps as SxProps$1, Theme as Theme$1, TypographyProps, ContainerProps, GridProps, LinkProps as LinkProps$1, SelectProps as SelectProps$1, SwitchProps, AccordionSummaryProps, ButtonProps, ChipProps, CardProps as CardProps$1, PaperProps, CollapseProps, ButtonBaseProps, CheckboxProps, FormControlLabelProps, FormGroupProps, DialogProps, DialogActionsProps, DialogContentProps, DialogContentTextProps, DialogTitleProps, DividerProps, IconButtonProps as IconButtonProps$1, SkeletonProps as SkeletonProps$1, StackProps, TabProps, TabsProps, TextFieldProps, TooltipProps as TooltipProps$1 } from '@mui/material';
|
|
4
|
-
export { AlertProps, AlertTitle, BoxProps, ButtonBaseProps, CheckboxProps, ChipProps, CollapseProps, ContainerProps, DialogActionsProps, DialogContentProps, DialogContentTextProps, DialogProps, DialogTitleProps, DividerProps, FormControlLabelProps, FormGroupProps, GridProps, MenuItem, PaperProps, StackProps, SwitchProps, TabProps, TabsProps, TextFieldProps, Theme, alpha, useMediaQuery, useTheme } from '@mui/material';
|
|
3
|
+
import { AlertProps, BoxProps, SxProps as SxProps$1, Theme as Theme$1, TypographyProps, ContainerProps, GridProps, LinkProps as LinkProps$1, SelectProps as SelectProps$1, SwitchProps, AccordionSummaryProps, ButtonProps, ChipProps, CardProps as CardProps$1, PaperProps, CircularProgressProps, CollapseProps, ButtonBaseProps, CheckboxProps, FormControlLabelProps, FormGroupProps, DialogProps, DialogActionsProps, DialogContentProps, DialogContentTextProps, DialogTitleProps, DividerProps, IconButtonProps as IconButtonProps$1, SkeletonProps as SkeletonProps$1, StackProps, TabProps, TabsProps, TextFieldProps, TooltipProps as TooltipProps$1 } from '@mui/material';
|
|
4
|
+
export { AlertProps, AlertTitle, BoxProps, ButtonBaseProps, CheckboxProps, ChipProps, CircularProgressProps, CollapseProps, ContainerProps, DialogActionsProps, DialogContentProps, DialogContentTextProps, DialogProps, DialogTitleProps, DividerProps, FormControlLabelProps, FormGroupProps, GridProps, MenuItem, PaperProps, StackProps, SwitchProps, TabProps, TabsProps, TextFieldProps, Theme, alpha, useMediaQuery, useTheme } from '@mui/material';
|
|
5
5
|
import { SxProps, Theme } from '@mui/material/styles';
|
|
6
6
|
import { Components } from 'react-markdown';
|
|
7
7
|
import { DataGridProps } from '@mui/x-data-grid';
|
|
@@ -146,7 +146,7 @@ interface NexusChatWidgetProps {
|
|
|
146
146
|
onOpen: () => void;
|
|
147
147
|
onClose: () => void;
|
|
148
148
|
onSend: (message: string) => void;
|
|
149
|
-
|
|
149
|
+
onStop?: () => void;
|
|
150
150
|
onExpandToFullPage?: () => void;
|
|
151
151
|
/** hideFab - Pass true to hide the FAB (e.g. when on the full-page chat route).
|
|
152
152
|
* Consumer computes this: hideFab={pathname === ROUTES.AGENT} */
|
|
@@ -154,7 +154,7 @@ interface NexusChatWidgetProps {
|
|
|
154
154
|
/** Anchor corner for the floating widget and FAB. Defaults to 'bottom-right'. */
|
|
155
155
|
placement?: "bottom-right" | "bottom-left";
|
|
156
156
|
}
|
|
157
|
-
declare function NexusChatWidget({ title, subtitle, fabLabel, avatarIcon, placeholder, emptyTitle, emptyDescription, dataSources, suggestedPrompts, isOpen, isTyping, messages, streamingText, liveTraceEvents, showActivity, onOpen, onClose, onSend,
|
|
157
|
+
declare function NexusChatWidget({ title, subtitle, fabLabel, avatarIcon, placeholder, emptyTitle, emptyDescription, dataSources, suggestedPrompts, isOpen, isTyping, messages, streamingText, liveTraceEvents, showActivity, onOpen, onClose, onSend, onStop, onExpandToFullPage, hideFab, placement, }: NexusChatWidgetProps): react.JSX.Element | null;
|
|
158
158
|
|
|
159
159
|
declare const Box: ({ children, ...rest }: BoxProps) => react.JSX.Element;
|
|
160
160
|
|
|
@@ -200,7 +200,7 @@ interface NexusChatDialogProps {
|
|
|
200
200
|
liveTraceEvents?: TraceEvent[];
|
|
201
201
|
showActivity?: boolean;
|
|
202
202
|
onSend: (message: string) => void;
|
|
203
|
-
|
|
203
|
+
onStop?: () => void;
|
|
204
204
|
/** Rendered as an absolute-fill layer behind the glass body, e.g. <GreenWaveBackground /> */
|
|
205
205
|
background?: React.ReactNode;
|
|
206
206
|
/** Prompt chips shown in a paper strip directly above the input during an active conversation */
|
|
@@ -217,7 +217,7 @@ interface NexusChatDialogProps {
|
|
|
217
217
|
onDeleteConversation?: (id: string) => void | Promise<boolean>;
|
|
218
218
|
onNewConversation?: () => void;
|
|
219
219
|
}
|
|
220
|
-
declare function NexusChatDialog({ open, onClose, title, subtitle, placeholder, suggestedPrompts, showAiChip, isTyping, messages, streamingText, liveTraceEvents, showActivity, onSend,
|
|
220
|
+
declare function NexusChatDialog({ open, onClose, title, subtitle, placeholder, suggestedPrompts, showAiChip, isTyping, messages, streamingText, liveTraceEvents, showActivity, onSend, onStop, background, followUpPrompts, followUpLabel, topOffset, conversations, activeConversationId, onSelectConversation, onDeleteConversation, onNewConversation, }: NexusChatDialogProps): react.JSX.Element;
|
|
221
221
|
|
|
222
222
|
interface FABButtonProps {
|
|
223
223
|
onOpen: () => void;
|
|
@@ -318,11 +318,12 @@ declare const ChatAvatar: ({ size, icon, sx }: ChatAvatarProps) => react.JSX.Ele
|
|
|
318
318
|
interface MarkdownContentProps {
|
|
319
319
|
content: string;
|
|
320
320
|
highlightQuery?: string;
|
|
321
|
+
compact?: boolean;
|
|
321
322
|
/** Override or extend the default markdown component renderers */
|
|
322
323
|
components?: Partial<Components>;
|
|
323
324
|
}
|
|
324
325
|
declare const chatWindowMarkdownComponents: Partial<Components>;
|
|
325
|
-
declare const MarkdownContent: ({ content, highlightQuery, components: extraComponents, }: MarkdownContentProps) => react.JSX.Element;
|
|
326
|
+
declare const MarkdownContent: ({ content, highlightQuery, compact, components: extraComponents, }: MarkdownContentProps) => react.JSX.Element;
|
|
326
327
|
|
|
327
328
|
interface MessageBubbleProps {
|
|
328
329
|
message: ChatMessage;
|
|
@@ -336,8 +337,9 @@ interface MessageBubbleProps {
|
|
|
336
337
|
contentRenderer?: (content: string) => React.ReactNode;
|
|
337
338
|
/** Override or extend individual markdown element renderers */
|
|
338
339
|
markdownComponents?: Partial<Components>;
|
|
340
|
+
compact?: boolean;
|
|
339
341
|
}
|
|
340
|
-
declare const MessageBubble: ({ message, highlightQuery, showActivity, onFeedback, onDownloadFile, contentRenderer, markdownComponents, }: MessageBubbleProps) => react.JSX.Element;
|
|
342
|
+
declare const MessageBubble: ({ message, highlightQuery, showActivity, onFeedback, onDownloadFile, contentRenderer, markdownComponents, compact, }: MessageBubbleProps) => react.JSX.Element;
|
|
341
343
|
|
|
342
344
|
interface MessageFeedbackBarProps {
|
|
343
345
|
message: ChatMessage;
|
|
@@ -350,10 +352,12 @@ interface StreamingBubbleProps {
|
|
|
350
352
|
traceEvents: TraceEvent[];
|
|
351
353
|
highlightQuery?: string;
|
|
352
354
|
avatarIcon?: React.ReactNode;
|
|
355
|
+
/** @deprecated Stop is now handled by ChatInput — this prop is ignored */
|
|
353
356
|
onAbort?: () => void;
|
|
354
357
|
showActivity?: boolean;
|
|
358
|
+
compact?: boolean;
|
|
355
359
|
}
|
|
356
|
-
declare const StreamingBubble: ({ text, traceEvents, highlightQuery, avatarIcon,
|
|
360
|
+
declare const StreamingBubble: ({ text, traceEvents, highlightQuery, avatarIcon, compact, showActivity, }: StreamingBubbleProps) => react.JSX.Element;
|
|
357
361
|
|
|
358
362
|
interface TypingIndicatorProps {
|
|
359
363
|
traceLabel?: string;
|
|
@@ -376,9 +380,10 @@ interface MessageListProps {
|
|
|
376
380
|
onAbort?: () => void;
|
|
377
381
|
avatarIcon?: React.ReactNode;
|
|
378
382
|
showActivity?: boolean;
|
|
383
|
+
compact?: boolean;
|
|
379
384
|
markdownComponents?: Partial<Components>;
|
|
380
385
|
}
|
|
381
|
-
declare const MessageList: ({ messages, isTyping, streamingText, liveTraceEvents, highlightQuery, onAbort, showActivity, markdownComponents, }: MessageListProps) => react.JSX.Element;
|
|
386
|
+
declare const MessageList: ({ messages, isTyping, streamingText, liveTraceEvents, highlightQuery, onAbort, showActivity, compact, markdownComponents, }: MessageListProps) => react.JSX.Element;
|
|
382
387
|
|
|
383
388
|
interface EmptyStateProps {
|
|
384
389
|
title: string;
|
|
@@ -591,12 +596,38 @@ declare const GlassPaper: ({ sx, children, ...rest }: GlassPaperProps) => react.
|
|
|
591
596
|
type AiGlassPaperProps = GlassPaperProps;
|
|
592
597
|
declare const AiGlassPaper: ({ sx, children, ...rest }: AiGlassPaperProps) => react.JSX.Element;
|
|
593
598
|
|
|
599
|
+
declare const CircularProgress: (props: CircularProgressProps) => react.JSX.Element;
|
|
600
|
+
|
|
594
601
|
declare const Collapse: ({ children, ...rest }: CollapseProps) => react.JSX.Element;
|
|
595
602
|
|
|
596
603
|
declare const NexusDataGrid: ({ sx, ...rest }: DataGridProps) => react.JSX.Element;
|
|
597
604
|
|
|
598
605
|
declare const ButtonBase: (props: ButtonBaseProps) => react.JSX.Element;
|
|
599
606
|
|
|
607
|
+
type GhostButtonProps = ButtonBaseProps;
|
|
608
|
+
/**
|
|
609
|
+
* Invisible interactive button — no background, border, or padding.
|
|
610
|
+
* Use for interactive regions where sighted users rely on layout or iconography
|
|
611
|
+
* to understand clickability (collapsible headers, clickable cards, row expanders).
|
|
612
|
+
* Inherits font and text alignment from context; all other button chrome is stripped.
|
|
613
|
+
*
|
|
614
|
+
* Always supply `aria-label` or visible text content so the action is announced
|
|
615
|
+
* to screen reader users. Add `aria-expanded` for toggle controls.
|
|
616
|
+
*
|
|
617
|
+
* ```tsx
|
|
618
|
+
* <GhostButton
|
|
619
|
+
* onClick={handleToggle}
|
|
620
|
+
* aria-expanded={isOpen}
|
|
621
|
+
* aria-label="Toggle section"
|
|
622
|
+
* sx={{ display: "flex", width: "100%", alignItems: "center", gap: 1 }}
|
|
623
|
+
* >
|
|
624
|
+
* <span>{label}</span>
|
|
625
|
+
* <ChevronDownIcon aria-hidden="true" />
|
|
626
|
+
* </GhostButton>
|
|
627
|
+
* ```
|
|
628
|
+
*/
|
|
629
|
+
declare const GhostButton: React.FC<GhostButtonProps>;
|
|
630
|
+
|
|
600
631
|
declare const Checkbox: (props: CheckboxProps) => react.JSX.Element;
|
|
601
632
|
|
|
602
633
|
declare const FormControlLabel: (props: FormControlLabelProps) => react.JSX.Element;
|
|
@@ -1077,5 +1108,5 @@ declare const getGradientBorderStyles: (theme: Theme, options?: GradientBorderOp
|
|
|
1077
1108
|
declare const leftPipe: SxProps<Theme>;
|
|
1078
1109
|
declare const expandableText: (isExpanded: boolean) => SxProps<Theme>;
|
|
1079
1110
|
|
|
1080
|
-
export { AccordionGroup, AccordionGroupItem, AccordionSingle, ActionBar, ActionBarTitle, AgentChatWindow, AgentChatWindowHeader, AiButton, AiCard, AiChip, AiGlassCard, AiGlassPaper, AiPaper, Alert, Avatar, Body1, Body2, Box, ButtonBase, Caption, Card, ChatAvatar, ChatHistory, ChatHistoryButtonBase, ChatHistoryHeader, ChatInput, ChatWindowBody, Checkbox, CheckboxGroup, Chip, Code, Collapse, Container, CopyableTableContainer, DateRangeFilter, DateRangePicker, Dialog, DialogActions, DialogContent, DialogContentText, DialogTitle, Divider, EmptyState, FABButton, FaviconLinks, FormControlLabel, FormGroup, GlassCard, GlassPaper, GlassPaperAsync, GreenWaveBackground, Grid, H1, H2, H3, H4, IconButton, Link, LoadingSpinnerNexus, LocationMultiSelect, LogoOptions, MarkdownContent, MessageBubble, MessageFeedbackBar, MessageList, MuiAppThemeProvider, NexusBarChart, NexusChatDialog, NexusChatWidget, NexusDataGrid, NexusHome, NexusLineChart, NexusLogo, NexusPieChart, Paper, PaperAsync, PrimaryButton, PrimaryButtonLink, RagChip, RagDot, SearchInput, SecondaryButton, SecondaryButtonLink, Select, SideBlade, SideBladeNavList, SideBladeNavListItem, Skeleton, SkillChip, SkipLink, SourceCitations, Span, Stack, StatusBadge, StatusChip, StreamingBubble, SuggestedPrompts, Switch, Tab, Tabs, TextField, ThemeModeContext, ThemeModeProvider, ThemeToggle, Tooltip, TypingIndicator, chatHistoryMatchesQuery, chatWindowMarkdownComponents, colours, createSageTheme, expandableText, filterChatHistoryConversations, fontSageHeadline, fontSageText, fontSageUI, formatDate, formatSurnameFirstname, getFaviconUrls, getFiscalPeriod, getGradientBorderStyles, getModeTokens, gradients, latestTraceLabel, leftPipe, useThemeMode, useTokens };
|
|
1081
|
-
export type { AccordionGroupItemProps, AccordionGroupProps, AccordionSingleProps, ActivitySummary, AgentChatWindowHeaderProps, AgentChatWindowProps, AiButtonProps, AiCardProps, AiChipProps, AiGlassCardProps, AiGlassPaperProps, AiPaperProps, AvatarProps, AvatarSize, AvatarVariant, CardProps, CardTrend, ChatAvatarProps, ChatHistoryButtonBaseProps, ChatHistoryConversation, ChatHistoryHeaderProps, ChatHistoryProps, ChatInputProps, ChatMessage, CodeBlock, CopyableTableContainerProps, DateRangeFilterProps, DateRangePickerProps, DateRangePreset, DateRangeValue, EmptyStateProps, FABButtonProps, FileArtifact, GlassCardProps, GlassPaperAsyncProps, GlassPaperProps, GradientBorderOptions, GreenWaveBackgroundProps, IconButtonProps, IconButtonVariant, LatencyMetrics, LinkProps, LoadingSpinnerNexusProps, MarkdownContentProps, MessageBubbleProps, MessageFeedbackBarProps, MessageListProps, ModeTokens, NexusBarChartProps, NexusChatDialogProps, NexusChatWidgetProps, NexusLineChartProps, NexusPieChartProps, PaperAsyncProps, ParsedActivity, PrimaryButtonLinkProps, PrimaryButtonProps, SecondaryButtonLinkProps, SecondaryButtonProps, SelectOption, SelectProps, SideBladeNavItem, SideBladeNavListItemProps, SideBladeNavListProps, SideBladeProps, SkeletonProps, SkipLinkProps, SourceCitationsProps, StatusBadgeProps, StatusBadgeVariant, StreamingBubbleProps, SuggestedPromptsProps, ThemeMode, TooltipProps, TraceEvent, TypingIndicatorProps };
|
|
1111
|
+
export { AccordionGroup, AccordionGroupItem, AccordionSingle, ActionBar, ActionBarTitle, AgentChatWindow, AgentChatWindowHeader, AiButton, AiCard, AiChip, AiGlassCard, AiGlassPaper, AiPaper, Alert, Avatar, Body1, Body2, Box, ButtonBase, Caption, Card, ChatAvatar, ChatHistory, ChatHistoryButtonBase, ChatHistoryHeader, ChatInput, ChatWindowBody, Checkbox, CheckboxGroup, Chip, CircularProgress, Code, Collapse, Container, CopyableTableContainer, DateRangeFilter, DateRangePicker, Dialog, DialogActions, DialogContent, DialogContentText, DialogTitle, Divider, EmptyState, FABButton, FaviconLinks, FormControlLabel, FormGroup, GhostButton, GlassCard, GlassPaper, GlassPaperAsync, GreenWaveBackground, Grid, H1, H2, H3, H4, IconButton, Link, LoadingSpinnerNexus, LocationMultiSelect, LogoOptions, MarkdownContent, MessageBubble, MessageFeedbackBar, MessageList, MuiAppThemeProvider, NexusBarChart, NexusChatDialog, NexusChatWidget, NexusDataGrid, NexusHome, NexusLineChart, NexusLogo, NexusPieChart, Paper, PaperAsync, PrimaryButton, PrimaryButtonLink, RagChip, RagDot, SearchInput, SecondaryButton, SecondaryButtonLink, Select, SideBlade, SideBladeNavList, SideBladeNavListItem, Skeleton, SkillChip, SkipLink, SourceCitations, Span, Stack, StatusBadge, StatusChip, StreamingBubble, SuggestedPrompts, Switch, Tab, Tabs, TextField, ThemeModeContext, ThemeModeProvider, ThemeToggle, Tooltip, TypingIndicator, chatHistoryMatchesQuery, chatWindowMarkdownComponents, colours, createSageTheme, expandableText, filterChatHistoryConversations, fontSageHeadline, fontSageText, fontSageUI, formatDate, formatSurnameFirstname, getFaviconUrls, getFiscalPeriod, getGradientBorderStyles, getModeTokens, gradients, latestTraceLabel, leftPipe, useThemeMode, useTokens };
|
|
1112
|
+
export type { AccordionGroupItemProps, AccordionGroupProps, AccordionSingleProps, ActivitySummary, AgentChatWindowHeaderProps, AgentChatWindowProps, AiButtonProps, AiCardProps, AiChipProps, AiGlassCardProps, AiGlassPaperProps, AiPaperProps, AvatarProps, AvatarSize, AvatarVariant, CardProps, CardTrend, ChatAvatarProps, ChatHistoryButtonBaseProps, ChatHistoryConversation, ChatHistoryHeaderProps, ChatHistoryProps, ChatInputProps, ChatMessage, CodeBlock, CopyableTableContainerProps, DateRangeFilterProps, DateRangePickerProps, DateRangePreset, DateRangeValue, EmptyStateProps, FABButtonProps, FileArtifact, GhostButtonProps, GlassCardProps, GlassPaperAsyncProps, GlassPaperProps, GradientBorderOptions, GreenWaveBackgroundProps, IconButtonProps, IconButtonVariant, LatencyMetrics, LinkProps, LoadingSpinnerNexusProps, MarkdownContentProps, MessageBubbleProps, MessageFeedbackBarProps, MessageListProps, ModeTokens, NexusBarChartProps, NexusChatDialogProps, NexusChatWidgetProps, NexusLineChartProps, NexusPieChartProps, PaperAsyncProps, ParsedActivity, PrimaryButtonLinkProps, PrimaryButtonProps, SecondaryButtonLinkProps, SecondaryButtonProps, SelectOption, SelectProps, SideBladeNavItem, SideBladeNavListItemProps, SideBladeNavListProps, SideBladeProps, SkeletonProps, SkipLinkProps, SourceCitationsProps, StatusBadgeProps, StatusBadgeVariant, StreamingBubbleProps, SuggestedPromptsProps, ThemeMode, TooltipProps, TraceEvent, TypingIndicatorProps };
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{DateRangeFilter}from"./components/DateRangeFilter.mjs";export{DateRangePicker}from"./components/DateRangePicker.mjs";export{Alert}from"./components/_Primitives/Alert.mjs";export{NexusChatWidget}from"./components/NexusChat/NexusChatWidget.mjs";export{NexusChatDialog}from"./components/NexusChat/NexusChatDialog.mjs";export{FABButton}from"./components/NexusChat/FABButton.mjs";export{AgentChatWindow}from"./components/NexusChat/AgentChatWindow.mjs";export{AgentChatWindowHeader}from"./components/NexusChat/AgentChatWindowHeader.mjs";export{ChatInput}from"./components/NexusChat/ChatInput.mjs";export{ChatHistory}from"./components/NexusChat/ChatHistory.mjs";export{ChatHistoryHeader}from"./components/NexusChat/ChatHistoryHeader.mjs";export{ChatHistoryButtonBase}from"./components/NexusChat/ChatHistoryButtonBase.mjs";export{chatHistoryMatchesQuery,filterChatHistoryConversations}from"./components/NexusChat/ChatHistorySearch.mjs";export{CopyableTableContainer}from"./components/NexusChat/ChatComponents/CopyableTableContainer.mjs";export{default as ChatAvatar}from"./components/NexusChat/ChatComponents/ChatAvatar.mjs";export{default as MarkdownContent,chatWindowMarkdownComponents}from"./components/NexusChat/ChatComponents/MarkdownContent.mjs";export{default as MessageBubble}from"./components/NexusChat/ChatComponents/MessageBubble.mjs";export{default as MessageFeedbackBar}from"./components/NexusChat/ChatComponents/MessageFeedbackBar.mjs";export{default as StreamingBubble}from"./components/NexusChat/ChatComponents/StreamingBubble.mjs";export{default as TypingIndicator}from"./components/NexusChat/ChatComponents/TypingIndicator.mjs";export{default as SuggestedPrompts}from"./components/NexusChat/ChatComponents/SuggestedPrompts.mjs";export{default as MessageList}from"./components/NexusChat/ChatComponents/MessageList.mjs";export{default as EmptyState}from"./components/NexusChat/ChatComponents/EmptyState.mjs";export{default as SourceCitations}from"./components/NexusChat/ChatComponents/SourceCitations.mjs";export{latestTraceLabel}from"./components/NexusChat/ChatComponents/latestTraceLabel.mjs";export{Code}from"./components/Code.mjs";export{Container}from"./components/_Primitives/Container.mjs";export{Grid}from"./components/_Primitives/Grid.mjs";export{Link}from"./components/_Primitives/Link.mjs";export{Select}from"./components/Select.mjs";export{SkipLink}from"./components/SkipLink.mjs";export{StatusBadge}from"./components/StatusBadge.mjs";export{Switch}from"./components/_Primitives/Switch.mjs";export{ActionBarTitle,Body1,Body2,Caption,ChatWindowBody,H1,H2,H3,H4,Span}from"./components/Typography.mjs";export{ActionBar}from"./components/ActionBar.mjs";export{AccordionGroup,AccordionGroupItem}from"./components/AccordionGroup.mjs";export{AccordionSingle}from"./components/AccordionSingle.mjs";export{AiButton}from"./components/Buttons/AiButton.mjs";export{AiChip}from"./components/AiChip.mjs";export{AiCard}from"./components/AiCard.mjs";export{AiGlassCard}from"./components/AiGlassCard.mjs";export{AiPaper}from"./components/AiPaper.mjs";export{AiGlassPaper}from"./components/AiGlassPaper.mjs";export{Box}from"./components/_Primitives/Box.mjs";export{Collapse}from"./components/_Primitives/Collapse.mjs";export{NexusDataGrid}from"./components/NexusDataGrid.mjs";export{ButtonBase}from"./components/Buttons/ButtonBase.mjs";export{Card}from"./components/Card.mjs";export{Checkbox}from"./components/FormControls/Checkbox.mjs";export{FormControlLabel}from"./components/FormControls/FormControlLabel.mjs";export{FormGroup}from"./components/FormControls/FormGroup.mjs";export{CheckboxGroup}from"./components/FormControls/CheckboxGroup.mjs";export{Chip}from"./components/_Primitives/Chip.mjs";export{Dialog,DialogActions,DialogContent,DialogContentText,DialogTitle}from"./components/Dialog.mjs";export{Divider}from"./components/_Primitives/Divider.mjs";export{GlassCard}from"./components/GlassCard.mjs";export{GlassPaper}from"./components/GlassPaper.mjs";export{GlassPaperAsync}from"./components/GlassPaperAsync.mjs";export{PaperAsync}from"./components/PaperAsync.mjs";export{GreenWaveBackground}from"./components/GreenWaveBackground.mjs";export{IconButton}from"./components/Buttons/IconButton.mjs";export{Avatar}from"./components/Avatar.mjs";export{LoadingSpinnerNexus}from"./components/LoadingSpinnerNexus.mjs";export{LocationMultiSelect}from"./components/LocationMultiSelect.mjs";export{LogoOptions}from"./components/LogoOptions/index.mjs";export{NexusHome}from"./components/NexusHome.mjs";export{default as NexusLogo}from"./components/NexusLogo.mjs";export{Paper}from"./components/_Primitives/Paper.mjs";export{PrimaryButton}from"./components/Buttons/PrimaryButton.mjs";export{PrimaryButtonLink}from"./components/Buttons/PrimaryButtonLink.mjs";export{SecondaryButton}from"./components/Buttons/SecondaryButton.mjs";export{RagDot}from"./components/RagDot.mjs";export{RagChip}from"./components/RagChip.mjs";export{SecondaryButtonLink}from"./components/Buttons/SecondaryButtonLink.mjs";export{SearchInput}from"./components/SearchInput.mjs";export{SideBlade}from"./components/SideBlade/SideBlade.mjs";export{SideBladeNavList}from"./components/SideBlade/SideBladeNavList.mjs";export{SideBladeNavListItem}from"./components/SideBlade/SideBladeNavListItem.mjs";export{Skeleton}from"./components/_Primitives/Skeleton.mjs";export{SkillChip}from"./components/SkillChip.mjs";export{Stack}from"./components/_Primitives/Stack.mjs";export{StatusChip}from"./components/StatusChip.mjs";export{Tab}from"./components/_Primitives/Tab.mjs";export{Tabs}from"./components/_Primitives/Tabs.mjs";export{TextField}from"./components/_Primitives/TextField.mjs";export{ThemeToggle}from"./components/ThemeToggle.mjs";export{Tooltip}from"./components/Tooltip.mjs";export{NexusLineChart}from"./components/Charts/NexusLineChart.mjs";export{NexusBarChart}from"./components/Charts/NexusBarChart.mjs";export{NexusPieChart}from"./components/Charts/NexusPieChart.mjs";export{default as nexusLogoNode}from"./assets/images/nexus-logo-node.svg.mjs";export{default as nexusLogoFavicon}from"./assets/images/nexus-logo-favicon.svg.mjs";export{default as nexusLogoIco}from"./assets/images/favicon.ico.mjs";export{getFaviconUrls}from"./assets/images/urls.mjs";export{FaviconLinks}from"./components/FaviconLinks.mjs";export{createSageTheme}from"./theme/sageTheme.mjs";export{colours,fontSageHeadline,fontSageText,fontSageUI,getModeTokens,gradients}from"./theme/tokens.mjs";export{useTokens}from"./theme/useTokens.mjs";export{default as MuiAppThemeProvider}from"./theme/MuiAppThemeProvider.mjs";export{ThemeModeContext,ThemeModeProvider,useThemeMode}from"./theme/ThemeContext.mjs";export{AlertTitle,MenuItem,alpha,useMediaQuery,useTheme}from"@mui/material";export{formatSurnameFirstname}from"./utils/nameFormats.mjs";export{formatDate,getFiscalPeriod}from"./utils/dateFormats.mjs";export{expandableText,getGradientBorderStyles,leftPipe}from"./theme/sxHelpers.mjs";
|
|
1
|
+
export{DateRangeFilter}from"./components/DateRangeFilter.mjs";export{DateRangePicker}from"./components/DateRangePicker.mjs";export{Alert}from"./components/_Primitives/Alert.mjs";export{NexusChatWidget}from"./components/NexusChat/NexusChatWidget.mjs";export{NexusChatDialog}from"./components/NexusChat/NexusChatDialog.mjs";export{FABButton}from"./components/NexusChat/FABButton.mjs";export{AgentChatWindow}from"./components/NexusChat/AgentChatWindow.mjs";export{AgentChatWindowHeader}from"./components/NexusChat/AgentChatWindowHeader.mjs";export{ChatInput}from"./components/NexusChat/ChatInput.mjs";export{ChatHistory}from"./components/NexusChat/ChatHistory.mjs";export{ChatHistoryHeader}from"./components/NexusChat/ChatHistoryHeader.mjs";export{ChatHistoryButtonBase}from"./components/NexusChat/ChatHistoryButtonBase.mjs";export{chatHistoryMatchesQuery,filterChatHistoryConversations}from"./components/NexusChat/ChatHistorySearch.mjs";export{CopyableTableContainer}from"./components/NexusChat/ChatComponents/CopyableTableContainer.mjs";export{default as ChatAvatar}from"./components/NexusChat/ChatComponents/ChatAvatar.mjs";export{default as MarkdownContent,chatWindowMarkdownComponents}from"./components/NexusChat/ChatComponents/MarkdownContent.mjs";export{default as MessageBubble}from"./components/NexusChat/ChatComponents/MessageBubble.mjs";export{default as MessageFeedbackBar}from"./components/NexusChat/ChatComponents/MessageFeedbackBar.mjs";export{default as StreamingBubble}from"./components/NexusChat/ChatComponents/StreamingBubble.mjs";export{default as TypingIndicator}from"./components/NexusChat/ChatComponents/TypingIndicator.mjs";export{default as SuggestedPrompts}from"./components/NexusChat/ChatComponents/SuggestedPrompts.mjs";export{default as MessageList}from"./components/NexusChat/ChatComponents/MessageList.mjs";export{default as EmptyState}from"./components/NexusChat/ChatComponents/EmptyState.mjs";export{default as SourceCitations}from"./components/NexusChat/ChatComponents/SourceCitations.mjs";export{latestTraceLabel}from"./components/NexusChat/ChatComponents/latestTraceLabel.mjs";export{Code}from"./components/Code.mjs";export{Container}from"./components/_Primitives/Container.mjs";export{Grid}from"./components/_Primitives/Grid.mjs";export{Link}from"./components/_Primitives/Link.mjs";export{Select}from"./components/Select.mjs";export{SkipLink}from"./components/SkipLink.mjs";export{StatusBadge}from"./components/StatusBadge.mjs";export{Switch}from"./components/_Primitives/Switch.mjs";export{ActionBarTitle,Body1,Body2,Caption,ChatWindowBody,H1,H2,H3,H4,Span}from"./components/Typography.mjs";export{ActionBar}from"./components/ActionBar.mjs";export{AccordionGroup,AccordionGroupItem}from"./components/AccordionGroup.mjs";export{AccordionSingle}from"./components/AccordionSingle.mjs";export{AiButton}from"./components/Buttons/AiButton.mjs";export{AiChip}from"./components/AiChip.mjs";export{AiCard}from"./components/AiCard.mjs";export{AiGlassCard}from"./components/AiGlassCard.mjs";export{AiPaper}from"./components/AiPaper.mjs";export{AiGlassPaper}from"./components/AiGlassPaper.mjs";export{Box}from"./components/_Primitives/Box.mjs";export{CircularProgress}from"./components/_Primitives/CircularProgress.mjs";export{Collapse}from"./components/_Primitives/Collapse.mjs";export{NexusDataGrid}from"./components/NexusDataGrid.mjs";export{ButtonBase}from"./components/Buttons/ButtonBase.mjs";export{GhostButton}from"./components/Buttons/GhostButton.mjs";export{Card}from"./components/Card.mjs";export{Checkbox}from"./components/FormControls/Checkbox.mjs";export{FormControlLabel}from"./components/FormControls/FormControlLabel.mjs";export{FormGroup}from"./components/FormControls/FormGroup.mjs";export{CheckboxGroup}from"./components/FormControls/CheckboxGroup.mjs";export{Chip}from"./components/_Primitives/Chip.mjs";export{Dialog,DialogActions,DialogContent,DialogContentText,DialogTitle}from"./components/Dialog.mjs";export{Divider}from"./components/_Primitives/Divider.mjs";export{GlassCard}from"./components/GlassCard.mjs";export{GlassPaper}from"./components/GlassPaper.mjs";export{GlassPaperAsync}from"./components/GlassPaperAsync.mjs";export{PaperAsync}from"./components/PaperAsync.mjs";export{GreenWaveBackground}from"./components/GreenWaveBackground.mjs";export{IconButton}from"./components/Buttons/IconButton.mjs";export{Avatar}from"./components/Avatar.mjs";export{LoadingSpinnerNexus}from"./components/LoadingSpinnerNexus.mjs";export{LocationMultiSelect}from"./components/LocationMultiSelect.mjs";export{LogoOptions}from"./components/LogoOptions/index.mjs";export{NexusHome}from"./components/NexusHome.mjs";export{default as NexusLogo}from"./components/NexusLogo.mjs";export{Paper}from"./components/_Primitives/Paper.mjs";export{PrimaryButton}from"./components/Buttons/PrimaryButton.mjs";export{PrimaryButtonLink}from"./components/Buttons/PrimaryButtonLink.mjs";export{SecondaryButton}from"./components/Buttons/SecondaryButton.mjs";export{RagDot}from"./components/RagDot.mjs";export{RagChip}from"./components/RagChip.mjs";export{SecondaryButtonLink}from"./components/Buttons/SecondaryButtonLink.mjs";export{SearchInput}from"./components/SearchInput.mjs";export{SideBlade}from"./components/SideBlade/SideBlade.mjs";export{SideBladeNavList}from"./components/SideBlade/SideBladeNavList.mjs";export{SideBladeNavListItem}from"./components/SideBlade/SideBladeNavListItem.mjs";export{Skeleton}from"./components/_Primitives/Skeleton.mjs";export{SkillChip}from"./components/SkillChip.mjs";export{Stack}from"./components/_Primitives/Stack.mjs";export{StatusChip}from"./components/StatusChip.mjs";export{Tab}from"./components/_Primitives/Tab.mjs";export{Tabs}from"./components/_Primitives/Tabs.mjs";export{TextField}from"./components/_Primitives/TextField.mjs";export{ThemeToggle}from"./components/ThemeToggle.mjs";export{Tooltip}from"./components/Tooltip.mjs";export{NexusLineChart}from"./components/Charts/NexusLineChart.mjs";export{NexusBarChart}from"./components/Charts/NexusBarChart.mjs";export{NexusPieChart}from"./components/Charts/NexusPieChart.mjs";export{default as nexusLogoNode}from"./assets/images/nexus-logo-node.svg.mjs";export{default as nexusLogoFavicon}from"./assets/images/nexus-logo-favicon.svg.mjs";export{default as nexusLogoIco}from"./assets/images/favicon.ico.mjs";export{getFaviconUrls}from"./assets/images/urls.mjs";export{FaviconLinks}from"./components/FaviconLinks.mjs";export{createSageTheme}from"./theme/sageTheme.mjs";export{colours,fontSageHeadline,fontSageText,fontSageUI,getModeTokens,gradients}from"./theme/tokens.mjs";export{useTokens}from"./theme/useTokens.mjs";export{default as MuiAppThemeProvider}from"./theme/MuiAppThemeProvider.mjs";export{ThemeModeContext,ThemeModeProvider,useThemeMode}from"./theme/ThemeContext.mjs";export{AlertTitle,MenuItem,alpha,useMediaQuery,useTheme}from"@mui/material";export{formatSurnameFirstname}from"./utils/nameFormats.mjs";export{formatDate,getFiscalPeriod}from"./utils/dateFormats.mjs";export{expandableText,getGradientBorderStyles,leftPipe}from"./theme/sxHelpers.mjs";
|