mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-02-23 00:04:06 +00:00
* knip: Don't ignore exports that are only used within a given file * knip: More pruning after rebase * knip: Vite plugin config fix * knip: vitest plugin config * knip: Playwright config, remove unnecessary ignores. * knip: Simplify project file enumeration. * knip: simplify the config file patterns ?(.optional_segment) * knip: tailwind v4 fix * knip: A little more, explain some of the deps. Should be good for this PR. * knip: remove unused disabling of classMembers. It's opt-in, which we should probably do. * knip: floating comments We should probably delete _one_ of these parallell trees, right? * knip: Add additional entrypoints * knip: Restore UserData that's exposed via the types for now. * knip: Add as an entry file even though knip says it's not necessary. * knip: re-export functions used by nodes (h/t @christian-byrne)
26 lines
732 B
TypeScript
26 lines
732 B
TypeScript
import { z } from 'zod'
|
|
|
|
// KeyCombo schema
|
|
const zKeyCombo = z.object({
|
|
key: z.string(),
|
|
ctrl: z.boolean().optional(),
|
|
alt: z.boolean().optional(),
|
|
shift: z.boolean().optional(),
|
|
meta: z.boolean().optional()
|
|
})
|
|
|
|
// Keybinding schema
|
|
export const zKeybinding = z.object({
|
|
commandId: z.string(),
|
|
combo: zKeyCombo,
|
|
// Optional target element ID to limit keybinding to.
|
|
// Note: Currently only used to distinguish between global keybindings
|
|
// and litegraph canvas keybindings.
|
|
// Do NOT use this field in extensions as it has no effect.
|
|
targetElementId: z.string().optional()
|
|
})
|
|
|
|
// Infer types from schemas
|
|
export type KeyCombo = z.infer<typeof zKeyCombo>
|
|
export type Keybinding = z.infer<typeof zKeybinding>
|