it-data-nexus-ui-library 2.7.0 → 2.8.1
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/ActionBar.mjs +1 -1
- package/dist/components/AgentChat/AgentChatWindow.mjs +1 -1
- package/dist/components/AgentChat/ChatComponents/MessageList.mjs +1 -1
- package/dist/components/MetricCard.mjs +1 -1
- package/dist/components/MetricStat.mjs +1 -1
- package/dist/components/SegmentedControl.mjs +1 -1
- package/dist/components/SideBlade/SideBlade.mjs +1 -1
- package/dist/generated/version.mjs +1 -1
- package/dist/index.d.ts +18 -5
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as n,Fragment as t}from"react/jsx-runtime";import{useTheme as i,useMediaQuery as r,AppBar as l,Toolbar as o}from"@mui/material";import{Box as
|
|
1
|
+
import{jsx as e,jsxs as n,Fragment as t}from"react/jsx-runtime";import{useTheme as i,useMediaQuery as r,AppBar as l,Toolbar as o,IconButton as s}from"@mui/material";import c from"@mui/icons-material/ChevronLeft";import a from"@mui/icons-material/Menu";import{Box as d}from"./_Primitives/Box.mjs";import{Stack as m}from"./_Primitives/Stack.mjs";import{NexusHome as f}from"./Logo/NexusHome.mjs";import{ThemeToggle as x}from"./Theme/ThemeToggle.mjs";import h from"./Logo/NexusLogo.mjs";import{ActionBarTitle as p}from"./Typography.mjs";import{useRef as u,useState as g,useEffect as w}from"react";const y=({title:y,extraLeft:v,extraRight:C,homeHref:I,showHome:b=!0,logo:j,mobileNavigation:z})=>{const R=j??e(h,{}),k=i(),B=r(k.breakpoints.up("lg")),L=u(null),[E,M]=g(49),T=u(null),S=u(null),A=u(null),H=u(null),O=u(null),N=u(null),[$,D]=g(null),[P,W]=g(null);return w(()=>{const e=L.current;if(!e)return;const n=()=>M(e.getBoundingClientRect().height);n();const t=window.ResizeObserver;if(!t)return;const i=new t(n);return i.observe(e),()=>i.disconnect()},[]),w(()=>{if(!B)return D(null),void W(null);function e(){const e=S.current,n=A.current,t=T.current,i=H.current,r=O.current,l=N.current;if(!e||!n||!t)return;const o=e.getBoundingClientRect(),s=n.getBoundingClientRect(),c=t.getBoundingClientRect();if(i){const e=i.getBoundingClientRect().width||0,n=(o.right+s.left)/2,t=o.right+e/2+8,r=s.left-e/2-8,l=Math.min(Math.max(n,t),r);D(l-c.left)}else D(null);if(r&&l){const e=r.getBoundingClientRect().width||0,n=l.getBoundingClientRect(),t=(s.right+n.left)/2,i=s.right+e/2+8,o=n.left-e/2-8,a=Math.min(Math.max(t,i),o);W(a-c.left)}else W(null)}e(),window.addEventListener("resize",e);let n=null;const t=window.ResizeObserver;return t&&(n=new t(e),T.current&&n.observe(T.current)),()=>{window.removeEventListener("resize",e),n&&n.disconnect()}},[B,v,C]),n(t,{children:[e(l,{position:"sticky",component:"header",color:"inherit",elevation:0,ref:L,sx:{zIndex:{xs:k.zIndex.appBar,sm:k.zIndex.drawer+1},[k.breakpoints.up("sm")]:{position:"fixed"}},children:n(o,{variant:"dense",sx:{display:"flex",flexDirection:"column",alignItems:"stretch",justifyContent:{lg:"center"},py:{xs:.5,lg:0}},children:[n(m,{direction:"row",sx:{display:{xs:"grid",sm:"none"},gridTemplateColumns:"minmax(72px, 1fr) minmax(0, auto) minmax(72px, 1fr)",alignItems:"center",width:"100%",minHeight:40,"& .MuiIconButton-root":{padding:"4px"},"& svg":{fontSize:"1.1rem"}},children:[e(d,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-start"},children:z&&e(s,{ref:z.buttonRef,onClick:z.onToggle,size:"small","aria-label":z.open?"Close navigation":"Open navigation","aria-expanded":z.open,children:z.open?e(c,{fontSize:"small"}):e(a,{fontSize:"small"})})}),e(p,{noWrap:!0,sx:{minWidth:0,textAlign:"center",overflow:"hidden",textOverflow:"ellipsis"},children:y}),n(m,{direction:"row",sx:{justifyContent:"flex-end",alignItems:"center"},children:[b&&e(f,{href:I}),e(x,{})]})]}),(v||C)&&n(m,{direction:"row",sx:{display:{xs:"flex",sm:"none"},justifyContent:"center",alignItems:"center",gap:1,width:"100%",mt:1},children:[v,C]}),n(m,{sx:{display:{xs:"none",sm:"flex",lg:"none"},width:"100%"},spacing:.5,children:[n(m,{direction:"row",sx:{alignItems:"center",width:"100%"},children:[e(d,{sx:{flex:1,display:"flex",alignItems:"center"},children:e(d,{sx:{height:"38px",pt:.5},children:R})}),e(p,{children:y}),n(m,{direction:"row",sx:{flex:1,justifyContent:"flex-end",alignItems:"center",gap:1},children:[b&&e(f,{href:I}),e(x,{})]})]}),(v||C)&&n(m,{direction:"row",sx:{justifyContent:"center",alignItems:"center",gap:2,pb:.5},children:[v&&e(d,{children:v}),C&&e(d,{children:C})]})]}),e(d,{sx:{display:{xs:"none",lg:"block"},width:"100%"},children:n(d,{sx:{display:"flex",flexDirection:"row",alignItems:"center",width:"100%",position:"relative"},ref:T,children:[e(d,{sx:{display:"flex",alignItems:"center",flex:1,justifyContent:"flex-start"},children:e(d,{sx:{height:"38px",pt:.5},ref:S,children:R})}),e(d,{sx:{display:"flex",justifyContent:"center",alignItems:"center",position:"absolute",left:0,right:0,pointerEvents:"none"},children:e(d,{sx:{pointerEvents:"auto",textAlign:"center"},children:e(d,{ref:A,children:e(p,{children:y})})})}),e(d,{sx:{display:v?"block":"none",position:"absolute",left:null!=$?`${$}px`:void 0,transform:"translateX(-50%)",pointerEvents:"auto",textAlign:"center"},children:e(d,{ref:H,children:v})}),e(d,{sx:{display:C?"block":"none",position:"absolute",left:null!=P?`${P}px`:void 0,transform:"translateX(-50%)",pointerEvents:"auto",textAlign:"center"},children:e(d,{ref:O,children:C})}),e(d,{sx:{display:"flex",alignItems:"center",flex:1,justifyContent:"flex-end"},children:n(d,{sx:{flex:"0 0 auto",display:"flex",alignItems:"center",gap:1},ref:N,children:[b&&e(f,{href:I}),e(x,{})]})})]})})]})}),e(d,{sx:{display:{xs:"none",sm:"block"},height:`${E}px`,flexShrink:0}})]})};export{y as ActionBar};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as r,jsxs as t,Fragment as e}from"react/jsx-runtime";import{useState as i,useRef as n,useEffect as o}from"react";import{Box as s}from"../_Primitives/Box.mjs";import{Stack as a}from"../_Primitives/Stack.mjs";import{Caption as l}from"../Typography.mjs";import{Paper as m}from"../_Primitives/Paper.mjs";import{ChatInput as c}from"./ChatInput.mjs";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 u from"./ChatComponents/SuggestedPrompts.mjs";import{AgentChatWindowHeader as p}from"./AgentChatWindowHeader.mjs";const d=({title:d="Nexus AI Chat",subtitle:h="Your intelligent assistant",showAiChip:f=!0,headerActions:x,body:C,followUpLabel:g="Suggested follow-ups:",followUpPrompts:b,onSelectFollowUp:y,onSend:w,inputDisabled:S=!1,inputPlaceholder:A="Ask me anything...",isStreaming:j=!1,onStop:k,inputActions:D,inputRef:v,inputLabel:T="Message",isEmpty:M=!1,inputSx:P,sx:I})=>{const[R,E]=i(!1),L=n(0),U=n(0),Y=n(0),H=n(null),W=Boolean(b&&b.length>0&&y);o(()=>{M&&(E(!1),L.current=0,U.current=0)},[M]);const _=r(c,{onSend:w,disabled:S,placeholder:A,isStreaming:j,onStop:k,actions:D,inputRef:v,label:T});return t(s,{sx:[{display:"flex",flex:1,flexDirection:"column",minWidth:0,minHeight:0,height:"100%"},...Array.isArray(I)?I:I?[I]:[]],onWheelCapture:()=>{Y.current=Date.now()},onTouchStartCapture:r=>{H.current=r.touches[0]?.clientY??null},onTouchMoveCapture:r=>{const t=r.touches[0]?.clientY;void 0!==t&&null!==H.current&&Math.abs(t-H.current)>1&&(Y.current=Date.now(),H.current=t)},onScrollCapture:r=>{const t=r.target;if(!(t instanceof HTMLElement))return;if("true"!==t.dataset.agentChatScrollContainer)return;const e=t.scrollTop,i=e-L.current;if(L.current=e,e<=0)return U.current=0,void E(!1);Date.now()-Y.current>250?U.current=0:(Math.sign(i)!==Math.sign(U.current)?U.current=i:U.current+=i,U.current>=12?(E(!0),U.current=0):U.current<=-12&&(E(!1),U.current=0))},children:[r(s,{sx:{display:{xs:R?"none":"block",sm:"block"},flexShrink:0},children:r(p,{title:d,subtitle:h,showAiChip:f,actions:x})}),M?t(m,{sx:{borderRadius:0,border:"none",flex:1,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",px:2,pb:4},children:[C,r(s,{sx:[{mt:3,width:"100%"},...Array.isArray(P)?P:P?[P]:[]],children:_})]}):t(e,{children:[r(m,{"data-agent-chat-scroll-container":"true",sx:{borderRadius:0,border:"none",flex:1,display:"flex",flexDirection:"column",overflowY:"scroll"},children:C}),W&&t(a,{direction:{xs:"column",md:"row"},spacing:1,sx:{px:2,py:1,justifyContent:{xs:"center",sm:"flex-end"},alignItems:"center"},children:[r(l,{sx:{display:"block",mb:1},children:g}),r(u,{prompts:b??[],onSelect:y})]}),r(m,{sx:{borderRadius:0,border:"none"},children:r(s,{sx:[{p:2,flexShrink:0},...Array.isArray(P)?P:P?[P]:[]],children:_})})]})]})};export{d as AgentChatWindow};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as t,jsx as e}from"react/jsx-runtime";import{useRef as r,useEffect as o}from"react";import{Box as n}from"../../_Primitives/Box.mjs";import
|
|
1
|
+
import{jsxs as t,jsx as e}from"react/jsx-runtime";import{useRef as r,useEffect as o}from"react";import{Box as n}from"../../_Primitives/Box.mjs";import c from"./MessageBubble.mjs";import i 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:d=!1,markdownComponents:b,onFeedback:x})=>{const y=r(null),v=r(null),T=r(!1),j=r(m.length),w=r(!1),A=()=>{const t=v.current;t&&(w.current=!0,t.scrollTop=t.scrollHeight,requestAnimationFrame(()=>{w.current=!1}))};o(()=>{const t=m[m.length-1];m.length>j.current&&"user"===t?.role&&(T.current=!1,A()),j.current=m.length},[m]),o(()=>{T.current||A()},[a,u]);const k=(u||"").trim().length>0,H=a&&(k||f),B=a&&!H;return t(n,{ref:v,"data-agent-chat-scroll-container":"true",onScroll:()=>{w.current||(T.current=!(()=>{const t=v.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=>e(c,{message:t,highlightQuery:h,showActivity:f,compact:d,markdownComponents:b,onFeedback:x},t.id)),H&&e(i,{text:u||"",traceEvents:g||[],highlightQuery:h,onAbort:p,showActivity:f,compact:d}),B&&e(l,{traceLabel:g&&g.length>0?s(g):void 0}),e(n,{ref:y})]})};export{m as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as o}from"react/jsx-runtime";import{Card as r,CardContent as l}from"@mui/material";import{MetricStat as e}from"./MetricStat.mjs";const a={xs:0,sm:.3,md:.5,lg:1},i=({label:i,value:t,delta:s,deltaColor:m,valueColor:c,size:d,icon:n,iconColor:x,cardSx:p,sx:u})=>{const C=a[d??"md"];return o(r,{sx:[{boxShadow:"none"},...Array.isArray(p)?p:p?[p]:[]],children:o(l,{sx:{p:C,"&:last-child":{pb:C}},children:o(e,{label:i,value:t,delta:s,deltaColor:m,valueColor:c,size:d,icon:n,iconColor:x,sx:u})})})};i.displayName="MetricCard";export{i as MetricCard};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as r,jsx as o}from"react/jsx-runtime";import{Stack as e}from"./_Primitives/Stack.mjs";import{H4 as i,MetricValue as
|
|
1
|
+
import{jsxs as r,jsx as o}from"react/jsx-runtime";import{Stack as e}from"./_Primitives/Stack.mjs";import{H4 as i,MetricValue as l,Caption as t}from"./Typography.mjs";const a=({label:a,value:s,delta:n,deltaColor:c,valueColor:d,size:m,icon:x,iconColor:p,sx:h})=>r(e,{sx:[{gap:.25},...Array.isArray(h)?h:h?[h]:[]],children:[o(i,{sx:{color:"text.secondary"},children:a}),r(e,{direction:"row",sx:{alignItems:"center",gap:1},children:[x&&o(x,{"aria-hidden":"true",sx:{color:p,fontSize:"lg"===m?40:"sm"===m?28:"xs"===m?22:34}}),o(l,{size:m,sx:d?{color:d}:void 0,children:s}),n&&o(t,{component:"span",sx:[{alignSelf:"flex-end"},...c?[{color:c}]:[]],children:n})]})]});a.displayName="MetricStat";export{a as MetricStat};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e}from"react/jsx-runtime";import{ToggleButtonGroup as r,ToggleButton as o}from"@mui/material";const t={small:{height:32,px:"14px",fontSize:"0.8125rem"},medium:{height:40,px:"20px",fontSize:"0.9375rem"},large:{height:48,px:"28px",fontSize:"1rem"}};function a({options:a,value:i,onChange:l,ariaLabel:n,size:p="medium",sx:d,...
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{ToggleButtonGroup as r,ToggleButton as o}from"@mui/material";const t={small:{height:32,px:"14px",fontSize:"0.8125rem"},medium:{height:40,px:"20px",fontSize:"0.9375rem"},large:{height:48,px:"28px",fontSize:"1rem"}};function a({options:a,value:i,onChange:l,ariaLabel:n,size:p="medium",sx:d,...x}){const{height:s,px:g,fontSize:b}=t[p];return e(r,{exclusive:!0,value:i,onChange:(e,r)=>{null!==r&&l(r)},"aria-label":n,sx:[e=>({bgcolor:"dark"===e.palette.mode?"rgba(255,255,255,0.08)":"rgba(255,255,255,0.85)",borderRadius:"999px",border:"1px solid",borderColor:"divider",boxShadow:"inset 0 1px 2px rgba(10, 22, 34, 0.05)",p:"3px",gap:"4px",minHeight:s,width:"fit-content",maxWidth:"100%",boxSizing:"border-box",flexWrap:"wrap",justifyContent:"center","& .MuiToggleButton-root":{border:"none",borderRadius:"999px !important",textTransform:"none",fontWeight:600,paddingInline:g,paddingBlock:0,fontSize:b,lineHeight:1,whiteSpace:"nowrap",alignSelf:"stretch",color:e.palette.text.primary,transition:"background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease","&:not(.Mui-selected):hover":{bgcolor:e.palette.action.hover,color:e.palette.text.primary}},"&& .MuiToggleButton-root.Mui-selected":{bgcolor:e.palette.primary.main,color:e.palette.primary.contrastText,boxShadow:"0 1px 4px rgba(20, 39, 59, 0.3), inset 0 1px 0 rgba(255,255,255,0.12)","&:hover":{bgcolor:e.palette.primary.dark}}}),...Array.isArray(d)?d:d?[d]:[]],...x,children:a.map(r=>e(o,{value:r.value,disabled:r.disabled,"aria-label":r.ariaLabel,children:r.label},r.value))})}export{a as SegmentedControl};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as e,jsx as i}from"react/jsx-runtime";import{
|
|
1
|
+
import{jsxs as e,jsx as i}from"react/jsx-runtime";import{useRef as o,useEffect as r}from"react";import{useTheme as n,useMediaQuery as t,Drawer as a,Box as l,IconButton as s}from"@mui/material";import d from"@mui/icons-material/ChevronLeft";import c from"@mui/icons-material/Menu";const p="0.25s",h=({open:l,onToggle:s,mobileOpen:d,onMobileToggle:c,mobileTriggerRef:h,children:m,collapsedContent:x,expandedWidth:f=300,collapsedWidth:g=64,sx:v,headerActions:w})=>{const y=n(),C=t(y.breakpoints.down("sm")),k=o(null),$=o(!1),A=d??l,T=c??s,S=o(C&&A);r(()=>{const e=C&&S.current&&!A;if(S.current=C&&A,!e)return;const i=document.activeElement;i instanceof HTMLElement&&k.current?.contains(i)&&i.blur(),$.current=!0},[C,A]);const E=()=>{const e=document.activeElement;e instanceof HTMLElement&&k.current?.contains(e)&&e.blur(),$.current=!0,T()},R=()=>{$.current&&($.current=!1,h?.current?.focus())};return e(a,C?{ref:k,anchor:"left",variant:"temporary",open:A,onClose:E,disableRestoreFocus:!0,slotProps:{paper:{sx:[{width:f,boxSizing:"border-box",backgroundColor:"background.paper",borderRight:`1px solid ${y.palette.divider}`,overflowX:"hidden"},...Array.isArray(v)?v:v?[v]:[]]},transition:{onExited:R}},children:[i(b,{open:!0,onToggle:E,collapsedWidth:g,headerActions:w,ariaLabel:"Close navigation"}),i(u,{open:!0,children:m})]}:{anchor:"left",variant:"permanent",open:l,slotProps:{paper:{sx:[{position:"relative",width:l?f:g,flexShrink:0,whiteSpace:"nowrap",boxSizing:"border-box",overflowX:"hidden",transition:`width ${p} ease`,backgroundColor:"background.paper",borderRadius:0,borderRight:`1px solid ${y.palette.divider}`,display:"flex",flexDirection:"column"},...Array.isArray(v)?v:v?[v]:[]]}},sx:{width:l?f:g,flexShrink:0,transition:`width ${p} ease`,"& .MuiDrawer-paper":{width:l?f:g,transition:`width ${p} ease`}},children:[i(b,{open:l,onToggle:s,collapsedWidth:g,headerActions:w}),i(u,{open:l,collapsedContent:x,children:m})]})},u=({open:o,children:r,collapsedContent:n})=>e(l,{sx:{position:"relative",flex:1,overflow:"hidden"},children:[i(l,{sx:{height:"100%",overflowY:"auto",overflowX:"hidden",opacity:o?1:0,visibility:o?"visible":"hidden",transition:`opacity ${p} ease, visibility ${p} ease`},children:r}),n&&i(l,{sx:{position:"absolute",inset:0,overflowY:"auto",overflowX:"hidden",opacity:o?0:1,visibility:o?"hidden":"visible",transition:`opacity ${p} ease, visibility ${p} ease`},children:n})]}),b=({open:o,onToggle:r,collapsedWidth:n,headerActions:t,ariaLabel:a})=>{const p=i(o?d:c,{fontSize:"small"});return e(l,{sx:{display:"flex",alignItems:"center",justifyContent:o&&t?"space-between":o?"flex-end":"center",minHeight:48,px:.5,flexShrink:0},children:[o&&t&&i(l,{sx:{display:"flex",alignItems:"center"},children:t}),i(s,{onClick:r,size:"small","aria-label":a??(o?"Collapse side blade":"Expand side blade"),sx:{width:n-16,borderRadius:1,color:"text.secondary","&:hover":{color:"text.primary",backgroundColor:"action.hover"}},children:p})]})};export{h as SideBlade};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const o="2.
|
|
1
|
+
const o="2.8.1";export{o as SAGE_NEXUS_UI_VERSION};
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import * as react from 'react';
|
|
2
|
-
import react__default, { ReactNode, ReactElement, FormEventHandler, ComponentType, CSSProperties, PropsWithChildren } from 'react';
|
|
2
|
+
import react__default, { ReactNode, Ref, ReactElement, FormEventHandler, RefObject, ComponentType, CSSProperties, PropsWithChildren } from 'react';
|
|
3
3
|
import { AlertProps, BoxProps, SxProps as SxProps$1, Theme as Theme$1, TypographyProps, ContainerProps, GridProps, LinkProps as LinkProps$1, SelectProps as SelectProps$1, ToggleButtonGroupProps, SwitchProps, SliderProps, AccordionSummaryProps, ButtonProps, ChipProps, CardProps as CardProps$1, PaperProps, CircularProgressProps, CollapseProps, ButtonBaseProps, CheckboxProps, FormControlLabelProps, FormGroupProps, DialogProps, DialogActionsProps, DialogContentProps, DialogContentTextProps, DialogTitleProps, DividerProps, TableProps, TableBodyProps, TableCellProps, TableHeadProps, TableRowProps, IconButtonProps as IconButtonProps$1, SkeletonProps as SkeletonProps$1, StackProps, TabProps, TabsProps, TextFieldProps, TooltipProps as TooltipProps$1 } from '@mui/material';
|
|
4
4
|
export { AlertProps, AlertTitle, BoxProps, ButtonBaseProps, CheckboxProps, ChipProps, CircularProgressProps, CollapseProps, ContainerProps, DialogActionsProps, DialogContentProps, DialogContentTextProps, DialogProps, DialogTitleProps, DividerProps, FormControlLabelProps, FormGroupProps, GridProps, MenuItem, PaperProps, SliderProps, StackProps, SwitchProps, TabProps, TableBodyProps, TableCellProps, TableHeadProps, TableProps, TableRowProps, 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
|
+
import SvgIcon from '@mui/material/SvgIcon';
|
|
7
8
|
import { DataGridProps } from '@mui/x-data-grid';
|
|
8
9
|
export { DataGridProps, GridColDef, GridColumnVisibilityModel, GridPaginationModel, GridRenderCellParams, GridRowsProp, GridSortModel, GridValueGetter } from '@mui/x-data-grid';
|
|
9
10
|
import { SxProps as SxProps$2 } from '@mui/system';
|
|
@@ -594,6 +595,10 @@ interface MetricStatProps {
|
|
|
594
595
|
valueColor?: string;
|
|
595
596
|
/** Size passed to MetricValue. Defaults to 'md' (2rem / 32px). */
|
|
596
597
|
size?: MetricValueSize;
|
|
598
|
+
/** Optional icon rendered horizontally beside the metric value. */
|
|
599
|
+
icon?: typeof SvgIcon;
|
|
600
|
+
/** MUI theme colour token for the icon. Omit for default text colour. */
|
|
601
|
+
iconColor?: string;
|
|
597
602
|
sx?: SxProps<Theme>;
|
|
598
603
|
}
|
|
599
604
|
/**
|
|
@@ -608,7 +613,7 @@ interface MetricStatProps {
|
|
|
608
613
|
* large p — not a heading), and the delta is a Caption.
|
|
609
614
|
*/
|
|
610
615
|
declare const MetricStat: {
|
|
611
|
-
({ label, value, delta, deltaColor, valueColor, size, sx }: MetricStatProps): react.JSX.Element;
|
|
616
|
+
({ label, value, delta, deltaColor, valueColor, size, icon: Icon, iconColor, sx, }: MetricStatProps): react.JSX.Element;
|
|
612
617
|
displayName: string;
|
|
613
618
|
};
|
|
614
619
|
|
|
@@ -627,7 +632,7 @@ interface MetricCardProps extends MetricStatProps {
|
|
|
627
632
|
* ```
|
|
628
633
|
*/
|
|
629
634
|
declare const MetricCard: {
|
|
630
|
-
({ label, value, delta, deltaColor, valueColor, size, cardSx, sx, }: MetricCardProps): react.JSX.Element;
|
|
635
|
+
({ label, value, delta, deltaColor, valueColor, size, icon, iconColor, cardSx, sx, }: MetricCardProps): react.JSX.Element;
|
|
631
636
|
displayName: string;
|
|
632
637
|
};
|
|
633
638
|
|
|
@@ -638,8 +643,13 @@ interface ActionBarProps {
|
|
|
638
643
|
homeHref?: string;
|
|
639
644
|
showHome?: boolean;
|
|
640
645
|
logo?: ReactNode;
|
|
646
|
+
mobileNavigation?: {
|
|
647
|
+
open: boolean;
|
|
648
|
+
onToggle: () => void;
|
|
649
|
+
buttonRef?: Ref<HTMLButtonElement>;
|
|
650
|
+
};
|
|
641
651
|
}
|
|
642
|
-
declare const ActionBar: ({ title, extraLeft, extraRight, homeHref, showHome, logo, }: ActionBarProps) => ReactElement;
|
|
652
|
+
declare const ActionBar: ({ title, extraLeft, extraRight, homeHref, showHome, logo, mobileNavigation, }: ActionBarProps) => ReactElement;
|
|
643
653
|
|
|
644
654
|
interface AccordionGroupProps {
|
|
645
655
|
children: ReactNode;
|
|
@@ -1129,6 +1139,9 @@ declare const SearchInput: react__default.FC<SearchInputProps>;
|
|
|
1129
1139
|
interface SideBladeProps {
|
|
1130
1140
|
open: boolean;
|
|
1131
1141
|
onToggle: () => void;
|
|
1142
|
+
mobileOpen?: boolean;
|
|
1143
|
+
onMobileToggle?: () => void;
|
|
1144
|
+
mobileTriggerRef?: RefObject<HTMLButtonElement | null>;
|
|
1132
1145
|
children?: ReactNode;
|
|
1133
1146
|
collapsedContent?: ReactNode; /** Width of the blade when expanded (px). Default: 300 */
|
|
1134
1147
|
expandedWidth?: number; /** Width of the blade when collapsed (px). Default: 64 */
|
|
@@ -1142,7 +1155,7 @@ interface SideBladeProps {
|
|
|
1142
1155
|
* On mobile (< sm) it becomes a full temporary overlay drawer.
|
|
1143
1156
|
* Content is fully customisable via `children`.
|
|
1144
1157
|
*/
|
|
1145
|
-
declare const SideBlade: ({ open, onToggle, children, collapsedContent, expandedWidth, collapsedWidth, sx, headerActions, }: SideBladeProps) => react.JSX.Element;
|
|
1158
|
+
declare const SideBlade: ({ open, onToggle, mobileOpen, onMobileToggle, mobileTriggerRef, children, collapsedContent, expandedWidth, collapsedWidth, sx, headerActions, }: SideBladeProps) => react.JSX.Element;
|
|
1146
1159
|
|
|
1147
1160
|
interface SideBladeNavItem {
|
|
1148
1161
|
label: string;
|