diff --git a/api/config/list.go b/api/config/list.go
index c0a14f09..4bf1f992 100644
--- a/api/config/list.go
+++ b/api/config/list.go
@@ -8,9 +8,11 @@ import (
"github.com/gin-gonic/gin"
"net/http"
"os"
+ "strings"
)
func GetConfigs(c *gin.Context) {
+ name := c.Query("name")
orderBy := c.Query("order_by")
sort := c.DefaultQuery("sort", "desc")
dir := c.DefaultQuery("dir", "/")
@@ -28,6 +30,10 @@ func GetConfigs(c *gin.Context) {
file := configFiles[i]
fileInfo, _ := file.Info()
+ if name != "" && !strings.Contains(file.Name(), name) {
+ continue
+ }
+
switch mode := fileInfo.Mode(); {
case mode.IsRegular(): // regular file, not a hidden file
if "." == file.Name()[0:1] {
diff --git a/app/src/components/Breadcrumb/Breadcrumb.vue b/app/src/components/Breadcrumb/Breadcrumb.vue
index 299bdddb..bce7b673 100644
--- a/app/src/components/Breadcrumb/Breadcrumb.vue
+++ b/app/src/components/Breadcrumb/Breadcrumb.vue
@@ -1,17 +1,13 @@
@@ -46,7 +52,7 @@ const breadList = computed(() => {
>
{{ item.translatedName() }}
diff --git a/app/src/components/Breadcrumb/types.d.ts b/app/src/components/Breadcrumb/types.d.ts
new file mode 100644
index 00000000..538905a5
--- /dev/null
+++ b/app/src/components/Breadcrumb/types.d.ts
@@ -0,0 +1,9 @@
+import {LocationQueryRaw} from "vue-router";
+
+export interface Bread {
+ name: string
+ translatedName: () => string
+ path?: string
+ query?: LocationQueryRaw
+ hasChildren?: boolean
+}
diff --git a/app/src/composables/useBreadcrumbs.ts b/app/src/composables/useBreadcrumbs.ts
new file mode 100644
index 00000000..44ca6e79
--- /dev/null
+++ b/app/src/composables/useBreadcrumbs.ts
@@ -0,0 +1,5 @@
+import type { Bread } from '@/components/Breadcrumb/types'
+
+export const useBreadcrumbs = () => {
+ return inject('breadList') as Ref
+}
diff --git a/app/src/layouts/BaseLayout.vue b/app/src/layouts/BaseLayout.vue
index 18138110..e7f47c4c 100644
--- a/app/src/layouts/BaseLayout.vue
+++ b/app/src/layouts/BaseLayout.vue
@@ -28,6 +28,10 @@ const { server_name } = storeToRefs(useSettingsStore())
settings.get_server_name().then(r => {
server_name.value = r.name
})
+
+const breadList = ref([])
+
+provide('breadList', breadList)
diff --git a/app/src/views/config/Config.vue b/app/src/views/config/Config.vue
index b14dd19e..61a22496 100644
--- a/app/src/views/config/Config.vue
+++ b/app/src/views/config/Config.vue
@@ -1,9 +1,10 @@