@podman-desktop/tests-playwright 1.25.0-next.202512121024-9b149ef → 1.25.0-next.202512121222-dd9b4f2

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 (178) hide show
  1. package/dist/index.d.ts +2 -96
  2. package/dist/index.js +679 -614
  3. package/dist/index.js.map +1 -1
  4. package/dist/{model/pages/resource-cli-card-page.d.ts → playwright.config.d.ts} +2 -3
  5. package/dist/tests/playwright/src/index.d.ts +96 -0
  6. package/dist/{model → tests/playwright/src/model}/components/dropdown-component.d.ts +1 -18
  7. package/dist/tests/playwright/src/model/pages/authentication-page.d.ts +11 -0
  8. package/dist/tests/playwright/src/model/pages/base-page.d.ts +6 -0
  9. package/dist/{model → tests/playwright/src/model}/pages/build-image-page.d.ts +1 -18
  10. package/dist/{model → tests/playwright/src/model}/pages/cli-tools-page.d.ts +1 -18
  11. package/dist/tests/playwright/src/model/pages/cluster-creation-base-page.d.ts +13 -0
  12. package/dist/tests/playwright/src/model/pages/command-palette.d.ts +7 -0
  13. package/dist/tests/playwright/src/model/pages/compose-onboarding/compose-failed-page.d.ts +6 -0
  14. package/dist/tests/playwright/src/model/pages/compose-onboarding/compose-local-install-page.d.ts +6 -0
  15. package/dist/tests/playwright/src/model/pages/compose-onboarding/compose-onboarding-page.d.ts +6 -0
  16. package/dist/tests/playwright/src/model/pages/compose-onboarding/compose-version-page.d.ts +7 -0
  17. package/dist/tests/playwright/src/model/pages/compose-onboarding/compose-wide-install-page.d.ts +6 -0
  18. package/dist/{model → tests/playwright/src/model}/pages/container-details-page.d.ts +1 -18
  19. package/dist/{model → tests/playwright/src/model}/pages/containers-page.d.ts +1 -18
  20. package/dist/tests/playwright/src/model/pages/create-kind-cluster-page.d.ts +16 -0
  21. package/dist/tests/playwright/src/model/pages/create-machine-page.d.ts +19 -0
  22. package/dist/tests/playwright/src/model/pages/create-network-page.d.ts +14 -0
  23. package/dist/tests/playwright/src/model/pages/create-pod-page.d.ts +12 -0
  24. package/dist/tests/playwright/src/model/pages/create-volume-page.d.ts +13 -0
  25. package/dist/{model → tests/playwright/src/model}/pages/dashboard-page.d.ts +1 -18
  26. package/dist/{model → tests/playwright/src/model}/pages/deploy-to-kubernetes-page.d.ts +2 -19
  27. package/dist/tests/playwright/src/model/pages/details-page.d.ts +16 -0
  28. package/dist/tests/playwright/src/model/pages/docker-compatibility-page.d.ts +12 -0
  29. package/dist/tests/playwright/src/model/pages/experimental-page.d.ts +12 -0
  30. package/dist/{model → tests/playwright/src/model}/pages/extension-card-page.d.ts +1 -18
  31. package/dist/tests/playwright/src/model/pages/extension-catalog-card-page.d.ts +14 -0
  32. package/dist/tests/playwright/src/model/pages/extension-details-page.d.ts +20 -0
  33. package/dist/{model → tests/playwright/src/model}/pages/extensions-page.d.ts +2 -19
  34. package/dist/{model → tests/playwright/src/model}/pages/forms/machine-creation-form.d.ts +4 -21
  35. package/dist/{model → tests/playwright/src/model}/pages/image-details-page.d.ts +1 -18
  36. package/dist/tests/playwright/src/model/pages/image-edit-page.d.ts +14 -0
  37. package/dist/{model → tests/playwright/src/model}/pages/images-page.d.ts +3 -20
  38. package/dist/tests/playwright/src/model/pages/kubernetes-bar.d.ts +13 -0
  39. package/dist/{model → tests/playwright/src/model}/pages/kubernetes-context-page.d.ts +1 -18
  40. package/dist/{model → tests/playwright/src/model}/pages/kubernetes-dashboard-page.d.ts +2 -19
  41. package/dist/tests/playwright/src/model/pages/kubernetes-resource-details-page.d.ts +18 -0
  42. package/dist/tests/playwright/src/model/pages/kubernetes-resource-page.d.ts +12 -0
  43. package/dist/{model → tests/playwright/src/model}/pages/main-page.d.ts +1 -18
  44. package/dist/tests/playwright/src/model/pages/network-details-page.d.ts +16 -0
  45. package/dist/{model → tests/playwright/src/model}/pages/networks-page.d.ts +1 -18
  46. package/dist/tests/playwright/src/model/pages/onboarding-page.d.ts +13 -0
  47. package/dist/tests/playwright/src/model/pages/podman-kube-play-page.d.ts +20 -0
  48. package/dist/tests/playwright/src/model/pages/podman-machine-details-page.d.ts +19 -0
  49. package/dist/tests/playwright/src/model/pages/podman-onboarding-page.d.ts +11 -0
  50. package/dist/tests/playwright/src/model/pages/pods-details-page.d.ts +23 -0
  51. package/dist/tests/playwright/src/model/pages/pods-page.d.ts +18 -0
  52. package/dist/tests/playwright/src/model/pages/preferences-page.d.ts +15 -0
  53. package/dist/tests/playwright/src/model/pages/proxy-page.d.ts +21 -0
  54. package/dist/{model → tests/playwright/src/model}/pages/pull-image-page.d.ts +1 -18
  55. package/dist/tests/playwright/src/model/pages/registries-page.d.ts +19 -0
  56. package/dist/tests/playwright/src/model/pages/resource-card-page.d.ts +11 -0
  57. package/dist/tests/playwright/src/model/pages/resource-cli-card-page.d.ts +3 -0
  58. package/dist/tests/playwright/src/model/pages/resource-connection-card-page.d.ts +16 -0
  59. package/dist/tests/playwright/src/model/pages/resource-details-page.d.ts +8 -0
  60. package/dist/tests/playwright/src/model/pages/resources-page.d.ts +10 -0
  61. package/dist/{model → tests/playwright/src/model}/pages/run-image-page.d.ts +2 -19
  62. package/dist/tests/playwright/src/model/pages/select-image-page.d.ts +18 -0
  63. package/dist/tests/playwright/src/model/pages/settings-bar.d.ts +19 -0
  64. package/dist/tests/playwright/src/model/pages/settings-page.d.ts +10 -0
  65. package/dist/{model → tests/playwright/src/model}/pages/tasks-page.d.ts +1 -18
  66. package/dist/{model → tests/playwright/src/model}/pages/troubleshooting-page.d.ts +1 -18
  67. package/dist/tests/playwright/src/model/pages/volume-details-page.d.ts +10 -0
  68. package/dist/{model → tests/playwright/src/model}/pages/volumes-page.d.ts +1 -18
  69. package/dist/{model → tests/playwright/src/model}/pages/welcome-page.d.ts +1 -18
  70. package/dist/tests/playwright/src/model/workbench/navigation.d.ts +33 -0
  71. package/dist/tests/playwright/src/model/workbench/status-bar.d.ts +24 -0
  72. package/dist/{runner → tests/playwright/src/runner}/podman-desktop-runner.d.ts +2 -19
  73. package/dist/tests/playwright/src/special-specs/podman-remote/podman-remote.spec.d.ts +2 -0
  74. package/dist/tests/playwright/src/specs/builtin-extension-smoke.spec.d.ts +18 -0
  75. package/dist/tests/playwright/src/specs/cancelable-task-smoke.spec.d.ts +18 -0
  76. package/dist/tests/playwright/src/specs/cli-tools-smoke.spec.d.ts +18 -0
  77. package/dist/tests/playwright/src/specs/compose-onboarding-smoke.spec.d.ts +18 -0
  78. package/dist/tests/playwright/src/specs/container-smoke.spec.d.ts +18 -0
  79. package/dist/tests/playwright/src/specs/docker-compatibility-smoke.spec.d.ts +18 -0
  80. package/dist/tests/playwright/src/specs/extension-installation-smoke.spec.d.ts +18 -0
  81. package/dist/tests/playwright/src/specs/extension-onboarding-smoke.spec.d.ts +18 -0
  82. package/dist/tests/playwright/src/specs/image-manifest-smoke.spec.d.ts +18 -0
  83. package/dist/tests/playwright/src/specs/image-push-to-registry-smoke.spec.d.ts +18 -0
  84. package/dist/tests/playwright/src/specs/image-search.spec.d.ts +18 -0
  85. package/dist/tests/playwright/src/specs/image-smoke.spec.d.ts +18 -0
  86. package/dist/tests/playwright/src/specs/kind.spec.d.ts +18 -0
  87. package/dist/tests/playwright/src/specs/kubernetes-context-smoke.spec.d.ts +18 -0
  88. package/dist/tests/playwright/src/specs/kubernetes-image-push.spec.d.ts +18 -0
  89. package/dist/tests/playwright/src/specs/kubernetes-networking.spec.d.ts +18 -0
  90. package/dist/tests/playwright/src/specs/kubernetes-status-bar-providers.spec.d.ts +18 -0
  91. package/dist/tests/playwright/src/specs/kubernetes.spec.d.ts +18 -0
  92. package/dist/tests/playwright/src/specs/network-smoke.spec.d.ts +18 -0
  93. package/dist/tests/playwright/src/specs/pod-smoke.spec.d.ts +18 -0
  94. package/dist/tests/playwright/src/specs/podman-compose-smoke.spec.d.ts +18 -0
  95. package/dist/tests/playwright/src/specs/podman-extension-smoke.spec.d.ts +18 -0
  96. package/dist/tests/playwright/src/specs/podman-kube-play-smoke.spec.d.ts +18 -0
  97. package/dist/tests/playwright/src/specs/preferences.spec.d.ts +18 -0
  98. package/dist/tests/playwright/src/specs/proxy-smoke.spec.d.ts +18 -0
  99. package/dist/tests/playwright/src/specs/registry-image.spec.d.ts +18 -0
  100. package/dist/tests/playwright/src/specs/registry.spec.d.ts +18 -0
  101. package/dist/tests/playwright/src/specs/troubleshooting-smoke.spec.d.ts +18 -0
  102. package/dist/tests/playwright/src/specs/volume-smoke.spec.d.ts +18 -0
  103. package/dist/tests/playwright/src/specs/welcome-page-smoke.spec.d.ts +18 -0
  104. package/dist/tests/playwright/src/specs/yaml-smoke.spec.d.ts +18 -0
  105. package/dist/tests/playwright/src/specs/z-podman-machine-dashboard-onboarding.spec.d.ts +18 -0
  106. package/dist/tests/playwright/src/specs/z-podman-machine-onboarding.spec.d.ts +18 -0
  107. package/dist/tests/playwright/src/specs/z-podman-machine-resources.spec.d.ts +18 -0
  108. package/dist/tests/playwright/src/specs/z-podman-machine-tests.spec.d.ts +18 -0
  109. package/dist/{utility → tests/playwright/src/utility}/auth-utils.d.ts +1 -18
  110. package/dist/{utility → tests/playwright/src/utility}/cluster-operations.d.ts +5 -22
  111. package/dist/tests/playwright/src/utility/fixtures.d.ts +18 -0
  112. package/dist/{utility → tests/playwright/src/utility}/kubernetes.d.ts +3 -20
  113. package/dist/{utility → tests/playwright/src/utility}/operations.d.ts +4 -22
  114. package/dist/tests/playwright/src/utility/provider.d.ts +4 -0
  115. package/dist/{utility → tests/playwright/src/utility}/wait.d.ts +1 -18
  116. package/package.json +2 -1
  117. package/dist/model/pages/authentication-page.d.ts +0 -28
  118. package/dist/model/pages/base-page.d.ts +0 -23
  119. package/dist/model/pages/cluster-creation-base-page.d.ts +0 -30
  120. package/dist/model/pages/command-palette.d.ts +0 -24
  121. package/dist/model/pages/compose-onboarding/compose-failed-page.d.ts +0 -23
  122. package/dist/model/pages/compose-onboarding/compose-local-install-page.d.ts +0 -23
  123. package/dist/model/pages/compose-onboarding/compose-onboarding-page.d.ts +0 -23
  124. package/dist/model/pages/compose-onboarding/compose-version-page.d.ts +0 -24
  125. package/dist/model/pages/compose-onboarding/compose-wide-install-page.d.ts +0 -23
  126. package/dist/model/pages/create-kind-cluster-page.d.ts +0 -33
  127. package/dist/model/pages/create-machine-page.d.ts +0 -36
  128. package/dist/model/pages/create-network-page.d.ts +0 -31
  129. package/dist/model/pages/create-pod-page.d.ts +0 -29
  130. package/dist/model/pages/create-volume-page.d.ts +0 -30
  131. package/dist/model/pages/details-page.d.ts +0 -33
  132. package/dist/model/pages/docker-compatibility-page.d.ts +0 -29
  133. package/dist/model/pages/experimental-page.d.ts +0 -29
  134. package/dist/model/pages/extension-catalog-card-page.d.ts +0 -31
  135. package/dist/model/pages/extension-details-page.d.ts +0 -37
  136. package/dist/model/pages/image-edit-page.d.ts +0 -31
  137. package/dist/model/pages/kubernetes-bar.d.ts +0 -30
  138. package/dist/model/pages/kubernetes-resource-details-page.d.ts +0 -35
  139. package/dist/model/pages/kubernetes-resource-page.d.ts +0 -29
  140. package/dist/model/pages/network-details-page.d.ts +0 -33
  141. package/dist/model/pages/onboarding-page.d.ts +0 -30
  142. package/dist/model/pages/podman-kube-play-page.d.ts +0 -37
  143. package/dist/model/pages/podman-machine-details-page.d.ts +0 -36
  144. package/dist/model/pages/podman-onboarding-page.d.ts +0 -28
  145. package/dist/model/pages/pods-details-page.d.ts +0 -40
  146. package/dist/model/pages/pods-page.d.ts +0 -35
  147. package/dist/model/pages/preferences-page.d.ts +0 -32
  148. package/dist/model/pages/proxy-page.d.ts +0 -38
  149. package/dist/model/pages/registries-page.d.ts +0 -36
  150. package/dist/model/pages/resource-card-page.d.ts +0 -28
  151. package/dist/model/pages/resource-connection-card-page.d.ts +0 -33
  152. package/dist/model/pages/resource-details-page.d.ts +0 -25
  153. package/dist/model/pages/resources-page.d.ts +0 -27
  154. package/dist/model/pages/select-image-page.d.ts +0 -35
  155. package/dist/model/pages/settings-bar.d.ts +0 -36
  156. package/dist/model/pages/settings-page.d.ts +0 -27
  157. package/dist/model/pages/volume-details-page.d.ts +0 -27
  158. package/dist/model/workbench/navigation.d.ts +0 -50
  159. package/dist/model/workbench/status-bar.d.ts +0 -41
  160. package/dist/special-specs/podman-remote/podman-remote.spec.d.ts +0 -19
  161. package/dist/utility/fixtures.d.ts +0 -35
  162. package/dist/utility/provider.d.ts +0 -21
  163. /package/dist/{globalSetup → tests/playwright/src/globalSetup}/global-setup.d.ts +0 -0
  164. /package/dist/{model → tests/playwright/src/model}/core/extensions.d.ts +0 -0
  165. /package/dist/{model → tests/playwright/src/model}/core/operations.d.ts +0 -0
  166. /package/dist/{model → tests/playwright/src/model}/core/platforms.d.ts +0 -0
  167. /package/dist/{model → tests/playwright/src/model}/core/states.d.ts +0 -0
  168. /package/dist/{model → tests/playwright/src/model}/core/types.d.ts +0 -0
  169. /package/dist/{runner → tests/playwright/src/runner}/runner-options.d.ts +0 -0
  170. /package/dist/{setupFiles → tests/playwright/src/setupFiles}/setup-kind.d.ts +0 -0
  171. /package/dist/{setupFiles → tests/playwright/src/setupFiles}/setup-registry.d.ts +0 -0
  172. /package/dist/{special-specs → tests/playwright/src/special-specs}/installation/podman-installer.spec.d.ts +0 -0
  173. /package/dist/{special-specs → tests/playwright/src/special-specs}/installation/update-install.spec.d.ts +0 -0
  174. /package/dist/{special-specs → tests/playwright/src/special-specs}/managed-configuration/managed-configuration-no-predefined-settings.spec.d.ts +0 -0
  175. /package/dist/{special-specs → tests/playwright/src/special-specs}/managed-configuration/managed-configuration-user-settings.spec.d.ts +0 -0
  176. /package/dist/{special-specs → tests/playwright/src/special-specs}/ui-stress/ui-stress.spec.d.ts +0 -0
  177. /package/dist/{utility → tests/playwright/src/utility}/cleanup.d.ts +0 -0
  178. /package/dist/{utility → tests/playwright/src/utility}/platform.d.ts +0 -0
package/dist/index.js CHANGED
@@ -1,73 +1,32 @@
1
- import { existsSync as $, rmSync as K, mkdirSync as Ot, writeFileSync as _t } from "node:fs";
2
- import { join as B, resolve as Ut, dirname as Ht } from "node:path";
3
- import s, { expect as a, test as y, _electron as Kt, chromium as Gt } from "@playwright/test";
1
+ import { existsSync as D, rmSync as K, mkdirSync as Nt, writeFileSync as $t } from "node:fs";
2
+ import { join as p, resolve as Mt, dirname as Ft } from "node:path";
3
+ import s, { expect as a, test as B, _electron as Ot, chromium as _t } from "@playwright/test";
4
4
  import { expect as rn } from "@playwright/test";
5
5
  import * as M from "node:os";
6
- import { execSync as f } from "node:child_process";
7
- async function Wt(i) {
8
- console.log(`Cleaning up folder: ${i}`), $(i) && (console.log("Folder found, removing..."), K(i, { recursive: !0, force: !0, maxRetries: 5 }));
6
+ import { execSync as x } from "node:child_process";
7
+ async function Ut(i) {
8
+ console.log(`Cleaning up folder: ${i}`), D(i) && (console.log("Folder found, removing..."), K(i, { recursive: !0, force: !0, maxRetries: 5 }));
9
9
  }
10
- let ut = !1;
10
+ let lt = !1;
11
11
  async function Je() {
12
- ut || (!process.env.CI && !process.env.SKIP_REMOVE_FOLDER ? await Wt("tests/output") : console.log("On CI, skipping before All tests/output cleanup, see https://github.com/containers/podman-desktop/issues/5460"), ut = !0);
13
- }
14
- async function ze() {
15
- }
16
- const j = M.platform() === "linux", F = M.platform() === "darwin", O = M.platform() === "win32", Yt = M.arch(), Qe = String(process.env.CI).toLowerCase() === "true";
17
- var D;
18
- (function(i) {
19
- i.Starting = "STARTING", i.Stopping = "STOPPING", i.Running = "RUNNING", i.Error = "ERROR", i.Exited = "EXITED", i.Deleting = "DELETING", i.Created = "CREATED", i.Paused = "PAUSED", i.Stopped = "STOPPED", i.Unknown = "UNKNOWN";
20
- })(D || (D = {}));
21
- var G;
22
- (function(i) {
23
- i.Created = "CREATED", i.Running = "RUNNING", i.Stopped = "STOPPED", i.Exited = "EXITED", i.Dead = "DEAD", i.Starting = "STARTING", i.Stopping = "STOPPING", i.Deleting = "DELETING", i.Restarting = "RESTARTING", i.Degraded = "DEGRADED", i.Paused = "PAUSED", i.Unknown = "UNKNOWN";
24
- })(G || (G = {}));
25
- var W;
26
- (function(i) {
27
- i.Used = "USED", i.Unused = "UNUSED";
28
- })(W || (W = {}));
29
- var C;
30
- (function(i) {
31
- i.Running = "RUNNING", i.Off = "OFF", i.Starting = "STARTING";
32
- })(C || (C = {}));
33
- var tt;
34
- (function(i) {
35
- i.Starting = "STARTING", i.Running = "RUNNING", i.Stopped = "STOPPED", i.Unknown = "UNKNOWN", i.Succeeded = "SUCCEEDED", i.None = "";
36
- })(tt || (tt = {}));
37
- var ht;
38
- (function(i) {
39
- i.Disabled = "DISABLED", i.Active = "ACTIVE", i.Running = "RUNNING", i.NotInstalled = "NOT-INSTALLED", i.Downloadable = "DOWNLOADABLE";
40
- })(ht || (ht = {}));
41
- var gt;
42
- (function(i) {
43
- i.Used = "USED", i.Unused = "UNUSED";
44
- })(gt || (gt = {}));
45
- var dt;
46
- (function(i) {
47
- i.Canceled = "canceled", i.Success = "success";
48
- })(dt || (dt = {}));
49
- var k;
50
- (function(i) {
51
- i.Start = "Start", i.Restart = "Restart", i.Stop = "Stop", i.Delete = "Delete";
52
- })(k || (k = {}));
53
- var Y;
54
- (function(i) {
55
- i[i.SelectYamlFile = 0] = "SelectYamlFile", i[i.CreateYamlFileFromScratch = 1] = "CreateYamlFileFromScratch";
56
- })(Y || (Y = {}));
57
- var w;
58
- (function(i) {
59
- i.Nodes = "Nodes", i.Deployments = "Deployments", i.Services = "Services", i.IngeressesRoutes = "Ingresses & Routes", i.PVCs = "Persistent Volume Claims", i.ConfigMapsSecrets = "ConfigMaps & Secrets", i.PortForwarding = "Port Forwarding", i.Pods = "Pods", i.Cronjobs = "CronJobs", i.Jobs = "Jobs";
60
- })(w || (w = {}));
61
- const qt = {
62
- [w.Nodes]: ["Status", "Name", "Roles", "Version", "OS", "Kernel", "Age"],
63
- [w.Deployments]: ["Selected", "Status", "Name", "Conditions", "Pods", "Age", "Actions"],
64
- [w.Services]: ["Selected", "Status", "Name", "Type", "Cluster IP", "Ports", "Age", "Actions"],
65
- [w.IngeressesRoutes]: ["Selected", "Status", "Name", "Host/Path", "Backend", "Age", "Actions"],
66
- [w.PVCs]: ["Selected", "Status", "Name", "Environment", "Age", "Size", "Actions"],
67
- [w.ConfigMapsSecrets]: ["Selected", "Status", "Name", "Type", "Keys", "Age", "Actions"],
68
- [w.PortForwarding]: ["Status", "Name", "Type", "Local Port", "Remote Port", "Actions"],
69
- [w.Pods]: ["Selected", "Status", "Name", "Containers", "Age", "Actions"],
70
- [w.Cronjobs]: [
12
+ lt || (!process.env.CI && !process.env.SKIP_REMOVE_FOLDER ? await Ut("tests/output") : console.log(
13
+ "On CI, skipping before All tests/output cleanup, see https://github.com/containers/podman-desktop/issues/5460"
14
+ ), lt = !0);
15
+ }
16
+ async function Qe() {
17
+ }
18
+ const W = M.platform() === "linux", F = M.platform() === "darwin", O = M.platform() === "win32", Ht = M.arch(), ze = String(process.env.CI).toLowerCase() === "true";
19
+ var $ = /* @__PURE__ */ ((i) => (i.Starting = "STARTING", i.Stopping = "STOPPING", i.Running = "RUNNING", i.Error = "ERROR", i.Exited = "EXITED", i.Deleting = "DELETING", i.Created = "CREATED", i.Paused = "PAUSED", i.Stopped = "STOPPED", i.Unknown = "UNKNOWN", i))($ || {}), z = /* @__PURE__ */ ((i) => (i.Created = "CREATED", i.Running = "RUNNING", i.Stopped = "STOPPED", i.Exited = "EXITED", i.Dead = "DEAD", i.Starting = "STARTING", i.Stopping = "STOPPING", i.Deleting = "DELETING", i.Restarting = "RESTARTING", i.Degraded = "DEGRADED", i.Paused = "PAUSED", i.Unknown = "UNKNOWN", i))(z || {}), tt = /* @__PURE__ */ ((i) => (i.Used = "USED", i.Unused = "UNUSED", i))(tt || {}), v = /* @__PURE__ */ ((i) => (i.Running = "RUNNING", i.Off = "OFF", i.Starting = "STARTING", i))(v || {}), wt = /* @__PURE__ */ ((i) => (i.Starting = "STARTING", i.Running = "RUNNING", i.Stopped = "STOPPED", i.Unknown = "UNKNOWN", i.Succeeded = "SUCCEEDED", i.None = "", i))(wt || {}), Kt = /* @__PURE__ */ ((i) => (i.Disabled = "DISABLED", i.Active = "ACTIVE", i.Running = "RUNNING", i.NotInstalled = "NOT-INSTALLED", i.Downloadable = "DOWNLOADABLE", i))(Kt || {}), Gt = /* @__PURE__ */ ((i) => (i.Used = "USED", i.Unused = "UNUSED", i))(Gt || {}), Wt = /* @__PURE__ */ ((i) => (i.Canceled = "canceled", i.Success = "success", i))(Wt || {}), f = /* @__PURE__ */ ((i) => (i.Start = "Start", i.Restart = "Restart", i.Stop = "Stop", i.Delete = "Delete", i))(f || {}), X = /* @__PURE__ */ ((i) => (i[i.SelectYamlFile = 0] = "SelectYamlFile", i[i.CreateYamlFileFromScratch = 1] = "CreateYamlFileFromScratch", i))(X || {}), m = /* @__PURE__ */ ((i) => (i.Nodes = "Nodes", i.Deployments = "Deployments", i.Services = "Services", i.IngeressesRoutes = "Ingresses & Routes", i.PVCs = "Persistent Volume Claims", i.ConfigMapsSecrets = "ConfigMaps & Secrets", i.PortForwarding = "Port Forwarding", i.Pods = "Pods", i.Cronjobs = "CronJobs", i.Jobs = "Jobs", i))(m || {});
20
+ const Yt = {
21
+ Nodes: ["Status", "Name", "Roles", "Version", "OS", "Kernel", "Age"],
22
+ Deployments: ["Selected", "Status", "Name", "Conditions", "Pods", "Age", "Actions"],
23
+ Services: ["Selected", "Status", "Name", "Type", "Cluster IP", "Ports", "Age", "Actions"],
24
+ "Ingresses & Routes": ["Selected", "Status", "Name", "Host/Path", "Backend", "Age", "Actions"],
25
+ "Persistent Volume Claims": ["Selected", "Status", "Name", "Environment", "Age", "Size", "Actions"],
26
+ "ConfigMaps & Secrets": ["Selected", "Status", "Name", "Type", "Keys", "Age", "Actions"],
27
+ "Port Forwarding": ["Status", "Name", "Type", "Local Port", "Remote Port", "Actions"],
28
+ Pods: ["Selected", "Status", "Name", "Containers", "Age", "Actions"],
29
+ CronJobs: [
71
30
  "Selected",
72
31
  "Status",
73
32
  "Name",
@@ -78,39 +37,29 @@ const qt = {
78
37
  "Age",
79
38
  "Actions"
80
39
  ],
81
- [w.Jobs]: ["Selected", "Status", "Name", "Conditions", "Completions", "Age", "Actions"]
40
+ Jobs: ["Selected", "Status", "Name", "Conditions", "Completions", "Age", "Actions"]
82
41
  };
83
- var p;
84
- (function(i) {
85
- i.WSL = "Wsl", i.HyperV = "Hyperv", i.AppleHV = "Apple HyperVisor", i.LibKrun = "default GPU enabled (LibKrun)", i.Qemu = "Qemu", i.Native = "";
86
- })(p || (p = {}));
87
- const nt = {
88
- [p.WSL]: ["Wsl", "WSL"],
89
- [p.HyperV]: ["Hyperv", "Hyper-V", "HyperV"],
90
- [p.AppleHV]: ["Apple HyperVisor", "Apple Hypervisor", "AppleHV"],
91
- [p.LibKrun]: ["default GPU enabled (LibKrun)", "LibKrun", "libkrun"],
92
- [p.Qemu]: ["Qemu", "QEMU", "qemu"],
93
- [p.Native]: [""]
42
+ var C = /* @__PURE__ */ ((i) => (i.WSL = "Wsl", i.HyperV = "Hyperv", i.AppleHV = "Apple HyperVisor", i.LibKrun = "default GPU enabled (LibKrun)", i.Qemu = "Qemu", i.Native = "", i))(C || {});
43
+ const et = {
44
+ Wsl: ["Wsl", "WSL"],
45
+ Hyperv: ["Hyperv", "Hyper-V", "HyperV"],
46
+ "Apple HyperVisor": ["Apple HyperVisor", "Apple Hypervisor", "AppleHV"],
47
+ "default GPU enabled (LibKrun)": ["default GPU enabled (LibKrun)", "LibKrun", "libkrun"],
48
+ Qemu: ["Qemu", "QEMU", "qemu"],
49
+ "": [""]
94
50
  };
95
- function xt(i, t) {
96
- const e = nt[i], n = t.toLowerCase().trim();
51
+ function mt(i, t) {
52
+ const e = et[i], n = t.toLowerCase().trim();
97
53
  return e.some((o) => o.toLowerCase().trim() === n);
98
54
  }
99
55
  function Xe(i) {
100
56
  const t = i.toLowerCase().trim();
101
- for (const [e, n] of Object.entries(nt))
57
+ for (const [e, n] of Object.entries(et))
102
58
  if (n.some((o) => o.toLowerCase().trim() === t))
103
59
  return e;
104
60
  }
105
- var et;
106
- (function(i) {
107
- i.Rootful = "rootful", i.Rootless = "rootless";
108
- })(et || (et = {}));
109
- var wt;
110
- (function(i) {
111
- i.Disabled = "Disabled", i.Manual = "Manual", i.System = "System";
112
- })(wt || (wt = {}));
113
- class m {
61
+ var pt = /* @__PURE__ */ ((i) => (i.Rootful = "rootful", i.Rootless = "rootless", i))(pt || {}), qt = /* @__PURE__ */ ((i) => (i.Disabled = "Disabled", i.Manual = "Manual", i.System = "System", i))(qt || {});
62
+ class w {
114
63
  page;
115
64
  // TODO: extract header and content locators into base class, add that roles into all pages
116
65
  constructor(t) {
@@ -120,7 +69,7 @@ class m {
120
69
  return this.page;
121
70
  }
122
71
  }
123
- class I extends m {
72
+ class I extends w {
124
73
  tabName;
125
74
  parent;
126
75
  header;
@@ -213,7 +162,7 @@ class jt extends I {
213
162
  });
214
163
  }
215
164
  async ensureAPIRateLimitNotReached() {
216
- await b(async () => this.wasRateLimitReached(), { timeout: 2e3, sendError: !1 }), this.rateLimitReachedFlag && (console.log("Skipping test due to API rate limit being reached"), s.skip(!0, "Skipping test due to API rate limit being reached"));
165
+ await y(async () => this.wasRateLimitReached(), { timeout: 2e3, sendError: !1 }), this.rateLimitReachedFlag && (console.log("Skipping test due to API rate limit being reached"), s.skip(!0, "Skipping test due to API rate limit being reached"));
217
166
  }
218
167
  async getFirstDifferentVersionFromList(t = "") {
219
168
  if (!t)
@@ -249,13 +198,15 @@ class Jt extends I {
249
198
  }
250
199
  }
251
200
  }
252
- class zt extends I {
201
+ class Qt extends I {
253
202
  heading;
254
203
  searchbar;
255
204
  kubePathInput;
256
205
  APPEARANCE_PREFERENCE_LABEL = "Appearance";
257
206
  constructor(t) {
258
- super(t, "Preferences"), this.heading = this.header.getByLabel("Title", { exact: !0 }), this.searchbar = this.header.getByLabel("search preferences"), this.kubePathInput = this.content.getByLabel("Path to the Kubeconfig file for accessing clusters. (Default is usually ~/.kube/config)");
207
+ super(t, "Preferences"), this.heading = this.header.getByLabel("Title", { exact: !0 }), this.searchbar = this.header.getByLabel("search preferences"), this.kubePathInput = this.content.getByLabel(
208
+ "Path to the Kubeconfig file for accessing clusters. (Default is usually ~/.kube/config)"
209
+ );
259
210
  }
260
211
  getPreferenceRowByName(t) {
261
212
  return this.content.locator("div.flex.flex-row.justify-between").filter({ has: this.page.getByText(t, { exact: !0 }) });
@@ -276,7 +227,9 @@ class zt extends I {
276
227
  async setAppearancePreference(t) {
277
228
  const e = this.getPreferenceRowByName(this.APPEARANCE_PREFERENCE_LABEL);
278
229
  await a(e).toBeAttached(), await e.scrollIntoViewIfNeeded(), await a(e).toBeVisible();
279
- const n = e.getByLabel("Select between light or dark mode, or use your system setting.");
230
+ const n = e.getByLabel(
231
+ "Select between light or dark mode, or use your system setting."
232
+ );
280
233
  await a(n).toBeVisible(), await n.click();
281
234
  const o = e.getByRole("button", { name: t, exact: !0 });
282
235
  await a(o).toBeVisible(), await o.click();
@@ -289,7 +242,7 @@ class zt extends I {
289
242
  });
290
243
  }
291
244
  }
292
- class Qt extends I {
245
+ class zt extends I {
293
246
  heading;
294
247
  addRegistryButton;
295
248
  registriesTable;
@@ -317,10 +270,10 @@ class Qt extends I {
317
270
  await o.getByRole("button", {
318
271
  name: "kebab menu"
319
272
  }).click(), await o.getByTitle("Edit password").click();
320
- const l = o.getByLabel("Username"), u = o.getByRole("textbox", {
273
+ const c = o.getByLabel("Username"), u = o.getByRole("textbox", {
321
274
  name: "Password"
322
275
  });
323
- await l.pressSequentially(e, { delay: 100 }), await u.pressSequentially(n, { delay: 100 });
276
+ await c.pressSequentially(e, { delay: 100 }), await u.pressSequentially(n, { delay: 100 });
324
277
  const h = o.getByRole("button", { name: "Login" });
325
278
  await this.loginButtonHandling(h);
326
279
  });
@@ -348,16 +301,19 @@ class Qt extends I {
348
301
  async loginButtonHandling(t) {
349
302
  return s.step("Handle login button", async () => {
350
303
  try {
351
- await b(async function() {
352
- return await t.isEnabled();
353
- }, { message: "Login Button not enabled in time" }), await t.click({ timeout: 3e3 });
304
+ await y(
305
+ async function() {
306
+ return await t.isEnabled();
307
+ },
308
+ { message: "Login Button not enabled in time" }
309
+ ), await t.click({ timeout: 3e3 });
354
310
  } catch (e) {
355
311
  throw Error(`An error occured when trying to log into registry: ${e.message}`);
356
312
  }
357
313
  });
358
314
  }
359
315
  }
360
- class ft extends m {
316
+ class Bt extends w {
361
317
  parent;
362
318
  card;
363
319
  providerSetup;
@@ -368,7 +324,7 @@ class ft extends m {
368
324
  super(t), this.parent = this.page.getByRole("region", { name: "content" }), this.card = this.parent.getByRole("region", { name: e, exact: !0 }), this.providerSetup = this.card.getByRole("region", { name: "Provider Setup", exact: !0 }), this.providerConnections = this.card.getByRole("region", { name: "Provider Connections", exact: !0 }), this.markdownContent = this.providerConnections.getByLabel("markdown-content"), this.setupButton = this.providerSetup.getByRole("button", { name: "Setup" });
369
325
  }
370
326
  }
371
- class J extends ft {
327
+ class Y extends Bt {
372
328
  resourceElement;
373
329
  resourceElementDetailsButton;
374
330
  resourceElementConnectionStatus;
@@ -400,7 +356,7 @@ class J extends ft {
400
356
  return await this.card.getByLabel(t, { exact: !0 }).textContent() ?? "";
401
357
  }
402
358
  }
403
- class L extends I {
359
+ class E extends I {
404
360
  heading;
405
361
  featuredProviderResources;
406
362
  constructor(t) {
@@ -419,7 +375,7 @@ class L extends I {
419
375
  return this.content.getByRole("region", { name: t, exact: !0 });
420
376
  }
421
377
  }
422
- class it {
378
+ class at {
423
379
  page;
424
380
  settingsNavBar;
425
381
  resourcesTab;
@@ -433,7 +389,7 @@ class it {
433
389
  this.page = t, this.settingsNavBar = t.getByRole("navigation", { name: "PreferencesNavigation" }), this.resourcesTab = this.settingsNavBar.getByRole("link", { name: "Resources" }), this.proxyTab = this.settingsNavBar.getByRole("link", { name: "Proxy" }), this.registriesTab = this.settingsNavBar.getByRole("link", { name: "Registries" }), this.authenticationTab = this.settingsNavBar.getByRole("link", { name: "Authentication" }), this.cliToolsTab = this.settingsNavBar.getByRole("link", { name: "CLI Tools" }), this.kubernetesTab = this.settingsNavBar.getByRole("link", { name: "Kubernetes" }), this.preferencesTab = this.settingsNavBar.getByLabel("preferences");
434
390
  }
435
391
  async openTabPage(t) {
436
- return y.step(`Open ${t.name} tab from Settings`, async () => {
392
+ return B.step(`Open ${t.name} tab from Settings`, async () => {
437
393
  const e = new t(this.page), n = await e.getTab();
438
394
  return await a(n).toBeVisible(), await n.click({ force: !0 }), e;
439
395
  });
@@ -451,7 +407,7 @@ class it {
451
407
  await a(this.preferencesTab).toBeVisible({ timeout: 1e4 }), await this.preferencesTab.click();
452
408
  }
453
409
  }
454
- class S extends m {
410
+ class S extends w {
455
411
  header;
456
412
  tabs;
457
413
  tabContent;
@@ -468,13 +424,13 @@ class S extends m {
468
424
  async activateTab(t) {
469
425
  return s.step(`Activate tab: ${t}`, async () => {
470
426
  const e = this.tabs.getByRole("link", { name: t, exact: !0 });
471
- return await b(async () => await e.isVisible(), {
427
+ return await y(async () => await e.isVisible(), {
472
428
  message: `Tab ${t} does not exist currently, maybe entry was deleted!`
473
429
  }), await e.click(), this;
474
430
  });
475
431
  }
476
432
  }
477
- class Xt extends m {
433
+ class Xt extends w {
478
434
  heading;
479
435
  closeLink;
480
436
  volumeNameBox;
@@ -487,10 +443,10 @@ class Xt extends m {
487
443
  }), this.doneButton = this.page.getByRole("button", { name: "Done" }), this.closeButton = this.page.getByRole("button", { name: "Close" }), this.createVolumeButton = this.page.getByRole("button", { name: "Create" });
488
444
  }
489
445
  async createVolume(t) {
490
- return s.step(`Create volume ${t}`, async () => (await this.volumeNameBox.fill(t), await a(this.createVolumeButton).toBeEnabled(), await this.createVolumeButton.click(), await a(this.doneButton).toBeEnabled({ timeout: 3e4 }), await this.doneButton.click(), new z(this.page)));
446
+ return s.step(`Create volume ${t}`, async () => (await this.volumeNameBox.fill(t), await a(this.createVolumeButton).toBeEnabled(), await this.createVolumeButton.click(), await a(this.doneButton).toBeEnabled({ timeout: 3e4 }), await this.doneButton.click(), new q(this.page)));
491
447
  }
492
448
  }
493
- class A extends m {
449
+ class A extends w {
494
450
  title;
495
451
  mainPage;
496
452
  header;
@@ -520,10 +476,10 @@ class A extends m {
520
476
  * @returns true, if there are any items present in the content's table, false otherwise
521
477
  */
522
478
  async pageIsEmpty() {
523
- return y.step("Check if the page is empty", async () => await this.noContainerEngine() ? !0 : await this.noImagesHeading.count() > 0);
479
+ return B.step("Check if the page is empty", async () => await this.noContainerEngine() ? !0 : await this.noImagesHeading.count() > 0);
524
480
  }
525
481
  async noContainerEngine() {
526
- return y.step("Check if there is no container engine", async () => await this.noContainerEngineHeading.count() > 0);
482
+ return B.step("Check if there is no container engine", async () => await this.noContainerEngineHeading.count() > 0);
527
483
  }
528
484
  async rowsAreVisible() {
529
485
  return await this.page.getByRole("row").first().isVisible();
@@ -532,8 +488,8 @@ class A extends m {
532
488
  return await this.rowTable.getByRole("row").all();
533
489
  }
534
490
  async getRowsFromTableByStatus(t) {
535
- return y.step(`Get rows from ${this.title} page table by status: ${t}`, async () => {
536
- await b(async () => await this.rowsAreVisible(), {
491
+ return B.step(`Get rows from ${this.title} page table by status: ${t}`, async () => {
492
+ await y(async () => await this.rowsAreVisible(), {
537
493
  sendError: !1
538
494
  });
539
495
  const e = await this.getAllTableRows(), n = [];
@@ -543,8 +499,8 @@ class A extends m {
543
499
  });
544
500
  }
545
501
  async countRowsFromTable() {
546
- return y.step(`Count rows from ${this.title} page table`, async () => {
547
- await b(async () => await this.rowsAreVisible(), {
502
+ return B.step(`Count rows from ${this.title} page table`, async () => {
503
+ await y(async () => await this.rowsAreVisible(), {
548
504
  sendError: !1
549
505
  });
550
506
  const e = await this.content.getByRole("table").getByRole("row").all();
@@ -552,19 +508,19 @@ class A extends m {
552
508
  });
553
509
  }
554
510
  async getRowByName(t, e = !0) {
555
- return y.step(`Get row from ${this.title} page table by name: ${t}`, async () => {
511
+ return B.step(`Get row from ${this.title} page table by name: ${t}`, async () => {
556
512
  const n = this.page.getByRole("row").and(this.page.getByLabel(t, { exact: e })).first();
557
513
  return await n.count() > 0 ? n : void 0;
558
514
  });
559
515
  }
560
516
  async waitForRowToExists(t, e = 5e3) {
561
- return y.step(`Wait for row with name: ${t} to exist`, async () => (await b(async () => await this.getRowByName(t) !== void 0, { timeout: e }), !0));
517
+ return B.step(`Wait for row with name: ${t} to exist`, async () => (await y(async () => await this.getRowByName(t) !== void 0, { timeout: e }), !0));
562
518
  }
563
519
  async waitForRowToBeDelete(t, e = 5e3) {
564
- return y.step(`Wait for row with name: ${t} to be deleted`, async () => (await b(async () => await this.getRowByName(t) === void 0, { timeout: e }), !0));
520
+ return B.step(`Wait for row with name: ${t} to be deleted`, async () => (await y(async () => await this.getRowByName(t) === void 0, { timeout: e }), !0));
565
521
  }
566
522
  async uncheckAllRows() {
567
- return y.step(`Uncheck all rows on ${this.title} page`, async () => {
523
+ return B.step(`Uncheck all rows on ${this.title} page`, async () => {
568
524
  try {
569
525
  const t = await this.getToggleLocator();
570
526
  (await t.innerHTML()).includes("pd-input-checkbox-indeterminate") && await t.click(), (await t.innerHTML()).includes("pd-input-checkbox-checked") && await t.click(), await a.poll(async () => await t.innerHTML(), { timeout: 15e3 }).toContain("pd-input-checkbox-unchecked");
@@ -574,7 +530,7 @@ class A extends m {
574
530
  });
575
531
  }
576
532
  async checkAllRows() {
577
- return y.step(`Checks all rows on ${this.title} page`, async () => {
533
+ return B.step(`Checks all rows on ${this.title} page`, async () => {
578
534
  try {
579
535
  const t = await this.getToggleLocator();
580
536
  (await t.innerHTML()).includes("pd-input-checkbox-unchecked") && await t.click(), await a.poll(async () => t.innerHTML(), { timeout: 15e3 }).toContain("pd-input-checkbox-checked");
@@ -593,7 +549,7 @@ class A extends m {
593
549
  return await a(n).toBeAttached(), n;
594
550
  }
595
551
  }
596
- class z extends A {
552
+ class q extends A {
597
553
  createVolumeButton;
598
554
  pruneVolumesButton;
599
555
  collectUsageDataButton;
@@ -612,7 +568,7 @@ class z extends A {
612
568
  const e = await this.getVolumeRowByName(t);
613
569
  if (e === void 0)
614
570
  throw Error(`Volume: ${t} does not exist`);
615
- return await e.getByRole("cell").nth(3).click(), new kt(this.page, t);
571
+ return await e.getByRole("cell").nth(3).click(), new yt(this.page, t);
616
572
  });
617
573
  }
618
574
  async deleteVolume(t) {
@@ -634,13 +590,13 @@ class z extends A {
634
590
  return this.countRowsFromTable();
635
591
  }
636
592
  async countUsedVolumesFromTable() {
637
- return (await this.getRowsFromTableByStatus(W.Used)).length;
593
+ return (await this.getRowsFromTableByStatus(tt.Used)).length;
638
594
  }
639
595
  async waitForVolumeExists(t, e = 3e4) {
640
596
  return s.step(`Wait for volume ${t} to exist`, async () => {
641
597
  if (!t)
642
598
  throw Error("Volume name is not provided");
643
- return await b(async () => await this.volumeExists(t), { timeout: e }), !0;
599
+ return await y(async () => await this.volumeExists(t), { timeout: e }), !0;
644
600
  });
645
601
  }
646
602
  async waitForVolumeDelete(t, e = 3e4) {
@@ -654,7 +610,7 @@ class z extends A {
654
610
  return s.step("Prune Volumes", async () => (await a(this.pruneVolumesButton).toBeEnabled(), await this.pruneVolumesButton.click(), await g(this.page, "Prune"), this));
655
611
  }
656
612
  }
657
- class kt extends S {
613
+ class yt extends S {
658
614
  deleteButton;
659
615
  static SUMMARY_TAB = "Summary";
660
616
  constructor(t, e) {
@@ -663,10 +619,10 @@ class kt extends S {
663
619
  });
664
620
  }
665
621
  async isUsed() {
666
- return await this.header.getByTitle(W.Used).count() > 0;
622
+ return await this.header.getByTitle(tt.Used).count() > 0;
667
623
  }
668
624
  async deleteVolume() {
669
- return s.step("Delete Volume", async () => (await a(this.deleteButton).toBeEnabled(), await this.deleteButton.click(), await g(this.page), new z(this.page)));
625
+ return s.step("Delete Volume", async () => (await a(this.deleteButton).toBeEnabled(), await this.deleteButton.click(), await g(this.page), new q(this.page)));
670
626
  }
671
627
  }
672
628
  async function Ze(i, t) {
@@ -681,9 +637,9 @@ async function Ze(i, t) {
681
637
  await r.count() > 0 && await r.click(), await o.getByRole("button").and(o.getByLabel("Delete Container")).click(), await g(i);
682
638
  try {
683
639
  console.log("Waiting for container to get deleted ..."), await a.poll(async () => await n.getContainerRowByName(t), { timeout: 3e4 }).toBeFalsy();
684
- } catch (l) {
685
- if (!l.message.includes("Page is empty"))
686
- throw Error(`Error waiting for container '${t}' to get removed, ${l}`);
640
+ } catch (c) {
641
+ if (!c.message.includes("Page is empty"))
642
+ throw Error(`Error waiting for container '${t}' to get removed, ${c}`);
687
643
  }
688
644
  }
689
645
  });
@@ -702,18 +658,21 @@ async function ta(i, t) {
702
658
  else
703
659
  throw Error(`Cannot delete image ${t}, because it is in use`);
704
660
  try {
705
- console.log("image deleting, waiting..."), await T(async () => !!await (await new d(i).openImages()).getImageRowByName(t), { timeout: 1e4, sendError: !1 });
706
- } catch (c) {
707
- if (!c.message.includes("Page is empty"))
708
- throw Error(`Error waiting for image '${t}' to get removed, ${c}`);
661
+ console.log("image deleting, waiting..."), await T(
662
+ async () => !!await (await new d(i).openImages()).getImageRowByName(t),
663
+ { timeout: 1e4, sendError: !1 }
664
+ );
665
+ } catch (l) {
666
+ if (!l.message.includes("Page is empty"))
667
+ throw Error(`Error waiting for image '${t}' to get removed, ${l}`);
709
668
  }
710
669
  }
711
670
  });
712
671
  }
713
672
  async function ea(i, t, e = !1) {
714
673
  return s.step(`Delete registry ${t}`, async () => {
715
- const r = await (await new d(i).openSettings()).openTabPage(Qt), c = await r.getRegistryRowByName(t);
716
- await b(() => c.isVisible(), { sendError: e }), await c.isVisible() && await c.getByRole("button", { name: "kebab menu" }).isVisible() && await r.removeRegistry(t);
674
+ const r = await (await new d(i).openSettings()).openTabPage(zt), l = await r.getRegistryRowByName(t);
675
+ await y(() => l.isVisible(), { sendError: e }), await l.isVisible() && await l.getByRole("button", { name: "kebab menu" }).isVisible() && await r.removeRegistry(t);
717
676
  });
718
677
  }
719
678
  async function aa(i, t, e = 5e4) {
@@ -726,10 +685,13 @@ async function aa(i, t, e = 5e4) {
726
685
  else {
727
686
  await r.getByRole("button").and(r.getByLabel("Delete Pod")).click(), await g(i);
728
687
  try {
729
- console.log("Waiting for pod to get deleted ..."), await T(async () => !!await o.getPodRowByName(t), { timeout: e });
730
- } catch (l) {
731
- if (!l.message.includes("Page is empty"))
732
- throw Error(`Error waiting for pod '${t}' to get removed, ${l}`);
688
+ console.log("Waiting for pod to get deleted ..."), await T(
689
+ async () => !!await o.getPodRowByName(t),
690
+ { timeout: e }
691
+ );
692
+ } catch (c) {
693
+ if (!c.message.includes("Page is empty"))
694
+ throw Error(`Error waiting for pod '${t}' to get removed, ${c}`);
733
695
  }
734
696
  }
735
697
  });
@@ -750,78 +712,81 @@ async function na(i, t) {
750
712
  }
751
713
  });
752
714
  }
753
- async function g(i, t = "Confirmation", e = !0, n = "Yes", o = "Cancel", r = 1e4, c = !1) {
715
+ async function g(i, t = "Confirmation", e = !0, n = "Yes", o = "Cancel", r = 1e4, l = !1) {
754
716
  return s.step("Handle confirmation dialog", async () => {
755
- const l = i.getByRole("dialog", { name: t, exact: !0 });
756
- await b(async () => await l.isVisible(), { timeout: r });
757
- const u = e ? l.getByRole("button", { name: n }) : l.getByRole("button", { name: o });
758
- if (await a(u).toBeEnabled({ timeout: r }), await u.click(), c) {
759
- const h = l.getByRole("button", { name: "Done" });
717
+ const c = i.getByRole("dialog", { name: t, exact: !0 });
718
+ await y(async () => await c.isVisible(), { timeout: r });
719
+ const u = e ? c.getByRole("button", { name: n }) : c.getByRole("button", { name: o });
720
+ if (await a(u).toBeEnabled({ timeout: r }), await u.click(), l) {
721
+ const h = c.getByRole("button", { name: "Done" });
760
722
  await a(h).toBeEnabled({ timeout: r }), await h.click();
761
723
  }
762
- await b(async () => !await l.isVisible(), { timeout: r });
724
+ await y(async () => !await c.isVisible(), { timeout: r });
763
725
  });
764
726
  }
765
- async function Rt(i, t, e) {
727
+ async function bt(i, t, e) {
766
728
  return s.step(`Handle Edit Network dialog for: ${t}`, async () => {
767
729
  const n = `Edit Network ${t}`, o = i.getByRole("dialog", { name: n });
768
730
  await a(o).toBeVisible();
769
- const r = o.getByPlaceholder("8.8.8.8 1.1.1.1"), c = r.nth(0), l = r.nth(1), u = o.getByRole("button", { name: "Cancel", exact: !0 }), h = o.getByRole("button", { name: "Update", exact: !0 });
770
- e?.dnsServersToAdd !== void 0 && (await c.clear(), await a(c).toHaveValue(""), await c.fill(e.dnsServersToAdd), await a(c).toHaveValue(e.dnsServersToAdd)), e?.dnsServersToRemove !== void 0 && (await l.clear(), await a(l).toHaveValue(""), await l.fill(e.dnsServersToRemove), await a(l).toHaveValue(e.dnsServersToRemove)), (e?.action ?? "Update") === "Cancel" ? (await a(u).toBeEnabled(), await u.click()) : (await a(h).toBeEnabled(), await h.click()), await a(o).not.toBeVisible();
731
+ const r = o.getByPlaceholder("8.8.8.8 1.1.1.1"), l = r.nth(0), c = r.nth(1), u = o.getByRole("button", { name: "Cancel", exact: !0 }), h = o.getByRole("button", { name: "Update", exact: !0 });
732
+ e?.dnsServersToAdd !== void 0 && (await l.clear(), await a(l).toHaveValue(""), await l.fill(e.dnsServersToAdd), await a(l).toHaveValue(e.dnsServersToAdd)), e?.dnsServersToRemove !== void 0 && (await c.clear(), await a(c).toHaveValue(""), await c.fill(e.dnsServersToRemove), await a(c).toHaveValue(e.dnsServersToRemove)), (e?.action ?? "Update") === "Cancel" ? (await a(u).toBeEnabled(), await u.click()) : (await a(h).toBeEnabled(), await h.click()), await a(o).not.toBeVisible();
771
733
  });
772
734
  }
773
735
  async function ia(i, t) {
774
736
  return s.step("Delete Podman machine", async () => {
775
737
  const e = "podman", n = new d(i), o = await n.openDashboard();
776
738
  await a(o.heading).toBeVisible();
777
- const c = await (await n.openSettings()).openTabPage(L);
778
- await a(c.heading).toBeVisible({ timeout: 1e4 }), await a.poll(async () => await c.resourceCardIsVisible(e), { timeout: 15e3 }).toBeTruthy();
779
- const l = new J(i, e, t);
780
- if (await a(l.providerConnections).toBeVisible({ timeout: 1e4 }), !await b(async () => await l.resourceElement.isVisible(), {
739
+ const l = await (await n.openSettings()).openTabPage(E);
740
+ await a(l.heading).toBeVisible({ timeout: 1e4 }), await a.poll(async () => await l.resourceCardIsVisible(e), { timeout: 15e3 }).toBeTruthy();
741
+ const c = new Y(i, e, t);
742
+ if (await a(c.providerConnections).toBeVisible({ timeout: 1e4 }), !await y(async () => await c.resourceElement.isVisible(), {
781
743
  timeout: 3e4
782
744
  }).then(() => !0).catch(() => !1)) {
783
745
  console.log(`Podman machine [${t}] not present, skipping deletion.`);
784
746
  return;
785
747
  }
786
- await a(l.resourceElementConnectionActions).toBeVisible(), await a(l.resourceElementConnectionStatus).toBeVisible(), await Zt(l, t), await l.performConnectionAction(k.Delete), await a(l.resourceElement).toBeHidden({ timeout: 6e4 });
748
+ await a(c.resourceElementConnectionActions).toBeVisible(), await a(c.resourceElementConnectionStatus).toBeVisible(), await Zt(c, t), await c.performConnectionAction(f.Delete), await a(c.resourceElement).toBeHidden({ timeout: 6e4 });
787
749
  });
788
750
  }
789
751
  async function Zt(i, t) {
790
752
  const e = await i.resourceElementConnectionStatus.innerText();
791
- if (e === C.Off) {
753
+ if (e === v.Off) {
792
754
  console.log("Podman machine already stopped");
793
755
  return;
794
756
  }
795
- if (e === C.Starting) {
796
- console.log("Podman machine is starting, will stop via CLI"), await mt(t), await Z(i);
757
+ if (e === v.Starting) {
758
+ console.log("Podman machine is starting, will stop via CLI"), await ct(t), await Q(i);
797
759
  return;
798
760
  }
799
- if (e === C.Running)
761
+ if (e === v.Running)
800
762
  try {
801
- await i.performConnectionAction(k.Stop), await Z(i);
763
+ await i.performConnectionAction(f.Stop), await Q(i);
802
764
  } catch (n) {
803
- console.log("Podman machine stop via UI failed, trying CLI:", n instanceof Error ? n.message : String(n)), await mt(t), await Z(i);
765
+ console.log(
766
+ "Podman machine stop via UI failed, trying CLI:",
767
+ n instanceof Error ? n.message : String(n)
768
+ ), await ct(t), await Q(i);
804
769
  }
805
770
  }
806
- async function mt(i) {
807
- f(`podman machine stop ${i}`), console.log(`Podman machine stopped via CLI: ${i}`);
771
+ async function ct(i) {
772
+ x(`podman machine stop ${i}`), console.log(`Podman machine stopped via CLI: ${i}`);
808
773
  }
809
- async function Z(i) {
810
- await a(i.resourceElementConnectionStatus).toHaveText(C.Off, {
774
+ async function Q(i) {
775
+ await a(i.resourceElementConnectionStatus).toHaveText(v.Off, {
811
776
  timeout: 3e4
812
777
  });
813
778
  }
814
- async function ot(i, t) {
779
+ async function nt(i, t) {
815
780
  return s.step("Get volume name for container", async () => {
816
781
  let e, n;
817
782
  try {
818
783
  const r = await new d(i).openVolumes();
819
784
  await a(r.heading).toBeVisible({ timeout: 1e4 });
820
- const c = await r.getAllTableRows();
821
- for (let l = c.length - 1; l > 0; l--)
822
- if (e = await c[l].getByRole("cell").nth(3).getByRole("button").textContent(), e) {
785
+ const l = await r.getAllTableRows();
786
+ for (let c = l.length - 1; c > 0; c--)
787
+ if (e = await l[c].getByRole("cell").nth(3).getByRole("button").textContent(), e) {
823
788
  const u = await r.openVolumeDetails(e);
824
- await u.activateTab(kt.SUMMARY_TAB), n = await u.tabContent.allTextContents();
789
+ await u.activateTab(yt.SUMMARY_TAB), n = await u.tabContent.allTextContents();
825
790
  for (const h of n)
826
791
  if (h.includes(t))
827
792
  return await u.backLink.click(), e;
@@ -841,18 +806,17 @@ async function oa(i, t, e = 6e4) {
841
806
  await a(n.toolsTable).toBeVisible({ timeout: 1e4 }), await a.poll(async () => await n.toolsTable.count()).toBeGreaterThan(0), await a(n.getToolRow(t)).toBeVisible({ timeout: 1e4 }), await n.getCurrentToolVersion(t) || await n.installTool(t, e), await a.poll(async () => await n.getCurrentToolVersion(t), { timeout: e }).toBeTruthy();
842
807
  });
843
808
  }
844
- async function pt() {
809
+ async function ut() {
845
810
  return s.step("Create Podman machine from CLI", async () => {
846
- if (j)
847
- return;
811
+ if (W) return;
848
812
  const i = process.env.PODMAN_ROOTFUL === "0" ? "" : "--rootful", t = process.env.PODMAN_NETWORKING === "1" ? "--user-networking" : "";
849
813
  try {
850
- f(`podman machine init ${i} ${t}`);
814
+ x(`podman machine init ${i} ${t}`);
851
815
  } catch (e) {
852
816
  e instanceof Error && e.message.includes("VM already exists") && console.log("Podman machine already exists, skipping creation.");
853
817
  }
854
818
  try {
855
- f("podman machine start"), console.log("Default podman machine started");
819
+ x("podman machine start"), console.log("Default podman machine started");
856
820
  } catch (e) {
857
821
  e instanceof Error && e.message.includes("already running") && console.log("Default podman machine already started, skipping start.");
858
822
  }
@@ -861,7 +825,7 @@ async function pt() {
861
825
  async function sa(i) {
862
826
  return s.step("Delete Podman machine from CLI", () => {
863
827
  try {
864
- f(`podman machine rm ${i} -f`);
828
+ x(`podman machine rm ${i} -f`);
865
829
  } catch (t) {
866
830
  t instanceof Error && t.message.includes("VM does not exist") && console.log(`Podman machine [${i}] does not exist, skipping deletion.`);
867
831
  }
@@ -869,7 +833,7 @@ async function sa(i) {
869
833
  }
870
834
  async function te() {
871
835
  return s.step("Reset Podman machine from CLI", () => {
872
- f("podman machine reset -f");
836
+ x("podman machine reset -f");
873
837
  });
874
838
  }
875
839
  async function U(i, t) {
@@ -880,36 +844,36 @@ async function U(i, t) {
880
844
  async function ra(i) {
881
845
  return s.step("Run Compose up from CLI", async () => {
882
846
  try {
883
- f(`podman compose -f ${i} up -d`);
847
+ x(`podman compose -f ${i} up -d`);
884
848
  } catch (t) {
885
849
  throw new Error(`Error running podman compose up from CLI: ${t}`);
886
850
  }
887
851
  });
888
852
  }
889
- async function ca(i, t = "") {
853
+ async function la(i, t = "") {
890
854
  return s.step("Untag images from Podman", async () => {
891
855
  try {
892
- t ? f(`podman untag ${i}:${t}`) : f(`podman untag ${i}`);
856
+ t ? x(`podman untag ${i}:${t}`) : x(`podman untag ${i}`);
893
857
  } catch (e) {
894
858
  throw new Error(`Error untagging images from Podman: ${e}`);
895
859
  }
896
860
  });
897
861
  }
898
- async function la(i, t) {
899
- const e = new it(i);
862
+ async function ca(i, t) {
863
+ const e = new at(i);
900
864
  await e.preferencesTab.isHidden() && await new d(i).openSettings(), await e.expandPreferencesTab();
901
865
  const n = e.getLinkLocatorByHref("/preferences/default/preferences.dockerCompatibility");
902
866
  await a(n).toBeVisible(), await n.click();
903
- const o = new zt(i);
867
+ const o = new Qt(i);
904
868
  await a(o.heading).toBeVisible();
905
869
  const r = o.content.getByText("Docker Compatibility", { exact: !0 });
906
870
  await a(r).toBeVisible();
907
- const c = o.content.getByRole("checkbox", {
871
+ const l = o.content.getByRole("checkbox", {
908
872
  name: "Enable the section for Docker compatibility."
909
873
  });
910
- if (await a(c).toBeVisible(), await c.isChecked() !== t) {
911
- await c.locator("..").setChecked(t);
912
- const h = await c.isChecked();
874
+ if (await a(l).toBeVisible(), await l.isChecked() !== t) {
875
+ await l.locator("..").setChecked(t);
876
+ const h = await l.isChecked();
913
877
  a(h).toEqual(t);
914
878
  }
915
879
  const u = e.getLinkLocatorByHref("/preferences/docker-compatibility");
@@ -917,16 +881,16 @@ async function la(i, t) {
917
881
  }
918
882
  async function ua(i, t, e) {
919
883
  await t.openSettings();
920
- const o = await new it(i).openTabPage(Jt);
884
+ const o = await new at(i).openTabPage(Jt);
921
885
  await o.setExperimentalCheckbox(o.statusBarProvidersCheckbox, e);
922
886
  }
923
887
  function ee() {
924
888
  try {
925
889
  let i;
926
890
  if (F || O)
927
- i = f("podman machine ssh podman info --format json").toString();
928
- else if (j)
929
- i = f("podman info --format json").toString();
891
+ i = x("podman machine ssh podman info --format json").toString();
892
+ else if (W)
893
+ i = x("podman info --format json").toString();
930
894
  else
931
895
  throw new Error("Unsupported platform");
932
896
  return JSON.parse(i)?.host?.security?.rootless === !0;
@@ -938,7 +902,7 @@ function ae(i, t) {
938
902
  const e = `${i}/_data/${t}`, n = ee();
939
903
  if (F || O)
940
904
  return `${n ? ".local/share/containers/storage/volumes" : "/var/lib/containers/storage/volumes"}/${e}`;
941
- if (j)
905
+ if (W)
942
906
  return `${n ? `${M.homedir()}/.local/share/containers/storage/volumes` : "/var/lib/containers/storage/volumes"}/${e}`;
943
907
  throw new Error("Unsupported platform");
944
908
  }
@@ -946,7 +910,7 @@ async function ha(i, t) {
946
910
  return s.step("Read file in volume from CLI", async () => {
947
911
  try {
948
912
  const e = ae(i, t), n = F || O ? `podman machine ssh sudo cat ${e}` : `cat ${e}`;
949
- return f(n).toString();
913
+ return x(n).toString();
950
914
  } catch (e) {
951
915
  throw new Error(`Error reading file: ${t} in volume: ${i} from CLI: ${e}`);
952
916
  }
@@ -958,18 +922,18 @@ async function ga(i, t) {
958
922
  const e = await i.connectionType.textContent();
959
923
  if (!e)
960
924
  throw new Error("Connection type text is empty");
961
- const n = xt(t, e);
925
+ const n = mt(t, e);
962
926
  a(n).toBeTruthy();
963
927
  });
964
928
  }
965
929
  async function da(i, t) {
966
- return s.step(`Verify Podman Machine Privileges are ${t === et.Rootful ? "rootful" : "rootless"}`, async () => {
930
+ return s.step(`Verify Podman Machine Privileges are ${t === pt.Rootful ? "rootful" : "rootless"}`, async () => {
967
931
  await a.poll(async () => await i.doesResourceElementExist(), { timeout: 15e3 }).toBeTruthy(), await a(i.machinePrivileges).toContainText(t, {
968
932
  ignoreCase: !0
969
933
  });
970
934
  });
971
935
  }
972
- function Bt(i) {
936
+ function ht(i) {
973
937
  return i.split(".").map((t) => Number.parseInt(t, 10));
974
938
  }
975
939
  function ne(i, t) {
@@ -986,7 +950,7 @@ function ne(i, t) {
986
950
  }
987
951
  function ie() {
988
952
  try {
989
- const i = f("podman -v").toString().trim(), e = /podman version (\d+(?:\.\d+)*)/i.exec(i);
953
+ const i = x("podman -v").toString().trim(), e = /podman version (\d+(?:\.\d+)*)/i.exec(i);
990
954
  if (!e?.[1])
991
955
  throw new Error(`Unable to parse Podman version from output: ${i}`);
992
956
  return e[1];
@@ -996,17 +960,14 @@ function ie() {
996
960
  }
997
961
  function wa(i) {
998
962
  try {
999
- const t = ie(), e = Bt(t), n = Bt(i);
963
+ const t = ie(), e = ht(t), n = ht(i);
1000
964
  return ne(e, n);
1001
965
  } catch {
1002
966
  return !1;
1003
967
  }
1004
968
  }
1005
- var V;
1006
- (function(i) {
1007
- i.Default = "default", i.AMD64 = "amd64", i.ARM64 = "arm64";
1008
- })(V || (V = {}));
1009
- class oe extends m {
969
+ var N = /* @__PURE__ */ ((i) => (i.Default = "default", i.AMD64 = "amd64", i.ARM64 = "arm64", i))(N || {});
970
+ class oe extends w {
1010
971
  name;
1011
972
  cancelButton;
1012
973
  saveButton;
@@ -1027,11 +988,11 @@ class oe extends m {
1027
988
  return s.step("Rename image", async () => {
1028
989
  if (!t)
1029
990
  throw Error("Provide name is invalid!");
1030
- return await a(this.saveButton).toBeVisible(), await this.imageName.clear(), await this.imageName.fill(t), e && (await this.imageTag.clear(), await this.imageTag.fill(e)), await a.poll(async () => this.alertDialog.count()).toBe(0), await a(this.saveButton).toBeEnabled(), await this.saveButton.click(), new E(this.page);
991
+ return await a(this.saveButton).toBeVisible(), await this.imageName.clear(), await this.imageName.fill(t), e && (await this.imageTag.clear(), await this.imageTag.fill(e)), await a.poll(async () => this.alertDialog.count()).toBe(0), await a(this.saveButton).toBeEnabled(), await this.saveButton.click(), new L(this.page);
1031
992
  });
1032
993
  }
1033
994
  }
1034
- class se extends m {
995
+ class se extends w {
1035
996
  content;
1036
997
  podName;
1037
998
  kubernetesContext;
@@ -1063,14 +1024,21 @@ class se extends m {
1063
1024
  name: "Pod Deployment Status Info"
1064
1025
  });
1065
1026
  }
1066
- async deployPod(t, { useKubernetesServices: e, useRestrictedSecurityContext: n, useKubernetesIngress: o, containerExposedPort: r, isOpenShiftCluster: c, useOpenShiftRoutes: l }, u, h = "default", x = 1e5) {
1027
+ async deployPod(t, {
1028
+ useKubernetesServices: e,
1029
+ useRestrictedSecurityContext: n,
1030
+ useKubernetesIngress: o,
1031
+ containerExposedPort: r,
1032
+ isOpenShiftCluster: l,
1033
+ useOpenShiftRoutes: c
1034
+ }, u, h = "default", b = 1e5) {
1067
1035
  return s.step(`Deploy pod ${t}`, async () => {
1068
- if (await a(this.podName).toBeVisible(), await this.podName.clear(), await this.podName.fill(t), await a(this.servicesCheckbox).toBeEnabled(), e ? (await this.servicesCheckbox.check(), await a(this.servicesCheckbox).toBeChecked()) : (await this.servicesCheckbox.uncheck(), await a(this.servicesCheckbox).not.toBeChecked()), await a(this.restrictedContextCheckbox).toBeEnabled(), n ? (await this.restrictedContextCheckbox.check(), await a(this.restrictedContextCheckbox).toBeChecked()) : (await this.restrictedContextCheckbox.uncheck(), await a(this.restrictedContextCheckbox).not.toBeChecked()), c ? (await a(this.createOpenShiftRoutesCheckbox).toBeEnabled(), l ? (await this.createOpenShiftRoutesCheckbox.check(), await a(this.createOpenShiftRoutesCheckbox).toBeChecked()) : (await this.createOpenShiftRoutesCheckbox.uncheck(), await a(this.createOpenShiftRoutesCheckbox).not.toBeChecked())) : (await a(this.createIngressCheckbox).toBeEnabled(), o ? (await this.createIngressCheckbox.check(), await a(this.createIngressCheckbox).toBeChecked(), r && await this.selectExposedPort(r)) : (await this.createIngressCheckbox.uncheck(), await a(this.createIngressCheckbox).not.toBeChecked())), await this.kubernetesContext.scrollIntoViewIfNeeded(), await a(this.kubernetesContext).toHaveValue(u), await a(this.namespaceCombobox).toBeVisible(), await this.namespaceCombobox.inputValue() !== h) {
1036
+ if (await a(this.podName).toBeVisible(), await this.podName.clear(), await this.podName.fill(t), await a(this.servicesCheckbox).toBeEnabled(), e ? (await this.servicesCheckbox.check(), await a(this.servicesCheckbox).toBeChecked()) : (await this.servicesCheckbox.uncheck(), await a(this.servicesCheckbox).not.toBeChecked()), await a(this.restrictedContextCheckbox).toBeEnabled(), n ? (await this.restrictedContextCheckbox.check(), await a(this.restrictedContextCheckbox).toBeChecked()) : (await this.restrictedContextCheckbox.uncheck(), await a(this.restrictedContextCheckbox).not.toBeChecked()), l ? (await a(this.createOpenShiftRoutesCheckbox).toBeEnabled(), c ? (await this.createOpenShiftRoutesCheckbox.check(), await a(this.createOpenShiftRoutesCheckbox).toBeChecked()) : (await this.createOpenShiftRoutesCheckbox.uncheck(), await a(this.createOpenShiftRoutesCheckbox).not.toBeChecked())) : (await a(this.createIngressCheckbox).toBeEnabled(), o ? (await this.createIngressCheckbox.check(), await a(this.createIngressCheckbox).toBeChecked(), r && await this.selectExposedPort(r)) : (await this.createIngressCheckbox.uncheck(), await a(this.createIngressCheckbox).not.toBeChecked())), await this.kubernetesContext.scrollIntoViewIfNeeded(), await a(this.kubernetesContext).toHaveValue(u), await a(this.namespaceCombobox).toBeVisible(), await this.namespaceCombobox.inputValue() !== h) {
1069
1037
  if (!(await this.namespaceCombobox.locator("option").allInnerTexts()).includes(h))
1070
1038
  throw new Error(`${h} doesn't exist`);
1071
1039
  await this.namespaceCombobox.selectOption({ value: h }), await a(this.namespaceCombobox).toHaveValue(h);
1072
1040
  }
1073
- await a(this.deployButton).toBeEnabled(), await this.deployButton.click(), await a(this.deploymentStatus).toBeVisible({ timeout: 3e4 }), await this.deploymentStatus.scrollIntoViewIfNeeded(), await a(this.doneButton).toBeVisible({ timeout: x });
1041
+ await a(this.deployButton).toBeEnabled(), await this.deployButton.click(), await a(this.deploymentStatus).toBeVisible({ timeout: 3e4 }), await this.deploymentStatus.scrollIntoViewIfNeeded(), await a(this.doneButton).toBeVisible({ timeout: b });
1074
1042
  });
1075
1043
  }
1076
1044
  async selectExposedPort(t) {
@@ -1083,7 +1051,7 @@ class se extends m {
1083
1051
  });
1084
1052
  }
1085
1053
  }
1086
- class R extends S {
1054
+ class k extends S {
1087
1055
  stopButton;
1088
1056
  deleteButton;
1089
1057
  imageLink;
@@ -1110,10 +1078,9 @@ class R extends S {
1110
1078
  async getState() {
1111
1079
  return s.step("Get container state", async () => {
1112
1080
  const t = await this.header.getByRole("status").getAttribute("title");
1113
- for (const e of Object.values(D))
1114
- if (t === e)
1115
- return e;
1116
- return D.Unknown;
1081
+ for (const e of Object.values($))
1082
+ if (t === e) return e;
1083
+ return $.Unknown;
1117
1084
  });
1118
1085
  }
1119
1086
  async stopContainer() {
@@ -1122,11 +1089,11 @@ class R extends S {
1122
1089
  });
1123
1090
  }
1124
1091
  async deleteContainer() {
1125
- return s.step("Delete container", async () => (await a(this.deleteButton).toBeEnabled(), await this.deleteButton.click(), await g(this.page), new N(this.page)));
1092
+ return s.step("Delete container", async () => (await a(this.deleteButton).toBeEnabled(), await this.deleteButton.click(), await g(this.page), new V(this.page)));
1126
1093
  }
1127
1094
  async getContainerPort() {
1128
1095
  return s.step("Get container port", async () => {
1129
- await this.activateTab(R.SUMMARY_TAB);
1096
+ await this.activateTab(k.SUMMARY_TAB);
1130
1097
  const n = this.tabContent.getByRole("table").locator('tr:has-text("Ports")').getByRole("cell").nth(1);
1131
1098
  return await a(n).toBeVisible(), await n.innerText();
1132
1099
  });
@@ -1135,23 +1102,23 @@ class R extends S {
1135
1102
  return s.step("Open Deploy to Kubernetes page", async () => (await a(this.deployButton).toBeVisible(), await this.deployButton.click(), new se(this.page)));
1136
1103
  }
1137
1104
  async executeCommandInTerminal(t) {
1138
- await this.activateTab(R.TERMINAL_TAB), await a(this.terminalInput).toBeVisible(), await this.page.waitForTimeout(500), await this.terminalInput.pressSequentially(t, { delay: 10 }), await this.terminalInput.press("Enter");
1105
+ await this.activateTab(k.TERMINAL_TAB), await a(this.terminalInput).toBeVisible(), await this.page.waitForTimeout(500), await this.terminalInput.pressSequentially(t, { delay: 10 }), await this.terminalInput.press("Enter");
1139
1106
  }
1140
1107
  async executeCommandInTty(t) {
1141
1108
  return s.step("Execute command in TTY terminal", async () => {
1142
- await this.activateTab(R.Tty_TAB), await this.terminalInput.pressSequentially(t, { delay: 10 }), await this.terminalInput.press("Enter");
1109
+ await this.activateTab(k.Tty_TAB), await this.terminalInput.pressSequentially(t, { delay: 10 }), await this.terminalInput.press("Enter");
1143
1110
  });
1144
1111
  }
1145
1112
  async findInLogs(t) {
1146
1113
  return s.step("Find text in logs", async () => {
1147
- await this.activateTab(R.LOGS_TAB), await a(this.findInLogsInput).toBeVisible(), await this.findInLogsInput.clear(), await a(this.findInLogsInput).toHaveValue(""), await this.findInLogsInput.fill(t), await a(this.findInLogsInput).toHaveValue(t);
1114
+ await this.activateTab(k.LOGS_TAB), await a(this.findInLogsInput).toBeVisible(), await this.findInLogsInput.clear(), await a(this.findInLogsInput).toHaveValue(""), await this.findInLogsInput.fill(t), await a(this.findInLogsInput).toHaveValue(t);
1148
1115
  });
1149
1116
  }
1150
1117
  async getCountOfSearchResults() {
1151
- return s.step("Get count of search results", async () => (await this.activateTab(R.LOGS_TAB), await a(this.findInLogsInput).toBeVisible(), await this.searchResults.count()));
1118
+ return s.step("Get count of search results", async () => (await this.activateTab(k.LOGS_TAB), await a(this.findInLogsInput).toBeVisible(), await this.searchResults.count()));
1152
1119
  }
1153
1120
  }
1154
- class Ct extends m {
1121
+ class xt extends w {
1155
1122
  name;
1156
1123
  heading;
1157
1124
  closeLink;
@@ -1197,7 +1164,7 @@ class Ct extends m {
1197
1164
  const e = this.page.getByLabel("name").and(this.page.getByText("Container Details"));
1198
1165
  await a(e).toBeVisible();
1199
1166
  const n = this.page.getByRole("heading"), o = t || await n.innerText();
1200
- return console.log(`Heading and container name: ${await n.innerText()}`), new R(this.page, o);
1167
+ return console.log(`Heading and container name: ${await n.innerText()}`), new k(this.page, o);
1201
1168
  });
1202
1169
  }
1203
1170
  async startContainer(t = "", e) {
@@ -1220,11 +1187,14 @@ class Ct extends m {
1220
1187
  checked: e.interactive
1221
1188
  });
1222
1189
  }
1223
- if (await this.activateTab("Basic"), await a(this.startContainerButton).toBeEnabled(), await this.startContainerButton.click(), await T(async () => await this.name.isVisible(), { sendError: !1 }), await this.errorAlert.count() > 0) {
1190
+ if (await this.activateTab("Basic"), await a(this.startContainerButton).toBeEnabled(), await this.startContainerButton.click(), await T(
1191
+ async () => await this.name.isVisible(),
1192
+ { sendError: !1 }
1193
+ ), await this.errorAlert.count() > 0) {
1224
1194
  const r = await this.name.isVisible() ? "threw an " : "redirected to another page with an ";
1225
1195
  throw Error(`Starting the container ${r} error: ${await this.errorAlert.innerText()}`);
1226
1196
  }
1227
- return new N(this.page);
1197
+ return new V(this.page);
1228
1198
  });
1229
1199
  }
1230
1200
  async setCustomPortMapping(t) {
@@ -1265,13 +1235,13 @@ class re extends S {
1265
1235
  }), this.saveImageInput = t.locator("#input-output-directory"), this.confirmSaveImages = t.getByLabel("Save images", { exact: !0 }), this.browseButton = t.getByLabel("Select output folder");
1266
1236
  }
1267
1237
  async openRunImage() {
1268
- return s.step("Open run image page", async () => (await a(this.runImageButton).toBeEnabled({ timeout: 3e4 }), await this.runImageButton.click(), new Ct(this.page, this.resourceName)));
1238
+ return s.step("Open run image page", async () => (await a(this.runImageButton).toBeEnabled({ timeout: 3e4 }), await this.runImageButton.click(), new xt(this.page, this.resourceName)));
1269
1239
  }
1270
1240
  async openEditImage() {
1271
1241
  return s.step("Open edit image page", async () => (await a(this.editButton).toBeEnabled({ timeout: 3e4 }), await this.editButton.click(), new oe(this.page, this.resourceName)));
1272
1242
  }
1273
1243
  async deleteImage() {
1274
- return s.step("Delete image", async () => (await a(this.deleteButton).toBeEnabled({ timeout: 3e4 }), await this.deleteButton.click(), await g(this.page), new E(this.page)));
1244
+ return s.step("Delete image", async () => (await a(this.deleteButton).toBeEnabled({ timeout: 3e4 }), await this.deleteButton.click(), await g(this.page), new L(this.page)));
1275
1245
  }
1276
1246
  async pushImage() {
1277
1247
  return s.step("Push image", async () => {
@@ -1281,7 +1251,7 @@ class re extends S {
1281
1251
  async saveImage(t) {
1282
1252
  if (!t)
1283
1253
  throw Error("Path is incorrect or not provided!");
1284
- return await a(this.saveImagebutton).toBeEnabled(), await this.saveImagebutton.click(), await a(this.saveImageInput).toBeVisible(), await a(this.confirmSaveImages).toBeVisible(), await this.saveImageInput.evaluate((e) => e.removeAttribute("readonly")), await this.confirmSaveImages.evaluate((e) => e.removeAttribute("disabled")), await this.saveImageInput.pressSequentially(t, { delay: 10 }), await this.confirmSaveImages.click(), new E(this.page);
1254
+ return await a(this.saveImagebutton).toBeEnabled(), await this.saveImagebutton.click(), await a(this.saveImageInput).toBeVisible(), await a(this.confirmSaveImages).toBeVisible(), await this.saveImageInput.evaluate((e) => e.removeAttribute("readonly")), await this.confirmSaveImages.evaluate((e) => e.removeAttribute("disabled")), await this.saveImageInput.pressSequentially(t, { delay: 10 }), await this.confirmSaveImages.click(), new L(this.page);
1285
1255
  }
1286
1256
  async pushImageToKindCluster() {
1287
1257
  const t = this.controlActions.getByRole("button", { name: "kebab menu", exact: !0 });
@@ -1290,7 +1260,7 @@ class re extends S {
1290
1260
  await t.count() > 0 ? (await t.click(), e = this.controlActions.getByTitle("Drop Down Menu Items").getByTitle(n)) : e = this.controlActions.getByRole("button", { name: n }), await a(e).toBeVisible(), await e.click(), await g(this.page, "Kind", !0, "OK", "", 8e4);
1291
1261
  }
1292
1262
  }
1293
- class ce extends m {
1263
+ class le extends w {
1294
1264
  heading;
1295
1265
  pullImageButton;
1296
1266
  closeLink;
@@ -1315,12 +1285,17 @@ class ce extends m {
1315
1285
  async pullImage(t, e = "", n = 6e4) {
1316
1286
  return s.step(`Pulling image ${t}:${e}`, async () => {
1317
1287
  const o = `${t}${e.length === 0 ? "" : ":" + e}`;
1318
- return await this.imageNameInput.fill(o), await a(this.pullImageButton).toBeEnabled(), await this.pullImageButton.click(), await a(this.doneButton).toBeEnabled({ timeout: n }), await this.doneButton.click(), new E(this.page);
1288
+ return await this.imageNameInput.fill(o), await a(this.pullImageButton).toBeEnabled(), await this.pullImageButton.click(), await a(this.doneButton).toBeEnabled({ timeout: n }), await this.doneButton.click(), new L(this.page);
1319
1289
  });
1320
1290
  }
1321
1291
  async getAllSearchResultsFor(t, e, n = "", o = !0) {
1322
1292
  return s.step(`Get all search results for ${t}:${n}`, async () => {
1323
- const r = await this.handleFormAndResultSearchString(t, e, n, o);
1293
+ const r = await this.handleFormAndResultSearchString(
1294
+ t,
1295
+ e,
1296
+ n,
1297
+ o
1298
+ );
1324
1299
  return await this.getAllSearchResultsInstantly(r);
1325
1300
  });
1326
1301
  }
@@ -1356,7 +1331,7 @@ class ce extends m {
1356
1331
  return s.step("Get first search result from the results table", async () => await this.getFirstResultButtonLocator().innerText());
1357
1332
  }
1358
1333
  async pullImageFromSearchResults(t, e = 6e4) {
1359
- return s.step(`Pull image from search results: ${t}`, async () => (await this.selectValueFromSearchResults(t), await a(this.pullImageButton).toBeEnabled(), await this.pullImageButton.click(), await a(this.doneButton).toBeEnabled({ timeout: e }), await this.doneButton.click(), new E(this.page)));
1334
+ return s.step(`Pull image from search results: ${t}`, async () => (await this.selectValueFromSearchResults(t), await a(this.pullImageButton).toBeEnabled(), await this.pullImageButton.click(), await a(this.doneButton).toBeEnabled({ timeout: e }), await this.doneButton.click(), new L(this.page)));
1360
1335
  }
1361
1336
  async selectValueFromSearchResults(t) {
1362
1337
  return s.step(`Select value from search results: ${t}`, async () => {
@@ -1388,7 +1363,7 @@ class ce extends m {
1388
1363
  });
1389
1364
  }
1390
1365
  }
1391
- class E extends A {
1366
+ class L extends A {
1392
1367
  pullImageButton;
1393
1368
  pruneImagesButton;
1394
1369
  buildImageButton;
@@ -1405,7 +1380,7 @@ class E extends A {
1405
1380
  return s.step("Open pull image page", async () => (await T(() => this.noContainerEngine(), {
1406
1381
  timeout: 5e4,
1407
1382
  message: "No Container Engine is available, cannot pull an image"
1408
- }), await this.pullImageButton.click(), new ce(this.page)));
1383
+ }), await this.pullImageButton.click(), new le(this.page)));
1409
1384
  }
1410
1385
  async pullImage(t) {
1411
1386
  return s.step(`Pull image: ${t}`, async () => {
@@ -1437,7 +1412,7 @@ class E extends A {
1437
1412
  return s.step("Prune untagged images", async () => (await this.pruneImagesButton.click(), await g(this.page, "Prune", !0, "All untagged images"), this));
1438
1413
  }
1439
1414
  async openBuildImage() {
1440
- return s.step("Open build image page", async () => (await this.buildImageButton.click(), new vt(this.page)));
1415
+ return s.step("Open build image page", async () => (await this.buildImageButton.click(), new ft(this.page)));
1441
1416
  }
1442
1417
  async getImageRowByName(t) {
1443
1418
  return this.getRowByName(t);
@@ -1446,7 +1421,7 @@ class E extends A {
1446
1421
  return s.step(`Check if image: ${t} exists`, async () => await this.getImageRowByName(t) !== void 0);
1447
1422
  }
1448
1423
  async waitForImageExists(t, e = 5e3) {
1449
- return s.step(`Wait for image: ${t} to exist`, async () => (await b(async () => await this.imageExists(t), { timeout: e }), !0));
1424
+ return s.step(`Wait for image: ${t} to exist`, async () => (await y(async () => await this.imageExists(t), { timeout: e }), !0));
1450
1425
  }
1451
1426
  async waitForImageDelete(t, e = 5e3) {
1452
1427
  return s.step(`Wait for image: ${t} to be deleted`, async () => (await T(async () => await this.imageExists(t), { timeout: e }), !0));
@@ -1455,8 +1430,7 @@ class E extends A {
1455
1430
  return s.step(`Get current status of image: ${t}`, async () => {
1456
1431
  let e = "";
1457
1432
  const n = await this.getImageRowByName(t);
1458
- if (n === void 0)
1459
- throw new Error(`Image: '${t}' does not exist`);
1433
+ if (n === void 0) throw new Error(`Image: '${t}' does not exist`);
1460
1434
  return e = e + await n.getByRole("status").getAttribute("title"), e;
1461
1435
  });
1462
1436
  }
@@ -1479,8 +1453,7 @@ class E extends A {
1479
1453
  return s.step(`Get count from ${this.title} for images with status: ${t}`, async () => {
1480
1454
  const e = await this.getAllTableRows();
1481
1455
  let n = 0;
1482
- if (e.length < 2)
1483
- return 0;
1456
+ if (e.length < 2) return 0;
1484
1457
  for (let o = 1; o < e.length; o++)
1485
1458
  await e[o].getByRole("status").getByTitle(t, { exact: !0 }).count() > 0 && ++n;
1486
1459
  return n;
@@ -1529,7 +1502,7 @@ class E extends A {
1529
1502
  });
1530
1503
  }
1531
1504
  }
1532
- class vt extends m {
1505
+ class ft extends w {
1533
1506
  heading;
1534
1507
  containerFilePathInput;
1535
1508
  buildContextDirectoryInput;
@@ -1553,10 +1526,10 @@ class vt extends m {
1553
1526
  name: "Build Platform Options"
1554
1527
  }), this.arm64Button = this.platformRegion.getByLabel("linux/arm64"), this.amd64Button = this.platformRegion.getByLabel("linux/amd64"), this.arm64checkbox = this.platformRegion.getByLabel("ARM® aarch64 systems"), this.amd64checkbox = this.platformRegion.getByLabel("Intel and AMD x86_64 systems"), this.archMoreOptionsButton = this.platformRegion.getByRole("button", { name: "Show more options" }), this.archLessOptionsButton = this.platformRegion.getByRole("button", { name: "Show less options" }), this.terminalContent = t.locator(".xterm-rows");
1555
1528
  }
1556
- async buildImage(t, e, n, o = [V.Default], r = 12e4) {
1557
- return s.step(`Building image ${t} from ${e} in ${n} with ${o} architecture`, async () => (await this.fillBuildImageForm(t, e, n, o), await a(this.doneButton).toBeEnabled({ timeout: r }), await this.validateBuildLogs(), await this.doneButton.scrollIntoViewIfNeeded(), await this.doneButton.click(), console.log(`Image ${t} has been built successfully!`), new E(this.page)));
1529
+ async buildImage(t, e, n, o = [N.Default], r = 12e4) {
1530
+ return s.step(`Building image ${t} from ${e} in ${n} with ${o} architecture`, async () => (await this.fillBuildImageForm(t, e, n, o), await a(this.doneButton).toBeEnabled({ timeout: r }), await this.validateBuildLogs(), await this.doneButton.scrollIntoViewIfNeeded(), await this.doneButton.click(), console.log(`Image ${t} has been built successfully!`), new L(this.page)));
1558
1531
  }
1559
- async cancelBuild(t, e, n, o = [V.Default], r = 200) {
1532
+ async cancelBuild(t, e, n, o = [N.Default], r = 200) {
1560
1533
  return s.step(`Starting and canceling build for image ${t}`, async () => {
1561
1534
  await this.fillBuildImageForm(t, e, n, o), await a(this.cancelBuildButton).toBeEnabled(), await this.cancelBuildButton.scrollIntoViewIfNeeded(), await this.page.waitForTimeout(r), await a(this.cancelBuildButton).toBeVisible(), await this.cancelBuildButton.click(), await a(this.doneButton).toBeEnabled({ timeout: 3e4 });
1562
1535
  });
@@ -1587,7 +1560,7 @@ class vt extends m {
1587
1560
  }
1588
1561
  async uncheckDefaultCheckbox() {
1589
1562
  return s.step("Uncheck default checkbox", async () => {
1590
- Yt === "arm64" ? (await a(this.arm64checkbox).toBeChecked(), await this.arm64Button.click(), await a(this.arm64checkbox).not.toBeChecked()) : (await a(this.amd64checkbox).toBeChecked(), await this.amd64Button.click(), await a(this.amd64checkbox).not.toBeChecked());
1563
+ Ht === "arm64" ? (await a(this.arm64checkbox).toBeChecked(), await this.arm64Button.click(), await a(this.arm64checkbox).not.toBeChecked()) : (await a(this.amd64checkbox).toBeChecked(), await this.amd64Button.click(), await a(this.amd64checkbox).not.toBeChecked());
1591
1564
  });
1592
1565
  }
1593
1566
  async showAllArchOptions() {
@@ -1597,14 +1570,16 @@ class vt extends m {
1597
1570
  const t = this.page.locator(".xterm-rows");
1598
1571
  await a(t).toBeVisible();
1599
1572
  const e = await t.locator("div:has(span)").all();
1600
- await Promise.all(e.map(async (n) => {
1601
- await a.poll(async () => n.textContent()).not.toContain("Error");
1602
- }));
1573
+ await Promise.all(
1574
+ e.map(async (n) => {
1575
+ await a.poll(async () => n.textContent()).not.toContain("Error");
1576
+ })
1577
+ );
1603
1578
  }
1604
- async fillBuildImageForm(t, e, n, o = [V.Default]) {
1579
+ async fillBuildImageForm(t, e, n, o = [N.Default]) {
1605
1580
  if (!e)
1606
1581
  throw Error("Path to containerfile is incorrect or not provided!");
1607
- if (await this.containerFilePathInput.fill(e), n && await this.buildContextDirectoryInput.fill(n), t && (await this.imageNameInput.clear(), await this.imageNameInput.pressSequentially(t, { delay: 50 })), !o.includes(V.Default)) {
1582
+ if (await this.containerFilePathInput.fill(e), n && await this.buildContextDirectoryInput.fill(n), t && (await this.imageNameInput.clear(), await this.imageNameInput.pressSequentially(t, { delay: 50 })), !o.includes(N.Default)) {
1608
1583
  await this.uncheckDefaultCheckbox(), await this.showAllArchOptions();
1609
1584
  for (const r of o)
1610
1585
  await this.checkArchCheckbox(r);
@@ -1612,7 +1587,7 @@ class vt extends m {
1612
1587
  await a(this.buildButton).toBeEnabled(), await this.buildButton.scrollIntoViewIfNeeded(), await this.buildButton.click();
1613
1588
  }
1614
1589
  }
1615
- class le extends m {
1590
+ class ce extends w {
1616
1591
  heading;
1617
1592
  yamlPathInput;
1618
1593
  playButton;
@@ -1645,10 +1620,10 @@ class le extends m {
1645
1620
  async playYaml(t, e = !1, n = 12e4) {
1646
1621
  return s.step("Podman Kube Play", async () => {
1647
1622
  switch (t.podmanKubePlayOption) {
1648
- case Y.SelectYamlFile:
1623
+ case X.SelectYamlFile:
1649
1624
  await this.selectYamlFile(t.pathToYaml);
1650
1625
  break;
1651
- case Y.CreateYamlFileFromScratch:
1626
+ case X.CreateYamlFileFromScratch:
1652
1627
  await this.createFromScratch(t.jsonResourceDefinition);
1653
1628
  break;
1654
1629
  }
@@ -1656,11 +1631,11 @@ class le extends m {
1656
1631
  const r = await this.alertMessage.textContent();
1657
1632
  throw Error(`Error while playing Kubernetes YAML: ${r}`);
1658
1633
  }
1659
- return await a(this.doneButton).toBeEnabled(), await this.doneButton.click(), new Q(this.page);
1634
+ return await a(this.doneButton).toBeEnabled(), await this.doneButton.click(), new j(this.page);
1660
1635
  });
1661
1636
  }
1662
1637
  }
1663
- class q extends S {
1638
+ class G extends S {
1664
1639
  startButton;
1665
1640
  stopButton;
1666
1641
  restartButton;
@@ -1677,10 +1652,9 @@ class q extends S {
1677
1652
  async getState() {
1678
1653
  return s.step("Get Pod State", async () => {
1679
1654
  const t = await this.header.getByRole("status").getAttribute("title");
1680
- for (const e of Object.values(G))
1681
- if (t === e)
1682
- return e;
1683
- return G.Unknown;
1655
+ for (const e of Object.values(z))
1656
+ if (t === e) return e;
1657
+ return z.Unknown;
1684
1658
  });
1685
1659
  }
1686
1660
  async startPod() {
@@ -1699,18 +1673,18 @@ class q extends S {
1699
1673
  });
1700
1674
  }
1701
1675
  async deletePod() {
1702
- return s.step("Delete Pod", async () => (await a(this.deleteButton).toBeEnabled({ timeout: 1e4 }), await this.deleteButton.click(), await g(this.page), new Q(this.page)));
1676
+ return s.step("Delete Pod", async () => (await a(this.deleteButton).toBeEnabled({ timeout: 1e4 }), await this.deleteButton.click(), await g(this.page), new j(this.page)));
1703
1677
  }
1704
1678
  async findInLogs(t) {
1705
1679
  return s.step("Find text in logs", async () => {
1706
- await this.activateTab(q.LOGS_TAB), await a(this.findInLogsInput).toBeVisible(), await this.findInLogsInput.clear(), await a(this.findInLogsInput).toHaveValue(""), await this.findInLogsInput.fill(t), await a(this.findInLogsInput).toHaveValue(t);
1680
+ await this.activateTab(G.LOGS_TAB), await a(this.findInLogsInput).toBeVisible(), await this.findInLogsInput.clear(), await a(this.findInLogsInput).toHaveValue(""), await this.findInLogsInput.fill(t), await a(this.findInLogsInput).toHaveValue(t);
1707
1681
  });
1708
1682
  }
1709
1683
  async getCountOfSearchResults() {
1710
- return s.step("Get count of search results", async () => (await this.activateTab(q.LOGS_TAB), await a(this.findInLogsInput).toBeVisible(), await this.searchResults.count()));
1684
+ return s.step("Get count of search results", async () => (await this.activateTab(G.LOGS_TAB), await a(this.findInLogsInput).toBeVisible(), await this.searchResults.count()));
1711
1685
  }
1712
1686
  }
1713
- class Q extends A {
1687
+ class j extends A {
1714
1688
  podmanKubePlayButton;
1715
1689
  prunePodsButton;
1716
1690
  pruneConfirmationButton;
@@ -1727,7 +1701,7 @@ class Q extends A {
1727
1701
  if (e === void 0)
1728
1702
  throw Error(`Pod: ${t} does not exist`);
1729
1703
  const n = e.getByRole("button").getByText(t, { exact: !0 });
1730
- return await a(n).toBeEnabled(), await n.click(), new q(this.page, t);
1704
+ return await a(n).toBeEnabled(), await n.click(), new G(this.page, t);
1731
1705
  });
1732
1706
  }
1733
1707
  async getPodRowByName(t) {
@@ -1737,7 +1711,7 @@ class Q extends A {
1737
1711
  return await this.getPodRowByName(t) !== void 0;
1738
1712
  }
1739
1713
  async openPodmanKubePlay() {
1740
- return s.step("Open Podman Kube Play", async () => (await a(this.podmanKubePlayButton).toBeEnabled(), await this.podmanKubePlayButton.click(), new le(this.page)));
1714
+ return s.step("Open Podman Kube Play", async () => (await a(this.podmanKubePlayButton).toBeEnabled(), await this.podmanKubePlayButton.click(), new ce(this.page)));
1741
1715
  }
1742
1716
  async prunePods() {
1743
1717
  return s.step("Prune Pods", async () => (await this.prunePodsButton.click(), await g(this.page, "Prune"), this));
@@ -1765,7 +1739,7 @@ class Q extends A {
1765
1739
  });
1766
1740
  }
1767
1741
  }
1768
- class ue extends m {
1742
+ class ue extends w {
1769
1743
  heading;
1770
1744
  closeLink;
1771
1745
  podNameBox;
@@ -1779,10 +1753,10 @@ class ue extends m {
1779
1753
  });
1780
1754
  }
1781
1755
  async createPod(t) {
1782
- return y.step(`Create pod ${t}`, async () => (await this.podNameBox.fill(t), await this.createPodButton.click(), new Q(this.page)));
1756
+ return B.step(`Create pod ${t}`, async () => (await this.podNameBox.fill(t), await this.createPodButton.click(), new j(this.page)));
1783
1757
  }
1784
1758
  }
1785
- class he extends m {
1759
+ class he extends w {
1786
1760
  heading;
1787
1761
  imageNameInput;
1788
1762
  cancelButton;
@@ -1800,13 +1774,13 @@ class he extends m {
1800
1774
  return s.step(`Select image: ${t}`, async () => (await a(this.imageNameInput).toBeVisible(), await this.imageNameInput.fill(t), await a(this.imageNameInput).toHaveValue(t), this));
1801
1775
  }
1802
1776
  async cancel() {
1803
- return s.step("Cancel and return to Containers page", async () => (await a(this.cancelButton).toBeEnabled(), await this.cancelButton.click(), new N(this.page)));
1777
+ return s.step("Cancel and return to Containers page", async () => (await a(this.cancelButton).toBeEnabled(), await this.cancelButton.click(), new V(this.page)));
1804
1778
  }
1805
1779
  async runImage(t) {
1806
1780
  return s.step("Run image", async () => {
1807
1781
  await this.selectImage(t);
1808
1782
  const e = this.pullImageAndRunButton.or(this.runImageButton);
1809
- return await a(e).toBeEnabled({ timeout: 1e4 }), await e.click(), new Ct(this.page, t);
1783
+ return await a(e).toBeEnabled({ timeout: 1e4 }), await e.click(), new xt(this.page, t);
1810
1784
  });
1811
1785
  }
1812
1786
  async openManageRegistries() {
@@ -1815,7 +1789,7 @@ class he extends m {
1815
1789
  });
1816
1790
  }
1817
1791
  }
1818
- class N extends A {
1792
+ class V extends A {
1819
1793
  pruneContainersButton;
1820
1794
  createContainerButton;
1821
1795
  pruneConfirmationButton;
@@ -1845,7 +1819,7 @@ class N extends A {
1845
1819
  const e = await this.getContainerRowByName(t);
1846
1820
  if (e === void 0)
1847
1821
  throw Error(`Container: '${t}' does not exist`);
1848
- return await e.getByRole("cell").nth(3).click(), new R(this.page, t);
1822
+ return await e.getByRole("cell").nth(3).click(), new k(this.page, t);
1849
1823
  });
1850
1824
  }
1851
1825
  async startContainer(t) {
@@ -1878,13 +1852,13 @@ class N extends A {
1878
1852
  const n = e.getByRole("button", {
1879
1853
  name: "Delete Container"
1880
1854
  });
1881
- return await a(n).toBeVisible(), await a(n).toBeEnabled(), await n.click(), await g(this.page), new N(this.page);
1855
+ return await a(n).toBeVisible(), await a(n).toBeEnabled(), await n.click(), await g(this.page), new V(this.page);
1882
1856
  });
1883
1857
  }
1884
1858
  async stopContainerFromDetails(t) {
1885
1859
  return s.step(`Stop Container ${t} from details page`, async () => {
1886
1860
  const e = await this.openContainersDetails(t);
1887
- return await a(e.heading).toBeVisible(), await a(e.heading).toContainText(t), a(await e.getState()).toContain(D.Running), await e.stopContainer(), e;
1861
+ return await a(e.heading).toBeVisible(), await a(e.heading).toContainText(t), a(await e.getState()).toContain($.Running), await e.stopContainer(), e;
1888
1862
  });
1889
1863
  }
1890
1864
  async getContainerRowByName(t) {
@@ -1921,13 +1895,13 @@ class N extends A {
1921
1895
  return s.step("Close Create dialog", async () => (await a(this.createDialogCloseButton).toBeVisible(), await this.createDialogCloseButton.click(), await a(this.createDialog).not.toBeVisible(), this));
1922
1896
  }
1923
1897
  async openBuildImageFromDialog() {
1924
- return s.step("Open Build Image page from Create dialog", async () => (await this.openCreateDialog(), await a(this.createDialogContainerOrDockerfileButton).toBeEnabled({ timeout: 1e4 }), await this.createDialogContainerOrDockerfileButton.click(), await a(this.createDialog).not.toBeVisible({ timeout: 1e4 }), new vt(this.page)));
1898
+ return s.step("Open Build Image page from Create dialog", async () => (await this.openCreateDialog(), await a(this.createDialogContainerOrDockerfileButton).toBeEnabled({ timeout: 1e4 }), await this.createDialogContainerOrDockerfileButton.click(), await a(this.createDialog).not.toBeVisible({ timeout: 1e4 }), new ft(this.page)));
1925
1899
  }
1926
1900
  async openSelectImageFromDialog() {
1927
1901
  return s.step("Open Select Image page from Create dialog", async () => (await this.openCreateDialog(), await a(this.createDialogExistingImageButton).toBeEnabled({ timeout: 1e4 }), await this.createDialogExistingImageButton.click(), await a(this.createDialog).not.toBeVisible({ timeout: 1e4 }), new he(this.page)));
1928
1902
  }
1929
1903
  }
1930
- class Pt extends m {
1904
+ class kt extends w {
1931
1905
  mainPage;
1932
1906
  header;
1933
1907
  content;
@@ -1957,8 +1931,15 @@ class Pt extends m {
1957
1931
  return this.content.getByRole("region", { name: "Podman Provider" });
1958
1932
  }
1959
1933
  }
1960
- class Tt extends m {
1961
- extensionName;
1934
+ class Rt extends w {
1935
+ constructor(t, e) {
1936
+ super(t), this.extensionName = e, this.header = t.getByRole("region", { name: "Header" }), this.tabs = t.getByRole("region", { name: "Tabs" }), this.tabContent = t.getByRole("region", { name: "Tab Content" }), this.heading = this.header.getByRole("heading", { name: e }), this.enableButton = this.header.getByRole("button", { name: "Start" }), this.disableButton = this.header.getByRole("button", { name: "Stop" }), this.removeExtensionButton = this.header.getByRole("button", {
1937
+ name: "Delete"
1938
+ }), this.status = this.header.getByLabel("Extension Status Label"), this.errorStackTrace = this.tabContent.getByRole("group", {
1939
+ name: "Stack Trace",
1940
+ exact: !0
1941
+ });
1942
+ }
1962
1943
  header;
1963
1944
  tabs;
1964
1945
  tabContent;
@@ -1968,14 +1949,6 @@ class Tt extends m {
1968
1949
  status;
1969
1950
  heading;
1970
1951
  errorStackTrace;
1971
- constructor(t, e) {
1972
- super(t), this.extensionName = e, this.header = t.getByRole("region", { name: "Header" }), this.tabs = t.getByRole("region", { name: "Tabs" }), this.tabContent = t.getByRole("region", { name: "Tab Content" }), this.heading = this.header.getByRole("heading", { name: e }), this.enableButton = this.header.getByRole("button", { name: "Start" }), this.disableButton = this.header.getByRole("button", { name: "Stop" }), this.removeExtensionButton = this.header.getByRole("button", {
1973
- name: "Delete"
1974
- }), this.status = this.header.getByLabel("Extension Status Label"), this.errorStackTrace = this.tabContent.getByRole("group", {
1975
- name: "Stack Trace",
1976
- exact: !0
1977
- });
1978
- }
1979
1952
  async disableExtension() {
1980
1953
  return s.step(`Disable extension: ${this.extensionName}`, async () => await this.status.innerText() === "DISABLED" ? this : (await this.disableButton.click(), await a(this.status).toHaveText("DISABLED", { timeout: 3e4 }), this));
1981
1954
  }
@@ -1983,7 +1956,7 @@ class Tt extends m {
1983
1956
  return s.step(`Enable extension: ${this.extensionName}`, async () => await this.status.innerText() === "ACTIVE" ? this : (await this.enableButton.click(), await a(this.status).toHaveText("ACTIVE", { timeout: 3e4 }), this));
1984
1957
  }
1985
1958
  async removeExtension(t = !0) {
1986
- return s.step(`Remove extension: ${this.extensionName}`, async () => (t && await this.disableExtension(), await a(this.removeExtensionButton).toBeVisible(), await this.removeExtensionButton.click(), await a(this.removeExtensionButton).not.toBeVisible({ timeout: 3e4 }), new st(this.page)));
1959
+ return s.step(`Remove extension: ${this.extensionName}`, async () => (t && await this.disableExtension(), await a(this.removeExtensionButton).toBeVisible(), await this.removeExtensionButton.click(), await a(this.removeExtensionButton).not.toBeVisible({ timeout: 3e4 }), new it(this.page)));
1987
1960
  }
1988
1961
  async activateTab(t) {
1989
1962
  return s.step(`Activate tab: ${t}`, async () => {
@@ -1995,7 +1968,7 @@ class Tt extends m {
1995
1968
  });
1996
1969
  }
1997
1970
  }
1998
- class ge extends m {
1971
+ class ge extends w {
1999
1972
  parent;
2000
1973
  card;
2001
1974
  leftActions;
@@ -2034,7 +2007,7 @@ class ge extends m {
2034
2007
  });
2035
2008
  }
2036
2009
  async openExtensionDetails(t) {
2037
- return await a(this.card).toBeVisible(), await this.card.scrollIntoViewIfNeeded(), await a(this.detailsLink).toBeVisible(), await this.detailsLink.click(), new Tt(this.page, t);
2010
+ return await a(this.card).toBeVisible(), await this.card.scrollIntoViewIfNeeded(), await a(this.detailsLink).toBeVisible(), await this.detailsLink.click(), new Rt(this.page, t);
2038
2011
  }
2039
2012
  async disableExtension() {
2040
2013
  return s.step(`Disable extension: ${this.extensionName}`, async () => await this.status.innerText() === "DISABLED" ? this : (await this.disableButton.click(), await a(this.status).toHaveText("DISABLED"), this));
@@ -2043,10 +2016,10 @@ class ge extends m {
2043
2016
  return s.step(`Enable extension: ${this.extensionName}`, async () => await this.status.innerText() === "ACTIVE" ? this : (await this.enableButton.click(), await a(this.status).toHaveText("ACTIVE"), this));
2044
2017
  }
2045
2018
  async removeExtension() {
2046
- return s.step(`Remove extension: ${this.extensionName}`, async () => (await this.disableExtension(), await this.removeButton.click(), new st(this.page)));
2019
+ return s.step(`Remove extension: ${this.extensionName}`, async () => (await this.disableExtension(), await this.removeButton.click(), new it(this.page)));
2047
2020
  }
2048
2021
  }
2049
- class st {
2022
+ class it {
2050
2023
  page;
2051
2024
  heading;
2052
2025
  header;
@@ -2077,11 +2050,11 @@ class st {
2077
2050
  exact: !0
2078
2051
  });
2079
2052
  await a(r).toBeEnabled(), await r.click();
2080
- const c = n.getByRole("button", {
2053
+ const l = n.getByRole("button", {
2081
2054
  name: "Done",
2082
2055
  exact: !0
2083
2056
  });
2084
- return await a(c).toBeEnabled({ timeout: e }), await c.click(), this;
2057
+ return await a(l).toBeEnabled({ timeout: e }), await l.click(), this;
2085
2058
  });
2086
2059
  }
2087
2060
  async openInstalledTab() {
@@ -2126,7 +2099,7 @@ class de extends A {
2126
2099
  jobsMetricsButton;
2127
2100
  cronJobsMetricsButton;
2128
2101
  constructor(t) {
2129
- super(t, "Dashboard"), this.namespaceLocator = this.page.getByLabel("Kubernetes Namespace", { exact: !0 }), this.namespaceDropdownButton = this.namespaceLocator.getByRole("button", { name: "Namespace" }), this.currentNamespace = this.namespaceLocator.getByLabel("hidden input", { exact: !0 }), this.nodesMetricsButton = this.metricsLocatorByName(w.Nodes), this.podsMetricsButton = this.metricsLocatorByName(w.Pods), this.deploymentsMetricsButton = this.metricsLocatorByName(w.Deployments), this.servicesMetricsButton = this.metricsLocatorByName(w.Services), this.ingressesMetricsButton = this.metricsLocatorByName(w.IngeressesRoutes), this.pvcsMetricsButton = this.metricsLocatorByName(w.PVCs), this.configMapsMetricsButton = this.metricsLocatorByName(w.ConfigMapsSecrets), this.jobsMetricsButton = this.metricsLocatorByName(w.Jobs), this.cronJobsMetricsButton = this.metricsLocatorByName(w.Cronjobs);
2102
+ super(t, "Dashboard"), this.namespaceLocator = this.page.getByLabel("Kubernetes Namespace", { exact: !0 }), this.namespaceDropdownButton = this.namespaceLocator.getByRole("button", { name: "Namespace" }), this.currentNamespace = this.namespaceLocator.getByLabel("hidden input", { exact: !0 }), this.nodesMetricsButton = this.metricsLocatorByName(m.Nodes), this.podsMetricsButton = this.metricsLocatorByName(m.Pods), this.deploymentsMetricsButton = this.metricsLocatorByName(m.Deployments), this.servicesMetricsButton = this.metricsLocatorByName(m.Services), this.ingressesMetricsButton = this.metricsLocatorByName(m.IngeressesRoutes), this.pvcsMetricsButton = this.metricsLocatorByName(m.PVCs), this.configMapsMetricsButton = this.metricsLocatorByName(m.ConfigMapsSecrets), this.jobsMetricsButton = this.metricsLocatorByName(m.Jobs), this.cronJobsMetricsButton = this.metricsLocatorByName(m.Cronjobs);
2130
2103
  }
2131
2104
  async changeNamespace(t) {
2132
2105
  await a(this.currentNamespace).not.toHaveValue(t, { timeout: 1e4 }), await this.selectNamespaceByName(t), await a(this.currentNamespace).toHaveValue(t, { timeout: 1e4 });
@@ -2152,11 +2125,11 @@ class de extends A {
2152
2125
  const n = this.metricsLocatorByName(t), o = e ? `${t} ${e} count` : `${t} count`, r = n.getByLabel(o, { exact: !0 });
2153
2126
  if (await r.count() === 0)
2154
2127
  throw new Error(`No ${o} locator found for resource: ${t}`);
2155
- const c = await r.textContent();
2156
- return c ? Number.parseInt(c, 10) : 0;
2128
+ const l = await r.textContent();
2129
+ return l ? Number.parseInt(l, 10) : 0;
2157
2130
  }
2158
2131
  }
2159
- class rt extends S {
2132
+ class ot extends S {
2160
2133
  applyChangesButton;
2161
2134
  revertChagesButton;
2162
2135
  deleteButton;
@@ -2172,11 +2145,11 @@ class rt extends S {
2172
2145
  super(t, e), this.applyChangesButton = this.tabContent.getByRole("button", { name: "Apply changes to cluster" }), this.revertChagesButton = this.tabContent.getByRole("button", { name: "Revert Changes" }), this.deleteButton = this.controlActions.getByRole("button", { name: "Delete", exact: !1 }), this.editorWidget = this.page.getByRole("dialog", { name: "Find / Replace" }), this.toggleButton = this.editorWidget.getByRole("button", { name: "Toggle Replace" }), this.findTextArea = this.editorWidget.getByPlaceholder("Find"), this.replaceTextArea = this.editorWidget.getByPlaceholder("Replace"), this.replaceButton = this.editorWidget.getByRole("button", { name: "Replace All" });
2173
2146
  }
2174
2147
  async getState() {
2175
- return s.step("Get resource state", async () => await this.header.getByRole("status").getAttribute("title") ?? tt.Unknown);
2148
+ return s.step("Get resource state", async () => await this.header.getByRole("status").getAttribute("title") ?? wt.Unknown);
2176
2149
  }
2177
2150
  async editKubernetsYamlFile(t, e) {
2178
2151
  return s.step("Edit Kubernetes YAML file", async () => {
2179
- await this.activateTab(rt.KUBE_TAB);
2152
+ await this.activateTab(ot.KUBE_TAB);
2180
2153
  const n = this.tabContent.getByRole("presentation");
2181
2154
  await a(n).toBeVisible(), await n.click(), F ? await this.page.keyboard.press("Meta+F") : await this.page.keyboard.press("Control+F"), await a(this.editorWidget).toBeVisible(), await a(this.findTextArea).toBeVisible(), await this.findTextArea.fill(t), await a(this.toggleButton).toBeVisible(), await this.toggleButton.click(), await a(this.replaceTextArea).toBeVisible(), await this.replaceTextArea.fill(e), await a(this.replaceButton).toBeVisible(), await this.replaceButton.click(), await a(this.revertChagesButton).toBeEnabled(), await a(this.applyChangesButton).toBeEnabled(), await this.applyChangesButton.click(), await g(this.page, "Kubernetes", !0, "OK");
2182
2155
  });
@@ -2198,14 +2171,14 @@ class H extends A {
2198
2171
  return await this.getRowByName(t, !1);
2199
2172
  }
2200
2173
  async geAttributeByRow(t, e, n) {
2201
- const r = qt[n].indexOf(e) + 1;
2174
+ const r = Yt[n].indexOf(e) + 1;
2202
2175
  return t.getByRole("cell").nth(r);
2203
2176
  }
2204
2177
  async openResourceDetails(t, e, n) {
2205
2178
  return s.step(`Open ${e}: ${t} details`, async () => {
2206
2179
  const o = await this.fetchKubernetesResource(t, n);
2207
2180
  let r;
2208
- return e === w.Nodes ? r = o.getByRole("cell").nth(2) : r = o.getByRole("cell").nth(3), await a(r).toBeEnabled(), await r.click(), new rt(this.page, t);
2181
+ return e === m.Nodes ? r = o.getByRole("cell").nth(2) : r = o.getByRole("cell").nth(3), await a(r).toBeEnabled(), await r.click(), new ot(this.page, t);
2209
2182
  });
2210
2183
  }
2211
2184
  async deleteKubernetesResource(t) {
@@ -2244,7 +2217,7 @@ class we {
2244
2217
  return this.kubernetesNavBar.getByLabel(t);
2245
2218
  }
2246
2219
  }
2247
- class It extends S {
2220
+ class Ct extends S {
2248
2221
  updateButton;
2249
2222
  deleteButton;
2250
2223
  static SUMMARY_TAB = "Summary";
@@ -2257,13 +2230,13 @@ class It extends S {
2257
2230
  });
2258
2231
  }
2259
2232
  async updateNetwork(t) {
2260
- return s.step("Update network from details page", async () => (await a(this.updateButton).toBeEnabled(), await this.updateButton.click(), await Rt(this.page, this.resourceName, t), this));
2233
+ return s.step("Update network from details page", async () => (await a(this.updateButton).toBeEnabled(), await this.updateButton.click(), await bt(this.page, this.resourceName, t), this));
2261
2234
  }
2262
2235
  async deleteNetwork() {
2263
- return s.step("Delete network from details page", async () => (await a(this.deleteButton).toBeEnabled(), await this.deleteButton.click(), await g(this.page), new ct(this.page)));
2236
+ return s.step("Delete network from details page", async () => (await a(this.deleteButton).toBeEnabled(), await this.deleteButton.click(), await g(this.page), new st(this.page)));
2264
2237
  }
2265
2238
  }
2266
- class me extends m {
2239
+ class me extends w {
2267
2240
  heading;
2268
2241
  networkNameBox;
2269
2242
  subnetBox;
@@ -2273,13 +2246,13 @@ class me extends m {
2273
2246
  super(t), this.heading = this.page.getByRole("heading", { name: "Create a network" }), this.networkNameBox = this.page.getByRole("textbox", { name: "Name" }), this.subnetBox = this.page.getByRole("textbox", { name: "Subnet" }), this.createButton = this.page.getByRole("button", { name: "Create" }), this.cancelButton = this.page.getByRole("button", { name: "Cancel" });
2274
2247
  }
2275
2248
  async createNetwork(t, e) {
2276
- return s.step(`Create network ${t} with subnet ${e}`, async () => (await a(this.networkNameBox).toBeVisible(), await this.networkNameBox.clear(), await a(this.networkNameBox).toHaveValue(""), await this.networkNameBox.fill(t), await a(this.networkNameBox).toHaveValue(t), await a(this.subnetBox).toBeVisible(), await this.subnetBox.clear(), await a(this.subnetBox).toHaveValue(""), await this.subnetBox.fill(e), await a(this.subnetBox).toHaveValue(e), await a(this.createButton).toBeEnabled(), await this.createButton.click(), new It(this.page, t)));
2249
+ return s.step(`Create network ${t} with subnet ${e}`, async () => (await a(this.networkNameBox).toBeVisible(), await this.networkNameBox.clear(), await a(this.networkNameBox).toHaveValue(""), await this.networkNameBox.fill(t), await a(this.networkNameBox).toHaveValue(t), await a(this.subnetBox).toBeVisible(), await this.subnetBox.clear(), await a(this.subnetBox).toHaveValue(""), await this.subnetBox.fill(e), await a(this.subnetBox).toHaveValue(e), await a(this.createButton).toBeEnabled(), await this.createButton.click(), new Ct(this.page, t)));
2277
2250
  }
2278
2251
  async cancel() {
2279
- return s.step("Cancel network creation", async () => (await a(this.cancelButton).toBeEnabled(), await this.cancelButton.click(), new ct(this.page)));
2252
+ return s.step("Cancel network creation", async () => (await a(this.cancelButton).toBeEnabled(), await this.cancelButton.click(), new st(this.page)));
2280
2253
  }
2281
2254
  }
2282
- class ct extends A {
2255
+ class st extends A {
2283
2256
  createNetworkButton;
2284
2257
  deleteSelectedButton;
2285
2258
  constructor(t) {
@@ -2303,7 +2276,7 @@ class ct extends A {
2303
2276
  async updateNetwork(t, e) {
2304
2277
  return s.step(`Update network: ${t}`, async () => {
2305
2278
  const n = await this.getUpdateNetworkRowButton(t);
2306
- return await a(n).toBeEnabled(), await n.click(), await Rt(this.page, t, e), this;
2279
+ return await a(n).toBeEnabled(), await n.click(), await bt(this.page, t, e), this;
2307
2280
  });
2308
2281
  }
2309
2282
  async deleteSelectedNetworks() {
@@ -2322,7 +2295,7 @@ class ct extends A {
2322
2295
  if (e === void 0)
2323
2296
  throw Error(`Network: ${t} does not exist`);
2324
2297
  const n = e.getByRole("cell").nth(3);
2325
- return await a(n).toBeEnabled(), await n.click(), new It(this.page, t);
2298
+ return await a(n).toBeEnabled(), await n.click(), new Ct(this.page, t);
2326
2299
  });
2327
2300
  }
2328
2301
  async getNetworkRowButton(t, e) {
@@ -2363,25 +2336,25 @@ class d {
2363
2336
  });
2364
2337
  }
2365
2338
  async openDashboard() {
2366
- return s.step("Open Dashboard page", async () => (await a(this.dashboardLink).toBeVisible({ timeout: 1e4 }), await this.dashboardLink.click({ force: !0 }), new Pt(this.page)));
2339
+ return s.step("Open Dashboard page", async () => (await a(this.dashboardLink).toBeVisible({ timeout: 1e4 }), await this.dashboardLink.click({ force: !0 }), new kt(this.page)));
2367
2340
  }
2368
2341
  async openImages() {
2369
- return s.step("Open Images page", async () => (await a(this.imagesLink).toBeVisible({ timeout: 1e4 }), await this.imagesLink.click({ force: !0 }), new E(this.page)));
2342
+ return s.step("Open Images page", async () => (await a(this.imagesLink).toBeVisible({ timeout: 1e4 }), await this.imagesLink.click({ force: !0 }), new L(this.page)));
2370
2343
  }
2371
2344
  async openContainers() {
2372
- return s.step("Open Containers page", async () => (await a(this.containersLink).toBeVisible({ timeout: 1e4 }), await this.containersLink.click({ force: !0 }), new N(this.page)));
2345
+ return s.step("Open Containers page", async () => (await a(this.containersLink).toBeVisible({ timeout: 1e4 }), await this.containersLink.click({ force: !0 }), new V(this.page)));
2373
2346
  }
2374
2347
  async openPods() {
2375
- return s.step("Open Pods page", async () => (await a(this.podsLink).toBeVisible({ timeout: 1e4 }), await this.podsLink.click({ force: !0 }), new Q(this.page)));
2348
+ return s.step("Open Pods page", async () => (await a(this.podsLink).toBeVisible({ timeout: 1e4 }), await this.podsLink.click({ force: !0 }), new j(this.page)));
2376
2349
  }
2377
2350
  async openSettings() {
2378
2351
  return s.step("Open Settings Page ", async () => {
2379
- const t = new it(this.page);
2352
+ const t = new at(this.page);
2380
2353
  return await t.settingsNavBar.isVisible() || (await a(this.settingsLink).toBeVisible({ timeout: 1e4 }), await this.settingsLink.click({ force: !0 })), t;
2381
2354
  });
2382
2355
  }
2383
2356
  async openVolumes() {
2384
- return s.step("Open Volumes page", async () => (await a(this.volumesLink).toBeVisible({ timeout: 1e4 }), await this.volumesLink.click({ force: !0 }), new z(this.page)));
2357
+ return s.step("Open Volumes page", async () => (await a(this.volumesLink).toBeVisible({ timeout: 1e4 }), await this.volumesLink.click({ force: !0 }), new q(this.page)));
2385
2358
  }
2386
2359
  async openKubernetes() {
2387
2360
  return s.step("Open Kubernetes Page ", async () => {
@@ -2390,28 +2363,40 @@ class d {
2390
2363
  });
2391
2364
  }
2392
2365
  async openExtensions() {
2393
- return s.step("Open Extensions page", async () => (await a(this.extensionsLink).toBeVisible({ timeout: 1e4 }), await this.extensionsLink.click({ force: !0 }), new st(this.page)));
2366
+ return s.step("Open Extensions page", async () => (await a(this.extensionsLink).toBeVisible({ timeout: 1e4 }), await this.extensionsLink.click({ force: !0 }), new it(this.page)));
2394
2367
  }
2395
2368
  async openNetworks() {
2396
- return s.step("Open Networks page", async () => (await a(this.networksLink).toBeVisible({ timeout: 1e4 }), await this.networksLink.click({ force: !0 }), new ct(this.page)));
2369
+ return s.step("Open Networks page", async () => (await a(this.networksLink).toBeVisible({ timeout: 1e4 }), await this.networksLink.click({ force: !0 }), new st(this.page)));
2397
2370
  }
2398
2371
  }
2399
- async function Et(i, t, e, n, o, r) {
2400
- let c = e;
2401
- for (; c > 0; ) {
2372
+ async function vt(i, t, e, n, o, r) {
2373
+ let l = e;
2374
+ for (; l > 0; ) {
2402
2375
  if (await i() === t)
2403
2376
  return;
2404
- c = c - n, await pe(n);
2377
+ l = l - n, await pe(n);
2405
2378
  }
2406
- const l = r.length === 0 ? `Timeout (${e} ms) was reach while waiting for condition (${i.name}) to become '${String(t)}'` : r;
2379
+ const c = r.length === 0 ? `Timeout (${e} ms) was reach while waiting for condition (${i.name}) to become '${String(
2380
+ t
2381
+ )}'` : r;
2407
2382
  if (o)
2408
- throw Error(l);
2409
- }
2410
- async function b(i, { timeout: t = 5e3, diff: e = 500, sendError: n = !0, message: o = "" } = {}) {
2411
- await Et(i, !0, t, e, n, o);
2412
- }
2413
- async function T(i, { timeout: t = 5e3, diff: e = 500, sendError: n = !0, message: o = "" } = {}) {
2414
- await Et(i, !1, t, e, n, o);
2383
+ throw Error(c);
2384
+ }
2385
+ async function y(i, {
2386
+ timeout: t = 5e3,
2387
+ diff: e = 500,
2388
+ sendError: n = !0,
2389
+ message: o = ""
2390
+ } = {}) {
2391
+ await vt(i, !0, t, e, n, o);
2392
+ }
2393
+ async function T(i, {
2394
+ timeout: t = 5e3,
2395
+ diff: e = 500,
2396
+ sendError: n = !0,
2397
+ message: o = ""
2398
+ } = {}) {
2399
+ await vt(i, !1, t, e, n, o);
2415
2400
  }
2416
2401
  async function pe(i) {
2417
2402
  return new Promise((t) => {
@@ -2420,18 +2405,18 @@ async function pe(i) {
2420
2405
  }
2421
2406
  async function ma(i, t = 3e4) {
2422
2407
  return s.step("Wait for Podman machine to be running", async () => {
2423
- await pt();
2408
+ await ut();
2424
2409
  const e = await new d(i).openDashboard();
2425
2410
  await a(e.heading).toBeVisible(), await a(e.podmanStatusLabel).toBeVisible({ timeout: t });
2426
2411
  try {
2427
2412
  await a(e.podmanStatusLabel).not.toHaveText("STARTING", { timeout: t });
2428
2413
  } catch (n) {
2429
- console.error("Podman machine stuck in STARTING state, trying to restart it", n), await te(), await pt();
2414
+ console.error("Podman machine stuck in STARTING state, trying to restart it", n), await te(), await ut();
2430
2415
  }
2431
2416
  await a(e.podmanStatusLabel).toHaveText("RUNNING", { timeout: t });
2432
2417
  });
2433
2418
  }
2434
- class at {
2419
+ class Z {
2435
2420
  _profile;
2436
2421
  _customFolder;
2437
2422
  _customOutputFolder;
@@ -2444,8 +2429,21 @@ class at {
2444
2429
  _saveTracesOnPass;
2445
2430
  _saveVideosOnPass;
2446
2431
  _customSettings = {};
2447
- constructor({ profile: t = "", customFolder: e = "podman-desktop", customOutputFolder: n = "tests/playwright/output/", openDevTools: o = "none", autoUpdate: r = !0, autoCheckUpdates: c = !0, extensionsDisabled: l = [], aiLabModelUploadDisabled: u = !1, binaryPath: h = void 0, saveTracesOnPass: x = !1, saveVideosOnPass: v = !1, customSettings: _ = {} } = {}) {
2448
- this._profile = t, this._customFolder = e, this._customOutputFolder = n, this._openDevTools = o, this._autoUpdate = r, this._autoCheckUpdates = c, this._extensionsDisabled = l, this._aiLabModelUploadDisabled = u, this._binaryPath = h, this._saveTracesOnPass = x, this._saveVideosOnPass = v, this._customSettings = _;
2432
+ constructor({
2433
+ profile: t = "",
2434
+ customFolder: e = "podman-desktop",
2435
+ customOutputFolder: n = "tests/playwright/output/",
2436
+ openDevTools: o = "none",
2437
+ autoUpdate: r = !0,
2438
+ autoCheckUpdates: l = !0,
2439
+ extensionsDisabled: c = [],
2440
+ aiLabModelUploadDisabled: u = !1,
2441
+ binaryPath: h = void 0,
2442
+ saveTracesOnPass: b = !1,
2443
+ saveVideosOnPass: R = !1,
2444
+ customSettings: _ = {}
2445
+ } = {}) {
2446
+ this._profile = t, this._customFolder = e, this._customOutputFolder = n, this._openDevTools = o, this._autoUpdate = r, this._autoCheckUpdates = l, this._extensionsDisabled = c, this._aiLabModelUploadDisabled = u, this._binaryPath = h, this._saveTracesOnPass = b, this._saveVideosOnPass = R, this._customSettings = _;
2449
2447
  }
2450
2448
  createSettingsJson() {
2451
2449
  return console.log(`Binary path: ${this._binaryPath}`), this._binaryPath ? JSON.stringify({
@@ -2479,11 +2477,15 @@ class P {
2479
2477
  _saveTracesOnPass;
2480
2478
  _saveVideosOnPass;
2481
2479
  static _instance;
2482
- static async getInstance({ runnerOptions: t = new at() } = {}) {
2480
+ static async getInstance({
2481
+ runnerOptions: t = new Z()
2482
+ } = {}) {
2483
2483
  return P._instance || (P._instance = new P({ runnerOptions: t }), await P._instance.start()), P._instance;
2484
2484
  }
2485
- constructor({ runnerOptions: t = new at() } = {}) {
2486
- this._running = !1, this._runnerOptions = t, this._profile = this._runnerOptions._profile, this._saveTracesOnPass = this._runnerOptions._saveTracesOnPass, this._saveVideosOnPass = this._runnerOptions._saveVideosOnPass, this._testOutput = B(this._runnerOptions._customOutputFolder, this._profile), this._customFolder = B(this._testOutput, this._runnerOptions._customFolder), this._videoAndTraceName = void 0, this._options = this.defaultOptions();
2485
+ constructor({
2486
+ runnerOptions: t = new Z()
2487
+ } = {}) {
2488
+ this._running = !1, this._runnerOptions = t, this._profile = this._runnerOptions._profile, this._saveTracesOnPass = this._runnerOptions._saveTracesOnPass, this._saveVideosOnPass = this._runnerOptions._saveVideosOnPass, this._testOutput = p(this._runnerOptions._customOutputFolder, this._profile), this._customFolder = p(this._testOutput, this._runnerOptions._customFolder), this._videoAndTraceName = void 0, this._options = this.defaultOptions();
2487
2489
  }
2488
2490
  async start() {
2489
2491
  if (this.isRunning())
@@ -2491,7 +2493,7 @@ class P {
2491
2493
  try {
2492
2494
  this._running = !0, console.log("Starting Podman Desktop"), console.log("Electron app launch options: "), Object.keys(this._options).forEach((n) => {
2493
2495
  console.log(`${n}: ${this._options[n]}`);
2494
- }), this._app = await Kt.launch({
2496
+ }), this._app = await Ot.launch({
2495
2497
  ...this._options
2496
2498
  }), this._page = await this.getElectronApp().firstWindow();
2497
2499
  const e = await this.getElectronApp().evaluate(async ({ app: n }) => n.getPath("exe"));
@@ -2517,14 +2519,14 @@ class P {
2517
2519
  return await this.getElectronApp().browserWindow(this.getPage());
2518
2520
  }
2519
2521
  async screenshot(t) {
2520
- await this.getPage().screenshot({ path: B(this._testOutput, "screenshots", t) });
2522
+ await this.getPage().screenshot({ path: p(this._testOutput, "screenshots", t) });
2521
2523
  }
2522
2524
  async startTracing() {
2523
2525
  await this.getPage().context().tracing.start({ screenshots: !0, snapshots: !0, sources: !0 });
2524
2526
  }
2525
2527
  async stopTracing() {
2526
2528
  let t = "";
2527
- this._videoAndTraceName && (t = this._videoAndTraceName), t = t + "_trace.zip", await this.getPage().context().tracing.stop({ path: B(this._testOutput, "traces", t) });
2529
+ this._videoAndTraceName && (t = this._videoAndTraceName), t = t + "_trace.zip", await this.getPage().context().tracing.stop({ path: p(this._testOutput, "traces", t) });
2528
2530
  }
2529
2531
  async getBrowserWindowState() {
2530
2532
  return await (await this.getBrowserWindow()).evaluate((t) => {
@@ -2567,29 +2569,28 @@ class P {
2567
2569
  }
2568
2570
  }
2569
2571
  if (this._running = !1, P._instance = void 0, this._videoAndTraceName) {
2570
- const e = B(this._testOutput, "videos", `${this._videoAndTraceName}.webm`), n = await this.trackTime(async () => await this.saveVideoAs(e));
2572
+ const e = p(this._testOutput, "videos", `${this._videoAndTraceName}.webm`), n = await this.trackTime(async () => await this.saveVideoAs(e));
2571
2573
  console.log(`Saving a video file took: ${n} ms`), console.log(`Video file saved as: ${e}`);
2572
2574
  }
2573
2575
  await this.removeTracesOnFinished();
2574
2576
  }
2575
2577
  async removeTracesOnFinished() {
2576
- const t = B(this._testOutput, "traces", "raw");
2577
- $(t) && (console.log(`Removing raw traces folder: ${t}`), K(t, { recursive: !0, force: !0, maxRetries: 5 }));
2578
+ const t = p(this._testOutput, "traces", "raw");
2579
+ D(t) && (console.log(`Removing raw traces folder: ${t}`), K(t, { recursive: !0, force: !0, maxRetries: 5 }));
2578
2580
  try {
2579
- const e = y.info().status;
2580
- if (console.log(`Test finished with status:${e}`), e !== "passed" && e !== "skipped")
2581
- return;
2581
+ const e = B.info().status;
2582
+ if (console.log(`Test finished with status:${e}`), e !== "passed" && e !== "skipped") return;
2582
2583
  } catch (e) {
2583
2584
  console.log(`Caught exception in removing traces: ${e}`);
2584
2585
  return;
2585
2586
  }
2586
2587
  if (!process.env.KEEP_TRACES_ON_PASS && !this._saveTracesOnPass) {
2587
- const e = B(this._testOutput, "traces", `${this._videoAndTraceName}_trace.zip`);
2588
- $(e) && (console.log(`Removing traces folder: ${e}`), K(e, { recursive: !0, force: !0, maxRetries: 5 }));
2588
+ const e = p(this._testOutput, "traces", `${this._videoAndTraceName}_trace.zip`);
2589
+ D(e) && (console.log(`Removing traces folder: ${e}`), K(e, { recursive: !0, force: !0, maxRetries: 5 }));
2589
2590
  }
2590
2591
  if (!process.env.KEEP_VIDEOS_ON_PASS && !this._saveVideosOnPass) {
2591
- const e = B(this._testOutput, "videos", `${this._videoAndTraceName}.webm`);
2592
- $(e) && (console.log(`Removing video folder: ${e}`), K(e, { recursive: !0, force: !0, maxRetries: 5 }));
2592
+ const e = p(this._testOutput, "videos", `${this._videoAndTraceName}.webm`);
2593
+ D(e) && (console.log(`Removing video folder: ${e}`), K(e, { recursive: !0, force: !0, maxRetries: 5 }));
2593
2594
  }
2594
2595
  }
2595
2596
  async trackTime(t) {
@@ -2600,32 +2601,34 @@ class P {
2600
2601
  defaultOptions() {
2601
2602
  const t = process.env.PODMAN_DESKTOP_ARGS, e = process.env.PODMAN_DESKTOP_BINARY;
2602
2603
  if (t && e)
2603
- throw new Error("PODMAN_DESKTOP_ARGS and PODMAN_DESKTOP_BINARY are both set, cannot run tests in development and production mode at the same time...");
2604
- const n = B(this._testOutput, "videos"), o = B(this._testOutput, "traces", "raw");
2604
+ throw new Error(
2605
+ "PODMAN_DESKTOP_ARGS and PODMAN_DESKTOP_BINARY are both set, cannot run tests in development and production mode at the same time..."
2606
+ );
2607
+ const n = p(this._testOutput, "videos"), o = p(this._testOutput, "traces", "raw");
2605
2608
  console.log(`video will be written to: ${n}`);
2606
- const r = this.setupPodmanDesktopCustomFolder(), c = {
2609
+ const r = this.setupPodmanDesktopCustomFolder(), l = {
2607
2610
  dir: n,
2608
2611
  size: {
2609
2612
  width: 1050,
2610
2613
  height: 700
2611
2614
  }
2612
- }, l = t ? [t] : ["."], u = t ? B(t, "node_modules", ".bin", "electron") : e ?? void 0;
2615
+ }, c = t ? [t] : ["."], u = t ? p(t, "node_modules", ".bin", "electron") : e ?? void 0;
2613
2616
  return {
2614
- args: l,
2617
+ args: c,
2615
2618
  executablePath: u,
2616
2619
  env: r,
2617
- recordVideo: c,
2620
+ recordVideo: l,
2618
2621
  timeout: 45e3,
2619
2622
  tracesDir: o
2620
2623
  };
2621
2624
  }
2622
2625
  setupPodmanDesktopCustomFolder() {
2623
- const t = process.env, e = B(this._customFolder);
2624
- console.log(`podman desktop custom config will be written to: ${e}`), t.PODMAN_DESKTOP_HOME_DIR = e, j && (t.XDG_SESSION_TYPE = "x11");
2625
- const n = Ut(e, "configuration", "settings.json"), o = Ht(n);
2626
- $(o) || Ot(o, { recursive: !0 });
2626
+ const t = process.env, e = p(this._customFolder);
2627
+ console.log(`podman desktop custom config will be written to: ${e}`), t.PODMAN_DESKTOP_HOME_DIR = e, W && (t.XDG_SESSION_TYPE = "x11");
2628
+ const n = Mt(e, "configuration", "settings.json"), o = Ft(n);
2629
+ D(o) || Nt(o, { recursive: !0 });
2627
2630
  const r = this._runnerOptions.createSettingsJson();
2628
- return console.log(`disabling OpenDevTools in configuration file ${n}`), _t(n, r), t;
2631
+ return console.log(`disabling OpenDevTools in configuration file ${n}`), $t(n, r), t;
2629
2632
  }
2630
2633
  isRunning() {
2631
2634
  return this._running;
@@ -2634,7 +2637,7 @@ class P {
2634
2637
  this._options = t;
2635
2638
  }
2636
2639
  setVideoAndTraceName(t) {
2637
- this._videoAndTraceName = t, y.info().retry > 0 && (this._videoAndTraceName += `_retry-${y.info().retry}`);
2640
+ this._videoAndTraceName = t, B.info().retry > 0 && (this._videoAndTraceName += `_retry-${B.info().retry}`);
2638
2641
  }
2639
2642
  getTestOutput() {
2640
2643
  return this._testOutput;
@@ -2644,15 +2647,15 @@ class P {
2644
2647
  }
2645
2648
  }
2646
2649
  function Be() {
2647
- const t = process.env.REGISTRY_URL ?? "ghcr.io", e = process.env.CI ? "podmandesktop-ci" : "", n = process.env.REGISTRY_USERNAME ?? e, o = process.env.PODMANDESKTOP_CI_BOT_TOKEN ?? "", r = process.env.CI ? o : "", c = process.env.REGISTRY_PASSWD ?? r;
2648
- return [t, n, c];
2650
+ const t = process.env.REGISTRY_URL ?? "ghcr.io", e = process.env.CI ? "podmandesktop-ci" : "", n = process.env.REGISTRY_USERNAME ?? e, o = process.env.PODMANDESKTOP_CI_BOT_TOKEN ?? "", r = process.env.CI ? o : "", l = process.env.REGISTRY_PASSWD ?? r;
2651
+ return [t, n, l];
2649
2652
  }
2650
2653
  function pa() {
2651
2654
  const [i, t, e] = Be();
2652
2655
  return !!i && !!t && !!e;
2653
2656
  }
2654
2657
  async function Ba(i, t) {
2655
- await b(async () => i.contexts().length > 0, {
2658
+ await y(async () => i.contexts().length > 0, {
2656
2659
  timeout: 1e4,
2657
2660
  message: "Waiting for browser contexts to be available",
2658
2661
  sendError: !1
@@ -2662,18 +2665,18 @@ async function Ba(i, t) {
2662
2665
  }
2663
2666
  async function ya(i, t, e, n, o, r = { screenshotsPath: "" }) {
2664
2667
  console.log("Performing browser login...");
2665
- const c = r.screenshotsPath;
2666
- c && await i.screenshot({ path: B(c, "screenshots", "initial_page.png"), type: "png", fullPage: !0 }), await a(i).toHaveTitle(t), await a(e.inputLocator).toBeVisible(), await e.inputLocator.fill(e.inputValue), await a(e.confirmLocator).toBeEnabled(), await e.confirmLocator.click(), c && await i.screenshot({ path: B(c, "screenshots", "after_username_page.png"), type: "png", fullPage: !0 }), await a(n.inputLocator).toBeVisible(), await n.inputLocator.fill(n.inputValue), await a(n.confirmLocator).toBeEnabled(), await n.confirmLocator.click(), c && await i.screenshot({ path: B(c, "screenshots", "after_password_page.png"), type: "png", fullPage: !0 }), await o(i);
2668
+ const l = r.screenshotsPath;
2669
+ l && await i.screenshot({ path: p(l, "screenshots", "initial_page.png"), type: "png", fullPage: !0 }), await a(i).toHaveTitle(t), await a(e.inputLocator).toBeVisible(), await e.inputLocator.fill(e.inputValue), await a(e.confirmLocator).toBeEnabled(), await e.confirmLocator.click(), l && await i.screenshot({ path: p(l, "screenshots", "after_username_page.png"), type: "png", fullPage: !0 }), await a(n.inputLocator).toBeVisible(), await n.inputLocator.fill(n.inputValue), await a(n.confirmLocator).toBeEnabled(), await n.confirmLocator.click(), l && await i.screenshot({ path: p(l, "screenshots", "after_password_page.png"), type: "png", fullPage: !0 }), await o(i);
2667
2670
  }
2668
2671
  async function ba(i, t, e = []) {
2669
2672
  console.log("Starting a web server on port 9222");
2670
- const n = await Gt.launch({
2673
+ const n = await _t.launch({
2671
2674
  headless: !1,
2672
2675
  args: [`--remote-debugging-port=${i}`, ...e],
2673
2676
  tracesDir: t,
2674
2677
  slowMo: 200
2675
2678
  });
2676
- if (await b(async () => n?.isConnected(), {
2679
+ if (await y(async () => n?.isConnected(), {
2677
2680
  timeout: 1e4,
2678
2681
  message: "Waiting for browser to be connected",
2679
2682
  sendError: !1
@@ -2685,12 +2688,12 @@ async function xa(i, t, e, n = "") {
2685
2688
  return await ye(i, t, e, n, 1e4);
2686
2689
  }
2687
2690
  async function ye(i, t, e, n, o = 1e4) {
2688
- const l = (await i.waitForEvent("console", {
2689
- predicate: (x) => x.type() === "log" && t.test(x.text()),
2691
+ const c = (await i.waitForEvent("console", {
2692
+ predicate: (b) => b.type() === "log" && t.test(b.text()),
2690
2693
  timeout: o
2691
2694
  })).text();
2692
- n && a(l).toContain(n);
2693
- const u = e.exec(l), h = u ? u[1] : void 0;
2695
+ n && a(c).toContain(n);
2696
+ const u = e.exec(c), h = u ? u[1] : void 0;
2694
2697
  return console.log(`Matched string: ${h}`), h;
2695
2698
  }
2696
2699
  async function fa(i, t, e, n) {
@@ -2705,7 +2708,7 @@ async function be(i, t = 5e3) {
2705
2708
  }
2706
2709
  return !0;
2707
2710
  }
2708
- class xe extends m {
2711
+ class xe extends w {
2709
2712
  header;
2710
2713
  content;
2711
2714
  clusterPropertiesInformation;
@@ -2755,11 +2758,13 @@ class fe extends xe {
2755
2758
  await a(this.configFileInput).toBeEmpty(), await a(this.clusterNameField).toHaveValue("kind-cluster"), await a(this.providerType).toHaveText("podman"), await a(this.httpPort).toHaveValue("9090"), await a(this.httpsPort).toHaveValue("9443"), await a(this.controllerCheckbox).toBeChecked(), await a(this.containerImage).toBeEmpty();
2756
2759
  });
2757
2760
  }
2758
- async createKindCluster(t = "kind-cluster", { configFilePath: e, providerType: n, httpPort: o, httpsPort: r, useIngressController: c, containerImage: l } = {
2761
+ async createKindCluster(t = "kind-cluster", { configFilePath: e, providerType: n, httpPort: o, httpsPort: r, useIngressController: l, containerImage: c } = {
2759
2762
  useIngressController: !0
2760
2763
  }, u) {
2761
2764
  return s.step("Create kind cluster", async () => {
2762
- if (await this.validateKindClusterDefaultSettings(), e ? (await this.configFileInput.evaluate((h) => h.removeAttribute("readonly")), await this.configFileInput.fill(e), await a(this.warning).toBeVisible(), await a(this.warning).toContainText("By specifying a config file, all other options will be ignored except for ingress controller deployment.")) : await U(this.clusterNameField, t), n && n !== "podman") {
2765
+ if (await this.validateKindClusterDefaultSettings(), e ? (await this.configFileInput.evaluate((h) => h.removeAttribute("readonly")), await this.configFileInput.fill(e), await a(this.warning).toBeVisible(), await a(this.warning).toContainText(
2766
+ "By specifying a config file, all other options will be ignored except for ingress controller deployment."
2767
+ )) : await U(this.clusterNameField, t), n && n !== "podman") {
2763
2768
  await this.providerType.click();
2764
2769
  const h = this.clusterPropertiesInformation.getByRole("button", {
2765
2770
  name: n,
@@ -2767,11 +2772,11 @@ class fe extends xe {
2767
2772
  });
2768
2773
  await a(h).toBeEnabled(), await h.click(), await a(this.providerType).toHaveText(n);
2769
2774
  }
2770
- o && (await U(this.httpPort, o), await a(this.httpPort).toHaveText(o)), r && (await U(this.httpsPort, r), await a(this.httpsPort).toHaveText(r)), await a(this.controllerCheckbox).toBeEnabled(), c ? (await this.controllerCheckbox.check(), await a(this.controllerCheckbox).toBeChecked()) : (await this.controllerCheckbox.uncheck(), await a(this.controllerCheckbox).not.toBeChecked()), l && (await U(this.containerImage, l), await a(this.containerImage).toHaveText(l)), await this.createCluster(u);
2775
+ o && (await U(this.httpPort, o), await a(this.httpPort).toHaveText(o)), r && (await U(this.httpsPort, r), await a(this.httpsPort).toHaveText(r)), await a(this.controllerCheckbox).toBeEnabled(), l ? (await this.controllerCheckbox.check(), await a(this.controllerCheckbox).toBeChecked()) : (await this.controllerCheckbox.uncheck(), await a(this.controllerCheckbox).not.toBeChecked()), c && (await U(this.containerImage, c), await a(this.containerImage).toHaveText(c)), await this.createCluster(u);
2771
2776
  });
2772
2777
  }
2773
2778
  }
2774
- class Lt extends S {
2779
+ class Pt extends S {
2775
2780
  resourceStatus;
2776
2781
  constructor(t, e) {
2777
2782
  super(t, e), this.resourceStatus = this.header.getByLabel("Connection Status Label");
@@ -2786,7 +2791,7 @@ class Lt extends S {
2786
2791
  });
2787
2792
  }
2788
2793
  }
2789
- class ke extends m {
2794
+ class ke extends w {
2790
2795
  tasksManagerWindow;
2791
2796
  header;
2792
2797
  heading;
@@ -2840,7 +2845,7 @@ class ke extends m {
2840
2845
  return this.taskList.getByRole("row", { name: t });
2841
2846
  }
2842
2847
  }
2843
- class St extends m {
2848
+ class Tt extends w {
2844
2849
  content;
2845
2850
  kindInstallationButton;
2846
2851
  kubernetesContext;
@@ -2853,7 +2858,9 @@ class St extends m {
2853
2858
  pinProvidersButton;
2854
2859
  pinMenu;
2855
2860
  constructor(t) {
2856
- super(t), this.content = t.getByRole("contentinfo", { name: "Status Bar" }), this.kindInstallationButton = this.content.getByTitle("Kind not found on your system, click to download and install it"), this.kubernetesContext = this.content.getByTitle("Current Kubernetes Context"), this.versionButton = this.content.getByRole("button", { name: /^v\d+\.\d+\.\d+(-\w+)?$/ }), this.updateButtonTitle = this.content.getByRole("button").and(this.content.getByTitle("Update available")), this.shareYourFeedbackButton = this.content.getByRole("button").and(this.content.getByTitle("Share your feedback")), this.troubleshootingButton = this.content.getByRole("button").and(this.content.getByTitle("Troubleshooting")), this.tasksButton = this.content.getByRole("button").and(this.content.getByTitle("Tasks")), this.helpButton = this.content.getByRole("button").and(this.content.getByTitle("Help")), this.pinProvidersButton = this.content.getByRole("button", { name: "Pin" }), this.pinMenu = this.page.getByTitle("Pin Menu");
2861
+ super(t), this.content = t.getByRole("contentinfo", { name: "Status Bar" }), this.kindInstallationButton = this.content.getByTitle(
2862
+ "Kind not found on your system, click to download and install it"
2863
+ ), this.kubernetesContext = this.content.getByTitle("Current Kubernetes Context"), this.versionButton = this.content.getByRole("button", { name: /^v\d+\.\d+\.\d+(-\w+)?$/ }), this.updateButtonTitle = this.content.getByRole("button").and(this.content.getByTitle("Update available")), this.shareYourFeedbackButton = this.content.getByRole("button").and(this.content.getByTitle("Share your feedback")), this.troubleshootingButton = this.content.getByRole("button").and(this.content.getByTitle("Troubleshooting")), this.tasksButton = this.content.getByRole("button").and(this.content.getByTitle("Tasks")), this.helpButton = this.content.getByRole("button").and(this.content.getByTitle("Help")), this.pinProvidersButton = this.content.getByRole("button", { name: "Pin" }), this.pinMenu = this.page.getByTitle("Pin Menu");
2857
2864
  }
2858
2865
  async installKindCLI() {
2859
2866
  await a(this.kindInstallationButton).toBeVisible(), await this.kindInstallationButton.click(), await g(this.page, "Kind"), await g(this.page, "Kind"), await g(this.page, "Kind", !0, "OK");
@@ -2885,44 +2892,48 @@ class St extends m {
2885
2892
  : ` + e);
2886
2893
  }
2887
2894
  }
2888
- async function ka(i, t, e = 3e5, { configFilePath: n, providerType: o, httpPort: r, httpsPort: c, useIngressController: l, containerImage: u } = {}) {
2895
+ async function ka(i, t, e = 3e5, { configFilePath: n, providerType: o, httpPort: r, httpsPort: l, useIngressController: c, containerImage: u } = {}) {
2889
2896
  return s.step(`Create Kind cluster with settings: configFilePath=${n},
2890
2897
  providerType=${o}, httpPort=${r},
2891
- httpsPort=${c}, ingressController=${l}`, async () => {
2892
- const h = new d(i), x = new St(i), v = new J(i, "kind", t), _ = new fe(i), lt = await (await h.openSettings()).openTabPage(L);
2893
- if (await a(lt.heading).toBeVisible({ timeout: 1e4 }), await a.poll(async () => lt.resourceCardIsVisible("kind")).toBeTruthy(), await a(v.createButton).toBeVisible(), await v.doesResourceElementExist())
2894
- if (await v.resourceElementConnectionStatus.textContent() !== C.Running)
2898
+ httpsPort=${l}, ingressController=${c}`, async () => {
2899
+ const h = new d(i), b = new Tt(i), R = new Y(i, "kind", t), _ = new fe(i), rt = await (await h.openSettings()).openTabPage(E);
2900
+ if (await a(rt.heading).toBeVisible({ timeout: 1e4 }), await a.poll(async () => rt.resourceCardIsVisible("kind")).toBeTruthy(), await a(R.createButton).toBeVisible(), await R.doesResourceElementExist())
2901
+ if (await R.resourceElementConnectionStatus.textContent() !== v.Running)
2895
2902
  console.log(`Kind cluster [${t}] already present, but not running. Delete the cluster...`), await Re(i);
2896
2903
  else {
2897
2904
  console.log(`Kind cluster [${t}] already present, skipping creation.`);
2898
2905
  return;
2899
2906
  }
2900
- await v.createButton.click(), await _.createKindCluster(t, {
2901
- configFilePath: n,
2902
- providerType: o,
2903
- httpPort: r,
2904
- httpsPort: c,
2905
- useIngressController: l,
2906
- containerImage: u
2907
- }, e), await a(v.resourceElement).toBeVisible(), await a(v.resourceElementConnectionStatus).toHaveText(C.Running, {
2907
+ await R.createButton.click(), await _.createKindCluster(
2908
+ t,
2909
+ {
2910
+ configFilePath: n,
2911
+ providerType: o,
2912
+ httpPort: r,
2913
+ httpsPort: l,
2914
+ useIngressController: c,
2915
+ containerImage: u
2916
+ },
2917
+ e
2918
+ ), await a(R.resourceElement).toBeVisible(), await a(R.resourceElementConnectionStatus).toHaveText(v.Running, {
2908
2919
  timeout: 15e3
2909
- }), await x.validateKubernetesContext(`kind-${t}`);
2920
+ }), await b.validateKubernetesContext(`kind-${t}`);
2910
2921
  });
2911
2922
  }
2912
2923
  async function Re(i, t = "kind", e = "kind-cluster-control-plane", n = "kind-cluster", o = 5e4) {
2913
2924
  return s.step(`Delete ${t} cluster`, async () => {
2914
- const r = await ot(i, e), c = new d(i), l = new J(i, t, n);
2915
- await c.openSettings();
2916
- const u = new L(i);
2917
- if (await a(u.heading).toBeVisible({ timeout: 1e4 }), !await l.doesResourceElementExist()) {
2925
+ const r = await nt(i, e), l = new d(i), c = new Y(i, t, n);
2926
+ await l.openSettings();
2927
+ const u = new E(i);
2928
+ if (await a(u.heading).toBeVisible({ timeout: 1e4 }), !await c.doesResourceElementExist()) {
2918
2929
  console.log(`Kind cluster [${n}] not present, skipping deletion.`);
2919
2930
  return;
2920
2931
  }
2921
- await l.performConnectionAction(k.Stop), await a(l.resourceElementConnectionStatus).toHaveText(C.Off, {
2932
+ await c.performConnectionAction(f.Stop), await a(c.resourceElementConnectionStatus).toHaveText(v.Off, {
2922
2933
  timeout: o
2923
- }), await l.performConnectionAction(k.Delete), await a(l.markdownContent).toBeVisible({
2934
+ }), await c.performConnectionAction(f.Delete), await a(c.markdownContent).toBeVisible({
2924
2935
  timeout: o
2925
- }), await At(i, n, e, r);
2936
+ }), await It(i, n, e, r);
2926
2937
  });
2927
2938
  }
2928
2939
  async function Ra(i, t) {
@@ -2930,22 +2941,22 @@ async function Ra(i, t) {
2930
2941
  const n = await new d(i).openContainers();
2931
2942
  await a.poll(async () => n.containerExists(t)).toBeTruthy();
2932
2943
  const o = await n.openContainersDetails(t);
2933
- await a.poll(async () => await o.getState()).toEqual(D.Running);
2934
- const r = new z(i), c = await ot(i, t);
2935
- if (!c)
2944
+ await a.poll(async () => await o.getState()).toEqual($.Running);
2945
+ const r = new q(i), l = await nt(i, t);
2946
+ if (!l)
2936
2947
  throw new Error(`Volume name for container "${t}" is not defined.`);
2937
- const l = await r.openVolumeDetails(c);
2938
- await a.poll(async () => await l.isUsed()).toBeTruthy();
2948
+ const c = await r.openVolumeDetails(l);
2949
+ await a.poll(async () => await c.isUsed()).toBeTruthy();
2939
2950
  });
2940
2951
  }
2941
2952
  async function Ca(i, t, e, n, o = 3e4) {
2942
2953
  return s.step(`Performs "${e}" action, expects "${n}" state.`, async () => {
2943
- if (await new d(i).openSettings(), await t.performConnectionAction(e), e === k.Restart) {
2944
- const c = t.resourceElementConnectionActions.getByRole("button", {
2945
- name: k.Stop,
2954
+ if (await new d(i).openSettings(), await t.performConnectionAction(e), e === f.Restart) {
2955
+ const l = t.resourceElementConnectionActions.getByRole("button", {
2956
+ name: f.Stop,
2946
2957
  exact: !0
2947
2958
  });
2948
- await a(c).toBeEnabled({ timeout: o });
2959
+ await a(l).toBeEnabled({ timeout: o });
2949
2960
  }
2950
2961
  await a(t.resourceElementConnectionStatus).toHaveText(n, {
2951
2962
  timeout: o
@@ -2954,52 +2965,52 @@ async function Ca(i, t, e, n, o = 3e4) {
2954
2965
  }
2955
2966
  async function va(i, t, e, n, o, r = 3e4) {
2956
2967
  return s.step(`Performs a connection action '${n}' on the resource from the details page, verifies the expected resource state '${o}'`, async () => {
2957
- const c = new d(i), l = new Lt(i, e);
2968
+ const l = new d(i), c = new Pt(i, e);
2958
2969
  try {
2959
- await a(l.heading).toBeVisible();
2970
+ await a(c.heading).toBeVisible();
2960
2971
  } catch {
2961
- const h = await (await c.openSettings()).openTabPage(L);
2972
+ const h = await (await l.openSettings()).openTabPage(E);
2962
2973
  await a(h.heading).toBeVisible({ timeout: 1e4 }), await a(t.resourceElementDetailsButton).toBeEnabled(), await t.resourceElementDetailsButton.click();
2963
2974
  }
2964
- if (await l.performConnectionActionDetails(n), n === k.Restart) {
2965
- const u = l.controlActions.getByRole("button", {
2966
- name: k.Stop,
2975
+ if (await c.performConnectionActionDetails(n), n === f.Restart) {
2976
+ const u = c.controlActions.getByRole("button", {
2977
+ name: f.Stop,
2967
2978
  exact: !0
2968
2979
  });
2969
2980
  await a(u).toBeEnabled({ timeout: r });
2970
2981
  }
2971
- await a(l.resourceStatus).toHaveText(o, {
2982
+ await a(c.resourceStatus).toHaveText(o, {
2972
2983
  timeout: r
2973
2984
  });
2974
2985
  });
2975
2986
  }
2976
2987
  async function Pa(i, t = "kind", e = "kind-cluster-control-plane", n = "kind-cluster", o = 3e4) {
2977
2988
  return s.step(`Deletes the '${n}' cluster from the details page`, async () => {
2978
- const r = new d(i), c = await ot(i, e), u = await (await r.openSettings()).openTabPage(L), h = new J(i, t, n);
2989
+ const r = new d(i), l = await nt(i, e), u = await (await r.openSettings()).openTabPage(E), h = new Y(i, t, n);
2979
2990
  if (await a(u.heading).toBeVisible({ timeout: 1e4 }), !await h.doesResourceElementExist()) {
2980
2991
  console.log(`Cluster [${n}] not present, skipping deletion.`);
2981
2992
  return;
2982
2993
  }
2983
2994
  await a(h.resourceElementDetailsButton).toBeEnabled(), await h.resourceElementDetailsButton.click();
2984
- const x = new Lt(i, n);
2985
- await a(x.heading).toBeVisible(), await x.performConnectionActionDetails(k.Stop), await a(x.resourceStatus).toHaveText(C.Off, {
2995
+ const b = new Pt(i, n);
2996
+ await a(b.heading).toBeVisible(), await b.performConnectionActionDetails(f.Stop), await a(b.resourceStatus).toHaveText(v.Off, {
2986
2997
  timeout: o
2987
- }), await x.performConnectionActionDetails(k.Delete), await At(i, n, e, c);
2998
+ }), await b.performConnectionActionDetails(f.Delete), await It(i, n, e, l);
2988
2999
  });
2989
3000
  }
2990
- async function At(i, t, e, n, o = 2e4) {
3001
+ async function It(i, t, e, n, o = 2e4) {
2991
3002
  return s.step(`Validates that resources associated with the deleted '${t}' cluster are removed`, async () => {
2992
- const r = new d(i), c = await r.openContainers();
2993
- await a(c.heading).toBeVisible(), await a.poll(async () => c.containerExists(e), {
3003
+ const r = new d(i), l = await r.openContainers();
3004
+ await a(l.heading).toBeVisible(), await a.poll(async () => l.containerExists(e), {
2994
3005
  timeout: o
2995
3006
  }).toBeFalsy();
2996
- const l = await r.openVolumes();
2997
- await a(l.heading).toBeVisible(), await a.poll(async () => await l.waitForVolumeDelete(n), {
3007
+ const c = await r.openVolumes();
3008
+ await a(c.heading).toBeVisible(), await a.poll(async () => await c.waitForVolumeDelete(n), {
2998
3009
  timeout: o
2999
3010
  }).toBeTruthy();
3000
3011
  });
3001
3012
  }
3002
- class Ce extends m {
3013
+ class Ce extends w {
3003
3014
  welcomeMessage;
3004
3015
  telemetryConsent;
3005
3016
  skipOnBoarding;
@@ -3038,7 +3049,7 @@ class Ce extends m {
3038
3049
  } catch {
3039
3050
  console.log("Skip Onboarding button is still visible, retrying to press the button"), await this.skipOnBoarding.click({ force: !0 });
3040
3051
  }
3041
- return new Pt(this.page);
3052
+ return new kt(this.page);
3042
3053
  });
3043
3054
  }
3044
3055
  /**
@@ -3058,8 +3069,8 @@ class Ce extends m {
3058
3069
  });
3059
3070
  }
3060
3071
  }
3061
- const Ta = y.extend({
3062
- runnerOptions: [new at(), { option: !0 }],
3072
+ const Ta = B.extend({
3073
+ runnerOptions: [new Z(), { option: !0 }],
3063
3074
  runner: async ({ runnerOptions: i }, t) => {
3064
3075
  const e = await P.getInstance({ runnerOptions: i });
3065
3076
  await t(e);
@@ -3076,167 +3087,192 @@ const Ta = y.extend({
3076
3087
  await t(e);
3077
3088
  },
3078
3089
  statusBar: async ({ page: i }, t) => {
3079
- const e = new St(i);
3090
+ const e = new Tt(i);
3080
3091
  await t(e);
3081
3092
  }
3082
3093
  });
3083
3094
  async function Ia(i, t, e, n) {
3084
3095
  return s.step(`Deploy '${t}' and verify pod '${n}' appears in the Kubernetes environment`, async () => {
3085
- const o = new R(i, t), r = new d(i);
3096
+ const o = new k(i, t), r = new d(i);
3086
3097
  await a(o.heading).toBeVisible(), await (await o.openDeployToKubernetesPage()).deployPod(t, { useKubernetesServices: !0 }, e);
3087
- const u = await (await r.openKubernetes()).openTabPage(w.Pods);
3098
+ const u = await (await r.openKubernetes()).openTabPage(m.Pods);
3088
3099
  await a.poll(async () => u.getRowByName(n), { timeout: 15e3 }).toBeTruthy();
3089
3100
  });
3090
3101
  }
3091
- async function Ea(i, t, e, n) {
3102
+ async function La(i, t, e, n) {
3092
3103
  return s.step(`Create ${t} kubernetes resource: ${e}`, async () => {
3093
3104
  const o = new d(i);
3094
3105
  try {
3095
- const l = f("kubectl version").toString();
3096
- console.log(`Kubectl version stdout: ${l}`);
3097
- } catch (l) {
3098
- throw new Error(`Kubectl is not installed: ${l}`);
3106
+ const c = x("kubectl version").toString();
3107
+ console.log(`Kubectl version stdout: ${c}`);
3108
+ } catch (c) {
3109
+ throw new Error(`Kubectl is not installed: ${c}`);
3099
3110
  }
3100
3111
  try {
3101
- const l = f(`kubectl apply -f ${n}`).toString();
3102
- console.log(`Kube yaml ${n} applied successfully via cli: ${l}`);
3103
- } catch (l) {
3104
- throw new Error(`Error encountered when trying to apply kube yaml: ${l}`);
3112
+ const c = x(`kubectl apply -f ${n}`).toString();
3113
+ console.log(`Kube yaml ${n} applied successfully via cli: ${c}`);
3114
+ } catch (c) {
3115
+ throw new Error(`Error encountered when trying to apply kube yaml: ${c}`);
3105
3116
  }
3106
- const c = await (await o.openKubernetes()).openTabPage(t);
3107
- await a(c.heading).toBeVisible(), await a.poll(async () => c.getRowByName(e)).toBeTruthy();
3117
+ const l = await (await o.openKubernetes()).openTabPage(t);
3118
+ await a(l.heading).toBeVisible(), await a.poll(async () => l.getRowByName(e)).toBeTruthy();
3108
3119
  });
3109
3120
  }
3110
- async function La(i, t, e, n = 3e4) {
3121
+ async function Ea(i, t, e, n = 3e4) {
3111
3122
  return s.step(`Delete ${t} kubernetes resource: ${e}`, async () => {
3112
- const c = await (await new d(i).openKubernetes()).openTabPage(t);
3113
- await c.deleteKubernetesResource(e), await g(i), await a.poll(async () => await c.getRowByName(e), { timeout: n }).not.toBeTruthy();
3123
+ const l = await (await new d(i).openKubernetes()).openTabPage(t);
3124
+ await l.deleteKubernetesResource(e), await g(i), await a.poll(async () => await l.getRowByName(e), { timeout: n }).not.toBeTruthy();
3114
3125
  });
3115
3126
  }
3116
3127
  async function Sa(i, t, e, n) {
3117
- const l = await (await (await new d(i).openKubernetes()).openTabPage(t)).openResourceDetails(e, t);
3118
- await a(l.heading).toBeVisible();
3119
- const u = await l.activateTab("Summary");
3120
- await a(u.tabContent).toContainText(`Desired: ${n}, Updated: ${n}, Total: ${n}, Available: ${n}, Unavailable: N/A`);
3128
+ const c = await (await (await new d(i).openKubernetes()).openTabPage(t)).openResourceDetails(e, t);
3129
+ await a(c.heading).toBeVisible();
3130
+ const u = await c.activateTab("Summary");
3131
+ await a(u.tabContent).toContainText(
3132
+ `Desired: ${n}, Updated: ${n}, Total: ${n}, Available: ${n}, Unavailable: N/A`
3133
+ );
3121
3134
  }
3122
3135
  async function Aa(i, t, e, n, o = 9e4) {
3123
3136
  return s.step(`Check ${t} kubernetes resource state, should be ${n}`, async () => {
3124
- const u = await (await (await new d(i).openKubernetes()).openTabPage(t)).openResourceDetails(e, t, o);
3137
+ const u = await (await (await new d(i).openKubernetes()).openTabPage(t)).openResourceDetails(
3138
+ e,
3139
+ t,
3140
+ o
3141
+ );
3125
3142
  await a(u.heading).toBeVisible(), await a.poll(async () => u.getState(), { timeout: o }).toBe(n);
3126
3143
  });
3127
3144
  }
3128
3145
  async function Va(i, t, e, n = 3, o = 5) {
3129
3146
  return s.step("Change deployment kubernetes cluster resource", async () => {
3130
- const c = await new d(i).openKubernetes();
3131
- await a.poll(async () => await yt(i, e), {
3147
+ const l = await new d(i).openKubernetes();
3148
+ await a.poll(async () => await gt(i, e), {
3132
3149
  timeout: 6e4
3133
3150
  }).toBe(n);
3134
- const l = await c.openTabPage(t);
3135
- await a(l.heading).toBeVisible();
3136
- const u = await l.openResourceDetails(e, t);
3137
- await a(u.heading).toBeVisible(), await u.editKubernetsYamlFile(`replicas: ${n}`, `replicas: ${o}`), await a.poll(async () => await yt(i, e), {
3151
+ const c = await l.openTabPage(t);
3152
+ await a(c.heading).toBeVisible();
3153
+ const u = await c.openResourceDetails(e, t);
3154
+ await a(u.heading).toBeVisible(), await u.editKubernetsYamlFile(
3155
+ `replicas: ${n}`,
3156
+ `replicas: ${o}`
3157
+ ), await a.poll(async () => await gt(i, e), {
3138
3158
  timeout: 6e4
3139
3159
  }).toBe(o);
3140
3160
  });
3141
3161
  }
3142
- async function yt(i, t) {
3162
+ async function gt(i, t) {
3143
3163
  return s.step(`Count pod replicas: ${t}`, async () => {
3144
- const o = await (await new d(i).openKubernetes()).openTabPage(w.Pods);
3164
+ const o = await (await new d(i).openKubernetes()).openTabPage(m.Pods);
3145
3165
  let r = 0;
3146
- const c = await o.getAllTableRows();
3147
- for (let l = c.length - 1; l > 0; l--)
3148
- (await c[l].getByRole("cell").nth(3).getByRole("button").textContent())?.includes(t) && (r += 1);
3166
+ const l = await o.getAllTableRows();
3167
+ for (let c = l.length - 1; c > 0; c--)
3168
+ (await l[c].getByRole("cell").nth(3).getByRole("button").textContent())?.includes(t) && (r += 1);
3149
3169
  return r;
3150
3170
  });
3151
3171
  }
3152
3172
  async function Da(i, t, e) {
3153
3173
  return s.step(`Configure port forwarding for ${e} ${t} k8s resource`, async () => {
3154
3174
  await (await (await (await new d(i).openKubernetes()).openTabPage(t)).openResourceDetails(e, t)).activateTab("Summary");
3155
- const l = i.getByRole("button", { name: "Forward..." });
3156
- await a(l).toBeVisible(), await l.click();
3175
+ const c = i.getByRole("button", { name: "Forward..." });
3176
+ await a(c).toBeVisible(), await c.click();
3157
3177
  const u = i.getByRole("button", { name: "Open", exact: !0 }), h = i.getByRole("button", { name: "Remove" });
3158
3178
  await a(u).toBeVisible({ timeout: 1e4 }), await a(h).toBeVisible();
3159
3179
  });
3160
3180
  }
3161
3181
  async function Na(i, t, e, n) {
3162
3182
  return s.step(`Verify port forwarding for ${t} configuration: local port ${e}, remote port ${n}`, async () => {
3163
- const c = await (await new d(i).openKubernetes()).openTabPage(w.PortForwarding);
3164
- await a(c.heading).toBeVisible();
3165
- const l = await c.fetchKubernetesResource(t), u = await c.geAttributeByRow(l, "Local Port", w.PortForwarding), h = await c.geAttributeByRow(l, "Remote Port", w.PortForwarding);
3183
+ const l = await (await new d(i).openKubernetes()).openTabPage(m.PortForwarding);
3184
+ await a(l.heading).toBeVisible();
3185
+ const c = await l.fetchKubernetesResource(t), u = await l.geAttributeByRow(
3186
+ c,
3187
+ "Local Port",
3188
+ m.PortForwarding
3189
+ ), h = await l.geAttributeByRow(
3190
+ c,
3191
+ "Remote Port",
3192
+ m.PortForwarding
3193
+ );
3166
3194
  a(Number(await u.textContent())).toBe(e), a(Number(await h.textContent())).toBe(n);
3167
3195
  });
3168
3196
  }
3169
3197
  async function $a(i, t) {
3170
3198
  return s.step("Verify local port response", async () => {
3171
- a.poll(async () => {
3172
- const o = await (await (await fetch(i, { cache: "no-store" })).blob()).text();
3173
- a(o).toContain(t);
3174
- }, { timeout: 2e4, intervals: [1e3, 3e3, 5e3, 15e3] });
3199
+ a.poll(
3200
+ async () => {
3201
+ const o = await (await (await fetch(i, { cache: "no-store" })).blob()).text();
3202
+ a(o).toContain(t);
3203
+ },
3204
+ { timeout: 2e4, intervals: [1e3, 3e3, 5e3, 15e3] }
3205
+ );
3175
3206
  });
3176
3207
  }
3177
3208
  async function Ma(i, t, e, n = 16e4) {
3178
3209
  const r = await new d(i).openContainers();
3179
3210
  await a(r.heading).toBeVisible(), await a.poll(async () => r.getContainerRowByName(t)).toBeTruthy();
3180
- const c = await r.openContainersDetails(t);
3181
- await a.poll(async () => {
3182
- await c.executeCommandInTerminal(e);
3183
- const l = await ve(i, t);
3184
- return await c.executeCommandInTerminal("clear"), l;
3185
- }, { timeout: n }).toBeTruthy();
3211
+ const l = await r.openContainersDetails(t);
3212
+ await a.poll(
3213
+ async () => {
3214
+ await l.executeCommandInTerminal(e);
3215
+ const c = await ve(i, t);
3216
+ return await l.executeCommandInTerminal("clear"), c;
3217
+ },
3218
+ { timeout: n }
3219
+ ).toBeTruthy();
3186
3220
  }
3187
3221
  async function ve(i, t) {
3188
- const e = new R(i, t);
3222
+ const e = new k(i, t);
3189
3223
  await e.activateTab("Terminal"), await a(e.terminalContent).toBeVisible(), await i.waitForTimeout(2e3);
3190
3224
  try {
3191
- return await a(e.terminalContent).toContainText(/contour-\S+\s+1\/1\s+Running\s+\d+\s+\S+/), await a(e.terminalContent).toContainText(/contour-certgen-\S+\s+0\/1\s+Completed\s+\d+\s+\S+/), await a(e.terminalContent).toContainText(/envoy-\S+\s+2\/2\s+Running\s+\d+\s+\S+/), !0;
3225
+ return await a(e.terminalContent).toContainText(/contour-\S+\s+1\/1\s+Running\s+\d+\s+\S+/), await a(e.terminalContent).toContainText(
3226
+ /contour-certgen-\S+\s+0\/1\s+Completed\s+\d+\s+\S+/
3227
+ ), await a(e.terminalContent).toContainText(/envoy-\S+\s+2\/2\s+Running\s+\d+\s+\S+/), !0;
3192
3228
  } catch {
3193
3229
  return !1;
3194
3230
  }
3195
3231
  }
3196
- const bt = process.env.CONTAINERS_MACHINE_PROVIDER, Pe = {
3197
- wsl: p.WSL,
3198
- hyperv: p.HyperV,
3199
- applehv: p.AppleHV,
3200
- libkrun: p.LibKrun,
3201
- qemu: p.Qemu
3232
+ const dt = process.env.CONTAINERS_MACHINE_PROVIDER, Pe = {
3233
+ wsl: C.WSL,
3234
+ hyperv: C.HyperV,
3235
+ applehv: C.AppleHV,
3236
+ libkrun: C.LibKrun,
3237
+ qemu: C.Qemu
3202
3238
  };
3203
3239
  function Fa() {
3204
- return bt ? Pe[bt?.toLowerCase()] : void 0;
3240
+ return dt ? Pe[dt?.toLowerCase()] : void 0;
3205
3241
  }
3206
3242
  function Te() {
3207
- return O ? p.WSL : F ? p.LibKrun : p.Native;
3243
+ return O ? C.WSL : F ? C.LibKrun : C.Native;
3208
3244
  }
3209
3245
  const Ie = {
3210
3246
  extensionName: "minikube",
3211
3247
  extensionFullName: "minikube extension",
3212
3248
  extensionLabel: "minikube",
3213
3249
  extensionFullLabel: "podman-desktop.minikube"
3214
- }, Vt = {
3250
+ }, Lt = {
3215
3251
  extensionName: "Podman AI Lab",
3216
3252
  extensionFullName: "Podman AI Lab extension",
3217
3253
  extensionLabel: "ai-lab",
3218
3254
  extensionFullLabel: "redhat.ai-lab"
3219
- }, Ee = {
3255
+ }, Le = {
3220
3256
  extensionName: "Red Hat Extension Pack",
3221
3257
  extensionFullName: "Red Hat Extension Pack extension",
3222
3258
  extensionLabel: "redhat-pack",
3223
3259
  extensionFullLabel: "redhat.redhat-pack"
3224
- }, Dt = {
3260
+ }, Et = {
3225
3261
  extensionName: "Bootable Container",
3226
3262
  extensionFullName: "Bootable Container extension",
3227
3263
  extensionLabel: "bootc",
3228
3264
  extensionFullLabel: "redhat.bootc"
3229
- }, Le = {
3265
+ }, Ee = {
3230
3266
  extensionName: "Developer Sandbox",
3231
3267
  extensionFullName: "Developer Sandbox extension",
3232
3268
  extensionLabel: "redhat-sandbox",
3233
3269
  extensionFullLabel: "redhat.redhat-sandbox"
3234
- }, Nt = {
3270
+ }, St = {
3235
3271
  extensionName: "Image Layers Explorer",
3236
3272
  extensionFullName: "Image Layers Explorer extension",
3237
3273
  extensionLabel: "layers-explorer",
3238
3274
  extensionFullLabel: "podman-desktop.layers-explorer"
3239
- }, $t = {
3275
+ }, At = {
3240
3276
  extensionName: "Podman Quadlet",
3241
3277
  extensionFullName: "Podman Quadlet extension",
3242
3278
  extensionLabel: "quadlet",
@@ -3312,24 +3348,24 @@ const Ie = {
3312
3348
  Me,
3313
3349
  Fe,
3314
3350
  Oe,
3315
- Vt,
3351
+ Lt,
3316
3352
  _e
3317
3353
  ], He = [
3318
3354
  Ie,
3319
- Vt,
3320
- Ee,
3321
- Dt,
3355
+ Lt,
3322
3356
  Le,
3323
- Nt,
3324
- $t,
3357
+ Et,
3358
+ Ee,
3359
+ St,
3360
+ At,
3325
3361
  Se,
3326
3362
  Ae,
3327
3363
  Ve
3328
3364
  ], Ha = [
3329
- Dt,
3330
- $t,
3365
+ Et,
3366
+ At,
3331
3367
  Ue,
3332
- Nt
3368
+ St
3333
3369
  ], Ka = [...He, De];
3334
3370
  class Ga extends I {
3335
3371
  main;
@@ -3344,7 +3380,7 @@ class Ga extends I {
3344
3380
  return this.providersList.getByRole("listitem", { name: t });
3345
3381
  }
3346
3382
  }
3347
- class Wa extends m {
3383
+ class Wa extends w {
3348
3384
  commandPaletteInputField;
3349
3385
  constructor(t) {
3350
3386
  super(t), this.commandPaletteInputField = this.page.getByLabel("Command palette command input", { exact: !0 });
@@ -3355,7 +3391,7 @@ class Wa extends m {
3355
3391
  await this.commandPaletteInputField.isVisible() || await this.page.keyboard.press("F1"), await a(this.commandPaletteInputField).toBeVisible(), await this.commandPaletteInputField.pressSequentially(t, { delay: 25 }), await this.commandPaletteInputField.press("Enter");
3356
3392
  }
3357
3393
  }
3358
- class Mt extends m {
3394
+ class Vt extends w {
3359
3395
  mainPage;
3360
3396
  header;
3361
3397
  skipSetupButton;
@@ -3368,28 +3404,33 @@ class Mt extends m {
3368
3404
  super(t), this.mainPage = t.getByRole("region", { name: "Onboarding Body" }), this.header = this.mainPage.getByRole("heading", { name: "Header" }), this.skipSetupButton = this.header.getByRole("button", { name: "Skip this entire setup" }), this.onboardingComponent = this.mainPage.getByLabel("Onboarding Component"), this.onboardingStatusMessage = this.mainPage.getByLabel("Onboarding Status Message"), this.nextInfoMessage = this.mainPage.getByLabel("Next Info Message"), this.nextStepButton = this.mainPage.getByRole("button", { name: "Next Step" }), this.cancelSetupButtion = this.mainPage.getByRole("button", { name: "Cancel Setup" });
3369
3405
  }
3370
3406
  }
3371
- class X extends Mt {
3407
+ class J extends Vt {
3372
3408
  heading;
3373
3409
  constructor(t) {
3374
3410
  super(t), this.heading = this.page.getByRole("heading", { name: "Compose Setup Header" });
3375
3411
  }
3376
3412
  }
3377
- class Ya extends X {
3413
+ class Ya extends J {
3378
3414
  tryAgainButton;
3379
3415
  constructor(t) {
3380
3416
  super(t), this.tryAgainButton = this.mainPage.getByRole("button", { name: "Try again" });
3381
3417
  }
3382
3418
  }
3383
- class qa extends X {
3419
+ class qa extends J {
3384
3420
  wideDownloadAvailableMessage;
3385
3421
  constructor(t) {
3386
- super(t), this.wideDownloadAvailableMessage = this.mainPage.getByText("The next step will install Compose system-wide. You will be prompted for system");
3422
+ super(t), this.wideDownloadAvailableMessage = this.mainPage.getByText(
3423
+ "The next step will install Compose system-wide. You will be prompted for system"
3424
+ );
3387
3425
  }
3388
3426
  }
3389
- class ja extends X {
3427
+ class ja extends J {
3390
3428
  versionStatusMessage;
3391
3429
  constructor(t) {
3392
- super(t), this.versionStatusMessage = this.mainPage.getByText(/Compose will be downloaded in the next step \(Version v[0-9.]+\). Want to download/, { exact: !0 });
3430
+ super(t), this.versionStatusMessage = this.mainPage.getByText(
3431
+ /Compose will be downloaded in the next step \(Version v[0-9.]+\). Want to download/,
3432
+ { exact: !0 }
3433
+ );
3393
3434
  }
3394
3435
  async getVersion() {
3395
3436
  const t = await this.versionStatusMessage.textContent();
@@ -3398,7 +3439,7 @@ class ja extends X {
3398
3439
  return n && (e = n[0]), e;
3399
3440
  }
3400
3441
  }
3401
- class Ja extends X {
3442
+ class Ja extends J {
3402
3443
  composeCommandMessage;
3403
3444
  constructor(t) {
3404
3445
  super(t), this.composeCommandMessage = this.mainPage.getByText("$ podman compose up", { exact: !0 });
@@ -3443,11 +3484,14 @@ class Ke {
3443
3484
  return s.step(`Select dropdown option: ${o}`, async () => {
3444
3485
  if (await a(this.containerLocator).toBeVisible({ timeout: 1e4 }), await a(this.triggerButton).toBeVisible({ timeout: 1e4 }), await this.getCurrentValue() !== t) {
3445
3486
  await this.triggerButton.scrollIntoViewIfNeeded(), await this.triggerButton.click(), await a(this.containerLocator.getByRole("button").nth(1)).toBeVisible();
3446
- const c = this.containerLocator.getByRole("button", {
3487
+ const l = this.containerLocator.getByRole("button", {
3447
3488
  name: o,
3448
3489
  exact: n
3449
3490
  });
3450
- await a(c).toBeVisible({ timeout: 1e4 }), await c.click(), await a.poll(async () => (await this.hiddenInput.inputValue()).toLowerCase(), { timeout: 5e3 }).toBe(t.toLowerCase());
3491
+ await a(l).toBeVisible({ timeout: 1e4 }), await l.click(), await a.poll(
3492
+ async () => (await this.hiddenInput.inputValue()).toLowerCase(),
3493
+ { timeout: 5e3 }
3494
+ ).toBe(t.toLowerCase());
3451
3495
  }
3452
3496
  });
3453
3497
  }
@@ -3479,7 +3523,10 @@ class Ke {
3479
3523
  */
3480
3524
  async verifyState(t, e) {
3481
3525
  return s.step(`Verify dropdown state: ${t}`, async () => {
3482
- await a.poll(async () => (await this.hiddenInput.inputValue()).toLowerCase(), { timeout: 5e3 }).toBe(t.toLowerCase()), e && await a(this.triggerButton).toContainText(e, {
3526
+ await a.poll(
3527
+ async () => (await this.hiddenInput.inputValue()).toLowerCase(),
3528
+ { timeout: 5e3 }
3529
+ ).toBe(t.toLowerCase()), e && await a(this.triggerButton).toContainText(e, {
3483
3530
  ignoreCase: !0,
3484
3531
  timeout: 5e3
3485
3532
  });
@@ -3516,7 +3563,7 @@ class Ke {
3516
3563
  return this.hiddenInput;
3517
3564
  }
3518
3565
  }
3519
- class Ft extends m {
3566
+ class Dt extends w {
3520
3567
  podmanMachineConfiguration;
3521
3568
  podmanMachineName;
3522
3569
  imagePathBox;
@@ -3542,7 +3589,12 @@ class Ft extends m {
3542
3589
  name: "User mode networking"
3543
3590
  }), this.providerTypeDropdown = new Ke(t, "Provider Type"), this.startNowCheckbox = this.podmanMachineConfiguration.getByRole("checkbox", { name: "Start the machine now" }), this.createMachineButton = this.podmanMachineConfiguration.getByRole("button", { name: "Create" });
3544
3591
  }
3545
- async setupAndCreateMachine(t, { isRootful: e = !0, enableUserNet: n = !1, startNow: o = !0, virtualizationProvider: r } = {}) {
3592
+ async setupAndCreateMachine(t, {
3593
+ isRootful: e = !0,
3594
+ enableUserNet: n = !1,
3595
+ startNow: o = !0,
3596
+ virtualizationProvider: r
3597
+ } = {}) {
3546
3598
  return s.step(`Create Podman Machine '${t}' with settings: ${e ? "rootful" : "rootless"}, ${n ? "usernet enabled" : "usernet disabled"}, ${o ? "startnow enabled" : "startnow disabled"}${r ? ", and " + r : ""}`, async () => {
3547
3599
  await a(this.podmanMachineConfiguration).toBeVisible({
3548
3600
  timeout: 1e4
@@ -3556,40 +3608,49 @@ class Ft extends m {
3556
3608
  }
3557
3609
  async specifyVirtualizationProvider(t) {
3558
3610
  return s.step(`Set Podman Provider to ${t ?? Te()}`, async () => {
3559
- if (!t || !await this.providerTypeDropdown.getContainer().isVisible())
3560
- return;
3611
+ if (!t || !await this.providerTypeDropdown.getContainer().isVisible()) return;
3561
3612
  await this.providerTypeDropdown.waitForReady();
3562
3613
  const e = await this.providerTypeDropdown.getCurrentValue();
3563
- if (!xt(t, e)) {
3564
- const n = await this.providerTypeDropdown.getAvailableOptions(), o = nt[t], r = o.find((c) => n.some((l) => l.toLowerCase().trim() === c.toLowerCase().trim()));
3614
+ if (!mt(t, e)) {
3615
+ const n = await this.providerTypeDropdown.getAvailableOptions(), o = et[t], r = o.find(
3616
+ (l) => n.some((c) => c.toLowerCase().trim() === l.toLowerCase().trim())
3617
+ );
3565
3618
  if (!r)
3566
- throw new Error(`No matching variant found for provider ${t}. Available options: ${n.join(", ")}. Expected variants: ${o.join(", ")}`);
3619
+ throw new Error(
3620
+ `No matching variant found for provider ${t}. Available options: ${n.join(", ")}. Expected variants: ${o.join(", ")}`
3621
+ );
3567
3622
  await this.providerTypeDropdown.selectOption(r, r, !1), await this.providerTypeDropdown.verifyState(r, r);
3568
3623
  }
3569
3624
  });
3570
3625
  }
3571
3626
  }
3572
- class za extends m {
3627
+ class Qa extends w {
3573
3628
  heading;
3574
3629
  machineCreationForm;
3575
3630
  closeButton;
3576
3631
  constructor(t) {
3577
3632
  super(t), this.heading = this.page.getByRole("heading", {
3578
3633
  name: "Create Podman Machine"
3579
- }), this.machineCreationForm = new Ft(this.page), this.closeButton = this.page.getByRole("button", { name: "Close" });
3580
- }
3581
- async createMachine(t, { isRootful: e = !0, enableUserNet: n = !1, startNow: o = !0, setAsDefault: r = !0, virtualizationProvider: c }) {
3634
+ }), this.machineCreationForm = new Dt(this.page), this.closeButton = this.page.getByRole("button", { name: "Close" });
3635
+ }
3636
+ async createMachine(t, {
3637
+ isRootful: e = !0,
3638
+ enableUserNet: n = !1,
3639
+ startNow: o = !0,
3640
+ setAsDefault: r = !0,
3641
+ virtualizationProvider: l
3642
+ }) {
3582
3643
  return s.step(`Create Podman Machine: ${t}`, async () => {
3583
3644
  await this.machineCreationForm.setupAndCreateMachine(t, {
3584
3645
  isRootful: e,
3585
3646
  enableUserNet: n,
3586
3647
  startNow: o,
3587
- virtualizationProvider: c
3648
+ virtualizationProvider: l
3588
3649
  });
3589
- const l = this.page.getByText("Successful operation"), u = this.page.getByRole("button", {
3650
+ const c = this.page.getByText("Successful operation"), u = this.page.getByRole("button", {
3590
3651
  name: "Go back to resources"
3591
3652
  });
3592
- await a(l).toBeVisible({
3653
+ await a(c).toBeVisible({
3593
3654
  timeout: 12e4
3594
3655
  }), await a(u).toBeVisible();
3595
3656
  try {
@@ -3597,7 +3658,7 @@ class za extends m {
3597
3658
  } catch (h) {
3598
3659
  console.log("No handling dialog displayed", h);
3599
3660
  }
3600
- return await a(u).toBeEnabled(), await u.click(), new L(this.page);
3661
+ return await a(u).toBeEnabled(), await u.click(), new E(this.page);
3601
3662
  });
3602
3663
  }
3603
3664
  async handleConnectionDialog(t, e) {
@@ -3607,7 +3668,11 @@ class za extends m {
3607
3668
  });
3608
3669
  await a(n).toBeVisible({ timeout: 1e4 });
3609
3670
  const o = n.getByLabel("Dialog Message");
3610
- await a(o).toHaveText(new RegExp(`Podman Machine '${t}' is running but not the default machine .+ Do you want to set it as default?`));
3671
+ await a(o).toHaveText(
3672
+ new RegExp(
3673
+ `Podman Machine '${t}' is running but not the default machine .+ Do you want to set it as default?`
3674
+ )
3675
+ );
3611
3676
  const r = e ? "Yes" : "Ignore";
3612
3677
  await n.getByRole("button", {
3613
3678
  name: r
@@ -3615,7 +3680,7 @@ class za extends m {
3615
3680
  });
3616
3681
  }
3617
3682
  }
3618
- class Qa extends I {
3683
+ class za extends I {
3619
3684
  heading;
3620
3685
  serverInformationBox;
3621
3686
  podmanComposeCLICard;
@@ -3635,7 +3700,7 @@ class Qa extends I {
3635
3700
  }
3636
3701
  }
3637
3702
  }
3638
- class Xa extends m {
3703
+ class Xa extends w {
3639
3704
  parent;
3640
3705
  extensionName;
3641
3706
  detailsButton;
@@ -3649,7 +3714,7 @@ class Xa extends m {
3649
3714
  });
3650
3715
  }
3651
3716
  async openDetails() {
3652
- return s.step(`Open details for extension: ${this.extensionName}`, async () => (await this.parent.scrollIntoViewIfNeeded(), await a(this.detailsButton).toBeVisible(), await this.detailsButton.click(), new Tt(this.page, this.extensionName)));
3717
+ return s.step(`Open details for extension: ${this.extensionName}`, async () => (await this.parent.scrollIntoViewIfNeeded(), await a(this.detailsButton).toBeVisible(), await this.detailsButton.click(), new Rt(this.page, this.extensionName)));
3653
3718
  }
3654
3719
  async isInstalled() {
3655
3720
  return s.step(`Check if extension ${this.extensionName} is installed`, async () => {
@@ -3729,8 +3794,8 @@ class Za extends I {
3729
3794
  await a(o).toBeEnabled(), await o.click(), await a(this.editContextDialog).toBeVisible({ timeout: 1e4 });
3730
3795
  const r = this.editContextDialog.getByLabel("contextName", { exact: !0 });
3731
3796
  await a(r).toBeVisible(), await r.clear(), await a(r).toHaveValue(""), await r.fill(e), await a(r).toHaveValue(e);
3732
- const c = this.editContextDialog.getByRole("button", { name: "Save" });
3733
- await a(c).toBeEnabled(), await c.click();
3797
+ const l = this.editContextDialog.getByRole("button", { name: "Save" });
3798
+ await a(l).toBeEnabled(), await l.click();
3734
3799
  }
3735
3800
  async getContextName(t) {
3736
3801
  return (await this.getContextRowByName(t)).getByLabel("Context Name", { exact: !0 }).innerText();
@@ -3751,7 +3816,7 @@ class Za extends I {
3751
3816
  return (await this.getContextRowByName(t)).getByLabel("Set as Current Context");
3752
3817
  }
3753
3818
  }
3754
- class tn extends L {
3819
+ class tn extends E {
3755
3820
  podmanMachineName;
3756
3821
  podmanMachineStatus;
3757
3822
  podmanMachineConnectionActions;
@@ -3773,7 +3838,7 @@ class tn extends L {
3773
3838
  }), this.podmanMachineRestartButton = this.podmanMachineConnectionActions.getByRole("button", { name: "Restart" }), this.podmanMachineStopButton = this.podmanMachineConnectionActions.getByRole("button", { name: "Stop" }), this.podmanMachineDeleteButton = this.podmanMachineConnectionActions.getByRole("button", { name: "Delete" }), this.tabs = t.getByRole("region", { name: "Tabs" }), this.summaryTab = this.tabs.getByText("Summary"), this.logsTab = this.tabs.getByText("Logs"), this.terminalTab = this.tabs.getByText("Terminal", { exact: !0 }), this.tabContent = t.getByRole("region", { name: "Tab Content" }), this.terminalInput = this.tabContent.getByLabel("Terminal input"), this.terminalContent = this.tabContent.locator(".xterm-rows");
3774
3839
  }
3775
3840
  }
3776
- class en extends Mt {
3841
+ class en extends Vt {
3777
3842
  podmanAutostartToggle;
3778
3843
  createMachinePageTitle;
3779
3844
  machineCreationForm;
@@ -3782,12 +3847,12 @@ class en extends Mt {
3782
3847
  constructor(t) {
3783
3848
  super(t), this.podmanAutostartToggle = this.mainPage.getByRole("checkbox", {
3784
3849
  name: "Autostart Podman engine when launching Podman Desktop"
3785
- }), this.createMachinePageTitle = this.onboardingComponent.getByLabel("title"), this.machineCreationForm = new Ft(this.page), this.podmanMachineShowLogsButton = this.mainPage.getByRole("button", { name: "Show Logs" }), this.goBackButton = this.page.getByRole("button", { name: "Go back to resources" });
3850
+ }), this.createMachinePageTitle = this.onboardingComponent.getByLabel("title"), this.machineCreationForm = new Dt(this.page), this.podmanMachineShowLogsButton = this.mainPage.getByRole("button", { name: "Show Logs" }), this.goBackButton = this.page.getByRole("button", { name: "Go back to resources" });
3786
3851
  }
3787
3852
  }
3788
- class an extends ft {
3853
+ class an extends Bt {
3789
3854
  }
3790
- class nn extends m {
3855
+ class nn extends w {
3791
3856
  heading;
3792
3857
  header;
3793
3858
  tabs;
@@ -3838,88 +3903,88 @@ class nn extends m {
3838
3903
  }
3839
3904
  }
3840
3905
  export {
3841
- V as ArchitectureType,
3906
+ N as ArchitectureType,
3842
3907
  Ga as AuthenticationPage,
3843
- m as BasePage,
3844
- vt as BuildImagePage,
3908
+ w as BasePage,
3909
+ ft as BuildImagePage,
3845
3910
  Wa as CommandPalette,
3846
3911
  Ya as ComposeFailedPage,
3847
3912
  qa as ComposeLocalInstallPage,
3848
- X as ComposeOnboardingPage,
3913
+ J as ComposeOnboardingPage,
3849
3914
  ja as ComposeVersionPage,
3850
3915
  Ja as ComposeWideInstallPage,
3851
- R as ContainerDetailsPage,
3852
- D as ContainerState,
3853
- N as ContainersPage,
3916
+ k as ContainerDetailsPage,
3917
+ $ as ContainerState,
3918
+ V as ContainersPage,
3854
3919
  xe as CreateClusterBasePage,
3855
3920
  fe as CreateKindClusterPage,
3856
- za as CreateMachinePage,
3921
+ Qa as CreateMachinePage,
3857
3922
  me as CreateNetworkPage,
3858
3923
  ue as CreatePodsPage,
3859
- Pt as DashboardPage,
3924
+ kt as DashboardPage,
3860
3925
  se as DeployToKubernetesPage,
3861
3926
  S as DetailsPage,
3862
- Qa as DockerCompatibilityPage,
3927
+ za as DockerCompatibilityPage,
3863
3928
  Ke as DropdownComponent,
3864
3929
  Jt as ExperimentalPage,
3865
3930
  ge as ExtensionCardPage,
3866
3931
  Xa as ExtensionCatalogCardPage,
3867
- Tt as ExtensionDetailsPage,
3868
- ht as ExtensionState,
3869
- st as ExtensionsPage,
3932
+ Rt as ExtensionDetailsPage,
3933
+ Kt as ExtensionState,
3934
+ it as ExtensionsPage,
3870
3935
  re as ImageDetailsPage,
3871
3936
  oe as ImageEditPage,
3872
- gt as ImageState,
3873
- E as ImagesPage,
3937
+ Gt as ImageState,
3938
+ L as ImagesPage,
3874
3939
  Za as KubeContextPage,
3875
3940
  we as KubernetesBar,
3876
3941
  de as KubernetesDashboardPage,
3877
- qt as KubernetesResourceAttributes,
3878
- rt as KubernetesResourceDetailsPage,
3942
+ Yt as KubernetesResourceAttributes,
3943
+ ot as KubernetesResourceDetailsPage,
3879
3944
  H as KubernetesResourcePage,
3880
- tt as KubernetesResourceState,
3881
- w as KubernetesResources,
3882
- Ft as MachineCreationForm,
3945
+ wt as KubernetesResourceState,
3946
+ m as KubernetesResources,
3947
+ Dt as MachineCreationForm,
3883
3948
  A as MainPage,
3884
3949
  d as NavigationBar,
3885
- It as NetworkDetailsPage,
3886
- ct as NetworksPage,
3887
- Mt as OnboardingPage,
3888
- q as PodDetailsPage,
3889
- G as PodState,
3890
- Y as PodmanKubePlayOptions,
3891
- le as PodmanKubePlayPage,
3950
+ Ct as NetworkDetailsPage,
3951
+ st as NetworksPage,
3952
+ Vt as OnboardingPage,
3953
+ G as PodDetailsPage,
3954
+ z as PodState,
3955
+ X as PodmanKubePlayOptions,
3956
+ ce as PodmanKubePlayPage,
3892
3957
  tn as PodmanMachineDetails,
3893
- et as PodmanMachinePrivileges,
3958
+ pt as PodmanMachinePrivileges,
3894
3959
  en as PodmanOnboardingPage,
3895
- nt as PodmanVirtualizationProviderVariants,
3896
- p as PodmanVirtualizationProviders,
3897
- Q as PodsPage,
3898
- zt as PreferencesPage,
3899
- wt as ProxyTypes,
3900
- ce as PullImagePage,
3901
- Qt as RegistriesPage,
3902
- ft as ResourceCardPage,
3960
+ et as PodmanVirtualizationProviderVariants,
3961
+ C as PodmanVirtualizationProviders,
3962
+ j as PodsPage,
3963
+ Qt as PreferencesPage,
3964
+ qt as ProxyTypes,
3965
+ le as PullImagePage,
3966
+ zt as RegistriesPage,
3967
+ Bt as ResourceCardPage,
3903
3968
  an as ResourceCliCardPage,
3904
- J as ResourceConnectionCardPage,
3905
- Lt as ResourceDetailsPage,
3906
- k as ResourceElementActions,
3907
- C as ResourceElementState,
3908
- L as ResourcesPage,
3909
- Ct as RunImagePage,
3969
+ Y as ResourceConnectionCardPage,
3970
+ Pt as ResourceDetailsPage,
3971
+ f as ResourceElementActions,
3972
+ v as ResourceElementState,
3973
+ E as ResourcesPage,
3974
+ xt as RunImagePage,
3910
3975
  P as Runner,
3911
- at as RunnerOptions,
3976
+ Z as RunnerOptions,
3912
3977
  he as SelectImagePage,
3913
- it as SettingsBar,
3978
+ at as SettingsBar,
3914
3979
  I as SettingsPage,
3915
- St as StatusBar,
3916
- dt as TaskState,
3980
+ Tt as StatusBar,
3981
+ Wt as TaskState,
3917
3982
  ke as TasksPage,
3918
3983
  nn as TroubleshootingPage,
3919
- W as VolumeState,
3984
+ tt as VolumeState,
3920
3985
  Ce as WelcomePage,
3921
- Yt as archType,
3922
- Dt as bootcExtension,
3986
+ Ht as archType,
3987
+ Et as bootcExtension,
3923
3988
  pa as canTestRegistry,
3924
3989
  Ra as checkClusterResources,
3925
3990
  Sa as checkDeploymentReplicasInfo,
@@ -3927,33 +3992,33 @@ export {
3927
3992
  be as checkLocatorExistence,
3928
3993
  Ne as composeExtension,
3929
3994
  Da as configurePortForwarding,
3930
- yt as countKubernetesPodReplicas,
3995
+ gt as countKubernetesPodReplicas,
3931
3996
  ka as createKindCluster,
3932
- Ea as createKubernetesResource,
3933
- pt as createPodmanMachineFromCLI,
3997
+ La as createKubernetesResource,
3998
+ ut as createPodmanMachineFromCLI,
3934
3999
  pe as delay,
3935
4000
  Re as deleteCluster,
3936
4001
  Pa as deleteClusterFromDetails,
3937
4002
  Ze as deleteContainer,
3938
4003
  ta as deleteImage,
3939
- La as deleteKubernetesResource,
4004
+ Ea as deleteKubernetesResource,
3940
4005
  na as deleteNetwork,
3941
4006
  aa as deletePod,
3942
4007
  ia as deletePodmanMachine,
3943
4008
  sa as deletePodmanMachineFromCLI,
3944
4009
  ea as deleteRegistry,
3945
4010
  Ia as deployContainerToCluster,
3946
- Le as developerSandboxExtension,
4011
+ Ee as developerSandboxExtension,
3947
4012
  $e as dockerExtension,
3948
4013
  Va as editDeploymentYamlFile,
3949
4014
  oa as ensureCliInstalled,
3950
- bt as envProvider,
4015
+ dt as envProvider,
3951
4016
  rn as expect,
3952
4017
  Ka as extensionsAllExternalList,
3953
4018
  Ua as extensionsBuiltInList,
3954
4019
  He as extensionsExternalList,
3955
4020
  Ha as extensionsInstallationSmokeList,
3956
- Ee as extensionsPackExtension,
4021
+ Le as extensionsPackExtension,
3957
4022
  U as fillTextbox,
3958
4023
  Ba as findPageWithTitleInBrowser,
3959
4024
  Te as getDefaultVirtualizationProvider,
@@ -3962,14 +4027,14 @@ export {
3962
4027
  ie as getPodmanCliVersion,
3963
4028
  Xe as getProviderFromVariant,
3964
4029
  Fa as getVirtualizationProvider,
3965
- ot as getVolumeNameForContainer,
4030
+ nt as getVolumeNameForContainer,
3966
4031
  g as handleConfirmationDialog,
3967
4032
  fa as handleCookies,
3968
- Rt as handleEditNetworkDialog,
4033
+ bt as handleEditNetworkDialog,
3969
4034
  De as headlampExtension,
3970
- Nt as imageLayersExplorerExtension,
3971
- Qe as isCI,
3972
- j as isLinux,
4035
+ St as imageLayersExplorerExtension,
4036
+ ze as isCI,
4037
+ W as isLinux,
3973
4038
  F as isMac,
3974
4039
  wa as isPodmanCliVersionAtLeast,
3975
4040
  O as isWindows,
@@ -3977,40 +4042,40 @@ export {
3977
4042
  Fe as kubeContextExtension,
3978
4043
  Oe as kubectlCLIExtension,
3979
4044
  Oa as limaExtension,
3980
- xt as matchesProviderVariant,
4045
+ mt as matchesProviderVariant,
3981
4046
  Ie as minikubeExtension,
3982
4047
  Ma as monitorPodStatusInClusterContainer,
3983
4048
  Ae as openshiftCheckerExtension,
3984
4049
  Ue as openshiftDockerExtension,
3985
4050
  Ve as openshiftLocalExtension,
3986
4051
  ya as performBrowserLogin,
3987
- Vt as podmanAILabExtension,
4052
+ Lt as podmanAILabExtension,
3988
4053
  _a as podmanExtension,
3989
- $t as podmanQuadletExtension,
4054
+ At as podmanQuadletExtension,
3990
4055
  ha as readFileInVolumeFromCLI,
3991
4056
  _e as registriesExtension,
3992
- Wt as removeFolderIfExists,
4057
+ Ut as removeFolderIfExists,
3993
4058
  te as resetPodmanMachinesFromCLI,
3994
4059
  Ca as resourceConnectionAction,
3995
4060
  va as resourceConnectionActionDetails,
3996
4061
  ra as runComposeUpFromCLI,
3997
- la as setDockerCompatibilityFeature,
4062
+ ca as setDockerCompatibilityFeature,
3998
4063
  ua as setStatusBarProvidersFeature,
3999
4064
  Je as setup,
4000
4065
  Be as setupRegistry,
4001
4066
  Se as ssoExtension,
4002
4067
  ba as startChromium,
4003
- ze as teardown,
4068
+ Qe as teardown,
4004
4069
  Ta as test,
4005
- ca as untagImagesFromPodman,
4006
- At as validateClusterResourcesDeletion,
4070
+ la as untagImagesFromPodman,
4071
+ It as validateClusterResourcesDeletion,
4007
4072
  $a as verifyLocalPortResponse,
4008
4073
  da as verifyMachinePrivileges,
4009
4074
  Na as verifyPortForwardingConfiguration,
4010
4075
  ga as verifyVirtualizationProvider,
4011
- Et as wait,
4076
+ vt as wait,
4012
4077
  ma as waitForPodmanMachineStartup,
4013
- b as waitUntil,
4078
+ y as waitUntil,
4014
4079
  T as waitWhile
4015
4080
  };
4016
4081
  //# sourceMappingURL=index.js.map