@digital-b2c/coreui-kit 0.11.9 → 0.11.11
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/index.cjs +139 -96
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +221 -0
- package/dist/index.css.map +1 -1
- package/dist/index.d.cts +33 -9
- package/dist/index.d.ts +33 -9
- package/dist/index.mjs +85 -43
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var clsx15 = require('clsx');
|
|
4
4
|
var jsxRuntime = require('react/jsx-runtime');
|
|
5
|
-
var
|
|
5
|
+
var React65 = require('react');
|
|
6
6
|
var gsap = require('gsap');
|
|
7
7
|
var react = require('@gsap/react');
|
|
8
8
|
var ScrollTrigger = require('gsap/ScrollTrigger');
|
|
@@ -13,7 +13,7 @@ require('swiper/css');
|
|
|
13
13
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
14
|
|
|
15
15
|
var clsx15__default = /*#__PURE__*/_interopDefault(clsx15);
|
|
16
|
-
var
|
|
16
|
+
var React65__default = /*#__PURE__*/_interopDefault(React65);
|
|
17
17
|
var gsap__default = /*#__PURE__*/_interopDefault(gsap);
|
|
18
18
|
|
|
19
19
|
var __defProp = Object.defineProperty;
|
|
@@ -382,7 +382,7 @@ var svgs = {
|
|
|
382
382
|
xBlack: icon_x_black_default,
|
|
383
383
|
xWhite: icon_x_white_default
|
|
384
384
|
};
|
|
385
|
-
var Icon =
|
|
385
|
+
var Icon = React65__default.default.memo(
|
|
386
386
|
(_a) => {
|
|
387
387
|
var _b = _a, { type, size } = _b, props = __objRest(_b, ["type", "size"]);
|
|
388
388
|
if (type) {
|
|
@@ -495,21 +495,21 @@ var getDeviceType = (width) => {
|
|
|
495
495
|
return "desktop";
|
|
496
496
|
};
|
|
497
497
|
var useViewPort = () => {
|
|
498
|
-
const [device, setDevice] =
|
|
498
|
+
const [device, setDevice] = React65.useState(
|
|
499
499
|
() => typeof window !== "undefined" ? getDeviceType(window.innerWidth) : "desktop"
|
|
500
500
|
);
|
|
501
|
-
const getOtherDevices =
|
|
501
|
+
const getOtherDevices = React65.useCallback(
|
|
502
502
|
(list, what, includeSelf = false) => {
|
|
503
503
|
const deviceIndex = list.indexOf(what) + (!includeSelf ? 1 : 0);
|
|
504
504
|
return [...list].slice(deviceIndex);
|
|
505
505
|
},
|
|
506
506
|
[]
|
|
507
507
|
);
|
|
508
|
-
const onWindowResize =
|
|
508
|
+
const onWindowResize = React65.useCallback(() => {
|
|
509
509
|
setDevice(getDeviceType(window.innerWidth));
|
|
510
510
|
}, []);
|
|
511
511
|
const onWindowResizeDebounce = useDebounce_default(onWindowResize, 100);
|
|
512
|
-
|
|
512
|
+
React65.useEffect(() => {
|
|
513
513
|
window.addEventListener("resize", onWindowResizeDebounce);
|
|
514
514
|
return () => window.removeEventListener("resize", onWindowResizeDebounce);
|
|
515
515
|
}, [onWindowResizeDebounce]);
|
|
@@ -562,13 +562,13 @@ var BrandsStrip = ({
|
|
|
562
562
|
cta,
|
|
563
563
|
size
|
|
564
564
|
}) => {
|
|
565
|
-
const [show, setShow] =
|
|
566
|
-
const [shouldAnimate, setShouldAnimate] =
|
|
565
|
+
const [show, setShow] = React65.useState(false);
|
|
566
|
+
const [shouldAnimate, setShouldAnimate] = React65.useState(false);
|
|
567
567
|
const { is } = useViewPort_default();
|
|
568
568
|
const isTabletBelow = is("tablet", "below");
|
|
569
|
-
const containerRef =
|
|
570
|
-
const marqueeRef =
|
|
571
|
-
const timeline =
|
|
569
|
+
const containerRef = React65.useRef(null);
|
|
570
|
+
const marqueeRef = React65.useRef(null);
|
|
571
|
+
const timeline = React65.useRef(null);
|
|
572
572
|
const horizontalLoop = (items, config) => {
|
|
573
573
|
const itemsArray = gsap__default.default.utils.toArray(items);
|
|
574
574
|
const cfg = config || {};
|
|
@@ -662,7 +662,7 @@ var BrandsStrip = ({
|
|
|
662
662
|
timeline.current.play();
|
|
663
663
|
}
|
|
664
664
|
};
|
|
665
|
-
const duplicatedLogos =
|
|
665
|
+
const duplicatedLogos = React65.useMemo(() => {
|
|
666
666
|
if (logos.length === 0) return [];
|
|
667
667
|
if (!shouldAnimate) return [...logos];
|
|
668
668
|
return [...logos, ...logos];
|
|
@@ -715,8 +715,8 @@ var CardSubtitle = ({ children }) => {
|
|
|
715
715
|
};
|
|
716
716
|
function resolveCompoundSlots(children, slots) {
|
|
717
717
|
const resolved = {};
|
|
718
|
-
|
|
719
|
-
if (!
|
|
718
|
+
React65.Children.forEach(children, (child) => {
|
|
719
|
+
if (!React65.isValidElement(child)) return;
|
|
720
720
|
Object.entries(slots).forEach(([key, Component]) => {
|
|
721
721
|
if (child.type === Component) {
|
|
722
722
|
resolved[key] = child.props.children;
|
|
@@ -730,7 +730,7 @@ function resolveCompoundSlots(children, slots) {
|
|
|
730
730
|
var Container_module_default = {
|
|
731
731
|
container: "Container_module_container"
|
|
732
732
|
};
|
|
733
|
-
var Container =
|
|
733
|
+
var Container = React65.forwardRef(
|
|
734
734
|
(_a, ref) => {
|
|
735
735
|
var _b = _a, { children, className } = _b, props = __objRest(_b, ["children", "className"]);
|
|
736
736
|
return /* @__PURE__ */ jsxRuntime.jsx("div", __spreadProps(__spreadValues({ ref, className: clsx15__default.default(Container_module_default.container, className) }, props), { children }));
|
|
@@ -871,11 +871,11 @@ function FilterBar({
|
|
|
871
871
|
searchValue,
|
|
872
872
|
onSearchChange
|
|
873
873
|
}) {
|
|
874
|
-
const [openDropdown, setOpenDropdown] =
|
|
875
|
-
const [searchState, setSearchState] =
|
|
876
|
-
const filterRef =
|
|
877
|
-
const sortRef =
|
|
878
|
-
const searchInputRef =
|
|
874
|
+
const [openDropdown, setOpenDropdown] = React65.useState(null);
|
|
875
|
+
const [searchState, setSearchState] = React65.useState("closed");
|
|
876
|
+
const filterRef = React65.useRef(null);
|
|
877
|
+
const sortRef = React65.useRef(null);
|
|
878
|
+
const searchInputRef = React65.useRef(null);
|
|
879
879
|
const closeSearch = () => {
|
|
880
880
|
setSearchState("closing");
|
|
881
881
|
onSearchChange("");
|
|
@@ -885,7 +885,7 @@ function FilterBar({
|
|
|
885
885
|
onSearchChange("");
|
|
886
886
|
(_a = searchInputRef.current) == null ? void 0 : _a.focus();
|
|
887
887
|
};
|
|
888
|
-
|
|
888
|
+
React65.useEffect(() => {
|
|
889
889
|
const handleMouseDown = (e) => {
|
|
890
890
|
var _a, _b;
|
|
891
891
|
const target = e.target;
|
|
@@ -895,7 +895,7 @@ function FilterBar({
|
|
|
895
895
|
document.addEventListener("mousedown", handleMouseDown);
|
|
896
896
|
return () => document.removeEventListener("mousedown", handleMouseDown);
|
|
897
897
|
}, []);
|
|
898
|
-
|
|
898
|
+
React65.useEffect(() => {
|
|
899
899
|
var _a;
|
|
900
900
|
if (searchState === "open") (_a = searchInputRef.current) == null ? void 0 : _a.focus();
|
|
901
901
|
}, [searchState]);
|
|
@@ -1137,9 +1137,10 @@ var Pagination = ({
|
|
|
1137
1137
|
loop = true,
|
|
1138
1138
|
hasNumber = false,
|
|
1139
1139
|
disableArrows = false,
|
|
1140
|
-
onPageChange
|
|
1140
|
+
onPageChange,
|
|
1141
|
+
renderLink
|
|
1141
1142
|
}) => {
|
|
1142
|
-
const [activePage, setActivePage] =
|
|
1143
|
+
const [activePage, setActivePage] = React65.useState(currentPage);
|
|
1143
1144
|
const goToPage = (page) => {
|
|
1144
1145
|
if (page < 1 || page > totalPages) return;
|
|
1145
1146
|
setActivePage(page);
|
|
@@ -1169,8 +1170,15 @@ var Pagination = ({
|
|
|
1169
1170
|
setActivePage(page);
|
|
1170
1171
|
onPageChange == null ? void 0 : onPageChange(page);
|
|
1171
1172
|
};
|
|
1173
|
+
const prevPage = activePage === 1 ? loop ? totalPages : 1 : activePage - 1;
|
|
1174
|
+
const nextPage = activePage === totalPages ? loop ? 1 : totalPages : activePage + 1;
|
|
1172
1175
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default(Pagination_module_default.pagination, className), children: [
|
|
1173
|
-
!disableArrows &&
|
|
1176
|
+
!disableArrows && (renderLink ? renderLink({
|
|
1177
|
+
page: prevPage,
|
|
1178
|
+
className: Pagination_module_default.prev,
|
|
1179
|
+
"aria-label": "Go to previous page",
|
|
1180
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "filledChevronLeft" })
|
|
1181
|
+
}) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
1174
1182
|
"button",
|
|
1175
1183
|
{
|
|
1176
1184
|
className: Pagination_module_default.prev,
|
|
@@ -1179,24 +1187,35 @@ var Pagination = ({
|
|
|
1179
1187
|
"aria-label": "Go to previous page",
|
|
1180
1188
|
children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "filledChevronLeft" })
|
|
1181
1189
|
}
|
|
1182
|
-
),
|
|
1190
|
+
)),
|
|
1183
1191
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: Pagination_module_default.pages, children: Array.from({ length: totalPages }, (_, i) => {
|
|
1184
1192
|
const page = i + 1;
|
|
1185
|
-
|
|
1193
|
+
const pageClassName = clsx15__default.default(Pagination_module_default.page, {
|
|
1194
|
+
[Pagination_module_default.active]: activePage === page,
|
|
1195
|
+
[Pagination_module_default.number]: hasNumber
|
|
1196
|
+
});
|
|
1197
|
+
return renderLink ? /* @__PURE__ */ jsxRuntime.jsx(React65.Fragment, { children: renderLink({
|
|
1198
|
+
page,
|
|
1199
|
+
className: pageClassName,
|
|
1200
|
+
"aria-label": `Go to page ${page}`,
|
|
1201
|
+
children: hasNumber ? page : null
|
|
1202
|
+
}) }, page) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
1186
1203
|
"button",
|
|
1187
1204
|
{
|
|
1188
1205
|
onClick: () => goToPage(page),
|
|
1189
|
-
className:
|
|
1190
|
-
[Pagination_module_default.active]: activePage === page,
|
|
1191
|
-
[Pagination_module_default.number]: hasNumber
|
|
1192
|
-
}),
|
|
1206
|
+
className: pageClassName,
|
|
1193
1207
|
"aria-label": `Go to page ${page}`,
|
|
1194
1208
|
children: hasNumber ? page : null
|
|
1195
1209
|
},
|
|
1196
1210
|
page
|
|
1197
1211
|
);
|
|
1198
1212
|
}) }),
|
|
1199
|
-
!disableArrows &&
|
|
1213
|
+
!disableArrows && (renderLink ? renderLink({
|
|
1214
|
+
page: nextPage,
|
|
1215
|
+
className: Pagination_module_default.next,
|
|
1216
|
+
"aria-label": "Go to next page",
|
|
1217
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "filledChevronRight" })
|
|
1218
|
+
}) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
1200
1219
|
"button",
|
|
1201
1220
|
{
|
|
1202
1221
|
className: Pagination_module_default.next,
|
|
@@ -1205,7 +1224,7 @@ var Pagination = ({
|
|
|
1205
1224
|
"aria-label": "Go to next page",
|
|
1206
1225
|
children: /* @__PURE__ */ jsxRuntime.jsx(Icon, { type: "filledChevronRight" })
|
|
1207
1226
|
}
|
|
1208
|
-
)
|
|
1227
|
+
))
|
|
1209
1228
|
] });
|
|
1210
1229
|
};
|
|
1211
1230
|
|
|
@@ -1458,7 +1477,7 @@ var Badge_module_default = {
|
|
|
1458
1477
|
icon: "Badge_module_icon",
|
|
1459
1478
|
iconOnly: "Badge_module_iconOnly"
|
|
1460
1479
|
};
|
|
1461
|
-
var Badge =
|
|
1480
|
+
var Badge = React65.forwardRef(
|
|
1462
1481
|
(_a, ref) => {
|
|
1463
1482
|
var _b = _a, {
|
|
1464
1483
|
children,
|
|
@@ -1532,7 +1551,7 @@ var Input_module_default = {
|
|
|
1532
1551
|
error: "Input_module_error",
|
|
1533
1552
|
"input-field--error": "Input_module_input-field--error",
|
|
1534
1553
|
"input-field--disabled": "Input_module_input-field--disabled"};
|
|
1535
|
-
var Input =
|
|
1554
|
+
var Input = React65.forwardRef(
|
|
1536
1555
|
(_a, ref) => {
|
|
1537
1556
|
var _b = _a, {
|
|
1538
1557
|
id,
|
|
@@ -1563,7 +1582,7 @@ var Input = React64.forwardRef(
|
|
|
1563
1582
|
"hideLabel",
|
|
1564
1583
|
"type"
|
|
1565
1584
|
]);
|
|
1566
|
-
const generatedId =
|
|
1585
|
+
const generatedId = React65.useId();
|
|
1567
1586
|
const inputId = id || generatedId;
|
|
1568
1587
|
const helperTextId = `${inputId}-helper`;
|
|
1569
1588
|
const errorId = `${inputId}-error`;
|
|
@@ -1714,6 +1733,27 @@ var NewsCard = ({
|
|
|
1714
1733
|
}
|
|
1715
1734
|
);
|
|
1716
1735
|
};
|
|
1736
|
+
|
|
1737
|
+
// src/components/BlogPostContent/BlogPostContent.module.scss
|
|
1738
|
+
var BlogPostContent_module_default = {
|
|
1739
|
+
"blog-post-content": "BlogPostContent_module_blog-post-content"
|
|
1740
|
+
};
|
|
1741
|
+
var BlogPostContentBody = ({ children }) => {
|
|
1742
|
+
return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
|
|
1743
|
+
};
|
|
1744
|
+
var BlogPostContent = ({ className, body, children }) => {
|
|
1745
|
+
var _a;
|
|
1746
|
+
const slots = resolveCompoundSlots(children, {
|
|
1747
|
+
body: BlogPostContentBody
|
|
1748
|
+
});
|
|
1749
|
+
const bodyNode = (_a = slots.body) != null ? _a : body;
|
|
1750
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default("blog-post-content", BlogPostContent_module_default["blog-post-content"], className), children: bodyNode });
|
|
1751
|
+
};
|
|
1752
|
+
|
|
1753
|
+
// src/components/BlogPostContent/index.ts
|
|
1754
|
+
var BlogPostContent2 = Object.assign(BlogPostContent, {
|
|
1755
|
+
Body: BlogPostContentBody
|
|
1756
|
+
});
|
|
1717
1757
|
var CardCollectionTitle = ({ children }) => {
|
|
1718
1758
|
return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
|
|
1719
1759
|
};
|
|
@@ -1747,10 +1787,10 @@ var CardCollection = ({
|
|
|
1747
1787
|
children
|
|
1748
1788
|
}) => {
|
|
1749
1789
|
var _a, _b;
|
|
1750
|
-
const container =
|
|
1751
|
-
const revealWrapper =
|
|
1752
|
-
const extraCard =
|
|
1753
|
-
const [isExpanded, setIsExpanded] =
|
|
1790
|
+
const container = React65.useRef(null);
|
|
1791
|
+
const revealWrapper = React65.useRef(null);
|
|
1792
|
+
const extraCard = React65.useRef(null);
|
|
1793
|
+
const [isExpanded, setIsExpanded] = React65.useState(false);
|
|
1754
1794
|
const slots = resolveCompoundSlots(children, {
|
|
1755
1795
|
title: CardCollectionTitle,
|
|
1756
1796
|
subtitle: CardCollectionSubtitle
|
|
@@ -1761,7 +1801,7 @@ var CardCollection = ({
|
|
|
1761
1801
|
const visibleCards = isExamCard ? cards.slice(0, 8) : cards;
|
|
1762
1802
|
const hiddenCards = isExamCard ? cards.slice(8) : [];
|
|
1763
1803
|
const { contextSafe } = react.useGSAP({ scope: container });
|
|
1764
|
-
const handleShowMore =
|
|
1804
|
+
const handleShowMore = React65.useCallback(() => {
|
|
1765
1805
|
contextSafe(() => {
|
|
1766
1806
|
setIsExpanded(true);
|
|
1767
1807
|
const tl = gsap__default.default.timeline({ defaults: { ease: "power3.inOut" } });
|
|
@@ -1865,8 +1905,8 @@ var ContactModule = ({
|
|
|
1865
1905
|
animateBlur = true
|
|
1866
1906
|
}) => {
|
|
1867
1907
|
var _a, _b;
|
|
1868
|
-
const containerRef =
|
|
1869
|
-
const blurRef =
|
|
1908
|
+
const containerRef = React65.useRef(null);
|
|
1909
|
+
const blurRef = React65.useRef(null);
|
|
1870
1910
|
const slots = resolveCompoundSlots(children, {
|
|
1871
1911
|
title: ContactModuleTitle,
|
|
1872
1912
|
subtitle: ContactModuleSubtitle
|
|
@@ -2205,8 +2245,8 @@ var HeroBannerCarousel = ({
|
|
|
2205
2245
|
}) => {
|
|
2206
2246
|
const { is } = useViewPort_default();
|
|
2207
2247
|
const isMobile = is("tablet", "below");
|
|
2208
|
-
const [swiperInstance, setSwiperInstance] =
|
|
2209
|
-
const [activeIndex, setActiveIndex] =
|
|
2248
|
+
const [swiperInstance, setSwiperInstance] = React65.useState(null);
|
|
2249
|
+
const [activeIndex, setActiveIndex] = React65.useState(0);
|
|
2210
2250
|
if (!items.length) return null;
|
|
2211
2251
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default(HeroBannerCarousel_module_default.heroBannerCarousel, className), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: HeroBannerCarousel_module_default.inner, children: [
|
|
2212
2252
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: HeroBannerCarousel_module_default.swiperContainer, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -2295,16 +2335,16 @@ var AccordionItem = ({
|
|
|
2295
2335
|
onToggle,
|
|
2296
2336
|
className
|
|
2297
2337
|
}) => {
|
|
2298
|
-
const contentRef =
|
|
2299
|
-
const contentInnerRef =
|
|
2300
|
-
const timelineRef =
|
|
2301
|
-
const [contentHeight, setContentHeight] =
|
|
2302
|
-
|
|
2338
|
+
const contentRef = React65.useRef(null);
|
|
2339
|
+
const contentInnerRef = React65.useRef(null);
|
|
2340
|
+
const timelineRef = React65.useRef(null);
|
|
2341
|
+
const [contentHeight, setContentHeight] = React65.useState(0);
|
|
2342
|
+
React65.useEffect(() => {
|
|
2303
2343
|
if (contentInnerRef.current) {
|
|
2304
2344
|
setContentHeight(contentInnerRef.current.scrollHeight);
|
|
2305
2345
|
}
|
|
2306
2346
|
}, [children]);
|
|
2307
|
-
|
|
2347
|
+
React65.useEffect(() => {
|
|
2308
2348
|
if (contentRef.current && contentHeight > 0) {
|
|
2309
2349
|
if (timelineRef.current) {
|
|
2310
2350
|
timelineRef.current.kill();
|
|
@@ -2389,7 +2429,7 @@ var Accordion = ({
|
|
|
2389
2429
|
allowMultiple = false,
|
|
2390
2430
|
onItemToggle
|
|
2391
2431
|
}) => {
|
|
2392
|
-
const [openIds, setOpenIds] =
|
|
2432
|
+
const [openIds, setOpenIds] = React65.useState(defaultOpenIds);
|
|
2393
2433
|
const handleToggle = (id) => {
|
|
2394
2434
|
setOpenIds((prev) => {
|
|
2395
2435
|
let newOpenIds;
|
|
@@ -2450,10 +2490,10 @@ var InternalBrandsTab_module_default = {
|
|
|
2450
2490
|
var InternalBrandsTab = (props) => {
|
|
2451
2491
|
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _A;
|
|
2452
2492
|
const { title, subTitle, className, tabs } = props;
|
|
2453
|
-
const [activeIndex, setActiveIndex] =
|
|
2493
|
+
const [activeIndex, setActiveIndex] = React65.useState(0);
|
|
2454
2494
|
const { is } = useViewPort_default();
|
|
2455
2495
|
const isTabletBelow = is("tablet", "below");
|
|
2456
|
-
const accordionItems =
|
|
2496
|
+
const accordionItems = React65.useMemo(() => {
|
|
2457
2497
|
return (tabs == null ? void 0 : tabs.map((tab, index) => {
|
|
2458
2498
|
var _a2, _b2, _c2, _d2, _e2, _f2, _g2, _h2, _i2, _j2, _k2, _l2, _m2, _n2;
|
|
2459
2499
|
return {
|
|
@@ -3236,13 +3276,13 @@ var ResourcesGridList = ({
|
|
|
3236
3276
|
defaultSort = "latest"
|
|
3237
3277
|
}) => {
|
|
3238
3278
|
var _a;
|
|
3239
|
-
const [view, setView] =
|
|
3240
|
-
const [isSidebarOpen, setIsSidebarOpen] =
|
|
3241
|
-
const [filterValue, setFilterValue] =
|
|
3242
|
-
const [sortValue, setSortValue] =
|
|
3243
|
-
const [searchQuery, setSearchQuery] =
|
|
3244
|
-
const [currentPage, setCurrentPage] =
|
|
3245
|
-
const [selectedCategory, setSelectedCategory] =
|
|
3279
|
+
const [view, setView] = React65.useState(defaultView);
|
|
3280
|
+
const [isSidebarOpen, setIsSidebarOpen] = React65.useState(false);
|
|
3281
|
+
const [filterValue, setFilterValue] = React65.useState(defaultFilter);
|
|
3282
|
+
const [sortValue, setSortValue] = React65.useState(defaultSort);
|
|
3283
|
+
const [searchQuery, setSearchQuery] = React65.useState("");
|
|
3284
|
+
const [currentPage, setCurrentPage] = React65.useState(1);
|
|
3285
|
+
const [selectedCategory, setSelectedCategory] = React65.useState(() => {
|
|
3246
3286
|
const activeIndex = categories.findIndex((cat) => cat.active);
|
|
3247
3287
|
return activeIndex === -1 ? 0 : activeIndex;
|
|
3248
3288
|
});
|
|
@@ -3628,21 +3668,27 @@ var NewsCardList_module_default = {
|
|
|
3628
3668
|
"end-action-button": "NewsCardList_module_end-action-button",
|
|
3629
3669
|
pagination: "NewsCardList_module_pagination"
|
|
3630
3670
|
};
|
|
3671
|
+
var NewsCardListPagination = ({ children }) => {
|
|
3672
|
+
return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
|
|
3673
|
+
};
|
|
3631
3674
|
var NewsCardList = ({
|
|
3632
3675
|
items,
|
|
3633
3676
|
backgroundColor,
|
|
3634
3677
|
className,
|
|
3635
3678
|
currentPage,
|
|
3636
|
-
totalPages = 0,
|
|
3637
3679
|
searchValue,
|
|
3638
|
-
onPageChange,
|
|
3639
3680
|
onSearchChange,
|
|
3640
3681
|
onSearchSubmit,
|
|
3641
3682
|
searchInputProps,
|
|
3642
|
-
renderLink
|
|
3683
|
+
renderLink,
|
|
3684
|
+
children
|
|
3643
3685
|
}) => {
|
|
3644
3686
|
const featuredCards = items.slice(0, 4);
|
|
3645
3687
|
const cards = currentPage !== 1 ? items : items.slice(4);
|
|
3688
|
+
const slots = resolveCompoundSlots(children, {
|
|
3689
|
+
pagination: NewsCardListPagination
|
|
3690
|
+
});
|
|
3691
|
+
const paginationNode = slots.pagination;
|
|
3646
3692
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3647
3693
|
"div",
|
|
3648
3694
|
{
|
|
@@ -3687,21 +3733,19 @@ var NewsCardList = ({
|
|
|
3687
3733
|
/* @__PURE__ */ jsxRuntime.jsx(BlogCardGrid2, { items: cards, hasContainer: false, renderLink })
|
|
3688
3734
|
] })
|
|
3689
3735
|
] }),
|
|
3690
|
-
|
|
3691
|
-
|
|
3692
|
-
|
|
3693
|
-
currentPage: currentPage || 1,
|
|
3694
|
-
totalPages: totalPages || 0,
|
|
3695
|
-
onPageChange,
|
|
3696
|
-
className: clsx15__default.default("pagination", NewsCardList_module_default["pagination"]),
|
|
3697
|
-
hasNumber: true
|
|
3698
|
-
}
|
|
3699
|
-
) : null
|
|
3736
|
+
paginationNode ? React65__default.default.cloneElement(paginationNode, {
|
|
3737
|
+
className: clsx15__default.default("pagination", NewsCardList_module_default["pagination"])
|
|
3738
|
+
}) : null
|
|
3700
3739
|
] })
|
|
3701
3740
|
}
|
|
3702
3741
|
);
|
|
3703
3742
|
};
|
|
3704
3743
|
|
|
3744
|
+
// src/widgets/NewsCardList/index.ts
|
|
3745
|
+
var NewsCardList2 = Object.assign(NewsCardList, {
|
|
3746
|
+
Pagination: NewsCardListPagination
|
|
3747
|
+
});
|
|
3748
|
+
|
|
3705
3749
|
// src/widgets/BlogPost/BlogPost.module.scss
|
|
3706
3750
|
var BlogPost_module_default = {
|
|
3707
3751
|
"blog-post": "BlogPost_module_blog-post",
|
|
@@ -3748,7 +3792,7 @@ var BlogPost = ({
|
|
|
3748
3792
|
/* @__PURE__ */ jsxRuntime.jsx("time", { dateTime: date.value, children: date.label })
|
|
3749
3793
|
] })
|
|
3750
3794
|
] }),
|
|
3751
|
-
bodyNode
|
|
3795
|
+
/* @__PURE__ */ jsxRuntime.jsx(BlogPostContent2, { children: /* @__PURE__ */ jsxRuntime.jsx(BlogPostContent2.Body, { children: bodyNode }) })
|
|
3752
3796
|
] }),
|
|
3753
3797
|
relatedArticles && relatedArticles.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
3754
3798
|
BlogCardGrid2,
|
|
@@ -3781,26 +3825,30 @@ var BlogSearchResultsList_module_default = {
|
|
|
3781
3825
|
"end-action-button": "BlogSearchResultsList_module_end-action-button",
|
|
3782
3826
|
pagination: "BlogSearchResultsList_module_pagination"
|
|
3783
3827
|
};
|
|
3828
|
+
var BlogSearchResultsListPagination = ({
|
|
3829
|
+
children
|
|
3830
|
+
}) => {
|
|
3831
|
+
return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
|
|
3832
|
+
};
|
|
3784
3833
|
var BlogSearchResultsList = ({
|
|
3785
3834
|
items,
|
|
3786
3835
|
searchResult,
|
|
3787
3836
|
onSearchChange,
|
|
3788
3837
|
onSearchSubmit,
|
|
3789
|
-
onPageChange,
|
|
3790
3838
|
searchValue,
|
|
3791
|
-
currentPage,
|
|
3792
|
-
totalPages = 0,
|
|
3793
3839
|
className,
|
|
3794
3840
|
renderLink,
|
|
3795
3841
|
children
|
|
3796
3842
|
}) => {
|
|
3797
3843
|
var _a;
|
|
3798
3844
|
const slots = resolveCompoundSlots(children, {
|
|
3799
|
-
search: BlogSearchResultsListSearch
|
|
3845
|
+
search: BlogSearchResultsListSearch,
|
|
3846
|
+
pagination: BlogSearchResultsListPagination
|
|
3800
3847
|
});
|
|
3801
3848
|
const searchNode = (_a = slots.search) != null ? _a : searchResult;
|
|
3849
|
+
const paginationNode = slots.pagination;
|
|
3802
3850
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: clsx15__default.default("search-results-list", BlogSearchResultsList_module_default["search-results-list"], className), children: /* @__PURE__ */ jsxRuntime.jsxs(Container, { className: clsx15__default.default("container", BlogSearchResultsList_module_default["container"]), children: [
|
|
3803
|
-
typeof searchNode === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: clsx15__default.default("search-result", BlogSearchResultsList_module_default["search-result"]), children: searchNode }) :
|
|
3851
|
+
typeof searchNode === "string" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: clsx15__default.default("search-result", BlogSearchResultsList_module_default["search-result"]), children: searchNode }) : React65__default.default.isValidElement(searchNode) ? React65__default.default.cloneElement(searchNode, {
|
|
3804
3852
|
className: clsx15__default.default("search-result", BlogSearchResultsList_module_default["search-result"])
|
|
3805
3853
|
}) : null,
|
|
3806
3854
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: clsx15__default.default("wrapper", BlogSearchResultsList_module_default["wrapper"]), children: [
|
|
@@ -3828,34 +3876,28 @@ var BlogSearchResultsList = ({
|
|
|
3828
3876
|
),
|
|
3829
3877
|
/* @__PURE__ */ jsxRuntime.jsx(BlogCardGrid2, { items, hasContainer: false, renderLink })
|
|
3830
3878
|
] }),
|
|
3831
|
-
|
|
3832
|
-
|
|
3833
|
-
|
|
3834
|
-
currentPage: currentPage || 1,
|
|
3835
|
-
totalPages: totalPages || 0,
|
|
3836
|
-
onPageChange,
|
|
3837
|
-
className: clsx15__default.default("pagination", BlogSearchResultsList_module_default["pagination"]),
|
|
3838
|
-
hasNumber: true
|
|
3839
|
-
}
|
|
3840
|
-
) : null
|
|
3879
|
+
paginationNode ? React65__default.default.cloneElement(paginationNode, {
|
|
3880
|
+
className: clsx15__default.default("pagination", BlogSearchResultsList_module_default["pagination"])
|
|
3881
|
+
}) : null
|
|
3841
3882
|
] }) });
|
|
3842
3883
|
};
|
|
3843
3884
|
|
|
3844
3885
|
// src/widgets/BlogSearchResultsList/index.ts
|
|
3845
3886
|
var BlogSearchResultsList2 = Object.assign(BlogSearchResultsList, {
|
|
3846
|
-
Search: BlogSearchResultsListSearch
|
|
3887
|
+
Search: BlogSearchResultsListSearch,
|
|
3888
|
+
Pagination: BlogSearchResultsListPagination
|
|
3847
3889
|
});
|
|
3848
3890
|
function useIntersectionObserver({
|
|
3849
3891
|
animateOnce = false,
|
|
3850
3892
|
options = {}
|
|
3851
3893
|
} = {}) {
|
|
3852
|
-
const observeRef =
|
|
3853
|
-
const [isVisible, setIsVisible] =
|
|
3894
|
+
const observeRef = React65.useRef(null);
|
|
3895
|
+
const [isVisible, setIsVisible] = React65.useState(false);
|
|
3854
3896
|
if (typeof IntersectionObserver === "undefined") {
|
|
3855
3897
|
console.warn("IntersectionObserver is not supported in this browser.");
|
|
3856
3898
|
return { observeRef, isVisible: true };
|
|
3857
3899
|
}
|
|
3858
|
-
|
|
3900
|
+
React65.useEffect(() => {
|
|
3859
3901
|
const currentRef = observeRef.current;
|
|
3860
3902
|
if (!currentRef) return;
|
|
3861
3903
|
const observer = new IntersectionObserver((entries) => {
|
|
@@ -3878,6 +3920,7 @@ exports.Anchor = Anchor;
|
|
|
3878
3920
|
exports.Badge = Badge;
|
|
3879
3921
|
exports.BlogCardGrid = BlogCardGrid2;
|
|
3880
3922
|
exports.BlogPost = BlogPost2;
|
|
3923
|
+
exports.BlogPostContent = BlogPostContent2;
|
|
3881
3924
|
exports.BlogSearchResultsList = BlogSearchResultsList2;
|
|
3882
3925
|
exports.BrandsStrip = BrandsStrip;
|
|
3883
3926
|
exports.Button = Button;
|
|
@@ -3900,7 +3943,7 @@ exports.InternalBrandsTab = InternalBrandsTab2;
|
|
|
3900
3943
|
exports.MiniBanner = MiniBanner2;
|
|
3901
3944
|
exports.MiniSectionCta = MiniSectionCta2;
|
|
3902
3945
|
exports.NewsCard = NewsCard;
|
|
3903
|
-
exports.NewsCardList =
|
|
3946
|
+
exports.NewsCardList = NewsCardList2;
|
|
3904
3947
|
exports.Pagination = Pagination;
|
|
3905
3948
|
exports.Picture = Picture;
|
|
3906
3949
|
exports.PracticeCard = PracticeCard;
|