@prorobotech/openapi-k8s-toolkit 1.2.1-alpha.6 → 1.2.1-alpha.8

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,8 +1,8 @@
1
1
  import styled, { createGlobalStyle } from 'styled-components';
2
2
  import * as React$1 from 'react';
3
3
  import React__default, { useState, useRef, useLayoutEffect, useReducer, useEffect, useCallback, useMemo, Fragment, createContext, useContext, memo, createElement, isValidElement, cloneElement, useInsertionEffect, useSyncExternalStore, forwardRef, useImperativeHandle, PureComponent, Children, Component, Suspense } from 'react';
4
- import { Input, Tree, Modal, Alert, theme, Select, Tag, Flex, Typography, Breadcrumb, Spin, Menu, Tooltip as Tooltip$1, Space, Button, Card as Card$1, Row, Col, Tabs, notification, Form, Popover, Switch, Segmented, Table, Progress, Statistic, Dropdown, Slider, InputNumber, Result, Radio, DatePicker, Checkbox, Empty } from 'antd';
5
- import { LoadingOutlined, ExclamationCircleFilled, CloseCircleFilled, CheckCircleFilled, PlusOutlined, ClearOutlined, MinusOutlined, CaretDownOutlined, CaretRightOutlined, InfoCircleOutlined, EyeOutlined, EyeInvisibleOutlined, SearchOutlined, MoreOutlined, CheckOutlined, CloseOutlined, BugOutlined, EllipsisOutlined, PoweroffOutlined, FullscreenExitOutlined, FullscreenOutlined, SettingOutlined, ReloadOutlined } from '@ant-design/icons';
4
+ import { Input, Tree, Modal, Alert, theme, Select, Tag, Flex, Typography, Breadcrumb, Spin, Menu, Tooltip as Tooltip$1, Space, Button, Card as Card$1, Row, Col, Tabs, notification, Form, Popover, Switch, Segmented, Table, Progress, Statistic, message, Dropdown, Slider, InputNumber, Result, DatePicker, Radio, Checkbox, Empty } from 'antd';
5
+ import { LoadingOutlined, ExclamationCircleFilled, CloseCircleFilled, CheckCircleFilled, PlusOutlined, ClearOutlined, MinusOutlined, CaretDownOutlined, CaretRightOutlined, InfoCircleOutlined, EyeOutlined, EyeInvisibleOutlined, CopyOutlined, SearchOutlined, MoreOutlined, CheckOutlined, CloseOutlined, BugOutlined, EllipsisOutlined, PoweroffOutlined, FullscreenExitOutlined, FullscreenOutlined, SettingOutlined, ReloadOutlined } from '@ant-design/icons';
6
6
  import { useNavigate, useSearchParams, Link, useLocation, useParams } from 'react-router-dom';
7
7
  import { useQuery, useQueries, useQueryClient } from '@tanstack/react-query';
8
8
  import RFB from 'novnc-next';
@@ -1577,7 +1577,7 @@ const CustomTreeProvider = styled.div`
1577
1577
  justify-content: center;
1578
1578
  }
1579
1579
  `;
1580
- const Styled$E = {
1580
+ const Styled$F = {
1581
1581
  CustomTreeProvider
1582
1582
  };
1583
1583
 
@@ -1642,7 +1642,7 @@ const TreeWithSearch = ({ treeData, onSelect }) => {
1642
1642
  });
1643
1643
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
1644
1644
  /* @__PURE__ */ jsxRuntimeExports.jsx(Search$1, { style: { marginBottom: 8 }, placeholder: "Search", onChange }),
1645
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$E.CustomTreeProvider, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
1645
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$F.CustomTreeProvider, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
1646
1646
  Tree,
1647
1647
  {
1648
1648
  treeData: loop(treeData),
@@ -8200,14 +8200,14 @@ const ContentContainer = styled.div`
8200
8200
  display: ${({ $displayFlex }) => $displayFlex ? "flex" : "block"};
8201
8201
  flex-flow: ${({ $flexFlow }) => $flexFlow};
8202
8202
  `;
8203
- const Styled$D = {
8203
+ const Styled$E = {
8204
8204
  ContentContainer
8205
8205
  };
8206
8206
 
8207
8207
  const ContentCard$1 = ({ children, flexGrow, displayFlex, flexFlow, maxHeight }) => {
8208
8208
  const { token } = theme.useToken();
8209
8209
  return /* @__PURE__ */ jsxRuntimeExports.jsx(
8210
- Styled$D.ContentContainer,
8210
+ Styled$E.ContentContainer,
8211
8211
  {
8212
8212
  $flexGrow: flexGrow,
8213
8213
  $bgColor: token.colorBgContainer,
@@ -8268,13 +8268,13 @@ const UncontrolledSelect$1 = styled(Select)`
8268
8268
  padding-inline: 8px;
8269
8269
  }
8270
8270
  `;
8271
- const Styled$C = {
8271
+ const Styled$D = {
8272
8272
  UncontrolledSelect: UncontrolledSelect$1
8273
8273
  };
8274
8274
 
8275
8275
  const UncontrolledSelect = (props) => {
8276
8276
  const { isCursorPointer } = props;
8277
- return /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$C.UncontrolledSelect, { ...props, $isCursorPointer: isCursorPointer });
8277
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$D.UncontrolledSelect, { ...props, $isCursorPointer: isCursorPointer });
8278
8278
  };
8279
8279
 
8280
8280
  const CustomSelect$5 = styled(Select)`
@@ -8322,13 +8322,13 @@ const CustomSelect$5 = styled(Select)`
8322
8322
  margin-block: 0 !important;
8323
8323
  }
8324
8324
  `;
8325
- const Styled$B = {
8325
+ const Styled$C = {
8326
8326
  CustomSelect: CustomSelect$5
8327
8327
  };
8328
8328
 
8329
8329
  const CustomSelect$4 = (props) => {
8330
8330
  const { paddingContainerEnd, ...rest } = props;
8331
- return /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$B.CustomSelect, { $paddingContainerEnd: paddingContainerEnd, ...rest });
8331
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$C.CustomSelect, { $paddingContainerEnd: paddingContainerEnd, ...rest });
8332
8332
  };
8333
8333
 
8334
8334
  const CursorPointerTag = styled(Tag)`
@@ -8475,7 +8475,7 @@ const Abbr$2 = styled.span`
8475
8475
  height: min-content;
8476
8476
  margin-right: 4px;
8477
8477
  `;
8478
- const Styled$A = {
8478
+ const Styled$B = {
8479
8479
  Abbr: Abbr$2
8480
8480
  };
8481
8481
 
@@ -8515,7 +8515,7 @@ const ResourceLink = ({
8515
8515
  baseFactoriesMapping
8516
8516
  });
8517
8517
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(Flex, { align: "center", gap: 8, children: [
8518
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$A.Abbr, { $bgColor: bgColor, children: abbr }),
8518
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$B.Abbr, { $bgColor: bgColor, children: abbr }),
8519
8519
  resourceLink ? /* @__PURE__ */ jsxRuntimeExports.jsx(
8520
8520
  Typography.Link,
8521
8521
  {
@@ -8554,7 +8554,7 @@ const NoWrapContainer = styled.div`
8554
8554
  flex-wrap: nowrap !important;
8555
8555
  }
8556
8556
  `;
8557
- const Styled$z = {
8557
+ const Styled$A = {
8558
8558
  PositionRelativeContainer,
8559
8559
  FullWidthContainer,
8560
8560
  NoWrapContainer
@@ -8597,9 +8597,9 @@ const CollapsibleBreadcrumb = ({ items }) => {
8597
8597
  };
8598
8598
  return [firstItem, ellipsisItem, lastItem];
8599
8599
  };
8600
- return /* @__PURE__ */ jsxRuntimeExports.jsxs(Styled$z.PositionRelativeContainer, { children: [
8601
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$z.FullWidthContainer, { ref: containerRef, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Breadcrumb, { separator: ">", items: renderItems() }) }),
8602
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$z.NoWrapContainer, { ref: breadcrumbRef, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Breadcrumb, { separator: ">", items, style: { display: "flex", flexWrap: "nowrap" } }) })
8600
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(Styled$A.PositionRelativeContainer, { children: [
8601
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$A.FullWidthContainer, { ref: containerRef, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Breadcrumb, { separator: ">", items: renderItems() }) }),
8602
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$A.NoWrapContainer, { ref: breadcrumbRef, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Breadcrumb, { separator: ">", items, style: { display: "flex", flexWrap: "nowrap" } }) })
8603
8603
  ] });
8604
8604
  };
8605
8605
 
@@ -8607,12 +8607,12 @@ const HeightDiv$1 = styled.div`
8607
8607
  min-height: 22px;
8608
8608
  width: 100%;
8609
8609
  `;
8610
- const Styled$y = {
8610
+ const Styled$z = {
8611
8611
  HeightDiv: HeightDiv$1
8612
8612
  };
8613
8613
 
8614
8614
  const ManageableBreadcrumbs = ({ data }) => {
8615
- return /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$y.HeightDiv, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(CollapsibleBreadcrumb, { items: data.breadcrumbItems }) });
8615
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$z.HeightDiv, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(CollapsibleBreadcrumb, { items: data.breadcrumbItems }) });
8616
8616
  };
8617
8617
 
8618
8618
  const kindByGvr = (entries) => (gvr) => {
@@ -9598,7 +9598,7 @@ const HeightDiv = styled.div`
9598
9598
  min-height: 22px;
9599
9599
  width: 100%;
9600
9600
  `;
9601
- const Styled$x = {
9601
+ const Styled$y = {
9602
9602
  HeightDiv
9603
9603
  };
9604
9604
 
@@ -9627,7 +9627,7 @@ const ManageableBreadcrumbsProvider = ({
9627
9627
  return null;
9628
9628
  }
9629
9629
  if (rawDataLoading) {
9630
- return /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$x.HeightDiv, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(Spin, {}) });
9630
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$y.HeightDiv, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(Spin, {}) });
9631
9631
  }
9632
9632
  if (!rawData) {
9633
9633
  return null;
@@ -9642,7 +9642,7 @@ const ManageableBreadcrumbsProvider = ({
9642
9642
  idToCompare
9643
9643
  });
9644
9644
  if (!result) {
9645
- return /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$x.HeightDiv, {});
9645
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$y.HeightDiv, {});
9646
9646
  }
9647
9647
  return /* @__PURE__ */ jsxRuntimeExports.jsx(ManageableBreadcrumbs, { data: result }, JSON.stringify(idToCompare));
9648
9648
  };
@@ -9670,7 +9670,7 @@ const CustomMenu = styled(Menu)`
9670
9670
  margin: 0 !important;
9671
9671
  }
9672
9672
  `;
9673
- const Styled$w = {
9673
+ const Styled$x = {
9674
9674
  CustomMenu
9675
9675
  };
9676
9676
 
@@ -9697,7 +9697,7 @@ const ManageableSidebar = ({ data, noMarginTop }) => {
9697
9697
  setSelectedKeys(data.selectedKeys);
9698
9698
  }, [data.selectedKeys]);
9699
9699
  return /* @__PURE__ */ jsxRuntimeExports.jsx(
9700
- Styled$w.CustomMenu,
9700
+ Styled$x.CustomMenu,
9701
9701
  {
9702
9702
  selectedKeys,
9703
9703
  onSelect: () => {
@@ -33885,7 +33885,7 @@ const ShortenedText = styled.div`
33885
33885
  white-space: nowrap;
33886
33886
  text-overflow: ellipsis;
33887
33887
  `;
33888
- const Styled$v = {
33888
+ const Styled$w = {
33889
33889
  ShortenedText
33890
33890
  };
33891
33891
 
@@ -33894,7 +33894,7 @@ const ShortenedTextWithTooltip = ({ text, trimLength, maxWidth = 200 }) => {
33894
33894
  const trimmedText = text.substring(0, trimLength);
33895
33895
  return /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip$1, { title: text, placement: "top", children: trimmedText });
33896
33896
  }
33897
- return /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip$1, { title: text, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$v.ShortenedText, { $maxWidth: maxWidth, children: text }) });
33897
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip$1, { title: text, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$w.ShortenedText, { $maxWidth: maxWidth, children: text }) });
33898
33898
  };
33899
33899
 
33900
33900
  const FilterDropdown = ({
@@ -43052,7 +43052,7 @@ const BigText$1 = styled.div`
43052
43052
  font-size: 16px;
43053
43053
  line-height: 24px;
43054
43054
  `;
43055
- const Styled$u = {
43055
+ const Styled$v = {
43056
43056
  BorderRadiusContainer: BorderRadiusContainer$1,
43057
43057
  ControlsRowContainer: ControlsRowContainer$1,
43058
43058
  BigText: BigText$1
@@ -43176,7 +43176,7 @@ const YamlEditorSingleton$1 = ({
43176
43176
  };
43177
43177
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
43178
43178
  contextHolder,
43179
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$u.BorderRadiusContainer, { $designNewLayoutHeight: designNewLayoutHeight, $colorBorder: token.colorBorder, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
43179
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$v.BorderRadiusContainer, { $designNewLayoutHeight: designNewLayoutHeight, $colorBorder: token.colorBorder, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
43180
43180
  Ft$1,
43181
43181
  {
43182
43182
  defaultLanguage: "yaml",
@@ -43195,7 +43195,7 @@ const YamlEditorSingleton$1 = ({
43195
43195
  }
43196
43196
  }
43197
43197
  ) }),
43198
- !readOnly && /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$u.ControlsRowContainer, { $bgColor: token.colorPrimaryBg, $designNewLayout: designNewLayout, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(Flex, { gap: designNewLayout ? 10 : 16, align: "center", children: [
43198
+ !readOnly && /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$v.ControlsRowContainer, { $bgColor: token.colorPrimaryBg, $designNewLayout: designNewLayout, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(Flex, { gap: designNewLayout ? 10 : 16, align: "center", children: [
43199
43199
  /* @__PURE__ */ jsxRuntimeExports.jsx(Button, { type: "primary", onClick: onSubmit, loading: isLoading, children: "Submit" }),
43200
43200
  backlink && /* @__PURE__ */ jsxRuntimeExports.jsx(Button, { onClick: () => navigate(backlink), children: "Cancel" }),
43201
43201
  /* @__PURE__ */ jsxRuntimeExports.jsx(Button, { onClick: handleReload, children: "Reload" })
@@ -43206,7 +43206,7 @@ const YamlEditorSingleton$1 = ({
43206
43206
  open: !!error,
43207
43207
  onOk: () => setError(void 0),
43208
43208
  onCancel: () => setError(void 0),
43209
- title: /* @__PURE__ */ jsxRuntimeExports.jsx(Typography.Text, { type: "danger", children: /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$u.BigText, { children: "Error!" }) }),
43209
+ title: /* @__PURE__ */ jsxRuntimeExports.jsx(Typography.Text, { type: "danger", children: /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$v.BigText, { children: "Error!" }) }),
43210
43210
  cancelButtonProps: { style: { display: "none" } },
43211
43211
  children: [
43212
43212
  "An error has occurred: ",
@@ -43319,14 +43319,14 @@ const YamlEditorSingleton = ({
43319
43319
  ] });
43320
43320
  };
43321
43321
 
43322
- const VisibilityContainer$2 = styled.div`
43322
+ const VisibilityContainer$1 = styled.div`
43323
43323
  display: ${({ $hidden }) => $hidden ? "none" : "block"};
43324
43324
  `;
43325
- const Styled$t = {
43326
- VisibilityContainer: VisibilityContainer$2
43325
+ const Styled$u = {
43326
+ VisibilityContainer: VisibilityContainer$1
43327
43327
  };
43328
43328
 
43329
- const VisibilityContainer$1 = ({
43329
+ const VisibilityContainer = ({
43330
43330
  data,
43331
43331
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
43332
43332
  children
@@ -43368,7 +43368,7 @@ const VisibilityContainer$1 = ({
43368
43368
  return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: "Loading multiquery" });
43369
43369
  }
43370
43370
  const shouldAutoHide = !criteria && (!valuePrepared || valuePrepared === "~undefined-value~");
43371
- return /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$t.VisibilityContainer, { $hidden: shouldAutoHide || shouldHideByCriteria, children });
43371
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$u.VisibilityContainer, { $hidden: shouldAutoHide || shouldHideByCriteria, children });
43372
43372
  };
43373
43373
 
43374
43374
  const unknownToString = (value) => {
@@ -43633,7 +43633,7 @@ const Content$1 = styled.div`
43633
43633
  display: ${({ $isOpen }) => $isOpen ? "block" : "none"};
43634
43634
  padding: ${({ $designNewLayout }) => $designNewLayout ? "0 0 0 6px" : "4px"};
43635
43635
  `;
43636
- const Styled$s = {
43636
+ const Styled$t = {
43637
43637
  Container: Container$3,
43638
43638
  TitleBar,
43639
43639
  Content: Content$1
@@ -43660,14 +43660,14 @@ const CustomCollapse = ({
43660
43660
  }
43661
43661
  };
43662
43662
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(
43663
- Styled$s.Container,
43663
+ Styled$t.Container,
43664
43664
  {
43665
43665
  $designNewLayout: designNewLayout,
43666
43666
  $borderColor: token.colorBorder,
43667
43667
  $bgColor: token.colorBgContainer,
43668
43668
  children: [
43669
43669
  /* @__PURE__ */ jsxRuntimeExports.jsxs(Flex, { justify: "space-between", children: [
43670
- /* @__PURE__ */ jsxRuntimeExports.jsxs(Styled$s.TitleBar, { onClick: () => toggleCollapse(), children: [
43670
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(Styled$t.TitleBar, { onClick: () => toggleCollapse(), children: [
43671
43671
  !designNewLayout && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: isOpen ? /* @__PURE__ */ jsxRuntimeExports.jsx(CaretDownOutlined, { size: 14 }) : /* @__PURE__ */ jsxRuntimeExports.jsx(CaretRightOutlined, { size: 14 }) }),
43672
43672
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: title }),
43673
43673
  designNewLayout && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: isOpen ? /* @__PURE__ */ jsxRuntimeExports.jsx(DownIcon, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(UpIcon, {}) })
@@ -43678,7 +43678,7 @@ const CustomCollapse = ({
43678
43678
  persistedCheckbox
43679
43679
  ] })
43680
43680
  ] }),
43681
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$s.Content, { $isOpen: isOpen, $designNewLayout: designNewLayout, children })
43681
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$t.Content, { $isOpen: isOpen, $designNewLayout: designNewLayout, children })
43682
43682
  ]
43683
43683
  }
43684
43684
  );
@@ -43712,13 +43712,13 @@ const CustomSizeTitle = styled.div`
43712
43712
  const Content = styled.div`
43713
43713
  padding: ${({ $designNewLayout }) => $designNewLayout ? "0 0 0 6px" : "4px"};
43714
43714
  `;
43715
- const Styled$r = {
43715
+ const Styled$s = {
43716
43716
  Content
43717
43717
  };
43718
43718
 
43719
43719
  const ArrayInsideContainer = ({ children }) => {
43720
43720
  const designNewLayout = useDesignNewLayout();
43721
- return /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$r.Content, { $designNewLayout: designNewLayout, children });
43721
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$s.Content, { $designNewLayout: designNewLayout, children });
43722
43722
  };
43723
43723
 
43724
43724
  const includesPath = (haystack, needle) => haystack.some((h) => h.length === needle.length && h.every((seg, i) => seg === String(needle[i])));
@@ -44271,7 +44271,7 @@ const LabelsToSearchParams = ({ data, children }) => {
44271
44271
  const ResetedFormList$3 = styled(Form.List)`
44272
44272
  margin-bottom: 8px;
44273
44273
  `;
44274
- const Styled$q = {
44274
+ const Styled$r = {
44275
44275
  ResetedFormList: ResetedFormList$3
44276
44276
  };
44277
44277
 
@@ -44356,7 +44356,7 @@ const EditModal$2 = ({
44356
44356
  /* @__PURE__ */ jsxRuntimeExports.jsx(Col, { span: cols[3], children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", {}) })
44357
44357
  ] }),
44358
44358
  /* @__PURE__ */ jsxRuntimeExports.jsx(Spacer$1, { $space: 10, $samespace: true }),
44359
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$q.ResetedFormList, { name: "taints", children: (fields, { add, remove }) => /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
44359
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$r.ResetedFormList, { name: "taints", children: (fields, { add, remove }) => /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
44360
44360
  fields.map(({ key, name, ...restField }) => /* @__PURE__ */ jsxRuntimeExports.jsxs(Row, { gutter: [16, 16], children: [
44361
44361
  /* @__PURE__ */ jsxRuntimeExports.jsx(Col, { span: cols[0], children: /* @__PURE__ */ jsxRuntimeExports.jsx(
44362
44362
  ResetedFormItem$1,
@@ -44596,7 +44596,7 @@ const Taints = ({ data, children }) => {
44596
44596
  const ResetedFormList$2 = styled(Form.List)`
44597
44597
  margin-bottom: 8px;
44598
44598
  `;
44599
- const Styled$p = {
44599
+ const Styled$q = {
44600
44600
  ResetedFormList: ResetedFormList$2
44601
44601
  };
44602
44602
 
@@ -44691,7 +44691,7 @@ const EditModal$1 = ({
44691
44691
  /* @__PURE__ */ jsxRuntimeExports.jsx(Col, { span: cols[4], children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", {}) })
44692
44692
  ] }),
44693
44693
  /* @__PURE__ */ jsxRuntimeExports.jsx(Spacer$1, { $space: 10, $samespace: true }),
44694
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$p.ResetedFormList, { name: "tolerations", children: (fields, { add, remove }) => /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
44694
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$q.ResetedFormList, { name: "tolerations", children: (fields, { add, remove }) => /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
44695
44695
  fields.map(({ key, name, ...restField }) => /* @__PURE__ */ jsxRuntimeExports.jsxs(Row, { gutter: [16, 16], children: [
44696
44696
  /* @__PURE__ */ jsxRuntimeExports.jsx(Col, { span: cols[0], children: /* @__PURE__ */ jsxRuntimeExports.jsx(
44697
44697
  ResetedFormItem$1,
@@ -44973,7 +44973,7 @@ const Tolerations = ({
44973
44973
  const ResetedFormList$1 = styled(Form.List)`
44974
44974
  margin-bottom: 8px;
44975
44975
  `;
44976
- const Styled$o = {
44976
+ const Styled$p = {
44977
44977
  ResetedFormList: ResetedFormList$1
44978
44978
  };
44979
44979
 
@@ -45063,7 +45063,7 @@ const EditModal = ({
45063
45063
  /* @__PURE__ */ jsxRuntimeExports.jsx(Col, { span: cols[2], children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", {}) })
45064
45064
  ] }),
45065
45065
  /* @__PURE__ */ jsxRuntimeExports.jsx(Spacer$1, { $space: 10, $samespace: true }),
45066
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$o.ResetedFormList, { name: "annotations", children: (fields, { add, remove }) => /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
45066
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$p.ResetedFormList, { name: "annotations", children: (fields, { add, remove }) => /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
45067
45067
  fields.map(({ key, name, ...restField }) => /* @__PURE__ */ jsxRuntimeExports.jsxs(Row, { gutter: [16, 16], children: [
45068
45068
  /* @__PURE__ */ jsxRuntimeExports.jsx(Col, { span: cols[0], children: /* @__PURE__ */ jsxRuntimeExports.jsx(
45069
45069
  ResetedFormItem$1,
@@ -46212,7 +46212,7 @@ const NotificationOverrides = createGlobalStyle`
46212
46212
  margin-bottom: 0 !important;
46213
46213
  }
46214
46214
  `;
46215
- const Styled$n = {
46215
+ const Styled$o = {
46216
46216
  NoSelect,
46217
46217
  DisabledInput,
46218
46218
  NotificationOverrides
@@ -46278,10 +46278,10 @@ const SecretBase64Plain = ({ data }) => {
46278
46278
  }
46279
46279
  };
46280
46280
  return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: containerStyle, children: [
46281
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$n.NotificationOverrides, {}),
46281
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$o.NotificationOverrides, {}),
46282
46282
  /* @__PURE__ */ jsxRuntimeExports.jsxs(Flex, { gap: 8, ...flexProps, children: [
46283
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$n.NoSelect, { style: inputContainerStyle, children: niceLooking ? /* @__PURE__ */ jsxRuntimeExports.jsx(te, { theme, hidden, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
46284
- Styled$n.DisabledInput,
46283
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$o.NoSelect, { style: inputContainerStyle, children: niceLooking ? /* @__PURE__ */ jsxRuntimeExports.jsx(te, { theme, hidden, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
46284
+ Styled$o.DisabledInput,
46285
46285
  {
46286
46286
  $hidden: hidden,
46287
46287
  ref: inputRef,
@@ -46296,7 +46296,7 @@ const SecretBase64Plain = ({ data }) => {
46296
46296
  value: decodedText
46297
46297
  }
46298
46298
  ) }) : /* @__PURE__ */ jsxRuntimeExports.jsx(
46299
- Styled$n.DisabledInput,
46299
+ Styled$o.DisabledInput,
46300
46300
  {
46301
46301
  $hidden: hidden,
46302
46302
  ref: inputRef,
@@ -46330,7 +46330,7 @@ const RoundSpan = styled.span`
46330
46330
  letter-spacing: 0.02em;
46331
46331
  box-sizing: content-box;
46332
46332
  `;
46333
- const Styled$m = {
46333
+ const Styled$n = {
46334
46334
  RoundSpan
46335
46335
  };
46336
46336
 
@@ -46369,7 +46369,7 @@ const ResourceBadge = ({ data }) => {
46369
46369
  multiQueryData
46370
46370
  }) : getUppercase(parsedValue);
46371
46371
  const bgColor = hslFromString(parsedValue, theme);
46372
- return /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$m.RoundSpan, { $bgColor: bgColor, style, children: parsedAbbreviation });
46372
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$n.RoundSpan, { $bgColor: bgColor, style, children: parsedAbbreviation });
46373
46373
  };
46374
46374
 
46375
46375
  const serializeLabelsWithNoEncoding = (input) => {
@@ -76960,6 +76960,190 @@ const DefaultIframe = ({ data, children }) => {
76960
76960
  ] });
76961
76961
  };
76962
76962
 
76963
+ const TitleSelect = styled(Select)`
76964
+ &&.ant-select {
76965
+ cursor: pointer;
76966
+
76967
+ .ant-select-selector {
76968
+ border: none;
76969
+ background: transparent;
76970
+ box-shadow: none;
76971
+ padding: 0;
76972
+ height: auto;
76973
+ cursor: pointer;
76974
+ }
76975
+
76976
+ .ant-select-selection-item {
76977
+ font-size: 20px;
76978
+ line-height: 24px;
76979
+ padding-inline-end: 24px;
76980
+ cursor: pointer;
76981
+ }
76982
+
76983
+ .ant-select-arrow {
76984
+ font-size: 14px;
76985
+ right: 0;
76986
+ cursor: pointer;
76987
+ color: inherit;
76988
+ }
76989
+
76990
+ &:hover .ant-select-selector {
76991
+ border: none;
76992
+ }
76993
+
76994
+ &.ant-select-focused .ant-select-selector {
76995
+ border: none;
76996
+ box-shadow: none;
76997
+ }
76998
+ }
76999
+ `;
77000
+ const Styled$m = {
77001
+ TitleSelect
77002
+ };
77003
+
77004
+ const DropdownRedirect = ({
77005
+ data,
77006
+ children
77007
+ }) => {
77008
+ const {
77009
+ cluster,
77010
+ apiVersion,
77011
+ apiGroup,
77012
+ namespace,
77013
+ plural,
77014
+ jsonPath,
77015
+ redirectUrl,
77016
+ currentValue,
77017
+ placeholder = "Select...",
77018
+ style,
77019
+ showSearch = true,
77020
+ loading: externalLoading
77021
+ } = data;
77022
+ const navigate = useNavigate();
77023
+ const { data: multiQueryData, isLoading: isMultiQueryLoading } = useMultiQuery();
77024
+ const partsOfUrl = usePartsOfUrl();
77025
+ const replaceValues = partsOfUrl.partsOfUrl.reduce((acc, value, index) => {
77026
+ acc[index.toString()] = value;
77027
+ return acc;
77028
+ }, {});
77029
+ const clusterPrepared = parseAll({ text: cluster, replaceValues, multiQueryData });
77030
+ const apiVersionPrepared = parseAll({ text: apiVersion, replaceValues, multiQueryData });
77031
+ const apiGroupPrepared = apiGroup ? parseAll({ text: apiGroup, replaceValues, multiQueryData }) : void 0;
77032
+ const namespacePrepared = namespace ? parseAll({ text: namespace, replaceValues, multiQueryData }) : void 0;
77033
+ const pluralPrepared = parseAll({ text: plural, replaceValues, multiQueryData });
77034
+ const currentValuePrepared = currentValue ? parseAll({ text: currentValue, replaceValues, multiQueryData }) : void 0;
77035
+ const {
77036
+ data: resourceList,
77037
+ isLoading: isResourceLoading,
77038
+ isError
77039
+ } = useK8sSmartResource({
77040
+ cluster: clusterPrepared,
77041
+ apiGroup: apiGroupPrepared,
77042
+ apiVersion: apiVersionPrepared,
77043
+ plural: pluralPrepared,
77044
+ namespace: namespacePrepared,
77045
+ isEnabled: Boolean(clusterPrepared && apiVersionPrepared && pluralPrepared && !isMultiQueryLoading)
77046
+ });
77047
+ const options = useMemo(() => {
77048
+ if (!resourceList?.items?.length) return [];
77049
+ return resourceList.items.map((item) => {
77050
+ try {
77051
+ const results = jp.query(item, `$${jsonPath}`);
77052
+ const value = results?.[0];
77053
+ return value !== void 0 && value !== null ? String(value) : null;
77054
+ } catch {
77055
+ return null;
77056
+ }
77057
+ }).filter((v) => v !== null).map((value) => ({ label: value, value }));
77058
+ }, [resourceList, jsonPath]);
77059
+ const isLoading = isMultiQueryLoading || isResourceLoading || externalLoading;
77060
+ const handleChange = (selectedValue) => {
77061
+ if (typeof selectedValue !== "string") return;
77062
+ const urlWithChosenValue = redirectUrl.replace(/\{chosenEntryValue\}/g, selectedValue);
77063
+ const finalUrl = parseAll({
77064
+ text: urlWithChosenValue,
77065
+ replaceValues,
77066
+ multiQueryData
77067
+ });
77068
+ navigate(finalUrl);
77069
+ };
77070
+ if (isLoading) {
77071
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(Spin, { size: "small" });
77072
+ }
77073
+ if (isError) {
77074
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("span", { children: "Error loading resources" });
77075
+ }
77076
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
77077
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
77078
+ Styled$m.TitleSelect,
77079
+ {
77080
+ value: currentValuePrepared,
77081
+ onChange: handleChange,
77082
+ options,
77083
+ placeholder,
77084
+ style,
77085
+ showSearch,
77086
+ filterOption: (input, option) => (option?.label ?? "").toLowerCase().includes(input.toLowerCase()),
77087
+ variant: "borderless"
77088
+ }
77089
+ ),
77090
+ children
77091
+ ] });
77092
+ };
77093
+
77094
+ const CopyButton = ({
77095
+ data,
77096
+ children
77097
+ }) => {
77098
+ const {
77099
+ copyText,
77100
+ successMessage = "Copied!",
77101
+ errorMessage = "Failed to copy",
77102
+ buttonType = "text",
77103
+ tooltip,
77104
+ style
77105
+ } = data;
77106
+ const [messageApi, contextHolder] = message.useMessage();
77107
+ const { data: multiQueryData, isLoading } = useMultiQuery();
77108
+ const partsOfUrl = usePartsOfUrl();
77109
+ const replaceValues = partsOfUrl.partsOfUrl.reduce((acc, value, index) => {
77110
+ acc[index.toString()] = value;
77111
+ return acc;
77112
+ }, {});
77113
+ const copyTextPrepared = parseAll({ text: copyText, replaceValues, multiQueryData });
77114
+ const handleCopy = async () => {
77115
+ try {
77116
+ if (copyTextPrepared !== null && copyTextPrepared !== void 0 && copyTextPrepared !== "") {
77117
+ await navigator.clipboard.writeText(copyTextPrepared);
77118
+ messageApi.success(successMessage);
77119
+ } else {
77120
+ messageApi.error(errorMessage);
77121
+ }
77122
+ } catch (error) {
77123
+ console.error("Copy to clipboard failed:", error);
77124
+ messageApi.error(errorMessage);
77125
+ }
77126
+ };
77127
+ if (isLoading) {
77128
+ return null;
77129
+ }
77130
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
77131
+ contextHolder,
77132
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
77133
+ Button,
77134
+ {
77135
+ type: buttonType,
77136
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(CopyOutlined, {}),
77137
+ onClick: handleCopy,
77138
+ title: tooltip,
77139
+ style,
77140
+ size: "large"
77141
+ }
77142
+ ),
77143
+ children
77144
+ ] });
77145
+ };
77146
+
76963
77147
  const DynamicComponents = {
76964
77148
  DefaultDiv,
76965
77149
  antdText: AntdText,
@@ -76984,7 +77168,7 @@ const DynamicComponents = {
76984
77168
  NodeTerminal: NodeTerminal$1,
76985
77169
  PodLogs: PodLogs$1,
76986
77170
  YamlEditorSingleton,
76987
- VisibilityContainer: VisibilityContainer$1,
77171
+ VisibilityContainer,
76988
77172
  ArrayOfObjectsToKeyValues,
76989
77173
  ItemCounter,
76990
77174
  Labels,
@@ -77003,7 +77187,9 @@ const DynamicComponents = {
77003
77187
  TogglerSegmented,
77004
77188
  VMVNC: VMVNC$1,
77005
77189
  PrometheusGraph,
77006
- DefaultIframe
77190
+ DefaultIframe,
77191
+ DropdownRedirect,
77192
+ CopyButton
77007
77193
  };
77008
77194
 
77009
77195
  const prepareUrlsToFetchForDynamicRenderer = ({
@@ -83362,6 +83548,15 @@ const PodLogs = ({ cluster, namespace, podName, containers, substractHeight }) =
83362
83548
  ] });
83363
83549
  };
83364
83550
 
83551
+ var dayjs_min = {exports: {}};
83552
+
83553
+ (function (module, exports) {
83554
+ !function(t,e){module.exports=e();}(commonjsGlobal,(function(){var t=1e3,e=6e4,n=36e5,r="millisecond",i="second",s="minute",u="hour",a="day",o="week",c="month",f="quarter",h="year",d="date",l="Invalid Date",$=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],n=t%100;return "["+t+(e[(n-20)%10]||e[n]||e[0])+"]"}},m=function(t,e,n){var r=String(t);return !r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return (e<=0?"+":"-")+m(r,2,"0")+":"+m(i,2,"0")},m:function t(e,n){if(e.date()<n.date())return -t(n,e);var r=12*(n.year()-e.year())+(n.month()-e.month()),i=e.clone().add(r,c),s=n-i<0,u=e.clone().add(r+(s?-1:1),c);return +(-(r+(n-i)/(s?i-u:u-i))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(t){return {M:c,y:h,w:o,d:a,D:d,h:u,m:s,s:i,ms:r,Q:f}[t]||String(t||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},g="en",D={};D[g]=M;var p="$isDayjsObject",S=function(t){return t instanceof _||!(!t||!t[p])},w=function t(e,n,r){var i;if(!e)return g;if("string"==typeof e){var s=e.toLowerCase();D[s]&&(i=s),n&&(D[s]=n,i=s);var u=e.split("-");if(!i&&u.length>1)return t(u[0])}else {var a=e.name;D[a]=e,i=a;}return !r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,true),this.parse(t),this.$x=this.$x||t.x||{},this[p]=true;}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init();},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds();},m.$utils=function(){return b},m.isValid=function(){return !(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)<this.startOf(e)},m.isBefore=function(t,e){return this.endOf(e)<O(t)},m.$g=function(t,e,n){return b.u(t)?this[e]:this.set(n,t)},m.unix=function(){return Math.floor(this.valueOf()/1e3)},m.valueOf=function(){return this.$d.getTime()},m.startOf=function(t,e){var n=this,r=!!b.u(e)||e,f=b.p(t),l=function(t,e){var i=b.w(n.$u?Date.UTC(n.$y,e,t):new Date(n.$y,e,t),n);return r?i:i.endOf(a)},$=function(t,e){return b.w(n.toDate()[t].apply(n.toDate("s"),(r?[0,0,0,0]:[23,59,59,999]).slice(e)),n)},y=this.$W,M=this.$M,m=this.$D,v="set"+(this.$u?"UTC":"");switch(f){case h:return r?l(1,0):l(31,11);case c:return r?l(1,M):l(0,M+1);case o:var g=this.$locale().weekStart||0,D=(y<g?y+7:y)-g;return l(r?m-D:m+(6-D),M);case a:case d:return $(v+"Hours",0);case u:return $(v+"Minutes",1);case s:return $(v+"Seconds",2);case i:return $(v+"Milliseconds",3);default:return this.clone()}},m.endOf=function(t){return this.startOf(t,false)},m.$set=function(t,e){var n,o=b.p(t),f="set"+(this.$u?"UTC":""),l=(n={},n[a]=f+"Date",n[d]=f+"Date",n[c]=f+"Month",n[h]=f+"FullYear",n[u]=f+"Hours",n[s]=f+"Minutes",n[i]=f+"Seconds",n[r]=f+"Milliseconds",n)[o],$=o===a?this.$D+(e-this.$W):e;if(o===c||o===h){var y=this.clone().set(d,1);y.$d[l]($),y.init(),this.$d=y.set(d,Math.min(this.$D,y.daysInMonth())).$d;}else l&&this.$d[l]($);return this.init(),this},m.set=function(t,e){return this.clone().$set(t,e)},m.get=function(t){return this[b.p(t)]()},m.add=function(r,f){var d,l=this;r=Number(r);var $=b.p(f),y=function(t){var e=O(l);return b.w(e.date(e.date()+Math.round(t*r)),l)};if($===c)return this.set(c,this.$M+r);if($===h)return this.set(h,this.$y+r);if($===a)return y(1);if($===o)return y(7);var M=(d={},d[s]=e,d[u]=n,d[i]=t,d)[$]||1,m=this.$d.getTime()+r*M;return b.w(m,this)},m.subtract=function(t,e){return this.add(-1*t,e)},m.format=function(t){var e=this,n=this.$locale();if(!this.isValid())return n.invalidDate||l;var r=t||"YYYY-MM-DDTHH:mm:ssZ",i=b.z(this),s=this.$H,u=this.$m,a=this.$M,o=n.weekdays,c=n.months,f=n.meridiem,h=function(t,n,i,s){return t&&(t[n]||t(e,r))||i[n].slice(0,s)},d=function(t){return b.s(s%12||12,t,"0")},$=f||function(t,e,n){var r=t<12?"AM":"PM";return n?r.toLowerCase():r};return r.replace(y,(function(t,r){return r||function(t){switch(t){case "YY":return String(e.$y).slice(-2);case "YYYY":return b.s(e.$y,4,"0");case "M":return a+1;case "MM":return b.s(a+1,2,"0");case "MMM":return h(n.monthsShort,a,c,3);case "MMMM":return h(c,a);case "D":return e.$D;case "DD":return b.s(e.$D,2,"0");case "d":return String(e.$W);case "dd":return h(n.weekdaysMin,e.$W,o,2);case "ddd":return h(n.weekdaysShort,e.$W,o,3);case "dddd":return o[e.$W];case "H":return String(s);case "HH":return b.s(s,2,"0");case "h":return d(1);case "hh":return d(2);case "a":return $(s,u,true);case "A":return $(s,u,false);case "m":return String(u);case "mm":return b.s(u,2,"0");case "s":return String(e.$s);case "ss":return b.s(e.$s,2,"0");case "SSS":return b.s(e.$ms,3,"0");case "Z":return i}return null}(t)||i.replace(":","")}))},m.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},m.diff=function(r,d,l){var $,y=this,M=b.p(d),m=O(r),v=(m.utcOffset()-this.utcOffset())*e,g=this-m,D=function(){return b.m(y,m)};switch(M){case h:$=D()/12;break;case c:$=D();break;case f:$=D()/3;break;case o:$=(g-v)/6048e5;break;case a:$=(g-v)/864e5;break;case u:$=g/n;break;case s:$=g/e;break;case i:$=g/t;break;default:$=g;}return l?$:b.a($)},m.daysInMonth=function(){return this.endOf(c).$D},m.$locale=function(){return D[this.$L]},m.locale=function(t,e){if(!t)return this.$L;var n=this.clone(),r=w(t,e,true);return r&&(n.$L=r),n},m.clone=function(){return b.w(this.$d,this)},m.toDate=function(){return new Date(this.valueOf())},m.toJSON=function(){return this.isValid()?this.toISOString():null},m.toISOString=function(){return this.$d.toISOString()},m.toString=function(){return this.$d.toUTCString()},M}(),k=_.prototype;return O.prototype=k,[["$ms",r],["$s",i],["$m",s],["$H",u],["$W",a],["$M",c],["$y",h],["$D",d]].forEach((function(t){k[t[1]]=function(e){return this.$g(e,t[0],t[1])};})),O.extend=function(t,e){return t.$i||(t(e,_,O),t.$i=true),O},O.locale=w,O.isDayjs=S,O.unix=function(t){return O(1e3*t)},O.en=D[g],O.Ls=D,O.p={},O}));
83555
+ } (dayjs_min));
83556
+
83557
+ var dayjs_minExports = dayjs_min.exports;
83558
+ const dayjs = /*@__PURE__*/getDefaultExportFromCjs(dayjs_minExports);
83559
+
83365
83560
  const FullWidthDiv$1 = styled.div`
83366
83561
  display: flex;
83367
83562
  justify-content: center;
@@ -83375,7 +83570,19 @@ const CustomCard$1 = styled.div`
83375
83570
  scrollbar-width: thin;
83376
83571
  }
83377
83572
  `;
83378
- const VisibilityContainer = styled.div`
83573
+ const EditorWrapper = styled.div`
83574
+ position: relative;
83575
+ width: 100%;
83576
+ `;
83577
+ const StreamingOverlay = styled.div`
83578
+ position: absolute;
83579
+ top: 12px;
83580
+ left: 12px;
83581
+ z-index: 10;
83582
+ display: flex;
83583
+ align-items: center;
83584
+ gap: 16px;
83585
+ background-color: ${({ $colorBgLayout }) => $colorBgLayout};
83379
83586
  visibility: ${({ $isVisible }) => $isVisible ? "visible" : "hidden"};
83380
83587
  `;
83381
83588
  const CursorPointerDiv$1 = styled.div`
@@ -83385,7 +83592,8 @@ const CursorPointerDiv$1 = styled.div`
83385
83592
  const Styled$6 = {
83386
83593
  FullWidthDiv: FullWidthDiv$1,
83387
83594
  CustomCard: CustomCard$1,
83388
- VisibilityContainer,
83595
+ EditorWrapper,
83596
+ StreamingOverlay,
83389
83597
  CursorPointerDiv: CursorPointerDiv$1
83390
83598
  };
83391
83599
 
@@ -83394,7 +83602,7 @@ const MonacoEditor = ({
83394
83602
  namespace,
83395
83603
  podName,
83396
83604
  container,
83397
- theme,
83605
+ theme: theme$1,
83398
83606
  substractHeight,
83399
83607
  previous,
83400
83608
  tailLines,
@@ -83402,6 +83610,7 @@ const MonacoEditor = ({
83402
83610
  sinceTime,
83403
83611
  limitBytes
83404
83612
  }) => {
83613
+ const { token } = theme.useToken();
83405
83614
  const [notificationApi, contextHolder] = notification.useNotification();
83406
83615
  const [isLoading, setIsLoading] = useState(true);
83407
83616
  const [error, setError] = useState();
@@ -83480,100 +83689,190 @@ const MonacoEditor = ({
83480
83689
  }
83481
83690
  };
83482
83691
  }, [endpoint, namespace, podName, container, previous, tailLines, sinceSeconds, sinceTime, limitBytes, editorReady]);
83692
+ const isDark = theme$1 === "dark";
83483
83693
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
83484
83694
  contextHolder,
83485
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$6.VisibilityContainer, { $isVisible: isTerminalVisible, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(Flex, { justify: "start", align: "center", gap: 16, children: [
83486
- /* @__PURE__ */ jsxRuntimeExports.jsx(
83487
- Styled$6.CursorPointerDiv,
83695
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$6.CustomCard, { $isVisible: isTerminalVisible, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(Styled$6.EditorWrapper, { children: [
83696
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(Styled$6.StreamingOverlay, { $isVisible: isTerminalVisible, $colorBgLayout: token.colorBgLayout, children: [
83697
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
83698
+ Styled$6.CursorPointerDiv,
83699
+ {
83700
+ onClick: () => {
83701
+ if (isPaused) {
83702
+ setIsPaused(false);
83703
+ socketRef.current?.send(
83704
+ JSON.stringify({
83705
+ type: "continue"
83706
+ })
83707
+ );
83708
+ } else {
83709
+ setIsPaused(true);
83710
+ socketRef.current?.send(
83711
+ JSON.stringify({
83712
+ type: "stop"
83713
+ })
83714
+ );
83715
+ }
83716
+ },
83717
+ children: isPaused ? /* @__PURE__ */ jsxRuntimeExports.jsx(ResumeCircleIcon, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(PauseCircleIcon, {})
83718
+ }
83719
+ ),
83720
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: isPaused ? "Not streaming events" : "Streaming events..." })
83721
+ ] }),
83722
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$6.FullWidthDiv, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
83723
+ Ft$1,
83488
83724
  {
83489
- onClick: () => {
83490
- if (isPaused) {
83491
- setIsPaused(false);
83492
- socketRef.current?.send(
83493
- JSON.stringify({
83494
- type: "continue"
83495
- })
83496
- );
83497
- } else {
83498
- setIsPaused(true);
83499
- socketRef.current?.send(
83500
- JSON.stringify({
83501
- type: "stop"
83502
- })
83503
- );
83504
- }
83725
+ defaultLanguage: "plaintext",
83726
+ language: "plaintext",
83727
+ width: "100%",
83728
+ height: `calc(100vh - ${substractHeight}px)`,
83729
+ theme: isDark ? "vs-dark" : "vs",
83730
+ options: {
83731
+ theme: isDark ? "vs-dark" : "vs",
83732
+ readOnly: true,
83733
+ padding: { top: 56 }
83505
83734
  },
83506
- children: isPaused ? /* @__PURE__ */ jsxRuntimeExports.jsx(ResumeCircleIcon, {}) : /* @__PURE__ */ jsxRuntimeExports.jsx(PauseCircleIcon, {})
83735
+ onMount: handleEditorDidMount
83507
83736
  }
83508
- ),
83509
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: isPaused ? "Not streaming events" : "Streaming events" })
83737
+ ) })
83510
83738
  ] }) }),
83511
- /* @__PURE__ */ jsxRuntimeExports.jsx(Spacer$1, { $space: 16, $samespace: true }),
83512
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$6.CustomCard, { $isVisible: isTerminalVisible, children: /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$6.FullWidthDiv, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
83513
- Ft$1,
83514
- {
83515
- defaultLanguage: "plaintext",
83516
- language: "plaintext",
83517
- width: "100%",
83518
- height: `calc(100vh - ${substractHeight}px)`,
83519
- theme: theme === "dark" ? "vs-dark" : theme === void 0 ? "vs-dark" : "vs",
83520
- options: {
83521
- theme: theme === "dark" ? "vs-dark" : theme === void 0 ? "vs-dark" : "vs",
83522
- readOnly: true
83523
- },
83524
- onMount: handleEditorDidMount
83525
- }
83526
- ) }) }),
83527
83739
  isLoading && !error && /* @__PURE__ */ jsxRuntimeExports.jsx(Spin, {}),
83528
83740
  error && /* @__PURE__ */ jsxRuntimeExports.jsx(Result, { status: "error", title: "Error", subTitle: JSON.stringify(error) })
83529
83741
  ] });
83530
83742
  };
83531
83743
 
83532
- const TopRowContent = styled.div`
83744
+ const ControlsRow = styled.div`
83745
+ display: flex;
83746
+ align-items: center;
83747
+ justify-content: space-between;
83748
+ gap: 16px;
83749
+ flex-wrap: wrap;
83750
+ `;
83751
+ const ControlsLeft = styled.div`
83752
+ display: flex;
83753
+ align-items: center;
83754
+ gap: 16px;
83755
+ `;
83756
+ const ControlsRight = styled.div`
83757
+ display: flex;
83758
+ align-items: center;
83759
+ gap: 24px;
83760
+ `;
83761
+ const FiltersGroup = styled.div`
83762
+ display: flex;
83763
+ align-items: center;
83764
+ gap: 8px;
83765
+ `;
83766
+ const ButtonsGroup = styled.div`
83767
+ display: flex;
83768
+ align-items: center;
83769
+ gap: 8px;
83770
+ `;
83771
+ styled.div`
83533
83772
  height: 35px;
83534
83773
  display: flex;
83535
83774
  align-items: center;
83536
83775
  `;
83537
83776
  const CustomSelect = styled.div`
83538
83777
  .ant-select {
83539
- width: 200px;
83778
+ width: 120px;
83779
+
83780
+ @media (min-width: 1420px) {
83781
+ width: 160px;
83782
+ }
83783
+
83784
+ @media (min-width: 1512px) {
83785
+ width: 200px;
83786
+ }
83787
+ }
83788
+
83789
+ .ant-select-selection-placeholder {
83790
+ overflow: hidden;
83791
+ text-overflow: ellipsis;
83792
+ white-space: nowrap;
83540
83793
  }
83541
83794
  `;
83542
- const FilterRow = styled.div`
83795
+ const FilterInput = styled.div`
83796
+ .ant-select,
83797
+ .ant-input-number,
83798
+ .ant-picker {
83799
+ width: 120px;
83800
+ height: 32px;
83801
+ }
83802
+
83803
+ .ant-select-selection-placeholder {
83804
+ overflow: hidden;
83805
+ text-overflow: ellipsis;
83806
+ white-space: nowrap;
83807
+ }
83808
+ `;
83809
+ styled.div`
83543
83810
  display: flex;
83544
83811
  align-items: center;
83545
83812
  gap: 24px;
83546
83813
  flex-wrap: wrap;
83547
83814
  `;
83548
- const FilterGroup = styled.div`
83815
+ styled.div`
83549
83816
  display: flex;
83550
83817
  align-items: center;
83551
83818
  gap: 8px;
83552
83819
  `;
83553
- const FilterLabel = styled.span`
83820
+ styled.span`
83554
83821
  font-size: 13px;
83555
83822
  color: ${({ $color }) => $color};
83556
83823
  white-space: nowrap;
83557
83824
  `;
83558
- const SinceControls = styled.div`
83825
+ styled.div`
83559
83826
  display: flex;
83560
83827
  align-items: center;
83561
83828
  gap: 8px;
83562
83829
  `;
83563
- const FilterTitle = styled.div`
83830
+ styled.div`
83564
83831
  font-size: 16px;
83565
83832
  font-weight: 500;
83566
83833
  color: ${({ $color }) => $color};
83567
83834
  margin-bottom: 8px;
83568
83835
  `;
83836
+ const DarkSegmented = styled.div`
83837
+ .ant-segmented {
83838
+ background-color: ${({ $colorBgLayout }) => $colorBgLayout};
83839
+ height: 32px;
83840
+ }
83841
+
83842
+ .ant-segmented-item {
83843
+ color: ${({ $colorTextSecondary }) => $colorTextSecondary};
83844
+
83845
+ &:hover {
83846
+ color: ${({ $colorTextSecondary }) => $colorTextSecondary};
83847
+ }
83848
+ }
83849
+
83850
+ .ant-segmented-item-selected {
83851
+ background-color: ${({ $colorBgContainer }) => $colorBgContainer};
83852
+ color: ${({ $colorText }) => $colorText};
83853
+
83854
+ &:hover {
83855
+ color: ${({ $colorText }) => $colorText};
83856
+ }
83857
+ }
83858
+
83859
+ .ant-segmented-thumb {
83860
+ background-color: ${({ $colorBgContainer }) => $colorBgContainer};
83861
+ }
83862
+ `;
83863
+ const FilterButton = styled(Button)`
83864
+ height: 32px;
83865
+ `;
83569
83866
  const Styled$5 = {
83570
- TopRowContent,
83867
+ ControlsRow,
83868
+ ControlsLeft,
83869
+ ControlsRight,
83870
+ FiltersGroup,
83871
+ ButtonsGroup,
83571
83872
  CustomSelect,
83572
- FilterRow,
83573
- FilterGroup,
83574
- FilterLabel,
83575
- SinceControls,
83576
- FilterTitle
83873
+ FilterInput,
83874
+ DarkSegmented,
83875
+ FilterButton
83577
83876
  };
83578
83877
 
83579
83878
  const SINCE_PRESETS = [
@@ -83586,6 +83885,14 @@ const SINCE_PRESETS = [
83586
83885
  { label: "12 hours", value: 43200 },
83587
83886
  { label: "24 hours", value: 86400 }
83588
83887
  ];
83888
+ const TAIL_LINES_PRESETS = [
83889
+ { label: "50 lines", value: 50 },
83890
+ { label: "100 lines", value: 100 },
83891
+ { label: "200 lines", value: 200 },
83892
+ { label: "500 lines", value: 500 },
83893
+ { label: "1000 lines", value: 1e3 },
83894
+ { label: "5000 lines", value: 5e3 }
83895
+ ];
83589
83896
 
83590
83897
  const PodLogsMonaco = ({
83591
83898
  cluster,
@@ -83644,11 +83951,8 @@ const PodLogsMonaco = ({
83644
83951
  setPendingSinceSeconds(value);
83645
83952
  }
83646
83953
  };
83647
- const handleSecondsInputChange = (value) => {
83648
- setPendingSinceSeconds(value ?? void 0);
83649
- };
83650
- const handleSinceModeChange = (e) => {
83651
- setPendingSinceMode(e.target.value);
83954
+ const handleSinceModeChange = (value) => {
83955
+ setPendingSinceMode(value);
83652
83956
  };
83653
83957
  const handleDateTimeChange = (value) => {
83654
83958
  setPendingSinceTime(value);
@@ -83700,139 +84004,125 @@ const PodLogsMonaco = ({
83700
84004
  options: containers.map((container) => ({ value: container, label: container }))
83701
84005
  }
83702
84006
  ];
84007
+ const disabledDate = (current) => current && current.isAfter(dayjs());
84008
+ const disabledTime = (current) => {
84009
+ const now = dayjs();
84010
+ const isToday = current && current.isSame(now, "day");
84011
+ if (!isToday) return {};
84012
+ const currentHour = now.hour();
84013
+ const currentMinute = now.minute();
84014
+ const currentSecond = now.second();
84015
+ return {
84016
+ disabledHours: () => Array.from({ length: 24 }, (_, i) => i).filter((h) => h > currentHour),
84017
+ disabledMinutes: (selectedHour) => selectedHour === currentHour ? Array.from({ length: 60 }, (_, i) => i).filter((m) => m > currentMinute) : [],
84018
+ disabledSeconds: (selectedHour, selectedMinute) => selectedHour === currentHour && selectedMinute === currentMinute ? Array.from({ length: 60 }, (_, i) => i).filter((s) => s > currentSecond) : []
84019
+ };
84020
+ };
83703
84021
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
83704
84022
  contextHolder,
83705
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$5.TopRowContent, { children: /* @__PURE__ */ jsxRuntimeExports.jsxs(Flex, { gap: 16, children: [
83706
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$5.CustomSelect, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
83707
- Select,
83708
- {
83709
- placeholder: "Select container",
83710
- options,
83711
- filterOption: filterSelectOptions,
83712
- disabled: containers.length === 0,
83713
- showSearch: true,
83714
- value: currentContainer,
83715
- onChange: (value) => {
83716
- setCurrentContainer(value);
83717
- setPrevious(false);
83718
- }
83719
- }
83720
- ) }),
83721
- currentContainer && /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$5.CustomSelect, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
83722
- Select,
83723
- {
83724
- placeholder: "Select current/previous",
83725
- options: prevCurOptions,
83726
- filterOption: filterSelectOptions,
83727
- disabled: !withPrevious,
83728
- showSearch: true,
83729
- value: previous ? "previous" : "current",
83730
- onChange: (value) => {
83731
- if (value === "previous") {
83732
- setPrevious(true);
83733
- } else {
84023
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(Styled$5.ControlsRow, { children: [
84024
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(Styled$5.ControlsLeft, { children: [
84025
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$5.CustomSelect, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
84026
+ Select,
84027
+ {
84028
+ placeholder: "Container",
84029
+ options,
84030
+ filterOption: filterSelectOptions,
84031
+ disabled: containers.length === 0,
84032
+ showSearch: true,
84033
+ value: currentContainer,
84034
+ onChange: (value) => {
84035
+ setCurrentContainer(value);
83734
84036
  setPrevious(false);
83735
84037
  }
83736
84038
  }
83737
- }
83738
- ) })
83739
- ] }) }),
83740
- /* @__PURE__ */ jsxRuntimeExports.jsx(Spacer$1, { $space: 8, $samespace: true }),
83741
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$5.FilterTitle, { $color: token.colorText, children: "Filters" }),
83742
- /* @__PURE__ */ jsxRuntimeExports.jsxs(Styled$5.FilterRow, { children: [
83743
- /* @__PURE__ */ jsxRuntimeExports.jsxs(Styled$5.FilterGroup, { children: [
83744
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$5.FilterLabel, { $color: token.colorTextSecondary, children: "Tail lines:" }),
83745
- /* @__PURE__ */ jsxRuntimeExports.jsx(
83746
- InputNumber,
83747
- {
83748
- min: 1,
83749
- placeholder: "All",
83750
- value: pendingTailLines,
83751
- onChange: (value) => setPendingTailLines(value ?? void 0),
83752
- style: { width: 100 }
83753
- }
83754
- )
83755
- ] }),
83756
- /* @__PURE__ */ jsxRuntimeExports.jsxs(Styled$5.FilterGroup, { children: [
83757
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$5.FilterLabel, { $color: token.colorTextSecondary, children: "Since:" }),
83758
- /* @__PURE__ */ jsxRuntimeExports.jsxs(Radio.Group, { value: pendingSinceMode, onChange: handleSinceModeChange, size: "small", children: [
83759
- /* @__PURE__ */ jsxRuntimeExports.jsx(Radio.Button, { value: "relative", children: "Relative" }),
83760
- /* @__PURE__ */ jsxRuntimeExports.jsx(Radio.Button, { value: "absolute", children: "Absolute" })
83761
- ] })
83762
- ] }),
83763
- pendingSinceMode === "relative" && /* @__PURE__ */ jsxRuntimeExports.jsxs(Styled$5.SinceControls, { children: [
83764
- /* @__PURE__ */ jsxRuntimeExports.jsx(
84039
+ ) }),
84040
+ currentContainer && /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$5.CustomSelect, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
83765
84041
  Select,
83766
84042
  {
83767
- placeholder: "Preset",
83768
- options: SINCE_PRESETS,
83769
- value: matchingPreset?.value ?? null,
83770
- onChange: handlePresetChange,
83771
- allowClear: true,
83772
- style: { width: 100 }
83773
- }
83774
- ),
83775
- /* @__PURE__ */ jsxRuntimeExports.jsx(
83776
- InputNumber,
83777
- {
83778
- min: 1,
83779
- placeholder: "sec",
83780
- value: pendingSinceSeconds,
83781
- onChange: handleSecondsInputChange,
83782
- style: { width: 100 },
83783
- addonAfter: "sec"
83784
- }
83785
- )
83786
- ] }),
83787
- pendingSinceMode === "absolute" && /* @__PURE__ */ jsxRuntimeExports.jsx(
83788
- DatePicker,
83789
- {
83790
- showTime: true,
83791
- value: pendingSinceTime,
83792
- onChange: handleDateTimeChange,
83793
- placeholder: "Select date & time"
83794
- }
83795
- ),
83796
- /* @__PURE__ */ jsxRuntimeExports.jsxs(Styled$5.FilterGroup, { children: [
83797
- /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$5.FilterLabel, { $color: token.colorTextSecondary, children: "Limit:" }),
83798
- /* @__PURE__ */ jsxRuntimeExports.jsx(
83799
- InputNumber,
83800
- {
83801
- min: 1,
83802
- placeholder: "No limit",
83803
- value: pendingLimitKB,
83804
- onChange: (value) => setPendingLimitKB(value ?? void 0),
83805
- style: { width: 120 },
83806
- addonAfter: "KB"
84043
+ placeholder: "Current/previous",
84044
+ options: prevCurOptions,
84045
+ filterOption: filterSelectOptions,
84046
+ disabled: !withPrevious,
84047
+ showSearch: true,
84048
+ value: previous ? "previous" : "current",
84049
+ onChange: (value) => {
84050
+ if (value === "previous") {
84051
+ setPrevious(true);
84052
+ } else {
84053
+ setPrevious(false);
84054
+ }
84055
+ }
83807
84056
  }
83808
- )
84057
+ ) })
83809
84058
  ] }),
83810
- /* @__PURE__ */ jsxRuntimeExports.jsxs(Flex, { gap: 8, children: [
83811
- /* @__PURE__ */ jsxRuntimeExports.jsx(
83812
- Button,
83813
- {
83814
- size: "small",
83815
- onClick: handleReset,
83816
- style: {
83817
- color: "#c77777",
83818
- borderColor: "#c77777"
83819
- },
83820
- children: "Reset"
83821
- }
83822
- ),
83823
- /* @__PURE__ */ jsxRuntimeExports.jsx(
83824
- Button,
83825
- {
83826
- size: "small",
83827
- onClick: handleApply,
83828
- style: {
83829
- backgroundColor: "#5a9a5a",
83830
- borderColor: "#5a9a5a",
83831
- color: "#fff"
83832
- },
83833
- children: "Apply"
83834
- }
83835
- )
84059
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(Styled$5.ControlsRight, { children: [
84060
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(Styled$5.FiltersGroup, { children: [
84061
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$5.FilterInput, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
84062
+ Select,
84063
+ {
84064
+ placeholder: "Tail lines",
84065
+ options: TAIL_LINES_PRESETS,
84066
+ value: pendingTailLines,
84067
+ onChange: (value) => setPendingTailLines(value ?? void 0),
84068
+ allowClear: true
84069
+ }
84070
+ ) }),
84071
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
84072
+ Styled$5.DarkSegmented,
84073
+ {
84074
+ $colorBgLayout: token.colorBgLayout,
84075
+ $colorBgContainer: token.colorBgContainer,
84076
+ $colorTextSecondary: token.colorTextSecondary,
84077
+ $colorText: token.colorText,
84078
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(
84079
+ Segmented,
84080
+ {
84081
+ value: pendingSinceMode,
84082
+ onChange: handleSinceModeChange,
84083
+ options: [
84084
+ { label: "Relative", value: "relative" },
84085
+ { label: "Absolute", value: "absolute" }
84086
+ ]
84087
+ }
84088
+ )
84089
+ }
84090
+ ),
84091
+ pendingSinceMode === "relative" && /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$5.FilterInput, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
84092
+ Select,
84093
+ {
84094
+ placeholder: "Time range",
84095
+ options: SINCE_PRESETS,
84096
+ value: matchingPreset?.value ?? null,
84097
+ onChange: handlePresetChange,
84098
+ allowClear: true
84099
+ }
84100
+ ) }),
84101
+ pendingSinceMode === "absolute" && /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$5.FilterInput, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
84102
+ DatePicker,
84103
+ {
84104
+ showTime: true,
84105
+ value: pendingSinceTime,
84106
+ onChange: handleDateTimeChange,
84107
+ placeholder: "Date & time",
84108
+ disabledDate,
84109
+ disabledTime
84110
+ }
84111
+ ) }),
84112
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$5.FilterInput, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(
84113
+ InputNumber,
84114
+ {
84115
+ min: 1,
84116
+ placeholder: "Limit KB",
84117
+ value: pendingLimitKB,
84118
+ onChange: (value) => setPendingLimitKB(value ?? void 0)
84119
+ }
84120
+ ) })
84121
+ ] }),
84122
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(Styled$5.ButtonsGroup, { children: [
84123
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$5.FilterButton, { onClick: handleReset, children: "Clear" }),
84124
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Styled$5.FilterButton, { type: "primary", onClick: handleApply, children: "Apply" })
84125
+ ] })
83836
84126
  ] })
83837
84127
  ] }),
83838
84128
  /* @__PURE__ */ jsxRuntimeExports.jsx(Spacer$1, { $space: 16, $samespace: true }),