1
1
import * as Base64 from "./base64.js" ;
2
2
import { chroma } from "./chroma.js" ;
3
3
4
- document . addEventListener ( "DOMContentLoaded" , function ( ) {
5
- var darkMode =
6
- window . matchMedia &&
7
- window . matchMedia ( "(prefers-color-scheme: dark)" ) . matches ;
8
- var style = document . createElement ( "style" ) ;
9
- var ref = document . querySelector ( "script" ) ;
4
+ document . addEventListener ( "DOMContentLoaded" , ( ) => {
5
+ const darkMode =
6
+ window . matchMedia ?. ( "(prefers-color-scheme: dark)" ) . matches ;
7
+ const style = document . createElement ( "style" ) ;
8
+ const ref = document . querySelector ( "script" ) ;
10
9
ref . parentNode . insertBefore ( style , ref ) ;
11
10
12
- var form = document . getElementById ( "chroma" ) ;
13
- var textArea = form . elements [ " text" ] ;
14
- var styleSelect = form . elements [ " style" ] ;
15
- var languageSelect = form . elements [ " language" ] ;
16
- var copyButton = form . elements [ " copy" ] ;
17
- var csrfToken = form . elements [ "gorilla.csrf.Token" ] . value ;
18
- var output = document . getElementById ( "output" ) ;
19
- var htmlCheckbox = document . getElementById ( "html" ) ;
11
+ const form = document . getElementById ( "chroma" ) ;
12
+ const textArea = form . elements . text ;
13
+ const styleSelect = form . elements . style ;
14
+ const languageSelect = form . elements . language ;
15
+ const copyButton = form . elements . copy ;
16
+ const csrfToken = form . elements [ "gorilla.csrf.Token" ] . value ;
17
+ const output = document . getElementById ( "output" ) ;
18
+ const htmlCheckbox = document . getElementById ( "html" ) ;
20
19
21
20
( document . querySelectorAll ( ".notification .delete" ) || [ ] ) . forEach ( ( el ) => {
22
21
const notification = el . parentNode ;
@@ -58,16 +57,16 @@ document.addEventListener("DOMContentLoaded", function () {
58
57
59
58
// https://stackoverflow.com/a/37697925/7980
60
59
function handleTab ( e ) {
61
- var after ,
62
- before ,
63
- end ,
64
- lastNewLine ,
65
- changeLength ,
66
- re ,
67
- replace ,
68
- selection ,
69
- start ,
70
- val ;
60
+ let after ;
61
+ let before ;
62
+ let end ;
63
+ let lastNewLine ;
64
+ let changeLength ;
65
+ let re ;
66
+ let replace ;
67
+ let selection ;
68
+ let start ;
69
+ let val ;
71
70
if (
72
71
( e . charCode === 9 || e . keyCode === 9 ) &&
73
72
! e . altKey &&
@@ -114,26 +113,25 @@ document.addEventListener("DOMContentLoaded", function () {
114
113
}
115
114
}
116
115
if ( replace && ! e . shiftKey ) {
117
- this . value = before + "\t" + after ;
116
+ this . value = ` ${ before } \t ${ after } ` ;
118
117
this . selectionStart = this . selectionEnd = start + 1 ;
119
118
}
120
119
}
121
120
debouncedEventHandler ( e ) ;
122
121
}
123
122
124
123
function debounce ( func , wait , immediate ) {
125
- var timeout ;
124
+ let timeout ;
126
125
return function ( ) {
127
- var context = this ;
128
- var args = arguments ;
129
- var later = function ( ) {
126
+ const args = arguments ;
127
+ const later = ( ) => {
130
128
timeout = null ;
131
- if ( ! immediate ) func . apply ( context , args ) ;
129
+ if ( ! immediate ) func . apply ( this , args ) ;
132
130
} ;
133
- var callNow = immediate && ! timeout ;
131
+ const callNow = immediate && ! timeout ;
134
132
clearTimeout ( timeout ) ;
135
133
timeout = setTimeout ( later , wait ) ;
136
- if ( callNow ) func . apply ( context , args ) ;
134
+ if ( callNow ) func . apply ( this , args ) ;
137
135
} ;
138
136
}
139
137
@@ -154,7 +152,7 @@ document.addEventListener("DOMContentLoaded", function () {
154
152
if ( value . language ) {
155
153
languageSelect . value = value . language ;
156
154
}
157
- style . innerHTML = " #output { " + value . background + "}" ;
155
+ style . innerHTML = ` #output { ${ value . background } }` ;
158
156
if ( htmlCheckbox . checked ) {
159
157
output . innerText = value . html ;
160
158
} else {
@@ -166,7 +164,7 @@ document.addEventListener("DOMContentLoaded", function () {
166
164
if ( htmlCheckbox . checked ) {
167
165
output . innerText = textArea . value ;
168
166
} else {
169
- output . innerHTML = " <pre>" + textArea . value + " </pre>" ;
167
+ output . innerHTML = ` <pre>${ textArea . value } </pre>` ;
170
168
}
171
169
}
172
170
@@ -178,7 +176,7 @@ document.addEventListener("DOMContentLoaded", function () {
178
176
function share ( event ) {
179
177
let data = JSON . stringify ( getFormJSON ( ) ) ;
180
178
data = Base64 . encodeURI ( data ) ;
181
- location . hash = "#" + data ;
179
+ location . hash = `# ${ data } ` ;
182
180
try {
183
181
navigator . clipboard . writeText ( location . href ) ;
184
182
} catch ( e ) {
@@ -200,8 +198,8 @@ document.addEventListener("DOMContentLoaded", function () {
200
198
update ( new Event ( "change" ) ) ;
201
199
}
202
200
203
- var eventHandler = ( event ) => update ( event ) ;
204
- var debouncedEventHandler = debounce (
201
+ const eventHandler = ( event ) => update ( event ) ;
202
+ const debouncedEventHandler = debounce (
205
203
eventHandler ,
206
204
chroma === null ? 250 : 100 ,
207
205
) ;
0 commit comments