UNPKG

@useloops/design-system

Version:

The official React based Loops design system

2 lines (1 loc) 7.31 kB
"use strict";var e=require("react/jsx-runtime"),r=require("@mui/material"),t=require("merge-sx"),o=require("react"),i=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/Accordion/Accordion.js");var a=require("../../WebCore/Typography/Typography.js");require("../../WebCore/Badge/Badge.js"),require("../../WebCore/Breadcrumb/Breadcrumb.js"),require("../../WebCore/Button/Button.js"),require("../../WebCore/ButtonBase/ButtonBase.js"),require("../../WebCore/Checkbox/StyledCheckbox.js"),require("../../WebCore/InputFieldBase/InputFieldBase.js"),require("../../WebCore/CreatableAutocomplete/CreatableAutocomplete.js"),require("@mui/icons-material"),require("../../WebCore/InputLabelBase/StyledInputLabelBase.js"),require("../../WebCore/Differential/DifferentialContainer.js"),require("../../WebCore/Differential/DifferentialRadio.js"),require("../../WebCore/DropdownMenu/StyledMenu.js");var s=require("../../WebCore/ExpandableTypographyClamp/ExpandableTypographyClamp.js");require("../../WebCore/FormGenerator/FormGenerator.js"),require("../../WebCore/GridOverlay/GridOverlay.js"),require("html-react-parser");var n=require("../../WebCore/IconButton/IconButton.js");require("../../WebCore/IconButtonBase/IconButtonBase.js"),require("../../WebCore/IconButtonGroup/IconButtonGroup.js"),require("../../WebCore/Image/Image.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 l=require("../../WebCore/LoopsAiButton/LoopsAiButton.js");require("markdown-to-jsx");var u=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 d=require("../../WebCore/Progress/Progress.js");require("../../WebCore/Pill/StyledPill.js"),require("../../WebCore/ProgressBar/ProgressBar.js"),require("../../WebCore/Radio/StyledRadio.js"),require("../../WebCore/utils/autocomplete.styles.js"),require("../../WebCore/Select/AutocompleteListbox.js"),require("../../WebCore/Select/StyledAutocomplete.js"),require("../../WebCore/Select/SelectItem.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 p=o.forwardRef(({heading:p,body:b,bodyLineClamp:m=6,attribution:j,menuItems:C,onStartChatClick:g,onRetryClick:x,loading:q,loadingMessage:W="",error:h,slotProps:S,sx:k},y)=>{const B=r.useTheme(),f=`gradient-${o.useId()}`,[I,v]=o.useState(m);return o.useEffect(()=>{v(m)},[m]),e.jsx(r.Box,{ref:y,sx:t.mergeSx({boxShadow:B.custom.elevation.aiSummary,borderRadius:"8px",background:`linear-gradient(-18deg, ${B.custom.palette.purple[600]} 0%, ${B.custom.palette.blue[400]} 100%)`,padding:"1px"},k),children:e.jsxs(r.Stack,{sx:{padding:B.spacing(B.custom.padding.md),gap:B.spacing(B.custom.padding.sm),borderRadius:"7px",background:`linear-gradient(-25deg, ${B.custom.palette.purple[0]} 0%, ${B.custom.palette.blue[0]} 100%)`},children:[(p?.length||C?.length)&&e.jsx(r.Stack,{direction:"row",alignItems:"flex-start",justifyContent:"space-between",gap:B.spacing(B.custom.padding.md),children:q?W?.length?e.jsxs(r.Stack,{direction:"row",alignItems:"center",gap:1,children:[e.jsx(d,{sizing:"sm",sx:{position:"static",color:B.custom.palette.neutral[400]}}),e.jsxs(r.Stack,{direction:"row",alignItems:"center",gap:1,sx:{alignItems:"center"},children:[e.jsx(a,{component:"p",variation:"sm",className:h?"ellipsis-loading":void 0,children:W}),h&&void 0!==x&&e.jsx(a,{component:"p",variation:"sm",onClick:x,children:"Refresh",...S?.retry,sx:t.mergeSx({textDecoration:"underline",cursor:"pointer"},S?.retry?.sx)})]})]}):e.jsx(c,{...S?.skeleton}):e.jsxs(e.Fragment,{children:[e.jsx(a,{component:"p",variation:"sm",fontWeight:500,color:B.custom.palette.text.primary,...S?.heading,children:p}),C?.length&&e.jsx(u.default,{trigger:e.jsx(n,{icon:e.jsx(i.default,{name:"more-horizontal",color:B.custom.palette.icon.primary}),sizing:"sm"}),placement:"bottom-end",offset:[0,8],width:165,menuItems:C,...S?.menu})]})}),q&&e.jsxs(e.Fragment,{children:[e.jsx(c,{...S?.skeleton}),e.jsx(c,{...S?.skeleton}),e.jsx(c,{...S?.skeleton}),e.jsx(c,{...S?.skeleton}),e.jsx(c,{...S?.skeleton}),e.jsx(c,{...S?.skeleton})]}),!q&&b?.length&&e.jsx(s,{variation:"sm",color:B.custom.palette.text.primary,clamp:I,slotProps:{gradientBox:{background:B.custom.palette.purple[0]}},onShowMoreClick:()=>{v(void 0)},onShowLessClick:()=>{v(m)},...S?.expandableTypographyClamp,children:b}),(j?.length||void 0!==g)&&e.jsxs(r.Stack,{direction:"row",alignItems:"center",justifyContent:"space-between",pt:B.spacing(B.custom.padding.xs),gap:B.spacing(B.custom.padding.md),children:[j?.length&&e.jsxs(r.Stack,{direction:"row",alignItems:"center",gap:B.spacing(B.custom.padding.xs),children:[e.jsx("svg",{style:{width:0,height:0,position:"absolute"},children:e.jsx("defs",{children:e.jsxs("linearGradient",{id:f,gradientTransform:"rotate(-18)",children:[e.jsx("stop",{offset:"0%",stopColor:B.custom.palette.purple[600]}),e.jsx("stop",{offset:"100%",stopColor:B.custom.palette.blue[400]})]})})}),e.jsx(i.default,{name:"ai",size:20,...S?.attributionIcon,sx:t.mergeSx({"& *":{fill:`url(#${f})`}},S?.attributionIcon?.sx)}),e.jsx(a,{component:"p",variation:"xs",fontWeight:500,...S?.attribution,sx:t.mergeSx({background:`linear-gradient(-18deg, ${B.custom.palette.purple[600]} 0%, ${B.custom.palette.blue[400]} 100%)`,backgroundClip:"text","-webkit-background-clip":"text","-webkit-text-fill-color":"transparent"},S?.attribution?.sx),children:j})]}),void 0!==g&&e.jsx(l,{text:"Start Chat",onClick:g,loading:q,disabled:q,slotProps:{button:{sx:{...S?.startChatButton?.sx}}}})]})]})})});module.exports=p;