radames HF staff commited on
Commit
50a9f22
β€’
1 Parent(s): 3ce7b2f

keyboard evens to save and restart

Browse files
Files changed (1) hide show
  1. frontend/src/lib/Result.svelte +19 -3
frontend/src/lib/Result.svelte CHANGED
@@ -2,7 +2,7 @@
2
  import { colors, cheersMessages } from '$lib/utils';
3
  import type { Board } from '../types';
4
  import { fade } from 'svelte/transition';
5
- import { createEventDispatcher } from 'svelte';
6
 
7
  const dispatch = createEventDispatcher();
8
 
@@ -14,6 +14,7 @@
14
  import domtoimage from 'dom-to-image';
15
  const imageBaseUrl = import.meta.env.MODE === 'development' ? 'http://localhost:7860/' : '';
16
 
 
17
  let elToShare: HTMLDivElement;
18
  let disableDownload: boolean = false;
19
  async function saveFile(node: HTMLDivElement) {
@@ -38,13 +39,24 @@
38
  console.log(err.name, err.message);
39
  }
40
  }
 
 
 
 
 
 
 
 
 
 
 
41
  const s = 10;
42
  const p = 1;
43
  const rx = s / 10;
44
  </script>
45
 
46
  <!-- Modal made with tailwind -->
47
- <div class="modal relative z-2" transition:fade>
48
  <div class="message">
49
  <div class="border-0">
50
  <div class="p-3" bind:this={elToShare}>
@@ -81,7 +93,11 @@
81
  </div>
82
  </div>
83
  <div class="p-3 px-6 flex text-base">
84
- <button disabled={disableDownload} class="min-w-[15ch] flex-1 mr-1" on:click={() => saveFile(elToShare)}>
 
 
 
 
85
  {!disableDownload ? 'SAVE SCREENSHOT' : 'SAVING..'}
86
  </button>
87
  <button class="flex-1 ml-1" on:click={() => dispatch('restart')}> TRY AGAIN </button>
 
2
  import { colors, cheersMessages } from '$lib/utils';
3
  import type { Board } from '../types';
4
  import { fade } from 'svelte/transition';
5
+ import { createEventDispatcher, onMount } from 'svelte';
6
 
7
  const dispatch = createEventDispatcher();
8
 
 
14
  import domtoimage from 'dom-to-image';
15
  const imageBaseUrl = import.meta.env.MODE === 'development' ? 'http://localhost:7860/' : '';
16
 
17
+ let modalEl: HTMLDivElement;
18
  let elToShare: HTMLDivElement;
19
  let disableDownload: boolean = false;
20
  async function saveFile(node: HTMLDivElement) {
 
39
  console.log(err.name, err.message);
40
  }
41
  }
42
+ const onKeyup = (e: KeyboardEvent) => {
43
+ if (e.key === 'Escape') {
44
+ dispatch('restart');
45
+ } else if (e.key === ' ') {
46
+ saveFile(elToShare);
47
+ }
48
+ };
49
+ onMount(() => {
50
+ window.addEventListener('keyup', onKeyup);
51
+ return () => window.removeEventListener('keyup', onKeyup);
52
+ });
53
  const s = 10;
54
  const p = 1;
55
  const rx = s / 10;
56
  </script>
57
 
58
  <!-- Modal made with tailwind -->
59
+ <div bind:this={modalEl} class="modal relative z-2" transition:fade>
60
  <div class="message">
61
  <div class="border-0">
62
  <div class="p-3" bind:this={elToShare}>
 
93
  </div>
94
  </div>
95
  <div class="p-3 px-6 flex text-base">
96
+ <button
97
+ disabled={disableDownload}
98
+ class="min-w-[15ch] flex-1 mr-1"
99
+ on:click={() => saveFile(elToShare)}
100
+ >
101
  {!disableDownload ? 'SAVE SCREENSHOT' : 'SAVING..'}
102
  </button>
103
  <button class="flex-1 ml-1" on:click={() => dispatch('restart')}> TRY AGAIN </button>