package templ import ( "fmt" "log" "strings" "git.ymnuktech.ru/ymnuk/yt-gen-app/structs" ) func BackendFsPath(value string) string { pathArr := strings.Split(RemoveFirstChar(value), "/") var newPathArr []string if len(pathArr) > 0 { for _, str := range pathArr { if []rune(str)[0] != ':' { newPathArr = append(newPathArr, str) } else { break } } } return strings.Join(newPathArr, "/") } func ParseRestPath(value string) string { pathArr := strings.Split(RemoveFirstChar(value), "/") var newPathArr []string if len(pathArr) > 0 { for _, str := range pathArr { runes := []rune(str) if runes[0] == ':' { if len(runes) <= 1 { log.Fatalf("Error value in path \"%s\"", value) } runes = runes[1:] newPathArr = append(newPathArr, fmt.Sprintf("{%s}", string(runes))) } else { newPathArr = append(newPathArr, str) } } } return strings.Join(newPathArr, "/") } func ParseRestPathForName(value string) string { pathArr := strings.Split(RemoveFirstChar(value), "/") var newPathArr []string if len(pathArr) > 0 { for _, str := range pathArr { runes := []rune(str) if runes[0] != ':' { if len(runes) <= 1 { log.Fatalf("Error value in path \"%s\"", value) } newPathArr = append(newPathArr, string(runes)) } } } return strings.Join(newPathArr, "/") } func ParseRestPathParams(value string) (res []structs.Field) { pathArr := strings.Split(RemoveFirstChar(value), "/") //var newPathArr []string if len(pathArr) > 0 { for _, str := range pathArr { runes := []rune(str) if runes[0] == ':' { if len(runes) <= 1 { log.Fatalf("Error value in path \"%s\"", value) } runes = runes[1:] res = append(res, structs.Field{ Name: string(runes), Type: "string", }) } } } return }