@dovetail-v2/refine 0.2.7 → 0.2.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.
Files changed (260) hide show
  1. package/dist/MonacoYamlDiffEditor-7a07db88.cjs +59 -0
  2. package/dist/{MonacoYamlDiffEditor-ae04bff7.js → MonacoYamlDiffEditor-7de94ad2.js} +1 -24
  3. package/dist/MonacoYamlEditor-2c3897de.cjs +206 -0
  4. package/dist/{MonacoYamlEditor-7071a8ae.js → MonacoYamlEditor-c8ef62dc.js} +2 -9
  5. package/dist/PodShell-43c7028e.cjs +216 -0
  6. package/dist/PodShell-ba204cde.js +216 -0
  7. package/dist/common-1eb43414.cjs +982 -0
  8. package/dist/common-feae5742.js +983 -0
  9. package/{lib → dist}/components/PodShellModal/PodShell.d.ts +3 -5
  10. package/dist/components/PodShellModal/index.d.ts +10 -0
  11. package/dist/components/Shell/Connecting.d.ts +2 -0
  12. package/dist/components/Shell/common.d.ts +5 -0
  13. package/{lib → dist}/components/Shell/index.d.ts +1 -5
  14. package/{lib → dist}/components/index.d.ts +0 -1
  15. package/dist/index-31874f77.cjs +496 -0
  16. package/dist/index-40deb620.js +497 -0
  17. package/dist/{index-e2ac90c3.js → index-6e832950.js} +273 -1918
  18. package/dist/index-92ab679c.cjs +19002 -0
  19. package/dist/refine.cjs +280 -0
  20. package/dist/refine.js +248 -257
  21. package/dist/shell.cjs +17 -0
  22. package/dist/shell.d.ts +2 -0
  23. package/dist/shell.js +17 -0
  24. package/dist/style.css +1311 -1266
  25. package/package.json +4 -4
  26. package/dist/refine.umd.cjs +0 -20835
  27. package/lib/components/PodShellModal/index.d.ts +0 -10
  28. /package/{lib → dist}/App.d.ts +0 -0
  29. /package/{lib → dist}/Dovetail.d.ts +0 -0
  30. /package/{lib → dist}/components/Breadcrumb/index.d.ts +0 -0
  31. /package/{lib → dist}/components/ConditionsTable/ConditionsTable.d.ts +0 -0
  32. /package/{lib → dist}/components/ConditionsTable/index.d.ts +0 -0
  33. /package/{lib → dist}/components/CreateButton/index.d.ts +0 -0
  34. /package/{lib → dist}/components/CronjobJobsTable/index.d.ts +0 -0
  35. /package/{lib → dist}/components/DeleteButton/index.d.ts +0 -0
  36. /package/{lib → dist}/components/DeleteManyButton/index.d.ts +0 -0
  37. /package/{lib → dist}/components/DrawerShow/DrawerShow.d.ts +0 -0
  38. /package/{lib → dist}/components/DrawerShow/index.d.ts +0 -0
  39. /package/{lib → dist}/components/DropdownMenuItems/EditAnnotationDropdownMenuItem.d.ts +0 -0
  40. /package/{lib → dist}/components/DropdownMenuItems/EditLabelDropdownMenuItem.d.ts +0 -0
  41. /package/{lib → dist}/components/DropdownMenuItems/EditNodeTaintDropdownMenuItem.d.ts +0 -0
  42. /package/{lib → dist}/components/DropdownMenuItems/index.d.ts +0 -0
  43. /package/{lib → dist}/components/Dropdowns/CronJobDropdown/index.d.ts +0 -0
  44. /package/{lib → dist}/components/Dropdowns/K8sDropdown/index.d.ts +0 -0
  45. /package/{lib → dist}/components/Dropdowns/PodDropdown/index.d.ts +0 -0
  46. /package/{lib → dist}/components/Dropdowns/ReplicasDropdown/index.d.ts +0 -0
  47. /package/{lib → dist}/components/Dropdowns/WorkloadDropdown/index.d.ts +0 -0
  48. /package/{lib → dist}/components/DurationTime/index.d.ts +0 -0
  49. /package/{lib → dist}/components/EditButton/index.d.ts +0 -0
  50. /package/{lib → dist}/components/EditField/index.d.ts +0 -0
  51. /package/{lib → dist}/components/EditMetadataForm/EditAnnotationForm.d.ts +0 -0
  52. /package/{lib → dist}/components/EditMetadataForm/EditLabelForm.d.ts +0 -0
  53. /package/{lib → dist}/components/EditMetadataForm/EditNodeTaintForm.d.ts +0 -0
  54. /package/{lib → dist}/components/EditMetadataForm/KeyValueTableForm.d.ts +0 -0
  55. /package/{lib → dist}/components/EditMetadataForm/LabelFormatPopover.d.ts +0 -0
  56. /package/{lib → dist}/components/EditMetadataForm/index.d.ts +0 -0
  57. /package/{lib → dist}/components/ErrorContent/index.d.ts +0 -0
  58. /package/{lib → dist}/components/EventsTable/EventsTable.d.ts +0 -0
  59. /package/{lib → dist}/components/EventsTable/index.d.ts +0 -0
  60. /package/{lib → dist}/components/Form/FormModal.d.ts +0 -0
  61. /package/{lib → dist}/components/Form/FormModeSegmentControl.d.ts +0 -0
  62. /package/{lib → dist}/components/Form/RefineFormContainer.d.ts +0 -0
  63. /package/{lib → dist}/components/Form/RefineFormContent.d.ts +0 -0
  64. /package/{lib → dist}/components/Form/RefineFormPage.d.ts +0 -0
  65. /package/{lib → dist}/components/Form/YamlForm.d.ts +0 -0
  66. /package/{lib → dist}/components/Form/YamlFormContainer.d.ts +0 -0
  67. /package/{lib → dist}/components/Form/index.d.ts +0 -0
  68. /package/{lib → dist}/components/Form/type.d.ts +0 -0
  69. /package/{lib → dist}/components/Form/useFieldsConfig.d.ts +0 -0
  70. /package/{lib → dist}/components/Form/useReactHookForm.d.ts +0 -0
  71. /package/{lib → dist}/components/Form/useRefineForm.d.ts +0 -0
  72. /package/{lib → dist}/components/Form/useYamlForm.d.ts +0 -0
  73. /package/{lib → dist}/components/FormErrorAlert/index.d.ts +0 -0
  74. /package/{lib → dist}/components/FormLayout/index.d.ts +0 -0
  75. /package/{lib → dist}/components/FormWidgets/KeyValueListWidget.d.ts +0 -0
  76. /package/{lib → dist}/components/FormWidgets/MetadataForm.d.ts +0 -0
  77. /package/{lib → dist}/components/FormWidgets/NameInputWidget.d.ts +0 -0
  78. /package/{lib → dist}/components/FormWidgets/NamespaceSelectWidget.d.ts +0 -0
  79. /package/{lib → dist}/components/FormWidgets/index.d.ts +0 -0
  80. /package/{lib → dist}/components/FormWidgets/widget.d.ts +0 -0
  81. /package/{lib → dist}/components/ImageNames/index.d.ts +0 -0
  82. /package/{lib → dist}/components/IngressRulesComponent/index.d.ts +0 -0
  83. /package/{lib → dist}/components/IngressRulesTable/IngressRulesTable.d.ts +0 -0
  84. /package/{lib → dist}/components/IngressRulesTable/index.d.ts +0 -0
  85. /package/{lib → dist}/components/InternalBaseTable/TableWidgets.d.ts +0 -0
  86. /package/{lib → dist}/components/InternalBaseTable/index.d.ts +0 -0
  87. /package/{lib → dist}/components/KeyValue/KeyValue.d.ts +0 -0
  88. /package/{lib → dist}/components/KeyValue/KeyValueAnnotation.d.ts +0 -0
  89. /package/{lib → dist}/components/KeyValue/KeyValueSecret.d.ts +0 -0
  90. /package/{lib → dist}/components/KeyValue/index.d.ts +0 -0
  91. /package/{lib → dist}/components/Layout/index.d.ts +0 -0
  92. /package/{lib → dist}/components/LinkFallback/index.d.ts +0 -0
  93. /package/{lib → dist}/components/ListPage/index.d.ts +0 -0
  94. /package/{lib → dist}/components/Menu/index.d.ts +0 -0
  95. /package/{lib → dist}/components/NamespacesFilter/index.d.ts +0 -0
  96. /package/{lib → dist}/components/NetworkPolicyRulesViewer/NetworkPolicyRulesViewer.d.ts +0 -0
  97. /package/{lib → dist}/components/NetworkPolicyRulesViewer/index.d.ts +0 -0
  98. /package/{lib → dist}/components/NodeTaintsTable/NodeTaintsTable.d.ts +0 -0
  99. /package/{lib → dist}/components/NodeTaintsTable/index.d.ts +0 -0
  100. /package/{lib → dist}/components/PVCDistributeStorage/index.d.ts +0 -0
  101. /package/{lib → dist}/components/PageShow/PageShow.d.ts +0 -0
  102. /package/{lib → dist}/components/PageShow/index.d.ts +0 -0
  103. /package/{lib → dist}/components/PodContainersTable/PodContainersTable.d.ts +0 -0
  104. /package/{lib → dist}/components/PodContainersTable/index.d.ts +0 -0
  105. /package/{lib → dist}/components/PodLog/index.d.ts +0 -0
  106. /package/{lib → dist}/components/PodSelectorTable/index.d.ts +0 -0
  107. /package/{lib → dist}/components/PortsTable/index.d.ts +0 -0
  108. /package/{lib → dist}/components/ReferenceLink/index.d.ts +0 -0
  109. /package/{lib → dist}/components/ResourceCRUD/ResourceCRUD.d.ts +0 -0
  110. /package/{lib → dist}/components/ResourceCRUD/create/index.d.ts +0 -0
  111. /package/{lib → dist}/components/ResourceCRUD/index.d.ts +0 -0
  112. /package/{lib → dist}/components/ResourceCRUD/list/index.d.ts +0 -0
  113. /package/{lib → dist}/components/ResourceCRUD/show/index.d.ts +0 -0
  114. /package/{lib → dist}/components/ResourceFiledDisplays.d.ts +0 -0
  115. /package/{lib → dist}/components/ResourceLink/index.d.ts +0 -0
  116. /package/{lib → dist}/components/ResourceSelect/index.d.ts +0 -0
  117. /package/{lib → dist}/components/ResourceTable/index.d.ts +0 -0
  118. /package/{lib → dist}/components/ResourceUsageBar/index.d.ts +0 -0
  119. /package/{lib → dist}/components/Separator/index.d.ts +0 -0
  120. /package/{lib → dist}/components/ServiceComponents/index.d.ts +0 -0
  121. /package/{lib → dist}/components/Shell/ShellToolbar.d.ts +0 -0
  122. /package/{lib → dist}/components/ShowContent/ShowContent.d.ts +0 -0
  123. /package/{lib → dist}/components/ShowContent/fields.d.ts +0 -0
  124. /package/{lib → dist}/components/ShowContent/groups.d.ts +0 -0
  125. /package/{lib → dist}/components/ShowContent/index.d.ts +0 -0
  126. /package/{lib → dist}/components/ShowContent/tabs.d.ts +0 -0
  127. /package/{lib → dist}/components/StateTag/StateTag.d.ts +0 -0
  128. /package/{lib → dist}/components/StateTag/index.d.ts +0 -0
  129. /package/{lib → dist}/components/Table/index.d.ts +0 -0
  130. /package/{lib → dist}/components/TableToolbar/index.d.ts +0 -0
  131. /package/{lib → dist}/components/Tabs/index.d.ts +0 -0
  132. /package/{lib → dist}/components/Tags/index.d.ts +0 -0
  133. /package/{lib → dist}/components/TextTags/index.d.ts +0 -0
  134. /package/{lib → dist}/components/Time/index.d.ts +0 -0
  135. /package/{lib → dist}/components/ValueDisplay/index.d.ts +0 -0
  136. /package/{lib → dist}/components/WorkloadPodsTable/WorkloadPodsTable.d.ts +0 -0
  137. /package/{lib → dist}/components/WorkloadPodsTable/index.d.ts +0 -0
  138. /package/{lib → dist}/components/WorkloadReplicas/index.d.ts +0 -0
  139. /package/{lib → dist}/components/YamlEditor/MonacoYamlDiffEditor.d.ts +0 -0
  140. /package/{lib → dist}/components/YamlEditor/MonacoYamlEditor.d.ts +0 -0
  141. /package/{lib → dist}/components/YamlEditor/YamlEditorComponent.d.ts +0 -0
  142. /package/{lib → dist}/components/YamlEditor/index.d.ts +0 -0
  143. /package/{lib → dist}/components/YamlEditor/style.d.ts +0 -0
  144. /package/{lib → dist}/components/YamlEditor/yaml.worker.d.ts +0 -0
  145. /package/{lib → dist}/constants/auth.d.ts +0 -0
  146. /package/{lib → dist}/constants/index.d.ts +0 -0
  147. /package/{lib → dist}/constants/k8s.d.ts +0 -0
  148. /package/{lib → dist}/constants/state.d.ts +0 -0
  149. /package/{lib → dist}/contexts/component.d.ts +0 -0
  150. /package/{lib → dist}/contexts/configs.d.ts +0 -0
  151. /package/{lib → dist}/contexts/constants.d.ts +0 -0
  152. /package/{lib → dist}/contexts/global-store.d.ts +0 -0
  153. /package/{lib → dist}/contexts/index.d.ts +0 -0
  154. /package/{lib → dist}/hooks/index.d.ts +0 -0
  155. /package/{lib → dist}/hooks/useDeleteModal/index.d.ts +0 -0
  156. /package/{lib → dist}/hooks/useDeleteModal/useDeleteManyModal.d.ts +0 -0
  157. /package/{lib → dist}/hooks/useDeleteModal/useDeleteModal.d.ts +0 -0
  158. /package/{lib → dist}/hooks/useDeleteModal/useDeleteModalOnly.d.ts +0 -0
  159. /package/{lib → dist}/hooks/useDeleteModal/useFailedModal.d.ts +0 -0
  160. /package/{lib → dist}/hooks/useDownloadYAML.d.ts +0 -0
  161. /package/{lib → dist}/hooks/useEagleTable/columns.d.ts +0 -0
  162. /package/{lib → dist}/hooks/useEagleTable/index.d.ts +0 -0
  163. /package/{lib → dist}/hooks/useEagleTable/useEagleTable.d.ts +0 -0
  164. /package/{lib → dist}/hooks/useEdit.d.ts +0 -0
  165. /package/{lib → dist}/hooks/useGlobalStore.d.ts +0 -0
  166. /package/{lib → dist}/hooks/useK8sYamlEditor.d.ts +0 -0
  167. /package/{lib → dist}/hooks/useNamespaceRefineFilter.d.ts +0 -0
  168. /package/{lib → dist}/hooks/useOpenForm.d.ts +0 -0
  169. /package/{lib → dist}/hooks/usePathMap.d.ts +0 -0
  170. /package/{lib → dist}/hooks/useSchema.d.ts +0 -0
  171. /package/{lib → dist}/hooks/useSubmitForm.d.ts +0 -0
  172. /package/{lib → dist}/hooks/useTableData.d.ts +0 -0
  173. /package/{lib → dist}/i18n.d.ts +0 -0
  174. /package/{lib → dist}/index.d.ts +0 -0
  175. /package/{lib → dist}/locales/en-US/index.d.ts +0 -0
  176. /package/{lib → dist}/locales/index.d.ts +0 -0
  177. /package/{lib → dist}/locales/zh-CN/index.d.ts +0 -0
  178. /package/{lib → dist}/main.d.ts +0 -0
  179. /package/{lib → dist}/models/cronjob-model.d.ts +0 -0
  180. /package/{lib → dist}/models/daemonset-model.d.ts +0 -0
  181. /package/{lib → dist}/models/deployment-model.d.ts +0 -0
  182. /package/{lib → dist}/models/event-model.d.ts +0 -0
  183. /package/{lib → dist}/models/index.d.ts +0 -0
  184. /package/{lib → dist}/models/ingress-model.d.ts +0 -0
  185. /package/{lib → dist}/models/job-model.d.ts +0 -0
  186. /package/{lib → dist}/models/network-policy-model.d.ts +0 -0
  187. /package/{lib → dist}/models/node-model.d.ts +0 -0
  188. /package/{lib → dist}/models/persistent-volume-claim.d.ts +0 -0
  189. /package/{lib → dist}/models/persistent-volume.d.ts +0 -0
  190. /package/{lib → dist}/models/pod-metrics-model.d.ts +0 -0
  191. /package/{lib → dist}/models/pod-model.d.ts +0 -0
  192. /package/{lib → dist}/models/resource-model.d.ts +0 -0
  193. /package/{lib → dist}/models/service-model.d.ts +0 -0
  194. /package/{lib → dist}/models/statefulset-model.d.ts +0 -0
  195. /package/{lib → dist}/models/storage-class.d.ts +0 -0
  196. /package/{lib → dist}/models/types/index.d.ts +0 -0
  197. /package/{lib → dist}/models/types/metric.d.ts +0 -0
  198. /package/{lib → dist}/models/workload-base-model.d.ts +0 -0
  199. /package/{lib → dist}/models/workload-model.d.ts +0 -0
  200. /package/{lib → dist}/pages/configmaps/index.d.ts +0 -0
  201. /package/{lib → dist}/pages/cronjobs/create/index.d.ts +0 -0
  202. /package/{lib → dist}/pages/cronjobs/index.d.ts +0 -0
  203. /package/{lib → dist}/pages/cronjobs/list/index.d.ts +0 -0
  204. /package/{lib → dist}/pages/cronjobs/show/index.d.ts +0 -0
  205. /package/{lib → dist}/pages/daemonsets/create/index.d.ts +0 -0
  206. /package/{lib → dist}/pages/daemonsets/index.d.ts +0 -0
  207. /package/{lib → dist}/pages/daemonsets/list/index.d.ts +0 -0
  208. /package/{lib → dist}/pages/daemonsets/show/index.d.ts +0 -0
  209. /package/{lib → dist}/pages/deployments/index.d.ts +0 -0
  210. /package/{lib → dist}/pages/deployments/list/index.d.ts +0 -0
  211. /package/{lib → dist}/pages/deployments/show/index.d.ts +0 -0
  212. /package/{lib → dist}/pages/ingresses/index.d.ts +0 -0
  213. /package/{lib → dist}/pages/jobs/index.d.ts +0 -0
  214. /package/{lib → dist}/pages/networkPolicies/index.d.ts +0 -0
  215. /package/{lib → dist}/pages/nodes/index.d.ts +0 -0
  216. /package/{lib → dist}/pages/nodes/list/index.d.ts +0 -0
  217. /package/{lib → dist}/pages/nodes/show/index.d.ts +0 -0
  218. /package/{lib → dist}/pages/persistentvolumeclaims/index.d.ts +0 -0
  219. /package/{lib → dist}/pages/persistentvolumes/index.d.ts +0 -0
  220. /package/{lib → dist}/pages/pods/create/index.d.ts +0 -0
  221. /package/{lib → dist}/pages/pods/index.d.ts +0 -0
  222. /package/{lib → dist}/pages/pods/list/index.d.ts +0 -0
  223. /package/{lib → dist}/pages/pods/show/index.d.ts +0 -0
  224. /package/{lib → dist}/pages/secrets/index.d.ts +0 -0
  225. /package/{lib → dist}/pages/services/index.d.ts +0 -0
  226. /package/{lib → dist}/pages/statefulsets/index.d.ts +0 -0
  227. /package/{lib → dist}/pages/storageclasses/form/index.d.ts +0 -0
  228. /package/{lib → dist}/pages/storageclasses/index.d.ts +0 -0
  229. /package/{lib → dist}/plugins/index.d.ts +0 -0
  230. /package/{lib → dist}/plugins/model-plugin.d.ts +0 -0
  231. /package/{lib → dist}/plugins/relation-plugin.d.ts +0 -0
  232. /package/{lib → dist}/plugins/type.d.ts +0 -0
  233. /package/{lib → dist}/providers/index.d.ts +0 -0
  234. /package/{lib → dist}/providers/router-provider/index.d.ts +0 -0
  235. /package/{lib → dist}/styles/button.d.ts +0 -0
  236. /package/{lib → dist}/styles/modal.d.ts +0 -0
  237. /package/{lib → dist}/styles/tag.d.ts +0 -0
  238. /package/{lib → dist}/types/globalStore.d.ts +0 -0
  239. /package/{lib → dist}/types/index.d.ts +0 -0
  240. /package/{lib → dist}/types/resource.d.ts +0 -0
  241. /package/{lib → dist}/utils/addId.d.ts +0 -0
  242. /package/{lib → dist}/utils/download.d.ts +0 -0
  243. /package/{lib → dist}/utils/error.d.ts +0 -0
  244. /package/{lib → dist}/utils/form.d.ts +0 -0
  245. /package/{lib → dist}/utils/index.d.ts +0 -0
  246. /package/{lib → dist}/utils/k8s.d.ts +0 -0
  247. /package/{lib → dist}/utils/labels.d.ts +0 -0
  248. /package/{lib → dist}/utils/match-selector.d.ts +0 -0
  249. /package/{lib → dist}/utils/object.d.ts +0 -0
  250. /package/{lib → dist}/utils/openapi.d.ts +0 -0
  251. /package/{lib → dist}/utils/schema-store.d.ts +0 -0
  252. /package/{lib → dist}/utils/schema.d.ts +0 -0
  253. /package/{lib → dist}/utils/selector.d.ts +0 -0
  254. /package/{lib → dist}/utils/shell.d.ts +0 -0
  255. /package/{lib → dist}/utils/storage.d.ts +0 -0
  256. /package/{lib → dist}/utils/string.d.ts +0 -0
  257. /package/{lib → dist}/utils/time.d.ts +0 -0
  258. /package/{lib → dist}/utils/unit.d.ts +0 -0
  259. /package/{lib → dist}/utils/validation.d.ts +0 -0
  260. /package/{lib → dist}/utils/yaml.d.ts +0 -0
@@ -0,0 +1,216 @@
1
+ import { S as SocketStatus, j as jsxRuntimeExports } from "./common-feae5742.js";
2
+ import { Select, AntdOption } from "@cloudtower/eagle";
3
+ import React__default, { useMemo, useRef, useState, useCallback, useEffect, useImperativeHandle } from "react";
4
+ import { S as Shell } from "./index-40deb620.js";
5
+ import { Buffer } from "buffer";
6
+ import "@xterm/addon-canvas";
7
+ import "@xterm/addon-fit";
8
+ import "@xterm/addon-search";
9
+ import "@xterm/addon-web-links";
10
+ import "@xterm/addon-webgl";
11
+ import "@xterm/xterm";
12
+ import "copy-to-clipboard";
13
+ import "lodash-es";
14
+ import "@cloudtower/icons-react";
15
+ function addParam(url, key, val) {
16
+ let out = url + (url.includes("?") ? "&" : "?");
17
+ if (!Array.isArray(val)) {
18
+ val = [val];
19
+ }
20
+ out += val.map((v) => {
21
+ if (v === null) {
22
+ return `${encodeURIComponent(key)}`;
23
+ } else {
24
+ return `${encodeURIComponent(key)}=${encodeURIComponent(v)}`;
25
+ }
26
+ }).join("&");
27
+ return out;
28
+ }
29
+ function addParams(url, params) {
30
+ if (params && typeof params === "object") {
31
+ Object.keys(params).forEach((key) => {
32
+ url = addParam(url, key, params[key]);
33
+ });
34
+ }
35
+ return url;
36
+ }
37
+ function base64Encode(str, alphabet = "normal") {
38
+ let buf;
39
+ if (str === null || typeof str === "undefined") {
40
+ return str;
41
+ }
42
+ if (typeof Buffer.from === "function" && Buffer.from !== Uint8Array.from) {
43
+ buf = Buffer.from(str);
44
+ } else {
45
+ buf = new Buffer(str);
46
+ }
47
+ if (alphabet === "url") {
48
+ const m = {
49
+ "+": "-",
50
+ "/": "_"
51
+ };
52
+ return buf.toString("base64").replace(/[+/]|=+$/g, (char) => m[char] || "");
53
+ }
54
+ return buf.toString("base64");
55
+ }
56
+ function base64DecodeToBuffer(str) {
57
+ if (str === null || typeof str === "undefined") {
58
+ return str;
59
+ }
60
+ if (typeof Buffer.from === "function" && Buffer.from !== Uint8Array.from) {
61
+ return Buffer.from(str, "base64");
62
+ } else {
63
+ return new Buffer(str, "base64");
64
+ }
65
+ }
66
+ function base64Decode(str) {
67
+ return !str ? str : base64DecodeToBuffer(str.replace(/[-_]/g, (char) => char === "-" ? "+" : "/")).toString();
68
+ }
69
+ var OS = /* @__PURE__ */ ((OS2) => {
70
+ OS2["Linux"] = "linux";
71
+ OS2["Windows"] = "windows";
72
+ return OS2;
73
+ })(OS || {});
74
+ const BACKUP_SHELLS = [
75
+ "windows",
76
+ "linux"
77
+ /* Linux */
78
+ ];
79
+ const COMMANDS = {
80
+ [
81
+ "linux"
82
+ /* Linux */
83
+ ]: [
84
+ "/bin/sh",
85
+ "-c",
86
+ 'TERM=xterm-256color; export TERM; [ -x /bin/bash ] && ([ -x /usr/bin/script ] && /usr/bin/script -q -c "/bin/bash" /dev/null || exec /bin/bash) || exec /bin/sh'
87
+ ],
88
+ [
89
+ "windows"
90
+ /* Windows */
91
+ ]: ["cmd"]
92
+ };
93
+ const PodShell = React__default.forwardRef(
94
+ function PodShell2(props, ref) {
95
+ const { pod, basePath, onSocketStatusChange } = props;
96
+ const id = pod.id;
97
+ const [namespace, name] = useMemo(() => id.split("/"), [id]);
98
+ const shellRef = useRef(null);
99
+ const errorMsgRef = useRef("");
100
+ const [osIndex, setOsIndex] = useState(0);
101
+ const [container, setContainer] = useState("");
102
+ const containers = useMemo(() => {
103
+ var _a, _b;
104
+ return (((_a = pod == null ? void 0 : pod._rawYaml.status) == null ? void 0 : _a.containerStatuses) || []).concat(((_b = pod == null ? void 0 : pod._rawYaml.status) == null ? void 0 : _b.initContainerStatuses) || []).map((containerStatus) => containerStatus.name);
105
+ }, [pod]);
106
+ const url = useMemo(() => {
107
+ const os = BACKUP_SHELLS[osIndex];
108
+ const protocol = location.protocol.includes("https") ? "wss" : "ws";
109
+ const url2 = container && os ? addParams(
110
+ `${protocol}://${location.host}${basePath}/api/v1/namespaces/${namespace}/pods/${name}/exec`,
111
+ {
112
+ container,
113
+ stdout: "true",
114
+ stdin: "true",
115
+ stderr: "true",
116
+ tty: "true",
117
+ command: COMMANDS[
118
+ os || "linux"
119
+ /* Linux */
120
+ ]
121
+ }
122
+ ) : "";
123
+ return url2;
124
+ }, [container, name, namespace, osIndex, basePath]);
125
+ const onSocketClose = useCallback(
126
+ (socket, term) => {
127
+ var _a, _b;
128
+ if (errorMsgRef.current) {
129
+ if (osIndex + 1 < BACKUP_SHELLS.length) {
130
+ setOsIndex(osIndex + 1);
131
+ } else {
132
+ term == null ? void 0 : term.writeln(`\x1B[38;2;255;82;82m${errorMsgRef.current}`);
133
+ (_a = shellRef.current) == null ? void 0 : _a.setSocketStatus(SocketStatus.Disconnected);
134
+ errorMsgRef.current = "";
135
+ }
136
+ } else {
137
+ (_b = shellRef.current) == null ? void 0 : _b.setSocketStatus(SocketStatus.Disconnected);
138
+ }
139
+ },
140
+ [osIndex]
141
+ );
142
+ const onSocketMessage = useCallback(
143
+ (e, socket, term) => {
144
+ const type = e.data.substr(0, 1);
145
+ const msg = base64Decode(e.data.substr(1));
146
+ if (`${type}` === "1") {
147
+ term == null ? void 0 : term.write(msg);
148
+ } else {
149
+ if (`${type}` === "3") {
150
+ errorMsgRef.current = msg;
151
+ }
152
+ }
153
+ },
154
+ []
155
+ );
156
+ const fit = useCallback(({ rows, cols }) => {
157
+ var _a;
158
+ const message = `${"4"}${base64Encode(
159
+ JSON.stringify({
160
+ Width: Math.floor(cols),
161
+ Height: Math.floor(rows)
162
+ })
163
+ )}`;
164
+ (_a = shellRef.current) == null ? void 0 : _a.send(message);
165
+ }, []);
166
+ const encode = useCallback((input) => `${"0"}${base64Encode(input)}`, []);
167
+ useEffect(() => {
168
+ if (!container && containers.length) {
169
+ setContainer(containers[0]);
170
+ }
171
+ }, [containers, container]);
172
+ useImperativeHandle(
173
+ ref,
174
+ () => ({
175
+ getAllTerminalContents: () => {
176
+ var _a;
177
+ return ((_a = shellRef.current) == null ? void 0 : _a.getAllTerminalContents()) || [];
178
+ }
179
+ }),
180
+ []
181
+ );
182
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
183
+ Shell,
184
+ {
185
+ ref: shellRef,
186
+ url,
187
+ protocols: "base64.channel.k8s.io",
188
+ encode,
189
+ fit,
190
+ toolbarLeftSlot: /* @__PURE__ */ jsxRuntimeExports.jsx(
191
+ Select,
192
+ {
193
+ input: {
194
+ value: container,
195
+ onChange(value) {
196
+ setContainer(value);
197
+ }
198
+ },
199
+ style: {
200
+ width: "256px"
201
+ },
202
+ size: "small",
203
+ children: containers.map((containerName) => /* @__PURE__ */ jsxRuntimeExports.jsx(AntdOption, { value: containerName, label: containerName, children: containerName }, containerName))
204
+ }
205
+ ),
206
+ onSocketMessage,
207
+ onSocketClose,
208
+ onSocketStatusChange
209
+ }
210
+ );
211
+ }
212
+ );
213
+ export {
214
+ OS,
215
+ PodShell
216
+ };