fix selection command

This commit is contained in:
Chris Kruining 2025-01-06 15:49:37 +01:00
parent ce7a300f48
commit 96d04a6094
No known key found for this signature in database
GPG key ID: EB894A3560CCCAD2
3 changed files with 11 additions and 4 deletions

View file

@ -23,7 +23,7 @@ export interface TableApi<T extends Record<string, any>> {
readonly rows: Accessor<DataSet<T>>;
readonly columns: Accessor<Column<T>[]>;
selectAll(): void;
clear(): void;
clearSelection(): void;
}
interface TableContextType<T extends Record<string, any>> {
@ -123,7 +123,7 @@ function Api<T extends Record<string, any>>(props: { api: undefined | ((api: Tab
selectAll() {
selectionContext.selectAll();
},
clear() {
clearSelection() {
selectionContext.clear();
},
};

View file

@ -11,7 +11,8 @@ export interface GridApi {
readonly selection: Accessor<SelectionItem<number, Entry>[]>;
remove(indices: number[]): void;
addKey(key: string): void;
// addLocale(locale: string): void;
selectAll(): void;
clearSelection(): void;
};
const groupBy = (rows: DataSetRowNode<number, Entry>[]) => {
@ -68,6 +69,12 @@ export function Grid(props: { class?: string, rows: Entry[], locales: string[],
addKey(key) {
r.insert({ key, ...Object.fromEntries(locales().map(l => [l, ''])) });
},
selectAll() {
api()?.selectAll();
},
clearSelection() {
api()?.clearSelection();
},
});
});

View file

@ -275,7 +275,7 @@ const Editor: Component<{ root: FileSystemDirectoryHandle }> = (props) => {
api()?.selectAll();
}, { key: 'a', modifier: Modifier.Control }),
clearSelection: createCommand('clear selection', () => {
api()?.clear();
api()?.clearSelection();
}),
delete: createCommand('delete selected items', () => {
const { selection, remove } = api() ?? {};