@coreui/react-pro 4.1.3 → 4.1.4
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/Types.d.ts +1 -1
- package/dist/components/dropdown/CDropdownToggleCustom.d.ts +15 -0
- package/dist/components/smart-table/CSmartTableInterface.d.ts +0 -9
- package/dist/index.d.ts +2 -1
- package/dist/index.es.js +115 -80
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +115 -79
- package/dist/index.js.map +1 -1
- package/package.json +8 -6
- package/src/components/Types.tsx +2 -2
- package/src/components/dropdown/CDropdown.tsx +2 -2
- package/src/components/dropdown/CDropdownToggleCustom.tsx +81 -0
- package/src/components/smart-table/CSmartTable.tsx +44 -96
- package/src/components/smart-table/CSmartTableCleaner.tsx +3 -16
- package/src/components/smart-table/CSmartTableInterface.tsx +0 -9
- package/src/index.ts +2 -0
package/README.md
CHANGED
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
|
|
44
44
|
Several quick start options are available:
|
|
45
45
|
|
|
46
|
-
- [Download the latest release](https://github.com/coreui/coreui-react/archive/v4.1.
|
|
46
|
+
- [Download the latest release](https://github.com/coreui/coreui-react/archive/v4.1.4.zip)
|
|
47
47
|
- Clone the repo: `git clone https://github.com/coreui/coreui-react.git`
|
|
48
48
|
- Install with [npm](https://www.npmjs.com/): `npm install @coreui/react`
|
|
49
49
|
- Install with [yarn](https://yarnpkg.com/): `yarn add @coreui/react`
|
|
@@ -10,5 +10,5 @@ export declare type Shapes = 'rounded' | 'rounded-top' | 'rounded-end' | 'rounde
|
|
|
10
10
|
export declare const shapePropType: PropTypes.Requireable<string>;
|
|
11
11
|
export declare type TextColors = Colors | 'white' | 'muted' | 'high-emphasis' | 'medium-emphasis' | 'disabled' | 'high-emphasis-inverse' | 'medium-emphasis-inverse' | 'disabled-inverse' | string;
|
|
12
12
|
export declare const textColorsPropType: PropTypes.Requireable<string>;
|
|
13
|
-
export declare type Triggers = 'hover' | 'focus' | 'click';
|
|
13
|
+
export declare type Triggers = 'hover' | 'focus' | 'click' | 'click-init';
|
|
14
14
|
export declare const triggerPropType: PropTypes.Requireable<Triggers>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { FC, HTMLAttributes } from 'react';
|
|
2
|
+
import { Triggers } from '../Types';
|
|
3
|
+
export interface CDropdownToggleCustomProps extends HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
/**
|
|
5
|
+
* Toggle the disabled state for the component.
|
|
6
|
+
*/
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
/**
|
|
9
|
+
* Sets which event handlers you’d like provided to your toggle prop. You can specify one trigger or an array of them.
|
|
10
|
+
*
|
|
11
|
+
* @type 'hover' | 'focus' | 'click'
|
|
12
|
+
*/
|
|
13
|
+
trigger?: Triggers | Triggers[];
|
|
14
|
+
}
|
|
15
|
+
export declare const CDropdownToggleCustom: FC<CDropdownToggleCustomProps>;
|
|
@@ -49,8 +49,6 @@ export interface SorterValue {
|
|
|
49
49
|
export interface TableFilter {
|
|
50
50
|
lazy?: boolean;
|
|
51
51
|
external?: boolean;
|
|
52
|
-
label?: string;
|
|
53
|
-
placeholder?: string;
|
|
54
52
|
}
|
|
55
53
|
export interface NoItemsView {
|
|
56
54
|
noResults?: string;
|
|
@@ -63,14 +61,9 @@ export interface CSmartTableProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
63
61
|
* @default 1
|
|
64
62
|
*/
|
|
65
63
|
activePage?: number;
|
|
66
|
-
/**
|
|
67
|
-
* A string of all className you want applied to the base component.
|
|
68
|
-
*/
|
|
69
|
-
className?: string;
|
|
70
64
|
/**
|
|
71
65
|
* When set, displays table cleaner above table, next to the table filter (or in place of table filter if `tableFilter` prop is not set)
|
|
72
66
|
* Cleaner resets `tableFilterValue`, `columnFilterValue`, `sorterValue`. If clean is possible it is clickable (`tabIndex="0"` `role="button"`, `color="danger"`), otherwise it is not clickable and transparent. Cleaner can be customized through the `cleaner` slot.
|
|
73
|
-
*
|
|
74
67
|
*/
|
|
75
68
|
cleaner?: boolean;
|
|
76
69
|
/**
|
|
@@ -264,8 +257,6 @@ export interface CSmartTableProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
264
257
|
* When set, displays table filter above table, allowing filtering by specific column.
|
|
265
258
|
*
|
|
266
259
|
* Column filter can be customized, by passing prop as object with additional options as keys. Available options:
|
|
267
|
-
* - placeholder (String) - Sets custom table filter placeholder.
|
|
268
|
-
* - label (String) - Sets custom table filter label.
|
|
269
260
|
* - external (Boolean) - Disables automatic filtering inside component.
|
|
270
261
|
* - lazy (Boolean) - Set to true to trigger filter updates only on change event.
|
|
271
262
|
*/
|
package/dist/index.d.ts
CHANGED
|
@@ -39,6 +39,7 @@ import { CDropdownItem } from './components/dropdown/CDropdownItem';
|
|
|
39
39
|
import { CDropdownItemPlain } from './components/dropdown/CDropdownItemPlain';
|
|
40
40
|
import { CDropdownMenu } from './components/dropdown/CDropdownMenu';
|
|
41
41
|
import { CDropdownToggle } from './components/dropdown/CDropdownToggle';
|
|
42
|
+
import { CDropdownToggleCustom } from './components/dropdown/CDropdownToggleCustom';
|
|
42
43
|
import { CCol } from './components/grid/CCol';
|
|
43
44
|
import { CContainer } from './components/grid/CContainer';
|
|
44
45
|
import { CRow } from './components/grid/CRow';
|
|
@@ -121,5 +122,5 @@ import { CToastClose } from './components/toast/CToastClose';
|
|
|
121
122
|
import { CToastHeader } from './components/toast/CToastHeader';
|
|
122
123
|
import { CToaster } from './components/toast/CToaster';
|
|
123
124
|
import { CTooltip } from './components/tooltip/CTooltip';
|
|
124
|
-
export { CAccordion, CAccordionBody, CAccordionButton, CAccordionCollapse, CAccordionHeader, CAccordionItem, CAlert, CAlertHeading, CAlertLink, CAvatar, CBadge, CBackdrop, CBreadcrumb, CBreadcrumbItem, CButton, CButtonGroup, CButtonToolbar, CCallout, CCard, CCardBody, CCardFooter, CCardHeader, CCardImage, CCardImageOverlay, CCardLink, CCardSubtitle, CCardText, CCardTitle, CCarousel, CCarouselCaption, CCarouselItem, CCloseButton, CCollapse, CDropdown, CDropdownDivider, CDropdownHeader, CDropdownItem, CDropdownItemPlain, CDropdownMenu, CDropdownToggle, CCol, CContainer, CRow, CFooter, CCardGroup, CForm, CFormCheck, CFormFeedback, CFormFloating, CFormInput, CFormLabel, CFormRange, CFormSelect, CFormSwitch, CFormText, CFormTextarea, CImage, CInputGroup, CInputGroupText, CHeader, CHeaderBrand, CHeaderDivider, CHeaderNav, CHeaderText, CHeaderToggler, CLink, CListGroup, CListGroupItem, CLoadingButton, CModal, CModalBody, CModalContent, CModalDialog, CModalFooter, CModalHeader, CModalTitle, CMultiSelect, CNav, CNavGroup, CNavGroupItems, CNavItem, CNavLink, CNavTitle, CNavbar, CNavbarBrand, CNavbarNav, CNavbarText, CNavbarToggler, CPagination, CPaginationItem, CPlaceholder, CPopover, CProgress, CProgressBar, COffcanvas, COffcanvasBody, COffcanvasHeader, COffcanvasTitle, CSmartPagination, CSidebar, CSidebarBrand, CSidebarFooter, CSidebarToggler, CSidebarHeader, CSidebarNav, CSmartTable, CSpinner, CTable, CTableBody, CTableCaption, CTableDataCell, CTableFoot, CTableHead, CTableHeaderCell, CTableRow, CTabContent, CTabPane, CToast, CToastBody, CToastClose, CToastHeader, CToaster, CTooltip, };
|
|
125
|
+
export { CAccordion, CAccordionBody, CAccordionButton, CAccordionCollapse, CAccordionHeader, CAccordionItem, CAlert, CAlertHeading, CAlertLink, CAvatar, CBadge, CBackdrop, CBreadcrumb, CBreadcrumbItem, CButton, CButtonGroup, CButtonToolbar, CCallout, CCard, CCardBody, CCardFooter, CCardHeader, CCardImage, CCardImageOverlay, CCardLink, CCardSubtitle, CCardText, CCardTitle, CCarousel, CCarouselCaption, CCarouselItem, CCloseButton, CCollapse, CDropdown, CDropdownDivider, CDropdownHeader, CDropdownItem, CDropdownItemPlain, CDropdownMenu, CDropdownToggle, CDropdownToggleCustom, CCol, CContainer, CRow, CFooter, CCardGroup, CForm, CFormCheck, CFormFeedback, CFormFloating, CFormInput, CFormLabel, CFormRange, CFormSelect, CFormSwitch, CFormText, CFormTextarea, CImage, CInputGroup, CInputGroupText, CHeader, CHeaderBrand, CHeaderDivider, CHeaderNav, CHeaderText, CHeaderToggler, CLink, CListGroup, CListGroupItem, CLoadingButton, CModal, CModalBody, CModalContent, CModalDialog, CModalFooter, CModalHeader, CModalTitle, CMultiSelect, CNav, CNavGroup, CNavGroupItems, CNavItem, CNavLink, CNavTitle, CNavbar, CNavbarBrand, CNavbarNav, CNavbarText, CNavbarToggler, CPagination, CPaginationItem, CPlaceholder, CPopover, CProgress, CProgressBar, COffcanvas, COffcanvasBody, COffcanvasHeader, COffcanvasTitle, CSmartPagination, CSidebar, CSidebarBrand, CSidebarFooter, CSidebarToggler, CSidebarHeader, CSidebarNav, CSmartTable, CSpinner, CTable, CTableBody, CTableCaption, CTableDataCell, CTableFoot, CTableHead, CTableHeaderCell, CTableRow, CTabContent, CTabPane, CToast, CToastBody, CToastClose, CToastHeader, CToaster, CTooltip, };
|
|
125
126
|
export * from './components/';
|
package/dist/index.es.js
CHANGED
|
@@ -852,7 +852,7 @@ var factoryWithTypeCheckers$1 = function(isValidElement, throwOnDirectAccess) {
|
|
|
852
852
|
if (checkerResult == null) {
|
|
853
853
|
return null;
|
|
854
854
|
}
|
|
855
|
-
if (checkerResult.data.
|
|
855
|
+
if (checkerResult.data && has$2(checkerResult.data, 'expectedType')) {
|
|
856
856
|
expectedTypes.push(checkerResult.data.expectedType);
|
|
857
857
|
}
|
|
858
858
|
}
|
|
@@ -2603,7 +2603,7 @@ var textColorsPropType = PropTypes$1.oneOfType([
|
|
|
2603
2603
|
PropTypes$1.oneOf(['white', 'muted']),
|
|
2604
2604
|
PropTypes$1.string,
|
|
2605
2605
|
]);
|
|
2606
|
-
var triggerPropType = PropTypes$1.oneOf(['hover', 'focus', 'click']);
|
|
2606
|
+
var triggerPropType = PropTypes$1.oneOf(['hover', 'focus', 'click', 'click-init']);
|
|
2607
2607
|
|
|
2608
2608
|
var CCloseButton = forwardRef(function (_a, ref) {
|
|
2609
2609
|
var className = _a.className, disabled = _a.disabled, white = _a.white, rest = __rest$1(_a, ["className", "disabled", "white"]);
|
|
@@ -3773,13 +3773,21 @@ function mapToStyles(_ref2) {
|
|
|
3773
3773
|
adaptive = _ref2.adaptive,
|
|
3774
3774
|
roundOffsets = _ref2.roundOffsets,
|
|
3775
3775
|
isFixed = _ref2.isFixed;
|
|
3776
|
+
var _offsets$x = offsets.x,
|
|
3777
|
+
x = _offsets$x === void 0 ? 0 : _offsets$x,
|
|
3778
|
+
_offsets$y = offsets.y,
|
|
3779
|
+
y = _offsets$y === void 0 ? 0 : _offsets$y;
|
|
3776
3780
|
|
|
3777
|
-
var _ref3 =
|
|
3778
|
-
|
|
3779
|
-
|
|
3780
|
-
|
|
3781
|
-
|
|
3781
|
+
var _ref3 = typeof roundOffsets === 'function' ? roundOffsets({
|
|
3782
|
+
x: x,
|
|
3783
|
+
y: y
|
|
3784
|
+
}) : {
|
|
3785
|
+
x: x,
|
|
3786
|
+
y: y
|
|
3787
|
+
};
|
|
3782
3788
|
|
|
3789
|
+
x = _ref3.x;
|
|
3790
|
+
y = _ref3.y;
|
|
3783
3791
|
var hasX = offsets.hasOwnProperty('x');
|
|
3784
3792
|
var hasY = offsets.hasOwnProperty('y');
|
|
3785
3793
|
var sideX = left;
|
|
@@ -3824,6 +3832,17 @@ function mapToStyles(_ref2) {
|
|
|
3824
3832
|
position: position
|
|
3825
3833
|
}, adaptive && unsetSides);
|
|
3826
3834
|
|
|
3835
|
+
var _ref4 = roundOffsets === true ? roundOffsetsByDPR({
|
|
3836
|
+
x: x,
|
|
3837
|
+
y: y
|
|
3838
|
+
}) : {
|
|
3839
|
+
x: x,
|
|
3840
|
+
y: y
|
|
3841
|
+
};
|
|
3842
|
+
|
|
3843
|
+
x = _ref4.x;
|
|
3844
|
+
y = _ref4.y;
|
|
3845
|
+
|
|
3827
3846
|
if (gpuAcceleration) {
|
|
3828
3847
|
var _Object$assign;
|
|
3829
3848
|
|
|
@@ -3833,9 +3852,9 @@ function mapToStyles(_ref2) {
|
|
|
3833
3852
|
return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + "px" : '', _Object$assign2[sideX] = hasX ? x + "px" : '', _Object$assign2.transform = '', _Object$assign2));
|
|
3834
3853
|
}
|
|
3835
3854
|
|
|
3836
|
-
function computeStyles(
|
|
3837
|
-
var state =
|
|
3838
|
-
options =
|
|
3855
|
+
function computeStyles(_ref5) {
|
|
3856
|
+
var state = _ref5.state,
|
|
3857
|
+
options = _ref5.options;
|
|
3839
3858
|
var _options$gpuAccelerat = options.gpuAcceleration,
|
|
3840
3859
|
gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,
|
|
3841
3860
|
_options$adaptive = options.adaptive,
|
|
@@ -4134,7 +4153,7 @@ function getClippingParents(element) {
|
|
|
4134
4153
|
|
|
4135
4154
|
|
|
4136
4155
|
return clippingParents.filter(function (clippingParent) {
|
|
4137
|
-
return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body'
|
|
4156
|
+
return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';
|
|
4138
4157
|
});
|
|
4139
4158
|
} // Gets the maximum area that the element is visible in due to any number of
|
|
4140
4159
|
// clipping parents
|
|
@@ -5634,11 +5653,11 @@ var CDropdown = forwardRef(function (_a, ref) {
|
|
|
5634
5653
|
useEffect(function () {
|
|
5635
5654
|
_visible &&
|
|
5636
5655
|
setTimeout(function () {
|
|
5637
|
-
window.addEventListener('
|
|
5656
|
+
window.addEventListener('mouseup', handleClickOutside);
|
|
5638
5657
|
window.addEventListener('keyup', handleKeyup);
|
|
5639
5658
|
});
|
|
5640
5659
|
return function () {
|
|
5641
|
-
window.removeEventListener('
|
|
5660
|
+
window.removeEventListener('mouseup', handleClickOutside);
|
|
5642
5661
|
window.removeEventListener('keyup', handleKeyup);
|
|
5643
5662
|
};
|
|
5644
5663
|
}, [_visible]);
|
|
@@ -5832,6 +5851,46 @@ CDropdownToggle.propTypes = {
|
|
|
5832
5851
|
};
|
|
5833
5852
|
CDropdownToggle.displayName = 'CDropdownToggle';
|
|
5834
5853
|
|
|
5854
|
+
var CDropdownToggleCustom = function (_a) {
|
|
5855
|
+
var children = _a.children, className = _a.className, disabled = _a.disabled, _b = _a.trigger, trigger = _b === void 0 ? 'click' : _b, rest = __rest$1(_a, ["children", "className", "disabled", "trigger"]);
|
|
5856
|
+
var _c = useContext(CDropdownContext), popper = _c.popper, visible = _c.visible, setVisible = _c.setVisible;
|
|
5857
|
+
var _className = classNames$1(className);
|
|
5858
|
+
var triggers = __assign$1(__assign$1(__assign$1({}, ((trigger === 'click' || trigger.includes('click')) &&
|
|
5859
|
+
!disabled && {
|
|
5860
|
+
onClick: function (event) {
|
|
5861
|
+
event.preventDefault();
|
|
5862
|
+
setVisible(!visible);
|
|
5863
|
+
},
|
|
5864
|
+
})), ((trigger === 'click-init' || trigger.includes('click-init')) &&
|
|
5865
|
+
!disabled && {
|
|
5866
|
+
onClick: function (event) {
|
|
5867
|
+
event.preventDefault();
|
|
5868
|
+
setVisible(true);
|
|
5869
|
+
},
|
|
5870
|
+
})), ((trigger === 'focus' || trigger.includes('focus')) &&
|
|
5871
|
+
!disabled && {
|
|
5872
|
+
onFocus: function () { return setVisible(true); },
|
|
5873
|
+
onBlur: function () { return setVisible(false); },
|
|
5874
|
+
}));
|
|
5875
|
+
var togglerProps = __assign$1({ className: _className, 'aria-expanded': visible }, triggers);
|
|
5876
|
+
// We use any because Toggler can be `a` as well as `button`.
|
|
5877
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
5878
|
+
var Toggler = function (ref) {
|
|
5879
|
+
return (React__default.createElement("div", __assign$1({}, togglerProps, rest, { ref: ref }), children));
|
|
5880
|
+
};
|
|
5881
|
+
return popper ? React__default.createElement(Reference, null, function (_a) {
|
|
5882
|
+
var ref = _a.ref;
|
|
5883
|
+
return Toggler(ref);
|
|
5884
|
+
}) : Toggler();
|
|
5885
|
+
};
|
|
5886
|
+
CDropdownToggleCustom.propTypes = {
|
|
5887
|
+
children: PropTypes$1.node,
|
|
5888
|
+
className: PropTypes$1.string,
|
|
5889
|
+
disabled: PropTypes$1.bool,
|
|
5890
|
+
trigger: triggerPropType,
|
|
5891
|
+
};
|
|
5892
|
+
CDropdownToggleCustom.displayName = 'CDropdownToggleCustom';
|
|
5893
|
+
|
|
5835
5894
|
var BREAKPOINTS$3 = [
|
|
5836
5895
|
'xxl',
|
|
5837
5896
|
'xl',
|
|
@@ -7690,6 +7749,14 @@ CSidebarHeader.propTypes = {
|
|
|
7690
7749
|
};
|
|
7691
7750
|
CSidebarHeader.displayName = 'CSidebarHeader';
|
|
7692
7751
|
|
|
7752
|
+
const cilArrowBottom = ["512 512","<polygon fill='var(--ci-primary-color, currentColor)' points='367.997 338.75 271.999 434.747 271.999 17.503 239.999 17.503 239.999 434.745 144.003 338.75 121.376 361.377 256 496 390.624 361.377 367.997 338.75' class='ci-primary'/>"];
|
|
7753
|
+
|
|
7754
|
+
const cilArrowTop = ["512 512","<polygon fill='var(--ci-primary-color, currentColor)' points='390.624 150.625 256 16 121.376 150.625 144.004 173.252 240.001 77.254 240.001 495.236 272.001 495.236 272.001 77.257 367.996 173.252 390.624 150.625' class='ci-primary'/>"];
|
|
7755
|
+
|
|
7756
|
+
const cilFilterX = ["512 512","<polygon fill='var(--ci-primary-color, currentColor)' points='40 16 40 53.828 109.024 136 150.815 136 76.896 48 459.51 48 304 242.388 304 401.373 241.373 464 240 464 240 368 208 368 208 496 254.627 496 336 414.627 336 253.612 496 53.612 496 16 40 16' class='ci-primary'/><polygon fill='var(--ci-primary-color, currentColor)' points='166.403 248.225 226.864 187.763 204.237 165.135 143.775 225.597 83.313 165.135 60.687 187.763 121.148 248.225 60.687 308.687 83.313 331.314 143.775 270.852 204.237 331.314 226.864 308.687 166.403 248.225' class='ci-primary'/>"];
|
|
7757
|
+
|
|
7758
|
+
const cilSwapVertical = ["512 512","<polygon fill='var(--ci-primary-color, currentColor)' points='384 433.373 384 160 352 160 352 434.51 282.177 364.687 259.55 387.313 367.432 495.196 475.313 387.313 452.687 364.687 384 433.373' class='ci-primary'/><polygon fill='var(--ci-primary-color, currentColor)' points='159.432 17.372 51.55 125.255 74.177 147.882 144 78.059 144 352 176 352 176 79.195 244.687 147.882 267.313 125.255 159.432 17.372' class='ci-primary'/>"];
|
|
7759
|
+
|
|
7693
7760
|
var CElementCover = forwardRef(function (_a, ref) {
|
|
7694
7761
|
var children = _a.children, className = _a.className, boundaries = _a.boundaries, _b = _a.opacity, opacity = _b === void 0 ? 0.4 : _b, rest = __rest$1(_a, ["children", "className", "boundaries", "opacity"]);
|
|
7695
7762
|
var elementCoverRef = useRef(null);
|
|
@@ -9170,10 +9237,7 @@ CIcon.propTypes = {
|
|
|
9170
9237
|
CIcon.displayName = 'CIcon';
|
|
9171
9238
|
|
|
9172
9239
|
var CSmartTableCleaner = forwardRef(function (_a, ref) {
|
|
9173
|
-
var _b = _a.content, content = _b === void 0 ?
|
|
9174
|
-
'512 512',
|
|
9175
|
-
'<polygon fill="var(--ci-primary-color, currentColor)" points="40 16 40 53.828 109.024 136 150.815 136 76.896 48 459.51 48 304 242.388 304 401.373 241.373 464 240 464 240 368 208 368 208 496 254.627 496 336 414.627 336 253.612 496 53.612 496 16 40 16" class="ci-primary"></polygon><polygon fill="var(--ci-primary-color, currentColor)" points="166.403 248.225 226.864 187.763 204.237 165.135 143.775 225.597 83.313 165.135 60.687 187.763 121.148 248.225 60.687 308.687 83.313 331.314 143.775 270.852 204.237 331.314 226.864 308.687 166.403 248.225" class="ci-primary"></polygon>',
|
|
9176
|
-
] })) : _b, isFiltered = _a.isFiltered, rest = __rest$1(_a, ["content", "isFiltered"]);
|
|
9240
|
+
var _b = _a.content, content = _b === void 0 ? React__default.createElement(CIcon, { width: 18, icon: cilFilterX }) : _b, isFiltered = _a.isFiltered, rest = __rest$1(_a, ["content", "isFiltered"]);
|
|
9177
9241
|
return (React__default.createElement("button", __assign$1({ type: "button", className: "btn btn-transparent" }, (!isFiltered && {
|
|
9178
9242
|
disabled: true,
|
|
9179
9243
|
tabIndex: -1,
|
|
@@ -9370,46 +9434,34 @@ CSmartTableItemsPerPageSelector.displayName = 'CSmartTableItemsPerPageSelector';
|
|
|
9370
9434
|
|
|
9371
9435
|
var CSmartTable = forwardRef(function (_a, ref) {
|
|
9372
9436
|
var _b = _a.activePage, activePage = _b === void 0 ? 1 : _b, cleaner = _a.cleaner, clickableRows = _a.clickableRows, columnFilter = _a.columnFilter, columnFilterValue = _a.columnFilterValue, // TODO: consider to use only columnFilter prop
|
|
9373
|
-
columns = _a.columns, columnSorter = _a.columnSorter, footer = _a.footer, _c = _a.header, header = _c === void 0 ? true : _c, items = _a.items, _d = _a.itemsPerPage, itemsPerPage = _d === void 0 ? 10 : _d, _e = _a.itemsPerPageLabel, itemsPerPageLabel = _e === void 0 ? 'Items per page:' : _e, _f = _a.itemsPerPageOptions, itemsPerPageOptions = _f === void 0 ? [5, 10, 20, 50] : _f, itemsPerPageSelect = _a.itemsPerPageSelect, loading = _a.loading, _g = _a.noItemsLabel, noItemsLabel = _g === void 0 ? 'No items found' : _g, onActivePageChange = _a.onActivePageChange, onColumnFilterChange = _a.onColumnFilterChange, onFilteredItemsChange = _a.onFilteredItemsChange, onItemsPerPageChange = _a.onItemsPerPageChange, onRowClick = _a.onRowClick, onSelectedItemsChange = _a.onSelectedItemsChange, onSorterChange = _a.onSorterChange, onTableFilterChange = _a.onTableFilterChange, pagination = _a.pagination, paginationProps = _a.paginationProps, scopedColumns = _a.scopedColumns, selectable = _a.selectable, sorterValue = _a.sorterValue, _h = _a.sortingIcon, sortingIcon = _h === void 0 ? (React__default.createElement(CIcon, { width: 18, icon:
|
|
9374
|
-
'512 512',
|
|
9375
|
-
'<polygon fill="var(--ci-primary-color, currentColor)" points="384 433.373 384 160 352 160 352 434.51 282.177 364.687 259.55 387.313 367.432 495.196 475.313 387.313 452.687 364.687 384 433.373" class="ci-primary"></polygon><polygon fill="var(--ci-primary-color, currentColor)" points="159.432 17.372 51.55 125.255 74.177 147.882 144 78.059 144 352 176 352 176 79.195 244.687 147.882 267.313 125.255 159.432 17.372" class="ci-primary"></polygon>',
|
|
9376
|
-
], key: "csv" })) : _h, _j = _a.sortingIconAscending, sortingIconAscending = _j === void 0 ? (React__default.createElement(CIcon, { width: 18, icon: [
|
|
9377
|
-
'512 512',
|
|
9378
|
-
'<polygon fill="var(--ci-primary-color, currentColor)" points="390.624 150.625 256 16 121.376 150.625 144.004 173.252 240.001 77.254 240.001 495.236 272.001 495.236 272.001 77.257 367.996 173.252 390.624 150.625" class="ci-primary"></polygon>',
|
|
9379
|
-
], key: "cat" })) : _j, _k = _a.sortingIconDescending, sortingIconDescending = _k === void 0 ? (React__default.createElement(CIcon, { width: 18, icon: [
|
|
9380
|
-
'512 512',
|
|
9381
|
-
'<polygon fill="var(--ci-primary-color, currentColor)" points="367.997 338.75 271.999 434.747 271.999 17.503 239.999 17.503 239.999 434.745 144.003 338.75 121.376 361.377 256 496 390.624 361.377 367.997 338.75" class="ci-primary"></polygon>',
|
|
9382
|
-
], key: "cab" })) : _k, tableBodyProps = _a.tableBodyProps, tableFootProps = _a.tableFootProps, tableFilter = _a.tableFilter, _l = _a.tableFilterLabel, tableFilterLabel = _l === void 0 ? 'Filter:' : _l, _m = _a.tableFilterPlaceholder, tableFilterPlaceholder = _m === void 0 ? 'type string...' : _m, tableFilterValue = _a.tableFilterValue, // TODO: consider to use only tableFilter prop
|
|
9437
|
+
columns = _a.columns, columnSorter = _a.columnSorter, footer = _a.footer, _c = _a.header, header = _c === void 0 ? true : _c, items = _a.items, _d = _a.itemsPerPage, itemsPerPage = _d === void 0 ? 10 : _d, _e = _a.itemsPerPageLabel, itemsPerPageLabel = _e === void 0 ? 'Items per page:' : _e, _f = _a.itemsPerPageOptions, itemsPerPageOptions = _f === void 0 ? [5, 10, 20, 50] : _f, itemsPerPageSelect = _a.itemsPerPageSelect, loading = _a.loading, _g = _a.noItemsLabel, noItemsLabel = _g === void 0 ? 'No items found' : _g, onActivePageChange = _a.onActivePageChange, onColumnFilterChange = _a.onColumnFilterChange, onFilteredItemsChange = _a.onFilteredItemsChange, onItemsPerPageChange = _a.onItemsPerPageChange, onRowClick = _a.onRowClick, onSelectedItemsChange = _a.onSelectedItemsChange, onSorterChange = _a.onSorterChange, onTableFilterChange = _a.onTableFilterChange, pagination = _a.pagination, paginationProps = _a.paginationProps, scopedColumns = _a.scopedColumns, selectable = _a.selectable, sorterValue = _a.sorterValue, _h = _a.sortingIcon, sortingIcon = _h === void 0 ? React__default.createElement(CIcon, { width: 18, icon: cilSwapVertical, key: "csv" }) : _h, _j = _a.sortingIconAscending, sortingIconAscending = _j === void 0 ? React__default.createElement(CIcon, { width: 18, icon: cilArrowTop, key: "cat" }) : _j, _k = _a.sortingIconDescending, sortingIconDescending = _k === void 0 ? React__default.createElement(CIcon, { width: 18, icon: cilArrowBottom, key: "cab" }) : _k, tableBodyProps = _a.tableBodyProps, tableFootProps = _a.tableFootProps, tableFilter = _a.tableFilter, _l = _a.tableFilterLabel, tableFilterLabel = _l === void 0 ? 'Filter:' : _l, _m = _a.tableFilterPlaceholder, tableFilterPlaceholder = _m === void 0 ? 'type string...' : _m, tableFilterValue = _a.tableFilterValue, // TODO: consider to use only tableFilter prop
|
|
9383
9438
|
tableHeadProps = _a.tableHeadProps, tableProps = _a.tableProps, rest = __rest$1(_a, ["activePage", "cleaner", "clickableRows", "columnFilter", "columnFilterValue", "columns", "columnSorter", "footer", "header", "items", "itemsPerPage", "itemsPerPageLabel", "itemsPerPageOptions", "itemsPerPageSelect", "loading", "noItemsLabel", "onActivePageChange", "onColumnFilterChange", "onFilteredItemsChange", "onItemsPerPageChange", "onRowClick", "onSelectedItemsChange", "onSorterChange", "onTableFilterChange", "pagination", "paginationProps", "scopedColumns", "selectable", "sorterValue", "sortingIcon", "sortingIconAscending", "sortingIconDescending", "tableBodyProps", "tableFootProps", "tableFilter", "tableFilterLabel", "tableFilterPlaceholder", "tableFilterValue", "tableHeadProps", "tableProps"]);
|
|
9384
9439
|
// instance data
|
|
9385
|
-
var compData = useRef({ firstRun: true, columnFiltered: 0, changeItems: 0 }).current;
|
|
9386
|
-
var previousSorterValue = useRef();
|
|
9387
|
-
var previousItemsValue = useRef();
|
|
9388
9440
|
var _o = useState(activePage), _activePage = _o[0], setActivePage = _o[1];
|
|
9389
9441
|
var _p = useState([]), _items = _p[0], setItems = _p[1];
|
|
9390
9442
|
var _q = useState(itemsPerPage), _itemsPerPage = _q[0], setItemsPerPage = _q[1];
|
|
9391
|
-
var _r = useState(
|
|
9443
|
+
var _r = useState({}), columnFilterState = _r[0], setColumnFilterState = _r[1];
|
|
9392
9444
|
var _s = useState(), selectedAll = _s[0], setSelectedAll = _s[1];
|
|
9393
|
-
var _t = useState(
|
|
9445
|
+
var _t = useState({}), sorterState = _t[0], setSorterState = _t[1];
|
|
9394
9446
|
var _u = useState(tableFilterValue ? tableFilterValue : ''), tableFilterState = _u[0], setTableFilterState = _u[1];
|
|
9447
|
+
// watch
|
|
9395
9448
|
useMemo(function () {
|
|
9396
|
-
if (
|
|
9397
|
-
|
|
9398
|
-
setSorterState(__assign$1({}, sorterValue));
|
|
9449
|
+
if (items && items.length < _itemsPerPage * _activePage - _itemsPerPage) {
|
|
9450
|
+
setActivePage(1);
|
|
9399
9451
|
}
|
|
9400
|
-
|
|
9452
|
+
// Create the internal array of items
|
|
9453
|
+
Array.isArray(items) &&
|
|
9454
|
+
setItems(items === null || items === void 0 ? void 0 : items.map(function (item, index) {
|
|
9455
|
+
return __assign$1(__assign$1({}, item), { _id: index });
|
|
9456
|
+
}));
|
|
9457
|
+
}, [JSON.stringify(items)]);
|
|
9401
9458
|
useMemo(function () {
|
|
9402
|
-
|
|
9403
|
-
|
|
9404
|
-
|
|
9405
|
-
|
|
9406
|
-
|
|
9407
|
-
|
|
9408
|
-
setItems(items === null || items === void 0 ? void 0 : items.map(function (item, index) {
|
|
9409
|
-
return __assign$1(__assign$1({}, item), { _id: index });
|
|
9410
|
-
}));
|
|
9411
|
-
}
|
|
9412
|
-
}, [items]);
|
|
9459
|
+
columnFilterValue && setColumnFilterState(columnFilterValue);
|
|
9460
|
+
}, [JSON.stringify(columnFilterValue)]);
|
|
9461
|
+
useMemo(function () {
|
|
9462
|
+
setSorterState(__assign$1({}, sorterValue));
|
|
9463
|
+
}, [JSON.stringify(sorterValue)]);
|
|
9464
|
+
useMemo(function () { return setItemsPerPage(itemsPerPage); }, [itemsPerPage]);
|
|
9413
9465
|
// functions
|
|
9414
9466
|
var isSortable = function (i) {
|
|
9415
9467
|
var isDataColumn = itemsDataColumns.includes(rawColumnNames[i]);
|
|
@@ -9491,15 +9543,7 @@ var CSmartTable = forwardRef(function (_a, ref) {
|
|
|
9491
9543
|
: genCols; //! || el
|
|
9492
9544
|
var itemsDataColumns = rawColumnNames.filter(function (name) { return genCols.includes(name); });
|
|
9493
9545
|
// variables
|
|
9494
|
-
useMemo(function () {
|
|
9495
|
-
compData.columnFiltered++;
|
|
9496
|
-
}, [
|
|
9497
|
-
JSON.stringify(columnFilter),
|
|
9498
|
-
JSON.stringify(columnFilterState),
|
|
9499
|
-
itemsDataColumns.join(''),
|
|
9500
|
-
compData.changeItems,
|
|
9501
|
-
]);
|
|
9502
|
-
var columnFiltered = useMemo(function () {
|
|
9546
|
+
var filteredColumns = useMemo(function () {
|
|
9503
9547
|
var items = _items;
|
|
9504
9548
|
if (columnFilter && typeof columnFilter === 'object' && columnFilter.external) {
|
|
9505
9549
|
return items;
|
|
@@ -9514,9 +9558,9 @@ var CSmartTable = forwardRef(function (_a, ref) {
|
|
|
9514
9558
|
}
|
|
9515
9559
|
});
|
|
9516
9560
|
return items;
|
|
9517
|
-
}, [
|
|
9518
|
-
var
|
|
9519
|
-
var items =
|
|
9561
|
+
}, [JSON.stringify(columnFilterState), JSON.stringify(_items)]);
|
|
9562
|
+
var filteredTable = useMemo(function () {
|
|
9563
|
+
var items = filteredColumns;
|
|
9520
9564
|
if (!tableFilterState ||
|
|
9521
9565
|
(tableFilter && typeof tableFilter === 'object' && tableFilter.external)) {
|
|
9522
9566
|
return items;
|
|
@@ -9527,23 +9571,16 @@ var CSmartTable = forwardRef(function (_a, ref) {
|
|
|
9527
9571
|
return !!itemsDataColumns.find(function (key) { return valueContainFilter(item[key]); });
|
|
9528
9572
|
});
|
|
9529
9573
|
return items;
|
|
9530
|
-
}, [
|
|
9531
|
-
compData.columnFiltered,
|
|
9532
|
-
tableFilterState,
|
|
9533
|
-
JSON.stringify(tableFilter),
|
|
9534
|
-
JSON.stringify(columnFiltered),
|
|
9535
|
-
]);
|
|
9574
|
+
}, [tableFilterState, JSON.stringify(tableFilterValue), JSON.stringify(filteredColumns)]);
|
|
9536
9575
|
var sortedItems = useMemo(function () {
|
|
9537
9576
|
var col = sorterState === null || sorterState === void 0 ? void 0 : sorterState.column;
|
|
9538
9577
|
if (!col ||
|
|
9539
9578
|
!itemsDataColumns.includes(col) ||
|
|
9540
9579
|
(columnSorter && typeof columnSorter === 'object' && columnSorter.external)) {
|
|
9541
|
-
return
|
|
9580
|
+
return filteredTable;
|
|
9542
9581
|
}
|
|
9543
|
-
//if values in column are to be sorted by numeric value they all have to be type number
|
|
9544
|
-
// const flip = sorterState.asc ? 1 : -1
|
|
9545
9582
|
var flip = sorterState.state === 'asc' ? 1 : sorterState.state === 'desc' ? -1 : 0;
|
|
9546
|
-
var sorted =
|
|
9583
|
+
var sorted = filteredTable.slice().sort(function (item, item2) {
|
|
9547
9584
|
var value = item[col];
|
|
9548
9585
|
var value2 = item2[col];
|
|
9549
9586
|
var a = typeof value === 'number' ? value : String(value).toLowerCase();
|
|
@@ -9551,7 +9588,13 @@ var CSmartTable = forwardRef(function (_a, ref) {
|
|
|
9551
9588
|
return a > b ? 1 * flip : b > a ? -1 * flip : 0;
|
|
9552
9589
|
});
|
|
9553
9590
|
return sorted;
|
|
9554
|
-
}, [
|
|
9591
|
+
}, [
|
|
9592
|
+
JSON.stringify(filteredTable),
|
|
9593
|
+
JSON.stringify(sorterState),
|
|
9594
|
+
JSON.stringify(columnSorter),
|
|
9595
|
+
JSON.stringify(filteredColumns),
|
|
9596
|
+
JSON.stringify(_items),
|
|
9597
|
+
]);
|
|
9555
9598
|
var numberOfPages = _itemsPerPage ? Math.ceil(sortedItems.length / _itemsPerPage) : 1;
|
|
9556
9599
|
var firstItemOnActivePageIndex = _activePage ? (_activePage - 1) * _itemsPerPage : 0;
|
|
9557
9600
|
var itemsOnActivePage = sortedItems.slice(firstItemOnActivePageIndex, firstItemOnActivePageIndex + _itemsPerPage);
|
|
@@ -9575,16 +9618,8 @@ var CSmartTable = forwardRef(function (_a, ref) {
|
|
|
9575
9618
|
onTableFilterChange && onTableFilterChange(tableFilterState);
|
|
9576
9619
|
}, [tableFilterState]);
|
|
9577
9620
|
useEffect(function () {
|
|
9578
|
-
|
|
9621
|
+
onFilteredItemsChange && onFilteredItemsChange(sortedItems);
|
|
9579
9622
|
}, [JSON.stringify(sortedItems)]);
|
|
9580
|
-
// watch
|
|
9581
|
-
useMemo(function () { return setItemsPerPage(itemsPerPage); }, [itemsPerPage]);
|
|
9582
|
-
useMemo(function () {
|
|
9583
|
-
return JSON.stringify(previousSorterValue.current) !== JSON.stringify(sorterValue) &&
|
|
9584
|
-
setSorterState(__assign$1({}, sorterValue));
|
|
9585
|
-
}, [sorterValue]);
|
|
9586
|
-
useMemo(function () { return setColumnFilterState(__assign$1({}, columnFilterValue)); }, [columnFilterValue]);
|
|
9587
|
-
compData.firstRun = false;
|
|
9588
9623
|
var handleRowChecked = function (id, value) {
|
|
9589
9624
|
var newArr = __spreadArray([], _items, true);
|
|
9590
9625
|
newArr[id]._selected = value;
|
|
@@ -10066,5 +10101,5 @@ CWidgetStatsF.propTypes = {
|
|
|
10066
10101
|
};
|
|
10067
10102
|
CWidgetStatsF.displayName = 'CWidgetStatsF';
|
|
10068
10103
|
|
|
10069
|
-
export { CAccordion, CAccordionBody, CAccordionButton, CAccordionCollapse, CAccordionHeader, CAccordionItem, CAlert, CAlertHeading, CAlertLink, CAvatar, CBackdrop, CBadge, CBreadcrumb, CBreadcrumbItem, CButton, CButtonGroup, CButtonToolbar, CCallout, CCard, CCardBody, CCardFooter, CCardGroup, CCardHeader, CCardImage, CCardImageOverlay, CCardLink, CCardSubtitle, CCardText, CCardTitle, CCarousel, CCarouselCaption, CCarouselItem, CCloseButton, CCol, CCollapse, CContainer, CDropdown, CDropdownDivider, CDropdownHeader, CDropdownItem, CDropdownItemPlain, CDropdownMenu, CDropdownToggle, CFooter, CForm, CFormCheck, CFormFeedback, CFormFloating, CFormInput, CFormLabel, CFormRange, CFormSelect, CFormSwitch, CFormText, CFormTextarea, CHeader, CHeaderBrand, CHeaderDivider, CHeaderNav, CHeaderText, CHeaderToggler, CImage, CInputGroup, CInputGroupText, CLink, CListGroup, CListGroupItem, CLoadingButton, CModal, CModalBody, CModalContent, CModalDialog, CModalFooter, CModalHeader, CModalTitle, CMultiSelect, CNav, CNavGroup, CNavGroupItems, CNavItem, CNavLink, CNavTitle, CNavbar, CNavbarBrand, CNavbarNav, CNavbarText, CNavbarToggler, COffcanvas, COffcanvasBody, COffcanvasHeader, COffcanvasTitle, CPagination, CPaginationItem, CPlaceholder, CPopover, CProgress, CProgressBar, CRow, CSidebar, CSidebarBrand, CSidebarFooter, CSidebarHeader, CSidebarNav, CSidebarToggler, CSmartPagination, CSmartTable, CSpinner, CTabContent, CTabPane, CTable, CTableBody, CTableCaption, CTableDataCell, CTableFoot, CTableHead, CTableHeaderCell, CTableRow, CToast, CToastBody, CToastClose, CToastHeader, CToaster, CTooltip, CWidgetStatsA, CWidgetStatsB, CWidgetStatsC, CWidgetStatsD, CWidgetStatsE, CWidgetStatsF };
|
|
10104
|
+
export { CAccordion, CAccordionBody, CAccordionButton, CAccordionCollapse, CAccordionHeader, CAccordionItem, CAlert, CAlertHeading, CAlertLink, CAvatar, CBackdrop, CBadge, CBreadcrumb, CBreadcrumbItem, CButton, CButtonGroup, CButtonToolbar, CCallout, CCard, CCardBody, CCardFooter, CCardGroup, CCardHeader, CCardImage, CCardImageOverlay, CCardLink, CCardSubtitle, CCardText, CCardTitle, CCarousel, CCarouselCaption, CCarouselItem, CCloseButton, CCol, CCollapse, CContainer, CDropdown, CDropdownDivider, CDropdownHeader, CDropdownItem, CDropdownItemPlain, CDropdownMenu, CDropdownToggle, CDropdownToggleCustom, CFooter, CForm, CFormCheck, CFormFeedback, CFormFloating, CFormInput, CFormLabel, CFormRange, CFormSelect, CFormSwitch, CFormText, CFormTextarea, CHeader, CHeaderBrand, CHeaderDivider, CHeaderNav, CHeaderText, CHeaderToggler, CImage, CInputGroup, CInputGroupText, CLink, CListGroup, CListGroupItem, CLoadingButton, CModal, CModalBody, CModalContent, CModalDialog, CModalFooter, CModalHeader, CModalTitle, CMultiSelect, CNav, CNavGroup, CNavGroupItems, CNavItem, CNavLink, CNavTitle, CNavbar, CNavbarBrand, CNavbarNav, CNavbarText, CNavbarToggler, COffcanvas, COffcanvasBody, COffcanvasHeader, COffcanvasTitle, CPagination, CPaginationItem, CPlaceholder, CPopover, CProgress, CProgressBar, CRow, CSidebar, CSidebarBrand, CSidebarFooter, CSidebarHeader, CSidebarNav, CSidebarToggler, CSmartPagination, CSmartTable, CSpinner, CTabContent, CTabPane, CTable, CTableBody, CTableCaption, CTableDataCell, CTableFoot, CTableHead, CTableHeaderCell, CTableRow, CToast, CToastBody, CToastClose, CToastHeader, CToaster, CTooltip, CWidgetStatsA, CWidgetStatsB, CWidgetStatsC, CWidgetStatsD, CWidgetStatsE, CWidgetStatsF };
|
|
10070
10105
|
//# sourceMappingURL=index.es.js.map
|