@useloops/design-system
Version:
The official React based Loops design system
2 lines (1 loc) • 7.78 kB
JavaScript
"use strict";var e=require("react/jsx-runtime"),r=require("@mui/material"),t=require("merge-sx"),o=require("react"),i=require("../../BrandCore/gradients.js"),a=require("../../BrandCore/Icon/Icon.js");require("../../../utils/formValidation/misc.js"),require("../../BrandCore/primitiveVariables.js"),require("../../WebCore/utils/typography.util.js"),require("../../WebCore/AnnualController/AnnualController.js"),require("../../WebCore/SelectItem/SelectItem.js"),require("../../WebCore/Accordion/Accordion.js"),require("../../WebCore/Animations/FadeIn.js");var s=require("../../WebCore/Typography/Typography.js");require("@mui/icons-material"),require("../../WebCore/AutocompleteBaseField/_partials/AutocompleteListbox.js"),require("../../WebCore/AutocompleteBaseField/_partials/StyledPopper.js"),require("../../WebCore/AutocompleteBaseField/_partials/StyledAutocompleteField.js"),require("../../WebCore/AutocompleteBaseField/_partials/AutocompleteChip.js"),require("../../WebCore/AutocompleteBaseField/_partials/StyledAutocompleteInput.js"),require("../../WebCore/Badge/Badge.js"),require("../../WebCore/Breadcrumb/Breadcrumb.js"),require("../../WebCore/Button/Button.js"),require("../../WebCore/ButtonBase/ButtonBase.js"),require("../../WebCore/ButtonTabGroup/_partials/ActiveIndicator.js"),require("../../WebCore/ButtonTabGroup/_partials/ButtonTabsWrapper.js"),require("../../WebCore/ButtonTabGroup/_partials/TabButton.js"),require("../../WebCore/Checkbox/StyledCheckbox.js"),require("../../WebCore/InputFieldBase/InputFieldBase.js"),require("../../WebCore/CreatableAutocomplete/CreatableAutocomplete.js"),require("../../WebCore/InputLabelBase/StyledInputLabelBase.js"),require("../../WebCore/Differential/DifferentialContainer.js"),require("../../WebCore/Differential/DifferentialRadio.js"),require("../../WebCore/DropdownMenu/StyledMenu.js");var n=require("../../WebCore/ExpandableTypographyClamp/ExpandableTypographyClamp.js");require("../../WebCore/FormGenerator/FormGenerator.js"),require("../../WebCore/GridOverlay/GridOverlay.js"),require("html-react-parser");var l=require("../../WebCore/IconButton/IconButton.js");require("../../WebCore/IconButtonBase/IconButtonBase.js"),require("../../WebCore/IconButtonGroup/IconButtonGroup.js"),require("../../WebCore/Image/Image.js"),require("../../WebCore/KbdGroup/Kbd.js"),require("../../WebCore/KbdGroup/KbdGroup.js"),require("../../WebCore/KeyValueLabel/KeyValueLabel.js"),require("../../WebCore/Label/Label.js"),require("../../WebCore/Likert/LikertContainer.js"),require("../../WebCore/Likert/LikertLabel.js"),require("../../WebCore/Likert/LikertRadio.js"),require("../../WebCore/Link/StyledLink.js"),require("@lottiefiles/dotlottie-react");var u=require("../../WebCore/LoopsAiButton/LoopsAiButton.js");require("markdown-to-jsx");var d=require("../../WebCore/Menu/Menu.js");require("../../WebCore/ModalLayout/_partials/ModalActionsWrapper.js"),require("../../WebCore/ModalLayout/_partials/ModalContentWrapper.js"),require("../../WebCore/Surface/Surface.js"),require("../../WebCore/NavigationButton/NavigationButton.js"),require("material-ui-popup-state/hooks"),require("../../WebCore/Nudge/NudgeButton.js"),require("../../WebCore/NumberField/NumberField.js"),require("../../BrandCore/colorRamps.js"),require("../../BrandCore/semanticColor.js"),require("../../BrandCore/types.js"),require("../../BrandCore/typography.js");var p=require("../../WebCore/Progress/Progress.js");require("../../WebCore/Pill/StyledPill.js"),require("../../WebCore/ProgressBar/ProgressBar.js"),require("../../WebCore/Radio/StyledRadio.js"),require("../../WebCore/Select/StyledSelect.js"),require("../../WebCore/RankItem/RankItemContainer.js"),require("../../WebCore/RankItem/RankItemLabel.js"),require("../../WebCore/SortableList/SortableList.js"),require("../../WebCore/SortableList/components/SortableItem/SortableItem.js"),require("../../WebCore/SortableList/components/SortableOverlay/SortableOverlay.js"),require("@tiptap/extension-placeholder"),require("@tiptap/starter-kit"),require("mui-tiptap"),require("../../WebCore/RichTextField/StyledRichTextEditor.js");var c=require("../../WebCore/Skeleton/Skeleton.js");require("../../WebCore/Slider/StyledSlider.js"),require("../../WebCore/StarRating/StarRating.js"),require("../../WebCore/Switch/StyledSwitch.js"),require("../../WebCore/Textarea/Textarea.js"),require("../../WebCore/TrialCard/TrialCardContainers.js"),require("../../WebCore/TrialCard/TrialPill.js"),require("../../WebCore/UserMenu/UserMenuButton.js"),require("../../WebCore/VideoModal/VideoModal.js");const b=o.forwardRef(({heading:b,body:j,bodyLineClamp:m=6,attribution:C,menuItems:q,onStartChatClick:g,onRetryClick:x,loading:W,loadingMessage:h="",error:S,slotProps:B,sx:y},k)=>{const f=r.useTheme(),I=`gradient-${o.useId()}`,[v,L]=o.useState(m);return o.useEffect(()=>{L(m)},[m]),e.jsx(r.Box,{ref:k,sx:t.mergeSx({boxShadow:f.custom.elevation.aiSummary,borderRadius:"8px",background:i.tone3(f),padding:"1px"},y),children:e.jsxs(r.Stack,{sx:{padding:f.spacing(f.custom.padding.md),gap:f.spacing(f.custom.padding.sm),borderRadius:"7px",background:i.tone5(f)},children:[(b?.length||q?.length)&&e.jsx(r.Stack,{direction:"row",alignItems:"flex-start",justifyContent:"space-between",gap:f.spacing(f.custom.padding.md),children:W?h?.length?e.jsxs(r.Stack,{direction:"row",alignItems:"center",gap:1,children:[e.jsx(p,{sizing:"sm",sx:{position:"static",color:f.custom.palette.neutral[400]}}),e.jsxs(r.Stack,{direction:"row",alignItems:"center",gap:1,sx:{alignItems:"center"},children:[e.jsx(s,{component:"p",variation:"sm",className:S?"ellipsis-loading":void 0,children:h}),S&&void 0!==x&&e.jsx(s,{component:"p",variation:"sm",onClick:x,children:"Refresh",...B?.retry,sx:t.mergeSx({textDecoration:"underline",cursor:"pointer"},B?.retry?.sx)})]})]}):e.jsx(c,{...B?.skeleton}):e.jsxs(e.Fragment,{children:[e.jsx(s,{component:"p",variation:"sm",fontWeight:500,color:f.custom.palette.text.primary,...B?.heading,children:b}),q?.length&&e.jsx(d.default,{trigger:e.jsx(l,{icon:e.jsx(a.default,{name:"more-horizontal",color:f.custom.palette.icon.primary}),sizing:"sm"}),placement:"bottom-end",offset:[0,8],width:165,menuItems:q,...B?.menu})]})}),W&&e.jsxs(e.Fragment,{children:[e.jsx(c,{...B?.skeleton}),e.jsx(c,{...B?.skeleton}),e.jsx(c,{...B?.skeleton}),e.jsx(c,{...B?.skeleton}),e.jsx(c,{...B?.skeleton}),e.jsx(c,{...B?.skeleton})]}),!W&&j?.length&&e.jsx(n,{variation:"sm",color:f.custom.palette.text.primary,clamp:v,slotProps:{gradientBox:{background:f.custom.palette.purple[0]}},onShowMoreClick:()=>{L(void 0)},onShowLessClick:()=>{L(m)},...B?.expandableTypographyClamp,backgroundColorOverride:f.custom.palette.purple[0],children:j}),(C?.length||void 0!==g)&&e.jsxs(r.Stack,{direction:"row",alignItems:"center",justifyContent:"space-between",pt:f.spacing(f.custom.padding.xs),gap:f.spacing(f.custom.padding.md),children:[C?.length&&e.jsxs(r.Stack,{direction:"row",alignItems:"center",gap:f.spacing(f.custom.padding.xs),children:[e.jsx("svg",{style:{width:0,height:0,position:"absolute"},children:e.jsx("defs",{children:e.jsxs("linearGradient",{id:I,gradientTransform:"rotate(-18)",children:[e.jsx("stop",{offset:"0%",stopColor:f.custom.palette.purple[600]}),e.jsx("stop",{offset:"100%",stopColor:f.custom.palette.blue[400]})]})})}),e.jsx(a.default,{name:"ai",size:20,...B?.attributionIcon,sx:t.mergeSx({"& *":{fill:`url(#${I})`}},B?.attributionIcon?.sx)}),e.jsx(s,{component:"p",variation:"xs",fontWeight:500,...B?.attribution,sx:t.mergeSx({background:i.tone3(f),backgroundClip:"text","-webkit-background-clip":"text","-webkit-text-fill-color":"transparent"},B?.attribution?.sx),children:C})]}),void 0!==g&&e.jsx(u,{text:"Start Chat",onClick:g,loading:W,disabled:W,slotProps:{button:{sx:{...B?.startChatButton?.sx}}}})]})]})})});module.exports=b;