diff --git a/frontend/src/components/StackList.vue b/frontend/src/components/StackList.vue index afdeca7..25fb132 100644 --- a/frontend/src/components/StackList.vue +++ b/frontend/src/components/StackList.vue @@ -23,7 +23,7 @@
- +
diff --git a/frontend/src/pages/Compose.vue b/frontend/src/pages/Compose.vue index 3725dc3..36f6218 100644 --- a/frontend/src/pages/Compose.vue +++ b/frontend/src/pages/Compose.vue @@ -330,7 +330,11 @@ export default { computed: { filesLink() { - return `/files/${this.stack.name}`; + if (this.stack.endpoint) { + return `/files/${this.stack.name}/${this.stack.endpoint}`; + } else { + return `/files/${this.stack.name}`; + } }, endpointDisplay() { diff --git a/frontend/src/pages/Files.vue b/frontend/src/pages/Files.vue index c6c753e..09ebb62 100644 --- a/frontend/src/pages/Files.vue +++ b/frontend/src/pages/Files.vue @@ -17,6 +17,7 @@ export default defineComponent({ isFolder: false, fileName: "", }, + stack: {} }; }, computed: { @@ -25,7 +26,7 @@ export default defineComponent({ }, endpoint() { - return this.$route.params.endpoint || ""; + return this.stack.endpoint || this.$route.params.endpoint || ""; }, newFileLabel() { @@ -103,6 +104,17 @@ export default defineComponent({ } }); }, + + loadStack() { + this.processing = true; + this.$root.emitAgent(this.endpoint, "getStack", this.stack.name, (res) => { + if (res.ok) { + this.stack = res.stack; + } else { + this.$root.toastRes(res); + } + }) + } }, }); diff --git a/frontend/src/router.ts b/frontend/src/router.ts index 278768d..90e69f6 100644 --- a/frontend/src/router.ts +++ b/frontend/src/router.ts @@ -47,6 +47,10 @@ const routes : RouteRecordRaw[] = [ path: "/files/:stackName", component: Files, }, + { + path: "/files/:stackName/:endpoint", + component: Files, + }, { path: "/terminal/:stackName/:serviceName/:type", component: ContainerTerminal,