(key: KeyType, shiftKey = false)
| 9 | } |
| 10 | |
| 11 | export function getKey(key: KeyType, shiftKey = false) { |
| 12 | let event: KeyEvent = null as unknown as KeyEvent; |
| 13 | switch (key) { |
| 14 | case KeyType.Backspace: |
| 15 | event = { key, code: 8, which: 8 }; |
| 16 | break; |
| 17 | case KeyType.Tab: |
| 18 | event = { key, code: 9, which: 9 }; |
| 19 | break; |
| 20 | case KeyType.Enter: |
| 21 | event = { key, code: 13, which: 13 }; |
| 22 | break; |
| 23 | case KeyType.Escape: |
| 24 | event = { key, code: 27, which: 27 }; |
| 25 | break; |
| 26 | case KeyType.Space: |
| 27 | event = { key, code: 32, which: 32 }; |
| 28 | break; |
| 29 | case KeyType.PageUp: |
| 30 | event = { key, code: 33, which: 33 }; |
| 31 | break; |
| 32 | case KeyType.PageDown: |
| 33 | event = { key, code: 34, which: 34 }; |
| 34 | break; |
| 35 | case KeyType.End: |
| 36 | event = { key, code: 35, which: 35 }; |
| 37 | break; |
| 38 | case KeyType.Home: |
| 39 | event = { key, code: 36, which: 36 }; |
| 40 | break; |
| 41 | case KeyType.ArrowLeft: |
| 42 | event = { key, code: 37, which: 37 }; |
| 43 | break; |
| 44 | case KeyType.ArrowRight: |
| 45 | event = { key, code: 39, which: 39 }; |
| 46 | break; |
| 47 | case KeyType.ArrowUp: |
| 48 | event = { key, code: 38, which: 38 }; |
| 49 | break; |
| 50 | case KeyType.ArrowDown: |
| 51 | event = { key, code: 40, which: 40 }; |
| 52 | break; |
| 53 | case "x" as KeyType: |
| 54 | event = { key, code: 88, which: 88 }; |
| 55 | break; |
| 56 | } |
| 57 | if (!event) { |
| 58 | throw new Error("Unknown key :" + key); |
| 59 | } |
| 60 | return { ...event, shiftKey }; |
| 61 | } |
| 62 | |
| 63 | export const range = (from: number, to: number): number[] => { |
| 64 | const list: number[] = []; |
no outgoing calls