revdev-components 0.192.0 → 0.194.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.
@@ -0,0 +1 @@
1
+ export * from "./level";
@@ -0,0 +1,15 @@
1
+ import React from "react";
2
+ interface LevelGen {
3
+ code: string;
4
+ rate: number;
5
+ }
6
+ export interface LevelBadgeProps {
7
+ levels: LevelGen[];
8
+ className?: string;
9
+ children?: React.ReactNode;
10
+ texts?: {
11
+ refersTo?: (param: LevelGen) => string;
12
+ };
13
+ }
14
+ export declare const LevelBadge: React.FC<LevelBadgeProps>;
15
+ export {};
package/build/index.d.ts CHANGED
@@ -30,3 +30,4 @@ export * from "./splitLine";
30
30
  export * from "./audioPlayer";
31
31
  export * from "./utils";
32
32
  export * from "./helpTip";
33
+ export * from "./badges";
package/build/index.js CHANGED
@@ -5,6 +5,7 @@ var classNames = require('classnames');
5
5
  var antd = require('antd');
6
6
  var router = require('next/router');
7
7
  var Link = require('next/link');
8
+ var numeral = require('numeral');
8
9
 
9
10
  function _interopNamespaceDefault(e) {
10
11
  var n = Object.create(null);
@@ -25,14 +26,14 @@ function _interopNamespaceDefault(e) {
25
26
 
26
27
  var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
27
28
 
28
- var s$B = {"root":"index-module_root__oU85z"};
29
+ var s$C = {"root":"index-module_root__oU85z"};
29
30
 
30
31
  var ContentHeader1 = function (_a) {
31
32
  var children = _a.children, className = _a.className;
32
- return React.createElement("h1", { className: classNames(s$B.root, className) }, children);
33
+ return React.createElement("h1", { className: classNames(s$C.root, className) }, children);
33
34
  };
34
35
 
35
- var s$A = {"root":"index-module_root__51YHj"};
36
+ var s$B = {"root":"index-module_root__51YHj"};
36
37
 
37
38
  /******************************************************************************
38
39
  Copyright (c) Microsoft Corporation.
@@ -89,7 +90,7 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
89
90
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
90
91
  };
91
92
 
92
- var s$z = {"root":"index-module_root__UzFV2","column":"index-module_column__XEWzG","children":"index-module_children__y7-7m","flex":"index-module_flex__83M30","button":"index-module_button__U8D6K"};
93
+ var s$A = {"root":"index-module_root__UzFV2","column":"index-module_column__XEWzG","children":"index-module_children__y7-7m","flex":"index-module_flex__83M30","button":"index-module_button__U8D6K"};
93
94
 
94
95
  var _path$2E;
95
96
  function _extends$2H() { return _extends$2H = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends$2H.apply(null, arguments); }
@@ -1745,13 +1746,13 @@ var SvgSchool = function SvgSchool(props) {
1745
1746
  })));
1746
1747
  };
1747
1748
 
1748
- var s$y = {"root":"index-module_root__-LDR1"};
1749
+ var s$z = {"root":"index-module_root__-LDR1"};
1749
1750
 
1750
1751
  // https://www.svgrepo.com/
1751
1752
  function useBasicIcon(_a, icons) {
1752
1753
  var className = _a.className, name = _a.name, props = __rest(_a, ["className", "name"]);
1753
1754
  var svgAttrs = React.useMemo(function () {
1754
- return __assign({ className: classNames(s$y.root, className), fill: "currentColor" }, props);
1755
+ return __assign({ className: classNames(s$z.root, className), fill: "currentColor" }, props);
1755
1756
  }, [className, props]);
1756
1757
  var Icon = icons[name];
1757
1758
  return Icon ? React.createElement(Icon, __assign({}, svgAttrs)) : undefined;
@@ -2095,14 +2096,14 @@ var AppTooltip = function (_a) {
2095
2096
  var IconBoxContent = function (_a) {
2096
2097
  var _b;
2097
2098
  var flexRoot = _a.flexRoot, icon = _a.icon, rightIcon = _a.rightIcon, children = _a.children, className = _a.className, contentClassName = _a.contentClassName, onClick = _a.onClick, _c = _a.direction, direction = _c === void 0 ? "row" : _c, elementRev = _a.elementRev, style = _a.style;
2098
- return (React.createElement("div", { ref: elementRev, style: style, className: classNames(s$z.root, (_b = {},
2099
- _b[s$z.flex] = flexRoot,
2100
- _b[s$z.button] = !!onClick,
2101
- _b[s$z.column] = direction === "column",
2099
+ return (React.createElement("div", { ref: elementRev, style: style, className: classNames(s$A.root, (_b = {},
2100
+ _b[s$A.flex] = flexRoot,
2101
+ _b[s$A.button] = !!onClick,
2102
+ _b[s$A.column] = direction === "column",
2102
2103
  _b), className), onClick: onClick },
2103
- typeof icon === "string" ? React.createElement(RegularIcon, { className: s$z.icon, name: icon }) : icon,
2104
- children ? React.createElement("div", { className: classNames(contentClassName, s$z.root__children) }, children) : null,
2105
- typeof rightIcon === "string" ? React.createElement(RegularIcon, { className: s$z.icon, name: rightIcon }) : rightIcon));
2104
+ typeof icon === "string" ? React.createElement(RegularIcon, { className: s$A.icon, name: icon }) : icon,
2105
+ children ? React.createElement("div", { className: classNames(contentClassName, s$A.root__children) }, children) : null,
2106
+ typeof rightIcon === "string" ? React.createElement(RegularIcon, { className: s$A.icon, name: rightIcon }) : rightIcon));
2106
2107
  };
2107
2108
  var IconDivision = function (props) {
2108
2109
  var tooltip = props.tooltip, tooltipPlacement = props.tooltipPlacement, tooltipMouseEnterDelay = props.tooltipMouseEnterDelay;
@@ -2112,37 +2113,37 @@ var IconDivision = function (props) {
2112
2113
 
2113
2114
  var ContentHeader2 = function (_a) {
2114
2115
  var icon = _a.icon, children = _a.children, className = _a.className;
2115
- var content = React.createElement("h2", { className: classNames(s$A.root, className) }, children);
2116
+ var content = React.createElement("h2", { className: classNames(s$B.root, className) }, children);
2116
2117
  return icon ? React.createElement(IconDivision, { icon: icon }, content) : content;
2117
2118
  };
2118
2119
 
2119
- var s$x = {"root":"index-module_root__Fq-q1"};
2120
+ var s$y = {"root":"index-module_root__Fq-q1"};
2120
2121
 
2121
2122
  var Paragraph = function (_a) {
2122
2123
  var children = _a.children, className = _a.className;
2123
- return React.createElement("p", { className: classNames(s$x.root, className) }, children);
2124
+ return React.createElement("p", { className: classNames(s$y.root, className) }, children);
2124
2125
  };
2125
2126
 
2126
- var s$w = {"root":"index-module_root__VIFF-"};
2127
+ var s$x = {"root":"index-module_root__VIFF-"};
2127
2128
 
2128
2129
  var PageTitle = function (_a) {
2129
2130
  var children = _a.children, className = _a.className;
2130
- return React.createElement("h1", { className: classNames(s$w.root, className) }, children);
2131
+ return React.createElement("h1", { className: classNames(s$x.root, className) }, children);
2131
2132
  };
2132
2133
 
2133
- var s$v = {"root":"index-module_root__p0I0n"};
2134
+ var s$w = {"root":"index-module_root__p0I0n"};
2134
2135
 
2135
2136
  var CentralDivision = function (_a) {
2136
2137
  var children = _a.children, className = _a.className;
2137
- return React.createElement("div", { className: classNames(s$v.root, className) }, children);
2138
+ return React.createElement("div", { className: classNames(s$w.root, className) }, children);
2138
2139
  };
2139
2140
 
2140
- var s$u = {"root":"index-module_root__yiKO0","first":"index-module_first__560SY","last":"index-module_last__fYezY"};
2141
+ var s$v = {"root":"index-module_root__yiKO0","first":"index-module_first__560SY","last":"index-module_last__fYezY"};
2141
2142
 
2142
2143
  var RowDivision = function (_a) {
2143
2144
  var _b;
2144
2145
  var children = _a.children, className = _a.className, flex = _a.flex;
2145
- return React.createElement("div", { className: classNames(s$u.root, className, (_b = {}, _b[s$u.first] = flex === "first", _b[s$u.last] = flex === "last", _b)) }, children);
2146
+ return React.createElement("div", { className: classNames(s$v.root, className, (_b = {}, _b[s$v.first] = flex === "first", _b[s$v.last] = flex === "last", _b)) }, children);
2146
2147
  };
2147
2148
 
2148
2149
  var _path$i, _path2$a, _path3$8;
@@ -4979,7 +4980,7 @@ var FillIcon = function (props) {
4979
4980
  return useBasicIcon(props, icons);
4980
4981
  };
4981
4982
 
4982
- var s$t = {"root":"index-module_root__gtTIa","action":"index-module_action__pOSde"};
4983
+ var s$u = {"root":"index-module_root__gtTIa","action":"index-module_action__pOSde"};
4983
4984
 
4984
4985
  var CONSOLE_COLOR = "background:rgb(28, 46, 82); color:rgb(231, 231, 231)";
4985
4986
 
@@ -5097,10 +5098,10 @@ function AppForm(_a) {
5097
5098
  onValuesChange === null || onValuesChange === void 0 ? void 0 : onValuesChange(changedValues, values);
5098
5099
  onChange === null || onChange === void 0 ? void 0 : onChange(values);
5099
5100
  }, [setValues, onValuesChange, onChange]);
5100
- return (React.createElement(antd.Form, { form: form, onFinish: onFinish, className: classNames(s$t.root, className), layout: "vertical", onValuesChange: handleValuesChange, onFieldsChange: onFieldsChange, initialValues: initialValues }, typeof children === "function" ? children({ valid: valid }) : children));
5101
+ return (React.createElement(antd.Form, { form: form, onFinish: onFinish, className: classNames(s$u.root, className), layout: "vertical", onValuesChange: handleValuesChange, onFieldsChange: onFieldsChange, initialValues: initialValues }, typeof children === "function" ? children({ valid: valid }) : children));
5101
5102
  }
5102
5103
 
5103
- var s$s = {"root":"index-module_root__2S1Jp","root__right":"index-module_root__right__AOLlF","label":"index-module_label__-pb4C"};
5104
+ var s$t = {"root":"index-module_root__2S1Jp","root__right":"index-module_root__right__AOLlF","label":"index-module_label__-pb4C"};
5104
5105
 
5105
5106
  function useLineProps(_a) {
5106
5107
  var lineClassName = _a.lineClassName, name = _a.name, label = _a.label, rightLabel = _a.rightLabel, rules = _a.rules, valuePropName = _a.valuePropName, noStyle = _a.noStyle, hasFeedback = _a.hasFeedback, dependencies = _a.dependencies, rest = __rest(_a, ["lineClassName", "name", "label", "rightLabel", "rules", "valuePropName", "noStyle", "hasFeedback", "dependencies"]);
@@ -5117,13 +5118,13 @@ var FormLine = function (_a) {
5117
5118
  }, [validateRules]);
5118
5119
  var singleLabel = React.useMemo(function () {
5119
5120
  if (label && rightLabel) {
5120
- return (React.createElement("div", { className: s$s.label },
5121
- React.createElement("div", { className: s$s.label__left }, label),
5122
- React.createElement("div", { className: s$s.label__right }, rightLabel)));
5121
+ return (React.createElement("div", { className: s$t.label },
5122
+ React.createElement("div", { className: s$t.label__left }, label),
5123
+ React.createElement("div", { className: s$t.label__right }, rightLabel)));
5123
5124
  }
5124
5125
  return label;
5125
5126
  }, [label, rightLabel]);
5126
- return (React.createElement(antd.Form.Item, __assign({ className: classNames(s$s.root, (_b = {}, _b[s$s.root__right] = !!rightLabel, _b), className), rules: rules, label: singleLabel }, props)));
5127
+ return (React.createElement(antd.Form.Item, __assign({ className: classNames(s$t.root, (_b = {}, _b[s$t.root__right] = !!rightLabel, _b), className), rules: rules, label: singleLabel }, props)));
5127
5128
  };
5128
5129
 
5129
5130
  var DatePickerField = function (props) {
@@ -5144,12 +5145,12 @@ var InputField = function (props) {
5144
5145
  React.createElement(antd.Input, __assign({}, controlProps))));
5145
5146
  };
5146
5147
 
5147
- var s$r = {"input":"index-module_input__71iJw"};
5148
+ var s$s = {"input":"index-module_input__71iJw"};
5148
5149
 
5149
5150
  var InputNumberField = function (props) {
5150
5151
  var _a = useLineProps(props), lineProps = _a[0], _b = _a[1], className = _b.className, controlProps = __rest(_b, ["className"]);
5151
5152
  return (React.createElement(FormLine, __assign({}, lineProps),
5152
- React.createElement(antd.InputNumber, __assign({ className: classNames(s$r.input, className) }, controlProps))));
5153
+ React.createElement(antd.InputNumber, __assign({ className: classNames(s$s.input, className) }, controlProps))));
5153
5154
  };
5154
5155
 
5155
5156
  var RadioButtonField = function (props) {
@@ -5158,13 +5159,13 @@ var RadioButtonField = function (props) {
5158
5159
  React.createElement(antd.Radio.Group, __assign({ buttonStyle: buttonStyle, optionType: optionType }, controlProps))));
5159
5160
  };
5160
5161
 
5161
- var s$q = {"popup":"index-module_popup__Im5Y-"};
5162
+ var s$r = {"popup":"index-module_popup__Im5Y-"};
5162
5163
 
5163
5164
  var RangePicker = antd.DatePicker.RangePicker;
5164
5165
  var RangePickerField = function (props) {
5165
5166
  var _a = useLineProps(props), lineProps = _a[0], _b = _a[1], oneMonth = _b.oneMonth, controlProps = __rest(_b, ["oneMonth"]);
5166
5167
  return (React.createElement(FormLine, __assign({}, lineProps),
5167
- React.createElement(RangePicker, __assign({}, controlProps, { popupClassName: oneMonth ? s$q.popup : undefined }))));
5168
+ React.createElement(RangePicker, __assign({}, controlProps, { popupClassName: oneMonth ? s$r.popup : undefined }))));
5168
5169
  };
5169
5170
 
5170
5171
  var SelectField = function (props) {
@@ -5173,7 +5174,7 @@ var SelectField = function (props) {
5173
5174
  React.createElement(antd.Select, __assign({}, controlProps))));
5174
5175
  };
5175
5176
 
5176
- var s$p = {"empty":"index-module_empty__sV0Gg","add":"index-module_add__f03vM"};
5177
+ var s$q = {"empty":"index-module_empty__sV0Gg","add":"index-module_add__f03vM"};
5177
5178
 
5178
5179
  var SearchSelectField = function (props) {
5179
5180
  var _a = useLineProps(props), lineProps = _a[0], _b = _a[1], onSearch = _b.onSearch, onAdd = _b.onAdd, loading = _b.loading, text = _b.text, controlProps = __rest(_b, ["onSearch", "onAdd", "loading", "text"]);
@@ -5186,9 +5187,9 @@ var SearchSelectField = function (props) {
5186
5187
  onAdd === null || onAdd === void 0 ? void 0 : onAdd(searchText);
5187
5188
  }, [searchText, onAdd]);
5188
5189
  return (React.createElement(FormLine, __assign({}, lineProps),
5189
- React.createElement(antd.Select, __assign({}, controlProps, { showSearch: true, onSearch: handleSearch, loading: loading, notFoundContent: loading ? null : (React.createElement("div", { className: s$p.empty }, searchText ? (React.createElement(React.Fragment, null,
5190
+ React.createElement(antd.Select, __assign({}, controlProps, { showSearch: true, onSearch: handleSearch, loading: loading, notFoundContent: loading ? null : (React.createElement("div", { className: s$q.empty }, searchText ? (React.createElement(React.Fragment, null,
5190
5191
  (text === null || text === void 0 ? void 0 : text.notFound) || "Not found",
5191
- React.createElement(antd.Button, { size: "small", className: s$p.add, onClick: handleAdd }, (text === null || text === void 0 ? void 0 : text.addNew) || "Add New"))) : ((text === null || text === void 0 ? void 0 : text.enterToSearch) || "Enter text to start search"))) }))));
5192
+ React.createElement(antd.Button, { size: "small", className: s$q.add, onClick: handleAdd }, (text === null || text === void 0 ? void 0 : text.addNew) || "Add New"))) : ((text === null || text === void 0 ? void 0 : text.enterToSearch) || "Enter text to start search"))) }))));
5192
5193
  };
5193
5194
 
5194
5195
  var TextArea = antd.Input.TextArea;
@@ -5204,13 +5205,13 @@ var CheckboxField = function (props) {
5204
5205
  React.createElement(antd.Checkbox, __assign({}, controlProps))));
5205
5206
  };
5206
5207
 
5207
- var s$o = {"root":"index-module_root__GGl-p"};
5208
+ var s$p = {"root":"index-module_root__GGl-p"};
5208
5209
 
5209
5210
  var SwitchFieldControl = function (_a) {
5210
5211
  var children = _a.children, props = __rest(_a, ["children"]);
5211
- return (React.createElement("div", { className: s$o.root },
5212
+ return (React.createElement("div", { className: s$p.root },
5212
5213
  React.createElement(antd.Switch, __assign({}, props)),
5213
- children && React.createElement("div", { className: s$o.content }, children)));
5214
+ children && React.createElement("div", { className: s$p.content }, children)));
5214
5215
  };
5215
5216
 
5216
5217
  var SwitchField = function (props) {
@@ -5244,22 +5245,22 @@ var SwitchButtonField = function (props) {
5244
5245
  React.createElement(SwitchButtonControl, __assign({ buttonStyle: buttonStyle, optionType: optionType }, controlProps))));
5245
5246
  };
5246
5247
 
5247
- var s$n = {"root":"index-module_root__9GQDU"};
5248
+ var s$o = {"root":"index-module_root__9GQDU"};
5248
5249
 
5249
5250
  var FormButton = function (_a) {
5250
5251
  var className = _a.className, _b = _a.children, children = _b === void 0 ? "Save" : _b, loading = _a.loading, disabled = _a.disabled;
5251
- return (React.createElement("div", { className: classNames(s$n.root, className) },
5252
+ return (React.createElement("div", { className: classNames(s$o.root, className) },
5252
5253
  React.createElement(antd.Button, { htmlType: "submit", type: "primary", loading: loading, disabled: disabled }, children)));
5253
5254
  };
5254
5255
 
5255
- var s$m = {"root":"index-module_root__C05Ty"};
5256
+ var s$n = {"root":"index-module_root__C05Ty"};
5256
5257
 
5257
5258
  var FormError = function (_a) {
5258
5259
  var children = _a.children, className = _a.className;
5259
- return children ? React.createElement("div", { className: classNames(s$m.root, className) }, children) : null;
5260
+ return children ? React.createElement("div", { className: classNames(s$n.root, className) }, children) : null;
5260
5261
  };
5261
5262
 
5262
- var s$l = {"root":"index-module_root__C7wx2","content":"index-module_content__RsiJT","close":"index-module_close__lBc6p"};
5263
+ var s$m = {"root":"index-module_root__C7wx2","content":"index-module_content__RsiJT","close":"index-module_close__lBc6p"};
5263
5264
 
5264
5265
  var InfoDialog = function (_a) {
5265
5266
  var children = _a.children, className = _a.className, width = _a.width, hideClose = _a.hideClose, onClose = _a.onClose, _b = _a.open, open = _b === void 0 ? true : _b, contentClassName = _a.contentClassName, _c = _a.maskClosable, maskClosable = _c === void 0 ? false : _c;
@@ -5271,23 +5272,23 @@ var InfoDialog = function (_a) {
5271
5272
  }
5272
5273
  return result;
5273
5274
  }, [width]);
5274
- return (React.createElement(antd.Modal, { open: open, onCancel: onClose, style: style, className: classNames(s$l.root, className), maskClosable: maskClosable, footer: null },
5275
- React.createElement("div", { className: classNames(s$l.content, contentClassName) },
5275
+ return (React.createElement(antd.Modal, { open: open, onCancel: onClose, style: style, className: classNames(s$m.root, className), maskClosable: maskClosable, footer: null },
5276
+ React.createElement("div", { className: classNames(s$m.content, contentClassName) },
5276
5277
  children,
5277
- hideClose ? null : React.createElement(RegularIcon, { name: "cross", className: s$l.close, onClick: onClose }))));
5278
+ hideClose ? null : React.createElement(RegularIcon, { name: "cross", className: s$m.close, onClick: onClose }))));
5278
5279
  };
5279
5280
 
5280
- var s$k = {"root":"index-module_root__BQI-i","header":"index-module_header__OUCQj","title":"index-module_title__HPbDC","close":"index-module_close__-FN6K","content":"index-module_content__BpXha","footer":"index-module_footer__xqKte"};
5281
+ var s$l = {"root":"index-module_root__BQI-i","header":"index-module_header__OUCQj","title":"index-module_title__HPbDC","close":"index-module_close__-FN6K","content":"index-module_content__BpXha","footer":"index-module_footer__xqKte"};
5281
5282
 
5282
5283
  var RegularDialog = function (_a) {
5283
5284
  var titleIcon = _a.titleIcon, titlePrefix = _a.titlePrefix, title = _a.title, children = _a.children, _b = _a.hideFooter, hideFooter = _b === void 0 ? false : _b, className = _a.className, width = _a.width, okText = _a.okText, cancelText = _a.cancelText, cancelHide = _a.cancelHide, footerClassName = _a.footerClassName, contentClassName = _a.contentClassName, okHide = _a.okHide, okDisabled = _a.okDisabled, okLoading = _a.okLoading, onOk = _a.onOk, onClose = _a.onClose, _c = _a.open, open = _c === void 0 ? true : _c, _d = _a.maskClosable, maskClosable = _d === void 0 ? false : _d;
5284
5285
  var close = React.useMemo(function () {
5285
- return React.createElement(RegularIcon, { name: "cross", className: s$k.close, onClick: onClose });
5286
+ return React.createElement(RegularIcon, { name: "cross", className: s$l.close, onClick: onClose });
5286
5287
  }, [onClose]);
5287
5288
  var titleContent = React.useMemo(function () {
5288
5289
  if (typeof title === "string") {
5289
- return (React.createElement("div", { className: s$k.header },
5290
- React.createElement("div", { className: s$k.title },
5290
+ return (React.createElement("div", { className: s$l.header },
5291
+ React.createElement("div", { className: s$l.title },
5291
5292
  titleIcon && React.createElement(RegularIcon, { name: titleIcon }),
5292
5293
  React.createElement("span", null,
5293
5294
  " ",
@@ -5298,7 +5299,7 @@ var RegularDialog = function (_a) {
5298
5299
  return title(close);
5299
5300
  }
5300
5301
  return null;
5301
- }, [s$k, title, titlePrefix, close, titleIcon]);
5302
+ }, [s$l, title, titlePrefix, close, titleIcon]);
5302
5303
  var style = React.useMemo(function () {
5303
5304
  var result = {};
5304
5305
  if (width) {
@@ -5308,15 +5309,15 @@ var RegularDialog = function (_a) {
5308
5309
  return result;
5309
5310
  }, [width]);
5310
5311
  var hideBottom = hideFooter || (cancelHide && okHide);
5311
- return (React.createElement(antd.Modal, { open: open, onCancel: onClose, style: style, className: classNames(s$k.root, className), maskClosable: maskClosable, footer: null },
5312
+ return (React.createElement(antd.Modal, { open: open, onCancel: onClose, style: style, className: classNames(s$l.root, className), maskClosable: maskClosable, footer: null },
5312
5313
  titleContent,
5313
- React.createElement("div", { className: classNames(s$k.content, contentClassName) }, children),
5314
- hideBottom ? null : (React.createElement("div", { className: classNames(s$k.footer, footerClassName) },
5314
+ React.createElement("div", { className: classNames(s$l.content, contentClassName) }, children),
5315
+ hideBottom ? null : (React.createElement("div", { className: classNames(s$l.footer, footerClassName) },
5315
5316
  cancelHide ? null : React.createElement(antd.Button, { onClick: onClose }, cancelText || "Cancel"),
5316
5317
  okHide ? null : (React.createElement(antd.Button, { type: "primary", onClick: onOk, disabled: okDisabled, loading: okLoading }, okText || "OK"))))));
5317
5318
  };
5318
5319
 
5319
- var s$j = {"root":"index-module_root__qFuRH"};
5320
+ var s$k = {"root":"index-module_root__qFuRH"};
5320
5321
 
5321
5322
  function isRegular(icon) {
5322
5323
  return RegularIconNameList.includes(icon);
@@ -5326,13 +5327,13 @@ function isSocial(icon) {
5326
5327
  }
5327
5328
  var FlatButton = function (_a) {
5328
5329
  var children = _a.children, className = _a.className, icon = _a.icon, onClick = _a.onClick;
5329
- return (React.createElement("div", { className: classNames(s$j.root, className), onClick: onClick },
5330
+ return (React.createElement("div", { className: classNames(s$k.root, className), onClick: onClick },
5330
5331
  isRegular(icon) ? React.createElement(RegularIcon, { name: icon }) : null,
5331
5332
  isSocial(icon) ? React.createElement(SocialIcon, { name: icon }) : null,
5332
5333
  children ? React.createElement("span", null, children) : null));
5333
5334
  };
5334
5335
 
5335
- var s$i = {"root":"index-module_root__r-dVh","noneDecoration":"index-module_noneDecoration__N4OkH"};
5336
+ var s$j = {"root":"index-module_root__r-dVh","noneDecoration":"index-module_noneDecoration__N4OkH"};
5336
5337
 
5337
5338
  function AppLink(_a) {
5338
5339
  var _b;
@@ -5343,35 +5344,35 @@ function AppLink(_a) {
5343
5344
  href = route.build(params || {});
5344
5345
  }
5345
5346
  }
5346
- return (React.createElement(Link, __assign({ href: href, as: as, shallow: shallow, title: title, className: classNames(s$i.root, className, (_b = {},
5347
- _b[s$i.noneDecoration] = noneDecoration,
5348
- _b[s$i.show__underline] = showUnderline,
5347
+ return (React.createElement(Link, __assign({ href: href, as: as, shallow: shallow, title: title, className: classNames(s$j.root, className, (_b = {},
5348
+ _b[s$j.noneDecoration] = noneDecoration,
5349
+ _b[s$j.show__underline] = showUnderline,
5349
5350
  _b)), ref: aRef }, rest), children));
5350
5351
  }
5351
5352
 
5352
- var s$h = {"root":"index-module_root__gpEkZ"};
5353
+ var s$i = {"root":"index-module_root__gpEkZ"};
5353
5354
 
5354
5355
  var AppLinkButton = function (_a) {
5355
5356
  var className = _a.className, children = _a.children, rest = __rest(_a, ["className", "children"]);
5356
- return (React.createElement("div", __assign({ className: classNames(s$h.root, className) }, rest), children));
5357
+ return (React.createElement("div", __assign({ className: classNames(s$i.root, className) }, rest), children));
5357
5358
  };
5358
5359
 
5359
- var s$g = {"root":"index-module_root__KYWfI"};
5360
+ var s$h = {"root":"index-module_root__KYWfI"};
5360
5361
 
5361
5362
  var SimpleLinkButton = function (_a) {
5362
5363
  var className = _a.className, children = _a.children, _b = _a.type, type = _b === void 0 ? "button" : _b, rest = __rest(_a, ["className", "children", "type"]);
5363
- return (React.createElement("button", __assign({ type: type, className: classNames(s$g.root, className) }, rest), children));
5364
+ return (React.createElement("button", __assign({ type: type, className: classNames(s$h.root, className) }, rest), children));
5364
5365
  };
5365
5366
 
5366
- var s$f = {"root":"index-module_root__CQ7Qm","title":"index-module_title__Aud2u","title__active":"index-module_title__active__AueKr","title__label":"index-module_title__label__B3vUU","list":"index-module_list__EAf08","list__open":"index-module_list__open__1-0cD"};
5367
+ var s$g = {"root":"index-module_root__CQ7Qm","title":"index-module_title__Aud2u","title__active":"index-module_title__active__AueKr","title__label":"index-module_title__label__B3vUU","list":"index-module_list__EAf08","list__open":"index-module_list__open__1-0cD"};
5367
5368
 
5368
- var s$e = {"root":"index-module_root__AZ9HE","root__active":"index-module_root__active__UqszT"};
5369
+ var s$f = {"root":"index-module_root__AZ9HE","root__active":"index-module_root__active__UqszT"};
5369
5370
 
5370
5371
  var BackSidebarSubMenuItem = function (_a) {
5371
5372
  var _b;
5372
5373
  var isActive = _a.isActive, option = _a.option;
5373
5374
  var icon = option.icon, label = option.label, path = option.href;
5374
- return (React.createElement(AppLink, { className: classNames(s$e.root, (_b = {}, _b[s$e.root__active] = isActive, _b)), href: path },
5375
+ return (React.createElement(AppLink, { className: classNames(s$f.root, (_b = {}, _b[s$f.root__active] = isActive, _b)), href: path },
5375
5376
  icon && React.createElement(RegularIcon, { name: icon }),
5376
5377
  React.createElement("span", null, label)));
5377
5378
  };
@@ -5399,12 +5400,12 @@ var BackSidebarMenuItem = function (_a) {
5399
5400
  var handleClick = React.useCallback(function () {
5400
5401
  setOpen(!open);
5401
5402
  }, [open]);
5402
- return (React.createElement("div", { className: s$f.root },
5403
- React.createElement("div", { className: classNames(s$f.title, (_b = {}, _b[s$f.title__active] = isActive, _b)), onClick: handleClick },
5403
+ return (React.createElement("div", { className: s$g.root },
5404
+ React.createElement("div", { className: classNames(s$g.title, (_b = {}, _b[s$g.title__active] = isActive, _b)), onClick: handleClick },
5404
5405
  icon && React.createElement(RegularIcon, { name: icon }),
5405
- React.createElement("span", { className: s$f.title__label }, label),
5406
+ React.createElement("span", { className: s$g.title__label }, label),
5406
5407
  React.createElement(RegularIcon, { name: open ? "keyboard-arrow-down" : "keyboard-arrow-right" })),
5407
- React.createElement("div", { className: classNames(s$f.list, (_c = {}, _c[s$f.list__open] = open, _c)) }, keys.map(function (x) {
5408
+ React.createElement("div", { className: classNames(s$g.list, (_c = {}, _c[s$g.list__open] = open, _c)) }, keys.map(function (x) {
5408
5409
  var option = mapper[x];
5409
5410
  if (typeof option === "object") {
5410
5411
  return React.createElement(BackSidebarSubMenuItem, { key: x, option: option, isActive: x === activePathKey });
@@ -5412,7 +5413,7 @@ var BackSidebarMenuItem = function (_a) {
5412
5413
  }))));
5413
5414
  };
5414
5415
 
5415
- var s$d = {"root":"index-module_root__yMCtx","list":"index-module_list__Xr6Z5","master":"index-module_master__Eexhz","master__active":"index-module_master__active__j-iWA"};
5416
+ var s$e = {"root":"index-module_root__yMCtx","list":"index-module_list__Xr6Z5","master":"index-module_master__Eexhz","master__active":"index-module_master__active__j-iWA"};
5416
5417
 
5417
5418
  var BackSidebarShortMenuItem = function (_a) {
5418
5419
  var _b;
@@ -5428,9 +5429,9 @@ var BackSidebarShortMenuItem = function (_a) {
5428
5429
  var handleClick = React.useCallback(function () {
5429
5430
  setOpen(!open);
5430
5431
  }, [open]);
5431
- return (React.createElement("div", { className: s$d.root },
5432
- React.createElement("div", { className: classNames(s$d.master, (_b = {}, _b[s$d.master__active] = isActive, _b)), onClick: handleClick }, icon && React.createElement(RegularIcon, { name: icon })),
5433
- React.createElement("div", { className: classNames(s$d.list) }, keys.map(function (x) {
5432
+ return (React.createElement("div", { className: s$e.root },
5433
+ React.createElement("div", { className: classNames(s$e.master, (_b = {}, _b[s$e.master__active] = isActive, _b)), onClick: handleClick }, icon && React.createElement(RegularIcon, { name: icon })),
5434
+ React.createElement("div", { className: classNames(s$e.list) }, keys.map(function (x) {
5434
5435
  var option = mapper[x];
5435
5436
  if (typeof option === "object") {
5436
5437
  return React.createElement(BackSidebarSubMenuItem, { key: x, option: option, isActive: x === activePathKey });
@@ -5438,27 +5439,27 @@ var BackSidebarShortMenuItem = function (_a) {
5438
5439
  }))));
5439
5440
  };
5440
5441
 
5441
- var s$c = {"root":"index-module_root__r4Egx"};
5442
+ var s$d = {"root":"index-module_root__r4Egx"};
5442
5443
 
5443
5444
  /* eslint-disable react/no-array-index-key */
5444
5445
  // https://www.einfosoft.com/templates/admin/spice/source/edit_booking.html#
5445
5446
  var BackSidebar = function (_a) {
5446
5447
  var className = _a.className, options = _a.options, mapper = _a.mapper, top = _a.top, shortMode = _a.shortMode, activePathKey = _a.activePathKey, defaultPathKey = _a.defaultPathKey;
5447
- return (React.createElement("div", { className: classNames(s$c.root, className) },
5448
- top ? React.createElement("div", { className: classNames(s$c.top) }, top) : null,
5449
- React.createElement("div", { className: s$c.menu }, options.map(function (option, i) {
5448
+ return (React.createElement("div", { className: classNames(s$d.root, className) },
5449
+ top ? React.createElement("div", { className: classNames(s$d.top) }, top) : null,
5450
+ React.createElement("div", { className: s$d.menu }, options.map(function (option, i) {
5450
5451
  return shortMode ? (React.createElement(BackSidebarShortMenuItem, { key: i, mapper: mapper, option: option, activePathKey: activePathKey || defaultPathKey })) : (React.createElement(BackSidebarMenuItem, { key: i, mapper: mapper, option: option, activePathKey: activePathKey || defaultPathKey }));
5451
5452
  }))));
5452
5453
  };
5453
5454
 
5454
- var s$b = {"root":"index-module_root__SICCv","root__short":"index-module_root__short__XnXWP","header":"index-module_header__00DV1","sidebar":"index-module_sidebar__o2Obb","content":"index-module_content__D0okO","menu":"index-module_menu__48Uz3","menu__icon":"index-module_menu__icon__BFpAs","loading":"index-module_loading__SpWat"};
5455
+ var s$c = {"root":"index-module_root__SICCv","root__short":"index-module_root__short__XnXWP","header":"index-module_header__00DV1","sidebar":"index-module_sidebar__o2Obb","content":"index-module_content__D0okO","menu":"index-module_menu__48Uz3","menu__icon":"index-module_menu__icon__BFpAs","loading":"index-module_loading__SpWat"};
5455
5456
 
5456
- var s$a = {"root":"index-module_root__Q-TED","loader":"index-module_loader__qxQNC"};
5457
+ var s$b = {"root":"index-module_root__Q-TED","loader":"index-module_loader__qxQNC"};
5457
5458
 
5458
5459
  var LoadingPanel = function (_a) {
5459
5460
  var className = _a.className;
5460
- return (React.createElement("div", { className: classNames(s$a.root, className) },
5461
- React.createElement(antd.Spin, { size: "large", className: s$a.loader })));
5461
+ return (React.createElement("div", { className: classNames(s$b.root, className) },
5462
+ React.createElement(antd.Spin, { size: "large", className: s$b.loader })));
5462
5463
  };
5463
5464
 
5464
5465
  var BackLayout = function (_a) {
@@ -5468,19 +5469,19 @@ var BackLayout = function (_a) {
5468
5469
  var handleMenu = React.useCallback(function () {
5469
5470
  setShort(!short);
5470
5471
  }, [short]);
5471
- return loading ? (React.createElement(LoadingPanel, { className: s$b.loading })) : (React.createElement("div", { className: classNames(s$b.root, className, (_b = {}, _b[s$b.root__short] = short, _b)) },
5472
- React.createElement("div", { className: classNames(s$b.header, headerClassName) }, header),
5473
- React.createElement("div", { className: classNames(s$b.sidebar, sidebarClassName) },
5474
- React.createElement("div", { className: s$b.menu },
5475
- React.createElement(RegularIcon, { className: s$b.menu__icon, name: "menu", onClick: handleMenu }),
5476
- !short && React.createElement("div", { className: s$b.menu__title }, sidebarTitle)),
5472
+ return loading ? (React.createElement(LoadingPanel, { className: s$c.loading })) : (React.createElement("div", { className: classNames(s$c.root, className, (_b = {}, _b[s$c.root__short] = short, _b)) },
5473
+ React.createElement("div", { className: classNames(s$c.header, headerClassName) }, header),
5474
+ React.createElement("div", { className: classNames(s$c.sidebar, sidebarClassName) },
5475
+ React.createElement("div", { className: s$c.menu },
5476
+ React.createElement(RegularIcon, { className: s$c.menu__icon, name: "menu", onClick: handleMenu }),
5477
+ !short && React.createElement("div", { className: s$c.menu__title }, sidebarTitle)),
5477
5478
  React.createElement(BackSidebar, __assign({}, sidebarProps, { shortMode: short }))),
5478
- contentLoading ? React.createElement(LoadingPanel, { className: s$b.content }) : React.createElement("div", { className: classNames(s$b.content, contentClassName) }, children)));
5479
+ contentLoading ? React.createElement(LoadingPanel, { className: s$c.content }) : React.createElement("div", { className: classNames(s$c.content, contentClassName) }, children)));
5479
5480
  };
5480
5481
 
5481
- var s$9 = {"root":"index-module_root__Q7VjD","root__shadow":"index-module_root__shadow__OhPad","logo":"index-module_logo__KCA1E","content":"index-module_content__T-JEW","link":"index-module_link__nXsvL","select":"index-module_select__22zW6"};
5482
+ var s$a = {"root":"index-module_root__Q7VjD","root__shadow":"index-module_root__shadow__OhPad","logo":"index-module_logo__KCA1E","content":"index-module_content__T-JEW","link":"index-module_link__nXsvL","select":"index-module_select__22zW6"};
5482
5483
 
5483
- var s$8 = {"popover":"index-module_popover__lwzdT","item":"index-module_item__pfayG"};
5484
+ var s$9 = {"popover":"index-module_popover__lwzdT","item":"index-module_item__pfayG"};
5484
5485
 
5485
5486
  var PopoverSelect = function (_a) {
5486
5487
  var options = _a.options, value = _a.value, onChange = _a.onChange, icon = _a.icon, renderOption = _a.renderOption, showValue = _a.showValue;
@@ -5498,15 +5499,15 @@ var PopoverSelect = function (_a) {
5498
5499
  var selectedOption = React.useMemo(function () {
5499
5500
  return options.find(function (x) { return x.value === value; });
5500
5501
  }, [options, value]);
5501
- var popoverContent = React.useMemo(function () { return (React.createElement("div", { className: s$8.popover }, options
5502
+ var popoverContent = React.useMemo(function () { return (React.createElement("div", { className: s$9.popover }, options
5502
5503
  .filter(function (x) { return x.value !== value; })
5503
- .map(function (x) { return (React.createElement(React.Fragment, { key: x.value }, renderOption ? (renderOption(x, { className: s$8.item, onClick: function () { return handleChange(x.value); } })) : (React.createElement("div", { className: s$8.item, onClick: function () { return handleChange(x.value); } }, x.label)))); }))); }, [options, value, handleChange, renderOption]);
5504
+ .map(function (x) { return (React.createElement(React.Fragment, { key: x.value }, renderOption ? (renderOption(x, { className: s$9.item, onClick: function () { return handleChange(x.value); } })) : (React.createElement("div", { className: s$9.item, onClick: function () { return handleChange(x.value); } }, x.label)))); }))); }, [options, value, handleChange, renderOption]);
5504
5505
  return (React.createElement(antd.Popover, { content: popoverContent, open: open, onOpenChange: closePopover, placement: "bottomRight" },
5505
5506
  React.createElement("span", null,
5506
5507
  React.createElement(IconDivision, { icon: icon, onClick: handleOpen, rightIcon: open ? "expand-less" : "expand-more" }, showValue ? value : selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label))));
5507
5508
  };
5508
5509
 
5509
- var s$7 = {"root":"index-module_root__EQ0II","rounded":"index-module_rounded__4OK03","link":"index-module_link__fptGw"};
5510
+ var s$8 = {"root":"index-module_root__EQ0II","rounded":"index-module_rounded__4OK03","link":"index-module_link__fptGw"};
5510
5511
 
5511
5512
  var Content = function (_a) {
5512
5513
  var _b;
@@ -5518,7 +5519,7 @@ var Content = function (_a) {
5518
5519
  }
5519
5520
  return result;
5520
5521
  }, [size]);
5521
- return (React.createElement(antd.Button, __assign({ style: style, className: classNames(s$7.root, className, (_b = {}, _b[s$7.rounded] = !children, _b[s$7.link] = href, _b)), type: isPrimary ? "primary" : "default", size: size }, props),
5522
+ return (React.createElement(antd.Button, __assign({ style: style, className: classNames(s$8.root, className, (_b = {}, _b[s$8.rounded] = !children, _b[s$8.link] = href, _b)), type: isPrimary ? "primary" : "default", size: size }, props),
5522
5523
  React.createElement(IconDivision, { icon: icon, rightIcon: rightIcon }, children)));
5523
5524
  };
5524
5525
  var Button = function (_a) {
@@ -5567,38 +5568,38 @@ var FrontHeader = function (_a) {
5567
5568
  var className = _b.className;
5568
5569
  return value === "logout" ? (React.createElement("div", { className: className, onClick: user === null || user === void 0 ? void 0 : user.onLogOut }, label)) : (React.createElement(AppLink, { href: value, className: className }, label));
5569
5570
  }, [user]);
5570
- return (React.createElement("div", { className: classNames(s$9.root, (_b = {},
5571
- _b[s$9.root__shadow] = shadow,
5571
+ return (React.createElement("div", { className: classNames(s$a.root, (_b = {},
5572
+ _b[s$a.root__shadow] = shadow,
5572
5573
  _b), className) },
5573
5574
  onMenuClick && React.createElement(Button, { icon: menuIcon || "menu", onClick: onMenuClick }),
5574
- React.createElement(AppLink, { className: s$9.logo, href: logoHref }, logoContent || "AlfaSchool"),
5575
- React.createElement("div", { className: s$9.content }, children),
5575
+ React.createElement(AppLink, { className: s$a.logo, href: logoHref }, logoContent || "AlfaSchool"),
5576
+ React.createElement("div", { className: s$a.content }, children),
5576
5577
  onSearchClick && (React.createElement(Button, { icon: "search", onClick: onSearchClick, size: "middle" }, text.search || "Search")),
5577
- !user && (React.createElement("div", { className: s$9.link },
5578
+ !user && (React.createElement("div", { className: s$a.link },
5578
5579
  React.createElement(AppLink, { href: loginHref }, text.login || "Login"),
5579
5580
  React.createElement(AppLink, { href: registerHref }, text.register || "Register"))),
5580
- React.createElement("div", { className: s$9.select },
5581
+ React.createElement("div", { className: s$a.select },
5581
5582
  user && React.createElement(PopoverSelect, { showValue: true, value: user.username, options: settingsOptions, renderOption: handleSettingRender }),
5582
5583
  React.createElement(PopoverSelect, __assign({ icon: "language" }, language)))));
5583
5584
  };
5584
5585
 
5585
- var s$6 = {"root":"index-module_root__Fwjge","header":"index-module_header__DhAx3","header__inner":"index-module_header__inner__gYRYO","content":"index-module_content__Afu6q","content__footer":"index-module_content__footer__-ACCs","footer":"index-module_footer__3hSOQ"};
5586
+ var s$7 = {"root":"index-module_root__Fwjge","header":"index-module_header__DhAx3","header__inner":"index-module_header__inner__gYRYO","content":"index-module_content__Afu6q","content__footer":"index-module_content__footer__-ACCs","footer":"index-module_footer__3hSOQ"};
5586
5587
 
5587
5588
  var FrontLayout = function (_a) {
5588
5589
  var children = _a.children, header = _a.header;
5589
- return (React.createElement("div", { className: s$6.root },
5590
- React.createElement("div", { className: s$6.header },
5591
- React.createElement(FrontHeader, __assign({}, header, { className: classNames(header.className, s$6.header__inner) }))),
5592
- React.createElement("div", { className: classNames(s$6.content) },
5590
+ return (React.createElement("div", { className: s$7.root },
5591
+ React.createElement("div", { className: s$7.header },
5592
+ React.createElement(FrontHeader, __assign({}, header, { className: classNames(header.className, s$7.header__inner) }))),
5593
+ React.createElement("div", { className: classNames(s$7.content) },
5593
5594
  React.createElement("div", null, children))));
5594
5595
  };
5595
5596
 
5596
- var s$5 = {"root":"index-module_root__OWeNb","link":"index-module_link__H8HcA","button":"index-module_button__UVt6a"};
5597
+ var s$6 = {"root":"index-module_root__OWeNb","link":"index-module_link__H8HcA","button":"index-module_button__UVt6a"};
5597
5598
 
5598
5599
  /* eslint-disable react/no-array-index-key */
5599
5600
  var HeaderActionPanel = function (_a) {
5600
5601
  var className = _a.className, actions = _a.actions, _b = _a.size, size = _b === void 0 ? "small" : _b;
5601
- return (actions === null || actions === void 0 ? void 0 : actions.length) ? (React.createElement("div", { className: classNames(s$5.root, className) }, actions.map(function (action, i) {
5602
+ return (actions === null || actions === void 0 ? void 0 : actions.length) ? (React.createElement("div", { className: classNames(s$6.root, className) }, actions.map(function (action, i) {
5602
5603
  var content = action;
5603
5604
  var button = action;
5604
5605
  var link = action;
@@ -5610,16 +5611,16 @@ var HeaderActionPanel = function (_a) {
5610
5611
  else if (typeof (button === null || button === void 0 ? void 0 : button.onClick) === "function") {
5611
5612
  var confirmText = button.confirmText, onClick = button.onClick;
5612
5613
  return confirmText ? (React.createElement(antd.Popconfirm, { key: i, title: confirmText, onConfirm: onClick, okText: "Yes", cancelText: "No" },
5613
- React.createElement(Button, { key: i, icon: iconElement, tooltip: tooltip, tooltipPlacement: tooltipPlacement, className: s$5.button, size: size, disabled: loading }, label))) : (React.createElement(Button, { key: i, icon: iconElement, onClick: onClick, tooltip: tooltip, tooltipPlacement: tooltipPlacement, className: s$5.button, size: size, disabled: loading }, label));
5614
+ React.createElement(Button, { key: i, icon: iconElement, tooltip: tooltip, tooltipPlacement: tooltipPlacement, className: s$6.button, size: size, disabled: loading }, label))) : (React.createElement(Button, { key: i, icon: iconElement, onClick: onClick, tooltip: tooltip, tooltipPlacement: tooltipPlacement, className: s$6.button, size: size, disabled: loading }, label));
5614
5615
  }
5615
5616
  else if (typeof (link === null || link === void 0 ? void 0 : link.href) === "string") {
5616
5617
  var href = link.href;
5617
- return (React.createElement(Button, { key: i, icon: iconElement, tooltip: tooltip, tooltipPlacement: tooltipPlacement, href: href, className: s$5.link, size: size, disabled: loading }, label));
5618
+ return (React.createElement(Button, { key: i, icon: iconElement, tooltip: tooltip, tooltipPlacement: tooltipPlacement, href: href, className: s$6.link, size: size, disabled: loading }, label));
5618
5619
  }
5619
5620
  }))) : null;
5620
5621
  };
5621
5622
 
5622
- var s$4 = {"root":"index-module_root__AUcgm","separator":"index-module_separator__eiPxa","step":"index-module_step__Qwm7C","image":"index-module_image__kUPE1"};
5623
+ var s$5 = {"root":"index-module_root__AUcgm","separator":"index-module_separator__eiPxa","step":"index-module_step__Qwm7C","image":"index-module_image__kUPE1"};
5623
5624
 
5624
5625
  var TextUtil = {
5625
5626
  maxTextEllipsis: function (text, maxLength) {
@@ -5693,26 +5694,26 @@ var AlfaBreadcrumb = function (_a) {
5693
5694
  result = isMobile ? result.slice(options.length - 1) : result;
5694
5695
  return result;
5695
5696
  }, [root, options, isMobile, mapper, path]);
5696
- return innerOptions.length ? (React.createElement("div", { className: classNames(s$4.root, className) }, innerOptions.map(function (_a, index) {
5697
+ return innerOptions.length ? (React.createElement("div", { className: classNames(s$5.root, className) }, innerOptions.map(function (_a, index) {
5697
5698
  var href = _a.href, label = _a.label, imageUrl = _a.imageUrl;
5698
5699
  var labelContent = (React.createElement(React.Fragment, null,
5699
- imageUrl && React.createElement("img", { className: s$4.image, src: imageUrl, alt: label }),
5700
+ imageUrl && React.createElement("img", { className: s$5.image, src: imageUrl, alt: label }),
5700
5701
  React.createElement("span", null, TextUtil.maxTextEllipsis(label, maxStepTextLength))));
5701
5702
  return (React.createElement(React.Fragment, { key: href || label || index },
5702
- index > 0 ? React.createElement("span", { className: s$4.separator }, separator) : null,
5703
- href ? (React.createElement(AppLink, { className: classNames(s$4.step, s$4.link, stepClassName), href: href, title: label }, labelContent)) : (React.createElement("span", { className: classNames(s$4.step, s$4.label, stepClassName), title: label }, labelContent))));
5703
+ index > 0 ? React.createElement("span", { className: s$5.separator }, separator) : null,
5704
+ href ? (React.createElement(AppLink, { className: classNames(s$5.step, s$5.link, stepClassName), href: href, title: label }, labelContent)) : (React.createElement("span", { className: classNames(s$5.step, s$5.label, stepClassName), title: label }, labelContent))));
5704
5705
  }))) : null;
5705
5706
  };
5706
5707
 
5707
- var s$3 = {"root":"index-module_root__UuWET","link":"index-module_link__qD-Ss"};
5708
+ var s$4 = {"root":"index-module_root__UuWET","link":"index-module_link__qD-Ss"};
5708
5709
 
5709
5710
  var AlfaAttributor = function (_a) {
5710
5711
  var className = _a.className, options = _a.options;
5711
- return options.length ? (React.createElement("div", { className: classNames(s$3.root, className) }, options.map(function (_a, i) {
5712
+ return options.length ? (React.createElement("div", { className: classNames(s$4.root, className) }, options.map(function (_a, i) {
5712
5713
  var icon = _a.icon, content = _a.content, href = _a.href;
5713
5714
  var result = content;
5714
5715
  if (typeof href === "string") {
5715
- result = (React.createElement(AppLink, { className: s$3.link, href: href }, content));
5716
+ result = (React.createElement(AppLink, { className: s$4.link, href: href }, content));
5716
5717
  }
5717
5718
  if (typeof icon === "string") {
5718
5719
  result = (React.createElement(IconDivision, { key: href || i, icon: icon }, result));
@@ -5721,7 +5722,7 @@ var AlfaAttributor = function (_a) {
5721
5722
  }))) : null;
5722
5723
  };
5723
5724
 
5724
- var s$2 = {"options":"index-module_options__7cPUT","autocomplete":"index-module_autocomplete__NRZUE"};
5725
+ var s$3 = {"options":"index-module_options__7cPUT","autocomplete":"index-module_autocomplete__NRZUE"};
5725
5726
 
5726
5727
  function OptionsAutocomplete(_a) {
5727
5728
  var onChange = _a.onChange, placeholder = _a.placeholder, requestAction = _a.requestAction, requestResponse = _a.requestResponse, optionMapper = _a.optionMapper;
@@ -5766,16 +5767,16 @@ function OptionsAutocomplete(_a) {
5766
5767
  return result;
5767
5768
  }, [options]);
5768
5769
  return (React.createElement("div", null,
5769
- React.createElement(antd.AutoComplete, { options: optionsModified, onSelect: onSelect, onSearch: setText, value: text, className: s$2.autocomplete },
5770
+ React.createElement(antd.AutoComplete, { options: optionsModified, onSelect: onSelect, onSearch: setText, value: text, className: s$3.autocomplete },
5770
5771
  React.createElement(antd.Input.Search, { placeholder: placeholder, enterButton: true, loading: requestResponse.isLoading, allowClear: true })),
5771
- React.createElement("div", { className: s$2.options }, values.map(function (w) { return (React.createElement(antd.Tag, { key: w.value, closable: true, onClose: function () { return setValues(function (data) { return data.filter(function (x) { return x.value !== w.value; }); }); }, color: "blue" }, w.label)); }))));
5772
+ React.createElement("div", { className: s$3.options }, values.map(function (w) { return (React.createElement(antd.Tag, { key: w.value, closable: true, onClose: function () { return setValues(function (data) { return data.filter(function (x) { return x.value !== w.value; }); }); }, color: "blue" }, w.label)); }))));
5772
5773
  }
5773
5774
 
5774
- var s$1 = {"root":"index-module_root__Ch0J0"};
5775
+ var s$2 = {"root":"index-module_root__Ch0J0"};
5775
5776
 
5776
5777
  var SplitLine = function (_a) {
5777
5778
  var className = _a.className;
5778
- return React.createElement("div", { className: classNames(s$1.root, className) });
5779
+ return React.createElement("div", { className: classNames(s$2.root, className) });
5779
5780
  };
5780
5781
 
5781
5782
  var classes = {"root":"index-module_root__VVbaB","playing":"index-module_playing__v4q8X","play-animation":"index-module_play-animation__Y-ns-"};
@@ -5800,14 +5801,43 @@ var AudioPlayer = function (_a) {
5800
5801
  React.createElement(Button, { onClick: handlePlay, icon: active ? "audio" : "play-arrow", className: classNames((_b = {}, _b[classes.playing] = active, _b)), isPrimary: active })));
5801
5802
  };
5802
5803
 
5803
- var s = {"icon":"index-module_icon__-KK3y"};
5804
+ var s$1 = {"icon":"index-module_icon__-KK3y"};
5804
5805
 
5805
5806
  var HelpTip = function (_a) {
5806
5807
  var title = _a.title, className = _a.className, _b = _a.iconName, iconName = _b === void 0 ? "help" : _b, href = _a.href, target = _a.target, children = _a.children;
5807
- var iconNode = React.createElement(RegularIcon, { name: iconName, className: classNames(s.icon, className) });
5808
+ var iconNode = React.createElement(RegularIcon, { name: iconName, className: classNames(s$1.icon, className) });
5808
5809
  return (React.createElement(AppTooltip, { title: title || children, placement: "top" }, href ? (React.createElement(AppLink, { href: href, target: target }, iconNode)) : (iconNode)));
5809
5810
  };
5810
5811
 
5812
+ var s = {"root":"index-module_root__W7fFh","level":"index-module_level__J8dSJ","bar":"index-module_bar__V-ymE","bar__rate":"index-module_bar__rate__w6r3z","code":"index-module_code__aAnic"};
5813
+
5814
+ var LevelBadge = function (_a) {
5815
+ var levels = _a.levels, className = _a.className, texts = _a.texts, children = _a.children;
5816
+ var bars = React.useMemo(function () {
5817
+ var maxRate = Math.max.apply(Math, levels.map(function (x) { return x.rate; }));
5818
+ return levels.map(function (x) { return [x.code.toUpperCase(), x.rate, x.rate / maxRate]; });
5819
+ }, [levels]);
5820
+ var interText = React.useMemo(function () {
5821
+ var _a;
5822
+ return {
5823
+ refersTo: (_a = texts === null || texts === void 0 ? void 0 : texts.refersTo) !== null && _a !== void 0 ? _a : (function (level) { return "Level ".concat(level.code, " at ").concat(numeral(level.rate).format("0%")); }),
5824
+ };
5825
+ }, [texts]);
5826
+ if (bars.length === 0) {
5827
+ return null;
5828
+ }
5829
+ return (React.createElement("div", { className: classNames(s.root, className) },
5830
+ bars.map(function (_a) {
5831
+ var code = _a[0], rate = _a[1], normalizedRate = _a[2];
5832
+ return (React.createElement(AppTooltip, { key: code, title: interText.refersTo({ code: code, rate: rate }), placement: "top" },
5833
+ React.createElement("div", { key: code, className: s.level },
5834
+ React.createElement("div", { className: s.bar },
5835
+ React.createElement("div", { className: s.bar__rate, style: { height: "".concat(normalizedRate * 100, "%") } })),
5836
+ React.createElement("div", { className: s.code }, code))));
5837
+ }),
5838
+ children));
5839
+ };
5840
+
5811
5841
  exports.AlfaAttributor = AlfaAttributor;
5812
5842
  exports.AlfaBreadcrumb = AlfaBreadcrumb;
5813
5843
  exports.AppForm = AppForm;
@@ -5841,6 +5871,7 @@ exports.IconDivision = IconDivision;
5841
5871
  exports.InfoDialog = InfoDialog;
5842
5872
  exports.InputField = InputField;
5843
5873
  exports.InputNumberField = InputNumberField;
5874
+ exports.LevelBadge = LevelBadge;
5844
5875
  exports.OptionsAutocomplete = OptionsAutocomplete;
5845
5876
  exports.PageTitle = PageTitle;
5846
5877
  exports.Paragraph = Paragraph;
package/build/styles.css CHANGED
@@ -666,4 +666,32 @@ body {
666
666
  .index-module_icon__-KK3y {
667
667
  font-size: var(--helpTipFontSize);
668
668
  margin: var(--helpTipMargin);
669
+ }
670
+ .index-module_root__W7fFh {
671
+ display: flex;
672
+ flex-direction: row;
673
+ font-size: 12px;
674
+ gap: 0.3em;
675
+ }
676
+
677
+ .index-module_level__J8dSJ {
678
+ display: flex;
679
+ flex-direction: column;
680
+ }
681
+
682
+ .index-module_bar__V-ymE {
683
+ height: 1.1em;
684
+ background-color: rgba(15, 23, 42, 0.055);
685
+ display: flex;
686
+ align-items: flex-end;
687
+ justify-content: center;
688
+ }
689
+
690
+ .index-module_bar__rate__w6r3z {
691
+ width: 100%;
692
+ background-color: var(--passiveColor);
693
+ }
694
+
695
+ .index-module_code__aAnic {
696
+ padding: 1px 0;
669
697
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "revdev-components",
3
- "version": "0.192.0",
3
+ "version": "0.194.0",
4
4
  "main": "build/index.js",
5
5
  "module": "build/index.esm.js",
6
6
  "scripts": {