@@ -2,9 +2,9 @@ import { createApp, ref, watch, onMounted, watchEffect } from 'vue';
22import { presets } from './presets.js' ;
33import * as GCodePreview from 'gcode-preview' ;
44import { defaultSettings } from './default-settings.js' ;
5- import { debounce , humanFileSize , readFile } from './utils.js' ;
5+ import { debounce , humanFileSize } from './utils.js' ;
66
7- const defaultPreset = 'arcs ' ;
7+ const defaultPreset = 'benchy ' ;
88const preferDarkMode = window . matchMedia ( '(prefers-color-scheme: dark)' ) ;
99const initialBackgroundColor = preferDarkMode . matches ? '#141414' : '#eee' ;
1010const statsContainer = ( ) => document . querySelector ( '.sidebar' ) ;
@@ -20,7 +20,6 @@ export const app = (window.app = createApp({
2020 const thumbnail = ref ( null ) ;
2121 const layerCount = ref ( 0 ) ;
2222 const fileSize = ref ( 0 ) ;
23- const fileName = ref ( '' ) ;
2423 const model = ref ( null ) ;
2524 const dragging = ref ( false ) ;
2625 const settings = ref ( Object . assign ( { } , defaultSettings ) ) ;
@@ -36,19 +35,12 @@ export const app = (window.app = createApp({
3635
3736 const removeColor = ( ) => settings . value . colors . pop ( ) ;
3837
39- const dragOver = ( event ) => {
40- event . dataTransfer . dropEffect = 'copy' ;
41- dragging . value = true ;
42- } ;
43-
44- const dragLeave = ( ) => ( dragging . value = false ) ;
45-
46- const drop = ( event ) => {
47- dragging . value = false ;
48- const file = event . dataTransfer . files [ 0 ] ;
49- fileName . value = file . name ;
50- model . value = null ;
51- loadDroppedFile ( file ) ;
38+ const update = async ( evt ) => {
39+ model . value = {
40+ name : evt . detail . filename
41+ } ;
42+ applyDevMode ( enableDevMode . value ) ; // HACK: force dev mode to update UI
43+ updateUI ( ) ;
5244 } ;
5345
5446 // Update UI with current preview settings
@@ -105,6 +97,8 @@ export const app = (window.app = createApp({
10597
10698 Object . assign ( settings . value , currentSettings ) ;
10799 preview . endLayer = countLayers ;
100+
101+ applyDevMode ( enableDevMode . value ) ;
108102 } ;
109103
110104 const loadGCodeFromServer = async ( filename ) => {
@@ -137,34 +131,27 @@ export const app = (window.app = createApp({
137131 preview . render ( ) ;
138132 return ;
139133 }
140- await preview . renderAnimated ( preview . job . paths . length / 60 ) ;
134+ await preview . renderAnimated ( ) ;
141135 } else {
142136 preview . render ( ) ;
143137 }
144138 } ) ;
145139 } ;
146140
147- const loadDroppedFile = async ( file ) => {
148- fileSize . value = humanFileSize ( file . size ) ;
149- const content = await readFile ( file ) ;
150- applyDevMode ( enableDevMode . value ) ; // HACK
151- startLoadingProgressive ( content ) ;
152- applyDevMode ( enableDevMode . value ) ;
153- updateUI ( ) ;
154- } ;
155-
156141 const selectPreset = async ( presetName ) => {
157142 const canvas = document . querySelector ( 'canvas.preview' ) ;
158143 const preset = presets [ presetName ] ;
159- fileName . value = preset . file . split ( '/' ) . pop ( ) ;
160144 model . value = preset . model ;
161145 const options = Object . assign (
162146 {
163147 canvas,
164148 backgroundColor : initialBackgroundColor
165149 } ,
166150 defaultSettings ,
167- preset
151+ preset ,
152+ {
153+ droppable : true
154+ }
168155 ) ;
169156
170157 // reset previous state
@@ -182,7 +169,7 @@ export const app = (window.app = createApp({
182169 observer = new ResizeObserver ( ( ) => preview . resize ( ) ) ;
183170 observer . observe ( canvas ) ;
184171
185- applyDevMode ( enableDevMode . value ) ;
172+ applyDevMode ( enableDevMode . value ) ; // HACK: force dev mode to update UI
186173
187174 await loadGCodeFromServer ( preset . file ) ;
188175 applyDevMode ( enableDevMode . value ) ;
@@ -245,21 +232,18 @@ export const app = (window.app = createApp({
245232 thumbnail,
246233 layerCount,
247234 fileSize,
248- fileName,
249235 model,
250236 dragging,
251237 settings,
252238 enableDevMode,
253239 selectTab,
254240 addColor,
255241 removeColor,
256- dragOver,
257- dragLeave,
258- drop,
242+ // drop,
243+ update,
259244 resetUI : updateUI ,
260245 loadGCodeFromServer,
261246 startLoadingProgressive,
262- loadDroppedFile,
263247 selectPreset
264248 } ;
265249 }
0 commit comments