@@ -9,27 +9,23 @@ import {
9
9
import { compile , initializeWasm } from './wgslTool.ts' ;
10
10
import { executeTgslCode , getErrorMessage } from './tgslExecutor.ts' ;
11
11
12
- // Persisted state
13
12
export const formatAtom = atomWithStorage ( 'translator_format' , 'glsl' ) ;
14
13
export const modeAtom = atomWithStorage < TranslatorMode > (
15
14
'translator_mode' ,
16
15
TRANSLATOR_MODES . WGSL ,
17
16
) ;
18
17
19
- // Basic state
20
18
export const tgslCodeAtom = atom ( DEFAULT_TGSL ) ;
21
19
export const wgslCodeAtom = atom ( DEFAULT_WGSL ) ;
22
20
export const outputAtom = atom ( '' ) ;
23
21
export const formatsAtom = atom < string [ ] > ( [ ] ) ;
24
22
export const editorLoadingAtom = atom ( true ) ;
25
23
26
- // Combined status state
27
24
export const statusAtom = atom < {
28
25
state : 'initializing' | 'ready' | 'compiling' | 'success' | 'error' ;
29
26
error ?: string ;
30
27
} > ( { state : 'initializing' } ) ;
31
28
32
- // Simplified derived atoms
33
29
export const canCompileAtom = atom ( ( get ) => {
34
30
const { state } = get ( statusAtom ) ;
35
31
const formats = get ( formatsAtom ) ;
@@ -54,7 +50,6 @@ export const canConvertTgslAtom = atom((get) => {
54
50
state !== 'compiling' ;
55
51
} ) ;
56
52
57
- // Action atoms
58
53
export const initializeAtom = atom ( null , async ( _ , set ) => {
59
54
try {
60
55
const formats = initializeWasm ( ) ;
@@ -109,7 +104,6 @@ export const compileAtom = atom(null, async (get, set) => {
109
104
}
110
105
} ) ;
111
106
112
- // Mode and format change handlers
113
107
export const clearOutputOnModeChangeAtom = atom (
114
108
null ,
115
109
( _ , set , mode : TranslatorMode ) => {
0 commit comments