Skip to content

Commit bba033d

Browse files
committed
Fix tests
1 parent a9f5192 commit bba033d

File tree

4 files changed

+22
-11
lines changed

4 files changed

+22
-11
lines changed

packages/cursorless-engine/src/DefaultSpokenFormMap.ts

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { mapValues } from "lodash";
22
import {
3+
PartialSpokenFormMapKeys,
34
SpokenFormMap,
45
SpokenFormMapEntry,
56
SpokenFormMapKeyTypes,
@@ -153,9 +154,11 @@ export interface DefaultSpokenFormMapEntry {
153154
}
154155

155156
export type DefaultSpokenFormMap = {
156-
readonly [K in keyof SpokenFormMapKeyTypes]: Readonly<
157-
Record<SpokenFormMapKeyTypes[K], DefaultSpokenFormMapEntry>
158-
>;
157+
readonly [K in keyof SpokenFormMapKeyTypes]: K extends PartialSpokenFormMapKeys
158+
? Readonly<
159+
Partial<Record<SpokenFormMapKeyTypes[K], DefaultSpokenFormMapEntry>>
160+
>
161+
: Record<SpokenFormMapKeyTypes[K], DefaultSpokenFormMapEntry>;
159162
};
160163

161164
// FIXME: Don't cast here; need to make our own mapValues with stronger typing

packages/cursorless-engine/src/SpokenFormMap.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,8 @@ export interface SpokenFormMapKeyTypes {
3737

3838
export type SpokenFormType = keyof SpokenFormMapKeyTypes;
3939

40+
export type PartialSpokenFormMapKeys = "customRegex";
41+
4042
export interface SpokenFormMapEntry {
4143
spokenForms: string[];
4244
isCustom: boolean;
@@ -46,7 +48,7 @@ export interface SpokenFormMapEntry {
4648
}
4749

4850
export type SpokenFormMap = {
49-
readonly [K in keyof SpokenFormMapKeyTypes]: Readonly<
50-
Record<SpokenFormMapKeyTypes[K], SpokenFormMapEntry>
51-
>;
51+
readonly [K in keyof SpokenFormMapKeyTypes]: K extends PartialSpokenFormMapKeys
52+
? Readonly<Partial<Record<SpokenFormMapKeyTypes[K], SpokenFormMapEntry>>>
53+
: Readonly<Record<SpokenFormMapKeyTypes[K], SpokenFormMapEntry>>;
5254
};

packages/cursorless-engine/src/generateSpokenForm/GeneratorSpokenFormMap.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
import {
2+
PartialSpokenFormMapKeys,
23
SpokenFormMap,
34
SpokenFormMapEntry,
45
SpokenFormMapKeyTypes,
56
SpokenFormType,
67
} from "../SpokenFormMap";
78

89
export type GeneratorSpokenFormMap = {
9-
readonly [K in keyof SpokenFormMapKeyTypes]: Record<
10-
SpokenFormMapKeyTypes[K],
11-
SingleTermSpokenForm
12-
>;
10+
readonly [K in keyof SpokenFormMapKeyTypes]: K extends PartialSpokenFormMapKeys
11+
? Partial<Record<SpokenFormMapKeyTypes[K], SingleTermSpokenForm>>
12+
: Record<SpokenFormMapKeyTypes[K], SingleTermSpokenForm>;
1313
};
1414

1515
export interface SingleTermSpokenForm {

packages/cursorless-engine/src/generateSpokenForm/primitiveTargetToSpokenForm.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,13 @@ export class PrimitiveTargetSpokenFormGenerator {
232232
return (
233233
this.spokenFormMap.customRegex[scopeType.regex] ?? {
234234
type: "singleTerm",
235-
spokenForms: [],
235+
spokenForms: {
236+
spokenForms: [],
237+
isCustom: true,
238+
defaultSpokenForms: [],
239+
requiresTalonUpdate: false,
240+
isSecret: false,
241+
},
236242
spokenFormType: "customRegex",
237243
id: scopeType.regex,
238244
}

0 commit comments

Comments
 (0)