@dovetail-v2/refine 0.1.11-alpha.1 → 0.1.11

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 (234) hide show
  1. package/dist/{MonacoYamlDiffEditor-1c2c2dd9.js → MonacoYamlDiffEditor-10d71161.js} +1 -1
  2. package/dist/{index-e30b5cd6.js → index-bf5bacd7.js} +744 -556
  3. package/dist/refine.js +3 -1
  4. package/dist/refine.umd.cjs +738 -550
  5. package/dist/style.css +143 -6
  6. package/lib/components/EditField/index.d.ts +3 -0
  7. package/lib/components/EditMetadataForm/KeyValueTableForm.d.ts +15 -0
  8. package/lib/components/EditMetadataForm/LabelFormatPopover.d.ts +3 -0
  9. package/lib/components/ResourceSelect/index.d.ts +2 -2
  10. package/lib/i18n.d.ts +20 -0
  11. package/lib/locales/zh-CN/index.d.ts +20 -0
  12. package/lib/utils/index.d.ts +1 -0
  13. package/lib/utils/validation.d.ts +8 -0
  14. package/package.json +9 -9
  15. package/lib/components/CronJobDropdown/index.d.ts +0 -9
  16. package/lib/components/K8sDropdown/index.d.ts +0 -9
  17. package/lib/components/PodDropdown/index.d.ts +0 -9
  18. package/lib/components/ReplicasDropdown/index.d.ts +0 -9
  19. package/lib/components/Table/TableToolBar.d.ts +0 -9
  20. package/lib/components/Table/TableWidgets.d.ts +0 -6
  21. package/lib/components/WorkloadDropdown/index.d.ts +0 -9
  22. package/lib/src/App.d.ts +0 -3
  23. package/lib/src/Dovetail.d.ts +0 -18
  24. package/lib/src/components/Breadcrumb/index.d.ts +0 -6
  25. package/lib/src/components/ConditionsTable/ConditionsTable.d.ts +0 -7
  26. package/lib/src/components/ConditionsTable/index.d.ts +0 -1
  27. package/lib/src/components/CreateButton/index.d.ts +0 -2
  28. package/lib/src/components/CronJobDropdown/index.d.ts +0 -9
  29. package/lib/src/components/CronjobJobsTable/index.d.ts +0 -8
  30. package/lib/src/components/DeleteButton/index.d.ts +0 -2
  31. package/lib/src/components/DeleteManyButton/index.d.ts +0 -4
  32. package/lib/src/components/DrawerShow/DrawerShow.d.ts +0 -9
  33. package/lib/src/components/DrawerShow/index.d.ts +0 -1
  34. package/lib/src/components/DurationTime/index.d.ts +0 -6
  35. package/lib/src/components/EditButton/index.d.ts +0 -2
  36. package/lib/src/components/EditField/index.d.ts +0 -15
  37. package/lib/src/components/ErrorContent/index.d.ts +0 -17
  38. package/lib/src/components/EventsTable/EventsTable.d.ts +0 -6
  39. package/lib/src/components/EventsTable/index.d.ts +0 -1
  40. package/lib/src/components/Form/FormModal.d.ts +0 -9
  41. package/lib/src/components/Form/RefineFormContent.d.ts +0 -12
  42. package/lib/src/components/Form/RefineFormPage.d.ts +0 -7
  43. package/lib/src/components/Form/YamlForm.d.ts +0 -29
  44. package/lib/src/components/Form/index.d.ts +0 -7
  45. package/lib/src/components/Form/type.d.ts +0 -17
  46. package/lib/src/components/Form/useFieldsConfig.d.ts +0 -4
  47. package/lib/src/components/Form/useReactHookForm.d.ts +0 -30
  48. package/lib/src/components/Form/useRefineForm.d.ts +0 -13
  49. package/lib/src/components/Form/useYamlForm.d.ts +0 -50
  50. package/lib/src/components/FormErrorAlert/index.d.ts +0 -9
  51. package/lib/src/components/FormLayout/index.d.ts +0 -7
  52. package/lib/src/components/FormWidgets/KeyValueListWidget.d.ts +0 -6
  53. package/lib/src/components/FormWidgets/MetadataForm.d.ts +0 -2
  54. package/lib/src/components/FormWidgets/NameInputWidget.d.ts +0 -51
  55. package/lib/src/components/FormWidgets/NamespaceSelectWidget.d.ts +0 -9
  56. package/lib/src/components/FormWidgets/index.d.ts +0 -4
  57. package/lib/src/components/FormWidgets/widget.d.ts +0 -5
  58. package/lib/src/components/ImageNames/index.d.ts +0 -5
  59. package/lib/src/components/IngressRulesComponent/index.d.ts +0 -5
  60. package/lib/src/components/IngressRulesTable/IngressRulesTable.d.ts +0 -7
  61. package/lib/src/components/IngressRulesTable/index.d.ts +0 -1
  62. package/lib/src/components/K8sDropdown/index.d.ts +0 -9
  63. package/lib/src/components/KeyValue/KeyValue.d.ts +0 -7
  64. package/lib/src/components/KeyValue/KeyValueAnnotation.d.ts +0 -6
  65. package/lib/src/components/KeyValue/KeyValueSecret.d.ts +0 -5
  66. package/lib/src/components/KeyValue/index.d.ts +0 -3
  67. package/lib/src/components/Layout/index.d.ts +0 -3
  68. package/lib/src/components/LinkFallback/index.d.ts +0 -4
  69. package/lib/src/components/ListPage/index.d.ts +0 -10
  70. package/lib/src/components/Menu/index.d.ts +0 -2
  71. package/lib/src/components/NamespacesFilter/index.d.ts +0 -11
  72. package/lib/src/components/NetworkPolicyRulesViewer/NetworkPolicyRulesViewer.d.ts +0 -8
  73. package/lib/src/components/NetworkPolicyRulesViewer/index.d.ts +0 -1
  74. package/lib/src/components/PVCDistributeStorage/index.d.ts +0 -16
  75. package/lib/src/components/PageShow/PageShow.d.ts +0 -12
  76. package/lib/src/components/PageShow/index.d.ts +0 -1
  77. package/lib/src/components/PodContainersTable/PodContainersTable.d.ts +0 -8
  78. package/lib/src/components/PodContainersTable/index.d.ts +0 -1
  79. package/lib/src/components/PodDropdown/index.d.ts +0 -9
  80. package/lib/src/components/PodLog/index.d.ts +0 -6
  81. package/lib/src/components/PodSelectorTable/index.d.ts +0 -6
  82. package/lib/src/components/PodShellModal/PodShell.d.ts +0 -18
  83. package/lib/src/components/PodShellModal/index.d.ts +0 -10
  84. package/lib/src/components/PortsTable/index.d.ts +0 -7
  85. package/lib/src/components/ReferenceLink/index.d.ts +0 -8
  86. package/lib/src/components/ReplicasDropdown/index.d.ts +0 -9
  87. package/lib/src/components/ResourceCRUD/ResourceCRUD.d.ts +0 -8
  88. package/lib/src/components/ResourceCRUD/create/index.d.ts +0 -8
  89. package/lib/src/components/ResourceCRUD/index.d.ts +0 -4
  90. package/lib/src/components/ResourceCRUD/list/index.d.ts +0 -9
  91. package/lib/src/components/ResourceCRUD/show/index.d.ts +0 -9
  92. package/lib/src/components/ResourceFiledDisplays.d.ts +0 -7
  93. package/lib/src/components/ResourceLink/index.d.ts +0 -8
  94. package/lib/src/components/ResourceSelect/index.d.ts +0 -12
  95. package/lib/src/components/ResourceTable/index.d.ts +0 -9
  96. package/lib/src/components/ResourceUsageBar/index.d.ts +0 -8
  97. package/lib/src/components/Separator/index.d.ts +0 -2
  98. package/lib/src/components/ServiceComponents/index.d.ts +0 -10
  99. package/lib/src/components/Shell/ShellToolbar.d.ts +0 -16
  100. package/lib/src/components/Shell/index.d.ts +0 -74
  101. package/lib/src/components/ShowContent/ShowContent.d.ts +0 -18
  102. package/lib/src/components/ShowContent/fields.d.ts +0 -76
  103. package/lib/src/components/ShowContent/groups.d.ts +0 -24
  104. package/lib/src/components/ShowContent/index.d.ts +0 -4
  105. package/lib/src/components/ShowContent/tabs.d.ts +0 -5
  106. package/lib/src/components/StateTag/StateTag.d.ts +0 -10
  107. package/lib/src/components/StateTag/index.d.ts +0 -1
  108. package/lib/src/components/Table/TableToolBar.d.ts +0 -8
  109. package/lib/src/components/Table/TableWidgets.d.ts +0 -6
  110. package/lib/src/components/Table/index.d.ts +0 -43
  111. package/lib/src/components/Tabs/index.d.ts +0 -10
  112. package/lib/src/components/Tags/index.d.ts +0 -6
  113. package/lib/src/components/TextTags/index.d.ts +0 -6
  114. package/lib/src/components/Time/index.d.ts +0 -8
  115. package/lib/src/components/ValueDisplay/index.d.ts +0 -9
  116. package/lib/src/components/WorkloadDropdown/index.d.ts +0 -9
  117. package/lib/src/components/WorkloadPodsTable/WorkloadPodsTable.d.ts +0 -9
  118. package/lib/src/components/WorkloadPodsTable/index.d.ts +0 -1
  119. package/lib/src/components/WorkloadReplicas/index.d.ts +0 -17
  120. package/lib/src/components/YamlEditor/MonacoYamlDiffEditor.d.ts +0 -9
  121. package/lib/src/components/YamlEditor/MonacoYamlEditor.d.ts +0 -19
  122. package/lib/src/components/YamlEditor/YamlEditorComponent.d.ts +0 -27
  123. package/lib/src/components/YamlEditor/index.d.ts +0 -1
  124. package/lib/src/components/YamlEditor/style.d.ts +0 -11
  125. package/lib/src/components/YamlEditor/yaml.worker.d.ts +0 -1
  126. package/lib/src/components/index.d.ts +0 -49
  127. package/lib/src/constants/auth.d.ts +0 -5
  128. package/lib/src/constants/index.d.ts +0 -3
  129. package/lib/src/constants/k8s.d.ts +0 -522
  130. package/lib/src/constants/state.d.ts +0 -15
  131. package/lib/src/contexts/component.d.ts +0 -8
  132. package/lib/src/contexts/configs.d.ts +0 -4
  133. package/lib/src/contexts/global-store.d.ts +0 -6
  134. package/lib/src/contexts/index.d.ts +0 -3
  135. package/lib/src/hooks/index.d.ts +0 -8
  136. package/lib/src/hooks/useDeleteModal/index.d.ts +0 -1
  137. package/lib/src/hooks/useDeleteModal/useDeleteManyModal.d.ts +0 -8
  138. package/lib/src/hooks/useDeleteModal/useDeleteModal.d.ts +0 -7
  139. package/lib/src/hooks/useDownloadYAML.d.ts +0 -7
  140. package/lib/src/hooks/useEagleTable/columns.d.ts +0 -47
  141. package/lib/src/hooks/useEagleTable/index.d.ts +0 -2
  142. package/lib/src/hooks/useEagleTable/useEagleTable.d.ts +0 -56
  143. package/lib/src/hooks/useEdit.d.ts +0 -4
  144. package/lib/src/hooks/useGlobalStore.d.ts +0 -3
  145. package/lib/src/hooks/useK8sYamlEditor.d.ts +0 -5
  146. package/lib/src/hooks/useNamespaceRefineFilter.d.ts +0 -5
  147. package/lib/src/hooks/useOpenForm.d.ts +0 -8
  148. package/lib/src/hooks/useSchema.d.ts +0 -21
  149. package/lib/src/hooks/useSubmitForm.d.ts +0 -14
  150. package/lib/src/hooks/useTableData.d.ts +0 -20
  151. package/lib/src/i18n.d.ts +0 -371
  152. package/lib/src/index.d.ts +0 -12
  153. package/lib/src/locales/en-US/index.d.ts +0 -175
  154. package/lib/src/locales/index.d.ts +0 -2
  155. package/lib/src/locales/zh-CN/index.d.ts +0 -193
  156. package/lib/src/main.d.ts +0 -3
  157. package/lib/src/models/cronjob-model.d.ts +0 -15
  158. package/lib/src/models/daemonset-model.d.ts +0 -15
  159. package/lib/src/models/deployment-model.d.ts +0 -13
  160. package/lib/src/models/event-model.d.ts +0 -7
  161. package/lib/src/models/index.d.ts +0 -19
  162. package/lib/src/models/ingress-model.d.ts +0 -20
  163. package/lib/src/models/job-model.d.ts +0 -20
  164. package/lib/src/models/network-policy-model.d.ts +0 -9
  165. package/lib/src/models/node-model.d.ts +0 -17
  166. package/lib/src/models/persistent-volume-claim.d.ts +0 -13
  167. package/lib/src/models/persistent-volume.d.ts +0 -13
  168. package/lib/src/models/pod-metrics-model.d.ts +0 -8
  169. package/lib/src/models/pod-model.d.ts +0 -20
  170. package/lib/src/models/resource-model.d.ts +0 -21
  171. package/lib/src/models/service-model.d.ts +0 -24
  172. package/lib/src/models/statefulset-model.d.ts +0 -13
  173. package/lib/src/models/storage-class.d.ts +0 -16
  174. package/lib/src/models/types/index.d.ts +0 -1
  175. package/lib/src/models/types/metric.d.ts +0 -25
  176. package/lib/src/models/workload-base-model.d.ts +0 -12
  177. package/lib/src/models/workload-model.d.ts +0 -18
  178. package/lib/src/pages/configmaps/index.d.ts +0 -4
  179. package/lib/src/pages/cronjobs/create/index.d.ts +0 -3
  180. package/lib/src/pages/cronjobs/index.d.ts +0 -3
  181. package/lib/src/pages/cronjobs/list/index.d.ts +0 -3
  182. package/lib/src/pages/cronjobs/show/index.d.ts +0 -3
  183. package/lib/src/pages/daemonsets/create/index.d.ts +0 -3
  184. package/lib/src/pages/daemonsets/index.d.ts +0 -3
  185. package/lib/src/pages/daemonsets/list/index.d.ts +0 -3
  186. package/lib/src/pages/daemonsets/show/index.d.ts +0 -3
  187. package/lib/src/pages/deployments/index.d.ts +0 -2
  188. package/lib/src/pages/deployments/list/index.d.ts +0 -3
  189. package/lib/src/pages/deployments/show/index.d.ts +0 -3
  190. package/lib/src/pages/ingresses/index.d.ts +0 -4
  191. package/lib/src/pages/jobs/index.d.ts +0 -4
  192. package/lib/src/pages/networkPolicies/index.d.ts +0 -4
  193. package/lib/src/pages/nodes/index.d.ts +0 -2
  194. package/lib/src/pages/nodes/list/index.d.ts +0 -3
  195. package/lib/src/pages/nodes/show/index.d.ts +0 -3
  196. package/lib/src/pages/persistentvolumeclaims/index.d.ts +0 -4
  197. package/lib/src/pages/persistentvolumes/index.d.ts +0 -4
  198. package/lib/src/pages/pods/create/index.d.ts +0 -3
  199. package/lib/src/pages/pods/index.d.ts +0 -3
  200. package/lib/src/pages/pods/list/index.d.ts +0 -3
  201. package/lib/src/pages/pods/show/index.d.ts +0 -3
  202. package/lib/src/pages/secrets/index.d.ts +0 -4
  203. package/lib/src/pages/services/index.d.ts +0 -4
  204. package/lib/src/pages/statefulsets/index.d.ts +0 -4
  205. package/lib/src/pages/storageclasses/form/index.d.ts +0 -9
  206. package/lib/src/pages/storageclasses/index.d.ts +0 -48
  207. package/lib/src/plugins/index.d.ts +0 -4
  208. package/lib/src/plugins/model-plugin.d.ts +0 -13
  209. package/lib/src/plugins/relation-plugin.d.ts +0 -26
  210. package/lib/src/plugins/type.d.ts +0 -8
  211. package/lib/src/providers/index.d.ts +0 -1
  212. package/lib/src/providers/router-provider/index.d.ts +0 -21
  213. package/lib/src/styles/button.d.ts +0 -1
  214. package/lib/src/styles/modal.d.ts +0 -1
  215. package/lib/src/types/index.d.ts +0 -1
  216. package/lib/src/types/resource.d.ts +0 -62
  217. package/lib/src/utils/addId.d.ts +0 -3
  218. package/lib/src/utils/download.d.ts +0 -1
  219. package/lib/src/utils/error.d.ts +0 -20
  220. package/lib/src/utils/form.d.ts +0 -3
  221. package/lib/src/utils/index.d.ts +0 -1
  222. package/lib/src/utils/k8s.d.ts +0 -3
  223. package/lib/src/utils/labels.d.ts +0 -9
  224. package/lib/src/utils/match-selector.d.ts +0 -3
  225. package/lib/src/utils/openapi.d.ts +0 -40
  226. package/lib/src/utils/schema.d.ts +0 -18
  227. package/lib/src/utils/selector.d.ts +0 -3
  228. package/lib/src/utils/shell.d.ts +0 -16
  229. package/lib/src/utils/storage.d.ts +0 -13
  230. package/lib/src/utils/string.d.ts +0 -1
  231. package/lib/src/utils/time.d.ts +0 -13
  232. package/lib/src/utils/unit.d.ts +0 -12
  233. package/lib/src/utils/yaml.d.ts +0 -2
  234. package/lib/vite.config.d.ts +0 -2
@@ -31,308 +31,301 @@ var __publicField = (obj, key, value) => {
31
31
  return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
32
32
  }
33
33
  var dayjs_min = { exports: {} };
34
- var hasRequiredDayjs_min;
35
- function requireDayjs_min() {
36
- if (hasRequiredDayjs_min)
37
- return dayjs_min.exports;
38
- hasRequiredDayjs_min = 1;
39
- (function(module2, exports3) {
40
- !function(t2, e2) {
41
- module2.exports = e2();
42
- }(commonjsGlobal, function() {
43
- var t2 = 1e3, e2 = 6e4, n2 = 36e5, r2 = "millisecond", i2 = "second", s2 = "minute", u = "hour", a2 = "day", o = "week", c2 = "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(t3) {
44
- var e3 = ["th", "st", "nd", "rd"], n3 = t3 % 100;
45
- return "[" + t3 + (e3[(n3 - 20) % 10] || e3[n3] || e3[0]) + "]";
46
- } }, m = function(t3, e3, n3) {
47
- var r3 = String(t3);
48
- return !r3 || r3.length >= e3 ? t3 : "" + Array(e3 + 1 - r3.length).join(n3) + t3;
49
- }, v = { s: m, z: function(t3) {
50
- var e3 = -t3.utcOffset(), n3 = Math.abs(e3), r3 = Math.floor(n3 / 60), i3 = n3 % 60;
51
- return (e3 <= 0 ? "+" : "-") + m(r3, 2, "0") + ":" + m(i3, 2, "0");
52
- }, m: function t3(e3, n3) {
53
- if (e3.date() < n3.date())
54
- return -t3(n3, e3);
55
- var r3 = 12 * (n3.year() - e3.year()) + (n3.month() - e3.month()), i3 = e3.clone().add(r3, c2), s3 = n3 - i3 < 0, u2 = e3.clone().add(r3 + (s3 ? -1 : 1), c2);
56
- return +(-(r3 + (n3 - i3) / (s3 ? i3 - u2 : u2 - i3)) || 0);
57
- }, a: function(t3) {
58
- return t3 < 0 ? Math.ceil(t3) || 0 : Math.floor(t3);
59
- }, p: function(t3) {
60
- return { M: c2, y: h, w: o, d: a2, D: d, h: u, m: s2, s: i2, ms: r2, Q: f }[t3] || String(t3 || "").toLowerCase().replace(/s$/, "");
61
- }, u: function(t3) {
62
- return void 0 === t3;
63
- } }, g = "en", D = {};
64
- D[g] = M;
65
- var p = "$isDayjsObject", S = function(t3) {
66
- return t3 instanceof _ || !(!t3 || !t3[p]);
67
- }, w = function t3(e3, n3, r3) {
68
- var i3;
69
- if (!e3)
70
- return g;
71
- if ("string" == typeof e3) {
72
- var s3 = e3.toLowerCase();
73
- D[s3] && (i3 = s3), n3 && (D[s3] = n3, i3 = s3);
74
- var u2 = e3.split("-");
75
- if (!i3 && u2.length > 1)
76
- return t3(u2[0]);
77
- } else {
78
- var a3 = e3.name;
79
- D[a3] = e3, i3 = a3;
80
- }
81
- return !r3 && i3 && (g = i3), i3 || !r3 && g;
82
- }, O = function(t3, e3) {
83
- if (S(t3))
84
- return t3.clone();
85
- var n3 = "object" == typeof e3 ? e3 : {};
86
- return n3.date = t3, n3.args = arguments, new _(n3);
87
- }, b = v;
88
- b.l = w, b.i = S, b.w = function(t3, e3) {
89
- return O(t3, { locale: e3.$L, utc: e3.$u, x: e3.$x, $offset: e3.$offset });
90
- };
91
- var _ = function() {
92
- function M2(t3) {
93
- this.$L = w(t3.locale, null, true), this.parse(t3), this.$x = this.$x || t3.x || {}, this[p] = true;
94
- }
95
- var m2 = M2.prototype;
96
- return m2.parse = function(t3) {
97
- this.$d = function(t4) {
98
- var e3 = t4.date, n3 = t4.utc;
99
- if (null === e3)
100
- return /* @__PURE__ */ new Date(NaN);
101
- if (b.u(e3))
102
- return /* @__PURE__ */ new Date();
103
- if (e3 instanceof Date)
104
- return new Date(e3);
105
- if ("string" == typeof e3 && !/Z$/i.test(e3)) {
106
- var r3 = e3.match($);
107
- if (r3) {
108
- var i3 = r3[2] - 1 || 0, s3 = (r3[7] || "0").substring(0, 3);
109
- return n3 ? new Date(Date.UTC(r3[1], i3, r3[3] || 1, r3[4] || 0, r3[5] || 0, r3[6] || 0, s3)) : new Date(r3[1], i3, r3[3] || 1, r3[4] || 0, r3[5] || 0, r3[6] || 0, s3);
110
- }
111
- }
34
+ (function(module2, exports3) {
35
+ !function(t2, e2) {
36
+ module2.exports = e2();
37
+ }(commonjsGlobal, function() {
38
+ var t2 = 1e3, e2 = 6e4, n2 = 36e5, r2 = "millisecond", i2 = "second", s2 = "minute", u = "hour", a2 = "day", o = "week", c2 = "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(t3) {
39
+ var e3 = ["th", "st", "nd", "rd"], n3 = t3 % 100;
40
+ return "[" + t3 + (e3[(n3 - 20) % 10] || e3[n3] || e3[0]) + "]";
41
+ } }, m = function(t3, e3, n3) {
42
+ var r3 = String(t3);
43
+ return !r3 || r3.length >= e3 ? t3 : "" + Array(e3 + 1 - r3.length).join(n3) + t3;
44
+ }, v = { s: m, z: function(t3) {
45
+ var e3 = -t3.utcOffset(), n3 = Math.abs(e3), r3 = Math.floor(n3 / 60), i3 = n3 % 60;
46
+ return (e3 <= 0 ? "+" : "-") + m(r3, 2, "0") + ":" + m(i3, 2, "0");
47
+ }, m: function t3(e3, n3) {
48
+ if (e3.date() < n3.date())
49
+ return -t3(n3, e3);
50
+ var r3 = 12 * (n3.year() - e3.year()) + (n3.month() - e3.month()), i3 = e3.clone().add(r3, c2), s3 = n3 - i3 < 0, u2 = e3.clone().add(r3 + (s3 ? -1 : 1), c2);
51
+ return +(-(r3 + (n3 - i3) / (s3 ? i3 - u2 : u2 - i3)) || 0);
52
+ }, a: function(t3) {
53
+ return t3 < 0 ? Math.ceil(t3) || 0 : Math.floor(t3);
54
+ }, p: function(t3) {
55
+ return { M: c2, y: h, w: o, d: a2, D: d, h: u, m: s2, s: i2, ms: r2, Q: f }[t3] || String(t3 || "").toLowerCase().replace(/s$/, "");
56
+ }, u: function(t3) {
57
+ return void 0 === t3;
58
+ } }, g = "en", D = {};
59
+ D[g] = M;
60
+ var p = "$isDayjsObject", S = function(t3) {
61
+ return t3 instanceof _ || !(!t3 || !t3[p]);
62
+ }, w = function t3(e3, n3, r3) {
63
+ var i3;
64
+ if (!e3)
65
+ return g;
66
+ if ("string" == typeof e3) {
67
+ var s3 = e3.toLowerCase();
68
+ D[s3] && (i3 = s3), n3 && (D[s3] = n3, i3 = s3);
69
+ var u2 = e3.split("-");
70
+ if (!i3 && u2.length > 1)
71
+ return t3(u2[0]);
72
+ } else {
73
+ var a3 = e3.name;
74
+ D[a3] = e3, i3 = a3;
75
+ }
76
+ return !r3 && i3 && (g = i3), i3 || !r3 && g;
77
+ }, O = function(t3, e3) {
78
+ if (S(t3))
79
+ return t3.clone();
80
+ var n3 = "object" == typeof e3 ? e3 : {};
81
+ return n3.date = t3, n3.args = arguments, new _(n3);
82
+ }, b = v;
83
+ b.l = w, b.i = S, b.w = function(t3, e3) {
84
+ return O(t3, { locale: e3.$L, utc: e3.$u, x: e3.$x, $offset: e3.$offset });
85
+ };
86
+ var _ = function() {
87
+ function M2(t3) {
88
+ this.$L = w(t3.locale, null, true), this.parse(t3), this.$x = this.$x || t3.x || {}, this[p] = true;
89
+ }
90
+ var m2 = M2.prototype;
91
+ return m2.parse = function(t3) {
92
+ this.$d = function(t4) {
93
+ var e3 = t4.date, n3 = t4.utc;
94
+ if (null === e3)
95
+ return /* @__PURE__ */ new Date(NaN);
96
+ if (b.u(e3))
97
+ return /* @__PURE__ */ new Date();
98
+ if (e3 instanceof Date)
112
99
  return new Date(e3);
113
- }(t3), this.init();
114
- }, m2.init = function() {
115
- var t3 = this.$d;
116
- this.$y = t3.getFullYear(), this.$M = t3.getMonth(), this.$D = t3.getDate(), this.$W = t3.getDay(), this.$H = t3.getHours(), this.$m = t3.getMinutes(), this.$s = t3.getSeconds(), this.$ms = t3.getMilliseconds();
117
- }, m2.$utils = function() {
118
- return b;
119
- }, m2.isValid = function() {
120
- return !(this.$d.toString() === l);
121
- }, m2.isSame = function(t3, e3) {
122
- var n3 = O(t3);
123
- return this.startOf(e3) <= n3 && n3 <= this.endOf(e3);
124
- }, m2.isAfter = function(t3, e3) {
125
- return O(t3) < this.startOf(e3);
126
- }, m2.isBefore = function(t3, e3) {
127
- return this.endOf(e3) < O(t3);
128
- }, m2.$g = function(t3, e3, n3) {
129
- return b.u(t3) ? this[e3] : this.set(n3, t3);
130
- }, m2.unix = function() {
131
- return Math.floor(this.valueOf() / 1e3);
132
- }, m2.valueOf = function() {
133
- return this.$d.getTime();
134
- }, m2.startOf = function(t3, e3) {
135
- var n3 = this, r3 = !!b.u(e3) || e3, f2 = b.p(t3), l2 = function(t4, e4) {
136
- var i3 = b.w(n3.$u ? Date.UTC(n3.$y, e4, t4) : new Date(n3.$y, e4, t4), n3);
137
- return r3 ? i3 : i3.endOf(a2);
138
- }, $2 = function(t4, e4) {
139
- return b.w(n3.toDate()[t4].apply(n3.toDate("s"), (r3 ? [0, 0, 0, 0] : [23, 59, 59, 999]).slice(e4)), n3);
140
- }, y2 = this.$W, M3 = this.$M, m3 = this.$D, v2 = "set" + (this.$u ? "UTC" : "");
141
- switch (f2) {
142
- case h:
143
- return r3 ? l2(1, 0) : l2(31, 11);
144
- case c2:
145
- return r3 ? l2(1, M3) : l2(0, M3 + 1);
146
- case o:
147
- var g2 = this.$locale().weekStart || 0, D2 = (y2 < g2 ? y2 + 7 : y2) - g2;
148
- return l2(r3 ? m3 - D2 : m3 + (6 - D2), M3);
149
- case a2:
150
- case d:
151
- return $2(v2 + "Hours", 0);
152
- case u:
153
- return $2(v2 + "Minutes", 1);
154
- case s2:
155
- return $2(v2 + "Seconds", 2);
156
- case i2:
157
- return $2(v2 + "Milliseconds", 3);
158
- default:
159
- return this.clone();
160
- }
161
- }, m2.endOf = function(t3) {
162
- return this.startOf(t3, false);
163
- }, m2.$set = function(t3, e3) {
164
- var n3, o2 = b.p(t3), f2 = "set" + (this.$u ? "UTC" : ""), l2 = (n3 = {}, n3[a2] = f2 + "Date", n3[d] = f2 + "Date", n3[c2] = f2 + "Month", n3[h] = f2 + "FullYear", n3[u] = f2 + "Hours", n3[s2] = f2 + "Minutes", n3[i2] = f2 + "Seconds", n3[r2] = f2 + "Milliseconds", n3)[o2], $2 = o2 === a2 ? this.$D + (e3 - this.$W) : e3;
165
- if (o2 === c2 || o2 === h) {
166
- var y2 = this.clone().set(d, 1);
167
- y2.$d[l2]($2), y2.init(), this.$d = y2.set(d, Math.min(this.$D, y2.daysInMonth())).$d;
168
- } else
169
- l2 && this.$d[l2]($2);
170
- return this.init(), this;
171
- }, m2.set = function(t3, e3) {
172
- return this.clone().$set(t3, e3);
173
- }, m2.get = function(t3) {
174
- return this[b.p(t3)]();
175
- }, m2.add = function(r3, f2) {
176
- var d2, l2 = this;
177
- r3 = Number(r3);
178
- var $2 = b.p(f2), y2 = function(t3) {
179
- var e3 = O(l2);
180
- return b.w(e3.date(e3.date() + Math.round(t3 * r3)), l2);
181
- };
182
- if ($2 === c2)
183
- return this.set(c2, this.$M + r3);
184
- if ($2 === h)
185
- return this.set(h, this.$y + r3);
186
- if ($2 === a2)
187
- return y2(1);
188
- if ($2 === o)
189
- return y2(7);
190
- var M3 = (d2 = {}, d2[s2] = e2, d2[u] = n2, d2[i2] = t2, d2)[$2] || 1, m3 = this.$d.getTime() + r3 * M3;
191
- return b.w(m3, this);
192
- }, m2.subtract = function(t3, e3) {
193
- return this.add(-1 * t3, e3);
194
- }, m2.format = function(t3) {
195
- var e3 = this, n3 = this.$locale();
196
- if (!this.isValid())
197
- return n3.invalidDate || l;
198
- var r3 = t3 || "YYYY-MM-DDTHH:mm:ssZ", i3 = b.z(this), s3 = this.$H, u2 = this.$m, a3 = this.$M, o2 = n3.weekdays, c3 = n3.months, f2 = n3.meridiem, h2 = function(t4, n4, i4, s4) {
199
- return t4 && (t4[n4] || t4(e3, r3)) || i4[n4].slice(0, s4);
200
- }, d2 = function(t4) {
201
- return b.s(s3 % 12 || 12, t4, "0");
202
- }, $2 = f2 || function(t4, e4, n4) {
203
- var r4 = t4 < 12 ? "AM" : "PM";
204
- return n4 ? r4.toLowerCase() : r4;
205
- };
206
- return r3.replace(y, function(t4, r4) {
207
- return r4 || function(t5) {
208
- switch (t5) {
209
- case "YY":
210
- return String(e3.$y).slice(-2);
211
- case "YYYY":
212
- return b.s(e3.$y, 4, "0");
213
- case "M":
214
- return a3 + 1;
215
- case "MM":
216
- return b.s(a3 + 1, 2, "0");
217
- case "MMM":
218
- return h2(n3.monthsShort, a3, c3, 3);
219
- case "MMMM":
220
- return h2(c3, a3);
221
- case "D":
222
- return e3.$D;
223
- case "DD":
224
- return b.s(e3.$D, 2, "0");
225
- case "d":
226
- return String(e3.$W);
227
- case "dd":
228
- return h2(n3.weekdaysMin, e3.$W, o2, 2);
229
- case "ddd":
230
- return h2(n3.weekdaysShort, e3.$W, o2, 3);
231
- case "dddd":
232
- return o2[e3.$W];
233
- case "H":
234
- return String(s3);
235
- case "HH":
236
- return b.s(s3, 2, "0");
237
- case "h":
238
- return d2(1);
239
- case "hh":
240
- return d2(2);
241
- case "a":
242
- return $2(s3, u2, true);
243
- case "A":
244
- return $2(s3, u2, false);
245
- case "m":
246
- return String(u2);
247
- case "mm":
248
- return b.s(u2, 2, "0");
249
- case "s":
250
- return String(e3.$s);
251
- case "ss":
252
- return b.s(e3.$s, 2, "0");
253
- case "SSS":
254
- return b.s(e3.$ms, 3, "0");
255
- case "Z":
256
- return i3;
257
- }
258
- return null;
259
- }(t4) || i3.replace(":", "");
260
- });
261
- }, m2.utcOffset = function() {
262
- return 15 * -Math.round(this.$d.getTimezoneOffset() / 15);
263
- }, m2.diff = function(r3, d2, l2) {
264
- var $2, y2 = this, M3 = b.p(d2), m3 = O(r3), v2 = (m3.utcOffset() - this.utcOffset()) * e2, g2 = this - m3, D2 = function() {
265
- return b.m(y2, m3);
266
- };
267
- switch (M3) {
268
- case h:
269
- $2 = D2() / 12;
270
- break;
271
- case c2:
272
- $2 = D2();
273
- break;
274
- case f:
275
- $2 = D2() / 3;
276
- break;
277
- case o:
278
- $2 = (g2 - v2) / 6048e5;
279
- break;
280
- case a2:
281
- $2 = (g2 - v2) / 864e5;
282
- break;
283
- case u:
284
- $2 = g2 / n2;
285
- break;
286
- case s2:
287
- $2 = g2 / e2;
288
- break;
289
- case i2:
290
- $2 = g2 / t2;
291
- break;
292
- default:
293
- $2 = g2;
294
- }
295
- return l2 ? $2 : b.a($2);
296
- }, m2.daysInMonth = function() {
297
- return this.endOf(c2).$D;
298
- }, m2.$locale = function() {
299
- return D[this.$L];
300
- }, m2.locale = function(t3, e3) {
301
- if (!t3)
302
- return this.$L;
303
- var n3 = this.clone(), r3 = w(t3, e3, true);
304
- return r3 && (n3.$L = r3), n3;
305
- }, m2.clone = function() {
306
- return b.w(this.$d, this);
307
- }, m2.toDate = function() {
308
- return new Date(this.valueOf());
309
- }, m2.toJSON = function() {
310
- return this.isValid() ? this.toISOString() : null;
311
- }, m2.toISOString = function() {
312
- return this.$d.toISOString();
313
- }, m2.toString = function() {
314
- return this.$d.toUTCString();
315
- }, M2;
316
- }(), k = _.prototype;
317
- return O.prototype = k, [["$ms", r2], ["$s", i2], ["$m", s2], ["$H", u], ["$W", a2], ["$M", c2], ["$y", h], ["$D", d]].forEach(function(t3) {
318
- k[t3[1]] = function(e3) {
319
- return this.$g(e3, t3[0], t3[1]);
100
+ if ("string" == typeof e3 && !/Z$/i.test(e3)) {
101
+ var r3 = e3.match($);
102
+ if (r3) {
103
+ var i3 = r3[2] - 1 || 0, s3 = (r3[7] || "0").substring(0, 3);
104
+ return n3 ? new Date(Date.UTC(r3[1], i3, r3[3] || 1, r3[4] || 0, r3[5] || 0, r3[6] || 0, s3)) : new Date(r3[1], i3, r3[3] || 1, r3[4] || 0, r3[5] || 0, r3[6] || 0, s3);
105
+ }
106
+ }
107
+ return new Date(e3);
108
+ }(t3), this.init();
109
+ }, m2.init = function() {
110
+ var t3 = this.$d;
111
+ this.$y = t3.getFullYear(), this.$M = t3.getMonth(), this.$D = t3.getDate(), this.$W = t3.getDay(), this.$H = t3.getHours(), this.$m = t3.getMinutes(), this.$s = t3.getSeconds(), this.$ms = t3.getMilliseconds();
112
+ }, m2.$utils = function() {
113
+ return b;
114
+ }, m2.isValid = function() {
115
+ return !(this.$d.toString() === l);
116
+ }, m2.isSame = function(t3, e3) {
117
+ var n3 = O(t3);
118
+ return this.startOf(e3) <= n3 && n3 <= this.endOf(e3);
119
+ }, m2.isAfter = function(t3, e3) {
120
+ return O(t3) < this.startOf(e3);
121
+ }, m2.isBefore = function(t3, e3) {
122
+ return this.endOf(e3) < O(t3);
123
+ }, m2.$g = function(t3, e3, n3) {
124
+ return b.u(t3) ? this[e3] : this.set(n3, t3);
125
+ }, m2.unix = function() {
126
+ return Math.floor(this.valueOf() / 1e3);
127
+ }, m2.valueOf = function() {
128
+ return this.$d.getTime();
129
+ }, m2.startOf = function(t3, e3) {
130
+ var n3 = this, r3 = !!b.u(e3) || e3, f2 = b.p(t3), l2 = function(t4, e4) {
131
+ var i3 = b.w(n3.$u ? Date.UTC(n3.$y, e4, t4) : new Date(n3.$y, e4, t4), n3);
132
+ return r3 ? i3 : i3.endOf(a2);
133
+ }, $2 = function(t4, e4) {
134
+ return b.w(n3.toDate()[t4].apply(n3.toDate("s"), (r3 ? [0, 0, 0, 0] : [23, 59, 59, 999]).slice(e4)), n3);
135
+ }, y2 = this.$W, M3 = this.$M, m3 = this.$D, v2 = "set" + (this.$u ? "UTC" : "");
136
+ switch (f2) {
137
+ case h:
138
+ return r3 ? l2(1, 0) : l2(31, 11);
139
+ case c2:
140
+ return r3 ? l2(1, M3) : l2(0, M3 + 1);
141
+ case o:
142
+ var g2 = this.$locale().weekStart || 0, D2 = (y2 < g2 ? y2 + 7 : y2) - g2;
143
+ return l2(r3 ? m3 - D2 : m3 + (6 - D2), M3);
144
+ case a2:
145
+ case d:
146
+ return $2(v2 + "Hours", 0);
147
+ case u:
148
+ return $2(v2 + "Minutes", 1);
149
+ case s2:
150
+ return $2(v2 + "Seconds", 2);
151
+ case i2:
152
+ return $2(v2 + "Milliseconds", 3);
153
+ default:
154
+ return this.clone();
155
+ }
156
+ }, m2.endOf = function(t3) {
157
+ return this.startOf(t3, false);
158
+ }, m2.$set = function(t3, e3) {
159
+ var n3, o2 = b.p(t3), f2 = "set" + (this.$u ? "UTC" : ""), l2 = (n3 = {}, n3[a2] = f2 + "Date", n3[d] = f2 + "Date", n3[c2] = f2 + "Month", n3[h] = f2 + "FullYear", n3[u] = f2 + "Hours", n3[s2] = f2 + "Minutes", n3[i2] = f2 + "Seconds", n3[r2] = f2 + "Milliseconds", n3)[o2], $2 = o2 === a2 ? this.$D + (e3 - this.$W) : e3;
160
+ if (o2 === c2 || o2 === h) {
161
+ var y2 = this.clone().set(d, 1);
162
+ y2.$d[l2]($2), y2.init(), this.$d = y2.set(d, Math.min(this.$D, y2.daysInMonth())).$d;
163
+ } else
164
+ l2 && this.$d[l2]($2);
165
+ return this.init(), this;
166
+ }, m2.set = function(t3, e3) {
167
+ return this.clone().$set(t3, e3);
168
+ }, m2.get = function(t3) {
169
+ return this[b.p(t3)]();
170
+ }, m2.add = function(r3, f2) {
171
+ var d2, l2 = this;
172
+ r3 = Number(r3);
173
+ var $2 = b.p(f2), y2 = function(t3) {
174
+ var e3 = O(l2);
175
+ return b.w(e3.date(e3.date() + Math.round(t3 * r3)), l2);
320
176
  };
321
- }), O.extend = function(t3, e3) {
322
- return t3.$i || (t3(e3, _, O), t3.$i = true), O;
323
- }, O.locale = w, O.isDayjs = S, O.unix = function(t3) {
324
- return O(1e3 * t3);
325
- }, O.en = D[g], O.Ls = D, O.p = {}, O;
326
- });
327
- })(dayjs_min);
328
- return dayjs_min.exports;
329
- }
330
- var dayjs_minExports = requireDayjs_min();
177
+ if ($2 === c2)
178
+ return this.set(c2, this.$M + r3);
179
+ if ($2 === h)
180
+ return this.set(h, this.$y + r3);
181
+ if ($2 === a2)
182
+ return y2(1);
183
+ if ($2 === o)
184
+ return y2(7);
185
+ var M3 = (d2 = {}, d2[s2] = e2, d2[u] = n2, d2[i2] = t2, d2)[$2] || 1, m3 = this.$d.getTime() + r3 * M3;
186
+ return b.w(m3, this);
187
+ }, m2.subtract = function(t3, e3) {
188
+ return this.add(-1 * t3, e3);
189
+ }, m2.format = function(t3) {
190
+ var e3 = this, n3 = this.$locale();
191
+ if (!this.isValid())
192
+ return n3.invalidDate || l;
193
+ var r3 = t3 || "YYYY-MM-DDTHH:mm:ssZ", i3 = b.z(this), s3 = this.$H, u2 = this.$m, a3 = this.$M, o2 = n3.weekdays, c3 = n3.months, f2 = n3.meridiem, h2 = function(t4, n4, i4, s4) {
194
+ return t4 && (t4[n4] || t4(e3, r3)) || i4[n4].slice(0, s4);
195
+ }, d2 = function(t4) {
196
+ return b.s(s3 % 12 || 12, t4, "0");
197
+ }, $2 = f2 || function(t4, e4, n4) {
198
+ var r4 = t4 < 12 ? "AM" : "PM";
199
+ return n4 ? r4.toLowerCase() : r4;
200
+ };
201
+ return r3.replace(y, function(t4, r4) {
202
+ return r4 || function(t5) {
203
+ switch (t5) {
204
+ case "YY":
205
+ return String(e3.$y).slice(-2);
206
+ case "YYYY":
207
+ return b.s(e3.$y, 4, "0");
208
+ case "M":
209
+ return a3 + 1;
210
+ case "MM":
211
+ return b.s(a3 + 1, 2, "0");
212
+ case "MMM":
213
+ return h2(n3.monthsShort, a3, c3, 3);
214
+ case "MMMM":
215
+ return h2(c3, a3);
216
+ case "D":
217
+ return e3.$D;
218
+ case "DD":
219
+ return b.s(e3.$D, 2, "0");
220
+ case "d":
221
+ return String(e3.$W);
222
+ case "dd":
223
+ return h2(n3.weekdaysMin, e3.$W, o2, 2);
224
+ case "ddd":
225
+ return h2(n3.weekdaysShort, e3.$W, o2, 3);
226
+ case "dddd":
227
+ return o2[e3.$W];
228
+ case "H":
229
+ return String(s3);
230
+ case "HH":
231
+ return b.s(s3, 2, "0");
232
+ case "h":
233
+ return d2(1);
234
+ case "hh":
235
+ return d2(2);
236
+ case "a":
237
+ return $2(s3, u2, true);
238
+ case "A":
239
+ return $2(s3, u2, false);
240
+ case "m":
241
+ return String(u2);
242
+ case "mm":
243
+ return b.s(u2, 2, "0");
244
+ case "s":
245
+ return String(e3.$s);
246
+ case "ss":
247
+ return b.s(e3.$s, 2, "0");
248
+ case "SSS":
249
+ return b.s(e3.$ms, 3, "0");
250
+ case "Z":
251
+ return i3;
252
+ }
253
+ return null;
254
+ }(t4) || i3.replace(":", "");
255
+ });
256
+ }, m2.utcOffset = function() {
257
+ return 15 * -Math.round(this.$d.getTimezoneOffset() / 15);
258
+ }, m2.diff = function(r3, d2, l2) {
259
+ var $2, y2 = this, M3 = b.p(d2), m3 = O(r3), v2 = (m3.utcOffset() - this.utcOffset()) * e2, g2 = this - m3, D2 = function() {
260
+ return b.m(y2, m3);
261
+ };
262
+ switch (M3) {
263
+ case h:
264
+ $2 = D2() / 12;
265
+ break;
266
+ case c2:
267
+ $2 = D2();
268
+ break;
269
+ case f:
270
+ $2 = D2() / 3;
271
+ break;
272
+ case o:
273
+ $2 = (g2 - v2) / 6048e5;
274
+ break;
275
+ case a2:
276
+ $2 = (g2 - v2) / 864e5;
277
+ break;
278
+ case u:
279
+ $2 = g2 / n2;
280
+ break;
281
+ case s2:
282
+ $2 = g2 / e2;
283
+ break;
284
+ case i2:
285
+ $2 = g2 / t2;
286
+ break;
287
+ default:
288
+ $2 = g2;
289
+ }
290
+ return l2 ? $2 : b.a($2);
291
+ }, m2.daysInMonth = function() {
292
+ return this.endOf(c2).$D;
293
+ }, m2.$locale = function() {
294
+ return D[this.$L];
295
+ }, m2.locale = function(t3, e3) {
296
+ if (!t3)
297
+ return this.$L;
298
+ var n3 = this.clone(), r3 = w(t3, e3, true);
299
+ return r3 && (n3.$L = r3), n3;
300
+ }, m2.clone = function() {
301
+ return b.w(this.$d, this);
302
+ }, m2.toDate = function() {
303
+ return new Date(this.valueOf());
304
+ }, m2.toJSON = function() {
305
+ return this.isValid() ? this.toISOString() : null;
306
+ }, m2.toISOString = function() {
307
+ return this.$d.toISOString();
308
+ }, m2.toString = function() {
309
+ return this.$d.toUTCString();
310
+ }, M2;
311
+ }(), k = _.prototype;
312
+ return O.prototype = k, [["$ms", r2], ["$s", i2], ["$m", s2], ["$H", u], ["$W", a2], ["$M", c2], ["$y", h], ["$D", d]].forEach(function(t3) {
313
+ k[t3[1]] = function(e3) {
314
+ return this.$g(e3, t3[0], t3[1]);
315
+ };
316
+ }), O.extend = function(t3, e3) {
317
+ return t3.$i || (t3(e3, _, O), t3.$i = true), O;
318
+ }, O.locale = w, O.isDayjs = S, O.unix = function(t3) {
319
+ return O(1e3 * t3);
320
+ }, O.en = D[g], O.Ls = D, O.p = {}, O;
321
+ });
322
+ })(dayjs_min);
323
+ var dayjs_minExports = dayjs_min.exports;
331
324
  const dayjs = /* @__PURE__ */ getDefaultExportFromCjs(dayjs_minExports);
332
325
  var zh = { exports: {} };
333
326
  (function(module2, exports3) {
334
327
  !function(e2, _) {
335
- module2.exports = _(requireDayjs_min());
328
+ module2.exports = _(dayjs_minExports);
336
329
  }(commonjsGlobal, function(e2) {
337
330
  function _(e3) {
338
331
  return e3 && "object" == typeof e3 && "default" in e3 ? e3 : { default: e3 };
@@ -1462,6 +1455,7 @@ var __publicField = (obj, key, value) => {
1462
1455
  const protocol = "协议";
1463
1456
  const key = "键";
1464
1457
  const value = "值";
1458
+ const value_optional = "值(选填)";
1465
1459
  const effect = "效果";
1466
1460
  const show_data_value = "显示数值";
1467
1461
  const hide_data_value = "隐藏数值";
@@ -1562,6 +1556,25 @@ var __publicField = (obj, key, value) => {
1562
1556
  const pvc_storage_required = "请填写分配量。";
1563
1557
  const pvc_storage_min = "请输入正整数。";
1564
1558
  const pvc_storage_reduce_limit = "输入值不得小于当前数值。";
1559
+ const key_empty_text = "请填写键。";
1560
+ const format_error = "格式错误。";
1561
+ const taint_effect_empty_text = "请选择效果。";
1562
+ const add_label = "添加标签";
1563
+ const add_annotation = "添加注解";
1564
+ const add_taint = "添加污点";
1565
+ const look_format_requirement = "查看格式要求";
1566
+ const yes = "是";
1567
+ const no = "否";
1568
+ const contains = "包含";
1569
+ const optional = "是否必填";
1570
+ const format_requirements = "格式要求";
1571
+ const suffix = "前缀";
1572
+ const suffix_format_rule_1 = "DNS 子域:由点 (.) 分隔的一系列 DNS 标签";
1573
+ const suffix_format_rule_2 = "不超过 253 个字符";
1574
+ const suffix_format_rule_3 = "后跟斜杠 (/),即第一个 (/) 前的内容是前缀。如有 (/) ,前缀不可为空";
1575
+ const name_format_rule_1 = "由字母、数字、连字符 (-)、下划线(_) 或点 (.) 组成";
1576
+ const name_format_rule_2 = "以字母或数字开头和结尾";
1577
+ const name_format_rule_3 = "不超过 63 个字符";
1565
1578
  const dovetail = {
1566
1579
  copy: copy$1,
1567
1580
  reset_arguments,
@@ -1668,6 +1681,7 @@ var __publicField = (obj, key, value) => {
1668
1681
  protocol,
1669
1682
  key,
1670
1683
  value,
1684
+ value_optional,
1671
1685
  effect,
1672
1686
  show_data_value,
1673
1687
  hide_data_value,
@@ -1769,7 +1783,26 @@ var __publicField = (obj, key, value) => {
1769
1783
  change_form_mode_alert,
1770
1784
  pvc_storage_required,
1771
1785
  pvc_storage_min,
1772
- pvc_storage_reduce_limit
1786
+ pvc_storage_reduce_limit,
1787
+ key_empty_text,
1788
+ format_error,
1789
+ taint_effect_empty_text,
1790
+ add_label,
1791
+ add_annotation,
1792
+ add_taint,
1793
+ look_format_requirement,
1794
+ yes,
1795
+ no,
1796
+ contains,
1797
+ optional,
1798
+ format_requirements,
1799
+ suffix,
1800
+ suffix_format_rule_1,
1801
+ suffix_format_rule_2,
1802
+ suffix_format_rule_3,
1803
+ name_format_rule_1,
1804
+ name_format_rule_2,
1805
+ name_format_rule_3
1773
1806
  };
1774
1807
  const ZH = {
1775
1808
  dovetail
@@ -8811,7 +8844,7 @@ var __publicField = (obj, key, value) => {
8811
8844
  return o(prop);
8812
8845
  }
8813
8846
  }) : styled;
8814
- const index_1q7r2i0 = "";
8847
+ const index_avw33l = "";
8815
8848
  const ErrorWrapper = /* @__PURE__ */ styled_default("div")({
8816
8849
  name: "ErrorWrapper",
8817
8850
  class: "egn3dbn",
@@ -8857,6 +8890,7 @@ var __publicField = (obj, key, value) => {
8857
8890
  className: cx_default(props.className, type2),
8858
8891
  style: props.style,
8859
8892
  children: /* @__PURE__ */ jsxRuntimeExports.jsxs(ErrorContent, {
8893
+ className: "error-content",
8860
8894
  children: [/* @__PURE__ */ jsxRuntimeExports.jsx("p", {
8861
8895
  className: cx_default(fontMap[type2], "title"),
8862
8896
  children: errorText || t2("dovetail.obtain_data_error")
@@ -9036,7 +9070,6 @@ var __publicField = (obj, key, value) => {
9036
9070
  WidgetErrorContent,
9037
9071
  {
9038
9072
  errorText: t2("dovetail.no_resource", { kind: ` ${t2("dovetail.pod_selector")}` }),
9039
- style: { padding: "15px 0" },
9040
9073
  type: ErrorContentType.Card
9041
9074
  }
9042
9075
  );
@@ -9124,7 +9157,6 @@ var __publicField = (obj, key, value) => {
9124
9157
  WidgetErrorContent,
9125
9158
  {
9126
9159
  errorText: t2("dovetail.no_resource", { kind: t2("dovetail.port") }),
9127
- style: { padding: "15px 0" },
9128
9160
  type: ErrorContentType.Card
9129
9161
  }
9130
9162
  );
@@ -9370,7 +9402,7 @@ var __publicField = (obj, key, value) => {
9370
9402
  function formatSi(inValue, options) {
9371
9403
  const {
9372
9404
  increment = 1e3,
9373
- suffix = null,
9405
+ suffix: suffix2 = null,
9374
9406
  firstSuffix = null,
9375
9407
  startingExponent = 0,
9376
9408
  minExponent = 0,
@@ -9398,7 +9430,7 @@ var __publicField = (obj, key, value) => {
9398
9430
  if (exp === 0 && firstSuffix !== null) {
9399
9431
  outStr += `${firstSuffix}`;
9400
9432
  } else {
9401
- outStr += `${UNITS[exp]}${suffix}` || "";
9433
+ outStr += `${UNITS[exp]}${suffix2}` || "";
9402
9434
  }
9403
9435
  return outStr;
9404
9436
  }
@@ -9446,10 +9478,8 @@ var __publicField = (obj, key, value) => {
9446
9478
  const validators = React.useMemo(() => {
9447
9479
  return {
9448
9480
  distributeStorage(value2) {
9449
- if (lodashEs.isNil(value2)) {
9481
+ if (!value2) {
9450
9482
  return t2("dovetail.pvc_storage_required");
9451
- } else if (value2 < 1) {
9452
- return t2("dovetail.pvc_storage_min");
9453
9483
  } else if (value2 < defaultValue) {
9454
9484
  return t2("dovetail.pvc_storage_reduce_limit");
9455
9485
  }
@@ -10228,7 +10258,7 @@ var __publicField = (obj, key, value) => {
10228
10258
  "storage": "40Gi"
10229
10259
  }
10230
10260
  },
10231
- "storageClassName": "example"
10261
+ "storageClassName": ""
10232
10262
  }
10233
10263
  };
10234
10264
  var ResourceState = /* @__PURE__ */ ((ResourceState2) => {
@@ -11055,7 +11085,6 @@ var __publicField = (obj, key, value) => {
11055
11085
  WidgetErrorContent,
11056
11086
  {
11057
11087
  errorText: t2("dovetail.no_resource", { kind: t2("dovetail.condition") }),
11058
- style: { padding: "15px 0" },
11059
11088
  type: ErrorContentType.Card
11060
11089
  }
11061
11090
  );
@@ -11178,232 +11207,6 @@ var __publicField = (obj, key, value) => {
11178
11207
  }
11179
11208
  };
11180
11209
  }
11181
- const EditLabelForm = React.forwardRef(
11182
- function EditLabelForm2(props, ref) {
11183
- var _a;
11184
- const { resourceModel } = props;
11185
- const { mutateAsync } = core.useUpdate();
11186
- const { t: t2 } = useTranslation();
11187
- const [value2, setValue] = React.useState([]);
11188
- const defaultValue = React.useMemo(() => {
11189
- var _a2;
11190
- return Object.keys(((_a2 = resourceModel.metadata) == null ? void 0 : _a2.labels) || {}).map((key2) => {
11191
- var _a3, _b;
11192
- return { key: key2, value: (_b = (_a3 = resourceModel.metadata) == null ? void 0 : _a3.labels) == null ? void 0 : _b[key2] };
11193
- });
11194
- }, [(_a = resourceModel.metadata) == null ? void 0 : _a.labels]);
11195
- const submit = React.useCallback(() => {
11196
- const newLabels = {};
11197
- value2.forEach(({ key: key2, value: value22 }) => {
11198
- newLabels[key2] = value22;
11199
- });
11200
- const newYaml = resourceModel.updateLabel(newLabels);
11201
- pruneBeforeEdit(newYaml);
11202
- return mutateAsync({
11203
- id: resourceModel.id,
11204
- resource: resourceModel.name || "",
11205
- values: newYaml,
11206
- meta: {
11207
- resourceBasePath: resourceModel.apiVersion,
11208
- kind: resourceModel.kind
11209
- },
11210
- successNotification() {
11211
- return {
11212
- message: t2("dovetail.edit_label_success_toast", {
11213
- kind: resourceModel.kind,
11214
- name: resourceModel.metadata.name,
11215
- interpolation: {
11216
- escapeValue: false
11217
- }
11218
- }),
11219
- type: "success"
11220
- };
11221
- },
11222
- errorNotification: false
11223
- });
11224
- }, [value2, resourceModel, mutateAsync, t2]);
11225
- React.useImperativeHandle(
11226
- ref,
11227
- () => ({
11228
- submit
11229
- }),
11230
- [submit]
11231
- );
11232
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
11233
- eagle.TableForm,
11234
- {
11235
- onBodyChange: (value22) => {
11236
- setValue(value22);
11237
- },
11238
- columns: [
11239
- {
11240
- key: "key",
11241
- title: t2("dovetail.key"),
11242
- type: "input"
11243
- },
11244
- {
11245
- key: "value",
11246
- title: t2("dovetail.value"),
11247
- type: "input"
11248
- }
11249
- ],
11250
- disableBatchFilling: true,
11251
- rowAddConfig: {
11252
- addible: true
11253
- },
11254
- defaultData: defaultValue,
11255
- row: {
11256
- deletable: true
11257
- }
11258
- }
11259
- );
11260
- }
11261
- );
11262
- function EditLabelDropdownMenuItem(props) {
11263
- const { formRef, resourceModel } = props;
11264
- const { t: t2 } = useTranslation();
11265
- const pushModal = eagle.usePushModal();
11266
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
11267
- eagle.Menu.Item,
11268
- {
11269
- className: "ant-dropdown-menu-item",
11270
- onClick: () => {
11271
- const modalProps = {
11272
- formRef,
11273
- title: t2("dovetail.edit_label"),
11274
- fullscreen: true,
11275
- renderContent() {
11276
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
11277
- EditLabelForm,
11278
- {
11279
- ref: formRef,
11280
- resourceModel
11281
- }
11282
- );
11283
- }
11284
- };
11285
- pushModal({
11286
- component: EditFieldModal,
11287
- props: modalProps
11288
- });
11289
- },
11290
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(eagle.Icon, { src: iconsReact.EditPen16BlueIcon, children: t2("dovetail.edit_label") })
11291
- }
11292
- );
11293
- }
11294
- const EditAnnotationForm = React.forwardRef(
11295
- function EditAnnotationForm2(props, ref) {
11296
- var _a;
11297
- const { resourceModel } = props;
11298
- const { mutateAsync } = core.useUpdate();
11299
- const { t: t2 } = useTranslation();
11300
- const [value2, setValue] = React.useState([]);
11301
- const defaultValue = React.useMemo(() => {
11302
- var _a2;
11303
- return Object.keys(((_a2 = resourceModel.metadata) == null ? void 0 : _a2.annotations) || {}).map((key2) => {
11304
- var _a3, _b;
11305
- return { key: key2, value: (_b = (_a3 = resourceModel.metadata) == null ? void 0 : _a3.annotations) == null ? void 0 : _b[key2] };
11306
- });
11307
- }, [(_a = resourceModel.metadata) == null ? void 0 : _a.annotations]);
11308
- const submit = React.useCallback(() => {
11309
- const newAnnotations = {};
11310
- value2.forEach(({ key: key2, value: value22 }) => {
11311
- newAnnotations[key2] = value22;
11312
- });
11313
- const newYaml = resourceModel.updateAnnotation(newAnnotations);
11314
- pruneBeforeEdit(newYaml);
11315
- return mutateAsync({
11316
- id: resourceModel.id,
11317
- resource: resourceModel.name || "",
11318
- values: newYaml,
11319
- meta: {
11320
- resourceBasePath: resourceModel.apiVersion,
11321
- kind: resourceModel.kind
11322
- },
11323
- successNotification() {
11324
- return {
11325
- message: t2("dovetail.edit_annotation_success_toast", {
11326
- kind: resourceModel.kind,
11327
- name: resourceModel.metadata.name,
11328
- interpolation: {
11329
- escapeValue: false
11330
- }
11331
- }),
11332
- type: "success"
11333
- };
11334
- },
11335
- errorNotification: false
11336
- });
11337
- }, [value2, resourceModel, mutateAsync, t2]);
11338
- React.useImperativeHandle(
11339
- ref,
11340
- () => ({
11341
- submit
11342
- }),
11343
- [submit]
11344
- );
11345
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
11346
- eagle.TableForm,
11347
- {
11348
- onBodyChange: (value22) => {
11349
- setValue(value22);
11350
- },
11351
- columns: [
11352
- {
11353
- key: "key",
11354
- title: t2("dovetail.key"),
11355
- type: "input"
11356
- },
11357
- {
11358
- key: "value",
11359
- title: t2("dovetail.value"),
11360
- type: "input"
11361
- }
11362
- ],
11363
- disableBatchFilling: true,
11364
- rowAddConfig: {
11365
- addible: true
11366
- },
11367
- defaultData: defaultValue,
11368
- row: {
11369
- deletable: true
11370
- }
11371
- }
11372
- );
11373
- }
11374
- );
11375
- function EditAnnotationDropdownMenuItem(props) {
11376
- const { formRef, resourceModel } = props;
11377
- const { t: t2 } = useTranslation();
11378
- const pushModal = eagle.usePushModal();
11379
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
11380
- eagle.Menu.Item,
11381
- {
11382
- className: "ant-dropdown-menu-item",
11383
- onClick: () => {
11384
- const modalProps = {
11385
- formRef,
11386
- title: t2("dovetail.edit_annotation"),
11387
- fullscreen: true,
11388
- renderContent() {
11389
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
11390
- EditAnnotationForm,
11391
- {
11392
- ref: formRef,
11393
- resourceModel
11394
- }
11395
- );
11396
- }
11397
- };
11398
- pushModal({
11399
- component: EditFieldModal,
11400
- props: modalProps
11401
- });
11402
- },
11403
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(eagle.Icon, { src: iconsReact.EditPen16BlueIcon, children: t2("dovetail.edit_annotation") })
11404
- }
11405
- );
11406
- }
11407
11210
  function K8sDropdown(props) {
11408
11211
  var _a;
11409
11212
  const { record, size = "normal" } = props;
@@ -11427,9 +11230,6 @@ var __publicField = (obj, key, value) => {
11427
11230
  });
11428
11231
  const configs = React.useContext(ConfigsContext);
11429
11232
  const config = configs[(resource == null ? void 0 : resource.name) || ""];
11430
- const formRef = React.useRef(null);
11431
- const editLabelMenuItem = (canEditData == null ? void 0 : canEditData.can) !== false ? /* @__PURE__ */ jsxRuntimeExports.jsx(EditLabelDropdownMenuItem, { formRef, resourceModel: record }) : null;
11432
- const editAnnotationMenuItem = (canEditData == null ? void 0 : canEditData.can) !== false ? /* @__PURE__ */ jsxRuntimeExports.jsx(EditAnnotationDropdownMenuItem, { formRef, resourceModel: record }) : null;
11433
11233
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
11434
11234
  /* @__PURE__ */ jsxRuntimeExports.jsx(
11435
11235
  eagle.Dropdown,
@@ -11451,8 +11251,6 @@ var __publicField = (obj, key, value) => {
11451
11251
  children: /* @__PURE__ */ jsxRuntimeExports.jsx(eagle.Icon, { src: iconsReact.Download16GradientBlueIcon, children: t2("dovetail.download_yaml") })
11452
11252
  }
11453
11253
  ),
11454
- editLabelMenuItem,
11455
- editAnnotationMenuItem,
11456
11254
  props.children,
11457
11255
  (canDeleteData == null ? void 0 : canDeleteData.can) !== false ? /* @__PURE__ */ jsxRuntimeExports.jsx(eagle.Divider, { style: { margin: 0 } }) : null,
11458
11256
  (canDeleteData == null ? void 0 : canDeleteData.can) !== false ? /* @__PURE__ */ jsxRuntimeExports.jsx(
@@ -11983,7 +11781,6 @@ var __publicField = (obj, key, value) => {
11983
11781
  WidgetErrorContent,
11984
11782
  {
11985
11783
  errorText: t2("dovetail.no_resource", { kind: t2("dovetail.rule") }),
11986
- style: { padding: "15px 0" },
11987
11784
  type: ErrorContentType.Card
11988
11785
  }
11989
11786
  );
@@ -12120,7 +11917,7 @@ var __publicField = (obj, key, value) => {
12120
11917
  }
12121
11918
  );
12122
11919
  };
12123
- const ShowContent_11g4jr2 = "";
11920
+ const ShowContent_ua3los = "";
12124
11921
  const ShowContentWrapperStyle = "s9agep2";
12125
11922
  const BackButton = "bo89gfi";
12126
11923
  const ToolBarWrapper = "t1ohe42f";
@@ -12422,7 +12219,6 @@ var __publicField = (obj, key, value) => {
12422
12219
  WidgetErrorContent,
12423
12220
  {
12424
12221
  errorText: t2("dovetail.no_resource", { kind: t2("dovetail.taint") }),
12425
- style: { padding: "15px 0" },
12426
12222
  type: ErrorContentType.Card
12427
12223
  }
12428
12224
  );
@@ -12563,9 +12359,6 @@ var __publicField = (obj, key, value) => {
12563
12359
  errorText: i18n2.t("dovetail.no_resource", {
12564
12360
  kind: ` ${i18n2.t("dovetail.pod")}`
12565
12361
  }),
12566
- style: {
12567
- padding: "15px 0"
12568
- },
12569
12362
  type: ErrorContentType.Card
12570
12363
  });
12571
12364
  }
@@ -13064,7 +12857,17 @@ var __publicField = (obj, key, value) => {
13064
12857
  return {
13065
12858
  key: "pv",
13066
12859
  path: ["pv"],
13067
- title: i18n2.t("dovetail.pv")
12860
+ title: i18n2.t("dovetail.pv"),
12861
+ renderContent(value2) {
12862
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
12863
+ ResourceLink,
12864
+ {
12865
+ resourceKind: "persistentvolumes",
12866
+ namespace: "",
12867
+ name: value2
12868
+ }
12869
+ );
12870
+ }
13068
12871
  };
13069
12872
  };
13070
12873
  const PVStorageClassField = (i18n2) => {
@@ -19217,9 +19020,6 @@ var __publicField = (obj, key, value) => {
19217
19020
  errorText: t2("dovetail.no_resource", {
19218
19021
  kind: kind || t2("dovetail.rule")
19219
19022
  }),
19220
- style: {
19221
- padding: "15px 0"
19222
- },
19223
19023
  type: ErrorContentType.Card
19224
19024
  });
19225
19025
  }
@@ -19327,7 +19127,6 @@ var __publicField = (obj, key, value) => {
19327
19127
  WidgetErrorContent,
19328
19128
  {
19329
19129
  errorText: i18n2.t("dovetail.no_resource", { kind: i18n2.t("dovetail.container") }),
19330
- style: { padding: "15px 0" },
19331
19130
  type: ErrorContentType.Card
19332
19131
  }
19333
19132
  );
@@ -35725,7 +35524,6 @@ WARNING: This link could potentially be dangerous`)) {
35725
35524
  tableProps,
35726
35525
  contentClassName
35727
35526
  } = props;
35728
- useTranslation();
35729
35527
  const {
35730
35528
  resource
35731
35529
  } = core.useResource();
@@ -39264,6 +39062,394 @@ WARNING: This link could potentially be dangerous`)) {
39264
39062
  }
39265
39063
  ) : null });
39266
39064
  }
39065
+ function validateLabelKey(key2) {
39066
+ const labelPrefixRegex = /(^[a-zA-Z0-9]$)|(^[a-zA-Z0-9][a-zA-Z0-9\.]*[a-zA-Z0-9]$)/;
39067
+ const labelNameRegex = /(^[a-zA-Z0-9]$)|(^[a-zA-Z0-9][a-zA-Z0-9\.\-]*[a-zA-Z0-9]$)/;
39068
+ let prefix, name2;
39069
+ const splitResult = key2.split("/");
39070
+ if (splitResult.length === 1) {
39071
+ name2 = splitResult[0];
39072
+ } else {
39073
+ prefix = splitResult[0];
39074
+ name2 = splitResult[1];
39075
+ }
39076
+ if (prefix === "") {
39077
+ return { isValid: false, errorMessage: "EMPTY_PREFIX" };
39078
+ }
39079
+ if (prefix && !labelPrefixRegex.test(prefix)) {
39080
+ return { isValid: false, errorMessage: "INVALID_PREFIX" };
39081
+ }
39082
+ if (!labelNameRegex.test(name2)) {
39083
+ return { isValid: false, errorMessage: "INVALID_NAME" };
39084
+ }
39085
+ if (prefix && prefix.length > 253) {
39086
+ return { isValid: false, errorMessage: "MAX_253" };
39087
+ }
39088
+ if (name2 && name2.length > 63) {
39089
+ return { isValid: false, errorMessage: "MAX_63" };
39090
+ }
39091
+ return { isValid: true };
39092
+ }
39093
+ function validateLabelValue(value2) {
39094
+ const labelValueRegex = /(^[a-zA-Z0-9]$)|(^[a-zA-Z0-9][a-zA-Z0-9\.\-]*[a-zA-Z0-9]$)/;
39095
+ if (value2 === "") {
39096
+ return { isValid: true };
39097
+ }
39098
+ if (value2.length > 63) {
39099
+ return { isValid: false, errorMessage: "MAX_63" };
39100
+ }
39101
+ if (!labelValueRegex.test(value2)) {
39102
+ return { isValid: false, errorMessage: "INVALID_VALUE" };
39103
+ }
39104
+ return { isValid: true };
39105
+ }
39106
+ const LabelFormatPopover_105yfzn = "";
39107
+ const PodLabelFormatRulePopoverStyle = "p5jt6nm";
39108
+ const LabelFormatPopover = () => {
39109
+ const {
39110
+ t: t2
39111
+ } = useTranslation();
39112
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(eagle.Popover, {
39113
+ overlayClassName: PodLabelFormatRulePopoverStyle,
39114
+ placement: "bottomRight",
39115
+ content: /* @__PURE__ */ jsxRuntimeExports.jsx(eagle.AntdTable, {
39116
+ bordered: true,
39117
+ dataSource: [{
39118
+ object: t2("dovetail.key"),
39119
+ contains: t2("dovetail.suffix"),
39120
+ optional: t2("dovetail.no"),
39121
+ rule: [t2("dovetail.suffix_format_rule_1"), t2("dovetail.suffix_format_rule_2"), t2("dovetail.suffix_format_rule_3")]
39122
+ }, {
39123
+ object: t2("dovetail.key"),
39124
+ contains: t2("dovetail.name"),
39125
+ optional: t2("dovetail.yes"),
39126
+ rule: [t2("dovetail.name_format_rule_1"), t2("dovetail.name_format_rule_2"), t2("dovetail.name_format_rule_3")]
39127
+ }, {
39128
+ object: t2("dovetail.value"),
39129
+ contains: t2("dovetail.name"),
39130
+ optional: t2("dovetail.no"),
39131
+ rule: [t2("dovetail.name_format_rule_1"), t2("dovetail.name_format_rule_2"), t2("dovetail.name_format_rule_3")]
39132
+ }],
39133
+ columns: [{
39134
+ key: "object",
39135
+ title: t2("dovetail.object"),
39136
+ dataIndex: "object",
39137
+ render: (cell, record, index2) => {
39138
+ return {
39139
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", {
39140
+ className: eagle.Typo.Label.l4_bold,
39141
+ children: cell
39142
+ }),
39143
+ props: {
39144
+ rowSpan: index2 === 0 ? 2 : index2 === 1 ? 0 : 1
39145
+ }
39146
+ };
39147
+ }
39148
+ }, {
39149
+ key: "contains",
39150
+ title: t2("dovetail.contains"),
39151
+ dataIndex: "contains"
39152
+ }, {
39153
+ key: "optional",
39154
+ title: t2("dovetail.optional"),
39155
+ dataIndex: "optional"
39156
+ }, {
39157
+ key: "rule",
39158
+ title: t2("dovetail.format_requirements"),
39159
+ dataIndex: "rule",
39160
+ render: (cell) => {
39161
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("ul", {
39162
+ className: "rule-list",
39163
+ children: cell.map((rule2, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx("li", {
39164
+ children: rule2
39165
+ }, index2))
39166
+ });
39167
+ }
39168
+ }],
39169
+ pagination: false
39170
+ }),
39171
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(eagle.Button, {
39172
+ size: "small",
39173
+ type: "link",
39174
+ children: t2("dovetail.look_format_requirement")
39175
+ })
39176
+ });
39177
+ };
39178
+ const KeyValueTableForm_1eydq7y = "";
39179
+ function _KeyValueTableFormForm(props, ref) {
39180
+ const {
39181
+ defaultValue,
39182
+ onSubmit,
39183
+ extraColumns,
39184
+ addButtonText
39185
+ } = props;
39186
+ const {
39187
+ t: t2
39188
+ } = useTranslation();
39189
+ const [value2, setValue] = React.useState([]);
39190
+ const tableFormRef = React.useRef(null);
39191
+ React.useImperativeHandle(ref, () => ({
39192
+ submit: () => {
39193
+ return new Promise((res, rej) => {
39194
+ var _a;
39195
+ (_a = tableFormRef.current) == null ? void 0 : _a.validateWholeFields();
39196
+ setTimeout(() => {
39197
+ var _a2;
39198
+ const isValid = (_a2 = tableFormRef.current) == null ? void 0 : _a2.isValid();
39199
+ if (isValid) {
39200
+ res(onSubmit(value2));
39201
+ } else {
39202
+ rej();
39203
+ }
39204
+ }, 0);
39205
+ });
39206
+ }
39207
+ }), [onSubmit, value2]);
39208
+ const renderTextAreaFunc = ({
39209
+ value: value22,
39210
+ onChange
39211
+ }) => {
39212
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(eagle.TextArea, {
39213
+ autoSize: true,
39214
+ className: "clsjtk2",
39215
+ size: "small",
39216
+ value: value22,
39217
+ onChange: (e2) => {
39218
+ onChange(e2.target.value);
39219
+ }
39220
+ });
39221
+ };
39222
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(eagle.Space, {
39223
+ size: 8,
39224
+ direction: "vertical",
39225
+ className: "cq3mbby",
39226
+ children: [/* @__PURE__ */ jsxRuntimeExports.jsx(eagle.TableForm, {
39227
+ ref: tableFormRef,
39228
+ onBodyChange: (value22) => {
39229
+ setValue(value22);
39230
+ },
39231
+ columns: [{
39232
+ key: "key",
39233
+ title: t2("dovetail.key"),
39234
+ type: "input",
39235
+ validator: ({
39236
+ value: value22
39237
+ }) => {
39238
+ if (!value22)
39239
+ return t2("dovetail.key_empty_text");
39240
+ const {
39241
+ isValid,
39242
+ errorMessage
39243
+ } = validateLabelKey(value22 || "");
39244
+ if (!isValid)
39245
+ return t2("dovetail.format_error");
39246
+ },
39247
+ render: renderTextAreaFunc
39248
+ }, {
39249
+ key: "value",
39250
+ title: t2("dovetail.value_optional"),
39251
+ type: "input",
39252
+ validator: ({
39253
+ value: value22
39254
+ }) => {
39255
+ const {
39256
+ isValid
39257
+ } = validateLabelValue(value22 || "");
39258
+ if (!isValid)
39259
+ return t2("dovetail.format_error");
39260
+ },
39261
+ render: renderTextAreaFunc
39262
+ }, ...extraColumns || []],
39263
+ disableBatchFilling: true,
39264
+ hideEmptyTable: true,
39265
+ rowAddConfig: {
39266
+ addible: true,
39267
+ text: () => addButtonText
39268
+ },
39269
+ defaultData: defaultValue,
39270
+ row: {
39271
+ deletable: true
39272
+ }
39273
+ }), /* @__PURE__ */ jsxRuntimeExports.jsx(LabelFormatPopover, {})]
39274
+ });
39275
+ }
39276
+ const KeyValueTableFormForm = React.forwardRef(_KeyValueTableFormForm);
39277
+ const EditLabelForm = React.forwardRef(
39278
+ function EditLabelForm2(props, ref) {
39279
+ var _a;
39280
+ const { resourceModel } = props;
39281
+ const { mutateAsync } = core.useUpdate();
39282
+ const { t: t2 } = useTranslation();
39283
+ const defaultValue = React.useMemo(() => {
39284
+ var _a2;
39285
+ return Object.keys(((_a2 = resourceModel.metadata) == null ? void 0 : _a2.labels) || {}).map((key2) => {
39286
+ var _a3, _b;
39287
+ return { key: key2, value: ((_b = (_a3 = resourceModel.metadata) == null ? void 0 : _a3.labels) == null ? void 0 : _b[key2]) || "" };
39288
+ });
39289
+ }, [(_a = resourceModel.metadata) == null ? void 0 : _a.labels]);
39290
+ const onSubmit = React.useCallback(
39291
+ (value2) => {
39292
+ const newLabels = {};
39293
+ value2.forEach(({ key: key2, value: value22 }) => {
39294
+ newLabels[key2] = value22 || "";
39295
+ });
39296
+ const newYaml = resourceModel.updateLabel(newLabels);
39297
+ pruneBeforeEdit(newYaml);
39298
+ return mutateAsync({
39299
+ id: resourceModel.id,
39300
+ resource: resourceModel.name || "",
39301
+ values: newYaml,
39302
+ meta: {
39303
+ resourceBasePath: resourceModel.apiVersion,
39304
+ kind: resourceModel.kind
39305
+ },
39306
+ successNotification() {
39307
+ return {
39308
+ message: t2("dovetail.edit_label_success_toast", {
39309
+ kind: resourceModel.kind,
39310
+ name: resourceModel.metadata.name,
39311
+ interpolation: {
39312
+ escapeValue: false
39313
+ }
39314
+ }),
39315
+ type: "success"
39316
+ };
39317
+ },
39318
+ errorNotification: false
39319
+ });
39320
+ },
39321
+ [resourceModel, mutateAsync, t2]
39322
+ );
39323
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
39324
+ KeyValueTableFormForm,
39325
+ {
39326
+ ref,
39327
+ defaultValue,
39328
+ onSubmit,
39329
+ addButtonText: t2("dovetail.add_label")
39330
+ }
39331
+ );
39332
+ }
39333
+ );
39334
+ function EditLabelDropdownMenuItem(props) {
39335
+ const { formRef, resourceModel } = props;
39336
+ const { t: t2 } = useTranslation();
39337
+ const pushModal = eagle.usePushModal();
39338
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
39339
+ eagle.Menu.Item,
39340
+ {
39341
+ className: "ant-dropdown-menu-item",
39342
+ onClick: () => {
39343
+ const modalProps = {
39344
+ formRef,
39345
+ title: t2("dovetail.edit_label"),
39346
+ fullscreen: true,
39347
+ renderContent() {
39348
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
39349
+ EditLabelForm,
39350
+ {
39351
+ ref: formRef,
39352
+ resourceModel
39353
+ }
39354
+ );
39355
+ }
39356
+ };
39357
+ pushModal({
39358
+ component: EditFieldModal,
39359
+ props: modalProps
39360
+ });
39361
+ },
39362
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(eagle.Icon, { src: iconsReact.EditPen16BlueIcon, children: t2("dovetail.edit_label") })
39363
+ }
39364
+ );
39365
+ }
39366
+ const EditAnnotationForm = React.forwardRef(function EditAnnotationForm2(props, ref) {
39367
+ var _a;
39368
+ const { resourceModel } = props;
39369
+ const { mutateAsync } = core.useUpdate();
39370
+ const { t: t2 } = useTranslation();
39371
+ const defaultValue = React.useMemo(() => {
39372
+ var _a2;
39373
+ return Object.keys(((_a2 = resourceModel.metadata) == null ? void 0 : _a2.annotations) || {}).map((key2) => {
39374
+ var _a3, _b;
39375
+ return { key: key2, value: ((_b = (_a3 = resourceModel.metadata) == null ? void 0 : _a3.annotations) == null ? void 0 : _b[key2]) || "" };
39376
+ });
39377
+ }, [(_a = resourceModel.metadata) == null ? void 0 : _a.annotations]);
39378
+ const onSubmit = React.useCallback(
39379
+ (value2) => {
39380
+ const newAnnotations = {};
39381
+ value2.forEach(({ key: key2, value: value22 }) => {
39382
+ newAnnotations[key2] = value22 || "";
39383
+ });
39384
+ const newYaml = resourceModel.updateAnnotation(newAnnotations);
39385
+ pruneBeforeEdit(newYaml);
39386
+ return mutateAsync({
39387
+ id: resourceModel.id,
39388
+ resource: resourceModel.name || "",
39389
+ values: newYaml,
39390
+ meta: {
39391
+ resourceBasePath: resourceModel.apiVersion,
39392
+ kind: resourceModel.kind
39393
+ },
39394
+ successNotification() {
39395
+ return {
39396
+ message: t2("dovetail.edit_annotation_success_toast", {
39397
+ kind: resourceModel.kind,
39398
+ name: resourceModel.metadata.name,
39399
+ interpolation: {
39400
+ escapeValue: false
39401
+ }
39402
+ }),
39403
+ type: "success"
39404
+ };
39405
+ },
39406
+ errorNotification: false
39407
+ });
39408
+ },
39409
+ [resourceModel, mutateAsync, t2]
39410
+ );
39411
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
39412
+ KeyValueTableFormForm,
39413
+ {
39414
+ ref,
39415
+ defaultValue,
39416
+ onSubmit,
39417
+ addButtonText: t2("dovetail.add_annotation")
39418
+ }
39419
+ );
39420
+ });
39421
+ function EditAnnotationDropdownMenuItem(props) {
39422
+ const { formRef, resourceModel } = props;
39423
+ const { t: t2 } = useTranslation();
39424
+ const pushModal = eagle.usePushModal();
39425
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
39426
+ eagle.Menu.Item,
39427
+ {
39428
+ className: "ant-dropdown-menu-item",
39429
+ onClick: () => {
39430
+ const modalProps = {
39431
+ formRef,
39432
+ title: t2("dovetail.edit_annotation"),
39433
+ fullscreen: true,
39434
+ renderContent() {
39435
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
39436
+ EditAnnotationForm,
39437
+ {
39438
+ ref: formRef,
39439
+ resourceModel
39440
+ }
39441
+ );
39442
+ }
39443
+ };
39444
+ pushModal({
39445
+ component: EditFieldModal,
39446
+ props: modalProps
39447
+ });
39448
+ },
39449
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(eagle.Icon, { src: iconsReact.EditPen16BlueIcon, children: t2("dovetail.edit_annotation") })
39450
+ }
39451
+ );
39452
+ }
39267
39453
  const index_sazpyf = "";
39268
39454
  const WrapperStyle = "wfg6u6g";
39269
39455
  const InnerBar = ({
@@ -40748,8 +40934,10 @@ WARNING: This link could potentially be dangerous`)) {
40748
40934
  exports2.dovetailRefineI18n = dovetailRefineI18n;
40749
40935
  exports2.generateSchemaTypeValue = generateSchemaTypeValue;
40750
40936
  exports2.generateValueFromSchema = generateValueFromSchema;
40937
+ exports2.getApiVersion = getApiVersion;
40751
40938
  exports2.modelPlugin = modelPlugin;
40752
40939
  exports2.namespaceRules = namespaceRules;
40940
+ exports2.pruneBeforeEdit = pruneBeforeEdit;
40753
40941
  exports2.relationPlugin = relationPlugin;
40754
40942
  exports2.resolveRef = resolveRef;
40755
40943
  exports2.rfc1035LabelRules = rfc1035LabelRules;