@coreui/react-pro 5.11.0 → 5.12.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.
Files changed (53) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/components/accordion/CAccordionBody.js +2 -2
  3. package/dist/cjs/components/accordion/CAccordionBody.js.map +1 -1
  4. package/dist/cjs/components/accordion/CAccordionItem.d.ts +4 -0
  5. package/dist/cjs/components/accordion/CAccordionItem.js +4 -4
  6. package/dist/cjs/components/accordion/CAccordionItem.js.map +1 -1
  7. package/dist/cjs/components/dropdown/CDropdown.d.ts +77 -20
  8. package/dist/cjs/components/dropdown/CDropdown.js +6 -3
  9. package/dist/cjs/components/dropdown/CDropdown.js.map +1 -1
  10. package/dist/cjs/components/dropdown/CDropdownMenu.js +1 -1
  11. package/dist/cjs/components/dropdown/CDropdownMenu.js.map +1 -1
  12. package/dist/cjs/components/popover/CPopover.d.ts +75 -20
  13. package/dist/cjs/components/popover/CPopover.js +8 -21
  14. package/dist/cjs/components/popover/CPopover.js.map +1 -1
  15. package/dist/cjs/components/smart-table/CSmartTableHead.js +3 -1
  16. package/dist/cjs/components/smart-table/CSmartTableHead.js.map +1 -1
  17. package/dist/cjs/components/smart-table/types.d.ts +1 -1
  18. package/dist/cjs/components/tooltip/CTooltip.d.ts +67 -15
  19. package/dist/cjs/components/tooltip/CTooltip.js +8 -21
  20. package/dist/cjs/components/tooltip/CTooltip.js.map +1 -1
  21. package/dist/cjs/hooks/useColorModes.js +5 -5
  22. package/dist/cjs/hooks/useColorModes.js.map +1 -1
  23. package/dist/esm/components/accordion/CAccordionBody.js +2 -2
  24. package/dist/esm/components/accordion/CAccordionBody.js.map +1 -1
  25. package/dist/esm/components/accordion/CAccordionItem.d.ts +4 -0
  26. package/dist/esm/components/accordion/CAccordionItem.js +4 -4
  27. package/dist/esm/components/accordion/CAccordionItem.js.map +1 -1
  28. package/dist/esm/components/dropdown/CDropdown.d.ts +77 -20
  29. package/dist/esm/components/dropdown/CDropdown.js +6 -3
  30. package/dist/esm/components/dropdown/CDropdown.js.map +1 -1
  31. package/dist/esm/components/dropdown/CDropdownMenu.js +1 -1
  32. package/dist/esm/components/dropdown/CDropdownMenu.js.map +1 -1
  33. package/dist/esm/components/popover/CPopover.d.ts +75 -20
  34. package/dist/esm/components/popover/CPopover.js +8 -21
  35. package/dist/esm/components/popover/CPopover.js.map +1 -1
  36. package/dist/esm/components/smart-table/CSmartTableHead.js +3 -1
  37. package/dist/esm/components/smart-table/CSmartTableHead.js.map +1 -1
  38. package/dist/esm/components/smart-table/types.d.ts +1 -1
  39. package/dist/esm/components/tooltip/CTooltip.d.ts +67 -15
  40. package/dist/esm/components/tooltip/CTooltip.js +8 -21
  41. package/dist/esm/components/tooltip/CTooltip.js.map +1 -1
  42. package/dist/esm/hooks/useColorModes.js +5 -5
  43. package/dist/esm/hooks/useColorModes.js.map +1 -1
  44. package/package.json +4 -4
  45. package/src/components/accordion/CAccordionBody.tsx +3 -3
  46. package/src/components/accordion/CAccordionItem.tsx +9 -5
  47. package/src/components/dropdown/CDropdown.tsx +106 -26
  48. package/src/components/dropdown/CDropdownMenu.tsx +0 -1
  49. package/src/components/popover/CPopover.tsx +103 -43
  50. package/src/components/smart-table/CSmartTableHead.tsx +3 -0
  51. package/src/components/smart-table/types.ts +7 -1
  52. package/src/components/tooltip/CTooltip.tsx +94 -38
  53. package/src/hooks/useColorModes.ts +5 -5
package/README.md CHANGED
@@ -42,7 +42,7 @@
42
42
 
43
43
  Several quick start options are available:
44
44
 
45
- - [Download the latest release](https://github.com/coreui/coreui-react-pro/archive/v5.11.0.zip)
45
+ - [Download the latest release](https://github.com/coreui/coreui-react-pro/archive/v5.12.0.zip)
46
46
  - Clone the repo: `git clone https://github.com/coreui/coreui-react.git`
47
47
  - Install with [npm](https://www.npmjs.com/): `npm install @coreui/react`
48
48
  - Install with [yarn](https://yarnpkg.com/): `yarn add @coreui/react`
@@ -9,8 +9,8 @@ var CCollapse = require('../collapse/CCollapse.js');
9
9
 
10
10
  var CAccordionBody = React.forwardRef(function (_a, ref) {
11
11
  var children = _a.children, className = _a.className, rest = tslib_es6.__rest(_a, ["children", "className"]);
12
- var visible = React.useContext(CAccordionItem.CAccordionItemContext).visible;
13
- return (React.createElement(CCollapse.CCollapse, { className: "accordion-collapse", visible: visible },
12
+ var _b = React.useContext(CAccordionItem.CAccordionItemContext), id = _b.id, visible = _b.visible;
13
+ return (React.createElement(CCollapse.CCollapse, { className: "accordion-collapse", id: id, visible: visible },
14
14
  React.createElement("div", tslib_es6.__assign({ className: index.default('accordion-body', className) }, rest, { ref: ref }), children)));
15
15
  });
16
16
  CAccordionBody.propTypes = {
@@ -1 +1 @@
1
- {"version":3,"file":"CAccordionBody.js","sources":["../../../../src/components/accordion/CAccordionBody.tsx"],"sourcesContent":[null],"names":["forwardRef","__rest","useContext","CAccordionItemContext","CCollapse","__assign","classNames"],"mappings":";;;;;;;;;IAea,cAAc,GAAGA,gBAAU,CACtC,UAAC,EAAgC,EAAE,GAAG,EAAA;IAAnC,IAAA,QAAQ,cAAA,EAAE,SAAS,eAAA,EAAK,IAAI,GAA9BC,gBAAA,CAAA,EAAA,EAAA,CAAA,UAAA,EAAA,WAAA,CAAgC,CAAF;AACrB,IAAA,IAAA,OAAO,GAAKC,gBAAU,CAACC,oCAAqB,CAAC,QAAtC;IAEf,QACE,KAAC,CAAA,aAAA,CAAAC,mBAAS,EAAC,EAAA,SAAS,EAAC,oBAAoB,EAAC,OAAO,EAAE,OAAO,EAAA;AACxD,QAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAAC,kBAAA,CAAA,EAAK,SAAS,EAAEC,aAAU,CAAC,gBAAgB,EAAE,SAAS,CAAC,EAAA,EAAM,IAAI,EAAE,EAAA,GAAG,EAAE,GAAG,EAAA,CAAA,EACxE,QAAQ,CACL,CACI;AAEhB,CAAC;AAGH,cAAc,CAAC,SAAS,GAAG;IACzB,QAAQ,EAAE,SAAS,CAAC,IAAI;IACxB,SAAS,EAAE,SAAS,CAAC,MAAM;CAC5B;AAED,cAAc,CAAC,WAAW,GAAG,gBAAgB;;;;"}
1
+ {"version":3,"file":"CAccordionBody.js","sources":["../../../../src/components/accordion/CAccordionBody.tsx"],"sourcesContent":[null],"names":["forwardRef","__rest","useContext","CAccordionItemContext","CCollapse","__assign","classNames"],"mappings":";;;;;;;;;IAea,cAAc,GAAGA,gBAAU,CACtC,UAAC,EAAgC,EAAE,GAAG,EAAA;IAAnC,IAAA,QAAQ,cAAA,EAAE,SAAS,eAAA,EAAK,IAAI,GAA9BC,gBAAA,CAAA,EAAA,EAAA,CAAA,UAAA,EAAA,WAAA,CAAgC,CAAF;IACvB,IAAA,EAAA,GAAkBC,gBAAU,CAACC,oCAAqB,CAAC,EAAjD,EAAE,GAAA,EAAA,CAAA,EAAA,EAAE,OAAO,GAAA,EAAA,CAAA,OAAsC;AAEzD,IAAA,QACE,KAAA,CAAA,aAAA,CAACC,mBAAS,EAAA,EAAC,SAAS,EAAC,oBAAoB,EAAC,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAA;AAChE,QAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAAC,kBAAA,CAAA,EAAK,SAAS,EAAEC,aAAU,CAAC,gBAAgB,EAAE,SAAS,CAAC,EAAA,EAAM,IAAI,EAAE,EAAA,GAAG,EAAE,GAAG,EAAA,CAAA,EACxE,QAAQ,CACL,CACI;AAEhB,CAAC;AAGH,cAAc,CAAC,SAAS,GAAG;IACzB,QAAQ,EAAE,SAAS,CAAC,IAAI;IACxB,SAAS,EAAE,SAAS,CAAC,MAAM;CAC5B;AAED,cAAc,CAAC,WAAW,GAAG,gBAAgB;;;;"}
@@ -6,6 +6,10 @@ export interface CAccordionItemContextProps {
6
6
  }
7
7
  export declare const CAccordionItemContext: React.Context<CAccordionItemContextProps>;
8
8
  export interface CAccordionItemProps extends HTMLAttributes<HTMLDivElement> {
9
+ /**
10
+ * The id global attribute defines an identifier (ID) that must be unique in the whole document.
11
+ */
12
+ id?: string;
9
13
  /**
10
14
  * A string of all className you want applied to the base component.
11
15
  */
@@ -8,9 +8,9 @@ var CAccordion = require('./CAccordion.js');
8
8
 
9
9
  var CAccordionItemContext = React.createContext({});
10
10
  var CAccordionItem = React.forwardRef(function (_a, ref) {
11
- var children = _a.children, className = _a.className, itemKey = _a.itemKey, rest = tslib_es6.__rest(_a, ["children", "className", "itemKey"]);
12
- var id = React.useId();
13
- var _itemKey = React.useRef(itemKey !== null && itemKey !== void 0 ? itemKey : id);
11
+ var children = _a.children, className = _a.className, id = _a.id, itemKey = _a.itemKey, rest = tslib_es6.__rest(_a, ["children", "className", "id", "itemKey"]);
12
+ var _id = id !== null && id !== void 0 ? id : React.useId();
13
+ var _itemKey = React.useRef(itemKey !== null && itemKey !== void 0 ? itemKey : _id);
14
14
  var _b = React.useContext(CAccordion.CAccordionContext), _activeItemKey = _b._activeItemKey, alwaysOpen = _b.alwaysOpen, setActiveKey = _b.setActiveKey;
15
15
  var _c = React.useState(Boolean(_activeItemKey === _itemKey.current)), visible = _c[0], setVisible = _c[1];
16
16
  React.useEffect(function () {
@@ -22,7 +22,7 @@ var CAccordionItem = React.forwardRef(function (_a, ref) {
22
22
  setVisible(Boolean(_activeItemKey === _itemKey.current));
23
23
  }, [_activeItemKey]);
24
24
  return (React.createElement("div", tslib_es6.__assign({ className: index.default('accordion-item', className) }, rest, { ref: ref }),
25
- React.createElement(CAccordionItemContext.Provider, { value: { id: id, setVisible: setVisible, visible: visible } }, children)));
25
+ React.createElement(CAccordionItemContext.Provider, { value: { id: _id, setVisible: setVisible, visible: visible } }, children)));
26
26
  });
27
27
  CAccordionItem.propTypes = {
28
28
  children: PropTypes.node,
@@ -1 +1 @@
1
- {"version":3,"file":"CAccordionItem.js","sources":["../../../../src/components/accordion/CAccordionItem.tsx"],"sourcesContent":[null],"names":["createContext","forwardRef","__rest","useId","useRef","useContext","CAccordionContext","useState","useEffect","__assign","classNames"],"mappings":";;;;;;;;IAqBa,qBAAqB,GAAGA,mBAAa,CAAC,EAAgC;IAatE,cAAc,GAAGC,gBAAU,CACtC,UAAC,EAAyC,EAAE,GAAG,EAAA;AAA5C,IAAA,IAAA,QAAQ,GAAA,EAAA,CAAA,QAAA,EAAE,SAAS,GAAA,EAAA,CAAA,SAAA,EAAE,OAAO,GAAA,EAAA,CAAA,OAAA,EAAK,IAAI,GAAvCC,gBAAA,CAAA,EAAA,EAAA,CAAA,UAAA,EAAA,WAAA,EAAA,SAAA,CAAyC,CAAF;AACtC,IAAA,IAAM,EAAE,GAAGC,WAAK,EAAE;AAClB,IAAA,IAAM,QAAQ,GAAGC,YAAM,CAAC,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,KAAA,CAAA,GAAP,OAAO,GAAI,EAAE,CAAC;AAEhC,IAAA,IAAA,EAA+C,GAAAC,gBAAU,CAACC,4BAAiB,CAAC,EAA1E,cAAc,GAAA,EAAA,CAAA,cAAA,EAAE,UAAU,GAAA,EAAA,CAAA,UAAA,EAAE,YAAY,kBAAkC;AAC5E,IAAA,IAAA,KAAwBC,cAAQ,CAAC,OAAO,CAAC,cAAc,KAAK,QAAQ,CAAC,OAAO,CAAC,CAAC,EAA7E,OAAO,QAAA,EAAE,UAAU,QAA0D;AAEpF,IAAAC,eAAS,CAAC,YAAA;AACR,QAAA,IAAI,CAAC,UAAU,IAAI,OAAO,EAAE;AAC1B,YAAA,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC;;AAElC,KAAC,EAAE,CAAC,OAAO,CAAC,CAAC;AAEb,IAAAA,eAAS,CAAC,YAAA;QACR,UAAU,CAAC,OAAO,CAAC,cAAc,KAAK,QAAQ,CAAC,OAAO,CAAC,CAAC;AAC1D,KAAC,EAAE,CAAC,cAAc,CAAC,CAAC;AAEpB,IAAA,QACE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAAC,kBAAA,CAAA,EAAK,SAAS,EAAEC,aAAU,CAAC,gBAAgB,EAAE,SAAS,CAAC,EAAM,EAAA,IAAI,EAAE,EAAA,GAAG,EAAE,GAAG,EAAA,CAAA;QACzE,KAAC,CAAA,aAAA,CAAA,qBAAqB,CAAC,QAAQ,EAAA,EAAC,KAAK,EAAE,EAAE,EAAE,EAAA,EAAA,EAAE,UAAU,EAAA,UAAA,EAAE,OAAO,EAAA,OAAA,EAAE,IAC/D,QAAQ,CACsB,CAC7B;AAEV,CAAC;AAGH,cAAc,CAAC,SAAS,GAAG;IACzB,QAAQ,EAAE,SAAS,CAAC,IAAI;IACxB,SAAS,EAAE,SAAS,CAAC,MAAM;AAC3B,IAAA,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;CACnE;AAED,cAAc,CAAC,WAAW,GAAG,gBAAgB;;;;;"}
1
+ {"version":3,"file":"CAccordionItem.js","sources":["../../../../src/components/accordion/CAccordionItem.tsx"],"sourcesContent":[null],"names":["createContext","forwardRef","__rest","useId","useRef","useContext","CAccordionContext","useState","useEffect","__assign","classNames"],"mappings":";;;;;;;;IAqBa,qBAAqB,GAAGA,mBAAa,CAAC,EAAgC;IAiBtE,cAAc,GAAGC,gBAAU,CACtC,UAAC,EAA6C,EAAE,GAAG,EAAA;AAAhD,IAAA,IAAA,QAAQ,GAAA,EAAA,CAAA,QAAA,EAAE,SAAS,eAAA,EAAE,EAAE,GAAA,EAAA,CAAA,EAAA,EAAE,OAAO,GAAA,EAAA,CAAA,OAAA,EAAK,IAAI,GAAAC,gBAAA,CAAA,EAAA,EAA3C,0CAA6C,CAAF;IAC1C,IAAM,GAAG,GAAG,EAAE,KAAF,IAAA,IAAA,EAAE,cAAF,EAAE,GAAIC,WAAK,EAAE;AACzB,IAAA,IAAM,QAAQ,GAAGC,YAAM,CAAC,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,KAAA,CAAA,GAAP,OAAO,GAAI,GAAG,CAAC;AAEjC,IAAA,IAAA,EAA+C,GAAAC,gBAAU,CAACC,4BAAiB,CAAC,EAA1E,cAAc,GAAA,EAAA,CAAA,cAAA,EAAE,UAAU,GAAA,EAAA,CAAA,UAAA,EAAE,YAAY,kBAAkC;AAC5E,IAAA,IAAA,KAAwBC,cAAQ,CAAC,OAAO,CAAC,cAAc,KAAK,QAAQ,CAAC,OAAO,CAAC,CAAC,EAA7E,OAAO,QAAA,EAAE,UAAU,QAA0D;AAEpF,IAAAC,eAAS,CAAC,YAAA;AACR,QAAA,IAAI,CAAC,UAAU,IAAI,OAAO,EAAE;AAC1B,YAAA,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC;;AAElC,KAAC,EAAE,CAAC,OAAO,CAAC,CAAC;AAEb,IAAAA,eAAS,CAAC,YAAA;QACR,UAAU,CAAC,OAAO,CAAC,cAAc,KAAK,QAAQ,CAAC,OAAO,CAAC,CAAC;AAC1D,KAAC,EAAE,CAAC,cAAc,CAAC,CAAC;AAEpB,IAAA,QACE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAAC,kBAAA,CAAA,EAAK,SAAS,EAAEC,aAAU,CAAC,gBAAgB,EAAE,SAAS,CAAC,EAAM,EAAA,IAAI,EAAE,EAAA,GAAG,EAAE,GAAG,EAAA,CAAA;QACzE,KAAC,CAAA,aAAA,CAAA,qBAAqB,CAAC,QAAQ,EAAA,EAAC,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,UAAU,EAAA,UAAA,EAAE,OAAO,EAAA,OAAA,EAAE,IACpE,QAAQ,CACsB,CAC7B;AAEV,CAAC;AAGH,cAAc,CAAC,SAAS,GAAG;IACzB,QAAQ,EAAE,SAAS,CAAC,IAAI;IACxB,SAAS,EAAE,SAAS,CAAC,MAAM;AAC3B,IAAA,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;CACnE;AAED,cAAc,CAAC,WAAW,GAAG,gBAAgB;;;;;"}
@@ -1,80 +1,137 @@
1
1
  import React, { ElementType, HTMLAttributes, RefObject } from 'react';
2
+ import type { Options } from '@popperjs/core';
2
3
  import { PolymorphicRefForwardingComponent } from '../../helpers';
3
4
  import type { Placements } from '../../types';
4
5
  import type { Alignments } from './types';
5
6
  export interface CDropdownProps extends HTMLAttributes<HTMLDivElement | HTMLLIElement> {
6
7
  /**
7
- * Set aligment of dropdown menu.
8
+ * Specifies the alignment of the React Dropdown Menu within this React Dropdown.
9
+ *
10
+ * @example
11
+ * // Align dropdown menu to the end on large devices, otherwise start
12
+ * <CDropdown alignment={{ lg: 'end', xs: 'start' }}>
13
+ * <CDropdownToggle>Toggle dropdown</CDropdownToggle>
14
+ * <CDropdownMenu>
15
+ * <CDropdownItem>Action</CDropdownItem>
16
+ * <CDropdownItem>Another Action</CDropdownItem>
17
+ * </CDropdownMenu>
18
+ * </CDropdown>
8
19
  *
9
20
  * @type 'start' | 'end' | { xs: 'start' | 'end' } | { sm: 'start' | 'end' } | { md: 'start' | 'end' } | { lg: 'start' | 'end' } | { xl: 'start' | 'end'} | { xxl: 'start' | 'end'}
10
21
  */
11
22
  alignment?: Alignments;
12
23
  /**
13
- * Component used for the root node. Either a string to use a HTML element or a component.
24
+ * Determines the root node component (native HTML element or a custom React component) for the React Dropdown.
14
25
  */
15
26
  as?: ElementType;
16
27
  /**
17
- * Configure the auto close behavior of the dropdown:
18
- * - `true` - the dropdown will be closed by clicking outside or inside the dropdown menu.
19
- * - `false` - the dropdown will be closed by clicking the toggle button and manually calling hide or toggle method. (Also will not be closed by pressing esc key)
20
- * - `'inside'` - the dropdown will be closed (only) by clicking inside the dropdown menu.
21
- * - `'outside'` - the dropdown will be closed (only) by clicking outside the dropdown menu.
28
+ * Configures automatic closing behavior for the React Dropdown:
29
+ * - `true` - Close on clicks inside or outside of the React Dropdown Menu.
30
+ * - `false` - Disable auto-close; manually call `hide` or `toggle` (also not closed by `Escape`).
31
+ * - `'inside'` - Close only when clicking inside the React Dropdown Menu.
32
+ * - `'outside'` - Close only when clicking outside the React Dropdown Menu.
33
+ *
34
+ * @example
35
+ * // Close only when user clicks outside of the menu
36
+ * <CDropdown autoClose="outside" />
22
37
  */
23
38
  autoClose?: 'inside' | 'outside' | boolean;
24
39
  /**
25
- * A string of all className you want applied to the base component.
40
+ * Adds custom classes to the React Dropdown root element.
26
41
  */
27
42
  className?: string;
28
43
  /**
29
- * Appends the react dropdown menu to a specific element. You can pass an HTML element or function that returns a single element. By default `document.body`.
44
+ * Appends the React Dropdown Menu to a specific element. You can pass an HTML element or a function returning an element. Defaults to `document.body`.
45
+ *
46
+ * @example
47
+ * // Append the menu to a custom container
48
+ * const myContainer = document.getElementById('my-container')
49
+ *
50
+ * <CDropdown container={myContainer} />
30
51
  *
31
52
  * @since 4.11.0
32
53
  */
33
54
  container?: DocumentFragment | Element | (() => DocumentFragment | Element | null) | null;
34
55
  /**
35
- * Sets a darker color scheme to match a dark navbar.
56
+ * Applies a darker color scheme to the React Dropdown Menu, often used within dark navbars.
36
57
  */
37
58
  dark?: boolean;
38
59
  /**
39
- * Sets a specified direction and location of the dropdown menu.
60
+ * Specifies the direction of the React Dropdown.
40
61
  */
41
62
  direction?: 'center' | 'dropup' | 'dropup-center' | 'dropend' | 'dropstart';
42
63
  /**
43
- * Offset of the dropdown menu relative to its target.
64
+ * Defines x and y offsets ([x, y]) for the React Dropdown Menu relative to its target.
65
+ *
66
+ * @example
67
+ * // Offset the menu 10px in X and 5px in Y direction
68
+ * <CDropdown offset={[10, 5]}>
69
+ * ...
70
+ * </CDropdown>
44
71
  */
45
72
  offset?: [number, number];
46
73
  /**
47
- * Callback fired when the component requests to be hidden.
74
+ * Callback fired right before the React Dropdown becomes hidden.
48
75
  *
49
76
  * @since 4.9.0
50
77
  */
51
78
  onHide?: () => void;
52
79
  /**
53
- * Callback fired when the component requests to be shown.
80
+ * Callback fired immediately after the React Dropdown is displayed.
54
81
  */
55
82
  onShow?: () => void;
56
83
  /**
57
- * Describes the placement of your component after Popper.js has applied all the modifiers that may have flipped or altered the originally provided placement property.
84
+ * Determines the placement of the React Dropdown Menu after Popper.js modifiers.
58
85
  *
59
- * @type 'auto' | 'top-end' | 'top' | 'top-start' | 'bottom-end' | 'bottom' | 'bottom-start' | 'right-start' | 'right' | 'right-end' | 'left-start' | 'left' | 'left-end'
86
+ * @type 'auto' | 'auto-start' | 'auto-end' | 'top-end' | 'top' | 'top-start' | 'bottom-end' | 'bottom' | 'bottom-start' | 'right-start' | 'right' | 'right-end' | 'left-start' | 'left' | 'left-end'
60
87
  */
61
88
  placement?: Placements;
62
89
  /**
63
- * If you want to disable dynamic positioning set this property to `true`.
90
+ * Enables or disables dynamic positioning via Popper.js for the React Dropdown Menu.
64
91
  */
65
92
  popper?: boolean;
66
93
  /**
67
- * Generates dropdown menu using createPortal.
94
+ * Provides a custom Popper.js configuration or a function that returns a modified Popper.js configuration for advanced positioning of the React Dropdown Menu. [Read more](https://popper.js.org/docs/v2/constructors/#options)
95
+ *
96
+ * @example
97
+ * // Providing a custom popper config
98
+ * <CDropdown
99
+ * popperConfig={{
100
+ * modifiers: [
101
+ * {
102
+ * name: 'flip',
103
+ * options: { fallbackPlacements: ['bottom', 'top'] },
104
+ * },
105
+ * ],
106
+ * }}
107
+ * >...</CDropdown>
108
+ *
109
+ * @since 5.5.0
110
+ */
111
+ popperConfig?: Partial<Options> | ((defaultPopperConfig: Partial<Options>) => Partial<Options>);
112
+ /**
113
+ * Renders the React Dropdown Menu using a React Portal, allowing it to escape the DOM hierarchy for improved positioning.
68
114
  *
69
115
  * @since 4.8.0
70
116
  */
71
117
  portal?: boolean;
72
118
  /**
73
- * Set the dropdown variant to an btn-group, dropdown, input-group, and nav-item.
119
+ * Defines the visual variant of the React Dropdown
74
120
  */
75
121
  variant?: 'btn-group' | 'dropdown' | 'input-group' | 'nav-item';
76
122
  /**
77
- * Toggle the visibility of dropdown menu component.
123
+ * Controls the visibility of the React Dropdown Menu:
124
+ * - `true` - Visible
125
+ * - `false` - Hidden
126
+ *
127
+ * @example
128
+ * // Programmatically manage the dropdown visibility
129
+ * const [visible, setVisible] = useState(false)
130
+ *
131
+ * <CDropdown visible={visible}>
132
+ * ...
133
+ * </CDropdown>
134
+ *
78
135
  */
79
136
  visible?: boolean;
80
137
  }
@@ -14,7 +14,7 @@ var utils = require('./utils.js');
14
14
  var CDropdownContext = React.createContext({});
15
15
  var CDropdown = React.forwardRef(function (_a, ref) {
16
16
  var _b;
17
- var children = _a.children, alignment = _a.alignment, _c = _a.as, as = _c === void 0 ? 'div' : _c, _d = _a.autoClose, autoClose = _d === void 0 ? true : _d, className = _a.className, container = _a.container, dark = _a.dark, direction = _a.direction, _e = _a.offset, offset = _e === void 0 ? [0, 2] : _e, onHide = _a.onHide, onShow = _a.onShow, _f = _a.placement, placement = _f === void 0 ? 'bottom-start' : _f, _g = _a.popper, popper = _g === void 0 ? true : _g, _h = _a.portal, portal = _h === void 0 ? false : _h, _j = _a.variant, variant = _j === void 0 ? 'btn-group' : _j, _k = _a.visible, visible = _k === void 0 ? false : _k, rest = tslib_es6.__rest(_a, ["children", "alignment", "as", "autoClose", "className", "container", "dark", "direction", "offset", "onHide", "onShow", "placement", "popper", "portal", "variant", "visible"]);
17
+ var children = _a.children, alignment = _a.alignment, _c = _a.as, as = _c === void 0 ? 'div' : _c, _d = _a.autoClose, autoClose = _d === void 0 ? true : _d, className = _a.className, container = _a.container, dark = _a.dark, direction = _a.direction, _e = _a.offset, offset = _e === void 0 ? [0, 2] : _e, onHide = _a.onHide, onShow = _a.onShow, _f = _a.placement, placement = _f === void 0 ? 'bottom-start' : _f, _g = _a.popper, popper = _g === void 0 ? true : _g, popperConfig = _a.popperConfig, _h = _a.portal, portal = _h === void 0 ? false : _h, _j = _a.variant, variant = _j === void 0 ? 'btn-group' : _j, _k = _a.visible, visible = _k === void 0 ? false : _k, rest = tslib_es6.__rest(_a, ["children", "alignment", "as", "autoClose", "className", "container", "dark", "direction", "offset", "onHide", "onShow", "placement", "popper", "popperConfig", "portal", "variant", "visible"]);
18
18
  var dropdownRef = React.useRef(null);
19
19
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
20
20
  var dropdownToggleRef = React.useRef(null);
@@ -39,7 +39,7 @@ var CDropdown = React.forwardRef(function (_a, ref) {
39
39
  visible: _visible,
40
40
  setVisible: setVisible,
41
41
  };
42
- var popperConfig = {
42
+ var defaultPopperConfig = {
43
43
  modifiers: [
44
44
  {
45
45
  name: 'offset',
@@ -50,13 +50,15 @@ var CDropdown = React.forwardRef(function (_a, ref) {
50
50
  ],
51
51
  placement: utils.getPlacement(placement, direction, alignment, isRTL.default(dropdownMenuRef.current)),
52
52
  };
53
+ var computedPopperConfig = tslib_es6.__assign(tslib_es6.__assign({}, defaultPopperConfig), (typeof popperConfig === 'function' ? popperConfig(defaultPopperConfig) : popperConfig));
53
54
  React.useEffect(function () {
54
55
  setVisible(visible);
55
56
  }, [visible]);
56
57
  React.useEffect(function () {
57
58
  if (_visible && dropdownToggleRef.current && dropdownMenuRef.current) {
58
59
  dropdownToggleRef.current.focus();
59
- popper && initPopper(dropdownToggleRef.current, dropdownMenuRef.current, popperConfig);
60
+ popper &&
61
+ initPopper(dropdownToggleRef.current, dropdownMenuRef.current, computedPopperConfig);
60
62
  window.addEventListener('mouseup', handleMouseUp);
61
63
  window.addEventListener('keyup', handleKeyup);
62
64
  dropdownToggleRef.current.addEventListener('keydown', handleKeydown);
@@ -138,6 +140,7 @@ CDropdown.propTypes = {
138
140
  onShow: PropTypes.func,
139
141
  placement: props.placementPropType,
140
142
  popper: PropTypes.bool,
143
+ popperConfig: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
141
144
  portal: PropTypes.bool,
142
145
  variant: PropTypes.oneOf(['btn-group', 'dropdown', 'input-group', 'nav-item']),
143
146
  visible: PropTypes.bool,
@@ -1 +1 @@
1
- {"version":3,"file":"CDropdown.js","sources":["../../../../src/components/dropdown/CDropdown.tsx"],"sourcesContent":[null],"names":["createContext","forwardRef","__rest","useRef","useForkedRef","useState","usePopper","getPlacement","isRTL","useEffect","getNextActiveElement","__assign","classNames","placementPropType"],"mappings":"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"}
1
+ {"version":3,"file":"CDropdown.js","sources":["../../../../src/components/dropdown/CDropdown.tsx"],"sourcesContent":[null],"names":["createContext","forwardRef","__rest","useRef","useForkedRef","useState","usePopper","getPlacement","isRTL","useEffect","getNextActiveElement","__assign","classNames","placementPropType"],"mappings":"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"}
@@ -17,7 +17,7 @@ var CDropdownMenu = React.forwardRef(function (_a, ref) {
17
17
  return (React.createElement(CConditionalPortal.CConditionalPortal, { container: container, portal: portal !== null && portal !== void 0 ? portal : false },
18
18
  React.createElement(Component, tslib_es6.__assign({ className: index.default('dropdown-menu', {
19
19
  show: visible,
20
- }, alignment && utils.getAlignmentClassNames(alignment), className), ref: forkedRef, role: "menu", "aria-hidden": !visible }, (!popper && { 'data-coreui-popper': 'static' }), (dark && { 'data-coreui-theme': 'dark' }), rest), Component === 'ul'
20
+ }, alignment && utils.getAlignmentClassNames(alignment), className), ref: forkedRef, role: "menu" }, (!popper && { 'data-coreui-popper': 'static' }), (dark && { 'data-coreui-theme': 'dark' }), rest), Component === 'ul'
21
21
  ? React.Children.map(children, function (child, index) {
22
22
  if (React.isValidElement(child)) {
23
23
  return React.createElement("li", { key: index }, React.cloneElement(child));
@@ -1 +1 @@
1
- {"version":3,"file":"CDropdownMenu.js","sources":["../../../../src/components/dropdown/CDropdownMenu.tsx"],"sourcesContent":[null],"names":["forwardRef","__rest","useContext","CDropdownContext","useForkedRef","CConditionalPortal","__assign","classNames","getAlignmentClassNames"],"mappings":";;;;;;;;;;;;IAuBa,aAAa,GACxBA,gBAAU,CACR,UAAC,EAAsD,EAAE,GAAG,EAAA;AAAzD,IAAA,IAAA,QAAQ,GAAA,EAAA,CAAA,QAAA,EAAE,EAAoB,GAAA,EAAA,CAAA,EAAA,EAAhB,SAAS,GAAG,EAAA,KAAA,KAAA,CAAA,GAAA,IAAI,GAAA,EAAA,EAAE,SAAS,GAAA,EAAA,CAAA,SAAA,EAAK,IAAI,GAAAC,gBAAA,CAAA,EAAA,EAApD,+BAAsD,CAAF;IAC7C,IAAA,EAAA,GACJC,gBAAU,CAACC,0BAAgB,CAAC,EADtB,SAAS,GAAA,EAAA,CAAA,SAAA,EAAE,SAAS,GAAA,EAAA,CAAA,SAAA,EAAE,IAAI,UAAA,EAAE,eAAe,GAAA,EAAA,CAAA,eAAA,EAAE,MAAM,GAAA,EAAA,CAAA,MAAA,EAAE,MAAM,GAAA,EAAA,CAAA,MAAA,EAAE,OAAO,GAAA,EAAA,CAAA,OAC9C;IAE9B,IAAM,SAAS,GAAGC,yBAAY,CAAC,GAAG,EAAE,eAAe,CAAC;AAEpD,IAAA,QACE,KAAC,CAAA,aAAA,CAAAC,qCAAkB,EAAC,EAAA,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,MAAM,GAAI,KAAK,EAAA;AAC/D,QAAA,KAAA,CAAA,aAAA,CAAC,SAAS,EACRC,kBAAA,CAAA,EAAA,SAAS,EAAEC,aAAU,CACnB,eAAe,EACf;AACE,gBAAA,IAAI,EAAE,OAAO;aACd,EACD,SAAS,IAAIC,4BAAsB,CAAC,SAAS,CAAC,EAC9C,SAAS,CACV,EACD,GAAG,EAAE,SAAS,EACd,IAAI,EAAC,MAAM,EACE,aAAA,EAAA,CAAC,OAAO,EAAA,GAChB,CAAC,MAAM,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAE,IAC7C,IAAI,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,GACxC,IAAI,CAAA,EAEP,SAAS,KAAK;AACb,cAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAC,KAAK,EAAE,KAAK,EAAA;AACxC,gBAAA,IAAI,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE;AAC/B,oBAAA,OAAO,KAAI,CAAA,aAAA,CAAA,IAAA,EAAA,EAAA,GAAG,EAAE,KAAK,EAAG,EAAA,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAM;;gBAEzD;AACF,aAAC;AACH,cAAE,QAAQ,CACF,CACO;AAEzB,CAAC;AAGL,aAAa,CAAC,SAAS,GAAG;IACxB,EAAE,EAAE,SAAS,CAAC,WAAW;IACzB,QAAQ,EAAE,SAAS,CAAC,IAAI;IACxB,SAAS,EAAE,SAAS,CAAC,MAAM;CAC5B;AAED,aAAa,CAAC,WAAW,GAAG,eAAe;;;;"}
1
+ {"version":3,"file":"CDropdownMenu.js","sources":["../../../../src/components/dropdown/CDropdownMenu.tsx"],"sourcesContent":[null],"names":["forwardRef","__rest","useContext","CDropdownContext","useForkedRef","CConditionalPortal","__assign","classNames","getAlignmentClassNames"],"mappings":";;;;;;;;;;;;IAuBa,aAAa,GACxBA,gBAAU,CACR,UAAC,EAAsD,EAAE,GAAG,EAAA;AAAzD,IAAA,IAAA,QAAQ,GAAA,EAAA,CAAA,QAAA,EAAE,EAAoB,GAAA,EAAA,CAAA,EAAA,EAAhB,SAAS,GAAG,EAAA,KAAA,KAAA,CAAA,GAAA,IAAI,GAAA,EAAA,EAAE,SAAS,GAAA,EAAA,CAAA,SAAA,EAAK,IAAI,GAAAC,gBAAA,CAAA,EAAA,EAApD,+BAAsD,CAAF;IAC7C,IAAA,EAAA,GACJC,gBAAU,CAACC,0BAAgB,CAAC,EADtB,SAAS,GAAA,EAAA,CAAA,SAAA,EAAE,SAAS,GAAA,EAAA,CAAA,SAAA,EAAE,IAAI,UAAA,EAAE,eAAe,GAAA,EAAA,CAAA,eAAA,EAAE,MAAM,GAAA,EAAA,CAAA,MAAA,EAAE,MAAM,GAAA,EAAA,CAAA,MAAA,EAAE,OAAO,GAAA,EAAA,CAAA,OAC9C;IAE9B,IAAM,SAAS,GAAGC,yBAAY,CAAC,GAAG,EAAE,eAAe,CAAC;AAEpD,IAAA,QACE,KAAC,CAAA,aAAA,CAAAC,qCAAkB,EAAC,EAAA,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,MAAM,GAAI,KAAK,EAAA;AAC/D,QAAA,KAAA,CAAA,aAAA,CAAC,SAAS,EACRC,kBAAA,CAAA,EAAA,SAAS,EAAEC,aAAU,CACnB,eAAe,EACf;AACE,gBAAA,IAAI,EAAE,OAAO;AACd,aAAA,EACD,SAAS,IAAIC,4BAAsB,CAAC,SAAS,CAAC,EAC9C,SAAS,CACV,EACD,GAAG,EAAE,SAAS,EACd,IAAI,EAAC,MAAM,EAAA,GACN,CAAC,MAAM,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAE,IAC7C,IAAI,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,GACxC,IAAI,CAEP,EAAA,SAAS,KAAK;AACb,cAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAC,KAAK,EAAE,KAAK,EAAA;AACxC,gBAAA,IAAI,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE;AAC/B,oBAAA,OAAO,KAAI,CAAA,aAAA,CAAA,IAAA,EAAA,EAAA,GAAG,EAAE,KAAK,EAAG,EAAA,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAM;;gBAEzD;AACF,aAAC;AACH,cAAE,QAAQ,CACF,CACO;AAEzB,CAAC;AAGL,aAAa,CAAC,SAAS,GAAG;IACxB,EAAE,EAAE,SAAS,CAAC,WAAW;IACzB,QAAQ,EAAE,SAAS,CAAC,IAAI;IACxB,SAAS,EAAE,SAAS,CAAC,MAAM;CAC5B;AAED,aAAa,CAAC,WAAW,GAAG,eAAe;;;;"}
@@ -1,32 +1,46 @@
1
1
  import React, { HTMLAttributes, ReactNode } from 'react';
2
+ import type { Options } from '@popperjs/core';
2
3
  import type { Placements, Triggers } from '../../types';
3
4
  export interface CPopoverProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title' | 'content'> {
4
5
  /**
5
- * Apply a CSS fade transition to the popover.
6
+ * Adds a fade transition animation to the React Popover.
6
7
  *
7
8
  * @since 4.9.0
8
9
  */
9
10
  animation?: boolean;
10
11
  /**
11
- * A string of all className you want applied to the component.
12
+ * Custom class name(s) for additional styling.
12
13
  */
13
14
  className?: string;
14
15
  /**
15
- * Appends the react popover to a specific element. You can pass an HTML element or function that returns a single element. By default `document.body`.
16
+ * Defines the container element to which the React Popover is appended.
17
+ * Accepts:
18
+ * - A DOM element (`HTMLElement` or `DocumentFragment`)
19
+ * - A function that returns a single element
20
+ * - `null` (defaults to `document.body`)
16
21
  *
22
+ * @example
23
+ * <CPopover container={document.getElementById('my-container')}>...</CPopover>
24
+ *
25
+ * @default document.body
17
26
  * @since 4.11.0
18
27
  */
19
28
  container?: DocumentFragment | Element | (() => DocumentFragment | Element | null) | null;
20
29
  /**
21
- * Content node for your component.
30
+ * Main content of the React Popover. It can be a string or any valid React node.
22
31
  */
23
32
  content: ReactNode | string;
24
33
  /**
25
- * Offset of the popover relative to its target.
26
- */
27
- offset?: [number, number];
28
- /**
29
- * The delay for displaying and hiding the popover (in milliseconds). When a numerical value is provided, the delay applies to both the hide and show actions. The object structure for specifying the delay is as follows: delay: `{ 'show': 500, 'hide': 100 }`.
34
+ * Delay (in milliseconds) before showing or hiding the React Popover.
35
+ * - If a number is provided, that delay applies to both "show" and "hide".
36
+ * - If an object is provided, use separate values for "show" and "hide".
37
+ *
38
+ * @example
39
+ * // Delays 300ms on both show and hide
40
+ * <CPopover delay={300}>...</CPopover>
41
+ *
42
+ * // Delays 500ms on show and 100ms on hide
43
+ * <CPopover delay={{ show: 500, hide: 100 }}>...</CPopover>
30
44
  *
31
45
  * @since 4.9.0
32
46
  */
@@ -35,35 +49,76 @@ export interface CPopoverProps extends Omit<HTMLAttributes<HTMLDivElement>, 'tit
35
49
  hide: number;
36
50
  };
37
51
  /**
38
- * Specify the desired order of fallback placements by providing a list of placements as an array. The placements should be prioritized based on preference.
52
+ * Specifies the fallback placements when the preferred `placement` cannot be met.
39
53
  *
54
+ * @type 'top', 'right', 'bottom', 'left' | ('top', 'right', 'bottom', 'left')[]
40
55
  * @since 4.9.0
41
56
  */
42
57
  fallbackPlacements?: Placements | Placements[];
43
58
  /**
44
- * Callback fired when the component requests to be hidden.
59
+ * Offset of the React Popover relative to its toggle element, in the form `[x, y]`.
60
+ *
61
+ * @example
62
+ * // Offset the menu 0px in X and 10px in Y direction
63
+ * <CPopover offset={[0, 10]}>...</CPopover>
64
+ *
65
+ * // Offset the menu 5px in both X and Y direction
66
+ * <CPopover offset={[5, 5]}>...</CPopover>
67
+ */
68
+ offset?: [number, number];
69
+ /**
70
+ * Invoked when the React Popover is about to hide.
45
71
  */
46
72
  onHide?: () => void;
47
73
  /**
48
- * Callback fired when the component requests to be shown.
74
+ * Invoked when the React Popover is about to show.
49
75
  */
50
76
  onShow?: () => void;
51
77
  /**
52
- * Title node for your component.
78
+ * Placement of the React Popover. Popper.js may override this based on available space.
53
79
  */
54
- title?: ReactNode | string;
80
+ placement?: 'auto' | 'top' | 'right' | 'bottom' | 'left';
55
81
  /**
56
- * Sets which event handlers you’d like provided to your toggle prop. You can specify one trigger or an array of them.
82
+ * Allows customization of the Popper.js configuration for the React Popover.
83
+ * Can be an object or a function returning a modified configuration.
84
+ * [Learn more](https://popper.js.org/docs/v2/constructors/#options)
85
+ *
86
+ * @example
87
+ * <CPopover
88
+ * popperConfig={(defaultConfig) => ({
89
+ * ...defaultConfig,
90
+ * strategy: 'fixed',
91
+ * modifiers: [
92
+ * ...defaultConfig.modifiers,
93
+ * { name: 'computeStyles', options: { adaptive: false } },
94
+ * ],
95
+ * })}
96
+ * >...</CPopover>
57
97
  *
58
- * @type 'hover' | 'focus' | 'click'
98
+ * @since 5.5.0
59
99
  */
60
- trigger?: Triggers | Triggers[];
100
+ popperConfig?: Partial<Options> | ((defaultPopperConfig: Partial<Options>) => Partial<Options>);
61
101
  /**
62
- * Describes the placement of your component after Popper.js has applied all the modifiers that may have flipped or altered the originally provided placement property.
102
+ * Title for the React Popover header. Can be a string or any valid React node.
63
103
  */
64
- placement?: 'auto' | 'top' | 'right' | 'bottom' | 'left';
104
+ title?: ReactNode | string;
105
+ /**
106
+ * Determines which events trigger the visibility of the React Popover. Can be a single trigger or an array of triggers.
107
+ *
108
+ * @example
109
+ * // Hover-only popover
110
+ * <CPopover trigger="hover">...</CPopover>
111
+ *
112
+ * // Hover + click combined
113
+ * <CPopover trigger={['hover', 'click']}>...</CPopover>
114
+ *
115
+ * @type 'hover' | 'focus' | 'click' | ('hover' | 'focus' | 'click')[]
116
+ */
117
+ trigger?: Triggers | Triggers[];
65
118
  /**
66
- * Toggle the visibility of popover component.
119
+ * Controls the visibility of the React Popover.
120
+ * - `true` shows the popover.
121
+ * - `false` hides the popover.
67
122
  */
68
123
  visible?: boolean;
69
124
  }
@@ -12,7 +12,7 @@ var useForkedRef = require('../../hooks/useForkedRef.js');
12
12
  var props = require('../../props.js');
13
13
 
14
14
  var CPopover = React.forwardRef(function (_a, ref) {
15
- var children = _a.children, _b = _a.animation, animation = _b === void 0 ? true : _b, className = _a.className, container = _a.container, content = _a.content, _c = _a.delay, delay = _c === void 0 ? 0 : _c, _d = _a.fallbackPlacements, fallbackPlacements = _d === void 0 ? ['top', 'right', 'bottom', 'left'] : _d, _e = _a.offset, offset = _e === void 0 ? [0, 8] : _e, onHide = _a.onHide, onShow = _a.onShow, _f = _a.placement, placement = _f === void 0 ? 'top' : _f, title = _a.title, _g = _a.trigger, trigger = _g === void 0 ? 'click' : _g, visible = _a.visible, rest = tslib_es6.__rest(_a, ["children", "animation", "className", "container", "content", "delay", "fallbackPlacements", "offset", "onHide", "onShow", "placement", "title", "trigger", "visible"]);
15
+ var children = _a.children, _b = _a.animation, animation = _b === void 0 ? true : _b, className = _a.className, container = _a.container, content = _a.content, _c = _a.delay, delay = _c === void 0 ? 0 : _c, _d = _a.fallbackPlacements, fallbackPlacements = _d === void 0 ? ['top', 'right', 'bottom', 'left'] : _d, _e = _a.offset, offset = _e === void 0 ? [0, 8] : _e, onHide = _a.onHide, onShow = _a.onShow, _f = _a.placement, placement = _f === void 0 ? 'top' : _f, popperConfig = _a.popperConfig, title = _a.title, _g = _a.trigger, trigger = _g === void 0 ? 'click' : _g, visible = _a.visible, rest = tslib_es6.__rest(_a, ["children", "animation", "className", "container", "content", "delay", "fallbackPlacements", "offset", "onHide", "onShow", "placement", "popperConfig", "title", "trigger", "visible"]);
16
16
  var popoverRef = React.useRef(null);
17
17
  var togglerRef = React.useRef(null);
18
18
  var forkedRef = useForkedRef.useForkedRef(ref, popoverRef);
@@ -21,29 +21,15 @@ var CPopover = React.forwardRef(function (_a, ref) {
21
21
  var _j = React.useState(visible), _visible = _j[0], setVisible = _j[1];
22
22
  var _k = usePopper.usePopper(), initPopper = _k.initPopper, destroyPopper = _k.destroyPopper;
23
23
  var _delay = typeof delay === 'number' ? { show: delay, hide: delay } : delay;
24
- var popperConfig = {
24
+ var defaultPopperConfig = {
25
25
  modifiers: [
26
- {
27
- name: 'arrow',
28
- options: {
29
- element: '.popover-arrow',
30
- },
31
- },
32
- {
33
- name: 'flip',
34
- options: {
35
- fallbackPlacements: fallbackPlacements,
36
- },
37
- },
38
- {
39
- name: 'offset',
40
- options: {
41
- offset: offset,
42
- },
43
- },
26
+ { name: 'arrow', options: { element: '.popover-arrow' } },
27
+ { name: 'flip', options: { fallbackPlacements: fallbackPlacements } },
28
+ { name: 'offset', options: { offset: offset } },
44
29
  ],
45
30
  placement: getRTLPlacement.default(placement, togglerRef.current),
46
31
  };
32
+ var computedPopperConfig = tslib_es6.__assign(tslib_es6.__assign({}, defaultPopperConfig), (typeof popperConfig === 'function' ? popperConfig(defaultPopperConfig) : popperConfig));
47
33
  React.useEffect(function () {
48
34
  if (visible) {
49
35
  handleShow();
@@ -53,7 +39,7 @@ var CPopover = React.forwardRef(function (_a, ref) {
53
39
  }, [visible]);
54
40
  React.useEffect(function () {
55
41
  if (mounted && togglerRef.current && popoverRef.current) {
56
- initPopper(togglerRef.current, popoverRef.current, popperConfig);
42
+ initPopper(togglerRef.current, popoverRef.current, computedPopperConfig);
57
43
  setTimeout(function () {
58
44
  setVisible(true);
59
45
  }, _delay.show);
@@ -122,6 +108,7 @@ CPopover.propTypes = {
122
108
  onHide: PropTypes.func,
123
109
  onShow: PropTypes.func,
124
110
  placement: PropTypes.oneOf(['auto', 'top', 'right', 'bottom', 'left']),
111
+ popperConfig: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
125
112
  title: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),
126
113
  trigger: props.triggerPropType,
127
114
  visible: PropTypes.bool,
@@ -1 +1 @@
1
- {"version":3,"file":"CPopover.js","sources":["../../../../src/components/popover/CPopover.tsx"],"sourcesContent":[null],"names":["forwardRef","__rest","useRef","useForkedRef","useId","useState","usePopper","getRTLPlacement","useEffect","executeAfterTransition","__assign","CConditionalPortal","classNames","fallbackPlacementsPropType","triggerPropType"],"mappings":"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"}
1
+ {"version":3,"file":"CPopover.js","sources":["../../../../src/components/popover/CPopover.tsx"],"sourcesContent":[null],"names":["forwardRef","__rest","useRef","useForkedRef","useId","useState","usePopper","getRTLPlacement","useEffect","executeAfterTransition","__assign","CConditionalPortal","classNames","fallbackPlacementsPropType","triggerPropType"],"mappings":"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"}
@@ -91,7 +91,9 @@ var CSmartTableHead = React.forwardRef(function (_a, ref) {
91
91
  : true) ? (typeof column !== 'string' && typeof column.filter === 'function' ? (column.filter(utils.getColumnValues(items, utils.getColumnKey(column)), function (value) {
92
92
  return handleOnCustomFilterChange &&
93
93
  handleOnCustomFilterChange(utils.getColumnKey(column), value);
94
- })) : (React.createElement(CFormInput.CFormInput, { size: "sm", onInput: function (event) {
94
+ }, columnFilterState && columnFilterState[utils.getColumnKey(column)]
95
+ ? columnFilterState[utils.getColumnKey(column)]
96
+ : undefined)) : (React.createElement(CFormInput.CFormInput, { size: "sm", onInput: function (event) {
95
97
  return handleFilterOnInput &&
96
98
  handleFilterOnInput(utils.getColumnKey(column), event.target.value);
97
99
  }, onChange: function (event) {