ydb-embedded-ui 8.21.0 → 8.22.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/dist/components/TenantNameWrapper/TenantNameWrapper.js +6 -6
- package/dist/components/TenantNameWrapper/TenantNameWrapper.js.map +1 -1
- package/dist/containers/AppWithClusters/ExtendedCluster/ExtendedCluster.js +8 -10
- package/dist/containers/AppWithClusters/ExtendedCluster/ExtendedCluster.js.map +1 -1
- package/dist/store/reducers/tenants/tenants.js +2 -3
- package/dist/store/reducers/tenants/tenants.js.map +1 -1
- package/dist/store/reducers/tenants/types.d.ts +0 -1
- package/dist/store/reducers/tenants/utils.d.ts +1 -1
- package/dist/store/reducers/tenants/utils.js +1 -11
- package/dist/store/reducers/tenants/utils.js.map +1 -1
- package/dist/types/additionalProps.d.ts +1 -1
- package/dist/types/api/tenant.d.ts +1 -3
- package/dist/types/api/tenant.js.map +1 -1
- package/dist/utils/__test__/prepareBackend.test.js +6 -30
- package/dist/utils/__test__/prepareBackend.test.js.map +1 -1
- package/dist/utils/additionalProps.d.ts +1 -1
- package/dist/utils/additionalProps.js +3 -3
- package/dist/utils/additionalProps.js.map +1 -1
- package/dist/utils/hooks/useAdditionalNodesProps.js +1 -4
- package/dist/utils/hooks/useAdditionalNodesProps.js.map +1 -1
- package/dist/utils/prepareBackend.d.ts +1 -3
- package/dist/utils/prepareBackend.js +6 -26
- package/dist/utils/prepareBackend.js.map +1 -1
- package/package.json +2 -2
@@ -6,17 +6,17 @@ import { EntityStatus } from '../EntityStatus/EntityStatus';
|
|
6
6
|
import { LinkWithIcon } from '../LinkWithIcon/LinkWithIcon';
|
7
7
|
import i18n from './i18n';
|
8
8
|
const getTenantBackend = (tenant, additionalTenantsProps) => {
|
9
|
-
var _a
|
9
|
+
var _a;
|
10
10
|
if (typeof (additionalTenantsProps === null || additionalTenantsProps === void 0 ? void 0 : additionalTenantsProps.prepareTenantBackend) !== 'function') {
|
11
11
|
return undefined;
|
12
12
|
}
|
13
|
-
let
|
14
|
-
const nodeIds = (
|
15
|
-
if (
|
13
|
+
let nodeId;
|
14
|
+
const nodeIds = (_a = tenant.NodeIds) !== null && _a !== void 0 ? _a : tenant.sharedNodeIds;
|
15
|
+
if (nodeIds && nodeIds.length > 0) {
|
16
16
|
const index = Math.floor(Math.random() * nodeIds.length);
|
17
|
-
|
17
|
+
nodeId = nodeIds[index].toString();
|
18
18
|
}
|
19
|
-
return additionalTenantsProps.prepareTenantBackend(
|
19
|
+
return additionalTenantsProps.prepareTenantBackend(nodeId);
|
20
20
|
};
|
21
21
|
export function TenantNameWrapper({ tenant, additionalTenantsProps }) {
|
22
22
|
var _a, _b;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"TenantNameWrapper.js","sourceRoot":"","sources":["../../../src/components/TenantNameWrapper/TenantNameWrapper.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,cAAc,EAAE,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAEvD,OAAO,EAAC,aAAa,EAAC,MAAM,qCAAqC,CAAC;AAGlE,OAAO,EAAC,6BAA6B,EAAC,MAAM,iDAAiD,CAAC;AAC9F,OAAO,EAAC,YAAY,EAAC,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAC,YAAY,EAAC,MAAM,8BAA8B,CAAC;AAE1D,OAAO,IAAI,MAAM,QAAQ,CAAC;AAO1B,MAAM,gBAAgB,GAAG,CACrB,MAAsB,EACtB,sBAA+C,EACjD,EAAE;;IACA,IAAI,OAAO,CAAA,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,oBAAoB,CAAA,KAAK,UAAU,EAAE,CAAC;QACrE,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAI,
|
1
|
+
{"version":3,"file":"TenantNameWrapper.js","sourceRoot":"","sources":["../../../src/components/TenantNameWrapper/TenantNameWrapper.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,cAAc,EAAE,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAEvD,OAAO,EAAC,aAAa,EAAC,MAAM,qCAAqC,CAAC;AAGlE,OAAO,EAAC,6BAA6B,EAAC,MAAM,iDAAiD,CAAC;AAC9F,OAAO,EAAC,YAAY,EAAC,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAC,YAAY,EAAC,MAAM,8BAA8B,CAAC;AAE1D,OAAO,IAAI,MAAM,QAAQ,CAAC;AAO1B,MAAM,gBAAgB,GAAG,CACrB,MAAsB,EACtB,sBAA+C,EACjD,EAAE;;IACA,IAAI,OAAO,CAAA,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,oBAAoB,CAAA,KAAK,UAAU,EAAE,CAAC;QACrE,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAI,MAA0B,CAAC;IAC/B,MAAM,OAAO,GAAG,MAAA,MAAM,CAAC,OAAO,mCAAI,MAAM,CAAC,aAAa,CAAC;IACvD,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC;IACvC,CAAC;IACD,OAAO,sBAAsB,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF,MAAM,UAAU,iBAAiB,CAAC,EAAC,MAAM,EAAE,sBAAsB,EAAyB;;IACtF,MAAM,0BAA0B,GAAG,6BAA6B,EAAE,CAAC;IAEnE,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IACjE,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAExC,MAAM,cAAc,GAAG,MAAA,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,iBAAiB,uEAAG,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7F,MAAM,QAAQ,GAAG,MAAA,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,WAAW,uEAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAEpE,MAAM,kBAAkB,GACpB,CAAC,cAAc,IAAI,QAAQ,CAAC,IAAI,0BAA0B,CAAC,CAAC,CAAC,CACzD,KAAC,cAAc,IAAC,UAAU,kBACtB,KAAC,cAAc,CAAC,IAAI,IAAC,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,YAC1C,MAAC,IAAI,IAAC,GAAG,EAAE,CAAC,EAAE,IAAI,EAAC,MAAM,aACpB,cAAc,IAAI,CACf,KAAC,YAAY,IACT,KAAK,EAAE,IAAI,CAAC,uBAAuB,CAAC,EACpC,GAAG,EAAE,cAAc,GACrB,CACL,EACA,QAAQ,IAAI,CACT,KAAC,YAAY,IAAC,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,EAAE,GAAG,EAAE,QAAQ,GAAI,CAClE,IACE,GACW,GACT,CACpB,CAAC,CAAC,CAAC,IAAI,CAAC;IAEb,OAAO,CACH,KAAC,YAAY,IACT,YAAY,EAAE,cAAc,EAC5B,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,iBAAiB,CAAC,EAC5C,YAAY,EAAE,IAAI,EAClB,MAAM,EAAE,MAAM,CAAC,OAAO,EACtB,kBAAkB,EAAE,kBAAkB,EACtC,kBAAkB,QAClB,IAAI,EAAE,aAAa,CAAC;YAChB,QAAQ,EAAE,MAAM,CAAC,IAAI;YACrB,OAAO;SACV,CAAC,GACJ,CACL,CAAC;AACN,CAAC"}
|
@@ -1,12 +1,13 @@
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
2
|
import { ClipboardButton } from '@gravity-ui/uikit';
|
3
|
+
import { isNil } from 'lodash';
|
3
4
|
import { useClusterBaseInfo } from '../../../store/reducers/cluster/cluster';
|
4
5
|
import { cn } from '../../../utils/cn';
|
5
6
|
import { USE_CLUSTER_BALANCER_AS_BACKEND_KEY } from '../../../utils/constants';
|
6
7
|
import { useSetting } from '../../../utils/hooks';
|
7
8
|
import { useAdditionalNodesProps } from '../../../utils/hooks/useAdditionalNodesProps';
|
8
|
-
import { getCleanBalancerValue,
|
9
|
-
import {
|
9
|
+
import { getCleanBalancerValue, prepareBackendFromBalancer } from '../../../utils/parseBalancer';
|
10
|
+
import { getBackendFromBalancerAndNodeId } from '../../../utils/prepareBackend';
|
10
11
|
import './ExtendedCluster.scss';
|
11
12
|
const b = cn('extended-cluster');
|
12
13
|
const getAdditionalBalancerInfo = (balancer) => {
|
@@ -31,22 +32,19 @@ const getAdditionalClusterProps = ({ clusterName, monitoring, balancer, getMonit
|
|
31
32
|
};
|
32
33
|
const getAdditionalTenantsProps = ({ clusterName, monitoring, balancer, logging, useClusterBalancerAsBackend, getMonitoringLink, getLogsLink, }) => {
|
33
34
|
const additionalTenantsProps = {};
|
34
|
-
additionalTenantsProps.prepareTenantBackend = (
|
35
|
+
additionalTenantsProps.prepareTenantBackend = (nodeId) => {
|
35
36
|
var _a;
|
36
|
-
//
|
37
|
+
// Balancer value is used to create path, so it's necessary
|
37
38
|
if (!balancer) {
|
38
39
|
return undefined;
|
39
40
|
}
|
40
41
|
if (useClusterBalancerAsBackend) {
|
41
|
-
return
|
42
|
+
return prepareBackendFromBalancer(balancer);
|
42
43
|
}
|
43
|
-
if (
|
44
|
+
if (isNil(nodeId)) {
|
44
45
|
return undefined;
|
45
46
|
}
|
46
|
-
|
47
|
-
return getBackendFromNodeHost(nodeHostOrAddress, balancer);
|
48
|
-
}
|
49
|
-
return (_a = getBackendFromRawNodeData(nodeHostOrAddress, balancer, true)) !== null && _a !== void 0 ? _a : undefined;
|
47
|
+
return (_a = getBackendFromBalancerAndNodeId(nodeId, balancer)) !== null && _a !== void 0 ? _a : undefined;
|
50
48
|
};
|
51
49
|
if (monitoring && getMonitoringLink) {
|
52
50
|
additionalTenantsProps.getMonitoringLink = (dbName, dbType) => {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ExtendedCluster.js","sourceRoot":"","sources":["../../../../src/containers/AppWithClusters/ExtendedCluster/ExtendedCluster.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;
|
1
|
+
{"version":3,"file":"ExtendedCluster.js","sourceRoot":"","sources":["../../../../src/containers/AppWithClusters/ExtendedCluster/ExtendedCluster.tsx"],"names":[],"mappings":"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"}
|
@@ -16,15 +16,14 @@ export default slice.reducer;
|
|
16
16
|
export const tenantsApi = api.injectEndpoints({
|
17
17
|
endpoints: (build) => ({
|
18
18
|
getTenantsInfo: build.query({
|
19
|
-
queryFn: async ({ clusterName }, { signal
|
19
|
+
queryFn: async ({ clusterName }, { signal }) => {
|
20
20
|
try {
|
21
21
|
const response = window.api.meta
|
22
22
|
? await window.api.meta.getTenants(clusterName, { signal })
|
23
23
|
: await window.api.viewer.getTenants(clusterName, { signal });
|
24
24
|
let data;
|
25
25
|
if (Array.isArray(response.TenantInfo)) {
|
26
|
-
|
27
|
-
data = prepareTenants(response.TenantInfo, singleClusterMode);
|
26
|
+
data = prepareTenants(response.TenantInfo);
|
28
27
|
}
|
29
28
|
else {
|
30
29
|
data = [];
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"tenants.js","sourceRoot":"","sources":["../../../../src/store/reducers/tenants/tenants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;
|
1
|
+
{"version":3,"file":"tenants.js","sourceRoot":"","sources":["../../../../src/store/reducers/tenants/tenants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAG7C,OAAO,EAAC,GAAG,EAAC,MAAM,QAAQ,CAAC;AAG3B,OAAO,EAAC,cAAc,EAAC,MAAM,SAAS,CAAC;AAEvC,MAAM,YAAY,GAAiB,EAAC,WAAW,EAAE,EAAE,EAAC,CAAC;AAErD,MAAM,KAAK,GAAG,WAAW,CAAC;IACtB,IAAI,EAAE,SAAS;IACf,YAAY;IACZ,QAAQ,EAAE;QACN,cAAc,EAAE,CAAC,KAAK,EAAE,MAA6B,EAAE,EAAE;YACrD,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC;QACvC,CAAC;KACJ;CACJ,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,EAAC,cAAc,EAAC,GAAG,KAAK,CAAC,OAAO,CAAC;AAC9C,eAAe,KAAK,CAAC,OAAO,CAAC;AAE7B,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,CAAC;IAC1C,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACnB,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC;YACxB,OAAO,EAAE,KAAK,EAAE,EAAC,WAAW,EAAyB,EAAE,EAAC,MAAM,EAAC,EAAE,EAAE;gBAC/D,IAAI,CAAC;oBACD,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI;wBAC5B,CAAC,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,EAAC,MAAM,EAAC,CAAC;wBACzD,CAAC,CAAC,MAAM,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,EAAC,MAAM,EAAC,CAAC,CAAC;oBAChE,IAAI,IAAsB,CAAC;oBAC3B,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;wBACrC,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;oBAC/C,CAAC;yBAAM,CAAC;wBACJ,IAAI,GAAG,EAAE,CAAC;oBACd,CAAC;oBACD,OAAO,EAAC,IAAI,EAAC,CAAC;gBAClB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,EAAC,KAAK,EAAC,CAAC;gBACnB,CAAC;YACL,CAAC;YACD,YAAY,EAAE,CAAC,KAAK,CAAC;SACxB,CAAC;KACL,CAAC;IACF,gBAAgB,EAAE,OAAO;CAC5B,CAAC,CAAC"}
|
@@ -2,7 +2,6 @@ import type { TTenant } from '../../../types/api/tenant';
|
|
2
2
|
import type { ValueOf } from '../../../types/common';
|
3
3
|
import type { METRIC_STATUS } from './contants';
|
4
4
|
export interface PreparedTenant extends TTenant {
|
5
|
-
backend: string | undefined;
|
6
5
|
sharedTenantName: string | undefined;
|
7
6
|
sharedNodeIds: number[] | undefined;
|
8
7
|
controlPlaneName: string;
|
@@ -23,6 +23,6 @@ export declare const calculateTenantMetrics: (tenant?: TTenant) => {
|
|
23
23
|
blobStorageStats: TenantStorageStats[];
|
24
24
|
tabletStorageStats: TenantStorageStats[] | undefined;
|
25
25
|
};
|
26
|
-
export declare const prepareTenants: (tenants: TTenant[]
|
26
|
+
export declare const prepareTenants: (tenants: TTenant[]) => PreparedTenant[];
|
27
27
|
export declare function getMetricStatusFromUsage(usage?: number): "Unspecified" | "Good" | "Warning" | "Danger";
|
28
28
|
export declare const normalizeProgress: (progress: number) => number;
|
@@ -9,14 +9,6 @@ const getControlPlaneValue = (tenant) => {
|
|
9
9
|
const controlPlaneName = (_b = tenant.ControlPlane) === null || _b === void 0 ? void 0 : _b.name;
|
10
10
|
return controlPlaneName !== null && controlPlaneName !== void 0 ? controlPlaneName : defaultValue;
|
11
11
|
};
|
12
|
-
const getTenantBackend = (tenant) => {
|
13
|
-
var _a;
|
14
|
-
const node = tenant.Nodes ? tenant.Nodes[0] : {};
|
15
|
-
const address = node.Host && node.Endpoints
|
16
|
-
? (_a = node.Endpoints.find((endpoint) => endpoint.Name === 'http-mon')) === null || _a === void 0 ? void 0 : _a.Address
|
17
|
-
: undefined;
|
18
|
-
return node.Host ? `${node.Host}${address ? address : ''}` : undefined;
|
19
|
-
};
|
20
12
|
const calculatePoolsStats = (poolsStats) => {
|
21
13
|
if (!poolsStats) {
|
22
14
|
return undefined;
|
@@ -125,9 +117,8 @@ const calculateTenantEntities = (tenant) => {
|
|
125
117
|
const groupsCount = isNumeric(StorageGroups) ? Number(StorageGroups) : 0;
|
126
118
|
return { nodesCount, groupsCount };
|
127
119
|
};
|
128
|
-
export const prepareTenants = (tenants
|
120
|
+
export const prepareTenants = (tenants) => {
|
129
121
|
return tenants.map((tenant) => {
|
130
|
-
const backend = useNodeAsBackend ? getTenantBackend(tenant) : undefined;
|
131
122
|
const sharedDatabase = tenants.find((item) => item.Id === tenant.ResourceId);
|
132
123
|
const sharedTenantName = sharedDatabase === null || sharedDatabase === void 0 ? void 0 : sharedDatabase.Name;
|
133
124
|
const sharedNodeIds = sharedDatabase === null || sharedDatabase === void 0 ? void 0 : sharedDatabase.NodeIds;
|
@@ -136,7 +127,6 @@ export const prepareTenants = (tenants, useNodeAsBackend) => {
|
|
136
127
|
const { nodesCount, groupsCount } = calculateTenantEntities(tenant);
|
137
128
|
return {
|
138
129
|
...tenant,
|
139
|
-
backend,
|
140
130
|
sharedTenantName,
|
141
131
|
sharedNodeIds,
|
142
132
|
controlPlaneName,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/store/reducers/tenants/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,KAAK,EAAC,MAAM,2BAA2B,CAAC;AAChD,OAAO,EAAC,wBAAwB,EAAE,yBAAyB,EAAC,MAAM,0BAA0B,CAAC;AAC7F,OAAO,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAC;AAE/C,OAAO,EAAC,aAAa,EAAC,MAAM,YAAY,CAAC;AAGzC,MAAM,oBAAoB,GAAG,CAAC,MAAe,EAAE,EAAE;;IAC7C,MAAM,KAAK,GAAG,MAAA,MAAM,CAAC,IAAI,0CAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,YAAY,GAAG,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,EAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACnE,MAAM,gBAAgB,GAAG,MAAA,MAAM,CAAC,YAAY,0CAAE,IAAI,CAAC;IAEnD,OAAO,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI,YAAY,CAAC;AAC5C,CAAC,CAAC;
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/store/reducers/tenants/utils.ts"],"names":[],"mappings":"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"}
|
@@ -10,7 +10,7 @@ export interface AdditionalClusterProps {
|
|
10
10
|
links?: ClusterLink[];
|
11
11
|
}
|
12
12
|
export interface AdditionalTenantsProps {
|
13
|
-
prepareTenantBackend?: (
|
13
|
+
prepareTenantBackend?: (nodeId?: string | number) => string | undefined;
|
14
14
|
getMonitoringLink?: (name?: string, type?: ETenantType) => string | null;
|
15
15
|
getLogsLink?: (name?: string) => string | null;
|
16
16
|
}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import type { EFlag } from './enums';
|
2
|
-
import type { TMemoryStats, TPoolStats
|
2
|
+
import type { TMemoryStats, TPoolStats } from './nodes';
|
3
3
|
import type { TTabletStateInfo } from './tablet';
|
4
4
|
/**
|
5
5
|
* endpoint: /viewer/json/tenants
|
@@ -42,7 +42,6 @@ export interface TTenant {
|
|
42
42
|
StorageAllocatedSize?: string;
|
43
43
|
/** uint64 */
|
44
44
|
StorageMinAvailableSize?: string;
|
45
|
-
Nodes?: TSystemStateInfo[];
|
46
45
|
/** uint64 */
|
47
46
|
MemoryUsed?: string;
|
48
47
|
/** uint64 */
|
@@ -52,7 +51,6 @@ export interface TTenant {
|
|
52
51
|
CoresUsed?: number;
|
53
52
|
/** uint64 */
|
54
53
|
StorageGroups?: string;
|
55
|
-
MonitoringEndpoint?: string;
|
56
54
|
ControlPlane?: ControlPlane;
|
57
55
|
StorageAllocatedLimit?: string;
|
58
56
|
DatabaseQuotas?: DatabaseQuotas;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"tenant.js","sourceRoot":"","sources":["../../../src/types/api/tenant.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"tenant.js","sourceRoot":"","sources":["../../../src/types/api/tenant.ts"],"names":[],"mappings":"AA2IA,MAAM,CAAN,IAAY,KAOX;AAPD,WAAY,KAAK;IACb,gDAAyC,CAAA;IACzC,8BAAuB,CAAA;IACvB,4BAAqB,CAAA;IACrB,8BAAuB,CAAA;IACvB,gDAAyC,CAAA;IACzC,oCAA6B,CAAA;AACjC,CAAC,EAPW,KAAK,KAAL,KAAK,QAOhB;AAED,MAAM,CAAN,IAAY,oBAMX;AAND,WAAY,oBAAoB;IAC5B,uFAAiE,CAAA;IACjE,uFAAiE,CAAA;IACjE,uFAAiE,CAAA;IACjE,yFAAmE,CAAA;IACnE,uFAAiE,CAAA;AACrE,CAAC,EANW,oBAAoB,KAApB,oBAAoB,QAM/B;AAuBD,MAAM,CAAN,IAAY,KAIX;AAJD,WAAY,KAAK;IACb,sBAAa,CAAA;IACb,oBAAW,CAAA;IACX,oBAAW,CAAA;AACf,CAAC,EAJW,KAAK,KAAL,KAAK,QAIhB"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import {
|
1
|
+
import { getBackendFromBalancerAndNodeId, prepareHost } from '../prepareBackend';
|
2
2
|
describe('prepareHost', () => {
|
3
3
|
test('should add u- prefix to cloud din nodes', () => {
|
4
4
|
const cloudDinNodeInitialHost = 'vm-cc8mco0j0snqehgh7r2a-ru-central1-c-nlmw-aniq.cc8mco0j0snqehgh7r2a.ydb.mdb.cloud-preprod.net';
|
@@ -8,36 +8,12 @@ describe('prepareHost', () => {
|
|
8
8
|
expect(prepareHost(commonNodeHost)).toBe(commonNodeHost);
|
9
9
|
});
|
10
10
|
});
|
11
|
-
describe('
|
12
|
-
test('should prepare correct backend
|
11
|
+
describe('getBackendFromBalancerAndNodeId', () => {
|
12
|
+
test('should prepare correct backend from balancer and node id', () => {
|
13
13
|
const balancer = 'https://viewer.ydb.ru:443/dev02.ydb.net:8765';
|
14
|
-
const
|
15
|
-
const result = 'https://viewer.ydb.ru:443/
|
16
|
-
expect(
|
17
|
-
});
|
18
|
-
});
|
19
|
-
describe('getBackendFromRawNodeData', () => {
|
20
|
-
test('should prepare correct backend value from raw node data', () => {
|
21
|
-
const balancer = 'https://viewer.ydb.ru:443/dev02.ydb.net:8765';
|
22
|
-
const node = {
|
23
|
-
Host: 'ydb-dev02-000.search.net',
|
24
|
-
Endpoints: [
|
25
|
-
{
|
26
|
-
Name: 'http-mon',
|
27
|
-
Address: ':8765',
|
28
|
-
},
|
29
|
-
{
|
30
|
-
Name: 'ic',
|
31
|
-
Address: ':19001',
|
32
|
-
},
|
33
|
-
{
|
34
|
-
Name: 'grpc',
|
35
|
-
Address: ':2135',
|
36
|
-
},
|
37
|
-
],
|
38
|
-
};
|
39
|
-
const result = 'https://viewer.ydb.ru:443/ydb-dev02-000.search.net:8765';
|
40
|
-
expect(getBackendFromRawNodeData(node, balancer)).toBe(result);
|
14
|
+
const nodeId = '50016';
|
15
|
+
const result = 'https://viewer.ydb.ru:443/dev02.ydb.net:8765/node/50016';
|
16
|
+
expect(getBackendFromBalancerAndNodeId(nodeId, balancer)).toBe(result);
|
41
17
|
});
|
42
18
|
});
|
43
19
|
//# sourceMappingURL=prepareBackend.test.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"prepareBackend.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/prepareBackend.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,
|
1
|
+
{"version":3,"file":"prepareBackend.test.js","sourceRoot":"","sources":["../../../src/utils/__test__/prepareBackend.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,+BAA+B,EAAE,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAE/E,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IACzB,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,uBAAuB,GACzB,gGAAgG,CAAC;QACrG,MAAM,sBAAsB,GACxB,kGAAkG,CAAC;QAEvG,MAAM,cAAc,GAAG,uBAAuB,CAAC;QAE/C,MAAM,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAC1E,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AACH,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC7C,IAAI,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,QAAQ,GAAG,8CAA8C,CAAC;QAChE,MAAM,MAAM,GAAG,OAAO,CAAC;QACvB,MAAM,MAAM,GAAG,yDAAyD,CAAC;QAEzE,MAAM,CAAC,+BAA+B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
@@ -1,2 +1,2 @@
|
|
1
1
|
import type { AdditionalNodesProps } from '../types/additionalProps';
|
2
|
-
export declare const getAdditionalNodesProps: (balancer?: string | undefined
|
2
|
+
export declare const getAdditionalNodesProps: (balancer?: string | undefined) => AdditionalNodesProps;
|
@@ -1,8 +1,8 @@
|
|
1
1
|
import { backend } from '../store';
|
2
|
-
import {
|
3
|
-
export const getAdditionalNodesProps = (balancer = backend
|
2
|
+
import { getBackendFromBalancerAndNodeId } from './prepareBackend';
|
3
|
+
export const getAdditionalNodesProps = (balancer = backend) => {
|
4
4
|
return {
|
5
|
-
getNodeRef: (node
|
5
|
+
getNodeRef: (node) => getBackendFromBalancerAndNodeId(node === null || node === void 0 ? void 0 : node.NodeId, balancer !== null && balancer !== void 0 ? balancer : ''),
|
6
6
|
};
|
7
7
|
};
|
8
8
|
//# sourceMappingURL=additionalProps.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"additionalProps.js","sourceRoot":"","sources":["../../src/utils/additionalProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,UAAU,CAAC;AAGjC,OAAO,EAAC,
|
1
|
+
{"version":3,"file":"additionalProps.js","sourceRoot":"","sources":["../../src/utils/additionalProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,UAAU,CAAC;AAGjC,OAAO,EAAC,+BAA+B,EAAC,MAAM,kBAAkB,CAAC;AAEjE,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,QAAQ,GAAG,OAAO,EAAwB,EAAE;IAChF,OAAO;QACH,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,+BAA+B,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAE,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,EAAE,CAAC;KACtF,CAAC;AACN,CAAC,CAAC"}
|
@@ -1,14 +1,11 @@
|
|
1
1
|
import { useClusterBaseInfo } from '../../store/reducers/cluster/cluster';
|
2
2
|
import { getAdditionalNodesProps } from '../additionalProps';
|
3
|
-
import { USE_CLUSTER_BALANCER_AS_BACKEND_KEY } from '../constants';
|
4
|
-
import { useSetting } from './useSetting';
|
5
3
|
import { useTypedSelector } from './useTypedSelector';
|
6
4
|
/** For multi-cluster version */
|
7
5
|
export function useAdditionalNodesProps() {
|
8
6
|
const { balancer } = useClusterBaseInfo();
|
9
|
-
const [useClusterBalancerAsBackend] = useSetting(USE_CLUSTER_BALANCER_AS_BACKEND_KEY);
|
10
7
|
const singleClusterMode = useTypedSelector((state) => state.singleClusterMode);
|
11
|
-
const additionalNodesProps = getAdditionalNodesProps(balancer
|
8
|
+
const additionalNodesProps = getAdditionalNodesProps(balancer);
|
12
9
|
return singleClusterMode ? undefined : additionalNodesProps;
|
13
10
|
}
|
14
11
|
//# sourceMappingURL=useAdditionalNodesProps.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useAdditionalNodesProps.js","sourceRoot":"","sources":["../../../src/utils/hooks/useAdditionalNodesProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAC,uBAAuB,EAAC,MAAM,oBAAoB,CAAC;
|
1
|
+
{"version":3,"file":"useAdditionalNodesProps.js","sourceRoot":"","sources":["../../../src/utils/hooks/useAdditionalNodesProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAC,uBAAuB,EAAC,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AAEpD,gCAAgC;AAChC,MAAM,UAAU,uBAAuB;IACnC,MAAM,EAAC,QAAQ,EAAC,GAAG,kBAAkB,EAAE,CAAC;IACxC,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAE/E,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAE/D,OAAO,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC;AAChE,CAAC"}
|
@@ -1,5 +1,3 @@
|
|
1
|
-
import type { NodeAddress } from '../types/additionalProps';
|
2
1
|
export declare const prepareHost: (host?: string) => string | undefined;
|
3
|
-
export declare const getBackendFromNodeHost: (nodeHost: string, balancer: string) => string;
|
4
2
|
/** For multi-cluster version */
|
5
|
-
export declare const
|
3
|
+
export declare const getBackendFromBalancerAndNodeId: (nodeId?: string | number, balancer?: string) => string | undefined;
|
@@ -1,34 +1,14 @@
|
|
1
|
-
import {
|
2
|
-
|
1
|
+
import { prepareBackendFromBalancer } from './parseBalancer';
|
2
|
+
import { valueIsDefined } from '.';
|
3
3
|
export const prepareHost = (host) => {
|
4
4
|
// add "u-" prefix to cloud din nodes
|
5
5
|
return (host === null || host === void 0 ? void 0 : host.startsWith('vm-')) ? `u-${host}` : host;
|
6
6
|
};
|
7
|
-
export const getBackendFromNodeHost = (nodeHost, balancer) => {
|
8
|
-
const preparedHost = prepareHost(nodeHost);
|
9
|
-
const proxy = parseBalancer(balancer).proxy;
|
10
|
-
if (proxy) {
|
11
|
-
return https + proxy + '/' + preparedHost;
|
12
|
-
}
|
13
|
-
return https + preparedHost;
|
14
|
-
};
|
15
7
|
/** For multi-cluster version */
|
16
|
-
export const
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
const preparedBalancer = removeViewerPathname(balancer);
|
21
|
-
return `${preparedBalancer}/node/${NodeId}`;
|
22
|
-
}
|
23
|
-
if (Host && Endpoints) {
|
24
|
-
const nodePort = (_a = Endpoints.find((endpoint) => endpoint.Name === 'http-mon')) === null || _a === void 0 ? void 0 : _a.Address;
|
25
|
-
if (!nodePort || !Host) {
|
26
|
-
return undefined;
|
27
|
-
}
|
28
|
-
const hostWithPort = Host + nodePort;
|
29
|
-
// Currently this func is used to get link to developerUI for specific node
|
30
|
-
// It's expected with / at the end (code in embedded version)
|
31
|
-
return getBackendFromNodeHost(hostWithPort, balancer);
|
8
|
+
export const getBackendFromBalancerAndNodeId = (nodeId, balancer) => {
|
9
|
+
if (valueIsDefined(nodeId) && valueIsDefined(balancer)) {
|
10
|
+
const preparedBalancer = prepareBackendFromBalancer(balancer);
|
11
|
+
return `${preparedBalancer}/node/${nodeId}`;
|
32
12
|
}
|
33
13
|
return undefined;
|
34
14
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"prepareBackend.js","sourceRoot":"","sources":["../../src/utils/prepareBackend.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"prepareBackend.js","sourceRoot":"","sources":["../../src/utils/prepareBackend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,0BAA0B,EAAC,MAAM,iBAAiB,CAAC;AAE3D,OAAO,EAAC,cAAc,EAAC,MAAM,GAAG,CAAC;AAEjC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAa,EAAE,EAAE;IACzC,qCAAqC;IACrC,OAAO,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CAAC,KAAK,CAAC,EAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACxD,CAAC,CAAC;AAEF,gCAAgC;AAChC,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,MAAwB,EAAE,QAAiB,EAAE,EAAE;IAC3F,IAAI,cAAc,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrD,MAAM,gBAAgB,GAAG,0BAA0B,CAAC,QAAQ,CAAC,CAAC;QAC9D,OAAO,GAAG,gBAAgB,SAAS,MAAM,EAAE,CAAC;IAChD,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC,CAAC"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "ydb-embedded-ui",
|
3
|
-
"version": "8.
|
3
|
+
"version": "8.22.0",
|
4
4
|
"files": [
|
5
5
|
"dist"
|
6
6
|
],
|
@@ -69,7 +69,7 @@
|
|
69
69
|
"build": "rm -rf build && DISABLE_ESLINT_PLUGIN=true CI=true react-app-rewired build",
|
70
70
|
"//build:embedded": "echo 'PUBLIC_URL is a setting for create-react-app. Embedded version is built and hosted as is on ydb servers, with no way of knowing the final URL pattern. PUBLIC_URL=. keeps paths to all static relative, allowing servers to handle them as needed'",
|
71
71
|
"build:embedded": "GENERATE_SOURCEMAP=false PUBLIC_URL=. REACT_APP_BACKEND=http://localhost:8765 REACT_APP_META_BACKEND=undefined npm run build",
|
72
|
-
"build:embedded:archive": "npm run build:embedded && mv build embedded-ui && zip -r embedded-ui.zip embedded-ui && rm -rf embedded-ui",
|
72
|
+
"build:embedded:archive": "npm run build:embedded && mv build embedded-ui && cp CHANGELOG.md embedded-ui/CHANGELOG.md && zip -r embedded-ui.zip embedded-ui && rm -rf embedded-ui",
|
73
73
|
"lint": "run-p lint:*",
|
74
74
|
"lint:js": "eslint --ext .js,.jsx,.ts,.tsx .",
|
75
75
|
"lint:styles": "stylelint 'src/**/*.{css,scss}'",
|