@dovetail-v2/refine 0.3.14-alpha.0 → 0.3.14-alpha.2

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.
@@ -1,5 +1,6 @@
1
1
  import { i18n as I18nType } from 'i18next';
2
2
  import { ResourceModel, PodModel, ServiceModel, IngressModel } from 'src/models';
3
+ import { NetworkPolicyModel } from 'src/models';
3
4
  import { ShowTab } from './fields';
4
5
  export declare const EventsTab: <Model extends ResourceModel<import("k8s-api-provider").Unstructured>>({ i18n, size, }: {
5
6
  i18n: I18nType;
@@ -26,3 +27,9 @@ export declare const DataTab: <Model extends ResourceModel<import("k8s-api-provi
26
27
  export declare const SecretDataTab: <Model extends ResourceModel<import("k8s-api-provider").Unstructured>>({ i18n, }: {
27
28
  i18n: I18nType;
28
29
  }) => ShowTab<Model>;
30
+ export declare const NetworkPolicyIngressRulesTab: <Model extends NetworkPolicyModel>({ i18n, }: {
31
+ i18n: I18nType;
32
+ }) => ShowTab<Model>;
33
+ export declare const NetworkPolicyEgressRulesTab: <Model extends NetworkPolicyModel>({ i18n, }: {
34
+ i18n: I18nType;
35
+ }) => ShowTab<Model>;
@@ -1,8 +1,8 @@
1
1
  /// <reference types="react" />
2
- import { ModalProps } from '@cloudtower/eagle';
2
+ import { LegacyModalProps } from '@cloudtower/eagle';
3
3
  import { BaseKey } from '@refinedev/core';
4
4
  export declare const useDeleteManyModal: (resource: string, ids: BaseKey[]) => {
5
- modalProps: ModalProps;
5
+ modalProps: LegacyModalProps;
6
6
  visible: boolean;
7
7
  setVisible: import("react").Dispatch<import("react").SetStateAction<boolean>>;
8
8
  };
package/dist/refine.cjs CHANGED
@@ -11019,7 +11019,7 @@ const DeleteManyButton = (props) => {
11019
11019
  }, [setVisible]);
11020
11020
  return /* @__PURE__ */ common.jsxRuntimeExports.jsxs(common.jsxRuntimeExports.Fragment, { children: [
11021
11021
  /* @__PURE__ */ common.jsxRuntimeExports.jsx(eagle.Button, { type: "primary", danger: true, onClick, children: t2("dovetail.delete") }),
11022
- visible ? /* @__PURE__ */ common.jsxRuntimeExports.jsx(eagle.Modal, { ...modalProps }) : null
11022
+ visible ? /* @__PURE__ */ common.jsxRuntimeExports.jsx(eagle.LegacyModal, { ...modalProps }) : null
11023
11023
  ] });
11024
11024
  };
11025
11025
  const index_1iwpuwe = "";
@@ -13068,6 +13068,36 @@ const LabelsAndAnnotationsShow = ({
13068
13068
  })]
13069
13069
  });
13070
13070
  };
13071
+ const NetworkPolicyRulesViewer_r6jity = "";
13072
+ const MonacoYamlEditor$3 = React.lazy(() => Promise.resolve().then(() => MonacoYamlEditor$1));
13073
+ const EditorStyle$1 = "e1cjl2b8";
13074
+ const NetworkPolicyRulesViewer = ({
13075
+ ingressOrEgress,
13076
+ kind
13077
+ }) => {
13078
+ const {
13079
+ t: t2
13080
+ } = common.useTranslation();
13081
+ if (!ingressOrEgress) {
13082
+ return /* @__PURE__ */ common.jsxRuntimeExports.jsx(WidgetErrorContent, {
13083
+ errorText: t2("dovetail.no_resource", {
13084
+ kind: kind || t2("dovetail.rule")
13085
+ }),
13086
+ type: ErrorContentType.List
13087
+ });
13088
+ }
13089
+ return /* @__PURE__ */ common.jsxRuntimeExports.jsx(React.Suspense, {
13090
+ fallback: /* @__PURE__ */ common.jsxRuntimeExports.jsx(eagle.Loading, {}),
13091
+ children: /* @__PURE__ */ common.jsxRuntimeExports.jsx(MonacoYamlEditor$3, {
13092
+ schemas: [],
13093
+ defaultValue: yaml$2.dump(ingressOrEgress),
13094
+ height: "100%",
13095
+ className: EditorStyle$1,
13096
+ readOnly: true,
13097
+ isScrollOnFocus: true
13098
+ })
13099
+ });
13100
+ };
13071
13101
  const baseNoReset = "";
13072
13102
  const index_14irc29 = "";
13073
13103
  const WrapperStyle$3 = "wve7dfm";
@@ -13263,6 +13293,7 @@ const PodLog = ({
13263
13293
  })]
13264
13294
  });
13265
13295
  };
13296
+ const tabs_1q5et9v = "";
13266
13297
  const EventsTab = ({
13267
13298
  i18n: i18n2,
13268
13299
  size
@@ -13270,15 +13301,13 @@ const EventsTab = ({
13270
13301
  title: i18n2.t("dovetail.event"),
13271
13302
  key: "events",
13272
13303
  background: "white",
13273
- groups: [
13274
- {
13275
- areas: [
13276
- {
13277
- fields: [EventsTableTabField({ size })]
13278
- }
13279
- ]
13280
- }
13281
- ]
13304
+ groups: [{
13305
+ areas: [{
13306
+ fields: [EventsTableTabField({
13307
+ size
13308
+ })]
13309
+ }]
13310
+ }]
13282
13311
  });
13283
13312
  const ConditionsTab = ({
13284
13313
  i18n: i18n2,
@@ -13287,32 +13316,25 @@ const ConditionsTab = ({
13287
13316
  title: i18n2.t("dovetail.condition"),
13288
13317
  key: "conditions",
13289
13318
  background: "white",
13290
- groups: [
13291
- {
13292
- areas: [
13293
- {
13294
- fields: [
13295
- {
13296
- key: "Conditions",
13297
- path: ["status", "conditions"],
13298
- renderContent: (value2) => {
13299
- return /* @__PURE__ */ common.jsxRuntimeExports.jsx(
13300
- "div",
13301
- {
13302
- style: {
13303
- padding: size === "small" ? "0 12px" : "0 24px",
13304
- height: "100%"
13305
- },
13306
- children: /* @__PURE__ */ common.jsxRuntimeExports.jsx(ConditionsTable, { conditions: value2 })
13307
- }
13308
- );
13309
- }
13310
- }
13311
- ]
13319
+ groups: [{
13320
+ areas: [{
13321
+ fields: [{
13322
+ key: "Conditions",
13323
+ path: ["status", "conditions"],
13324
+ renderContent: (value2) => {
13325
+ return /* @__PURE__ */ common.jsxRuntimeExports.jsx("div", {
13326
+ style: {
13327
+ padding: size === "small" ? "0 12px" : "0 24px",
13328
+ height: "100%"
13329
+ },
13330
+ children: /* @__PURE__ */ common.jsxRuntimeExports.jsx(ConditionsTable, {
13331
+ conditions: value2
13332
+ })
13333
+ });
13312
13334
  }
13313
- ]
13314
- }
13315
- ]
13335
+ }]
13336
+ }]
13337
+ }]
13316
13338
  });
13317
13339
  const LabelAnnotationsTab = ({
13318
13340
  i18n: i18n2,
@@ -13321,53 +13343,41 @@ const LabelAnnotationsTab = ({
13321
13343
  title: i18n2.t("dovetail.label_annotations"),
13322
13344
  key: "label-annotations",
13323
13345
  background: "white",
13324
- groups: [
13325
- {
13326
- areas: [
13327
- {
13328
- fields: [
13329
- {
13330
- key: "label-annotations",
13331
- path: [],
13332
- renderContent: (_, record) => {
13333
- var _a, _b;
13334
- return /* @__PURE__ */ common.jsxRuntimeExports.jsx(
13335
- LabelsAndAnnotationsShow,
13336
- {
13337
- labels: (_a = record.metadata) == null ? void 0 : _a.labels,
13338
- annotations: (_b = record.metadata) == null ? void 0 : _b.annotations,
13339
- size
13340
- }
13341
- );
13342
- }
13343
- }
13344
- ]
13346
+ groups: [{
13347
+ areas: [{
13348
+ fields: [{
13349
+ key: "label-annotations",
13350
+ path: [],
13351
+ renderContent: (_, record) => {
13352
+ var _a, _b;
13353
+ return /* @__PURE__ */ common.jsxRuntimeExports.jsx(LabelsAndAnnotationsShow, {
13354
+ labels: (_a = record.metadata) == null ? void 0 : _a.labels,
13355
+ annotations: (_b = record.metadata) == null ? void 0 : _b.annotations,
13356
+ size
13357
+ });
13345
13358
  }
13346
- ]
13347
- }
13348
- ]
13359
+ }]
13360
+ }]
13361
+ }]
13349
13362
  });
13350
13363
  const PodLogTab = (i18n2, apiUrl) => ({
13351
13364
  title: i18n2.t("dovetail.log"),
13352
13365
  key: "pod-log",
13353
13366
  background: "white",
13354
- groups: [
13355
- {
13356
- areas: [
13357
- {
13358
- fields: [
13359
- {
13360
- key: "log",
13361
- path: [],
13362
- renderContent: (_, record) => {
13363
- return /* @__PURE__ */ common.jsxRuntimeExports.jsx(PodLog, { pod: record, apiUrl });
13364
- }
13365
- }
13366
- ]
13367
+ groups: [{
13368
+ areas: [{
13369
+ fields: [{
13370
+ key: "log",
13371
+ path: [],
13372
+ renderContent: (_, record) => {
13373
+ return /* @__PURE__ */ common.jsxRuntimeExports.jsx(PodLog, {
13374
+ pod: record,
13375
+ apiUrl
13376
+ });
13367
13377
  }
13368
- ]
13369
- }
13370
- ]
13378
+ }]
13379
+ }]
13380
+ }]
13371
13381
  });
13372
13382
  const PortsTab = ({
13373
13383
  i18n: i18n2
@@ -13375,15 +13385,11 @@ const PortsTab = ({
13375
13385
  title: i18n2.t("dovetail.port"),
13376
13386
  key: "ports",
13377
13387
  background: "white",
13378
- groups: [
13379
- {
13380
- areas: [
13381
- {
13382
- fields: [PortsTableField()]
13383
- }
13384
- ]
13385
- }
13386
- ]
13388
+ groups: [{
13389
+ areas: [{
13390
+ fields: [PortsTableField()]
13391
+ }]
13392
+ }]
13387
13393
  });
13388
13394
  const IngressRulesTab = ({
13389
13395
  i18n: i18n2
@@ -13391,11 +13397,11 @@ const IngressRulesTab = ({
13391
13397
  title: i18n2.t("dovetail.rule"),
13392
13398
  key: "ingress-rules",
13393
13399
  background: "white",
13394
- groups: [
13395
- {
13396
- areas: [{ fields: [IngressRulesTableTabField()] }]
13397
- }
13398
- ]
13400
+ groups: [{
13401
+ areas: [{
13402
+ fields: [IngressRulesTableTabField()]
13403
+ }]
13404
+ }]
13399
13405
  });
13400
13406
  const DataTab = ({
13401
13407
  i18n: i18n2
@@ -13403,11 +13409,11 @@ const DataTab = ({
13403
13409
  title: i18n2.t("dovetail.data"),
13404
13410
  key: "data",
13405
13411
  background: "white",
13406
- groups: [
13407
- {
13408
- areas: [{ fields: [DataField(i18n2)] }]
13409
- }
13410
- ]
13412
+ groups: [{
13413
+ areas: [{
13414
+ fields: [DataField(i18n2)]
13415
+ }]
13416
+ }]
13411
13417
  });
13412
13418
  const SecretDataTab = ({
13413
13419
  i18n: i18n2
@@ -13415,42 +13421,59 @@ const SecretDataTab = ({
13415
13421
  title: i18n2.t("dovetail.data"),
13416
13422
  key: "secret-data",
13417
13423
  background: "white",
13418
- groups: [
13419
- {
13420
- areas: [{ fields: [SecretDataField()] }]
13421
- }
13422
- ]
13424
+ groups: [{
13425
+ areas: [{
13426
+ fields: [SecretDataField()]
13427
+ }]
13428
+ }]
13429
+ });
13430
+ const NetworkPolicyRulesViewerStyle = "nrkw30o";
13431
+ const NetworkPolicyIngressRulesTab = ({
13432
+ i18n: i18n2
13433
+ }) => ({
13434
+ title: i18n2.t("dovetail.ingress_rule"),
13435
+ key: "ingress-rules",
13436
+ background: "white",
13437
+ groups: [{
13438
+ areas: [{
13439
+ fields: [{
13440
+ key: "Ingress",
13441
+ path: ["spec", "ingress"],
13442
+ render: (ingress) => {
13443
+ return /* @__PURE__ */ common.jsxRuntimeExports.jsx("div", {
13444
+ className: NetworkPolicyRulesViewerStyle,
13445
+ children: /* @__PURE__ */ common.jsxRuntimeExports.jsx(NetworkPolicyRulesViewer, {
13446
+ ingressOrEgress: ingress
13447
+ })
13448
+ });
13449
+ }
13450
+ }]
13451
+ }]
13452
+ }]
13453
+ });
13454
+ const NetworkPolicyEgressRulesTab = ({
13455
+ i18n: i18n2
13456
+ }) => ({
13457
+ title: i18n2.t("dovetail.egress_rule"),
13458
+ key: "egress-rules",
13459
+ background: "white",
13460
+ groups: [{
13461
+ areas: [{
13462
+ fields: [{
13463
+ key: "Egress",
13464
+ path: ["spec", "egress"],
13465
+ render: (egress) => {
13466
+ return /* @__PURE__ */ common.jsxRuntimeExports.jsx("div", {
13467
+ className: NetworkPolicyRulesViewerStyle,
13468
+ children: /* @__PURE__ */ common.jsxRuntimeExports.jsx(NetworkPolicyRulesViewer, {
13469
+ ingressOrEgress: egress
13470
+ })
13471
+ });
13472
+ }
13473
+ }]
13474
+ }]
13475
+ }]
13423
13476
  });
13424
- const NetworkPolicyRulesViewer_r6jity = "";
13425
- const MonacoYamlEditor$3 = React.lazy(() => Promise.resolve().then(() => MonacoYamlEditor$1));
13426
- const EditorStyle$1 = "e1cjl2b8";
13427
- const NetworkPolicyRulesViewer = ({
13428
- ingressOrEgress,
13429
- kind
13430
- }) => {
13431
- const {
13432
- t: t2
13433
- } = common.useTranslation();
13434
- if (!ingressOrEgress) {
13435
- return /* @__PURE__ */ common.jsxRuntimeExports.jsx(WidgetErrorContent, {
13436
- errorText: t2("dovetail.no_resource", {
13437
- kind: kind || t2("dovetail.rule")
13438
- }),
13439
- type: ErrorContentType.Card
13440
- });
13441
- }
13442
- return /* @__PURE__ */ common.jsxRuntimeExports.jsx(React.Suspense, {
13443
- fallback: /* @__PURE__ */ common.jsxRuntimeExports.jsx(eagle.Loading, {}),
13444
- children: /* @__PURE__ */ common.jsxRuntimeExports.jsx(MonacoYamlEditor$3, {
13445
- schemas: [],
13446
- defaultValue: yaml$2.dump(ingressOrEgress),
13447
- height: "300px",
13448
- className: EditorStyle$1,
13449
- readOnly: true,
13450
- isScrollOnFocus: true
13451
- })
13452
- });
13453
- };
13454
13477
  const PodContainersTable = ({
13455
13478
  containerStatuses,
13456
13479
  initContainerStatuses
@@ -13741,7 +13764,7 @@ function Tabs(props) {
13741
13764
  return /* @__PURE__ */ common.jsxRuntimeExports.jsx(eagle.TabsTabPane, { tab: tab.title, children: tab.children }, tab.title);
13742
13765
  }) });
13743
13766
  }
13744
- const ShowContentView_m77hzs = "";
13767
+ const ShowContentView_1gmp0tu = "";
13745
13768
  const ShowContentWrapperStyle = "soapvs9";
13746
13769
  const BackButton = "b13d603q";
13747
13770
  const ToolBarWrapper = "tm8eaia";
@@ -13899,7 +13922,8 @@ const ShowContentView = (props) => {
13899
13922
  if (shouldRenderRow) {
13900
13923
  FieldContainer = eagle.Row;
13901
13924
  fieldContainerProps = {
13902
- gutter: [24, 8]
13925
+ gutter: [24, 8],
13926
+ className: "c1lh8loq"
13903
13927
  };
13904
13928
  }
13905
13929
  return /* @__PURE__ */ common.jsxRuntimeExports.jsx(GroupContainer, {
@@ -16618,7 +16642,7 @@ function ConfirmModal({
16618
16642
  t: t2
16619
16643
  } = common.useTranslation();
16620
16644
  const popModal = eagle.usePopModal();
16621
- return /* @__PURE__ */ common.jsxRuntimeExports.jsx(eagle.Modal, {
16645
+ return /* @__PURE__ */ common.jsxRuntimeExports.jsx(eagle.LegacyModal, {
16622
16646
  className: SmallModalStyle,
16623
16647
  width: "414px",
16624
16648
  title: t2("dovetail.edit_form"),
@@ -19367,9 +19391,9 @@ const PortMappingColumnRenderer = (i18n2) => {
19367
19391
  style: {
19368
19392
  whiteSpace: "pre"
19369
19393
  },
19370
- children: [v.servicePort, " > ", v.targetPort, "/", v.protocol]
19394
+ children: [v.servicePort, " ", v.targetPort, "/", v.protocol]
19371
19395
  }),
19372
- tooltip: `${v.servicePort} > ${v.targetPort}/${v.protocol}`
19396
+ tooltip: `${v.servicePort} ${v.targetPort}/${v.protocol}`
19373
19397
  }, v.servicePort));
19374
19398
  return /* @__PURE__ */ common.jsxRuntimeExports.jsx(ValueDisplay, {
19375
19399
  value: content
@@ -19995,7 +20019,9 @@ exports.NamespaceField = NamespaceField;
19995
20019
  exports.NamespaceSelectWidget = NamespaceSelectWidget;
19996
20020
  exports.NamespacesFilter = NamespacesFilter;
19997
20021
  exports.NetworkPolicyEgressRulesGroup = NetworkPolicyEgressRulesGroup;
20022
+ exports.NetworkPolicyEgressRulesTab = NetworkPolicyEgressRulesTab;
19998
20023
  exports.NetworkPolicyIngressRulesGroup = NetworkPolicyIngressRulesGroup;
20024
+ exports.NetworkPolicyIngressRulesTab = NetworkPolicyIngressRulesTab;
19999
20025
  exports.NetworkPolicyModel = NetworkPolicyModel;
20000
20026
  exports.NetworkPolicyRulesViewer = NetworkPolicyRulesViewer;
20001
20027
  exports.NodeModel = NodeModel;
package/dist/refine.js CHANGED
@@ -11,7 +11,7 @@ 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, 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";
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, LegacyModal, 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
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";
@@ -11000,7 +11000,7 @@ const DeleteManyButton = (props) => {
11000
11000
  }, [setVisible]);
11001
11001
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
11002
11002
  /* @__PURE__ */ jsxRuntimeExports.jsx(Button, { type: "primary", danger: true, onClick, children: t2("dovetail.delete") }),
11003
- visible ? /* @__PURE__ */ jsxRuntimeExports.jsx(Modal, { ...modalProps }) : null
11003
+ visible ? /* @__PURE__ */ jsxRuntimeExports.jsx(LegacyModal, { ...modalProps }) : null
11004
11004
  ] });
11005
11005
  };
11006
11006
  const index_1iwpuwe = "";
@@ -13049,6 +13049,36 @@ const LabelsAndAnnotationsShow = ({
13049
13049
  })]
13050
13050
  });
13051
13051
  };
13052
+ const NetworkPolicyRulesViewer_r6jity = "";
13053
+ const MonacoYamlEditor$3 = lazy(() => Promise.resolve().then(() => MonacoYamlEditor$1));
13054
+ const EditorStyle$1 = "e1cjl2b8";
13055
+ const NetworkPolicyRulesViewer = ({
13056
+ ingressOrEgress,
13057
+ kind
13058
+ }) => {
13059
+ const {
13060
+ t: t2
13061
+ } = useTranslation();
13062
+ if (!ingressOrEgress) {
13063
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(WidgetErrorContent, {
13064
+ errorText: t2("dovetail.no_resource", {
13065
+ kind: kind || t2("dovetail.rule")
13066
+ }),
13067
+ type: ErrorContentType.List
13068
+ });
13069
+ }
13070
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(Suspense, {
13071
+ fallback: /* @__PURE__ */ jsxRuntimeExports.jsx(Loading, {}),
13072
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(MonacoYamlEditor$3, {
13073
+ schemas: [],
13074
+ defaultValue: yaml$2.dump(ingressOrEgress),
13075
+ height: "100%",
13076
+ className: EditorStyle$1,
13077
+ readOnly: true,
13078
+ isScrollOnFocus: true
13079
+ })
13080
+ });
13081
+ };
13052
13082
  const baseNoReset = "";
13053
13083
  const index_14irc29 = "";
13054
13084
  const WrapperStyle$3 = "wve7dfm";
@@ -13244,6 +13274,7 @@ const PodLog = ({
13244
13274
  })]
13245
13275
  });
13246
13276
  };
13277
+ const tabs_1q5et9v = "";
13247
13278
  const EventsTab = ({
13248
13279
  i18n: i18n2,
13249
13280
  size
@@ -13251,15 +13282,13 @@ const EventsTab = ({
13251
13282
  title: i18n2.t("dovetail.event"),
13252
13283
  key: "events",
13253
13284
  background: "white",
13254
- groups: [
13255
- {
13256
- areas: [
13257
- {
13258
- fields: [EventsTableTabField({ size })]
13259
- }
13260
- ]
13261
- }
13262
- ]
13285
+ groups: [{
13286
+ areas: [{
13287
+ fields: [EventsTableTabField({
13288
+ size
13289
+ })]
13290
+ }]
13291
+ }]
13263
13292
  });
13264
13293
  const ConditionsTab = ({
13265
13294
  i18n: i18n2,
@@ -13268,32 +13297,25 @@ const ConditionsTab = ({
13268
13297
  title: i18n2.t("dovetail.condition"),
13269
13298
  key: "conditions",
13270
13299
  background: "white",
13271
- groups: [
13272
- {
13273
- areas: [
13274
- {
13275
- fields: [
13276
- {
13277
- key: "Conditions",
13278
- path: ["status", "conditions"],
13279
- renderContent: (value2) => {
13280
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
13281
- "div",
13282
- {
13283
- style: {
13284
- padding: size === "small" ? "0 12px" : "0 24px",
13285
- height: "100%"
13286
- },
13287
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(ConditionsTable, { conditions: value2 })
13288
- }
13289
- );
13290
- }
13291
- }
13292
- ]
13300
+ groups: [{
13301
+ areas: [{
13302
+ fields: [{
13303
+ key: "Conditions",
13304
+ path: ["status", "conditions"],
13305
+ renderContent: (value2) => {
13306
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
13307
+ style: {
13308
+ padding: size === "small" ? "0 12px" : "0 24px",
13309
+ height: "100%"
13310
+ },
13311
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(ConditionsTable, {
13312
+ conditions: value2
13313
+ })
13314
+ });
13293
13315
  }
13294
- ]
13295
- }
13296
- ]
13316
+ }]
13317
+ }]
13318
+ }]
13297
13319
  });
13298
13320
  const LabelAnnotationsTab = ({
13299
13321
  i18n: i18n2,
@@ -13302,53 +13324,41 @@ const LabelAnnotationsTab = ({
13302
13324
  title: i18n2.t("dovetail.label_annotations"),
13303
13325
  key: "label-annotations",
13304
13326
  background: "white",
13305
- groups: [
13306
- {
13307
- areas: [
13308
- {
13309
- fields: [
13310
- {
13311
- key: "label-annotations",
13312
- path: [],
13313
- renderContent: (_, record) => {
13314
- var _a, _b;
13315
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
13316
- LabelsAndAnnotationsShow,
13317
- {
13318
- labels: (_a = record.metadata) == null ? void 0 : _a.labels,
13319
- annotations: (_b = record.metadata) == null ? void 0 : _b.annotations,
13320
- size
13321
- }
13322
- );
13323
- }
13324
- }
13325
- ]
13327
+ groups: [{
13328
+ areas: [{
13329
+ fields: [{
13330
+ key: "label-annotations",
13331
+ path: [],
13332
+ renderContent: (_, record) => {
13333
+ var _a, _b;
13334
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(LabelsAndAnnotationsShow, {
13335
+ labels: (_a = record.metadata) == null ? void 0 : _a.labels,
13336
+ annotations: (_b = record.metadata) == null ? void 0 : _b.annotations,
13337
+ size
13338
+ });
13326
13339
  }
13327
- ]
13328
- }
13329
- ]
13340
+ }]
13341
+ }]
13342
+ }]
13330
13343
  });
13331
13344
  const PodLogTab = (i18n2, apiUrl) => ({
13332
13345
  title: i18n2.t("dovetail.log"),
13333
13346
  key: "pod-log",
13334
13347
  background: "white",
13335
- groups: [
13336
- {
13337
- areas: [
13338
- {
13339
- fields: [
13340
- {
13341
- key: "log",
13342
- path: [],
13343
- renderContent: (_, record) => {
13344
- return /* @__PURE__ */ jsxRuntimeExports.jsx(PodLog, { pod: record, apiUrl });
13345
- }
13346
- }
13347
- ]
13348
+ groups: [{
13349
+ areas: [{
13350
+ fields: [{
13351
+ key: "log",
13352
+ path: [],
13353
+ renderContent: (_, record) => {
13354
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(PodLog, {
13355
+ pod: record,
13356
+ apiUrl
13357
+ });
13348
13358
  }
13349
- ]
13350
- }
13351
- ]
13359
+ }]
13360
+ }]
13361
+ }]
13352
13362
  });
13353
13363
  const PortsTab = ({
13354
13364
  i18n: i18n2
@@ -13356,15 +13366,11 @@ const PortsTab = ({
13356
13366
  title: i18n2.t("dovetail.port"),
13357
13367
  key: "ports",
13358
13368
  background: "white",
13359
- groups: [
13360
- {
13361
- areas: [
13362
- {
13363
- fields: [PortsTableField()]
13364
- }
13365
- ]
13366
- }
13367
- ]
13369
+ groups: [{
13370
+ areas: [{
13371
+ fields: [PortsTableField()]
13372
+ }]
13373
+ }]
13368
13374
  });
13369
13375
  const IngressRulesTab = ({
13370
13376
  i18n: i18n2
@@ -13372,11 +13378,11 @@ const IngressRulesTab = ({
13372
13378
  title: i18n2.t("dovetail.rule"),
13373
13379
  key: "ingress-rules",
13374
13380
  background: "white",
13375
- groups: [
13376
- {
13377
- areas: [{ fields: [IngressRulesTableTabField()] }]
13378
- }
13379
- ]
13381
+ groups: [{
13382
+ areas: [{
13383
+ fields: [IngressRulesTableTabField()]
13384
+ }]
13385
+ }]
13380
13386
  });
13381
13387
  const DataTab = ({
13382
13388
  i18n: i18n2
@@ -13384,11 +13390,11 @@ const DataTab = ({
13384
13390
  title: i18n2.t("dovetail.data"),
13385
13391
  key: "data",
13386
13392
  background: "white",
13387
- groups: [
13388
- {
13389
- areas: [{ fields: [DataField(i18n2)] }]
13390
- }
13391
- ]
13393
+ groups: [{
13394
+ areas: [{
13395
+ fields: [DataField(i18n2)]
13396
+ }]
13397
+ }]
13392
13398
  });
13393
13399
  const SecretDataTab = ({
13394
13400
  i18n: i18n2
@@ -13396,42 +13402,59 @@ const SecretDataTab = ({
13396
13402
  title: i18n2.t("dovetail.data"),
13397
13403
  key: "secret-data",
13398
13404
  background: "white",
13399
- groups: [
13400
- {
13401
- areas: [{ fields: [SecretDataField()] }]
13402
- }
13403
- ]
13405
+ groups: [{
13406
+ areas: [{
13407
+ fields: [SecretDataField()]
13408
+ }]
13409
+ }]
13410
+ });
13411
+ const NetworkPolicyRulesViewerStyle = "nrkw30o";
13412
+ const NetworkPolicyIngressRulesTab = ({
13413
+ i18n: i18n2
13414
+ }) => ({
13415
+ title: i18n2.t("dovetail.ingress_rule"),
13416
+ key: "ingress-rules",
13417
+ background: "white",
13418
+ groups: [{
13419
+ areas: [{
13420
+ fields: [{
13421
+ key: "Ingress",
13422
+ path: ["spec", "ingress"],
13423
+ render: (ingress) => {
13424
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
13425
+ className: NetworkPolicyRulesViewerStyle,
13426
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(NetworkPolicyRulesViewer, {
13427
+ ingressOrEgress: ingress
13428
+ })
13429
+ });
13430
+ }
13431
+ }]
13432
+ }]
13433
+ }]
13434
+ });
13435
+ const NetworkPolicyEgressRulesTab = ({
13436
+ i18n: i18n2
13437
+ }) => ({
13438
+ title: i18n2.t("dovetail.egress_rule"),
13439
+ key: "egress-rules",
13440
+ background: "white",
13441
+ groups: [{
13442
+ areas: [{
13443
+ fields: [{
13444
+ key: "Egress",
13445
+ path: ["spec", "egress"],
13446
+ render: (egress) => {
13447
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
13448
+ className: NetworkPolicyRulesViewerStyle,
13449
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(NetworkPolicyRulesViewer, {
13450
+ ingressOrEgress: egress
13451
+ })
13452
+ });
13453
+ }
13454
+ }]
13455
+ }]
13456
+ }]
13404
13457
  });
13405
- const NetworkPolicyRulesViewer_r6jity = "";
13406
- const MonacoYamlEditor$3 = lazy(() => Promise.resolve().then(() => MonacoYamlEditor$1));
13407
- const EditorStyle$1 = "e1cjl2b8";
13408
- const NetworkPolicyRulesViewer = ({
13409
- ingressOrEgress,
13410
- kind
13411
- }) => {
13412
- const {
13413
- t: t2
13414
- } = useTranslation();
13415
- if (!ingressOrEgress) {
13416
- return /* @__PURE__ */ jsxRuntimeExports.jsx(WidgetErrorContent, {
13417
- errorText: t2("dovetail.no_resource", {
13418
- kind: kind || t2("dovetail.rule")
13419
- }),
13420
- type: ErrorContentType.Card
13421
- });
13422
- }
13423
- return /* @__PURE__ */ jsxRuntimeExports.jsx(Suspense, {
13424
- fallback: /* @__PURE__ */ jsxRuntimeExports.jsx(Loading, {}),
13425
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(MonacoYamlEditor$3, {
13426
- schemas: [],
13427
- defaultValue: yaml$2.dump(ingressOrEgress),
13428
- height: "300px",
13429
- className: EditorStyle$1,
13430
- readOnly: true,
13431
- isScrollOnFocus: true
13432
- })
13433
- });
13434
- };
13435
13458
  const PodContainersTable = ({
13436
13459
  containerStatuses,
13437
13460
  initContainerStatuses
@@ -13722,7 +13745,7 @@ function Tabs(props) {
13722
13745
  return /* @__PURE__ */ jsxRuntimeExports.jsx(TabsTabPane, { tab: tab.title, children: tab.children }, tab.title);
13723
13746
  }) });
13724
13747
  }
13725
- const ShowContentView_m77hzs = "";
13748
+ const ShowContentView_1gmp0tu = "";
13726
13749
  const ShowContentWrapperStyle = "soapvs9";
13727
13750
  const BackButton = "b13d603q";
13728
13751
  const ToolBarWrapper = "tm8eaia";
@@ -13880,7 +13903,8 @@ const ShowContentView = (props) => {
13880
13903
  if (shouldRenderRow) {
13881
13904
  FieldContainer = Row;
13882
13905
  fieldContainerProps = {
13883
- gutter: [24, 8]
13906
+ gutter: [24, 8],
13907
+ className: "c1lh8loq"
13884
13908
  };
13885
13909
  }
13886
13910
  return /* @__PURE__ */ jsxRuntimeExports.jsx(GroupContainer, {
@@ -16599,7 +16623,7 @@ function ConfirmModal({
16599
16623
  t: t2
16600
16624
  } = useTranslation();
16601
16625
  const popModal = usePopModal();
16602
- return /* @__PURE__ */ jsxRuntimeExports.jsx(Modal, {
16626
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(LegacyModal, {
16603
16627
  className: SmallModalStyle,
16604
16628
  width: "414px",
16605
16629
  title: t2("dovetail.edit_form"),
@@ -19348,9 +19372,9 @@ const PortMappingColumnRenderer = (i18n2) => {
19348
19372
  style: {
19349
19373
  whiteSpace: "pre"
19350
19374
  },
19351
- children: [v.servicePort, " > ", v.targetPort, "/", v.protocol]
19375
+ children: [v.servicePort, " ", v.targetPort, "/", v.protocol]
19352
19376
  }),
19353
- tooltip: `${v.servicePort} > ${v.targetPort}/${v.protocol}`
19377
+ tooltip: `${v.servicePort} ${v.targetPort}/${v.protocol}`
19354
19378
  }, v.servicePort));
19355
19379
  return /* @__PURE__ */ jsxRuntimeExports.jsx(ValueDisplay, {
19356
19380
  value: content
@@ -19977,7 +20001,9 @@ export {
19977
20001
  NamespaceSelectWidget,
19978
20002
  NamespacesFilter,
19979
20003
  NetworkPolicyEgressRulesGroup,
20004
+ NetworkPolicyEgressRulesTab,
19980
20005
  NetworkPolicyIngressRulesGroup,
20006
+ NetworkPolicyIngressRulesTab,
19981
20007
  NetworkPolicyModel,
19982
20008
  NetworkPolicyRulesViewer,
19983
20009
  NodeModel,
package/dist/style.css CHANGED
@@ -2033,6 +2033,61 @@
2033
2033
  .c1wn08fn {
2034
2034
  display: flex;
2035
2035
  flex-direction: column;
2036
+ }/* // basic */
2037
+ /* FishEye Color Variables and Functions */
2038
+ /*
2039
+ --------------------------- Primary Color ---------------------------
2040
+ */
2041
+ /*
2042
+ ---------------------------When necessary to add at any time---------------------------
2043
+ */
2044
+ /* computed */
2045
+ /* blue */
2046
+ /* green */
2047
+ /* yellow */
2048
+ /* red */
2049
+ /* purple */
2050
+ /* palette global token*/
2051
+ /* color opaque */
2052
+ /* color transparent */
2053
+ /* blue transparent */
2054
+ /* green transparent */
2055
+ /* yellow transparent */
2056
+ /* red transparent */
2057
+ /* gray transparent */
2058
+ /* white transparent */
2059
+ /* gradient opaque */
2060
+ /* blue radial gradient */
2061
+ /* blue linear gradient */
2062
+ /* green radial gradient */
2063
+ /* yellow radial gradient */
2064
+ /* red radial gradient */
2065
+ /* gray radial gradient */
2066
+ /* white to gray radial gradient */
2067
+ /* white to gray linear gradient */
2068
+ /* gradient transparent */
2069
+ /* secondary palette */
2070
+ /* purple radial gradient */
2071
+ /* refine alias color */
2072
+ /* text */
2073
+ /* link */
2074
+ /* fill */
2075
+ /* fill element */
2076
+ /* fill interaction */
2077
+ /* stroke */
2078
+ /* background */
2079
+ /* dim */
2080
+ /* box shadow */
2081
+ /* fisheye */
2082
+ /* z-index */
2083
+ .e1cjl2b8 {
2084
+ border-radius: 8px;
2085
+ border: 1px solid rgba(211, 218, 235, 0.6);
2086
+ }
2087
+ .e1cjl2b8 .monaco-editor,
2088
+ .e1cjl2b8 .monaco-scrollable-element,
2089
+ .e1cjl2b8 .overflow-guard > .margin {
2090
+ border-radius: 8px;
2036
2091
  }.pf-v5-t-light {
2037
2092
  --pf-v5-global--Color--100: var(--pf-v5-global--Color--dark-100);
2038
2093
  --pf-v5-global--Color--200: var(--pf-v5-global--Color--dark-200);
@@ -3391,14 +3446,11 @@
3391
3446
  /* box shadow */
3392
3447
  /* fisheye */
3393
3448
  /* z-index */
3394
- .e1cjl2b8 {
3395
- border-radius: 8px;
3396
- border: 1px solid rgba(211, 218, 235, 0.6);
3397
- }
3398
- .e1cjl2b8 .monaco-editor,
3399
- .e1cjl2b8 .monaco-scrollable-element,
3400
- .e1cjl2b8 .overflow-guard > .margin {
3401
- border-radius: 8px;
3449
+ .nrkw30o {
3450
+ padding: 16px 24px;
3451
+ width: 100%;
3452
+ height: 100%;
3453
+ min-height: 300px;
3402
3454
  }/* // basic */
3403
3455
  /* FishEye Color Variables and Functions */
3404
3456
  /*
@@ -3452,9 +3504,6 @@
3452
3504
  flex-direction: column;
3453
3505
  background: linear-gradient(180deg, #fff 0%, #edf0f7 100%);
3454
3506
  }
3455
- .soapvs9 .ant-row {
3456
- margin-right: 0 !important;
3457
- }
3458
3507
 
3459
3508
  .b13d603q {
3460
3509
  color: rgba(0, 21, 64, 0.3);
@@ -3577,6 +3626,11 @@
3577
3626
 
3578
3627
  .cxd8k68 {
3579
3628
  padding: 4px 0;
3629
+ }
3630
+
3631
+ .c1lh8loq.ant-row {
3632
+ row-gap: 4px;
3633
+ margin-right: 0 !important;
3580
3634
  }/* // basic */
3581
3635
  /* FishEye Color Variables and Functions */
3582
3636
  /*
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dovetail-v2/refine",
3
- "version": "0.3.14-alpha.0",
3
+ "version": "0.3.14-alpha.2",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist",
@@ -10,8 +10,8 @@
10
10
  "module": "./dist/refine.js",
11
11
  "types": "./dist/index.d.ts",
12
12
  "dependencies": {
13
- "@cloudtower/eagle": "^0.34.6",
14
- "@cloudtower/icons-react": "^0.34.6",
13
+ "@cloudtower/eagle": "^0.34.24",
14
+ "@cloudtower/icons-react": "^0.34.24",
15
15
  "@patternfly/react-core": "^5.1.1",
16
16
  "@patternfly/react-log-viewer": "^5.0.0",
17
17
  "@refinedev/core": "^4.47.2",
@@ -86,8 +86,8 @@
86
86
  "vite-plugin-commonjs": "^0.10.0"
87
87
  },
88
88
  "peerDependencies": {
89
- "@cloudtower/eagle": "^0.34.6",
90
- "@cloudtower/icons-react": "^0.34.6",
89
+ "@cloudtower/eagle": "^0.34.24",
90
+ "@cloudtower/icons-react": "^0.34.24",
91
91
  "@refinedev/core": "^4.47.2",
92
92
  "antd": "4.5.0",
93
93
  "i18next": "^23.2.3",