@@ -81,12 +81,26 @@ pub fn create(options: RawResolverOptions) -> Result<External<Resolver>, napi::E
8181 Ok ( External :: new ( resolver) )
8282}
8383
84- #[ napi( ts_return_type = "ExternalObject<ResolverInternal>" ) ]
85- pub fn create_resolver_and_inherit_unsafe_cache_from_another (
84+
85+ #[ napi( object) ]
86+ pub struct ResolverCacheInternal { }
87+
88+ #[ napi( ts_return_type = "ExternalObject<ResolverCacheInternal>" ) ]
89+ pub fn create_external_cache ( ) -> Result < External < Arc < ResolverUnsafeCache > > , napi:: Error > {
90+ Ok ( External :: new (
91+ Resolver :: new ( Default :: default ( ) ) . unsafe_cache . unwrap ( ) ,
92+ ) )
93+ }
94+
95+ #[ napi(
96+ ts_args_type = "options: RawResolverOptions, external_cache: ExternalObject<ResolverCacheInternal>" ,
97+ ts_return_type = "ExternalObject<ResolverInternal>"
98+ ) ]
99+ pub fn create_with_external_cache (
86100 options : RawResolverOptions ,
87- another : External < Resolver > ,
101+ external_cache : External < Arc < ResolverUnsafeCache > > ,
88102) -> Result < External < Resolver > , napi:: Error > {
89- let options = options. normalized ( another . unsafe_cache . clone ( ) ) ;
103+ let options = options. normalized ( Some ( external_cache . clone ( ) ) ) ;
90104 let resolver = Resolver :: new ( options) ;
91105 Ok ( External :: new ( resolver) )
92106}
@@ -134,10 +148,13 @@ pub fn load_side_effects(
134148) -> Result < Option < SideEffectsStats > , napi:: Error > {
135149 match ( * resolver) . load_sideeffects ( & Path :: new ( & path) ) {
136150 Ok ( val) => Ok ( val. map ( |val| {
137- let ( bool_val, array_val) = val. 1 . map ( |side_effects| match side_effects {
138- SideEffects :: Bool ( bool) => ( Some ( bool) , None ) ,
139- SideEffects :: Array ( array) => ( None , Some ( array) ) ,
140- } ) . unwrap_or ( ( None , None ) ) ;
151+ let ( bool_val, array_val) = val
152+ . 1
153+ . map ( |side_effects| match side_effects {
154+ SideEffects :: Bool ( bool) => ( Some ( bool) , None ) ,
155+ SideEffects :: Array ( array) => ( None , Some ( array) ) ,
156+ } )
157+ . unwrap_or ( ( None , None ) ) ;
141158 SideEffectsStats {
142159 pkg_file_path : val. 0 . display ( ) . to_string ( ) ,
143160 bool_val,
0 commit comments