Skip to content

Commit dc16013

Browse files
chore: generate
1 parent e7686db commit dc16013

2 files changed

Lines changed: 17 additions & 25 deletions

File tree

packages/opencode/src/config/lsp.ts

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -25,18 +25,18 @@ export const Entry = Schema.Union([
2525
* client knows which files the server should attach to. Builtin server IDs and
2626
* explicitly disabled entries are exempt.
2727
*/
28-
export const requiresExtensionsForCustomServers = Schema.makeFilter<boolean | Record<string, Schema.Schema.Type<typeof Entry>>>(
29-
(data) => {
30-
if (typeof data === "boolean") return undefined
31-
const serverIds = new Set(Object.values(LSPServer).map((server) => server.id))
32-
const ok = Object.entries(data).every(([id, config]) => {
33-
if ("disabled" in config && config.disabled) return true
34-
if (serverIds.has(id)) return true
35-
return "extensions" in config && Boolean(config.extensions)
36-
})
37-
return ok ? undefined : "For custom LSP servers, 'extensions' array is required."
38-
},
39-
)
28+
export const requiresExtensionsForCustomServers = Schema.makeFilter<
29+
boolean | Record<string, Schema.Schema.Type<typeof Entry>>
30+
>((data) => {
31+
if (typeof data === "boolean") return undefined
32+
const serverIds = new Set(Object.values(LSPServer).map((server) => server.id))
33+
const ok = Object.entries(data).every(([id, config]) => {
34+
if ("disabled" in config && config.disabled) return true
35+
if (serverIds.has(id)) return true
36+
return "extensions" in config && Boolean(config.extensions)
37+
})
38+
return ok ? undefined : "For custom LSP servers, 'extensions' array is required."
39+
})
4040

4141
export const Info = Schema.Union([Schema.Boolean, Schema.Record(Schema.String, Entry)])
4242
.check(requiresExtensionsForCustomServers)

packages/opencode/test/util/effect-zod.test.ts

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -189,9 +189,7 @@ describe("util.effect-zod", () => {
189189

190190
describe("Schema.check translation", () => {
191191
test("filter returning string triggers refinement with that message", () => {
192-
const isEven = Schema.makeFilter((n: number) =>
193-
n % 2 === 0 ? undefined : "expected an even number",
194-
)
192+
const isEven = Schema.makeFilter((n: number) => (n % 2 === 0 ? undefined : "expected an even number"))
195193
const schema = zod(Schema.Number.check(isEven))
196194

197195
expect(schema.parse(4)).toBe(4)
@@ -218,10 +216,7 @@ describe("util.effect-zod", () => {
218216
})
219217

220218
test("annotations.message on the filter is used when filter returns false", () => {
221-
const positive = Schema.makeFilter(
222-
(n: number) => n > 0,
223-
{ message: "must be positive" },
224-
)
219+
const positive = Schema.makeFilter((n: number) => n > 0, { message: "must be positive" })
225220
const schema = zod(Schema.Number.check(positive))
226221

227222
const result = schema.safeParse(-1)
@@ -230,13 +225,10 @@ describe("util.effect-zod", () => {
230225
})
231226

232227
test("cross-field check on a record flags missing key", () => {
233-
const hasKey = Schema.makeFilter(
234-
(data: Record<string, { enabled: boolean }>) =>
235-
"required" in data ? undefined : "missing 'required' key",
236-
)
237-
const schema = zod(
238-
Schema.Record(Schema.String, Schema.Struct({ enabled: Schema.Boolean })).check(hasKey),
228+
const hasKey = Schema.makeFilter((data: Record<string, { enabled: boolean }>) =>
229+
"required" in data ? undefined : "missing 'required' key",
239230
)
231+
const schema = zod(Schema.Record(Schema.String, Schema.Struct({ enabled: Schema.Boolean })).check(hasKey))
240232

241233
expect(schema.parse({ required: { enabled: true } })).toEqual({
242234
required: { enabled: true },

0 commit comments

Comments
 (0)