@coreui/react-pro 5.0.0-rc.3 → 5.1.0-alpha.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 (75) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/components/badge/CBadge.d.ts +1 -1
  3. package/dist/cjs/components/calendar/CCalendar.d.ts +3 -3
  4. package/dist/cjs/components/card/CCard.d.ts +1 -1
  5. package/dist/cjs/components/date-range-picker/CDateRangePicker.d.ts +3 -3
  6. package/dist/cjs/components/dropdown/CDropdownToggle.d.ts +1 -1
  7. package/dist/cjs/components/index.d.ts +1 -0
  8. package/dist/cjs/components/nav/CNavGroup.d.ts +1 -1
  9. package/dist/cjs/components/nav/CNavGroupItems.d.ts +1 -1
  10. package/dist/cjs/components/nav/CNavItem.d.ts +1 -1
  11. package/dist/cjs/components/popover/CPopover.js +41 -40
  12. package/dist/cjs/components/popover/CPopover.js.map +1 -1
  13. package/dist/cjs/components/rating/CRating.d.ts +70 -0
  14. package/dist/cjs/components/rating/CRating.js +123 -0
  15. package/dist/cjs/components/rating/CRating.js.map +1 -0
  16. package/dist/cjs/components/rating/index.d.ts +2 -0
  17. package/dist/cjs/components/sidebar/CSidebarBrand.d.ts +1 -1
  18. package/dist/cjs/components/sidebar/CSidebarNav.d.ts +1 -1
  19. package/dist/cjs/components/time-picker/CTimePicker.d.ts +3 -3
  20. package/dist/cjs/components/tooltip/CTooltip.js +44 -40
  21. package/dist/cjs/components/tooltip/CTooltip.js.map +1 -1
  22. package/dist/cjs/hooks/usePopper.d.ts +1 -0
  23. package/dist/cjs/hooks/usePopper.js +11 -4
  24. package/dist/cjs/hooks/usePopper.js.map +1 -1
  25. package/dist/cjs/hooks/useStateWithCallback.d.ts +1 -1
  26. package/dist/cjs/index.js +2 -0
  27. package/dist/cjs/index.js.map +1 -1
  28. package/dist/cjs/node_modules/classnames/index.js +45 -27
  29. package/dist/cjs/node_modules/classnames/index.js.map +1 -1
  30. package/dist/esm/components/badge/CBadge.d.ts +1 -1
  31. package/dist/esm/components/calendar/CCalendar.d.ts +3 -3
  32. package/dist/esm/components/card/CCard.d.ts +1 -1
  33. package/dist/esm/components/date-range-picker/CDateRangePicker.d.ts +3 -3
  34. package/dist/esm/components/dropdown/CDropdownToggle.d.ts +1 -1
  35. package/dist/esm/components/index.d.ts +1 -0
  36. package/dist/esm/components/nav/CNavGroup.d.ts +1 -1
  37. package/dist/esm/components/nav/CNavGroupItems.d.ts +1 -1
  38. package/dist/esm/components/nav/CNavItem.d.ts +1 -1
  39. package/dist/esm/components/popover/CPopover.js +41 -40
  40. package/dist/esm/components/popover/CPopover.js.map +1 -1
  41. package/dist/esm/components/rating/CRating.d.ts +70 -0
  42. package/dist/esm/components/rating/CRating.js +121 -0
  43. package/dist/esm/components/rating/CRating.js.map +1 -0
  44. package/dist/esm/components/rating/index.d.ts +2 -0
  45. package/dist/esm/components/sidebar/CSidebarBrand.d.ts +1 -1
  46. package/dist/esm/components/sidebar/CSidebarNav.d.ts +1 -1
  47. package/dist/esm/components/time-picker/CTimePicker.d.ts +3 -3
  48. package/dist/esm/components/tooltip/CTooltip.js +44 -40
  49. package/dist/esm/components/tooltip/CTooltip.js.map +1 -1
  50. package/dist/esm/hooks/usePopper.d.ts +1 -0
  51. package/dist/esm/hooks/usePopper.js +11 -4
  52. package/dist/esm/hooks/usePopper.js.map +1 -1
  53. package/dist/esm/hooks/useStateWithCallback.d.ts +1 -1
  54. package/dist/esm/index.js +1 -0
  55. package/dist/esm/index.js.map +1 -1
  56. package/dist/esm/node_modules/classnames/index.js +45 -27
  57. package/dist/esm/node_modules/classnames/index.js.map +1 -1
  58. package/package.json +4 -4
  59. package/src/components/badge/CBadge.tsx +1 -1
  60. package/src/components/calendar/CCalendar.tsx +3 -3
  61. package/src/components/card/CCard.tsx +1 -1
  62. package/src/components/date-range-picker/CDateRangePicker.tsx +3 -3
  63. package/src/components/dropdown/CDropdownToggle.tsx +1 -1
  64. package/src/components/index.ts +1 -0
  65. package/src/components/nav/CNavGroup.tsx +1 -1
  66. package/src/components/nav/CNavGroupItems.tsx +1 -1
  67. package/src/components/nav/CNavItem.tsx +1 -1
  68. package/src/components/popover/CPopover.tsx +51 -66
  69. package/src/components/rating/CRating.tsx +291 -0
  70. package/src/components/rating/index.ts +3 -0
  71. package/src/components/sidebar/CSidebarBrand.tsx +1 -1
  72. package/src/components/sidebar/CSidebarNav.tsx +1 -1
  73. package/src/components/time-picker/CTimePicker.tsx +3 -3
  74. package/src/components/tooltip/CTooltip.tsx +55 -66
  75. package/src/hooks/usePopper.ts +15 -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.0.0-rc.3.zip)
45
+ - [Download the latest release](https://github.com/coreui/coreui-react-pro/archive/v5.1.0-alpha.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`
@@ -34,7 +34,7 @@ export interface CBadgeProps extends HTMLAttributes<HTMLDivElement | HTMLSpanEle
34
34
  * Sets the component's color scheme to one of CoreUI's themed colors, ensuring the text color contrast adheres to the WCAG 4.5:1 contrast ratio standard for accessibility.
35
35
  *
36
36
  * @type 'primary' | 'secondary' | 'success' | 'danger' | 'warning' | 'info' | 'dark' | 'light' | string
37
- * @since 5.0.0-rc.3
37
+ * @since 5.0.0
38
38
  */
39
39
  textBgColor?: Colors;
40
40
  /**
@@ -99,7 +99,7 @@ export interface CCalendarProps {
99
99
  /**
100
100
  * Set whether to display week numbers in the calendar.
101
101
  *
102
- * @since 5.0.0-rc.3
102
+ * @since 5.0.0
103
103
  */
104
104
  showWeekNumber?: boolean;
105
105
  /**
@@ -109,7 +109,7 @@ export interface CCalendarProps {
109
109
  /**
110
110
  * Specify the type of date selection as day, week, month, or year.
111
111
  *
112
- * @since 5.0.0-rc.3
112
+ * @since 5.0.0
113
113
  */
114
114
  selectionType?: 'day' | 'week' | 'month' | 'year';
115
115
  /**
@@ -125,7 +125,7 @@ export interface CCalendarProps {
125
125
  /**
126
126
  * Label displayed over week numbers in the calendar.
127
127
  *
128
- * @since 5.0.0-rc.3
128
+ * @since 5.0.0
129
129
  */
130
130
  weekNumbersLabel?: string;
131
131
  /**
@@ -21,7 +21,7 @@ export interface CCardProps extends HTMLAttributes<HTMLDivElement> {
21
21
  * Sets the component's color scheme to one of CoreUI's themed colors, ensuring the text color contrast adheres to the WCAG 4.5:1 contrast ratio standard for accessibility.
22
22
  *
23
23
  * @type 'primary' | 'secondary' | 'success' | 'danger' | 'warning' | 'info' | 'dark' | 'light' | string
24
- * @since 5.0.0-rc.3
24
+ * @since 5.0.0
25
25
  */
26
26
  textBgColor?: Colors;
27
27
  }
@@ -85,19 +85,19 @@ export interface CDateRangePickerProps extends Omit<CFormControlWrapperProps, 'f
85
85
  /**
86
86
  * Custom function to format the selected date into a string according to a custom format.
87
87
  *
88
- * @since v5.0.0-rc.3
88
+ * @since 5.0.0
89
89
  */
90
90
  inputDateFormat?: (date: Date) => string;
91
91
  /**
92
92
  * Custom function to parse the input value into a valid Date object.
93
93
  *
94
- * @since v5.0.0-rc.3
94
+ * @since 5.0.0
95
95
  */
96
96
  inputDateParse?: (date: string | Date) => Date;
97
97
  /**
98
98
  * Defines the delay (in milliseconds) for the input field's onChange event.
99
99
  *
100
- * @since v5.0.0-rc.3
100
+ * @since 5.0.0
101
101
  */
102
102
  inputOnChangeDelay?: number;
103
103
  /**
@@ -13,7 +13,7 @@ export interface CDropdownToggleProps extends Omit<CButtonProps, 'type'> {
13
13
  /**
14
14
  * If a dropdown `variant` is set to `nav-item` then render the toggler as a link instead of a button.
15
15
  *
16
- * @since v5.0.0-rc.3
16
+ * @since 5.0.0
17
17
  */
18
18
  navLink?: boolean;
19
19
  /**
@@ -33,6 +33,7 @@ export * from './pagination';
33
33
  export * from './placeholder';
34
34
  export * from './progress';
35
35
  export * from './popover';
36
+ export * from './rating';
36
37
  export * from './smart-table';
37
38
  export * from './smart-pagination';
38
39
  export * from './sidebar';
@@ -4,7 +4,7 @@ export interface CNavGroupProps extends HTMLAttributes<HTMLDivElement | HTMLLIEl
4
4
  /**
5
5
  * Component used for the root node. Either a string to use a HTML element or a component.
6
6
  *
7
- * @since 5.0.0-rc.3
7
+ * @since 5.0.0
8
8
  */
9
9
  as?: ElementType;
10
10
  /**
@@ -4,7 +4,7 @@ export interface CNavGroupItemsProps extends HTMLAttributes<HTMLDivElement | HTM
4
4
  /**
5
5
  * Component used for the root node. Either a string to use a HTML element or a component.
6
6
  *
7
- * @since 5.0.0-rc.3
7
+ * @since 5.0.0
8
8
  */
9
9
  as?: ElementType;
10
10
  /**
@@ -5,7 +5,7 @@ export interface CNavItemProps extends Omit<CNavLinkProps, 'component'> {
5
5
  /**
6
6
  * Component used for the root node. Either a string to use a HTML element or a component.
7
7
  *
8
- * @since 5.0.0-rc.3
8
+ * @since 5.0.0
9
9
  */
10
10
  as?: ElementType;
11
11
  }
@@ -8,18 +8,18 @@ var CConditionalPortal = require('../conditional-portal/CConditionalPortal.js');
8
8
  var useForkedRef = require('../../hooks/useForkedRef.js');
9
9
  var usePopper = require('../../hooks/usePopper.js');
10
10
  var props = require('../../props.js');
11
- var getTransitionDurationFromElement = require('../../utils/getTransitionDurationFromElement.js');
11
+ var executeAfterTransition = require('../../utils/executeAfterTransition.js');
12
12
  var getRTLPlacement = require('../../utils/getRTLPlacement.js');
13
- var Transition = require('../../node_modules/react-transition-group/esm/Transition.js');
14
13
 
15
14
  var CPopover = React.forwardRef(function (_a, ref) {
16
- 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; _a.onShow; var _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, 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"]);
17
16
  var popoverRef = React.useRef(null);
18
17
  var togglerRef = React.useRef(null);
19
18
  var forkedRef = useForkedRef.useForkedRef(ref, popoverRef);
20
19
  var uID = React.useRef("popover".concat(Math.floor(Math.random() * 1000000)));
21
20
  var _h = usePopper.usePopper(), initPopper = _h.initPopper, destroyPopper = _h.destroyPopper;
22
- var _j = React.useState(visible), _visible = _j[0], setVisible = _j[1];
21
+ var _j = React.useState(false), mounted = _j[0], setMounted = _j[1];
22
+ var _k = React.useState(visible), _visible = _k[0], setVisible = _k[1];
23
23
  var _delay = typeof delay === 'number' ? { show: delay, hide: delay } : delay;
24
24
  var popperConfig = {
25
25
  modifiers: [
@@ -47,50 +47,51 @@ var CPopover = React.forwardRef(function (_a, ref) {
47
47
  React.useEffect(function () {
48
48
  setVisible(visible);
49
49
  }, [visible]);
50
- var toggleVisible = function (visible) {
51
- if (visible) {
52
- setTimeout(function () { return setVisible(true); }, _delay.show);
53
- return;
50
+ React.useEffect(function () {
51
+ if (_visible) {
52
+ setMounted(true);
53
+ if (popoverRef.current) {
54
+ popoverRef.current.classList.remove('fade', 'show');
55
+ destroyPopper();
56
+ }
57
+ setTimeout(function () {
58
+ if (togglerRef.current && popoverRef.current) {
59
+ if (animation) {
60
+ popoverRef.current.classList.add('fade');
61
+ }
62
+ initPopper(togglerRef.current, popoverRef.current, popperConfig);
63
+ popoverRef.current.classList.add('show');
64
+ onShow && onShow();
65
+ }
66
+ }, _delay.show);
54
67
  }
55
- setTimeout(function () { return setVisible(false); }, _delay.hide);
56
- };
68
+ return function () {
69
+ if (popoverRef.current) {
70
+ popoverRef.current.classList.remove('show');
71
+ onHide && onHide();
72
+ executeAfterTransition.default(function () {
73
+ destroyPopper();
74
+ setMounted(false);
75
+ }, popoverRef.current);
76
+ }
77
+ };
78
+ }, [_visible]);
57
79
  return (React.createElement(React.Fragment, null,
58
80
  React.cloneElement(children, tslib_es6.__assign(tslib_es6.__assign(tslib_es6.__assign(tslib_es6.__assign(tslib_es6.__assign({}, (_visible && {
59
81
  'aria-describedby': uID.current,
60
82
  })), { ref: togglerRef }), ((trigger === 'click' || trigger.includes('click')) && {
61
- onClick: function () { return toggleVisible(!_visible); },
83
+ onClick: function () { return setVisible(!_visible); },
62
84
  })), ((trigger === 'focus' || trigger.includes('focus')) && {
63
- onFocus: function () { return toggleVisible(true); },
64
- onBlur: function () { return toggleVisible(false); },
85
+ onFocus: function () { return setVisible(true); },
86
+ onBlur: function () { return setVisible(false); },
65
87
  })), ((trigger === 'hover' || trigger.includes('hover')) && {
66
- onMouseEnter: function () { return toggleVisible(true); },
67
- onMouseLeave: function () { return toggleVisible(false); },
88
+ onMouseEnter: function () { return setVisible(true); },
89
+ onMouseLeave: function () { return setVisible(false); },
68
90
  }))),
69
- React.createElement(CConditionalPortal.CConditionalPortal, { container: container, portal: true },
70
- React.createElement(Transition.default, { in: _visible, mountOnEnter: true, nodeRef: popoverRef, onEnter: function () {
71
- if (togglerRef.current && popoverRef.current) {
72
- initPopper(togglerRef.current, popoverRef.current, popperConfig);
73
- }
74
- }, onEntering: function () {
75
- if (togglerRef.current && popoverRef.current) {
76
- popoverRef.current.style.display = 'initial';
77
- }
78
- }, onExit: onHide, onExited: function () {
79
- destroyPopper();
80
- }, timeout: {
81
- enter: 0,
82
- exit: popoverRef.current
83
- ? getTransitionDurationFromElement.default(popoverRef.current) + 50
84
- : 200,
85
- }, unmountOnExit: true }, function (state) { return (React.createElement("div", tslib_es6.__assign({ className: index.default('popover', 'bs-popover-auto', {
86
- fade: animation,
87
- show: state === 'entered',
88
- }, className), id: uID.current, ref: forkedRef, role: "tooltip", style: {
89
- display: 'none',
90
- } }, rest),
91
- React.createElement("div", { className: "popover-arrow" }),
92
- React.createElement("div", { className: "popover-header" }, title),
93
- React.createElement("div", { className: "popover-body" }, content))); }))));
91
+ React.createElement(CConditionalPortal.CConditionalPortal, { container: container, portal: true }, mounted && (React.createElement("div", tslib_es6.__assign({ className: index.default('popover', 'bs-popover-auto', className), id: uID.current, ref: forkedRef, role: "tooltip" }, rest),
92
+ React.createElement("div", { className: "popover-arrow" }),
93
+ React.createElement("div", { className: "popover-header" }, title),
94
+ React.createElement("div", { className: "popover-body" }, content))))));
94
95
  });
95
96
  CPopover.propTypes = {
96
97
  animation: PropTypes.bool,
@@ -1 +1 @@
1
- {"version":3,"file":"CPopover.js","sources":["../../../../src/components/popover/CPopover.tsx"],"sourcesContent":[null],"names":["forwardRef","__rest","useRef","useForkedRef","usePopper","useState","getRTLPlacement","useEffect","__assign","CConditionalPortal","Transition","getTransitionDurationFromElement","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","usePopper","useState","getRTLPlacement","useEffect","executeAfterTransition","__assign","CConditionalPortal","classNames","fallbackPlacementsPropType","triggerPropType"],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ import React, { HTMLAttributes } from 'react';
2
+ type Icon = {
3
+ [key: number]: JSX.Element;
4
+ };
5
+ export interface CRatingProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {
6
+ /**
7
+ * The default icon to display when the item is selected.
8
+ */
9
+ activeIcon?: string | JSX.Element | Icon;
10
+ /**
11
+ * Enables the clearing upon clicking the selected item again.
12
+ */
13
+ allowClear?: boolean;
14
+ /**
15
+ * A string of all className you want applied to the component.
16
+ */
17
+ className?: string;
18
+ /**
19
+ * Toggle the disabled state for the component.
20
+ */
21
+ disabled?: boolean;
22
+ /**
23
+ * If enabled, only the currently selected icon will be visibly highlighted.
24
+ */
25
+ highlightOnlySelected?: boolean;
26
+ /**
27
+ * The default icon to display when the item is not selected.
28
+ */
29
+ icon?: string | JSX.Element | Icon;
30
+ /**
31
+ * The maximum value the user can select.
32
+ */
33
+ max?: number;
34
+ /**
35
+ * The name attribute of the radio input elements.
36
+ */
37
+ name?: string;
38
+ /**
39
+ * Execute a function when a user changes the selected element.
40
+ */
41
+ onChange?: (value: number | null) => void;
42
+ /**
43
+ * Execute a function when a user hover the element.
44
+ */
45
+ onHover?: (value: number) => void;
46
+ /**
47
+ * Minimum increment value change allowed.
48
+ */
49
+ precision?: number;
50
+ /**
51
+ * Toggle the readonly state for the component.
52
+ */
53
+ readOnly?: boolean;
54
+ /**
55
+ * Size the component small, large, or custom if you define custom icons with custom height.
56
+ */
57
+ size?: 'sm' | 'lg' | 'custom';
58
+ /**
59
+ * Enable tooltips with default values or set specific labels for each icon.
60
+ */
61
+ tooltips?: boolean | string[];
62
+ /**
63
+ * The `value` attribute of component.
64
+ *
65
+ * @controllable onChange
66
+ * */
67
+ value?: number;
68
+ }
69
+ export declare const CRating: React.ForwardRefExoticComponent<CRatingProps & React.RefAttributes<HTMLDivElement>>;
70
+ export {};
@@ -0,0 +1,123 @@
1
+ 'use strict';
2
+
3
+ var tslib_es6 = require('../../node_modules/tslib/tslib.es6.js');
4
+ var React = require('react');
5
+ var PropTypes = require('prop-types');
6
+ var index = require('../../node_modules/classnames/index.js');
7
+ var CTooltip = require('../tooltip/CTooltip.js');
8
+
9
+ var CConditionalTooltip = function (_a) {
10
+ var children = _a.children, content = _a.content, tooltip = _a.tooltip;
11
+ return tooltip ? (React.createElement(CTooltip.CTooltip, { content: content },
12
+ React.createElement("span", null, children))) : (children);
13
+ };
14
+ var CRating = React.forwardRef(function (_a, ref) {
15
+ var _b;
16
+ var activeIcon = _a.activeIcon, allowClear = _a.allowClear, className = _a.className, disabled = _a.disabled, highlightOnlySelected = _a.highlightOnlySelected, icon = _a.icon, _c = _a.max, max = _c === void 0 ? 5 : _c, name = _a.name, onChange = _a.onChange, onHover = _a.onHover, _d = _a.precision, precision = _d === void 0 ? 1 : _d, readOnly = _a.readOnly, size = _a.size, tooltips = _a.tooltips, value = _a.value, rest = tslib_es6.__rest(_a, ["activeIcon", "allowClear", "className", "disabled", "highlightOnlySelected", "icon", "max", "name", "onChange", "onHover", "precision", "readOnly", "size", "tooltips", "value"]);
17
+ var _e = React.useState(false), cleared = _e[0], setCleared = _e[1];
18
+ var _f = React.useState(value !== null && value !== void 0 ? value : null), currentValue = _f[0], setCurrentValue = _f[1];
19
+ var _g = React.useState(null), hoverValue = _g[0], setHoverValue = _g[1];
20
+ var _h = React.useState(null), tooltipValue = _h[0], setTooltipValue = _h[1];
21
+ var _name = name || React.useId();
22
+ var handleMouseEnter = function (value) {
23
+ if (disabled || readOnly) {
24
+ return;
25
+ }
26
+ onHover && onHover(value);
27
+ setHoverValue(value);
28
+ value && setTooltipValue(value);
29
+ };
30
+ var handleOnChange = function (value) {
31
+ if (disabled || readOnly) {
32
+ return;
33
+ }
34
+ if (cleared) {
35
+ setCleared(false);
36
+ return;
37
+ }
38
+ setCurrentValue(value);
39
+ onChange && onChange(value);
40
+ };
41
+ var handleOnClick = function (value) {
42
+ if (disabled || readOnly) {
43
+ return;
44
+ }
45
+ if (allowClear && value === currentValue) {
46
+ setCleared(true);
47
+ onChange && onChange(null);
48
+ setCurrentValue(null);
49
+ setHoverValue(null);
50
+ }
51
+ };
52
+ return (React.createElement("div", tslib_es6.__assign({ className: index.default('rating', (_b = {},
53
+ _b["rating-".concat(size)] = size,
54
+ _b.disabled = disabled,
55
+ _b.readonly = readOnly,
56
+ _b), className), onMouseLeave: function () { return !disabled && !readOnly && setHoverValue(null); }, role: "radiogroup" }, rest, { ref: ref }), Array.from({ length: max }, function (_, index$1) {
57
+ var numberOfRadios = 1 / precision;
58
+ return (React.createElement(CConditionalTooltip, tslib_es6.__assign({ key: index$1 }, (tooltips && {
59
+ content: Array.isArray(tooltips)
60
+ ? tooltips[index$1]
61
+ : precision
62
+ ? tooltipValue
63
+ : index$1 + 1,
64
+ tooltip: true,
65
+ })),
66
+ React.createElement("div", { className: "rating-item" }, Array.from({ length: numberOfRadios }, function (_, _index) {
67
+ var _a, _b;
68
+ var isNotLastItem = _index + 1 < numberOfRadios;
69
+ var value = numberOfRadios === 1 ? index$1 + 1 : index$1 + (_index + 1) * (1 * precision);
70
+ var id = React.useId();
71
+ var isItemChecked = function () { return value === currentValue; };
72
+ var isItemActive = function () {
73
+ if (highlightOnlySelected
74
+ ? hoverValue === value
75
+ : hoverValue && hoverValue >= value) {
76
+ return true;
77
+ }
78
+ if (hoverValue === null &&
79
+ (highlightOnlySelected
80
+ ? isItemChecked()
81
+ : currentValue && currentValue >= value)) {
82
+ return true;
83
+ }
84
+ return false;
85
+ };
86
+ return (React.createElement(React.Fragment, { key: value },
87
+ React.createElement("label", tslib_es6.__assign({ className: index.default('rating-item-label', {
88
+ active: isItemActive(),
89
+ }), htmlFor: id, onClick: function () { return handleOnClick(value); }, onMouseEnter: function () { return handleMouseEnter(value); } }, (isNotLastItem && {
90
+ style: {
91
+ zIndex: 1 / precision - _index,
92
+ position: 'absolute',
93
+ width: "".concat(precision * (_index + 1) * 100, "%"),
94
+ overflow: 'hidden',
95
+ opacity: 0,
96
+ },
97
+ })),
98
+ icon ? (React.createElement("div", { className: "rating-item-custom-icon" }, (_a = icon[value]) !== null && _a !== void 0 ? _a : icon)) : (React.createElement("div", { className: "rating-item-icon" })),
99
+ activeIcon && (React.createElement("div", { className: "rating-item-custom-icon-active" }, (_b = activeIcon[value]) !== null && _b !== void 0 ? _b : activeIcon))),
100
+ React.createElement("input", { className: "rating-item-input", checked: isItemChecked(), disabled: disabled || readOnly, id: id, name: _name, onChange: function () { return handleOnChange(value); }, onFocus: function () { return handleMouseEnter(value); }, type: "radio", value: value })));
101
+ }))));
102
+ })));
103
+ });
104
+ CRating.propTypes = {
105
+ children: PropTypes.node,
106
+ activeIcon: PropTypes.any,
107
+ allowClear: PropTypes.bool,
108
+ disabled: PropTypes.bool,
109
+ highlightOnlySelected: PropTypes.bool,
110
+ icon: PropTypes.any,
111
+ max: PropTypes.number,
112
+ name: PropTypes.string,
113
+ onChange: PropTypes.func,
114
+ onHover: PropTypes.func,
115
+ precision: PropTypes.number,
116
+ readOnly: PropTypes.bool,
117
+ size: PropTypes.oneOf(['sm', 'lg', 'custom']),
118
+ value: PropTypes.number,
119
+ };
120
+ CRating.displayName = 'CRating';
121
+
122
+ exports.CRating = CRating;
123
+ //# sourceMappingURL=CRating.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CRating.js","sources":["../../../../src/components/rating/CRating.tsx"],"sourcesContent":[null],"names":["CTooltip","forwardRef","__rest","useState","useId","__assign","classNames","index","Fragment"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { CRating } from './CRating';
2
+ export { CRating };
@@ -4,7 +4,7 @@ export interface CSidebarBrandProps extends HTMLAttributes<HTMLAnchorElement | H
4
4
  /**
5
5
  * Component used for the root node. Either a string to use a HTML element or a component.
6
6
  *
7
- * @since 5.0.0-rc.3
7
+ * @since 5.0.0
8
8
  */
9
9
  as?: ElementType;
10
10
  /**
@@ -4,7 +4,7 @@ export interface CSidebarNavProps extends HTMLAttributes<HTMLUListElement> {
4
4
  /**
5
5
  * Component used for the root node. Either a string to use a HTML element or a component.
6
6
  *
7
- * @since 5.0.0-rc.3
7
+ * @since 5.0.0
8
8
  */
9
9
  as?: ElementType;
10
10
  /**
@@ -59,7 +59,7 @@ export interface CTimePickerProps extends Omit<CFormControlWrapperProps, 'floati
59
59
  /**
60
60
  * Specify a list of available hours using an array, or customize the filtering of hours through a function.
61
61
  *
62
- * @since 5.0.0-rc.3
62
+ * @since 5.0.0
63
63
  */
64
64
  hours?: number[] | ((hour: number) => number[]);
65
65
  /**
@@ -69,7 +69,7 @@ export interface CTimePickerProps extends Omit<CFormControlWrapperProps, 'floati
69
69
  /**
70
70
  * Defines the delay (in milliseconds) for the input field's onChange event.
71
71
  *
72
- * @since v5.0.0-rc.3
72
+ * @since 5.0.0
73
73
  */
74
74
  inputOnChangeDelay?: number;
75
75
  /**
@@ -83,7 +83,7 @@ export interface CTimePickerProps extends Omit<CFormControlWrapperProps, 'floati
83
83
  /**
84
84
  * Toggle the display of minutes, specify a list of available minutes using an array, or customize the filtering of minutes through a function.
85
85
  *
86
- * @since 5.0.0-rc.3
86
+ * @since 5.0.0
87
87
  */
88
88
  minutes?: boolean | number[] | ((minute: number) => number[]);
89
89
  /**