@dovetail-v2/refine 0.3.12-alpha.1 → 0.3.13-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/KeyValue/KeyValue.d.ts +2 -0
- package/dist/components/LabelsAndAnnotationsShow/index.d.ts +8 -0
- package/dist/components/ResourceSelect/index.d.ts +1 -0
- package/dist/components/ShowContent/ShowContentView.d.ts +8 -1
- package/dist/components/ShowContent/fields.d.ts +8 -4
- package/dist/components/ShowContent/groups.d.ts +1 -4
- package/dist/components/ShowContent/tabs.d.ts +25 -4
- package/dist/components/index.d.ts +1 -0
- package/dist/hooks/useEagleTable/columns.d.ts +1 -1
- package/dist/i18n.d.ts +4 -2
- package/dist/locales/en-US/index.d.ts +0 -1
- package/dist/locales/zh-CN/index.d.ts +4 -1
- package/dist/models/cronjob-model.d.ts +2 -0
- package/dist/models/ingress-model.d.ts +1 -1
- package/dist/models/job-model.d.ts +1 -0
- package/dist/refine.cjs +608 -341
- package/dist/refine.js +610 -343
- package/dist/style.css +191 -18
- package/dist/styles/show.d.ts +2 -0
- package/dist/utils/match-selector.d.ts +1 -1
- package/package.json +1 -1
- package/dist/utils/selector.d.ts +0 -3
package/dist/refine.js
CHANGED
|
@@ -11,8 +11,8 @@ import { ResourceContext, matchResourceFromRoute, useResource, useDelete, useNav
|
|
|
11
11
|
import { parse, stringify } from "qs";
|
|
12
12
|
import React, { createElement, isValidElement, cloneElement, Children, useContext, useCallback, createContext, useState, useEffect, useMemo, useRef, useImperativeHandle, lazy, Suspense, memo, forwardRef } from "react";
|
|
13
13
|
import { useLocation, useHistory, useParams, matchPath, Link, Route, NavLink, Router } from "react-router-dom";
|
|
14
|
-
import { usePushModal, usePopModal, DeleteDialog, Tag, RejectDialog, RejectDialogType, Input, Select, AntdOption, Button, Form, Space, TextArea, kitContext,
|
|
15
|
-
import { EditPen16PrimaryIcon, Download16GradientBlueIcon, TrashBinDelete16Icon, MoreEllipsis324BoldSecondaryIcon, MoreEllipsis324BoldBlueIcon, MoreEllipsis316BoldBlueIcon, PlusAddCreateNew16BoldOntintIcon, ViewEye16GradientGrayIcon, EntityFilterIgnoreGradient16GrayIcon, InfoICircleFill16GrayIcon, InfoICircleFill16Gray70Icon, RecoverContinue16GradientBlueIcon, SuspendedPause16GradientBlueIcon, ArrowChevronLeft16BoldTertiaryIcon, ArrowChevronLeftSmall16BoldBlueIcon,
|
|
14
|
+
import { usePushModal, usePopModal, DeleteDialog, Tag, RejectDialog, RejectDialogType, Typo, Input, Select, AntdOption, Button, Form, Space, TextArea, kitContext, Loading, Table as Table$2, Pagination, Alert, ImmersiveDialog, SmallDialog, Fields, Units, Link as Link$1, OverflowTooltip, Tooltip, Dropdown, Menu as Menu$1, Icon, Divider, Modal, StatusCapsule, Popover, AntdTable, Upload, TableForm, AutoComplete, getOptions, DonutChart, SegmentControl, Checkbox, Tabs as Tabs$1, TabsTabPane, Col, Row, useMessage, SearchInput, Token, AntdSelectOptGroup, WizardDialog, MenuItemGroup, Layout as Layout$1, InputGroup, InputInteger, Time as Time$1, ModalStack, KitStoreProvider, ConfigProvider } from "@cloudtower/eagle";
|
|
15
|
+
import { EditPen16PrimaryIcon, Download16GradientBlueIcon, TrashBinDelete16Icon, MoreEllipsis324BoldSecondaryIcon, MoreEllipsis324BoldBlueIcon, MoreEllipsis316BoldBlueIcon, PlusAddCreateNew16BoldOntintIcon, ViewEye16GradientGrayIcon, EntityFilterIgnoreGradient16GrayIcon, InfoICircleFill16GrayIcon, InfoICircleFill16Gray70Icon, RecoverContinue16GradientBlueIcon, SuspendedPause16GradientBlueIcon, ArrowChevronLeft16BoldTertiaryIcon, ArrowChevronLeftSmall16BoldBlueIcon, ArrowChevronDownSmall16BlueIcon, ArrowChevronUpSmall16BlueIcon, Retry16GradientBlueIcon, OpenTerminal16GradientBlueIcon, ArrowChevronDown16BlueIcon, ArrowChevronUp16BlueIcon, HierarchyTriangleRight16GrayIcon, HierarchyTriangleRight16BlueIcon, ClipboardCopy16GradientGrayIcon, ClipboardCopy16GradientBlueIcon, Retry16GradientGrayIcon, EditPen16GradientGrayIcon, EditPen16GradientBlueIcon, Showdiff16GradientGrayIcon, Showdiff16GradientBlueIcon, XmarkFailedSeriousWarningFill16RedIcon, Pause16GradientBlueIcon, EditPen16BlueIcon } from "@cloudtower/icons-react";
|
|
16
16
|
import { first, get as get$2, cloneDeep, set, omit as omit$1, merge, isEqual as isEqual$1, debounce, last, setWith, clone, isObject as isObject$4, uniq, keyBy } from "lodash-es";
|
|
17
17
|
import yaml$2 from "js-yaml";
|
|
18
18
|
import { useLocalStorage } from "usehooks-ts";
|
|
@@ -544,13 +544,12 @@ const create_failed$1 = "Creation failed.";
|
|
|
544
544
|
const create_failed_tip$1 = "Please address the following issues and try again: ";
|
|
545
545
|
const save_failed$1 = "Failed to save.";
|
|
546
546
|
const save_failed_tip$1 = "Please address the following issues and try again: ";
|
|
547
|
-
const completion_num_tooltip$1 = "Completed/Expected";
|
|
548
547
|
const ready_num_tooltip$1 = "Ready/Expected";
|
|
549
548
|
const realtime_log$1 = "Real-time logs";
|
|
550
549
|
const previous_log$1 = "Last startup logs";
|
|
551
550
|
const auto_wrap$1 = "Auto wrap";
|
|
552
551
|
const container_num$1 = "Containers";
|
|
553
|
-
const edit_resource_success$1 = "{{
|
|
552
|
+
const edit_resource_success$1 = "{{kind}} {{name}} was edited successfully";
|
|
554
553
|
const redeploy_success_toast$1 = "{{kind}} {{name}} was redeployed successfully";
|
|
555
554
|
const redeploy_failed_toast$1 = "Failed to redeploy {{kind}} {{name}}";
|
|
556
555
|
const pause_success_toast$1 = "Successfully suspended";
|
|
@@ -795,7 +794,6 @@ const dovetail$1 = {
|
|
|
795
794
|
create_failed_tip: create_failed_tip$1,
|
|
796
795
|
save_failed: save_failed$1,
|
|
797
796
|
save_failed_tip: save_failed_tip$1,
|
|
798
|
-
completion_num_tooltip: completion_num_tooltip$1,
|
|
799
797
|
ready_num_tooltip: ready_num_tooltip$1,
|
|
800
798
|
realtime_log: realtime_log$1,
|
|
801
799
|
previous_log: previous_log$1,
|
|
@@ -1023,7 +1021,7 @@ const expand = "展开";
|
|
|
1023
1021
|
const fold = "收起";
|
|
1024
1022
|
const rule = "规则";
|
|
1025
1023
|
const default_backend = "默认后端";
|
|
1026
|
-
const ingress_class = "
|
|
1024
|
+
const ingress_class = "IngressClass";
|
|
1027
1025
|
const port = "端口";
|
|
1028
1026
|
const pod_ready_num = "Pod 就绪数量";
|
|
1029
1027
|
const pod_complete_num = "Pod 完成数量";
|
|
@@ -1061,7 +1059,7 @@ const create_failed = "创建失败。";
|
|
|
1061
1059
|
const create_failed_tip = "请解决如下问题后,再创建:";
|
|
1062
1060
|
const save_failed = "保存失败。";
|
|
1063
1061
|
const save_failed_tip = "请解决如下问题后,再保存:";
|
|
1064
|
-
const
|
|
1062
|
+
const job_pod_count_tooltip = "完成数量/全部数量";
|
|
1065
1063
|
const ready_num_tooltip = "就绪数量/预期数量";
|
|
1066
1064
|
const warning = "警告";
|
|
1067
1065
|
const normal = "正常";
|
|
@@ -1205,6 +1203,9 @@ const node_port_duplicated = "端口已被占用。";
|
|
|
1205
1203
|
const all = "全部";
|
|
1206
1204
|
const optional_with_bracket = "(选填)";
|
|
1207
1205
|
const label_annotations = "标签与注解";
|
|
1206
|
+
const target_service = "目标服务";
|
|
1207
|
+
const target_service_port = "目标服务端口";
|
|
1208
|
+
const select_workload = "选择工作负载";
|
|
1208
1209
|
const dovetail = {
|
|
1209
1210
|
copy,
|
|
1210
1211
|
reset_arguments,
|
|
@@ -1325,7 +1326,7 @@ const dovetail = {
|
|
|
1325
1326
|
create_failed_tip,
|
|
1326
1327
|
save_failed,
|
|
1327
1328
|
save_failed_tip,
|
|
1328
|
-
|
|
1329
|
+
job_pod_count_tooltip,
|
|
1329
1330
|
ready_num_tooltip,
|
|
1330
1331
|
"true": "是",
|
|
1331
1332
|
"false": "否",
|
|
@@ -1470,7 +1471,10 @@ const dovetail = {
|
|
|
1470
1471
|
node_port_duplicated,
|
|
1471
1472
|
all,
|
|
1472
1473
|
optional_with_bracket,
|
|
1473
|
-
label_annotations
|
|
1474
|
+
label_annotations,
|
|
1475
|
+
target_service,
|
|
1476
|
+
target_service_port,
|
|
1477
|
+
select_workload
|
|
1474
1478
|
};
|
|
1475
1479
|
const ZH = {
|
|
1476
1480
|
dovetail
|
|
@@ -7609,6 +7613,9 @@ function DurationTime(props) {
|
|
|
7609
7613
|
};
|
|
7610
7614
|
return /* @__PURE__ */ jsxRuntimeExports.jsx("span", { children: elapsedTime(value2, i18nMap).label || /* @__PURE__ */ jsxRuntimeExports.jsx(ValueDisplay, { value: "" }) });
|
|
7611
7615
|
}
|
|
7616
|
+
const show_1mm8a0w = "";
|
|
7617
|
+
const SmallSectionTitleStyle = cx_default(Typo.Label.l4_bold, "smzfpl7");
|
|
7618
|
+
const DashedTitleStyle = "d85h4vb";
|
|
7612
7619
|
const index_1xaw1mq = "";
|
|
7613
7620
|
const BreadcrumbStyle = "b142d7q8";
|
|
7614
7621
|
function Breadcrumb(props) {
|
|
@@ -8683,7 +8690,7 @@ class IngressModel extends ResourceModel {
|
|
|
8683
8690
|
getFlattenedRules(services) {
|
|
8684
8691
|
var _a, _b, _c, _d;
|
|
8685
8692
|
const protocal = !!this._rawYaml.spec.tls ? "https" : "http";
|
|
8686
|
-
const servicePort = (_c = (_b = (_a = services.find((s2) => {
|
|
8693
|
+
const servicePort = (_c = (_b = (_a = services == null ? void 0 : services.find((s2) => {
|
|
8687
8694
|
var _a2, _b2;
|
|
8688
8695
|
return ((_a2 = s2.metadata) == null ? void 0 : _a2.name) === "contour-envoy" && ((_b2 = s2.spec) == null ? void 0 : _b2.type) === "NodePort";
|
|
8689
8696
|
})) == null ? void 0 : _a.spec) == null ? void 0 : _b.ports) == null ? void 0 : _c.find((p) => p.name === protocal);
|
|
@@ -9315,17 +9322,70 @@ var ResourceState = /* @__PURE__ */ ((ResourceState2) => {
|
|
|
9315
9322
|
ResourceState2["DELETING"] = "deleting";
|
|
9316
9323
|
return ResourceState2;
|
|
9317
9324
|
})(ResourceState || {});
|
|
9325
|
+
function isLabelSelector(selector) {
|
|
9326
|
+
if (!selector || typeof selector !== "object") {
|
|
9327
|
+
return false;
|
|
9328
|
+
}
|
|
9329
|
+
const s2 = selector;
|
|
9330
|
+
if ("matchExpressions" in s2) {
|
|
9331
|
+
return true;
|
|
9332
|
+
}
|
|
9333
|
+
if ("matchLabels" in s2) {
|
|
9334
|
+
const ml = s2.matchLabels;
|
|
9335
|
+
return typeof ml === "object" && ml !== null;
|
|
9336
|
+
}
|
|
9337
|
+
return false;
|
|
9338
|
+
}
|
|
9318
9339
|
function matchSelector(pod2, selector, namespace2 = "default") {
|
|
9319
|
-
var _a, _b
|
|
9320
|
-
|
|
9321
|
-
|
|
9322
|
-
|
|
9323
|
-
|
|
9324
|
-
|
|
9340
|
+
var _a, _b;
|
|
9341
|
+
if (((_a = pod2.metadata) == null ? void 0 : _a.namespace) !== namespace2) {
|
|
9342
|
+
return false;
|
|
9343
|
+
}
|
|
9344
|
+
if (!selector || Object.keys(selector).length === 0) {
|
|
9345
|
+
return true;
|
|
9346
|
+
}
|
|
9347
|
+
const podLabels = ((_b = pod2.metadata) == null ? void 0 : _b.labels) || {};
|
|
9348
|
+
let matchLabels;
|
|
9349
|
+
let matchExpressions;
|
|
9350
|
+
if (isLabelSelector(selector)) {
|
|
9351
|
+
matchLabels = selector.matchLabels;
|
|
9352
|
+
matchExpressions = selector.matchExpressions;
|
|
9353
|
+
} else {
|
|
9354
|
+
matchLabels = selector;
|
|
9355
|
+
}
|
|
9356
|
+
if (matchLabels) {
|
|
9357
|
+
for (const key2 in matchLabels) {
|
|
9358
|
+
if (podLabels[key2] !== matchLabels[key2]) {
|
|
9359
|
+
return false;
|
|
9360
|
+
}
|
|
9361
|
+
}
|
|
9362
|
+
}
|
|
9363
|
+
if (matchExpressions) {
|
|
9364
|
+
for (const req of matchExpressions) {
|
|
9365
|
+
const { key: key2, operator, values } = req;
|
|
9366
|
+
const labelValue = podLabels[key2];
|
|
9367
|
+
const hasLabel = Object.prototype.hasOwnProperty.call(podLabels, key2);
|
|
9368
|
+
switch (operator) {
|
|
9369
|
+
case "In":
|
|
9370
|
+
if (!hasLabel || !(values == null ? void 0 : values.includes(labelValue)))
|
|
9371
|
+
return false;
|
|
9372
|
+
break;
|
|
9373
|
+
case "NotIn":
|
|
9374
|
+
if (hasLabel && (values == null ? void 0 : values.includes(labelValue)))
|
|
9375
|
+
return false;
|
|
9376
|
+
break;
|
|
9377
|
+
case "Exists":
|
|
9378
|
+
if (!hasLabel)
|
|
9379
|
+
return false;
|
|
9380
|
+
break;
|
|
9381
|
+
case "DoesNotExist":
|
|
9382
|
+
if (hasLabel)
|
|
9383
|
+
return false;
|
|
9384
|
+
break;
|
|
9325
9385
|
}
|
|
9326
9386
|
}
|
|
9327
9387
|
}
|
|
9328
|
-
return
|
|
9388
|
+
return true;
|
|
9329
9389
|
}
|
|
9330
9390
|
class WorkloadBaseModel extends ResourceModel {
|
|
9331
9391
|
constructor(_rawYaml, _globalStore) {
|
|
@@ -9386,6 +9446,11 @@ class JobModel extends WorkloadBaseModel {
|
|
|
9386
9446
|
}
|
|
9387
9447
|
return `${((_a = this._rawYaml.status) == null ? void 0 : _a.succeeded) || 0}/${(_b = this._rawYaml.spec) == null ? void 0 : _b.completions}`;
|
|
9388
9448
|
}
|
|
9449
|
+
get podCountDisplay() {
|
|
9450
|
+
var _a, _b, _c;
|
|
9451
|
+
const count = (((_a = this.status) == null ? void 0 : _a.active) || 0) + (((_b = this.status) == null ? void 0 : _b.succeeded) || 0) + (((_c = this.status) == null ? void 0 : _c.failed) || 0);
|
|
9452
|
+
return `${this.succeeded}/${count}`;
|
|
9453
|
+
}
|
|
9389
9454
|
get succeeded() {
|
|
9390
9455
|
var _a;
|
|
9391
9456
|
return ((_a = this._rawYaml.status) == null ? void 0 : _a.succeeded) || 0;
|
|
@@ -9702,6 +9767,12 @@ class CronJobModel extends WorkloadBaseModel {
|
|
|
9702
9767
|
}
|
|
9703
9768
|
return newOne;
|
|
9704
9769
|
}
|
|
9770
|
+
getJobsCountDisplay(jobs) {
|
|
9771
|
+
const completed = jobs.filter(
|
|
9772
|
+
(job) => job.stateDisplay === ResourceState.COMPLETED
|
|
9773
|
+
).length;
|
|
9774
|
+
return `${completed}/${jobs.length}`;
|
|
9775
|
+
}
|
|
9705
9776
|
}
|
|
9706
9777
|
class EventModel extends ResourceModel {
|
|
9707
9778
|
constructor(_rawYaml, _globalStore) {
|
|
@@ -10275,13 +10346,20 @@ const ConditionsTable = ({ conditions = [] }) => {
|
|
|
10275
10346
|
width: 403
|
|
10276
10347
|
}
|
|
10277
10348
|
];
|
|
10278
|
-
const {
|
|
10349
|
+
const {
|
|
10350
|
+
data: finalData,
|
|
10351
|
+
currentPage,
|
|
10352
|
+
onPageChange,
|
|
10353
|
+
onSorterChange
|
|
10354
|
+
} = useTableData({
|
|
10279
10355
|
data: conditionsWithId,
|
|
10280
10356
|
columns,
|
|
10281
|
-
defaultSorters: [
|
|
10282
|
-
|
|
10283
|
-
|
|
10284
|
-
|
|
10357
|
+
defaultSorters: [
|
|
10358
|
+
{
|
|
10359
|
+
field: "lastUpdateTime",
|
|
10360
|
+
order: "desc"
|
|
10361
|
+
}
|
|
10362
|
+
]
|
|
10285
10363
|
});
|
|
10286
10364
|
const currentSize = 10;
|
|
10287
10365
|
if (conditionsWithId.length === 0) {
|
|
@@ -10289,7 +10367,7 @@ const ConditionsTable = ({ conditions = [] }) => {
|
|
|
10289
10367
|
WidgetErrorContent,
|
|
10290
10368
|
{
|
|
10291
10369
|
errorText: t2("dovetail.no_resource", { kind: t2("dovetail.condition") }),
|
|
10292
|
-
type: ErrorContentType.
|
|
10370
|
+
type: ErrorContentType.List
|
|
10293
10371
|
}
|
|
10294
10372
|
);
|
|
10295
10373
|
}
|
|
@@ -10634,7 +10712,7 @@ function K8sDropdown(props) {
|
|
|
10634
10712
|
const configs = useContext(ConfigsContext);
|
|
10635
10713
|
const resourceName = getResourceNameByKind(record.kind || "", configs);
|
|
10636
10714
|
const config = configs[resourceName || ""];
|
|
10637
|
-
const { t: t2 } = useTranslation();
|
|
10715
|
+
const { t: t2, i18n: i18n2 } = useTranslation();
|
|
10638
10716
|
const { openDeleteConfirmModal } = useDeleteModal({ resourceName: resourceName || "" });
|
|
10639
10717
|
const download2 = useDownloadYAML();
|
|
10640
10718
|
const openForm = useOpenForm();
|
|
@@ -10658,7 +10736,10 @@ function K8sDropdown(props) {
|
|
|
10658
10736
|
Dropdown,
|
|
10659
10737
|
{
|
|
10660
10738
|
overlay: /* @__PURE__ */ jsxRuntimeExports.jsxs(Menu$1, { children: [
|
|
10661
|
-
isInShowPage || (canEditData == null ? void 0 : canEditData.can) === false || config.hideEdit ? null : /* @__PURE__ */ jsxRuntimeExports.jsx(Menu$1.Item, { onClick: () => openForm({ id: record.id, resourceName }), children: /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, { src: EditPen16PrimaryIcon, children: formType === FormType.FORM ? t2("dovetail.edit")
|
|
10739
|
+
isInShowPage || (canEditData == null ? void 0 : canEditData.can) === false || config.hideEdit ? null : /* @__PURE__ */ jsxRuntimeExports.jsx(Menu$1.Item, { onClick: () => openForm({ id: record.id, resourceName }), children: /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, { src: EditPen16PrimaryIcon, children: formType === FormType.FORM ? `${t2("dovetail.edit")}${transformResourceKindInSentence(
|
|
10740
|
+
(config == null ? void 0 : config.displayName) || record.kind || "",
|
|
10741
|
+
i18n2.language
|
|
10742
|
+
)}` : t2("dovetail.edit_yaml") }) }),
|
|
10662
10743
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
10663
10744
|
Menu$1.Item,
|
|
10664
10745
|
{
|
|
@@ -10931,7 +11012,7 @@ const CronjobJobsTable = ({
|
|
|
10931
11012
|
const columns = useMemo(() => [NameColumnRenderer(i18n2, "jobs"), StateDisplayColumnRenderer(i18n2), NameSpaceColumnRenderer(i18n2), {
|
|
10932
11013
|
...WorkloadImageColumnRenderer(i18n2),
|
|
10933
11014
|
width: 238
|
|
10934
|
-
},
|
|
11015
|
+
}, PodCountOfJobColumnRenderer(i18n2), DurationColumnRenderer(i18n2), AgeColumnRenderer(i18n2)], [i18n2]);
|
|
10935
11016
|
const params = useMemo(() => ({
|
|
10936
11017
|
columns,
|
|
10937
11018
|
useTableParams: {
|
|
@@ -10989,10 +11070,17 @@ const EventsTable = ({ uid }) => {
|
|
|
10989
11070
|
width: 120,
|
|
10990
11071
|
render(value2) {
|
|
10991
11072
|
const colorMap = {
|
|
10992
|
-
|
|
10993
|
-
|
|
11073
|
+
Warning: "warning",
|
|
11074
|
+
Normal: "green"
|
|
10994
11075
|
};
|
|
10995
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
11076
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
11077
|
+
StatusCapsule,
|
|
11078
|
+
{
|
|
11079
|
+
color: colorMap[value2],
|
|
11080
|
+
className: cx_default(StateTagStyle, "no-background"),
|
|
11081
|
+
children: i18n2.t(`dovetail.${value2.toLowerCase()}`)
|
|
11082
|
+
}
|
|
11083
|
+
);
|
|
10996
11084
|
},
|
|
10997
11085
|
sorter: CommonSorter(["type"])
|
|
10998
11086
|
},
|
|
@@ -11014,32 +11102,41 @@ const EventsTable = ({ uid }) => {
|
|
|
11014
11102
|
width: 723,
|
|
11015
11103
|
sorter: CommonSorter(["note"])
|
|
11016
11104
|
},
|
|
11017
|
-
AgeColumnRenderer(
|
|
11105
|
+
AgeColumnRenderer(
|
|
11106
|
+
i18n2,
|
|
11107
|
+
{ title: i18n2.t("dovetail.last_seen"), width: 160 },
|
|
11108
|
+
{ isRelativeTime: false }
|
|
11109
|
+
)
|
|
11018
11110
|
],
|
|
11019
11111
|
[i18n2]
|
|
11020
11112
|
);
|
|
11021
|
-
const params = useMemo(
|
|
11022
|
-
|
|
11023
|
-
|
|
11024
|
-
|
|
11025
|
-
|
|
11026
|
-
|
|
11027
|
-
|
|
11028
|
-
|
|
11029
|
-
|
|
11030
|
-
|
|
11031
|
-
|
|
11032
|
-
value: [
|
|
11113
|
+
const params = useMemo(
|
|
11114
|
+
() => ({
|
|
11115
|
+
columns,
|
|
11116
|
+
tableProps: {
|
|
11117
|
+
defaultSize: 50
|
|
11118
|
+
},
|
|
11119
|
+
useTableParams: {
|
|
11120
|
+
resource: "events",
|
|
11121
|
+
meta: { resourceBasePath: "/apis/events.k8s.io/v1", kind: "Event" },
|
|
11122
|
+
filters: {
|
|
11123
|
+
permanent: [
|
|
11033
11124
|
{
|
|
11034
|
-
|
|
11035
|
-
|
|
11036
|
-
|
|
11125
|
+
operator: "and",
|
|
11126
|
+
value: [
|
|
11127
|
+
{
|
|
11128
|
+
field: "regarding.uid",
|
|
11129
|
+
operator: "eq",
|
|
11130
|
+
value: uid
|
|
11131
|
+
}
|
|
11132
|
+
]
|
|
11037
11133
|
}
|
|
11038
11134
|
]
|
|
11039
|
-
}
|
|
11135
|
+
}
|
|
11040
11136
|
}
|
|
11041
|
-
}
|
|
11042
|
-
|
|
11137
|
+
}),
|
|
11138
|
+
[columns, uid]
|
|
11139
|
+
);
|
|
11043
11140
|
const { tableProps } = useEagleTable(params);
|
|
11044
11141
|
const component = useContext(ComponentContext);
|
|
11045
11142
|
const Table2 = component.Table || Table$1;
|
|
@@ -11047,18 +11144,12 @@ const EventsTable = ({ uid }) => {
|
|
|
11047
11144
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
11048
11145
|
WidgetErrorContent,
|
|
11049
11146
|
{
|
|
11050
|
-
errorText: i18n2.t("dovetail.no_resource", { kind: i18n2.t("dovetail.event") })
|
|
11147
|
+
errorText: i18n2.t("dovetail.no_resource", { kind: i18n2.t("dovetail.event") }),
|
|
11148
|
+
type: ErrorContentType.List
|
|
11051
11149
|
}
|
|
11052
11150
|
);
|
|
11053
11151
|
}
|
|
11054
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
11055
|
-
Table2,
|
|
11056
|
-
{
|
|
11057
|
-
...tableProps,
|
|
11058
|
-
tableKey: "events",
|
|
11059
|
-
showMenuColumn: false
|
|
11060
|
-
}
|
|
11061
|
-
);
|
|
11152
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(Table2, { ...tableProps, tableKey: "events", showMenuColumn: false });
|
|
11062
11153
|
};
|
|
11063
11154
|
const index_mvy4dx = "";
|
|
11064
11155
|
const ImageWrapperStyle = "i1u1f5zp";
|
|
@@ -11150,7 +11241,10 @@ const IngressRulesTable = ({ ingress }) => {
|
|
|
11150
11241
|
apiVersion: "v1"
|
|
11151
11242
|
}
|
|
11152
11243
|
});
|
|
11153
|
-
const flattenedRules = useMemo(
|
|
11244
|
+
const flattenedRules = useMemo(
|
|
11245
|
+
() => (serviceData == null ? void 0 : serviceData.data) ? ingress.getFlattenedRules(serviceData == null ? void 0 : serviceData.data) : [],
|
|
11246
|
+
[serviceData == null ? void 0 : serviceData.data, ingress]
|
|
11247
|
+
);
|
|
11154
11248
|
const rows = useMemo(() => {
|
|
11155
11249
|
return addId(flattenedRules || [], "fullPath");
|
|
11156
11250
|
}, [flattenedRules]);
|
|
@@ -11181,7 +11275,7 @@ const IngressRulesTable = ({ ingress }) => {
|
|
|
11181
11275
|
key: "serviceName",
|
|
11182
11276
|
display: true,
|
|
11183
11277
|
dataIndex: "serviceName",
|
|
11184
|
-
title: t2("dovetail.
|
|
11278
|
+
title: t2("dovetail.target_service"),
|
|
11185
11279
|
sortable: true,
|
|
11186
11280
|
width: 160,
|
|
11187
11281
|
render: (serviceName, record) => {
|
|
@@ -11192,14 +11286,14 @@ const IngressRulesTable = ({ ingress }) => {
|
|
|
11192
11286
|
namespace: ingress.metadata.namespace || "default",
|
|
11193
11287
|
name: serviceName
|
|
11194
11288
|
}
|
|
11195
|
-
) :
|
|
11289
|
+
) : /* @__PURE__ */ jsxRuntimeExports.jsx(ValueDisplay, { value: "" });
|
|
11196
11290
|
}
|
|
11197
11291
|
},
|
|
11198
11292
|
{
|
|
11199
11293
|
key: "servicePort",
|
|
11200
11294
|
display: true,
|
|
11201
11295
|
dataIndex: "servicePort",
|
|
11202
|
-
title: t2("dovetail.
|
|
11296
|
+
title: t2("dovetail.target_service_port"),
|
|
11203
11297
|
width: 120,
|
|
11204
11298
|
sortable: true
|
|
11205
11299
|
},
|
|
@@ -11207,11 +11301,13 @@ const IngressRulesTable = ({ ingress }) => {
|
|
|
11207
11301
|
key: "secret",
|
|
11208
11302
|
display: true,
|
|
11209
11303
|
dataIndex: "host",
|
|
11210
|
-
title: "
|
|
11304
|
+
title: t2("dovetail.cert"),
|
|
11211
11305
|
width: 160,
|
|
11212
11306
|
render(host2) {
|
|
11213
11307
|
var _a, _b;
|
|
11214
|
-
const secretName = (_b = (_a = ingress._rawYaml.spec.tls) == null ? void 0 : _a.find(
|
|
11308
|
+
const secretName = (_b = (_a = ingress._rawYaml.spec.tls) == null ? void 0 : _a.find(
|
|
11309
|
+
({ hosts }) => hosts == null ? void 0 : hosts.includes(host2)
|
|
11310
|
+
)) == null ? void 0 : _b.secretName;
|
|
11215
11311
|
return secretName ? /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
11216
11312
|
ResourceLink,
|
|
11217
11313
|
{
|
|
@@ -11238,7 +11334,7 @@ const IngressRulesTable = ({ ingress }) => {
|
|
|
11238
11334
|
WidgetErrorContent,
|
|
11239
11335
|
{
|
|
11240
11336
|
errorText: t2("dovetail.no_resource", { kind: t2("dovetail.rule") }),
|
|
11241
|
-
type: ErrorContentType.
|
|
11337
|
+
type: ErrorContentType.List
|
|
11242
11338
|
}
|
|
11243
11339
|
);
|
|
11244
11340
|
}
|
|
@@ -11268,7 +11364,8 @@ const KeyValue = (props) => {
|
|
|
11268
11364
|
const {
|
|
11269
11365
|
data: data2 = {},
|
|
11270
11366
|
hideSecret,
|
|
11271
|
-
empty: empty2
|
|
11367
|
+
empty: empty2,
|
|
11368
|
+
errorContent = ErrorContentType.List
|
|
11272
11369
|
} = props;
|
|
11273
11370
|
const {
|
|
11274
11371
|
t: t2
|
|
@@ -11286,7 +11383,7 @@ const KeyValue = (props) => {
|
|
|
11286
11383
|
if (!result.length) {
|
|
11287
11384
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(WidgetErrorContent, {
|
|
11288
11385
|
errorText: empty2 || t2("dovetail.empty"),
|
|
11289
|
-
type:
|
|
11386
|
+
type: errorContent
|
|
11290
11387
|
});
|
|
11291
11388
|
}
|
|
11292
11389
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, {
|
|
@@ -11334,9 +11431,7 @@ function KeyValueAnnotation(props) {
|
|
|
11334
11431
|
}) : null]
|
|
11335
11432
|
});
|
|
11336
11433
|
}
|
|
11337
|
-
const
|
|
11338
|
-
const ButtonStyle$1 = "b11tbgf7";
|
|
11339
|
-
const GroupStyle$1 = "gtbyh5g";
|
|
11434
|
+
const KeyValueSecret_ltbqs = "";
|
|
11340
11435
|
function KeyValueSecret(props) {
|
|
11341
11436
|
const {
|
|
11342
11437
|
data: data2 = {}
|
|
@@ -11346,26 +11441,23 @@ function KeyValueSecret(props) {
|
|
|
11346
11441
|
} = useTranslation();
|
|
11347
11442
|
const [hideSecret, setHideSecret] = useState(true);
|
|
11348
11443
|
const toggleButton = Object.keys(data2).length ? /* @__PURE__ */ jsxRuntimeExports.jsx(Button, {
|
|
11349
|
-
type: "quiet",
|
|
11350
11444
|
prefixIcon: /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, {
|
|
11351
11445
|
src: hideSecret ? ViewEye16GradientGrayIcon : EntityFilterIgnoreGradient16GrayIcon
|
|
11352
11446
|
}),
|
|
11353
11447
|
onClick: () => setHideSecret((v) => !v),
|
|
11354
|
-
className: ButtonStyle$1,
|
|
11355
11448
|
size: "small",
|
|
11449
|
+
className: "c11tbgf7",
|
|
11356
11450
|
children: hideSecret ? i18n2.t("dovetail.show_data_value") : i18n2.t("dovetail.hide_data_value")
|
|
11357
11451
|
}) : null;
|
|
11358
|
-
return /* @__PURE__ */ jsxRuntimeExports.
|
|
11359
|
-
|
|
11360
|
-
|
|
11361
|
-
className: GroupStyle$1,
|
|
11362
|
-
children: /* @__PURE__ */ jsxRuntimeExports.jsx(KeyValue, {
|
|
11452
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", {
|
|
11453
|
+
className: "ctbyh5g",
|
|
11454
|
+
children: [toggleButton, /* @__PURE__ */ jsxRuntimeExports.jsx(KeyValue, {
|
|
11363
11455
|
data: data2,
|
|
11364
11456
|
hideSecret,
|
|
11365
11457
|
empty: i18n2.t("dovetail.no_resource", {
|
|
11366
11458
|
kind: i18n2.t("dovetail.data")
|
|
11367
11459
|
})
|
|
11368
|
-
})
|
|
11460
|
+
})]
|
|
11369
11461
|
});
|
|
11370
11462
|
}
|
|
11371
11463
|
function isUtf8(buffer) {
|
|
@@ -11512,6 +11604,37 @@ function _KeyValueTableForm(props, ref) {
|
|
|
11512
11604
|
const tableFormRef = useRef(null);
|
|
11513
11605
|
const [_value, _setValue] = useState(value2 || defaultValue);
|
|
11514
11606
|
const [forceUpdateCount, setForceUpdateCount] = useState(0);
|
|
11607
|
+
const finalExtraAction = useMemo(() => {
|
|
11608
|
+
if (extraAction) {
|
|
11609
|
+
return extraAction;
|
|
11610
|
+
}
|
|
11611
|
+
if (canImportFromFile) {
|
|
11612
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(Upload, {
|
|
11613
|
+
multiple: true,
|
|
11614
|
+
showUploadList: false,
|
|
11615
|
+
onChange: async (e2) => {
|
|
11616
|
+
var _a;
|
|
11617
|
+
const fileValue = {
|
|
11618
|
+
key: e2.file.name,
|
|
11619
|
+
value: await readFileAsBase64(e2.file.originFileObj)
|
|
11620
|
+
};
|
|
11621
|
+
let newValue = [..._value, fileValue];
|
|
11622
|
+
if (_value.some((v) => v.key === fileValue.key)) {
|
|
11623
|
+
newValue = _value.map((v) => v.key === fileValue.key ? fileValue : v);
|
|
11624
|
+
}
|
|
11625
|
+
_setValue(newValue);
|
|
11626
|
+
(_a = tableFormRef.current) == null ? void 0 : _a.setData(newValue);
|
|
11627
|
+
onChange == null ? void 0 : onChange(newValue);
|
|
11628
|
+
},
|
|
11629
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(Button, {
|
|
11630
|
+
type: "link",
|
|
11631
|
+
size: "small",
|
|
11632
|
+
children: t2("dovetail.import_from_file")
|
|
11633
|
+
})
|
|
11634
|
+
});
|
|
11635
|
+
}
|
|
11636
|
+
return null;
|
|
11637
|
+
}, [canImportFromFile, t2, _value, onChange, extraAction]);
|
|
11515
11638
|
const validate = useCallback(() => {
|
|
11516
11639
|
return new Promise((resolve) => {
|
|
11517
11640
|
var _a;
|
|
@@ -11632,7 +11755,7 @@ function _KeyValueTableForm(props, ref) {
|
|
|
11632
11755
|
rowAddConfig: {
|
|
11633
11756
|
addible: true,
|
|
11634
11757
|
text: () => addButtonText,
|
|
11635
|
-
extraAction
|
|
11758
|
+
extraAction: finalExtraAction
|
|
11636
11759
|
},
|
|
11637
11760
|
defaultData: _value,
|
|
11638
11761
|
row: {
|
|
@@ -11647,29 +11770,7 @@ function _KeyValueTableForm(props, ref) {
|
|
|
11647
11770
|
hideEmptyTable: true
|
|
11648
11771
|
}), isHideLabelFormatPopover ? null : /* @__PURE__ */ jsxRuntimeExports.jsx(LabelFormatPopover, {
|
|
11649
11772
|
noValueValidation
|
|
11650
|
-
})
|
|
11651
|
-
multiple: false,
|
|
11652
|
-
showUploadList: false,
|
|
11653
|
-
onChange: async (e2) => {
|
|
11654
|
-
var _a;
|
|
11655
|
-
const fileValue = {
|
|
11656
|
-
key: e2.file.name,
|
|
11657
|
-
value: await readFileAsBase64(e2.file.originFileObj)
|
|
11658
|
-
};
|
|
11659
|
-
let newValue = [..._value, fileValue];
|
|
11660
|
-
if (_value.some((v) => v.key === fileValue.key)) {
|
|
11661
|
-
newValue = _value.map((v) => v.key === fileValue.key ? fileValue : v);
|
|
11662
|
-
}
|
|
11663
|
-
_setValue(newValue);
|
|
11664
|
-
(_a = tableFormRef.current) == null ? void 0 : _a.setData(newValue);
|
|
11665
|
-
onChange == null ? void 0 : onChange(newValue);
|
|
11666
|
-
},
|
|
11667
|
-
children: /* @__PURE__ */ jsxRuntimeExports.jsx(Button, {
|
|
11668
|
-
type: "link",
|
|
11669
|
-
size: "small",
|
|
11670
|
-
children: t2("dovetail.import_from_file")
|
|
11671
|
-
})
|
|
11672
|
-
}) : null]
|
|
11773
|
+
})]
|
|
11673
11774
|
});
|
|
11674
11775
|
}
|
|
11675
11776
|
const KeyValueTableForm = React.forwardRef(_KeyValueTableForm);
|
|
@@ -12289,6 +12390,7 @@ function WorkloadReplicas({
|
|
|
12289
12390
|
})]
|
|
12290
12391
|
});
|
|
12291
12392
|
}
|
|
12393
|
+
const fields_1lap7d5 = "";
|
|
12292
12394
|
var AreaType = /* @__PURE__ */ ((AreaType2) => {
|
|
12293
12395
|
AreaType2["Inline"] = "Inline";
|
|
12294
12396
|
AreaType2["Grid"] = "Grid";
|
|
@@ -12301,7 +12403,10 @@ const ImageField = (i18n2) => {
|
|
|
12301
12403
|
title: i18n2.t("dovetail.image"),
|
|
12302
12404
|
path: ["imageNames"],
|
|
12303
12405
|
renderContent(value2) {
|
|
12304
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(ImageNames, {
|
|
12406
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(ImageNames, {
|
|
12407
|
+
value: value2,
|
|
12408
|
+
breakLine: false
|
|
12409
|
+
});
|
|
12305
12410
|
}
|
|
12306
12411
|
};
|
|
12307
12412
|
};
|
|
@@ -12310,7 +12415,10 @@ const ReplicaField = () => {
|
|
|
12310
12415
|
key: "Replicas",
|
|
12311
12416
|
path: [],
|
|
12312
12417
|
renderContent: (_, record) => {
|
|
12313
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(WorkloadReplicas, {
|
|
12418
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(WorkloadReplicas, {
|
|
12419
|
+
record,
|
|
12420
|
+
editable: true
|
|
12421
|
+
});
|
|
12314
12422
|
}
|
|
12315
12423
|
};
|
|
12316
12424
|
};
|
|
@@ -12319,7 +12427,9 @@ const ConditionsField = () => {
|
|
|
12319
12427
|
key: "Conditions",
|
|
12320
12428
|
path: ["status", "conditions"],
|
|
12321
12429
|
renderContent: (value2) => {
|
|
12322
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(ConditionsTable, {
|
|
12430
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(ConditionsTable, {
|
|
12431
|
+
conditions: value2
|
|
12432
|
+
});
|
|
12323
12433
|
}
|
|
12324
12434
|
};
|
|
12325
12435
|
};
|
|
@@ -12328,7 +12438,9 @@ const NodeTaintsField = () => {
|
|
|
12328
12438
|
key: "NodeTaints",
|
|
12329
12439
|
path: ["spec", "taints"],
|
|
12330
12440
|
renderContent: (value2) => {
|
|
12331
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(NodeTaintsTable, {
|
|
12441
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(NodeTaintsTable, {
|
|
12442
|
+
taints: value2
|
|
12443
|
+
});
|
|
12332
12444
|
}
|
|
12333
12445
|
};
|
|
12334
12446
|
};
|
|
@@ -12338,16 +12450,13 @@ const PodsField = () => {
|
|
|
12338
12450
|
path: [],
|
|
12339
12451
|
renderContent: (_, record) => {
|
|
12340
12452
|
var _a, _b;
|
|
12341
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
12342
|
-
|
|
12343
|
-
|
|
12344
|
-
|
|
12345
|
-
|
|
12346
|
-
|
|
12347
|
-
|
|
12348
|
-
hideToolbar: true
|
|
12349
|
-
}
|
|
12350
|
-
);
|
|
12453
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(WorkloadPodsTable, {
|
|
12454
|
+
selector: (_b = (_a = record.metadata.relations) == null ? void 0 : _a.find((r2) => {
|
|
12455
|
+
return r2.kind === "Pod" && r2.type === "creates";
|
|
12456
|
+
})) == null ? void 0 : _b.selector,
|
|
12457
|
+
namespace: record.metadata.namespace,
|
|
12458
|
+
hideToolbar: true
|
|
12459
|
+
});
|
|
12351
12460
|
}
|
|
12352
12461
|
};
|
|
12353
12462
|
};
|
|
@@ -12357,19 +12466,16 @@ const JobsField = () => {
|
|
|
12357
12466
|
path: [],
|
|
12358
12467
|
renderContent: (_, record) => {
|
|
12359
12468
|
var _a, _b, _c;
|
|
12360
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
12361
|
-
|
|
12362
|
-
|
|
12363
|
-
|
|
12364
|
-
|
|
12365
|
-
|
|
12366
|
-
|
|
12367
|
-
|
|
12368
|
-
|
|
12369
|
-
|
|
12370
|
-
hideToolBar: true
|
|
12371
|
-
}
|
|
12372
|
-
);
|
|
12469
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(CronjobJobsTable, {
|
|
12470
|
+
owner: {
|
|
12471
|
+
apiVersion: record.apiVersion || "",
|
|
12472
|
+
kind: record.kind || "",
|
|
12473
|
+
name: ((_a = record.metadata) == null ? void 0 : _a.name) || "",
|
|
12474
|
+
namespace: ((_b = record.metadata) == null ? void 0 : _b.namespace) || "",
|
|
12475
|
+
uid: ((_c = record.metadata) == null ? void 0 : _c.uid) || ""
|
|
12476
|
+
},
|
|
12477
|
+
hideToolBar: true
|
|
12478
|
+
});
|
|
12373
12479
|
}
|
|
12374
12480
|
};
|
|
12375
12481
|
};
|
|
@@ -12378,13 +12484,15 @@ const DataField = (i18n2) => {
|
|
|
12378
12484
|
key: "data",
|
|
12379
12485
|
path: ["data"],
|
|
12380
12486
|
renderContent: (val) => {
|
|
12381
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
12382
|
-
|
|
12383
|
-
{
|
|
12487
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
|
|
12488
|
+
className: "c91cpym",
|
|
12489
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(KeyValue, {
|
|
12384
12490
|
data: val,
|
|
12385
|
-
empty: i18n2.t("dovetail.no_resource", {
|
|
12386
|
-
|
|
12387
|
-
|
|
12491
|
+
empty: i18n2.t("dovetail.no_resource", {
|
|
12492
|
+
kind: i18n2.t("dovetail.data")
|
|
12493
|
+
})
|
|
12494
|
+
})
|
|
12495
|
+
});
|
|
12388
12496
|
}
|
|
12389
12497
|
};
|
|
12390
12498
|
};
|
|
@@ -12397,7 +12505,12 @@ const SecretDataField = () => {
|
|
|
12397
12505
|
for (const key2 in val) {
|
|
12398
12506
|
decodeVal[key2] = atob(val[key2]);
|
|
12399
12507
|
}
|
|
12400
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
12508
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
|
|
12509
|
+
className: "ca9k82k",
|
|
12510
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(KeyValueSecret, {
|
|
12511
|
+
data: decodeVal
|
|
12512
|
+
})
|
|
12513
|
+
});
|
|
12401
12514
|
}
|
|
12402
12515
|
};
|
|
12403
12516
|
};
|
|
@@ -12408,7 +12521,9 @@ const StartTimeField = (i18n2) => {
|
|
|
12408
12521
|
title: i18n2.t("dovetail.started"),
|
|
12409
12522
|
path: ["status", "startTime"],
|
|
12410
12523
|
renderContent(value2) {
|
|
12411
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(Time, {
|
|
12524
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(Time, {
|
|
12525
|
+
date: value2
|
|
12526
|
+
});
|
|
12412
12527
|
}
|
|
12413
12528
|
};
|
|
12414
12529
|
};
|
|
@@ -12442,16 +12557,13 @@ const ServicePodsField = () => {
|
|
|
12442
12557
|
path: [],
|
|
12443
12558
|
renderContent: (_, record) => {
|
|
12444
12559
|
var _a, _b, _c;
|
|
12445
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
12446
|
-
|
|
12447
|
-
|
|
12448
|
-
|
|
12449
|
-
|
|
12450
|
-
|
|
12451
|
-
|
|
12452
|
-
hideToolbar: true
|
|
12453
|
-
}
|
|
12454
|
-
);
|
|
12560
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(WorkloadPodsTable, {
|
|
12561
|
+
selector: (_b = (_a = record.metadata.relations) == null ? void 0 : _a.find((r2) => {
|
|
12562
|
+
return r2.kind === "Pod" && r2.type === "selects";
|
|
12563
|
+
})) == null ? void 0 : _b.selector,
|
|
12564
|
+
namespace: (_c = record.metadata) == null ? void 0 : _c.namespace,
|
|
12565
|
+
hideToolbar: true
|
|
12566
|
+
});
|
|
12455
12567
|
}
|
|
12456
12568
|
};
|
|
12457
12569
|
};
|
|
@@ -12460,17 +12572,32 @@ const IngressRulesTableTabField = () => {
|
|
|
12460
12572
|
key: "rules",
|
|
12461
12573
|
path: ["spec", "rules"],
|
|
12462
12574
|
renderContent: (_, record) => {
|
|
12463
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
12575
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
|
|
12576
|
+
className: "c1k4htrr",
|
|
12577
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(IngressRulesTable, {
|
|
12578
|
+
ingress: record
|
|
12579
|
+
})
|
|
12580
|
+
});
|
|
12464
12581
|
}
|
|
12465
12582
|
};
|
|
12466
12583
|
};
|
|
12467
|
-
const EventsTableTabField = (
|
|
12584
|
+
const EventsTableTabField = ({
|
|
12585
|
+
size
|
|
12586
|
+
}) => {
|
|
12468
12587
|
return {
|
|
12469
12588
|
key: "event",
|
|
12470
12589
|
path: [],
|
|
12471
12590
|
renderContent: (_, record) => {
|
|
12472
12591
|
var _a;
|
|
12473
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
|
|
12592
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
|
|
12593
|
+
style: {
|
|
12594
|
+
padding: size === "small" ? "0 12px" : "0 24px",
|
|
12595
|
+
height: "100%"
|
|
12596
|
+
},
|
|
12597
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(EventsTable, {
|
|
12598
|
+
uid: (_a = record.metadata) == null ? void 0 : _a.uid
|
|
12599
|
+
})
|
|
12600
|
+
});
|
|
12474
12601
|
}
|
|
12475
12602
|
};
|
|
12476
12603
|
};
|
|
@@ -12486,7 +12613,9 @@ const AgeField = (i18n2) => ({
|
|
|
12486
12613
|
title: i18n2.t("dovetail.created_time"),
|
|
12487
12614
|
path: ["metadata", "creationTimestamp"],
|
|
12488
12615
|
renderContent(value2) {
|
|
12489
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(Time, {
|
|
12616
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(Time, {
|
|
12617
|
+
date: new Date(value2)
|
|
12618
|
+
});
|
|
12490
12619
|
}
|
|
12491
12620
|
});
|
|
12492
12621
|
const LabelsField = (i18n2) => ({
|
|
@@ -12497,7 +12626,9 @@ const LabelsField = (i18n2) => ({
|
|
|
12497
12626
|
if (!value2) {
|
|
12498
12627
|
return "-";
|
|
12499
12628
|
}
|
|
12500
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(Tags, {
|
|
12629
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(Tags, {
|
|
12630
|
+
value: value2
|
|
12631
|
+
});
|
|
12501
12632
|
}
|
|
12502
12633
|
});
|
|
12503
12634
|
const AnnotationsField = (i18n2) => ({
|
|
@@ -12505,7 +12636,10 @@ const AnnotationsField = (i18n2) => ({
|
|
|
12505
12636
|
title: i18n2.t("dovetail.annotation"),
|
|
12506
12637
|
path: ["metadata", "annotations"],
|
|
12507
12638
|
renderContent: (value2) => {
|
|
12508
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(KeyValueAnnotation, {
|
|
12639
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(KeyValueAnnotation, {
|
|
12640
|
+
data: value2,
|
|
12641
|
+
expandable: true
|
|
12642
|
+
});
|
|
12509
12643
|
}
|
|
12510
12644
|
});
|
|
12511
12645
|
const ServiceInnerClusterAccessField = () => ({
|
|
@@ -12514,23 +12648,22 @@ const ServiceInnerClusterAccessField = () => ({
|
|
|
12514
12648
|
title: /* @__PURE__ */ jsxRuntimeExports.jsx(ServiceInClusterAccessTitle, {}),
|
|
12515
12649
|
path: [],
|
|
12516
12650
|
renderContent: (_, record) => {
|
|
12517
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(ServiceInClusterAccessComponent, {
|
|
12651
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(ServiceInClusterAccessComponent, {
|
|
12652
|
+
service: record
|
|
12653
|
+
});
|
|
12518
12654
|
}
|
|
12519
12655
|
});
|
|
12520
12656
|
const ServiceOutClusterAccessField = (clusterVip) => ({
|
|
12521
|
-
key: "
|
|
12657
|
+
key: "outClusterAccess",
|
|
12522
12658
|
col: 12,
|
|
12523
12659
|
title: /* @__PURE__ */ jsxRuntimeExports.jsx(ServiceOutClusterAccessTitle, {}),
|
|
12524
12660
|
path: [],
|
|
12525
12661
|
renderContent: (_, record) => {
|
|
12526
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
12527
|
-
|
|
12528
|
-
|
|
12529
|
-
|
|
12530
|
-
|
|
12531
|
-
clusterVip
|
|
12532
|
-
}
|
|
12533
|
-
);
|
|
12662
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(ServiceOutClusterAccessComponent, {
|
|
12663
|
+
service: record,
|
|
12664
|
+
breakLine: false,
|
|
12665
|
+
clusterVip
|
|
12666
|
+
});
|
|
12534
12667
|
}
|
|
12535
12668
|
});
|
|
12536
12669
|
const PodSelectorField = () => ({
|
|
@@ -12539,14 +12672,24 @@ const PodSelectorField = () => ({
|
|
|
12539
12672
|
renderContent: (_, resource) => {
|
|
12540
12673
|
const spec = resource._rawYaml.spec;
|
|
12541
12674
|
const selector = spec && ("selector" in spec && spec.selector || "podSelector" in spec && spec.podSelector.matchLabels);
|
|
12542
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(PodSelectorTable, {
|
|
12675
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(PodSelectorTable, {
|
|
12676
|
+
podSelectors: selector || {}
|
|
12677
|
+
});
|
|
12543
12678
|
}
|
|
12544
12679
|
});
|
|
12545
12680
|
const PortsTableField = () => ({
|
|
12546
12681
|
key: "ports",
|
|
12547
12682
|
path: [],
|
|
12548
12683
|
renderContent: (_, service) => {
|
|
12549
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
12684
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
|
|
12685
|
+
style: {
|
|
12686
|
+
padding: "0 24px",
|
|
12687
|
+
height: "100%"
|
|
12688
|
+
},
|
|
12689
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(PortsTable, {
|
|
12690
|
+
service
|
|
12691
|
+
})
|
|
12692
|
+
});
|
|
12550
12693
|
}
|
|
12551
12694
|
});
|
|
12552
12695
|
const DurationField = (i18n2) => {
|
|
@@ -12556,7 +12699,9 @@ const DurationField = (i18n2) => {
|
|
|
12556
12699
|
path: ["duration"],
|
|
12557
12700
|
title: i18n2.t("dovetail.duration"),
|
|
12558
12701
|
renderContent: (v) => {
|
|
12559
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(DurationTime, {
|
|
12702
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(DurationTime, {
|
|
12703
|
+
value: v
|
|
12704
|
+
});
|
|
12560
12705
|
}
|
|
12561
12706
|
};
|
|
12562
12707
|
};
|
|
@@ -12573,26 +12718,21 @@ const StorageClassPvField = () => {
|
|
|
12573
12718
|
key: "pvs",
|
|
12574
12719
|
path: ["pvs"],
|
|
12575
12720
|
renderContent: (_, sc) => {
|
|
12576
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
12577
|
-
|
|
12578
|
-
{
|
|
12579
|
-
|
|
12580
|
-
|
|
12581
|
-
|
|
12582
|
-
|
|
12583
|
-
|
|
12584
|
-
|
|
12585
|
-
|
|
12586
|
-
|
|
12587
|
-
|
|
12588
|
-
return sc.filterPV(pv2, (_a = sc.metadata) == null ? void 0 : _a.name);
|
|
12589
|
-
}
|
|
12590
|
-
}
|
|
12591
|
-
]
|
|
12592
|
-
}
|
|
12721
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(ResourceTable, {
|
|
12722
|
+
resource: "persistentvolumes",
|
|
12723
|
+
useTableParams: {
|
|
12724
|
+
filters: {
|
|
12725
|
+
permanent: [{
|
|
12726
|
+
field: "",
|
|
12727
|
+
value: "",
|
|
12728
|
+
fn(pv2) {
|
|
12729
|
+
var _a;
|
|
12730
|
+
return sc.filterPV(pv2, (_a = sc.metadata) == null ? void 0 : _a.name);
|
|
12731
|
+
}
|
|
12732
|
+
}]
|
|
12593
12733
|
}
|
|
12594
12734
|
}
|
|
12595
|
-
);
|
|
12735
|
+
});
|
|
12596
12736
|
}
|
|
12597
12737
|
};
|
|
12598
12738
|
};
|
|
@@ -12603,7 +12743,10 @@ const PVCapacityField = (i18n2) => {
|
|
|
12603
12743
|
path: ["spec", "capacity", "storage"],
|
|
12604
12744
|
title: i18n2.t("dovetail.capacity"),
|
|
12605
12745
|
renderContent(value2) {
|
|
12606
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(Units.Byte, {
|
|
12746
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(Units.Byte, {
|
|
12747
|
+
rawValue: parseSi(value2),
|
|
12748
|
+
decimals: 2
|
|
12749
|
+
});
|
|
12607
12750
|
}
|
|
12608
12751
|
};
|
|
12609
12752
|
};
|
|
@@ -12614,7 +12757,10 @@ const PVCStorageField = (i18n2) => {
|
|
|
12614
12757
|
path: ["spec", "resources", "requests", "storage"],
|
|
12615
12758
|
title: i18n2.t("dovetail.distributed"),
|
|
12616
12759
|
renderContent(value2, pvc2) {
|
|
12617
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(PVCDistributeStorage, {
|
|
12760
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(PVCDistributeStorage, {
|
|
12761
|
+
pvc: pvc2,
|
|
12762
|
+
editable: true
|
|
12763
|
+
});
|
|
12618
12764
|
}
|
|
12619
12765
|
};
|
|
12620
12766
|
};
|
|
@@ -12625,14 +12771,11 @@ const PVRefField = (i18n2) => {
|
|
|
12625
12771
|
path: ["pv"],
|
|
12626
12772
|
title: i18n2.t("dovetail.pv"),
|
|
12627
12773
|
renderContent(value2) {
|
|
12628
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
12629
|
-
|
|
12630
|
-
|
|
12631
|
-
|
|
12632
|
-
|
|
12633
|
-
name: value2
|
|
12634
|
-
}
|
|
12635
|
-
);
|
|
12774
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(ResourceLink, {
|
|
12775
|
+
resourceName: "persistentvolumes",
|
|
12776
|
+
namespace: "",
|
|
12777
|
+
name: value2
|
|
12778
|
+
});
|
|
12636
12779
|
}
|
|
12637
12780
|
};
|
|
12638
12781
|
};
|
|
@@ -12643,7 +12786,11 @@ const PVStorageClassField = (i18n2) => {
|
|
|
12643
12786
|
path: ["spec", "storageClassName"],
|
|
12644
12787
|
title: i18n2.t("dovetail.storage_class"),
|
|
12645
12788
|
renderContent(value2) {
|
|
12646
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(ResourceLink, {
|
|
12789
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(ResourceLink, {
|
|
12790
|
+
resourceName: "storageclasses",
|
|
12791
|
+
namespace: "",
|
|
12792
|
+
name: value2
|
|
12793
|
+
});
|
|
12647
12794
|
}
|
|
12648
12795
|
};
|
|
12649
12796
|
};
|
|
@@ -12654,7 +12801,10 @@ const PVPhaseField = (i18n2) => {
|
|
|
12654
12801
|
path: ["stateDisplay"],
|
|
12655
12802
|
title: i18n2.t("dovetail.state"),
|
|
12656
12803
|
renderContent(value2) {
|
|
12657
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(StateTag, {
|
|
12804
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(StateTag, {
|
|
12805
|
+
state: value2,
|
|
12806
|
+
hideBackground: true
|
|
12807
|
+
});
|
|
12658
12808
|
}
|
|
12659
12809
|
};
|
|
12660
12810
|
};
|
|
@@ -12665,7 +12815,9 @@ const PVVolumeModeField = (i18n2) => {
|
|
|
12665
12815
|
path: ["spec", "volumeMode"],
|
|
12666
12816
|
title: i18n2.t("dovetail.volume_mode"),
|
|
12667
12817
|
renderContent(value2) {
|
|
12668
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(PVVolumeModeDisplay, {
|
|
12818
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(PVVolumeModeDisplay, {
|
|
12819
|
+
value: value2
|
|
12820
|
+
});
|
|
12669
12821
|
}
|
|
12670
12822
|
};
|
|
12671
12823
|
};
|
|
@@ -12686,22 +12838,17 @@ const PVCPodsField = () => {
|
|
|
12686
12838
|
path: [],
|
|
12687
12839
|
renderContent: (_, record) => {
|
|
12688
12840
|
var _a;
|
|
12689
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
12690
|
-
|
|
12691
|
-
|
|
12692
|
-
|
|
12693
|
-
var
|
|
12694
|
-
return
|
|
12695
|
-
|
|
12696
|
-
|
|
12697
|
-
|
|
12698
|
-
|
|
12699
|
-
|
|
12700
|
-
},
|
|
12701
|
-
namespace: (_a = record.metadata) == null ? void 0 : _a.namespace,
|
|
12702
|
-
hideToolbar: true
|
|
12703
|
-
}
|
|
12704
|
-
);
|
|
12841
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(WorkloadPodsTable, {
|
|
12842
|
+
filter: (item) => {
|
|
12843
|
+
var _a2, _b;
|
|
12844
|
+
return !!((_b = (_a2 = item.spec) == null ? void 0 : _a2.volumes) == null ? void 0 : _b.some((v) => {
|
|
12845
|
+
var _a3, _b2;
|
|
12846
|
+
return ((_a3 = v.persistentVolumeClaim) == null ? void 0 : _a3.claimName) === ((_b2 = record.metadata) == null ? void 0 : _b2.name);
|
|
12847
|
+
}));
|
|
12848
|
+
},
|
|
12849
|
+
namespace: (_a = record.metadata) == null ? void 0 : _a.namespace,
|
|
12850
|
+
hideToolbar: true
|
|
12851
|
+
});
|
|
12705
12852
|
}
|
|
12706
12853
|
};
|
|
12707
12854
|
};
|
|
@@ -12712,15 +12859,14 @@ const PVCRefField = (i18n2) => {
|
|
|
12712
12859
|
path: ["pvc"],
|
|
12713
12860
|
title: i18n2.t("dovetail.pvc"),
|
|
12714
12861
|
renderContent(value2, pv2) {
|
|
12715
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
12716
|
-
|
|
12717
|
-
|
|
12718
|
-
|
|
12719
|
-
|
|
12720
|
-
|
|
12721
|
-
query: { uid: pv2.pvcUid }
|
|
12862
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(ResourceLink, {
|
|
12863
|
+
resourceName: "persistentvolumeclaims",
|
|
12864
|
+
namespace: pv2.pvcNamespace || "default",
|
|
12865
|
+
name: value2,
|
|
12866
|
+
query: {
|
|
12867
|
+
uid: pv2.pvcUid
|
|
12722
12868
|
}
|
|
12723
|
-
);
|
|
12869
|
+
});
|
|
12724
12870
|
}
|
|
12725
12871
|
};
|
|
12726
12872
|
};
|
|
@@ -12774,10 +12920,71 @@ const ResourceTableField = (resource, useTableParams) => {
|
|
|
12774
12920
|
key: resource,
|
|
12775
12921
|
path: [],
|
|
12776
12922
|
renderContent() {
|
|
12777
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(ResourceTable, {
|
|
12923
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(ResourceTable, {
|
|
12924
|
+
resource,
|
|
12925
|
+
useTableParams
|
|
12926
|
+
});
|
|
12778
12927
|
}
|
|
12779
12928
|
};
|
|
12780
12929
|
};
|
|
12930
|
+
const PodCountOfJobField = (i18n2) => {
|
|
12931
|
+
return {
|
|
12932
|
+
key: "podCount",
|
|
12933
|
+
path: [],
|
|
12934
|
+
col: 12,
|
|
12935
|
+
title: /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip, {
|
|
12936
|
+
title: i18n2.t("dovetail.job_pod_count_tooltip"),
|
|
12937
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", {
|
|
12938
|
+
className: DashedTitleStyle,
|
|
12939
|
+
children: i18n2.t("dovetail.pod_num")
|
|
12940
|
+
})
|
|
12941
|
+
}),
|
|
12942
|
+
renderContent: (_, record) => {
|
|
12943
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("span", {
|
|
12944
|
+
children: record.podCountDisplay
|
|
12945
|
+
});
|
|
12946
|
+
}
|
|
12947
|
+
};
|
|
12948
|
+
};
|
|
12949
|
+
const index_15s69c5 = "";
|
|
12950
|
+
const ItemWrapperStyle = "i1hk9uwu";
|
|
12951
|
+
const LabelsAndAnnotationsShow = ({
|
|
12952
|
+
labels,
|
|
12953
|
+
annotations,
|
|
12954
|
+
size = "medium"
|
|
12955
|
+
}) => {
|
|
12956
|
+
const {
|
|
12957
|
+
i18n: sksI18n
|
|
12958
|
+
} = useTranslation();
|
|
12959
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", {
|
|
12960
|
+
className: "c1wn08fn",
|
|
12961
|
+
style: {
|
|
12962
|
+
padding: size === "small" ? "12px" : "16px 24px",
|
|
12963
|
+
gap: size === "small" ? "12px" : "16px"
|
|
12964
|
+
},
|
|
12965
|
+
children: [/* @__PURE__ */ jsxRuntimeExports.jsxs("div", {
|
|
12966
|
+
className: ItemWrapperStyle,
|
|
12967
|
+
children: [/* @__PURE__ */ jsxRuntimeExports.jsx("div", {
|
|
12968
|
+
className: SmallSectionTitleStyle,
|
|
12969
|
+
children: sksI18n.t("dovetail.label")
|
|
12970
|
+
}), Object.keys(labels || {}).length ? /* @__PURE__ */ jsxRuntimeExports.jsx(Tags, {
|
|
12971
|
+
value: labels
|
|
12972
|
+
}) : /* @__PURE__ */ jsxRuntimeExports.jsx(WidgetErrorContent, {
|
|
12973
|
+
errorText: sksI18n.t("dovetail.empty"),
|
|
12974
|
+
type: ErrorContentType.Card
|
|
12975
|
+
})]
|
|
12976
|
+
}), /* @__PURE__ */ jsxRuntimeExports.jsxs("div", {
|
|
12977
|
+
className: ItemWrapperStyle,
|
|
12978
|
+
children: [/* @__PURE__ */ jsxRuntimeExports.jsx("div", {
|
|
12979
|
+
className: SmallSectionTitleStyle,
|
|
12980
|
+
children: sksI18n.t("dovetail.annotation")
|
|
12981
|
+
}), /* @__PURE__ */ jsxRuntimeExports.jsx(KeyValue, {
|
|
12982
|
+
data: annotations,
|
|
12983
|
+
errorContent: ErrorContentType.Card
|
|
12984
|
+
})]
|
|
12985
|
+
})]
|
|
12986
|
+
});
|
|
12987
|
+
};
|
|
12781
12988
|
const baseNoReset = "";
|
|
12782
12989
|
const index_14irc29 = "";
|
|
12783
12990
|
const WrapperStyle$3 = "wve7dfm";
|
|
@@ -12973,22 +13180,30 @@ const PodLog = ({
|
|
|
12973
13180
|
})]
|
|
12974
13181
|
});
|
|
12975
13182
|
};
|
|
12976
|
-
const EventsTab = (
|
|
13183
|
+
const EventsTab = ({
|
|
13184
|
+
i18n: i18n2,
|
|
13185
|
+
size
|
|
13186
|
+
}) => ({
|
|
12977
13187
|
title: i18n2.t("dovetail.event"),
|
|
12978
13188
|
key: "events",
|
|
13189
|
+
background: "white",
|
|
12979
13190
|
groups: [
|
|
12980
13191
|
{
|
|
12981
13192
|
areas: [
|
|
12982
13193
|
{
|
|
12983
|
-
fields: [EventsTableTabField()]
|
|
13194
|
+
fields: [EventsTableTabField({ size })]
|
|
12984
13195
|
}
|
|
12985
13196
|
]
|
|
12986
13197
|
}
|
|
12987
13198
|
]
|
|
12988
13199
|
});
|
|
12989
|
-
const ConditionsTab = (
|
|
13200
|
+
const ConditionsTab = ({
|
|
13201
|
+
i18n: i18n2,
|
|
13202
|
+
size
|
|
13203
|
+
}) => ({
|
|
12990
13204
|
title: i18n2.t("dovetail.condition"),
|
|
12991
13205
|
key: "conditions",
|
|
13206
|
+
background: "white",
|
|
12992
13207
|
groups: [
|
|
12993
13208
|
{
|
|
12994
13209
|
areas: [
|
|
@@ -12998,10 +13213,16 @@ const ConditionsTab = (i18n2) => ({
|
|
|
12998
13213
|
key: "Conditions",
|
|
12999
13214
|
path: ["status", "conditions"],
|
|
13000
13215
|
renderContent: (value2) => {
|
|
13001
|
-
return /* @__PURE__ */ jsxRuntimeExports.
|
|
13002
|
-
|
|
13003
|
-
|
|
13004
|
-
|
|
13216
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
13217
|
+
"div",
|
|
13218
|
+
{
|
|
13219
|
+
style: {
|
|
13220
|
+
padding: size === "small" ? "0 12px" : "0 24px",
|
|
13221
|
+
height: "100%"
|
|
13222
|
+
},
|
|
13223
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(ConditionsTable, { conditions: value2 })
|
|
13224
|
+
}
|
|
13225
|
+
);
|
|
13005
13226
|
}
|
|
13006
13227
|
}
|
|
13007
13228
|
]
|
|
@@ -13010,41 +13231,31 @@ const ConditionsTab = (i18n2) => ({
|
|
|
13010
13231
|
}
|
|
13011
13232
|
]
|
|
13012
13233
|
});
|
|
13013
|
-
const LabelAnnotationsTab = (
|
|
13234
|
+
const LabelAnnotationsTab = ({
|
|
13235
|
+
i18n: i18n2,
|
|
13236
|
+
size
|
|
13237
|
+
}) => ({
|
|
13014
13238
|
title: i18n2.t("dovetail.label_annotations"),
|
|
13015
13239
|
key: "label-annotations",
|
|
13240
|
+
background: "white",
|
|
13016
13241
|
groups: [
|
|
13017
13242
|
{
|
|
13018
|
-
title: i18n2.t("dovetail.label"),
|
|
13019
13243
|
areas: [
|
|
13020
13244
|
{
|
|
13021
13245
|
fields: [
|
|
13022
13246
|
{
|
|
13023
|
-
key: "
|
|
13024
|
-
|
|
13025
|
-
|
|
13026
|
-
|
|
13027
|
-
|
|
13028
|
-
|
|
13029
|
-
|
|
13030
|
-
|
|
13031
|
-
|
|
13032
|
-
|
|
13033
|
-
|
|
13034
|
-
|
|
13035
|
-
]
|
|
13036
|
-
},
|
|
13037
|
-
{
|
|
13038
|
-
title: i18n2.t("dovetail.annotation"),
|
|
13039
|
-
areas: [
|
|
13040
|
-
{
|
|
13041
|
-
fields: [
|
|
13042
|
-
{
|
|
13043
|
-
key: "Annotations",
|
|
13044
|
-
title: i18n2.t("dovetail.annotation"),
|
|
13045
|
-
path: ["metadata", "annotations"],
|
|
13046
|
-
render: (value2) => {
|
|
13047
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(KeyValue, { data: value2 });
|
|
13247
|
+
key: "label-annotations",
|
|
13248
|
+
path: [],
|
|
13249
|
+
renderContent: (_, record) => {
|
|
13250
|
+
var _a, _b;
|
|
13251
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
13252
|
+
LabelsAndAnnotationsShow,
|
|
13253
|
+
{
|
|
13254
|
+
labels: (_a = record.metadata) == null ? void 0 : _a.labels,
|
|
13255
|
+
annotations: (_b = record.metadata) == null ? void 0 : _b.annotations,
|
|
13256
|
+
size
|
|
13257
|
+
}
|
|
13258
|
+
);
|
|
13048
13259
|
}
|
|
13049
13260
|
}
|
|
13050
13261
|
]
|
|
@@ -13056,6 +13267,7 @@ const LabelAnnotationsTab = (i18n2) => ({
|
|
|
13056
13267
|
const PodLogTab = (i18n2, apiUrl) => ({
|
|
13057
13268
|
title: i18n2.t("dovetail.log"),
|
|
13058
13269
|
key: "pod-log",
|
|
13270
|
+
background: "white",
|
|
13059
13271
|
groups: [
|
|
13060
13272
|
{
|
|
13061
13273
|
areas: [
|
|
@@ -13074,6 +13286,58 @@ const PodLogTab = (i18n2, apiUrl) => ({
|
|
|
13074
13286
|
}
|
|
13075
13287
|
]
|
|
13076
13288
|
});
|
|
13289
|
+
const PortsTab = ({
|
|
13290
|
+
i18n: i18n2
|
|
13291
|
+
}) => ({
|
|
13292
|
+
title: i18n2.t("dovetail.port"),
|
|
13293
|
+
key: "ports",
|
|
13294
|
+
background: "white",
|
|
13295
|
+
groups: [
|
|
13296
|
+
{
|
|
13297
|
+
areas: [
|
|
13298
|
+
{
|
|
13299
|
+
fields: [PortsTableField()]
|
|
13300
|
+
}
|
|
13301
|
+
]
|
|
13302
|
+
}
|
|
13303
|
+
]
|
|
13304
|
+
});
|
|
13305
|
+
const IngressRulesTab = ({
|
|
13306
|
+
i18n: i18n2
|
|
13307
|
+
}) => ({
|
|
13308
|
+
title: i18n2.t("dovetail.rule"),
|
|
13309
|
+
key: "ingress-rules",
|
|
13310
|
+
background: "white",
|
|
13311
|
+
groups: [
|
|
13312
|
+
{
|
|
13313
|
+
areas: [{ fields: [IngressRulesTableTabField()] }]
|
|
13314
|
+
}
|
|
13315
|
+
]
|
|
13316
|
+
});
|
|
13317
|
+
const DataTab = ({
|
|
13318
|
+
i18n: i18n2
|
|
13319
|
+
}) => ({
|
|
13320
|
+
title: i18n2.t("dovetail.data"),
|
|
13321
|
+
key: "data",
|
|
13322
|
+
background: "white",
|
|
13323
|
+
groups: [
|
|
13324
|
+
{
|
|
13325
|
+
areas: [{ fields: [DataField(i18n2)] }]
|
|
13326
|
+
}
|
|
13327
|
+
]
|
|
13328
|
+
});
|
|
13329
|
+
const SecretDataTab = ({
|
|
13330
|
+
i18n: i18n2
|
|
13331
|
+
}) => ({
|
|
13332
|
+
title: i18n2.t("dovetail.data"),
|
|
13333
|
+
key: "secret-data",
|
|
13334
|
+
background: "white",
|
|
13335
|
+
groups: [
|
|
13336
|
+
{
|
|
13337
|
+
areas: [{ fields: [SecretDataField()] }]
|
|
13338
|
+
}
|
|
13339
|
+
]
|
|
13340
|
+
});
|
|
13077
13341
|
const NetworkPolicyRulesViewer_r6jity = "";
|
|
13078
13342
|
const MonacoYamlEditor$3 = lazy(() => Promise.resolve().then(() => MonacoYamlEditor$1));
|
|
13079
13343
|
const EditorStyle$1 = "e1cjl2b8";
|
|
@@ -13235,8 +13499,6 @@ const BasicGroup = (i18n2, {
|
|
|
13235
13499
|
{
|
|
13236
13500
|
fields: (isShowNamespace ? [NamespaceField(i18n2)] : []).concat([
|
|
13237
13501
|
...basicFields,
|
|
13238
|
-
LabelsField(i18n2),
|
|
13239
|
-
AnnotationsField(i18n2),
|
|
13240
13502
|
AgeField(i18n2)
|
|
13241
13503
|
])
|
|
13242
13504
|
},
|
|
@@ -13306,13 +13568,6 @@ const NodeTaintsGroup = (i18n2) => ({
|
|
|
13306
13568
|
}
|
|
13307
13569
|
]
|
|
13308
13570
|
});
|
|
13309
|
-
const SecretDataGroup = () => ({
|
|
13310
|
-
areas: [
|
|
13311
|
-
{
|
|
13312
|
-
fields: [SecretDataField()]
|
|
13313
|
-
}
|
|
13314
|
-
]
|
|
13315
|
-
});
|
|
13316
13571
|
const JobsGroup = () => ({
|
|
13317
13572
|
title: "Job",
|
|
13318
13573
|
areas: [
|
|
@@ -13321,14 +13576,6 @@ const JobsGroup = () => ({
|
|
|
13321
13576
|
}
|
|
13322
13577
|
]
|
|
13323
13578
|
});
|
|
13324
|
-
const IngressRulesGroup = (i18n2) => ({
|
|
13325
|
-
title: i18n2.t("dovetail.rule"),
|
|
13326
|
-
areas: [
|
|
13327
|
-
{
|
|
13328
|
-
fields: [IngressRulesTableTabField()]
|
|
13329
|
-
}
|
|
13330
|
-
]
|
|
13331
|
-
});
|
|
13332
13579
|
const PodSelectorGroup = (i18n2) => ({
|
|
13333
13580
|
title: i18n2.t("dovetail.pod_selector"),
|
|
13334
13581
|
areas: [
|
|
@@ -13345,14 +13592,6 @@ const PortsGroup = (i18n2) => ({
|
|
|
13345
13592
|
}
|
|
13346
13593
|
]
|
|
13347
13594
|
});
|
|
13348
|
-
const DataGroup = (i18n2) => ({
|
|
13349
|
-
title: i18n2.t("dovetail.data"),
|
|
13350
|
-
areas: [
|
|
13351
|
-
{
|
|
13352
|
-
fields: [DataField(i18n2)]
|
|
13353
|
-
}
|
|
13354
|
-
]
|
|
13355
|
-
});
|
|
13356
13595
|
const NetworkPolicyIngressRulesGroup = (i18n2) => ({
|
|
13357
13596
|
title: i18n2.t("dovetail.ingress_rule"),
|
|
13358
13597
|
areas: [
|
|
@@ -13419,7 +13658,7 @@ function Tabs(props) {
|
|
|
13419
13658
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(TabsTabPane, { tab: tab.title, children: tab.children }, tab.title);
|
|
13420
13659
|
}) });
|
|
13421
13660
|
}
|
|
13422
|
-
const
|
|
13661
|
+
const ShowContentView_m77hzs = "";
|
|
13423
13662
|
const ShowContentWrapperStyle = "soapvs9";
|
|
13424
13663
|
const BackButton = "b13d603q";
|
|
13425
13664
|
const ToolBarWrapper = "tm8eaia";
|
|
@@ -13434,7 +13673,8 @@ const FieldWrapperStyle = "f1c7cta8";
|
|
|
13434
13673
|
const TabContentStyle = "t1pt61xk";
|
|
13435
13674
|
const ValueStyle = "v1to6fie";
|
|
13436
13675
|
const TabsStyle = "tca5959";
|
|
13437
|
-
const
|
|
13676
|
+
const SmallTabsStyle = "s3dcesi";
|
|
13677
|
+
const KindTagStyle = "kzyzuo8";
|
|
13438
13678
|
function ShowGroupWithTitleComponent(props) {
|
|
13439
13679
|
const {
|
|
13440
13680
|
title,
|
|
@@ -13454,10 +13694,14 @@ function ShowGroupWithTitleComponent(props) {
|
|
|
13454
13694
|
}
|
|
13455
13695
|
function BasicShowGroupComponent(props) {
|
|
13456
13696
|
const {
|
|
13457
|
-
children
|
|
13697
|
+
children,
|
|
13698
|
+
size = "medium"
|
|
13458
13699
|
} = props;
|
|
13459
13700
|
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
|
|
13460
13701
|
className: cx_default(BasicGroupStyle, "basic-group"),
|
|
13702
|
+
style: {
|
|
13703
|
+
margin: size === "small" ? "12px 8px 0px 12px" : void 0
|
|
13704
|
+
},
|
|
13461
13705
|
children
|
|
13462
13706
|
});
|
|
13463
13707
|
}
|
|
@@ -13473,7 +13717,8 @@ const ShowContentView = (props) => {
|
|
|
13473
13717
|
hideBackButton = false,
|
|
13474
13718
|
canCollapseTabs = false,
|
|
13475
13719
|
className,
|
|
13476
|
-
hideTopBar = false
|
|
13720
|
+
hideTopBar = false,
|
|
13721
|
+
size = "medium"
|
|
13477
13722
|
} = props;
|
|
13478
13723
|
const {
|
|
13479
13724
|
queryResult
|
|
@@ -13505,43 +13750,47 @@ const ShowContentView = (props) => {
|
|
|
13505
13750
|
if (!record)
|
|
13506
13751
|
return null;
|
|
13507
13752
|
return fields.map((field) => {
|
|
13508
|
-
|
|
13753
|
+
const shouldHide = typeof field.hidden === "function" ? field.hidden(record) : field.hidden;
|
|
13754
|
+
if (shouldHide)
|
|
13509
13755
|
return null;
|
|
13510
13756
|
let content;
|
|
13511
13757
|
const value2 = get$2(record, field.path);
|
|
13512
13758
|
if (field.renderContent) {
|
|
13513
|
-
content = field.renderContent(value2, record, field);
|
|
13759
|
+
content = field.renderContent(value2, record, field, size);
|
|
13514
13760
|
} else {
|
|
13515
13761
|
content = get$2(record, field.path);
|
|
13516
13762
|
}
|
|
13517
|
-
|
|
13518
|
-
|
|
13519
|
-
|
|
13520
|
-
|
|
13521
|
-
|
|
13522
|
-
|
|
13523
|
-
|
|
13524
|
-
|
|
13525
|
-
|
|
13526
|
-
|
|
13527
|
-
|
|
13528
|
-
|
|
13529
|
-
|
|
13530
|
-
|
|
13531
|
-
|
|
13532
|
-
|
|
13533
|
-
|
|
13534
|
-
|
|
13535
|
-
|
|
13536
|
-
|
|
13537
|
-
|
|
13538
|
-
|
|
13539
|
-
|
|
13540
|
-
|
|
13541
|
-
|
|
13542
|
-
|
|
13543
|
-
|
|
13544
|
-
|
|
13763
|
+
if (hasCol) {
|
|
13764
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(Col, {
|
|
13765
|
+
flex: areaType === AreaType.Inline ? "none" : "",
|
|
13766
|
+
span: field.col || 24,
|
|
13767
|
+
className: "cxd8k68",
|
|
13768
|
+
children: field.render ? field.render(value2, record, field, size) : /* @__PURE__ */ jsxRuntimeExports.jsxs("div", {
|
|
13769
|
+
className: FieldWrapperStyle,
|
|
13770
|
+
children: [field.title && /* @__PURE__ */ jsxRuntimeExports.jsx("span", {
|
|
13771
|
+
className: Typo.Label.l4_regular_title,
|
|
13772
|
+
style: {
|
|
13773
|
+
width: field.labelWidth || "165px",
|
|
13774
|
+
marginRight: 8,
|
|
13775
|
+
flexShrink: 0,
|
|
13776
|
+
color: "#2C385299"
|
|
13777
|
+
},
|
|
13778
|
+
children: field.title
|
|
13779
|
+
}), /* @__PURE__ */ jsxRuntimeExports.jsx("span", {
|
|
13780
|
+
style: {
|
|
13781
|
+
flex: 1,
|
|
13782
|
+
minWidth: 0
|
|
13783
|
+
},
|
|
13784
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(ValueDisplay, {
|
|
13785
|
+
className: cx_default(Typo.Label.l4_regular_title, ValueStyle),
|
|
13786
|
+
value: content,
|
|
13787
|
+
useOverflow: false
|
|
13788
|
+
})
|
|
13789
|
+
})]
|
|
13790
|
+
})
|
|
13791
|
+
}, field.key);
|
|
13792
|
+
}
|
|
13793
|
+
return field.render ? field.render(value2, record, field, size) : /* @__PURE__ */ jsxRuntimeExports.jsx(ValueDisplay, {
|
|
13545
13794
|
style: {
|
|
13546
13795
|
height: "100%"
|
|
13547
13796
|
},
|
|
@@ -13553,7 +13802,10 @@ const ShowContentView = (props) => {
|
|
|
13553
13802
|
function renderGroup(group, isBasicGroup = false) {
|
|
13554
13803
|
let GroupContainer = React.Fragment;
|
|
13555
13804
|
let FieldContainer = React.Fragment;
|
|
13556
|
-
|
|
13805
|
+
const groupContainerProps = {
|
|
13806
|
+
title: group.title || "",
|
|
13807
|
+
size
|
|
13808
|
+
};
|
|
13557
13809
|
let fieldContainerProps = {};
|
|
13558
13810
|
if (isBasicGroup) {
|
|
13559
13811
|
GroupContainer = BasicShowGroupComponent;
|
|
@@ -13563,9 +13815,6 @@ const ShowContentView = (props) => {
|
|
|
13563
13815
|
const shouldRenderRow = !!(isBasicGroup || group.title);
|
|
13564
13816
|
if (shouldRenderRow) {
|
|
13565
13817
|
FieldContainer = Row;
|
|
13566
|
-
groupContainerProps = {
|
|
13567
|
-
title: group.title || ""
|
|
13568
|
-
};
|
|
13569
13818
|
fieldContainerProps = {
|
|
13570
13819
|
gutter: [24, 8]
|
|
13571
13820
|
};
|
|
@@ -13587,6 +13836,9 @@ const ShowContentView = (props) => {
|
|
|
13587
13836
|
const stateDisplay = get$2(record, "stateDisplay");
|
|
13588
13837
|
const topBar = /* @__PURE__ */ jsxRuntimeExports.jsxs("div", {
|
|
13589
13838
|
className: ToolBarWrapper,
|
|
13839
|
+
style: {
|
|
13840
|
+
padding: size === "small" ? "8px 16px" : void 0
|
|
13841
|
+
},
|
|
13590
13842
|
children: [!hideBackButton && !showConfig.renderCustomBackButton && /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
|
|
13591
13843
|
className: cx_default(Typo.Label.l4_bold, BackButton),
|
|
13592
13844
|
onClick: () => {
|
|
@@ -13645,22 +13897,28 @@ const ShowContentView = (props) => {
|
|
|
13645
13897
|
})]
|
|
13646
13898
|
});
|
|
13647
13899
|
const tabs = /* @__PURE__ */ jsxRuntimeExports.jsx(Tabs$12, {
|
|
13648
|
-
tabs: (showConfig.tabs || []).map((tab
|
|
13900
|
+
tabs: (showConfig.tabs || []).map((tab) => {
|
|
13649
13901
|
var _a2;
|
|
13650
13902
|
return {
|
|
13651
13903
|
title: tab.title,
|
|
13652
13904
|
key: tab.key,
|
|
13653
13905
|
children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
|
|
13654
|
-
className: cx_default(TabContentStyle, tab.groups.length <= 1 &&
|
|
13906
|
+
className: cx_default(TabContentStyle, tab.groups.length <= 1 && FullTabContentStyle),
|
|
13907
|
+
style: {
|
|
13908
|
+
background: tab.background === "white" ? "#fff" : void 0
|
|
13909
|
+
},
|
|
13655
13910
|
children: (_a2 = tab.groups) == null ? void 0 : _a2.map((group) => renderGroup(group, false))
|
|
13656
13911
|
})
|
|
13657
13912
|
};
|
|
13658
13913
|
}),
|
|
13659
|
-
className: TabsStyle
|
|
13914
|
+
className: cx_default(TabsStyle, size === "small" && SmallTabsStyle)
|
|
13660
13915
|
});
|
|
13661
13916
|
const basicInfo = showConfig.basicGroup ? renderGroup(showConfig.basicGroup, true) : null;
|
|
13662
13917
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", {
|
|
13663
13918
|
className: cx_default(ShowContentWrapperStyle, className),
|
|
13919
|
+
style: {
|
|
13920
|
+
background: size === "small" ? "#fff" : void 0
|
|
13921
|
+
},
|
|
13664
13922
|
children: [hideTopBar ? null : /* @__PURE__ */ jsxRuntimeExports.jsx(Space, {
|
|
13665
13923
|
direction: "vertical",
|
|
13666
13924
|
className: ShowContentHeaderStyle,
|
|
@@ -13689,9 +13947,9 @@ const CollapseTabs = (props) => {
|
|
|
13689
13947
|
type: "link",
|
|
13690
13948
|
onClick: () => setIsCollapsed((v) => !v),
|
|
13691
13949
|
suffixIcon: isCollapsed ? /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, {
|
|
13692
|
-
src: ArrowChevronUpSmall16BlueIcon
|
|
13693
|
-
}) : /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, {
|
|
13694
13950
|
src: ArrowChevronDownSmall16BlueIcon
|
|
13951
|
+
}) : /* @__PURE__ */ jsxRuntimeExports.jsx(Icon, {
|
|
13952
|
+
src: ArrowChevronUpSmall16BlueIcon
|
|
13695
13953
|
}),
|
|
13696
13954
|
children: isCollapsed ? t2("dovetail.view_all_info") : t2("dovetail.collapse")
|
|
13697
13955
|
})
|
|
@@ -14479,10 +14737,9 @@ const MemoizedFormField = memo(function FormField({
|
|
|
14479
14737
|
control,
|
|
14480
14738
|
name: fieldConfig.path.join("."),
|
|
14481
14739
|
rules: {
|
|
14482
|
-
async validate(value2) {
|
|
14740
|
+
async validate(value2, formValue) {
|
|
14483
14741
|
if (fieldConfig.disabledWhenEdit && action === "edit")
|
|
14484
14742
|
return true;
|
|
14485
|
-
const formValue = watchedFormValues || getValues();
|
|
14486
14743
|
if (!fieldConfig.validators || fieldConfig.validators.length === 0)
|
|
14487
14744
|
return true;
|
|
14488
14745
|
for (const func of fieldConfig.validators) {
|
|
@@ -14494,7 +14751,7 @@ const MemoizedFormField = memo(function FormField({
|
|
|
14494
14751
|
}
|
|
14495
14752
|
},
|
|
14496
14753
|
render: ({ field, fieldState }) => {
|
|
14497
|
-
var _a;
|
|
14754
|
+
var _a, _b;
|
|
14498
14755
|
const currentFormValue = watchedFormValues || getValues();
|
|
14499
14756
|
const renderProps = {
|
|
14500
14757
|
field,
|
|
@@ -14517,7 +14774,7 @@ const MemoizedFormField = memo(function FormField({
|
|
|
14517
14774
|
colon: false,
|
|
14518
14775
|
labelCol: fieldConfig.layout === FormItemLayout.VERTICAL ? {} : { flex: `0 0 ${(formConfig == null ? void 0 : formConfig.labelWidth) || "216px"}` },
|
|
14519
14776
|
help: fieldConfig.isHideErrorStatus ? "" : (_a = fieldState.error) == null ? void 0 : _a.message,
|
|
14520
|
-
extra: fieldConfig.helperText,
|
|
14777
|
+
extra: ((_b = fieldState.error) == null ? void 0 : _b.message) === fieldConfig.helperText ? "" : fieldConfig.helperText,
|
|
14521
14778
|
validateStatus: fieldState.invalid && !fieldConfig.isHideErrorStatus ? "error" : void 0,
|
|
14522
14779
|
"data-test-id": fieldConfig.key,
|
|
14523
14780
|
className: fieldConfig.layout === FormItemLayout.VERTICAL ? VerticalFormItemStyle : "",
|
|
@@ -17282,7 +17539,8 @@ function ResourceSelect(props) {
|
|
|
17282
17539
|
namespace: namespace2,
|
|
17283
17540
|
selectProps,
|
|
17284
17541
|
value: value2,
|
|
17285
|
-
onChange
|
|
17542
|
+
onChange,
|
|
17543
|
+
placeholder
|
|
17286
17544
|
} = props;
|
|
17287
17545
|
const { data: data2, isLoading, isError } = useList({
|
|
17288
17546
|
resource,
|
|
@@ -17298,6 +17556,7 @@ function ResourceSelect(props) {
|
|
|
17298
17556
|
Select,
|
|
17299
17557
|
{
|
|
17300
17558
|
className,
|
|
17559
|
+
placeholder,
|
|
17301
17560
|
input: {
|
|
17302
17561
|
value: value2,
|
|
17303
17562
|
onChange
|
|
@@ -17309,7 +17568,7 @@ function ResourceSelect(props) {
|
|
|
17309
17568
|
}
|
|
17310
17569
|
);
|
|
17311
17570
|
}
|
|
17312
|
-
const
|
|
17571
|
+
const SelectMatchLabelButton_1uc76rw = "";
|
|
17313
17572
|
const PopoverOverlayStyle = "p19yct45";
|
|
17314
17573
|
const PopoverContentStyle = "p2255z4";
|
|
17315
17574
|
const PopoverTitleStyle = "p16qejqa";
|
|
@@ -17325,12 +17584,16 @@ function ResourceMatchLabelSelector({
|
|
|
17325
17584
|
value: value2,
|
|
17326
17585
|
onChange
|
|
17327
17586
|
}) {
|
|
17587
|
+
const {
|
|
17588
|
+
t: t2
|
|
17589
|
+
} = useTranslation();
|
|
17328
17590
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(ResourceSelect, {
|
|
17329
17591
|
namespace: namespace2,
|
|
17330
17592
|
resource,
|
|
17331
17593
|
resourceBasePath,
|
|
17332
17594
|
kind,
|
|
17333
17595
|
value: value2,
|
|
17596
|
+
placeholder: t2("dovetail.select_workload"),
|
|
17334
17597
|
onChange: (newValue, object2) => {
|
|
17335
17598
|
var _a, _b;
|
|
17336
17599
|
const resourceItem = object2.object;
|
|
@@ -17378,7 +17641,7 @@ function SelectMatchLabelButton(props) {
|
|
|
17378
17641
|
children: [/* @__PURE__ */ jsxRuntimeExports.jsxs("div", {
|
|
17379
17642
|
className: PopoverContentBodyStyle,
|
|
17380
17643
|
children: [/* @__PURE__ */ jsxRuntimeExports.jsx("div", {
|
|
17381
|
-
className: cx_default(Typo.
|
|
17644
|
+
className: cx_default(Typo.Heading.h2_bold_title, PopoverTitleStyle),
|
|
17382
17645
|
children: t2("dovetail.specify_workload")
|
|
17383
17646
|
}), /* @__PURE__ */ jsxRuntimeExports.jsxs("div", {
|
|
17384
17647
|
className: FormWrapperStyle,
|
|
@@ -17435,9 +17698,12 @@ function SelectMatchLabelButton(props) {
|
|
|
17435
17698
|
children: [/* @__PURE__ */ jsxRuntimeExports.jsx(Button, {
|
|
17436
17699
|
onClick: () => setPopoverVisible(false),
|
|
17437
17700
|
type: "quiet",
|
|
17701
|
+
size: "small",
|
|
17438
17702
|
children: t2("dovetail.cancel")
|
|
17439
17703
|
}), /* @__PURE__ */ jsxRuntimeExports.jsx(Button, {
|
|
17440
17704
|
type: "primary",
|
|
17705
|
+
size: "small",
|
|
17706
|
+
disabled: !selectedResource,
|
|
17441
17707
|
onClick: () => {
|
|
17442
17708
|
onChange == null ? void 0 : onChange(selector);
|
|
17443
17709
|
setPopoverVisible(false);
|
|
@@ -17495,8 +17761,7 @@ const MatchLabelSelector = React.forwardRef(function MatchLabelSelector2(props,
|
|
|
17495
17761
|
onChange,
|
|
17496
17762
|
isValueOptional: false,
|
|
17497
17763
|
minSize: 1,
|
|
17498
|
-
disabledChagneDefaultValues
|
|
17499
|
-
isHideLabelFormatPopover: true
|
|
17764
|
+
disabledChagneDefaultValues
|
|
17500
17765
|
}
|
|
17501
17766
|
);
|
|
17502
17767
|
});
|
|
@@ -18333,7 +18598,7 @@ const PortsConfigForm = React.forwardRef(function PortsConfigForm2({ value: valu
|
|
|
18333
18598
|
},
|
|
18334
18599
|
{
|
|
18335
18600
|
key: "name",
|
|
18336
|
-
title:
|
|
18601
|
+
title: i18n2.t("dovetail.port_name"),
|
|
18337
18602
|
type: "input",
|
|
18338
18603
|
validator: ({ value: portName, rowIndex }) => {
|
|
18339
18604
|
const { errorMessage } = validateRfc1123Name({
|
|
@@ -18528,9 +18793,8 @@ const IngressRulesComponent = ({ ingress }) => {
|
|
|
18528
18793
|
});
|
|
18529
18794
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: result });
|
|
18530
18795
|
};
|
|
18531
|
-
const
|
|
18532
|
-
const
|
|
18533
|
-
const ServiceClusterTooltipStyle = "s1fcgan";
|
|
18796
|
+
const columns_gm9kgl = "";
|
|
18797
|
+
const ServiceClusterTooltipStyle = "sh5j833";
|
|
18534
18798
|
const NameLink = (props) => {
|
|
18535
18799
|
var _a;
|
|
18536
18800
|
const {
|
|
@@ -18739,14 +19003,14 @@ const NodeNameColumnRenderer = (i18n2, options) => {
|
|
|
18739
19003
|
...options
|
|
18740
19004
|
};
|
|
18741
19005
|
};
|
|
18742
|
-
const
|
|
19006
|
+
const PodCountOfJobColumnRenderer = (i18n2) => {
|
|
18743
19007
|
const dataIndex = ["succeeded"];
|
|
18744
19008
|
return {
|
|
18745
19009
|
key: "completions",
|
|
18746
19010
|
display: true,
|
|
18747
19011
|
dataIndex,
|
|
18748
19012
|
title: /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip, {
|
|
18749
|
-
title: i18n2.t("dovetail.
|
|
19013
|
+
title: i18n2.t("dovetail.job_pod_count_tooltip"),
|
|
18750
19014
|
children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", {
|
|
18751
19015
|
className: DashedTitleStyle,
|
|
18752
19016
|
children: i18n2.t("dovetail.pod_num")
|
|
@@ -18758,7 +19022,7 @@ const CompletionsCountColumnRenderer = (i18n2) => {
|
|
|
18758
19022
|
sorter: CommonSorter(dataIndex),
|
|
18759
19023
|
render: (_, record) => {
|
|
18760
19024
|
return /* @__PURE__ */ jsxRuntimeExports.jsx("span", {
|
|
18761
|
-
children: record.
|
|
19025
|
+
children: record.podCountDisplay
|
|
18762
19026
|
});
|
|
18763
19027
|
}
|
|
18764
19028
|
};
|
|
@@ -19507,7 +19771,6 @@ export {
|
|
|
19507
19771
|
ClusterIpField,
|
|
19508
19772
|
ColumnKeys,
|
|
19509
19773
|
CommonSorter,
|
|
19510
|
-
CompletionsCountColumnRenderer,
|
|
19511
19774
|
ComponentContext,
|
|
19512
19775
|
ConditionsField,
|
|
19513
19776
|
ConditionsGroup,
|
|
@@ -19522,8 +19785,8 @@ export {
|
|
|
19522
19785
|
DEPLOYMENT_INIT_VALUE,
|
|
19523
19786
|
DaemonSetModel,
|
|
19524
19787
|
DataField,
|
|
19525
|
-
DataGroup,
|
|
19526
19788
|
DataKeysColumnRenderer,
|
|
19789
|
+
DataTab,
|
|
19527
19790
|
DeleteButton,
|
|
19528
19791
|
DeleteManyButton,
|
|
19529
19792
|
DeploymentModel,
|
|
@@ -19560,7 +19823,7 @@ export {
|
|
|
19560
19823
|
IngressDefaultBackendColumnRenderer,
|
|
19561
19824
|
IngressModel,
|
|
19562
19825
|
IngressRulesColumnRenderer,
|
|
19563
|
-
|
|
19826
|
+
IngressRulesTab,
|
|
19564
19827
|
IngressRulesTableTabField,
|
|
19565
19828
|
IngressTlsColumnRenderer,
|
|
19566
19829
|
IsDefaultSCColumnRenderer,
|
|
@@ -19577,6 +19840,7 @@ export {
|
|
|
19577
19840
|
KeyValueSecret,
|
|
19578
19841
|
KeyValueTableForm,
|
|
19579
19842
|
LabelAnnotationsTab,
|
|
19843
|
+
LabelsAndAnnotationsShow,
|
|
19580
19844
|
LabelsField,
|
|
19581
19845
|
Layout,
|
|
19582
19846
|
ListPage,
|
|
@@ -19638,6 +19902,8 @@ export {
|
|
|
19638
19902
|
PodContainersGroup,
|
|
19639
19903
|
PodContainersNumColumnRenderer,
|
|
19640
19904
|
PodContainersTable,
|
|
19905
|
+
PodCountOfJobColumnRenderer,
|
|
19906
|
+
PodCountOfJobField,
|
|
19641
19907
|
PodDropdown,
|
|
19642
19908
|
PodLog,
|
|
19643
19909
|
PodLogTab,
|
|
@@ -19653,6 +19919,7 @@ export {
|
|
|
19653
19919
|
PortMappingColumnRenderer,
|
|
19654
19920
|
PortsConfigForm,
|
|
19655
19921
|
PortsGroup,
|
|
19922
|
+
PortsTab,
|
|
19656
19923
|
PortsTableField,
|
|
19657
19924
|
ProviderPlugins,
|
|
19658
19925
|
ProvisionerColumnRenderer,
|
|
@@ -19698,7 +19965,7 @@ export {
|
|
|
19698
19965
|
STORAGE_CLASS_INIT_VALUE,
|
|
19699
19966
|
SchemaStrategy,
|
|
19700
19967
|
SecretDataField,
|
|
19701
|
-
|
|
19968
|
+
SecretDataTab,
|
|
19702
19969
|
SectionTitle,
|
|
19703
19970
|
Separator,
|
|
19704
19971
|
ServiceInClusterAccessColumnRenderer,
|