11import type { Uri } from '../../index'
22import type { ProjectDetector } from './project-detector'
3- import type { Resource } from './resource'
3+ import type { ResourceDirectory } from './resource-directory '
44import { signal } from 'alien-signals'
55import { MediaDirectory as RustMediaDirectory } from '../../index'
66import { DisposableSignal } from './types'
@@ -15,21 +15,21 @@ export namespace MediaDirectory {
1515 return null
1616 return {
1717 getUri : ( ) => mediaDirectory . getUri ( ) ,
18- getResource : ( ) => mediaDirectory . getResource ( ) ,
18+ getResourceDirectory : ( ) => mediaDirectory . getResourceDirectory ( ) ,
1919 findAll : ( ) => mediaDirectory . findAll ( ) ,
2020 getUnderlyingMediaDirectory : ( ) => mediaDirectory ,
2121 }
2222 }
2323
24- export function from ( resource : Resource ) : DisposableSignal < MediaDirectory | null > {
25- const mediaDirectory = signal < MediaDirectory | null > ( fromRustMediaDirectory ( RustMediaDirectory . from ( resource . getUnderlyingResource ( ) ) ) )
24+ export function from ( resourceDirectory : ResourceDirectory ) : DisposableSignal < MediaDirectory | null > {
25+ const mediaDirectory = signal < MediaDirectory | null > ( fromRustMediaDirectory ( RustMediaDirectory . from ( resourceDirectory . getUnderlyingResourceDirectory ( ) ) ) )
2626
2727 const handle = ( event : keyof ProjectDetector . EventMap , uri : Uri ) => {
28- if ( uri . isEqual ( resource . getUri ( ) ) ) {
28+ if ( uri . isEqual ( resourceDirectory . getUri ( ) ) ) {
2929 switch ( event ) {
3030 case 'file-created' :
3131 case 'file-changed' :
32- mediaDirectory ( fromRustMediaDirectory ( RustMediaDirectory . from ( resource . getUnderlyingResource ( ) ) ) )
32+ mediaDirectory ( fromRustMediaDirectory ( RustMediaDirectory . from ( resourceDirectory . getUnderlyingResourceDirectory ( ) ) ) )
3333 break
3434 case 'file-deleted' :
3535 mediaDirectory ( null )
@@ -41,11 +41,11 @@ export namespace MediaDirectory {
4141 const mediaFileUris = mediaDirectory ( ) ?. findAll ( ) ?? [ ]
4242 const existingMediaFileIndex = mediaFileUris . findIndex ( mediaFileUri => mediaFileUri . isEqual ( uri ) )
4343 if ( existingMediaFileIndex !== - 1 ) {
44- mediaDirectory ( fromRustMediaDirectory ( RustMediaDirectory . from ( resource . getUnderlyingResource ( ) ) ) )
44+ mediaDirectory ( fromRustMediaDirectory ( RustMediaDirectory . from ( resourceDirectory . getUnderlyingResourceDirectory ( ) ) ) )
4545 }
4646 }
4747
48- resource . getProduct ( ) . getModule ( ) . getProject ( ) . getProjectDetector ( ) . on ( '*' , handle )
49- return DisposableSignal . fromSignal ( mediaDirectory , ( ) => resource . getProduct ( ) . getModule ( ) . getProject ( ) . getProjectDetector ( ) . off ( '*' , handle ) )
48+ resourceDirectory . getResource ( ) . getProduct ( ) . getModule ( ) . getProject ( ) . getProjectDetector ( ) . on ( '*' , handle )
49+ return DisposableSignal . fromSignal ( mediaDirectory , ( ) => resourceDirectory . getResource ( ) . getProduct ( ) . getModule ( ) . getProject ( ) . getProjectDetector ( ) . off ( '*' , handle ) )
5050 }
5151}
0 commit comments