@useloops/design-system
Version:
The official React based Loops design system
2 lines (1 loc) • 5.79 kB
JavaScript
import{jsxs as e,jsx as t}from"react/jsx-runtime";import{useTheme as o,Box as r,Stack as i}from"@mui/material";import{pluralise as a}from"../../../utils/pluralise.js";import"../../../utils/formValidation/misc.js";import"../../BrandCore/Icon/Icon.js";import"../../BrandCore/primitiveVariables.js";import"../../WebCore/utils/typography.util.js";import"../../WebCore/AnnualController/AnnualController.js";import"../../WebCore/Accordion/Accordion.js";import"../../WebCore/Typography/Typography.js";import"merge-sx";import"../../WebCore/Badge/Badge.js";import"../../WebCore/Breadcrumb/Breadcrumb.js";import"../../WebCore/Button/Button.js";import"../../WebCore/ButtonBase/ButtonBase.js";import"../../WebCore/Checkbox/StyledCheckbox.js";import"../../WebCore/InputFieldBase/InputFieldBase.js";import"../../WebCore/CreatableAutocomplete/CreatableAutocomplete.js";import"@mui/icons-material";import"../../WebCore/InputLabelBase/StyledInputLabelBase.js";import"../../WebCore/Differential/DifferentialContainer.js";import"../../WebCore/Differential/DifferentialRadio.js";import"../../WebCore/DropdownMenu/StyledMenu.js";import"react";import"../../WebCore/ExpandableTypographyClamp/ExpandableTypographyClamp.js";import"../../WebCore/FormGenerator/FormGenerator.js";import"../../WebCore/GridOverlay/GridOverlay.js";import"html-react-parser";import"../../WebCore/IconButton/IconButton.js";import"../../WebCore/IconButtonBase/IconButtonBase.js";import"../../WebCore/IconButtonGroup/IconButtonGroup.js";import s from"../../WebCore/Image/Image.js";import"../../WebCore/Label/Label.js";import"../../WebCore/Likert/LikertContainer.js";import"../../WebCore/Likert/LikertLabel.js";import"../../WebCore/Likert/LikertRadio.js";import"../../WebCore/Link/StyledLink.js";import"@lottiefiles/dotlottie-react";import"../../WebCore/LoopsAiButton/LoopsAiButton.js";import"markdown-to-jsx";import"material-ui-popup-state/hooks";import p from"../../WebCore/Surface/Surface.js";import"../../WebCore/Menu/MenuItem.js";import"../../WebCore/ModalLayout/_partials/ModalActionsWrapper.js";import"../../WebCore/ModalLayout/_partials/ModalContentWrapper.js";import"../../WebCore/NavigationButton/NavigationButton.js";import"../../WebCore/Nudge/NudgeButton.js";import"../../WebCore/NumberField/NumberField.js";import"../../BrandCore/colorRamps.js";import"../../BrandCore/semanticColor.js";import"../../BrandCore/types.js";import"../../BrandCore/typography.js";import"../../WebCore/Progress/Progress.js";import"../../WebCore/Pill/StyledPill.js";import"../../WebCore/ProgressBar/ProgressBar.js";import"../../WebCore/Radio/StyledRadio.js";import"../../WebCore/utils/autocomplete.styles.js";import"../../WebCore/Select/AutocompleteListbox.js";import"../../WebCore/Select/StyledAutocomplete.js";import"../../WebCore/Select/SelectItem.js";import"../../WebCore/Select/StyledSelect.js";import"../../WebCore/RankItem/RankItemContainer.js";import"../../WebCore/RankItem/RankItemLabel.js";import"../../WebCore/SortableList/SortableList.js";import"../../WebCore/SortableList/components/SortableItem/SortableItem.js";import"../../WebCore/SortableList/components/SortableOverlay/SortableOverlay.js";import"@tiptap/extension-placeholder";import"@tiptap/starter-kit";import"mui-tiptap";import"../../WebCore/RichTextField/StyledRichTextEditor.js";import n from"../../WebCore/Skeleton/Skeleton.js";import"../../WebCore/Slider/StyledSlider.js";import"../../WebCore/StarRating/StarRating.js";import"../../WebCore/Switch/StyledSwitch.js";import"../../WebCore/Textarea/Textarea.js";import"../../WebCore/TrialCard/TrialCardContainers.js";import"../../WebCore/TrialCard/TrialPill.js";import"../../WebCore/UserMenu/UserMenuButton.js";import"../../WebCore/VideoModal/VideoModal.js";import{ImageContainer as m,ContentContainer as l,LoopItemTitle as d,LoopItemText as c,CtaContent as b}from"./_partials/styledPartials.js";const C={position:"relative",width:"100%",height:"100%",display:"flex","& .lazy-load-image-background":{width:"100%",height:"100%"},"& .lazy-load-image-background > img":{objectFit:"cover",width:"100%",height:"100%"}},u=({onClick:u,id:j,thumbnail:h,title:g,active:W=!1,loading:y,testCount:B,draftCount:S,cta:f})=>{const x=o();return e(p,y?{borderradius:"lg",variation:"raised",onClick:u,active:W,"data-id":j,sx:{display:"grid",justifySelf:"stretch",gridTemplateRows:f?`1fr ${x.spacing(8)} ${x.spacing(7)}`:`1fr ${x.spacing(8)}`,minWidth:128,maxWidth:176,paddingBottom:f?0:x.spacing(x.custom.padding.md),overflow:"hidden"},children:[t(m,{id:"image-holder",sx:{borderBottom:`1px solid ${x.custom.palette.stroke.light}`},children:t(s,{src:h,width:"100%",height:"100%",containerSx:C})}),t(l,{children:e(r,{display:"flex",gap:1,flexDirection:"column",width:2/3,alignSelf:"center",children:[t(n,{height:19}),e(i,{direction:"row",gap:x.spacing(x.custom.margin.sm),width:1,justifyContent:"center",children:[t(n,{height:16}),t(n,{height:16})]})]})})]}:{borderradius:"lg",variation:"raised",onClick:u,active:W,"data-id":j,interactive:!0,sx:{display:"grid",justifySelf:"stretch",gridTemplateRows:f?`1fr ${x.spacing(8)} ${x.spacing(7)}`:`1fr ${x.spacing(8)}`,minWidth:128,maxWidth:176,paddingBottom:f?0:x.spacing(x.custom.padding.md),overflow:"hidden"},children:[t(m,{id:"image-holder",sx:{borderBottom:`1px solid ${x.custom.palette.stroke.light}`},children:t(s,{src:h,width:"100%",height:"100%",containerSx:C})}),e(l,{children:[t(d,{component:"p",variation:"sm",weight:"bold",children:g}),e(i,{direction:"row",gap:x.spacing(x.custom.margin.sm),width:1,justifyContent:"center",children:[!B&&!S&&t(c,{component:"p",variation:"sm",children:"Empty"}),!!B&&t(c,{component:"p",variation:"sm",children:`${B} ${a("Test",B)}`}),!!S&&t(c,{component:"p",variation:"sm",children:`${S} ${a("Draft",S)}`})]})]}),f&&t(b,{children:f})]})};export{u as default};