6
6
import { pakoSerde } from ' $lib/util/serde' ;
7
7
import { stateStore } from ' $lib/util/state' ;
8
8
import { logEvent } from ' $lib/util/stats' ;
9
+ import { version as FAVersion } from ' @fortawesome/fontawesome-free/package.json' ;
9
10
import dayjs from ' dayjs' ;
10
11
import { toBase64 } from ' js-base64' ;
11
- import { version as FAVersion } from ' @fortawesome/fontawesome-free/package.json' ;
12
12
13
13
const FONT_AWESOME_URL = ` https://cdnjs.cloudflare.com/ajax/libs/font-awesome/${FAVersion }/css/all.min.css ` ;
14
14
@@ -149,7 +149,7 @@ ${svgString}`);
149
149
logEvent (' copyMarkdown' );
150
150
};
151
151
152
- let gistURL = ' ' ;
152
+ let gistURL = $state ( ' ' ) ;
153
153
stateStore .subscribe (({ loader }) => {
154
154
if (loader ?.type === ' gist' ) {
155
155
// @ts-expect-error Gist will have url
@@ -165,14 +165,14 @@ ${svgString}`);
165
165
logEvent (' loadGist' );
166
166
};
167
167
168
- let iUrl: string ;
169
- let svgUrl: string ;
170
- let krokiUrl: string ;
171
- let mdCode: string ;
172
- let imagemodeselected = ' auto' ;
173
- let userimagesize = 1080 ;
168
+ let iUrl: string | undefined = $state () ;
169
+ let svgUrl: string | undefined = $state () ;
170
+ let krokiUrl: string | undefined = $state () ;
171
+ let mdCode: string | undefined = $state () ;
172
+ let imagemodeselected = $state ( ' auto' ) ;
173
+ let userimagesize = $state ( 1080 ) ;
174
174
175
- let isNetlify = false ;
175
+ let isNetlify = $state ( false ) ;
176
176
if (browser && [' mermaid.live' , ' netlify' ].some ((path ) => window .location .host .includes (path ))) {
177
177
isNetlify = true ;
178
178
}
@@ -187,32 +187,32 @@ ${svgString}`);
187
187
<Card title ="Actions" isOpen ={false }>
188
188
<div class =" m-2 flex flex-wrap gap-2" >
189
189
{#if isClipboardAvailable ()}
190
- <button class ="action-btn w-full" on:click ={onCopyClipboard }
191
- ><i class =" far fa-copy mr-2" / > Copy Image to clipboard
190
+ <button class ="action-btn w-full" onclick ={onCopyClipboard }
191
+ ><i class =" far fa-copy mr-2" ></ i > Copy Image to clipboard
192
192
</button >
193
193
{/if }
194
- <button id ="downloadPNG" class ="action-btn flex-grow" on:click ={onDownloadPNG }>
195
- <i class =" fas fa-download mr-2" / > PNG
194
+ <button id ="downloadPNG" class ="action-btn flex-grow" onclick ={onDownloadPNG }>
195
+ <i class =" fas fa-download mr-2" ></ i > PNG
196
196
</button >
197
- <button id ="downloadSVG" class ="action-btn flex-grow" on:click ={onDownloadSVG }>
198
- <i class =" fas fa-download mr-2" / > SVG
197
+ <button id ="downloadSVG" class ="action-btn flex-grow" onclick ={onDownloadSVG }>
198
+ <i class =" fas fa-download mr-2" ></ i > SVG
199
199
</button >
200
200
{#if rendererUrl }
201
201
<a target ="_blank" rel ="noreferrer" class ="flex-grow" href ={iUrl }>
202
202
<button class =" action-btn w-full" >
203
- <i class =" fas fa-external-link-alt mr-2" / > PNG
203
+ <i class =" fas fa-external-link-alt mr-2" ></ i > PNG
204
204
</button >
205
205
</a >
206
206
<a target ="_blank" rel ="noreferrer" class ="flex-grow" href ={svgUrl }>
207
207
<button class =" action-btn w-full" >
208
- <i class =" fas fa-external-link-alt mr-2" / > SVG
208
+ <i class =" fas fa-external-link-alt mr-2" ></ i > SVG
209
209
</button >
210
210
</a >
211
211
{/if }
212
212
{#if krokiRendererUrl }
213
213
<a target ="_blank" rel ="noreferrer" class ="flex-grow" href ={krokiUrl }>
214
214
<button class =" action-btn w-full" >
215
- <i class =" fas fa-external-link-alt mr-2" / > Kroki
215
+ <i class =" fas fa-external-link-alt mr-2" ></ i > Kroki
216
216
</button >
217
217
</a >
218
218
{/if }
@@ -244,9 +244,9 @@ ${svgString}`);
244
244
245
245
{#if rendererUrl }
246
246
<div class =" flex w-full items-center gap-2" >
247
- <input class ="input" id ="markdown" type ="text" value ={mdCode } on:click ={onCopyMarkdown } />
247
+ <input class ="input" id ="markdown" type ="text" value ={mdCode } onclick ={onCopyMarkdown } />
248
248
<label for =" markdown" >
249
- <button class ="btn btn-primary btn-md flex-auto" on:click ={onCopyMarkdown }>
249
+ <button class ="btn btn-primary btn-md flex-auto" onclick ={onCopyMarkdown }>
250
250
Copy Markdown
251
251
</button >
252
252
</label >
@@ -261,7 +261,7 @@ ${svgString}`);
261
261
bind:value ={gistURL }
262
262
placeholder =" Enter Gist URL" />
263
263
<label for =" gist" >
264
- <button class ="btn btn-primary btn-md flex-auto" on:click ={loadGist }> Load Gist </button >
264
+ <button class ="btn btn-primary btn-md flex-auto" onclick ={loadGist }> Load Gist </button >
265
265
</label >
266
266
</div >
267
267
{#if isNetlify }
0 commit comments