File tree 3 files changed +113
-346
lines changed
3 files changed +113
-346
lines changed Original file line number Diff line number Diff line change 1
- const SVGO = require ( 'svgo' ) ;
1
+ const { optimize } = require ( 'svgo' ) ;
2
2
const { getOptions } = require ( 'loader-utils' ) ;
3
3
const { version } = require ( 'vue' ) ;
4
4
const semverMajor = require ( 'semver/functions/major' )
5
5
6
- module . exports = async function ( svg ) {
7
- const callback = this . async ( ) ;
6
+ module . exports = function vueSvgLoader ( svg ) {
8
7
const { svgo : svgoConfig } = getOptions ( this ) || { } ;
9
8
10
9
if ( svgoConfig !== false ) {
11
- const svgo = new SVGO ( svgoConfig ) ;
12
-
13
- try {
14
- ( { data : svg } = await svgo . optimize ( svg , {
15
- path : this . resourcePath ,
16
- } ) ) ;
17
- } catch ( error ) {
18
- callback ( error ) ;
19
- return ;
20
- }
10
+ ( { data : svg } = optimize ( svg , {
11
+ path : this . resourcePath ,
12
+ ...svgoConfig
13
+ } ) ) ;
21
14
}
22
15
23
16
if ( semverMajor ( version ) === 2 ) {
24
17
svg = svg . replace ( '<svg' , '<svg v-on="$listeners"' ) ;
25
18
}
26
19
27
- callback ( null , `<template>${ svg } </template>` )
20
+ return `<template>${ svg } </template>` ;
28
21
} ;
Original file line number Diff line number Diff line change 18
18
"dependencies" : {
19
19
"loader-utils" : " ^2.0.0" ,
20
20
"semver" : " ^7.3.4" ,
21
- "svgo" : " ^1.3.2 "
21
+ "svgo" : " ^2.1.0 "
22
22
},
23
23
"peerDependencies" : {
24
24
"vue" : " ^2.5.0 || ^3.0.0-0"
You can’t perform that action at this time.
0 commit comments