@coreui/react 4.10.0 → 5.0.0-alpha.1
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/README.md +1 -1
- package/dist/components/accordion/CAccordionCollapse.d.ts +3 -0
- package/dist/components/close-button/CCloseButton.d.ts +6 -0
- package/dist/components/dropdown copy/CDropdown.d.ts +89 -0
- package/dist/components/dropdown copy/CDropdownDivider.d.ts +8 -0
- package/dist/components/dropdown copy/CDropdownHeader.d.ts +12 -0
- package/dist/components/dropdown copy/CDropdownItem.d.ts +13 -0
- package/dist/components/dropdown copy/CDropdownItemPlain.d.ts +12 -0
- package/dist/components/dropdown copy/CDropdownMenu.d.ts +13 -0
- package/dist/components/dropdown copy/CDropdownToggle.d.ts +24 -0
- package/dist/components/dropdown copy/index.d.ts +8 -0
- package/dist/components/nav/CNav.d.ts +1 -1
- package/dist/components/navbar/CNavbar.d.ts +1 -1
- package/dist/components/offcanvas/COffcanvas.d.ts +4 -0
- package/dist/hooks/index.d.ts +2 -1
- package/dist/index.es.js +64 -15
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +64 -14
- package/dist/index.js.map +1 -1
- package/package.json +11 -11
- package/src/components/carousel/CCarousel.tsx +9 -5
- package/src/components/close-button/CCloseButton.tsx +9 -1
- package/src/components/dropdown/CDropdownMenu.tsx +1 -1
- package/src/components/nav/CNav.tsx +2 -2
- package/src/components/navbar/CNavbar.tsx +2 -2
- package/src/components/offcanvas/COffcanvas.tsx +7 -0
- package/src/hooks/index.ts +2 -1
package/dist/index.js
CHANGED
|
@@ -2477,6 +2477,54 @@ CSSTransition.propTypes = process.env.NODE_ENV !== "production" ? _extends({}, T
|
|
|
2477
2477
|
}) : {};
|
|
2478
2478
|
var CSSTransition$1 = CSSTransition;
|
|
2479
2479
|
|
|
2480
|
+
var getStoredTheme = function (localStorageItemName) {
|
|
2481
|
+
return typeof window !== 'undefined' && localStorage.getItem(localStorageItemName);
|
|
2482
|
+
};
|
|
2483
|
+
var setStoredTheme = function (localStorageItemName, colorMode) {
|
|
2484
|
+
return localStorage.setItem(localStorageItemName, colorMode);
|
|
2485
|
+
};
|
|
2486
|
+
var getPreferredColorScheme = function (localStorageItemName) {
|
|
2487
|
+
if (typeof window === 'undefined') {
|
|
2488
|
+
return 'light';
|
|
2489
|
+
}
|
|
2490
|
+
var storedTheme = getStoredTheme(localStorageItemName);
|
|
2491
|
+
if (storedTheme) {
|
|
2492
|
+
return storedTheme;
|
|
2493
|
+
}
|
|
2494
|
+
return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
|
|
2495
|
+
};
|
|
2496
|
+
var setTheme = function (colorMode) {
|
|
2497
|
+
document.documentElement.dataset.coreuiTheme =
|
|
2498
|
+
colorMode === 'auto' && window.matchMedia('(prefers-color-scheme: dark)').matches
|
|
2499
|
+
? 'dark'
|
|
2500
|
+
: colorMode;
|
|
2501
|
+
var event = new Event('ColorSchemeChange');
|
|
2502
|
+
document.documentElement.dispatchEvent(event);
|
|
2503
|
+
};
|
|
2504
|
+
var useColorModes = function (localStorageItemName) {
|
|
2505
|
+
if (localStorageItemName === void 0) { localStorageItemName = 'coreui-react-color-scheme'; }
|
|
2506
|
+
var _a = React.useState(getPreferredColorScheme(localStorageItemName)), colorMode = _a[0], setColorMode = _a[1];
|
|
2507
|
+
React.useEffect(function () {
|
|
2508
|
+
if (colorMode) {
|
|
2509
|
+
setStoredTheme(localStorageItemName, colorMode);
|
|
2510
|
+
setTheme(colorMode);
|
|
2511
|
+
}
|
|
2512
|
+
}, [colorMode]);
|
|
2513
|
+
React.useEffect(function () {
|
|
2514
|
+
window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', function () {
|
|
2515
|
+
var storedTheme = getStoredTheme(localStorageItemName);
|
|
2516
|
+
if (storedTheme !== 'light' && storedTheme !== 'dark' && colorMode) {
|
|
2517
|
+
setTheme(colorMode);
|
|
2518
|
+
}
|
|
2519
|
+
});
|
|
2520
|
+
});
|
|
2521
|
+
return {
|
|
2522
|
+
colorMode: colorMode,
|
|
2523
|
+
isColorModeSet: function () { return Boolean(getStoredTheme(localStorageItemName)); },
|
|
2524
|
+
setColorMode: setColorMode,
|
|
2525
|
+
};
|
|
2526
|
+
};
|
|
2527
|
+
|
|
2480
2528
|
// code borrowed from https://github.com/reach/reach-ui
|
|
2481
2529
|
// problem described https://github.com/facebook/react/issues/13029
|
|
2482
2530
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -4517,13 +4565,14 @@ CAccordionHeader.propTypes = {
|
|
|
4517
4565
|
CAccordionHeader.displayName = 'CAccordionHeader';
|
|
4518
4566
|
|
|
4519
4567
|
var CCloseButton = React.forwardRef(function (_a, ref) {
|
|
4520
|
-
var className = _a.className, disabled = _a.disabled, white = _a.white, rest = __rest(_a, ["className", "disabled", "white"]);
|
|
4568
|
+
var className = _a.className, dark = _a.dark, disabled = _a.disabled, white = _a.white, rest = __rest(_a, ["className", "dark", "disabled", "white"]);
|
|
4521
4569
|
return (React.createElement("button", __assign({ type: "button", className: classNames('btn', 'btn-close', {
|
|
4522
4570
|
'btn-close-white': white,
|
|
4523
|
-
}, disabled, className), "aria-label": "Close", disabled: disabled }, rest, { ref: ref })));
|
|
4571
|
+
}, disabled, className), "aria-label": "Close", disabled: disabled }, (dark && { 'data-coreui-theme': 'dark' }), rest, { ref: ref })));
|
|
4524
4572
|
});
|
|
4525
4573
|
CCloseButton.propTypes = {
|
|
4526
4574
|
className: PropTypes.string,
|
|
4575
|
+
dark: PropTypes.bool,
|
|
4527
4576
|
disabled: PropTypes.bool,
|
|
4528
4577
|
white: PropTypes.bool,
|
|
4529
4578
|
};
|
|
@@ -5027,17 +5076,18 @@ var CCarousel = React.forwardRef(function (_a, ref) {
|
|
|
5027
5076
|
setTouchPosition(touchDown);
|
|
5028
5077
|
};
|
|
5029
5078
|
return (React.createElement("div", __assign({ className: classNames('carousel slide', {
|
|
5030
|
-
'carousel-dark': dark,
|
|
5031
5079
|
'carousel-fade': transition === 'crossfade',
|
|
5032
|
-
}, className), onMouseEnter: _pause, onMouseLeave: cycle }, (touch && { onTouchStart: handleTouchStart, onTouchMove: handleTouchMove }), rest, { ref: forkedRef }),
|
|
5080
|
+
}, className) }, (dark && { 'data-coreui-theme': 'dark' }), { onMouseEnter: _pause, onMouseLeave: cycle }, (touch && { onTouchStart: handleTouchStart, onTouchMove: handleTouchMove }), rest, { ref: forkedRef }),
|
|
5033
5081
|
React.createElement(CCarouselContext.Provider, { value: {
|
|
5034
5082
|
setAnimating: setAnimating,
|
|
5035
5083
|
setCustomInterval: setCustomInterval,
|
|
5036
5084
|
} },
|
|
5037
|
-
indicators && (React.createElement("
|
|
5038
|
-
return (React.createElement("
|
|
5085
|
+
indicators && (React.createElement("div", { className: "carousel-indicators" }, Array.from({ length: itemsNumber }, function (_, i) { return i; }).map(function (index) {
|
|
5086
|
+
return (React.createElement("button", __assign({ key: "indicator".concat(index), onClick: function () {
|
|
5039
5087
|
!animating && handleIndicatorClick(index);
|
|
5040
|
-
}, className:
|
|
5088
|
+
}, className: classNames({
|
|
5089
|
+
active: active === index
|
|
5090
|
+
}), "data-coreui-target": "" }, (active === index && { 'aria-current': true }), { "aria-label": "Slide ".concat(index + 1) })));
|
|
5041
5091
|
}))),
|
|
5042
5092
|
React.createElement("div", { className: "carousel-inner" }, React.Children.map(children, function (child, index) {
|
|
5043
5093
|
if (React.isValidElement(child)) {
|
|
@@ -5365,9 +5415,8 @@ var CDropdownMenu = React.forwardRef(function (_a, ref) {
|
|
|
5365
5415
|
var forkedRef = useForkedRef(ref, dropdownMenuRef);
|
|
5366
5416
|
return (React.createElement(CConditionalPortal, { portal: portal !== null && portal !== void 0 ? portal : false },
|
|
5367
5417
|
React.createElement(Component, __assign({ className: classNames('dropdown-menu', {
|
|
5368
|
-
'dropdown-menu-dark': dark,
|
|
5369
5418
|
show: visible,
|
|
5370
|
-
}, alignment && alignmentClassNames(alignment), className), ref: forkedRef, role: "menu", "aria-hidden": !visible }, (!popper && { 'data-coreui-popper': 'static' }), rest), Component === 'ul'
|
|
5419
|
+
}, alignment && alignmentClassNames(alignment), className), ref: forkedRef, role: "menu", "aria-hidden": !visible }, (!popper && { 'data-coreui-popper': 'static' }), (dark && { 'data-coreui-theme': 'dark' }), rest), Component === 'ul'
|
|
5371
5420
|
? React.Children.map(children, function (child, index) {
|
|
5372
5421
|
if (React.isValidElement(child)) {
|
|
5373
5422
|
return React.createElement("li", { key: index }, React.cloneElement(child));
|
|
@@ -6204,7 +6253,7 @@ CNav.propTypes = {
|
|
|
6204
6253
|
className: PropTypes.string,
|
|
6205
6254
|
component: PropTypes.elementType,
|
|
6206
6255
|
layout: PropTypes.oneOf(['fill', 'justified']),
|
|
6207
|
-
variant: PropTypes.oneOf(['tabs', '
|
|
6256
|
+
variant: PropTypes.oneOf(['pills', 'tabs', 'underline']),
|
|
6208
6257
|
};
|
|
6209
6258
|
CNav.displayName = 'CNav';
|
|
6210
6259
|
|
|
@@ -6358,9 +6407,8 @@ var CNavbar = React.forwardRef(function (_a, ref) {
|
|
|
6358
6407
|
var children = _a.children, className = _a.className, color = _a.color, colorScheme = _a.colorScheme, _c = _a.component, Component = _c === void 0 ? 'nav' : _c, container = _a.container, expand = _a.expand, placement = _a.placement, rest = __rest(_a, ["children", "className", "color", "colorScheme", "component", "container", "expand", "placement"]);
|
|
6359
6408
|
return (React.createElement(Component, __assign({ className: classNames('navbar', (_b = {},
|
|
6360
6409
|
_b["bg-".concat(color)] = color,
|
|
6361
|
-
_b["navbar-".concat(colorScheme)] = colorScheme,
|
|
6362
6410
|
_b[typeof expand === 'boolean' ? 'navbar-expand' : "navbar-expand-".concat(expand)] = expand,
|
|
6363
|
-
_b), placement, className) }, rest, { ref: ref }), container ? (React.createElement("div", { className: typeof container === 'string' ? "container-".concat(container) : 'container' }, children)) : (React.createElement(React.Fragment, null, children))));
|
|
6411
|
+
_b), placement, className) }, (colorScheme && { 'data-coreui-theme': colorScheme }), rest, { ref: ref }), container ? (React.createElement("div", { className: typeof container === 'string' ? "container-".concat(container) : 'container' }, children)) : (React.createElement(React.Fragment, null, children))));
|
|
6364
6412
|
});
|
|
6365
6413
|
CNavbar.propTypes = {
|
|
6366
6414
|
children: PropTypes.node,
|
|
@@ -6431,7 +6479,7 @@ CNavbarToggler.propTypes = {
|
|
|
6431
6479
|
CNavbarToggler.displayName = 'CNavbarToggler';
|
|
6432
6480
|
|
|
6433
6481
|
var COffcanvas = React.forwardRef(function (_a, ref) {
|
|
6434
|
-
var children = _a.children, _b = _a.backdrop, backdrop = _b === void 0 ? true : _b, className = _a.className, _c = _a.keyboard, keyboard = _c === void 0 ? true : _c, onHide = _a.onHide, onShow = _a.onShow, placement = _a.placement, _d = _a.portal, portal = _d === void 0 ? false : _d, _e = _a.responsive, responsive = _e === void 0 ? true : _e, _f = _a.scroll, scroll = _f === void 0 ? false : _f, _g = _a.visible, visible = _g === void 0 ? false : _g, rest = __rest(_a, ["children", "backdrop", "className", "keyboard", "onHide", "onShow", "placement", "portal", "responsive", "scroll", "visible"]);
|
|
6482
|
+
var children = _a.children, _b = _a.backdrop, backdrop = _b === void 0 ? true : _b, className = _a.className, dark = _a.dark, _c = _a.keyboard, keyboard = _c === void 0 ? true : _c, onHide = _a.onHide, onShow = _a.onShow, placement = _a.placement, _d = _a.portal, portal = _d === void 0 ? false : _d, _e = _a.responsive, responsive = _e === void 0 ? true : _e, _f = _a.scroll, scroll = _f === void 0 ? false : _f, _g = _a.visible, visible = _g === void 0 ? false : _g, rest = __rest(_a, ["children", "backdrop", "className", "dark", "keyboard", "onHide", "onShow", "placement", "portal", "responsive", "scroll", "visible"]);
|
|
6435
6483
|
var _h = React.useState(visible), _visible = _h[0], setVisible = _h[1];
|
|
6436
6484
|
var offcanvasRef = React.useRef(null);
|
|
6437
6485
|
var forkedRef = useForkedRef(ref, offcanvasRef);
|
|
@@ -6472,7 +6520,7 @@ var COffcanvas = React.forwardRef(function (_a, ref) {
|
|
|
6472
6520
|
_a.showing = state === 'entering',
|
|
6473
6521
|
_a.show = state === 'entered',
|
|
6474
6522
|
_a['show hiding'] = state === 'exiting',
|
|
6475
|
-
_a), className), role: "dialog", tabIndex: -1, onKeyDown: handleKeyDown }, rest, { ref: forkedRef }), children)));
|
|
6523
|
+
_a), className), role: "dialog", tabIndex: -1, onKeyDown: handleKeyDown }, (dark && { 'data-coreui-theme': 'dark' }), rest, { ref: forkedRef }), children)));
|
|
6476
6524
|
}),
|
|
6477
6525
|
backdrop && (React.createElement(CConditionalPortal, { portal: portal },
|
|
6478
6526
|
React.createElement(CBackdrop, { className: "offcanvas-backdrop", onClick: handleBackdropDismiss, visible: _visible })))));
|
|
@@ -6481,6 +6529,7 @@ COffcanvas.propTypes = {
|
|
|
6481
6529
|
backdrop: PropTypes.oneOfType([PropTypes.bool, PropTypes.oneOf(['static'])]),
|
|
6482
6530
|
children: PropTypes.node,
|
|
6483
6531
|
className: PropTypes.string,
|
|
6532
|
+
dark: PropTypes.bool,
|
|
6484
6533
|
keyboard: PropTypes.bool,
|
|
6485
6534
|
onHide: PropTypes.func,
|
|
6486
6535
|
onShow: PropTypes.func,
|
|
@@ -7620,6 +7669,7 @@ exports.CWidgetStatsC = CWidgetStatsC;
|
|
|
7620
7669
|
exports.CWidgetStatsD = CWidgetStatsD;
|
|
7621
7670
|
exports.CWidgetStatsE = CWidgetStatsE;
|
|
7622
7671
|
exports.CWidgetStatsF = CWidgetStatsF;
|
|
7672
|
+
exports.useColorModes = useColorModes;
|
|
7623
7673
|
exports.useForkedRef = useForkedRef;
|
|
7624
7674
|
exports.usePopper = usePopper;
|
|
7625
7675
|
//# sourceMappingURL=index.js.map
|