@coreui/react-pro 4.1.0 → 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/modal/CModal.d.ts +1 -0
- package/dist/components/popover/CPopover.d.ts +2 -2
- package/dist/components/smart-table/CSmartTableBody.d.ts +3 -3
- package/dist/components/smart-table/CSmartTableInterface.d.ts +9 -15
- package/dist/components/tooltip/CTooltip.d.ts +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.es.js +193 -114
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +193 -113
- package/dist/index.js.map +1 -1
- package/package.json +10 -8
- 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/modal/CModal.tsx +42 -19
- package/src/components/modal/__tests__/CModal.spec.tsx +1 -1
- package/src/components/modal/__tests__/__snapshots__/CModal.spec.tsx.snap +2 -10
- package/src/components/popover/CPopover.tsx +4 -4
- package/src/components/smart-table/CSmartTable.tsx +57 -103
- package/src/components/smart-table/CSmartTableBody.tsx +9 -4
- package/src/components/smart-table/CSmartTableCleaner.tsx +3 -16
- package/src/components/smart-table/CSmartTableHead.tsx +1 -1
- package/src/components/smart-table/CSmartTableInterface.tsx +10 -15
- package/src/components/tooltip/CTooltip.tsx +2 -2
- package/src/index.ts +2 -0
- package/src/utils/hooks/useForkedRef.ts +5 -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>;
|
|
@@ -52,6 +52,7 @@ export interface CModalProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
52
52
|
* Remove animation to create modal that simply appear rather than fade in to view.
|
|
53
53
|
*/
|
|
54
54
|
transition?: boolean;
|
|
55
|
+
unmountOnClose?: boolean;
|
|
55
56
|
/**
|
|
56
57
|
* Toggle the visibility of modal component.
|
|
57
58
|
*/
|
|
@@ -5,7 +5,7 @@ export interface CPopoverProps {
|
|
|
5
5
|
/**
|
|
6
6
|
* Content node for your component.
|
|
7
7
|
*/
|
|
8
|
-
content: ReactNode;
|
|
8
|
+
content: ReactNode | string;
|
|
9
9
|
/**
|
|
10
10
|
* Offset of the popover relative to its target.
|
|
11
11
|
*/
|
|
@@ -21,7 +21,7 @@ export interface CPopoverProps {
|
|
|
21
21
|
/**
|
|
22
22
|
* Title node for your component.
|
|
23
23
|
*/
|
|
24
|
-
title?: ReactNode;
|
|
24
|
+
title?: ReactNode | string;
|
|
25
25
|
/**
|
|
26
26
|
* Sets which event handlers you’d like provided to your toggle prop. You can specify one trigger or an array of them.
|
|
27
27
|
*
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import React, { MouseEvent, ReactNode } from 'react';
|
|
2
2
|
import { CTableBodyProps } from '../table/CTableBody';
|
|
3
|
-
import {
|
|
3
|
+
import { ItemInternal, ScopedColumns } from './CSmartTableInterface';
|
|
4
4
|
export interface CSmartTableBodyProps extends CTableBodyProps {
|
|
5
5
|
clickableRows?: boolean;
|
|
6
|
-
currentItems:
|
|
6
|
+
currentItems: ItemInternal[];
|
|
7
7
|
firstItemOnActivePageIndex: number;
|
|
8
8
|
noItemsLabel?: string | ReactNode;
|
|
9
9
|
onRowChecked?: (id: number, value: boolean) => void;
|
|
10
|
-
onRowClick?: (item:
|
|
10
|
+
onRowClick?: (item: ItemInternal, index: number, columnName: string, event: MouseEvent | boolean) => void;
|
|
11
11
|
rawColumnNames: string[];
|
|
12
12
|
scopedColumns?: ScopedColumns;
|
|
13
13
|
selectable?: boolean;
|
|
@@ -7,10 +7,10 @@ import { CTableHeaderCellProps } from '../table/CTableHeaderCell';
|
|
|
7
7
|
import { CTableRowProps } from '../table/CTableRow';
|
|
8
8
|
import { CTableHeadProps } from '../table/CTableHead';
|
|
9
9
|
export interface Column {
|
|
10
|
-
sorter?: boolean;
|
|
11
|
-
key: string;
|
|
12
|
-
label?: string;
|
|
13
10
|
filter?: boolean;
|
|
11
|
+
label?: string;
|
|
12
|
+
key: string;
|
|
13
|
+
sorter?: boolean;
|
|
14
14
|
_style?: any;
|
|
15
15
|
_props?: CTableHeaderCellProps;
|
|
16
16
|
}
|
|
@@ -23,9 +23,11 @@ export interface ColumnFilterValue {
|
|
|
23
23
|
}
|
|
24
24
|
export interface Item {
|
|
25
25
|
[key: string]: number | string | any;
|
|
26
|
+
_props?: CTableRowProps;
|
|
27
|
+
_selected?: boolean;
|
|
28
|
+
}
|
|
29
|
+
export interface ItemInternal extends Item {
|
|
26
30
|
_id: number;
|
|
27
|
-
_props: CTableRowProps;
|
|
28
|
-
_selected: boolean;
|
|
29
31
|
}
|
|
30
32
|
export interface ItemsPerPageSelect {
|
|
31
33
|
external?: boolean;
|
|
@@ -37,6 +39,7 @@ export interface Sorter {
|
|
|
37
39
|
external?: boolean;
|
|
38
40
|
}
|
|
39
41
|
export interface ScopedColumns {
|
|
42
|
+
[key: string]: any;
|
|
40
43
|
details?: (a: Item, b: number) => ReactNode;
|
|
41
44
|
}
|
|
42
45
|
export interface SorterValue {
|
|
@@ -46,8 +49,6 @@ export interface SorterValue {
|
|
|
46
49
|
export interface TableFilter {
|
|
47
50
|
lazy?: boolean;
|
|
48
51
|
external?: boolean;
|
|
49
|
-
label?: string;
|
|
50
|
-
placeholder?: string;
|
|
51
52
|
}
|
|
52
53
|
export interface NoItemsView {
|
|
53
54
|
noResults?: string;
|
|
@@ -60,14 +61,9 @@ export interface CSmartTableProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
60
61
|
* @default 1
|
|
61
62
|
*/
|
|
62
63
|
activePage?: number;
|
|
63
|
-
/**
|
|
64
|
-
* A string of all className you want applied to the base component.
|
|
65
|
-
*/
|
|
66
|
-
className?: string;
|
|
67
64
|
/**
|
|
68
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)
|
|
69
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.
|
|
70
|
-
*
|
|
71
67
|
*/
|
|
72
68
|
cleaner?: boolean;
|
|
73
69
|
/**
|
|
@@ -104,7 +100,7 @@ export interface CSmartTableProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
104
100
|
* - sorter (Boolean) - disables sorting of the column when set to false
|
|
105
101
|
* - filter (Boolean) - removes filter from column when set to false.
|
|
106
102
|
*/
|
|
107
|
-
columns?:
|
|
103
|
+
columns?: (string | Column)[];
|
|
108
104
|
/**
|
|
109
105
|
* Enables table sorting by column value. Sorting will be performed corectly only if values in column are of one type: string (case insensitive) or number.
|
|
110
106
|
*
|
|
@@ -261,8 +257,6 @@ export interface CSmartTableProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
261
257
|
* When set, displays table filter above table, allowing filtering by specific column.
|
|
262
258
|
*
|
|
263
259
|
* Column filter can be customized, by passing prop as object with additional options as keys. Available options:
|
|
264
|
-
* - placeholder (String) - Sets custom table filter placeholder.
|
|
265
|
-
* - label (String) - Sets custom table filter label.
|
|
266
260
|
* - external (Boolean) - Disables automatic filtering inside component.
|
|
267
261
|
* - lazy (Boolean) - Set to true to trigger filter updates only on change event.
|
|
268
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/';
|