@ytsaurus/ui 1.18.1 → 1.19.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/build/cjs/@types/types.d.ts +14 -0
- package/build/cjs/ui/components/QuotaEditor/QuotaEditor.js +3 -0
- package/build/cjs/ui/components/QuotaEditor/QuotaEditor.js.map +1 -1
- package/build/cjs/ui/hocs/components/Modal/withScope.d.ts +4 -55
- package/build/cjs/ui/hocs/components/Modal/withScope.js +8 -55
- package/build/cjs/ui/hocs/components/Modal/withScope.js.map +1 -1
- package/build/cjs/ui/hooks/use-hotkeysjs-scope.d.ts +1 -0
- package/build/cjs/ui/hooks/use-hotkeysjs-scope.js +22 -0
- package/build/cjs/ui/hooks/use-hotkeysjs-scope.js.map +1 -0
- package/build/cjs/ui/pages/navigation/Navigation/PathEditorModal/PathEditorModal.d.ts +1 -55
- package/build/cjs/ui/pages/system/Masters/Masters.css +3 -0
- package/build/cjs/ui/pages/system/Masters/Masters.css.map +1 -1
- package/build/cjs/ui/pages/system/Masters/Masters.d.ts +4 -1
- package/build/cjs/ui/pages/system/Masters/Masters.js +22 -3
- package/build/cjs/ui/pages/system/Masters/Masters.js.map +1 -1
- package/build/cjs/ui/pages/system/Masters/SystemAlert.d.ts +4 -0
- package/build/cjs/ui/pages/system/Masters/SystemAlert.js +26 -0
- package/build/cjs/ui/pages/system/Masters/SystemAlert.js.map +1 -0
- package/build/cjs/ui/pages/system/SystemStateOverview/SystemStateLabels.d.ts +9 -0
- package/build/cjs/ui/pages/system/SystemStateOverview/SystemStateLabels.js +27 -0
- package/build/cjs/ui/pages/system/SystemStateOverview/SystemStateLabels.js.map +1 -0
- package/build/cjs/ui/pages/system/SystemStateOverview/SystemStateOverview.d.ts +2 -1
- package/build/cjs/ui/pages/system/SystemStateOverview/SystemStateOverview.js +8 -4
- package/build/cjs/ui/pages/system/SystemStateOverview/SystemStateOverview.js.map +1 -1
- package/build/cjs/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.css +5 -0
- package/build/cjs/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.css.map +1 -1
- package/build/cjs/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.js +13 -6
- package/build/cjs/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.js.map +1 -1
- package/build/cjs/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.css +0 -3
- package/build/cjs/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.css.map +1 -1
- package/build/cjs/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.d.ts +0 -1
- package/build/cjs/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.js +42 -47
- package/build/cjs/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.js.map +1 -1
- package/build/cjs/ui/store/actions/system/masters.d.ts +2 -1
- package/build/cjs/ui/store/actions/system/masters.js +54 -42
- package/build/cjs/ui/store/actions/system/masters.js.map +1 -1
- package/build/cjs/ui/store/reducers/system/masters.d.ts +12 -3
- package/build/cjs/ui/store/reducers/system/masters.js +9 -4
- package/build/cjs/ui/store/reducers/system/masters.js.map +1 -1
- package/build/cjs/ui/store/selectors/scheduling/scheduling-pools.d.ts +27 -0
- package/build/cjs/ui/store/selectors/scheduling/scheduling-pools.js.map +1 -1
- package/build/cjs/ui/store/selectors/system/index.d.ts +2 -1
- package/build/cjs/ui/store/selectors/system/index.js.map +1 -1
- package/build/cjs/ui/store/selectors/system/masters.d.ts +3 -0
- package/build/cjs/ui/store/selectors/system/masters.js +4 -1
- package/build/cjs/ui/store/selectors/system/masters.js.map +1 -1
- package/build/cjs/ui/utils/scheduling/detailsTable.d.ts +387 -326
- package/build/cjs/ui/utils/scheduling/detailsTable.js +12 -6
- package/build/cjs/ui/utils/scheduling/detailsTable.js.map +1 -1
- package/build/cjs/ui/utils/tablet_cell_bundles/bundles/bundle-editor-dialog/index.js +0 -3
- package/build/cjs/ui/utils/tablet_cell_bundles/bundles/bundle-editor-dialog/index.js.map +1 -1
- package/build/cjs/ui/utils/utils.js +2 -1
- package/build/cjs/ui/utils/utils.js.map +1 -1
- package/build/esm/@types/types.d.ts +14 -0
- package/build/esm/ui/components/QuotaEditor/QuotaEditor.js +3 -0
- package/build/esm/ui/components/QuotaEditor/QuotaEditor.js.map +1 -1
- package/build/esm/ui/hocs/components/Modal/withScope.d.ts +4 -55
- package/build/esm/ui/hocs/components/Modal/withScope.js +8 -55
- package/build/esm/ui/hocs/components/Modal/withScope.js.map +1 -1
- package/build/esm/ui/hooks/use-hotkeysjs-scope.d.ts +1 -0
- package/build/esm/ui/hooks/use-hotkeysjs-scope.js +15 -0
- package/build/esm/ui/hooks/use-hotkeysjs-scope.js.map +1 -0
- package/build/esm/ui/pages/navigation/Navigation/PathEditorModal/PathEditorModal.d.ts +1 -55
- package/build/esm/ui/pages/system/Masters/Masters.css +3 -0
- package/build/esm/ui/pages/system/Masters/Masters.css.map +1 -1
- package/build/esm/ui/pages/system/Masters/Masters.d.ts +4 -1
- package/build/esm/ui/pages/system/Masters/Masters.js +22 -3
- package/build/esm/ui/pages/system/Masters/Masters.js.map +1 -1
- package/build/esm/ui/pages/system/Masters/Masters.scss +4 -0
- package/build/esm/ui/pages/system/Masters/SystemAlert.d.ts +4 -0
- package/build/esm/ui/pages/system/Masters/SystemAlert.js +19 -0
- package/build/esm/ui/pages/system/Masters/SystemAlert.js.map +1 -0
- package/build/esm/ui/pages/system/SystemStateOverview/SystemStateLabels.d.ts +9 -0
- package/build/esm/ui/pages/system/SystemStateOverview/SystemStateLabels.js +20 -0
- package/build/esm/ui/pages/system/SystemStateOverview/SystemStateLabels.js.map +1 -0
- package/build/esm/ui/pages/system/SystemStateOverview/SystemStateOverview.d.ts +2 -1
- package/build/esm/ui/pages/system/SystemStateOverview/SystemStateOverview.js +7 -3
- package/build/esm/ui/pages/system/SystemStateOverview/SystemStateOverview.js.map +1 -1
- package/build/esm/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.css +5 -0
- package/build/esm/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.css.map +1 -1
- package/build/esm/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.js +13 -6
- package/build/esm/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.js.map +1 -1
- package/build/esm/ui/pages/tablet_cell_bundles/bundle/BundleConfigurationMeta.scss +6 -0
- package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.css +0 -3
- package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.css.map +1 -1
- package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.d.ts +0 -1
- package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.js +42 -47
- package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.js.map +1 -1
- package/build/esm/ui/pages/tablet_cell_bundles/bundles/BundleEditorDialog/BundleEditorDialog.scss +0 -4
- package/build/esm/ui/store/actions/system/masters.d.ts +2 -1
- package/build/esm/ui/store/actions/system/masters.js +47 -35
- package/build/esm/ui/store/actions/system/masters.js.map +1 -1
- package/build/esm/ui/store/reducers/system/masters.d.ts +12 -3
- package/build/esm/ui/store/reducers/system/masters.js +9 -4
- package/build/esm/ui/store/reducers/system/masters.js.map +1 -1
- package/build/esm/ui/store/selectors/scheduling/scheduling-pools.d.ts +27 -0
- package/build/esm/ui/store/selectors/scheduling/scheduling-pools.js.map +1 -1
- package/build/esm/ui/store/selectors/system/index.d.ts +2 -1
- package/build/esm/ui/store/selectors/system/index.js.map +1 -1
- package/build/esm/ui/store/selectors/system/masters.d.ts +3 -0
- package/build/esm/ui/store/selectors/system/masters.js +3 -0
- package/build/esm/ui/store/selectors/system/masters.js.map +1 -1
- package/build/esm/ui/utils/scheduling/detailsTable.d.ts +387 -326
- package/build/esm/ui/utils/scheduling/detailsTable.js +12 -6
- package/build/esm/ui/utils/scheduling/detailsTable.js.map +1 -1
- package/build/esm/ui/utils/tablet_cell_bundles/bundles/bundle-editor-dialog/index.js +0 -3
- package/build/esm/ui/utils/tablet_cell_bundles/bundles/bundle-editor-dialog/index.js.map +1 -1
- package/build/esm/ui/utils/utils.js +2 -1
- package/build/esm/ui/utils/utils.js.map +1 -1
- package/dist/public/build/assets-manifest.json +7 -7
- package/dist/public/build/css/{main.f7818774.css → main.4c657a42.css} +2 -2
- package/dist/public/build/css/main.4c657a42.css.map +1 -0
- package/dist/public/build/js/main.38e77012.js +3 -0
- package/dist/public/build/js/{main.052ff0c9.js.map → main.38e77012.js.map} +1 -1
- package/dist/public/build/manifest.json +4 -4
- package/package.json +8 -6
- package/scripts/sync-peer-dependencies.js +54 -0
- package/dist/public/build/css/main.f7818774.css.map +0 -1
- package/dist/public/build/js/main.052ff0c9.js +0 -3
- /package/dist/public/build/js/{main.052ff0c9.js.LICENSE.txt → main.38e77012.js.LICENSE.txt} +0 -0
@@ -1,55 +1,4 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
componentDidUpdate(prevProps: any): void;
|
6
|
-
componentWillUnmount(): void;
|
7
|
-
render(): React.JSX.Element;
|
8
|
-
context: unknown;
|
9
|
-
setState<K extends string | number | symbol>(state: any, callback?: (() => void) | undefined): void;
|
10
|
-
forceUpdate(callback?: (() => void) | undefined): void;
|
11
|
-
readonly props: Readonly<any>;
|
12
|
-
state: Readonly<any>;
|
13
|
-
refs: {
|
14
|
-
[key: string]: React.ReactInstance;
|
15
|
-
};
|
16
|
-
shouldComponentUpdate?(nextProps: Readonly<any>, nextState: Readonly<any>, nextContext: any): boolean;
|
17
|
-
componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
|
18
|
-
getSnapshotBeforeUpdate?(prevProps: Readonly<any>, prevState: Readonly<any>): any;
|
19
|
-
componentWillMount?(): void;
|
20
|
-
UNSAFE_componentWillMount?(): void;
|
21
|
-
componentWillReceiveProps?(nextProps: Readonly<any>, nextContext: any): void;
|
22
|
-
UNSAFE_componentWillReceiveProps?(nextProps: Readonly<any>, nextContext: any): void;
|
23
|
-
componentWillUpdate?(nextProps: Readonly<any>, nextState: Readonly<any>, nextContext: any): void;
|
24
|
-
UNSAFE_componentWillUpdate?(nextProps: Readonly<any>, nextState: Readonly<any>, nextContext: any): void;
|
25
|
-
};
|
26
|
-
new (props: any, context: any): {
|
27
|
-
componentDidMount(): void;
|
28
|
-
prevScope: null;
|
29
|
-
componentDidUpdate(prevProps: any): void;
|
30
|
-
componentWillUnmount(): void;
|
31
|
-
render(): React.JSX.Element;
|
32
|
-
context: unknown;
|
33
|
-
setState<K extends string | number | symbol>(state: any, callback?: (() => void) | undefined): void;
|
34
|
-
forceUpdate(callback?: (() => void) | undefined): void;
|
35
|
-
readonly props: Readonly<any>;
|
36
|
-
state: Readonly<any>;
|
37
|
-
refs: {
|
38
|
-
[key: string]: React.ReactInstance;
|
39
|
-
};
|
40
|
-
shouldComponentUpdate?(nextProps: Readonly<any>, nextState: Readonly<any>, nextContext: any): boolean;
|
41
|
-
componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
|
42
|
-
getSnapshotBeforeUpdate?(prevProps: Readonly<any>, prevState: Readonly<any>): any;
|
43
|
-
componentWillMount?(): void;
|
44
|
-
UNSAFE_componentWillMount?(): void;
|
45
|
-
componentWillReceiveProps?(nextProps: Readonly<any>, nextContext: any): void;
|
46
|
-
UNSAFE_componentWillReceiveProps?(nextProps: Readonly<any>, nextContext: any): void;
|
47
|
-
componentWillUpdate?(nextProps: Readonly<any>, nextState: Readonly<any>, nextContext: any): void;
|
48
|
-
UNSAFE_componentWillUpdate?(nextProps: Readonly<any>, nextState: Readonly<any>, nextContext: any): void;
|
49
|
-
};
|
50
|
-
propTypes: {
|
51
|
-
visible: PropTypes.Validator<boolean>;
|
52
|
-
};
|
53
|
-
displayName: string;
|
54
|
-
contextType?: React.Context<any> | undefined;
|
55
|
-
};
|
1
|
+
import React from 'react';
|
2
|
+
export default function withScope(scope: string): <P>(Component: React.ComponentType<P>) => React.FC<P & {
|
3
|
+
visible: true;
|
4
|
+
}>;
|
@@ -1,63 +1,16 @@
|
|
1
1
|
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
2
|
-
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
3
|
-
import _createClass from "@babel/runtime/helpers/createClass";
|
4
|
-
import _inherits from "@babel/runtime/helpers/inherits";
|
5
|
-
import _createSuper from "@babel/runtime/helpers/createSuper";
|
6
2
|
import React from 'react';
|
7
|
-
import key from 'hotkeys-js';
|
8
3
|
import { getDisplayName } from '../../../utils';
|
4
|
+
import { useHotkeysScope } from '../../../hooks/use-hotkeysjs-scope';
|
9
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
10
6
|
export default function withScope(scope) {
|
11
|
-
return function (Component) {
|
12
|
-
var
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
_classCallCheck(this, WithScope);
|
19
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
20
|
-
args[_key] = arguments[_key];
|
21
|
-
}
|
22
|
-
_this = _super.call.apply(_super, [this].concat(args));
|
23
|
-
_this.prevScope = null;
|
24
|
-
return _this;
|
25
|
-
}
|
26
|
-
_createClass(WithScope, [{
|
27
|
-
key: "componentDidMount",
|
28
|
-
value: function componentDidMount() {
|
29
|
-
this.prevScope = key.getScope();
|
30
|
-
if (this.props.visible) {
|
31
|
-
key.setScope(scope);
|
32
|
-
}
|
33
|
-
}
|
34
|
-
}, {
|
35
|
-
key: "componentDidUpdate",
|
36
|
-
value: function componentDidUpdate(prevProps) {
|
37
|
-
var prevVisible = prevProps.visible;
|
38
|
-
var visible = this.props.visible;
|
39
|
-
if (prevVisible !== visible) {
|
40
|
-
if (visible) {
|
41
|
-
this.prevScope = key.getScope();
|
42
|
-
key.setScope(scope);
|
43
|
-
} else {
|
44
|
-
key.setScope(this.prevScope);
|
45
|
-
}
|
46
|
-
}
|
47
|
-
}
|
48
|
-
}, {
|
49
|
-
key: "componentWillUnmount",
|
50
|
-
value: function componentWillUnmount() {
|
51
|
-
key.setScope(this.prevScope);
|
52
|
-
}
|
53
|
-
}, {
|
54
|
-
key: "render",
|
55
|
-
value: function render() {
|
56
|
-
return /*#__PURE__*/_jsx(Component, _objectSpread({}, this.props));
|
57
|
-
}
|
58
|
-
}]);
|
59
|
-
return WithScope;
|
60
|
-
}(React.Component), _class.displayName = "WithScope(".concat(getDisplayName(Component), ")"), _class;
|
7
|
+
return function wrap(Component) {
|
8
|
+
var ResComponent = function WithScope(props) {
|
9
|
+
useHotkeysScope(scope, props.visible);
|
10
|
+
return /*#__PURE__*/_jsx(Component, _objectSpread({}, props));
|
11
|
+
};
|
12
|
+
ResComponent.displayName = "WithScope(".concat(getDisplayName(Component), ")");
|
13
|
+
return ResComponent;
|
61
14
|
};
|
62
15
|
}
|
63
16
|
// #sourceMappingURL=withScope.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","
|
1
|
+
{"version":3,"names":["React","getDisplayName","useHotkeysScope","jsx","_jsx","withScope","scope","wrap","Component","ResComponent","WithScope","props","visible","_objectSpread","displayName","concat"],"sources":["withScope.tsx"],"sourcesContent":["import React from 'react';\n\nimport {getDisplayName} from '../../../utils';\nimport {useHotkeysScope} from '../../../hooks/use-hotkeysjs-scope';\n\nexport default function withScope(scope: string) {\n return function wrap<P>(Component: React.ComponentType<P>) {\n type Props = P & {visible: true};\n const ResComponent: React.FC<Props> = function WithScope(props) {\n useHotkeysScope(scope, props.visible);\n return <Component {...props} />;\n };\n\n ResComponent.displayName = `WithScope(${getDisplayName(Component)})`;\n return ResComponent;\n };\n}\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAAQC,cAAc,QAAO,gBAAgB;AAC7C,SAAQC,eAAe,QAAO,oCAAoC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEnE,eAAe,SAASC,SAASA,CAACC,KAAa,EAAE;EAC7C,OAAO,SAASC,IAAIA,CAAIC,SAAiC,EAAE;IAEvD,IAAMC,YAA6B,GAAG,SAASC,SAASA,CAACC,KAAK,EAAE;MAC5DT,eAAe,CAACI,KAAK,EAAEK,KAAK,CAACC,OAAO,CAAC;MACrC,oBAAOR,IAAA,CAACI,SAAS,EAAAK,aAAA,KAAKF,KAAK,CAAG,CAAC;IACnC,CAAC;IAEDF,YAAY,CAACK,WAAW,gBAAAC,MAAA,CAAgBd,cAAc,CAACO,SAAS,CAAC,MAAG;IACpE,OAAOC,YAAY;EACvB,CAAC;AACL"}
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare function useHotkeysScope(scope: string, visible: boolean): void;
|
@@ -0,0 +1,15 @@
|
|
1
|
+
import key from 'hotkeys-js';
|
2
|
+
import React from 'react';
|
3
|
+
export function useHotkeysScope(scope, visible) {
|
4
|
+
React.useEffect(function () {
|
5
|
+
if (!visible) {
|
6
|
+
return undefined;
|
7
|
+
}
|
8
|
+
var prevScope = key.getScope();
|
9
|
+
key.setScope(scope);
|
10
|
+
return function () {
|
11
|
+
key.setScope(prevScope);
|
12
|
+
};
|
13
|
+
}, [scope, visible]);
|
14
|
+
}
|
15
|
+
// #sourceMappingURL=use-hotkeysjs-scope.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["key","React","useHotkeysScope","scope","visible","useEffect","undefined","prevScope","getScope","setScope"],"sources":["use-hotkeysjs-scope.ts"],"sourcesContent":["import key from 'hotkeys-js';\nimport React from 'react';\n\nexport function useHotkeysScope(scope: string, visible: boolean) {\n React.useEffect(() => {\n if (!visible) {\n return undefined;\n }\n\n const prevScope = key.getScope();\n key.setScope(scope);\n\n return () => {\n key.setScope(prevScope);\n };\n }, [scope, visible]);\n}\n"],"mappings":"AAAA,OAAOA,GAAG,MAAM,YAAY;AAC5B,OAAOC,KAAK,MAAM,OAAO;AAEzB,OAAO,SAASC,eAAeA,CAACC,KAAa,EAAEC,OAAgB,EAAE;EAC7DH,KAAK,CAACI,SAAS,CAAC,YAAM;IAClB,IAAI,CAACD,OAAO,EAAE;MACV,OAAOE,SAAS;IACpB;IAEA,IAAMC,SAAS,GAAGP,GAAG,CAACQ,QAAQ,CAAC,CAAC;IAChCR,GAAG,CAACS,QAAQ,CAACN,KAAK,CAAC;IAEnB,OAAO,YAAM;MACTH,GAAG,CAACS,QAAQ,CAACF,SAAS,CAAC;IAC3B,CAAC;EACL,CAAC,EAAE,CAACJ,KAAK,EAAEC,OAAO,CAAC,CAAC;AACxB"}
|
@@ -1,56 +1,2 @@
|
|
1
|
-
declare const _default:
|
2
|
-
new (props: any): {
|
3
|
-
componentDidMount(): void;
|
4
|
-
prevScope: null;
|
5
|
-
componentDidUpdate(prevProps: any): void;
|
6
|
-
componentWillUnmount(): void;
|
7
|
-
render(): React.JSX.Element;
|
8
|
-
context: unknown;
|
9
|
-
setState<K extends string | number | symbol>(state: any, callback?: (() => void) | undefined): void;
|
10
|
-
forceUpdate(callback?: (() => void) | undefined): void;
|
11
|
-
readonly props: Readonly<any>;
|
12
|
-
state: Readonly<any>;
|
13
|
-
refs: {
|
14
|
-
[key: string]: React.ReactInstance;
|
15
|
-
};
|
16
|
-
shouldComponentUpdate?(nextProps: Readonly<any>, nextState: Readonly<any>, nextContext: any): boolean;
|
17
|
-
componentDidCatch?(error: globalThis.Error, errorInfo: React.ErrorInfo): void;
|
18
|
-
getSnapshotBeforeUpdate?(prevProps: Readonly<any>, prevState: Readonly<any>): any;
|
19
|
-
componentWillMount?(): void;
|
20
|
-
UNSAFE_componentWillMount?(): void;
|
21
|
-
componentWillReceiveProps?(nextProps: Readonly<any>, nextContext: any): void;
|
22
|
-
UNSAFE_componentWillReceiveProps?(nextProps: Readonly<any>, nextContext: any): void;
|
23
|
-
componentWillUpdate?(nextProps: Readonly<any>, nextState: Readonly<any>, nextContext: any): void;
|
24
|
-
UNSAFE_componentWillUpdate?(nextProps: Readonly<any>, nextState: Readonly<any>, nextContext: any): void;
|
25
|
-
};
|
26
|
-
new (props: any, context: any): {
|
27
|
-
componentDidMount(): void;
|
28
|
-
prevScope: null;
|
29
|
-
componentDidUpdate(prevProps: any): void;
|
30
|
-
componentWillUnmount(): void;
|
31
|
-
render(): React.JSX.Element;
|
32
|
-
context: unknown;
|
33
|
-
setState<K extends string | number | symbol>(state: any, callback?: (() => void) | undefined): void;
|
34
|
-
forceUpdate(callback?: (() => void) | undefined): void;
|
35
|
-
readonly props: Readonly<any>;
|
36
|
-
state: Readonly<any>;
|
37
|
-
refs: {
|
38
|
-
[key: string]: React.ReactInstance;
|
39
|
-
};
|
40
|
-
shouldComponentUpdate?(nextProps: Readonly<any>, nextState: Readonly<any>, nextContext: any): boolean;
|
41
|
-
componentDidCatch?(error: globalThis.Error, errorInfo: React.ErrorInfo): void;
|
42
|
-
getSnapshotBeforeUpdate?(prevProps: Readonly<any>, prevState: Readonly<any>): any;
|
43
|
-
componentWillMount?(): void;
|
44
|
-
UNSAFE_componentWillMount?(): void;
|
45
|
-
componentWillReceiveProps?(nextProps: Readonly<any>, nextContext: any): void;
|
46
|
-
UNSAFE_componentWillReceiveProps?(nextProps: Readonly<any>, nextContext: any): void;
|
47
|
-
componentWillUpdate?(nextProps: Readonly<any>, nextState: Readonly<any>, nextContext: any): void;
|
48
|
-
UNSAFE_componentWillUpdate?(nextProps: Readonly<any>, nextState: Readonly<any>, nextContext: any): void;
|
49
|
-
};
|
50
|
-
propTypes: {
|
51
|
-
visible: PropTypes.Validator<boolean>;
|
52
|
-
};
|
53
|
-
displayName: string;
|
54
|
-
contextType?: React.Context<any> | undefined;
|
55
|
-
};
|
1
|
+
declare const _default: any;
|
56
2
|
export default _default;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["Masters.scss"],"names":[],"mappings":"AAUI;EACI,iBAAA;AATR;AAYI;EAVA,aAAA;EACA,qCAAA;EACA,kBAAA;EAUI,sBAAA;AARR;AAUQ;EACI,eAAA;AARZ;AAWQ;EACI,iBAAA;AATZ;AAaI;EAvBA,aAAA;EACA,qCAAA;EACA,mBAAA;AAaJ;AAYI;EACI,eAAA;AAVR;AAaI;EACI,mBAAA;AAXR;AAcI;EACI,mBAAA;AAZR;AAeI;EACI,aAAA;EACA,eAAA;AAbR;AAgBI;EACI,mBAAA;AAdR","file":"Masters.css","sourcesContent":["@import '../../../styles/common';\n@import '../../../styles/mixins';\n\n@mixin three-column-grid($row-gap) {\n display: grid;\n grid-template-columns: repeat(3, 1fr);\n grid-gap: $row-gap 80px;\n}\n\n.system-master {\n &__container-host-radio {\n margin-left: 20px;\n }\n\n &__all-masters {\n @include three-column-grid(8px);\n grid-auto-flow: column;\n\n & .elements-heading {\n grid-row-end: 1;\n }\n\n & .system-master__group {\n grid-row-start: 1;\n }\n }\n\n &__secondary-masters {\n @include three-column-grid(20px);\n }\n\n &__maintenance-hover {\n display: inline;\n }\n\n &__primary-master {\n margin-bottom: 40px;\n }\n\n &__secondary-masters {\n margin-bottom: 20px;\n }\n\n &__flex {\n display: flex;\n flex-wrap: wrap;\n }\n\n &__providers {\n margin-right: 100px;\n }\n}\n"],"sourceRoot":""}
|
1
|
+
{"version":3,"sources":["Masters.scss"],"names":[],"mappings":"AAUI;EACI,iBAAA;AATR;AAYI;EAVA,aAAA;EACA,qCAAA;EACA,kBAAA;EAUI,sBAAA;AARR;AAUQ;EACI,eAAA;AARZ;AAWQ;EACI,iBAAA;AATZ;AAaI;EAvBA,aAAA;EACA,qCAAA;EACA,mBAAA;AAaJ;AAYI;EACI,eAAA;AAVR;AAaI;EACI,mBAAA;AAXR;AAcI;EACI,mBAAA;AAZR;AAeI;EACI,aAAA;EACA,eAAA;AAbR;AAgBI;EACI,mBAAA;AAdR;AAiBI;EACI,mBAAA;AAfR","file":"Masters.css","sourcesContent":["@import '../../../styles/common';\n@import '../../../styles/mixins';\n\n@mixin three-column-grid($row-gap) {\n display: grid;\n grid-template-columns: repeat(3, 1fr);\n grid-gap: $row-gap 80px;\n}\n\n.system-master {\n &__container-host-radio {\n margin-left: 20px;\n }\n\n &__all-masters {\n @include three-column-grid(8px);\n grid-auto-flow: column;\n\n & .elements-heading {\n grid-row-end: 1;\n }\n\n & .system-master__group {\n grid-row-start: 1;\n }\n }\n\n &__secondary-masters {\n @include three-column-grid(20px);\n }\n\n &__maintenance-hover {\n display: inline;\n }\n\n &__primary-master {\n margin-bottom: 40px;\n }\n\n &__secondary-masters {\n margin-bottom: 20px;\n }\n\n &__flex {\n display: flex;\n flex-wrap: wrap;\n }\n\n &__providers {\n margin-right: 100px;\n }\n\n &__alerts {\n margin-bottom: 20px;\n }\n}\n"],"sourceRoot":""}
|
@@ -1,4 +1,5 @@
|
|
1
1
|
declare const _default: import("react-redux").ConnectedComponent<typeof Masters, import("react-redux").Omit<PropTypes.InferProps<{
|
2
|
+
alerts: PropTypes.Requireable<(object | null | undefined)[]>;
|
2
3
|
counters: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
|
3
4
|
flags: PropTypes.Requireable<object>;
|
4
5
|
states: PropTypes.Requireable<object>;
|
@@ -8,10 +9,11 @@ declare const _default: import("react-redux").ConnectedComponent<typeof Masters,
|
|
8
9
|
secondary: PropTypes.Requireable<(PropTypes.InferProps<any> | null | undefined)[]>;
|
9
10
|
providers: PropTypes.Validator<NonNullable<PropTypes.InferProps<any>>>;
|
10
11
|
discovery: PropTypes.Validator<NonNullable<PropTypes.InferProps<any>>>;
|
11
|
-
}>, "counters" | "primary" | "secondary" | "providers" | "discovery" | "initialized">>;
|
12
|
+
}>, "alerts" | "counters" | "primary" | "secondary" | "providers" | "discovery" | "initialized">>;
|
12
13
|
export default _default;
|
13
14
|
declare class Masters extends React.Component<any, any, any> {
|
14
15
|
static propTypes: {
|
16
|
+
alerts: PropTypes.Requireable<(object | null | undefined)[]>;
|
15
17
|
counters: PropTypes.Validator<NonNullable<PropTypes.InferProps<{
|
16
18
|
flags: PropTypes.Requireable<object>;
|
17
19
|
states: PropTypes.Requireable<object>;
|
@@ -30,6 +32,7 @@ declare class Masters extends React.Component<any, any, any> {
|
|
30
32
|
allowVoting: boolean;
|
31
33
|
}) => React.JSX.Element[];
|
32
34
|
renderMasterTypeSwitcher(): React.JSX.Element;
|
35
|
+
renderAlerts(): React.JSX.Element;
|
33
36
|
renderContent(): React.JSX.Element;
|
34
37
|
renderSection(name: any, heading: any, data: any, { allowVoting }?: {
|
35
38
|
allowVoting: boolean;
|
@@ -18,6 +18,7 @@ import { getSettingsSystemMastersCollapsed } from '../../../store/selectors/sett
|
|
18
18
|
import { setSettingsSystemMastersCollapsed } from '../../../store/actions/settings/settings';
|
19
19
|
import { useUpdater } from '../../../hooks/use-updater';
|
20
20
|
import "./Masters.css";
|
21
|
+
import { SystemAlert } from './SystemAlert';
|
21
22
|
import { jsx as _jsx } from "react/jsx-runtime";
|
22
23
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
23
24
|
var b = block('system-master');
|
@@ -91,6 +92,13 @@ var Masters = /*#__PURE__*/function (_Component) {
|
|
91
92
|
className: b('container-host-radio')
|
92
93
|
});
|
93
94
|
}
|
95
|
+
}, {
|
96
|
+
key: "renderAlerts",
|
97
|
+
value: function renderAlerts() {
|
98
|
+
return /*#__PURE__*/_jsx(SystemAlert, {
|
99
|
+
className: b('alerts')
|
100
|
+
});
|
101
|
+
}
|
94
102
|
}, {
|
95
103
|
key: "renderContent",
|
96
104
|
value: function renderContent() {
|
@@ -107,7 +115,7 @@ var Masters = /*#__PURE__*/function (_Component) {
|
|
107
115
|
});
|
108
116
|
return fitIntoSection ? /*#__PURE__*/_jsxs("div", {
|
109
117
|
className: b('all-masters'),
|
110
|
-
children: [/*#__PURE__*/_jsxs("div", {
|
118
|
+
children: [this.renderAlerts(), /*#__PURE__*/_jsxs("div", {
|
111
119
|
className: headingCN,
|
112
120
|
children: ["Primary Masters", this.renderMasterTypeSwitcher()]
|
113
121
|
}), /*#__PURE__*/_jsx(MasterGroup, _objectSpread(_objectSpread({
|
@@ -143,7 +151,7 @@ var Masters = /*#__PURE__*/function (_Component) {
|
|
143
151
|
}), /*#__PURE__*/_jsx(MasterGroup, _objectSpread({}, queueAgents))]
|
144
152
|
})]
|
145
153
|
}) : /*#__PURE__*/_jsxs("div", {
|
146
|
-
children: [/*#__PURE__*/_jsxs("div", {
|
154
|
+
children: [this.renderAlerts(), /*#__PURE__*/_jsxs("div", {
|
147
155
|
className: headingCN,
|
148
156
|
children: ["Primary Masters", this.renderMasterTypeSwitcher()]
|
149
157
|
}), /*#__PURE__*/_jsx(MasterGroup, _objectSpread(_objectSpread({
|
@@ -202,8 +210,17 @@ var Masters = /*#__PURE__*/function (_Component) {
|
|
202
210
|
'weak-quorum': 'warning'
|
203
211
|
};
|
204
212
|
var counterGroups = [['recovery', 'unavailable'], ['primary', 'secondary'], ['no-quorum', 'weak-quorum', 'quorum']];
|
213
|
+
var labels = [];
|
214
|
+
var alertsCount = this.props.alerts.length;
|
215
|
+
if (alertsCount > 0) {
|
216
|
+
labels.push({
|
217
|
+
text: "".concat(alertsCount, " alert").concat(alertsCount > 1 ? 's' : ''),
|
218
|
+
theme: 'warning'
|
219
|
+
});
|
220
|
+
}
|
205
221
|
return /*#__PURE__*/_jsx(SystemStateOverview, {
|
206
222
|
tab: "masters",
|
223
|
+
labels: labels,
|
207
224
|
counters: counters,
|
208
225
|
stateThemeMappings: stateThemeMappings,
|
209
226
|
stateOverview: stateOverview,
|
@@ -249,7 +266,8 @@ function mapStateToProps(state) {
|
|
249
266
|
discovery = _state$system$masters.discovery,
|
250
267
|
queueAgents = _state$system$masters.queueAgents,
|
251
268
|
counters = _state$system$masters.counters,
|
252
|
-
initialized = _state$system$masters.initialized
|
269
|
+
initialized = _state$system$masters.initialized,
|
270
|
+
alerts = _state$system$masters.alerts;
|
253
271
|
return {
|
254
272
|
initialized: initialized,
|
255
273
|
secondary: secondary,
|
@@ -258,6 +276,7 @@ function mapStateToProps(state) {
|
|
258
276
|
discovery: discovery,
|
259
277
|
queueAgents: queueAgents,
|
260
278
|
counters: counters,
|
279
|
+
alerts: alerts,
|
261
280
|
collapsibleSize: getUISizes().collapsibleSize,
|
262
281
|
collapsed: getSettingsSystemMastersCollapsed(state)
|
263
282
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","Component","connect","useDispatch","block","CollapsibleSectionStateLess","VisibleHostTypeRadioButton","sortStateProgress","SystemStateOverview","MasterGroup","loadMasters","getUISizes","getSettingsSystemMastersCollapsed","setSettingsSystemMastersCollapsed","useUpdater","jsx","_jsx","jsxs","_jsxs","b","headingCN","size","computeStateProgress","counters","total","_map","states","count","state","value","title","theme","quorum","Masters","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","onToggle","_this$props","props","prevCollapsed","collapsed","renderMastersGroups","masters","gridRowStart","_ref","undefined","allowVoting","master","_objectSpread","cellTag","_createClass","key","mastersFitIntoSection","_providers$instances","_discovery$instances","_queueAgents$instance","_this$props2","secondary","providers","discovery","queueAgents","groupsCount","instances","renderMasterTypeSwitcher","className","renderContent","_providers$instances2","_discovery$instances2","_queueAgents$instance2","_providers$instances3","_discovery$instances3","_this$props3","primary","fitIntoSection","secondaryGroups","children","Boolean","Fragment","renderSection","name","heading","data","_ref2","renderOverview","stateOverview","view","stack","stateThemeMappings","unavailable","recovery","counterGroups","tab","counterGroup","renderImpl","_this$props4","initialized","collapsibleSize","content","overview","render","MastersUpdater","mapStateToProps","_state$system$masters","system","mapDispatchToProps","dispatch","updateFn","useMemo","allowUpdate","then","_ref3","isRetryFutile"],"sources":["Masters.js"],"sourcesContent":["import React, {Component} from 'react';\nimport {connect, useDispatch} from 'react-redux';\nimport PropTypes from 'prop-types';\nimport block from 'bem-cn-lite';\nimport _ from 'lodash';\n\nimport {CollapsibleSectionStateLess} from '../../../components/CollapsibleSection/CollapsibleSection';\nimport VisibleHostTypeRadioButton from '../../../pages/system/VisibleHostTypeRadioButton';\nimport {sortStateProgress} from '../../../utils';\nimport SystemStateOverview from '../SystemStateOverview/SystemStateOverview';\nimport MasterGroup from './MasterGroup';\n\nimport {loadMasters} from '../../../store/actions/system/masters';\nimport {getUISizes} from '../../../store/selectors/global';\nimport {getSettingsSystemMastersCollapsed} from '../../../store/selectors/settings-ts';\nimport {setSettingsSystemMastersCollapsed} from '../../../store/actions/settings/settings';\nimport {useUpdater} from '../../../hooks/use-updater';\n\nimport './Masters.scss';\n\nconst b = block('system-master');\nconst headingCN = block('elements-heading')({size: 's'});\n\nfunction computeStateProgress(counters) {\n const total = counters.total;\n\n return sortStateProgress(\n _.map(counters.states, (count, state) => {\n return {\n value: total && (count / total) * 100,\n title: 'State: ' + state,\n theme:\n {\n quorum: 'success',\n 'weak-quorum': 'warning',\n 'no-quorum': 'danger',\n }[state] || 'default',\n };\n }),\n );\n}\n\nclass Masters extends Component {\n static propTypes = {\n // from connect\n counters: PropTypes.shape({\n flags: PropTypes.object,\n states: PropTypes.object,\n }).isRequired,\n initialized: PropTypes.bool.isRequired,\n primary: PropTypes.shape(MasterGroup.propTypes).isRequired,\n secondary: PropTypes.arrayOf(PropTypes.shape(MasterGroup.propTypes)),\n providers: PropTypes.shape(MasterGroup.propTypes).isRequired,\n discovery: PropTypes.shape(MasterGroup.propTypes).isRequired,\n };\n\n onToggle = () => {\n const {setSettingsSystemMastersCollapsed, collapsed: prevCollapsed} = this.props;\n setSettingsSystemMastersCollapsed(!prevCollapsed);\n };\n\n mastersFitIntoSection() {\n const {secondary, providers, discovery, queueAgents} = this.props;\n\n let groupsCount = 1; // for primary masters;\n groupsCount += secondary?.length || 0;\n groupsCount += providers?.instances?.length ? 1 : 0;\n groupsCount += discovery?.instances?.length ? 1 : 0;\n groupsCount += queueAgents?.instances?.length ? 1 : 0;\n\n return groupsCount <= 3;\n }\n\n renderMastersGroups = (masters, gridRowStart, {allowVoting} = {allowVoting: false}) =>\n _.map(masters, (master) => (\n <MasterGroup\n key={master.cellTag}\n {...master}\n gridRowStart={gridRowStart}\n allowVoting={allowVoting}\n />\n ));\n\n renderMasterTypeSwitcher() {\n return <VisibleHostTypeRadioButton className={b('container-host-radio')} />;\n }\n\n renderContent() {\n const {primary, secondary, providers, discovery, queueAgents} = this.props;\n\n const fitIntoSection = this.mastersFitIntoSection();\n\n const secondaryGroups = this.renderMastersGroups(secondary, fitIntoSection, {\n allowVoting: true,\n });\n\n return fitIntoSection ? (\n <div className={b('all-masters')}>\n <div className={headingCN}>\n Primary Masters\n {this.renderMasterTypeSwitcher()}\n </div>\n <MasterGroup className={b('primary-master')} {...primary} allowVoting />\n {Boolean(secondary?.length) && (\n <React.Fragment>\n <div className={headingCN}>Secondary Masters</div>\n {secondaryGroups}\n </React.Fragment>\n )}\n {Boolean(providers?.instances?.length) && (\n <React.Fragment>\n <div className={headingCN}>\n Timestamp providers\n {this.renderMasterTypeSwitcher()}\n </div>\n <MasterGroup\n {...providers}\n className={b('timestamp-providers')}\n gridRowStart\n allowVoting\n />\n </React.Fragment>\n )}\n {Boolean(discovery?.instances?.length) && (\n <React.Fragment>\n <div className={headingCN}>\n Discovery servers\n {this.renderMasterTypeSwitcher()}\n </div>\n <MasterGroup\n {...discovery}\n className={b('discovery-servers')}\n gridRowStart\n />\n </React.Fragment>\n )}\n {Boolean(queueAgents?.instances?.length) && (\n <React.Fragment>\n <div className={headingCN}>\n Queue agents\n {this.renderMasterTypeSwitcher()}\n </div>\n <MasterGroup {...queueAgents} />\n </React.Fragment>\n )}\n </div>\n ) : (\n <div>\n <div className={headingCN}>\n Primary Masters\n {this.renderMasterTypeSwitcher()}\n </div>\n <MasterGroup className={b('primary-master')} {...primary} allowVoting />\n {Boolean(secondary?.length) && (\n <React.Fragment>\n <div className={headingCN}>Secondary Masters</div>\n <div className={b('secondary-masters')}>{secondaryGroups}</div>\n </React.Fragment>\n )}\n\n <div className={b('flex')}>\n {Boolean(providers?.instances?.length) &&\n this.renderSection('providers', 'Timestamp providers', providers, {\n allowVoting: true,\n })}\n {Boolean(discovery?.instances?.length) &&\n this.renderSection('discovery', 'Discovery servers', discovery)}\n {Boolean(queueAgents?.length) &&\n this.renderSection('queueAgents', 'Queue agents', queueAgents)}\n </div>\n </div>\n );\n }\n\n renderSection(name, heading, data, {allowVoting} = {allowVoting: false}) {\n return (\n <div className={b(name)}>\n <div className={headingCN}>{heading}</div>\n <div className={b(`${name}-hosts`)}>\n <MasterGroup {...data} allowVoting={allowVoting} />\n </div>\n </div>\n );\n }\n\n renderOverview() {\n const {counters} = this.props;\n\n const stateOverview = counters && {\n value: 100,\n view: 'thin',\n stack: computeStateProgress(counters),\n };\n const stateThemeMappings = {\n unavailable: 'danger',\n recovery: 'warning',\n 'no-quorum': 'danger',\n 'weak-quorum': 'warning',\n };\n const counterGroups = [\n ['recovery', 'unavailable'],\n ['primary', 'secondary'],\n ['no-quorum', 'weak-quorum', 'quorum'],\n ];\n\n return (\n <SystemStateOverview\n tab=\"masters\"\n counters={counters}\n stateThemeMappings={stateThemeMappings}\n stateOverview={stateOverview}\n counterGroup={counterGroups}\n />\n );\n }\n\n renderImpl() {\n const {initialized, collapsibleSize, collapsed} = this.props;\n\n if (!initialized) {\n return null;\n }\n\n const content = this.renderContent();\n const overview = this.renderOverview();\n\n return (\n <CollapsibleSectionStateLess\n name={'Masters'}\n overview={overview}\n collapsed={collapsed}\n onToggle={this.onToggle}\n size={collapsibleSize}\n >\n {content}\n </CollapsibleSectionStateLess>\n );\n }\n\n render() {\n return (\n <React.Fragment>\n <MastersUpdater />\n {this.renderImpl()}\n </React.Fragment>\n );\n }\n}\n\nfunction mapStateToProps(state) {\n const {secondary, primary, providers, discovery, queueAgents, counters, initialized} =\n state.system.masters;\n return {\n initialized,\n secondary,\n primary,\n providers,\n discovery,\n queueAgents,\n counters,\n collapsibleSize: getUISizes().collapsibleSize,\n collapsed: getSettingsSystemMastersCollapsed(state),\n };\n}\n\nconst mapDispatchToProps = {\n setSettingsSystemMastersCollapsed,\n};\n\nfunction MastersUpdater() {\n const dispatch = useDispatch();\n\n const updateFn = React.useMemo(() => {\n let allowUpdate = true;\n return () => {\n if (allowUpdate) {\n dispatch(loadMasters()).then(({isRetryFutile} = {}) => {\n if (isRetryFutile) {\n allowUpdate = false;\n }\n });\n }\n };\n }, [dispatch]);\n\n useUpdater(updateFn);\n\n return null;\n}\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Masters);\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["React","Component","connect","useDispatch","block","CollapsibleSectionStateLess","VisibleHostTypeRadioButton","sortStateProgress","SystemStateOverview","MasterGroup","loadMasters","getUISizes","getSettingsSystemMastersCollapsed","setSettingsSystemMastersCollapsed","useUpdater","SystemAlert","jsx","_jsx","jsxs","_jsxs","b","headingCN","size","computeStateProgress","counters","total","_map","states","count","state","value","title","theme","quorum","Masters","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","onToggle","_this$props","props","prevCollapsed","collapsed","renderMastersGroups","masters","gridRowStart","_ref","undefined","allowVoting","master","_objectSpread","cellTag","_createClass","key","mastersFitIntoSection","_providers$instances","_discovery$instances","_queueAgents$instance","_this$props2","secondary","providers","discovery","queueAgents","groupsCount","instances","renderMasterTypeSwitcher","className","renderAlerts","renderContent","_providers$instances2","_discovery$instances2","_queueAgents$instance2","_providers$instances3","_discovery$instances3","_this$props3","primary","fitIntoSection","secondaryGroups","children","Boolean","Fragment","renderSection","name","heading","data","_ref2","renderOverview","stateOverview","view","stack","stateThemeMappings","unavailable","recovery","counterGroups","labels","alertsCount","alerts","push","text","tab","counterGroup","renderImpl","_this$props4","initialized","collapsibleSize","content","overview","render","MastersUpdater","mapStateToProps","_state$system$masters","system","mapDispatchToProps","dispatch","updateFn","useMemo","allowUpdate","then","_ref3","isRetryFutile"],"sources":["Masters.js"],"sourcesContent":["import React, {Component} from 'react';\nimport {connect, useDispatch} from 'react-redux';\nimport PropTypes from 'prop-types';\nimport block from 'bem-cn-lite';\nimport _ from 'lodash';\n\nimport {CollapsibleSectionStateLess} from '../../../components/CollapsibleSection/CollapsibleSection';\nimport VisibleHostTypeRadioButton from '../../../pages/system/VisibleHostTypeRadioButton';\nimport {sortStateProgress} from '../../../utils';\nimport SystemStateOverview from '../SystemStateOverview/SystemStateOverview';\nimport MasterGroup from './MasterGroup';\n\nimport {loadMasters} from '../../../store/actions/system/masters';\nimport {getUISizes} from '../../../store/selectors/global';\nimport {getSettingsSystemMastersCollapsed} from '../../../store/selectors/settings-ts';\nimport {setSettingsSystemMastersCollapsed} from '../../../store/actions/settings/settings';\nimport {useUpdater} from '../../../hooks/use-updater';\n\nimport './Masters.scss';\nimport {SystemAlert} from './SystemAlert';\n\nconst b = block('system-master');\nconst headingCN = block('elements-heading')({size: 's'});\n\nfunction computeStateProgress(counters) {\n const total = counters.total;\n\n return sortStateProgress(\n _.map(counters.states, (count, state) => {\n return {\n value: total && (count / total) * 100,\n title: 'State: ' + state,\n theme:\n {\n quorum: 'success',\n 'weak-quorum': 'warning',\n 'no-quorum': 'danger',\n }[state] || 'default',\n };\n }),\n );\n}\n\nclass Masters extends Component {\n static propTypes = {\n // from connect\n alerts: PropTypes.arrayOf(PropTypes.object),\n counters: PropTypes.shape({\n flags: PropTypes.object,\n states: PropTypes.object,\n }).isRequired,\n initialized: PropTypes.bool.isRequired,\n primary: PropTypes.shape(MasterGroup.propTypes).isRequired,\n secondary: PropTypes.arrayOf(PropTypes.shape(MasterGroup.propTypes)),\n providers: PropTypes.shape(MasterGroup.propTypes).isRequired,\n discovery: PropTypes.shape(MasterGroup.propTypes).isRequired,\n };\n\n onToggle = () => {\n const {setSettingsSystemMastersCollapsed, collapsed: prevCollapsed} = this.props;\n setSettingsSystemMastersCollapsed(!prevCollapsed);\n };\n\n mastersFitIntoSection() {\n const {secondary, providers, discovery, queueAgents} = this.props;\n\n let groupsCount = 1; // for primary masters;\n groupsCount += secondary?.length || 0;\n groupsCount += providers?.instances?.length ? 1 : 0;\n groupsCount += discovery?.instances?.length ? 1 : 0;\n groupsCount += queueAgents?.instances?.length ? 1 : 0;\n\n return groupsCount <= 3;\n }\n\n renderMastersGroups = (masters, gridRowStart, {allowVoting} = {allowVoting: false}) =>\n _.map(masters, (master) => (\n <MasterGroup\n key={master.cellTag}\n {...master}\n gridRowStart={gridRowStart}\n allowVoting={allowVoting}\n />\n ));\n\n renderMasterTypeSwitcher() {\n return <VisibleHostTypeRadioButton className={b('container-host-radio')} />;\n }\n\n renderAlerts() {\n return <SystemAlert className={b('alerts')} />;\n }\n\n renderContent() {\n const {primary, secondary, providers, discovery, queueAgents} = this.props;\n\n const fitIntoSection = this.mastersFitIntoSection();\n\n const secondaryGroups = this.renderMastersGroups(secondary, fitIntoSection, {\n allowVoting: true,\n });\n\n return fitIntoSection ? (\n <div className={b('all-masters')}>\n {this.renderAlerts()}\n <div className={headingCN}>\n Primary Masters\n {this.renderMasterTypeSwitcher()}\n </div>\n <MasterGroup className={b('primary-master')} {...primary} allowVoting />\n {Boolean(secondary?.length) && (\n <React.Fragment>\n <div className={headingCN}>Secondary Masters</div>\n {secondaryGroups}\n </React.Fragment>\n )}\n {Boolean(providers?.instances?.length) && (\n <React.Fragment>\n <div className={headingCN}>\n Timestamp providers\n {this.renderMasterTypeSwitcher()}\n </div>\n <MasterGroup\n {...providers}\n className={b('timestamp-providers')}\n gridRowStart\n allowVoting\n />\n </React.Fragment>\n )}\n {Boolean(discovery?.instances?.length) && (\n <React.Fragment>\n <div className={headingCN}>\n Discovery servers\n {this.renderMasterTypeSwitcher()}\n </div>\n <MasterGroup\n {...discovery}\n className={b('discovery-servers')}\n gridRowStart\n />\n </React.Fragment>\n )}\n {Boolean(queueAgents?.instances?.length) && (\n <React.Fragment>\n <div className={headingCN}>\n Queue agents\n {this.renderMasterTypeSwitcher()}\n </div>\n <MasterGroup {...queueAgents} />\n </React.Fragment>\n )}\n </div>\n ) : (\n <div>\n {this.renderAlerts()}\n <div className={headingCN}>\n Primary Masters\n {this.renderMasterTypeSwitcher()}\n </div>\n <MasterGroup className={b('primary-master')} {...primary} allowVoting />\n {Boolean(secondary?.length) && (\n <React.Fragment>\n <div className={headingCN}>Secondary Masters</div>\n <div className={b('secondary-masters')}>{secondaryGroups}</div>\n </React.Fragment>\n )}\n <div className={b('flex')}>\n {Boolean(providers?.instances?.length) &&\n this.renderSection('providers', 'Timestamp providers', providers, {\n allowVoting: true,\n })}\n {Boolean(discovery?.instances?.length) &&\n this.renderSection('discovery', 'Discovery servers', discovery)}\n {Boolean(queueAgents?.length) &&\n this.renderSection('queueAgents', 'Queue agents', queueAgents)}\n </div>\n </div>\n );\n }\n\n renderSection(name, heading, data, {allowVoting} = {allowVoting: false}) {\n return (\n <div className={b(name)}>\n <div className={headingCN}>{heading}</div>\n <div className={b(`${name}-hosts`)}>\n <MasterGroup {...data} allowVoting={allowVoting} />\n </div>\n </div>\n );\n }\n\n renderOverview() {\n const {counters} = this.props;\n\n const stateOverview = counters && {\n value: 100,\n view: 'thin',\n stack: computeStateProgress(counters),\n };\n const stateThemeMappings = {\n unavailable: 'danger',\n recovery: 'warning',\n 'no-quorum': 'danger',\n 'weak-quorum': 'warning',\n };\n const counterGroups = [\n ['recovery', 'unavailable'],\n ['primary', 'secondary'],\n ['no-quorum', 'weak-quorum', 'quorum'],\n ];\n\n const labels = [];\n const alertsCount = this.props.alerts.length;\n if (alertsCount > 0) {\n labels.push({\n text: `${alertsCount} alert${alertsCount > 1 ? 's' : ''}`,\n theme: 'warning',\n });\n }\n\n return (\n <SystemStateOverview\n tab=\"masters\"\n labels={labels}\n counters={counters}\n stateThemeMappings={stateThemeMappings}\n stateOverview={stateOverview}\n counterGroup={counterGroups}\n />\n );\n }\n\n renderImpl() {\n const {initialized, collapsibleSize, collapsed} = this.props;\n\n if (!initialized) {\n return null;\n }\n\n const content = this.renderContent();\n const overview = this.renderOverview();\n\n return (\n <CollapsibleSectionStateLess\n name={'Masters'}\n overview={overview}\n collapsed={collapsed}\n onToggle={this.onToggle}\n size={collapsibleSize}\n >\n {content}\n </CollapsibleSectionStateLess>\n );\n }\n\n render() {\n return (\n <React.Fragment>\n <MastersUpdater />\n {this.renderImpl()}\n </React.Fragment>\n );\n }\n}\n\nfunction mapStateToProps(state) {\n const {secondary, primary, providers, discovery, queueAgents, counters, initialized, alerts} =\n state.system.masters;\n return {\n initialized,\n secondary,\n primary,\n providers,\n discovery,\n queueAgents,\n counters,\n alerts,\n collapsibleSize: getUISizes().collapsibleSize,\n collapsed: getSettingsSystemMastersCollapsed(state),\n };\n}\n\nconst mapDispatchToProps = {\n setSettingsSystemMastersCollapsed,\n};\n\nfunction MastersUpdater() {\n const dispatch = useDispatch();\n\n const updateFn = React.useMemo(() => {\n let allowUpdate = true;\n return () => {\n if (allowUpdate) {\n dispatch(loadMasters()).then(({isRetryFutile} = {}) => {\n if (isRetryFutile) {\n allowUpdate = false;\n }\n });\n }\n };\n }, [dispatch]);\n\n useUpdater(updateFn);\n\n return null;\n}\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Masters);\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,IAAGC,SAAS,QAAO,OAAO;AACtC,SAAQC,OAAO,EAAEC,WAAW,QAAO,aAAa;AAEhD,OAAOC,KAAK,MAAM,aAAa;AAG/B,SAAQC,2BAA2B,QAAO,2DAA2D;AACrG,OAAOC,0BAA0B,MAAM,kDAAkD;AACzF,SAAQC,iBAAiB,QAAO,gBAAgB;AAChD,OAAOC,mBAAmB,MAAM,4CAA4C;AAC5E,OAAOC,WAAW,MAAM,eAAe;AAEvC,SAAQC,WAAW,QAAO,uCAAuC;AACjE,SAAQC,UAAU,QAAO,iCAAiC;AAC1D,SAAQC,iCAAiC,QAAO,sCAAsC;AACtF,SAAQC,iCAAiC,QAAO,0CAA0C;AAC1F,SAAQC,UAAU,QAAO,4BAA4B;AAErD,OAAO,eAAgB;AACvB,SAAQC,WAAW,QAAO,eAAe;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAE1C,IAAMC,CAAC,GAAGhB,KAAK,CAAC,eAAe,CAAC;AAChC,IAAMiB,SAAS,GAAGjB,KAAK,CAAC,kBAAkB,CAAC,CAAC;EAACkB,IAAI,EAAE;AAAG,CAAC,CAAC;AAExD,SAASC,oBAAoBA,CAACC,QAAQ,EAAE;EACpC,IAAMC,KAAK,GAAGD,QAAQ,CAACC,KAAK;EAE5B,OAAOlB,iBAAiB,CACpBmB,IAAA,CAAMF,QAAQ,CAACG,MAAM,EAAE,UAACC,KAAK,EAAEC,KAAK,EAAK;IACrC,OAAO;MACHC,KAAK,EAAEL,KAAK,IAAKG,KAAK,GAAGH,KAAK,GAAI,GAAG;MACrCM,KAAK,EAAE,SAAS,GAAGF,KAAK;MACxBG,KAAK,EACD;QACIC,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,SAAS;QACxB,WAAW,EAAE;MACjB,CAAC,CAACJ,KAAK,CAAC,IAAI;IACpB,CAAC;EACL,CAAC,CACL,CAAC;AACL;AAAC,IAEKK,OAAO,0BAAAC,UAAA;EAAAC,SAAA,CAAAF,OAAA,EAAAC,UAAA;EAAA,IAAAE,MAAA,GAAAC,YAAA,CAAAJ,OAAA;EAAA,SAAAA,QAAA;IAAA,IAAAK,KAAA;IAAAC,eAAA,OAAAN,OAAA;IAAA,SAAAO,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAAP,KAAA,GAAAF,MAAA,CAAAU,IAAA,CAAAC,KAAA,CAAAX,MAAA,SAAAY,MAAA,CAAAL,IAAA;IAAAL,KAAA,CAeTW,QAAQ,GAAG,YAAM;MACb,IAAAC,WAAA,GAAsEZ,KAAA,CAAKa,KAAK;QAAzEvC,iCAAiC,GAAAsC,WAAA,CAAjCtC,iCAAiC;QAAawC,aAAa,GAAAF,WAAA,CAAxBG,SAAS;MACnDzC,iCAAiC,CAAC,CAACwC,aAAa,CAAC;IACrD,CAAC;IAAAd,KAAA,CAcDgB,mBAAmB,GAAG,UAACC,OAAO,EAAEC,YAAY;MAAA,IAAAC,IAAA,GAAAhB,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAiB,SAAA,GAAAjB,SAAA,MAAkB;UAACkB,WAAW,EAAE;QAAK,CAAC;QAAnCA,WAAW,GAAAF,IAAA,CAAXE,WAAW;MAAA,OACtDlC,IAAA,CAAM8B,OAAO,EAAE,UAACK,MAAM;QAAA,oBAClB5C,IAAA,CAACR,WAAW,EAAAqD,aAAA,CAAAA,aAAA,KAEJD,MAAM;UACVJ,YAAY,EAAEA,YAAa;UAC3BG,WAAW,EAAEA;QAAY,IAHpBC,MAAM,CAACE,OAIf,CAAC;MAAA,CACL,CAAC;IAAA;IAAA,OAAAxB,KAAA;EAAA;EAAAyB,YAAA,CAAA9B,OAAA;IAAA+B,GAAA;IAAAnC,KAAA,EApBN,SAAAoC,sBAAA,EAAwB;MAAA,IAAAC,oBAAA,EAAAC,oBAAA,EAAAC,qBAAA;MACpB,IAAAC,YAAA,GAAuD,IAAI,CAAClB,KAAK;QAA1DmB,SAAS,GAAAD,YAAA,CAATC,SAAS;QAAEC,SAAS,GAAAF,YAAA,CAATE,SAAS;QAAEC,SAAS,GAAAH,YAAA,CAATG,SAAS;QAAEC,WAAW,GAAAJ,YAAA,CAAXI,WAAW;MAEnD,IAAIC,WAAW,GAAG,CAAC,CAAC,CAAC;MACrBA,WAAW,IAAI,CAAAJ,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAE5B,MAAM,KAAI,CAAC;MACrCgC,WAAW,IAAIH,SAAS,aAATA,SAAS,gBAAAL,oBAAA,GAATK,SAAS,CAAEI,SAAS,cAAAT,oBAAA,eAApBA,oBAAA,CAAsBxB,MAAM,GAAG,CAAC,GAAG,CAAC;MACnDgC,WAAW,IAAIF,SAAS,aAATA,SAAS,gBAAAL,oBAAA,GAATK,SAAS,CAAEG,SAAS,cAAAR,oBAAA,eAApBA,oBAAA,CAAsBzB,MAAM,GAAG,CAAC,GAAG,CAAC;MACnDgC,WAAW,IAAID,WAAW,aAAXA,WAAW,gBAAAL,qBAAA,GAAXK,WAAW,CAAEE,SAAS,cAAAP,qBAAA,eAAtBA,qBAAA,CAAwB1B,MAAM,GAAG,CAAC,GAAG,CAAC;MAErD,OAAOgC,WAAW,IAAI,CAAC;IAC3B;EAAC;IAAAV,GAAA;IAAAnC,KAAA,EAYD,SAAA+C,yBAAA,EAA2B;MACvB,oBAAO5D,IAAA,CAACX,0BAA0B;QAACwE,SAAS,EAAE1D,CAAC,CAAC,sBAAsB;MAAE,CAAE,CAAC;IAC/E;EAAC;IAAA6C,GAAA;IAAAnC,KAAA,EAED,SAAAiD,aAAA,EAAe;MACX,oBAAO9D,IAAA,CAACF,WAAW;QAAC+D,SAAS,EAAE1D,CAAC,CAAC,QAAQ;MAAE,CAAE,CAAC;IAClD;EAAC;IAAA6C,GAAA;IAAAnC,KAAA,EAED,SAAAkD,cAAA,EAAgB;MAAA,IAAAC,qBAAA,EAAAC,qBAAA,EAAAC,sBAAA,EAAAC,qBAAA,EAAAC,qBAAA;MACZ,IAAAC,YAAA,GAAgE,IAAI,CAAClC,KAAK;QAAnEmC,OAAO,GAAAD,YAAA,CAAPC,OAAO;QAAEhB,SAAS,GAAAe,YAAA,CAATf,SAAS;QAAEC,SAAS,GAAAc,YAAA,CAATd,SAAS;QAAEC,SAAS,GAAAa,YAAA,CAATb,SAAS;QAAEC,WAAW,GAAAY,YAAA,CAAXZ,WAAW;MAE5D,IAAMc,cAAc,GAAG,IAAI,CAACtB,qBAAqB,CAAC,CAAC;MAEnD,IAAMuB,eAAe,GAAG,IAAI,CAAClC,mBAAmB,CAACgB,SAAS,EAAEiB,cAAc,EAAE;QACxE5B,WAAW,EAAE;MACjB,CAAC,CAAC;MAEF,OAAO4B,cAAc,gBACjBrE,KAAA;QAAK2D,SAAS,EAAE1D,CAAC,CAAC,aAAa,CAAE;QAAAsE,QAAA,GAC5B,IAAI,CAACX,YAAY,CAAC,CAAC,eACpB5D,KAAA;UAAK2D,SAAS,EAAEzD,SAAU;UAAAqE,QAAA,GAAC,iBAEvB,EAAC,IAAI,CAACb,wBAAwB,CAAC,CAAC;QAAA,CAC/B,CAAC,eACN5D,IAAA,CAACR,WAAW,EAAAqD,aAAA,CAAAA,aAAA;UAACgB,SAAS,EAAE1D,CAAC,CAAC,gBAAgB;QAAE,GAAKmE,OAAO;UAAE3B,WAAW;QAAA,EAAE,CAAC,EACvE+B,OAAO,CAACpB,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAE5B,MAAM,CAAC,iBACvBxB,KAAA,CAACnB,KAAK,CAAC4F,QAAQ;UAAAF,QAAA,gBACXzE,IAAA;YAAK6D,SAAS,EAAEzD,SAAU;YAAAqE,QAAA,EAAC;UAAiB,CAAK,CAAC,EACjDD,eAAe;QAAA,CACJ,CACnB,EACAE,OAAO,CAACnB,SAAS,aAATA,SAAS,gBAAAS,qBAAA,GAATT,SAAS,CAAEI,SAAS,cAAAK,qBAAA,uBAApBA,qBAAA,CAAsBtC,MAAM,CAAC,iBAClCxB,KAAA,CAACnB,KAAK,CAAC4F,QAAQ;UAAAF,QAAA,gBACXvE,KAAA;YAAK2D,SAAS,EAAEzD,SAAU;YAAAqE,QAAA,GAAC,qBAEvB,EAAC,IAAI,CAACb,wBAAwB,CAAC,CAAC;UAAA,CAC/B,CAAC,eACN5D,IAAA,CAACR,WAAW,EAAAqD,aAAA,CAAAA,aAAA,KACJU,SAAS;YACbM,SAAS,EAAE1D,CAAC,CAAC,qBAAqB,CAAE;YACpCqC,YAAY;YACZG,WAAW;UAAA,EACd,CAAC;QAAA,CACU,CACnB,EACA+B,OAAO,CAAClB,SAAS,aAATA,SAAS,gBAAAS,qBAAA,GAATT,SAAS,CAAEG,SAAS,cAAAM,qBAAA,uBAApBA,qBAAA,CAAsBvC,MAAM,CAAC,iBAClCxB,KAAA,CAACnB,KAAK,CAAC4F,QAAQ;UAAAF,QAAA,gBACXvE,KAAA;YAAK2D,SAAS,EAAEzD,SAAU;YAAAqE,QAAA,GAAC,mBAEvB,EAAC,IAAI,CAACb,wBAAwB,CAAC,CAAC;UAAA,CAC/B,CAAC,eACN5D,IAAA,CAACR,WAAW,EAAAqD,aAAA,CAAAA,aAAA,KACJW,SAAS;YACbK,SAAS,EAAE1D,CAAC,CAAC,mBAAmB,CAAE;YAClCqC,YAAY;UAAA,EACf,CAAC;QAAA,CACU,CACnB,EACAkC,OAAO,CAACjB,WAAW,aAAXA,WAAW,gBAAAS,sBAAA,GAAXT,WAAW,CAAEE,SAAS,cAAAO,sBAAA,uBAAtBA,sBAAA,CAAwBxC,MAAM,CAAC,iBACpCxB,KAAA,CAACnB,KAAK,CAAC4F,QAAQ;UAAAF,QAAA,gBACXvE,KAAA;YAAK2D,SAAS,EAAEzD,SAAU;YAAAqE,QAAA,GAAC,cAEvB,EAAC,IAAI,CAACb,wBAAwB,CAAC,CAAC;UAAA,CAC/B,CAAC,eACN5D,IAAA,CAACR,WAAW,EAAAqD,aAAA,KAAKY,WAAW,CAAG,CAAC;QAAA,CACpB,CACnB;MAAA,CACA,CAAC,gBAENvD,KAAA;QAAAuE,QAAA,GACK,IAAI,CAACX,YAAY,CAAC,CAAC,eACpB5D,KAAA;UAAK2D,SAAS,EAAEzD,SAAU;UAAAqE,QAAA,GAAC,iBAEvB,EAAC,IAAI,CAACb,wBAAwB,CAAC,CAAC;QAAA,CAC/B,CAAC,eACN5D,IAAA,CAACR,WAAW,EAAAqD,aAAA,CAAAA,aAAA;UAACgB,SAAS,EAAE1D,CAAC,CAAC,gBAAgB;QAAE,GAAKmE,OAAO;UAAE3B,WAAW;QAAA,EAAE,CAAC,EACvE+B,OAAO,CAACpB,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAE5B,MAAM,CAAC,iBACvBxB,KAAA,CAACnB,KAAK,CAAC4F,QAAQ;UAAAF,QAAA,gBACXzE,IAAA;YAAK6D,SAAS,EAAEzD,SAAU;YAAAqE,QAAA,EAAC;UAAiB,CAAK,CAAC,eAClDzE,IAAA;YAAK6D,SAAS,EAAE1D,CAAC,CAAC,mBAAmB,CAAE;YAAAsE,QAAA,EAAED;UAAe,CAAM,CAAC;QAAA,CACnD,CACnB,eACDtE,KAAA;UAAK2D,SAAS,EAAE1D,CAAC,CAAC,MAAM,CAAE;UAAAsE,QAAA,GACrBC,OAAO,CAACnB,SAAS,aAATA,SAAS,gBAAAY,qBAAA,GAATZ,SAAS,CAAEI,SAAS,cAAAQ,qBAAA,uBAApBA,qBAAA,CAAsBzC,MAAM,CAAC,IAClC,IAAI,CAACkD,aAAa,CAAC,WAAW,EAAE,qBAAqB,EAAErB,SAAS,EAAE;YAC9DZ,WAAW,EAAE;UACjB,CAAC,CAAC,EACL+B,OAAO,CAAClB,SAAS,aAATA,SAAS,gBAAAY,qBAAA,GAATZ,SAAS,CAAEG,SAAS,cAAAS,qBAAA,uBAApBA,qBAAA,CAAsB1C,MAAM,CAAC,IAClC,IAAI,CAACkD,aAAa,CAAC,WAAW,EAAE,mBAAmB,EAAEpB,SAAS,CAAC,EAClEkB,OAAO,CAACjB,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAE/B,MAAM,CAAC,IACzB,IAAI,CAACkD,aAAa,CAAC,aAAa,EAAE,cAAc,EAAEnB,WAAW,CAAC;QAAA,CACjE,CAAC;MAAA,CACL,CACR;IACL;EAAC;IAAAT,GAAA;IAAAnC,KAAA,EAED,SAAA+D,cAAcC,IAAI,EAAEC,OAAO,EAAEC,IAAI,EAAwC;MAAA,IAAAC,KAAA,GAAAvD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAiB,SAAA,GAAAjB,SAAA,MAAtB;UAACkB,WAAW,EAAE;QAAK,CAAC;QAAnCA,WAAW,GAAAqC,KAAA,CAAXrC,WAAW;MAC3C,oBACIzC,KAAA;QAAK2D,SAAS,EAAE1D,CAAC,CAAC0E,IAAI,CAAE;QAAAJ,QAAA,gBACpBzE,IAAA;UAAK6D,SAAS,EAAEzD,SAAU;UAAAqE,QAAA,EAAEK;QAAO,CAAM,CAAC,eAC1C9E,IAAA;UAAK6D,SAAS,EAAE1D,CAAC,IAAA6B,MAAA,CAAI6C,IAAI,WAAQ,CAAE;UAAAJ,QAAA,eAC/BzE,IAAA,CAACR,WAAW,EAAAqD,aAAA,CAAAA,aAAA,KAAKkC,IAAI;YAAEpC,WAAW,EAAEA;UAAY,EAAE;QAAC,CAClD,CAAC;MAAA,CACL,CAAC;IAEd;EAAC;IAAAK,GAAA;IAAAnC,KAAA,EAED,SAAAoE,eAAA,EAAiB;MACb,IAAO1E,QAAQ,GAAI,IAAI,CAAC4B,KAAK,CAAtB5B,QAAQ;MAEf,IAAM2E,aAAa,GAAG3E,QAAQ,IAAI;QAC9BM,KAAK,EAAE,GAAG;QACVsE,IAAI,EAAE,MAAM;QACZC,KAAK,EAAE9E,oBAAoB,CAACC,QAAQ;MACxC,CAAC;MACD,IAAM8E,kBAAkB,GAAG;QACvBC,WAAW,EAAE,QAAQ;QACrBC,QAAQ,EAAE,SAAS;QACnB,WAAW,EAAE,QAAQ;QACrB,aAAa,EAAE;MACnB,CAAC;MACD,IAAMC,aAAa,GAAG,CAClB,CAAC,UAAU,EAAE,aAAa,CAAC,EAC3B,CAAC,SAAS,EAAE,WAAW,CAAC,EACxB,CAAC,WAAW,EAAE,aAAa,EAAE,QAAQ,CAAC,CACzC;MAED,IAAMC,MAAM,GAAG,EAAE;MACjB,IAAMC,WAAW,GAAG,IAAI,CAACvD,KAAK,CAACwD,MAAM,CAACjE,MAAM;MAC5C,IAAIgE,WAAW,GAAG,CAAC,EAAE;QACjBD,MAAM,CAACG,IAAI,CAAC;UACRC,IAAI,KAAA7D,MAAA,CAAK0D,WAAW,YAAA1D,MAAA,CAAS0D,WAAW,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAE;UACzD3E,KAAK,EAAE;QACX,CAAC,CAAC;MACN;MAEA,oBACIf,IAAA,CAACT,mBAAmB;QAChBuG,GAAG,EAAC,SAAS;QACbL,MAAM,EAAEA,MAAO;QACflF,QAAQ,EAAEA,QAAS;QACnB8E,kBAAkB,EAAEA,kBAAmB;QACvCH,aAAa,EAAEA,aAAc;QAC7Ba,YAAY,EAAEP;MAAc,CAC/B,CAAC;IAEV;EAAC;IAAAxC,GAAA;IAAAnC,KAAA,EAED,SAAAmF,WAAA,EAAa;MACT,IAAAC,YAAA,GAAkD,IAAI,CAAC9D,KAAK;QAArD+D,WAAW,GAAAD,YAAA,CAAXC,WAAW;QAAEC,eAAe,GAAAF,YAAA,CAAfE,eAAe;QAAE9D,SAAS,GAAA4D,YAAA,CAAT5D,SAAS;MAE9C,IAAI,CAAC6D,WAAW,EAAE;QACd,OAAO,IAAI;MACf;MAEA,IAAME,OAAO,GAAG,IAAI,CAACrC,aAAa,CAAC,CAAC;MACpC,IAAMsC,QAAQ,GAAG,IAAI,CAACpB,cAAc,CAAC,CAAC;MAEtC,oBACIjF,IAAA,CAACZ,2BAA2B;QACxByF,IAAI,EAAE,SAAU;QAChBwB,QAAQ,EAAEA,QAAS;QACnBhE,SAAS,EAAEA,SAAU;QACrBJ,QAAQ,EAAE,IAAI,CAACA,QAAS;QACxB5B,IAAI,EAAE8F,eAAgB;QAAA1B,QAAA,EAErB2B;MAAO,CACiB,CAAC;IAEtC;EAAC;IAAApD,GAAA;IAAAnC,KAAA,EAED,SAAAyF,OAAA,EAAS;MACL,oBACIpG,KAAA,CAACnB,KAAK,CAAC4F,QAAQ;QAAAF,QAAA,gBACXzE,IAAA,CAACuG,cAAc,IAAE,CAAC,EACjB,IAAI,CAACP,UAAU,CAAC,CAAC;MAAA,CACN,CAAC;IAEzB;EAAC;EAAA,OAAA/E,OAAA;AAAA,EA5NiBjC,SAAS;AA+N/B,SAASwH,eAAeA,CAAC5F,KAAK,EAAE;EAC5B,IAAA6F,qBAAA,GACI7F,KAAK,CAAC8F,MAAM,CAACnE,OAAO;IADjBe,SAAS,GAAAmD,qBAAA,CAATnD,SAAS;IAAEgB,OAAO,GAAAmC,qBAAA,CAAPnC,OAAO;IAAEf,SAAS,GAAAkD,qBAAA,CAATlD,SAAS;IAAEC,SAAS,GAAAiD,qBAAA,CAATjD,SAAS;IAAEC,WAAW,GAAAgD,qBAAA,CAAXhD,WAAW;IAAElD,QAAQ,GAAAkG,qBAAA,CAARlG,QAAQ;IAAE2F,WAAW,GAAAO,qBAAA,CAAXP,WAAW;IAAEP,MAAM,GAAAc,qBAAA,CAANd,MAAM;EAE3F,OAAO;IACHO,WAAW,EAAXA,WAAW;IACX5C,SAAS,EAATA,SAAS;IACTgB,OAAO,EAAPA,OAAO;IACPf,SAAS,EAATA,SAAS;IACTC,SAAS,EAATA,SAAS;IACTC,WAAW,EAAXA,WAAW;IACXlD,QAAQ,EAARA,QAAQ;IACRoF,MAAM,EAANA,MAAM;IACNQ,eAAe,EAAEzG,UAAU,CAAC,CAAC,CAACyG,eAAe;IAC7C9D,SAAS,EAAE1C,iCAAiC,CAACiB,KAAK;EACtD,CAAC;AACL;AAEA,IAAM+F,kBAAkB,GAAG;EACvB/G,iCAAiC,EAAjCA;AACJ,CAAC;AAED,SAAS2G,cAAcA,CAAA,EAAG;EACtB,IAAMK,QAAQ,GAAG1H,WAAW,CAAC,CAAC;EAE9B,IAAM2H,QAAQ,GAAG9H,KAAK,CAAC+H,OAAO,CAAC,YAAM;IACjC,IAAIC,WAAW,GAAG,IAAI;IACtB,OAAO,YAAM;MACT,IAAIA,WAAW,EAAE;QACbH,QAAQ,CAACnH,WAAW,CAAC,CAAC,CAAC,CAACuH,IAAI,CAAC,YAA0B;UAAA,IAAAC,KAAA,GAAAxF,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAiB,SAAA,GAAAjB,SAAA,MAAP,CAAC,CAAC;YAAnByF,aAAa,GAAAD,KAAA,CAAbC,aAAa;UACxC,IAAIA,aAAa,EAAE;YACfH,WAAW,GAAG,KAAK;UACvB;QACJ,CAAC,CAAC;MACN;IACJ,CAAC;EACL,CAAC,EAAE,CAACH,QAAQ,CAAC,CAAC;EAEd/G,UAAU,CAACgH,QAAQ,CAAC;EAEpB,OAAO,IAAI;AACf;AAEA,eAAe5H,OAAO,CAACuH,eAAe,EAAEG,kBAAkB,CAAC,CAAC1F,OAAO,CAAC"}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { useSelector } from 'react-redux';
|
3
|
+
import { selectMasterAlerts } from '../../../store/selectors/system/masters';
|
4
|
+
import Alert from '../../../components/Alert/Alert';
|
5
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
6
|
+
export var SystemAlert = function SystemAlert(_ref) {
|
7
|
+
var className = _ref.className;
|
8
|
+
var alerts = useSelector(selectMasterAlerts);
|
9
|
+
if (!alerts.length) return;
|
10
|
+
return /*#__PURE__*/_jsx("div", {
|
11
|
+
className: className,
|
12
|
+
children: alerts.map(function (alert, id) {
|
13
|
+
return /*#__PURE__*/_jsx(Alert, {
|
14
|
+
error: alert
|
15
|
+
}, alert.message + id);
|
16
|
+
})
|
17
|
+
});
|
18
|
+
};
|
19
|
+
// #sourceMappingURL=SystemAlert.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["React","useSelector","selectMasterAlerts","Alert","jsx","_jsx","SystemAlert","_ref","className","alerts","length","children","map","alert","id","error","message"],"sources":["SystemAlert.tsx"],"sourcesContent":["import React, {FC} from 'react';\nimport {useSelector} from 'react-redux';\nimport {selectMasterAlerts} from '../../../store/selectors/system/masters';\nimport Alert from '../../../components/Alert/Alert';\n\nexport const SystemAlert: FC<{className?: string}> = ({className}) => {\n const alerts = useSelector(selectMasterAlerts);\n\n if (!alerts.length) return;\n\n return (\n <div className={className}>\n {alerts.map((alert, id) => (\n <Alert key={alert.message + id} error={alert} />\n ))}\n </div>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAY,OAAO;AAC/B,SAAQC,WAAW,QAAO,aAAa;AACvC,SAAQC,kBAAkB,QAAO,yCAAyC;AAC1E,OAAOC,KAAK,MAAM,iCAAiC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEpD,OAAO,IAAMC,WAAqC,GAAG,SAAxCA,WAAqCA,CAAAC,IAAA,EAAoB;EAAA,IAAfC,SAAS,GAAAD,IAAA,CAATC,SAAS;EAC5D,IAAMC,MAAM,GAAGR,WAAW,CAACC,kBAAkB,CAAC;EAE9C,IAAI,CAACO,MAAM,CAACC,MAAM,EAAE;EAEpB,oBACIL,IAAA;IAAKG,SAAS,EAAEA,SAAU;IAAAG,QAAA,EACrBF,MAAM,CAACG,GAAG,CAAC,UAACC,KAAK,EAAEC,EAAE;MAAA,oBAClBT,IAAA,CAACF,KAAK;QAA0BY,KAAK,EAAEF;MAAM,GAAjCA,KAAK,CAACG,OAAO,GAAGF,EAAmB,CAAC;IAAA,CACnD;EAAC,CACD,CAAC;AAEd,CAAC"}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { Flex } from '@gravity-ui/uikit';
|
3
|
+
import Label from '../../../components/Label/Label';
|
4
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
5
|
+
export var SystemStateLabels = function SystemStateLabels(_ref) {
|
6
|
+
var labels = _ref.labels;
|
7
|
+
if (!labels.length) return undefined;
|
8
|
+
return /*#__PURE__*/_jsx(Flex, {
|
9
|
+
gap: 1,
|
10
|
+
children: labels.map(function (_ref2, index) {
|
11
|
+
var text = _ref2.text,
|
12
|
+
theme = _ref2.theme;
|
13
|
+
return /*#__PURE__*/_jsx(Label, {
|
14
|
+
theme: theme,
|
15
|
+
text: text
|
16
|
+
}, "".concat(text, "_").concat(index));
|
17
|
+
})
|
18
|
+
});
|
19
|
+
};
|
20
|
+
// #sourceMappingURL=SystemStateLabels.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["React","Flex","Label","jsx","_jsx","SystemStateLabels","_ref","labels","length","undefined","gap","children","map","_ref2","index","text","theme","concat"],"sources":["SystemStateLabels.tsx"],"sourcesContent":["import React, {FC} from 'react';\nimport {Flex} from '@gravity-ui/uikit';\nimport Label, {LabelTheme} from '../../../components/Label/Label';\n\nexport type Props = {\n labels: {text: string; theme: LabelTheme}[];\n};\n\nexport const SystemStateLabels: FC<Props> = ({labels}) => {\n if (!labels.length) return undefined;\n\n return (\n <Flex gap={1}>\n {labels.map(({text, theme}, index) => (\n <Label key={`${text}_${index}`} theme={theme} text={text} />\n ))}\n </Flex>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAY,OAAO;AAC/B,SAAQC,IAAI,QAAO,mBAAmB;AACtC,OAAOC,KAAK,MAAoB,iCAAiC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAMlE,OAAO,IAAMC,iBAA4B,GAAG,SAA/BA,iBAA4BA,CAAAC,IAAA,EAAiB;EAAA,IAAZC,MAAM,GAAAD,IAAA,CAANC,MAAM;EAChD,IAAI,CAACA,MAAM,CAACC,MAAM,EAAE,OAAOC,SAAS;EAEpC,oBACIL,IAAA,CAACH,IAAI;IAACS,GAAG,EAAE,CAAE;IAAAC,QAAA,EACRJ,MAAM,CAACK,GAAG,CAAC,UAAAC,KAAA,EAAgBC,KAAK;MAAA,IAAnBC,IAAI,GAAAF,KAAA,CAAJE,IAAI;QAAEC,KAAK,GAAAH,KAAA,CAALG,KAAK;MAAA,oBACrBZ,IAAA,CAACF,KAAK;QAA0Bc,KAAK,EAAEA,KAAM;QAACD,IAAI,EAAEA;MAAK,MAAAE,MAAA,CAA1CF,IAAI,OAAAE,MAAA,CAAIH,KAAK,CAA+B,CAAC;IAAA,CAC/D;EAAC,CACA,CAAC;AAEf,CAAC"}
|
@@ -2,7 +2,8 @@ import React from 'react';
|
|
2
2
|
import { SystemCountersProps } from '../SystemCounters/SystemCounters';
|
3
3
|
import { ProgressProps } from '@gravity-ui/uikit';
|
4
4
|
import './SystemStateOverview.scss';
|
5
|
-
|
5
|
+
import { Props as SystemStateLabelsProps } from './SystemStateLabels';
|
6
|
+
export type SystemStateOverviewProps<Flags extends string> = Partial<SystemStateLabelsProps> & SystemCountersProps<Flags> & {
|
6
7
|
stateOverview?: ProgressProps;
|
7
8
|
};
|
8
9
|
export default class SystemStateOverview<Flags extends string> extends React.Component<SystemStateOverviewProps<Flags>> {
|
@@ -4,13 +4,14 @@ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
4
4
|
import _createClass from "@babel/runtime/helpers/createClass";
|
5
5
|
import _inherits from "@babel/runtime/helpers/inherits";
|
6
6
|
import _createSuper from "@babel/runtime/helpers/createSuper";
|
7
|
-
var _excluded = ["stateOverview"];
|
7
|
+
var _excluded = ["stateOverview", "labels"];
|
8
8
|
import React from 'react';
|
9
9
|
import block from 'bem-cn-lite';
|
10
10
|
import SystemCounters from '../SystemCounters/SystemCounters';
|
11
11
|
import { Progress } from '@gravity-ui/uikit';
|
12
|
-
import { computeEffectiveStateProgress } from '../../../utils
|
12
|
+
import { computeEffectiveStateProgress } from '../../../utils';
|
13
13
|
import "./SystemStateOverview.css";
|
14
|
+
import { SystemStateLabels } from './SystemStateLabels';
|
14
15
|
import { jsx as _jsx } from "react/jsx-runtime";
|
15
16
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
16
17
|
var b = block('system');
|
@@ -26,6 +27,7 @@ var SystemStateOverview = /*#__PURE__*/function (_React$Component) {
|
|
26
27
|
value: function render() {
|
27
28
|
var _this$props = this.props,
|
28
29
|
_x = _this$props.stateOverview,
|
30
|
+
labels = _this$props.labels,
|
29
31
|
rest = _objectWithoutProperties(_this$props, _excluded);
|
30
32
|
if (!this.props.counters) {
|
31
33
|
return null;
|
@@ -38,7 +40,9 @@ var SystemStateOverview = /*#__PURE__*/function (_React$Component) {
|
|
38
40
|
} : _this$props$stateOver;
|
39
41
|
return /*#__PURE__*/_jsxs("div", {
|
40
42
|
className: b('heading-overview'),
|
41
|
-
children: [
|
43
|
+
children: [labels && /*#__PURE__*/_jsx(SystemStateLabels, {
|
44
|
+
labels: labels
|
45
|
+
}), /*#__PURE__*/_jsx(SystemCounters, _objectSpread({}, rest)), /*#__PURE__*/_jsx("div", {
|
42
46
|
className: b('heading-overview-states'),
|
43
47
|
children: /*#__PURE__*/_jsx(Progress, _objectSpread({}, stateOverview))
|
44
48
|
})]
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","block","SystemCounters","Progress","computeEffectiveStateProgress","jsx","_jsx","jsxs","_jsxs","b","SystemStateOverview","_React$Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","render","_this$props","props","_x","stateOverview","rest","_objectWithoutProperties","_excluded","counters","_this$props$stateOver","view","stack","className","children","_objectSpread","Component","default"],"sources":["SystemStateOverview.tsx"],"sourcesContent":["import React from 'react';\nimport block from 'bem-cn-lite';\n\nimport SystemCounters, {SystemCountersProps} from '../SystemCounters/SystemCounters';\nimport {Progress, ProgressProps} from '@gravity-ui/uikit';\n\nimport {computeEffectiveStateProgress} from '../../../utils
|
1
|
+
{"version":3,"names":["React","block","SystemCounters","Progress","computeEffectiveStateProgress","SystemStateLabels","jsx","_jsx","jsxs","_jsxs","b","SystemStateOverview","_React$Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","render","_this$props","props","_x","stateOverview","labels","rest","_objectWithoutProperties","_excluded","counters","_this$props$stateOver","view","stack","className","children","_objectSpread","Component","default"],"sources":["SystemStateOverview.tsx"],"sourcesContent":["import React from 'react';\nimport block from 'bem-cn-lite';\n\nimport SystemCounters, {SystemCountersProps} from '../SystemCounters/SystemCounters';\nimport {Progress, ProgressProps} from '@gravity-ui/uikit';\n\nimport {computeEffectiveStateProgress} from '../../../utils';\n\nimport './SystemStateOverview.scss';\nimport {SystemStateLabels, Props as SystemStateLabelsProps} from './SystemStateLabels';\n\nconst b = block('system');\n\nexport type SystemStateOverviewProps<Flags extends string> = Partial<SystemStateLabelsProps> &\n SystemCountersProps<Flags> & {\n stateOverview?: ProgressProps;\n };\n\nexport default class SystemStateOverview<Flags extends string> extends React.Component<\n SystemStateOverviewProps<Flags>\n> {\n render() {\n const {stateOverview: _x, labels, ...rest} = this.props;\n if (!this.props.counters) {\n return null;\n }\n\n const {\n stateOverview = {\n value: 100,\n view: 'thin',\n stack: computeEffectiveStateProgress(this.props.counters),\n },\n } = this.props;\n\n return (\n <div className={b('heading-overview')}>\n {labels && <SystemStateLabels labels={labels} />}\n <SystemCounters {...rest} />\n <div className={b('heading-overview-states')}>\n <Progress {...stateOverview} />\n </div>\n </div>\n );\n }\n}\n"],"mappings":";;;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,KAAK,MAAM,aAAa;AAE/B,OAAOC,cAAc,MAA6B,kCAAkC;AACpF,SAAQC,QAAQ,QAAsB,mBAAmB;AAEzD,SAAQC,6BAA6B,QAAO,gBAAgB;AAE5D,OAAO,2BAA4B;AACnC,SAAQC,iBAAiB,QAAwC,qBAAqB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEvF,IAAMC,CAAC,GAAGT,KAAK,CAAC,QAAQ,CAAC;AAAC,IAOLU,mBAAmB,0BAAAC,gBAAA;EAAAC,SAAA,CAAAF,mBAAA,EAAAC,gBAAA;EAAA,IAAAE,MAAA,GAAAC,YAAA,CAAAJ,mBAAA;EAAA,SAAAA,oBAAA;IAAAK,eAAA,OAAAL,mBAAA;IAAA,OAAAG,MAAA,CAAAG,KAAA,OAAAC,SAAA;EAAA;EAAAC,YAAA,CAAAR,mBAAA;IAAAS,GAAA;IAAAC,KAAA,EAGpC,SAAAC,OAAA,EAAS;MACL,IAAAC,WAAA,GAA6C,IAAI,CAACC,KAAK;QAAjCC,EAAE,GAAAF,WAAA,CAAjBG,aAAa;QAAMC,MAAM,GAAAJ,WAAA,CAANI,MAAM;QAAKC,IAAI,GAAAC,wBAAA,CAAAN,WAAA,EAAAO,SAAA;MACzC,IAAI,CAAC,IAAI,CAACN,KAAK,CAACO,QAAQ,EAAE;QACtB,OAAO,IAAI;MACf;MAEA,IAAAC,qBAAA,GAMI,IAAI,CAACR,KAAK,CALVE,aAAa;QAAbA,aAAa,GAAAM,qBAAA,cAAG;UACZX,KAAK,EAAE,GAAG;UACVY,IAAI,EAAE,MAAM;UACZC,KAAK,EAAE9B,6BAA6B,CAAC,IAAI,CAACoB,KAAK,CAACO,QAAQ;QAC5D,CAAC,GAAAC,qBAAA;MAGL,oBACIvB,KAAA;QAAK0B,SAAS,EAAEzB,CAAC,CAAC,kBAAkB,CAAE;QAAA0B,QAAA,GACjCT,MAAM,iBAAIpB,IAAA,CAACF,iBAAiB;UAACsB,MAAM,EAAEA;QAAO,CAAE,CAAC,eAChDpB,IAAA,CAACL,cAAc,EAAAmC,aAAA,KAAKT,IAAI,CAAG,CAAC,eAC5BrB,IAAA;UAAK4B,SAAS,EAAEzB,CAAC,CAAC,yBAAyB,CAAE;UAAA0B,QAAA,eACzC7B,IAAA,CAACJ,QAAQ,EAAAkC,aAAA,KAAKX,aAAa,CAAG;QAAC,CAC9B,CAAC;MAAA,CACL,CAAC;IAEd;EAAC;EAAA,OAAAf,mBAAA;AAAA,EA1BkEX,KAAK,CAACsC,SAAS;AAAA,SAAjE3B,mBAAmB,IAAA4B,OAAA"}
|