@qoretechnologies/reqore 0.57.1 → 0.59.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/CLAUDE.md +223 -0
- package/.tasks/NEW_COMPONENT.md +175 -0
- package/.tasks/RANDOM_ISSUE.md +3 -2
- package/dist/components/Message/index.d.ts +1 -0
- package/dist/components/Message/index.d.ts.map +1 -1
- package/dist/components/Message/index.js.map +1 -1
- package/dist/components/Notifications/notification.d.ts +2 -0
- package/dist/components/Notifications/notification.d.ts.map +1 -1
- package/dist/components/Notifications/notification.js +15 -15
- package/dist/components/Notifications/notification.js.map +1 -1
- package/dist/components/Progress/index.d.ts +43 -0
- package/dist/components/Progress/index.d.ts.map +1 -0
- package/dist/components/Progress/index.js +145 -0
- package/dist/components/Progress/index.js.map +1 -0
- package/dist/components/Rating/index.d.ts +37 -0
- package/dist/components/Rating/index.d.ts.map +1 -0
- package/dist/components/Rating/index.js +197 -0
- package/dist/components/Rating/index.js.map +1 -0
- package/dist/components/Timeline/index.d.ts +54 -0
- package/dist/components/Timeline/index.d.ts.map +1 -0
- package/dist/components/Timeline/index.js +232 -0
- package/dist/components/Timeline/index.js.map +1 -0
- package/dist/constants/sizes.d.ts +18 -0
- package/dist/constants/sizes.d.ts.map +1 -1
- package/dist/constants/sizes.js +19 -1
- package/dist/constants/sizes.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/tests.json +1 -1
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { IReqoreTheme } from '../../constants/theme';
|
|
3
|
+
import { IReqoreDisabled, IReqoreIntent, IWithReqoreCustomTheme, IWithReqoreEffect, IWithReqoreFlat, IWithReqoreFluid, IWithReqoreSize, IWithReqoreTooltip } from '../../types/global';
|
|
4
|
+
import { IReqoreIconName } from '../../types/icons';
|
|
5
|
+
import { TReqoreEffectColor } from '../Effect';
|
|
6
|
+
import { IReqoreIconProps } from '../Icon';
|
|
7
|
+
export interface IReqoreProgressProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children'>, IReqoreDisabled, IReqoreIntent, IWithReqoreCustomTheme, IWithReqoreEffect, IWithReqoreFluid, IWithReqoreFlat, IWithReqoreSize, IWithReqoreTooltip {
|
|
8
|
+
/** Current progress value */
|
|
9
|
+
value?: number;
|
|
10
|
+
/** Maximum value (default: 100) */
|
|
11
|
+
max?: number;
|
|
12
|
+
/** Show indeterminate animation instead of value-based progress */
|
|
13
|
+
indeterminate?: boolean;
|
|
14
|
+
/** Display the current value as text above the track */
|
|
15
|
+
showValue?: boolean;
|
|
16
|
+
/** Custom label to display above the track (left side) */
|
|
17
|
+
label?: string;
|
|
18
|
+
/** Show animated diagonal stripes on the progress bar */
|
|
19
|
+
animated?: boolean;
|
|
20
|
+
/** Whether the progress bar should have rounded corners */
|
|
21
|
+
rounded?: boolean;
|
|
22
|
+
/** Whether the progress track should be transparent */
|
|
23
|
+
transparent?: boolean;
|
|
24
|
+
/** Left icon */
|
|
25
|
+
icon?: IReqoreIconName;
|
|
26
|
+
/** Left icon color */
|
|
27
|
+
iconColor?: TReqoreEffectColor;
|
|
28
|
+
/** Left icon props */
|
|
29
|
+
leftIconProps?: IReqoreIconProps;
|
|
30
|
+
/** Right icon */
|
|
31
|
+
rightIcon?: IReqoreIconName;
|
|
32
|
+
/** Right icon color */
|
|
33
|
+
rightIconColor?: TReqoreEffectColor;
|
|
34
|
+
/** Right icon props */
|
|
35
|
+
rightIconProps?: IReqoreIconProps;
|
|
36
|
+
}
|
|
37
|
+
export interface IReqoreProgressStyle extends IReqoreProgressProps {
|
|
38
|
+
theme: IReqoreTheme;
|
|
39
|
+
percentage: number;
|
|
40
|
+
}
|
|
41
|
+
declare const ReqoreProgress: import("react").MemoExoticComponent<(props: IReqoreProgressProps & import("react").RefAttributes<HTMLDivElement>) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>>;
|
|
42
|
+
export default ReqoreProgress;
|
|
43
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Progress/index.tsx"],"names":[],"mappings":";AASA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAGrD,OAAO,EACL,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAmB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAGvD,MAAM,WAAW,oBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,EAC5D,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,kBAAkB;IACpB,6BAA6B;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,mEAAmE;IACnE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,wDAAwD;IACxD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,0DAA0D;IAC1D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,uDAAuD;IACvD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB;IAChB,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,sBAAsB;IACtB,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,sBAAsB;IACtB,aAAa,CAAC,EAAE,gBAAgB,CAAC;IACjC,iBAAiB;IACjB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,uBAAuB;IACvB,cAAc,CAAC,EAAE,kBAAkB,CAAC;IACpC,uBAAuB;IACvB,cAAc,CAAC,EAAE,gBAAgB,CAAC;CACnC;AAED,MAAM,WAAW,oBAAqB,SAAQ,oBAAoB;IAChE,KAAK,EAAE,YAAY,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AA2HD,QAAA,MAAM,cAAc,8MAqHnB,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
+
return cooked;
|
|
5
|
+
};
|
|
6
|
+
var __assign = (this && this.__assign) || function () {
|
|
7
|
+
__assign = Object.assign || function(t) {
|
|
8
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
9
|
+
s = arguments[i];
|
|
10
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
11
|
+
t[p] = s[p];
|
|
12
|
+
}
|
|
13
|
+
return t;
|
|
14
|
+
};
|
|
15
|
+
return __assign.apply(this, arguments);
|
|
16
|
+
};
|
|
17
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
20
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
21
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
22
|
+
}
|
|
23
|
+
Object.defineProperty(o, k2, desc);
|
|
24
|
+
}) : (function(o, m, k, k2) {
|
|
25
|
+
if (k2 === undefined) k2 = k;
|
|
26
|
+
o[k2] = m[k];
|
|
27
|
+
}));
|
|
28
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
29
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
30
|
+
}) : function(o, v) {
|
|
31
|
+
o["default"] = v;
|
|
32
|
+
});
|
|
33
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
41
|
+
var t = {};
|
|
42
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
43
|
+
t[p] = s[p];
|
|
44
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
45
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
46
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
47
|
+
t[p[i]] = s[p[i]];
|
|
48
|
+
}
|
|
49
|
+
return t;
|
|
50
|
+
};
|
|
51
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
52
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
53
|
+
};
|
|
54
|
+
exports.__esModule = true;
|
|
55
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
56
|
+
var polished_1 = require("polished");
|
|
57
|
+
var react_1 = require("react");
|
|
58
|
+
var styled_components_1 = __importStar(require("styled-components"));
|
|
59
|
+
var sizes_1 = require("../../constants/sizes");
|
|
60
|
+
var colors_1 = require("../../helpers/colors");
|
|
61
|
+
var useTheme_1 = require("../../hooks/useTheme");
|
|
62
|
+
var Icon_1 = __importDefault(require("../Icon"));
|
|
63
|
+
var TooltipComponent_1 = require("../TooltipComponent");
|
|
64
|
+
var indeterminateAnimation = (0, styled_components_1.keyframes)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n 0% {\n left: -35%;\n right: 100%;\n }\n 60% {\n left: 100%;\n right: -90%;\n }\n 100% {\n left: 100%;\n right: -90%;\n }\n"], ["\n 0% {\n left: -35%;\n right: 100%;\n }\n 60% {\n left: 100%;\n right: -90%;\n }\n 100% {\n left: 100%;\n right: -90%;\n }\n"])));
|
|
65
|
+
var stripesAnimation = (0, styled_components_1.keyframes)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n 0% {\n background-position: 0 0;\n }\n 100% {\n background-position: 40px 0;\n }\n"], ["\n 0% {\n background-position: 0 0;\n }\n 100% {\n background-position: 40px 0;\n }\n"])));
|
|
66
|
+
var StyledProgressWrapper = styled_components_1["default"].div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n gap: 4px;\n width: ", ";\n\n ", "\n"], ["\n display: flex;\n flex-direction: column;\n gap: 4px;\n width: ", ";\n\n ", "\n"])), function (_a) {
|
|
67
|
+
var fluid = _a.fluid;
|
|
68
|
+
return (fluid ? '100%' : '200px');
|
|
69
|
+
}, function (_a) {
|
|
70
|
+
var disabled = _a.disabled;
|
|
71
|
+
return disabled && (0, styled_components_1.css)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n opacity: 0.5;\n pointer-events: none;\n "], ["\n opacity: 0.5;\n pointer-events: none;\n "])));
|
|
72
|
+
});
|
|
73
|
+
var StyledProgressLabels = styled_components_1["default"].div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n font-size: ", "px;\n color: ", ";\n gap: 8px;\n"], ["\n display: flex;\n justify-content: space-between;\n align-items: center;\n font-size: ", "px;\n color: ", ";\n gap: 8px;\n"])), function (_a) {
|
|
74
|
+
var size = _a.size;
|
|
75
|
+
return sizes_1.CONTROL_TEXT_FROM_SIZE[size];
|
|
76
|
+
}, function (_a) {
|
|
77
|
+
var theme = _a.theme;
|
|
78
|
+
return (0, colors_1.getReadableColor)(theme, undefined, undefined);
|
|
79
|
+
});
|
|
80
|
+
var StyledProgressLabelLeft = styled_components_1["default"].span(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n gap: 4px;\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"], ["\n display: flex;\n align-items: center;\n gap: 4px;\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"])));
|
|
81
|
+
var StyledProgressLabelRight = styled_components_1["default"].span(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n gap: 4px;\n flex-shrink: 0;\n"], ["\n display: flex;\n align-items: center;\n gap: 4px;\n flex-shrink: 0;\n"])));
|
|
82
|
+
// Returns the progress bar color - uses intent color if applied, otherwise a readable default
|
|
83
|
+
var getProgressColor = function (theme) {
|
|
84
|
+
// If theme.main differs from originalMain, an intent was applied
|
|
85
|
+
var hasIntent = theme.main !== theme.originalMain;
|
|
86
|
+
return hasIntent ? theme.main : (0, colors_1.getReadableColor)(theme, undefined, undefined, true);
|
|
87
|
+
};
|
|
88
|
+
var StyledProgressTrack = styled_components_1["default"].div(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n position: relative;\n display: flex;\n align-items: center;\n overflow: hidden;\n width: 100%;\n height: ", "px;\n border-radius: ", ";\n background-color: ", ";\n border: ", ";\n"], ["\n position: relative;\n display: flex;\n align-items: center;\n overflow: hidden;\n width: 100%;\n height: ", "px;\n border-radius: ", ";\n background-color: ", ";\n border: ", ";\n"])), function (_a) {
|
|
89
|
+
var size = _a.size;
|
|
90
|
+
return sizes_1.PROGRESS_HEIGHT_FROM_SIZE[size];
|
|
91
|
+
}, function (_a) {
|
|
92
|
+
var size = _a.size, rounded = _a.rounded;
|
|
93
|
+
return (rounded === false ? 0 : "".concat(sizes_1.RADIUS_FROM_SIZE[size], "px"));
|
|
94
|
+
}, function (_a) {
|
|
95
|
+
var theme = _a.theme, transparent = _a.transparent;
|
|
96
|
+
return transparent ? 'transparent' : (0, polished_1.rgba)(getProgressColor(theme), 0.2);
|
|
97
|
+
}, function (_a) {
|
|
98
|
+
var flat = _a.flat, theme = _a.theme;
|
|
99
|
+
return flat === false ? "1px solid ".concat((0, polished_1.rgba)(getProgressColor(theme), 0.6)) : 'none';
|
|
100
|
+
});
|
|
101
|
+
var StyledProgressBar = styled_components_1["default"].div(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n border-radius: inherit;\n background-color: ", ";\n transition: width 0.3s ease-out;\n width: ", ";\n\n ", "\n\n ", "\n"], ["\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n border-radius: inherit;\n background-color: ", ";\n transition: width 0.3s ease-out;\n width: ", ";\n\n ", "\n\n ", "\n"])), function (_a) {
|
|
102
|
+
var theme = _a.theme;
|
|
103
|
+
return getProgressColor(theme);
|
|
104
|
+
}, function (_a) {
|
|
105
|
+
var percentage = _a.percentage, indeterminate = _a.indeterminate;
|
|
106
|
+
return (indeterminate ? '35%' : "".concat(percentage, "%"));
|
|
107
|
+
}, function (_a) {
|
|
108
|
+
var indeterminate = _a.indeterminate;
|
|
109
|
+
return indeterminate && (0, styled_components_1.css)(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n animation: ", " 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;\n "], ["\n animation: ", " 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;\n "])), indeterminateAnimation);
|
|
110
|
+
}, function (_a) {
|
|
111
|
+
var animated = _a.animated, indeterminate = _a.indeterminate, theme = _a.theme;
|
|
112
|
+
return animated &&
|
|
113
|
+
!indeterminate && (0, styled_components_1.css)(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n background-image: linear-gradient(\n -45deg,\n ", " 25%,\n transparent 25%,\n transparent 50%,\n ", " 50%,\n ", " 75%,\n transparent 75%,\n transparent\n );\n background-size: 40px 40px;\n animation: ", " 1s linear infinite;\n "], ["\n background-image: linear-gradient(\n -45deg,\n ", " 25%,\n transparent 25%,\n transparent 50%,\n ", " 50%,\n ", " 75%,\n transparent 75%,\n transparent\n );\n background-size: 40px 40px;\n animation: ", " 1s linear infinite;\n "])), (0, polished_1.rgba)((0, polished_1.darken)(0.1, getProgressColor(theme)), 0.5), (0, polished_1.rgba)((0, polished_1.darken)(0.1, getProgressColor(theme)), 0.5), (0, polished_1.rgba)((0, polished_1.darken)(0.1, getProgressColor(theme)), 0.5), stripesAnimation);
|
|
114
|
+
});
|
|
115
|
+
var ReqoreProgress = (0, react_1.memo)((0, react_1.forwardRef)(function (_a, ref) {
|
|
116
|
+
var _b = _a.value, value = _b === void 0 ? 0 : _b, _c = _a.max, max = _c === void 0 ? 100 : _c, _d = _a.size, size = _d === void 0 ? 'normal' : _d, _e = _a.indeterminate, indeterminate = _e === void 0 ? false : _e, _f = _a.showValue, showValue = _f === void 0 ? false : _f, label = _a.label, _g = _a.animated, animated = _g === void 0 ? false : _g, customTheme = _a.customTheme, intent = _a.intent, _h = _a.fluid, fluid = _h === void 0 ? false : _h, _j = _a.rounded, rounded = _j === void 0 ? true : _j, _k = _a.transparent, transparent = _k === void 0 ? false : _k, _l = _a.flat, flat = _l === void 0 ? true : _l, disabled = _a.disabled, className = _a.className, tooltip = _a.tooltip, icon = _a.icon, iconColor = _a.iconColor, leftIconProps = _a.leftIconProps, rightIcon = _a.rightIcon, rightIconColor = _a.rightIconColor, rightIconProps = _a.rightIconProps, rest = __rest(_a, ["value", "max", "size", "indeterminate", "showValue", "label", "animated", "customTheme", "intent", "fluid", "rounded", "transparent", "flat", "disabled", "className", "tooltip", "icon", "iconColor", "leftIconProps", "rightIcon", "rightIconColor", "rightIconProps"]);
|
|
117
|
+
// Theme with intent for the progress bar
|
|
118
|
+
var theme = (0, useTheme_1.useReqoreTheme)('main', customTheme, intent);
|
|
119
|
+
// Base theme without intent for labels
|
|
120
|
+
var baseTheme = (0, useTheme_1.useReqoreTheme)('main', customTheme);
|
|
121
|
+
var percentage = (0, react_1.useMemo)(function () {
|
|
122
|
+
if (indeterminate || max === 0)
|
|
123
|
+
return 0;
|
|
124
|
+
var clampedValue = Math.max(0, Math.min(value, max));
|
|
125
|
+
return (clampedValue / max) * 100;
|
|
126
|
+
}, [value, max, indeterminate]);
|
|
127
|
+
var valueLabel = (0, react_1.useMemo)(function () {
|
|
128
|
+
if (!showValue || indeterminate)
|
|
129
|
+
return null;
|
|
130
|
+
return "".concat(Math.round(percentage), "%");
|
|
131
|
+
}, [showValue, percentage, indeterminate]);
|
|
132
|
+
var hasLabels = !!(label ||
|
|
133
|
+
icon ||
|
|
134
|
+
leftIconProps ||
|
|
135
|
+
valueLabel ||
|
|
136
|
+
rightIcon ||
|
|
137
|
+
rightIconProps);
|
|
138
|
+
var leftIcon = icon || (leftIconProps === null || leftIconProps === void 0 ? void 0 : leftIconProps.icon);
|
|
139
|
+
var hasLeftIcon = !!leftIcon || !!(leftIconProps === null || leftIconProps === void 0 ? void 0 : leftIconProps.image);
|
|
140
|
+
var hasRightIcon = !!rightIcon || !!(rightIconProps === null || rightIconProps === void 0 ? void 0 : rightIconProps.image);
|
|
141
|
+
return ((0, jsx_runtime_1.jsxs)(TooltipComponent_1.ReqoreTooltipComponent, __assign({}, rest, { Component: StyledProgressWrapper, tooltip: tooltip, ref: ref, theme: theme, size: size, fluid: fluid, disabled: disabled, className: "".concat(className || '', " reqore-progress"), role: 'progressbar', "aria-valuenow": indeterminate ? undefined : Math.round(percentage), "aria-valuemin": 0, "aria-valuemax": 100, "aria-label": rest['aria-label'] || label || 'Progress' }, { children: [hasLabels && ((0, jsx_runtime_1.jsxs)(StyledProgressLabels, __assign({ size: size, theme: baseTheme, className: 'reqore-progress-labels' }, { children: [(0, jsx_runtime_1.jsxs)(StyledProgressLabelLeft, __assign({ className: 'reqore-progress-label-left' }, { children: [hasLeftIcon && ((0, jsx_runtime_1.jsx)(Icon_1["default"], __assign({ icon: leftIcon, size: size, color: iconColor }, leftIconProps))), label && (0, jsx_runtime_1.jsx)("span", __assign({ className: 'reqore-progress-label' }, { children: label }))] })), (0, jsx_runtime_1.jsxs)(StyledProgressLabelRight, __assign({ className: 'reqore-progress-label-right' }, { children: [valueLabel && (0, jsx_runtime_1.jsx)("span", __assign({ className: 'reqore-progress-value' }, { children: valueLabel })), hasRightIcon && ((0, jsx_runtime_1.jsx)(Icon_1["default"], __assign({ icon: rightIcon, size: size, color: rightIconColor }, rightIconProps)))] }))] }))), (0, jsx_runtime_1.jsx)(StyledProgressTrack, __assign({ theme: theme, size: size, rounded: rounded, transparent: transparent, flat: flat, className: 'reqore-progress-track' }, { children: (0, jsx_runtime_1.jsx)(StyledProgressBar, { theme: theme, size: size, percentage: percentage, indeterminate: indeterminate, animated: animated, className: 'reqore-progress-bar' }) }))] })));
|
|
142
|
+
}));
|
|
143
|
+
exports["default"] = ReqoreProgress;
|
|
144
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11;
|
|
145
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Progress/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { IReqoreDisabled, IReqoreIntent, IReqoreReadOnly, IWithReqoreCustomTheme, IWithReqoreSize, IWithReqoreTooltip } from '../../types/global';
|
|
3
|
+
import { IReqoreIconName } from '../../types/icons';
|
|
4
|
+
import { TReqoreEffectColor } from '../Effect';
|
|
5
|
+
import { IReqoreIconProps } from '../Icon';
|
|
6
|
+
import { IReqoreParagraphProps } from '../Paragraph';
|
|
7
|
+
export interface IReqoreRatingProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'>, IReqoreDisabled, IReqoreReadOnly, IReqoreIntent, IWithReqoreCustomTheme, IWithReqoreSize, IWithReqoreTooltip {
|
|
8
|
+
/** Current rating value (controlled) */
|
|
9
|
+
value?: number;
|
|
10
|
+
/** Label for the rating component */
|
|
11
|
+
label?: string;
|
|
12
|
+
labelProps?: IReqoreParagraphProps;
|
|
13
|
+
/** Callback fired when rating changes */
|
|
14
|
+
onChange?: (value: number) => void;
|
|
15
|
+
/** Maximum number of icons (default: 5) */
|
|
16
|
+
max?: number;
|
|
17
|
+
/** Allow half-step increments */
|
|
18
|
+
allowHalf?: boolean;
|
|
19
|
+
/** Allow clearing rating by clicking the current value again */
|
|
20
|
+
allowClear?: boolean;
|
|
21
|
+
/** Icon for filled state */
|
|
22
|
+
filledIcon?: IReqoreIconName;
|
|
23
|
+
/** Icon for empty state */
|
|
24
|
+
emptyIcon?: IReqoreIconName;
|
|
25
|
+
/** Icon for half-filled state */
|
|
26
|
+
halfIcon?: IReqoreIconName;
|
|
27
|
+
/** Color for filled icons */
|
|
28
|
+
filledColor?: TReqoreEffectColor;
|
|
29
|
+
/** Color for empty icons */
|
|
30
|
+
emptyColor?: TReqoreEffectColor;
|
|
31
|
+
showRatingValue?: boolean;
|
|
32
|
+
/** Additional props passed to each ReqoreIcon */
|
|
33
|
+
iconProps?: Omit<IReqoreIconProps, 'icon' | 'size' | 'color'>;
|
|
34
|
+
}
|
|
35
|
+
declare const ReqoreRating: import("react").MemoExoticComponent<(props: IReqoreRatingProps & import("react").RefAttributes<HTMLDivElement>) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>>;
|
|
36
|
+
export default ReqoreRating;
|
|
37
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Rating/index.tsx"],"names":[],"mappings":";AAUA,OAAO,EACL,eAAe,EACf,aAAa,EACb,eAAe,EACf,sBAAsB,EACtB,eAAe,EACf,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAmB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAW,MAAM,cAAc,CAAC;AAG9D,MAAM,WAAW,kBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,EAC5D,eAAe,EACf,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,eAAe,EACf,kBAAkB;IACpB,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,qBAAqB,CAAC;IACnC,yCAAyC;IACzC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,2CAA2C;IAC3C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,iCAAiC;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gEAAgE;IAChE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,4BAA4B;IAC5B,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,2BAA2B;IAC3B,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,iCAAiC;IACjC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,6BAA6B;IAC7B,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,4BAA4B;IAC5B,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAEhC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iDAAiD;IACjD,SAAS,CAAC,EAAE,IAAI,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;CAC/D;AA0DD,QAAA,MAAM,YAAY,4MAqMjB,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
+
return cooked;
|
|
5
|
+
};
|
|
6
|
+
var __assign = (this && this.__assign) || function () {
|
|
7
|
+
__assign = Object.assign || function(t) {
|
|
8
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
9
|
+
s = arguments[i];
|
|
10
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
11
|
+
t[p] = s[p];
|
|
12
|
+
}
|
|
13
|
+
return t;
|
|
14
|
+
};
|
|
15
|
+
return __assign.apply(this, arguments);
|
|
16
|
+
};
|
|
17
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
20
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
21
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
22
|
+
}
|
|
23
|
+
Object.defineProperty(o, k2, desc);
|
|
24
|
+
}) : (function(o, m, k, k2) {
|
|
25
|
+
if (k2 === undefined) k2 = k;
|
|
26
|
+
o[k2] = m[k];
|
|
27
|
+
}));
|
|
28
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
29
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
30
|
+
}) : function(o, v) {
|
|
31
|
+
o["default"] = v;
|
|
32
|
+
});
|
|
33
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
41
|
+
var t = {};
|
|
42
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
43
|
+
t[p] = s[p];
|
|
44
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
45
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
46
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
47
|
+
t[p[i]] = s[p[i]];
|
|
48
|
+
}
|
|
49
|
+
return t;
|
|
50
|
+
};
|
|
51
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
52
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
53
|
+
};
|
|
54
|
+
exports.__esModule = true;
|
|
55
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
56
|
+
var polished_1 = require("polished");
|
|
57
|
+
var react_1 = require("react");
|
|
58
|
+
var styled_components_1 = __importStar(require("styled-components"));
|
|
59
|
+
var sizes_1 = require("../../constants/sizes");
|
|
60
|
+
var colors_1 = require("../../helpers/colors");
|
|
61
|
+
var utils_1 = require("../../helpers/utils");
|
|
62
|
+
var useComponentTooltip_1 = require("../../hooks/useComponentTooltip");
|
|
63
|
+
var useTheme_1 = require("../../hooks/useTheme");
|
|
64
|
+
var styles_1 = require("../../styles");
|
|
65
|
+
var ControlGroup_1 = __importDefault(require("../ControlGroup"));
|
|
66
|
+
var Icon_1 = __importDefault(require("../Icon"));
|
|
67
|
+
var Paragraph_1 = require("../Paragraph");
|
|
68
|
+
var Span_1 = require("../Span");
|
|
69
|
+
var StyledRating = styled_components_1["default"].div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n display: inline-flex;\n align-items: center;\n gap: ", "px;\n\n ", "\n\n ", "\n\n &:focus-visible {\n outline: 2px solid ", ";\n outline-offset: 2px;\n border-radius: ", "px;\n }\n"], ["\n display: inline-flex;\n align-items: center;\n gap: ", "px;\n\n ", "\n\n ", "\n\n &:focus-visible {\n outline: 2px solid ", ";\n outline-offset: 2px;\n border-radius: ", "px;\n }\n"])), function (_a) {
|
|
70
|
+
var size = _a.size;
|
|
71
|
+
return sizes_1.RATING_GAP_FROM_SIZE[size];
|
|
72
|
+
}, function (_a) {
|
|
73
|
+
var disabled = _a.disabled;
|
|
74
|
+
return disabled && (0, styled_components_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n ", ";\n "], ["\n ", ";\n "])), styles_1.DisabledElement);
|
|
75
|
+
}, function (_a) {
|
|
76
|
+
var readOnly = _a.readOnly;
|
|
77
|
+
return readOnly && (0, styled_components_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n ", ";\n "], ["\n ", ";\n "])), styles_1.ReadOnlyElement);
|
|
78
|
+
}, function (_a) {
|
|
79
|
+
var theme = _a.theme;
|
|
80
|
+
return (0, colors_1.changeLightness)(theme.main, 0.25);
|
|
81
|
+
}, function (_a) {
|
|
82
|
+
var size = _a.size;
|
|
83
|
+
return sizes_1.RADIUS_FROM_SIZE[size];
|
|
84
|
+
});
|
|
85
|
+
var StyledRatingItem = styled_components_1["default"].span(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n display: inline-flex;\n cursor: ", ";\n transition: transform 0.15s ease-out;\n\n ", "\n"], ["\n display: inline-flex;\n cursor: ", ";\n transition: transform 0.15s ease-out;\n\n ", "\n"])), function (_a) {
|
|
86
|
+
var isInteractive = _a.isInteractive;
|
|
87
|
+
return (isInteractive ? 'pointer' : 'default');
|
|
88
|
+
}, function (_a) {
|
|
89
|
+
var isInteractive = _a.isInteractive;
|
|
90
|
+
return isInteractive && (0, styled_components_1.css)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n &:hover {\n transform: scale(1.2);\n }\n\n &:active {\n transform: scale(0.85);\n transition: transform 0.05s ease-out;\n }\n "], ["\n &:hover {\n transform: scale(1.2);\n }\n\n &:active {\n transform: scale(0.85);\n transition: transform 0.05s ease-out;\n }\n "])));
|
|
91
|
+
});
|
|
92
|
+
var ReqoreRating = (0, react_1.memo)((0, react_1.forwardRef)(function (_a, ref) {
|
|
93
|
+
var _b = _a.value, value = _b === void 0 ? 0 : _b, label = _a.label, onChange = _a.onChange, _c = _a.max, max = _c === void 0 ? 5 : _c, _d = _a.allowHalf, allowHalf = _d === void 0 ? false : _d, _e = _a.allowClear, allowClear = _e === void 0 ? true : _e, _f = _a.filledIcon, filledIcon = _f === void 0 ? 'StarFill' : _f, _g = _a.emptyIcon, emptyIcon = _g === void 0 ? 'StarLine' : _g, _h = _a.halfIcon, halfIcon = _h === void 0 ? 'StarHalfFill' : _h, filledColor = _a.filledColor, emptyColor = _a.emptyColor, _j = _a.size, size = _j === void 0 ? 'normal' : _j, disabled = _a.disabled, readOnly = _a.readOnly, intent = _a.intent, customTheme = _a.customTheme, tooltip = _a.tooltip, className = _a.className, labelProps = _a.labelProps, showRatingValue = _a.showRatingValue, iconProps = _a.iconProps, rest = __rest(_a, ["value", "label", "onChange", "max", "allowHalf", "allowClear", "filledIcon", "emptyIcon", "halfIcon", "filledColor", "emptyColor", "size", "disabled", "readOnly", "intent", "customTheme", "tooltip", "className", "labelProps", "showRatingValue", "iconProps"]);
|
|
94
|
+
var theme = (0, useTheme_1.useReqoreTheme)('main', customTheme, intent);
|
|
95
|
+
var _k = (0, react_1.useState)(null), hoverValue = _k[0], setHoverValue = _k[1];
|
|
96
|
+
var isInteractive = !disabled && !readOnly && !!onChange;
|
|
97
|
+
var displayValue = (0, react_1.useMemo)(function () { return (hoverValue !== null ? hoverValue : value); }, [hoverValue, value]);
|
|
98
|
+
var resolvedFilledColor = (0, react_1.useMemo)(function () {
|
|
99
|
+
if (filledColor)
|
|
100
|
+
return (0, colors_1.getColorFromMaybeString)(theme, filledColor);
|
|
101
|
+
var hasIntent = theme.main !== theme.originalMain;
|
|
102
|
+
return hasIntent ? theme.main : (0, colors_1.getReadableColor)(theme, undefined, undefined, true);
|
|
103
|
+
}, [filledColor, theme]);
|
|
104
|
+
var resolvedEmptyColor = (0, react_1.useMemo)(function () {
|
|
105
|
+
if (emptyColor)
|
|
106
|
+
return (0, colors_1.getColorFromMaybeString)(theme, emptyColor);
|
|
107
|
+
return (0, polished_1.rgba)((0, colors_1.changeLightness)(theme.main, 0.15), 0.4);
|
|
108
|
+
}, [emptyColor, theme]);
|
|
109
|
+
var handleMouseMove = (0, react_1.useCallback)(function (index, event) {
|
|
110
|
+
if (!isInteractive)
|
|
111
|
+
return;
|
|
112
|
+
if (allowHalf) {
|
|
113
|
+
var rect = event.currentTarget.getBoundingClientRect();
|
|
114
|
+
var isLeftHalf = event.clientX - rect.left < rect.width / 2;
|
|
115
|
+
setHoverValue(isLeftHalf ? index + 0.5 : index + 1);
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
setHoverValue(index + 1);
|
|
119
|
+
}
|
|
120
|
+
}, [isInteractive, allowHalf]);
|
|
121
|
+
var handleMouseLeave = (0, react_1.useCallback)(function () {
|
|
122
|
+
if (!isInteractive)
|
|
123
|
+
return;
|
|
124
|
+
setHoverValue(null);
|
|
125
|
+
}, [isInteractive]);
|
|
126
|
+
var handleClick = (0, react_1.useCallback)(function (index, event) {
|
|
127
|
+
if (!isInteractive || !onChange)
|
|
128
|
+
return;
|
|
129
|
+
var clickedValue;
|
|
130
|
+
if (allowHalf) {
|
|
131
|
+
var rect = event.currentTarget.getBoundingClientRect();
|
|
132
|
+
var isLeftHalf = event.clientX - rect.left < rect.width / 2;
|
|
133
|
+
clickedValue = isLeftHalf ? index + 0.5 : index + 1;
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
clickedValue = index + 1;
|
|
137
|
+
}
|
|
138
|
+
if (allowClear && clickedValue === value) {
|
|
139
|
+
onChange(0);
|
|
140
|
+
}
|
|
141
|
+
else {
|
|
142
|
+
onChange(clickedValue);
|
|
143
|
+
}
|
|
144
|
+
}, [isInteractive, onChange, allowHalf, allowClear, value]);
|
|
145
|
+
var handleKeyDown = (0, react_1.useCallback)(function (event) {
|
|
146
|
+
if (!isInteractive || !onChange)
|
|
147
|
+
return;
|
|
148
|
+
var step = allowHalf ? 0.5 : 1;
|
|
149
|
+
switch (event.key) {
|
|
150
|
+
case 'ArrowRight':
|
|
151
|
+
case 'ArrowUp':
|
|
152
|
+
event.preventDefault();
|
|
153
|
+
onChange(Math.min(value + step, max));
|
|
154
|
+
break;
|
|
155
|
+
case 'ArrowLeft':
|
|
156
|
+
case 'ArrowDown':
|
|
157
|
+
event.preventDefault();
|
|
158
|
+
onChange(Math.max(value - step, 0));
|
|
159
|
+
break;
|
|
160
|
+
case 'Home':
|
|
161
|
+
event.preventDefault();
|
|
162
|
+
onChange(0);
|
|
163
|
+
break;
|
|
164
|
+
case 'End':
|
|
165
|
+
event.preventDefault();
|
|
166
|
+
onChange(max);
|
|
167
|
+
break;
|
|
168
|
+
}
|
|
169
|
+
}, [isInteractive, onChange, value, max, allowHalf]);
|
|
170
|
+
var getIconForIndex = (0, react_1.useCallback)(function (index) {
|
|
171
|
+
var starValue = index + 1;
|
|
172
|
+
if (displayValue >= starValue) {
|
|
173
|
+
return { icon: filledIcon, color: resolvedFilledColor };
|
|
174
|
+
}
|
|
175
|
+
if (allowHalf && displayValue >= starValue - 0.5) {
|
|
176
|
+
return { icon: halfIcon, color: resolvedFilledColor };
|
|
177
|
+
}
|
|
178
|
+
return { icon: emptyIcon, color: resolvedEmptyColor };
|
|
179
|
+
}, [
|
|
180
|
+
displayValue,
|
|
181
|
+
filledIcon,
|
|
182
|
+
emptyIcon,
|
|
183
|
+
halfIcon,
|
|
184
|
+
resolvedFilledColor,
|
|
185
|
+
resolvedEmptyColor,
|
|
186
|
+
allowHalf,
|
|
187
|
+
]);
|
|
188
|
+
var stars = (0, react_1.useMemo)(function () { return Array.from({ length: max }, function (_, i) { return i; }); }, [max]);
|
|
189
|
+
var _l = (0, useComponentTooltip_1.useComponentTooltip)(__assign(__assign({}, rest), { theme: theme, size: size, tooltip: tooltip, disabled: disabled, readOnly: readOnly, isInteractive: isInteractive, className: "".concat(className || '', " reqore-rating") }), StyledRating, ref), Component = _l.Component, componentProps = _l.props;
|
|
190
|
+
return ((0, jsx_runtime_1.jsxs)(ControlGroup_1["default"], __assign({ vertical: true }, { children: [label && (0, jsx_runtime_1.jsx)(Paragraph_1.ReqoreP, __assign({ size: size }, labelProps, { children: label })), (0, jsx_runtime_1.jsxs)(Component, __assign({}, componentProps, { onMouseLeave: handleMouseLeave, onKeyDown: handleKeyDown, tabIndex: isInteractive ? 0 : undefined, role: 'slider', "aria-valuenow": value, "aria-valuemin": 0, "aria-valuemax": max, "aria-disabled": disabled || undefined, "aria-readonly": readOnly || undefined, "aria-label": label || rest['aria-label'] || 'Rating' }, { children: [stars.map(function (index) {
|
|
191
|
+
var _a = getIconForIndex(index), icon = _a.icon, color = _a.color;
|
|
192
|
+
return ((0, jsx_runtime_1.jsx)(StyledRatingItem, __assign({ className: 'reqore-rating-item', onMouseMove: function (e) { return handleMouseMove(index, e); }, onClick: function (e) { return handleClick(index, e); }, isInteractive: isInteractive, size: size }, { children: (0, jsx_runtime_1.jsx)(Icon_1["default"], __assign({}, iconProps, { icon: icon, size: size, color: color })) }), index));
|
|
193
|
+
}), showRatingValue && ((0, jsx_runtime_1.jsx)(Span_1.ReqoreSpan, __assign({ intent: 'muted', size: (0, utils_1.getOneLessSize)(size) }, { children: "".concat(displayValue, " / ").concat(max) })))] }))] })));
|
|
194
|
+
}));
|
|
195
|
+
exports["default"] = ReqoreRating;
|
|
196
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
|
|
197
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Rating/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { TSizes } from '../../constants/sizes';
|
|
3
|
+
import { IReqoreTheme } from '../../constants/theme';
|
|
4
|
+
import { IReqoreComponent, IReqoreDisabled, IReqoreIntent, IWithReqoreCustomTheme, IWithReqoreFluid, IWithReqoreSize, TReqoreTooltipProp } from '../../types/global';
|
|
5
|
+
import { IReqoreIconName } from '../../types/icons';
|
|
6
|
+
import { TReqoreBadge } from '../Button';
|
|
7
|
+
import { IReqoreEffect, TReqoreEffectColor } from '../Effect';
|
|
8
|
+
export interface IReqoreTimelineItem extends IReqoreDisabled, IReqoreIntent {
|
|
9
|
+
/** Title of the timeline item */
|
|
10
|
+
title?: string;
|
|
11
|
+
/** Content/description of the timeline item */
|
|
12
|
+
content?: React.ReactNode;
|
|
13
|
+
/** Timestamp or date to display */
|
|
14
|
+
timestamp?: string | number;
|
|
15
|
+
/** Display timestamp as relative time (e.g., "2 hours ago") */
|
|
16
|
+
relativeTime?: boolean;
|
|
17
|
+
/** Icon to display in the timeline marker */
|
|
18
|
+
icon?: IReqoreIconName;
|
|
19
|
+
/** Custom color for the icon */
|
|
20
|
+
iconColor?: TReqoreEffectColor;
|
|
21
|
+
/** Click handler for interactive items */
|
|
22
|
+
onClick?: () => void;
|
|
23
|
+
/** Tooltip for the timeline item */
|
|
24
|
+
tooltip?: TReqoreTooltipProp;
|
|
25
|
+
/** Badge(s) to display next to the title */
|
|
26
|
+
badge?: TReqoreBadge | TReqoreBadge[];
|
|
27
|
+
/** Whether the item is collapsible */
|
|
28
|
+
collapsible?: boolean;
|
|
29
|
+
/** Whether the item is initially collapsed (only if collapsible) */
|
|
30
|
+
isCollapsed?: boolean;
|
|
31
|
+
/** Effect for the title */
|
|
32
|
+
titleEffect?: IReqoreEffect;
|
|
33
|
+
/** Effect for the content */
|
|
34
|
+
contentEffect?: IReqoreEffect;
|
|
35
|
+
}
|
|
36
|
+
export interface IReqoreTimelineProps extends Omit<React.HTMLAttributes<HTMLOListElement>, 'children'>, IReqoreComponent, IWithReqoreCustomTheme, IReqoreIntent, IWithReqoreFluid, IWithReqoreSize {
|
|
37
|
+
/** Array of timeline items to display */
|
|
38
|
+
items: IReqoreTimelineItem[];
|
|
39
|
+
}
|
|
40
|
+
export interface IReqoreTimelineStyle {
|
|
41
|
+
theme: IReqoreTheme;
|
|
42
|
+
size: TSizes;
|
|
43
|
+
fluid?: boolean;
|
|
44
|
+
}
|
|
45
|
+
export interface IReqoreTimelineItemStyle extends IReqoreTimelineStyle {
|
|
46
|
+
isClickable?: boolean;
|
|
47
|
+
isLast?: boolean;
|
|
48
|
+
disabled?: boolean;
|
|
49
|
+
hasIntent?: boolean;
|
|
50
|
+
isCollapsed?: boolean;
|
|
51
|
+
}
|
|
52
|
+
declare const ReqoreTimeline: import("react").MemoExoticComponent<(props: IReqoreTimelineProps & import("react").RefAttributes<HTMLOListElement>) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>>;
|
|
53
|
+
export default ReqoreTimeline;
|
|
54
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Timeline/index.tsx"],"names":[],"mappings":";AAGA,OAAO,EAML,MAAM,EACP,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAIrD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAS9D,MAAM,WAAW,mBAAoB,SAAQ,eAAe,EAAE,aAAa;IACzE,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+CAA+C;IAC/C,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,+DAA+D;IAC/D,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,6CAA6C;IAC7C,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,gCAAgC;IAChC,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,oCAAoC;IACpC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,4CAA4C;IAC5C,KAAK,CAAC,EAAE,YAAY,GAAG,YAAY,EAAE,CAAC;IACtC,sCAAsC;IACtC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,oEAAoE;IACpE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,2BAA2B;IAC3B,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,6BAA6B;IAC7B,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,MAAM,WAAW,oBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,UAAU,CAAC,EAC9D,gBAAgB,EAChB,sBAAsB,EACtB,aAAa,EACb,gBAAgB,EAChB,eAAe;IACjB,yCAAyC;IACzC,KAAK,EAAE,mBAAmB,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,YAAY,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,wBAAyB,SAAQ,oBAAoB;IACpE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAoLD,QAAA,MAAM,cAAc,gNA0KnB,CAAC;AAEF,eAAe,cAAc,CAAC"}
|