@@ -2,6 +2,7 @@ var simpleHTMLTokenizer = require('simple-html-tokenizer');
22var  tokenize  =  simpleHTMLTokenizer . tokenize ; 
33var  generate  =  simpleHTMLTokenizer . generate ; 
44var  loaderUtils  =  require ( 'loader-utils' ) ; 
5+ var  assign  =  require ( 'object-assign' ) ; 
56
67var  conditions  =  require ( './lib/conditions' ) ; 
78var  transformer  =  require ( './lib/transformer' ) ; 
@@ -20,15 +21,20 @@ var regexSequences = [
2021] ; 
2122
2223function  getExtractedSVG ( svgStr ,  query )  { 
24+     var  config ; 
2325    // interpolate hashes in classPrefix 
24-     if ( ! ! query  &&  ! ! query . classPrefix )  { 
25-         const  name  =  query . classPrefix  ===  true  ? '__[hash:base64:7]__'  : query . classPrefix ; 
26-         query . classPrefix  =  loaderUtils . interpolateName ( { } ,  name ,  { content : svgStr } ) ; 
27-     } 
26+     if ( ! ! query )  { 
27+         config  =  assign ( { } ,  query ) ; 
28+ 
29+         if  ( ! ! config . classPrefix )  { 
30+             const  name  =  config . classPrefix  ===  true  ? '__[hash:base64:7]__'  : config . classPrefix ; 
31+             config . classPrefix  =  loaderUtils . interpolateName ( { } ,  name ,  {  content : svgStr  } ) ; 
32+         } 
2833
29-     if  ( ! ! query  &&  ! ! query . idPrefix )  { 
30-         const  id_name  =  query . idPrefix  ===  true  ? '__[hash:base64:7]__'  : query . idPrefix ; 
31-         query . idPrefix  =  loaderUtils . interpolateName ( { } ,  id_name ,  { content : svgStr } ) ; 
34+         if  ( ! ! config . idPrefix )  { 
35+             const  id_name  =  config . idPrefix  ===  true  ? '__[hash:base64:7]__'  : config . idPrefix ; 
36+             config . idPrefix  =  loaderUtils . interpolateName ( { } ,  id_name ,  {  content : svgStr  } ) ; 
37+         } 
3238    } 
3339
3440    // Clean-up XML crusts like comments and doctype, etc. 
@@ -47,7 +53,7 @@ function getExtractedSVG(svgStr, query) {
4753    } 
4854
4955    // If the token is <svg> start-tag, then remove width and height attributes. 
50-     return  generate ( transformer . runTransform ( tokens ,  query ) ) ; 
56+     return  generate ( transformer . runTransform ( tokens ,  config ) ) ; 
5157} 
5258
5359function  SVGInlineLoader ( content )  { 
0 commit comments