Skip to content

Commit 3be3bc2

Browse files
authored
fix: handle owner but no name syntax (#2045)
1 parent 77d0682 commit 3be3bc2

File tree

2 files changed

+14
-10
lines changed

2 files changed

+14
-10
lines changed

site/src/util/workspace.test.ts

+1
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ describe("util > workspace", () => {
7171
["owner:me", { owner: "me" }],
7272
["owner:me owner:me2", { owner: "me" }],
7373
["me/dev", { owner: "me", name: "dev" }],
74+
["me/", { owner: "me" }],
7475
[" key:val owner:me ", { owner: "me" }],
7576
])(`query=%p, filter=%p`, (query, filter) => {
7677
expect(workspaceQueryToFilter(query)).toEqual(filter)

site/src/util/workspace.ts

+13-10
Original file line numberDiff line numberDiff line change
@@ -218,24 +218,27 @@ export const workspaceQueryToFilter = (query?: string): TypesGen.WorkspaceFilter
218218
const parts = preparedQuery.split(" ")
219219

220220
for (const part of parts) {
221-
const [key, val] = part.split(":")
222-
if (key && val) {
223-
if (key === "owner") {
224-
return {
225-
owner: val,
221+
if (part.includes(":")) {
222+
const [key, val] = part.split(":")
223+
if (key && val) {
224+
if (key === "owner") {
225+
return {
226+
owner: val,
227+
}
226228
}
229+
// skip invalid key pairs
230+
continue
227231
}
228-
// skip invalid key pairs
229-
continue
230232
}
231233

232-
const [username, name] = part.split("/")
233-
if (username && name) {
234+
if (part.includes("/")) {
235+
const [username, name] = part.split("/")
234236
return {
235237
owner: username,
236-
name: name,
238+
name: name === "" ? undefined : name,
237239
}
238240
}
241+
239242
return {
240243
name: part,
241244
}

0 commit comments

Comments
 (0)