@@ -39,15 +39,23 @@ def get_assets(self):
3939 return self .load_assets ()
4040
4141 def filter_chunks (self , chunks ):
42- assets = self . get_assets ()
42+ filtered_chunks = []
4343
4444 for chunk in chunks :
4545 ignore = any (regex .match (chunk )
4646 for regex in self .config ['ignores' ])
4747 if not ignore :
48- files = assets ['assets' ]
49- url = self .get_chunk_url (files [chunk ])
50- yield { 'name' : chunk , 'url' : url }
48+ filtered_chunks .append (chunk )
49+ 50+ return filtered_chunks
51+ 52+ def map_chunk_files_to_url (self , chunks ):
53+ assets = self .get_assets ()
54+ 55+ for chunk in chunks :
56+ files = assets ['assets' ]
57+ url = self .get_chunk_url (files [chunk ])
58+ yield { 'name' : chunk , 'url' : url }
5159
5260 def get_chunk_url (self , chunk_file ):
5361 public_path = chunk_file .get ('publicPath' )
@@ -86,12 +94,14 @@ def get_bundle(self, bundle_name):
8694 if chunks is None :
8795 raise WebpackBundleLookupError ('Cannot resolve bundle {0}.' .format (bundle_name ))
8896
89- for chunk in chunks :
97+ filtered_chunks = self .filter_chunks (chunks )
98+ 99+ for chunk in filtered_chunks :
90100 asset = assets ['assets' ][chunk ]
91101 if asset is None :
92102 raise WebpackBundleLookupError ('Cannot resolve asset {0}.' .format (chunk ))
93103
94- return self .filter_chunks ( chunks )
104+ return self .map_chunk_files_to_url ( filtered_chunks )
95105
96106 elif assets .get ('status' ) == 'error' :
97107 if 'file' not in assets :
0 commit comments