feat(core): add Electron runtime, services, and app composition

This commit is contained in:
2026-02-22 21:43:43 -08:00
parent 448ce03fd4
commit d3fd47f0ec
562 changed files with 69719 additions and 0 deletions

View File

@@ -0,0 +1,31 @@
import type {
NumericShortcutSessionMessages,
NumericShortcutSessionStartParams,
} from '../../core/services/numeric-shortcut';
type NumericShortcutSessionLike = {
start: (params: NumericShortcutSessionStartParams) => void;
cancel: () => void;
};
export function createCancelNumericShortcutSessionHandler(deps: {
session: NumericShortcutSessionLike;
}) {
return (): void => {
deps.session.cancel();
};
}
export function createStartNumericShortcutSessionHandler(deps: {
session: NumericShortcutSessionLike;
onDigit: (digit: number) => void;
messages: NumericShortcutSessionMessages;
}) {
return (timeoutMs: number): void => {
deps.session.start({
timeoutMs,
onDigit: deps.onDigit,
messages: deps.messages,
});
};
}