11import { workspace } from 'vscode' ;
2+ import { resolve } from 'path' ;
23import { Processor } from 'windicss/lib' ;
34import { flatColors } from 'windicss/utils' ;
45import { hex2RGB , highlightCSS } from '../utils' ;
56import { utilities as dynamic , negative } from '../utils/utilities' ;
7+ import { registerTS } from 'sucrase/dist/register' ;
68import type { Core } from '../interfaces' ;
79import { Log } from '../utils/Log' ;
8- import { loadConfiguration } from "@windicss/plugin-utils" ;
910
1011export async function init ( ) : Promise < Core > {
1112 try {
@@ -14,11 +15,16 @@ export async function init(): Promise<Core> {
1415 let config ;
1516 if ( files [ 0 ] ) {
1617 configFile = files [ 0 ] . fsPath ;
17- const { error, resolved } = await loadConfiguration ( { config : configFile } )
18- if ( error ) throw error
19- if ( ! resolved ) throw new Error ( "undefined error" )
18+ if ( configFile . endsWith ( '.ts' ) ) {
19+ registerTS ( ) ;
20+ delete require . cache [ require . resolve ( configFile ) ] ;
21+ const mod = require ( configFile ) ;
22+ if ( mod . default ) config = mod . default ;
23+ } else {
24+ delete require . cache [ require . resolve ( resolve ( configFile ) ) ] ;
25+ config = import ( resolve ( configFile ) ) ;
26+ }
2027 Log . info ( `Loading Config File: ${ configFile } ` ) ;
21- config = resolved
2228 }
2329 const processor = new Processor ( config ) ;
2430 const separator = processor . config ( 'separator' , ':' ) as string ;
0 commit comments