@coreui/react 4.5.2 → 4.6.0
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/offcanvas/COffcanvas.d.ts +7 -1
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/useForkedRef.d.ts +7 -0
- package/dist/index.es.js +26 -14
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +26 -14
- package/dist/index.js.map +1 -1
- package/package.json +7 -7
- package/src/components/alert/CAlert.tsx +1 -1
- package/src/components/backdrop/CBackdrop.tsx +1 -1
- package/src/components/carousel/CCarousel.tsx +1 -1
- package/src/components/carousel/CCarouselItem.tsx +1 -1
- package/src/components/collapse/CCollapse.tsx +1 -1
- package/src/components/dropdown/CDropdown.tsx +1 -1
- package/src/components/dropdown/CDropdownToggle.tsx +1 -1
- package/src/components/form/CFormCheck.tsx +1 -1
- package/src/components/modal/CModal.tsx +1 -1
- package/src/components/nav/CNavLink.tsx +2 -1
- package/src/components/offcanvas/COffcanvas.tsx +35 -17
- package/src/components/sidebar/CSidebar.tsx +1 -1
- package/src/components/tabs/CTabPane.tsx +1 -1
- package/src/components/toast/CToast.tsx +1 -1
- /package/src/{utils/hooks → hooks}/index.ts +0 -0
- /package/src/{utils/hooks → hooks}/useForkedRef.ts +0 -0
package/README.md
CHANGED
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
|
|
47
47
|
Several quick start options are available:
|
|
48
48
|
|
|
49
|
-
- [Download the latest release](https://github.com/coreui/coreui-react/archive/v4.
|
|
49
|
+
- [Download the latest release](https://github.com/coreui/coreui-react/archive/v4.6.0.zip)
|
|
50
50
|
- Clone the repo: `git clone https://github.com/coreui/coreui-react.git`
|
|
51
51
|
- Install with [npm](https://www.npmjs.com/): `npm install @coreui/react`
|
|
52
52
|
- Install with [yarn](https://yarnpkg.com/): `yarn add @coreui/react`
|
|
@@ -3,7 +3,7 @@ export interface COffcanvasProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
3
3
|
/**
|
|
4
4
|
* Apply a backdrop on body while offcanvas is open.
|
|
5
5
|
*/
|
|
6
|
-
backdrop?: boolean;
|
|
6
|
+
backdrop?: boolean | 'static';
|
|
7
7
|
/**
|
|
8
8
|
* A string of all className you want applied to the base component.
|
|
9
9
|
*/
|
|
@@ -28,6 +28,12 @@ export interface COffcanvasProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
28
28
|
* Generates modal using createPortal.
|
|
29
29
|
*/
|
|
30
30
|
portal?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Responsive offcanvas property hide content outside the viewport from a specified breakpoint and down.
|
|
33
|
+
*
|
|
34
|
+
* @since 4.6.0
|
|
35
|
+
*/
|
|
36
|
+
responsive?: boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';
|
|
31
37
|
/**
|
|
32
38
|
* Allow body scrolling while offcanvas is open
|
|
33
39
|
*/
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export type AssignableRef<ValueType> = {
|
|
3
|
+
bivarianceHack(instance: ValueType | null): void;
|
|
4
|
+
}['bivarianceHack'] | React.MutableRefObject<ValueType | null>;
|
|
5
|
+
export declare function useForkedRef<RefValueType = any>(...refs: (AssignableRef<RefValueType> | null | undefined)[]): ((node: any) => void) | null;
|
|
6
|
+
export declare function assignRef<RefValueType = any>(ref: AssignableRef<RefValueType> | null | undefined, value: any): void;
|
|
7
|
+
export declare function isFunction(value: any): value is Function;
|
package/dist/index.es.js
CHANGED
|
@@ -7067,8 +7067,8 @@ CNavbarToggler.displayName = 'CNavbarToggler';
|
|
|
7067
7067
|
|
|
7068
7068
|
var COffcanvas = forwardRef(function (_a, ref) {
|
|
7069
7069
|
var _b;
|
|
7070
|
-
var children = _a.children, _c = _a.backdrop, backdrop = _c === void 0 ? true : _c, className = _a.className, _d = _a.keyboard, keyboard = _d === void 0 ? true : _d, onHide = _a.onHide, onShow = _a.onShow, placement = _a.placement, _e = _a.portal, portal = _e === void 0 ?
|
|
7071
|
-
var
|
|
7070
|
+
var children = _a.children, _c = _a.backdrop, backdrop = _c === void 0 ? true : _c, className = _a.className, _d = _a.keyboard, keyboard = _d === void 0 ? true : _d, onHide = _a.onHide, onShow = _a.onShow, placement = _a.placement, _e = _a.portal, portal = _e === void 0 ? false : _e, _f = _a.responsive, responsive = _f === void 0 ? true : _f, _g = _a.scroll, scroll = _g === void 0 ? false : _g, _h = _a.visible, visible = _h === void 0 ? false : _h, rest = __rest(_a, ["children", "backdrop", "className", "keyboard", "onHide", "onShow", "placement", "portal", "responsive", "scroll", "visible"]);
|
|
7071
|
+
var _j = useState(visible), _visible = _j[0], setVisible = _j[1];
|
|
7072
7072
|
var offcanvasRef = useRef(null);
|
|
7073
7073
|
var forkedRef = useForkedRef(ref, offcanvasRef);
|
|
7074
7074
|
useEffect(function () {
|
|
@@ -7087,19 +7087,27 @@ var COffcanvas = forwardRef(function (_a, ref) {
|
|
|
7087
7087
|
document.body.style.removeProperty('padding-right');
|
|
7088
7088
|
}
|
|
7089
7089
|
}, [_visible]);
|
|
7090
|
-
var
|
|
7090
|
+
var getTransitionClass = function (state) {
|
|
7091
|
+
return state === 'entering'
|
|
7092
|
+
? 'showing'
|
|
7093
|
+
: state === 'entered'
|
|
7094
|
+
? 'show'
|
|
7095
|
+
: state === 'exiting'
|
|
7096
|
+
? 'show hiding'
|
|
7097
|
+
: '';
|
|
7098
|
+
};
|
|
7099
|
+
var _className = classNames((_b = {},
|
|
7100
|
+
_b["offcanvas".concat(typeof responsive !== 'boolean' ? '-' + responsive : '')] = responsive,
|
|
7091
7101
|
_b["offcanvas-".concat(placement)] = placement,
|
|
7092
|
-
_b.show = _visible,
|
|
7093
7102
|
_b), className);
|
|
7094
|
-
var transitionStyles = {
|
|
7095
|
-
entering: { visibility: 'visible' },
|
|
7096
|
-
entered: { visibility: 'visible' },
|
|
7097
|
-
exiting: { visibility: 'visible' },
|
|
7098
|
-
exited: { visibility: 'hidden' },
|
|
7099
|
-
};
|
|
7100
7103
|
var handleDismiss = function () {
|
|
7101
7104
|
setVisible(false);
|
|
7102
7105
|
};
|
|
7106
|
+
var handleBackdropDismiss = function () {
|
|
7107
|
+
if (backdrop !== 'static') {
|
|
7108
|
+
setVisible(false);
|
|
7109
|
+
}
|
|
7110
|
+
};
|
|
7103
7111
|
var handleKeyDown = useCallback(function (event) {
|
|
7104
7112
|
if (event.key === 'Escape' && keyboard) {
|
|
7105
7113
|
return handleDismiss();
|
|
@@ -7107,7 +7115,7 @@ var COffcanvas = forwardRef(function (_a, ref) {
|
|
|
7107
7115
|
}, [ref, handleDismiss]);
|
|
7108
7116
|
var offcanvas = function (ref, state) {
|
|
7109
7117
|
return (React__default.createElement(React__default.Fragment, null,
|
|
7110
|
-
React__default.createElement("div", __assign({ className: _className, role: "dialog",
|
|
7118
|
+
React__default.createElement("div", __assign({ className: classNames(_className, getTransitionClass(state)), role: "dialog", tabIndex: -1, onKeyDown: handleKeyDown }, rest, { ref: ref }), children)));
|
|
7111
7119
|
};
|
|
7112
7120
|
return (React__default.createElement(React__default.Fragment, null,
|
|
7113
7121
|
React__default.createElement(Transition$1, { in: _visible, nodeRef: offcanvasRef, onEnter: onShow, onEntered: function () { var _a; return (_a = offcanvasRef.current) === null || _a === void 0 ? void 0 : _a.focus(); }, onExit: onHide, timeout: 300 }, function (state) {
|
|
@@ -7117,11 +7125,11 @@ var COffcanvas = forwardRef(function (_a, ref) {
|
|
|
7117
7125
|
}),
|
|
7118
7126
|
typeof window !== 'undefined' && portal
|
|
7119
7127
|
? backdrop &&
|
|
7120
|
-
createPortal(React__default.createElement(CBackdrop, { className: "offcanvas-backdrop", onClick:
|
|
7121
|
-
: backdrop && (React__default.createElement(CBackdrop, { className: "offcanvas-backdrop", onClick:
|
|
7128
|
+
createPortal(React__default.createElement(CBackdrop, { className: "offcanvas-backdrop", onClick: handleBackdropDismiss, visible: _visible }), document.body)
|
|
7129
|
+
: backdrop && (React__default.createElement(CBackdrop, { className: "offcanvas-backdrop", onClick: handleBackdropDismiss, visible: _visible }))));
|
|
7122
7130
|
});
|
|
7123
7131
|
COffcanvas.propTypes = {
|
|
7124
|
-
backdrop: propTypesExports.bool,
|
|
7132
|
+
backdrop: propTypesExports.oneOfType([propTypesExports.bool, propTypesExports.oneOf(['static'])]),
|
|
7125
7133
|
children: propTypesExports.node,
|
|
7126
7134
|
className: propTypesExports.string,
|
|
7127
7135
|
keyboard: propTypesExports.bool,
|
|
@@ -7130,6 +7138,10 @@ COffcanvas.propTypes = {
|
|
|
7130
7138
|
placement: propTypesExports.oneOf(['start', 'end', 'top', 'bottom'])
|
|
7131
7139
|
.isRequired,
|
|
7132
7140
|
portal: propTypesExports.bool,
|
|
7141
|
+
responsive: propTypesExports.oneOfType([
|
|
7142
|
+
propTypesExports.bool,
|
|
7143
|
+
propTypesExports.oneOf(['sm', 'md', 'lg', 'xl', 'xxl']),
|
|
7144
|
+
]),
|
|
7133
7145
|
scroll: propTypesExports.bool,
|
|
7134
7146
|
visible: propTypesExports.bool,
|
|
7135
7147
|
};
|