UNPKG

@lanaco/lnc-react-ui

Version:

React component library

162 lines (151 loc) 4.17 kB
import { jsxs as l, jsx as i } from "react/jsx-runtime"; import { forwardRef as g } from "react"; import { C as m } from "./index-BppfjY8h.js"; import f from "./Button.js"; import { u as _ } from "./useDetectMobile-B0Jog4jQ.js"; import { s as c } from "./breakpoints-BubDitvo.js"; import { S as b } from "./style-CP_urKvc.js"; import { s as u } from "./emotion-styled.browser.esm-DfbrHHed.js"; const v = u.div` display: flex; flex-direction: column; gap: 1.5rem; & .section__slider { position: relative; } & .slider__gradient { position: absolute; width: 7.5rem; height: 100%; pointer-events: none; z-index: 1; opacity: 0.4; top: 0; &.left { left: 0; background: linear-gradient(to left, transparent, white); } &.right { right: 0; background: linear-gradient(to right, transparent, white); } } .slider__container { width: 100%; } .slider__item { padding-right: 1rem; } & .section__item { width: 100%; height: 100%; max-height: 3.75rem; border-radius: 0.5rem; border: 1px solid var(--gray-200, #e4e9f0); overflow: hidden; & img { object-fit: cover; width: 100%; height: 100%; filter: grayscale(100%); transition: filter 0.3s ease; &:hover { filter: grayscale(0%); } } &:hover { cursor: pointer; } } `, z = g( ({ title: n, buttonText: o, buttonLink: d, items: e, onSelectCard: p = () => { }, onButtonAction: s = () => { } }, y) => { const h = _() ? 2 : 7, a = (e == null ? void 0 : e.length) > h; return /* @__PURE__ */ l(v, { className: "lp-section lp-partner-brands-section", children: [ /* @__PURE__ */ l(b, { children: [ n && /* @__PURE__ */ i("div", { className: "heading__title", children: n }), o && d && /* @__PURE__ */ i( f, { text: o, borderRadius: "curved", btnType: "tinted", className: "heading__action", color: "neutral", onClick: (r) => { var t; (t = r == null ? void 0 : r.target) == null || t.blur(), s == null || s(d); } } ) ] }), e && (e == null ? void 0 : e.length) > 0 && /* @__PURE__ */ l("div", { className: "section__slider", children: [ a && /* @__PURE__ */ i("div", { className: "slider__gradient left" }), /* @__PURE__ */ i( m, { responsive: { desktop: { breakpoint: { max: 9999, min: c.M.min }, items: 7, slidesToSlide: 1, partialVisibilityGutter: 10 }, mobile: { breakpoint: { max: c.S.max, min: 0 }, items: 2, slidesToSlide: 1, partialVisibilityGutter: 20 } }, draggable: !1, swipeable: !1, arrows: !1, infinite: a, autoPlay: a, autoPlaySpeed: 2e3, partialVisible: a, customTransition: "transform 500ms linear", transitionDuration: 500, containerClass: "slider__container", itemClass: "slider__item", children: e == null ? void 0 : e.map((r, t) => /* @__PURE__ */ i( "div", { className: "section__item", onClick: () => p(r), children: /* @__PURE__ */ i( "img", { src: r == null ? void 0 : r.imageUrl, alt: `Partner brand image ${t + 1}`, loading: "lazy" } ) }, `partner-brands-section-item__${t + 1}` )) } ), a && /* @__PURE__ */ i("div", { className: "slider__gradient right" }) ] }) ] }); } ); export { z as default };